Forums

x86 vs The World...

Started by rickman June 4, 2014
Many years ago when dinosaurs roamed the earth, there was the x86 and 
then there were the viable contenders.  That list was headed by MIPS and 
PowerPC with others as "also ran".  With time none of these 
architectures kept up with the megalith Intel's forces and the x86 took 
over the world resulting in the extinction of the dinosaur.

In more recent times the focus has shifted from raw power (so essential 
  in the times of dinosaurs) to low power as dictated by the smaller 
size and battery operation of new devices (think mammals).  Now the 
power guzzling of the x86 line is creating global warming and 
threatening our very existence.  But today's processor on the white 
charger is the ARM, not PowerPC or MIPS.

Was it inevitable that these lesser architectures take second fiddle to 
the ARM or was it just a fluke of marketing or corporate mismanagement 
that led to their being relegated to the processing hall of fame?

Is there any compelling technical reason for the emergence of the ARM 
over other non-x86 processors?

-- 

Rick
rickman <gnuarm@gmail.com> writes:
> [...] > Is there any compelling technical reason for the emergence of the ARM > over other non-x86 processors?
I don't know if it's a reason, but most processor vendors provide IP _and_ fab. ARM is one of the relatively few that just provide IP and allow other companies to handle the fab. Perhaps this, along with reasonable IP licensing, is responsible (in addition to being a pretty decent processor)? -- Randy Yates Digital Signal Labs http://www.digitalsignallabs.com
rickman wrote:

