• Hello MLAers! We've re-enabled auto-approval for accounts. If you are still waiting on account approval, please check this thread for more information.

Fantasy M88100 Macs

I feel like with 3D printing and homebrew hardware being so affordable these days, that we could actually make functional versions of these design studies. Also ... that would have to be an 8 cm Mini-CD version of the CD 300, wouldn't it?
Well, that's an idea! One of the interesting things about a RISC CPU like the M88K is that JIT emulators should work well on ARM64 CPUs, because so many instructions have a 1:1 mapping. That's not the case in historical Mac CPU jumps as they've always been CISC to RISC or RISC to CISC where there's usually a 1:several instructions mapping. For example, 68K to PPC often involves multiple instructions to achieve a 68K addressing mode. And PPC to Intel often requires multiple instructions to handle PPC 3-operand instructions. And both kinds of emulation involve multiple instructions to handle flags (or the lack of them).

M88K to ARM64 is more straight-forward. And in this design, because it's earlier, mixed-mode execution is far more simplified, which means it's easier to handle too. You could probably get an SBC-based CPU to emulate an M88K (which in turn has its own Davidian-style 68K emulator) at 25MHz or 40MHz. A 400MHz ARM64 could do that (e.g. the latest Beaglebone or any R-PI, but I'd want a bare-metal emulator not running on top of Linux).

It'd also be interesting to develop a scaled down ADB styled keyboard, perhaps with keycaps and spacings matching the PB2400. Looking at my MBA M2 keyboard, it's a 63 key keyboard (because there's no function keys). But if one wanted to be even more radical, you could create a semi-chordal keyboard with far fewer keys. For example, 3x3 keys in the middle with 1x3 'shift' keys on the left + 1x3 'shift' keys on the right. Then, with 18 keys (and at least 6 shift options) you can generate at least (12*3*2)+15=87 key codes.
 
Well, that's an idea! One of the interesting things about a RISC CPU like the M88K is that JIT emulators should work well on ARM64 CPUs, because so many instructions have a 1:1 mapping. That's not the case in historical Mac CPU jumps as they've always been CISC to RISC or RISC to CISC where there's usually a 1:several instructions mapping. For example, 68K to PPC often involves multiple instructions to achieve a 68K addressing mode. And PPC to Intel often requires multiple instructions to handle PPC 3-operand instructions. And both kinds of emulation involve multiple instructions to handle flags (or the lack of them).

M88K to ARM64 is more straight-forward. And in this design, because it's earlier, mixed-mode execution is far more simplified, which means it's easier to handle too. You could probably get an SBC-based CPU to emulate an M88K (which in turn has its own Davidian-style 68K emulator) at 25MHz or 40MHz. A 400MHz ARM64 could do that (e.g. the latest Beaglebone or any R-PI, but I'd want a bare-metal emulator not running on top of Linux).

It'd also be interesting to develop a scaled down ADB styled keyboard, perhaps with keycaps and spacings matching the PB2400. Looking at my MBA M2 keyboard, it's a 63 key keyboard (because there's no function keys). But if one wanted to be even more radical, you could create a semi-chordal keyboard with far fewer keys. For example, 3x3 keys in the middle with 1x3 'shift' keys on the left + 1x3 'shift' keys on the right. Then, with 18 keys (and at least 6 shift options) you can generate at least (12*3*2)+15=87 key codes.
You just gave me an idea for a novel keyboard: shrink the four lines of QWERTY (or AZERTY etc) down to a single line with shifters; the shifters could either be lockable keys on the side or a roller.

What I'd really like with this is keycaps that are tiny LED screens so that when you shift, the display on their face changes too, but that might be too much for a DIY project (does anyone even sell caps like that?).
 
Is there a reason you're so fascinated by the M88k Macs? If Apple went through with it, I still don't see enough of an adoption rate to get the M88k to go more than a few generations before someone (either Apple or Motorola) got tired of it. Part of the reason 68k went as well as it did was because it was relatively simple (single chip '000/'010, then 3 chip '020 but still feasible as 1, then 2 chip '030 (or 1 without FPU), then 1 chip '040/'060) while 88k was a step backwards from that, which would've made a PowerBook a difficult proposition. You'd think Moto would've seen the failure of Intel's similarly designed iAPX 432 and thought twice about a complex multi-chip design, but apparently not.
The other reason 68k was so popular was because of its fairly early availability, so there was a long time where it was a high- to mid-range CPU. 88k really didn't have that: it was introduced in the middle of the RISC dawning along with 4 or 5 other major ISAs, nobody was particularly impressed with it or its roadmap compared to the others, and it was ultimately withdrawn after only a few fairly minor iterations. Whether it would've soldiered on had the AIM alliance not become a thing is hard to say, but I doubt it.

If I ran Apple in the late '80s and wanted to move from 68k, I think I'd look elsewhere. MIPS is obviously a good starting point, so I'd first look there. These were fast, proven chips that were already available and adopted by several product lines (most notably SGI's but DEC also made a few early on). Problems with the R4000 probably would've given me pause, depending on how history played out (maybe SGI wouldn't have had to have bought MIPS if Apple was also propping them up at the time), so depending on the timeframe, I'd move on to a different ISA.
I'd probably consider DEC's Alpha next, depending on cost. The Alpha was a very high-performance chip and it had some relatively low-power variations that allowed it to go into laptops (well, one laptop, anyway, from Tadpole) and consumer-level desktops. An Alpha Mac would've stomped basically any competing consumer computer in the early '90s, but the price probably would've been even greater than the actual Macs at the time (unless Apple severely reduced profit margins and cut unnecessary expenditures like having 42 different versions of the same computer) and I'm not sure there would be any sort of Alpha upgrade cards for 68k boxes.
If all else failed, I'd probably call IBM and get in on their RSC project. I'd prefer the full fat 64-bit POWER architecture, but if they still had a cut-down 32-bit version for the low-cost market, maybe I'd have to go with that, especially if I wanted a laptop chip. Or if we got in early enough, design it with the ARM Thumb idea with a combined 32/64-bit code base depending on environment.
Or just go straight to ARM on the desktop. I don't know what this would have looked like in 1990 or so, but because Apple had already bought a stake in ARM by then, they probably could've jumpstarted the StrongARM variant (or something more powerful for desktops, like a BeefyARM) sooner and just dropped that into a Mac. They could've made tiny programs that run on both the Mac and Newton since they'd have the same ISA. Apple STB-style machines would be cheap and easy to build because the same code runs on all Apple devices, basically doing what we have today without the two intermediate ISAs in the way. Because the ARM Macs would've likely been relatively inexpensive compared to the PPC models we got, Apple could better compete with PCs on price and so hopefully gain, or at least not lose so much, market share in the '90s.
 
Is there a reason you're so fascinated by the M88k Macs?
Yes, because Apple nearly did use them for the real RISC successor to 68K Macs; had working prototypes and I think would have done if the Pink OS/ Taligent initiative had been cancelled before they'd forged an agreement with IBM.

The M88K was an early Superscalar RISC with a proper scoreboard. In that sense it was more advanced than the R4000 (which was a superpipelined architecture that had little future). It had the same potential as every other RISC CPU. Also, it was from their established chip maker. The MC88110 architecture looks a lot like the PowerPC 603, with many execution units, but slightly worse dispatching constraints.

MC88K Macs could easily have been released 2 or 3 years ahead of the actual PowerPC Macs, thus giving them a better head-start on Pentium PCs (because they'd be released before Pentium was released). Because they'd be so much earlier, there would have been no time for Apple to consider Tesseract (Mac OS completely recompiled for a new CPU).

But finally, it's the whole "what if" alternative history mystery of the thing, which I find appealing.
<snip> adoption rate <snip> either Apple or Motorola) got tired of it.
It had the same potential as all RISC CPUs IMHO.
Part of the reason 68k went as well as it did was because it was relatively simple <snip> 88k was a step backwards from that <snip> PowerBook a difficult <snip> iAPX 432.
The MC88110 was a single-chip with onboard L1 caches (1991 timeframe). It's similar to the 603, so I figure they could have done a low-power version (3V + stop clocks on unused execution units). Consider what Apple actually did which was to derive PowerPC from the 9-chip IBM POWER architecture. The MC88110 consumed about 5W-10W at typical operating frequencies (according to Google AI); so I guess maybe it's proportional to the square of the voltage: 1.8W to 3.6W and perhaps the extra clock stuff and sleeping could cut it down by another 50% or more. That compares well with PowerPC 603(e) at 2.2W.
<snip> 68k <snip> long time where it was a high- to mid-range CPU. 88k really didn't have that <snip>
I'm pretty sure it happened, because Motorola had to switch to PowerPC (MC88110 in Nov 1991, vs AIM announcement Oct, 1991).
<snip> MIPS <snip> Alpha <snip> IBM and get in on their RSC <snip>
They did look into MIPS (and Sparc). Can't remember if they looked into Alpha. Essentially RSC was the successful one as both it and PowerPC are single-chip adaptations of POWER AFAIK.
<snip> ARM Thumb <snip> Or just go straight to ARM <snip> stake in ARM <snip> StrongARM.
It's an exciting thought. Apple had already experimented with Mobius, an ARM-based Mac prior to the Newton (don't know why they dropped that). After abandoning the Hobbit chip for Newton it was Apple that persuaded Acorn to spin off its Acorn RISC Machine into the company Advanced RISC Machines (in late 1990). Thumb didn't exist until around 1992. StrongARM didn't exist until 1996 (I got to develop for it in 2000-2001 for a Nokia Web tablet).

So, sadly they couldn't use ARM, because it was a matter of timing. Also, ARM26 and ARM32 only had 16 registers and so would have struggled to emulate a 68K without a JIT. But yes, if that hadn't have been the case, then both early desktop and laptop Arm/Macs could have been StrongARM and we'd have bypassed 25 years of PPC and Intel.
 
Also, it was from their established chip maker. The MC88110 architecture looks a lot like the PowerPC 603, with many execution units, but slightly worse dispatching constraints.
While the 88110 may have been OK by itself in a PowerBook or something super low-end, if you wanted an L2 cache at all, you also needed the 88410. In a desktop like the 5200, that's one more chip than the 603 requires (which can manage an L2 cache as-is), which in turn increases cost, which is not something you want in a Low Cost machine.

And since the 88k shared basically nothing with 68k, it really doesn't matter that Moto made the new platform since none of the legacy parts worked with the new ISA. Remember all the custom ICs Apple made to bridge the 60x bus to the 68k bus so they could use all their old components? They'd need just as many of those to bridge 68k to 88k, MIPS, RSC, or Alpha (if they even went that route with those platforms vs. clean slate). Unless Apple got a sweetheart deal like priority supply and/or at-cost manufacturing, there was really no big reason to stick with Moto just because there was an existing relationship.
Indeed, a major driver of Apple ditching PPC for Intel was the supply issues from Motorola. You don't remember the big deal with the original G4 where they had to cut down the speed offerings just after launch because Moto couldn't get sufficient yield for the 500MHz parts? They had to ask IBM to help boost production (I actually have some IBM G4s) because Moto just couldn't do it by themselves. Then the G4 was stuck at about 500MHz for what, 3 years? That's an eternity in computer years. No wonder Steve was pissed.
 
Part of the reason 68k went as well as it did was because it was relatively simple (single chip '000/'010, then 3 chip '020 but still feasible as 1, then 2 chip '030 (or 1 without FPU), then 1 chip '040/'060) while 88k was a step backwards from that, which would've made a PowerBook a difficult proposition.
I think here you're comparing different things, and over-estimate the importance of laptops at the time. As you note later, the 68k was originally high-end.

TL;DR: early 68k needed extra chips to be at feature-parity with later one, and laptops never use the highest-end CPUs.


The original MC68000 and MC68010 were only "single-chip" if you were making very simple computers - things like the first Macs, the ST or the Amiga - and that only came later. Originally, they were used by workstation and other higher end vendors, and it ended up needing a *lot* of chips to support vritual memory.

The most documented example is Sun; they designed their own MMU for the Sun-1 (MC68000 [1]), Sun 2 family (MC68010) and Sun 3 family (MC68020). The architectural documents and some schematics are available, and having look quite a lot at them (specifically the Sun 3/60), it's a very, very complex design on a very large board with loads of chips. It also has a full two-level MMU, FPU, DMA for Ethernet, DMA for SCSI, full parity support with precise error reporting, the works. And of course no laptop, not even a luggable.

(the MC68020 would have been simpler to use when using the MC68851 MMU, but it was late, expensive, and complex. Few used it, so external custom MMU were a thing).

The MC68030 integrated the MMU and made a lot of things simpler; the Sun 3/80 nonetheless is still packed with chips to support all the extra features a Sun workstation needed. Sill no laptop or even luggable. The MC68030 didn't have a proper laptop built around it (at least commercially successful) until the Powerbook 140, which was introduced... alongside the Quadra 700 with a MC68040.

And that is the general case for laptops - they never used (and still don't!) the highest-end CPU. There is always something faster available from the vendor - either a better microarchitecture, a higher frequency, or noawadays just more cores. By the time running a CPU in a laptop became viable power- and heat-wise, it also became possible to just push more power in the CPU, crank the frequency, and make it faster.

As for the multi-chip MC88100 - yes it was multi-chip, but it was targeting the same market as the 68k family originally didi: workstation. It was meant for the likes of Sun, SGI, Apollo or HP, which had all used 68k originally (they went for SPARC, MIPS, PRISM and PA instead). When the MC88100 was announced in '88, laptops were a rarity, and Apple had never made one (the not-so-Portable wasn't available until a year later). It wasn't a market that mattered vs. the workstation and desktop market, laptops were basically a niche product at the time. Sure a multi-chip '100 was expensive, but the expectations would have been for the workstation vendor to not care that much, and for the likes of Apple, Atari and Commodore to just wait for a lower price and/or a later single-chip version. The MC88110 was introduced in the same time frame as the Powerbook 180, plenty of time for Apple to switch - the PPC laptops only came about a year and a half after the desktops, and those only came two years after the MC88110 introduction.

I don't really agree with @Snial than 88K Macs could have come much earlier than the PPC ones - but they could certainly have come at a similer timeframe, or a few months earlier. MC88100 prototypes could have been used for prototyping and porting software, and then a in later '93 or early '94 they could have had MC88110-based desktops. How this would have played with Motorola carrying the cost of developing high-end CPU for desktops and needing to also do a low-power version for the now-going-mainstream laptops is anyone's guess. Mine is that without IBM to share the costs, it would have gone a lot worse for Apple than the PPC, because Motorola with a single small customer (Apple wasn't exactly huge at the time) Motorola wouldn't have been able to keep up - they eventually weren't even with the help of IBM, with the 970 being a desktop-only offering (and water-cooled at that!).

And since the 88k shared basically nothing with 68k, it really doesn't matter that Moto made the new platform since none of the legacy parts worked with the new ISA.
Absolutely. Looking back, I believe the 88K would have been a mistake for Apple. They needed a CPu family that someone else used to share costs. IMHO SPARC would have been a better choice; a 25-33MHz SPARC with no FPU and a smaller external cache would have bben suitable for Macs, not very expensive, and had upgrade path. Laptops like the SPARCbook also existed. CPU were available from more than one vendors. AWS would have run Solaris instead of AIX, and Apple could have done a similar thing on SunOS/Solaris than what they did with AU/X to run Mac applications on UNIX.
It would have benefited both ecosystems IMHO.

EDIT: forgot the footnote
[1] The MC68000 can't do on-demand paging, but a MMU is still useful and it can do swapping (the difference between the two is not just pedantry), the MC68010 can do both
 
Last edited:
<snip> 68k was originally high-end <snip> higher end vendors, <snip> *lot* of chips to support vritual memory
Good observations. Mind you, the £400, 1984 Sinclair QL got by with very few chips:
1752997851172.png
Apart from the CPU, ROMs and 16xRAM, I think I count 12 others (11 more than a ZX Spectrum). Of course, it's only a 68008 and in many ways it's typical Sinclair kludgery, but it does support colour video (2 modes), networking and microdrive hardware.
<snip> As for the multi-chip MC88100 - yes it was multi-chip, <snip> '100 was expensive, but the expectations would have been for the workstation <snip> MC88110 was introduced in the same time frame as the Powerbook 180, plenty of time for Apple to switch <snip>
From:

1752999429282.png
From Microprocessor Report, Feb 12, 1992.


Although @Franklinstein has the view the MC88100 (MC88110) weren't seen to be impressive at the time, these figures imply the MC88110 would have led the field at the time. This is mostly because the MC88110 had 2x IUs, which only arrived for PowerPC with the PPC604 and 750.

I don't really agree with @Snial than 88K Macs could have come much earlier than the PPC ones <snip> Mine is that without IBM to share the costs, it would have gone a lot worse for Apple than the PPC<snip>
To quote MPR: "it is a shame that Apple won’t be building 88110 systems, since it probably would have given them a lead of at least a year over the first PowerPC chips and would have provided considerably higher performance."

So, OK, maybe I'm a bit too optimistic with my 1992 timeframe. I think Gary Davidian's RLC must have been a 1991-1992 machine, since the first LC arrived in late 1990; the original 3x chipset was in 1988 and the RLC wasn't based on the LC II, but the 68020 LC. I also suspect that a major reason PowerPC had to have a (largely) compatible MC88110 bus, is because Apple already had a chipset ready for it by late 1991.

So, maybe I ought to revise my time frame to April 1993 instead of mid-1992.

I think that they could have shared out the costs, but not with IBM. Because Hitachi, Mostek, Rockwell, Signetics, Thomson/SGS-Thomson and Toshiba (TMP68000) second-sourced the MC68000, I guess Apple and Motorola could have pooled resources with them, most notably Hitachi and Toshiba. Maybe Hitachi could have ditched the SuperH series for a 'Thumb' version of the MC881x0 (but with a similar 4x4 bit opcode format).

<snip>SPARC would have been a better choice <snip> AU/X to run Mac applications on UNIX.
I think they looked into it, but decided against it. I think they also had a 68K emulator running on Sparcs didn't they and A/UX running on Macs. So many of the components for what they eventually did with Mac OS X were already there.
 
Good observations. Mind you, the £400, 1984 Sinclair QL got by with very few chips:
I'm fiarly sure the QL didn't have an MMU, Ethernet, or SCSI, let alone DMA for the last two. And the 8-bit bus is a lot easier to handle than the wider bus of other 68k (the number of buffer and register chips in the 3/60 is staggering, as with bus sizing on a '020 you need to move that upper byte to a lot of places, so you get a bridge between the '020 bus and the IO bus, a bridge between the '020 bus and the MMU bus, and then more bridges between the IO and MMU bus and everything connected to them...).
Apart from the CPU, ROMs and 16xRAM, I think I count 12 others (11 more than a ZX Spectrum).
The 3/60 already has 11 ALS37[34] :) There's 21 different types of 74xx, plus loads of PALs and some ASIC for the big functions (Ethernet, SCSI, SCSI FIFO, SCC, ...). BTW those numbers are from a recreated board missing the actual SCSI implementation and video, so even more chips were needed.

Of course later systems were able to cut down by using gate-array ASICs (and even custom ASICs eventually), Apple did a lot of that.

You can build a computer without all that, like the QL or original Mac did (the Plus and later started adding stuff like SCSI). But if you're planning to use all that, then whether the CPU is single or multi-chip is not very relevant. The original SPARC was multi-chip, as were most early workstation RISCs.

From Microprocessor Report, Feb 12, 1992.
Hehe, this is getting dangerously close to look like actual work :)
Simulation is wonderful way to design CPU and give marketing some numbers. Don't trust those numbers.
Also, lovely pick of systems - the ELC is a cheap all-in-one, why not test the IPX which is a 40 Mhz lunchbox? And the 10 w/ SuperSPARC is right around the corner as an actual product (introduced in May).

Anyway, looking at actual SPEC CPU 92 results (<https://netlib.org/performance/html/new.spec.cint92.col0.html>), the Motorola Series 900 gets pretty good numbers. But it doesn't ell the whole story, as the HW availability is listed as Aug-93, and software availability as Dec-93. Things like the DECstation 5000 Model 260 are faster with earlier availability...

these figures imply the MC88110 would have led the field at the time
Time-to-market. The numbers only matter once you have products to order. The '110 was a bit too late to the party to be relevant.

To quote MPR: "it is a shame that Apple won’t be building 88110 systems, since it probably would have given them a lead of at least a year over the first PowerPC chips and would have provided considerably higher performance."
The 900 series is 54. The IBM POWERstation 40P with a 66 MHz 601 (and cache) is listed between 64.2 and 76 (Dec-94) The 43P-100 with a 100 MHz 604 is 128. So... no, not higher performance according to CPU 92 INT (didn't look at FP).
 
I'm fiarly sure the QL didn't have an MMU, Ethernet, or SCSI, let alone DMA for the last two. 8-bit bus.. bridges.
Sinclair did most things with a couple of resistors and diodes. 8-bit bus helped, though I think they used a 68008 because they could get them very cheaply.
<snip> 3/60 already has 11 ALS37[34] :) There's 21 different types of 74xx, plus loads of PALs and some ASIC<snip> later systems were able to cut down.. Apple did a lot of that.
Sinclair also a pioneered ASICs (Farranti ULAs - more like a sea of gates where you specify a metal layer to connect them all). The ZX81 started it in 1981; the QL had two.
Hehe, this is getting dangerously close to look like actual work :)
LOL, I hope people understand it's just a bit of fun, arguing the toss about Macs that have never existed and almost certainly never will.
Simulation <snip> ELC <snip> IPX which is a 40 MHz lunchbox? <snip> 10 w/ SuperSPARC <snip> introduced in May).
I hoped you'd ignore it was a sim, but you saw through it :cool: . I had a Sun IPX at Manchester (UK) University between 1996 and 1998. I felt really honoured to use a proper Workstation (Solaris + FVWM2) with 64MB of RAM, even though it was already slow by then.
Time-to-market <snip> '110 was a bit too late <snip> POWERstation 40P with a 66 MHz 601<snip>
Admittedly, they did a good job of getting the 601 going in 18 months!
 
