原生與橋接PCIE芯片技術(shù)深入分析解析
10年的時(shí)間對(duì)于一個(gè)人意味著什么?他可能從毛頭小伙變成朗朗俊男,可能從兒立之年跨入不惑之歲;10年的時(shí)間對(duì)于一種總線又意味著什么呢?從先進(jìn)到落后,甚至被淘汰……

總線的發(fā)展歷程
PCI作為個(gè)人電腦中不可缺少的最基本的I/O總線,已經(jīng)忠實(shí)的服役了10年。10年前當(dāng)PCI剛剛?cè)〈鶬SA的時(shí)候,系統(tǒng)總線的傳輸速率有了質(zhì)的飛躍,當(dāng)時(shí)PCI具有許多非常超前的設(shè)計(jì)和相對(duì)ISA來(lái)說(shuō)更加大的帶寬,應(yīng)付數(shù)據(jù)傳輸是措措有余。
但是隨著時(shí)間的推移,當(dāng)很多人還僅僅將電腦的用途定義在上上網(wǎng)、打打字的時(shí)候,新一代的圖形加速卡、聲卡、更高速的硬盤以及處理器紛紛出現(xiàn),日益龐大的數(shù)據(jù)量給PCI總線亮起了紅燈。
出于無(wú)奈將圖形數(shù)據(jù)傳輸獨(dú)立出了PCI,接著是南橋與北橋之間的獨(dú)立數(shù)據(jù)傳輸通道將PCI進(jìn)一步從IDE設(shè)備中解脫出來(lái)。盡管如此,面對(duì)日益發(fā)展的高速網(wǎng)絡(luò)設(shè)備甚至聲卡,PCI都已經(jīng)力不從心,整個(gè)系統(tǒng)迫切需要一種新型總線來(lái)提供更加適宜的數(shù)據(jù)傳輸環(huán)境。于是,PCI-Express來(lái)了。

PCI Express
PCI-Express相對(duì)于傳統(tǒng)總線的最大改進(jìn)在于點(diǎn)對(duì)點(diǎn)協(xié)議和串行的傳輸方式,未來(lái)系統(tǒng)總線與各種設(shè)備之間的連接方式都將逐步轉(zhuǎn)變成這種形式,包括線纜界面與芯片界面之間的連接,電纜同驅(qū)動(dòng)設(shè)備之間的連接,連接插槽同PCI-Express擴(kuò)展卡之間的連接等。

