PCIE事務(wù)層協(xié)議(Transaction_Layer_Specifications)_第1頁(yè)
PCIE事務(wù)層協(xié)議(Transaction_Layer_Specifications)_第2頁(yè)
PCIE事務(wù)層協(xié)議(Transaction_Layer_Specifications)_第3頁(yè)
PCIE事務(wù)層協(xié)議(Transaction_Layer_Specifications)_第4頁(yè)
PCIE事務(wù)層協(xié)議(Transaction_Layer_Specifications)_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 處理層協(xié)議(transaction Layer specification)TLP概況。尋址定位和路由導(dǎo)向。i/o,memory,configuration,message request、completetion詳解。請(qǐng)求和響應(yīng)處理機(jī)制。virtual channel(vc)Mechanism虛擬通道機(jī)制。data integrity數(shù)據(jù)完整性。 一TLP概況 處理層(transaction Layer specification)是請(qǐng)求和響應(yīng)信息形成的基礎(chǔ)。包括四種地址空間,三種處理類(lèi)型,從下圖可以看出在transaction Layer 中形成的包的基本概括。一類(lèi)是對(duì)i/o口和memo

2、ry的讀寫(xiě)包(TLPS:transaction Layers packages),另一類(lèi)是對(duì)配置寄存器的讀寫(xiě)設(shè)置包,還有一類(lèi)是信息包,描述通信狀態(tài),作為事件的信號(hào)告知用戶。對(duì)memory的讀寫(xiě)包分為讀請(qǐng)求包和響應(yīng)包、寫(xiě)請(qǐng)求包(不需要存儲(chǔ)器的響應(yīng)包)。而i/o類(lèi)型的讀寫(xiě)請(qǐng)求都需要返回I/O口的響應(yīng)包,configuration包對(duì)配置寄存器的讀寫(xiě)請(qǐng)求也有響應(yīng)包。這些請(qǐng)求包還可以按屬性來(lái)分就是:NP-non posted ,即請(qǐng)求需要返回completion的響應(yīng)包;還有一種就是;poste,即不需要completion返回響應(yīng)包。例如上面的存儲(chǔ)器寫(xiě)入請(qǐng)求包和Message包都隸屬于posted包

3、。包的主要格式結(jié)構(gòu)如下: 每種類(lèi)型的包都有一定格式的包頭(Tlp Header),根據(jù)不同的包的特性,還包括有效數(shù)據(jù)負(fù)荷(Data Payload)和tlp開(kāi)銷(xiāo)塊(Tlp Digest)。包頭中的數(shù)據(jù)用于對(duì)包的管理和控制。有效數(shù)據(jù)負(fù)荷域存放有效數(shù)據(jù)信息。具有數(shù)據(jù)的TLP傳遞是有一定規(guī)則的:以DW為長(zhǎng)度單位,發(fā)送端數(shù)據(jù)承載量不得超過(guò)“Device Control Register”中的“Max_Payload_Size”數(shù)值,接收端中,所接收到的數(shù)據(jù)量也不能超過(guò)接收端“Device Control Register”中的“Max_Payload_Size”數(shù)值。TLp Digest域是32位的E

4、CRC校驗(yàn)。具體的包結(jié)構(gòu)圖如下: 由此圖可看出數(shù)據(jù)從低字節(jié)的高位先發(fā)送,從左到右。以下詳細(xì)介紹TLPS的每個(gè)成分。TLP Header:R為保留信息位,應(yīng)設(shè)為0,路由器switch對(duì)此位不做修改,接收器應(yīng)該忽略此位。 Fmt1:0:Format of TLP (see Table 2-2) bits 6:5 of byte0 Type4:0:Type of TLP bits 4:0 of byte 0 TC2:0: Traffic Class bits 6:4 of byte1,關(guān)于TC的作用將在下文說(shuō)明。 Attr1:0: Attributes bits 5:4 of byte 2,詳細(xì)介紹

5、見(jiàn)下文 TD:1b indicates presence of TLP digest in the form of a single DW at the end of the TLP標(biāo)志TLPDigest域的有無(wú)。 EP: indicates the TLP is poisoned bit 6 of byte 2有效數(shù)據(jù)中毒(出錯(cuò))機(jī)制。 Length9:0:Length of data payload in DW.Fmt開(kāi)銷(xiāo)位說(shuō)明TLP Header的長(zhǎng)度和TLP是否包含數(shù)據(jù),見(jiàn)下圖。 Fmt1:0=00b,代表3DW的包頭,沒(méi)有數(shù)據(jù)。 Fmt1:0=01b,代表4DW的包頭,沒(méi)有數(shù)據(jù)。 F

