When you start looking at new mini PCs coming on the market, the first thing you normally search out is the CPU running the device.
Unlike the X86 world where Intel and AMD integrate their own and only their own GPU architecture, CPUs built on ARM technology can mix and match their graphics engines from a range of providers – ARM itself, Vivante, PowerVR and others.
So while you have the main processing engine architecture to consider, you also need to look at the GPU engine built into the CPU, which complicates things considerably.
Cortex A7 or Cortex A9?
At the moment, the vast majority of mini PCs use CPUs built around either ARM’s Cortex A9 architecture or the new Cortex A7 design.
Initially, the first thing about these architectures was that the A9 being older was often manufactured on a 40-nanometre scale, while the A7, also being part of the big.LITTLE dual-CPU solution ARM announced late in 2011, is made at a 28-nanometre scale.
Bottom line, the smaller the scale, the faster you can clock it but also the less power it can use, which means potentially better battery life in smartphones and tablets. In fact, ARM itself said it expected to see the Cortex A7 core appearing in budget $100 smartphones. Further, because of improvements to the overall ARM architecture, those phones would be faster than $500 phones from a couple of years ago.
But even all of that has been messed up by Rockchip’s RK3188 SoC CPU – it’s a quad-core Cortex A9 processor but manufactured at 28nm. The good news is that it combines the performance of Cortex A9 with the power efficiency of 28-nanometre manufacture.
The first major difference between these two Cortex technologies is the L1 and L2 cache memory. While the older Cortex A9 design requires a separate L2 cache memory and ARM’s PL310 cache controller, they’re both integrated into the Cortex A7, which makes for some greater efficiencies.
But if that’s the case, why does everyone say the A9 is faster than the A7?
The first area where the A7 isn’t as good as the A9 is dual-issue instruction decode, often reduced to ‘dual-issue decode’. Keeping it simple, dual-issue decode is the ability to accept, decode and issue two instructions per clock cycle. The more instructions you can process per clock cycle, the faster your CPU performs. The ARM11 architecture, used in chips like Broadcom’s BCM2835 found in the Raspberry Pi, can only issue one instruction per clock; the new Cortex A15 architecture can do three.
The A9 has a complete dual-issue decode mechanism whereas the A7 does not – it cannot dual-issue NEON or floating point instructions (NEON is ARM’s hardware media processing instruction set, similar to Intel’s SIMD extensions). So the A7 is slower from that point of view.
On the subject of NEON itself, this is something you will need to check with Cortex A9 CPUs – NEON is part of the A7 but it’s optional in the A9. That said, most A9-based CPUs I’ve seen include NEON so this shouldn’t be an issue. But it’s worth just making sure. Without NEON, the CPU itself must process video decoding instructions and that will greatly limit video playback performance – instead of getting 1080p H.264 video decoding as you do with NEON, you might be lucky to get 480/576p from the main CPU.
Another major architectural difference is what’s known as ‘out of order execution’ (OoOE). This allows a processor to handle instructions not necessarily in the order in which the app presents them. The idea is to process an instruction stream more efficiently rather than having it wait around while data is still to arrive. Instead of waiting, it can process other instructions that can be performed in the meantime. The Cortex A9 supports OoOE; the A7 doesn’t.
And finally, this shouldn’t make as much of a difference as it does in practice but clock speed plays a factor. While the A7 architecture can approach 1.5GHz, it seems to rarely make it out of the blocks past 1.2GHz. In contrast, most Cortex A9 multi-core CPUs will do at least 1.6GHz. Given the similarities in the architecture, clock speed does still play a role in separating performance.
So bottom line, if you’re deciding Cortex A7 or Cortex A9, the Cortex A9 is older but it is faster and when manufactured at 28nm, it picks up extra power efficiencies that negate some of the benefits of the A7.
The other thing to remember is that while the A7 is being sold as a distinct SoC CPU solution, it was initially designed to be a low-power pair with the new Cortex A15 – to handle the basic operations with much less power consumption than the A15 and provide better battery life overall.
So on an architecture scale and a core-for-core basis, the A9 is still superior to the A7 thanks to its full dual-issue decoding and OoOE. And in practice, it’s higher clock speed.
With it now being manufactured on a 28nm scale, it also now begins picking up power efficiency gains too.
Try these similar stories:
- How they compare – Rockchip RK3188 vs Freescale i.MX 6
- How they compare – Rockchip RK3066 vs Allwinner A20
- How they compare – Allwinner A31 vs MediaTek MT6589
- CPU differences – Rockchip RK3066 vs RK3168
- CPUs compared – Rockchip RK3188 vs MediaTek MT6589
- How they compare: Rockchip RK3188 vs Allwinner A31
- We compare – Qualcomm Snapdragon 200, 400, 600, 800 CPUs
- Rockchip RK32xx quad-core Cortex A12 SoC CPU for 2014
- [CPU specs] Rockchip RK3188
- Dual-core ARM battle: RockChip’s RK3168 vs Allwinner’s A20