專利名稱:計算機(jī)系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種計算機(jī)系統(tǒng),具體地說,涉及一種通過串行傳送線路連接兩條總線的改進(jìn)的計算機(jī)系統(tǒng)。
最近已開發(fā)出各種筆記本型個人計算機(jī)(以下稱“筆記本PC”),它們便于攜帶并且可以由電池供電。將一些筆記本PC設(shè)計成(需要的話)能夠與擴(kuò)展單元相連接,以擴(kuò)展其功能。為了更有效地使用筆記本PC本體上擴(kuò)展單元的資源,重要的是將筆記本PC本體中的總線和擴(kuò)展單元中的總線相連。通過這樣的總線互連可以象對待筆記本PC本體中的設(shè)備那樣對待擴(kuò)展單元中的總線上的設(shè)備。
很多個人計算機(jī)使用PCI(外圍部件互連)總線。于是,筆記本PC本體和擴(kuò)展單元之間的總線互連通常可以通過為筆記本PC本體和擴(kuò)展單元提供塢連接器并通過塢連接器將筆記本PC本體和擴(kuò)展單元的PCI總線物理上連接在一起來實現(xiàn),每個塢連接器具有多個引腳,引腳數(shù)量等于PCI總線的信號線數(shù)量。
因為這種結(jié)構(gòu)需要為塢連接器提供較大的安裝區(qū),于是不便于使筆記本PC本體更緊致和平直。此外,塢連接器在筆記本PC本體上的安裝位置應(yīng)與塢連接器在擴(kuò)展單元上的安裝位置對準(zhǔn)。這對開發(fā)新產(chǎn)品的物理外殼結(jié)構(gòu)有些限制。
美國專利5,457,785,5,579,489和5,619,659公開了一種采用PC本體的標(biāo)準(zhǔn)并行端口將PC本體連接到擴(kuò)展單元上的方案。根據(jù)該方案,在擴(kuò)展單元上形成ISA總線,由電纜通過PC本體上的標(biāo)準(zhǔn)并行端口將擴(kuò)展單元連接到PC本體上,并且擴(kuò)展單元中的ISA總線通過使用對PC本體中的ISA總線的信號狀態(tài)進(jìn)行解釋的電路進(jìn)行與PC中的ISA總線相同的操作。
另一美國專利5,822,571公開了一種結(jié)構(gòu),其中通過平電纜將主PCI總線連到輔助PCI總線,并且PCI總線從PC本體擴(kuò)展至另一外殼,該專利還公開了一種和電纜中的傳送延遲配合的時鐘同步方法。
由于常規(guī)的基于電纜的互連方法通過電纜進(jìn)行并行數(shù)據(jù)傳輸,所以電纜中還需包含許多信號線。具體地說,除了用于地址、命令、數(shù)據(jù)等的信號線,還需提供傳送中斷信號的排它的信號線,這使信號線的總數(shù)急劇增大。這導(dǎo)致如下缺點(diǎn)1)電纜變粗和難于處理,并且成本增高。
2)用于電纜連接的連接器的管腳數(shù)增長,這導(dǎo)致成本增高并且阻障了筆記本PC的進(jìn)一步小型化。
因此,本發(fā)明的目的是提供一計算機(jī)系統(tǒng),該計算機(jī)系統(tǒng)可以在同一傳送線路上傳送在總線之間傳送總線周期所需的數(shù)據(jù)和中斷信號,這樣可以通過具有較少信號線的電纜將主系統(tǒng)連接到擴(kuò)展單元。
為實現(xiàn)以上目的,根據(jù)本發(fā)明的一個方面,提供一計算機(jī)系統(tǒng),包括用于傳送第一中斷信號的第一總線;用于傳送第二中斷信號的第二總線;與第一總線相連接的第一控制器;與第二總線相連的第二控制器,執(zhí)行一傳送周期,該傳送周期包括耦合第一控制器和第二控制器的第一控制器裝置的一個總線周期;與第一控制器相連接用于產(chǎn)生表明第一總線上的第一中斷信號的狀態(tài)的控制數(shù)據(jù);以及,與第二控制器相連接的用于根據(jù)控制數(shù)據(jù)輸出第二總線上的第二中斷信號的裝置。
最好傳送周期是一串行傳送周期。
在該計算機(jī)系統(tǒng)中,用于互連兩條總線(第一和第二總線)的數(shù)據(jù)傳送裝置被分成物理上的兩個不同控制器來執(zhí)行傳送周期,該傳送周期最好是串行傳送周期。該傳送周期在兩控制器之間完成傳送諸如命令、地址和數(shù)據(jù)的總線周期所需的數(shù)據(jù)的交換。對于中斷信號,將表明中斷信號狀態(tài)的控制數(shù)據(jù)插入到用于傳送總線周期數(shù)據(jù)的傳送周期中然后再傳送。這樣,可以通過相同的傳送線路進(jìn)行傳送總線周期所需的數(shù)據(jù)和中斷信號的傳送。于是,為主系統(tǒng)和擴(kuò)展單元每一個提供兩個控制器,它們構(gòu)成一總線橋,例如,可以通過帶有較少信號線的電纜將主系統(tǒng)連接到擴(kuò)展單元。
主系統(tǒng)不限于計算機(jī)本體本身。例如,計算機(jī)本體可以與第一擴(kuò)展單元相連,通過第一擴(kuò)展單元可以將第二擴(kuò)展單元與計算機(jī)本體相連接。在這種情況下,從第二擴(kuò)展單元來看,計算機(jī)本體和第一擴(kuò)展單元構(gòu)成主系統(tǒng)。
用于產(chǎn)生控制數(shù)據(jù)的裝置的特征在于檢測第一總線上的第一中斷信號的變化,并且檢測到第一中斷信號中的變化時,產(chǎn)生表明第一中斷信號狀態(tài)的控制數(shù)據(jù)并將該控制數(shù)據(jù)插入到串行傳送周期。由于僅當(dāng)中斷信號的狀態(tài)改變時,才串行傳送表明中斷信號的狀態(tài)的控制數(shù)據(jù),則用于傳送總線周期的串行傳送的吞吐量不受影響。
在中斷信號的狀態(tài)已改變時執(zhí)行控制數(shù)據(jù)的串行傳送的結(jié)構(gòu)中,最好用于產(chǎn)生控制數(shù)據(jù)的裝置應(yīng)具有鎖存電路,用于保持第二中斷信號的狀態(tài),直到接收到表明下一個第一中斷信號的狀態(tài)的新的控制數(shù)據(jù)。對于電平觸發(fā)中斷信號,如PCI總線中斷信號(其電平應(yīng)被保持到由軟件接收到中斷信號),僅當(dāng)中斷信號的狀態(tài)已改變時,才僅通過串行傳送控制數(shù)據(jù)準(zhǔn)確地向系統(tǒng)通知中斷發(fā)生。
此外,在中斷信號的狀態(tài)已改變時串行傳送控制數(shù)據(jù)的情況下,立即將中斷信號出現(xiàn)的事件通知給軟件。最好是這樣仲裁通過串行傳送線路傳送的所有數(shù)據(jù)在有多種數(shù)據(jù)需要在串行傳送周期中串行傳送時,優(yōu)先于其他數(shù)據(jù)串行傳送具有最高優(yōu)先級的控制數(shù)據(jù)。
在控制器之間并行傳送數(shù)據(jù)的情況下,通過數(shù)據(jù)傳送線路傳送中斷信號的狀態(tài)可以不需要為中斷信號提供專用傳輸線路。這可以減少信號線數(shù)目。換句話說,本發(fā)明的基本概念是將中斷信號本身的狀態(tài)作為一個總線事務(wù)處理來傳送,以減少信號線的數(shù)量。盡管本結(jié)構(gòu)最適用于總線橋,本發(fā)明還可以適用于從與兩總線之一相連的第一中斷控制器向與另一總線相連的第二中斷控制器傳送中斷信號。
為了實現(xiàn)以上目的,根據(jù)本發(fā)明的一個方面,提供一種數(shù)據(jù)傳送方法,包括步驟檢測第一總線上的第一中斷信號;響應(yīng)檢測到第一中斷信號產(chǎn)生表明第一中斷信號的狀態(tài)的控制數(shù)據(jù);通過將控制數(shù)據(jù)中斷進(jìn)入串行傳送周期,將控制數(shù)據(jù)傳送給第二總線,串行傳送周期包括第一總線和第二總線之間的總線周期;并根據(jù)控制數(shù)據(jù)以這樣的方式在第二總線上輸出第二中斷信號第一中斷信號反映在第二總線上。
在該數(shù)據(jù)傳送方法中,響應(yīng)檢測到第一中斷信號,產(chǎn)生控制數(shù)據(jù)并通過中斷進(jìn)入串行傳送周期將控制數(shù)據(jù)傳送至第二總線,其中串行傳送周期包括第一總線和第二總線之間的總線周期。根據(jù)控制數(shù)據(jù)以這樣的方式將第二中斷信號輸出到第二總線上將第一中斷信號反映在第二總線上。結(jié)果,在第一總線和第二總線之間執(zhí)行的傳送周期能夠在兩控制器之間進(jìn)行傳送諸如命令、地址和數(shù)據(jù)等總線周期所需的數(shù)據(jù)的交換。此外,對于中斷信號,把表明中斷信號狀態(tài)的控制數(shù)據(jù)插入到傳送周期以傳送總線周期的數(shù)據(jù),然后再傳送。這樣通過相同的傳送線路進(jìn)行傳送總線周期所需的數(shù)據(jù)和中斷信號的傳送。于是,為主系統(tǒng)和擴(kuò)展單元每一個提供兩個控制器(例如,它們構(gòu)成總線橋),這樣使主機(jī)通過帶有較少信號線的電纜連到擴(kuò)展單元。
主系統(tǒng)不限于計算機(jī)本體本身。例如,計算機(jī)本體可以連到第一擴(kuò)展單元,通過第一擴(kuò)展單元,將第二擴(kuò)展單元連到計算機(jī)本體。在這種情況下,當(dāng)從第二擴(kuò)展單元看時,計算機(jī)本體和第一擴(kuò)展單元構(gòu)成了主系統(tǒng)。
第一總線傳送第一多個中斷信號;第二總線傳送第二多個中斷信號;并且產(chǎn)生控制數(shù)據(jù)的步驟包括步驟檢測在第一總線上的第一中斷信號中的變化;并且,在檢測到第一總線上的第一中斷信號中的改變時,產(chǎn)生包括對應(yīng)于第一總線上第一多個中斷信號的比特模式的控制數(shù)據(jù)。由于只在中斷信號的狀態(tài)已改變時,串行傳送表明中斷信號狀態(tài)的控制數(shù)據(jù),則傳送總線周期的串行傳送吞吐量不受影響。
當(dāng)中斷信號的狀態(tài)已改變時,執(zhí)行控制數(shù)據(jù)的串行傳送的結(jié)構(gòu)中,最好通過鎖存電路保持第二中斷信號,直到接收到表明下一個第一中斷信號的狀態(tài)的新控制數(shù)據(jù)。對于電平觸發(fā)中斷信號,如PCI總線中斷信號,其電平應(yīng)被保持直到由軟件接收到中斷信號,于是可以通過僅在中斷信號的狀態(tài)已改變時才串行傳送控制數(shù)據(jù)來準(zhǔn)確地向系統(tǒng)報告中斷發(fā)生。
此外,在當(dāng)中斷信號狀態(tài)已改變時才串行傳送控制數(shù)據(jù)的情況下,立即把中斷信號出現(xiàn)的事件通知給軟件。于是,最好提供一仲裁步驟,以這樣的方式對通過串行傳送周期傳送的所有數(shù)據(jù)進(jìn)行仲裁當(dāng)在串行傳送周期中存在多種要被串行傳送的數(shù)據(jù)時,串行傳送具有最高優(yōu)先級的控制數(shù)據(jù)。
從以下結(jié)合附圖的說明,會使本發(fā)明的目的和優(yōu)點(diǎn)更加明顯。
以下
了本發(fā)明的優(yōu)選實施例。
圖1是一方框圖,說明了根據(jù)本發(fā)明第一實施例的計算機(jī)系統(tǒng)的結(jié)構(gòu);圖2是一方框圖,說明了在該實施例中使用的PCI-PCI橋的結(jié)構(gòu);圖3是一方框圖,說明了在該實施例中使用的主PCI串行傳送控制器和輔助PCI串行傳送控制器的內(nèi)部結(jié)構(gòu);圖4是一方框圖,說明了在該實施例中使用的主PCI串行傳送控制器和輔助PCI串行傳送控制器的緩沖器結(jié)構(gòu);圖5是一方框圖,說明了在該實施例中使用的主PCI串行傳送控制器和輔助PCI串行傳送控制的具體硬件結(jié)構(gòu);圖6例示了通知在該實施例中使用的控制數(shù)據(jù)的中斷的數(shù)據(jù)格式;圖7是一方框圖,示出了在該實施例中在輔助PCI串行傳送控制器中提供的仲裁電路的結(jié)構(gòu);圖8解釋了在該實施例所使用的主PCI串行傳送控制器和輔助PCI串行傳送控制器的每一個中如何處理中斷信號;圖9是一時序圖,說明了在該實施例中用于中斷信號的傳送控制操作;圖10是一流程圖,解釋了由該實施例的主PCI串行傳送控制器執(zhí)行的中斷控制字譯碼過程;圖11示出了該實施例所使用的通知控制數(shù)據(jù)的中斷的數(shù)據(jù)格式的另一例子;圖12A和12B例示了允許該實施例中所使用的兩個控制器用作主PCI串行傳送控制器和輔助PCI串行傳送控制器的控制模式;以及圖13A和13B例示了允許該實施例中所使用的兩個控制器用作主PCI串行傳送控制器和輔助PCI串行傳送控制器的控制模式的另一例子。
以下參照附圖描述本發(fā)明的實施例。
圖1示出了根據(jù)本發(fā)明的一個實施例的計算機(jī)系統(tǒng)的結(jié)構(gòu)。該計算機(jī)系統(tǒng)是筆記本型個人計算機(jī)(PC),包括用于功能擴(kuò)展的PC本體100和塢站200,在使用之后通過電纜可以將其連到PC本體100上。電纜中的信號線構(gòu)成串行傳送路徑,如圖1所示。串行傳送路徑300由LVDS(低電壓差分信號)線、I2C(集成電路間)總線和其他串行控制信號組成。
LVDS是串行傳輸路徑,用于將PC本體100中的PCI總線2串行連接到塢站200中的PCI總線4上。通過該串行傳輸路徑進(jìn)行的高速比特串行信號傳送,可以在PC本體100的PCI總線2和塢站200中的PCI總線4之間交換總線事務(wù)。
如圖1所示,PC本體100包括處理器總線1、PCI總線2、ISA總線3、CPU 11、主-PCI橋12、主存儲器13、顯示控制器14、主PCI串行傳送控制器15,PCI-ISA橋16、I/O控制器17、各種ISA設(shè)備18、EC(嵌入式控制器)19、各種其他控制器20等。
CPU 11控制整個PC系統(tǒng)并執(zhí)行操作系統(tǒng),系統(tǒng)BIOS以及其他裝載到主存儲器13中的程序。主-PCI橋12是用于雙向?qū)⑻幚砥骺偩€1連接到主PCI總線2的橋單元。主-PCI橋12中加入了存儲器控制邏輯,用于對主存儲器13進(jìn)行存取控制;控制邏輯,用于AGP(加速圖形端口),用于與顯示控制器14連接。主-PCI橋12用作主PCI總線2的總線主控器。例如,主存儲器13存儲操作系統(tǒng)、將被處理的應(yīng)用程序/實體程序,以及由應(yīng)用程序等產(chǎn)生的用戶數(shù)據(jù)。
主PCI串行傳送控制器15邏輯上形成一個和塢站200中實現(xiàn)的輔助PCI串行傳送控制器35配合工作的PCI-PCI橋單元。PCI-PCI橋單元用于雙向地將PC本體100中的PCI總線2連接到塢站200中的PCI總線4上。PCI-PCI橋單元允許PCI總線2上的設(shè)備訪問PCI總線4上的設(shè)備,反之亦然。從PCI-PCI橋單元看,靠近主機(jī)側(cè)(CPU)的PCI總線2用作PCI-PCI橋單元的主PCI總線,而離主機(jī)側(cè)較遠(yuǎn)的PCI總線4用作PCI-PCI橋單元的輔助PCI總線。在該實施例中,于是,將主PCI總線2連接到輔助PCI總線4的PCI-PCI橋單元被劃分成兩個物理上孤立的控制器(主PCI串行傳送控制器15和輔助PCI串行傳送控制器35),并且兩個控制器通過LVDS線彼此連接,這樣實現(xiàn)了PCI串行接口。通過LVDS線的串行傳送不僅用來發(fā)送PCI總線周期而且還用來發(fā)送中斷信號。這樣,通過LVDS線傳送總線周期所需的數(shù)據(jù)和中斷信號的串行傳送周期可以使PCI串行接口所需的信號線大大減少。
PCI-ISA橋16是將PCI總線2連到ISA總線3的橋。各種ISA設(shè)備18可以連接到ISA總線3上。I/O控制器17是用作總線主控器或者目標(biāo)為PCI總線2的設(shè)備。諸如PCI卡控制器、IDE(集成驅(qū)動電子)控制器以及聲控制器等設(shè)備作為I/O控制器17連接到PCI總線2。
EC(嵌入式控制器)19控制PC本體100的功率管理,并且還通過與塢站200中的DSC(塢站控制器)36的通信控制用于塢站200的塢/去塢序列。
如圖1所示,塢站200中加入了PCI總線4、網(wǎng)絡(luò)接口控制器31、PC卡控制器32、IDE控制器33、PCI槽34、輔助PCI串行傳送控制器、DSC36及其它控制器等。
網(wǎng)絡(luò)接口控制器31進(jìn)行與LAN連接的通信控制,并且用作總線控制器,或目標(biāo)為PCI總線4。PC卡控制器32控制PC卡,PC卡依從PCMCIA(個人計算機(jī)存儲卡國際協(xié)會)/CardBus說明并且插入到PC卡槽。PC卡控制器32還用作總線主控器或目標(biāo)為PCI總線4。IDE控制器33控制諸如安裝在塢站200中的硬盤驅(qū)動器和CD-ROM驅(qū)動器等的IDE設(shè)備,并且用作總線主控器或目標(biāo)為PCI總線4??梢詫⒏鞣NPCI擴(kuò)展卡插入到PCI槽34。
當(dāng)把PC本體100連到塢站200時,這些諸如網(wǎng)絡(luò)接口控制器31、PC卡控制器32、IDE控制器33和PCI槽34的PCI擴(kuò)展卡的PCI設(shè)備用作PC本體100中的硬件資源。
PCI-PCI橋圖2示出了主PCI串行傳送控制器15和輔助PCI串行傳送控制器35的功能安排。
如上所述,盡管主PCI串行傳送控制器15和輔助PCI串行傳送控制器35是物理上獨(dú)立的LSI,它們邏輯上用作一個PCI-PCI橋。為此,將主PCI串行傳送控制器15連接到輔助PCI串行傳送控制器35的LVDS線路只是PCI-PCI橋內(nèi)部的本地內(nèi)部布線,而不是由軟件識別。這意味著不將非必要的資源分配給串行傳輸路徑。由于主PCI串行傳送控制器15和輔助PCI串行傳送控制器35通過一個IDSEL信號共享配置地址空間,它們被軟件識別為一個設(shè)備。由于兩個控制器、即主PCI串行傳送控制器和輔助PCI串行傳送控制器35被識別為一個設(shè)備,則只有主PCI串行傳送控制器15可能具有設(shè)備標(biāo)識信息。
主PCI串行傳送控制器15和輔助PCI串行傳送控制器35的每一個都是由PCI接口部分和串行傳送接口部分組成。
在主PCI串行傳送控制器15中,PCI接口部分和主PCI總線2交換總線事務(wù)。在輔助PCI串行傳送控制器35中,PCI接口部分和輔助PCI總線4交換總線事務(wù)。PCI接口部分和其他部分通過分別在主PCI串行傳送控制器15和輔助PCI串行傳送控制器35中實現(xiàn)的串行傳送接口部分之間的串行數(shù)據(jù)傳送來交換總線事務(wù)。
PCI總線是并行傳輸路徑,包括具有多比特寬度的地址/數(shù)據(jù)線。PCI總線上的總線事務(wù)基本上由用于輸出命令和地址的地址相位和地址相位之后的一個或多個數(shù)據(jù)傳送相位構(gòu)成。于是,如果,各個PCI接口部分通過在各個串行傳送接口部分的串行傳送在相應(yīng)的PCI總線之間交換命令、地址和數(shù)據(jù),則可以將事務(wù)從主PCI總線2傳送給輔助總線4,反之亦然。
當(dāng)發(fā)生從主PCI總線2的總線主控制器至輔助PCI總線4上的設(shè)備的事務(wù)時,主PCI串行傳送控制器15成為主PCI總線2上正在執(zhí)行的事務(wù)的目標(biāo),并且輔助PCI串行傳送控制器35成為輔助PCI總線4上將被執(zhí)行的事務(wù)的啟動器(總線主控器)。當(dāng)發(fā)生從輔助PCI總線4的總線主控器至主PCI總線2上的設(shè)備的事務(wù)時,輔助PCI串行傳送控制器35成為正在輔助PCI總線4上執(zhí)行的事務(wù)的目標(biāo),并且主PCI串行傳送控制器15成為將在主PCI總線2上被執(zhí)行的事務(wù)的啟動器。注意,如果在輔助PCI總線4上不存在總線主控器設(shè)備,則發(fā)生前種情況。
如圖2所示,配置寄存器150和350分別安置在主PCI串行傳送控制器15和輔助PCI串行傳送控制器35的PCI接口部分。每個配置寄存器150和350包括依從PCI說明的寄存器組。在這些寄存器中,設(shè)置相同的環(huán)境設(shè)置信息。
環(huán)境設(shè)置信息包括上述設(shè)備標(biāo)識信息和設(shè)備控制信息,用于指明設(shè)備使用的存儲器地址空間和I/O地址空間等硬件資源,環(huán)境設(shè)置信息還包括表明設(shè)備當(dāng)前狀態(tài)的設(shè)備狀態(tài)信息。
設(shè)備標(biāo)識信息用于標(biāo)識設(shè)備類型并由諸如設(shè)備ID、零售商ID、修訂ID、標(biāo)題類型和類別代碼等信息構(gòu)成。設(shè)備標(biāo)識信息是只讀信息。將相同的設(shè)備識別信息寫入配置寄存器150和350。很明顯,可以僅在靠近CPU 11的主PCI串行傳送控制器15中準(zhǔn)備只讀設(shè)備識別信息,而不需要在輔助PCI串行傳送控制器35中準(zhǔn)備。這是因為,在配置周期,CPU 11只訪問主PCI串行傳送控制器15并通過從主PCI串行傳送控制器15中讀設(shè)備標(biāo)識信息來識別PCI總線2和PCI總線4之間的PCI-PCI橋的存在。
配置寄存器用于保持定義PCI設(shè)備的操作環(huán)境的環(huán)境設(shè)置信息??傇诿總€PCI設(shè)備中設(shè)置一個配置寄存器。由于主PCI串行傳送控制器15和輔助PCI串行傳送控制器35作為一個PCI設(shè)備(PCI-PCI橋)運(yùn)行,控制器15和35基本上能共享一個配置寄存器,如上所述。然后,如果按此方式,只在一個控制器中設(shè)置配置寄存器,沒有配置寄存器的其他控制器必須通過用于每個事務(wù)處理的串行傳輸路徑來讀一控制器中的配置寄存器。這將降低系統(tǒng)的性能。由于按此實施例,在兩個控制器15和35中分別設(shè)置配置寄存器,則兩個控制器可根據(jù)分別在其配置寄存器中設(shè)置的環(huán)境設(shè)置信息來操作。這可以實現(xiàn)高速操作。在此情況下,兩個控制器15和35每個都包括多數(shù)寄存器組(一個用于設(shè)置設(shè)備控制信息的寄存器組,一個用于設(shè)置設(shè)備狀態(tài)信息指明設(shè)備的當(dāng)前狀態(tài)的寄存器組等),除了設(shè)置只讀設(shè)備標(biāo)識信息的寄存器。
通過自動執(zhí)行主PCI串行傳送控制器15和輔助PCI串行傳送控制器35之間的下述拷貝操作,可以實現(xiàn)配置寄存器150和350的內(nèi)容的標(biāo)識。當(dāng)CPU 11執(zhí)行寫事務(wù)(配置寫周期)在配置寄存器150中寫數(shù)據(jù)時,則自動執(zhí)行從配置寄存器150至配置寄存器350的拷貝操作。于是,表明寫完成的狀態(tài)被返回給CPU 11。這能夠總保持配置寄存器150和350的內(nèi)容一致。
兩PCI串行傳送控制器的內(nèi)部安排主PCI串行傳送控制器15和輔助PCI串行傳送控制器35的內(nèi)部結(jié)構(gòu)將參照圖3予以說明,同時考慮邏輯協(xié)議分層結(jié)構(gòu)。
如圖3所示,主PCI串行傳送控制器15包括總線事務(wù)緩沖器201、總線周期控制器202、塊傳送緩沖器203、字緩沖器204、串/并轉(zhuǎn)換器205和LVDS發(fā)送/接收部分206。
總線事務(wù)緩沖器201和總線周期控制器202對應(yīng)于上述PCI接口部分。塊傳送緩沖器、字緩沖器204、串/并轉(zhuǎn)換器205和LVDS發(fā)送/接收部分206對應(yīng)于上述串行傳送接口部分。
同樣,如圖3所示,輔助PCI串行傳送控制器35包括總線事務(wù)緩沖器301、總線周期控制器302、塊傳送緩沖器303、字緩沖器304、串/并轉(zhuǎn)換器305和LVDS發(fā)送/接收部分306??偩€事務(wù)緩沖器301和總線周期控制器302對應(yīng)于上述PCI接口部分。塊傳送緩沖器303、字緩沖器304、串/并轉(zhuǎn)換器305和LVDS發(fā)送/接收部分306對應(yīng)于上述串行傳送接口部分。
圖3的右端示出了用于在該實施例中實現(xiàn)PCI串行接口的協(xié)議分層結(jié)構(gòu)。頂層是PCI總線事務(wù)層,接著是PCI總線周期層,用于控制實際執(zhí)行事務(wù)所需的總線周期。
通過集成總線周期層上面的部分形成的部分,包括左半部分、右半部分,即通過集成總線事務(wù)緩沖器201和301以及總線周期控制器202和302形成的部分對應(yīng)于一個通常的PCI-PCI橋。
圖3下半部分示出的層對應(yīng)于在主PCI串行傳送控制器15和輔助PCI串行傳送控制器35之間進(jìn)行串行通信的部分。
上半部分示出的層是根據(jù)PCI總線協(xié)議設(shè)計的,而優(yōu)化設(shè)計下半部分示出的層可靠地向其他方發(fā)送在PCI總線上傳送的數(shù)據(jù)。不必考慮將被傳送的塊的每個數(shù)據(jù)在PCI總線上的含義是什么。如果正確地為塊指定傳送特性,適于塊上傳送的一組數(shù)據(jù)在PCI總線上具有的含義,并且如果這些傳送特性是可以實現(xiàn)的,就足夠了。即能夠使用通信領(lǐng)域中類似于分組通信的概念。
對于此方面,圖3中的“字”對應(yīng)于固定長度的分組,而“塊”是包括一個控制字和0-10個數(shù)據(jù)字的傳送單元。
以下介紹每個緩沖器的含義。
總線事務(wù)緩沖器201和301是用于將PCI總線周期作為事務(wù)進(jìn)行管理的緩沖器,并且按以下所述用于作為PCI總線周期和塊傳送之間的媒介。以下是構(gòu)成事務(wù)的信息片斷,盡管根據(jù)事務(wù)的類型它們可能略有變化·地址·命令·寫數(shù)據(jù)(寫事務(wù))·字節(jié)使能·完成狀態(tài)·讀數(shù)據(jù)(讀事務(wù))
這些信息片斷被保存在總線事務(wù)緩沖器201和301。
塊傳送緩沖器(塊)203和303是用于在兩個串行控制器15和35之間一起傳送稱為塊的可變長度數(shù)據(jù)的臨時信息存儲設(shè)備。如上所述,塊的大小是可變的。每塊基本上由諸如地址、數(shù)據(jù)、命令和字節(jié)使能等信息組成,構(gòu)成一項事務(wù)。
字緩沖器(字)204和304是用于在兩個串行控制器15和35之間逐個傳送稱為字的固定長度數(shù)據(jù)的臨時信息存儲設(shè)備。字包括控制字和數(shù)據(jù)字。每個塊的重要部分(PCI事務(wù)信息地址、命令、數(shù)據(jù)、字節(jié)使能等)作為數(shù)據(jù)字交換,其余部分作為控制字交換。
串/并轉(zhuǎn)換器205和305進(jìn)行以字為單位進(jìn)行并/串和串/并轉(zhuǎn)換。LVDS發(fā)送/接收部分206和306通過LVDS線進(jìn)行實際的串行數(shù)據(jù)傳送。
(兩PCI串行傳送控制器的內(nèi)部結(jié)構(gòu))現(xiàn)在參照圖3,對主PCI串行傳送控制器15和輔助PCI串行傳送控制器35的內(nèi)部結(jié)構(gòu)參照給定的邏輯協(xié)議分層結(jié)構(gòu)進(jìn)行說明。
如圖所示,主PCI串行傳送控制器15包括事務(wù)緩沖器201、總線周期控制器202、塊緩沖器203、字緩沖器204、串/并轉(zhuǎn)換器205和LVDS發(fā)送/接收部分206。
事務(wù)緩沖器201和總線周期控制器202等效于前述PCI接口部分,而塊緩沖器203、字緩沖器204、串/并轉(zhuǎn)換器205和LVDS發(fā)送/接收部分206等效于前述的串行接口部分。
同樣,輔助PCI串行傳送控制器35包括事務(wù)緩沖器301、總線周期控制器302、塊緩沖器303、字緩沖器304、串/并轉(zhuǎn)換器305和LVDS發(fā)送/接收部分306。事務(wù)緩沖器301和總線周期控制器302等效于前述PCI接口部分,而塊緩沖器303、字緩沖器304、串/并轉(zhuǎn)換器305和LVDS發(fā)送/接收部分306等效于前述的串行接口部分。
圖3的右手端示出了協(xié)議分層結(jié)構(gòu)以實現(xiàn)本實施例中的PCI串行接口。最高層是PCI總線事務(wù)層,其下是PCI總線周期層,它用于控制實際執(zhí)行事務(wù)所需的總線周期。
位于總線周期層上的部件的右半部分和其左半部分集成的部分等效于通常的PCI-PCI橋。即,事務(wù)緩沖器201和301以及總線周期控制器202和302的集成部分等效于通常的PCI-PCI橋。
圖3的層的下半部分是在主PCI串行傳送控制器15和輔助PCI串行傳送控制器35之間進(jìn)行串行通信的部分。
在根據(jù)PCI總線協(xié)議設(shè)計上半部分的同時,優(yōu)化下半部分的設(shè)計以可靠地向目的地發(fā)送要在PCI總線上傳送的數(shù)據(jù)。不必考慮要在PCI總線上傳送的數(shù)據(jù)的重要性,但應(yīng)準(zhǔn)確地分配和實現(xiàn)適于PCI總線上重要數(shù)據(jù)的傳送特性。在此運(yùn)用的思想類似于通信領(lǐng)域的分組通信。
在此意義上,圖中的“字”對應(yīng)于具有固定長度的分組,而“塊”是包括控制字和數(shù)據(jù)字的傳送單元,控制字由一個字構(gòu)成,而數(shù)據(jù)字由0-10個字構(gòu)成。
事務(wù)緩沖器201和301用于管理作為一項事務(wù)的PCI總線周期,插入在PCI總線周期和塊傳送(以下將討論)之間。構(gòu)成事務(wù)的信息包括地址命令寫數(shù)據(jù)(寫事務(wù))字節(jié)使能結(jié)束狀態(tài)讀數(shù)據(jù)(讀事務(wù))將這些信息片斷(根據(jù)事務(wù)的類型不同可能略有變化)存儲在事務(wù)緩沖器201和301中。
塊緩沖器(塊)203和303是臨時信息存儲區(qū),其中稱為塊的可變長度數(shù)據(jù)被整體地在兩個串行控制器15和35之間傳送。一塊(其大小如上所述是可變的)基本上包含諸如地址、數(shù)據(jù)、命令和字節(jié)使能等信息,構(gòu)成一項事務(wù)。
字緩沖區(qū)(字)204和304是臨時信息存儲區(qū),其中稱為字的固定長度數(shù)據(jù)被一次一個地在兩串行控制器15和35之間傳送。字包括控制字和數(shù)據(jù)字。塊的重要部分(PCI事務(wù)信息地址、命令、數(shù)據(jù)、字節(jié)使能等)作為數(shù)據(jù)字進(jìn)行交換,其他各種控制信息作為控制字進(jìn)行交換。
串/并轉(zhuǎn)換器205和305逐字地進(jìn)行并/串和串/并轉(zhuǎn)換。LVDS發(fā)送/接收部分206和306通過LVDS線路進(jìn)行實際的串行數(shù)據(jù)傳送。
(緩沖器結(jié)構(gòu))現(xiàn)在參照圖4,說明具體的緩沖器結(jié)構(gòu)。
根據(jù)要被處理的PCI事務(wù)的類型,存在下述兩類塊緩沖器。
專用緩沖器(用于郵寄的存儲器寫事務(wù))塊緩沖器(用于其他事務(wù))根據(jù)數(shù)據(jù)流存在下列兩種塊緩沖器。
外出緩沖器(用于存儲將被發(fā)送的塊信息)進(jìn)入緩沖器(用于存儲接收的塊信息)組合這些緩沖器產(chǎn)生下述四類緩沖器。
外出專用緩沖器(OEB)外出塊緩沖器(OBB)進(jìn)入專用緩沖器(IEB)進(jìn)入塊緩沖器(IBB)在該實施例中,OBB、OEB、IBB和IEB每一個都有四個緩沖器用于確保系統(tǒng)的性能。在此方面,提供四種塊緩沖器FIFO、OBB_FIFO、OEB_FIFO、IBB_FIFO和IEB_FIFO。
如圖4所示,為塊緩沖器203提供包括四個外出塊緩沖器(OBB)203a的OBB_FIFO、包括四個外出專用緩沖器(OEB)203b的OEB_FIFO、包括四個進(jìn)入塊緩沖器(IBB)203c的IBB_FIFO和包括四個進(jìn)入專用緩沖器(IEB)203d的IEB_FIFO。同樣,為塊緩沖器303提供包括四個外出塊緩沖器(OBB)303a的OBB_FIFO、包括四個外出專用緩沖器(OEB)303b的OEB_FIFO、包括四個進(jìn)入塊緩沖器(IBB)303c的IBB_FIFO以及包括四個進(jìn)入專用緩沖器(IEB)303d的IEB_FIFO。
如上所述,塊是結(jié)構(gòu)化的字的集合。一塊由下述三部分組成。以下述次序進(jìn)行發(fā)送和接收。
一控制字多個數(shù)據(jù)字(0-10個數(shù)據(jù)字)一校驗字一字是比特的集合。將字劃分為攜帶控制信息的控制字和攜帶數(shù)據(jù)的數(shù)據(jù)字。塊緩沖器203和303以較低的處理層逐字(17比特)地交換數(shù)據(jù)。較低處理層是前述的字緩沖器和比特層。比特層等效于圖3中的串/并轉(zhuǎn)換器205和305,以及LVDS發(fā)送/接收部分206和306。由較低處理層執(zhí)行下述處理并且不涉及塊緩沖器203和303。
字緩沖器對每17比特的字加1比特校驗位,由塊緩沖器對其進(jìn)行處理,于是產(chǎn)生18比特數(shù)據(jù)。
比特層將18比特并行數(shù)據(jù)轉(zhuǎn)換成以高速串行傳送的串行數(shù)據(jù)。因為,為每個控制器15和35提供兩條LVDS線用于發(fā)送和兩條LVDS線用于接收,從而18比特的數(shù)據(jù)被分割成兩個9比特流,將每個流轉(zhuǎn)換成串行數(shù)據(jù),此外,同時串行傳送兩串行數(shù)據(jù)。
在接收方反向上述處理。
(兩PCI串行傳送控制器的內(nèi)部結(jié)構(gòu))現(xiàn)在參照圖5描述主PCI串行傳送控制器15和輔助PCI串行傳送控制器35的內(nèi)部結(jié)構(gòu)。
主PCI串行傳送控制器15的結(jié)構(gòu)基本上與輔助PCI串行傳送控制器35的結(jié)構(gòu)相同。如圖所示,每個控制器包括一PCI總線控制塊(PCI_CTL)401、PCI總線仲裁塊(ARBIT)402、周期譯碼塊(CYCDEC)403、配置寄存器塊(CF_REG)404、事務(wù)緩沖器和控制塊(TBC)405、塊和字緩沖器塊(BWB)406、塊緩沖器塊(BB)407、字緩沖器塊(WB)408、比特層塊(BLB)409、雜項信息更新塊(MIS)410和串行中斷同步塊(SIS)411。
PCI總線控制塊401控制PCI總線主控器和PCI總線接口作為目標(biāo),并且有一個主控器等待時間計時器(MLT)。主控器等待時間計時器測量相對于正在執(zhí)行的當(dāng)前周期的總線主控器停止一周期的時序。當(dāng)目標(biāo)工作時,通過來自周期譯碼塊403的命中信號觸發(fā)PCI總線控制塊401。于是,當(dāng)接收到命中信號時,PCI總線控制塊401響應(yīng)由總線主控器執(zhí)行的PCI總線上的當(dāng)前PCI總線周期開始目標(biāo)PCI總線周期。
PCI總線仲裁塊402是一個執(zhí)行PCI總線上PCI總線主控器的仲裁的仲裁器。
在PCI總線目標(biāo)操作中,周期譯碼塊403對PCI周期類型和地址進(jìn)行譯碼以作出命中決策。周期譯碼塊403為事務(wù)緩沖器和控制塊405產(chǎn)生周期開始信號,為PCI總線控制塊401產(chǎn)生命中信號。
配置寄存器塊404是前述的PCI配置寄存器。
事務(wù)緩沖器和控制塊405是將PCI總線周期作為一項事務(wù)進(jìn)行管理并控制塊緩沖器塊407和PCI總線控制塊401之間數(shù)據(jù)交換的緩沖器。
塊和字緩沖器塊406有兩塊包括前述塊緩沖器和其控制邏輯的塊緩沖器塊407和包括前述字緩沖器和其控制邏輯的字緩沖器塊408,為了方便將它們放在了一起。塊緩沖器塊407用于臨時存儲和事務(wù)緩沖器和控制塊405或字緩沖器塊408交換的數(shù)據(jù)。塊緩沖器塊407有獨(dú)立的緩沖器,用于后置寫的一個(OEB/IEB)和用于非后置寫的其他事務(wù)的其他(OBB/IBB)。在圖中,“OEB/OBB”是發(fā)送緩沖器,而“IEB/IBB”是接收緩沖器。發(fā)送和接收緩沖器各自響應(yīng)由比特層塊409中的PLL產(chǎn)生的異步發(fā)送和接收時鐘而工作。由于未使用PCI時鐘,這些緩沖器與高層中的塊緩沖器塊407之外的塊異步。塊和字緩沖器塊406還控制串行總線上的校驗和以及錯誤校驗的產(chǎn)生和重新發(fā)送過程。
字緩沖器塊408是用于從塊緩沖器塊407向比特層塊409逐字地傳送固定長度數(shù)據(jù)的臨時存儲緩沖器。在圖中,“OWB”是發(fā)送緩沖器,“IWB”是接收緩沖器,并且這些緩沖器分別響應(yīng)由比特層塊409中的PLL產(chǎn)生的異步發(fā)送和接收時鐘而工作。
比特層塊409將來自字緩沖器塊408的固定長度數(shù)據(jù)(字)劃分為兩部分,并將劃分后的數(shù)據(jù)部分作為兩串行數(shù)據(jù)進(jìn)行串行通信。發(fā)送方進(jìn)行并-串轉(zhuǎn)換而接收方進(jìn)行串-并轉(zhuǎn)換。比特層塊409有用于發(fā)送和接收的PLL。發(fā)送PLL響應(yīng)一提供給預(yù)定時鐘(PLCLK)而工作(進(jìn)行乘9運(yùn)算),而接收PLL響應(yīng)通過LVDS線從輔助PCI串行傳送控制器35發(fā)送的LVDS串行接收時鐘(LVDC I)而工作。LVDS串行發(fā)送時鐘(LVDC O)的頻率與時鐘PLCLK相同。
雜項信息更新塊401處理PCI總線中斷信號(INT[A∶D]#)作為雜項信息。輔助PCI串行傳送控制器35的雜項信息更新塊410產(chǎn)生表明來自PCI總線上的設(shè)備的中斷信號的狀態(tài)的控制字,并將控制字插入到其他數(shù)據(jù)字的串行傳送周期。這使得表明中斷信號的狀態(tài)的控制字通過與傳送數(shù)據(jù)字所使用的相同LVDS線串行地傳送給主PCI串行傳送控制器15。在接收到表明中斷信號的狀態(tài)的控制字時,主PCI串行傳送控制器15的雜項信息更新塊401使能基于控制字的PCI總線2上中斷信號。
串行中斷同步塊411處理來自ISA設(shè)備等的遺留中斷信號。
(中斷信號的傳送)現(xiàn)在基于塢站200上的PCI設(shè)備已被斷言,例如,中斷信號INTB這樣的假設(shè)說明一下中斷信號的傳送流程。
如前所述,塢站200中的輔助PCI串行傳送控制器35的雜項信息更新塊410監(jiān)示PCI總線4上的中斷信號INTA、INTB、INTC和INTD的變化。在檢測到中斷信號INTB上的變化時,雜項信息更新塊410產(chǎn)生17比特控制字,如圖6所示。
C/D比特示出了當(dāng)前字是控制字還是數(shù)據(jù)字,“1”表明在這種情況下在C/D比特中設(shè)置了控制字??刂谱諭D是表明在控制器15和35之間交換的控制字的屬性的特定的比特模式。在該例中,按圖6所示的形式設(shè)置表明中斷信號的狀態(tài)的中斷通知控制字的比特模式。四個比特b0至b3分別表示中斷信號INTA、INTB、INTC和INTD的當(dāng)前電平。中斷通知控制字的特征在于該控制字是在控制器15和35之間交換的那些字中最短的字并在所有字中優(yōu)先級最高。當(dāng)從雜項信息更新塊410接收到一控制字時,塊和字緩沖器塊406通過字緩沖器塊408中的OWB在最早的可能時間里順序地傳送它。在此情況下,在字緩沖器將1比特奇偶校驗加到圖6所示的控制字中,然后對產(chǎn)生的字進(jìn)行并/串轉(zhuǎn)換。將產(chǎn)生的串行數(shù)據(jù)串行地傳送給主PCI串行傳送控制器15。
將通過LVDS線路發(fā)送給主PCI串行傳送控制器15的中斷通知控制字從主PCI串行傳送控制器15中的IWB或IBB發(fā)送給雜項信息更新塊410。當(dāng)接收到中斷通知控制字時,雜項信息更新塊410根據(jù)控制字的內(nèi)容使能筆記本PC側(cè)的PCI總線2上的中斷信號。結(jié)果,筆記本PC側(cè)的中斷信號INTB被最新斷言。
(OWB仲裁)圖7示出了用于串行傳送具有最高優(yōu)先級的中斷通知控制字的控制邏輯的結(jié)構(gòu)。
OWB仲裁器(OWB ARB)501對于將要提供給OWB 502用于串行傳送的字進(jìn)行仲裁。OWB仲裁器501從雜項信息更新塊410提供相對于其它ISA總線控制字或數(shù)據(jù)字具有最高優(yōu)先級的控制數(shù)據(jù)。如圖所示,在OWB仲裁器501、OEB_FIFO 303b、OEB_FIFO 303a、雜項信息更新塊410和串行中斷同步塊(SIS)411之間以對等形式提供一對發(fā)送請求信號(REQ)線和發(fā)送授權(quán)信號(GNT)線。將來自雜項信息更新塊410的發(fā)送請求信號(REQ3)的優(yōu)先級設(shè)置成高于其他發(fā)送請求信號(REQ1、REQ2、REQ4),當(dāng)包括REQ3在內(nèi)的多個發(fā)送請求信號被同時斷言時,與REQ3相對應(yīng)的發(fā)送授權(quán)信號(GNT3)被斷言。當(dāng)GNT3被斷言時,雜項信息更新塊410向OWB 502發(fā)送中斷通知控制字。
OWB 502根據(jù)發(fā)送授權(quán)信號(GNT1、GNT2、GNT3或GNT4)選擇OEB_FIFO 303b、OEB_FIFO 303a、雜項信息更新塊410和SIS411中的一個,并從選定的單元向比特層發(fā)送傳輸數(shù)據(jù)。將從OWB 502發(fā)送給比特層的數(shù)據(jù)在用于快速比特串行傳送的串行傳送周期里通過LVDS線路傳送給主PCI串行傳送控制器15。
提供串行傳送帶有優(yōu)先級的中斷通知控制字的裝置,使得筆記本PC本體100的CPU 11能夠被自發(fā)地被通知在塢站200中產(chǎn)生的中斷事件,從而可以由軟件處理中斷。
(MIS)現(xiàn)在參見圖8,描述主PCI串行傳送控制器15和輔助PCI串行傳送控制器每一個的雜項信息更新塊410的功能結(jié)構(gòu)。
如圖所示,為輔助PCI串行傳送控制器35的雜項信息更新塊410提供一個電平變化檢測器601和一個中斷控制字發(fā)生器602。電平變化檢測器601檢測是否每個輔助PCI串行傳送控制器35的PCI中斷信號INTA-INTD的電平發(fā)生了變化。INTA-INTD是電平觸發(fā)中斷信號,并且每個PCI設(shè)備保持每個中斷信號的被斷言的狀態(tài),直到由軟件接收到中斷信號。當(dāng)選擇了(斷言或去斷言)任一中斷信號INTA-INTD的電平中的變化時,電平變化檢測器601向中斷控制字發(fā)生器602發(fā)送操作指令信號。
當(dāng)接收到操作指令信號,中斷控制字發(fā)生器602產(chǎn)生一個具有圖6所示格式的中斷通知控制字,其比特模式表明了輔助PCI總線4上的中斷信號INTA-INTD的當(dāng)前狀態(tài)并向OWB提供控制字。結(jié)果,將中斷通知控制字插入到用于傳送總線周期的串行傳送周期中,并被串行地傳送給主PCI串行傳送控制器15。
如圖所示,為主PCI串行傳送控制器15的雜項信息更新塊410提供一個中斷控制字發(fā)生器603和一個鎖存電路604。中斷控制字發(fā)生器603檢測提供給IWB或IBB的字是否是中斷通知控制字,并為此檢驗接收到的字的比特b16和b15-b8。當(dāng)接收到的字是中斷通知控制字,將中斷通知控制字從IWB或IBB鎖存至雜項信息更新塊410。低四位(b0-b3)的值鎖存在鎖存電路604中并作為PCI總線2上的中斷信號INTA-INTD輸出。保持來自鎖存電路604的中斷信號INTA-INTD的輸出狀態(tài)直至接收到下一個中斷通知控制字。
用此結(jié)構(gòu),在塢站200中的中斷信號的狀態(tài)改變時,僅通過串行傳送中斷通知控制字就可以正確地進(jìn)行電平觸發(fā)的中斷信號INTA-INTD的傳送控制。
圖9示出了電平觸發(fā)的中斷信號INTA-INTD的傳送控制。在此例中,在塢站200的輔助PCI總線4上,首先斷言中斷信號INTB,然后斷言中斷信號INTA,在此之后,接受用于中斷信號INTB的中斷過程并且對中斷信號INTA去斷言。
當(dāng)斷言了輔助PCI總線4上的中斷信號INTB時,然后產(chǎn)生包括比特模塊(1101)(表明中斷信號INTD、INTC、INTB和INTA的電平)的中斷通知控制字,并將其由輔助PCI串行傳送控制器35傳送給主PCI串行傳送控制器15。主PCI串行傳送控制器15解釋中斷通知控制字并斷言主PCI總線2上的中斷信號INTB。
當(dāng)之后斷言了輔助PCI總線4上的中斷信號INTA時,產(chǎn)生包括比特模式(1100)(表明中斷信號INTD、INTC、INTB和INTA的電平)的中斷通知控制字并將其由輔助PCI串行傳送控制器35串行地傳送給主PCI串行傳送控制器15。主PCI串行傳送控制器15解釋中斷通知控制字并斷言主PCI總線2上的中斷信號INTA。
當(dāng)從CPU 11向輔助PCI總線4上的PCI設(shè)備通知了表明接收到中斷信號INTB的數(shù)據(jù)時,則對輔助PCI總線4上的中斷信號INTB去斷言。結(jié)果,產(chǎn)生包括比特模式(1110)(指明中斷信號INTD、INTC、INTB和INTA的電平)的中斷通知控制字,并將其從輔助PCI串行傳送控制器35串行地傳送給主PCI串行傳送控制器15。主PCI串行傳送控制器15解釋中斷通知控制字并將主PCI總線2上的中斷信號INTB的狀態(tài)由斷言狀態(tài)改變成去斷言狀態(tài)。
(中斷控制字譯碼)圖10的流程圖示出了由主PCI串行傳送控制器15的雜項信息更新塊410執(zhí)行的中斷控制字譯碼過程。
首先,檢驗接收到的字的比特b16以確定接收到的字是否為控制字(步驟S11和S12)。當(dāng)接收到的字是控制字時,然后檢驗比特b15-B8的控制字ID以確定控制字是否為中斷通知控制字或其他控制字(步驟S13-S14)。在是中斷通知控制字時,將控制字鎖存至雜項信息更新塊410并向鎖存電路604發(fā)送鎖存指令(步驟S15)。然后,鎖存電路604鎖存控制字的低四位(b0-b3),并將鎖存的輸出信號作為PCI總線2上的中斷信號INTA-INTD輸出(步驟S16)。
(中斷通知控制字的另一例)前面參照圖6的描述已給出作為比特模式發(fā)送中斷信號INTA-INTD的狀態(tài)的例子。替代該模式,可以按圖11所示的格式發(fā)送已改變的中斷信號的號碼以及中斷信號的改變方向。圖11中的比特號是一2比特代碼,它指明四個中斷信號INTA-INTD中的一個。方向比特表明由比特號所指明的中斷信號已被斷言(“0”)還是被去斷言(“1”)。即使使用這樣的控制字,也可以通過串行傳送控制字來通知中斷信號中的變化。
(兩控制器的選擇使用)向PC本體100傳送在塢站200中產(chǎn)生的中斷信號INT就足夠了。該實施例中具有兩個結(jié)構(gòu)相同的控制器,PC本體100中的控制器LSI用作主PCI串行傳送控制器15,而塢站200中的控制器LSI用作輔助PCI串行傳送控制器35。于是,最好如圖12A和12B所示,為每個控制器LSI提供用于接收操作切換信號的管腳,這樣通過切換外部提供的信號就可以指明控制器LSI是用作主PCI串行傳送控制器還是用作輔助PCI串行傳送控制器。通過使用這種切換信號還可以控制雜項信息更新塊410的操作,對用作主PCI串行傳送控制器15的控制器LSI中的雜項信息更新塊410如此進(jìn)行控制以禁止中斷通知控制字的產(chǎn)生并僅對控制字譯碼。這可以防止在傳送中斷信號的路徑上形成循環(huán)。
替代地,如圖13A和13B所示,可以通過諸如BISO等軟件在控制寄存器701(在每個控制器LSI中提供的作為每個控制器LSI的配置寄存器的一部分)中寫操作切換指令,這樣用作主PCI串行傳送控制器15的控制器LSI中的雜項信息更新塊410被如此地控制以禁止產(chǎn)生中斷通知控制字并且僅譯碼控制字。
盡管在此實施例中使用雜項信息更新塊410來傳送中斷通知控制字,還可以使用塊410來發(fā)送中斷信號之外的其他信號。例如,可以按具有圖6或圖11中的格式的控制字來傳送所謂的邊帶信號。在此情況下,應(yīng)將表明控制字為邊帶信號的比特模式插入到控制字ID中,并將實際的邊帶信號的信息插入到b7-b0。此外,在以圖6或圖11的格式發(fā)送中斷信號的情況下,存在可以用于同時發(fā)送邊帶信號的信息和中斷信號的信息的空位。在此情況下,應(yīng)在發(fā)送前插入表明控制字包括邊帶信號和中斷信號的控制字ID。
如上面清楚地說明的,這樣構(gòu)造實施例確保傳送總線周期所需的數(shù)據(jù)和中斷信號是通過相同的串行傳送線來串行傳送的。于是,為每個主系統(tǒng)和擴(kuò)展單元提供兩個控制器,構(gòu)成總線橋,允許主系統(tǒng)通過具有較少信號線的電纜連接到擴(kuò)展單元。由于僅在中斷信號的狀態(tài)已改變時,串行傳送表明中斷信號狀態(tài)的控制數(shù)據(jù),于是不影響用于傳送總線周期的串行傳送的吞吐量。
在該實施例中實施傳送控制的結(jié)構(gòu)應(yīng)僅分別在主系統(tǒng)和擴(kuò)展功能的擴(kuò)展單元中提供控制器,它們構(gòu)成橋,并且主系統(tǒng)不限于PC本體100本身。例如,PC本體100可以連到第一擴(kuò)展單元,通過第一擴(kuò)展單元,可以將第二擴(kuò)展單元連到計算機(jī)本體上。在此情況下,從第二擴(kuò)展單元看,計算機(jī)本體和第一擴(kuò)展單元構(gòu)成主系統(tǒng)。在此情況下,僅需在第一擴(kuò)展單元和第二擴(kuò)展單元分別提供主PCI串行傳送控制器15和輔助PCI串行傳送控制器35,并且通過使用常用的PCI-PCI橋進(jìn)行并行連接可以實現(xiàn)計算機(jī)本體和第一擴(kuò)展單元之間的互連。
盡管前述實施例說明了通過電纜來實現(xiàn)串行傳送,也可以按其它方式實現(xiàn)串行傳送線路,如使用連接器、電路板上的布線模式、無線電波、紅外線、超聲波和LSI中的互連線路。
即使在控制器之間并行傳送數(shù)據(jù)的情況下,通過數(shù)據(jù)傳送線傳送中斷信號的狀態(tài)可以不需要專用于中斷信號的傳送線路。這可以減少信號信數(shù)目。換言之,本發(fā)明的基本概念是將中斷信號狀態(tài)本身作為一項總線事務(wù)來傳送以降低信號線數(shù)目。盡管最有效的方式是將該結(jié)構(gòu)適用于由通過串行傳送線連接在一起的兩控制器組成的總線橋,本發(fā)明也可適用于從與兩總線之一相連的第一中斷控制器向與另一總線相連的第二總線控制器傳送中斷信號。在此情況下,第一中斷控制器應(yīng)產(chǎn)生表明來自一PCI總線上的設(shè)備的中斷信號的狀態(tài)的控制數(shù)據(jù),并向另一總線上的第二中斷控制器發(fā)送作為一總線事務(wù)(即用于寫數(shù)據(jù)的寫事務(wù))的控制數(shù)據(jù),并且然后第二中斷控制器對控制數(shù)據(jù)進(jìn)行譯碼。這樣可以通過使用在總線之間交換數(shù)據(jù)的總線事務(wù)傳送中斷信號,而不必在總線間傳送專用中斷信號。
簡言之,該實施例能夠在同一傳送線路上傳送在總線之間傳送總線周期所需的數(shù)據(jù)和中斷信號,這樣使主系統(tǒng)通過較少信號線的電纜就能連到擴(kuò)展單元。特別是,通過僅在產(chǎn)生中斷信號時才串行傳送表明中斷信號狀態(tài)的控制數(shù)據(jù),在不影響系統(tǒng)性能的情況下可以降低串行傳送線路中信號線的數(shù)目。
已參照各實施例說明了本發(fā)明。然而,本發(fā)明不限于以上實施例。例如,象以下所述,在不背離本發(fā)明的精神和范圍的情況下,可以對各實施例進(jìn)行各種修改。
第一和第二實施例說明了用于將PC本體中的PCI總線連接到塢站中的PCI總線上的PCI-PCI橋單元。然而,根據(jù)本發(fā)明,PCI-PCI橋單元可用于在同一設(shè)備的兩總線之間進(jìn)行數(shù)據(jù)傳送。在此情況下,將兩總線中靠近CPU的總線定義為主PCI總線,而另一總線定義為輔助總線。
對于本領(lǐng)域技術(shù)人員來說可以很容易地理解本發(fā)明的其他優(yōu)點(diǎn)并對本發(fā)明作出修改。于是本發(fā)明不限于以上的說明和具體實施例。因此,在不背離所附權(quán)利要求限定的范圍和本發(fā)明的精神實質(zhì)的情況下可以對本發(fā)明作出各種修改。
權(quán)利要求
1.一種計算機(jī)系統(tǒng),其特征在于,包括用于傳送第一中斷信號的第一總線(4);用于傳送第二中斷信號的第二總線(2);與所述第一總線(4)相連的第一控制器(35);與所述第二總線(2)相連、執(zhí)行包括和所述第一控制器的總線周期的傳送周期(300)的第二控制器(15);與所述第一控制器相連、用于產(chǎn)生表明所述第一總線上的第一中斷信號的狀態(tài)的控制數(shù)據(jù)的裝置(602);和與所述第二控制器相連、用于根據(jù)所述控制數(shù)據(jù)在所述第二總線(2)上輸出第二中斷信號的裝置(202)。
2.根據(jù)權(quán)利要求1的計算機(jī)系統(tǒng),其特征在于,傳送周期(300)是一串行傳送周期。
3.根據(jù)權(quán)利要求2的計算機(jī)系統(tǒng),其特征在于,用于產(chǎn)生控制數(shù)據(jù)的所述裝置(602)檢測所述第一總線(4)上的第一中斷信號中的變化,并產(chǎn)生表明第一中斷信號的狀態(tài)的控制數(shù)據(jù),并在檢測到第一中斷信號中的變化時將所述控制數(shù)據(jù)插入到所述串行傳送周期(300)。
4.根據(jù)權(quán)利要求3的計算機(jī)系統(tǒng),其特征在于所述第一總線(4)傳送第一多個中斷信號;所述第二總線(2)傳送第二多個中斷信號;用于產(chǎn)生控制數(shù)據(jù)的所述裝置(602)在所述第一總線(4)上的第一多個中斷信號中任意一個中斷信號發(fā)生改變時,產(chǎn)生包括對應(yīng)于所述第一總線(4)上的第一多個中斷信號的比特模式的控制數(shù)據(jù);以及用于輸出第二中斷數(shù)據(jù)的所述裝置(202)以這樣的方式基于所述控制數(shù)據(jù)在所述第二總線(2)上輸出第二多個中斷信號將所述第一多個中斷信號反映在第二總線(2)上。
5.根據(jù)權(quán)利要求3的計算機(jī)系統(tǒng),其特征在于所述第一總線(4)傳送第一多個中斷信號,為所述中斷信號分別分配不同的號碼;所述第二總線(2)傳送第二多個中斷信號,為所述中斷信號分別分配不同的號碼;用于產(chǎn)生控制數(shù)據(jù)的裝置(602)在所述第一總線(4)上的所述多個中斷信號中任意一個發(fā)生改變時,產(chǎn)生表明所述已改變的中斷信號的號碼和所述中斷信號的改變方向的控制數(shù)據(jù);以及用于輸出第二中斷數(shù)據(jù)的所述裝置(202)根據(jù)所述控制數(shù)據(jù)以這樣的方式在所述第二總線(2)上輸出第二多個中斷信號將第一多個中斷信號反映在所述第二總線上。
6.根據(jù)權(quán)利要求3的計算機(jī)系統(tǒng),其特征在于,用于產(chǎn)生控制數(shù)據(jù)的所述裝置(602)具有一個鎖存電路(604),用于保持第二中斷信號的狀態(tài),直至接收到表明下一個第一中斷信號的狀態(tài)的新的控制數(shù)據(jù)。
7.根據(jù)權(quán)利要求3的計算機(jī)系統(tǒng),其特征在于,還包括以這樣的方式對在所述串行傳送周期里傳送的所有數(shù)據(jù)進(jìn)行仲裁的裝置(501)在有多種需要在所述串行傳送周期里串行傳送的數(shù)據(jù)時,串行傳送相對于其他數(shù)據(jù)具有最高優(yōu)先級的所述控制數(shù)據(jù)。
8.根據(jù)權(quán)利要求1的計算機(jī)系統(tǒng),其特征在于,所述第二總線(2)比所述第一總線(4)更靠近CPU。
9.一種計算機(jī)系統(tǒng),其特征在于包括主系統(tǒng)(100);電連接到所述主系統(tǒng)(100)上、用于擴(kuò)展所述主系統(tǒng)(100)的功能的擴(kuò)展單元(200);以及總線橋單元,具有與所述主系統(tǒng)相連的第一控制器(15)和與所述擴(kuò)展單元(200)相連的第二控制器,并且通過所述第一和第二控制器(15、35)之間的串行傳送線路(300)在主系統(tǒng)(100)和所述擴(kuò)展單元(200)之間進(jìn)行傳送總線周期所需的數(shù)據(jù)的串行傳送;其中所述第二控制器(35)具有用于產(chǎn)生表明擴(kuò)展單元側(cè)的第一中斷信號的狀態(tài)的控制數(shù)據(jù)并通過所述串行傳送線(300)向所述第一控制器(15)進(jìn)行所述控制數(shù)據(jù)的串行傳送的裝置(602),和所述第一控制器(15)具有根據(jù)所述控制數(shù)據(jù)以這樣的方式在主系統(tǒng)(100)側(cè)輸出第二中斷信號的裝置將第一中斷信號反映在所述主系統(tǒng)(100)上。
10.一種計算機(jī)系統(tǒng),其特征在于包括用于通過連接所述第一和第二總線(2,4)的串行傳送線(300)在第一和第二總線(2、4)之間進(jìn)行傳送總線周期所需數(shù)據(jù)的串行傳送的裝置;用檢測所述第一和所述第二總線(2,4)的一總線上第一中斷信號中的變化,并且在檢測到第一中斷信號的變化時,通過所述串行傳送線(300)從所述第一和第二總線(2,4)之一向其他總線串行傳送表明中斷信號狀態(tài)的控制數(shù)據(jù)的裝置(601);以及用于根據(jù)從所述第一和第二總線(2,4)之一向其他總線傳送的控制數(shù)據(jù)在所述其他總線上輸出第二中斷信號,并保持在所述其他總線上輸出的第二中斷信號的狀態(tài),直到表明下一中斷信號的狀態(tài)的新的控制數(shù)據(jù)到來的裝置(202)。
11.一種計算機(jī)系統(tǒng),其特征在于包括第一和第二總線(2,4);用于檢測所述第一總線(4)上的中斷信號的裝置(601);和與所述第一和第二總線電連接、用于產(chǎn)生表明中斷信號的控制數(shù)據(jù)并通過從所述第一總線(4)向所述第二總線(2)傳送數(shù)據(jù)的總線事務(wù)從所述第一總線向所述第二總線(2)傳送所述控制數(shù)據(jù)的裝置(602)。
12.一種數(shù)據(jù)傳送方法,其特征在于包括步驟檢測在第一總線(4)上的第一中斷信號;響應(yīng)檢測到第一中斷信號,產(chǎn)生表明第一中斷信號的狀態(tài)的控制數(shù)據(jù);通過將控制數(shù)據(jù)中斷到包括所述第一和第二總線之間的總線周期的串行傳送周期中來向第二總線(2)傳送控制數(shù)據(jù);和根據(jù)控制數(shù)據(jù)以這樣的方式在所述第二總線(2)上輸出第二中斷信號將第一中斷信號反映在所述第二總線(2)上。
13.根據(jù)權(quán)利要求12的數(shù)據(jù)傳送方法,其特征在于,所述第一總線(4)傳送第一多個中斷信號;所述第二總線(2)傳送第二多個中斷信號;以及生成控制數(shù)據(jù)的步驟包括步驟檢測所述第一總線(4)上的第一中斷信號的變化;以及當(dāng)檢測到所述第一總線(4)上的第一中斷信號中出現(xiàn)變化時,產(chǎn)生包括相對于所述第一總線(4)上的第一多個中斷信號的比特模式的控制數(shù)據(jù)。
14.根據(jù)權(quán)利要求12的數(shù)據(jù)傳送方法,其特征在于,所述第一總線(4)傳送第一多個中斷信號,為所述第一多個中斷信號分別分配了不同的號碼;所述第二總線(2)傳送第二多個中斷信號,為所述第二多個中斷信號分別分配了不同的號碼;以及產(chǎn)生控制數(shù)據(jù)的步驟包括步驟檢測所述第一總線(4)上的第一中斷信號內(nèi)的變化;以及當(dāng)在所述第一總線(4)上的第一中斷信號內(nèi)檢測到變化時,產(chǎn)生表明已變化的中斷信號的號碼以及中斷信號內(nèi)變化方向的控制數(shù)據(jù)。
15.根據(jù)權(quán)利要求12的數(shù)據(jù)傳送方法,其特征在于輸出步驟包括步驟通過鎖存電路(604)保持第二中斷信號的狀態(tài),直到接收到表明下一個第一中斷信號的狀態(tài)的新控制數(shù)據(jù);以及在接收到新控制數(shù)據(jù)時輸出第二中斷信號。
16.根據(jù)權(quán)利要求12的數(shù)據(jù)傳送方法,其特征在于進(jìn)一步包括步驟以這樣的方式對通過所述串行傳送周期傳送的所有數(shù)據(jù)進(jìn)行仲裁在有多種要在所述串行傳送周期內(nèi)串行傳送的數(shù)據(jù)時,串行傳送相對于其他數(shù)據(jù)具有最高優(yōu)先級的控制數(shù)據(jù)。
全文摘要
用于連接主PCI總線和輔助PCI總線的PCI-PCI橋包括:兩個物理上不同的控制器;位于PC本體方的主PCI串行傳送控制器;位于塢站方的第二PCI串行傳送控制器。兩個控制器通過串行LVDS線連接在一起,并在兩控制器之間串行傳送為傳送總線周期而需要的數(shù)據(jù)。將在塢站方產(chǎn)生的中斷信號通過用于傳送總線周期中的數(shù)據(jù)的串行LVDS線從輔助PCI串行傳送控制器串行地傳送到主PCI串行傳送控制器。
文檔編號G06F13/40GK1298153SQ00128329
公開日2001年6月6日 申請日期2000年11月24日 優(yōu)先權(quán)日1999年11月24日
發(fā)明者中村伸隆 申請人:株式會社東芝