6、mt1:0=10b,代表3DW的包頭,有數(shù)據(jù)。 Fmt1:0=11b,代表4DW的包頭,有數(shù)據(jù)。Fmt和Type開(kāi)銷(xiāo)組合定義了包(TLP)的類(lèi)型如下。上圖定義了各種類(lèi)型的包,圖中的r2:0用于定義Message包的隱含尋址方式,在下文中更為詳細(xì)。Length域定義了有效負(fù)荷的DW長(zhǎng)度如下。在不包含data payload塊的包中Length的值應(yīng)被設(shè)置為保留值R,并被接收端忽略。余下的各個(gè)開(kāi)銷(xiāo)位將在后文提到。 二TLP打包定址和路由導(dǎo)向方式主要有三種TLP尋址方式:地址路由(address)、ID識(shí)別路由、間接路由(implicit)。下面主要解釋address和ID尋址方式,間接尋址將在后面

7、提及。address尋址主要用于memory和i/o request請(qǐng)求包,memory讀寫(xiě)請(qǐng)求包支持64位地址和32位地址,i/o讀寫(xiě)請(qǐng)求只支持32位地址。64位地址尋址的TLP Header有4DW(16字節(jié)),32位地址尋址的TLP Header有3DW長(zhǎng)。上圖就是64位地址的4DW的包頭和32位地址的3DW的包頭。對(duì)于memory讀寫(xiě)request包,AT(address Type field)有如下的編碼。ID尋址方式主要用在configuration 請(qǐng)求包、部分message包、響應(yīng)包中。ID包括Bus number、Divce number、function number為T(mén)L

8、P定位目標(biāo)接收器。ID尋址的TLP包頭長(zhǎng)度也有4DW和3DW兩種,ID在TLP中位置見(jiàn)下圖。第七個(gè)Byte(Byte7)是第一個(gè)DW數(shù)據(jù)負(fù)荷和最后一個(gè)DW數(shù)據(jù)負(fù)荷使能位(Byte Enables),Byte Enables在于memory,i/o,configuration 請(qǐng)求包中有效,如圖。對(duì)于last DW BE和1st DW BE中的每一個(gè)位,為0表示相應(yīng)的數(shù)據(jù)字節(jié)不被讀或?qū)?,?表示相應(yīng)的數(shù)據(jù)字節(jié)有效。每個(gè)使能位相對(duì)應(yīng)的字節(jié)如下。處理層描述符(transaction Descriptor),用于請(qǐng)求器件和應(yīng)答器件間轉(zhuǎn)送處理層信息,包括三部分,Transaciton ID、Attrib

