早在2001年的春季IDF(Intel開發(fā)者論壇)上,Intel公司已經(jīng)宣布要用一種新的技術(shù)取代PCI總線和多種芯片的內(nèi)部連接,并稱之為第三代I/O總線技術(shù)(3rd Generation I/O,也就是3GIO);到了2001年底,包括Intel、AMD、DELL、IBM等20多家業(yè)界主導(dǎo)公司加入了PCI-SIG(PCI特殊興趣小組)并開始起草3GIO規(guī)范的草案;2002年草案完成,并把3GIO正式命名為PCI Express。而在春季IDF 2003上,Intel公布了PCI Express的產(chǎn)品開發(fā)計(jì)劃。目前PCI Express技術(shù)的915系列主板產(chǎn)品和不少顯卡都已經(jīng)能在市面上買到了,那PCI EXPRESS的技術(shù)特點(diǎn)究竟是什么呢?
PCI Express技術(shù)要點(diǎn)
從并行到串行的轉(zhuǎn)變
與傳統(tǒng)PCI以及更早期的計(jì)算機(jī)總線的共享并行架構(gòu)相比,PCI Express采用設(shè)備間的點(diǎn)對(duì)點(diǎn)串行連接(serial interface)。如此一來(lái)即允許每個(gè)設(shè)備都有自己的專用連接,是獨(dú)占的,并不需要向整個(gè)總線請(qǐng)求帶寬,同時(shí)利用串行的連接特點(diǎn)將能輕松將數(shù)據(jù)傳輸速度提到一個(gè)很高的頻率,達(dá)到遠(yuǎn)超出PCI總線的傳輸速率。單個(gè)基本的PCI Express連接是一種單雙單工連接,一個(gè)單獨(dú)的基本的PCI Express串行連接就是兩個(gè)獨(dú)立的通過不同的低電壓對(duì)驅(qū)動(dòng)信號(hào)實(shí)現(xiàn)的連接,一個(gè)接受對(duì)和一個(gè)發(fā)送對(duì)(共四組線路)。一個(gè)微分信號(hào)在兩個(gè)接口之間有電壓差來(lái)傳遞。

第一代的PCI Express連接將提供2.5Gbit/s的單向單線連接傳輸速率。相對(duì)于傳統(tǒng)PCI總線在單一時(shí)間周期內(nèi)只能實(shí)現(xiàn)單向傳輸,PCI Express的雙單工連接能提供更高的傳輸速率和質(zhì)量,它們之間的差異跟半雙工和全雙工類似。同時(shí)PCI Express串行連接使用了內(nèi)嵌時(shí)鐘技術(shù)(8b/10b編碼模式),時(shí)鐘信息直接寫入數(shù)據(jù)流中,這對(duì)比大多數(shù)并行總線要額外傳輸保持同步的時(shí)鐘信號(hào)來(lái)說更能節(jié)省傳輸?shù)耐ǖ篮吞岣邆鬏斝?
與Serial ATA類似,串行連接能大大減少電纜間的信號(hào)干擾和電磁干擾,由于傳輸線條數(shù)有所減少,更能節(jié)省空間和連接更遠(yuǎn)的距離(單位時(shí)間內(nèi)傳輸?shù)臄?shù)據(jù)流比并行總線中獨(dú)立時(shí)鐘信號(hào)的數(shù)據(jù)流更能傳送更遠(yuǎn)的距離)。當(dāng)然,一個(gè)PCI Express連接可以由多個(gè)“通道”組成,每個(gè)通道包括前面所提的單雙工連接(兩對(duì)線路)。
在設(shè)備和芯片之間的連接就能實(shí)現(xiàn)串行的多通道連接,每個(gè)通道相互獨(dú)立。一個(gè)PCI Express連接可以被配置成x1,x2,x4,x8,x12,x16和x32的數(shù)據(jù)帶寬。x1的通道能實(shí)現(xiàn)單向312.5MB/秒(2.5Gbit/s * 1 / 8位)的傳輸速率,同理x32通道連接就能提供10GB/秒的速率,但考慮使用8b/10b編碼實(shí)際上有20%左右的消耗,實(shí)際的傳輸速率大概是8GB/秒(x32單向)。
分層分包協(xié)議
PCI Express包含3個(gè)協(xié)議層:事物層(Transaction)、數(shù)據(jù)鏈路層(Data Link)和物理層(Physical),當(dāng)數(shù)據(jù)在設(shè)備間傳輸時(shí),每個(gè)設(shè)備都會(huì)被看成一個(gè)協(xié)議棧(protocol stack)。
數(shù)據(jù)傳輸過程

