AGP

AGP，全稱為-{zh-hans:加速图形接口; zh-hant:加速影像處理埠;}-（），是電腦主機板上的一種高速點對點傳輸通道，供顯示卡使用，主要應用在三維電腦圖形的加速上。AGP是在1997年由Intel提出，是從PCI标准上建立起来，是一种顯示卡专用接口。推出原因是为了消除PCI在处理3D图形时的瓶颈。AGP通常會被視為-{zh-hans:计算机总线; zh-hant:電腦匯流排;}-的一種，但這樣的分法嚴格來說是錯誤的；因為一組-{zh-hans:总线; zh-hant:匯流排;}-可容許多個設備共用，而AGP卻不是。AGP不能多個插槽共用一組-{zh-hans:总线; zh-hant:匯流排;}-。一些主機板設有多條獨立的AGP-{zh-hans:插槽; zh-hant:埠;}-，-{zh-hans:现时; zh-hant:目前;}-AGP已基本被PCI Express所取代。

歷史 
AGP插槽首次在x86兼容系統出現，是在Socket 7 Pentium和Slot 1 Pentium II主機板上。1997年10月中旬，Intel於i440LX Slot 1晶片組上加入AGP的支持，其後主要主機板供應商也大量推出一系列相關的產品。

最早支持AGP的Socket 7晶片組是VIA Apollo VP3、SiS 5591/5592、以及ALi Aladdin V，而Intel從未發布配備AGP接口的Socket 7晶片組。1997年11月，大眾電腦展示了首塊使用VIA Apollo VP3晶片組的Socket 7 AGP主機板，名為FIC PA。1998年，磐英科技的主機板EPoX P55-VP3也使用VIA Apollo VP3晶片組，是第一塊推出市場的相關主機板。

於早期支持AGP的視訊晶片包括Rendition Vérité V2200、3dfx Voodoo Banshee、Nvidia RIVA 128、3Dlabs PERMEDIA 2、Intel i740、ATI Rage系列、Matrox Millennium II、和S3 ViRGE GX/2。一些早期AGP顯示卡使用PCI線路連接圖形處理器然後再橋接到AGP，這導致新插槽對顯示卡的得益減少，剩下只有66 MHz的前端總線時脈，以及相倍PCI傳輸頻寬的改善。這些卡的例子有Voodoo Banshee、Vérité V2200、Millennium II和S3 ViRGE GX/2。不過，Intel的i740在設計上明確要使用新的AGP功能，因為它只能從AGP記憶體中處理紋理畫面，使PCI版本的顯示卡難以執行。

微軟首次推出AGP支持是在Windows 95 OEM Service Release 2版（OSR2 version 1111或950B）上，透過USB補充OSR2修補程序更新。安裝了該修補程序後，Windows 95系統會升級為Windows 95版本4.00.950。另外，首個支持AGP的Windows NT核心操作系統版本，是1997年發表的Windows NT 4.0 Service Pack 3。而Linux於1999年透過AGPgart內核模塊加入對AGP高速數據傳輸的支持。

相比起PCI的優勢 
AGP可把幀緩衝記憶體更有效地使用，除3D繪圖外，2D繪圖的表現也得以加強。

隨著計算機越來越多地以圖形為導向，連續幾代的圖形適配器（graphics adapter）開始挑戰PCI（一種共享頻寬的匯流排）的極限。這導致了AGP的發展，這是一種專門用於圖形適配器的 "匯流排"。

AGP在很大程度上是基於PCI的，實際上AGP匯流排是傳統PCI匯流排的超集，AGP卡必須作為PCI卡。

與PCI相比，AGP的主要優勢在於它提供了插槽和處理器之間的專用通道，而不是共享PCI匯流排。除了沒有爭奪匯流排之外，直接連接還可以獲得更高的時鐘速度。

第二大變化是AGP使用了分離式事務（split transactions），即PCI事務的地址和數據階段是分開的。卡可以發送許多地址階段，主機按順序處理。這就避免了在讀操作過程中，匯流排空閒的情況下，出現長時間的延遲。