I think here you're comparing different things, and over-estimate the importance of laptops at the time. As you note later, the 68k was originally high-end.

TL;DR: early 68k needed extra chips to be at feature-parity with later one, and laptops never use the highest-end CPUs.
You're absolutely right. The 68k family had a plethora of support chips available to get maximum performance in a variety of implementations. But my point was: the 68000 COULD run by itself, whereas the 88100 could not. The 88110 could also stand on its own. This means that a personal computer manufacturer like Apple could release affordable hardware using a minimum of chips. Most home or small business customers in the late '80s weren't looking to spend Sun 2 or 3-level money (or expecting *NIX workstation-level performance), so the base 68000 in the Macintosh was sufficient. If they were looking for that level of performance, well, the IIfx was an option. Like Sun, Apple built a lot of their support ASICs around the 68k, so effectively most of the various Motorola parts were fully or partially implemented inside Apple's chips. Apple doesn't really like to reveal much of their ASIC designs outside of the occasional block diagram, so there's no telling if they're pure copies of Moto chips or if they're clean designs that follow the 68k spec or somewhere in between.
And yes, laptops were still kind of niche in 1991, but they became increasingly important as the '90s progressed. There was a lot of grumbling around 1993 when, while at the end of the year you could get a Pentium laptop, the best Apple portable was still running a 68030 (the 500 series was introduced mid-'94, the 5300 in late '95). Apple didn't really catch up until the 3400 was released in 1997 (briefly the fastest laptop available on the market in 240MHz guise), but was soon surpassed when the G4 stagnated in the late '90s/early '00s and didn't really catch up again until they went to Intel.
Laptops like the SPARCbook also existed.
Tadpole made that, along with the Alphabook. I'd still prefer Alpha, honestly. SPARC was never my first choice. It was better than PA-RISC or VLIW/EPIC architectures, but never with the raw power of the Alpha or, IMO, as versatile as MIPS.

