PCIe协议学习笔记之--Configuration Overview

1 BDF (Bus, Device, Function)

BDF是在PCI中就有了的概念。在PCIe 拓扑结构中,我们通过总线号(bus number), 设备号(device numer)和功能号(function number)来唯一地标识各个function。Bus number用于表征当前设备挂载于哪条bus下面,Device number用于表征设备具体是总线下的哪个设备,function number用于表征是device里面的哪个function。

如上例图,从bus 0开始,每经过一个virtual P2P bridge就会形成一个新的Bus。PCIe最多支持256个bus number。软件通过“枚举”的流程来明确整个PCIe拓扑结构,在枚举时遵循深度优先原则,一旦发现一条新的bus后就继续扫描新bus下面的设备。

在单个bus下面最多可以支持32个设备。由于PCIe是点对点的协议,即单个PCIe link两端都只有1个设备(device)链接在一起,因此在PCIe拓扑结构中引入了Vritual P2P Bridge。Vritual P2P Bridge与Vritual P2P Bridge之间是通过virtual bus连接的,不受点对点的限制,这样就使得单个bus下面挂载多个设备成为可能。只有RC和Switch内部的bus下面才能挂载多个设备。

每个设备必须实现function-0, 最多可以实现8个function, 实现的多个function可以是不连续的,比如,function-0,2,7。软件扫描设备发现是multi-function设备时,就必须对该设备的所有function进行check。每个function都有自己独立的config adress space。

2 Configuration Address Spa

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值