PCI總線的信號定義
PCI總線是一個同步總線,每一個設備都具有一個CLK信號,其發送設備與接收設備使用這個CLK信號進行同步數據傳遞。PCI總線可以使用33MHz或者66MHz的時鐘頻率,而PCI-X總線可以使用133MHz、266MHz或者533MHz的時鐘頻率。
本文引用地址:http://www.104case.com/article/201612/330239.htm除了RST#、INTA~D#、PME#和CLKRUN#等信號之外,PCI設備使用的絕大多數信號需要與CLK信號同步。其中RST#是復位信號,PCI設備使用INTA~D#信號進行中斷請求。本篇并不關心PME#和CLKRUN#信號。
1.2.1地址和數據信號
在PCI總線中,與地址和數據相關的信號如下所示。
(1)
PCI總線復用地址與數據信號。PCI總線事務在啟動后的第一個時鐘周期傳送地址,這個地址是PCI總線域的存儲器地址或者I/O地址;而在下一個時鐘周期傳送數據[1]。傳送地址的時鐘周期也被稱為地址周期,而傳送數據的時鐘周期也被稱為數據周期。PCI總線支持突發傳送,即在一個地址周期之后,可以緊跟多個數據周期。
(2)
PCI總線使用奇偶校驗機制,保證地址和數據信號在進行數據傳遞時的正確性。PAR信號是AD[31:0]和C/BE[3:0]的奇偶校驗信號。PCI主設備在地址周期和數據周期中,使用該信號為地址和數據信號線提供奇偶校驗位。
(3)
PCI總線復用命令與字節選通引腳。在地址周期中,C/BE[3:0]信號表示PCI總線的命令。而在數據周期,C/BE[3:0]引腳輸出字節選通信號,其中C/BE3、C/BE2、C/BE1和C/BE0與數據的字節3、2、1和0對應。使用這組信號可以對PCI設備進行單個字節、字和雙字訪問。PCI總線通過C/BE[3:0]#信號定義了多個總線事務,這些總線事務如表1?2所示。
表1?2PCI總線事務
C/BE[3:0]# | 命令類型 | 說明 |
0000 | Interrupt Acknowledge | 中斷響應總線事務讀取當前掛接在PCI總線上的中斷控制器的中斷向量號。目前大多數處理器系統的中斷控制器都不掛接在PCI總線上,因此這種總線事務很少被使用。 |
0001 | Special Cycle | HOST主橋可以使用Special Cycle事務在PCI總線上,進行信息廣播。 |
0010 | I/O Read | HOST主橋可以使用該總線事務對PCI設備的I/O地址空間進行讀操作。目前多數PCI設備都不支持I/O地址空間,而僅支持存儲器地址空間,但是仍有部分PCI設備同時包含I/O地址空間和存儲器地址空間。 |
0011 | I/O Write | 對PCI總線的I/O地址空間進行寫操作。 |
0100 | Reserved | 保留 |
0101 | Reserved | 保留 |
0110 | Memory Read | HOST主橋可以使用該總線事務對PCI設備的存儲器空間進行讀操作。PCI設備也可以使用該總線事務讀取處理器的存儲器空間。 |
0111 | Memory Write | HOST主橋可以使用該總線事務對PCI設備的存儲器空間進行寫操作。PCI設備也可以使用該總線事務向處理器的存儲器空間進行寫操作。 |
1000 | Reserved | 保留 |
1001 | Reserved | 保留 |
1010 | Configuration Read | HOST主橋可以對PCI設備的配置空間進行讀操作。每一個PCI設備都有獨立的配置空間。在多功能PCI設備中,每一個子設備(Function)也有一個獨立的配置空間。該總線事務只能由HOST主橋發出,PCI橋可以轉發該總線事務。 |
1011 | Configuration Write | HOST主橋對PCI設備的配置空間進行寫操作。 |
1100 | Memory Read Multiple | HOST主橋可以使用該總線事務對PCI設備的存儲器空間進行多行讀操作,這種操作并不多見。該總線事務的主要用途是供PCI設備使用,讀取主存儲器。這個讀操作與Memory Read操作(C/BE[3:0]為0x0110時)略有不同,詳見第3.4.5節。 |
1101 | Dual Address Cycle | PCI總線支持64位地址,處理器或者其他PCI設備訪問64位PCI總線地址時,必須使用雙地址周期產生64位的PCI總線地址。PCI設備使用DMA讀寫方式訪問64位的存儲器地址時,也可以使用該總線事務。 |
1110 | Memory Read Line | HOST主橋可以使用該總線事務對PCI設備的存儲器空間進行單行讀操作,這種操作并不多見。該總線事務的主要用途是供PCI設備使用,讀取主存儲器。詳見第3.4.5節。 |
1111 | Memory Write and Invalidate | 存儲器寫并無效操作,與存儲器寫不同,PCI設備可以使用該總線事務對主存儲器空間進行寫操作。該總線事務將數據寫入主存儲器的同時,將對應Cache行中的數據“使無效”,詳見第3.3.4節。 |
1.2.2接口控制信號
在PCI總線中,接口控制信號的主要作用是保證數據的正常傳遞,并根據PCI主從設備的狀態,暫停、終止或者正常完成當前總線事務,其主要信號如下。
(1)
該信號指示一個PCI總線事務的開始與結束。當PCI設備獲得總線的使用權后,將置該信號有效,即置為低,啟動PCI總線事務,當結束總線事務時,將置該信號無效,即置為高。PCI設備(HOST主橋)只有通過仲裁獲得當前PCI總線的使用權后,才能驅動該信號。
評論