PCI總線的發(fā)展規(guī)劃圖
相對(duì)于PCI傳統(tǒng)的共享式并行總線,PCI-Express具有許多先進(jìn)的特性:PCI-Express的連接允許每個(gè)設(shè)備擁有各自獨(dú)立的數(shù)據(jù)傳輸資源。PCI-Express具有更加先進(jìn)的物理結(jié)構(gòu),可以更加輕松的實(shí)現(xiàn)雙向的數(shù)據(jù)傳輸。
PCI-Express在設(shè)計(jì)過(guò)程中充分考慮了新總線對(duì)于軟件和操作系統(tǒng)帶來(lái)得負(fù)擔(dān),新總線通過(guò)保留傳統(tǒng)的PCI總線設(shè)備初始化和內(nèi)存操作模式來(lái)保證支持PCI設(shè)備的軟件的兼容性,這意味著驅(qū)動(dòng)程序和操作系統(tǒng)不必為數(shù)據(jù)傳輸環(huán)境的改變而“背負(fù)責(zé)任”。
PCI-Express支持彈性的多路訊道連接模式,一個(gè)標(biāo)準(zhǔn)的PCI-Express連接可能包含多個(gè)“lane”(訊道),當(dāng)需要增加數(shù)據(jù)傳輸帶寬時(shí),PCI-Express可以方便地通過(guò)增加lane的數(shù)目來(lái)達(dá)到目的。
具有單個(gè)lane的PCI-Express×1可以提供單向250MB/S的帶寬,而具有16個(gè)lane的PCI-Express×16可以達(dá)到雙向8GB/S的空前水平。這使得PCI-Express×16成為目前取代AGP總線來(lái)?yè)?dān)當(dāng)顯示部分?jǐn)?shù)據(jù)傳輸?shù)姆浅:玫倪x擇。
AGP實(shí)際上是一個(gè)獨(dú)立于PCI以外的單獨(dú)與CPU以及北橋連接的總線,它具有4倍于PCI的數(shù)據(jù)帶寬(AGP1×),支持許多當(dāng)時(shí)很前衛(wèi)的特性。比如直接調(diào)用內(nèi)存進(jìn)行存儲(chǔ)操作,它為新出現(xiàn)的高速顯卡提供了更加充足的數(shù)據(jù)傳輸資源。但是,剛剛出現(xiàn)的AGP由于過(guò)分依賴北橋和系統(tǒng)內(nèi)存,而當(dāng)時(shí)的北橋和內(nèi)存速度卻遠(yuǎn)遠(yuǎn)跟不上系統(tǒng),所以被戲稱為“圖形減速器”。
隨著時(shí)間的推移,內(nèi)存速度不斷地提升,再加上AGP總線自身的不斷提速,AGP終于發(fā)展成了一個(gè)相當(dāng)成熟的總線,為高速顯卡提供了充足的數(shù)據(jù)傳輸資源。
隨著顯示核心的發(fā)展,GPU的填充率在迅速的提升,目前的AGP8×所能提供的2.1GB/S的帶寬已經(jīng)漸漸無(wú)法滿足新一代GPU極高的填充率,數(shù)據(jù)傳輸資源的不足導(dǎo)致GPU的運(yùn)算能力無(wú)法得到充分的發(fā)揮。程序員不得不將一部分運(yùn)算交還給CPU,這使得本來(lái)就負(fù)擔(dān)沉重的CPU運(yùn)算能力更加捉襟見(jiàn)肘,而且也限制了渲染任務(wù)中各種效果的應(yīng)用。
PCI-Express的出現(xiàn)給問(wèn)題的解決帶來(lái)了轉(zhuǎn)機(jī),更好的數(shù)據(jù)傳輸環(huán)境給GPU性能的充分發(fā)揮提供了良好的條件,也為未來(lái)圖形處理的數(shù)據(jù)運(yùn)算環(huán)境的改進(jìn)和CPU的真正解放打下了基礎(chǔ)。
盡管PCI-Express相對(duì)于支持PCI設(shè)備的軟件而言在兼容性方面沒(méi)有什么問(wèn)題,但是相對(duì)于接口,由于數(shù)據(jù)傳輸環(huán)境的改變,新一代顯卡必須改變數(shù)據(jù)接口形式以適應(yīng)新的變化。雖然PCI-Express得到主板芯片組的完美支持以及普及還需要時(shí)日,但是ATI和NVIDIA都已經(jīng)迫不及待的宣布了自己目前的PCI-Express產(chǎn)品計(jì)劃。
同以往一樣,這次兩家公司的發(fā)展方向再一次形成了對(duì)抗。ATI為我們提供了完整的全新設(shè)計(jì)的兼容PCI-Express的GPU產(chǎn)品線,該組產(chǎn)品提供GPU芯片本地支持PCI-Express的解決方案。而NVIDIA則提供了通過(guò)橋接芯片(HSI芯片)來(lái)使自己目前的AGP產(chǎn)品直接兼容PCI-Express的解決方案。
Native,通暢的路。
ATI將自己的解決方案稱為Native,即所謂“原生”。根據(jù)ATI的資料來(lái)看,ATI采用的具體方法是重新設(shè)計(jì)當(dāng)前的AGP產(chǎn)品,改變GPU內(nèi)部的數(shù)據(jù)接口形式,在保證處理性能不變和控制成本的前提下盡量使新產(chǎn)品利用PCI-Express總線的優(yōu)越特性。
同時(shí)盡量保留原來(lái)的AGP總線中有積極意義的特性,比如DIME操作、邊帶尋址等。通過(guò)在其芯片內(nèi)部去除造成延遲的其他因素,ATI的產(chǎn)品利用PCI-Express的良好潛在性能,在進(jìn)行數(shù)據(jù)傳輸時(shí),ATI宣稱其產(chǎn)品可以完整的利用PCI-Express×16的全部帶寬,包括上行和下行。同時(shí),ATI的資料中還暗示其產(chǎn)品中擁有某些橋接芯片所不能實(shí)現(xiàn)的特殊功能。

