Schede grafiche.
I componenti principali di una scheda grafica sono i seguenti:
Processore grafico.
Memoria video.
RAMDAC.
Driver software.
I principali problemi posti dall’elaborazione grafica, consistono nell’elevato
carico elaborativo e nella grande quantità di dati da trasferire dalla memoria di
lavoro del processore a quella della scheda, inoltre le comuni memorie DRAM
non sono adatte come memoria grafica, perché non possono essere lette e
scritte simultaneamente. Ciò significa che il RAMDAC - che legge la memoria
video per convertire i dati binari in segnali analogici - dovrebbe aspettare la CPU
che li scrive e viceversa.
Processore grafico.
Il processore grafico (GPU) evita che sia la CPU ad elaborare le immagini ed
inviare il rilevante quantitativo di dati che ne consegue, alla scheda grafica,
infatti la CPU invia al processore grafico solo dei ‘comandi’, che sono interpretati
dal driver della scheda ed eseguiti dal processore grafico, per costruire le
immagini. La GPU effettua elaborazioni come la costruzione e colorazione delle
bitmap, il dimensionamento e posizionamento delle finestre, il tracciamento
delle linee e dei poligoni, il dimensionamento dei font. Tali operazioni vengono
eseguite dall’hardware del processore grafico, molto più velocemente di quanto
si potrebbe con la CPU; a seguito di queste elaborazioni i dati necessari a
riprodurre l’immagine sul video vengono quindi scritti dalla GPU nel frame
buffer.
Quindi la scheda grafica riduce sia il carico di lavoro della CPU, perché le
elaborazioni dell’immagine sono fatte dalla GPU, sia il traffico sul bus di
sistema, perché i dati che costituiranno l’immagine sul video, sono generati sulla
scheda grafica e la comunicazione con la CPU è limitata ai comandi di
costruzione dell’immagine.
Memoria video.
La memoria dedicata all’immagine del video è chiamata frame buffer. Il frame
buffer inizialmente era allocato nella memoria di lavoro DRAM del sistema,
che però richiede frequenti cicli di refreshing, durante i quali non può essere
letta o scritta. All’aumentare delle prestazioni grafiche, tale soluzione è
diventata inadeguata e si sono dotate le schede grafiche di una propria
memoria video, realizzata con tecnologie particolari, più adatte allo specifico
impiego. In effetti si è avuta una proliferazione di diversi tipi di memoria
video, fra cui:

VRAM e WRAM: memorie DRAM a ‘due porte’, cioè accessibili
contemporaneamente da due dispositivi, possono essere quindi lette per fornire i dati da visualizzare - e scritte - per l’aggiornamento dei
dati - simultaneamente, inoltre hanno un fabbisogno di refresh meno
frequente dei tipi normali.

SDRAM e SGRAM: memorie sincronizzate con i chip grafici, con
capacità di supportare sia scritture a blocchi che a bit, quindi più
adatte alle operazioni grafiche.
La tabella seguente, mostra la memoria richiesta per rappresentare una
immagine sullo schermo, a seconda della risoluzione e del numero di colori.
Le schede video montano mormalmente molta più memoria (32 - 64 Mbyte)
per poter disporre di uno spazio per memorizzare elementi grafici che, in
base al programma in corso, si prevede di utilizzare più volte, evitando di
doverli ricostruire ad ogni ripetizione (per esempio font, finestre, sfondi).
Memoria
video
Risoluzione
Codifica
colore
2Mb
1280 x 1024 16-bit
800 x 600
24-bit
65,536
16.7 milioni
4Mb
1024 x 768
24-bit
16.7 milioni
6Mb
1280 x 1024
24-bit
16.7 milioni
8Mb
1600 x 1200
32-bit
16.7 milioni
N. colori
RAMDAC
L’immagine che appare sullo schermo è memorizzata nel frame buffer, in
formato bitmap, dove ad ogni pixel corrispondono 2 o 3 byte che ne
rappresentano colore e luminosità. Le informazioni binarie contenute nella
bitmap, devono essere convertite in segnali analogici per pilotare il monitor e
determinare dove, quando e con che intensità il ‘pennello’ elettronico deve
colpire lo schermo, nel mentre lo scorre linea per linea. Questo lavoro di
conversione D/A, viene fatto dal RAMDAC 75 -100 volte al secondo e
genera il segnale analogico RGB, che pilota il monitor attraverso il cavo di
collegamento alla scheda video. Il RAMDAC dispone di un un convertitore
digitale analogico (DAC) per ognuno dei tre colori primari del CRT. La
velocità di conversione del RAMDAC e le sue caratteristiche tecniche,
concorrono a determinare sia la frequenza di refresh delle immagini video,
sia il numero di colori rappresentabili sullo schermo, per una data risoluzione.
Driver software
Il ruolo dei driver software nel funzionamento della grafica è altrettanto
importante di quello dell’hardware. In genere il driver ha il compito di
trasformare le richieste di rappresentazione grafica del programma
applicativo, in istruzioni per il processore grafico. Il modo in cui il driver
effettua questa traduzione è di fondamentale importanza, in quanto i
processori grafici dispongono di potenti istruzioni per manipolare dati e
disegnare e ombreggiare le immagini ed è compito del driver attivarle, per
corrispondere al meglio alle richieste del programma applicativo.
In genere c’è un driver per ciascuna risoluzione o profondità di colore, perciò
anche dalla efficienza dei diversi driver, oltre che dal differente carico
elaborativo, dipendono le diverse prestazioni di una scheda grafica, al variare
della risoluzione e della profondità di colore.