Intel could start serious production of ARM processors if it wanted to (and Intel's XScale processors were/are ARM-based). It would be significant change, but Intel has the money and engineers to make it work. I'm sure Intel could incorporate its Tri-Gate transistors into an ARM design as well.
Intel actually sold off their license and XScale IP to Marvell a few years ago. I'm not positive, but I think they'd have to buy a new Architecture License to get back into ARM.
That is right but the XScale processors were designed as network processors for layer2/3 switches. By today's standard XScale processors are very slow and outdated.
Color me skeptical. We were through this before, with PowerPC.
Considering how small ARM is compared with Intel, they've done a fairly fantastic job.
I mean at some point Intel will be able to deliver x86 CPUs in ultra low power form factors. At the same time ARM CPUs will become increasingly powerful. Is it clear to those that understand these things that one architecture is going to be inherently better?
Intel, however, supports a massive instruction set, with some hugely complex instruction. They do this by actually "compiling" their complex instructions on the chip to a format which looks a lot like ARM instructions, which they call micro-ops.
I would say that the ARM architecture is inherently better, because it does not waste all this silicon to do instruction translating, and you know exactly what is being executed on the processor, simplifying the job of the hardware designer, and allowing them to focus solely on performance (/power consumption/whatever), and allowing compilers to do instruction level fine tuning.
I'm having a hard time wrapping my mind around this. It almost feels like Intel has simply added a layer of abstraction. It isn't clear to me that this is a bad thing. Intel has the flexibility of changing that microcode core as they please without worrying about the need for everything to be recompiled if they think of a better implementation with a different instruction set. For very specialized low power devices ARM makes sense. For more complex systems I'm not so sure. You see a strong movement in software towards increasing levels of abstraction. Why would hardware be different?
Is that a fair assessment of the situation? Or am I missing something?
One of the big arguments for RISC, as I am familiar with it, is that it allows the entire processor team to focus on making just a few instructions as fast as physically possible, rather than dealing with the truckload of instructions we have in a modern CISC processor. Or, perhaps in the ARM case, as efficient as physically possible.
The thing is, in practice, this hasn't been true since 1985. Nobody actually uses the legacy instructions that are "decoded into RISC-like microops" except people writing 4K demos. In reality, ARM instructions are actually longer on average, and more complex on average. Nor is this a bad thing: it means that ARM IPC is more valuable than x86 IPC.
ARM's advantage is that their instructions are longer, more complex, and easier to decode: not that they're "simpler and more RISC-like". RISC, at least in its original sense, is as dead as a doornail.
1. Decades of experience, smart people, and good chip design.
2. Making a chip with Core i7-like power is hard, even an ARM. It'd probably be a totally new experience for most ARM chip designers, very expensive, and it might not even sell.