ATI的PCI-EXPRESS解決方案

采用原生PCI—Express接口設(shè)計(jì)的R423
ATI的原生解決方案實(shí)際上從新設(shè)計(jì)了GPU的內(nèi)部接口部分的結(jié)構(gòu),直接從GPU芯片的層面實(shí)現(xiàn)了與PCI-Express的互連,并能保證GPU能夠最直接的利用PCI-Express總線的各種特性。
相對(duì)而言,ATI的解決方案更加簡(jiǎn)潔容易理解(雖然在設(shè)計(jì)上是兩回事)。原生的特點(diǎn)在于沒(méi)有其他互連層的延遲和干擾,這對(duì)于數(shù)據(jù)傳輸所需的理論帶寬很重要,原生方案原則上可以保證GPU完全利用PCI-Express上行和下行各4GB的理論帶寬,這將使得GPU 6.4GB/S左右的填充率在數(shù)據(jù)交換方面得到充分的保證。
同時(shí),原生方案不會(huì)給顯卡制造商帶來(lái)成本負(fù)擔(dān)。不過(guò)原生方案并不是沒(méi)有成本增加,ATI為了生產(chǎn)新設(shè)計(jì)的原生設(shè)計(jì)的GPU不得不更改自己的芯片流水線,讓原本支持AGP的GPU下線,修改流水線后再讓支持PCI-Express的GPU上線,這帶來(lái)了大約2000萬(wàn)美元的支出。支持這種特性的ATI產(chǎn)品包括X800系列,X700系列,X600系列以及X300系列GPU。
HSI,寬敞的橋。

NVIDIAPCI-Express解決方案
根據(jù)NVIDIA的產(chǎn)品資料,其PCI-Express解決方案的重點(diǎn)在于保留現(xiàn)有的GPU設(shè)計(jì),在此基礎(chǔ)上通過(guò)在板卡或者核心中增加一個(gè)高速橋接芯片,即HSI。以此作為PCI-Express同GPU之間聯(lián)系的橋梁,這個(gè)橋接芯片是一個(gè)可逆AGP的PCI-Express接口,這個(gè)接口已經(jīng)完全受軟件監(jiān)控。
起初,HSI被用來(lái)橋接AGP圖形芯片到PCI-Express總線上,但是隨著NV43的推出,這種芯片也會(huì)用來(lái)連接采用原生PCI-Express設(shè)計(jì)的GPU到AGP總線上。

采用內(nèi)部橋接的NV45
HSI設(shè)計(jì)的特點(diǎn)與原生設(shè)計(jì)最大的不同在于其在GPU和總線之間添加了一個(gè)互連層,通過(guò)互連層實(shí)現(xiàn)GPU中現(xiàn)有的數(shù)據(jù)接口與不同類型總線之間的連接和數(shù)據(jù)傳輸。

GeforceFX5950PCX的橋接芯片
這種設(shè)計(jì)顯得非常靈活,NVIDIA可以根據(jù)不同的需求生產(chǎn)不同的GPU,這使得NVIDIA可以更加自如的控制其流水線上的成本,并且更加方便地使自己的原生方案的GPU可以很快的進(jìn)入AGP領(lǐng)域。
但是,這種設(shè)計(jì)的潛在缺陷是明顯的,由于多余互連層的加入,數(shù)據(jù)傳輸?shù)沫h(huán)境勢(shì)必受到影響。而且,由于HSI芯片會(huì)增加大約5美圓左右的生產(chǎn)成本,而這部分成本肯定要由顯卡生產(chǎn)廠商來(lái)承擔(dān),這對(duì)于現(xiàn)在刺刀見(jiàn)紅的市場(chǎng)競(jìng)爭(zhēng)來(lái)說(shuō)具有極大的影響。