I also suspect that a major reason PowerPC had to have a (largely) compatible MC88110 bus, is because Apple already had a chipset ready for it by late 1991.
That's true. Apple and Motorola kind of ganged up on IBM and insisted that RSC be adapted to the 88k bus in part because Apple already spent so much time and money building ASICs around it. Voilá: the 88k bus is now the 60x bus. That's how PPC went from the drawing board to a shipping product in about a year. If it was clean slate it would've taken at least twice that long.
 
SPARC was never my first choice. It was better than PA-RISC or VLIW/EPIC architectures, but never with the raw power of the Alpha or, IMO, as versatile as MIPS.
I'll don my firesuit and say it out loud: the performance of Alpha is largely an urban legend.

In real life, it wasn't that much better than everything else available in a similar time-frame. I think this the belief exists for two main reasons:
(a) the megahertz myth that was running at full steam at the time
(b) the fact most people didn't use an Alpha at the time to compare it to other systems (guess what I had on my desk for a year or so at Uni? An Alpha desktop! And it sucked because it wasn't that fast and the OS was useless as everything was targeting Solaris first and everybody else when - and if - they got around to it...)
Also, the fact Alpha was uncermonially killed to make way for Itanium gave it the appearance of a martyr (same for MIPS), a much better story than the slow, agonizing deaths of SPARC and POWER.

