PCI-中斷路由機(jī)制_第1頁
PCI-中斷路由機(jī)制_第2頁
PCI-中斷路由機(jī)制_第3頁
PCI-中斷路由機(jī)制_第4頁
全文預(yù)覽已結(jié)束

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)專心-專注-專業(yè)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)PCI中斷路由機(jī)制PCI中斷是可選的,中斷是電平觸發(fā),低電平有效,集電極開路驅(qū)動(dòng)。中斷信號與PCI CLK異步,設(shè)備一旦斷言為低,則要維持低電平狀態(tài),直到驅(qū)動(dòng)程序清除這個(gè)中斷請求。PCI中斷可以為通過鏈的方式來共享。下文會仔細(xì)分析。1. PCI 中斷的硬件組成如圖1所示:在PCI 總線上中斷請求信號引出腳有INTA# - INTD# 4個(gè),單功能設(shè)備只能使用INTA#,而對于多功能設(shè)備,各功能設(shè)備可任意接至PCI 總線的四條中斷申請線INTA# - INTD# 。與中斷

2、密切相關(guān)的PCI配置寄存器是中斷引腳寄存器(Interrupt Pin:0 x3C) 和中斷線寄存器(Interrupt Line:0 x3B)。圖1中斷的硬件結(jié)構(gòu)中斷引腳寄存器(Interrupt Pin:0 x3C): 它是一個(gè)8 位的寄存器,由接口設(shè)計(jì)者根據(jù)PCI設(shè)備使用的PCI 總線中斷引腳(INTA# - INTD#)來設(shè)置:如果設(shè)備使用INTA#腳來申請中斷,該寄存器應(yīng)寫入1;如果設(shè)備使用INTB#腳來申請中斷,該寄存器應(yīng)寫入2;如果設(shè)備使用INTC#腳來申請中斷,該寄存器應(yīng)寫入3 ;如果設(shè)備使用INTD#腳來申請中斷,該寄存器應(yīng)寫入4;如果設(shè)備不使用中斷,該寄存器應(yīng)寫入0,0 x

3、05 到0 xFF為保留值。中斷線寄存器(Interrupt Line:0 x3B): 對于X86 系列的PC 機(jī),各個(gè)插槽的INTA# - INTD#引腳由主板設(shè)計(jì)者通過可編程路由器接到由主從兩個(gè)8259A 組成的系統(tǒng)中斷控制器的IRQ0 - IRQ15 引腳共計(jì)16個(gè)引腳中的未使用引腳上。中斷線寄存器(Interrupt Line)用于保存中斷路由信息的寄存器,在初始化和配置系統(tǒng)時(shí),HOST把路由信息寫入到該寄存器。在PCI 接口卡配置空間中,該寄存器的值表明設(shè)備的中斷引腳( INTA# - INTD#)被連接到系統(tǒng)中斷控制器的哪一個(gè)引腳(1RQO - IRQ15中的哪一個(gè))上了。設(shè)備本身

4、不使用這個(gè)值,設(shè)備驅(qū)動(dòng)和操作系統(tǒng)使用該值來決定中斷的優(yōu)先權(quán)和中斷矢量信息, 義,值0 15 對應(yīng)16個(gè)IRQ 引腳號,值255 用于表示“未知”或“沒有連接到中斷控制器”,值16 到254 保留。例如:某設(shè)備的INTA#被路由至IRQ3 腳,其中斷線寄存器的值會設(shè)置為3??删幊讨袛嗫刂破?PIC:Programmable interrupt controller) 是用來檢測中斷申請。如圖1所示??删幊讨袛嗦酚善骷稍赑CI/ ISA 橋芯片(南橋)中,并且提供了四個(gè)中斷輸入端INTA#、INTB#、INTC#、INTD#;通過路由器編程可以使其與系統(tǒng)中斷控制器的輸入端IRQi連接。INTX#

5、線怎樣路由到IRQi 線上,由系統(tǒng)定義。如果系統(tǒng)的中斷控制器有四個(gè)未使用的中斷請求信號腳可供使用,如圖1所示的IRQW,IRQX ,IRQY,IRQZ ,下面給出的路由機(jī)制可以將所有設(shè)備的中斷請求均勻地分配到四條IRQ線上。設(shè):MB = IRQ 引腳號( IRQW:0 ,IRQX:1 ,IRQY:2 ,IRQZ:3) D = 設(shè)備號I = INTX # 線號( INTA#:0 ,INTB#:1 , INTC#:2 , INTD#:3)MB = ( D + I) MOD 4在母板上的設(shè)備號在PCI設(shè)備上的中斷腳在母板上的中斷腳0,4,8,12,16,20,24,28INTA#IRQWINTB#I

6、RQXINTC#IRQYINTD#IRQZ1,5,9,1317,21,25,29INTA#IRQXINTB#IRQYINTC#IRQZINTD#IRQW2,6,10,1418,22,26,30INTA#IRQYINTB#IRQZINTC#IRQWINTD#IRQX3,7,11,1519,23,27,31INTA#IRQZINTB#IRQWINTC#IRQXINTD#IRQY如下圖2以COM Express的PCI中斷路由為例:圖2 COM Express的中斷路由按照上面的中斷路由表,圖1 設(shè)計(jì)中四個(gè)設(shè)備的七個(gè)中斷的路由情況為: 設(shè)備0 的INTA#, 設(shè)備2 的INTC# 連接IRQW設(shè)備1

7、 的INTA# 連接IRQX設(shè)備2 的INTA#, 設(shè)備1 的INTB# 連接IRQY設(shè)備3 的INTA#, 設(shè)備2 的INTB# 連接IRQZ如此,通過中斷腳和中斷線配置寄存器實(shí)現(xiàn)了中斷的路由和自動(dòng)配置。2. PCI 中斷共享的處理 系統(tǒng)必須為每個(gè)中斷提供對應(yīng)的中斷服務(wù)程序,所有中斷服務(wù)程序的入口地址即中斷向量通常組織在一起形成一個(gè)中斷入口表,在WINDOWS 操作系統(tǒng)中該表稱為中斷描述符表。 由于PCI 的中斷是可以共享的,如圖1所示,按照路由機(jī)制,設(shè)備0的INTA#和設(shè)備2的INTC#共享IRQW線而在中斷入口表中,所有由IRQW線送來的中斷中只能有一個(gè)中斷,其服務(wù)程序的入口存儲在系統(tǒng)中

8、斷入口表中。那么其他中斷服務(wù)程序的入口如何組織呢? 這一般應(yīng)由操作系統(tǒng)決定,通常,如果多個(gè)設(shè)備使用同一個(gè)中斷請求線IRQi,則后登記的中斷入口會覆蓋先登記的服務(wù)程序的入口,先登記中斷的入口被存儲在后登記中斷的服務(wù)程序中,依次形成一條鏈。 按照路由機(jī)制,如果系統(tǒng)在建立中斷入口表時(shí),先掃描到設(shè)備0 的INTA#中斷,則設(shè)備0 中斷服務(wù)程序的入口地址先被寫入中斷入口表中IRQW對應(yīng)的表項(xiàng),其后又掃描到設(shè)備2 的INTC#也使用了IRQW線申請中斷,系統(tǒng)便把設(shè)備2 的INTC#中斷服務(wù)程序的入口地址寫入中斷入口表中IRQW對應(yīng)的表項(xiàng),而設(shè)備O的INTA#中斷服務(wù)程序的入口地址保存在設(shè)備2的INTC#的

9、中斷服務(wù)程序中,如此形成一條鏈。當(dāng)某條IRQ 線有設(shè)備申請中斷時(shí),CPU首先轉(zhuǎn)入最后登記入口的中斷服務(wù)中,可查詢該設(shè)備的中斷請求位,若該位被置1,則執(zhí)行該程序,否則找到下一個(gè)共享中斷的入口,轉(zhuǎn)入下一個(gè)中斷服務(wù)程序執(zhí)行,在該程序中再查詢該設(shè)備的中斷請求位,判斷是否是該設(shè)備提出的中斷,依次類推。如此實(shí)現(xiàn)了中斷的共享處理。3. PCI 中斷共享的實(shí)現(xiàn)PCI總線的中斷共享由硬件與軟件兩部分組成。硬件上,采用電平觸發(fā)的辦法:中斷信號在系統(tǒng)一側(cè)用電阻接高,而要產(chǎn)生中斷的板卡上利用三極管的集電極將信號拉低。這樣不管有幾塊板產(chǎn)生中斷,中斷信號都是低;而只有當(dāng)所有板卡的中斷都得到處理后,中斷信號才會恢復(fù)高電平。軟件上,采用中斷鏈的方法:假設(shè)系統(tǒng)啟動(dòng)時(shí),發(fā)現(xiàn)板卡A用了中斷7,就會將中斷7對應(yīng)的內(nèi)存區(qū)指向A卡對應(yīng)的中斷服務(wù)程序入口ISR_A;然后系統(tǒng)發(fā)現(xiàn)板卡B也用中斷7,這時(shí)就會將中

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論