Processors - La Salle University
Download
Report
Transcript Processors - La Salle University
Processors
Based in part on Chapter 4 from
PC Hardware in a Nutshell
(Thompson and Thompson)
And information from
http://www.intel.com/intel/intelis/museum/
exhibit/hist_micro/index.htm
CSC 370 (Blum)
1
CPU
• The Central Processing Unit (CPU) is the
“brain” of the computer.
• The CPU can be thought in terms of two basic
pieces:
– The Arithmetic Logic Unit (ALU) which modifies
data by executing arithmetic and/or logical operations
on it.
– The Control Unit which takes the instructions from
memory, decodes it, and then moves the data to the
appropriate places and ensures that the ALU performs
the desired operation.
CSC 370 (Blum)
2
Generations
• The CPU is often just called the processor.
• For the ENIAC and other computers of the first
generation, the processor was comprised of
vacuum tubes.
• The processor’s individual vacuum tubes were
replaced by individual transistors in the second
generation of computers.
• Several transistors could be placed close together
on an integrated circuit (IC) or chip. In third
generation computers the processor consisted of
several IC’s.
CSC 370 (Blum)
3
Processor Microprocessor
• Eventually the entire processor was placed
on a single chip. When this became
standard computers were said to enter the
fourth generation.
– In this case, the processor is known as a
microprocessor.
• Some large machines today may have the
processor spread over more than chip. But
PCs typically have a single processor.
CSC 370 (Blum)
4
Tubes
• A computer of the first generation consisted of
tubes.
• Tubes started with an effect Thomas Edison
noticed while experimenting with light bulbs.
• John Ambrose Fleming discovered that one could
exploit the effect to detect radio waves and
convert them to electricity, but the signal was too
small.
• Lee de Forest added to the device, making the
triode; Edwin Armstrong pointed out it could be
used to amplify signals.
CSC 370 (Blum)
5
Transistors
• A computer of the second generation consisted of
transistors.
• William Shockley, John Bardeen and Walter
Brattain developed the transistor while working at
Bell Labs in 1947. (Nobel Prize 1956)
• The transistor could play the same role as the
vacuum tube but was significantly smaller – and
thus faster and less power consuming.
CSC 370 (Blum)
6
Integrated Circuit
• A computer of third generation consisted of integrated
circuits.
• The problem with computers is that they required so many
transistors connected to one another – the so-called
“tyranny of numbers.”
• This problem was solved by the “monolithic idea” – the
idea the many circuit elements (mainly transistors) could
be placed on the same piece of semiconductor, i.e. an
integrated circuit (IC).
• In 1958 Jack Kilby of Texas Instruments invented the IC.
In 1959 Robert Noyce of Fairchild Semiconductor
independently developed a better-designed IC. (Nobel
Prize 2000.)
CSC 370 (Blum)
7
Microprocessor
• A computer of fourth generation has a
microprocessor.
• What distinguishes a microprocessor from other
integrated circuits is that a microprocessor can be
programmed.
• So along with the idea of the microprocessor
comes the idea of the instruction set – the set of
actions the programmer can have the
microprocessor perform.
CSC 370 (Blum)
8
Intel
Noyce
Moore
• Intel was founded by Bob Noyce and Gordon
Moore who formerly worked for Fairchild
Semiconductor.
• In a collaboration between Busicom (a Japanese
firm) and Intel to make calculators, Ted Hoff
devises a plan to put all the main circuitry on one
chip instead of the original plan of twelve (in
1968).
• The microprocessor was born.
CSC 370 (Blum)
9
The Microprocessor is born
Intel made the 4004 (the
first microprocessor)
for Busicom. Knowing
they had a good thing,
they bought the rights to
the 4004 from Busicom
for $60,000.
CSC 370 (Blum)
Ted Hoff
10
4004
CSC 370 (Blum)
11
4004
• The 4004 was introduced in November 1971.
• It was the first commercial microprocessor.
• It had 2,300 transistors and could execute
approximately 60,000 instructions per second.
• Compare that to today’s microprocessors, which
have both the number of transistors and the
number of instructions per second are in the
millions.
– Moore’s law in action.
CSC 370 (Blum)
12
4004 Specs
• Clock speed: Initially 108 kHz but upped to
500kHz and then to 740kHz.
• Bus width: 4 bits (though its instructions were 8
bits)
• It addressed up to 1 Kb of program memory and
up to 4 Kb of data memory.
– The program memory and data memory were separate.
• There were sixteen 4-bit (or eight 8-bit) general
purpose registers.
• Executed 45 instructions.
CSC 370 (Blum)
13
Relative Processor size
This diagram shows
the relative sizes of
the Intel family of
microprocessors.
While the number of
transistors has grown
substantially the size
of the chip has not –
imply that the density
(the number of
transistors per area)
has increased
dramatically.
CSC 370 (Blum)
14
8008: Double your pleasure, double your fun
• The first 8-bit microprocessor.
• Actually work began on the 8008 before the
4004 but it took longer to finish.
• Differs architecturally from the 4004. The
microprocessors that follow were based on
(and backward compatible with) the 8008.
• The 8008 was used in the Mark-8, one of
the first “home computers.”
CSC 370 (Blum)
15
Mark-8
1During
those days another large crowd gathered. Since
they had nothing to eat, Jesus called his disciples to him
and said, 2"I have compassion for these people; they have
already been with me three days and have nothing to eat.
3If I send them home hungry, they will collapse on the
way, because some of them have come a long distance."
4His disciples answered, "But where in this remote place
can anyone get enough bread to feed them?"
5"How many loaves do you have?" Jesus asked.
"Seven," they replied.
6He told the crowd to sit down on the ground. When he
had taken the seven loaves and given thanks, he broke
them and gave them to his disciples to set before the
people, and they did so. 7They had a few small fish as
well; he gave thanks for them also and told the disciples
to distribute them. 8The people ate and were satisfied.
Afterward the disciples picked up seven basketfuls of
broken pieces that were left over. 9About four thousand
men were present.
CSC 370 (Blum)
16
8080
CSC 370 (Blum)
17
8080
• Federico Faggin, who was involved with both the
4004 and the 8008 (and would eventually leave to
found Zilog) was as the lead designer for the 8080.
• The 8080, released in 1974, was used in the first
widely known personal computer – the Altair.
– The Altair is said to have gotten its name from the
destination of the Starship Enterprise from the Star
Trek television show.
– Hobbyists could buy the Altair kit for $395.
CSC 370 (Blum)
18
8080 Specs
• 16-bit address bus and an 8-bit data bus.
• Seven 8-bit registers (A-E, H, L)
– Pairs BC, DE and HL could be combined to
make 16-bit registers.
• A 16-bit stack pointer.
• A 16-bit program counter.
• Several I/O ports.
CSC 370 (Blum)
19
8088
CSC 370 (Blum)
20
8086 & 8088
• Used in early word processors (Display-Writer and
DataMaster).
• Used in IBM’s first personal computer: IBM PC/XT
and its clone the Compaq DeskPro.
• PCs were moving out of the basements and into
offices.
• Intel becomes a Fortune 500 company. They were
named one of the "Business Triumphs of the
Seventies“ by Fortune magazine.
CSC 370 (Blum)
21
Display-Writer and IBM PC/XT
CSC 370 (Blum)
22
FPU
• Floating point operations are more tedious to
perform than integer operations.
• The floating point unit (FPU) is circuitry devoted
to floating point operations.
• In processors of the 8086 generation, the FPU was
not standard but could be purchased as a separate
chip (known in this case as a Math co-processor).
• In modern processors, the FPU can also help with
multimedia and communications.
CSC 370 (Blum)
23
286
a.k.a.
80286
CSC 370 (Blum)
24
286
• The 286, a.k.a. the 80286, was the first
microprocessor in the Intel family that
could execute all the code written for its
predecessor (8086).
– Backward compatibility is an important feature
of the Intel family of microprocessors.
• Six years after its release (1982), there were
about 15 million 286-based PCs being
used.
CSC 370 (Blum)
25
286 Specs
• Executed instructions five time faster than
8086 at the same clock speed.
• Addressable memory increased from 1 MB
to 16 MB.
• The FPU (in this case 80287) remained
separate.
• Introduced “protected mode.”
CSC 370 (Blum)
26
Protected mode
• Allows multi-tasking so that the processor can
juggle more than one program at a time.
• Each program is assigned to a certain range of
memory. Only that program can use that range of
memory. It is “protected” from interference by
other programs. And other programs are protected
form it.
• Uses extended memory and virtual memory so
that a program seems to have access to more
memory than it is assigned.
CSC 370 (Blum)
27
386
CSC 370 (Blum)
28
386
• Contains 275,000 transistors.
– Recall the 4004 had 2,300.
•
•
•
•
32-bit address bus and 32-bit data bus.
Allowed multi-tasking.
FPU still separate (80387).
L1 cache a unit of fast memory included on
the microprocessor.
CSC 370 (Blum)
29
Levels of cache
• At the microprocessor level, cache refers units of
SRAM used to speed up the processor’s
interaction with memory.
• Level 1 (L1) or primary cache is built onto the
processor chip.
• Level 2 (L2) or secondary cache originally was
packaged separately from the processor (so one
could change the amount of it) but started to be
included as part of the processor package (around
the time of the Pentium II).
• In the latter case, one can have Level 3 (L3) cache
which is separate from the processor package.
CSC 370 (Blum)
30
486
CSC 370 (Blum)
31
486
•
•
•
•
•
•
•
Released 1989.
486 not 80486.
32-bit bus.
8 KB to 16 KB of cache (L1).
20 MHz to 50 MHz.
Built-in FPU.
Processor ran faster (a multiple of) the memory
bus speed.
• Allowed the move from command-line OS to GUI
OS (DOS to Windows).
CSC 370 (Blum)
32
Pentinum
CSC 370 (Blum)
33
Pentium
• Released 1993.
• About 3.1 million transistors
• Upped memory bus speeds to 60 MHz or 66
MHz.
• Intel stopped using numbers because they
could not register a number as a trademark.
• CISC (Complex Instruction Set Computer)
• 64-bit databus
CSC 370 (Blum)
34
Lowering the voltage
• More and more transistors with current flowing
through them in a small amount of space means
more and more heat is being generated.
• One development in microprocessors was a
reduction of standard voltage at which the
transistors function.
– Lower the voltage means reducing the heat and the
power consumption. It can also affect speed and
accuracy because the voltage ranges for a valid 1 or 0
have been reduced.
• With some Pentiums, the long-standing standard
of 5 volts was reduced to 3.3 volts.
CSC 370 (Blum)
35
About instructions
• The execution of a typical instruction involves
–
–
–
–
–
–
Fetching the instruction from memory.
Decoding the instruction.
Fetching data necessary to execute the instruction.
Executing the instruction.
Placing the answer in the appropriate place.
(Looking interrupts).
• One can gain speed by having consecutive
instructions in different stages (have instructions
in the pipeline).
CSC 370 (Blum)
36
Branch prediction
• Pre-processing consecutive instructions will not
help with speed when the next instruction to be
executed is not the next instruction in the program
(ifs, loops, subroutines, etc.)
• This situation is known as branching.
• Starting with some Pentiums, microprocessors
included a branch prediction feature.
CSC 370 (Blum)
37
MMX/SIMD
• Some Pentiums have MMX.
– MultiMedia eXtensions?
– Matrix Math eXtensions?
– 57 additional instructions for making audio and video
more efficient.
• Some Pentiums have Single Instruction Multiple
Data (SIMD).
– One instruction can be used to operate on many pieces
of data in parallel.
CSC 370 (Blum)
38
Pentium Pro
CSC 370 (Blum)
39
Pentium Pro
• Released 1995
• 5.5 million transistors.
• Designed for the 32-bit server and workstation
applications.
• Super-pipelining determines which instructions
can be done “out of order” so less time is wasted.
• Introduced L2 cache (a separate cache memory
chip).
• RISC (Reduced Instruction Set Computer)
architecture.
CSC 370 (Blum)
40
Pentium II
CSC 370 (Blum)
41
Pentium II
• Released in 1997.
• 7.5 million transistors.
• MMX technology.
– Designed specifically to process multimedia
information (video, audio and graphics) efficiently.
• Introduced the Single Edge Contact (S.E.C.)
Cartridge that also incorporated a high-speed
cache memory chip.
CSC 370 (Blum)
42
Pentium II
Xeon
CSC 370 (Blum)
43
Pentium II Xeon
• Intel introduced high-end and low-end variations
on its chip designs.
• The Xeon was used for mid-range and higher
servers and workstations.
• For workstations and servers that utilize
demanding business applications such as Internet
services, corporate data warehousing, digital
content creation, and electronic and mechanical
design automation.
• Allows scaling – using several processors
together.
CSC 370 (Blum)
44
Celeron
CSC 370 (Blum)
45
Celeron
•
•
•
•
Released in 1998.
A cheaper version on the Pentium II
Lower clock speeds
Less Cache
CSC 370 (Blum)
46
Pentium III
CSC 370 (Blum)
47
Pentium III
• Released in 1999.
• 9.5 million transistors.
• 0.25-micron technology.
– A micron is a millionth (10-6) of a meter.
– Recall that the number of transistors is going up but the
chip size is not changing much. Therefore the
transistors are getting smaller.
– 0.25-micron technology refers to the ability to
manufacture chip having components (mainly
transistors) whose length is no bigger than a 0.25
microns.
CSC 370 (Blum)
48
Pentium III
• Has 70 new instructions — Internet Streaming
SIMD (Single Instruction, Multiple Data)
extensions – to improve imaging, streaming audio,
video and speech recognition applications.
• Designed to better the Internet experience. E.g. it
allows users to browse through realistic online
museums and stores or download high-quality
video.
CSC 370 (Blum)
49
CSC 370 (Blum)
50
Pentium® III Xeon™
•
•
•
•
•
1999
PIII for workstations and servers.
Has SIMD features.
Improved cache speeds.
Easily incorporated into multiprocessor
configurations.
CSC 370 (Blum)
51
Pentium 4
CSC 370 (Blum)
52
Pentium® 4
• 42 million transistors.
• Debuted with processor speeds of 1.5
gigahertz (1.5 billion hertz).
CSC 370 (Blum)
53
Intel® Xeon™
• 2001.
• For workstations and servers.
• Based on Intel NetBurst™ architecture,
which is designed to deliver the processing
power needed for video and audio
applications, advanced Internet
technologies, and complex 3-D graphics.
CSC 370 (Blum)
54
Itanium™ Processor
• 2001.
• Full 64-bit capability.
• For high-end, enterprise-class servers and
workstations.
• The processor was built from the ground up
with an entirely new architecture based on
Intel's Explicitly Parallel Instruction
Computing (EPIC) design technology.
CSC 370 (Blum)
55
Moore’s Law
CSC 370 (Blum)
56
References
• PC Hardware in a Nutshell, Thompson and
Thompson
• http://www.intel.com/intel/intelis/museum/e
xhibit/hist_micro/index.htm
• http://antiquetech.com/chips/chips.htm
• http://www.webopedia.com
• The Chip, T. R. Reid (Random House,
2001)
CSC 370 (Blum)
57