Look at the SPEC 92 INT result I posted, and you'll see fun things on the integer side, for examples:
(a) a 40 MHz SuperSPARC with no external cache (nearly the cheapest one, mine are mostly SM61 so 60 MHz with 1 MiB of external cache) has almost exactly the same result as a 99 MHz 21066A system introduced two years later
(b) a bunch of results for the 21064A at 266-275 MHz cover a similar range to 120-133 MHz PPC604 and 120 MHz PA-7200
(c) even at 275 MHz, the 21064A still post lower results than the (late to the party) Fujitsu SPARC64 @ 118 MHz
(d) The 21164 needs more than 1.5x the clock to match the Pentium Pro results

Yes, Alpha had a fast clock. But it was expensive, power-hungry, and the software side wasn't anywhere near as complete and nice as the more established competitors, Sun (Solaris) first, HP (HP-UX) second, IBM (the not-so-standard AIX) third. NT for Alpha and FX!32 could have helped (NT4 that is, the one people actually cared about), but the Pentium Pro had established Intel could match the performance of the 21164, and by the time EV6 (21264) was shipping the Pentium II was there and had solved the "old code runs slowly" problem of the PPro, giving users the best of both world.

Ultimately, in that era, if the designers were any good (and by the 90s the company left doing CPUs had good engineers), the performance of a CPU was mostly about how many transistors you could cram in a given area of a leading-edge process, something that has mostly held true since. If you spent transistors registering stuff to deepen the pipelines to crank up the frequency, you had to not spend them elsewhere. There were differences in performances, but the 30000ft view is that they mostly cancelled out and most processors of an era had similar performances, give or take 10% and/or 6 months of time-to-market. It was fun to watch, it is still fun to argue about, but by then (early-to-mid 90s) it wasn't the hardware, it was the software, and had been for a while already.
 