9、utes、Traffic class(TC)。如下圖。其中Transaction ID包括: Requester ID、Tag,如圖。Tag7:0是由產(chǎn)生請(qǐng)求包的器件生成的,如果請(qǐng)求器件需要應(yīng)答,則每個(gè)Tag7:0和Function Number是獨(dú)一無(wú)二的。Transaction ID是一個(gè)全局標(biāo)識(shí)符用于響應(yīng)包尋址請(qǐng)求器件。TC的規(guī)定如下,描述服務(wù)的層次和用于映射虛擬通道:TC0:最佳努力服務(wù)類(lèi)(通用I / O)(默認(rèn)TC - 必須由每個(gè)PCI Express設(shè)備支持TC1-TC7:差分服務(wù)類(lèi)(基于加權(quán)循環(huán)和/或優(yōu)先級(jí)的區(qū)別)處理層描述符在請(qǐng)求包中第二個(gè)DW:。中圖中看出,描述字符放在第二個(gè)

10、DW的前三個(gè)字節(jié)中。 三i/o,memory,configuration,message request、completetion詳解。memory、i/o、configuration request包頭除了基本的域之外還包括:Transaction ID即requester ID、Tag、Last DW BE、1st DW BE,放在第二個(gè)DW中。以下分別介紹這三種不同的請(qǐng)求包。memory request package:采用直接地址尋址,有64bit地址和32bit地址兩種,其中讀請(qǐng)求包的Length域不應(yīng)大于Max_Read_Request_Size寄存器設(shè)置的值。請(qǐng)求器件不會(huì)示例一個(gè)

11、所訪問(wèn)的memory空間超過(guò)4KB的read request包。以下是兩種不同地址長(zhǎng)度的memory request 包。 64位地址的包格式 32 位地址的包格式I/O request 包:I/O request 包只有32位地址尋址。有如下限制: TC2:0 must be 000b Attr1:0 must be 00b AT1:0 must be 00b Length9:0 must be 00 0000 0001b Last DW BE3:0 must be 0000b格式如下:可見(jiàn)每次只傳送一個(gè)DW數(shù)據(jù)。configuration request包:configuration re

12、quest包采用ID尋址方式,包頭(Tlp Header長(zhǎng)度是3DW)。有如下規(guī)定: TC2:0 must be 000b Attr1:0 must be 00b AT1:0 must be 00b Length9:0 must be 00 0000 0001b Last DW BE3:0 must be 0000b包格式:Message 包:Message包分為: 􀂉 INTx Interrupt Signaling INTx中斷信息包􀂉 Power Management 電源管理機(jī)能。􀂉 Error Signaling錯(cuò)誤信息包

13、48713; Locked Transaction Support 鎖住交易的支持􀂉 Slot Power Limit Support插槽電源限制的支持􀂉 Vendor-Defined Messages制造商自行定義信息所有的Message包都用Msg編碼,即不包括數(shù)據(jù)負(fù)荷的Message包,除了Vendor_Defined Messages和Set_Slot_Power_Limit Message包,Message包有以下限制: The Message Code field must be fully decoded (Message aliasing i

14、s not permitted). Except as noted, the Attr1:0 field is reserved.保留Attr域。 AT1:0 must be 00b. Except as noted, bytes 8 through 15 are reserved.保留包頭部分的bytes8到byte15. Message Requests are posted and do not require Completion.Message包不需要返回響應(yīng)包。 Message Requests follow the same ordering rules as Memory Wr

15、ite Requests.尋址方式:隱含尋址,由Type域中的r2:0決定,即Type域的最后三位。具體尋址映射如下:r2:0是010時(shí),尋址方式就是ID尋址。 completion rules(應(yīng)答機(jī)制):completion包用ID尋址方式,尋址使用的ID就是request提供的requester ID。除了那些正常的域以外,還包括: Completer ID15:0 Identifies the Completer described in detail below Completion Status2:0 Indicates the status for a Completion BC

16、M Byte Count Modified Byte Count11:0 The remaining byte count for Request Tag7:0 in combination with the Requester ID field, corresponds to the Transaction ID Lower Address6:0 lower byte address for starting byte of Completioncompl.Status位有如下含義: 四請(qǐng)求和應(yīng)答處理機(jī)制處理機(jī)制就是對(duì)接收到的經(jīng)Data Link Layer進(jìn)行數(shù)據(jù)完整性驗(yàn)證的Tlp進(jìn)行處理

17、。無(wú)效的包將被拋棄,保留字(reserved)將被忽略。以下是處理流程:對(duì)所有的包分request handling和completion handling,按不同的規(guī)范處理。Request Handling Rules:如果請(qǐng)求是一個(gè)不支持的請(qǐng)求包,并且需要響應(yīng),則Completion Status=UR,即不支持的請(qǐng)求。如果請(qǐng)求包是一個(gè)Message 包則按Message包處理規(guī)則處理,否則對(duì)這個(gè)request進(jìn)行處理。如果請(qǐng)求違反器件編程定義則給出ca響應(yīng),即響應(yīng)器件放棄該請(qǐng)求,否則做出正確應(yīng)答。completion handling: 如果接收到一個(gè)completion包的Transa

18、ction (事物)ID和requester的Transaction ID不一致則這個(gè)應(yīng)答包是非預(yù)期包。合法的應(yīng)答包將按Compl.Status域處理并提取有效數(shù)據(jù)負(fù)荷。 五virtual channel(vc)Mechanism虛擬通道機(jī)制。虛擬信道(virtual channel)在總線中提供用TC域來(lái)區(qū)分的虛擬信息通路,即某一傳輸通路,有不同的流程控制機(jī)制(Flow Control)。當(dāng)某流程控制出現(xiàn)擁塞時(shí),其他通路依然暢通。VC有自己的獨(dú)立流控制,是實(shí)現(xiàn)Qos的秘訣。VC通道是解決擁塞的基礎(chǔ)。在Switch內(nèi)部,VC通道機(jī)制如下:每個(gè)TLP包并不包含具體的VC信息,VC是由TC映射得到

19、的。每個(gè)器件的TC/VC映射是不同的,TC0/VC0是固定的。具體TC、VC映射如下:一個(gè)或多個(gè)TC映射到一個(gè)VC,同一個(gè)TC不能映射到不同的VC上,連接雙方的映射機(jī)制一致。除了TC0外,其他的可以軟件設(shè)置。鏈路兩端的映射方案要一致,如圖是一種映射方案。具體的虛擬通道是由VC ID決定和識(shí)別的?,F(xiàn)在介紹Flow Control,每個(gè)虛擬通道有獨(dú)立的流程控制的緩沖空間。在收發(fā)雙方,流程控制信息是用數(shù)據(jù)鏈路包(DLLP)打包發(fā)送的,其中的“VC ID“就是用來(lái)載送虛擬通道的識(shí)別??偟膩?lái)說(shuō),流程控制是由數(shù)據(jù)交易層(Transaction Layer)搭配了數(shù)據(jù)鏈路層(Data Link Layer)來(lái)處理的,只是,處理層通常是針對(duì)接收到的TLP打包,生成TC,再由TC映射到VC。流程控制信息是FCP(Flow Control Package

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論