Radeon serie X1000: le nuove GPU ATI

Radeon serie X1000: le nuove GPU ATI

Dopo una lunga attesa, ATI presenta le prime soluzioni video basate su architetture R520, RV530 e RV515, destinate a rivoluzionare tutti e 3 i principali segmenti di mercato. Architettura Shadel Model 3.0 e processo produttivo a 90 nanometri caratterizzano queste tecnologie, qui analizzate nell'architettura

di , pubblicato il nel canale Schede Video
ATIRadeonAMD
 

Un nuovo memory controller

L'efficienza dell'architettura di un chip video può trovare, nel controller memoria, un importante collo di bottiglia alle prestazioni. Per questo motivo ATI ha introdotto un nuovo memory controller nelle schede Radeon X1000, completamente rinnovato rispetto a quello implementato nelle architetture R4xx.

memory_controller_1.jpg (30170 bytes)
memory controller R4xx

Il controller memoria delle schede Radeon basate su chip R4xx prevedeva che tutte le chiamate fatte dai vari client a dati contenuti nella memoria, dovessero passare in modo centralizzato attraverso il memory controller. Questo approccio, visivamente riassunto nello schema qui sopra riportato, ha quale chiaro collo di bottiglia la necessità di far passare tutti i comandi all'interno del controller memoria, con possibile introduzione di latenza nel caso in cui i comandi aumentino di numero nell'unità di tempo.

memory_controller_2.jpg (47809 bytes)
memory controller R5xx

Il memory controller implementato nelle architetture Radeon 1000, viceversa, parte da un approccio differente. Il controller, chiamato X1K, è posto al centro ma i vari client possono ottenere i dati direttamente senza che questi debbano ritornare al memory controller. Spieghiamo il funzionamento con un esempio: un client richiede al memory controller dei dati presenti nella memoria; quest'ultimo stabilisce quale sia la memoria DRAM che può eseguire questa richiesta, e invia il comando. Il dato richiesto parte dalla memoria DRAM individuata, spostandosi lungo il bus ring (l'anello esterno nello schema) sino a giungere al  ring stop più vicino al client che ha eseguito quella richiesta.

memory_controller_3.jpg (44563 bytes)

Il nuovo memory controller con ring bus a 512bit non dev'essere confuso con un memory controller a 512bit di ampiezza; quello implementato nella soluzione R520 è infatti del tipo a 256bit, esattamente come per le architetture NVIDIA di pari fascia di prezzo. Il memory controller opera quindi con la stessa ampiezza di banda di quello previsto per le soluzioni R480, ma ha connessioni dirette con i chip DRAM a 32bit per ciascun chip memoria montato sulla scheda, rispetto ad un approccio con 4 canali a 64bit di ampiezza, che gestiscono ciascuno 2 chip memoria.

memory_controller_4.jpg (70134 bytes)

Il memory controller implementa, stando alle informazioni forniteci da ATI, varie funzionalità di Arbitrarion che dovrebbero permettere di ottenere una migliore efficienza complessiva nella ricerca dei dati da fornire ai vari client, a seconda delle richieste da questi fatte.
Il memory controller può inoltre venir aggiornato nella propria logica di gestione arbitraria, attraverso nuove versioni di driver. A seconda delle applicazioni, le richieste dei vari client possono essere pesate tra di loro; questo implica che il memory controller esegue con priorità massima particolari richieste dei client che considera essere prioritarie rispetto ad altre.

cache_1.jpg (18942 bytes)

cache_2.jpg (22224 bytes)

Non contenta di aver stravolto il funzionamento del memory controller, ATI ha eseguito un’ulteriore profonda ottimizzazione di tutte le operazioni di gestione dei dati lavorando innanzitutto sul quantitativo e sulla tipologia di cache implementata. In particolare, tutti i processori grafici visti fino ad ora utilizzano cache con mappatura diretta o associativa a N vie. Il nuovo memory controller, invece, include una cache di tipo “full associative” in grado di far riferimento non solo ad un blocco di memoria limitato, ma virtualmente alla totalità della memoria. Conseguenza di tale funzionamento è una significativa riduzione delle richieste verso la banda passante esterna ed un più efficiente utilizzo di quest’ultima. ATI ha stimato in casi bandwidth bound, cioè limitati dalla banda passante, un incremento dell’efficienza complessiva del 25% grazie a questa nuova architettura della cache.

hyper_z.jpg (60338 bytes)

Concludiamo l’analisi delle novità del memory controller analizzando le innovazioni apportate alla tecnologia Hyper-Z. Gli ingegneri canadesi hanno fatto uso della precisione di calcolo in floating point a 32 bit per migliorare le loro tecniche di Hidden Superficial Removal, cioè di rimozione delle superfici nascoste: la nuova architettura alla base di R520 identifica fino a 65% di pixel nascosti in più rispetto a R480. Infine, anche gli algoritmi di compressione dei dati relativi allo z-buffer sono migliorati ed ora raggiungono il livello di compressione più elevato (8:1) in più occasioni.

La totalità di queste innovazioni rende R520 estremamente efficiente nella gestione della banda passante, un vantaggio particolarmente significativo nel rendering alle alte risoluzioni e con antialiasing e filtro anisotropico abilitati.

 
^