天天看點

1.1 PCI&PCIE 配置寄存器通路1、PCIE 寄存器的總體結構:2、PCI Capabilities List(40 - FF)的組織方法:3、PCIE Capabilities List(100 - FFF)的組織方法:4、執行個體:5、參考資料:

1、PCIE 寄存器的總體結構:

PCI的配置寄存器空間為256個位元組大小。PCIE擴充了配置寄存器空間,大小為4096的位元組。PCIE配置寄存器的整體分布如下圖所示:

1.1 PCI&PCIE 配置寄存器通路1、PCIE 寄存器的總體結構:2、PCI Capabilities List(40 - FF)的組織方法:3、PCIE Capabilities List(100 - FFF)的組織方法:4、執行個體:5、參考資料:

從上圖可見,整個PCIE配置空間被分成了3部分,其中0-FF為PCI相容的配置空間,100-FFF為PCIE擴充的空間。每部分的作用大概如下:

  • a、0-3F :這部分的配置空間是标準的PCI配置空間頭,是每個PCI/PCIE裝置都必須遵循的。目前一共有3種标準頭格式,00是PCI DEVICE頭,01是PCI-PCI bridge頭,02是Cardbus bridge頭。頭類型由Header Type寄存器定義。
  • b、40-FF :這部分定義PCI擴充功能寄存器。0-3F定義的寄存器是每個PCI裝置都必須實作的,而PCI的一些擴充功能,不是每個裝置都必須實作的,可以根據自己的需要來實作其中一部分特性。重點注意的是這部分寄存器的組織結構,每一個可選的特性被組織成一個标準的Capability Struct,裝置選用的多個Capabilities用連結清單的方式組織起來,稱為Capabilities List。PCIE即在PCI原有的Capabilities當中新增了一種ID,即PCIE Capability Struct。這樣可以實作對老的PCI驅動的相容。
  • c、100-FFF:這部分定義PCIE擴充功能寄存器。實作PCIE的可選特性,也是采取Capabilities List結構組織起來的。

2、PCI Capabilities List(40 - FF)的組織方法:

40-FF區域用來實作可選的PCI特性,每個特性對應一個Capability Struct,所有實作的特性用連結清單的方式組織起來,稱為Capabilities List。組織形式如下圖所示:

1.1 PCI&PCIE 配置寄存器通路1、PCIE 寄存器的總體結構:2、PCI Capabilities List(40 - FF)的組織方法:3、PCIE Capabilities List(100 - FFF)的組織方法:4、執行個體:5、參考資料:

在标準PCI頭的寄存器中,”status”(06h)寄存器bit4定義了本裝置是否有Capabilities List,”Capabilities Pointer”(34h)寄存器定義了Capabilities List連結清單頭指針。如下圖所示:

1.1 PCI&PCIE 配置寄存器通路1、PCIE 寄存器的總體結構:2、PCI Capabilities List(40 - FF)的組織方法:3、PCIE Capabilities List(100 - FFF)的組織方法:4、執行個體:5、參考資料:

需要特别注意注意的是,PCI配置寄存器是不能随意增加的。寄存器需要根據特性組織成Capabilities Struct,對Capabilities Struct是有統一規定的,包括标準特性和自定義特性。

現在協定規定的Capabilities ID有下列特性:

1.1 PCI&PCIE 配置寄存器通路1、PCIE 寄存器的總體結構:2、PCI Capabilities List(40 - FF)的組織方法:3、PCIE Capabilities List(100 - FFF)的組織方法:4、執行個體:5、參考資料:

3、PCIE Capabilities List(100 - FFF)的組織方法:

100-FFF區域用來實作PCIE獨有可選的PCI特性,也都是使用Capabilities List的形式來組織的,隻是具體的Capbalities Struct結構有些擴充。

1.1 PCI&PCIE 配置寄存器通路1、PCIE 寄存器的總體結構:2、PCI Capabilities List(40 - FF)的組織方法:3、PCIE Capabilities List(100 - FFF)的組織方法:4、執行個體:5、參考資料:

4、執行個體:

以系統A的PCIE配置空間為例來說明Capabilities List的組織方法:

1.1 PCI&PCIE 配置寄存器通路1、PCIE 寄存器的總體結構:2、PCI Capabilities List(40 - FF)的組織方法:3、PCIE Capabilities List(100 - FFF)的組織方法:4、執行個體:5、參考資料:

5、參考資料:

  • PCI Local Bus Specification Revision 2.3
  • PCI Express Base Specification Revision 1.1

繼續閱讀