Ryzen: un viaggio all'interno della nuova architettura di AMD

Uno sguardo all'interno dei prossimi processori Ryzen di AMD, CPU che hanno il compito di riportare l'azienda nel segmento High-End del mercato.

Ryzen: un viaggio all'interno della nuova architettura di AMD
Articolo a cura di

L'architettura dei processori Ryzen, che andrà ad accompagnare i prossimi modelli di AMD, fa leva su delle caratteristiche e dei protocolli completamente nuovi e scritti da zero. La sua progettazione è durata anni, con cambiamenti che si faranno sentire anche nelle prossime generazioni di CPU. Le feature che Ryzen mette in campo prevedono sia l'adeguamento agli standard raggiunti dalla concorrenza, sia l'introduzione di tecnologie uniche, come per esempio gli algoritmi di deep learning che il componente di branch prediction può sfruttare per effettuare delle previsioni, sempre più raffinati. Il nuovo sistema di cache a bassa latenza infatti, unito all'appena citato apprendimento approfondito, può far salire in maniera notevole le istruzioni processate per ciclo di clock, raddoppiando più o meno il throughput rispetto alle CPU FX a 8 core di precedente generazione.
Gli aspetti noti non sono sicuramente completi, ma AMD ha rilasciato delle immagini che ritraggono i core a bordo dei processori Ryzen, che aggiungono un tassello in più allo schema architetturale col quale l'azienda americana intende tornare alla grande sul mercato.

Un progetto iniziato svariati anni fa

Il design dei chip Ryzen è stato progettato in diversi anni di sviluppo e migliorato poco alla volta, diventando sempre più competitivo. I processori Ryzen sono probabilmente il primo, vero tentativo per cercare di competere nella fascia high-end del mercato sin dall'introduzione dell'architettura Bulldozer, avvenuta circa cinque anni fa. Ryzen apre nuovi scenari di mercato, ed è un passo davvero importante per la società statunitense.

È chiaro che nei piani della casa di Sunnyvale c'era (e c'è) la volontà di rivaleggiare almeno ad armi pari con Intel, e - architetturalmente parlando - è la prima volta che un processore AMD somiglia così tanto ad uno della concorrenza. Non che in questo sia un male ed anzi, è Intel a dettare lo standard nel settore, e l'adeguamento di AMD è certamente indice di un incremento prestazionale sostenuto. Abbiamo ad esempio, per la prima volta, l'utilizzo della tecnologia simultaneous multithreading, una caratteristica che consente al sistema operativo di "vedere" un numero doppio di core fisici (un OS come per esempio Windows lavora con i thread e non con i core direttamente), e che corrisponde sostanzialmente all'Hyperthreading di Intel. Questo cambiamento è stato uno dei tanti voluti da Jim Keller, un ex dipendente di AMD, ora passato a Tesla, che svolgeva la mansione di CPU architect e che ha dato inizio allo sviluppo di Ryzen. Keller è considerato uno dei pionieri del design AMD, ed ha messo la sua mente e le sue idee anche nei processori Athlon XP e Athlon 64, tra i migliori mai prodotti nella storia della compagnia statunitense.
I modelli appartenenti alla famiglia Ryzen sono basati ovviamente sul processo produttivo più raffinato a disposizione dell'ambito CPU, ovvero i 14 nm FinFET. Grazie a delle politiche di gestione e a logiche più efficienti, il die dei modelli di AMD è meno denso rispetto a quello dei prodotti Intel, con benefici in termini di consumi energetici dovuti alla presenza di meno transistor da pilotare. Ma come sono fatti i core a bordo dei processori Ryzen?

I core della famiglia Ryzen

