They say power corrupts, but nobody told embedded-systems designers. The PowerPC processor family turns 20 years old this year, and it’s come a very long way from its beginnings in the first Power Macintosh in 1990. Today’s PowerPC has done a 180-degree turnaround: it’s no longer in Macs or any other desktop computers, but it’s going strong in embedded applications, especially networking and consumer electronics. PowerPCs are found in everything from spacecraft to Cisco routers to Ford and Jaguar engines to video games, including the “big three” of PlayStation 3, Xbox 360, and Nintendo Wii.
Depending on how you count, PowerPC is the third most popular 32-bit embedded processor family, after ARM and MIPS. ARM seems to get all the glory, while MIPS and PowerPC mostly keep under the radar. Interestingly, all three were originally designed for computer systems, not embedded applications, yet it’s in embedded products that they’ve been most successful. There are no ARM- or MIPS-based computers anymore (unless you count tablets or netbooks), yet PowerPC processors still drive record-breaking supercomputers. Of all the RISC architectures, PowerPC has stayed truest to its roots, and it offers the broadest spectrum of performance from top to bottom.
Mommy and Daddy and a Special “Uncle”
PowerPC was born from a corporate three-way involving IBM, Apple, and Freescale (née Motorola). Apple wanted to replace the 68000 chips in its Macs, Freescale wanted to keep making processors for Apple, and IBM wanted to contribute a killer high-performance RISC architecture it called Power. They called this new version PowerPC and hoped it might give Intel’s x86 a run for its money.
Apart from the Macs for which it was designed, PowerPC didn’t catch on well in computers. But then, neither did anything else. Where PowerPC did do well, however, was in networking and communications products. It was fast, it had a gold-plated pedigree, and it had big-endian byte ordering, which can be a big deal in networking boxes.
Freescale gradually put PowerPC into most of its communications chips and embedded processors, easing out the 68K. IBM tried its hand at selling embedded processors, too, but eventually sold that whole business to AMCC (now called AppliedMicro). IBM is out of the embedded-processor business but stays very busy designing awesome Power-based supercomputers like Deep Blue and Blue Gene/L. The Cell processor in PlayStation 3 consoles also has some PowerPC technology in it.
IBM still owns the original Power architecture and, by extension, PowerPC. Like ARM or MIPS, the PowerPC architecture is licensed. Anyone with enough money can become a PowerPC chipmaker, and about half a dozen companies have joined that club.
Unlike ARM and MIPS, however, the PowerPC licensees collaborate on changes and updates to future versions. IBM still gets the final say on any changes, but the ideas often come from the chipmakers and not necessarily from IBM.
The Freedom to Fail
Unlike ARM, but similar to MIPS, PowerPC licensees are allowed to design their own processor cores. Any ARM, MIPS, or PowerPC licensee can design a chip that uses an existing CPU core design, of course, but only MIPS and PowerPC licensees can actually design the CPU core itself. As long as it executes the PowerPC instruction set, IBM gives its licensees free rein to implement the CPU any way they want.
Freescale is the biggest beneficiary of this strategy. That company designs its own PowerPC processors all the time. Its PowerQUICC and QorIQ networking chips are all based on in-house PowerPC processor cores that aren’t shared with anyone else. IBM also designs its own PowerPC processors, of course, including the fire-breathing Power5 and Power6 machines inside supercomputers.
The other PowerPC licensees haven’t had as much luck, though. AppliedMicro (formerly AMCC) just killed off its proposed Titan CPU, which would have been its first original PowerPC processor. Titan was being designed with help from Intrinsity, but when Apple acquired that company, the partnership got a bit dicey. Rather than rely on someone else’s design team to help create their own chip, AppliedMicro just canned the project entirely. For the time being, all of Applied Micro’s chips are based on either the PowerPC 405 or 440, both of which are older IBM designs.
Another once-independent PowerPC licensee was PA Semiconductor, which was also acquired by Apple. Looking further back, Exponential and QED were two independent PowerPC design firms, but both companies’ chips were destined for Apple computers that never saw the light of day. So, directly or indirectly, Apple has killed off four different PowerPC design companies. As it stands, only Freescale and IBM have successfully designed their own PowerPC processors.
That doesn’t mean today’s PowerPC chips are all the same—not by any means. It just means their internal CPU circuit designs all come from two sources, which isn’t a big deal to most developers. After all, every ARM processor design comes straight from Cambridge, and every x86 chip is either an Intel or AMD design. Lack of diversity hasn’t hurt those two processor families much.
A Little Something for Everyone
Prices for PowerPC chips run the gamut, from a few bucks to a few thousand. AppliedMicro and Freescale both make inexpensive PowerPC chips that run at a few hundred megahertz and come with a smattering of useful peripherals. LSI also offers PowerPC-based communications and embedded processors. In FPGA-land, Xilinx offers its chips with PowerPC processor cores built right in. If you’re using both an FPGA and a PowerPC in your system anyway, the combo platter is a good way to go. And if you’re really in the big leagues and designing your own ASIC, Synopsys has PowerPC IP blocks that may interest you.
Breadth and depth are two things that help a processor architecture succeed. Nobody wants to pick a CPU that will run out of gas before the next product revision. Not a problem here; PowerPC is well-represented at the low end and has the very high end of the market all to itself. On its twentieth birthday, it looks like PowerPC is doing all right for itself.