Trillion Dollar Stopgap: The Intel 8086
Modest beginnings for possibly the most important CPU architecture in history
How much revenue has the x86 line of processors generated for Intel over the years? My best estimate is in 2023 dollars it’s at least $1 trillion by now. How many products, in any industry, that have come anywhere near this level of sales over a period of more than forty years?
The great irony, of course, is that the first CPU in the x86 line, the 8086, was never intended to last more than a few years. It was explicitly a ‘stop-gap’.
In 1975 Intel was putting its weight behind the 8800, a design that would become the iAPX432. The story of the iAPX432 is for another post, but it’s enough to say that it was wildly ambitious and repeatedly delayed.
So as early as 1976, it was clear that Intel would need a simpler design that would compete with the first generation of 16-bit microprocessors from rivals such as Motorola and Zilog.
The task of designing the Instruction Set Architecture for the 8086 was given to software engineer Stephen Morse. He was given very few constraints: it had to be possible to convert 8-bit Intel 8080 / 8085 assembly language to work on the new processor and it had to address at least 128k memory. Morse, working with project manager Bill Pohlman, started work on the 8086 in May 1976.
Having a software engineer design the ISA meant that the focus would be on features that would be useful for those who would write software for the new machine. According to Morse:
Now, for the first time, we were going to look at processor features from a software perspective. The question was not "What features do we have space for?" but "What features do we want in order to make the software more efficient?"
He completed the ISA and then handed it over to logic engineer Jim McEvitt to implement. There was then clearly some to and fro between Morse and McEvitt:
McKevitt would try to design the logic to implement the architecture, and we had a lot of give-and-take between us as he would point out things that were very expensive to implement and I would then try to come up with alternate specifications.
The decisions on the internal architecture of the 8086, the use of microcode, the inclusion of an instruction cache and so on, were McKevitt’s work. According to Bill Pohlman:
Jim was an amazing guy, a Stanford MSEE grad, who literally designed the whole 8086 without making a single logic error. Just amazing!
The 8086 was launched on 8 June 1978, roughly two years after Morse had started work on the instruction set.
Morse left Intel in March 1979 and had nothing to do even with the Intel 8088, the 8086 variant that was used in the IBM PC. By then, he wasn’t enjoying how Andy Grove was running Intel:
… pretty soon Intel stopped being a fun place to work.
Commenting on his work later, Morse has been refreshingly modest:
Any bright engineer could have designed the processor. It would probably have had a radically different instruction set, but all PCs today would be based on that architecture instead.
And when interviewed by PC World on the 40th anniversary of the launch of the 8086:
That caught me by surprise. Until I received your e-mail, I wasn't even aware that this milestone was coming up. Happy Birthday!
The 8086 had beaten both Zilog’s Z8000 and Motorola’s 68000 to market. But Intel’s rivals were both seen as having a superior architecture. According to Jeff Katz, product manager for the 8086:
But finally, by '79 or so, we were doing OK with what we thought was a good set of design wins. But about that time, after a couple of years in the marketplace, the competition had a chance to do what they thought were better architectures. And the customers were buying that story.
This is hardly surprising. If we compare the architectures for the three systems, on almost every count the 8086 was inferior to its rivals: number and size of general purpose registers, address space, segmented vs linear addressing and so on.
So Intel created ‘Operation Crush’ to sell the 8086. With Crush, Intel’s sales teams focused on total system cost, talking to customers about:
.. how total system cost will be less because we will have all these peripherals, how you'll be able to write your software faster …
As we saw in ‘Captain Zilog Crushed’ Crush was enormously successful, beating the Z8000 and 68000 comprehensively.
Crush worked. Intel set a target of 2,000 design wins, and it eventually achieved well over that number.
Then the 8088, a cheaper version of the 8086, won the CPU socket in the IBM PC.
The success of the IBM PC and compatibles from Compaq and others meant that the desktop processor lead was Intel’s to lose from then on. The iAPX432 was soon abandoned and x86, the name for the architecture of the 8086 and its successors, would become Intel’s primary focus over four decades.
The Legacy of the 8086
It’s easy to be a little condescending about the 8086. It seems like a modest upgrade from the CPUs of the 8-bit era and the instruction set has frequently been criticised over the years.
In reality, though, there was a lot of innovation packed into the 8086: NMOS transistors, much bigger memory, the ability to work with a co-processor, instruction caching and so on. What’s more, all of this innovation delivered real benefits for customers using the 8086 in 1978. This diagram from the paper Intel Microprocessors: 8008 to 8086 does a great job of explaining how Intel’s early processors developed in a number of dimensions.
In the end, the technical qualities of the 8086’s ISA were much less important than getting delivering a product that worked for customers.
Of course x86 would not have survived without a huge amount of innovation over the last 45 years. The introduction of the 80386 and the ‘superscalar’ design of the Pentium Pro were both key moments when Intel extended and innovated on top of the existing x86 architecture, in order to keep ahead of competitors.
But Intel was able to do so from a position of strength, with the software base and the sales volumes to support innovation both in manufacturing and architecture. And all that derives from the success of the 8086 and the efforts of Stephen Morse and Jim McEvitt.
If there is one lesson from the 8086 it must be: build a product that delivers what your customers need today. You can look after tomorrow when it comes.