Download Generations of the computer processors

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Piotr Gwizdała
Generations of the computer processors
Index
1. First generation processors……………………………………….2
2. The second generation processors – 80286....................................3
3. Third generation processors – 386.................................................5
4. Fourth generation processors.........................................................6
5. The 5th generation of the processors.............................................9
6. 6th generation – 686 processors....................................................11
7. The 7th generation processors – Pentium 4.................................13
8. 8th generation processors – 64bit processors..............................14
9. Multiple core processors generation.............................................15
10. Improvements and actualizations of the processor.....................16
11. The codenames of the processors..................................................17
12. Bibliography………………………………………………………18
1
1. First generation processors.
In the beginning of the personal computers age, the IBM was the biggest PC
assembler. The company chose the Intel’s chips and processors to be used in their
PCs setting the standard for the next generations to come.
a. 8086 and 8088 processors
8086 was introduced in 1978. The first big innovation in the 8086 family
processors was the possibility to address 1MB of memory, due to 20 bit
address bus. The 8086 had the 16 bit registers and 16 bit data bus that
required the 16 bit motherboard, that at these times was quite expensive.
Intel decided to release the, often called handicapped, version of 8086
called 8088. It had the 8bit data bus instead of 16bit which significantly
lowered the price of motherboard and devices that could work with the
processor. There was no virtual way to distinguish between those two
processors. Both of them were running the 16bit software, and IBM was
advertising both of them as a new generation processors. In fact, both of
them could run the 16bit software, but 8088 due to the smaller data bus
was working a little slower. But as a cheaper alternative to 8086 was a
good decision from Intel’s side, especially taking into account the
competition of Apple II – the IBM’s PC with Intel’s processor was a little
cheaper. The interesting thing about the processors of the first generation
is that 8086 appeared in 1978 and the first PC with it appeared in 1981,
which is slightly different from what we have nowadays that the
companies cooperate and release the working computer system on the
same date together. To sum up, the 8088 was a bit slower than 8086. In
both of them it was taking 12 cycles to finish every instruction and for
example 8088 was working with the speed of 4.77MHz. The other thing
worth noticing is that in reality 8086 was giving to the user 640kB of
memory. The rest of 1MB address space was dedicated to operating
system and other purposes.
2
Intel’s 8086
Intel’s 8088
AMD’s processor compatible with Intel’s 8088.
b. 80186 and 80188 processors
The first processor of 8018x series was 80186 introduced in 1982. The
80188 has the same relationship to 80186 as the 8086 to 8088. The main
difference between the 8086 family is that 80186 family processors have
most of the components integrated inside one chip. It let them work faster
with the speed of 6MHz, but with the same efficiency of 12 cycles per
each instruction. These processors were mainly used in embedded
systems, due to it’s integrity and being suppressed soon by 80286.
80186 processor by Intel.
3
c. 8087 coprocessor
It was a processor that was oriented at numerical only computing.
Introduced in 1976 was often called the math processor or math chip. It
was performing high-level math operation at many times the speed of the
main processor. It was significantly improving the efficiency of the
applications requiring a lot of computing.
2. The second generation processors – 80286
The second generation processors was a big step forward in the efficiency
domain. The 80286 chip abbreviated to 286 was introduced in 1982. Together
with it there was released the 80287 coprocessor, but in fact it was the same chip
as 8087 but mad to be compatible with 286. The biggest innovations in the 286
processor were protected mode of execution, improved DMA controller,
increased speed and efficiency, and some several versions of 286 including
version for laptops. The main advantages of 286 were that it opened the new
possibilities for programmers. The new 24bit data bus was allowing to address up
to 16MB of memory. It was working way faster, started with 6MHz to reach in
later versions the 25MHz. Not only the speed of execution was improved, but also
the efficiency. The instruction was being executed in average of 4.5 cycles each.
So for example 80186 at 6MHz would execute 500 thousand instructions during
one second, whilst the 80286 also at 6MHz would execute 1333 thousand
instructions during one second. The effective gain – 160%. The processors were
still not requiring the cooling fan. But the Intel did not omit some significant
mistakes in this family of processors. It was not possible to switch back from
protected mode of execution to the real mode of execution. The only way to do it
was by restarting the processor. The addressing even that was allowing to do the
new kinds of software was not really used, as hardly any computer at the moment
had 1MB of memory. The last problem was cooperation with 287 coprocessor
that was quite inefficient. If the program was written in some way, the execution
with the coprocessor could be even slower than the one without coprocessor. It
was caused because of synchronization problems, as the coprocessor was the
4
same chip as 8087, it was working with different clock speed than the 286
processor causing synchronization problems.
The AMD’s processor compatible with Intel’s 286 and Intel’s 286.
3. Third generation processors – 386
The next Intel’s processors generation was the generation of 32bit internal
registers processors – the 386 series. There were many types of 386 processor to
fit the market better. The main types were:
a. 386DX – the first introduced by Intel. It was providing the corrected
protected mode of execution and the completely new virtual mode that
was allowing the programmers to do even more (like addressing to 64TB
of virtual memory that was giving actually unlimited memory space) It
was working with the speed of 16-33MHz offering the same execution
efficiency as 286, plus the new programming possibilities. It also had the
Memory Management Unit that was implementing the segmentation
mechanism. The problem with this processors was that they were very
expensive, so they were not very good marketing product. As earlier, Intel
released the processor that was one step forward than the actual state of
modern technology. They had to think about some another version of their
powerful 386DX.
5
b. 386SX – cheaper version of DX with 24bit memory addressing (up to
16MB rather than 4GB as in 386DX). This processor was introduce as
said before due to the market conditions. AMD’s and Cyrix’s processors
were getting better and cheaper. Intel decided as earlier to reduce the
address bus to 24bits which made the processors cheaper, but also slower.
In the end the 386SX was the 3rd generation processor but with the
performance level of 2 nd generation processors. The advantage it had was
the compatibility with the new software.
c. 386SL – laptop version of 386. This version of the processor had lower
power consumption. It was also providing the means to implement the
power management in the operating system by the Power Management
Interrupt.
d. 80387 Coprocessor – without synchronization issues – worked with the
same clock speed as the main processor, but still it was almost the same
old chip.
Intel’s 386DX processor.
4. Fourth generation processors.
The fourth generation of the processors was the first fully pipelined processor
generation of Intel. The producer’s of the processors noticed that when the
instruction is being executed, there are several stages like for example IF –
Instruction fetch, ID – instruction decoding, EX – execution, MEM – access to the
memory, WB – writing back the result of the instruction. In all the earlier
generations there was always just one instruction in the processor being executed
at the moment, that is when the instruction was at the stage let’s say MEM, all the
other stages were waiting idle. The innovative idea was to introduce pipeline, that
6
would let more instructions to enter to the processor and be executed stage by
stage like in the car’s assembly line in the factory.
So, when 1st instruction is about to be finished, that is it is on WB stage, just
behind it there is already 2nd instruction on MEM stage, behind it there is 3rd on
EX stage, the 4th on ID stage and the 5th on IF stage. In the next clock cycle all the
instructions move step forward, the 1st is being finished and disappears from
processor and the 6 th instruction enters to the IF stage. With that manner every
clock cycle there will be finished one instruction, even though execution of every
each in particular lasts for 5 clock cycles. The processors using that technology
were way faster than the non-pipeline ones.
What is more, the 4 th generation processors were having the level 1 cache with
90-95% hit ratio. Some versions had also built-in math coprocessor. The clock
speed was reaching up to 133MHz. The 4 th generation was a big step forward in
efficiency field.
a. Intel’s processors – 486 series
486DX was introduced in 1989. It not only provided all the 4th generation
improvements, but was also compatible with the past processors. It had the
built in math processor and 8kB external level 1 cache.
486DX2 was nearly identical to 486DX but it had implemented the
frequency multiplier. It meant that the processor could work with the clock
speed being the multiply of the FSB motherboard clock speed. It allowed
the processors to work faster using the same speed of FSB. The level 1
cache was implementing a buffer between processor and slower memory.
486DX2 was running with the 2 times faster speed than the FSB. The
486DX4 released later was running 3 times faster, being also almost the
same chip. Over that there were many variations of 486 by Intel: i486DX ,
7
i486SL , i486DXL, i486SX (P23) , i486DX2 (P24), i486DX-S (P4S) ,
i486DX2-S (P24S), i486SX-S (P23S) , i486SXL, i486SX2, IntelDX4WB,
i486DX2WB, i486DX2, 80486DX4… The main differences were the
clock speed, the voltage and power management features, the size of cache
and cache strategy, the clock speed multiplayer (DX2 and DX4) etc. The
Intel also released some Overdrive processors to be able to update the
existing 486 system. They were providing some additional instructions,
bigger and better organized cache etc that resulted in better performance
of updated system.
b. AMD’s processors of 4th generation
At that point the other companies were becoming stronger and closer to
Intel’s processors. AMD’s 486 compatible processor named 5x86 was
multiplying the system’s bus working at speed of 33MHz by 4 resulting in
speed of 133MHz. It had built-in cache of 16kB supporting write-back
strategy. By many, it was considered to be the fastest processor of the
generation which was significant success for AMD.
c. Cyrix processors
The Cyrix processors were compatible with most of the motherboards
designed for 486 processors. The Cyrix, similarly to AMD was using the
confusing code numbers of the processors borrowed from Intel’s
nomenclature. The Cyrix processors were less efficient, but they were
much cheaper than the Intel’s originals, so after all they found themselves
the place on the market, as the PCs were becoming more and more
popular.
8
The Intel’s 486DX4, the AMD’s 486DX2-80, Intel’s 486DX2 and Cyrix’s
486SLC. All taking the names of Intel’s nomenclature. Intel could not
obtain the copyright on the name of 486, so in the next generation resigned
of continuing this name convention to avoid confusion in his clients.
5. The 5 th generation of the processors.
As commented above, the Intel quit the naming convention and called it’s new
processor with codename Pentium, released in 1992. It was the first Complex
Instruction Set Computing type of processor (CISC) implementing the superscalar
computing.
The superscalar computing concept in Pentium processor was implemented by
two pipelines (working similar as ones in 4th generation processors.) The first
pipeline called U could execute all the instructions from the instruction set, whilst
V could execute only the most simple, but yet the most frequently executed
instructions. The result was that sometimes the Pentium processor was behaving
like the two 486 processors (because of two pipelines) sharing the registers and
system bus, executing the same program. If the instructions could be executed in
parallel, that is if there was no hazard situation and one instruction could be
executed by the pipeline V, the instructions were executed simultaneously. In not
Pentium optimized code in around 20-30% of the time there were executed two
instructions at the same time. Further optimizing could increase that rate.
What is more, the 64bit data bus increased data exchange with RAM. The
9
registers remained 32bits. Later there were introduced some additional
instructions for improving performance with multimedia processing, called
MMX. The cache was divided into the cache of data and instruction, There were
branch prediction mechanisms to cache instructions better, FPU unit was remade
and it was working better and faster… but contained some bugs.
a. 5th generation Intel models
The first models were codenamed P5 and P54C were produced in
technology of 0.80 and 0.60 micrometer. As mentioned earlier, these first
Pentium processors were having a FPU bug. The bug was heavily
criticized although it was occurring in about 1 over 9 billion divides with
random numbers. But the mistake could be significant (up to 3rd
significant digit). The worst thing was that when the bug was discovered,
Intel said that they knew about it that created an outrage. The later
Pentium models were produced in technology of 0.35 to 0.25 micrometer.
Their clock speed was reaching the 300MHz in case of Pentium MMX.
The Pentium processors in 5th generation started to be produced in 1993
and the last Pentium MMX was released in 1999. Pentium MMX was the
first processor done in technology of 0.25 micrometer and with special set
of Multimedia instructions, developed by Intel's Research & Development
Center in Haifa, Israel. New 57 seven instructions operating on different
data types (e.g. 32bit integer, as well as 8bit, 16bit and 64bit integers), if
were having the software support like later DirectX, were improving the
performance a lot. In later versions the level 1 cache was doubled from
16kB to 32kB.
b. AMD’s 5th generation processors.
The AMD’s processors were compatible with Pentium. The most
important is the AMD K5, that at the stage of the project could be the very
successful processor, but AMD lacked the experience in manufacturing
the processors. In the end the ambitious project including speculative
10
instruction execution ended up with branch prediction unit 4 times larger
than the one from Intel’s company but performing with the same
efficiency. The project was closer in architecture to 6 th generation’s
Pentium Pro, but it had the performance of the processors from the 5th
generation. After all AMD learned a lot with that project, making the next
AMD K6 a really good processor.
AMD K5 processor, Pentium MMX and some Pentium family processors.
6. 6th generation – 686 processors
The 686 processors represent a new generation with features not found in the
previous generation units. The 686 processor family began when the Pentium Pro
was released in November 1995. Since then, Intel has released many other 686
chips, all using the same basic 686 core processor as the Pentium Pro – released
already in 1995. The processors among many new features included dividing the
CISC instructions into simpler RISC instructions. Then the instructions were
executed in parallel, if possible, by multiple execution units. The instructions
could be even executed out of order. The speculative execution mechanism was
used, and the advanced branch prediction to improve cache and speculative
execution mechanisms.
11
a. Pentium Pro
It was introduced after negotiations with Microsoft about their future
products. Unfortunately Windows 95 was mainly 16bit. Pentium Pro
started to be sold as NT and Unix dedicated processor. After all it’s
performance was up to 35% higher for 32bit programs. Unfortunately it
was just 20% faster in 16bit instruction programs, what considering it’s
price blocked it’s early entrance to the market. It was also suffering from
another FPU bug, while converting in some conditions the float to int.
b. Pentium II
It was introduced in 1997, produced in technology of 0.35 / 0.25
micrometer, with clock up to 300MHz. Contains MMX instruction set, but
due to high heat production was placed in a slot instead of socket.
Contains also level 2 cache outside the CPU. It was released in two other
versions: low-end Pentium II Celeron and high-end Pentium II Xeon, but
soon it was superseded by Pentium III.
c. Pentium III
It is similar to Pentium II but naturally works with higher clock speed. The
first processors were made in 0.25 micrometer technology, and the last
Pentium III reached 0.13 micrometers. It had the new set of instructions
called SSE – Streaming SIMD Extensions. (SIMD – Single instruction
Multiple Data). Provides many floating-point versions of the MMX
instructions and more, which improves the multimedia processing. It
required support from software, which was included starting from
Windows 98 with its DirectX 6.1 that let the Pentium III show it’s very
good efficiency.
d. AMD K6, K6-2 and K6-3
AMD K6 is based on the Nx686 microprocessor that NexGen was
designing when it was acquired by AMD. It was PIN – compatible with
12
Pentium (Socket-7) and included MMX instructions. Reached speeds of
300MHz having its L1 cache of 64kB. It became quite successful being a
good and inexpensive alternative for Intel’s processors. The K6-2 included
21 new instructions – a response to Intel’s SSE, called 3D Now! and 64kB
cache L1 plus up to 1024kB of L2 cache on the motherboard. K6-3
included integrated L2 cache, but still using cache on motherboard as L3
cache, that was the first widely used processor with 3 levels of cache.
These processors became a real competition for Intel’s processors and
encouraged AMD to try to take over the initiative by producing the
processors having their proper socket connector – Athlon that became a
big success.
e. AMD Athlon and Athlon XP
These were the first widely used AMD processors that used their own
socket to connect to motherboard (not compatible with Intel). In first
versions included external L2 cache of size 512kB. Later cache was
integrated and reduced to 256kB (XP). The AMD finally fixed their
biggest issue since a long time – they included in the processor the
completely new FPU – triple issued and pipelined – very modern and
effective at the moment. These processors also contained Intel’s SSE
instructions. They were released also in economical version known as
Duron with limited cache memory.
7. The 7 th generation processors – Pentium 4
Pentium 4 was Introduced in 2000, and started from 0,18 micrometers at 1.3GHz
and reached 0.09 micrometers technology running 3.8GHz. It introduced new sets
of SSE instructions: SSE2 and later SSE3. The L1 cache started from 8 to 16kB,
L2 cache up to 1MB. These processors were the first ones with HyperThreading
technology – simulating two processors in the system (virtual processor). Let’s
two threads to really run at the same time (without time division) that was letting
to use the execution units better. The Pentium 4 cores had the following
13
codenames: Willarnette – the first one, Northwood – there could be differed
Mobile and Mobile Pentium 4 M versions, that were anyway consuming a bit too
much energy as for mobile systems. Gallatin – also know as Extreme Edition with
2MB of L3 cache – for servers. Prescott and Prescott 2M (Extreme Edition) with
64bit instructions. Pentium 4 contained incredibly high number of transistors and
was reaching very big clock speeds, that cause many problems with energy
consumption and heat production.
8. 8th generation processors – 64bit processors.
The idea of the 64bit processors is to operate on bigger portions of data that can
improve the performance a lot, but only if the support from software is provided.
The first 64bit processor was released in 2001 by Intel – Itanium. One year later it
was improved to Itanium 2. In 2003 AMD released Athlon 64 and later Opteron
for servers use. In 2004 Intel released versions of Pentium 4 that were having
64bit instructions. The race between processor’s giants continued.
a. Itanium and Itanium 2
These Intel’s processors were dedicated to be used in advanced servers
and workstations. They were the first processors with all 3 levels of cache
integrated. Reached to 0.3 micrometer technology, more than 592 millions
of transistors and 9MB of L3 cache integrated. The scalability of these
processors was incredible.
b. Athlon 64 and Athlon 64FX
These processors were the first 64bit processors for desktop use. Instead of
CPU communicating with memory and peripheries through the North
Bridge, Athlon 64 communicates with memory directly. The main
differences between Athlon 64 and Athlon 64FX are in size of cache and
bus length. To compare with Itanium, Athlon 64 contained 68 to 114
millions of transistors, that is almost 10 times less! It contained 12-stage
pipeline, L1 cache up to 1MB, SSE2 – new 144 instructions for sound and
14
graphics. The Athlon 64 was definitely strong and difficult to beat
processor. There was also released the Opteron version which was version
of AMD64 architecture processor for servers and workstations. Released
in 2003. There is also the version with double core of this processor.
Opteron unlike Intel’s Itanium supports a wide range of chipsets for
motherboard, making it more flexible choice, that was a good marketing
decision.
9. Multiple core processors generation
As the Intel’s processors based on NetBurst core (the same as in Pentium 4 series)
reached the barrier of 4GHz, they realized that the power consumption and the
amount of heat produced is too high. Continuing in that way would effect in too
expensive and too noisy system cooling and maintenance. The solution for now is
to research towards processors which work with lower clock speed, but execute
more instructions at the same time. Like multiple core processors.
a. Pentium D
At first it was exactly 2 Pentium 4 Prescott processors put in one chip
module (year 2005). As soon as 9 months later the new version was
released including some upgrades, but still consuming a lot of energy. As
the Core 2 processors were released in middle 2006, and outperformed
Pentium D, the project has been abandoned together with NetBurst
architecture. Pentium D marked himself in the history as the first dual core
general used processor.
b. AMD Athlon 64 X2
AMD Athlon 64 X2 was released in 2007 and worked with speed up to
2.4GHz. Essentially it consists of two Athlon 64 processors with some
control logic. There were different versions depending on cache memory.
It is able to decode Intel’s SSE3 instructions – better compatibility with
the software. Memory controller was integrated in the processor, and over
all it was still compatible with Athlon 64 and Opteron sockets.
15
c. Cored Duo processors by Intel
Intel Core Duo was released at the beginning of 2006 and it is 32bit
processor with dual core. It has up to 2MB L2 cache shared between two
cores, it contains arbiter that controls access to system bus and cache. Intel
was announcing that future versions will have option of switching off one
of the cores to save power. The interesting part is that it was the first Intel
processor used in Apple computers.
d. Core 2 Duo processors by Intel
Core 2 Duo was released in the middle of 2006 and basically it is the 64bit
version of Core Duo. It completely outperformed the Pentium processor
family. The Intel released the processor in more versions differing in the
number of cores inside the processor and the cache size (in Extreme
Edition it was slightly bigger). There are available processors with two,
four or even six cores in one chip.
10. Improvements and actualizations of the processor.
In order to improve performance of the CPU without replacing it and without
changing other parts of the computer, we can think about better cooling and
overclocking, which especially with several models of AMD and few of Intel can
be a very efficient alternative. But still it is risky. If we want to change the CPU, it
can be way easier if we have chosen a good motherboard earlier. It is good to
have the motherboard with the really modern socket, that we know that it will be
still used in next few years, so after we want to update CPU we can buy the better
one still compatible with our motherboard. In general OverDriving packages are
not recommended, as they were mainly the marketing trick, selling the product of
lower performance advertised as the new generation processor. What is more it is
strongly recommended to wait for at least second release of the new generation of
some processor, as the first ones are usually not working too well, having bugs,
issues etc.
16
11. The codenames of the processors.
The last thing is that when reading the professional literature we can many times
get confused with nomenclature of the CPUs. The problem is that the name used
before the release almost always was different from the name used at the release
(the marketing name). We have to be aware of it, and know where to find the
actual codenames and their marketing equivalents, as a lot of the professional
press uses the codenames, as at the moment of writing the article, the marketing
name was still unknown.
12. Bibliography
a. Upgrading and Repairing PCs, 15th Anniversary Edition
By Scott Mueller, free online book.
b. www.en.wikipedia.org and www.pl.wikipedia.org
17