來(lái)自ELSA的FX5950PCX顯卡
支持HSI方案的NVIDIA產(chǎn)品包括GeforcePCX系列,包括Geforce5950PCX,Geforce5750PCX,5550PCX,以及Geforce 6800PCX系列,另外還有Geforce6600 AGP系列。
ATI將自己的原生解決方案比喻為一條直路,而將橋接方案比喻成架橋,并認(rèn)為“有路何需架橋?”。那么原生和橋接方案究竟孰優(yōu)孰劣呢?
在理論傳輸方面,原生方案具有巨大的優(yōu)勢(shì),設(shè)計(jì)特點(diǎn)決定了原生方案理論上可以完全不受限制的利用PCI-Express×16所能提供的近乎全部帶寬。
而橋接方案由于受限于GPU內(nèi)部的AGP接口速度而無(wú)法發(fā)揮PCI-Express×16的全部帶寬,根據(jù)NVIDIA的說(shuō)法,為了最大限度的保護(hù)PCI-Express的數(shù)據(jù)傳輸資源,目前的GeforcePCX系列產(chǎn)品的內(nèi)部AGP接口已經(jīng)從8×調(diào)整到了16×。這樣算來(lái),即使在最理想狀態(tài)下,NVIDIA的產(chǎn)品也僅僅能利用PCI-Express×16的一半帶寬,即4GB/S。理論測(cè)試證實(shí)了原生方案的優(yōu)勢(shì)。

原生方案及橋接芯片的理論測(cè)試
從圖中我們可以看到,在支持PCI-Express的芯片組上,采用原生方案的GPU的理論數(shù)據(jù)傳輸能力幾乎是采用傳統(tǒng)設(shè)計(jì)的兩倍。同時(shí),我們也注意到目前的芯片組還沒(méi)有完全發(fā)揮出PCI-Express×16的潛力,這是目前芯片組設(shè)計(jì)方面所面臨的重要問(wèn)題。理論部分如此,那么在實(shí)際應(yīng)用中呢?我們采用最新的PCI-Express版本的6800Ultra與X800 XT PCI-E進(jìn)行對(duì)比測(cè)試。
研發(fā)代號(hào):NV45/R423
產(chǎn)品型號(hào):GeForce 6800 Ultra/RADEON X800 XT
接口方式:PCI-E ×16/PCI-E ×16
核心頻率(MHz):400/500
像素渲染流水線數(shù)量:16/16
理論填充率(M Pixels/s):6400/8000
頂點(diǎn)渲染器數(shù)量:6/6
顯存類型:DDR3/DDR3
顯存頻率(MHz):1100/1000
顯存位寬(bit):256/256
顯存帶寬(GB/s):35.2/32.0
制造工藝:0.13μm/0.13μm
晶體管數(shù)量:2.22億/1.6~1.8億
DirectX版本:9.0/9.0
PS版本:3.0/2.0
VS版本:3.0/2.0

華碩EAX800XT PCI-E樣卡

華碩6800Ultra PCI-E樣卡

華碩EAX800XT PCI-E核心

