Microprocessors From Past to the Present

It is interesting to note that the microprocessor had existed for only 10 years prior to the creation of the PC! Intel invented the microprocessor in 1971; the PC was created by IBM in 1981. Now more than 27 years later, we are still using systems based more or less on the design of that first PC.

The processors powering our PCs today are still backward-compatible in many ways with the 8088 that IBM selected for the first PC in 1981. November 15, 2001, marked the 30th anniversary of the microprocessor, and in those 30 years processor speed has increased more than 18,500 times.

The story of the development of the first microprocessor, the Intel 4004, can be read in "The Computer History Timeline." The 4004 was introduced on November 15, 1971, and originally ran at a clock speed of 108KHz (108,000 cycles per second, or just over one-tenth a megahertz).

The 4004 contained 2,300 transistors and was built on a 10-micron process. This means that each line, trace, or transistor could be spaced about 10 microns (millionths of a meter) apart. Data was transferred 4 bits at a time, and the maximum addressable memory was only 640 bytes.

The 4004 was designed for use in a calculator but proved to be useful for many other functions because of its inherent programmability. For example, the 4004 was used in traffic light controllers, blood analyzers, and even in the NASA Pioneer 10 deep space probe!

In April 1972, Intel released the 8008 processor, which originally ran at a clock speed of 200KHz (0.2MHz). The 8008 processor contained 3,500 transistors and was built on the same 10-micron process as the previous processor. The big change in the 8008 was that it had an 8-bit data bus, which meant it could move data 8 bits at a time—twice as much as the previous chip.

It could also address more memory, up to 16KB. This chip was primarily used in dumb terminals and general-purpose calculators. The next chip in the lineup was the 8080, introduced in April 1974, running at a clock rate of 2MHz. Due mostly to the faster clock rate, the 8080 processor had 10 times the performance of the 8008.

The 8080 chip contained 6,000 transistors and was built on a 6-micron process. Similar to the previous chip, the 8080 had an 8-bit data bus, so it could transfer 8 bits of data at a time. The 8080 could address up to 64KB of memory, significantly more than the previous chip.

It was the 8080 that helped start the PC revolution because this was the processor chip used in what is generally regarded as the first personal computer, the Altair 8800. The CP/M operating system was written for the 8080 chip, and Microsoft was founded and delivered its first product: Microsoft BASIC for the Altair.

These initial tools provided the foundation for a revolution in software because thousands of programs were written to run on this platform. In fact, the 8080 became so popular that it was cloned. A company called Zilog formed in late 1975, joined by several ex-Intel 8080 engineers.

In July 1976, it released the Z-80 processor, which was a vastly improved version of the 8080. It was not pin compatible but instead combined functions such as the memory interface and RAM refresh circuitry, which enabled cheaper and simpler systems to be designed.

The Z-80 also incorporated a superset of 8080 instructions, meaning it could run all 8080 programs. It also included new instructions and new internal registers, so software designed for the Z-80 would not necessarily run on the older 8080. The Z-80 ran initially at 2.5MHz (later versions ran up to 10MHz) and contained 8,500 transistors.

The Z-80 could access 64KB of memory. RadioShack selected the Z-80 for the TRS-80 Model 1, its first PC. The chip also was the first to be used by many pioneering systems, including the Osborne and Kaypro machines. Other companies followed, and soon the Z-80 was the standard processor for systems running the CP/M operating system and the popular software of the day.

Intel released the 8085, its follow-up to the 8080, in March 1976. Even though it predated the Z-80 by several months, it never achieved the popularity of the Z-80 in personal computer systems. It was popular as an embedded controller, finding use in scales and other computerized equipment.

The 8085 ran at 5MHz and contained 6,500 transistors. It was built on a 3-micron process and incorporated an 8-bit data bus. Along different architectural lines, MOS Technologies introduced the 6502 in 1976. This chip was designed by several ex-Motorola engineers who had worked on Motorola's first processor, the 6800.

The 6502 was an 8-bit processor like the 8080, but it sold for around $25, whereas the 8080 cost about $300 when it was introduced. The price appealed to Steve Wozniak, who placed the chip in his Apple I and Apple II designs. The chip was also used in systems by Commodore and other system manufacturers.

The 6502 and its successors were also used in game consoles, including the original Nintendo Entertainment System (NES) among others. Motorola went on to create the 68000 series, which became the basis for the Apple Macintosh line of computers. Today those systems use the PowerPC chip, also by Motorola and a successor to the 68000 series.

All these previous chips set the stage for the first PC processors. Intel introduced the 8086 in June 1978. The 8086 chip brought with it the original x86 instruction set that is still present in current x86-compatible chips such as the Pentium 4 and AMD Athlon.

