《PCI EXPRESS体系结构导读》---(3)PCI总线配置请求的转换原则

只有Type01h配置请求可以被转换为Type00h,反之不行。当CONFIG_ADDRESS寄存器的Bus Number字段为0时,处理器对CONFIG_DATA寄存器操作时,HOST主桥将直接产生Type00h配置请求,挂接在PCI总线0上的某个设备将通过ID译码接收这个Type00h配置请求,并对配置寄存器进行读写操作。如果PCI总线上没有设备接收这个Type00h配置请求,将引I发MasterAbort,详情见PCI总线规范。

如果CONFIG_ADDRESS寄存器的Bus Number字段为n(n≠0),即访问的PCI设备不是直接挂接在PCI总线0上的,此时HOST主桥对CONFIG_DATA寄存器操作时,将产生 Type01h配置请求,PCI总线0将遍历所有在这条总线上的PCI桥,确定由哪个PCI桥接收这个Type01h配置请求。

如果n大于或等于某个PCI桥的Secondary Bus Number寄存器,而且小于或等于Subordinate Busnumber寄存器,那么这个PCI桥将接收在当前PCI总线上的Type01配置请求,并采用以下规则进行递归处理:

  • 开始遍历当前PCI总线的所有桥。
  • 如果n等于某个桥的Secondary Bus Number,说明这个Type01h配置请求的目标直接连接在该PCI桥的Secondary bus上。此时PCI桥将Type 01配置请求转换为Type00h配置请求,并且将这个配置请求转发到Secondary bus上,其中的某个设备会响应这个Type00请求,并与Host主桥进行配置信息的交换。流程结束。
  • 如果n大于某个桥的Secondary Bus Number,且小于或等于Subordinate Busnumber寄存器,说明这个Type01h配置请求的目标设备不与该PCI桥的Secondary bus直接相连,但是由这个PCI桥下游总线上的某个PCI桥管理。此时PCI桥将首先认领这个Type01配置请求,将其转发到Secondary bus上。
相关推荐
元直数字电路验证4 天前
【CXL】开篇导读 --- CXL是什么以及如何学习
学习·pcie·cxl
FPGA_小田老师14 天前
PCIe XDMA数据传输:三种工作模式详解(ARM发起 → FPGA自主)
fpga开发·pcie·xdma·c2h·fpga触发传输
霞姐聊IT17 天前
SR-IOV、MR-IOV 与 SIOV:PCIe虚拟化技术的过去、现在与未来
linux·服务器·虚拟化·pcie
婷婷_17220 天前
【PCIe 验证每日学习・Day36】PCIe 存储器寻址空间与 BAR 底层原理
网络·学习·程序人生·芯片·pcie
黑猫学长呀22 天前
存储宝典第3篇:存储芯片中test mode是什么意思?
ssd·nvme·pcie·ufs·emmc·存储芯片·sata
emm的金毛23 天前
PCIe总线-PCIe体系结构(3)
网络·pcie
9527华安1 个月前
FPGA实现PCIe数据通信培训课程,提供工程源码+视频教程+FPGA开发板
fpga开发·pcie·视频教程·培训
爱吃芹菜炒肉2 个月前
Chapter 16: Power Management
服务器·c语言·网络·tcp/ip·pcie
emm的金毛2 个月前
PCIe总线-PCIe体系结构(1)
pcie
凉、介2 个月前
别再把 PCIe 的 inbound/outbound、iATU 和 eDMA 混为一谈
linux·笔记·学习·嵌入式·pcie