关于PCI设备的配置空间网上已经有很多资料了,如下图就是PCI设备必须支持的64个字节的配置空间,范围为0x00-0x3f。
很多PCI设备仅仅支持者64字节的配置空间。PCI和PCIe配置空间的区别如下文。
此外PCI/PCI-X和PCIe设备还扩展了0x40和0xFF这段配置空间,这段空间主要存放一些与MSI或者MSI-X 中断机制相关的Capability结构。其中所有能够提交中断请求的PCIe设备,必须支持MSI或者MSI-X 中断机制相关的Capability结构。
PCIe设备还支持0x100 -0xFFF这段扩展配置空间。PCIe设备的扩展配置空间最大为4KB,在PCIe总线的扩展配置空间中,存放PCIe所独有的一些Capability结构,而PCI设备不能使用这段空间。
在x86处理器中,使用CONFIG_ADDRESS寄存器与CONFIG_DATA寄存器访问0x00-0xFF,而使用ECAM方式访问0x000-0xFFF这段空间;而在PowerPC处理器中,可以使用CFG_DATA和CFG_ADDR寄存器访问0x000-0xFFF。
PCI-x和PCIe总线规范要求其设备必须支持Capabilities结构。在PCI基本配置空间中有一个Capabilities Pointer寄存器,存放指向Capabilities结构链表的头指针。一个PCIe设备可以包含多个Capability结构,包括电源管理、与PCIe总线相关的结构、与中断请求相关的结构、PCIe Capability结构和PCIe 扩展Capability结构
相关文章
- 更改jenkins的默认工作空间并迁移插件和配置数据
- MyEclipse新建工作空间后的配置详细步骤
- 新建的工作空间,开始工作前的电脑配置、Eclipse配置(总结)
- ECLIPSE切换工作空间,使用之前存在的配置,不需要重新配置
- STM32使用STM32CubeMX配置烧录后无法识别设备的解决方法
- 【云原生】设备云之云服务器的配置与使用
- 如何用JVS低代码实现配置设备管理应用,设备维保自动到期的功能
- Oracle for AIX基于裸设备的表空间扩充步聚
- 由于其配置信息(注册表中的)不完整或已损坏,Windows 无法启动这个硬件设备。 (代码 19)
- 摄像头 由于其配置信息(注册表中的)不完整或已损坏,Windows 无法启动这个硬件设备。 (代码 19)