Recent from talks
Nothing was collected or created yet.
Pentium (original)
View on Wikipedia
| General information | |
|---|---|
| Launched | March 22, 1993 |
| Discontinued | July 15, 1999 (orders and shipments)[1][better source needed] December 31, 2001 (discontinuation and end of life)[2] |
| Marketed by | Intel |
| Designed by | Intel |
| Common manufacturer |
|
| Product code | 80501 (P5) 80502 (P54C, P54CQS, P54CS) 80503 (P55C, Tillamook) |
| Performance | |
| Max. CPU clock rate | 60-300 MHz |
| FSB speeds | 50 MHz to 66 MHz |
| Cache | |
| L1 cache | 16–32 KiB |
| L2 cache | Up to 512 KiB[3](On Mainboard) |
| Architecture and classification | |
| Technology node | 800 nm to 250 nm |
| Microarchitecture | P5 |
| Instruction set | x86-16, IA-32 |
| Extensions | |
| Physical specifications | |
| Transistors | |
| Cores |
|
| Sockets | |
| Products, models, variants | |
| Core names |
|
| Models |
|
| History | |
| Predecessor | i486 |
| Successors | P6, Pentium II, Pentium III (SSE successor) |
| Support status | |
| Unsupported | |
The Pentium (also referred to as the i586 or P5 Pentium) is a microprocessor introduced by Intel on March 22, 1993. It is the first CPU using the Pentium brand.[5][6] Considered the fifth generation in the x86 (8086) compatible line of processors,[7] succeeding the i486, its implementation and microarchitecture was internally called P5.
Like the Intel i486, the Pentium is instruction set compatible with the 32-bit i386. It uses a very similar microarchitecture to the i486, but was extended enough to implement a dual integer pipeline design, as well as a more advanced floating-point unit (FPU) that was noted to be ten times faster than its predecessor.[8]
The Pentium was succeeded by the Pentium Pro in November 1995. In October 1996, the Pentium MMX[9] was introduced, complementing the same basic microarchitecture of the original Pentium with the MMX instruction set, larger caches, and some other enhancements. Intel discontinued the original Pentium (P5) processors, which were sold as a lower-cost option after the Pentium II's release in 1997, on December 31, 2001. This coincided with Microsoft ending support for classic versions of Windows such as Windows 95. The Pentium line was gradually replaced by the Celeron processor, which also took over the role of the 80486 brand.[1][2]
Overview
[edit]The P5 Pentium is the first superscalar x86 processor, meaning it was often able to execute two instructions at the same time.[10] Some techniques used to implement this were based on the earlier superscalar Intel i960 CA (1989), while other details were invented exclusively for the P5 design. Large parts were also copied from the i386 or i486, especially the strategies used to cope with the complicated x86 encodings in a pipelined fashion.[11] Just like the i486, the Pentium used both an optimized microcode system and RISC-like techniques, depending on the particular instruction, or part of instruction. The dual integer pipeline design is something that had been argued being impossible to implement for a CISC instruction set, by certain academics and RISC competitors.[who?]
Other central features include a redesigned and significantly faster floating-point unit, a wide 64-bit burst-mode data bus (external as well as internal), separate code and data caches, and many other techniques and features to enhance performance. It contains 256-bit internal data buses and write-back caches.[12] It does contain System Management Mode that has been implemented since the Intel's SL architecture.[13]
The 66-MHz Pentium processor operates at 112 V1.1 Dhrystone MIPS and has SPECint92 rating of 64.5, a SPECfp92 rating of 56.9 and an iCOMP index rating of 567. The performance difference between 60- and 66-MHz version is about 10%.[14]
The P5 also has better support for multiprocessing compared to the i486, and is the first x86 CPU with hardware support for it similar to IBM mainframe computers. Intel worked with IBM to define this ability and also designed it into the P5 microarchitecture. This ability was absent in prior x86 generations and x86 processors from competitors.
In order to employ the dual pipelines at their full potential, certain compilers were optimized to better exploit instruction level parallelism, although not all applications would substantially gain from being recompiled. The faster FPU always enhanced floating point performance significantly though, compared to the i486 or i387. Intel spent resources working with development tool vendors, ISVs and operating system (OS) companies to optimize their products.
Competitors included the superscalar PowerPC 601 (1993), SuperSPARC (1992), DEC Alpha 21064 (1992), AMD 29050 (1990), Motorola MC88110 (1991) and Motorola 68060 (1994), most of which also used a superscalar in-order dual instruction pipeline configuration, and the non-superscalar Motorola 68040 (1990) and MIPS R4000 (1991).
Etymology
[edit]The name "Pentium" is originally derived from the Greek word pente (πέντε), meaning "five", a reference to the prior numeric naming convention of Intel's 80x86 processors (8086–80486), with the Latin ending -ium since the processor would otherwise have been named 80586 using that convention.
Development
[edit]The P5 microarchitecture was designed by the same Santa Clara team which designed the 386 and 486.[15] Design work started in June 1989;[16]: 88 the team decided to use a superscalar RISC architecture which would be a convergence of RISC and CISC technology,[17] with on-chip cache, floating-point, and branch prediction.[18] Vinod Dham then the Vice President of the Microprocessor Product Group and General Manager of Microprocessor Division 5/7 had the concept using this RISC technology into the existing x86 architecture that could compete from the other market.[19] Their performance target could boost FPU by three times and five time over the existing Intel486 CPU.[20] The preliminary design was first successfully simulated in 1990, followed by the laying-out of the design. By this time, the team had several dozen engineers. It took some 100 million clock cycles of pre-silicon verification test which includes major operating systems and many application were booted and running. They had to use the Quickturn Systems Inc. software to run pre-silicon simulation program which was 30,000 times quicker than the previous technique method available.[21] By late 1990, they found that the planned feature could not fit into the die, they had to redesign the circuit feature that would slim down in order to fit what the intended design in place without sacrificing the performance. In spring of 1991, the die went another slimming procedure until Dham was happy with the size and its feature without affecting the performance. A group of engineers ran hundreds of tests to validate the designed features and ran 5000 different variables to validate its design. Out of the 14 circuit boards in collection and cables, they only found few bugs using every operating system they have it on hand including in development were used.[22] By February 1992, the design was taped out in process which was completed by April 1992, at which point beta-testing began.[23][24] The next few months the design was sent to the Intel's Mask Operation which it translate to mask layout for the Oregon's Fab 5 to be processed.[25] By mid-1992, the P5 team had 200 engineers.[16]: 89 Intel at first planned to demonstrate the P5 in June 1992 at the trade show PC Expo, and to formally announce the processor in September 1992,[26] but design problems forced the demo to be cancelled, and the official introduction of the chip was delayed until the spring of 1993.[27][28] The first computer systems featuring the Pentium appeared in the summer of 1993, the first being Advanced Logic Research and their Evolution V workstation, released in the first week of July 1993.[29][30][31]
John H. Crawford, chief architect of the original 386, co-managed the design of the P5,[32] along with Donald Alpert, who managed the architectural team. Dror Avnon managed the design of the FPU.[33] Vinod K. Dham was general manager of the P5 group.[16]: 90
Intel's Larrabee multicore architecture project uses a processor core derived from a P5 core (P54C), augmented by multithreading, 64-bit instructions, and a 16-byte wide vector processing unit.[34] Intel's low-powered Bonnell microarchitecture employed in early Atom processor cores also uses an in-order dual pipeline similar to P5.[35]
Intel used the Pentium name instead of 586, because in 1991, it had lost a trademark dispute over the "386" trademark, when a judge ruled that the number was generic. The company hired Lexicon Branding to come up with a new, non-numeric name.[36]
Improvements over the i486
[edit]The P5 microarchitecture brings several important advances over the prior i486 architecture.
- Performance:
- Superscalar architecture – The Pentium has two datapaths (pipelines) that allow it to complete two instructions per clock cycle in many cases. The main pipe (U) can handle any instruction, while the other (V) can handle the most common simple instructions. The first instruction goes to the u pipeline, then the next instruction goes to the v pipeline. Both pipelines contain their own ALU, address generation circuity and interface to the data cache.[37] Some[who?] reduced instruction set computer (RISC) proponents had argued that the "complicated" x86 instruction set would probably never be implemented by a tightly pipelined microarchitecture, much less by a dual-pipeline design. The 486 and the Pentium demonstrated that this was indeed possible and feasible.
- 64-bit burst-mode external databus doubles the amount of information possible to read or write on each memory access and therefore allows the Pentium to load its code cache faster than the 80486; it also allows faster access and storage of 64-bit and 80-bit x87 FPU data. Internally, this CPU process the data at 32 bits wide. The external data to the memory is 64 bits wide which it doubles the amount of data being transferred in one bus cycle. It includes several types of bus cycles which includes burst mode that loads 256-bit portions of data into is data cache in one bus cycle as well. This data width can transfer data up to 528 Mbytes per second from and to the memory. This rate has increased three-fold over its peak transfer rate of the 50-MHz Intel486 DX CPU.[38]
- Separation of code and data in both 8-Kbyte on-chip caches[39] lessens the fetch and operand read/write conflicts compared to the 486. One set is for the instruction, and the other set is for the data.[40] To reduce access time and implementation cost, both of them are 2-way associative, instead of the single 4-way cache of the 486. Using pair of cache's 32-byte lines to match up the 64-bit width with a four-chuck burst length. This cache management conforms to the MESI cache-consistency protocol.[41] A related enhancement in the Pentium is the ability to read a contiguous block from the code cache even when it is split between two cache lines (at least 17 bytes in worst case).
- Much faster floating-point unit. This component incorporates an eight-stage pipeline that executes at least one floating-point operation every clock cycle. The first four stages of this pipeline use the integer part, and the final four stages are a two-stage floating-point execution, rounding and writing of the result to the register file and the error reporting. This unit also has new algorithms that increase the speed of these common operation by the factor of three time than the predecessor CPU.[42] Some instructions showed an enormous improvement, most notably FMUL, with up to 15 times higher throughput than in the 80486 FPU. The Pentium is also able to execute a FXCH ST(x) instruction in parallel with an ordinary (arithmetical or load/store) FPU instruction.
- Four-input address adders enables the Pentium to further reduce the address calculation latency compared to the 80486. The Pentium can calculate full addressing modes with segment-base + base-register + scaled register + immediate offset in a single cycle; the 486 has a three-input address adder only, and must therefore divide such calculations between two cycles.
- The microcode can employ both pipelines to enable auto-repeating instructions such as REP MOVSW perform one iteration every clock cycle, while the 80486 needed three clocks per iteration (and the earliest x86 chips significantly more than the 486). Also, optimization of the access to the first microcode words during the decode stages helps in making several frequent instructions execute significantly more quickly, especially in their most common forms and in typical cases. Some examples are (486→Pentium, in clock cycles): CALL (3→1), RET (5→2), shifts/rotates (2–3→1).
- A faster, fully hardware-based multiplier makes instructions such as MUL and IMUL several times faster (and more predictable) than in the 80486; the execution time is reduced from 13 to 42 clock cycles down to 10–11 for 32-bit operands.
- Virtualized interrupt to speed up virtual 8086 mode.
- Dynamic Branch Prediction using the branch target buffer method that contains a small cache block. Using the Sieve of Eratosthenes benchmark method requires six clock cycles to execute on the Intel486 CPU down to two clock cycles in this CPU.[43]
- Other features:
- Enhanced debug features with the introduction of the Processor-based debug port (see Pentium Processor Debugging in the Developers Manual, Vol 1).
- Enhanced self-test features like the L1 cache parity check (see Cache Structure in the Developers Manual, Vol 1). Other built-in features contain an IEEE 1149.1 standard to test external connection to the CPU and a probe mode to access the software visible register and the processor state.[44]
- New instructions: CPUID, CMPXCHG8B, RDTSC, RDMSR, WRMSR, RSM.
- Test registers TR0–TR7 and MOV instructions for access to them were eliminated.
- The later Pentium MMX also added the MMX instruction set, a basic integer single instruction, multiple data (SIMD) instruction set extension marketed for use in multimedia applications. MMX could not be used simultaneously with the x87 FPU instructions because the registers were reused (to allow fast context switches). More important enhancements were the doubling of the instruction and data cache sizes and a few microarchitectural changes for better performance.
The Pentium was designed to execute over 100 million instructions per second (MIPS),[45] and the 75 MHz model was able to reach 126.5 MIPS in certain benchmarks.[46] The Pentium architecture typically offered just under twice the performance of a 486 processor per clock cycle in common benchmarks. The fastest 80486 parts (with slightly improved microarchitecture and 100 MHz operation) were almost as powerful as the first-generation Pentiums, and the AMD Am5x86, which despite its name is actually a 486-class CPU, was roughly equal to the Pentium 75 regarding pure ALU performance.
Errata
[edit]The early versions of 60–66 MHz P5 Pentiums had a problem in the floating-point unit that resulted in incorrect (but predictable) results from some division operations. This flaw, discovered in 1994 by professor Thomas Nicely at Lynchburg College, Virginia, became widely known as the Pentium FDIV bug and caused embarrassment for Intel, which created an exchange program to replace the faulty processors.
In 1997, another erratum was discovered that could allow a malicious program to crash a system without any special privileges, the "F00F bug". All P5 series processors were affected and no fixed steppings were ever released, however contemporary operating systems were patched with workarounds to prevent crashes.
Cores and steppings
[edit]The Pentium was Intel's primary microprocessor for personal computers during the mid-1990s. The original design was reimplemented in newer processes and new features were added to maintain its competitiveness, and to address specific markets such as portable computers. As a result, there were several variants of the P5 microarchitecture.
P5
[edit]
The first Pentium microprocessor core was code-named "P5". Its product code was 80501 (80500 for the earliest steppings Q0399). There were two versions, specified to operate at 60 MHz and 66 MHz respectively, using Socket 4. This first implementation of the Pentium was released using a 273-pin PGA form factor and ran on a 5v power supply. (descended from the usual transistor-transistor logic (TTL) compatibility requirements). It contained 3.1 million transistors and measured 16.7 mm by 17.6 mm for an area of 293.92 mm2.[47] It was fabricated in a 800 nm three-layer metal bipolar complementary metal–oxide–semiconductor (BiCMOS) process.[48][49] The 5-volt design resulted in relatively high energy consumption for its operating frequency when compared to the directly following models.
P54C
[edit]
The P5 was followed by the P54C (80502) in 1994, with versions specified to operate at 75, 90, or 100 MHz using a 3.3 volt power supply. Marking the switch to Socket 5, this was the first Pentium processor to operate at 3.3 volts, reducing energy consumption, but necessitating voltage regulation on mainboards. As with higher-clocked 486 processors, an internal clock multiplier was employed from here on to let the internal circuitry work at a higher frequency than the external address and data buses, as it is more complicated and cumbersome to increase the external frequency, due to physical constraints. It also allowed two-way multiprocessing, and had an integrated local APIC and new power management features. It contained 3.3 million transistors and measured 163 mm2.[50] It was fabricated in a BiCMOS process which has been described as both 500 nm and 600 nm due to differing definitions.[50]
P54CQS
[edit]The P54C was followed by the P54CQS in early 1995, which operated at 120 MHz. It was fabricated in a 350 nm BiCMOS process and was the first commercial microprocessor to be fabricated in a 350 nm process.[50] Its transistor count is identical to the P54C and, despite the newer process, it had an identical die area as well. The chip was connected to the package using wire bonding, which only allows connections along the edges of the chip. A smaller chip would have required a redesign of the package, as there is a limit on the length of the wires and the edges of the chip would be further away from the pads on the package. The solution was to keep the chip the same size, retain the existing pad-ring, and only reduce the size of the Pentium's logic circuitry to enable it to achieve higher clock frequencies.[50]
P54CS
[edit]The P54CQS was quickly followed by the P54CS, which operated at 133, 150, 166 and 200 MHz, and introduced Socket 7. It contained 3.3 million transistors, measured 90 mm2 and was fabricated in a 350 nm BiCMOS process with four levels of interconnect.
P24T
[edit]The P24T Pentium OverDrive for 486 systems were released in 1995, which were based on 3.3 V 600 nm versions using a 63 or 83 MHz clock. Since these used Socket 2/3, some modifications had to be made to compensate for the 32-bit data bus and slower on-board L2 cache of 486 motherboards. They were therefore equipped with a 32 KB L1 cache (double that of pre-P55C Pentium CPUs).
P55C
[edit]
The P55C (or 80503) was developed by Intel's Research & Development Center in Haifa, Israel. It was sold as Pentium with MMX Technology (usually just called Pentium MMX); although it was based on the P5 core, it featured a new set of 57 "MMX" instructions intended to improve performance on multimedia tasks, such as encoding and decoding digital media data. The Pentium MMX line was introduced on October 22, 1996, and released in January 1997.[51]
The new instructions worked on new data types: 64-bit packed vectors of either eight 8-bit integers, four 16-bit integers, two 32-bit integers, or one 64-bit integer. So, for example, the PADDUSB (Packed ADD Unsigned Saturated Byte) instruction adds two vectors, each containing eight 8-bit unsigned integers together, elementwise; each addition that would overflow saturates, yielding 255, the maximal unsigned value that can be represented in a byte. These rather specialized instructions generally require special coding by the programmer for them to be used.[citation needed]
Other changes to the core include a 6-stage pipeline (vs. 5 on P5) with a return stack (first done on Cyrix 6x86) and better parallelism, an improved instruction decoder, 16KB L1 data cache + 16KB L1 instruction cache with Both 4-way associativity (vs. 8KB L1 Data/instruction with 2-way on P5), 4 write buffers that could now be used by either pipeline (vs. one corresponding to each pipeline on P5) and an improved branch predictor taken from the Pentium Pro,[52][53] with a 512-entry buffer (vs. 256 on P5).[54]
It contained 4.5 million transistors and had an area of 140 mm2. It was fabricated in a 280 nm CMOS process with the same metal pitches as the previous 350 nm BiCMOS process, so Intel described it as "350 nm" because of its similar transistor density.[55] The process has four levels of interconnect.[55]
While the P55C remained compatible with Socket 7, the voltage requirements for powering the chip differ from the standard Socket 7 specifications. Most motherboards manufactured for Socket 7 before the establishment of the P55C standard are not compliant with the dual voltage rail required for proper operation of this CPU (2.8 volt core voltage, 3.3 volt input/output (I/O) voltage). Intel addressed the issue with OverDrive upgrade kits that featured an interposer with its own voltage regulation.
Tillamook
[edit]Pentium MMX notebook CPUs used a mobile module that held the CPU. This module was a printed circuit board (PCB) with the CPU directly attached to it in a smaller form factor. The module snapped to the notebook motherboard, and typically a heat spreader was installed and made contact with the module. However, with the 250 nm Tillamook Mobile Pentium MMX (named after a city in Oregon), the module also held the 430TX chipset along with the system's 512 KB static random-access memory (SRAM) cache memory.
Models and variants
[edit]| Code name | P5 | P54C | P54C/P54CQS | P54CS | P55C | Tillamook | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product code | 80501 | 80502 | 80503 | |||||||||||||||||||
| Process size | 800 nm | 600 nm or 350 nm* | 350 nm | 350 nm (later 280 nm) | 250 nm | |||||||||||||||||
| Die area (mm2) | 293.92 (16.7 x 17.6 mm) | 148 @ 600 nm / 91 (later 83) @ 350 nm | 91 (later 83) | 141 @ 350 nm / 128 @ 280 nm | 94.47 (9.06272 x 10.42416 mm) | |||||||||||||||||
| Number of transistors (millions) | 3.10 | 3.20 | 3.30 | 4.50 | ||||||||||||||||||
| Socket | Socket 4 | Socket 5/7 | Socket 7 | |||||||||||||||||||
| Package | CPGA/CPGA+IHS | CPGA/CPGA+IHS/TCP* | CPGA/TCP* | CPGA/TCP* | CPGA/PPGA | PPGA | TCP* | CPGA/PPGA/TCP* | PPGA/TCP* | TCP/TCP on MMC-1 | ||||||||||||
| Clock speed (MHz) | 60 | 66 | 75 | 90 | 100 | 120 | 133 | 150 | 166 | 200 | 120* | 133* | 150* | 166 | 200 | 233 | 166 | 200 | 233 | 266 | 300 | |
| Bus speed (MHz) | 60 | 66 | 50 | 60 | 50 | 66 | 60 | 66 | 60 | 66 | 60 | 66 | 60 | 66 | ||||||||
| Level 1 Cache Size | 8 KB 2-way set associative code cache. 8 KB 2-way set associative write-back data cache | 16 KB 4-way set associative code cache. 16 KB 4-way set associative write-back data cache | ||||||||||||||||||||
| Core Voltage | 5.0 | 5.15 | 3.3 2,9* | 3.3 2.9* | 3.3 3.1* 2.9* | 3.3 3.1* 2.9* | 3.3 3.1* 2.9* | 3.3 3.1* 2.9* | 3.3 | 3.3 | 2.2* | 2.45* | 2.45* | 2.8 2.45* | 2.8 | 2.8 | 1.9 1.8* | 1.8* | 1.9 1.8* | 1.9 2.0* | 2.0* | |
| I/O Voltage | 5.0 | 5.15 | 3.3 | 3.3 | 3.3 | 3.3 | 3.3 | 3.3 | 3.3 | 3.3 | 3.3 | 3.3 | 3.3 | 3.3 | 3.3 | 3.3 | 2.5 | 2.5 | 2.5 | 2.5 | 2.5 | |
| TDP (max. W) | 14.6 (15.3) | 16.0 (17.3) | 8.0 (9.5) 6.0* (7.3*) | 9.0 (10.6) 7.3* (8.8*) | 10.1 (11.7) 8.0 at 600nm* (9.8 at 600nm*) 5.9 at 350nm* (7.6 at 350nm*) | 12.8 (13.4) 7.1* (8.8*) | 11.2 (12.2) 7.9* (9.8*) | 11.6 (13.9) 10.0* (12.0*) | 14.5 (15.3) | 15.5 (16.6) | 4.2* | 7.8* (11.8*) | 8.6* (12.7*) | 13.1 (15.7) 9.0* (13.7*) | 15.7 (18.9) | 17.0 (21.5) | 4.5 (7.4) 4.1* (5.4*) | 5.0* (6.1*) | 5.5* (7.0*) | 7.6 (9.2) 7.6* (9.6*) | 8.0* | |
| Introduced | 1993-03-22 | 1994-10-10 | 1994-03-07 | 1995-03-27 | 1995-06-12 | 1996-01-04 | 1996-06-10 | 1996-10-20 | 1997-05-19 | 1997-01-08 | 1997-06-02 | 1997-08 | 1998-01 | 1999-01 | ||||||||
| * An asterisk indicates that these were only available as Mobile Pentium or Mobile Pentium MMX chips for laptops. | ||||||||||||||||||||||
| Code name | P54CTB | ||||||
|---|---|---|---|---|---|---|---|
| Product code | PODPMT60X150 | PODPMT66X166 | PODPMT60X180 | PODPMT66X200 | |||
| Process size (nm) | 350 | ||||||
| Socket | Socket 5/7 | ||||||
| Package | CPGA with heatsink, fan and voltage regulator | ||||||
| Clock speed (MHz) | 125 | 150 | 166 | 150 | 180 | 200 | |
| Bus speed (MHz) | 50 | 60 | 66 | 50 | 60 | 66 | |
| Upgrade for | Pentium 75 | Pentium 90 | Pentium 100 and 133 | Pentium 75 | Pentium 90, 120 and 150 | Pentium 100, 133 and 166 | |
| TDP (max. W) | 15.6 | 15.6 | 15.6 | 18 | |||
| Voltage | 3.3 | 3.3 | 3.3 | 3.3 | |||
| Code name | P55C | Tillamook | |||||
|---|---|---|---|---|---|---|---|
| Product code | FV8050366200 | FV8050366233 | FV80503CSM66166 | GC80503CSM66166 | GC80503CS166EXT | FV80503CSM66266 | GC80503CSM66266 |
| Process size (nm) | 350 | 250 | |||||
| Clock speed (MHz) | 200 | 233 | 166 | 166 | 166 | 266 | 266 |
| Bus speed (MHz) | 66 | 66 | 66 | 66 | 66 | 66 | 66 |
| Package | PPGA | PPGA | PPGA | BGA | BGA | PPGA | BGA |
| TDP (max. W) | 15.7 | 17 | 4.5 | 4.1 | 4.1 | 7.6 | 7.6 |
| Voltage | 2.8 | 2.8 | 1.9 | 1.8 | 1.8 | 1.9 | 2.0 |
Competitors
[edit]After the introduction of the Pentium, competitors such as NexGen,[56] AMD, Cyrix, and Texas Instruments announced Pentium-compatible processors in 1994.[57] CIO magazine identified NexGen's Nx586 as the first Pentium-compatible CPU,[58] while PC Magazine described the Cyrix 6x86 as the first. These were followed by the AMD K5, which was delayed due to design difficulties. AMD later bought NexGen to help design the AMD K6, and Cyrix was bought by National Semiconductor.[59] Later processors from AMD and Intel retain compatibility with the original Pentium.
List
[edit]See also
[edit]- List of Intel CPU microarchitectures
- List of Intel Pentium processors
- Cache on a stick (COASt), L2 cache modules for Pentium
- IA-32 instruction set architecture (ISA)
- Intel 82497 cache controller
References
[edit]- ^ a b "Product Change Notification #777" (PDF). Intel. February 9, 1999. Archived from the original (PDF) on January 27, 2000. Retrieved October 14, 2019.
- ^ a b "Microsoft Support Lifecycle". Microsoft. Archived from the original on November 22, 2012. Retrieved February 7, 2015.
- ^ "Intel® Pentium® Processor with MMX™ Technology 200 MHZ, 66 MHZ FSB - Product Specifications".
- ^ Hodson, Gerri, "Anatomy of Intel's Pentium Processor", Intel Corporation, Solutions, May/June 1993, Page 9
- ^ View Processors Chronologically by Date of Introduction, Intel, retrieved August 14, 2007
- ^ Intel Pentium Processor Family, Intel, retrieved August 14, 2007
- ^ I.e. 8086/88, 186/286, 386, 486, P5
- ^ Michael Justin Allen Sexton (September 8, 2018). "The History Of Intel CPUs: Updated!". Tom's Hardware. Retrieved November 20, 2024.
- ^ officially known as Pentium with MMX Technology
- ^ Rant, Jon, "Pentium Processor: Previewing Desktop Computing's Next Step", Intel Corporation, Microcomputer Solutions, March/April 1993, p. 1
- ^ as compared to a simple RISC processor like the i960.
- ^ Rant, Jon, "Pentium Processor: Previewing Desktop Computing's Next Step", Intel Corporation, Microcomputer Solutions, March/April 1993, p. 1
- ^ Hodson, Gerri, "Anatomy of Intel's Pentium Processor", Intel Corporation, Solutions, May/June 1993, Page 9
- ^ Rant, Jon, "Pentium Processor: Previewing Desktop Computing's Next Step", Intel Corporation, Microcomputer Solutions, March/April 1993, p. 1
- ^ Colwell, Robert P. (2006). The Pentium Chronicles: The People, Passion, and Politics Behind Intel's Landmark Chips. Wiley. p. 1. ISBN 978-0-471-73617-2.
- ^ a b c "Inside Intel". Business Week. No. 3268. June 1, 1992.
- ^ House, Dave, "Putting the RISC vs. CISC Debate to Rest", Intel Corporation, Microcomputer Solutions, November/December 1991, p. 18
- ^ Ivey, Mark, "Building the Pentium Processor" Intel Corporation, Solutions, May/June 1993, page 4
- ^ Ivey, Mark, "Building the Pentium Processor" Intel Corporation, Solutions, May/June 1993, page 4
- ^ Ivey, Mark, "Building the Pentium Processor" Intel Corporation, Solutions, May/June 1993, page 4
- ^ Chen, Allan, Editor; Hodson Gerri, Associate Edtior, "Intelperspectives: Intel's Newsletter for MIS Profesionals, Volume 2, Number 1", Intel Corporation, Microcomputer Solutions, January/February 1993. p. 11
- ^ Ivey, Mark, "Building the Pentium Processor" Intel Corporation, Solutions, May/June 1993, page 4
- ^ Horten, Monica (May 1, 1993). "The hot new star of microchips". New Scientist. No. 1871. pp. 31 ff. Archived from the original on July 27, 2011. Retrieved June 9, 2009.
- ^ Ivey, Mark, "Building the Pentium Processor" Intel Corporation, Solutions, May/June 1993, page 4
- ^ Ivey, Mark, "Building the Pentium Processor" Intel Corporation, Solutions, May/June 1993, page 4
- ^ Quinlan, Tom (March 16, 1992). "Intel to offer a peek at its '586' chip". InfoWorld. p. 8.
- ^ Quinlan, Tom; Corcoran, Cate (June 15, 1992). "Design woes force Intel to cancel 586 chip demo". InfoWorld. Vol. 14, no. 24. p. 1.
- ^ Quinlan, Tom; Corcoran, Cate (July 27, 1992). "P5 chip delay won't alter rivals' plans". InfoWorld. Vol. 14, no. 30. pp. 1, 103.
- ^ Rohrbough, Linda (July 8, 1993). "ALR Shipping First Pentium PCs Starting Under $2,500". Newsbytes. The Washington Post Company: NEW07080026 – via Gale.
- ^ Staff writer (October 19, 1993). "Pentium PCs to hit US stores". South China Morning Post: 1. ProQuest 1524591176.
- ^ Woolley, Scott (May 30, 1994). "As Pentium edge wanes, ALR rolls out new products". Orange County Business Journal. 17 (22). American City Business Journals: 1. ProQuest 211139258.
- ^ Margulius, David L. (July 21, 2003). "Intel Turns 35: Now What?". InfoWorld. Vol. 25, no. 28. pp. 51–55. ISSN 0199-6649.
- ^ Alpert, D.; Avnon, D. (June 1993). "Architecture of the Pentium microprocessor]". IEEE Micro. Vol. 13, no. 3. p. 21. doi:10.1109/40.216745.
- ^ §3 of Seiler, L.; Cavin, D.; Espasa, E.; Grochowski, T.; Juan, M.; Hanrahan, P.; Carmean, S.; Sprangle, A.; Forsyth, J.; Abrash, R.; Dubey, R.; Junkins, E.; Lake, T.; Sugerman, P. (August 2008). "Larrabee: A Many-Core x86 Architecture for Visual Computing" (PDF). ACM Transactions on Graphics. Proceedings of ACM SIGGRAPH 2008. 27 (3): 18:11. doi:10.1145/1360612.1360617. ISSN 0730-0301. S2CID 52799248. Retrieved August 18, 2023.
- ^ Shimpi, Anand Lal (January 27, 2010), Why Pine Trail Isn't Much Faster Than the First Atom, archived from the original on April 7, 2010, retrieved August 4, 2010
- ^ Smith, Ernie (June 14, 2017). "Why Intel Couldn't Trademark Numbers Anymore". Vice. Retrieved July 13, 2023.
- ^ Hodson, Gerri, "Anatomy of Intel's Pentium Processor", Intel Corporation, Solutions, May/June 1993, Page 9
- ^ Hodson, Gerri, "Anatomy of Intel's Pentium Processor", Intel Corporation, Solutions, May/June 1993, Page 9
- ^ Rant, Jon, "Pentium Processor: Previewing Desktop Computing's Next Step", Intel Corporation, Microcomputer Solutions, March/April 1993, p. 1
- ^ Hodson, Gerri, "Anatomy of Intel's Pentium Processor", Intel Corporation, Solutions, May/June 1993, Page 9
- ^ Hodson, Gerri, "Anatomy of Intel's Pentium Processor", Intel Corporation, Solutions, May/June 1993, Page 9
- ^ Hodson, Gerri, "Anatomy of Intel's Pentium Processor", Intel Corporation, Solutions, May/June 1993, Page 9
- ^ Hodson, Gerri, "Anatomy of Intel's Pentium Processor", Intel Corporation, Solutions, May/June 1993, Page 9
- ^ Hodson, Gerri, "Anatomy of Intel's Pentium Processor", Intel Corporation, Solutions, May/June 1993, Page 9
- ^ "PC users guide: General Computer Information". Archived from the original on July 28, 2007. Retrieved September 14, 2007.
- ^ Polsson, Ken. "Chronology of Microprocessors".
- ^ Case, Brian (March 29, 1993). "Intel Reveals Pentium Implementation Details". Microprocessor Report.
- ^ "Intel Pentium processor (510\60, 567\66). Nov 1994" (PDF).
- ^ Hodson, Gerri, "Anatomy of Intel's Pentium Processor", Intel Corporation, Solutions, May/June 1993, Page 9
- ^ a b c d Gwennap, Linley (March 27, 1995). "Pentium is First CPU to Reach 0.35 Micron". Microprocessor Report.
- ^ New Chip Begs New Questions, CNet, retrieved February 6, 2009
- ^ "Intel Architecture Optimization Manual" (PDF). 1997. pp. 2–16. Archived from the original (PDF) on July 5, 2017. Retrieved September 1, 2017.
- ^ "Phil Storrs PC Hardware book". Archived from the original on January 20, 2020. Retrieved September 1, 2017.
- ^ "Pentium Processor with MMX Technology" (PDF). 1997. Archived from the original (PDF) on July 5, 2010. Retrieved September 1, 2017.
- ^ a b Slater, Michael (March 5, 1996). "Intel's Long-Awaited P55C Disclosed". Microprocessor Report.
- ^ Corcoran, Cate; Crothers, Brooke (July 11, 1994). "NexGen to Beat Intel's Chip Prices". InfoWorld. IDG: 5.
- ^ Barr, Christopher (January 11, 1994). "Pentium Killers". PC Magazine. 13 (1). Ziff Davis: 29.
- ^ Edwards, John (June 15, 1995). "In the Chips". CIO magazine. 8 (17). IDG: 72–76.
- ^ Slater, Michael (September 23, 1997). "The CPU for Your Next PC". PC Magazine. 16 (16). Ziff Davis: 130–133.
External links
[edit]- CPU-Collection.de - Intel Pentium images and descriptions
- Plasma Online Intel CPU Identification
- The Pentium Timeline Project Archived December 23, 2021, at the Wayback Machine The Pentium Timeline Project maps oldest and youngest chip known of every s-spec made. Data are shown in an interactive timeline.
Intel datasheets
[edit]- Pentium (P5)
- Pentium (P54)
- Pentium MMX (P55C)
- Mobile Pentium MMX (P55C)
- Mobile Pentium MMX (Tillamook)
Intel manuals
[edit]These official manuals provide an overview of the Pentium processor and its features:
- Pentium Processor Family Developer's Manual Pentium Processor (Volume 1) (Intel order number 241428)
- Pentium Processor Family Developer's Manual Volume 2: Instruction Set Reference (Intel order number 243191)
- Pentium Processor Family Developer's Manual Volume 3: Architecture and Programming Manual[dead link] (Intel order number 241430)
Pentium (original)
View on GrokipediaOverview
Introduction
The Pentium microprocessor, Intel's fifth-generation x86 processor, succeeded the 80486 and marked a significant advancement in personal computing performance. Launched on March 22, 1993, it debuted with clock speeds of 60 MHz and 66 MHz, targeting desktop systems and enabling more efficient handling of complex applications compared to its predecessor.[6][4] Fabricated on a 0.8-micrometer process with 3.1 million transistors, the original Pentium supported up to 4 GB of addressable memory and utilized the 273-pin Socket 4 interface for motherboard integration in initial models, with later variants using the 320-pin Socket 5. Early variants reached a maximum clock speed of 100 MHz by 1994, providing a substantial boost in processing capabilities for the era's software demands.[4][7][6][2] At its core, the Pentium introduced a superscalar architecture, capable of executing two instructions per clock cycle through parallel integer pipelines, which doubled the throughput potential over the scalar 80486 design. This innovation, part of Intel's P5 microarchitecture, laid the groundwork for modern x86 performance scaling. Historically, it was Intel's first CPU branded as "Pentium" rather than a numeric designation like 586, a strategic move to protect the trademark from competitors producing compatible clones.[7][1]Etymology and Naming
The name "Pentium" derives from the Greek word pente (πέντε), meaning "five," signifying Intel's fifth-generation x86 microprocessor following the 8086 (first generation), 80286 (second), 80386 (third), and 80486 (fourth).[6][8] This linguistic choice also evoked the internal project designation P5, emphasizing the processor's evolutionary position in Intel's architecture lineage. The trademark was filed on July 2, 1992, marking a deliberate shift from numerical identifiers to proprietary branding.[8] In March 1991, a federal judge ruled against Intel in a trademark dispute with AMD over the "386" designation, deeming it generic and ineligible for exclusive protection, similar to how "Kleenex" became synonymous with facial tissues.[9] This decision prompted Intel to abandon numeric naming for future processors, as numbers like "586" could not be trademarked and risked commoditization by competitors. The strategy aimed to safeguard Intel's intellectual property and foster a distinctive brand identity amid intensifying market competition.[9] The ruling exacerbated ongoing legal tensions between Intel and AMD, culminating in a comprehensive settlement in January 1995 that resolved disputes over technology licensing and patent cross-licensing.[10] As part of this environment, AMD released its Am5x86 processor in November 1995, a 486-compatible upgrade designed for Pentium-era performance but named with "5x86" to circumvent Intel's trademark while signaling fifth-generation capabilities.[11] Later variants of the original Pentium incorporated Intel's MMX (MultiMedia eXtensions) instruction set, introduced in January 1997 as the Pentium Processor with MMX Technology, extending the branding to highlight enhanced multimedia processing without altering the core microarchitecture.[12] This sub-branding reinforced Intel's focus on trademarked features to differentiate products in the evolving PC market.Development
Design Origins
The P5 project, Intel's codename for what would become the original Pentium microprocessor, was initiated in early 1989 as the successor to the i486. The architectural team was managed by Donald Alpert at Intel's Santa Clara design center. The primary motivation was to dramatically improve performance to counter the competitive pressure from RISC processors, including MIPS and SPARC architectures, which were delivering higher instructions per cycle in workstations and servers. Intel's goals centered on achieving substantial performance gains, such as the 60 MHz model's approximately 100 Dhrystone MIPS upon release, while preserving binary compatibility with existing x86 software, drawing influence from the integrated design of the i486 and lessons from Intel's concurrent but ultimately unsuccessful RISC ventures, such as the i860 processor targeted at high-performance computing.[13] To achieve these objectives without relying primarily on aggressive clock speed increases—which were limited by power and thermal constraints—the team focused on superscalar execution, enabling parallel processing of multiple instructions per cycle. A key milestone was the tape-out of the initial design in April 1992, transitioning the project from simulation and emulation to physical silicon production using a 0.8 μm BiCMOS process.Improvements over i486
The Pentium processor introduced a superscalar architecture, a significant departure from the scalar design of the i486, enabling it to fetch, decode, and execute up to two integer instructions per clock cycle using dual pipelines labeled U-pipe (capable of executing any integer instruction) and V-pipe (limited to simple integer instructions). This parallel execution capability allowed the Pentium to achieve roughly double the integer performance of the i486 at equivalent clock speeds, addressing the limitations of the i486's single-pipeline approach that processed only one instruction per cycle. In terms of data handling, the Pentium featured wider 64-bit external data bus and internal data paths, compared to the i486's 32-bit paths, which improved bandwidth for memory accesses and cache operations, reducing bottlenecks in data-intensive tasks. Additionally, the Pentium incorporated a dynamic branch prediction mechanism using a two-bit saturating counter to anticipate branch outcomes, minimizing pipeline stalls from mispredicted branches that plagued the i486's static approach and could incur penalties of up to 16 cycles. The integrated floating-point unit (FPU) in the Pentium was redesigned for pipelined operation, delivering approximately double the throughput of the i486's FPU by supporting concurrent execution of multiple floating-point operations, such as add and multiply in overlapping cycles, which enhanced performance in scientific and graphics applications. Overall, these advancements translated to substantial performance gains; for instance, the 60 MHz Pentium achieved about 100 Dhrystone MIPS, compared to roughly 54 MIPS for a 66 MHz i486DX2.[14]Production and Release
The original Pentium processor was fabricated using Intel's BiCMOS manufacturing process, starting with a 0.8-micron feature size to enable high-performance bipolar circuitry alongside CMOS logic.[14][15] This process supported the initial production run, which began in 1993 and was limited to 60 MHz and 66 MHz models designed for Socket 4 interfaces.[14] As yields improved and technology advanced, Intel shrank the process to 0.6 micron (often conservatively labeled as such despite effective 0.5-micron densities) and later 0.35 micron, facilitating higher clock speeds that reached up to 200 MHz by 1997.[16] Intel officially unveiled the Pentium on March 22, 1993, targeting original equipment manufacturers (OEMs) with the 60 MHz variant priced at $878 and the 66 MHz at $964 per unit in quantities of 1,000.[17][18] These early processors were produced in limited volumes initially, focusing on integration with compatible motherboards and chipsets to accelerate market entry.[19] Market adoption gained momentum through partnerships with leading PC vendors, including Compaq and IBM, which began bundling the Pentium in their systems by late 1993.[20][21] By 1994, production volumes ramped up substantially, with over 150 Pentium-based systems introduced across the industry, driving broader commercial rollout and establishing the processor as a key upgrade path from the 486 era.[19]Architecture
Microarchitecture Basics
The P5 microarchitecture, employed in Intel's original Pentium processor, marked the company's first superscalar implementation within the x86 lineage, enabling the simultaneous execution of up to two instructions per clock cycle to enhance performance over prior scalar designs. This superscalar capability stems from dual independent pipelines dedicated to integer operations, allowing parallel processing while preserving the complex instruction set computing (CISC) nature of the x86 architecture. The processor decodes x86 CISC instructions into simpler internal operations for execution, bridging traditional CISC complexity with more efficient RISC-inspired handling in its pipelines.[22] The instruction set of the P5 remains fully backward compatible with that of earlier x86 processors, including the 8086, 80286, 80386, and i486, ensuring seamless operation of existing software without the addition of new instructions in the initial design. Core components of the microarchitecture include the integer unit for handling general-purpose arithmetic, logical, and control flow operations; an integrated floating-point unit (FPU) for high-performance floating-point calculations; and the bus interface unit (BIU) responsible for interfacing with the external system bus to fetch instructions and data. These units work in concert to support the processor's 32-bit protected mode operations while maintaining 16-bit real-mode compatibility.[22] Power consumption in the P5 varies by clock speed and supply voltage. For the initial 60 MHz model (5 V), dissipation is typically 11.9 W (maximum 14.6 W); for 66 MHz (5 V), typically 13 W (maximum 16 W). Later variants up to 200 MHz (3.3 V) reach a maximum of 16.6 W.[22][23] Due to these thermal characteristics, processors operating above 133 MHz generally require active cooling solutions, such as heatsinks with fans, to prevent overheating and ensure reliable operation.Pipeline and Execution
The original Pentium processor, based on the P5 microarchitecture, employs a five-stage superscalar pipeline for integer instructions to enable parallel execution of up to two operations per clock cycle. The stages consist of instruction fetch (IF), where instructions are retrieved from the on-chip instruction cache; decode stage 1 (D1), which processes instruction prefixes and lengths; decode stage 2 (D2), featuring dual decoders that translate x86 instructions into micro-operations and can issue up to two micro-ops simultaneously; execute (EX), where operations are performed using dedicated hardware units; and write-back (WB), which retires results to the register file or memory.[24][23] Execution occurs through two parallel integer pipelines: the U-pipe (universal pipe), which handles all integer operations including complex arithmetic, shifts, and branches; and the V-pipe (very simple pipe), limited to basic operations such as add, subtract, and logical instructions without address generation. Instructions are issued in-order to these pipelines, with the dual decoders pairing compatible operations (e.g., a load to U-pipe and an add to V-pipe) to maximize throughput, though the design does not support full dynamic scheduling for integers. Limited out-of-order execution is facilitated by small reservation stations that buffer up to four micro-ops for the integer units, allowing some reordering for data dependencies before dispatch to the execution pipelines.[24][23] The floating-point unit (FPU) is a dedicated 64-bit pipelined execution engine integrated into the architecture, sharing the first five pipeline stages (IF, D1, D2, EX, WB) with the integer unit but extending with three additional stages for floating-point-specific processing, resulting in an eight-stage pipeline overall. This FPU supports IEEE 754 single- and double-precision operations, with dedicated adder, multiplier, and divider hardware that can sustain one floating-point instruction per cycle once loaded, independent of the integer pipelines. Out-of-order execution is more pronounced in the FPU, where a reservation station holds up to three pending floating-point micro-ops, enabling the unit to proceed ahead of stalled integer instructions and improving overall instruction-level parallelism. Branch prediction, primarily static with dynamic elements in later steppings, aids pipeline flow by reducing misprediction penalties in the fetch stage.[24][23]Cache System and Memory Interface
The original Pentium processor featured separate on-chip Level 1 (L1) caches for instructions and data, each measuring 8 KB in size and organized as two-way set associative arrays.[24] This split-cache design allowed simultaneous access to code and data, enhancing bandwidth for the superscalar execution model compared to the unified cache in the preceding i486.[24] Both caches employed a write-back policy with the MESI (Modified, Exclusive, Shared, Invalid) coherence protocol to manage consistency and reduce bus traffic during writes.[24] The processor did not include an integrated Level 2 (L2) cache; however, external L2 caching was supported optionally via dedicated controllers like the Intel 82495XP, typically ranging from 256 KB to 512 KB in off-chip implementations.[22] To accelerate virtual-to-physical address translation, the Pentium incorporated dedicated Translation Lookaside Buffers (TLBs). The instruction TLB consisted of 32 entries organized as 4-way set associative for 4 KB pages, with support for 4 MB pages.[22] The data TLB provided 64 entries as 4-way set associative for 4 KB pages and 8 entries for 4 MB pages, to minimize translation overhead in memory-intensive workloads.[22] These TLBs were dual-ported to enable concurrent instruction fetch and data access translations, aligning with the processor's dual-pipeline architecture.[24] The memory subsystem utilized a 64-bit external data bus, doubling the bandwidth over the 32-bit bus of the i486 and enabling faster transfers for cache line fills and bursts.[25] This interface supported up to 4 GB of physical memory addressing via a 32-bit address bus, adhering to the IA-32 architecture's flat memory model.[25] Paging was implemented with standard 4 KB page sizes, using a two-level page directory and table structure for demand-paged virtual memory management, while optional 4 MB page extensions reduced TLB pressure for large contiguous allocations.[22] The bus protocol was pipelined, allowing address and data phases to overlap for improved throughput, and included burst mode capabilities for sequential cache fills, achieving effective rates up to 528 MB/s on a 66 MHz system.[26] This design integrated with the Bus Interface Unit (BIU) to handle external memory requests efficiently, minimizing latency in cache misses.[25]Variants and Steppings
P5 Core
The original P5 core of the Pentium processor was introduced in steppings designated A0 for prototypes and B0/B1 for initial production versions operating at 60 MHz and 66 MHz, respectively.[27] These early steppings represented the foundational implementation of Intel's superscalar design for the x86 architecture. The P5 core contained 3.1 million transistors and was fabricated using a 0.8 μm BiCMOS process technology with a 5 V core voltage supply. It supported clock frequencies of 60 MHz and 66 MHz, marking a significant increase over the i486's capabilities while introducing dual integer pipelines for basic superscalar execution without support for MMX multimedia instructions.[4] The core utilized Socket 4 for installation in compatible motherboards. Key limitations of the P5 core included relatively high power consumption, with the 60 MHz variant drawing up to 15.28 W under maximum load, which contributed to thermal challenges in systems of the era. Additionally, it lacked an on-chip Level 2 (L2) cache, relying instead on external secondary caching solutions provided by the motherboard.[4]P54C Series
The P54C series, introduced in 1994, marked a significant refinement of the original Pentium core through advancements in manufacturing process and power management. Fabricated using a 0.6 μm or 0.35 μm CMOS process depending on the model, these processors achieved clock speeds from 75 MHz up to 200 MHz across various models, enabling broader performance scalability for desktop systems. The series maintained the Pentium's superscalar architecture while incorporating an integrated split Level 1 cache: an 8 KB instruction cache and an 8 KB data cache, which enhanced instruction fetch and data access efficiency by allowing simultaneous operations without contention. With a transistor count of 3.3 million, the P54C design improved manufacturing yields and reduced heat generation compared to the earlier 0.8 μm P5 core. A key enhancement in the P54C was the optional reduction to a 3.3 V core voltage from the original 5 V, which lowered power dissipation and thermal output while supporting the same Socket 5 interface for compatibility with existing motherboards. This voltage option was particularly beneficial for higher-frequency variants, mitigating the power scaling challenges of the era. Specific steppings within the series included the baseline P54C for initial 75–100 MHz models, the P54CQS (often associated with "quick start" production ramps for rapid market deployment) targeting 120 MHz on optimized dies, and the P54CS for specialized higher-speed configurations up to 200 MHz, incorporating minor silicon fixes for stability. These steppings collectively addressed early production issues, such as residual errata from prior generations, through iterative design tweaks.[28] For mobile applications, Intel developed the P24T variant as a low-power derivative of the P54C, optimized for 3.3 V operation and clock speeds of 75–120 MHz to suit battery-constrained environments. The P24T featured the same split cache configuration but with tailored power gating to extend laptop runtime, representing an early effort in portable computing adaptations. Overall, the P54C series' process and voltage improvements not only boosted clock speeds but also enhanced reliability, paving the way for the Pentium's dominance in mid-1990s personal computing.[29][30]P55C and Tillamook
The P55C, introduced in 1996 as an evolution of the Pentium lineup, incorporated Intel's MMX technology to enhance multimedia processing capabilities while maintaining compatibility with Socket 7 motherboards.[31] This variant featured 4.5 million transistors fabricated on a 0.35 μm process, with clock speeds ranging from 133 MHz to 233 MHz and a 66 MHz front-side bus. It utilized a 296-pin staggered plastic pin grid array (SPGA) package and doubled the on-chip L1 cache to 16 KB for instructions and 16 KB for data compared to prior Pentium models, aiding in improved performance for integer and multimedia workloads.[31] Central to the P55C was the MMX instruction set extension, which added 57 new instructions optimized for single instruction, multiple data (SIMD) operations on packed integer data.[32] These instructions operated on eight 64-bit MMX registers (MM0 through MM7), aliased onto the existing x87 floating-point register stack, enabling parallel processing of multiple 8-bit, 16-bit, or 32-bit values within a single 64-bit register for tasks like video decoding and image manipulation.[32] The P55C also supported OverDrive upgrades, allowing it to replace 486 processors in compatible Socket 3 or Socket 7 systems via dedicated upgrade modules that provided necessary voltage regulation and pin mapping.[33] The Tillamook, released in 1997 as a mobile-oriented successor to the P55C, shifted to a 0.25 μm manufacturing process while retaining the core MMX enhancements and 4.5 million transistor count.[34] Designed for low-power laptop applications, it integrated 256 KB of L2 cache directly onto the processor substrate for better efficiency and reduced latency, with clock speeds from 200 MHz to 300 MHz on a 66 MHz bus.[34] Tillamook operated at a lower core voltage of approximately 1.8–2.0 V and an I/O voltage of 2.5 V, achieving thermal design power ratings as low as 3.4 W at 200 MHz, which represented a significant reduction in power consumption over previous mobile Pentiums.[35] This variant used a tape carrier package (TCP) or ball grid array (BGA) for integration into compact mobile platforms, emphasizing battery life and thermal management without altering the fundamental P55C microarchitecture.[34]Issues and Fixes
FDIV Bug
The FDIV bug was a flaw in the floating-point unit (FPU) of early Intel Pentium processors that produced incorrect results for specific floating-point division operations. It arose from omissions in the SRT (Sweeney, Robertson, and Tocher) division lookup table, a read-only memory structure used by the FPU to generate initial quotient approximations during division. Due to an error in the microcode generation script that populated the table during chip fabrication, 16 entries were omitted from this 2048-entry table, causing the algorithm to select incorrect quotient digits in affected cases and leading to errors with a probability of approximately 1 in 9 billion random double-precision divisions.[36][37] The bug was first publicly identified in November 1994 by Dr. Thomas Nicely, a mathematics professor at Lynchburg College in Virginia, during computations enumerating sums of twin primes. Nicely observed inconsistencies between results on his new Pentium system and those from a 386DX or 486DX2, prompting him to isolate the issue to floating-point divisions. He shared his findings online and contacted Intel, which internally verified and confirmed the defect in December 1994.[38][37] Affected instructions included the single-precision FDIV and double-precision FDIV instructions, as well as certain iterations of FPTAN and FSIN due to internal use of the same division routine; errors manifested only under specific operand conditions involving more than five significant digits. The magnitude of the error varied but reached a maximum of 61 units in the last place (ulp) relative to the correct quotient, representing a relative inaccuracy of about 3 × 10^{-13} in double precision.[36] All Pentium processors with P5 core steppings 0, 1, 2, and 3 were susceptible, as the table was hardcoded in the floating-point datapath; Intel corrected it via mask changes in stepping 4 and later, released in early 1995. While the bug's rarity made it inconsequential for typical consumer workloads like office applications—Intel estimated an average spreadsheet user might trigger it once every 27,000 years—it posed risks in error-sensitive fields such as scientific simulations, where repeated divisions could propagate inaccuracies and invalidate results, as seen in Nicely's prime enumeration tests. In response to public outcry, Intel ultimately offered to replace all affected Pentium processors at no cost to consumers, incurring a charge of about $475 million in Q4 1994.[39][40]Other Errata and Resolutions
Cache coherency problems emerged in the P54C series, particularly in steppings A through C2, where the processor's internal interaction with external secondary caches on Socket 5 motherboards could lead to stale data in shared lines during write-back operations. This manifested as potential inconsistencies in multi-tasking environments or when the L1 data cache flushed lines improperly, violating the MESI protocol under high bus contention. Intel addressed these in the D0 stepping of the P54C by enhancing the cache controller logic and snoop response mechanisms, ensuring reliable coherency without requiring hardware modifications. Microcode patches were also provided for compatible Socket 7 systems to mitigate residual risks in earlier chips.[41][27] Flaws in the branch target buffer (BTB) affected prediction accuracy in early P5 and P54C steppings, where consecutive taken branches or indirect jumps following a mispredicted call could corrupt BTB entries, leading to repeated mispredictions and up to a 5-10% performance hit in branch-heavy code like loops or control-flow intensive software. These issues stemmed from inadequate flushing of the 256-entry BTB during exceptional conditions and were resolved primarily in the C0 stepping through improved prediction algorithms and buffer management. For deployed systems, Intel issued microcode updates via BIOS for Socket 7 platforms, restoring near-full prediction rates.[41] Overall, these errata had limited real-world impact, primarily affecting specialized workloads and occurring in less than 1% of operations, far less severe than the division flaw. By the P55C and Tillamook variants, nearly all were eliminated through matured stepping revisions. Intel's comprehensive errata documentation, spanning over 20 documented issues across steppings in their specification updates, facilitated thorough testing and validation by developers, underscoring the challenges of early superscalar design.[41][42]Market Impact
Release Timeline and Pricing
The original Pentium processor, based on the P5 core, was introduced on March 22, 1993, initially available in 60 MHz and 66 MHz variants. These models were targeted at original equipment manufacturers (OEMs), with pricing set at $878 for the 60 MHz version and $964 for the 66 MHz version in quantities of 1,000 units.[17] By December 1993, Intel reduced these prices to $793 and $869 respectively, reflecting rapid adoption and production scaling.[17] In 1994, the P54C series expanded the lineup with integrated L1 cache, debuting at 75 MHz in January and reaching 100 MHz by mid-year, enabling Socket 5 compatibility and broader system integration. Pricing for these higher-speed models started at $995 for the 100 MHz variant in OEM volumes (1,000 units), dropping progressively through quarterly adjustments to support market penetration.[43] The 1995 introduction of the P55C series brought the 133 MHz model in June, followed by 150 MHz and 166 MHz options in early 1996, with OEM prices for the 133 MHz falling from $935 to $694 by August 1995 amid aggressive cuts to counter competition and boost volume sales.[44] The Pentium MMX (enhanced P55C with multimedia extensions) launched in October 1996 at 133 MHz to 200 MHz, marking the desktop peak for the architecture before transitioning to Pentium II. OEM pricing for the 166 MHz MMX model was approximately $558 at introduction, with further reductions pushing lower-end variants like the 100 MHz non-MMX to around $200 by late 1996. The mobile Tillamook variant, a 0.25-micron MMX update, concluded the original Pentium era in 1997 with speeds up to 233 MHz, priced at $764 for the top 233 MHz model in mobile-oriented packaging.[45]| Model Series | Release Year | Key Speeds (MHz) | Initial OEM Price (USD, 1,000 units) | Notable Price Drops |
|---|---|---|---|---|
| P5 | 1993 | 60, 66 | 878 (60 MHz), 964 (66 MHz) | To 793/869 by Dec 1993[17] |
| P54C | 1994 | 75–100 | 995 (100 MHz) | Quarterly reductions to ~500 by end-1994 |
| P55C | 1995–1996 | 133–166 | 935 (133 MHz) | To 694 by Aug 1995[44] |
| P55C MMX | 1996 | 133–200 | 558 (166 MHz) | To ~200 (100 MHz equiv.) by late 1996 |
| Tillamook (Mobile MMX) | 1997 | 150–233 | 764 (233 MHz) | Rapid cuts to ~500 during 1998 rollout[45] |
Competitors and Benchmarks
The original Pentium processor faced competition primarily from other x86-compatible manufacturers seeking to challenge Intel's dominance in the mid-1990s PC market. Key rivals included AMD's Am5x86 (also known as the 5K86), which operated at clock speeds of 133-160 MHz and was designed as a Socket 3 upgrade for 486 systems, offering Pentium-like performance at a lower cost.[49] Cyrix's 6x86 processor, with PR ratings starting at 150+ (indicating approximate equivalence to an Intel Pentium at that speed), provided strong integer performance and was marketed as a direct alternative, often outperforming the Pentium in certain workloads at comparable clock rates.[50] Additionally, IDT's WinChip C6 emerged as a low-power contender, claiming integer performance on par with the Intel Pentium MMX at equivalent clock speeds while targeting budget systems. In benchmarks, the Pentium demonstrated substantial improvements over its predecessor, the i486. For instance, in the SPECint92 integer benchmark, the Pentium achieved scores approximately 4 times higher than typical i486 processors, such as the 486DX2-66, reflecting its superscalar design and dual integer pipelines.[51] Similarly, in application-oriented tests like Ziff-Davis CPUmark Winstone, the Pentium delivered around 3 times the performance of high-end 486 systems, particularly in multitasking and office workloads, establishing it as a generational leap.[52] Against competitors, a 100 MHz Pentium offered integer performance roughly equivalent to the AMD Am5x86 at 133 MHz, though the Pentium excelled in floating-point tasks due to its dedicated execution units.[53] The Pentium quickly captured significant market share, holding over 85% of the x86 processor market by 1995, despite the availability of cheaper alternatives from AMD (about 9%) and Cyrix (1.8%).[54] This dominance was bolstered by Intel's manufacturing scale, software optimization, and ecosystem support, which overshadowed rivals' cost advantages. In broader comparisons, RISC architectures like the PowerPC 601 matched or exceeded the Pentium in floating-point performance—often by 50% or more—thanks to superior execution efficiency, but faltered in the x86 software ecosystem where binary compatibility and optimized applications favored Intel's offering.[55]References
- https://en.wikichip.org/wiki/intel/pentium





