看完兩章后感覺此書干貨很多(有時(shí)候覺得廢話也挺多),特別是關(guān)于橋的配置/bus號(hào)/device號(hào)的分配過程的描述的比較詳細(xì)。
要點(diǎn):
- PCI設(shè)備能直接使用的地址是PCI總線域的地址,處理器能夠直接使用的是存儲(chǔ)器域的地址,PCI主橋負(fù)責(zé)在這兩種地址之間轉(zhuǎn)換。當(dāng)然為了方便管理,可以把這兩種地址設(shè)置為相同的值(如果是I/O地址,則一定相同)。
- 每一條PCI總線上都有一個(gè)總線仲裁器,每一個(gè)PCI主設(shè)備都有獨(dú)立的總線仲裁信號(hào),并與PCI總線仲裁器一一相連。可見一條PCI總線可以掛接PCI主設(shè)備的數(shù)目,除了與負(fù)載能力相關(guān)外,還和仲裁器能夠提供的仲裁信號(hào)數(shù)目直接相關(guān)。某PCI主設(shè)備使用PCI總線進(jìn)行數(shù)據(jù)傳遞時(shí),首先置REQ#信號(hào)有效,向PCI仲裁器發(fā)出申請(qǐng),如果仲裁器允許PCI主設(shè)備獲得總線使用權(quán),則將相應(yīng)GNT#信號(hào)置為有效。之后此PCI主設(shè)備就獲得了總線使用權(quán),可開始數(shù)據(jù)通信。
- 如果感覺CPU寫PCI設(shè)備時(shí)速度低,考慮檢查是否是Posted傳送方式(只支持存儲(chǔ)器空間寫請(qǐng)求)。
- 如果感覺各設(shè)備相互影響,PCI總線利用效率低,考慮Non-Posted傳送方式(一般用于存儲(chǔ)器空間讀請(qǐng)求、IO/讀寫請(qǐng)求、配置讀寫請(qǐng)求)下是否支持了Split總線事務(wù)。
- PCI橋一般都沒有私有寄存器,操作系統(tǒng)也不需要為PCI橋提供專門的驅(qū)動(dòng)程序,這也是這類橋被稱為透明橋的原因。(俺覺得這并不表示橋不需要配,只是不需要用戶寫驅(qū)動(dòng),因?yàn)樗潜粌?nèi)核自帶的PCI總線驅(qū)動(dòng)配置的)
關(guān)于中斷,下表為PCI橋規(guī)范推薦使用的建立下游PCI設(shè)備的INTx信號(hào)與上游PCI總線INTx信號(hào)之間的映射關(guān)系。
PCI設(shè)備INTx#信號(hào)與PCI總線INTx#信號(hào)的映射關(guān)系
設(shè)備號(hào) | PCI設(shè)備的INTx#信號(hào) | PCI總線的INTx#信號(hào) |
---|---|---|
0, 4, 8, 12, 16, 20, 24, 28 | INTA# | INTA# |
INTB# | INTB# | |
INTC# | INTC# | |
INTD# | INTD# | |
1, 5, 9, 13, 17, 21, 25, 29 | INTA# | INTB# |
INTB# | INTC# | |
INTC# | INTD# | |
INTD# | INTA# | |
2, 6, 10, 14, 18, 22, 26, 30 | INTA# | INTC# |
INTB# | INTD# | |
INTC# | INTA# | |
INTD# | INTB# | |
3, 7, 11, 15, 19, 23, 27, 31 | INTA# | INTD# |
INTB# | INTA# | |
INTC# | INTB# | |
INTD# | INTC# |
我畫了個(gè)簡(jiǎn)化版的映射關(guān)系圖,適合最常見的場(chǎng)景,只有一層橋,所有設(shè)備只使用INTA。很明顯,這樣映射的主要好處就是負(fù)載均衡。
明天繼續(xù)閱讀PCI總線的數(shù)據(jù)交換部分,一些硬件細(xì)節(jié)應(yīng)該可以跳過,希望盡快進(jìn)入軟件相關(guān)章節(jié)。
-
存儲(chǔ)器
+關(guān)注
關(guān)注
38文章
7653瀏覽量
167409 -
PCI
+關(guān)注
關(guān)注
5文章
679瀏覽量
132075 -
i/o
+關(guān)注
關(guān)注
0文章
33瀏覽量
4704
發(fā)布評(píng)論請(qǐng)先 登錄
淺析PCI體系結(jié)構(gòu)
聊聊嵌入式系統(tǒng)需求分析與體系結(jié)構(gòu)設(shè)計(jì)的一些基礎(chǔ)知識(shí)
計(jì)算機(jī)體系結(jié)構(gòu)的相關(guān)資料推薦
基于FPGA的串行RapidIO-PCI轉(zhuǎn)接橋設(shè)計(jì)
PCI Express 至PCI 橋設(shè)計(jì)原理及應(yīng)用
LTE體系結(jié)構(gòu)
什么是PCI Express協(xié)議
FPGA在PCI Express總線接口中的應(yīng)用

用于基于超級(jí)體系結(jié)構(gòu)設(shè)備的PCI Express總線接口資料免費(fèi)下載

淺談PCI Express體系結(jié)構(gòu)(二)

淺談PCI Express體系結(jié)構(gòu)(四)

評(píng)論