版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、PCIe接口介紹PCIe接口簡介PCIe(Peripheral Component Interconnect Express)總線的誕生與PC(Personal Computer)的蓬勃發(fā)展密切相關(guān),是由PCISIG (PCI Special Interest Group,主要是intel)推出的一種局部并行總線標(biāo)準(zhǔn),主要應(yīng)用于電腦和服務(wù)器的主板上(目前幾乎所有的主板都有PCIe的插槽),功能是連接外部設(shè)備(如顯卡、存儲、網(wǎng)卡、聲卡、數(shù)據(jù)采集卡等)。PCI總線規(guī)范最早在上世紀(jì)九十年代提出,屬于單端并行信號的總線,目前已淘汰,被PCIe總線(在2001年發(fā)布,采用點(diǎn)對點(diǎn)串行連接)替代。目前PCI
2、e的主流應(yīng)用是3.0,4.0還沒正式推出,但標(biāo)準(zhǔn)已經(jīng)制定的差不多了。PCI總線使用并行總線結(jié)構(gòu),在同一條總線上的所有外部設(shè)備共享總線帶寬,而PCIe總線使用了高速差分總線,并采用端到端的連接方式,因此在每一條PCIe鏈路中只能連接兩個設(shè)備。這使得PCIe與PCI總線采用的拓?fù)浣Y(jié)構(gòu)有所不同。PCIe總線除了在連接方式上與PCI總線不同之外,還使用了一些在網(wǎng)絡(luò)通信中使用的技術(shù),如支持多種數(shù)據(jù)路由方式,基于多通路的數(shù)據(jù)傳遞方式,和基于報文的數(shù)據(jù)傳送方式,并充分考慮了在數(shù)據(jù)傳送中出現(xiàn)服務(wù)質(zhì)量QoS (Quality of Service)問題。每一個Lane上使用的總線頻率與PCIe總線使用的版本相關(guān)
3、。PCIe總線規(guī)范總線頻率單Lane的峰值帶寬編碼方式1.x1.25GHz2.5GT/s8/10b編碼2.x2.5GHz5GT/s8/10b編碼3.X4GHz8GT/s128/130b編碼如上表所示,不同的PCIe總線規(guī)范使用的總線頻率并不相同,其使用的數(shù)據(jù)編碼方式也不相同。PCIe總線V1.x和V2.0規(guī)范在物理層中使用8/10b編碼,即在PCIe鏈路上的10 bit中含有8 bit的有效數(shù)據(jù);而V3.0規(guī)范使用128/130b編碼方式,即在PCIe鏈路上的130 bit中含有128 bit的有效數(shù)據(jù)。實(shí)際使用中,PCIe無法一直維持在峰值傳輸狀態(tài),因?yàn)榫幋a方式、鏈路管理消耗、存儲時間延遲等
4、原因,一般只有50%60%的效率。PCIe接口原理連接方式PCIe鏈路使用“端到端的數(shù)據(jù)傳送方式”,發(fā)送端和接收端中都含有TX(發(fā)送邏輯)和RX(接收邏輯), 其結(jié)構(gòu)如圖一。由上圖所示,在PCIe總線的物理鏈路的一個數(shù)據(jù)通路(Lane)中,由兩組差分信號,共4根信號線組成。其中發(fā)送端的TX部件與接收端的RX部件使用一組差分信號連接,該鏈路也被稱為發(fā)送端的發(fā)送鏈路,也是接收端的接收鏈路;而發(fā)送端的RX部件與接收端的TX部件使用另一組差分信號連接,該鏈路也被稱為發(fā)送端的接收鏈路,也是接收端的發(fā)送鏈路。PCIe鏈路使用差分信號進(jìn)行數(shù)據(jù)傳送,一個差分信號由D+和D-兩根信號組成,信號接收端通過比較這兩
5、個信號的差值,判斷發(fā)送端發(fā)送的是邏輯“1”還是邏輯“0”。PCIe鏈路可以由多條Lane組成,目前PCIe鏈路可以支持1、2、4、8、12、16和32個Lane,即×1、×2、×4、×8、×12、×16和×32寬度的PCIe鏈路。在主板上常見的是PCIe X1、PCIe X4和PCIe X16接口;PCIe的信號線PCIe的接口保證了前向兼容(3.X/2.X/1.X的信號定義一樣,只是信號線上的速度和電平不同),主要分為電源、信號傳輸lane和一些輔助信號。PCIe插槽的pin腳定義如下(灰色背景色的是輔助信號):電源有12
6、V、3.3V和3.3Vaux。其中12V主要給PCIe設(shè)備(如顯卡)提供更大的供電能力(PCIe 3.0 的插槽最大有150W);PCIe設(shè)備使用的主要邏輯模塊均使用3.3V供電,對于芯片內(nèi)部的PCIe模塊,大多只需要3.3V;而一些與電源管理相關(guān)的邏輯使用3.3Vaux供電。在PCIe設(shè)備中,一些特殊的寄存器通常使用3.3Vaux供電,如Sticky Register,此時即使PCIe設(shè)備的其他電源被移除,這些與電源管理相關(guān)的邏輯狀態(tài)和這些特殊寄存器的內(nèi)容也不會發(fā)生改變。在PCIe總線中,使用3.3Vaux的主要原因是為了降低功耗和縮短系統(tǒng)恢復(fù)時間。因?yàn)?.3Vaux在多數(shù)情況下并不會被移除
7、,因此當(dāng)PCIC設(shè)備的電源恢復(fù)(喚醒)后,該設(shè)備不用重新恢復(fù)使用3.3Vaux供電的邏輯,從而設(shè)備可以很快地恢復(fù)到正常工作狀狀態(tài)。PETp015、PETn015和PERp015、PERn015共64根信號線組成32對差分信號,其中16對PETxx信號用于發(fā)送鏈路,另外16對PERxx信號用于接收鏈路。輔助信號:1、PERST信號:該信號為全局復(fù)位信號,由主系統(tǒng)提供,主系統(tǒng)需要為PCIe插槽和PCIe設(shè)備提供該復(fù)位信號。PCIe設(shè)備使用該信號復(fù)位內(nèi)部邏輯。當(dāng)該信號有效時,PCIe設(shè)備將進(jìn)行復(fù)位操作。2、REFCLK+和REFCLK-信號:參考時鐘,其頻率范圍為100MHz±300ppm
8、。當(dāng)PCIe設(shè)備作為Add-In卡連接在PCIe插槽時,可以直接使用PCIe插槽提供的REFCLK+和REFCLK-信號,也可以使用獨(dú)立的參考時鐘,只要這個參考時鐘在100MHz±300ppm范圍內(nèi)即可。3、WAKE#信號:當(dāng)PCIe設(shè)備進(jìn)入休眠狀態(tài),主電源已經(jīng)停止供電時,PCIe設(shè)備使用該信號向處理器系統(tǒng)提交喚醒請求,使處理器系統(tǒng)重新為該P(yáng)CIe設(shè)備提供主電源Vcc。在PCIe總線中,WAKE#信號是可選的,因此使用WAKE#信號喚醒PCIe設(shè)備的機(jī)制也是可選的。值得注意的是產(chǎn)生該信號的硬件邏輯必須使用輔助電源Vaux供電。PCIe設(shè)備除了可以使用WAKE#信號實(shí)現(xiàn)喚醒功能外,還可
9、以使用Beacon信號實(shí)現(xiàn)喚醒功能。與WAKE#信號實(shí)現(xiàn)喚醒功能不同,Beacon使用In-band信號,即差分信號D+和D-實(shí)現(xiàn)喚醒功能。Beacon信號DC平衡,由一組通過D+和D-信號生成的脈沖信號組成。這些脈沖信號寬度的最小值為2ns,最大值為16us。當(dāng)PCIe設(shè)備準(zhǔn)備退出L2狀態(tài)(該狀態(tài)為PCIe設(shè)備使用的一種低功耗狀態(tài))時,可以使用Beacon信號,提交喚醒請求。4、SMCLK和SMDAT信號:SMCLK和SMDAT信號與x86處理器的SMBus(System Mangement Bus)相關(guān)。SMBus于1995年由Intel提出,SMBus由SMCLK和SMDAT信號組成。S
10、MBus源于I2C總線,以便于PCI/PCIe設(shè)備與處理器系統(tǒng)進(jìn)行交互。5、JTAG信號:JTAG(Joint Test Action Group)是一種國際標(biāo)準(zhǔn)測試協(xié)議,與IEEE 1149.1兼容,主要用于芯片內(nèi)部測試。目前絕大多數(shù)器件都支持JTAG測試標(biāo)準(zhǔn)。JTAG信號由TRST#、TCK、TDI、TDO和TMS信號組成。其中TRST#為復(fù)位信號;TCK為時鐘信號;TDI和TDO分別與數(shù)據(jù)輸入和數(shù)據(jù)輸出對應(yīng);而TMS信號為模式選擇。6、PRSNT1#和PRSNT2#信號:PRSNT1#和PRSNT2#信號與PCIe設(shè)備的熱插拔相關(guān)。在基于PCIe總線的Add-in卡中,PRSNT1#和P
11、RSNT2#信號直接相連,而在處理器主板中,PRSNT1#信號接地,而PRSNT2#信號通過上拉電阻接為高。PCIe設(shè)備的熱插拔結(jié)構(gòu)如下圖所示。如上圖所示,當(dāng)Add-In卡沒有插入時,處理器主板的PRSNT2#信號由上拉電阻接為高,而當(dāng)Add-In卡插入時主板的PRSNT2#信號將與PRSNT1#信號通過Add-In卡連通,此時PRSNT2#信號為低。處理器主板的熱插拔控制邏輯將捕獲這個“低電平”,得知Add-In卡已經(jīng)插入,從而觸發(fā)系統(tǒng)軟件進(jìn)行相應(yīng)地處理。拓?fù)浣Y(jié)構(gòu)一個PCIe系統(tǒng)的拓?fù)浣Y(jié)構(gòu)包括四個功能類型根聯(lián)合體根聯(lián)合體(root complex)、交換器(switch)、端點(diǎn)(EPendp
12、oint)和橋(圖2)。虛線代表著兩個PCIe設(shè)備間的一個連接,被稱為鏈路。根聯(lián)合體對整個PCIe建構(gòu)實(shí)施初始化并配置各鏈路。它通常把中央處理單元 (CPU)與其它三 個功能中的一或多個PCIe交換器、PCIe端點(diǎn)和PCIe到PCI橋 連接起來。 PCIe交換器把數(shù)據(jù)路由至下游多個PCIe端口,并分別從其中每個端口路由到上游唯一一個根聯(lián)合體。PCIe交換器也可以靈活地把數(shù)據(jù)從一個下游端口路由到另一個下游端口(點(diǎn)對點(diǎn)),它消除了傳統(tǒng)PCI系統(tǒng)限制性的樹狀結(jié)構(gòu)。 端點(diǎn)通常位于終端應(yīng)用內(nèi),它負(fù)責(zé)連接應(yīng)用與系統(tǒng)內(nèi)的PCIe網(wǎng)絡(luò)。端點(diǎn)要求并完成PCIe事務(wù)傳輸。一般來說,系統(tǒng)內(nèi)的端點(diǎn)比任何其他類型的PC
13、Ie部件都要多。 橋用于連接PCIe與系統(tǒng)內(nèi)諸如PCI/PCI-X等其他PCI總線標(biāo)準(zhǔn);這樣的系統(tǒng)同時采用上述各總線 架構(gòu)。PCIe層次結(jié)構(gòu)PCIe規(guī)范定義的協(xié)議遵循開放源碼促進(jìn)會(OSI)模型。該模型分為5個基本層,如下圖左側(cè)所示。事務(wù)層(Transaction層)定義了PCIe總線使用總線事務(wù),其中多數(shù)總線事務(wù)與PCI總線兼容。這些總線事務(wù)可以通過Switch等設(shè)備傳送到其他PCIe設(shè)備或者RC。RC也可以使用這些總線事務(wù)訪問PCIe設(shè)備。事務(wù)層接收來自PCIe設(shè)備應(yīng)用層(圖中xx層)的數(shù)據(jù),并將其封裝為TLP(Transaction Layer Packet)后,發(fā)向數(shù)據(jù)鏈路層。此外事務(wù)
14、層還可以從數(shù)據(jù)鏈路層中接收數(shù)據(jù)報文,然后轉(zhuǎn)發(fā)至PCIe設(shè)備的應(yīng)用層。在PCIe總線中,事務(wù)層傳遞報文時可以亂序,還可以使用流量控制機(jī)制保證PCIe鏈路的使用效率。 數(shù)據(jù)鏈路層(Link層)保證來自發(fā)送端事務(wù)層的報文可以可靠、完整地發(fā)送到接收端的數(shù)據(jù)鏈路層。來自事務(wù)層的報文在通過數(shù)據(jù)鏈路層時,將被添加Sequence Number前綴和CRC后綴。數(shù)據(jù)鏈路層使用ACK/NAK協(xié)議保證報文的可靠傳遞。PCIe總線的數(shù)據(jù)鏈路層還定義了多種DLLP(Data Link Layer Packet),DLLP產(chǎn)生于數(shù)據(jù)鏈路層,終止于數(shù)據(jù)鏈路層。值得注意的是,TLP與DLLP并不相同,DLLP并不是由TLP
15、加上Sequence Number前綴和CRC后綴組成的。 物理層(Physical層)是PCIe總線的最底層,將PCIe設(shè)備連接在一起。PCIe總線的物理電氣特性決定了PCIe鏈路只能使用端到端的連接方式。在上圖的右邊,我們對其余層進(jìn)行了展開,以更準(zhǔn)確地顯示那些更靠底部的層是如何映射到物理硬件實(shí)現(xiàn)的。 如上圖所示,物理層分為兩個子層:電氣和邏輯層。不少公司已經(jīng)在電氣層和邏輯層間定義了一個稱為PCI Express(PIPE)的物理接口,并對其加以利用。PIPE接口使設(shè)計能參照一個標(biāo)準(zhǔn)接口進(jìn)行且還能使購自不同廠商的多個部件協(xié)同工作。 物理層下的電氣子層實(shí)現(xiàn)包括收發(fā)器、模擬緩沖器、串行/解串行器
16、(SerDes)在內(nèi)的模擬器件以及10位接口。 物理編碼子層(PCS)把每8位數(shù)據(jù)字節(jié)編碼/解碼為10位代碼。這種編碼特性不僅能檢查有效字符,而且也限制了被發(fā)送的“0”和“1”數(shù)量上的差異,從而同時在發(fā)射器和接收器側(cè)保持了DC均衡,進(jìn)而大大提高了電磁兼容性(EMC)和電氣信號性能。 在物理層內(nèi)PIPE接口的另一側(cè)包含用以指示鏈路訓(xùn)練和狀態(tài)的狀態(tài)機(jī)(LTSSM)、通道間去除偏移、特殊序列檢測和生成等功能。 機(jī)械層定義了諸如對連接器、卡外形尺寸、卡檢測和熱插拔等要求的機(jī)械環(huán)境。在實(shí)際物理硬件內(nèi),還有另一種分層:從串行引腳層到PIPE接口層統(tǒng)稱為物理層(PHY);從PIPE接口到應(yīng)用的那些層統(tǒng)稱為數(shù)
17、字控制器。任何給定PCIe鏈路的端點(diǎn)都必須包括物理層和數(shù)字控制器。下圖顯示了插入到根聯(lián)合體內(nèi)的PCIe物理層和控制器。端點(diǎn)使用端點(diǎn)端口控制器,根聯(lián)合體設(shè)備使用根端口控制器。PCIe PHYPCIe的PHY主要有物理編碼子層(PCS)和電氣子層(Electrical)。物理編碼子層(PCS)主要功能是8b10b的編碼和解碼(實(shí)現(xiàn)內(nèi)嵌時鐘,DC平衡)、Rx檢測等,屬于數(shù)字部分,功能屬于物理層的邏輯子層的一部分。不同的PCIe協(xié)議,編碼方式也不同;而電氣子層(Electrical)的核心是串行/解串行器(SerDes)。在發(fā)送端(TX),將并行數(shù)據(jù)轉(zhuǎn)變?yōu)榇袛?shù)據(jù),然后以差分的形式發(fā)送到物理信道上;在
18、接收端(RX),要將收到的串行差分信號變成并行數(shù)據(jù),然后送到上一級的PCS層。PHY上的串行/解串行器(SerDes)是核心電路,屬于模擬部分,也是設(shè)計難點(diǎn)。因?yàn)镻CIe信號的速度很高,信號時鐘都是幾個G(1.0為1.25G,2.0為2.5G,3.0為4G),信號通路上的接插件、PCB走線等因素,會導(dǎo)致信號出現(xiàn)噪音和衰減,導(dǎo)致信號完整性問題的發(fā)生;如上圖的例子,1.25Gbps和5Gbps數(shù)據(jù)流的二進(jìn)制眼圖,信號都是采用26英寸(0.66m)長的標(biāo)準(zhǔn)FR4板材傳輸?shù)摹D右側(cè)對應(yīng)的二進(jìn)制眼圖顯示的是在接收端信號的衰減。 1.25Gbps數(shù)據(jù)流在傳輸過程中,信號得以相當(dāng)好地保留;但由于在高于1GH
19、z頻率速率下,低成本FR4基板和互連材料引入的介電損耗,5Gbps眼圖的大小和清晰度已被嚴(yán)重惡化。頻率越高,損耗越大;從而導(dǎo)致無法接受的1-0-1-0位流(本質(zhì)上是交流信號)失真,盡管一系列全“1”或全“0”(本質(zhì)上是直流信號)能成功傳輸。解決方案是通過加大相對于低頻(DC)信號而言的高頻(AC)信號的幅值來提升總體信噪比它是個稱為預(yù)加重的過程。另一種方法是對較低頻率的信號進(jìn)行去加重。在發(fā)射器端采用預(yù)加重可為接收端提供干凈的眼圖從而能使裕度滿足規(guī)范。PCIe控制器PCIe控制器的功能是,按照PCIe的協(xié)議,用硬件電路實(shí)現(xiàn)規(guī)范定義的事物層、鏈路層和物理層中的一部分功能(如指示鏈路訓(xùn)練和狀態(tài)的狀態(tài)
20、機(jī)(LTSSM)、通道間去除偏移、特殊序列檢測和生成等功能);PCIe數(shù)據(jù)包PCI Express采用數(shù)據(jù)包在各系統(tǒng)間以及數(shù)字接口的各層和PCIe設(shè)備間傳輸數(shù)據(jù)。應(yīng)用層發(fā)起事務(wù)傳輸,事務(wù)傳輸層把應(yīng)用請求轉(zhuǎn)換為一個PCIe事務(wù)包。數(shù)據(jù)鏈路層為該數(shù)據(jù)包增加一個序列號和鏈路CRC (LCRC)。數(shù)據(jù)鏈路層還確保該雙向事務(wù)接收正確(下圖)。最后,物理層在PCIe鏈路上傳輸該事務(wù)。PCIe數(shù)據(jù)包主要有2類:傳輸數(shù)據(jù)的事物包(TLP)和管理鏈路狀態(tài)的鏈路包(DLLP);PCIe控制器的物理層控制器的物理層負(fù)責(zé)與PHY進(jìn)行接口,并管理用于初始化鏈路和格式化數(shù)據(jù)包的許多功能。利用特殊序列來建立物理鏈路、進(jìn)入和
21、退出低功耗鏈路狀態(tài)等。物理層的接收部分負(fù)責(zé): 負(fù)責(zé)包含多通道鏈路的通道映射、通道到通道間的去偏移。 數(shù)據(jù)解擾。 發(fā)現(xiàn)數(shù)據(jù)包并實(shí)施去幀化處理。 檢測特殊數(shù)據(jù)包序列,如:TS1、TS2、Skip(跳過)和電氣閑置;物理層的發(fā)射部分負(fù)責(zé): 采用特殊符號插入對數(shù)據(jù)包進(jìn)行幀化處理;如用STP或SDP符號標(biāo)志數(shù)據(jù)包的開始,用END符號標(biāo)記數(shù)據(jù)包結(jié)束。 數(shù)據(jù)加擾。 鏈路控制初始化、寬度和通道反轉(zhuǎn)協(xié)商。 多通道傳輸控制。 生成跳躍序列以補(bǔ)償鏈路兩端的時鐘PPM差。下面對上面涉及的一些功能做簡單的描述:通道映射:使順序傳送數(shù)據(jù)包在多通道鏈路上同時發(fā)送,從而大大增加了吞吐量。接收器物理層以正確順序?qū)?shù)據(jù)包進(jìn)行重組
22、(見下圖)。數(shù)據(jù)加擾:加擾解擾的作用是解決EMI的問題:當(dāng)數(shù)據(jù)重復(fù)傳輸時,能量就會集中在某一頻率上,產(chǎn)生EMI噪聲;數(shù)據(jù)經(jīng)過加擾后,能把集中的能量分散開,幾乎變成白噪聲;對數(shù)據(jù)信息加擾的算法:G(X)=X16+X5+X4+X3+1;鏈路訓(xùn)練:目的是初始化物理層、端口配置信息、相應(yīng)的鏈路狀態(tài),并了解鏈路的拓?fù)浣Y(jié)構(gòu),以便PCIe鏈路兩端的設(shè)備進(jìn)行通信。比如將一個x4的PCIe設(shè)備接到x16的插槽上,此時必須要通過鏈路訓(xùn)練,來確定實(shí)際鏈路兩端的設(shè)備狀態(tài)。此外,為了PCB走線方便,鏈路兩端的設(shè)備使用的lane可以錯序或極性反轉(zhuǎn)連接(如下圖),也必須通過訓(xùn)練來確定具體的連接方式;為了進(jìn)行鏈路訓(xùn)練,需要發(fā)
23、送一些特殊的字符序列:TS1和TS2序列、Idle序列、FTS序列、SKIP序列等;TS1和TS2序列,即普通的訓(xùn)練序列(Training Sequence),其中TS1序列的主要作用是檢測PCIe鏈路的配置信息,而TS2序列確認(rèn)TS1序列的結(jié)果,有16個字符組成,具體見PCIe規(guī)范(表4-2和表4-3);Idle序列:要進(jìn)入或退出空閑狀態(tài)(Idle)所發(fā)送的序列;FTS序列:主要目的是使接收端RX能重新獲得bitsymbol Lock,發(fā)送端TX要發(fā)送的FTS序列個數(shù)由接收到的TS1/2序列決定,TS1/2序列的第3個字符是需要發(fā)送的FTS個數(shù);SKIP序列:作用是進(jìn)行時鐘補(bǔ)償;因?yàn)樵诮邮斩?/p>
24、RX中,存在2個時鐘:1個是通過PLL從報文中恢復(fù)的時鐘,另一個是本地時鐘,這2個時鐘并不完全同步。在RX端有個同步FIFO來進(jìn)行同步,該FIFO的大小固定,2端時鐘誤差太大FIFO就會溢出。所以每個lane在發(fā)送一定長度的字符后,必須要根據(jù)FIFO的狀態(tài)增加或減少發(fā)送SKIP序列來補(bǔ)償2端時鐘的誤差;在進(jìn)行鏈路訓(xùn)練時,使用的是LTSSM狀態(tài)機(jī),如下圖,這里就不深入了;PCIe控制器的數(shù)據(jù)鏈路層數(shù)據(jù)鏈路層確??煽康臄?shù)據(jù)交換,負(fù)責(zé)錯誤檢測和重傳、流量控制額度(FCC)的初始化和更新以及電源管理服務(wù)。為實(shí)現(xiàn)這些功能,數(shù)據(jù)鏈路層生成并處理數(shù)據(jù)鏈路層數(shù)據(jù)包(DLLP)。 一旦LTSSM發(fā)出物理鏈路協(xié)商
25、,數(shù)據(jù)鏈路層就被啟能。在此,各端點(diǎn)的數(shù)據(jù)鏈路層利用流量控制 (FC)初始化協(xié)議進(jìn)行鏈路初始化。使用該協(xié)議交互各鏈路伙伴可用的排隊(duì)資源的資訊。一旦完成FC初始化,鏈接就準(zhǔn)備好為事務(wù)傳輸層提供可靠的數(shù)據(jù)傳輸服務(wù)。在TLP傳輸時,定期流量控制更新繼續(xù)追蹤緩沖區(qū)的可用空間以防止溢出。 數(shù)據(jù)鏈路層在不可靠(有損耗)的物理鏈路上提供了可靠的數(shù)據(jù)傳輸服務(wù)。它是通過驗(yàn)證收到的TLP及使用接收到數(shù)據(jù)的正確認(rèn)并在接收失敗時重新傳送數(shù)據(jù)來做到這點(diǎn)的。當(dāng)TLP被發(fā)送時,它們被分配給序列號,并采用一個CRC碼且把該碼發(fā)送至物理層以用于串行鏈路上的傳輸。接收時,檢查CRC和序列號。CRC內(nèi)的錯誤或出序的序列號顯示發(fā)生了傳
26、輸錯誤,信號通過給出負(fù)確認(rèn)(NAK)予以響應(yīng)。接到NAK后,發(fā)送器重新傳送數(shù)據(jù)包,該數(shù)據(jù)包被存儲在專為此目的設(shè)置的“重傳”緩存器內(nèi)。若CRC序列號檢查成功,接收器發(fā)出正確認(rèn)(ACK)。對給定TLP來說,僅當(dāng)收到ACK時,才對重傳緩沖區(qū)進(jìn)行數(shù)據(jù)刷新。使用此協(xié)議,數(shù)據(jù)鏈路層可以保證TLP的正確發(fā)送。PCIe控制器的事物傳輸層數(shù)據(jù)傳輸層創(chuàng)制出站及接收入站事務(wù)傳輸層數(shù)據(jù)包(TLP)。TLP包括一個報頭、一個可選數(shù)據(jù)配載以及一個可選的端到端CRC(ECRC)。TLP既可以是請求也可以是對請求(完成)的響應(yīng),它永遠(yuǎn)是4個字節(jié)(1個DWORD)的倍數(shù)。報頭指定事務(wù)類型、優(yōu)先級、地址,路由規(guī)則及其他數(shù)據(jù)包特征
27、。發(fā)送事務(wù)傳輸層構(gòu)建數(shù)據(jù)包報頭、伺機(jī)添加ECRC并門控數(shù)據(jù)包的傳輸(直到有足夠的遠(yuǎn)程流量控制額度可用)。接收事務(wù)傳輸層檢查TLP格式和報頭。它也擇機(jī)檢查ECRC。PCIe基本功能和屬性吞吐量:流量控制額度 如前所述,PCIe連接的兩端采用流量控制額度(FCC)以確保數(shù)據(jù)不會因緩沖區(qū)溢出而丟失。流量 控制額度因而對總有效吞吐量發(fā)揮著關(guān)鍵作用。 流量控制額度就是關(guān)于接收器緩沖器容量的信息,因而由接收器件發(fā)出。鏈路的發(fā)送端只傳送接收端有足夠空間所能容納接收的數(shù)據(jù)包的數(shù)量,在數(shù)據(jù)包發(fā)送過程中這些空間在減少。鏈路的接收端隨著其緩沖空間的空出,會接著發(fā)布緩沖器容量信息。有用于送出、未送出和完成的流量控制隊(duì)
28、列,因此,有三類流量控制DLLP。另外還有: Init_FC DLLPs定義各FC類(P、NP、CPL)的初始緩沖空間 ;Update_FC DLLPs用來宣告又有新“額度”;QoS:傳輸類別和虛擬通道 傳輸分類和通道虛擬化使系統(tǒng)能為不同應(yīng)用提供不同的服務(wù)質(zhì)量(QoS)。如在PC中,會給視頻流以最高優(yōu)先級以確保有足夠的帶寬提供高品質(zhì)視頻,保證其不會被其它應(yīng)用阻擾。在網(wǎng)絡(luò)服務(wù)器應(yīng)用中,這種優(yōu)先級對網(wǎng)絡(luò)服務(wù)提供商的經(jīng)營來說必不可少,它們必須要能以不同的服務(wù)定價提供多種服務(wù)水平不同的服務(wù)。 通道虛擬化允許多個獨(dú)立的數(shù)據(jù)流復(fù)用同一條線路。虛擬通道擁有自己的緩沖資源。 傳輸分類使用傳輸類標(biāo)記定義端到端的
29、優(yōu)先級,任何數(shù)據(jù)包都會被指配一個針對其它流通的優(yōu)先級。根聯(lián)合體為每一傳輸類分配一個虛擬通道,雖然在數(shù)據(jù)包路徑上的不同點(diǎn)可能會有不同的虛擬通道。靈活的仲裁機(jī)制使虛擬通道保有必要的優(yōu)先級和服務(wù)水準(zhǔn)。仲裁機(jī)制包括:任意(自定義)、循環(huán)賽、加權(quán)輪循等。RAS:數(shù)據(jù)完整性 數(shù)據(jù)完整性是由采用一系列必要和可選的協(xié)議特性保證的。所需要的特性有: 物理層檢查8b/10b編碼/解碼以剔除無效字符。 鏈路層檢查數(shù)據(jù)包CRC(PCRC)檢查;數(shù)據(jù)包序號檢查;驗(yàn)證確認(rèn)/負(fù)確認(rèn)(ACK/NAK)。 事務(wù)傳輸層檢查報頭和數(shù)據(jù)包有效性;完成超時。 可選特性無論可選或不可選,任何PCIe IP實(shí)際上都該支持的特性有接收器溢出檢查、流量控制錯誤檢查、端對端CRC(ECRC)檢查、損壞的TLP檢查、存儲器奇偶校驗(yàn)和數(shù)據(jù)通路奇偶校驗(yàn)。RAS: 排序/PCI規(guī)則 排序衍生自PCI模型,它有兩個目標(biāo): 為避免系統(tǒng)死鎖。PCIe是通過確保一些數(shù)據(jù)包類型必須要能通過被隔阻的其他類型做到這點(diǎn) 的;因此,有些數(shù)據(jù)包類型
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 河南科技大學(xué)《園藝植物栽培學(xué)》2021-2022學(xué)年第一學(xué)期期末試卷
- 河南科技大學(xué)《微分幾何》2021-2022學(xué)年第一學(xué)期期末試卷
- 河南科技大學(xué)《機(jī)械設(shè)計基礎(chǔ)A》2021-2022學(xué)年第一學(xué)期期末試卷
- 河南科技大學(xué)《車輛構(gòu)造》2021-2022學(xué)年第一學(xué)期期末試卷
- 河北地質(zhì)大學(xué)《影視聲音技術(shù)與藝術(shù)》2022-2023學(xué)年第一學(xué)期期末試卷
- 河北地質(zhì)大學(xué)《物流學(xué)概論》2022-2023學(xué)年第一學(xué)期期末試卷
- 部編版語文四年級上冊《語文園地六》精美課件
- 新疆哈密市第四中學(xué)2024-2025學(xué)年九年級上學(xué)期期中考試數(shù)學(xué)試卷(無答案)
- 理財規(guī)劃建議-個人投資者理財規(guī)劃建議
- 農(nóng)村綠色健康行動-環(huán)境衛(wèi)生守護(hù)者的使命
- 中考作文考前輔導(dǎo):意高文自勝
- 公司收購聲明與承諾函
- 歷年北京市中小學(xué)生天文觀測競賽_天文知識_小學(xué)組
- 語文論文淺談如何在語文教學(xué)中培養(yǎng)學(xué)生情感
- 危險化學(xué)品安全使用許可適用行業(yè)目錄(2013年版)3
- 濕法脫硫工藝計算書
- 轎車子午線輪胎用簾線品種及其性能
- 天然氣室外立管吊裝專項(xiàng)施工方案(完整版)
- 淺談博物館布展設(shè)計的內(nèi)容與形式
- 在音樂教學(xué)中培養(yǎng)學(xué)生的人文素養(yǎng)
- 4各部門定期識別適用的安全法律法規(guī)、標(biāo)準(zhǔn)規(guī)范和其他要求清單
評論
0/150
提交評論