第三，PCI匯流排交握（PCI bus handshaking ）被簡化。與PCI匯流排事務的長度是利用FRAME#和STOP#信號逐週期協商（cycle-by-cycle basis ）的不同，AGP傳輸總是8位元組長度的倍數，總長度包含在請求中。此外，不是對每個字使用IRDY#和TRDY#信號，而是以4個時鐘週期為單位的數據塊進行傳輸（在AGP 8×速度下為32個字），並且只允許在數據塊之間暫停。

最後，AGP允許邊帶定址（sideband addressing）（在AGP 1.0和2.0中是可選的，在AGP 3.0中是必須的），這意味著地址和數據匯流排是分開的，因此地址階段根本不使用主地址/數據(AD)線。這是通過增加一個額外的8位 "邊帶地址 "（SideBand Address）匯流排來實現的，當其他AGP數據通過32條主地址/數據(AD)線流動時，圖形控制器可以通過該匯流排發出新的AGP請求。這就提高了AGP數據的整體吞吐量。

這種對記憶體讀取性能的極大改善，使得AGP卡直接從系統記憶體讀取紋理貼圖（texture）變得實用，而PCI顯卡則必須從系統記憶體複製到顯卡的顯存。系統記憶體是通過圖形地址重映射表(Graphics address remapping table，GART)來提供的，GART根據紋理存儲的需要分配主內存，AGP可用的最大系統內存量被定義為AGP孔徑（Aperture）。

AGP的版本

標準版本 
1997年，英特爾推出了首個AGP版本，名為“AGP 1.0規格”，包括了1倍速（1x）和2倍速（2x）的速度。之後，又發佈了2.0規格的4倍速（4x）和3.0規格的8倍速（8x）速度的AGP。其版本包括：

 AGP 1x：使用32-bit傳輸通道，時脈66MHz，資料傳輸量為266MB/s，信號電壓3.3V。

 AGP 2x：使用32-bit傳輸通道，時脈66MHz，透過雙泵增至133MHz，資料傳輸量為533MB/s，信號電壓與AGP 1x相同。

 AGP 4x：使用32-bit傳輸通道，時脈66MHz，透過四泵增至266MHz，資料傳輸量為1066MB/s，信號電壓1.5V。

 AGP 8x：使用32-bit傳輸通道，時脈66MHz，透過八泵增至533MHz，資料傳輸量為2133MB/s，信號電壓0.8V。

{| class="wikitable"
|+
! 速度 !! 規格 !! 傳輸通道 !! 有效時脈 !! 資料傳輸速度 !! 信號電壓 || 註釋
|-
| AGP 1x || 1.0 || 32 bit || 66 MHz || 266 MB/s || 3.3 V || 雙倍於PCI的資料傳輸速度
|-
| AGP 2x || 1.0 || 32 bit || 133 MHz（雙泵）|| 533 MB/s || 3.3 V || 雙倍於AGP 1x的資料傳輸速度
|-
| AGP 4x || 2.0 || 32 bit || 266 MHz（四泵）|| 1066 MB/s (1 GB/s) || 1.5 V || 雙倍於AGP 2x的資料傳輸速度
|-
| AGP 8x || 3.0 || 32 bit || 533 MHz（八泵）|| 2133 MB/s (2 GB/s) || 0.8 V || 雙倍於AGP 4x的資料傳輸速度
|}

AGP 3.5規格是指由微軟所提及的＂通用加速影像處理埠＂（Universal AGP，UAGP），當中強制了要支援在AGP 3.0規格中部分原本被視為可選擇性支援的暫存器。升級了的暫存器包括PCISTS、CAPPTR、NCAPID, AGPSTAT、AGPCMD、NISTAT、NICMD。而新増的暫存器包括APBASELO、APBASEHI、AGPCTRL、APSIZE、NEPG、GARTLO、GARTHI。

