前面的文章中介紹過,每一個PCIe設備可以只有一個功能(Function),即Fun0。也可以擁有最多8個功能,即多功能設備(Multi-Fun)。不管這個PCIe設備擁有多少個功能,其每一個功能都有一個唯一獨立的配置空間(Configuration Space)與之對應。
和PCI總線一樣,PCIe總線中的每一個功能(Function)都有一個唯一的標識符與之對應。這個標識符就是BDF(Bus,Device,F(xiàn)unction),PCIe的配置軟件(即Root的應用層,一般是PC)應當有能力識別整個PCIe總線系統(tǒng)的拓撲邏輯,以及其中的每一條總線(Bus),每一個設備(Device)和每一項功能(Function)。
在BDF中,Bus Number占用8位,Device Number占用5位,F(xiàn)unction Number占用3位。顯然,PCIe總線最多支持256個子總線,每個子總線最多支持32個設備,每個設備最多支持8個功能。
PCIe總線采用的是一種深度優(yōu)先(Depth First Search)的拓撲算法,且Bus0總是分配給Root Complex。Root中包含有集成的Endpoint和多個端口(Port),每個端口內(nèi)部都有一個虛擬的PCI-to-PCI橋(P2P),并且這個橋也應有設備號和功能號。
需要注意的是,每個設備必須要有功能0(Fun0),其他的7個功能(Fun1~Fun7)都是可選的。
一個簡單的例子如下圖所示:
注:關于PCIe總線的拓撲邏輯會在后面的文章中進行詳細地介紹。
前面的關于PCI總線的文章介紹過PCI總線的配置空間,PCIe總線為了兼容這些PCI設備,幾乎完整的保留了PCI總線的配置空間。并將配置空間擴展到4KB,用于支持一些PCIe總線中新的功能,如PCI Express Capability、Power Management和MSI/MSI-X等。
下圖是從PCI總線中繼承過來的配置空間:
下圖是PCIe新增的配置空間的示意圖:
-
總線
+關注
關注
10文章
2936瀏覽量
89171 -
PCIe
+關注
關注
16文章
1303瀏覽量
84404
原文標題:【博文連載】PCIe掃盲——BDF與配置空間
文章出處:【微信號:ChinaAET,微信公眾號:電子技術應用ChinaAET】歡迎添加關注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關推薦
請問Quartus Ⅱ中怎么把.vhd文件加到.bdf文件(.bdf文件放在頂層)中?
ALTERA FPGA 配置芯片剩余空間使用的問題
VHDL由.bdf文件轉(zhuǎn)換成.bsf文件出錯
關于qutartus中bdf文件的問題,求解!
Quartus II 9.0 Bdf 無法打開
重啟TouchGFX后,.bdf字體不起作用怎么解決?
PCI設備配置空間研究

Device Studio應用實例之BDF(上)
Device Studio應用實例之BDF(下)
STM32CubeIDE實用技巧之配置堆空間

納祥科技30V 30A雙N溝道MOSFET NX7011,PIN TO PIN AP20G02BDF

評論