ATi Radeon 7500

ATi Radeon 7500

Nuova scheda video di fascia media di ATI, la Radeon 7500 rappresenta l'evoluzione dell'originario progetto Radeon. Venduta ad un costo estremamente interessante, vanta buone prestazioni con grafica 3D, ottima qualità d'immagine 2D e con DVD nonché il supporto a funzionalità Dual Monitor

di pubblicato il nel canale Schede Video
ATIRadeonAMD
 

Caratteristiche tecniche

La tabella sottostante riporta le caratteristiche tecniche comparate delle principali schede video nVidia ed ATi attualmente in commercio:

GeForce 3 Ti500 GeForce 3 GeForce 3 Ti200 GeForce 2 Ti Radeon 8500 Radeon 7500 Radeon DDR
Processo produttivo 0.15 micron 0.15 micron 0.15 micron 0.15 micron 0.15 micron 0.15 micron 0.18 micron
Frequenza chip 240 Mhz 200 Mhz 175 Mhz 250 Mhz 275 Mhz 290 Mhz 183 Mhz
Frequenza memoria 500 Mhz 460 Mhz 400 Mhz 400 Mhz 550 Mhz 460 Mhz 366 Mhz
Tipo memoria DDR SDRAM DDR SDRAM DDR SDRAM DDR SDRAM DDR SDRAM DDR SDRAM DDR SDRAM
Dotazione memoria 64 Mbytes 64 Mbytes 64 Mbytes 64 Mbytes 64 Mbytes 64 Mbytes 64 Mbytes
Bandwidth memoria 8.000 Mb/sec 7.360 Mb/sec 6.400 Mb/sec 6.400 Mb/sec 8.800 Mb/sec 7.360 Mb/sec 5.800 Mb/sec
Features ottim.
bandwidth memoria
Lightspeed
Architecture
Lightspeed
Architecture
Lightspeed
Architecture
- Hyper-Z 2 Hyper-Z Hyper-Z
Engine grafico programmabile
T&L (vertex e
pixel shader)
programmabile
T&L (vertex e
pixel shader)
programmabile
T&L (vertex e
pixel shader)
T&L programmabile
T&L (vertex e
pixel shader)
T&L T&L
Pipeline di rendering 4 4 4 4 4 2 2
Texture unit per pipeline 2 2 2 2 2 3 3
Fill rate MPixel 960 800 700 1.000 1.100 580 366
Fill rate MTextel 1.920 1.600 1.400 2.000 2.200 1.740 1.098

La Radeon 7500 è basata sull'originario progetto Radeon DDR, dal quale differisce principalmente per le più elevate frequenze di lavoro. Il passaggio al processo produttivo a 0.15 micron, infatti, ha permesso di ottenere un consistente aumento della frequenza del chip video, passata da 183 Mhz a ben 290 Mhz; la disponibilità a costo più basso di memorie DDR, inoltre, ha pemesso di utilizzare moduli a 230 Mhz (460 Mhz effettivi), contro quelli da 183 Mhz (366 Mhz effettivi) utilizzati sulla scheda Radeon DDR.

Le caratteristiche tecniche del chip Radeon 7500 sono le medesime di quello Radeon DDR; si tratta, pertanto, di una soluzione pensata per l'impiego con giochi sviluppati per le API DirectX 7 e che non integra supporto hardware a funzioni T&L programmabili, pixel shader e vertex shader, presenti sia nelle schede GeForce 3, sia nella Radeon 8500. A difefrenza delle schede nVidia GeForce 2 e GeForce 3, nel chip Radeon ATi ha implementato il supporto a 3 texture unit per pipeline, limitando il numero di pipeline di rendering a 2; questa soluzione permette, sulla carta, prestazioni nettamente più elevate con quei giochi che applichino 3 texture per pixel per passata.

Una possibilità d'impiego delle 3 textures può ad esempio stare nell'utilizzo di una Texture normale + Environment map (che crea le riflessioni di luce) * Gloss map, senza perdita teorica di prestazioni, guadagnando una notevole qualità grafica, come illustrato nell'immagine seguente:

3_texturing.gif (23877 byte)

Tutte le schede video più recenti soffrono una notevole limitazione nell'ottenimento dei più elevati frame rate assoluti, ciò è da imputare alla bandwidth della memoria video; è infatti quest'ultima che rappresenta il vero collo di bottiglia alle prestazioni velocistiche nel momento in cui si utilizza una risoluzione elevata, soprattutto se accompagnata alla profondità colore di 32 bit. Oltre a questo, lo Z-Buffer, cioè la porzione di ram ove è conservata la posizione di un punto nello spazio 3D,è uno dei fattori che impegnano una considerevole porzione di bandwidth. Lo Z-buffer contiene le informazioni sulla profondità di un punto, ovvero sulla distanza rispetto all'osservatore; ogni valore dello Z-buffer è formato da un numero variabile di bit che ne determina la precisione, ad esempio, con uno Z-buffer a 16 bit ogni punto può avere 216 =65556 valori possibili di profondità. Uno Z-buffer a 32 bit quindi consente maggiore dettaglio e precisione ma produce una mole di dati decisamente più elevata, che va a sovraccaricare ulteriormente la bandwidth della ram, sulla quale già gravano i dati relativi alle textures.