華碩6800Ultra PCI-E樣卡核心
顯卡,項(xiàng)目:NV45,NV45,R423,R423
No AF No FSAA,4XAF 4XFSAA/No AF No FSAA/4XAF 4XFSAA
3Dmark 03 build 340總分
1024X768,11747,7412,12076,7428
1280X1024,9353,5595,9754,5542
1600X1200,7593,4328,7954,4289
單像素填充率M Texels/s,3292.2,N/A,2911.4,N/A
多像素填充率M Texels/s,6281.4,N/A,6858.7,N/A
AquaMark3 總分
1024X768,65.83,53.92,54.56,49.02
1280X1024,61.10,43.72,49.40,42.09
1600X1200,55.36,34.92,44.12,35.50
DOOM3
1024X768,83.5,59.2,77.2,47.8
1280X1024,80.8,51.0,61.7,34.4
1600X1200,69.6,38.4,47.8,25.6
Quake Ⅲ
1024X768,427.7,424.1,436.3,388.6
1280X1024,421.0,388.9,418.9,304.2
1600X1200,411.0,327.0,383.0,226.7
UT2003 得分
1024X768,168.1,167.3,176.8,173.8
1280X1024,166.8,155.9,175.7,155.6
1600X1200,166.3,133.9,172.9,126.9
FarCry mp-dam
1024X768,95.6,93.6,112.2,101.3
1280X1024,94.5,1.6,103.5,72.7
1600X1200,90.2,82.3,88.8,54.1
我們發(fā)現(xiàn),在實(shí)際應(yīng)用中原生方案并沒(méi)有表現(xiàn)出過(guò)人的優(yōu)勢(shì),性能上與采用HSI的橋接方案相當(dāng),并沒(méi)有出現(xiàn)理論測(cè)試中那種成績(jī)上的飛躍,也沒(méi)有體現(xiàn)出PCI-Express的設(shè)計(jì)特點(diǎn)。這又是為什么呢?
首先,在實(shí)際應(yīng)用中有效的可利用的PCI-Express的帶寬比理論帶寬重要的多。PCI-Express的有效帶寬計(jì)算公式如下:有效數(shù)據(jù)帶寬 = 總線帶寬 ×[請(qǐng)求大小/(請(qǐng)求大小+附加信息包詳細(xì)程度)]× 效率。
由于顯卡具備輸出端的工作特點(diǎn),GPU在實(shí)際操作過(guò)程中的數(shù)據(jù)傳輸往往傾斜于上行,也就是從總線向GPU內(nèi)部傳輸數(shù)據(jù),這就使得PCI-Express×16巨大的下行數(shù)據(jù)傳輸能力在大多數(shù)時(shí)間成為了擺設(shè)。
由于橋接+現(xiàn)有芯片的方案提供了4GB左右的數(shù)據(jù)傳輸能力,相對(duì)而言已經(jīng)能夠達(dá)到PCI-Express上行數(shù)據(jù)的傳輸能力,這就使得NVIDIA的產(chǎn)品在實(shí)際應(yīng)用中并不會(huì)受到比ATI更多的來(lái)自數(shù)據(jù)傳輸?shù)南拗啤?/FONT>
其次,NVIDIA的GPU支持最大單次64byte的數(shù)據(jù)請(qǐng)求包,并能為這個(gè)請(qǐng)求附加20byte左右的附加信息包,更大的數(shù)據(jù)傳輸包以及附加信息包可以保證盡可能大的數(shù)據(jù)請(qǐng)求以及對(duì)更加完整的對(duì)請(qǐng)求的附加描述。

