Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1113428
  • 博文数量: 254
  • 博客积分: 1242
  • 博客等级: 少尉
  • 技术积分: 1581
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-03 21:49
文章分类

全部博文(254)

文章存档

2017年(16)

2016年(4)

2013年(94)

2012年(140)

分类: LINUX

2013-03-11 09:47:45

原文地址:PCIe设备的配置空间 作者:cengku

PCIe设备的配置空间

关于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结构

阅读(7017) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~