A dramatic improvement over the previous chips, the 8086 was a full 16-bit design with 16-bit internal registers and a 16-bit data bus. This meant that it could work on 16-bit numbers and data internally and also transfer 16 bits at a time in and out of the chip. The 8086 contained 29,000 transistors and initially ran at up to 5MHz.

The chip also used 20-bit addressing, so it could directly address up to 1MB of memory. Although not directly backward-compatible with the 8080, the 8086 instructions and language were very similar and enabled older programs to quickly be ported over to run.

This later proved important to help jumpstart the PC software revolution with recycled CP/M (8080) software. Although the 8086 was a great chip, it was expensive at the time and more importantly required an expensive 16-bit support chip and board design.

To help bring costs down, in 1979, Intel released a crippled version of the 8086 called the 8088. The 8088 processor used the same internal core as the 8086, had the same 16-bit registers, and could address the same 1MB of memory, but the external data bus was reduced to 8 bits.

This enabled support chips from the older 8-bit 8085 to be used, and far less expensive boards and systems could be made. These reasons are why IBM chose the crippled chip, the 8088, for the first PC. This decision would affect history in several ways. The 8088 was fully software compatible with the 8086, so it could run 16-bit software.

Also, because the instruction set was very similar to the previous 8085 and 8080, programs written for those older chips could be quickly and easily modified to run. This enabled a large library of programs to be quickly released for the IBM PC, thus helping it become a success.

The overwhelming blockbuster success of the IBM PC left in its wake the legacy of requiring backward-compatibility with it. To maintain the momentum, Intel has pretty much been forced to maintain backward-compatibility with the 8088/8086 in most of the processors it has released since then.

To date, backward-compatibility has been maintained, but innovating and adding new features has still been possible. One major change in processors was the move from the 16-bit internal architecture of the 286 and earlier processors to the 32-bit internal architecture of the 386 and later chips, which Intel calls IA-32 (Intel Architecture, 32-bit).

Unfortunately, it was a full 10 years before mainstream software caught up and began using the 32-bit instructions. IA-32 was introduced with the 386DX processor in 1985, but it wasn't until 1995 that Windows 95 became the first mainstream operating system to support IA-32.

Despite being a new architecture, backward-compatibility was still maintained because all the IA-32 chips still executed 16-bit instructions. Now we are poised for another major jump, as Intel has introduced IA-64 (Intel Architecture, 64-bit) in the form of the Itanium and Itanium 2 processors.

For the next few years, this will remain a server-oriented (meaning high-end and expensive) processor architecture, but I certainly believe it will be far fewer than 10 years before IA-64-based processors become mainstream. Just as IA-32 chips execute 16-bit instructions for backward-compatibility, the IA-64 chips also execute IA-32 (and even 16-bit) instructions.

AMD has developed its own competitive but different 64-bit architecture; it's called x86-64 and will be available in chips called the Opteron (for servers) and Athlon 64 (for PCs). The AMD x86-64 architecture differs from IA-64 in that it is more of an extension of the existing IA-32 architecture rather than a whole new 64-bit architecture.

As such, it is expected to run existing 32-bit code faster than IA-64-based processors can. Unfortunately, any code developed explicitly for IA-64 won't run on x86-64 processors because the instruction sets and architectures are inherently different.

The Itanium (IA-64) was released in March 2001, and is already building a strong code base in the server and workstation market; however, the first x86-64 "Hammer" processors won't be made available until the third quarter of 2003.

Even before its release, x86-64 has gained the support of several prominent operating system and application vendors such as Microsoft, Red Hat and SuSE (Linux), IBM and Oracle (databases), and SAP. In some ways the success of the PC, and the Intel architecture it contains, has limited the growth of the personal computer.

New architectures have to be backward-compatible to fit into the PC scheme. In other ways, however, its success has caused a huge number of programs, peripherals, and accessories to be developed and the PC to become a de facto standard in the industry.

The original 8088 processor used in the first PC contained close to 30,000 transistors and ran at less than 5MHz. Intel's Itanium 2 processor based on the Madison core, which incorporates three levels of cache (including 6MB of integrated L3 cache), includes an incredible 410 million transistors (the largest ever in a single processor chip) on a 374 sq.mm (over 19.3mm square) die using 0.13-micron technology.

This establishes new records for transistor count as well as the amount of on-die cache. Models with one billion transistors or more are in development. Intel has also released processors running at speeds well beyond 3GHz, and AMD is not very far behind. And the progress doesn't stop there because, according to Moore's Law, processing speed and transistor counts are doubling every 1.5–2 years.