My view of ARM versus other RISCs

April 29, 2013

Way back in my second entry on x86 winning against RISC a commentator asked:

And now you need to write who how ARM up-ending this orderly structure of the universe.

Writing about this is hampered by my lack of knowledge of the details of ARM history, but after some reading I have my theory: ARM has been successful where other RISCs weren't because from the first it was targeted differently.

(This is not a matter of architecture, as I initially thought before I started reading. The original ARM ISA was a bit odd but no more so than other RISCs.)

The simple version is that all other RISCs saw themselves as competing for the performance crown (against each other and then x86); they quite carefully and quite consciously engineered for performance and then tried to sell their CPUs on that basis. This was a sensible decision because performance was where the money was (and also because there clearly was a lot of room to improve CPU performance). It just happened that Intel was able to spend enough money to scale x86 up enough to crush everyone else with good enough performance for not too much money (and with the other advantages x86 gave them).

Acorn (where ARM started) doesn't seem to have seen itself as building a high-performance CPU. Instead it wanted to build a CPU that met its needs as far as features went, performed well enough, and was simple enough that a small company could design it (after all, early RISCs were designed by a class of graduate students). This gave ARM different design priorities and, just as importantly, meant that Acorn (and later ARM Ltd) didn't spend huge amounts of money on R&D efforts to crank performance up to compete with other CPUs (a race that they would have been doomed to lose). Free from chasing performance at all costs, ARM was both able and willing to adopt its design for people who were interested in other needs.

(I have no particular insight about why ARM won out over similar higher end low-power CPU efforts of the early 1990s. However two things seem worth noting there. First, all of the really big designs seem to have been RISC, which makes sense; if you're building a new embedded CPU, you want something simple. Second, both the Intel i960 and the AMD 29k were made by companies that were also chasing the CPU performance crown; among other things this probably drained their design teams of top talent.)

It's worth noting that part of this difference is a difference in business priorities. One reason that ARM is so widely used is that it is dirt cheap and one fundamental reason that it's dirt cheap is that ARM Ltd licenses designs instead of selling chips. This means that ARM Ltd has made a fraction of the profit that, say, Intel has made from their CPUs. Licensing widely and cheaply is an excellent way to spread your CPUs around but a terrible way to make a lot of money.

(Of course losing the CPU performance race was an even worse way of making money for all of the other RISC companies. But if the RISC revolution had actually worked out, one or more of those companies could have been an Intel or a mini-Intel.)


Comments on this page:

From 76.113.49.212 at 2013-04-29 11:32:40:

I meant "how" in that sentence, sorry.

By cks at 2013-04-29 12:02:55:

Oh wow, I didn't even notice the who/how substitution in your comment; I read it as 'how' myself (and wrote this entry accordingly). I've now annotated it so that it reads the way you intended.

The short version of how, then, is: ARM didn't chase performance so was open to chasing other things that people wanted in embedded processors and ARM adopted a business model that made their CPUs extremely cheap.

(I think the most useful metric of price is the extra cost over the raw chip manufacturing cost, since presumably any chip of roughly the same capabilities would probably cost about the same to manufacture. Wikipedia's numbers say that in 2006, this extra cost averaged to about 11 cents a CPU. Actual cost to large scale users was probably slightly higher since they probably had their own design integration costs to pay for.)

What I don't know is if any other higher-end embedded chip designs adopted the same licensing-based business model as ARM did.

From 76.113.49.212 at 2013-04-29 18:02:47:

All of them tried. SPARC softcore is even open-sourced and is freely downloadable. PPC came close with several softcores based off 405 and 601/603. And MIPS was sold left and right to all comers together with foundries, so that both China and Russia had it. Nobody was as nimble as ARM.

BTW, when Intel made StrongARM, I foolishly thought it it would make ARM itself less relevant, because it beat all the softcores both in power and performance simultaneously.

Written on 29 April 2013.
« My sysadmin view of Python virtualenvs
My practical problem with preconfigured virtual machine templates »

Page tools: View Source, View Normal, Add Comment.
Search:
Login: Password:
Atom Syndication: Recent Comments.

Last modified: Mon Apr 29 01:24:50 2013
This dinky wiki is brought to you by the Insane Hackers Guild, Python sub-branch.