專利名稱:支持信息信號式中斷的芯片組以及控制器的制作方法
技術(shù)領(lǐng)域:
本實用新型是有關(guān)于一種外設(shè)連接(peripheral componentinterconnection,簡稱PCI)總線的兼容接口裝置,特別是有關(guān)于一種PCI總線上與中斷處理方法相兼容的硬件裝置。
FRAME信號由起始器所送出,用以指示存取操作的開始與持續(xù)期間,F(xiàn)RAME信號送出時,表示通過PCI總線的數(shù)據(jù)交換開始進(jìn)行,當(dāng)FRAME信號維持在低準(zhǔn)位則表示數(shù)據(jù)交換持續(xù)進(jìn)行,此時,首先會在地址周期期間,于地址數(shù)據(jù)總線的AD信號送出有效地址(validaddress),同時會在CBE[30]線送出有效的總線命令(滿足PCI規(guī)格),用以對目標(biāo)裝置指出起始器所要求的數(shù)據(jù)交換形態(tài),其中CBE〔30〕線以4位編碼成16種不同的總線命令,其在PCI規(guī)格中有詳細(xì)定義。在有效地址后,地址數(shù)據(jù)總線AD便送出要傳送的數(shù)據(jù),此時期稱為數(shù)據(jù)周期,同時于CBE〔03〕線送出編碼后的總線命令,借此以傳送數(shù)據(jù)。IRDY信號與TRDY信號兩者配合使用,用以分別指示起始裝置與目標(biāo)裝置已經(jīng)備妥而可以進(jìn)行數(shù)據(jù)傳送。例如在讀取動作進(jìn)行時,IRDY信號表示起始器準(zhǔn)備好接收數(shù)據(jù),而在進(jìn)行寫入操作時,TRDY信號表示目標(biāo)裝置準(zhǔn)備好接收數(shù)據(jù)。至于STOP信號,目標(biāo)裝置用其來要求起始器停止目前的數(shù)據(jù)交換。當(dāng)FRAME信號停止送出,就表示交易狀態(tài)為最后一筆數(shù)據(jù)傳送,或是已經(jīng)完成數(shù)據(jù)傳送。
除了上述數(shù)據(jù)交換時作為控制的接口控制信號外,PCI總線還定義了四個中斷信號INTA、INTB、INTC、以及INTD,當(dāng)任意一個PCI總線上的外設(shè)需要驅(qū)動程序處理時,可通過這些中斷信號來引起注意。但是,PCI總線上的外設(shè)當(dāng)然不只一個,這時候中斷信號就是有限的資源,于是共享中斷信號變成無可避免,因為當(dāng)中斷發(fā)生時,中斷服務(wù)程序必須檢查外設(shè)的狀態(tài),以判別是哪一個外設(shè)發(fā)起中斷,作為進(jìn)一步將控制權(quán)交給正確的外設(shè)驅(qū)動程序之依據(jù),因而也造成軟件上的負(fù)擔(dān)。
圖1顯示公知的一種應(yīng)用在個人計算機主板上,PCI總線兼容系統(tǒng)的構(gòu)架示意圖,請參照圖1。一般公知的個人計算機主板1包括有控制芯片組100、動態(tài)隨機存取存儲器110、中央處理器120、PCI總線I 130、外設(shè)150等,其中控制芯片組100包括南橋(South Bridge)芯片102以及北橋(North Bridge)芯片104。許多公知的高級主板還包括有PCI-PCI橋接器140、PCI總線II 160以及位于第二階層的外設(shè)170等。
當(dāng)任意一個外設(shè)150需要其中斷服務(wù)程序處理時,會在PCI總線I130上,開始內(nèi)存寫入交易,希望將待處理數(shù)據(jù)通過控制芯片組100,寫入動態(tài)隨機存取存儲器110,同時外設(shè)150并發(fā)出PCI總線上的四個中斷信號之一,以引起系統(tǒng)的注意。此時,控制芯片組100必須在適當(dāng)?shù)臅r機,發(fā)出中斷信號INTR至中央處理器120,以使中央處理器來處理待處理數(shù)據(jù),而中央處理器120也必須在適當(dāng)?shù)臅r機來處理待處理數(shù)據(jù)。眾所周知,由于效能上的考慮,PCI總線系統(tǒng)是一個允許多主控器的多任務(wù)系統(tǒng),當(dāng)控制芯片組100開始了內(nèi)存寫入交易,并不表示數(shù)據(jù)已經(jīng)完整寫入動態(tài)隨機存取存儲器110,待處理數(shù)據(jù)可能仍存在控制芯片組100中的緩沖器,尚未真正寫入動態(tài)隨機存取存儲器110,而且控制芯片組100的緩沖器中可能存在有由不同外設(shè)所發(fā)出的復(fù)數(shù)筆數(shù)據(jù)。如果,中央處理器120在待處理數(shù)據(jù)尚未真正寫入動態(tài)隨機存取存儲器110前,就開始了待處理數(shù)據(jù)的處理,顯然地,將造成處理數(shù)據(jù)的錯誤,這是絕對不能發(fā)生的情形。
公知的一種解決上述問題的方法是在控制芯片組100中,控制產(chǎn)生中斷信號INTR至中央處理器120的時機,主要的做法是當(dāng)待處理數(shù)據(jù)尚未完全寫出時,不允許中斷信號INTR的產(chǎn)生,由于寫入緩沖器中可能存在有屬于不同外設(shè)的復(fù)數(shù)筆數(shù)據(jù),而控制芯片組100無法判斷哪一筆數(shù)據(jù)是待處理數(shù)據(jù),只好當(dāng)寫入緩沖器內(nèi)所有的數(shù)據(jù)尚未完全寫出時,就不允許中斷信號INTR的產(chǎn)生。因此,這樣的做法將造成延遲產(chǎn)生中斷信號INTR,而影響了性能。眾所周知,當(dāng)緩沖器的深度愈深時,可能造成的寫入緩沖器延遲(write-buffer latency)的時間愈長,尤其現(xiàn)在的控制芯片組100中,南橋芯片102負(fù)責(zé)控制PCI總線130,北橋芯片104負(fù)責(zé)控制動態(tài)隨機存取存儲器110,這種寫入緩沖器延遲將更加嚴(yán)重,更何況是當(dāng)外設(shè)170需要中斷處理時,通過多階層式的PCI總線兼容構(gòu)架,寫入緩沖器延遲更加難以預(yù)估。
公知的另一種做法是控制中央處理器120處理待處理數(shù)據(jù)的時機。由于作中斷處理時,中央處理器120一般必須檢查外設(shè)的狀態(tài),以作為判別中斷處理等的依據(jù),故這種做法主要是必須等到待處理數(shù)據(jù)完整寫出后,中央處理器120才能檢查外設(shè)的狀態(tài),通過中央處理器讀取延遲(CPU read delay)來達(dá)到控制的目的。但是,此種作法除了有上述寫入緩沖器延遲的缺點外,還由于一般中央處理器的讀取周期不會有多任務(wù)管線(pipeline)功能,故更加嚴(yán)重影響系統(tǒng)的效能。
在PCI總線2.2的規(guī)格中提供一種可選擇(option)的中斷方式叫做信息信號式中斷(Message Signaled Interrupt簡稱MSI)。所謂的信息信號式中斷就是外設(shè)經(jīng)過寫入系統(tǒng)指定信息(system specifed message)到系統(tǒng)指定地址(system specified address),也就是以PCI總線中的一個雙字符組(double word)來作為內(nèi)存寫入交易的系統(tǒng)指定地址,并將系統(tǒng)指定信息寫入此系統(tǒng)指定地址,來達(dá)成產(chǎn)生中斷請求的目的,這些系統(tǒng)指定的信息及地址,當(dāng)PCI總線系統(tǒng)在裝置組態(tài)(during deviceconfiguration)時,所初始化(initialize)指定的。但是,目前所見的支持信息信號式中斷的系統(tǒng),對于系統(tǒng)指定地址都使用同一個地址,降低了系統(tǒng)在同一個中斷服務(wù)程序中,處理外設(shè)的多數(shù)個不同信息的彈性,而所剩余的彈性僅在利用16位的系統(tǒng)指定信息來代表名種可能造成中斷的原因。而且,目前所見的系統(tǒng),并未解決上述寫入緩沖器延遲的問題,還可能造成一些其它狀況,例如由于寫入緩沖器延遲太長導(dǎo)致系統(tǒng)指定地址中新的系統(tǒng)指定信息覆蓋舊的系統(tǒng)指定信息。
本實用新型提供一種信息信號式中斷控制器,可應(yīng)用于計算機系統(tǒng),此計算機系統(tǒng)至少包括控制芯片組、PCI總線以及系統(tǒng)內(nèi)存,此控制芯片組耦接至PCI總線以及系統(tǒng)內(nèi)存,而此控制芯片組包括有動態(tài)隨機存取存儲器控制器、主機接口以及中斷控制器,這個信息信號式中斷控制器包括信息信號式中斷偵測器,耦接至PCI總線以及動態(tài)隨機存取存儲器控制器,用以監(jiān)視PCI總線上的內(nèi)存寫入交易,當(dāng)內(nèi)存寫入交易的地址落于保留中斷地址范圍時,將系統(tǒng)指定信息經(jīng)動態(tài)隨機存取存儲器控制器寫入系統(tǒng)內(nèi)存后,再送出信息信號式中斷確認(rèn)信號;信息信號式中斷計算器,耦接至信息信號式中斷偵測器以及主機接口,用以接收并計數(shù)上述信息信號式中斷確認(rèn)信號,以形成中斷計數(shù)值,并依據(jù)主機接口將中斷計數(shù)值成為已發(fā)送中斷計數(shù)值,并送出已發(fā)送中斷計數(shù)值;以及信息信號式中斷產(chǎn)生器,耦接至信息信號式中斷計算器、以及中斷控制器,用以依據(jù)上述中斷計數(shù)值,產(chǎn)生信息信號式中斷請求信號至中斷控制器,使中斷控制器產(chǎn)生中斷請求信號。很重要的一點,本實用新型的保留中斷地址范圍位于系統(tǒng)內(nèi)存的地址范圍內(nèi)。
依據(jù)本實用新型的較佳實施例的一種信息信號式中斷控制器,其中控制芯片組還耦接至中央處理器,而信息信號式中斷產(chǎn)生器還耦接至主機接口,當(dāng)中央處理器處理過系統(tǒng)指定信息后,中央處理器通過主機接口,送出中斷服務(wù)結(jié)束信號至信息信號式中斷產(chǎn)生器,且中央處理器也通過主機接口,送出已讀取中斷計數(shù)值至信息信號式中斷計算器。上述中央處理器可先通過主機接口,來取得已發(fā)送中斷計數(shù)值。上述信息信號式中斷偵測器依據(jù)內(nèi)存寫入交易的中斷信息,產(chǎn)生實際寫入地址,再通過動態(tài)隨機存取存儲器控制器,將內(nèi)存寫入交易的系統(tǒng)指定信息寫入系統(tǒng)內(nèi)存之實際寫入地址中。
本實用新型提供一種支持信息信號式中斷的芯片組,此芯片組耦接至PCI總線、中央處理器以及系統(tǒng)內(nèi)存,本實用新型的芯片組包括動態(tài)隨機存取存儲器控制器,耦接至系統(tǒng)內(nèi)存,用以控制并存取系統(tǒng)內(nèi)存;主機接口,耦接至中央處理器,用以作為芯片組與中央處理器間的控制接口;中斷控制器,耦接至中央處理器,用以產(chǎn)生中斷請求信號至中央處理器,以進(jìn)一步使中央處理器激活中斷服務(wù)程序;以及信息信號式中斷控制器,耦接至PCI總線、動態(tài)隨機存取存儲器控制器、主機接口以及中斷控制器,用以監(jiān)視PCI總線上的內(nèi)存寫入交易,當(dāng)內(nèi)存寫入交易的地址位于保留中斷地址范圍時,將系統(tǒng)指定信息經(jīng)動態(tài)隨機存取存儲器控制器寫入系統(tǒng)內(nèi)存內(nèi),再送出信息信號式中斷請求信號,使中斷控制器產(chǎn)生中斷請求信號。很重要的一點,本實用新型的保留中斷地址范圍位于系統(tǒng)內(nèi)存的地址范圍內(nèi)。
本實用新型由于產(chǎn)生信息信號式中斷的內(nèi)存寫入交易的寫入地址位于系統(tǒng)內(nèi)存的地址范圍內(nèi),也就是系統(tǒng)指定信息可以真正被寫入系統(tǒng)內(nèi)存內(nèi),故可利用系統(tǒng)內(nèi)存儲存多個中斷信息,所以可在同一個中斷服務(wù)循環(huán)中,處理不同外設(shè)的多數(shù)個不同信息,另外信息數(shù)據(jù)中還有可包括中斷發(fā)生原因的彈性。而對芯片組而言,系統(tǒng)指定信息與待處理的數(shù)據(jù)一并在寫入緩沖器中按次序排列,自然解決了寫入緩沖器延遲所造成的問題,且與PCI總線的階層完全無關(guān)。
圖2顯示根據(jù)本實用新型較佳實施例的一種支持信息信號式中斷的控制芯片組以及控制芯片組中的控制器的方塊示意圖。
圖3A、圖3B、圖3C顯示根據(jù)本實用新型較佳實施例的一種支持信息信號式中斷的處理方法的流程示意圖。附圖標(biāo)號說明100,200控制芯片組
102 南橋芯片104 北橋芯片110 動態(tài)隨機存取存儲器120 中央處理器 130 PCI總線I140 PCI-PCI橋接器 150 外設(shè)160 PCI總線II170 第二階層的外設(shè)210 信息信號式中斷控制器220 信息信號式中斷偵測器230 信息信號式中斷計算器240 信息信號式中斷產(chǎn)生器250 動態(tài)隨機存取存儲器控制器260 主機接口 270 中斷控制器280 PCI外設(shè) 290 PCI總線上述動態(tài)隨機存取存儲器控制器250耦接至系統(tǒng)內(nèi)存,用來控制并存取系統(tǒng)內(nèi)存(動態(tài)隨機存取存儲器110)。上述主機接口260耦接至中央處理器120,主要用來作為控制芯片組200與中央處理器120間的控制接口。至于中斷控制器270耦接至中央處理器120,用來產(chǎn)生中斷請求INTR信號至中央處理器120,以進(jìn)一步使中央處理器120啟動中斷服務(wù)程序。
本實用新型獨創(chuàng)的MSI控制器210包括信息信號式中斷偵測器(簡稱MSI偵測器)220、信息信號式中斷計算器(簡稱MSI計算器)230、以及信息信號式中斷產(chǎn)生器(簡稱MSI產(chǎn)生器)240。其中,MSI偵測器220耦接至PCI總線290以及動態(tài)隨機存取存儲器控制器250,主機接口260連接至MSI計算器230以及MSI產(chǎn)生器240,而MSI產(chǎn)生器240也連接至中斷控制器270。本實用新型的MSI控制器210監(jiān)視PCI總線290上所有的內(nèi)存寫入交易,當(dāng)任意一個PCI外設(shè)280以信息信號式中斷來引起系統(tǒng)的注意時,會發(fā)出中斷信息,此中斷信息包括雙字符組的系統(tǒng)指定地址以及系統(tǒng)指定信息,并且中斷信息中所指定的系統(tǒng)內(nèi)存地址將位于系統(tǒng)所預(yù)定的保留中斷地址范圍,此時,MSI控制器210將監(jiān)視到此情況,并且會將系統(tǒng)指定信息經(jīng)動態(tài)隨機存取存儲器控制器250寫入系統(tǒng)內(nèi)存內(nèi),然后再送出一個信息信號式中斷請求信號MSI-IRQ,使中斷控制器270產(chǎn)生中斷請求信號INTR。
本實用新型中很重要的一點本實用新型的保留中斷地址范圍位于系統(tǒng)內(nèi)存的地址范圍內(nèi)。本實施例預(yù)先分配不同的特定地址給每一個外設(shè)的MSI控制器。所以,MSI控制器210會將系統(tǒng)指定信息真正寫入系統(tǒng)內(nèi)存內(nèi),當(dāng)PCI外設(shè)280要發(fā)出信息信號式中斷的內(nèi)存寫入交易前,會先將待處理數(shù)據(jù)以內(nèi)存寫入交易的方式,要求寫入系統(tǒng)內(nèi)存內(nèi)。這對控制芯片組200而言,待處理數(shù)據(jù)與系統(tǒng)指定一并在寫入緩沖器中按次序排列,故MSI控制器210會先將待處理數(shù)據(jù)先行成功寫入系統(tǒng)內(nèi)存內(nèi),才立即寫系統(tǒng)指定信息至系統(tǒng)內(nèi)存內(nèi),等到系統(tǒng)指定信息成功寫至系統(tǒng)內(nèi)存后,緊接著發(fā)出信息信號式中斷請求信號MSI_IRQ。因此,自然解決了寫入緩沖器延遲所造成的問題。如熟悉此技術(shù)者可輕易知曉,這樣的解決方法,由于利用最基本的內(nèi)存寫入交易,所以與PCI總線的階層數(shù)完全無關(guān)。
本實用新型所提供的一種MSI控制器210,置放于主板的控制芯片組200中,可節(jié)省包裝等成本,但并非一定要放在控制芯片組200內(nèi)。本實用新型的MSI控制器210中的MSI偵測器220耦接至PCI總線290以及動態(tài)隨機存取存儲器控制器250,主要用以監(jiān)視PCI總線290上的內(nèi)存寫入交易,當(dāng)中斷信息中所指定的系統(tǒng)內(nèi)存地址位于保留中斷地址范圍時,MSI偵測器220依據(jù)內(nèi)存寫入交易中斷信息,先產(chǎn)生實際寫入地址。在本實施例中,先將內(nèi)存寫入交易的系統(tǒng)指定地址的第7到第31位,組合內(nèi)存寫入交易的系統(tǒng)指定信息的第0到第4位,并加上兩個位數(shù)的0在最低位處,表示為memory_address={MSI_address[317],MSI_data[40],00}然后,MSI偵測器220通過動態(tài)隨機存取存儲器控制器250,將內(nèi)存寫入交易的系統(tǒng)指定信息寫入動態(tài)隨機存取存儲器110的實際寫入地址memory_addres中,也就是說,將待處理數(shù)據(jù)與系統(tǒng)指定信息經(jīng)動態(tài)隨機存取存儲器控制器250寫入系統(tǒng)內(nèi)存后,MSI偵測器220再送出信息信號式中斷確認(rèn)MSI_ACK信號,以通知MSI計算器230此時待處理數(shù)據(jù)與系統(tǒng)指定信息已確實寫入系統(tǒng)內(nèi)存。
MSI控制器210中的MSI計算器230耦接至MSI偵測器220以及主機接口260,用以接收并計算上述信息信號式中斷確認(rèn)信號MSI_ACK,并送出MSI_ACK的計數(shù)值至MSI產(chǎn)生器240,稱之為中斷計數(shù)值MSI_ACK_count。MSI產(chǎn)生器240耦接到MSI計算器230以及中斷控制器270,其接收上述中斷計數(shù)值MSI_ACK_count,并依據(jù)此中斷計數(shù)值,來產(chǎn)生信息信號式中斷請求信號MSI_IRQ,進(jìn)一步使中斷控制器270產(chǎn)生中斷請求信號INTR。在本實施例中,當(dāng)MSI_ACK_count>0時,MSI產(chǎn)生器240就會產(chǎn)生信息信號式中斷請求信號MSI_IRQ。中斷控制器270收到信息信號式中斷請求信號MSI_IRQ后,會真正發(fā)出硬件的中斷請求信號INTR至中央處理器120,以進(jìn)一步使中央處理器120激活中斷服務(wù)程序。如熟悉此技術(shù)者當(dāng)可知曉,上述的MSI產(chǎn)生器240與中央處理器120之間通過主機接口260作溝通,但也可直接連接。
在一個中斷服務(wù)程序開始,中央處理器120先通過主機接口260,來取得一個目前總共已寫入系統(tǒng)內(nèi)存的中斷信息的個數(shù)MSI_sent,也就是說,取得目前已寫入動態(tài)存取內(nèi)存的信息信號式中斷的數(shù)目,MSI計算器230會把MSI_sent設(shè)定成此時的MSI_ACK_count的數(shù)目。中央處理器120根據(jù)MSI_sent,掃描系統(tǒng)內(nèi)存內(nèi)的保留中斷地址范圍中可能的系統(tǒng)指定信息,并接著處理保留中斷地址范圍內(nèi)的所有的系統(tǒng)指定信息,且計算已處理過的系統(tǒng)指定信息的個數(shù),成為已讀取中斷計數(shù)值MSI_read。需注意的是,系統(tǒng)內(nèi)存中已處理過的系統(tǒng)指定信息必須清除掉,以避免此系統(tǒng)指定信息再次被處理,當(dāng)清除此部分的內(nèi)存時,必須以先鎖定讀取再更正寫入(locked read-modified-write)的模式操作,以避免有新的系統(tǒng)指定信息同時要寫入時發(fā)生錯誤。最后當(dāng)此中斷服務(wù)程序結(jié)束前,若MSI_read小于MSI_sent,將MSI_read修改成MSI_sent后,中央處理器120通過主機接口260,送出中斷服務(wù)結(jié)束信號MSI_EOI至MSI產(chǎn)生器240,且中央處理器120也通過主機接口260,送出已讀取中斷計數(shù)值MSI_read至MSI計算器230。MSI計算器230將最新的中斷計數(shù)值MSI_ACK_count減去已讀取中斷計數(shù)值MSI_read再存回中斷計數(shù)值MSI_ACK_count中,此時如果中斷計數(shù)值仍然大于0時,MSI產(chǎn)生器240就會再一次產(chǎn)生信息信號式中斷請求信號MSI_IRQ。
由于本系統(tǒng)基本上是一個多任務(wù)操作系統(tǒng),各個單元會各自發(fā)出要求,例如不同的PCI總線外設(shè)280可能會同時、持續(xù)或不定時發(fā)出信息信號式中斷,所以中央處理器120開始一個中斷服務(wù)程序時,可能已經(jīng)有多個系統(tǒng)指定信息存入系統(tǒng)內(nèi)存內(nèi),且在中斷服務(wù)程序執(zhí)行中存入系統(tǒng)內(nèi)存的系統(tǒng)指定信息可能不斷增加。利用本實用新型上述的構(gòu)架,可在系統(tǒng)內(nèi)存儲存多個系統(tǒng)指定信息,所以可在同一個中斷服務(wù)程序中,同時處理不同外設(shè)的多個不同系統(tǒng)指定信息,另外系統(tǒng)指定信息中還有可包括中斷發(fā)生原因的彈性。
綜上所述,可整理出本實用新型的一種支持信息信號式中斷的處理方法,請參照圖3A、圖3B、圖3C,圖3A、圖3B、圖3C顯示一種支持信息信號式中斷的處理方法的流程示意圖。本實用新型的處理方法可應(yīng)用于主板的控制芯片組中,此芯片組耦接至PCI總線、系統(tǒng)內(nèi)存以及中央處理器,此處理方法包括下列步驟首先執(zhí)行步驟310,監(jiān)視PCI總線上的內(nèi)存寫入交易,根據(jù)信息信號式中斷的規(guī)格,此內(nèi)存寫入交易的中斷信息為一個雙字符組的系統(tǒng)指定地址以及系統(tǒng)指定信息;接著在步驟315中,判斷當(dāng)中斷信息中所指定的系統(tǒng)內(nèi)存地址落于系統(tǒng)內(nèi)存的保留中斷地址范圍時,就執(zhí)行中斷處理程序(步驟320以下)。上述的中斷處理程序包括下列步驟首先執(zhí)行步驟320,依據(jù)內(nèi)存寫入交易的中斷信息,將系統(tǒng)指定信息寫入系統(tǒng)內(nèi)存內(nèi),也就是說,先依據(jù)內(nèi)存寫入交易的中斷信息,產(chǎn)生實際寫入地址,再將內(nèi)存寫入交易的系統(tǒng)指定信息寫入系統(tǒng)內(nèi)存的實際寫入地址中。然后執(zhí)行步驟325,當(dāng)系統(tǒng)指定信息成功寫入系統(tǒng)內(nèi)存后,增加中斷計數(shù)值的值;接著執(zhí)行步驟330,依據(jù)此中斷計數(shù)值,產(chǎn)生硬件中斷請求至中央處理器;最后就是中央處理器實際去處理中斷服務(wù)程序。
請參照圖3B,依據(jù)本實用新型的較佳實施例的一種支持信息信號式中斷的處理方法,其中中斷處理程序中,有關(guān)中央處理器方面的處理,包括下列步驟首先執(zhí)行步驟340,讀取中斷計數(shù)值,并儲存為已發(fā)送中斷計數(shù)值;接著執(zhí)行步驟345,也就是依據(jù)此中斷計數(shù)值,掃描系統(tǒng)內(nèi)存的保留中斷地址范圍的所有的系統(tǒng)指定信息;然后執(zhí)行步驟350,處理保留中斷地址范圍內(nèi)的所有系統(tǒng)指定信息,并計算已處理過的系統(tǒng)指定信息的個數(shù),成為已讀取中斷計數(shù)值;在步驟351中,判斷已發(fā)送中斷計數(shù)值是否大于已讀取中斷計數(shù)值;若已發(fā)送中斷計數(shù)值較大,則在步驟353中,將已讀取中斷計數(shù)值修正為已發(fā)送中斷計數(shù)值;以及最后執(zhí)行步驟355,送出已讀取中斷計數(shù)值以及中斷服務(wù)結(jié)束信號,以通知MSI控制器,使其將中斷計數(shù)值減去已讀取中斷計數(shù)值再存入中斷計數(shù)值。
請參照圖3C,本實用新型上述實施例中,有關(guān)MSI控制器方面的后續(xù)處理步驟,包括下列步驟首先在步驟360,送出中斷計數(shù)值,接著在步驟365,等待接收從中央處理器方面來的已讀取中斷計數(shù)值以及中斷服務(wù)結(jié)束信號,然后執(zhí)行步驟370,將最新的中斷計數(shù)值減去已讀取中斷計數(shù)值再存回中斷計數(shù)值中,此時判斷如果中斷計數(shù)值仍然大于0(步驟375)時,就執(zhí)行步驟380,再一次產(chǎn)生信息信號式中斷請求信號,否則回到最開始,繼續(xù)監(jiān)視PCI總線上的內(nèi)存寫入交易。
熟悉此技術(shù)者當(dāng)可知曉,上述步驟351與步驟353所達(dá)成的修正已讀取中斷計數(shù)值的步驟,可省略。取而代之,利用在步驟370中,將中斷計數(shù)值減去MSI_read與MSI_send中的較大者,也可達(dá)成修正的目的。
雖然本實用新型已以一較佳實施例公開如上,然其并非用以限定本實用新型,任何熟悉此技術(shù)者,在不脫離本實用新型的精神和范圍內(nèi),當(dāng)可作各種的更動與潤飾,因此本實用新型的保護范圍當(dāng)視后附的權(quán)利要求書所界定者為準(zhǔn)。
權(quán)利要求1.一種信息信號式中斷控制器,可應(yīng)用于一系統(tǒng),該系統(tǒng)包括一芯片組、一PCI總線以及一系統(tǒng)內(nèi)存,該芯片組耦接至該PCI總線以及該系統(tǒng)內(nèi)存,該芯片組包括一動態(tài)隨機存取存儲器控制器、一主機接口以及一中斷控制器,其特征在于該信息信號式中斷控制器包括一信息信號式中斷偵測器,耦接至該PCI總線以及該動態(tài)隨機存取存儲器控制器,用以監(jiān)視該PCI總線上的一內(nèi)存寫入交易,當(dāng)該內(nèi)存寫入交易的地址位于一保留中斷地址范圍時,將一系統(tǒng)指定信息經(jīng)該動態(tài)隨機存取存儲器控制器寫入該系統(tǒng)內(nèi)存,再送出一信息信號式中斷確認(rèn)信號;一信息信號式中斷計算器,耦接至該信息信號式中斷偵測器以及該主機接口,用以接收并計數(shù)該信息信號式中斷確認(rèn)信號形成一中斷計算值,并依據(jù)該主機接口將該中斷計數(shù)值成為一已發(fā)送中斷計數(shù)值,并送出已發(fā)送中斷計數(shù)值;一信息信號式中斷產(chǎn)生器,耦接至該信息信號式中斷計算器、以及該中斷控制器,用以依據(jù)該中斷計數(shù)值,產(chǎn)生一信息信號式中斷請求信號至該中斷控制器,使該中斷控制器產(chǎn)生一中斷請求信號;其中該保留中斷地址范圍位于該系統(tǒng)內(nèi)存的地址范圍內(nèi)。
2.如權(quán)利要求1所述的信息信號式中斷控制器,其特征在于其中該芯片組還耦接至一中央處理器,而該信息信號式中斷產(chǎn)生器還耦接至該主機接口,當(dāng)該中央處理器處理過該系統(tǒng)指定信息后,該中央處理器通過該主機接口,送出一中斷服務(wù)結(jié)束信號至該信息信號式中斷產(chǎn)生器以及一已讀取中斷計數(shù)值至該信息信號式中斷計算器。
3.如權(quán)利要求1所述的信息信號式中斷控制器,其特征在于其中該芯片組還耦接至一中央處理器,該中央處理器通過該主機接口,來取得已發(fā)送中斷計數(shù)值。
4.如權(quán)利要求1所述的信息信號式中斷控制器,其特征在于其中該信息信號式中斷偵測器依據(jù)該內(nèi)存寫入交易的一中斷信息,產(chǎn)生一實際寫入地址,再通過該動態(tài)隨機存取存儲器控制器,將該內(nèi)存寫入交易的該系統(tǒng)指定信息寫入該系統(tǒng)內(nèi)存的該實際寫入地址中。
5.如權(quán)利要求1所述的信息信號式中斷控制器,其特征在于其中該內(nèi)存寫入交易的該中斷信息為一雙字符組的一系統(tǒng)指定地址以及該系統(tǒng)指定信息。
6.一種支持信息信號式中斷的芯片組,該芯片組耦接至一PCI總線、一中央處理器以及一系統(tǒng)內(nèi)存,其特征在于該芯片組包括一動態(tài)隨機存取存儲器控制器,耦接至該系統(tǒng)內(nèi)存用以控制并存取該系統(tǒng)內(nèi)存;一主機接口,耦接至該中央處理器,用以作為該芯片組與該中央處理器間的控制接口;一中斷控制器,耦接至該主機接口,用以產(chǎn)生一中斷請求信號至該中央處理器,使該中央處理器激活一中斷服務(wù)程序;一信息信號式中斷控制器,耦接至該PCI總線、該動態(tài)隨機存取存儲器控制器、該主機接口以及該中斷控制器,用以監(jiān)視該PCI總線上的一內(nèi)存寫入交易,當(dāng)該內(nèi)存寫入交易的地址位于一保留中斷地址范圍時,將一系統(tǒng)指定信息經(jīng)該動態(tài)隨機存取存儲器控制器寫入該系統(tǒng)內(nèi)存內(nèi),再送出一信息信號式中斷請求信號,使該中斷控制器產(chǎn)生該中斷請求信號;其中該保留中斷地址范圍位于該系統(tǒng)內(nèi)存的地址范圍內(nèi)。
7.如權(quán)利要求6所述的芯片組,其特征在于該信息信號式中斷控制器包括一信息信號式中斷偵測器,耦接至該PCI總線以及該動態(tài)隨機存取存儲器控制器,用以監(jiān)視該內(nèi)存寫入交易,當(dāng)該內(nèi)存寫入交易的一中斷信息中所指定的地址位于該保留中斷地址范圍時,將該系統(tǒng)指定信息經(jīng)該動態(tài)隨機存取存儲器控制器寫入該系統(tǒng)內(nèi)存后,再送出一信息信號式中斷確認(rèn)信號;一信息信號式中斷計算器,耦接至該信息信號式中斷偵測器以及該主機接口,用以接收并計數(shù)該信息信號式中斷確認(rèn)信號形成一中斷計數(shù)值,并依據(jù)該主機接口將該中斷計數(shù)值成為一已發(fā)送中斷計數(shù)值,并送出已發(fā)送中斷計數(shù)值;一信息信號式中斷產(chǎn)生器,耦接至該信息信號式中斷計算器、以及該中斷控制器,用以依據(jù)該中斷計數(shù)值,產(chǎn)生該信息信號式中斷請求信號至該中斷控制器,使該中斷控制器產(chǎn)生該中斷請求信號。
8.如權(quán)利要求7所述的芯片組,其特征在于其中該信息信號式中斷產(chǎn)生器還耦接至該主機接口,當(dāng)該中央處理器處理過該系統(tǒng)指定信息后,該中央處理器通過該主機接口,送出一中斷服務(wù)結(jié)束信號至該信息信號式中斷產(chǎn)生器以及一已讀取中斷計數(shù)值至該信息信號式中斷計算器。
9.如權(quán)利要求7所述的芯片組,其特征在于該中央處理器通過該主機接口,來取得該已發(fā)送中斷計數(shù)值。
10.如權(quán)利要求7所述的芯片組,其特征在于該信息信號式中斷偵測器依據(jù)該內(nèi)存寫入交易的該中斷信息,產(chǎn)生一實際寫入地址,再通過該動態(tài)隨機存取存儲器控制器,將該內(nèi)存寫入交易的該系統(tǒng)指定信息寫入該系統(tǒng)內(nèi)存的該實際寫入地址中。
11.如權(quán)利要求7所述的芯片組,其特征在于該中央處理器先讀取該已發(fā)送中斷計數(shù)值,再依據(jù)該已發(fā)送中斷計數(shù)值,掃描該系統(tǒng)內(nèi)存的該保留中斷地址范圍,接著處理該保留中斷地址范圍內(nèi)的所有該系統(tǒng)指定信息的個數(shù),并成為一已讀取中斷計數(shù)值,最后送出該已讀取中斷計數(shù)值。
12.如權(quán)利要求11所述的芯片組,其特征在于當(dāng)該中央處理器判斷出已讀取中斷計數(shù)值小于已發(fā)送中斷計數(shù)值時,讓已讀取中斷計數(shù)值等于已發(fā)送中斷計數(shù)值。
13.如權(quán)利要求11所述的芯片組,其特征在于該信息信號式中斷計算器讓該中斷計數(shù)值等于該中斷計數(shù)值減去該已讀取中斷計數(shù)值與該已發(fā)送中斷計數(shù)值的最大者。
專利摘要本實用新型提供一種支持信息信號式中斷的芯片組以及控制器,而此控制芯片組包括有動態(tài)隨機存取存儲器控制器、主機接口以及中斷控制器,這個信息信號式中斷控制器包括信息信號式中斷偵測器;信息信號式中斷計算器;以及信息信號式中斷產(chǎn)生器和中斷控制器。其中的特點在于保留中斷地址范圍位于系統(tǒng)內(nèi)存的地址范圍內(nèi)。因此,待處理數(shù)據(jù)與系統(tǒng)指定信息會一并在寫入緩沖器中按次序排列,自然解決了寫入緩沖器延遲所造成的問題,還與PCI總線的階層完全無關(guān),由于可利用系統(tǒng)內(nèi)存存儲多個系統(tǒng)指定信息,所以可在同一個中斷服務(wù)程序中,處理不同外設(shè)的多個不同的中斷請求。
文檔編號G11C7/00GK2528080SQ01259679
公開日2002年12月25日 申請日期2001年9月28日 優(yōu)先權(quán)日2001年9月28日
發(fā)明者賴瑾, 彭盛昌, 顧夢澄, 蔡兆爵, 陳珉宏, 周輝麟 申請人:威盛電子股份有限公司