Grazie alle immagini dei core Ryzen possiamo avere un'idea dei componenti presenti sul wafer di silicio. L'unità di calcolo principale comprende una floating point unit e un integer engine. Ogni integer engine è costituito da sei pipeline, quattro ALU e due AGU, che sono le unità logiche che si occupano di generare indirizzi. Ogni AGU può caricare 32 byte per ciclo di clock, suddivisi in due diverse linee da 16 byte ciascuna, grazie ad una cache associativa ad otto vie a 32 kB. Secondo AMD, passare da una cache write-through ad una cache write-back fa risparmiare tantissime situazioni di stallo che possono accadere in diverse porzioni di codice. Le operazioni di caricamento e storage nella cache sono anche dotate di una latenza più bassa rispetto alle cache di quarta generazione, cioè dell'architettura Bulldozer con core Excavator. Bulldozer è un design relativamente affamato di potenza, e le cache lente erano una delle motivazioni per i quali i processori basati sulla suddetta architettura avevano delle prestazioni single thread piuttosto scarne. Per non compiere lo stesso errore del passato, quindi, AMD ha effettuato tanto lavoro per minimizzare i tempi di attesa per le operazioni relative alla cache.
La cache di livello 2 e la cache di livello 3 sono state accorpate per minimizzare i tempi di accesso ai dati e alle istruzioni dei core, con la cache L3 che è stata pensata per essere estremamente più capiente rispetto al passato. Per il singolo processore, la società di Sunnyvale ha fatto in modo che la cache L3 fosse due volte superiore a quella integrata a bordo dei processori Bulldozer. Essa è direttamente collegata, core per core, alla cache L2, per aumentare il throughput dei trasferimenti tra le due veloci memorie. Il collegamento è stato effettuato tramite uno strato aggiuntivo di metallo conduttivo, per un ponte che rende la cache L2 e la cache L3, di fatto, appartenenti allo stesso blocco.
Una delle più grosse novità che AMD ha portato sui processori Ryzen riguarda - come detto - l'adozione del simultaneous multithreading, abbandonando quindi il clustered multithreading che l'azienda portò sui processori Bulldozer nel 2011. Quest'ultimo non fu per niente un successo, e non è mai stato al livello dell'Hyperthreading di Intel, funzionando diversamente dalla concorrenza e in maniera decisamente peggiore. Il simultaneous multithreading, invece, prende proprio le fattezze dell'Hyperthreading e quindi possiamo aspettarci dei benefici molto molto simili. Bulldozer poteva infatti eseguire due thread identici, tramite due integer engine separati, esimendosi dal processare invece più thread differenti. È chiaro che tale approccio impose tantissimi limiti all'adozione del cluster multithreading, costringendo anche AMD a integrare sul die del processore due integer engine fisici.

Una marea di sensori per altrettanto controllo

Una delle peculiarità più distintive dell'architettura Ryzen è la presenza di una vasta gamma di sensori che verranno utilizzati per monitorare i voltaggi, le temperature, le frequenze e i consumi attuali in qualsiasi momento. Il sistema di sensoristica è parte della famiglia di tecnologie AMD chiama SenseMI.
È con questi sensori che la società di Sunnyvale incrementerà le funzionalità di auto overclocking, con tecniche come XFR, regolando in maniera nativa i voltaggi e le frequenze. Sul die di un singolo processore abbiamo infatti più di 1300 rilevatori di critical path, 48 regolatori che forniscono potenza a determinate zone della CPU, 20 diodi termici e nove sensori in grado di captare le cadute di tensione. Ogni core possiede a monte un regolatore di Volt lineare, che cerca di distribuire il segnale elettrico nella maniera più efficiente possibile al fine di fornire allo stesso core una VID elevata, con un controllo completamente digitale di queste operazioni.

AMD L’architettura Ryzen è un concentrato di tecnologia, e AMD ha impiegato tantissimi sforzi per eliminare i difetti dell’architettura Bulldozer. Il sistema di caching, di pipelining, l’adozione del simultaneous multithreading e le tecnologie facente parti della suite SenseMI fanno dei processori della famiglia Ryzen dei modelli dall’architettura unica, che si distingue dalla concorrenza piuttosto che limitarsi ad emularla. Se tutti questi elementi faranno la differenza rispetto ai modelli di Intel lo vedremo molto presto, visto l'arrivo delle CPU Ryzen previsto per i prossimi giorni.