Last edited:
I'll don my firesuit and say it out loud: the performance of Alpha is largely an urban legend <snip MHz myth, armchair fans, Itanium martyrdom>
Gosh, hadn't heard that before... hang on, you have data..
<snip> SPEC 92 INT <snip> 40 MHz SuperSPARC with no <snip L2> almost exactly the same result as a 99 MHz 21066A system introduced two years later
<snip> 21064A at 266-275 MHz <snip> 120-133 MHz PPC604 and 120 MHz PA-7200 <snip> 275 MHz, the 21064A still post lower results than the (late to the party) Fujitsu SPARC64 @ 118 MHz <snip> 21164 needs more than 1.5x the clock to match the Pentium Pro results
OK. I knew it needed a much higher clock.
Ultimately, in that era <snip> performance of a CPU <snip> how many transistors you could cram in <snip> deepen the pipelines to crank up the frequency <snip>
Generally I go with "Computer Architecture, A Quantitive Approach". Their central premise is that it's the whole system that matters, so there are always trade-offs between clock speeds, pipeline depth, CPI (or IPC), Cache, Bus width, transistor counts; temperature envelopes and whatever other parameters can affect the system.

I think the 21064 did well with about 1.68M transistors.
1753104992438.png

It only has 1 integer + 1 FP and max dual issue + 8kB cache. So, in some ways it's like a PPC603. From your ods table it scored 63.7 from a 66MHz clock (not bad); while a 125MHz A21064 scores 68.4 with 256kB L2 (while a 100MHz A21064 can get 74.6, 150MHz gets up to 81).

