ARM is coming very strong and making dramtic change to the landscape of computing industry. It is impacting to various fields like microcontroller, embedded system, mobile internet, server market.
In this post, I will share what I learned about ARM CPU.
ARM is a family of instruction set architectures for computer processors developed by British company ARM Holdings, based on a reduced instruction set computing (RISC) architecture.
A RISC-based computer design approach means ARM processors require significantly fewer transistors than typical CISC Intel/AMD x86 processors in most personal computers. This approach reduces costs, heat and power use. There are other RISC processors like MIPS from Cavium, PowerPC from freescale. They have been in the market for long time. Why ARM stands out from compitetion?
My personal understanding is:
- the business model ARM adopts: licence ARM design Intellecture Property (IP) to third parties.
- It catches really well with the coming wave of mobile internet, i.e. flooding of mobile computing device like tablet, smart phones.
When we talk about ARM CPU terminology, it is critical to make it clear what is ARM Architecture, what is ARM Core design, and what is third party vendor design.
The following table shows the difference.
- ARM Architecture: ARMv1, ARMv2, ARMv3, ARMv4, ARMv5, ARMv6, ARMv6-M, ARMv7-M, ARMv7-R, ARMv7-A, ARMv8-A, these are for ARM achitecture. It defines instruction set.
The suffix “-M” means for microcontroller; “-R” for real time processor; “-A” for application processor.
Companies (like Apple, Nvidian, Qualcomm) can obtain an ARM architectural licence for designing their own CPU cores using the ARM instruction sets.
It is like Java language specification produced by Sun Microsystem.
- ARM Core design: ARM makes Core design based on ARM arhcitecture specification, e.g. ARM Cortex-A5, ARM Cortex-A7, ARM Cortex-A8, ARM Cortex-A9, ARM Cortex-A12, ARM Cortex-A17, these are ARM designed core based on ARM architecture ARMv7-A. ARM can license these IP to third vendor like Texas Instrument to make the actual chip; e.g. beagleboard uses chips from TI. It is like Sun microsystem designs Java Virtual Machine (JVM) reference implementation based on Java lanaguage specification. This opens a wide door to many small companies to produce ARM based chip. I feel this is one of key factors made ARM so successful. Even big company like Freescale, it licenses ARM Core design.
- Third party vendor Core design: companies like Apple, Nvidia, Qualcomm have very strong design skills, they licence ARM architecture and design core for themselves and make chip. This is like a third party company takes Java language specification and implement a itsown Java Virtual Machine.
Take a few examples:
- Beagleboard-XM (my toy): it uses ARM SoC from Texas Instrument, which is licensed ARM Core design Cortex-A8 from ARM holding.
- Raspberry PI 2 model B (used in my lab): it uses ARM SoC from Broadcom BCM2836 quad-core ARM Cortex-A7, which is licensed ARM Core design Cortex-A7 from ARM holding.
- Galaxy S3 (my old previous phone): It uses Samsung Exynos 4, which licenses ARM Core design ARM Cortex-A9, quad-core processor.
- LG G2 phone (my current phone): it uses Qualcomm Snapdragon 800 MSM8974, which licenses ARM architecture ARMv7-A, and create Qualcomm's Krait series. Its performance is somehwere between ARM Cortex-A9 and Cortex-A15.
- Iphone 5S (my wife's phone): It uses Apple A7, which licenses ARM architecture ARMv8-A, dual core processor.
- Iphone 6 (my daughter's phone): It uses Apple A8, which also licenses ARM architecture ARMv8-A, dual core processor, but with more performance and consume less power (20nm).
- Ipad Air (my son's toy): It uses Apple A7, which licenses ARM architecture ARMv8-A, dual core processor.
ARM processors are being used in the following markets:
This is very low end market, there are players like Atmel, NXP. The lowest price could go down to $0.65/unit, even cheaper than a toothpaste. This is a booming market.
Mobile computing device
This is most exciting market right now as mobile internet is taking off, most tablets, smartphones are running ARM chip. Many players like Samsung, Qualcomm, Apple, Nvidia etc.
The change is happenning now in this market. The vendors like Freescale is coming on board, license ARM Core design, add itsown peripheral devices around core. There are players like Freescale, Marvell, Broadcom, Applied Micro.
I don’t think there is much happenning in this area. Microsoft released ARM based Windows, it seems not going anywhere.
There is an attempt to introduce ARM into server market, AMD is spending effort right now. But I’m not sure how far it can go. I feel for server market, the available applications might be the key.