非標準版本 
不少生產商也會製造一些非標準的AGP接口。

 64-bit AGP：使用64-bit傳輸通道，用在高端的專業顯卡。它曾在AGP 3.0的規格定義方案中被提議成為AGP的一個選擇性標準，但在最後議決中不受接納。

 Ultra-AGP、Ultra-AGPII：它是一種內部AGP接口標準，專用在SiS北橋控制器的集成圖像晶片上。原始版本的資料傳輸速度和AGP 8X的相同，而Ultra-AGPII的最高速度更高達3.2GB/s。

 AGP Pro：由於需要較多的電力，這是一種很少使用的插槽，而亦因此需要額外的針腳，令插槽長度增加。AGP Pro顯示卡通常是用於工作站上，以為專業計算機輔助設計的程式加速，當中包括建築、機械加工、工程設計、模擬、以及類似領域的電腦會使用。

PCI修改成AGP 
 AGP Express：它不是真正的AGP接口，而是以一種方式讓AGP顯示卡透過傳統的PCI總線連接擁有PCI Express的主機板。它是一種出現於ECS主機板的技術，及被用來作為賣點，以吸引想要更換新主機板，但又不願意另外買一張PCI-E顯示卡（因為新型號的主機板並沒有提供AGP顯示卡插槽，-{只}-有唯一的PCI-E插槽）的舊AGP顯示卡使用者。AGP Express基本上是一條PCI插槽（不過用上雙倍電力）。雖然它提供AGP顯示卡向後兼容，但其缺點包括不完整的兼容性（某些AGP顯示卡不能在AGP Express上運作）和會降低顯示卡效能，因為顯示卡要被迫使用頻寬較低及共享的PCI總線，而不是使用較快的AGP插槽。

 AGI：英文全名為ASRock Graphics Interface（AGI），是一種由華擎科技（ASRock）推出的專有AGP衍生標準。其被產生的目的是為缺乏原生AGP接口支持的ASRock主機板晶片組提供AGP的支持。然而，它的兼容性不是太高，有幾款顯示卡是已知的不支持它。

 AGX: Advanced Graphics eXtended，也是一種專有的AGP衍生標準，由磐英科技（EPoX）所推出。它擁有和上述AGI接口一樣的問題，用戶手冊甚至建議不要和ATI AGP 8X顯示卡一同使用。

 XGP: Biostar Xtreme Graphics Port（XGP）也是一種衍生AGP的標準，由映泰集團（Biostar）推出。它類似於上述兩個標準，為不支持AGP顯示卡的晶片組增加AGP支持，也同時存在許多兼容性的問題。

PCI-E修改成AGP 
 AGR: Advanced Graphics Riser（AGR）是用於微星科技某些PCI-E主機板上的AGP衍生插槽。它是修改至PCI Express接口的，效能上可比擬4x/8x AGP插槽，不過僅支持有限的AGP顯示卡，而製造商為此出版了不完整的顯示卡和晶片組兼容性列表。

兼容性 

AGP顯示卡是支援向上和向下相容的。不過，信號電壓為1.5V的顯示卡不能插入3.3V的插槽，反之亦然，只有“通用（Universal）”插槽才能同時支援兩種類型的卡。AGP Pro顯示卡不能裝進標準AGP插槽，但標準的AGP顯示卡卻能工作於AGP Pro插槽上。有些顯示卡，如大部分Nvidia的GeForce 6系列或ATI的Radeon X800系列，只有1.5V的凹口（key），以防止它們被安裝在不支持1.5V的舊型號主機板上。而最後一代支持3.3V的顯示卡有Nvidia的GeForce FX系列，GeForce 6系列（僅限NV44，NV44A）和ATI的Radeon R300系列（僅限R300，而不是R350，R360，RV350，RV360）。

安裝顯示卡前，檢查電壓兼容性是相當重要的，因為一些顯示卡會錯誤地擁有雙凹口和一些不正確的主機板會有全開放插槽。此外，一些設計不佳的舊式3.3V顯示卡會不當地有1.5V的凹口，將這些卡插入不支持正確信號電壓的插槽可能會造成損壞。

不過，也有一些獨有的例外，例如蘋果Macintosh電腦的Apple Display Connector（ADC）接口有一個額外的連接器可為連接的顯示提供電源。此外，由於韌體上的問題，顯示卡不能由一種CPU架構的電腦移動到另一種的電腦上。

参见 
 PCI
 PCI Express
 電腦裝置頻寬列表

參考資料 

顯示卡
计算机总线
IBM_PC兼容机
已被淘汰的電腦硬體