# Super Video Graphics Array

Super Video Graphics Array, quasi sempre abbreviato in Super VGA o Ultra VGA o semplicemente SVGA o UVGA, è un termine generico che copre una vasta gamma di standard relativi al collegamento video per computer. Promosso inizialmente dalla Video Electronics Standards Association, permette di estendere le prestazioni del precedente standard video VGA, sia per risoluzione che per profondità di colore.

## Origini

Lo standard SVGA fu proposto per la prima volta nel 1989, inizialmente con una risoluzione di 800×600 pixel e 4-bit per pixel, ossia con 16 colori. Negli anni successivi questa risoluzione iniziale fu estesa a 1024×768 8-bit per pixel e oltre, dando origine a diverse nomenclature. Nello specifico lo standard SVGA si riferisce alla risoluzione di 800x600 pixel, ma il termine è stato poi genericamente esteso alle altre specifiche risoluzioni (vedi anche tabella risoluzioni).

## Tecnologia

Le precedenti schede video CGA e EGA utilizzavano una codifica digitale per visualizzare i colori, e potevano operare solo ad una frequenza ben precisa. Con la VGA veniva introdotto il segnale analogico per la trasmissione dell'informazione relativa al colore fra la scheda video e il monitor; questo ha permesso in seguito il superamento del numero di colori visualizzabili dalla vecchia VGA, virtualmente infiniti anche se limitati dalla video RAM presente sulla scheda video. Pochi mesi dopo la prima introduzione dello standard SVGA, sono apparse sul mercato schede video in grado di operare con una profondità di colore di 24-bit, ossia 8 bit per ciascuna componente di colore (oltre 16 milioni di colori).
Lo standard SVGA definì anche un set di regole che permettevano di superare il limite di frequenze fisse di sincronismo orizzontale e verticale, consentendo così di avere sia delle frequenze di aggiornamento più alte, sia diverse risoluzioni, aprendo così la strada alla produzione di nuove schede video e monitor sempre retrocompatibili e combinabili in modo libero, mentre precedentemente ciascuna scheda video, CGA, EGA e VGA, richiedeva un monitor specifico.

## Connettori
### Connettore VGA Originale

Le schede video SVGA del 1989 utilizzano lo stesso connettore della VGA originale:
Identificazione dei pin :
| Pin | Funzione |
| 1 | Rosso (video) |
| 2 | Verde (video) |
| 3 | Blu (video) |
| 4 | Monitor-ID Bit 2 |
| 5 | Massa |
| 6 | Rosso (massa) |
| 7 | Verde (massa) |
| 8 | Blu (massa) |
| 9 | [chiave] |
| 10 | Sincronismo (massa) |
| 11 | Monitor-ID Bit 1 |
| 12 | Monitor-ID Bit 0 |
| 13 | Sincronismo Orizzontale |
| 14 | Sincronismo Verticale |
| 15 | [Non connesso] |

### Connettore VESA VGA PnP

Nel 1995 venne introdotto il DDC2B e il segnale EDID, che permise il plug and play del monitor, il connettore venne modificato in:
Identificazione dei pin VESA VGA :
| Pin | Funzione |
| 1 | Rosso (video) |
| 2 | Verde (video) |
| 3 | Blu (video) |
| 4 | Non connesso e riservato |
| 5 | Massa |
| 6 | Rosso (massa) |
| 7 | Verde (massa) |
| 8 | Blu (massa) |
| 9 | +5 V |
| 10 | Sincronismo (massa) |
| 11 | Non connesso |
| 12 | Segnale seriale DDC |
| 13 | Sincronismo Orizzontale |
| 14 | Sincronismo Verticale |
| 15 | Clock DDC |
Note
* Il segnale video è analogico RGBHV (ossia usa la codifica RGB più i sincronismi orizzontale e verticale separati) 0,7 Vp-p/75 Ω.
* Il segnale DDC è digitale in TTL su un bus di trasmissione DDC2B su I²C che, di per sé, sarebbe bidirezionale ma in pratica opera in modo unidirezionale, secondo la codifica EDID.
* Il segnale DDC non è indispensabile; il monitor può operare anche solo con la connessione RGBHV. Su lunghe distanze il bus DDC solitamente non viene utilizzato.
* L'interfaccia solitamente può operare fino ad una frequenza di 200 MHz permettendo una risoluzione di 1600×1200 a 75 Hz.
* La frequenza orizzontale normalmente può variare da 31,5 kHz a 90 kHz
* La frequenza verticale normalmente può variare da 60 Hz a 85 Hz

## VESA VGA BIOS Extensions

