1 1 PCI PCIE 配置暫存器訪問

2021-08-09 05:37:46 字數 1108 閱讀 4181

pci的配置暫存器空間為256個位元組大小。pcie擴充套件了配置暫存器空間,大小為4096的位元組。pcie配置暫存器的整體分布如下圖所示:

從上圖可見,整個pcie配置空間被分成了3部分,其中0-ff為pci相容的配置空間,100-fff為pcie擴充套件的空間。每部分的作用大概如下:

40-ff區域用來實現可選的pci特性,每個特性對應乙個capability struct,所有實現的特性用鍊錶的方式組織起來,稱為capabilities list。組織形式如下圖所示:

在標準pci頭的暫存器中,」status」(06h)暫存器bit4定義了本裝置是否有capabilities list,」capabilities pointer」(34h)暫存器定義了capabilities list煉表頭指標。如下圖所示:

需要特別注意注意的是,pci配置暫存器是不能隨意增加的。暫存器需要根據特性組織成capabilities struct,對capabilities struct是有統一規定的,包括標準特性和自定義特性。

現在協議規定的capabilities id有下列特性:

100-fff區域用來實現pcie獨有可選的pci特性,也都是使用capabilities list的形式來組織的,只是具體的capbalities struct結構有些擴充套件。

以系統a的pcie配置空間為例來說明capabilities list的組織方法:

11 標誌暫存器

1.cpu內部的暫存器中,有一種特殊的暫存器 對於不同的處理機,個數和結構都有可能不同 具有以下3種作用。1 用來儲存相關指令的某些執行結果 2 用來為cpu執行相關指令提供行為依據 3 用來控制cpu的相關工作方式。這種特殊的暫存器在8086cpu中,被稱為標誌暫存器.本章中的標誌暫存器 以下簡稱...

串列埠暫存器配置

串列埠操作相關庫函式 void usart init 串列埠初始化 波特率,資料字長,奇偶校驗,硬體流控以及收發使能 void usart cmd 使能串列埠 void usart itconfig 使能相關中斷 void usart senddata 傳送資料到串列埠,dr uint16 t us...

TMOD SCON PCON暫存器的配置

tmod控制暫存器 tmod是定時器 計數器模式控制暫存器,它是乙個逐位定義的8為暫存器,但只能使用位元組定址。其各位是 由上圖我們就可以看出,這個暫存器控制了兩個定時器 計數器 暫存器的高四位控制定時器1,低四位控制定時器0 gate 門控制 gate 0 僅由tr0,tr1置位分別啟動定時器t0...