# Accelerated Graphics Port

L'Accelerated Graphics Port (AGP) è un bus di collegamento sviluppato da Intel nel 1996 come soluzione per aumentare prestazioni e velocità delle schede grafiche connesse ai PC.
A partire dal 2004, l'interfaccia AGP è stata progressivamente abbandonata in favore della PCI Express (PCIe). Pochi anni dopo, infatti, le schede PCI Express erano ormai le uniche in commercio e ben pochi modelli AGP erano disponibili.

## Storia

L'interfaccia si basa sullo standard PCI 2.1 e per questo effettua trasferimenti a 32 bit alla frequenza base di 66 MHz (il doppio dello standard PCI). Poiché il trasferimento dei dati avviene in modalità parallela, non è possibile una comunicazione bidirezionale contemporanea.
L'idea con cui viene creata è quella di permettere un accesso diretto alla memoria RAM del computer da parte della scheda grafica, in modo da poter gestire texture e oggetti 3D molto voluminosi.
Lo slot AGP compare per la prima volta su una scheda madre con il chipset Intel 440LX, prodotto all'inizio del 1997. In breve tempo la Nvidia sviluppa le prime schede grafiche basate su GPU TnT, e il chipset rivela i suoi problemi nel fornire una corretta alimentazione alla scheda grafica. Le soluzioni trovate sono diverse: alcuni produttori si affidano alla successiva versione del chipset Intel, il modello 440BX, che supporta l'alimentazione a 3,3 V. Altri riducono la richiesta di potenza delle GPU, passando dal processo produttivo a 0,25 micron a quello a 0,18 micron. Questo accorgimento permette di ridurre il consumo elettrico e il calore generato, nonostante significativi aumenti della frequenza operativa.
Nell'aprile del 1999 viene diffusa la specifica dell'AGP Pro, ritenuta la soluzione a tutti i problemi di alimentazione. AGP Pro è retro-compatibile e viene prodotto in tre versioni diverse: la 1,5 V, la 3,3 V e la versione Universal, compatibile con entrambe le tensioni. Lo slot AGP assume così dimensioni e configurazioni diverse a seconda delle tensioni, in modo da impedire l'inserimento di una scheda in uno slot di tipo errato. Gli slot AGP Pro vengono ulteriormente perfezionati, in modo da poter fornire prima fino a 25 W e, successivamente, 50 W e addirittura 110 W di potenza. Inoltre viene incrementata la frequenza di trasmissione dati per ottenere un flusso di dati sempre maggiore tra la scheda video e la memoria fisica.

## Revisioni

La prima versione dello standard AGP raddoppiava la banda passante rispetto a un normale slot PCI perché ne raddoppiava la frequenza, raggiungendo quindi i 266 MB/s, ma era capace di funzionare anche in modalità 2x e raggiungere i 533 MB/s effettuando ben due trasferimenti per ciclo di clock. Successivamente, le versioni 2.0 e 3.0 hanno introdotto la possibilità di 4 e 8 trasferimenti per ciclo di clock, giungendo alla odierna frequenza equivalente di 533 MHz. Per prevenire problemi di compatibilità tra le differenti versioni, è sempre previsto il funzionamento in modalità safe 1x, quindi a 266 MB/s. Questa modalità viene attivata automaticamente dal BIOS in caso di problemi.
* AGP 1.0
** AGP 1x: 266 x 1 = 266 MB/s
** AGP 2x: 266 x 2 = 533 MB/s
* AGP 2.0
** AGP 4x: 266 x 4 = 1066 MB/s
* AGP 3.0
** AGP 8x: 266 x 8 = 2133 MB/s
La versione 3.0 è stata l'ultima evoluzione di questo bus, ed è stato rimpiazzato dal più veloce PCI Express, il quale ha sostituito anche l'interfaccia PCI. In questo si elimina il principale collo di bottiglia per quanto riguarda la grafica 3D, che è stato storicamente proprio lo slot AGP.

## Alimentazione

Esistono tre tipi di alimentazione previsti dallo standard:
* AGP 1,5 V
* AGP 3,3 V
* AGP Universal (compatibile con entrambi i precedenti)
La molteplicità delle possibili velocità di trasmissione dei dati e dei voltaggi ha portato a problemi di compatibilità, specialmente per quanto riguarda le vecchie schede madri. A partire da quei modelli che supportano l'AGP 3.0, i produttori si sono sforzati per supportare tutte le possibili configurazioni.
Gli ultimi modelli di schede grafiche con slot AGP, come ad esempio la ATI Radeon HD 4670, richiedevano troppa potenza perché lo slot AGP potesse sopperire a questa richiesta. Così, furono messe in commercio alcune schede grafiche con connettori Molex per un'alimentazione ausiliaria. Questa sovralimentazione non verrà abbandonata nonostante le più evolute specifiche di alimentazione del PCI Express (maggiori rispetto a quelli dell'AGP); infatti, nel 2007 si trovavano già in commercio schede video PCI Express di fascia alta che richiedevano un'alimentazione aggiuntiva.
Per riconoscere i tre tipi di alimentazione sono stati predisposti degli slot e dei pettini per le schede leggermente diversi: smontando la scheda video, coi pin in basso e il connettore VGA a sinistra (vedi foto in basso), va osservato il secondo pin da destra. Se questo è connesso alla circuiteria della scheda, questa supporta la modalità 1,5 V, altrimenti la scheda supporta la modalità 3,3 V. Lo slot AGP invece è più facilmente distinguibile. Se il separatore è posto verso la sinistra dello slot (verso il retro del case) lo slot supporta unicamente i 3,3 V, se è posto a destra (verso il fronte del case) esso supporta unicamente l'alimentazione a 1,5 V. Se invece non sono presenti separatori nello slot, questo è di tipo Universal e risulta compatibile con tutte le diverse alimentazioni.
* AGP 3,3V
* AGP 1,5V
* AGP Universal

## Apertura porta AGP

L'apertura della porta AGP può essere impostata tramite il BIOS sui diverse misure di MB, che generalmente sono 4, 8, 16, 32, 64, 128, 256, dove con l'avanzare delle prestazioni dell'hardware i valori più bassi non vengono più proposti e generalmente il valore minimo è di 64 MB, questo valore serve per dedicare parte della memoria PCI all'indirizzo della memoria grafica. Tale apertura vincola il peso delle texture da utilizzare, in quanto la quantità di RAM di sistema dedicata alla scheda grafica per memorizzare le texture viene vincolata da tale parametro.