Per permettere ai programmatori di sviluppare applicazioni che operassero su molte schede video di diversi produttori, la VESA definì un'interfaccia standard per accedere alle funzioni SVGA, la "VESA VGA BIOS Extensions".
Questa interfaccia incorpora diverse funzioni che permettono ai programmi di sapere che modalità video sono disponibili (risoluzione e numero di colori) e come accedere alla memoria video. Per ottenere questo risultato senza dover intervenire sull'hardware delle schede video già messe in commercio, si decise di usare un interrupt software per consentire l'accesso a tutte le procedure di programmazione. I produttori di schede video poterono così pubblicare un driver video VESA implementato in modalità TSR, che si frapponeva così fra il programma applicativo e l'hardware; in questo modo i programmatori poterono sviluppare vari software che potevano operare su hardware differenti.

### Modalità video SVGA definite da VESA

| Modo | Risoluzione | colori |
| 100h | 640×400 | 256 |
| 101h | 640×480 | 256 |
| 102h | 800×600 | 16 |
| 103h | 800×600 | 256 |
| 104h | 1024×768 | 16 |
| 105h | 1024×768 | 256 |
| 106h | 1280×1024 | 16 |
| 107h | 1280×1024 | 256 |
La "VESA VGA BIOS Extensions" fornisce alle applicazioni informazioni sulle specifiche hardware. Per far questo mette a disposizione 6 funzioni:
* Funzione 0: restituiva delle informazioni sul hardware SVGA
* Funzione 1: restituiva l'informazione sulle modalità SVGA
* Funzione 2: impostava la modalità SVGA desiderata
* Funzione 3: restituiva la modalità SVGA operativa
* Funzione 4: salvava e ripristinava lo stato della modalità SVGA
* Funzione 5: restituiva la modalità di accesso alla finestra di memoria video
Per accedere a queste funzioni è necessario impostare il registro AH della CPU a 4Fh, il numero della funzione nel registro AL e richiamare interrupt 10h.
Ancora oggi le specifiche VBE vengono utilizzate per permettere l'output in modalità grafica quando non è disponibile il supporto per una determinata scheda video. Un esempio comune è il driver VESA di Xorg. L'inconveniente maggiore è l'assenza di funzioni grafiche accelerate, in particolare relative alla grafica 3D. Lo standard VBE/AF infatti specifica alcune funzioni grafiche 2D accelerate, anche se il relativo supporto non risulta molto diffuso.

## Tabella di comparazione fra diverse risoluzioni

| Nome | x (larghezza) | y (altezza) | Pixel (×1 milione) | Aspect Ratio | Percentuale di differenza in pixel | Percentuale di differenza in pixel | Percentuale di differenza in pixel | Percentuale di differenza in pixel | Percentuale di differenza in pixel | Percentuale di differenza in pixel | Percentuale di differenza in pixel | Percentuale di differenza in pixel | Versione Widescreen | Dimensione tipica dello schermo |
| Nome | x (larghezza) | y (altezza) | Pixel (×1 milione) | Aspect Ratio | VGA | SVGA | XGA | XGA+ | SXGA | SXGA+ | UXGA | QXGA | Versione Widescreen | Dimensione tipica dello schermo |
| VGA | 640 | 480 | 0,31 | 1,33 | 0% | −36% | −61% | −69% | −77% | −79% | −84% | −90% | | |
| SVGA | 800 | 600 | 0,48 | 1,33 | 56% | 0% | −39% | −52% | −63% | −67% | −75% | −85% | | |
| XGA | 1024 | 768 | 0,79 | 1,33 | 156% | 64% | 0% | −21% | −40% | −47% | −59% | −75% | WXGA | 15" / 38 cm |
| XGA+ | 1152 | 864 | 1,00 | 1,33 | 224% | 107% | 27% | 0% | −24% | −32% | −48% | −68% | WXGA+ | 17" / 43 cm |
| SXGA | 1280 | 1024 | 1,31 | 1,25 | 327% | 173% | 67% | 32% | 0% | −11% | −32% | −58% | | 17-19" / 43-48 cm |
| SXGA+ | 1400 | 1050 | 1,47 | 1,33 | 379% | 206% | 87% | 48% | 12% | 0% | −23% | −53% | WSXGA+ | |
| UXGA | 1600 | 1200 | 1,92 | 1,33 | 525% | 300% | 144% | 93% | 46% | 31% | 0% | −39% | WUXGA | 20" / 51 cm |
| QXGA | 2048 | 1536 | 3,15 | 1,33 | 924% | 555% | 300% | 216% | 140% | 114% | 64% | 0% | WQXGA | 30" / 76 cm |