1. 程式人生 > >PCIe學習筆記(15)--- TLP的ROUTING方式

PCIe學習筆記(15)--- TLP的ROUTING方式

ecif 一點 gis 2.0 一個 receiver 學習 hot plug 判斷

PCIE是POINT TO POINT的,不像PCI,是SHARED-BUS,總線上的數據,是被所有EP DEV看到的。

這一點與USB2.0比較類似,是廣播方式的(BROADCASTING)

USB3.0也修改了廣播方式,變成了ROUTING方式

OS(ORDERED SET) 與DLLP是在一個LINK之間交互的,不需要ROUTING

TLP可能會在多條LINK之間交互,所以需要ROUTING

TLP有幾種ROUTING方式:

一,ADDRESS

小於4BG的內存空間,使用3DW的TLP HEADER

大於4GB的內存空間,使用4DW的TLP HEADER

IO空間,只有32-BITS,使用3DW的TLP HEADER

EP通過BAR來判斷一次

SWITCH首先通過BAR來判斷一次,是否針對自己

如果不是,剛再通過BASE/LIMIT來決斷一次,是否針對下面的EP(BASE/LIMIT要針對 NP, P, IO三種類型)

二,ID(B.D.F)

對於PCIE EP來說,只需要CHECK一次,判斷TLP中的B.D.F是不是針對自己的

對於SWITCH(每一個P2P)來說,需要CHECK兩次,一次是判斷是否針對自己,如果是,則消耗掉了該TLPL;如果不是,則再次通過SECONDARY BUS與SUBORDINATE BUS REGISTERS來判斷,是否針對該SWITCH下遊的EP

所以,ADDRESS與B.D.F中

BASE/LIMIT與SECONDARY/SUBORDINATE BUS是起相同作用的一組寄存器,限定了SWITCH下面的ADDRESS/BUS的範圍

三,IMPLICITLY(利用了BRIDGE知道其上遊及下遊,RC在TOPOLOGY的頂層,EP在TOPOLOGY的底層, 在一個TOPOLOGY中,只有一個RC)

MESSAGE TLP可以使用IMPLICITLY方式的ROUTING, MESSAGE TLP的存在,就是為了免除了原來PCI/PCI-X的SIDEBAND SIGNAL(如INT, POWER MANAGEMENT等, RC往往是這些內容的SOURCE或者DESTINATION)

具體的MESSAGES包括如下:

Hot Plug signaling

Vendor-specific signaling

Slot Power Limit settings

Power Management

INTx legacy interrupt signaling

Error signaling

Locked Transaction support

MESSAGE TLP,均為4DW

有三位來表示MESSAGE ROUTING的方式:

000 implicit - route to the rc

001 route by address

010 route by id

011 implicit - broadcast downstream

100 implicit - local: terminate at receiver

101 implicit - gather & route to the rc

110 reserved terminate at recevier

111 reserved terminate at receiver

轉載:http://blog.csdn.net/u013140088/article/details/65634756

PCIe學習筆記(15)--- TLP的ROUTING方式