 |
|
|
|
|
|
|
|
|
 |
Microprocessor
basics
Register
Renaming.
These are additional registers which can be assigned to contain
data that would normally be written to the destination register.
One of the main uses is with speculative execution of branches (see
Page 205), the branch uses renamed registers, which can be renamed
back to the original registers if the branch prediction is successful,
otherwise the data is discarded. Another application is with out
of order execution (see Page 205) where renamed registers can be
used to modify the execution of a program by renaming registers
to avoid write conflicts.
Segment.
This is an area of memory that is accessed through an identifier
tag.
Harvard
Architecture v. von Neumann
Harvard
architecture uses separate program and data spaces. It is also typically
defined as architecture which uses separate program and data busses
(and usually caches too). This architecture improves speed, though
the address spaces are actually shared.
The von Neumann architecture uses a stored program in the same writable
memory that data is stored in.
Intel
Processors that shook the world:
4004: November 1971,
108kHz, 4-bit data
bus, 2,300 transistors, 640B
of addressable memory.
8008: April 1972,
200 kHz, 8-bit data
bus, 3,500 transistors, 16kB
of addressable memory.
8080: April 1974,
2 MHz, 8-bit data bus,
6,000 transistors, 64kB
of addressable memory.
8086: June 1978, 5/8/10MHz,
16-bit data bus, 29,000 transistors, 1MB
of addressable memory.
8088: June 1979, 5/8
MHz, 8-bit data bus, 29,000 transistors, 1MB
of addressable memory.
80286: 1982, 6-25 MHz;
upgrade to 8086, with increased memory addressing (16MB).
80386:
October 1985, 16/20/25/33MHz,
32-bit data bus, 275,000 transistors, 4GB
of addressable memory.
80486: April 1989,
25/33 /50 MHz, 32-bit data bus, 1.2 million transistors, 4GB
of addressable memory.
Pentium: March 1993,
60/66 MHz, 64-bit data
bus, 3.1 million transistors, 4GB
of addressable memory.
Pentium
II/III: March 1997, 200MHz
and on, 64-bit data bus, 7.5million transistors, 64GB
of addressable memory.
|
|
Isn't that interesting?
|
|
|
|
My Top Processors
|
|
<< Back
|
|
1
|
Intel
4000/4040
(Nov 1971). First microprocessor. 46 instructions, with 2,300 transistors
within a 16-pin device.
|
|
2
|
TMS
1000 (1972). First microcontroller, and
the first to include RAM.
|
|
3
|
Intel
8080
(April 1974). 16-bit address bus and an 8-bit data bus, with seven
8-bit registers. Used in Altair 8800.
|
|
4
|
Zilog
Z-80 (July 1976). Vastly improved version of the
8080.
|
|
5
|
MOS
Technologies 650x (1975). Vastly improved, and much
cheaper, version of the 6800. The 6502 was used in the Apple
II.
|
|
6
|
Motorola
6809.
Enhanced version of the 6800. It had two 8-bit accumulators (A and
B), which could combine into a single 16-bit register (D). It also
had two index registers (X and Y) and two stack pointers (S and U).
|
|
7
|
AMD
Am2901. Popular 4-bit-slice processor,
which had sixteen 4-bit registers and a 4-bit ALU. They could be used
for a modular design, where several processors could be combined to
produce a larger system (for example, two Am2901s could produce an
8-bit system). It also contained the first integrated math coprocessor.
|
|
8
|
Intel
8051.Classic microcontroller, with data
stored on-chip (128 bytes), and code stored off-chip. It was used
in thousands of embedded products, and eventually reached sales of
one billion.
|
|
9
|
Microchip
Technology PIC 16x/17x (1975). Simple processor
with RISC technology, and a large number of registers.
|
|
10
|
TMS
9900 (1976). First 16-bit microprocessor,
and featured a 15-bit address bus.
|
|
11
|
Zilog
Z-8000. Innovative 16-bit microprocessor
which failed due to initial bugs and lack of compatibility with the
Z-80.
|
|
12
|
Motorola
68000 (Sept. 1979). 32-bit internal architecture,
with an external16-bit data bus, and a 24-bit address bus. It contained
16 32-bit registers (8 for data, and 8 for address) and did not feature
segmented addressing.
|
|
13
|
National
Semiconductor 32032. Similar to 68000.
|
|
14
|
Intel
8086 (1978). Based on 8080/8085, but expanded
to cope with 16 bits. It was chosen over the 68000 for the IBM PC
(possibly due to the availability of the CP/M operating system).
|
|
15
|
SPARC
(1987). Scalable Processor ARChitecture designed by Sun Microsystems,
for use on 68000-based workstations with the UNIX operating system.
|
|
16
|
AMD
29000 (1987). RISC design, with a large
number of registers.
|
|
17
|
Siemens
80C166. Low-cost embedded 8/16-bit load-store
processor.
|
|
18
|
MIPS
R2000 (1986). MIPS (Microprocessor without
Interlocked Pipeline Stages) R2000 was probably the first commercial
RISC processor.
|
|
19
|
HP
PA-RISC (1986). Large number of registers
with RISC technology, for use in HP workstations.
|
|
20
|
Motorola
88000 (1988). 32-bit processor, based on
true Harvard architecture.
|
|
21
|
Fairchild
Clipper (1998). Featured
Harvard architecture.
|
|
22
|
TMS
320C30 (1998). Popular DSP device.
|
|
23
|
Motorola
DSP96002. Well-designed DSP device.
|
|
24
|
Intel
860 (1988). 'Cray-on-a-chip'. Scary!
|
|
25
|
IBM
RS/6000 (1990). RISC processor for IBM
workstations.
|
|
26
|
DEC
Alpha (1992). 64-bit architecture, which
created no limits to future performance improvements (such as the
lack of any special registers).
|
|
27
|
INMOS
T-9000 (1994). Used to create parallel
systems with point-to-point links between processors.
|
|
|
|
|
|
Other
contenders: Acorn ARM (1986), Hitachi SuperH (1992), Motorola
MCore (1998), Intel 960 (1988), Intel 432 (1980), Linn Rekursiv ,
MISC M17 (1988), AT&T CRISP (1987). Patriot Scientific ShBloom
(1996), Sun picoJava (1997), and of course, AMD Athelon, and Intel
Pentium Pro and Pentium II.
Taken
from Chapter 1, Advanced PC Architecture, W.Buchanan, Addison-Wesley.
|
| |
| |
© W.
Buchanan, 2000
|
|
|