在發(fā)送端,數(shù)據(jù)先在事務(wù)層被分成數(shù)據(jù)包,然后繼續(xù)到下一層數(shù)據(jù)連接層和物理層,每一層都將在原有的數(shù)據(jù)上加入新的頭信息或尾部信息,最后通過物理連接傳輸?shù)浇邮芏嗽O(shè)備的協(xié)議棧中;再接受端經(jīng)過相反次序通過協(xié)議棧將在發(fā)送端的分包還原出來(lái)。
在三層中都各司其職,其中物理層負(fù)責(zé)組裝和分解處理層數(shù)據(jù),同時(shí)掌握連接結(jié)構(gòu)以及信號(hào)的控制,保證數(shù)據(jù)能實(shí)現(xiàn)端到端的通信,使合法的數(shù)據(jù)從發(fā)送端傳輸?shù)秸麄€(gè)PCI Express架構(gòu)。順利達(dá)到接受端。而數(shù)據(jù)連接層則保證連接完整無(wú)缺地從一端傳輸?shù)搅硪欢?,采用了Ack/Nack協(xié)議技術(shù),能檢測(cè)錯(cuò)誤并進(jìn)行修正。
數(shù)據(jù)包處理和插槽
PCI Express數(shù)據(jù)包處理包含4種基本的處理類型:內(nèi)存事務(wù)處理、I/O事務(wù)處理、配置事務(wù)處理和信息處理。
PCI Express數(shù)據(jù)處理
采用基本的流控制來(lái)保證接受端設(shè)備有足夠的緩沖資源接受來(lái)自發(fā)送端的數(shù)據(jù)(包括數(shù)據(jù)的容量和類型)。PCI Express的接口根據(jù)總線位寬不同而有所差異,包括x1、x4、x8以及x16(x2模式將用于內(nèi)部接口而非插槽模式)目前的PCI接口將保留(就如當(dāng)初PCI代替ISA時(shí)也在主板上留下ISA槽一樣)。較短的PCI Express卡可以插入較長(zhǎng)的的PCI Express插槽中使用(也就是說低位寬的能插入高位寬的插槽使用)。
可升級(jí)插槽設(shè)計(jì)
同時(shí)PCI Express卡能夠支持熱拔插以及熱交換特性,支持的三種電壓分別為+3.3V、3.3Vaux以及+12V??紤]到現(xiàn)在顯卡功耗的日益上漲,PCI Express而后在規(guī)范中改善了直接從插槽中取電的功率限制,16x的最大提供功率達(dá)到了70W,比AGP8X接口有了很大的提高?;究梢詽M足未來(lái)中高端顯卡的需求。這一點(diǎn)可以從AGP、PCI Express兩個(gè)不同版本的6600GT上就能明顯地看到,后者并不需要外接電源。
PCI Express支持的電壓
PCI Express虛擬通道及通信量等級(jí).此外,PCI Express也支持每個(gè)連接的虛擬多通道。在一個(gè)小連接上可以存在最大8個(gè)獨(dú)立控制的通訊。每個(gè)通訊都可以根據(jù)數(shù)據(jù)包的通信量等級(jí)(Traffic Class,TC)性質(zhì)得到不同的處理。對(duì)于在PCI Express中傳輸?shù)臄?shù)據(jù)包而言,在每一個(gè)轉(zhuǎn)換或連接終端,都要查驗(yàn)TC信息,并據(jù)此進(jìn)行適當(dāng)?shù)奶幚怼T跀?shù)據(jù)包頭部的TC描述符由3個(gè)bit組成,可以表示不同的TC等級(jí)。這和我們?cè)诰W(wǎng)絡(luò)技術(shù)中看到的QOS實(shí)際上起到一個(gè)作用,就是保證那些需要實(shí)時(shí)處理的數(shù)據(jù)擁有較高的傳輸優(yōu)先權(quán),避免數(shù)據(jù)傳輸延遲。
PCI Express現(xiàn)有應(yīng)用除了顯卡外,千兆以太網(wǎng)卡,電視卡,視頻編輯卡等,都已經(jīng)出現(xiàn).