盡管附加描述包的出現(xiàn)會(huì)占用一定的帶寬,但是對(duì)于較大量的單次數(shù)據(jù)傳輸而言,詳盡的請(qǐng)求附加描述可以保證盡可能正確有效的內(nèi)容發(fā)送,其結(jié)果就是相應(yīng)的應(yīng)請(qǐng)求發(fā)送的單次數(shù)據(jù)完整適應(yīng)度的增加。
這種設(shè)計(jì)保證了數(shù)據(jù)傳輸通道可以被高效率的利用,使得HSI方案所提供的數(shù)據(jù)帶寬能夠被完全利用。相對(duì)的,ATI的GPU所支持的數(shù)據(jù)請(qǐng)求包的大小僅為32byte,這大大限制了ATI的GPU利用數(shù)據(jù)傳輸通道的能力。據(jù)稱,ATI的GPU對(duì)于PCI-Express帶寬的有效利用律僅僅達(dá)到了65%,即2.5GB/S。
最后,由于在設(shè)計(jì)的時(shí)候充分考慮到了多余互連層帶來(lái)得潛伏期的問(wèn)題,NVIDIA的HSI芯片的設(shè)計(jì)潛伏期大大低于芯片組和PCI-Express的潛伏期。更高的響應(yīng)速度可以使HSI先于芯片組和總線做出反應(yīng),不會(huì)影響到數(shù)據(jù)傳輸?shù)倪^(guò)程。因此NVIDIA的產(chǎn)品中并沒(méi)有出現(xiàn)明顯的ATI所預(yù)言的添加互連層帶來(lái)的數(shù)據(jù)傳輸周期延遲問(wèn)題。
綜上所述,即使在大量數(shù)據(jù)充塞數(shù)據(jù)傳輸通道的情況下,HSI橋接方案也能保證很高的效率,保證GPU在實(shí)際應(yīng)用中不會(huì)受到來(lái)自數(shù)據(jù)傳輸方面的限制。也許你依然認(rèn)為橋接方案的延遲要遠(yuǎn)遠(yuǎn)落后于原生方案,并且無(wú)法接受現(xiàn)實(shí)應(yīng)用中原生方案的表現(xiàn)。其實(shí),我們可以想到一個(gè)很方便類比的例子——Athlon64和HyperTransport。
Athlon64和HyperTransport的連接非常類似于HSI橋接芯片,像PCI-Express一樣,HyperTransport也是一個(gè)高速的,窄通道的,基于數(shù)據(jù)包傳輸模式的連接。它與CPU和總線的連接和從PCI-Express到HSI到GPU的過(guò)程很相似。
在Athlon64發(fā)布時(shí),很多人對(duì)于這樣一個(gè)快速的窄帶接口是否可以讓CPU與慢速寬通道的總線配合抱持著懷疑的態(tài)度。但是現(xiàn)在看來(lái),這種擔(dān)心是完全多余的,Athlon64的實(shí)際表現(xiàn)說(shuō)明了一切。橋接的解決方案的關(guān)鍵在于響應(yīng)速度,只要響應(yīng)速度足夠高,那么橋接方案不會(huì)對(duì)系統(tǒng)性能造成很大的影響。
另外,HSI橋接方案的作用還體現(xiàn)在了AGP領(lǐng)域的應(yīng)用。由于PCI-Express的普及速度落后于ATI的預(yù)期,使得ATI現(xiàn)在不得不面對(duì)一個(gè)異常尷尬的場(chǎng)面,它不得不使用老式的AGP接口形式的9800pro來(lái)跟NVIDIA全新的6600GT的AGP版本進(jìn)行對(duì)抗。
顯而易見(jiàn),這場(chǎng)對(duì)抗是一場(chǎng)不公平的,對(duì)ATI而言是根本毫無(wú)勝算的對(duì)抗,9800pro的實(shí)際性能甚至不如超頻后的6200……但是ATI不得不面對(duì)這個(gè)現(xiàn)實(shí)。
由于NVIDIA的HSI芯片具有逆向傳輸設(shè)計(jì),這使得NVIDIA的原生PCI-Express方案的GPU可以暢通無(wú)阻的進(jìn)入AGP領(lǐng)域,而ATI的X700系列的AGP版本要等到05年的第一季度才能出現(xiàn),這不僅僅給ATI帶來(lái)了研發(fā)和生產(chǎn)的負(fù)擔(dān),最致命的是這段時(shí)間的市場(chǎng)真空期所造成的損失幾乎是無(wú)法彌補(bǔ)的,當(dāng)X700的AGP版本進(jìn)入市場(chǎng)時(shí),6600系列的AGP版本早已占領(lǐng)市場(chǎng)多時(shí)。可以說(shuō)HSI芯片的真正價(jià)值在AGP市場(chǎng)得到了沒(méi)有任何質(zhì)疑成分的成功。

當(dāng)然,橋接方案盡管很成功,但它畢竟是個(gè)過(guò)渡的解決方案。從NVIDIA迅速推出了自己的GPU原生解決方案就可以充分說(shuō)明這一點(diǎn)。畢竟能夠充分利用PCI-Express總線的所有潛在特性是所有廠商都?jí)裘乱郧蟮模@樣才能從根本上完全發(fā)揮設(shè)備的全部性能。
而且從市場(chǎng)角度考慮,原生解決方案也是最終的大勢(shì)所趨,畢竟AGP最終將會(huì)面臨淘汰。當(dāng)PCI-Express×16接口統(tǒng)一圖形接口市場(chǎng)的時(shí)候,HSI橋接解決方案肯定會(huì)被市場(chǎng)拋棄。不過(guò)就現(xiàn)階段而言,HSI橋接技術(shù)的價(jià)值還是非常巨大的。
在下一階段,廠商研發(fā)的重點(diǎn)將轉(zhuǎn)換到如何更加高效的利用PCI-Express的現(xiàn)有資源上,隨著接口資源的更高效利用,也許實(shí)現(xiàn)將CPU從圖形運(yùn)算中完全解放出來(lái)并不是夢(mèng)想,讓我們共同期待著這一天的到來(lái)吧。
關(guān)注我們


