MICRO PROCESSOR EVOLUTIONorthogonality because it means theydon't have to memorize a bunch <strong>of</strong>exceptions to the instruction set. <strong>The</strong>fruit <strong>of</strong> Motorola's effort was the 1979release <strong>of</strong> the MC68000.<strong>The</strong> MC68000 is one <strong>of</strong> those chipsthat some people love and othershate. <strong>The</strong>re is very little middleground. Compared to the 8086/8088,it required a massive s<strong>of</strong>tware effortto get it to do anything. But UNIX wasbecoming popular, and the 68000looked like a good UNIX machine. Anumber <strong>of</strong> 68000-based UNIX machineswere announced, althoughhardly any <strong>of</strong> them were successful.Motorola also announced the68008, an 8-bit-bus version <strong>of</strong> the68000, similar in concept to the 8088.However, the 68000 had no real queuing,and that meant that the 68008ran half as fast as the 68000. Unfortunately,this made the 8088 lookeven better.Internally, the 68000 was a microcodedchip, which means that internalfunctional elements are generalpurpose.A ROM (which contains themicrocode) controls what the chipdoes. <strong>The</strong> processor's response toeach instruction is controlled by theROM. If an instruction doesn't do theright thing, you can usually fix it in theROM and, within limits, you can evenchange the instruction 'set <strong>of</strong> themicroprocessor if you want to. (IBM'sadd-in processor for the XT/370 isessentially a 68000 with custommicrocode.)Up until this time, all other processorswere generally random-logicdesigns that had a little bit <strong>of</strong> circuitryto perform each specialized functionwithin the central proceSsor. <strong>The</strong>reare advantages and disadvantages toboth types <strong>of</strong> microprocessordesign—microcoding <strong>of</strong>fers flexibilityat the expense <strong>of</strong> speed, while arandom-logic design <strong>of</strong>fers speed atthe expense <strong>of</strong> flexibility. It is also difficultto fix errors in a random-logicdesign—especially when the designer<strong>of</strong> the chip leaves the company.At Zilog, for example, MasatoshiShima had begun work on a 16-bitprocessor, the Z8000, using randomlogic. Random logic worked fine forthe 8080 and Z80 but, in hindsight,it is unfortunate that Shima designedthe Z8000 that way. After the firstZ8000 silicon was produced, butbefore his team had had worked allthe bugs out <strong>of</strong> the chip, Shima left ,Zilog to return to Intel. Zilog never didget all the bugs out <strong>of</strong> the Z8000. Inaddition, Zilog had set a standard byallowing the Z80 to run all the s<strong>of</strong>twarefor the previous-generation8080. Unfortunately, the companydidn't follow its own standard andmade the 28000 completely differentfrom the Z80. Zilog was trying to puta minicomputer on a chip and, unfortunately,it didn't do a very good job<strong>of</strong> it. <strong>The</strong> Z8000's lack <strong>of</strong> a similar instructionset to the Z80, its built-inbugs, and its sacrifice in instructionpower due to its random-logic natureall played a great role in keeping theZ8000 from becoming successful.In 1981, National Semiconductormade a second attempt at the 16-bitmarket with the 16032. <strong>The</strong> 16032was to be a 32-bit (internal data bus)microprocessor with a 16-bit externalbus. Since Motorola had never beenable to produce their promised mathcoprocessor, and Intel's 8087 so farcouldn't break the 5-MHz speed barrier,everyone was impressed whenNational announced its math coprocessor,which would run at 10 MHz,giving it twice the performance <strong>of</strong>Intel's 8087.Unfortunately, National became thefirst microprocessor company to shipall its peripheral chips 100 percentfunctional before the processor wasavailable. Today the 16032 still has afew bugs in it. But programmers likeits instruction set, which remindsthem <strong>of</strong> a VAX (a series <strong>of</strong> highperformanceDEC superminicomputers).Because the VAX has been sosuccessful as an engine for runningUNIX, the 16032 may be a naturalsuccessor as the base for a UNIXcomputer. <strong>The</strong>re may be some life leftin it yet.In 1982, Intel one-upped the semiconductorindustry again. <strong>The</strong>y announcedthe iAPX 286. This newproduct was a vastly upgraded 8086architecture that included built-in vir-tual memory management and manyother features designed expressly forsupporting a multitasking, multiuserenvironment. It has a mode that runsall 8086 code directly, and Intel hassignificantly sped up its throughput.Also, true built-in memory managementis something that no othermicroprocessor has to this day. <strong>The</strong>main advantage to having memorymanagement built in is that it canwork much 'faster than processors thatrequire external memory managers.<strong>The</strong> IBM PC AT's use <strong>of</strong> the 80286 hasensured the success <strong>of</strong> this processorfor at least the next few years.32-BIT CHIPSIn spite <strong>of</strong> problems with the 16032,National Semiconductor was the firstcompany to announce and ship a fullblown32-bit microprocessor. <strong>The</strong>32032, which used to be the 16032,is code-compatible with the 32016.It's still early to tell how the 32032 willfare, but the popularity <strong>of</strong> UNIX willprobably be a major factor in its success,if indeed all the projections <strong>of</strong>the 32000 family being the ideal UNIXengine are true.Motorola is now sampling its full32-bit extension to the 68000, the68020, which looks promising. It hasone new feature that will probably getit into lots <strong>of</strong> designs early. Rememberthat the 8088 was successful becauseit allowed an easy migration path dueto its 8-bit external data bus. <strong>The</strong>68020 lets you dynamically choosethe bus size you want-8, 16, or 32bits. Supposedly, it is able to run all68000 code, and it's fast. One <strong>of</strong> thethings that gives it great speed is itscache—the logical extension <strong>of</strong> thequeue used in the 8086/8088/80286processors.<strong>The</strong> cache in the 68020 is 256 bytesdeep and works a little differentlyfrom a queue. If a jump occurs to apoint in the queue, the queue isflushed and reloaded. But the cachelooks just like memory, so a jump toa point in the cache would not causethe cache, to be dumped and reloaded.If loops are small enough,they can execute directly from thecache. <strong>The</strong> advantage is that the pro-266 JUST COMPUTERS • DECEMBER 1985
MICRO PROCESSOR EVOLUTIONcessor can access thecache much faster than itcan access externalmemory, so programs runfaster if they stay mostly inthe cache. As with the32032, its still early to tellwhat the eventual success<strong>of</strong> the 68020 will be.National has alsoannounced the 32132 (notyet available), which is tohave multiple caches andsomething the companycalls a look-aside buffer.Zilog had announced aproduct called the Z800, a16-bit upgrade to the Z80that was to be code-compatiblewith it. <strong>The</strong> companywas never able to produceworking silicon, however.Instead, it is trying toget the Z80 to work at 10MHz. Zilog has also announcedthe Z80000, a32-bit version <strong>of</strong> the Z8000that I call the "kitchen-sinkprocessor" because it willhave everything, includingcode compatibility with theZ8000, which is the rightidea but the wrong processor.Intel has been talking forsome time about the coming80386, its 32-bit version<strong>of</strong> the 80286, but to date it hasn't releasedany hard data on it. Intel saidit will be 80286-compatible, and thatprobably means IBM will use it.FASTER OR SMARTER?I can't end my discussion <strong>of</strong> microprocessorswithout mentioning a fewbizarre approaches. <strong>The</strong>re is still adebate raging on whether microprocessorinstruction sets should evolvetoward more complex and high-levelinstructions, or whether they shouldbe getting much simpler but muchfaster. So far, high-level instructionsets have not been winners. One illfatedattempt was Western Digital'sPascal <strong>Micro</strong>engine, which executedPascal pseudocode (the output <strong>of</strong> allloyal Pascal compilers) directly.<strong>The</strong> cost <strong>of</strong> an 8-inch single-sided double-densityfloppy-disk drive from 1977 to 1985. Note thatsuch drives were not available in 1975 and 1976.Unfortunately, Pascal compilers thatput out native 8080 code beat ithandily.Similar in concept is the new FORTHprocessor from Novix, developedunder the direction <strong>of</strong> FORTH inventorCharles Moore. Instead <strong>of</strong> executingthe output <strong>of</strong> a compilerdirectly, this FORTH chip runsthreaded FORTH code directly—its instructionset is FORTH. It's supposedto be very fast, and if you like FORTHit's great.<strong>The</strong> FORTH engine is a custom version<strong>of</strong> a chip from National CashRegister called the NCR 32. It is amicrocode-executing 32-bit engine ontwo chips; a third chip is required tocontain the microcode. Essentiallyyou can "roll your own" instructionset, which is what thedevelopers <strong>of</strong> the FORTHengine did. This techniqueopens up a whole realm <strong>of</strong>possibilities, such as beingable to emulate differentcomputers on the fly bydownloading different instructionsets. <strong>The</strong> speed atwhich this will be accomplished,however, will belimited by the fact thatmicrocoding is hard work.<strong>The</strong> Intel iAPX 432, probablythe first 32-bit microprocessoravailable, wasdesigned with very-highlevelinstructions to supportthe U.S. Department <strong>of</strong>Defense's Ada language.Opposite the high-levelinstructions' team are thosewho think that a small set<strong>of</strong> simple but extremely fastinstructions can outperformlarge and complex (slow) instructions.Such are theRISC (reduced instructionset computer) fans. A RISCmachine was successfullyimplemented in silicon atBerkeley, amazingly on thefirst pass. <strong>The</strong>y are currentlyworking on speeding upthe chip, which has a 32-bit architecture. Hewlett-Packard is also rumored tobe working on several RISC machines.Last is a unique device just aboutto be sampled from INMOS called the11-ansputer (see "<strong>The</strong> 11-ansputer" byPaul Walker, May BYTE, page 219). Itis designed to perform parallel processing.It will take many more years<strong>of</strong> s<strong>of</strong>tware development and sophisticationto take full advantage <strong>of</strong> theTtansputer, but the possibilities arefascinating.Meanwhile, a 4004 microprocessorstill controls a traffic light near my <strong>of</strong>fice.It tends to put all the whizzy newthings in perspective, doesn't it? ■ACKNOWLEDGMENTSI would. like to thank Rebecca Wallo <strong>of</strong>Intel and Jim Farrell <strong>of</strong> Motorola for providingfacts and figures for this article.BERGMAN HAKE DESIGN INC DECEMBER 1985 • JUST COMPUTERS 267