You’ve probably heard of ARM processors a lot lately. They are used in all kinds of devices like smartphones, tablets, routers, and so on. I’m sure you’ve also heard why they are so great: They’re powerful, and they’re extremely energy efficient!
Well, so is my Intel processor in my desktop computer, frankly. On average, it uses about 9W of power (I measured), and it’s a quad-core chip!
Well, 9W is a lot for smartphones, which have very small batteries. But still, what is the deal with these mystical ARM processors? What exactly are they, and what makes them so great?
Alrighty, first up is a brief explanation of microprocessor architectures.
On the one hand, you’ve got your RISC processors. RISC stands for Reduced Instruction Set Computing. In plain English, that means that the processor has a smaller number of instructions, which are the different operations the chip can perform – like “Move data from A to B”, or “Do A+B and put the result in C”.
An easy way to imagine how this works is to think about your last trip to the supermarket. You may have done something like this:
- Go straight
- Turn right at Red House
- Turn left at stoplight
- Turn right at McDonalds
- Turn left into Supermarket parking lot
Now, a RISC processor will have an instruction for each of the steps above:
So, it takes 6 instructions for a RISC processor to “get to the supermarket”, using a total of 4 different instructions (listed above). Probably the most widely recognized RISC processor is the old PowerPC series of chips that Apple used to use in Macs.
Then there are CISC processors, or Complex Instruction Set Computing. CISC processors usually still have basic instructions like RISC processors, but they also add complex instructions that can perform several lower-level operations in a row, and sometimes all at once (more or less). Your desktop AMD or Intel processor is a CISC chip. So, to take the same route to the supermarket, a CISC processor might do this:
Notice that in this case, the CISC processor executes only 2 different instructions to get to the supermarket, vs. 6 for the RISC processor.
Now, things are a bit more complicated than I’ve indicated here… RISC processors can be very fast at executing their simpler instructions, while CISC processors are inherently more complex, which can be a bit less efficient. In recent years, however, companies like Intel have taken the CISC architecture to ridiculously efficient levels on the performance/Watt scale.
Right, so, that was all pretty easy to understand, yes?
But what about ARM processors??
ARM stands for Advanced RISC Machine, which is kind of a misnomer. ARM processors are basically just RISC processors – and not necessarily more “advanced” than other RISC chips out there. In recent times, however, various companies have produced ARM chips that include “enhancements” (sort of like CISC chips) that speed up various activities like encoding/decoding video, for example. But, they are still very small and relatively slow processors (in terms of clock speed), and thus they remain extremely low-power. In terms of raw computational speed, today’s ARM processors are becoming more and more powerful. But generally speaking, you can think of ARM processors as more purpose-built chips for low-power devices that need to do a few things very well.
I should add here that there’s a whole lot of hullabaloo about “dual-core processors” in smartphones.
Well, first of all, a dual-core ARM chip in your smartphone does not equal a dual-core desktop chip in general terms.
Second of all, the performance and battery life you can expect on your ARM-powered smartphone will depend highly upon the efficiency of the OS running on the phone. One big complaint about Android is that it is sort of like the Windows of old: designed to run on lots of hardware, but maybe not so well. On the other hand, Apple and Microsoft can produce a smartphone/OS that runs extremely well on more controlled hardware (and slower single-core hardware in M$’s case) without compromising the fluidity of the user interface/experience.
I should also note that even Microsoft is getting in on the ARM action: Windows 8 will apparently run on ARM-based devices. This makes sense, because at the moment, even Intel’s low-power (CISC) Atom platforms cannot match either the performance or power consumption of ARM processors. I suspect that may change in the near future, but that’s up to Intel. We’ll see!
Finally, I have read a lot of discussions about which architecture is “superior”: RISC or CISC? The answer is BOTH. It depends on what you are doing with the processor, and even what model of RISC or CISC processor it is. Ignore any and all marketing material related to system performance from all hardware vendors. It’s usually complete bunk. That’s why they call it “marketing”.
Anyway, that’s the scoop. ARM is basically just RISC – on steroids, perhaps!