Most companies use ready designs of ARM computational cores and GPUs from third-party developers to make their systems on chip. However, some vendors, Qualcomm included, develop their own ARM-compliant computational cores. Such was the Scorpion core in company's older solutions, such is the Krait core in the current Snapdragon S4 systems on chip we'll talk about today.
Qualcomm isn't the only vendor trying to improve the performance and power efficiency of ARM computational cores without using ARM's expertise (e.g., Cortex-A15). As we now know, Apple has done the same in its iPhone 5 based on a new SoC using proprietory ARM-compliant cores. NVIDIA, in turn, has always used native ARM cores, increasing their amount and clock rates (e.g., Tegra 3 with 4 computational cores plus 1 GPU). Yet NVIDIA is also trying to improve the architecture for future solutions to gain an advantage in as many computational tasks as possible.
The benefit of developing your own ARM-compliant microarchitecture is that you get a chance to outdo ARM and offer, say, better power efficiency, vital for mobile devices. The obvious drawback is that you have to spend much time and money on R&D.
As we're already mentioned, Scorpion was Qualcomm's first ARM architecture used in the Snapdragon SoC. That was an optimized ARM Cortex core with in-order execution. Qualcomm's SoCs of 2009-2010 had one or two Scorpion cores clocked at up to 1.5 GHz. In 2011, the competitors (NVIDIA, Texas Instruments, Samsung, etc.) released dual-core SoCs based on the more powerful Cortex-A9, so Qualcomm started lagging behind. However, in 2012, the company leapt forward with the new Snapdragon S4 series based on the ARM-compliant Krait architecture. The latter outperformed Cortex-A9, also being the first mass-produced 28-nm SoC. Besides better cores, Qualcomm's new chips offered built-in power-efficient modems supporting LTE as well as the modified Adreno core with new capabilities and much higher 3D performance.
Snapdragon S4 Lineup Overview
Lineup |
Play |
Plus |
Pro |
Prime |
Model numbers |
MSM8225 MSM8225Q MSM8625 MSM8625Q |
APQ8060A MSM8960 MSM8660A MSM8260A APQ8030 MSM8930 MSM8630 MSM8230 MSM8627 MSM8227 |
APQ8064 MSM8960T |
MPQ 8064 MSM 8974 |
CPU |
2 or 4 Cortex-A5 cores |
2 Krait cores |
2 or 4 Krait cores |
2 or 4 Krait cores |
Core clock |
Up to 1.2 GHz |
1.0–1.7 GHz |
Up to 1.7 GHz |
Up to 2.5 GHz |
GPU |
Adreno 203 |
Adreno 225 or 305 |
Adreno 320 |
Adreno 320 |
RAM |
1 x LPDDR2 |
1-2 x LPDDR2 |
2 x LPDDR2 |
2 x LPDDR2/LPDDR3 |
Modem |
3G/4G |
3G/4G/LTE (selectively) |
3G/4G/LTE (selectively) |
- |
Bluetooth |
3.0, discrete |
4.0, integrated |
4.0, integrated |
4.0, integrated |
Wi-Fi |
802.11n (2.4 GHz), discrete |
802.11n (2.4/5 GHz), integrated |
802.11n (2.4/5 GHz), integrated |
802.11n (2.4/5 GHz), integrated |
Process technology |
45/40 nm |
28 nm |
28 nm |
28 nm |
As you can see, the Snapdragon S4 Play lineup was made for cheaper smartphones, having the lower-end Cortex-A5 cores and GPU, no LTE, one-channel RAM, and a discrete wireless module. You can find it in such devices as Huawei Ascend G330D, HTC Desire X, and HTC Desire SV. The higher-end Plus series can be seen in many well-known smartphones like ASUS Padfone, ASUS Transformer Pad Infinity, HTC Windows Phone 8S, HTC One S, HTC Evo 4G LTE, Sony Xperia T/V, Nokia Lumia 820/920, Samsung Galaxy S III, and Motorola Droid Razr HD/Maxx HD. The next lineup, Snapdragon S4 Pro, powers LG Optimus G, Xiaomi MI-2, ASUS Padfone 2, HTC J Butterfly, HTC Droid DNA, and Google Nexus 4. Finally, the Prime lineup aims at the digital TV segment.
In September 2012, Qualcomm released a couple of new quad-core S4 Play models, MSM8225Q and MSM8625Q, for cheaper smartphones. These are the improved MSM8225 and MSM8625 SoCs, with twice as many Cortex-A5 cores, support for faster LPDDR2, and high-resolution video encoding. MSM8625Q's modem supports UMTS/CDMA, while the other SoC provides only UMTS. Neither of the two supports Wi-Fi, FM, and Bluetooth 4.0 natively, but it can be helped with the discrete Qualcomm Atheros AR6005 and WCN2243 chips. Finally, there's MSM8930, a Snapdragon S4 Plus SoC supporting all the network standards used in China: UMTS, CDMA, TD-SCDMA, and LTE-TDD. Indeed, with Snapdragon S4 Qualcomm has offered the widest range of solutions, which can satisfy any vendor.
Krait Architecture
In the heart of the Snapdragon S4 SoC is the Krait core. It powers all the Snapdragon S4 lineups except for Play. While the older Scorpion still has much in common with ARM Cortex-A8, being different just in terms of SIMD performance, Krait really brings the processor part to a higher level.
The new advanced processor is more similar to the modern Cortex-A15 solutions. The Krait core can fetch and decode three ARMv7-A instructions per clock cycle, while Scorpion and Cortex-9 can only handle two. This significantly increases the number of instructions per clock (IPC). Also, Krait boasts of increased performance in floating point operations and 128-bit SMD instructions.
Now let's compare the architectures:
|
ARM Cortex-A5 |
ARM Cortex-A8 |
ARM Cortex-A9 |
Qualcomm Scorpion |
Qualcomm Krait |
ARM Cortex-A15 |
Decoders |
1 |
2 |
2 |
2 |
3 |
3 |
Pipeline stages |
8 |
13 |
8 |
10 |
11 |
>15 |
Out-of-order execution |
- |
- |
Yes |
Yes (non-speculative) |
Yes |
Yes |
Integrated FPU |
VFPv4-D16 (optional) |
VFPv3 |
VFPv4-D16 (optional) |
VFPv3 |
VFPv4 |
VFPv4 |
NEON instructions |
128-bit (optional) |
128-bit (partial) |
MPE 64-bit (optional) |
128-bit |
128-bit |
128-bit |
Process technology |
40 nm |
65/45 nm |
45/40/32 nm |
65/45 nm |
28 nm |
32/28 nm |
L1 cache |
Up to 16+16 KB per core |
32+32 KB |
32+32 KB |
32+32 KB |
16+16 KB (4+4 L0) |
32+32 KB per core |
L2 cache |
exclusive |
512 KB |
Up to 1 MB |
256 KB per core |
0.5 MB per core |
Up to 1 MB per core |
Cores |
1–4 |
1 |
1–4 |
1–2 |
2–4 |
2–8 |
Though Krait provides in-order instruction fetch and decoding, the execution is still out-of-order, as in Cortex-A15. While Scorpion has only three instruction execution ports, Krait has seven. Also, Krait can provide up to four instructions simultaneously. These additional ports increase IPC and the overall performance.
Qualcomm has also added an extra pipeline stage: Scorpion has 10 while Krait has 11. To compare, ARM's Cortex-A15 has 15 pipeline stages. On the one hand, the longer pipeline of Cortex-A15 should provide higher clock rates. On the other, Qualcomm cores have more custom logic blocks, which can also boost clock rates. All things considered, it's possible that Krait's shorter pipeline will provide a small advantage over Cortex-A15 here. As for the rest of the functionality, Krait and Cortex-A15 are quite similar, but the latter can operate in the octacore mode and has more L1 and L2 cache per core. In turn, Krait's peculiarities (out-of-order execution in particular) and higher clock rates can give it an advantage over Intel's Medfield.
Write a comment below. No registration needed!