IBM, Apple, RISC, and the Roots of the PowerPC

With the Motorola 680×0 architecture running out of steam and Motorola’s 88000 making haste slowly, Apple had to look a bit further afield for its next processor architecture. Here’s how IBM’s RISC project became the heart of the Mac.

Early RISC Work at IBM

The story of the PowerPC began in the early seventies when John Cocke and his team at IBM began designing one of the earliest RISC processors, the 801. By the mid-1970s it was believed that microprocessors had become as complex and feature rich as they ever would, so further advances would have to come in the form of miniaturization or fundamental shifts in thinking about processor design.

John Cocke studied several processor designs of the day and realized that the more complex commands in ordinary processors were rarely used and only added complexity to the chip, which served to slow it down. As a result of eliminating seldom used instructions, the IBM 801 had slightly less than a hundred commands, while Intel’s 8086 had over 400.

Quadra 605The 801 was ready for release in 1977 and performed at 15 MIPS, about as fast as the Quadra 605 that Apple had introduced more than a decade later.

The first product that used the 801 was the IBM RT PC, which used the chip with a standard PC AT bus. Few companies adopted the RT PC or 801 until 1990, when IBM released PowerPC.

Apple Looks at RISC

Apple reached the same conclusions about RISC design that IBM had in the mid-seventies. The Motorola 680×0 processor Apple used in its Macintosh computers was beginning to show its age. The promised revision to the line, the 68040, was pushed back further and further, and Apple had little confidence that Motorola would be able to consistently produce processors competitive with the next generation x86 processors.

In 1986, Apple planned a response to the stagnating 68000 line and started a project to replace the processor. Incredibly ambitious, the project, code named Aquarius, would create a four core RISC processor. A team of fifty engineers was assembled, and John Sculley even authorized the acquisition of a Cray supercomputer to aid in designing the processor, yet little progress was made.

Apple's Jaguar prototypeHugh Martin, a microprocessor expert personally recruited by John Sculley, was tapped to lead the successor to Aquarius, Jaguar (right). Jaguar would use a preexisting RISC design to create a multiprocessor workstation. The machine was to be a showcase of top of the line technology. Martin selected the Motorola 88100 processor and planned to use four in the new machine.

Even before NeXT started creating NeXTstep, Apple was creating an operating system based on the microkernel Mach, named Pink. The microkernel design meant that the kernel handled only very basic exchanges between the hardware and other pieces of software. All the other services and software were divied up into servers, which were all capable of communicating with each other. The chief advantage of the microkernel design was stability. If a server crashed, it could be restarted without restarting the entire system. (See Full Circle: A Brief History of NeXT for more information on NeXT, NeXTstep, and servers.)

The chief weakness of the powerful Jaguar workstation was that it was totally incompatible with older Mac OS software – and the Mac OS itself. The engineers decided not to emulate the Mac OS because it would discourage developers from adopting the new operating system.

Emulation

During a ski trip in Reno, Nevada, a group of Apple engineers led by Jack McHenry decided to start a project that would make the Jaguar machine compatible with older software. Work began almost immediately when the engineers returned to Apple, and the project was named Cognac. It was stopped when the company moved away from the 88k processor.

Jaguar would have to find a new processor. Several prototype boards were created around ARM (which Apple owned in part) and MIPS processors, but they were not adopted.

Gary Davidson, an expert in emulation, wrote an emulator for every new processor that was adopted. His software was based on the 90/10 theory of emulation. The theory centered around the observation that 10% of the software was being used 90% of the time, which meant that only a small portion of a program had to be run at a time. As a result, the emulators he created were very fast, typically as fast as a Mac IIci running 68k software.

PowerPC and the Mac

The 88100’s only major customers were Apple Computer and Ford. Once Apple dropped the chip, so did Ford, and Motorola was unable to afford continuing development. IBM, after being shown the Mac OS running on Intel hardware (part of the Star Trek project), approached Apple about porting the Mac OS to run on the PowerPC 601 CPU, the processor was used in the RS/6000 workstation.

On July 3, 1991, IBM offered to help Apple finish Pink, its object oriented operating system for Jaguar, if Apple would adopt the PowerPC processor. Motorola was brought in to help manufacture the new processors, and the deal was sealed, creating the Apple-IBM-Motorola (AIM) alliance.

IBM began refining the PowerPC design and split it into two different classes. The PowerPC processor used in the RS/6000 series (actually a collection of processors on one die) was renamed POWER1, and the processors destined for consumer class workstations and embedded apps were named PowerPC.

The first commercially available PowerPC processor was the 601, and it was the one adopted by Apple for its earliest PowerPC computers. The chief difference between the new PowerPC and POWER1 was the size of the processor – the PowerPC was dramatically smaller and ran cooler.

In order to simplify the process of bringing the partially completed Pink operating system to the PowerPC processor, IBM made the PowerPC’s bus compatible with the Motorola 88100 processor, allowing Apple to get by with only a partial rewrite of the lowest levels of the operating system.

Cognac and Jaguar, renamed Tesseracht, raced to produce a finished product. The hardware designs for both machines were slightly modified Jaguar designs, and the biggest hurdle was software.

Breakthrough

Macintosh LCCognac had its breakthrough during the Christmas holiday (while the Tesseracht team was on vacation) when Gary Davidson completed the 68k emulator for the PowerPC (PPC) and ran the Mac OS in emulation on the prototype (housed in an LC case, it was named the RISC LC or RLC).

RLC performed better than the recently released Quadras and would perform even better with native PPC software. The scope of the team changed from hardware and emulation design to basic software development, as portions of System 7 were rewritten for the PowerPC processor.

As the Mac OS was prepared for PowerPC, a new kind of app was created so software developers could release one file for both PowerPC and 68k users. Cognac created “fat” binaries, program files that contained both PowerPC and 68k code, allowing the same program to run natively on new Macs and old.

By March of 1992, Pink was stagnant, Tesseracht was canceled, and some of the engineers moved over to Cognac to complete the project in time for the new deadline of January 24, 1994 – the tenth anniversary of the release of the original Macintosh.

Power Macintosh

Quadra 610In 1993, three models were readied for release. The least expensive was code named Piltdown Man for the hoax of a half-man/half-ape found in Britain at the turn of the century. Piltdown Man would be housed in a Quadra 610 case. The midrange PowerPC-based computer was code named Carl Sagan, and it was in a Centris 650 case, and the top of the line machine was code named Cold Fusion.

Macintosh IIvxSagan took issue over the use of his name and sued Apple to prevent the company from using it. Apple complied and renamed the machine BHA, for Bone Headed Astronomer or Butt-Head Astronomer. Sagan threatened to sue again, so Apple renamed the prototype LAW (for Lawyers Are Wimps).

The new product line was named Power Macintosh. It was announced on time, and the machines (the 6100, 7100, and 8100) that shipped in March 1994 outperformed comparable Pentium-based computers.

Further Reading

Bibliography

Some of the sources used in writing this article:

Keywords: #powerpc #powermacintosh #aimalliance

Short link: http://goo.gl/06zizn

searchword: ibmapplerisc