Con la tecnologia Hyper Z implementata nel chip Radeon, ATI intende appunto diminuire questa mole di dati in modo da liberare bandwidth, che potrà esser quindi resa disponibile per svolgere più rapidamente le restanti operazioni. Questa tecnologia consiste in una particolare cache che effettua diversi tipi di compressione dei dati diretti allo Z-Buffer, facendo in modo che la maggior parte dei poligoni che non sono visibili all'osservatore (perché coperti da altri poligoni) vengano tralasciati nella fase di rendering, diminuendo abbastanza drasticamente la mole di dati da elaborare.

In una scena 3D il numero di poligoni coperti da altri può essere discretamente alto: immaginate ad esempio una scena di uno sparatutto 3D nella quale siano presenti numerose colonne e casse appoggiate sul terreno; tutte le superfici/oggetti coperti da essi non verranno renderizzati, risulta quindi ben intuibile un notevole risparmio di inutili calcoli. Secondo quanto dichiarato da ATI, questo significa un incremento percentuale, a livello pratico, della bandwidth in media del 20%.

Nella stragrande maggioranza dei giochi attuali, le animazioni facciali non sono molto complesse, anzi, spesso piuttosto approssimative. Questo a causa del fatto che tali animazioni (ma non soltanto quelle facciali, anche qualsiasi altro tipo di animazione reperibile in una scena 3D) comportano la necessità di utilizzare una notevole quantità di frames intermedi. Ciò si traduce in un forte appesantimento dei calcoli, che, ovviamente, riduce le prestazioni. ATI ha messo a punto per il chip Radeon un'interessante tecnologia, che dovrebbe consentire di generare un numero nettamente minore di frames, ottenendo comunque un risultato migliore graficamente. La Keyframe Interpolation agisce nella seguente maniera: a partire da una animazione, vengono presi i frame iniziale e finale e calcolati dei frame intermedi sulla base delle variazioni avvenute tra i due frame di partenza e fine; questo permette di ottenere dei frames interpolati e non dover generare troppi frames per avere un filmato sufficientemente fluido e riproducibile senza scatti. L'immagine sottostante mostra chiaramente come il keyframe interpolation operi:

interpol.jpg (27506 byte)

Il frame a sinistra è quello iniziale, mentre sulla destra si trova quello finale; i due frames centrali sono ottenuti per interpolazione dei due frames estremi. La tecnica ricorda molto da vicino le procedure di morphing che molti possessori di PC hanno avuto la possibilità di provare. Tra l'altro questo è un esempio di compressione dei dati relativi ai poligoni da elaborare dall'unità T&L, che vengono inviati dalla cpu; quando questi dati oltrepassano la bandwidth disponibile fra CPU e scheda video (e qua ecco l'utilità della tecnologia Fast Writes AGP4X) l'unità T&L ovviamente non può essere sfruttata appieno, con un calo del polygon rate.

In molti giochi moderni, i movimenti dei personaggi, o animali, vengono realizzati con una tecnologia chiamata "Skeletal Animation" che letteralmente significa "animazioni scheletriche": una serie di "ossa" di poligoni vengono ricoperte dalle textures attraverso la classica serie di coordinate. La posizione di queste coordinate, e quindi della parte di corpo a cui si riferiscono, può variare a seconda dei movimenti di una più "ossa". In questo modo le animazioni sono composte solamente dai movimenti dello scheletro, occupando una quantità di memoria decisamente inferiore rispetto a animazioni basate sullo spostamento dei vertici. Quando però le giunture fra queste "ossa" devono piegarsi, ruotare, o fare qualsiasi altro spostamento, spesso possono formarsi dei "buchi" che non sono certamente realistici (cosa che ovviamente non accade con animazioni basate sulla variazione delle coordinate delle textures). 

ATI ha quindi introdotto una tecnologia, chiamata "Vertex Skinning", accelerata direttamente in hardware, che colma questi spazi vuoti, come evidenziato nelle due immagini di seguito:

matrix1.jpg (11694 byte)

Come potete chiaramente vedere nell'immagine di sopra, fra un "osso" e l'altro si è formato in seguito a un movimento uno spazio vuoto. Di sotto, utilizzando la nuova tecnologia implementata da ATI nel Radeon il problema viene risolto:

matrix2.jpg (12881 byte)

Il Vertex Skinning combina le coordinate dei vertici agli estremi dello spazio vuoto, creando una texture (ottenuta dalla combinazione fra i colori della textures che circondano lo spazio vuoto) che lo colma, con un guadagno di realismo nelle animazioni dei personaggi. Tra l'altro questo effetto è uno di quelli che non richiedono supporto da parte del software, in quanto già la maggior parte dei giochi sfrutta la cosidetta "skeletal animation".

 
^