> [ ... ] But today's processor on the white > charger is the ARM, not PowerPC or MIPS. > > Was it inevitable that these lesser architectures take second fiddle to > the ARM or was it just a fluke of marketing or corporate mismanagement > that led to their being relegated to the processing hall of fame? > > Is there any compelling technical reason for the emergence of the ARM > over other non-x86 processors?
I understand that a lot of Chinese development for their own use is based on MIPS. Mel.
On 2014-06-04, rickman <gnuarm@gmail.com> wrote:
> Many years ago when dinosaurs roamed the earth, there was the x86 and > then there were the viable contenders. That list was headed by MIPS and > PowerPC with others as "also ran". With time none of these > architectures kept up with the megalith Intel's forces and the x86 took > over the world resulting in the extinction of the dinosaur. > > In more recent times the focus has shifted from raw power (so essential > in the times of dinosaurs) to low power as dictated by the smaller > size and battery operation of new devices (think mammals). Now the > power guzzling of the x86 line is creating global warming and > threatening our very existence. But today's processor on the white > charger is the ARM, not PowerPC or MIPS. > > Was it inevitable that these lesser architectures take second fiddle to > the ARM or was it just a fluke of marketing or corporate mismanagement > that led to their being relegated to the processing hall of fame? >
ARM has a massive advantage going for it: a _massive_ hobbyist and low end embedded systems ecosystem which means it's been easy for a _long_ time for individuals to use this architecture for their own personal projects. There's nothing hobbyist related in the PowerPC world and the only MIPS architecture variant I am aware of which is hobbyist suitable is the PIC32MX. What people forget in this next-quarter driven world is that today's hobbyists and/or students are tomorrow's decision makers. That doesn't help you meet next quarter's target, but it does mean that those people will be starting to make recommendations to their new employers in the future. Those people know ARM from their own projects and they know the ecosystem. I'll let you work out what happens next. :-)
> Is there any compelling technical reason for the emergence of the ARM > over other non-x86 processors? >
At the technical level, ARM is a very elegant architecture. Over the last few days, as part of a hobbyist project, I've been going some bare metal work on x86 for the first time in a number of years and I had forgotten how utterly crap the x86 architecture is (at bare metal level) when compared to ARM. The ARM architecture is very expressive when compared to MIPS, but I know nothing about PowerPC. I wonder how the code density of the various architectures compares. Simon. -- Simon Clubley, clubley@remove_me.eisner.decus.org-Earth.UFP Microsoft: Bringing you 1980s technology to a 21st century world
On 05.6.2014 &#1075;. 02:08, rickman wrote:
> Many years ago when dinosaurs roamed the earth, there was the x86 and > then there were the viable contenders. That list was headed by MIPS and > PowerPC with others as "also ran". With time none of these > architectures kept up with the megalith Intel's forces and the x86 took > over the world resulting in the extinction of the dinosaur. > > In more recent times the focus has shifted from raw power (so essential > in the times of dinosaurs) to low power as dictated by the smaller > size and battery operation of new devices (think mammals). Now the > power guzzling of the x86 line is creating global warming and > threatening our very existence. But today's processor on the white > charger is the ARM, not PowerPC or MIPS. > > Was it inevitable that these lesser architectures take second fiddle to > the ARM or was it just a fluke of marketing or corporate mismanagement > that led to their being relegated to the processing hall of fame? > > Is there any compelling technical reason for the emergence of the ARM > over other non-x86 processors? >
Power architecture is very much alive, just check what Freescale are making. The reason why the most popular architectures are crippled - x86 is simply a mess, ARM is better but just has too few registers to be a viable load/store architecture - is not commercial. Someone somewhere just makes sure most of the world uses - and is familiar with - the crippled architectures while the best ones (power is the best of those I have seen - by a margin, followed by MIPS) are reserved for more critical areas where it matters. Dimiter ------------------------------------------------------ Dimiter Popoff, TGI http://www.tgi-sci.com ------------------------------------------------------ http://www.flickr.com/photos/didi_tgi/sets/72157600228621276/
Simon Clubley <clubley@remove_me.eisner.decus.org-Earth.UFP> writes:
> forgotten how utterly crap the x86 architecture is (at bare metal level) > when compared to ARM.
I've heard (maybe someone else knows specifics) that x86 is much better than ARM with regard to things like predictable ordering of memory operations in multicore systems.
On 05/06/14 01:08, rickman wrote:
> Many years ago when dinosaurs roamed the earth, there was the x86 and > then there were the viable contenders. That list was headed by MIPS and > PowerPC with others as "also ran". With time none of these > architectures kept up with the megalith Intel's forces and the x86 took > over the world resulting in the extinction of the dinosaur. >
The other architectures never fully died out - but they were relegated to more niche markets. There are lots of MIPS processors around, especially in network equipment. PowerPC turns up in high-end microcontrollers such as in engine control, and IBM Power chips are popular in big iron computers (as are Sparc's). But they can't get the economies of scale needed for competing in the mass market.
> In more recent times the focus has shifted from raw power (so essential > in the times of dinosaurs) to low power as dictated by the smaller size > and battery operation of new devices (think mammals). Now the power > guzzling of the x86 line is creating global warming and threatening our > very existence. But today's processor on the white charger is the ARM, > not PowerPC or MIPS. > > Was it inevitable that these lesser architectures take second fiddle to > the ARM or was it just a fluke of marketing or corporate mismanagement > that led to their being relegated to the processing hall of fame? > > Is there any compelling technical reason for the emergence of the ARM > over other non-x86 processors? >
I think there are a mix of reasons - some technical, some non-technical. The x86 ISA is crap. It was viewed as limited and old-fashioned the day it was created, and the IBM engineers designing the first PC wanted nothing to do with it (they picked the 68000). But the chip was relatively cheap, and the 8-bit bus needed meant cheaper memory and main boards, so the PHB's pushed it as the cpu for the IBM PC. Fast-forward to today and we have fantastic implementations of the same crap ISA. (amd64 is somewhat better, but still not a nice ISA compared to MIPS, PPC, or ARM.) If the same clever folks at Intel had used the same time and resources on making a better implementation of MIPS or PPC, we would have faster, cheaper and lower-power cpus in the mainstream. ARM were the right people, at the right time, with the right deals. The original ARM processor was a very nice design - it was done by smart folk who looked at available processors, and thought of a better way to do make a cpu. It was low-power and low-size from the beginning. And because they didn't have a fab themselves, it was a relatively simple matter to make the core as an IP for other manufacturers. The ISA itself is pretty good. It is arguably not the best - generations of Thumb and other instruction sets attest to that - but it is pretty good, and ARM have done a good job of moving it forward. MIPS is a bit of a sad story. The ISA is excellent - it is a very elegant processor. But it has suffered commercially as a result of competition with the x86 market, betrayal by Microsoft on the Windows NT platform, and a series of owners of varying success. For example, they were bought by Silicon Graphics when they were struggling financially and SG was a heavy MIPS user. But then SG found that it gave more value for money to put Intel chips in their workstations than to put their own MIPS devices in the systems. MIPS have always been popular in networking equipment - they are very good at pushing data around, and have small and low-power cores that work well in SOCs. They used to be significant in the mobile telephone market, and are heavily used in set-top boxes, Bluray players, etc. Unfortunately, MIPS have failed in the microcontroller market - despite making cores that are highly competitive with ARM Cortex across the range, and having decades of lead in the 64-bit class. MIPS-based devices tend to sell in very large quantities but to only a few customers - the mass of developers out there simply don't know about them, and can't get the chips or the information (companies that make MIPS-based SOCs often have minimum order quantities in the 100,000 range). They made an attempt with Microchip - but they were perhaps the worst possible partner. Microchip are very popular with small hobby users - but that gives them a reputation of /only/ being for small hobby users, and their other microcontrollers have a well-justified reputation for having weird and painful cpu architectures and often very poor tools. (Microchip have many good points too - I'm just talking about the cpu cores here.) So the PIC32 is assumed to be another in the line of bizarre Microchip-specific cores, and the decision to make the free tools limited in optimisation (rather than the more common space limitations) means that people trying them find the chips to be very slow. So while most ARM licensees could swap out their Cortex cores with corresponding MIPS cores and get similar prices, performance, and power, and similar tools (gcc is the most common compiler for both platforms), MIPS has missed the boat.
David Brown <david.brown@hesbynett.no> wrote:
> They made an attempt with Microchip - but they were perhaps the > worst possible partner. Microchip are very popular with small hobby > users - but that gives them a reputation of /only/ being for small hobby > users, and their other microcontrollers have a well-justified reputation > for having weird and painful cpu architectures and often very poor > tools.
Microchip also makes very buggy chips which doesn't help. As for the cores used, they just feel outdated. The M4K core used in the PIC32MX looks like it was designed to be a competitor to the ARM7TDMI, while the M14K feels like a reaction to the Cortex-M3, just without the elegance. You still need assembly glue or nonstandard compiler extensions. Meanwhile the competition has moved on to the M4F with floating-point support. On a more positive note, MIPS recently launched release 6 of the architecture, which looks very interesting. It breaks compatibility in a major way - many less-used instructions have been removed to free opcode space, and the old fan-favourite delay slot instruction is also gone. -a
David Brown wrote:

[ ... ]
> [MIPS] made an attempt with Microchip - but they were perhaps the > worst possible partner. Microchip are very popular with small hobby > users - but that gives them a reputation of /only/ being for small hobby > users, and their other microcontrollers have a well-justified reputation > for having weird and painful cpu architectures and often very poor > tools. (Microchip have many good points too - I'm just talking about > the cpu cores here.) So the PIC32 is assumed to be another in the line > of bizarre Microchip-specific cores, and the decision to make the free > tools limited in optimisation (rather than the more common space > limitations) means that people trying them find the chips to be very slow.
A little awkward too that Microchip produced a PIC32 evaluation board that wouldn't connect easily with anything except Microchip extension boards. The captive boards + captive compilers really limited the things that anyone would try to do. Mel.
Dimiter_Popoff wrote:

> On 05.6.2014 &#1075;. 02:08, rickman wrote: > > Many years ago when dinosaurs roamed the earth, there was the x86 and > > then there were the viable contenders. That list was headed by MIPS and > > PowerPC with others as "also ran". With time none of these > > architectures kept up with the megalith Intel's forces and the x86 took > > over the world resulting in the extinction of the dinosaur. > > > > In more recent times the focus has shifted from raw power (so essential > > in the times of dinosaurs) to low power as dictated by the smaller > > size and battery operation of new devices (think mammals). Now the > > power guzzling of the x86 line is creating global warming and > > threatening our very existence. But today's processor on the white > > charger is the ARM, not PowerPC or MIPS. > > > > Was it inevitable that these lesser architectures take second fiddle to > > the ARM or was it just a fluke of marketing or corporate mismanagement > > that led to their being relegated to the processing hall of fame? > > > > Is there any compelling technical reason for the emergence of the ARM > > over other non-x86 processors? > > > > Power architecture is very much alive, just check what Freescale are > making.
PowerPC in quite a few of the Freescale parts is designed to work in bad environments both electrical and physical. (automotive engine controllers, and bad environment applications like process control. w..