I think that illustrates your point quite well.

One things we haven't covered too much is the size of the design team. I tend to think that in the same way that it's possible to improve the performance of software by ploughing more people into the problem, you can also increase the performance of hardware by doing the same thing. AFAIK Intel had an order of magnitude more software engineers than RISC manufacturers. e.g. Somerset Design had about 150 engineers from memory. This was one of the major ways they stayed ahead, though I could be wrong here - according to Google AI, Intel only had 200 engineers on the Pentium.
still fun to argue about<snip>
True, with the emphasis on fun!
 
Generally I go with "Computer Architecture, A Quantitive Approach". Their central premise is that it's the whole system that matters, so there are always trade-offs between clock speeds, pipeline depth, CPI (or IPC), Cache, Bus width, transistor counts; temperature envelopes and whatever other parameters can affect the system.
Still the best reference. The thing to understand - and that is far from obvious - is that pipelining is expensive in area. Whenever a pipeline stage is cut in half to boost frequency, it means that all signals have to be registered in the middle (the value of the signal has to be captured into storage). That is costly. In fact, I only realized how costly it could be when I tried to change the depth of pipelining for FP operators using FloPoCo for my '883. I didn't need a lot of frequency (being synchronous to a 20 MHz '030), and it will always be better than the '881/'882, so I was ready to use whatever depth of pipelining would use the least amount of area and would be easy to place and route by Vivado. Turns out, making the operators (mul, add, but div and sqrt are the big one that won't fit together) more pipelined took more area, and by a wider margin than I expected. Unlike back then, we now have access with thing like FPGA and FloPoCo to the tools to see and learn about such things for ourselves, which is awesome IMHO.

