CPU

Qualcomm Snapdragon S4: CPU Krait e grafica Adreno

Pagina 2: Qualcomm Snapdragon S4: CPU Krait e grafica Adreno

Qualcomm Snapdragon S4: CPU Krait e grafica Adreno

Il portfolio prodotti di Qualcomm ha ormai una storia: i suo primi SoC mobile della famiglia Snapdragon risalgono al 2008, con la piattaforma S1, e ora abbiamo per le mani la serie S4 – la quarta generazione. Dietro al nome Qualcomm S4 inoltre ci sono quattro famiglie di prodotti, ognuna con differenti chip organizzati per gestire specifiche attività.

Il test che vi proponiamo in questo articolo include due componenti dellla serie S4 Pro, i modelli MSM8960T e APQ8064: il primo è un modello dual core Krait (successore dello Scorpion, usato nella terza generazione di SoC Snapdragon) e il secondo è la versione quad-core. Entrambi sono prodotti a 28nm, dotati dello stesso motore grafico Adreno 320. Un'altra differenza è la presenza all'interno del MSM8960T del modulo radio, assente nel secondo.

Le serie S4 Plus e Play sono pensate invece per gli smartphone e i tablet, e aggregano 14 SoC, con e senza modem. Nella gerarchia di Qualcomm, S4 Pro è la piattaforma di fascia più alta utilizzabile nei dispositivi mobile, ed è per questo che abbiamo scelto il modello APQ8064.

Nonostante occupi la seconda posizione nella linea S4, il segmento Pro è certamente orientato alle prestazioni. Come detto, l'APQ8064 è dotato di quattro core Krait che operano a una velocità compresa tra 1.5 e 1.7 GHz. Qualcomm non ci ha permesso di visionare il diagramma a blocchi dell'APQ8064, ma lo si può immaginare simile a quello del MSM8960, con un piccolo sottosistema radio (solo Wi-Fi e Bluetooth), e un paio di core in più.

Ogni core è dotato di una cache dati L1 da 16 KB e una cache istruzioni anch'essa di 16 KB, mentre ogni coppia di core condivide 1 MB di cache L2. Nella tabella qui sotto potete vedere altre specifiche delle due architetture, confrontate con i design Cortex A9 e Cortex A15.

Confronto architettura Cortex-A9 Cortex-A15 Scorpion Krait
Definizione pipeline Otto stadi 15/17-24 stadi
(Integer/FPU)
10 stadi 11 Stadi
Esecuzione Out-of-Order Parziale
Processo produttivo 45/30/32 nm 32/28 nm 65/45 nm 28 nm
Configurazione core Single, Dual, Quad Dual, Quad Single, Dual Dual, Quad
Cache L1: 32 KB + 32 KB
L2: 1 MB
L1: 32 KB + 32 KB
L2: 4 MB max
L1: 32 KB + 32 KB
L2: 256 kB (per core)
L1: 16 KB + 16 KB
L2: 1 MB (per dual-core)
DMIPS/MHz 2.5 3.5 2.5 3.3

Diversamente da altri, Qualcomm è l'unica che ha creato un design personalizzato basato sulla proprietà intellettuale di ARM, investendo molto tempo e denaro nello sviluppo dei propri core. Per esempio, il design dello Scorpion usa la stessa architettura ARMv7-A usata nei Cortex-A8 e A9. Tuttavia, le specifiche Qualcomm rompono la pipeline in differenti stadi, usando un approccio "non-speculative out-of-order execution", e offre la funzione SIMD a 128 bit. Lo Scorpion è quindi diverso dal Cortex A9 standard, e migliore in alcuni benchmark.

Krait migliora le prestazioni in maniera tangibile: ogni core può ora decodificare fino a tre istruzioni per ciclo di clock (prima erano due), come per il design Cortex A15; la pipeline integer è ora lunga 11 stadi, uno in più dello Scorpion, ma non quanto quella dell'A15 che prevede un'implementazione a 15 stadi. In pratica, la pipeline più lunga dovrebbe trasformarsi in un vantaggio per la velocità di clock.

Qualcomm permette anche di gestire le velocità dei core in maniera asimmetrica, e migliorare così l'efficienza energetica con le applicazioni che usano meno risorse. Niente di nuovo sotto questo punto di vista, dato che lo fanno anche Scorpion e l'Nvidia Tegra 3, con il suo "companion core".