I think the 21064 did well with about 1.68M transistors.
The 21064[A] were pretty good CPUs, but were expensive at the time, so the performance/$ wasn't a game-changer. The '66[A] were a bit too downgraded (the comparison to the SuperSPARC above tells it eloquantly).

In fact, most Alpha CPU were pretty good or great CPU - but the performance gap was much lower than the frequency suggested, and when the price was taken into account, the value proposition wasn't all that great. Sun workstations might not have been the fastest (though that reputation came partly from the low frequency of the SuperSPARC, which had double-pumped parts that were acting on both the positive and negative edge of the clock, so effectively running at twice the clock speed, once you look at CPU 92 or CPU 95 they were in the right ballpark), but Sun had invested heavily in the software side and so it was a better choice for many people.

So, in some ways it's like a PPC603. From your ods table it scored 63.7 from a 66MHz clock (not bad); while a 125MHz A21064 scores 68.4 with 256kB L2 (while a 100MHz A21064 can get 74.6, 150MHz gets up to 81).
I think that illustrates your point quite well.
Good choice of comparison for this forum. I don't think many of us thinks of a 66 MHz 603 as "fast", yet many people would think of an Alpha as "fast". It's all relative to what was available at the time. In fairness to Alpha, the 603 was a later design, so may not be an entirely apple-to-apple comparison. But then it was also a lot cheaper and less power-hungry.

The best 601 in the table is a Bull system with a 75 MHz 601 and 1 MiB of external cache, scoring 93.8. That puts him in the ballpark of a 200 MHz 21066A (the ~230 MHz ones score ~100). Not bad, and all tested in '95. Frequency is not all there is to performance - a 55 MHz POWER2 gets 97.6!

The 90s were all about brainiac (POWER and other low-frequency, high IPC designs) vs. speed demon (high frequency, lower IPC designs). Alpha and POWER were the poster children, and then Intel decided to play the frequency game with AMD in the P3 era and introduced the last great speed demon with the Pentium 4. They won the game, sort of... And yet somehow I still think of Tejas (the cancelled next-P4) and EV8 (the cancelled 21464) as missed opportunities. When Intel presented their P4 roadmap to my research team back somewhere in '99 or '00 (or 01'? can't remember), the (un?)official goal for the P4 family was to reach 10 GHz soon-ish :-) That was a fun era to do comp.arch .

I tend to think that in the same way that it's possible to improve the performance of software by ploughing more people into the problem, you can also increase the performance of hardware by doing the same thing.
More people well managed can help software; for hardware you soon reach the limitations of the process. Intel used the extra people to hold out on "full-custom" designs longer than everyone else, but I expect they've been doing standard cells for a long time now. Those extra people probably helped a bit, but I wouldn't date quantify by how much.

For those who don't do silicon design for a living, "standard cells" means the foundry (TSMC, Samsung, ...) supplies a bunch of standardized "basic building blocks" (NAND gate with 2/3/4/5/... inputs, single-bit register, ... there's hundreds of them usually, shipped with the Process Development Kit) that go on a "grid" that supplies the power and ground lines. The place-and-route software uses those building blocks to implement the design synthesized from the RTL (verilog, VHDL, ...). It's the standard way of doing things now (and for a while), and there's usually a choice of libraries of cells with different criteria (speed vs. size vs. consumption vs. ...).
"full custom" means everything is customized - down to the transistor placement and power lines. It's incredibly complex and time-consuming, and in the 90's the designs gurus capable of optimizing that aspect were highly sought after.

"full-custom" was the only way in the early days (60s, 70s). Then came the gate array chips (80s) - with the transistor pre-placed, and only the metal layers were customized by customer like Apple (most of the custom chips from Apple were gate-array designs). The manufacturer would supply a place-and-route software, and a library of basic transistor configuration or "cell" [1] (same name, same description!) that would be used by the customer to translate from the schematics to the software. That idea slowly spread to regular ASIC and became the "standard cells" approach.

[1] That would be the document to look at to reverse-engineer many Apple ASIC of the 80s from a die shot, in case anyone want to tackle that
 
Back
Top