專利名稱:具有仲裁分組協(xié)議的存儲(chǔ)器仲裁系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明通常涉及用于基于處理器的計(jì)算系統(tǒng)的存儲(chǔ)器系統(tǒng),更具體地,涉及具有仲裁系統(tǒng)的基于集線器的存儲(chǔ)器系統(tǒng)以及用于在此管理存儲(chǔ)器響應(yīng)的方法。
背景技術(shù):
計(jì)算機(jī)系統(tǒng)使用諸如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(“DRAM”)設(shè)備此類的存儲(chǔ)器設(shè)備,來(lái)存儲(chǔ)由處理器訪問(wèn)的數(shù)據(jù)。這些存儲(chǔ)器設(shè)備通常在計(jì)算機(jī)系統(tǒng)中用作系統(tǒng)存儲(chǔ)器。在典型的計(jì)算機(jī)系統(tǒng)中,處理器通過(guò)處理器總線和存儲(chǔ)器控制器與系統(tǒng)存儲(chǔ)器通信。典型地安排在含有多個(gè)存儲(chǔ)器設(shè)備的存儲(chǔ)器模塊中的系統(tǒng)存儲(chǔ)器的存儲(chǔ)器設(shè)備,通過(guò)存儲(chǔ)器總線耦合到存儲(chǔ)器控制器。處理器發(fā)出存儲(chǔ)器請(qǐng)求,該存儲(chǔ)器請(qǐng)求包括諸如讀出命令此類的存儲(chǔ)器命令,以及指定要從中讀出數(shù)據(jù)或指令的位置的地址。存儲(chǔ)器控制器使用該命令和地址來(lái)生成,通過(guò)存儲(chǔ)器總線應(yīng)用于系統(tǒng)存儲(chǔ)器的適當(dāng)?shù)拿钚盘?hào)以及行和列地址。響應(yīng)所述命令和地址,在系統(tǒng)存儲(chǔ)器和處理器之間傳送數(shù)據(jù)。存儲(chǔ)器控制器常常是系統(tǒng)控制器的一部分,系統(tǒng)控制器還包括用于將處理器總線耦合到諸如PCI總線此類的擴(kuò)充總線的總線橋電路。
在存儲(chǔ)器系統(tǒng)中,高數(shù)據(jù)帶寬是所希望的。一般地,帶寬限制不是和存儲(chǔ)器控制器有關(guān)的,因?yàn)榇鎯?chǔ)器控制器對(duì)進(jìn)入系統(tǒng)存儲(chǔ)器的數(shù)據(jù)和來(lái)自系統(tǒng)存儲(chǔ)器的數(shù)據(jù)的排序和存儲(chǔ)器設(shè)備允許的一樣快。一種已經(jīng)用來(lái)增大帶寬的方法是增大將存儲(chǔ)器控制器耦合到存儲(chǔ)器設(shè)備的存儲(chǔ)器數(shù)據(jù)總線的速度。因此,相同量的信息可以在更少的時(shí)間內(nèi)在存儲(chǔ)器數(shù)據(jù)總線上進(jìn)行移動(dòng)。然而,盡管增大了存儲(chǔ)器數(shù)據(jù)總線的速度,但是在帶寬方面還是沒(méi)有相應(yīng)的增加。數(shù)據(jù)總線速度和帶寬之間非線性的關(guān)系的一個(gè)原因是存儲(chǔ)器設(shè)備本身內(nèi)部的硬件限制。也就是,存儲(chǔ)器控制器必須對(duì)給存儲(chǔ)器設(shè)備的所有命令進(jìn)行調(diào)度,從而使得硬件限制要被加以考慮(honored)。盡管這些硬件限制能夠通過(guò)存儲(chǔ)器設(shè)備的設(shè)計(jì)而得到一定程度的減少,但是還是必須做出折衷,因?yàn)闇p少硬件限制通常增加了存儲(chǔ)器設(shè)備的成本、功率、和/或尺寸,這些都是不希望有的事物。因此,假定有這些約束,盡管對(duì)于存儲(chǔ)器設(shè)備來(lái)說(shuō)以日益提高的速度來(lái)移動(dòng)“循規(guī)蹈矩的”流量是容易的,例如,對(duì)于存儲(chǔ)器設(shè)備的相同頁(yè)的后續(xù)流量,但是對(duì)于存儲(chǔ)器設(shè)備來(lái)說(shuō)解決“不循規(guī)蹈矩的流量”還是困難很多的,“不循規(guī)蹈矩的流量”是例如在存儲(chǔ)器設(shè)備的不同頁(yè)和存儲(chǔ)體之間跳動(dòng)。
除了處理器和存儲(chǔ)器設(shè)備之間受限帶寬之外,計(jì)算機(jī)系統(tǒng)的性能還受限于等待時(shí)間(latency)的問(wèn)題,等待時(shí)間的問(wèn)題增大了從系統(tǒng)存儲(chǔ)器設(shè)備讀出數(shù)據(jù)所必需的時(shí)間。更具體的是,當(dāng)將存儲(chǔ)器設(shè)備讀出命令耦合到諸如同步DRAM(“SDRAM”)設(shè)備此類的系統(tǒng)存儲(chǔ)器設(shè)備的時(shí)候,所讀出數(shù)據(jù)僅僅在幾個(gè)時(shí)鐘周期的延遲之后才能從該SDRAM設(shè)備輸出。因此,盡管SDRAM設(shè)備能夠以高的數(shù)據(jù)速度同步輸出猝發(fā)(burst)數(shù)據(jù),但是在最初提供該數(shù)據(jù)期間的延遲會(huì)顯著地降低使用所述SDRAM設(shè)備的計(jì)算機(jī)系統(tǒng)的工作速度。增大存儲(chǔ)器數(shù)據(jù)總線速度能夠用來(lái)幫助減輕等待時(shí)間的問(wèn)題。但是,如同帶寬的情況一樣,存儲(chǔ)器數(shù)據(jù)總線速度的增大沒(méi)有產(chǎn)生等待時(shí)間的線性降低,本質(zhì)上是出于與之前論述的相同的原因。
盡管在增大帶寬和降低等待時(shí)間方面,增大存儲(chǔ)器數(shù)據(jù)總線速度在一定程度上已經(jīng)是成功的,但是這個(gè)方法引起了其它的問(wèn)題。例如,隨著存儲(chǔ)器數(shù)據(jù)總線的速度的增大,存儲(chǔ)器總線上的負(fù)載需要減少以便維持信號(hào)完整性,因?yàn)閭鹘y(tǒng)地,在存儲(chǔ)器控制器和插入存儲(chǔ)器模塊的存儲(chǔ)器插槽之間已僅僅存在線了。幾種方法已經(jīng)用來(lái)適應(yīng)存儲(chǔ)器數(shù)據(jù)總線速度的增大。例如,降低存儲(chǔ)器插槽的數(shù)目、增加在存儲(chǔ)器模塊上的緩沖器電路以便為存儲(chǔ)器模塊上的存儲(chǔ)器設(shè)備提供足夠的控制信號(hào)的扇出(fanout)、以及在存儲(chǔ)器模塊上提供多個(gè)存儲(chǔ)器設(shè)備接口,因?yàn)樵趩蝹€(gè)存儲(chǔ)器設(shè)備接口上存在的存儲(chǔ)器模塊連接器太少。然而,這些傳統(tǒng)方法的效果是有限的。之所以過(guò)去使用這些技術(shù)的原因是這樣做是節(jié)省成本的。但是,當(dāng)在每個(gè)接口中只能插入一個(gè)存儲(chǔ)器模塊的時(shí)候,為每一個(gè)所必需的存儲(chǔ)器插槽添加分離的存儲(chǔ)器接口就變得非常昂貴。換句話說(shuō),它將系統(tǒng)控制器封裝推出了日用商品行列,而推入了奢侈品行列,從而大大增加了成本。
允許采用節(jié)約成本的方式來(lái)增大存儲(chǔ)器數(shù)據(jù)總線速度的一種新近的方法是使用通過(guò)存儲(chǔ)器集線器耦合到處理器的多個(gè)存儲(chǔ)器設(shè)備。在存儲(chǔ)器集線器結(jié)構(gòu)、或基于集線器的存儲(chǔ)器子系統(tǒng)中,系統(tǒng)控制器或存儲(chǔ)器控制器通過(guò)高速雙向或單向存儲(chǔ)器控制器/集線器接口耦合到幾個(gè)存儲(chǔ)器模塊。典型的是,存儲(chǔ)器模塊是以點(diǎn)對(duì)點(diǎn)或菊花鏈的結(jié)構(gòu)進(jìn)行耦合的,從而使得存儲(chǔ)器模塊串聯(lián)地與彼此連接。因此在菊花鏈的方式中,該存儲(chǔ)器控制器耦合到第一存儲(chǔ)器模塊上,第一存儲(chǔ)器模塊連接在第二存儲(chǔ)器模塊上,而第二存儲(chǔ)器模塊耦合到第三存儲(chǔ)器模塊上,等等。
每一個(gè)存儲(chǔ)器模塊包括耦合到存儲(chǔ)器控制器/集線器接口上的存儲(chǔ)器集線器和在該模塊上的許多存儲(chǔ)器設(shè)備,存儲(chǔ)器集線器有效地路由通過(guò)存儲(chǔ)器控制器/集線器接口的、在該控制器和所述存儲(chǔ)器設(shè)備之間的存儲(chǔ)器請(qǐng)求和響應(yīng)。采用這種結(jié)構(gòu)的計(jì)算機(jī)系統(tǒng)能夠使用高速存儲(chǔ)器數(shù)據(jù)總線,因?yàn)樾盘?hào)完整性在存儲(chǔ)器數(shù)據(jù)總線上能夠得到保持。而且,這種結(jié)構(gòu)還為系統(tǒng)存儲(chǔ)器的輕松擴(kuò)充做了準(zhǔn)備,沒(méi)有像在傳統(tǒng)存儲(chǔ)器總線體系結(jié)構(gòu)中出現(xiàn)的那樣的,在增加更多存儲(chǔ)器模塊的時(shí)候的對(duì)于信號(hào)質(zhì)量退化的擔(dān)憂。
盡管使用存儲(chǔ)器集線器的計(jì)算機(jī)系統(tǒng)能夠提供出眾的性能,各種因素還是可能影響存儲(chǔ)器系統(tǒng)的性能。例如,管理從一個(gè)存儲(chǔ)器集線器上行到另一個(gè)存儲(chǔ)器集線器的讀出數(shù)據(jù)的流(即,后退到計(jì)算機(jī)系統(tǒng)中的存儲(chǔ)器集線器控制器)會(huì)影響讀出等待時(shí)問(wèn)。存儲(chǔ)器集線器對(duì)讀出數(shù)據(jù)流的管理可以一般地稱為仲裁,每一個(gè)存儲(chǔ)器集線器在本地存儲(chǔ)器讀出響應(yīng)和上游存儲(chǔ)器讀出響應(yīng)之間進(jìn)行仲裁。也就是,每一個(gè)存儲(chǔ)器集線器確定是先發(fā)送本地存儲(chǔ)器讀出響應(yīng)還是先轉(zhuǎn)發(fā)來(lái)自下游(即,更遠(yuǎn)離存儲(chǔ)器集線器控制器的)存儲(chǔ)器集線器的存儲(chǔ)器讀出響應(yīng)。盡管對(duì)于哪一個(gè)存儲(chǔ)器讀出響應(yīng)有更低的優(yōu)先級(jí)的確定僅僅會(huì)影響該特定存儲(chǔ)器讀出響應(yīng)的等待時(shí)間,但是具有增大等待時(shí)間的存儲(chǔ)器讀出響應(yīng)的附加效應(yīng)會(huì)影響存儲(chǔ)器系統(tǒng)的整體等待時(shí)間。因此,存儲(chǔ)器集線器所采用的仲裁技術(shù)直接影響存儲(chǔ)器系統(tǒng)的整體性能。此外,仲裁方案的實(shí)現(xiàn)也會(huì)影響整體讀出等待時(shí)間,因?yàn)楸M管使用了合意的仲裁方案,效率差的實(shí)現(xiàn)會(huì)對(duì)系統(tǒng)存儲(chǔ)器性能產(chǎn)生負(fù)面影響。因此,存在的需求是一種系統(tǒng)及方法,其用于在具有存儲(chǔ)器集線器結(jié)構(gòu)的系統(tǒng)存儲(chǔ)器中實(shí)現(xiàn)管理存儲(chǔ)器響應(yīng)的仲裁方案。
發(fā)明內(nèi)容
根據(jù)該發(fā)明的一個(gè)方面的一種方法包括在發(fā)送存儲(chǔ)器集線器和接收存儲(chǔ)器集線器之間插入的存儲(chǔ)器集線器的數(shù)據(jù)通路上發(fā)送讀出響應(yīng)。所述方法包括在存儲(chǔ)器集線器中接收仲裁分組,所述仲裁分組包含表示相關(guān)讀出響應(yīng)的數(shù)據(jù)通路配置的數(shù)據(jù)。對(duì)該仲裁分組進(jìn)行解碼,并且根據(jù)該仲裁分組的數(shù)據(jù)來(lái)配置該數(shù)據(jù)通路。在存儲(chǔ)器集線器中接收相關(guān)讀出響應(yīng),并且將該相關(guān)讀出響應(yīng)耦合到用于將其發(fā)送到接收存儲(chǔ)器集線器的經(jīng)配置的數(shù)據(jù)通路。
在該發(fā)明的另一方面中,提供了耦合到至少一個(gè)存儲(chǔ)器設(shè)備的存儲(chǔ)器集線器。該存儲(chǔ)器集線器包括遠(yuǎn)程和本地的輸入節(jié)點(diǎn)、輸出節(jié)點(diǎn)、以及耦合到遠(yuǎn)程和本地的輸入節(jié)點(diǎn)并且進(jìn)一步到輸出節(jié)點(diǎn)的可配置的數(shù)據(jù)通路。該存儲(chǔ)器集線器還包括仲裁控制電路,其耦合到可配置的數(shù)據(jù)通路、輸出節(jié)點(diǎn)、以及遠(yuǎn)程輸入節(jié)點(diǎn)的。仲裁控制電路生成用于通過(guò)本地節(jié)點(diǎn)耦合的相關(guān)讀出響應(yīng)的仲裁分組,該仲裁分組包含表示用于相關(guān)讀出響應(yīng)的數(shù)據(jù)通路配置的數(shù)據(jù)。該仲裁控制電路還能在準(zhǔn)備將通過(guò)遠(yuǎn)程輸入節(jié)點(diǎn)耦合的相關(guān)讀出響應(yīng)耦合到輸出節(jié)點(diǎn)時(shí),根據(jù)通過(guò)遠(yuǎn)程輸入節(jié)點(diǎn)耦合的仲裁分組所包括的數(shù)據(jù)來(lái)配置可配置的數(shù)據(jù)通路。
根據(jù)該發(fā)明的另一方面,提供了存儲(chǔ)器集線器,其含有耦合到輸入節(jié)點(diǎn)和輸出節(jié)點(diǎn)之間的旁路數(shù)據(jù)通路,并且還包括仲裁控制電路,其中在該旁路數(shù)據(jù)通路上,該旁路數(shù)據(jù)通路響應(yīng)于被啟用(enable)而耦合讀出響應(yīng)。該仲裁控制電路耦合到該旁路數(shù)據(jù)通路,并響應(yīng)于從耦合到該存儲(chǔ)器集線器的存儲(chǔ)器設(shè)備中獲得讀出數(shù)據(jù)的步驟而生成仲裁分組。該仲裁分組含有數(shù)據(jù)通路字段,該字段包含啟用上游存儲(chǔ)器集線器的旁路數(shù)據(jù)通路的激活數(shù)據(jù)。該仲裁控制電路還從下游存儲(chǔ)器集線器接收仲裁分組,并啟用該旁路數(shù)據(jù)通路,以將也是從該下游存儲(chǔ)器集線器接收的讀出響應(yīng)從該輸入節(jié)點(diǎn)耦合到該輸出節(jié)點(diǎn)。
圖1是含有可以實(shí)現(xiàn)本發(fā)明的實(shí)施例的基于存儲(chǔ)器集線器的系統(tǒng)存儲(chǔ)器的計(jì)算機(jī)系統(tǒng)的局部框圖;圖2是根據(jù)本發(fā)明的一個(gè)實(shí)施例的仲裁控制元件的功能性框圖,該元件可以在圖1的存儲(chǔ)器集線器中采用;圖3是根據(jù)本發(fā)明的一個(gè)實(shí)施例的仲裁分組和存儲(chǔ)器響應(yīng)的數(shù)據(jù)結(jié)構(gòu)圖;以及圖4是根據(jù)本發(fā)明的一個(gè)實(shí)施例的、圖3的仲裁控制元件的操作的流程圖。
具體實(shí)施例方式
圖4示出了具有存儲(chǔ)器集線器結(jié)構(gòu)的計(jì)算機(jī)系統(tǒng)100,其中本發(fā)明的實(shí)施例可以得到采用。計(jì)算機(jī)系統(tǒng)100包括用于執(zhí)行各種計(jì)算功能的處理器104,例如執(zhí)行特定軟件來(lái)執(zhí)行具體計(jì)算或任務(wù)的。處理器104包括處理器總線106,處理器總線106通常包括地址總線、控制總線、以及數(shù)據(jù)總線。處理器總線106典型地是耦合到高速緩沖存儲(chǔ)器108上,高速緩沖存儲(chǔ)器108典型地是靜態(tài)隨機(jī)存取存儲(chǔ)器(“SRAM”)。處理器總線106還耦合到系統(tǒng)控制器110,系統(tǒng)控制器110也稱為總線橋。
系統(tǒng)控制器110還為多種其它元件充當(dāng)?shù)教幚砥?04的通信通路。更具體地,系統(tǒng)控制器110包括圖形端口,圖形端口典型地耦合到圖形控制器112,圖形控制器112進(jìn)而耦合到視頻終端114。系統(tǒng)控制器110還耦合到一個(gè)或更多的諸如鍵盤或鼠標(biāo)此類的輸入設(shè)備118上,以允許操作員與計(jì)算機(jī)系統(tǒng)100連接。典型的是,計(jì)算機(jī)系統(tǒng)100還包括一個(gè)或更多的諸如打印機(jī)此類的輸出設(shè)備120,輸出設(shè)備120通過(guò)系統(tǒng)控制器110耦合到處理器104。一個(gè)或更多數(shù)據(jù)存儲(chǔ)設(shè)備124也典型地通過(guò)系統(tǒng)控制器110耦合到處理器104,以允許處理器104存儲(chǔ)數(shù)據(jù)或從內(nèi)部或外部的存儲(chǔ)介質(zhì)(未示出)獲取數(shù)據(jù)。典型存儲(chǔ)設(shè)備124的實(shí)例包括硬盤和軟盤、盒式磁帶、以及只讀光盤存儲(chǔ)器(CD-ROM)。
系統(tǒng)控制器110包含通過(guò)總線系統(tǒng)154、156耦合到幾個(gè)存儲(chǔ)器模塊130a-n的存儲(chǔ)器集線器控制器128。存儲(chǔ)器模塊130a-n中的每一個(gè)包括通過(guò)共同顯示為總線150的命令、地址以及數(shù)據(jù)總線而耦合到幾個(gè)存儲(chǔ)器設(shè)備148的存儲(chǔ)器集線器140。存儲(chǔ)器集線器140在控制器128和存儲(chǔ)器設(shè)備148之間有效地路由存儲(chǔ)器請(qǐng)求和響應(yīng)。存儲(chǔ)器集線器140中的每一個(gè)包括寫緩沖器和讀出數(shù)據(jù)緩沖器。使用這種結(jié)構(gòu)的計(jì)算機(jī)系統(tǒng)允許處理器104在一個(gè)存儲(chǔ)器模塊130a-n正在響應(yīng)在先的存儲(chǔ)器請(qǐng)求的同時(shí)訪問(wèn)另一個(gè)存儲(chǔ)器模塊130a-n。例如,處理器104能夠在該系統(tǒng)中一個(gè)存儲(chǔ)器模塊130a-n正準(zhǔn)備提供讀出數(shù)據(jù)給處理器104同時(shí),輸出寫入數(shù)據(jù)到該系統(tǒng)中另一個(gè)存儲(chǔ)器模塊130a-n中的一個(gè)。此外,存儲(chǔ)器集線器結(jié)構(gòu)還能夠在計(jì)算機(jī)系統(tǒng)中提供大大增大的存儲(chǔ)器容量。
圖2是示出了根據(jù)本發(fā)明的一個(gè)實(shí)施例的仲裁控制元件200的功能性框圖。仲裁控制元件200能夠包含在圖1的存儲(chǔ)器集線器140中。如圖2中所示,仲裁控制元件200包括用于存儲(chǔ)相關(guān)存儲(chǔ)器響應(yīng)的兩個(gè)隊(duì)列。本地響應(yīng)隊(duì)列202接收并存儲(chǔ)來(lái)自相關(guān)存儲(chǔ)器模塊130上的存儲(chǔ)器設(shè)備148的本地存儲(chǔ)器響應(yīng)LMR。遠(yuǎn)程響應(yīng)隊(duì)列206接收并存儲(chǔ)不能立即通過(guò)旁路通路204向上游轉(zhuǎn)發(fā)的下游存儲(chǔ)器響應(yīng)。仲裁控制電路210通過(guò)控制/狀態(tài)總線136耦合到隊(duì)列202、206,控制/狀態(tài)總線136允許仲裁控制電路210監(jiān)視隊(duì)列202、206中的每一個(gè)的內(nèi)容,并在控制多路復(fù)用器208時(shí)利用這信息,從而控制由存儲(chǔ)器集線器140執(zhí)行的總的仲裁過(guò)程??刂?狀態(tài)總線136還允許“握手”信號(hào)從隊(duì)列202、206耦合到仲裁控制電路210,以協(xié)調(diào)從仲裁控制電路210到隊(duì)列202、206的控制信號(hào)的傳送。
仲裁控制電路210還耦合到高速鏈路134上,以接收來(lái)自下游存儲(chǔ)器集線器的仲裁分組。正如下面將更詳細(xì)說(shuō)明的那樣,仲裁分組是在相關(guān)存儲(chǔ)器響應(yīng)之前提供的,并且為上游存儲(chǔ)器集線器的仲裁控制電路210提供信息,以預(yù)料到會(huì)接收該相關(guān)存儲(chǔ)器,并啟用通過(guò)的接收存儲(chǔ)器集線器的適當(dāng)通路。此外,在響應(yīng)讀出請(qǐng)求而從存儲(chǔ)器設(shè)備148(圖1)讀出數(shù)據(jù)的時(shí)候,仲裁控制電路210生成要在相關(guān)LMR之前提供的仲裁分組,來(lái)充當(dāng)相關(guān)存儲(chǔ)器響應(yīng)的提前指示。正如之前所論述的,仲裁分組會(huì)在存儲(chǔ)器響應(yīng)到來(lái)之前,把適當(dāng)信息供給上游存儲(chǔ)器集線器,并給各個(gè)仲裁控制電路210做出關(guān)于啟用適當(dāng)數(shù)據(jù)通路的決定的時(shí)間。在正從存儲(chǔ)器設(shè)備148獲取針對(duì)存儲(chǔ)器響應(yīng)的讀出數(shù)據(jù)的同時(shí),仲裁控制電路210準(zhǔn)備仲裁分組。將仲裁分組通過(guò)轉(zhuǎn)換器212提供到多路復(fù)用器208或本地響應(yīng)隊(duì)列202,這取決于上游存儲(chǔ)器集線器是空閑還是繁忙。在仲裁控制電路的控制下,多路轉(zhuǎn)換器208耦合高速鏈路134,以接收來(lái)自遠(yuǎn)程響應(yīng)隊(duì)列206或旁路通路204的存儲(chǔ)器響應(yīng)、來(lái)自仲裁控制電路210的仲裁分組、或來(lái)自本地響應(yīng)隊(duì)列202的仲裁分組和存儲(chǔ)器響應(yīng)。例如,數(shù)據(jù)結(jié)構(gòu)300的數(shù)據(jù)字段的數(shù)據(jù)和類型可以改變,或者用于每一比特時(shí)間的比特的數(shù)目可以改變,并仍然保持在本發(fā)明的范圍之內(nèi)。在本發(fā)明的一個(gè)替換實(shí)施例中,仲裁分組是在仲裁分組電路中生成的,而不是在仲裁控制電路210中,如圖2中所示的那樣。此外,盡管圖2中顯示的是,提供仲裁分組給多路復(fù)用器208以將其注入到數(shù)據(jù)流中,也可以替換地提供仲裁分組到本地響應(yīng)隊(duì)列202并在放置在相關(guān)讀出響應(yīng)分組之前,以將其注入到該數(shù)據(jù)流中。本領(lǐng)域的技術(shù)人員應(yīng)當(dāng)理解,本發(fā)明的實(shí)施例的修改,例如生成仲裁分組的位置或在將仲裁分組放置到相關(guān)數(shù)據(jù)分組之前的數(shù)據(jù)流中的方式,可以在不偏離本發(fā)明的范圍的情況下做出。
圖3示出了根據(jù)本發(fā)明的實(shí)施例用于仲裁分組和存儲(chǔ)器響應(yīng)的數(shù)據(jù)結(jié)構(gòu)300。數(shù)據(jù)結(jié)構(gòu)300分成8個(gè)字節(jié)的信息,每一個(gè)字節(jié)的信息對(duì)應(yīng)于順序的比特時(shí)間。每一個(gè)比特時(shí)間表示一個(gè)時(shí)間的增量,在時(shí)間增量中可以提供新的數(shù)據(jù)。響應(yīng)首部字段302包含兩個(gè)字節(jié)的數(shù)據(jù),該數(shù)據(jù)指示該響應(yīng)是仲裁分組還是存儲(chǔ)器響應(yīng)。地址字段304包含用來(lái)標(biāo)識(shí)仲裁分組或存儲(chǔ)器響應(yīng)所送往的特定集線器的數(shù)據(jù)。命令碼字段306會(huì)具有將數(shù)據(jù)結(jié)構(gòu)300標(biāo)識(shí)為仲裁分組,而不是存儲(chǔ)器響應(yīng)的值。仲裁分組和存儲(chǔ)器響應(yīng)相似,除了對(duì)于仲裁分組來(lái)說(shuō)數(shù)據(jù)字段308的數(shù)據(jù)凈荷是“隨意的”。在數(shù)據(jù)結(jié)構(gòu)300中,大小字段310的全部16比特都含有相同的值,以指示該存儲(chǔ)器響應(yīng)所含數(shù)據(jù)凈荷的大小。例如,“0”指示包含32字節(jié)的數(shù)據(jù),“1”指示包含64字節(jié)的數(shù)據(jù)。本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解,圖3中所示的數(shù)據(jù)結(jié)構(gòu)300的實(shí)施例已經(jīng)通過(guò)舉例的方式加以提供了,對(duì)數(shù)據(jù)結(jié)構(gòu)300的修改可以在不偏離本發(fā)明的范圍的情況下做出。
仲裁控制元件200(圖2)的操作將參考圖4的流程圖來(lái)描述。緊跟讀出數(shù)據(jù)命令的接收之后,在步驟402中,存儲(chǔ)器集線器針對(duì)將提供給請(qǐng)求目標(biāo)的存儲(chǔ)器響應(yīng)來(lái)初始化讀出操作,以從存儲(chǔ)器設(shè)備148(圖1)中獲取所請(qǐng)求的讀出數(shù)據(jù)。在步驟404中,該存儲(chǔ)器集線器的仲裁控制電路210通過(guò)檢查本地響應(yīng)隊(duì)列202的狀態(tài)來(lái)確定本地?cái)?shù)據(jù)通路是不是空閑的。如果本地?cái)?shù)據(jù)通路是空閑的,那么就在步驟406中從存儲(chǔ)器設(shè)備148獲取讀出數(shù)據(jù)的期間由仲裁控制電路210生成仲裁分組。當(dāng)該仲裁分組和存儲(chǔ)器響應(yīng)已經(jīng)準(zhǔn)備好了,并且準(zhǔn)備好傳輸?shù)臅r(shí)候,在步驟408中查詢上游存儲(chǔ)器集線器以確定其是否繁忙。在上游存儲(chǔ)器集線器是空閑的場(chǎng)合,在步驟410、412中,將該仲裁分組發(fā)送給該上游存儲(chǔ)器集線器,接著就發(fā)送該存儲(chǔ)器響應(yīng)。然而,如果該上游存儲(chǔ)器集線器繁忙,那么就在步驟414中拋棄該仲裁分組,并且在步驟416中還將該存儲(chǔ)器響應(yīng)存儲(chǔ)在本地響應(yīng)隊(duì)列202中。相似地,如果在步驟404中確定本地?cái)?shù)據(jù)通路繁忙,那么在步驟416中還將該存儲(chǔ)器響應(yīng)存儲(chǔ)在本地響應(yīng)隊(duì)列202中。在步驟418中,該存儲(chǔ)器響應(yīng)在本地響應(yīng)隊(duì)列202中存儲(chǔ),直到根據(jù)由該存儲(chǔ)器集線器實(shí)現(xiàn)的仲裁方案它被選擇來(lái)發(fā)送到上游存儲(chǔ)器集線器。在步驟420中,根據(jù)仲裁方案將該存儲(chǔ)器響應(yīng)發(fā)送經(jīng)過(guò)每一個(gè)上游集線器,直到該存儲(chǔ)器響應(yīng)到達(dá)目標(biāo)目的地。適當(dāng)?shù)闹俨梅桨冈诒绢I(lǐng)域中是眾所周知的,將不在此詳細(xì)加以描述。同樣適合使用的仲裁方案的一個(gè)實(shí)例在由James W.Meyer和Cory Kanski在2003年10月20申請(qǐng)的題為ARBITRATION SYSTEM AND METHOD FOR MEMORYRESPONSES IN A HUB-BASED MEMORY SYSTEM,編號(hào)為10/690,810的,共同轉(zhuǎn)讓的、共同未決的美國(guó)專利申請(qǐng)中更詳細(xì)地加以描述了,其在此引入以供參考。
正如在此所描述的那樣,本地和遠(yuǎn)程響應(yīng)隊(duì)列202、206以及旁路通路204被用來(lái)實(shí)現(xiàn)各種響應(yīng)仲裁方案。例如,在一個(gè)實(shí)施例中,仲裁控制電路執(zhí)行的仲裁方案給予下游響應(yīng)、或遠(yuǎn)程響應(yīng)高于本地響應(yīng)的優(yōu)先級(jí)。作為選擇,在另一個(gè)所描述的實(shí)施例中,仲裁控制電路執(zhí)行的仲裁方案給予本地響應(yīng)以高于下游響應(yīng)的優(yōu)先權(quán)。在另一個(gè)實(shí)施例中,仲裁控制電路在來(lái)自的本地和下游存儲(chǔ)器的預(yù)定數(shù)目的響應(yīng)之間交替,例如本地和遠(yuǎn)程響應(yīng)可以交替地加以轉(zhuǎn)發(fā),或者兩個(gè)本地響應(yīng)被轉(zhuǎn)發(fā)接著就是兩個(gè)遠(yuǎn)程響應(yīng),等等。另一個(gè)在此描述的實(shí)施例在本地和下游存儲(chǔ)器響應(yīng)之間的仲裁中利用先進(jìn)先出算法。也就是,在操作中,仲裁控制電路210監(jiān)控存儲(chǔ)在本地響應(yīng)隊(duì)列和遠(yuǎn)程響應(yīng)隊(duì)列中的存儲(chǔ)器響應(yīng)的響應(yīng)標(biāo)識(shí)符部分,并選擇包含在這些隊(duì)列中的任何一個(gè)中最舊的響應(yīng)作為下一個(gè)要向上游轉(zhuǎn)發(fā)的響應(yīng)。因此,仲裁控制電路先轉(zhuǎn)發(fā)最舊的響應(yīng),而不依賴于其中存儲(chǔ)了存儲(chǔ)器響應(yīng)的響應(yīng)隊(duì)列。
本領(lǐng)域的普通技術(shù)人員應(yīng)當(dāng)理解可以在不偏離本發(fā)明的范圍的情況下采用其它仲裁方法和方案。
返回到步驟410、412,在所述步驟中,首先將仲裁分組發(fā)送到上游存儲(chǔ)器集線器,然后接著是發(fā)送存儲(chǔ)器響應(yīng),在步驟422中,上游存儲(chǔ)器集線器的仲裁控制電路210接收該仲裁分組。在步驟424、426中該仲裁分組被解碼,并且仲裁控制電路210根據(jù)所解碼的信息而啟用適當(dāng)?shù)臄?shù)據(jù)通路。當(dāng)在步驟430中接收該存儲(chǔ)器響應(yīng)時(shí),仲裁控制電路210啟用適當(dāng)?shù)臄?shù)據(jù)通路。在步驟428中,查詢下一個(gè)上游存儲(chǔ)器集線器以確定它是否繁忙。如果不忙,在步驟432中以旁路的方式將該仲裁分組發(fā)送到下一個(gè)上游存儲(chǔ)器集線器,然后發(fā)送該存儲(chǔ)器響應(yīng)。通過(guò)基于該仲裁分組的解碼信息來(lái)啟用經(jīng)過(guò)該存儲(chǔ)器集線器的適當(dāng)數(shù)據(jù)通路,采用旁路方式的該仲裁分組和該存儲(chǔ)器響應(yīng)的傳輸?shù)玫阶兊萌菀?,其中在步驟412中發(fā)送相關(guān)存儲(chǔ)器響應(yīng)之前的步驟410中發(fā)送該仲裁分組。
返回到步驟428,如果確定下一個(gè)上游存儲(chǔ)器集線器繁忙,該仲裁分組就在步驟440中拋棄,并且該存儲(chǔ)器響應(yīng)在遠(yuǎn)程響應(yīng)隊(duì)列206中存儲(chǔ),直到在步驟442中根據(jù)所采用的仲裁方案,該存儲(chǔ)器響應(yīng)被選擇來(lái)發(fā)送到下一個(gè)上游存儲(chǔ)器集線器。在步驟420中,該存儲(chǔ)器響應(yīng)會(huì)根據(jù)該仲裁方案來(lái)經(jīng)過(guò)該存儲(chǔ)器集線器向上游行進(jìn)直到達(dá)到它的目標(biāo)目的地。
根據(jù)前面的,應(yīng)當(dāng)理解,盡管出于說(shuō)明性的目的該發(fā)明的具體實(shí)施例已經(jīng)在此加以描述了,各種修改還是可以在不偏離該發(fā)明的精神和范圍的情況下做出。例如,本發(fā)明的實(shí)施例在此已經(jīng)對(duì)于計(jì)算機(jī)系統(tǒng)使用的基于存儲(chǔ)器集線器的系統(tǒng)存儲(chǔ)器加以描述。然而,應(yīng)當(dāng)理解,在適當(dāng)?shù)膱?chǎng)合下,本發(fā)明的實(shí)施例可以用在除基于集線器的存儲(chǔ)器系統(tǒng)以外的存儲(chǔ)器系統(tǒng)中。此外,本發(fā)明的實(shí)施例也能夠用在,除計(jì)算機(jī)系統(tǒng)以外的,在基于處理器的系統(tǒng)中采用的,基于存儲(chǔ)器集線器的系統(tǒng)中,正如本領(lǐng)域已知的那樣。因此,該發(fā)明僅受限于所附的權(quán)利要求。
權(quán)利要求
1.一種在系統(tǒng)存儲(chǔ)器中響應(yīng)讀出請(qǐng)求的方法,所述系統(tǒng)存儲(chǔ)器具有響應(yīng)存儲(chǔ)器集線器以及至少一個(gè)插入存儲(chǔ)器集線器,通過(guò)所述系統(tǒng)存儲(chǔ)器,讀出響應(yīng)在所述插入存儲(chǔ)器集線器的數(shù)據(jù)通路上發(fā)送,所述方法包括從耦合到所述響應(yīng)存儲(chǔ)器集線器上的存儲(chǔ)器設(shè)備中獲取讀出數(shù)據(jù),并準(zhǔn)備包含所述讀出數(shù)據(jù)的讀出響應(yīng);生成仲裁分組,所述仲裁分組包含表示所述讀出響應(yīng)的數(shù)據(jù)通路配置的數(shù)據(jù);將所述仲裁分組和所述讀出響應(yīng)提供給所述插入存儲(chǔ)器集線器,所述仲裁分組在所述讀出響應(yīng)之前提供;以及在所述插入存儲(chǔ)器集線器中接收所述仲裁分組,解碼所述仲裁分組的數(shù)據(jù),并根據(jù)所述仲裁分組的數(shù)據(jù)在所述插入存儲(chǔ)器集線器中啟用用于所述讀出響應(yīng)的數(shù)據(jù)通路。
2.如權(quán)利要求1所述的方法,其中,生成仲裁分組包括,生成用來(lái)區(qū)別所述仲裁分組和讀出響應(yīng)的用于所述仲裁分組的數(shù)據(jù)。
3.如權(quán)利要求1所述的方法,其中,生成仲裁分組包括,生成多個(gè)8比特字節(jié),所述多個(gè)8比特字節(jié)包括一個(gè)包含由所述插入存儲(chǔ)器集線器用來(lái)區(qū)別所述仲裁分組和讀出響應(yīng)的數(shù)據(jù)的字節(jié)。
4.如權(quán)利要求1所述的方法,其中,啟用用于所述讀出響應(yīng)的數(shù)據(jù)通路包括,啟用在所述插入存儲(chǔ)器集線器中的旁路數(shù)據(jù)通路,以通過(guò)所述插入存儲(chǔ)器集線器來(lái)耦合所述仲裁分組和讀出響應(yīng)。
5.如權(quán)利要求1所述的方法,還包括確定所述插入存儲(chǔ)器集線器是否繁忙;以及如果所述插入存儲(chǔ)器集線器不忙,就生成所述仲裁分組,并在將所述相關(guān)讀出響應(yīng)提供給所述插入存儲(chǔ)器集線器之前將所述仲裁分組提供給所述插入存儲(chǔ)器集線器。
6.如權(quán)利要求1所述的方法,還包括確定所述響應(yīng)存儲(chǔ)器集線器的本地?cái)?shù)據(jù)通路是否空閑;如果所述本地?cái)?shù)據(jù)通路是空閑的,就生成所述仲裁分組,并在將所述相關(guān)讀出響應(yīng)提供給所述插入存儲(chǔ)器集線器之前將所述仲裁分組提供給所述插入存儲(chǔ)器集線器。
7.如權(quán)利要求1所述的方法,其中,生成所述仲裁分組包括,生成仲裁分組,所述仲裁分組包含表示啟用在所述插入存儲(chǔ)器集線器中的旁路數(shù)據(jù)通路以通過(guò)所述插入存儲(chǔ)器集線器來(lái)耦合所述仲裁分組和讀出響應(yīng)的數(shù)據(jù)。
8.一種在存儲(chǔ)器集線器的數(shù)據(jù)通路上發(fā)送讀出響應(yīng)的方法,所述存儲(chǔ)器集線器插入在發(fā)送存儲(chǔ)器集線器和接收存儲(chǔ)器集線器之間,所述方法包括在所述存儲(chǔ)器集線器中接收仲裁分組,所述仲裁分組包含表示對(duì)于相關(guān)讀出響應(yīng)的數(shù)據(jù)通路配置的數(shù)據(jù);解碼所述仲裁分組;根據(jù)所述仲裁分組的數(shù)據(jù)來(lái)配置所述數(shù)據(jù)通路;在所述存儲(chǔ)器集線器中接收所述相關(guān)讀出響應(yīng);以及將所述相關(guān)讀出響應(yīng)耦合到用于將其發(fā)送到所述接收存儲(chǔ)器集線器的經(jīng)配置的數(shù)據(jù)通路上。
9.如權(quán)利要求8所述的方法,其中,配置所述數(shù)據(jù)通路包括,啟用所述存儲(chǔ)器集線器中的旁路數(shù)據(jù)通路,以通過(guò)所述存儲(chǔ)器集線器將所述仲裁分組和讀出響應(yīng)耦合到所述接收存儲(chǔ)器集線器。
10.如權(quán)利要求8所述的方法,還包括將所述仲裁分組耦合到經(jīng)配置的數(shù)據(jù)通路,以在發(fā)送所述相關(guān)讀出響應(yīng)之前將所述仲裁分組發(fā)送到所述接收存儲(chǔ)器集線器。
11.如權(quán)利要求8所述的方法,還包括接收來(lái)自所述發(fā)送集線器的、關(guān)于存儲(chǔ)器集線器是否繁忙的查詢,并通過(guò)向所述發(fā)送集線器指示所述存儲(chǔ)器集線器不忙來(lái)響應(yīng)所述詢問(wèn)。
12.一種配置存儲(chǔ)器集線器的數(shù)據(jù)通路的方法,通過(guò)所述數(shù)據(jù)路徑提供了讀出響應(yīng),所述方法包括在第一存儲(chǔ)器集線器中生成仲裁分組,所述仲裁分組包含表示對(duì)于相關(guān)讀出響應(yīng)的數(shù)據(jù)通路配置的數(shù)據(jù);將所述仲裁分組提供給耦合到所述第一存儲(chǔ)器集線器上的第二存儲(chǔ)器集線器;在所述第二存儲(chǔ)器集線器中解碼所述仲裁分組;以及在準(zhǔn)備接收所述相關(guān)讀出響應(yīng)時(shí),根據(jù)所述仲裁分組的數(shù)據(jù)來(lái)配置所述第二存儲(chǔ)器集線器的數(shù)據(jù)通路。
13.如權(quán)利要求12所述的方法,其中,生成仲裁分組包括,生成用于所述仲裁分組的數(shù)據(jù),所述數(shù)據(jù)用于區(qū)分所述仲裁分組和讀出響應(yīng)。
14.如權(quán)利要求12所述的方法,其中,配置所述數(shù)據(jù)通路包括,啟用所述第二存儲(chǔ)器集線器中的旁路數(shù)據(jù)通路,以通過(guò)所述第二存儲(chǔ)器集線器來(lái)耦合所述仲裁分組和讀出響應(yīng)。
15.如權(quán)利要求12所述的方法,還包括確定所述第二存儲(chǔ)器集線器是否繁忙;以及如果所述第二存儲(chǔ)器集線器不忙,就在將所述相關(guān)讀出響應(yīng)提供給所述第二存儲(chǔ)器集線器之前將所述仲裁分組提供給所述第二存儲(chǔ)器集線器。
16.如權(quán)利要求12所述的方法,還包括確定本地?cái)?shù)據(jù)通路是否空閑;如果所述本地?cái)?shù)據(jù)通路是空閑的,就生成所述仲裁分組,并在將所述相關(guān)讀出響應(yīng)提供給所述第二存儲(chǔ)器集線器之前將所述仲裁分組提供給所述第二存儲(chǔ)器集線器。
17.如權(quán)利要求12所述的方法,其中,生成所述仲裁分組包括,生成仲裁分組,所述仲裁分組包括表示啟用所述第二存儲(chǔ)器集線器中的旁路數(shù)據(jù)通路以通過(guò)所述第二存儲(chǔ)器集線器來(lái)耦合所述仲裁分組和讀出響應(yīng)的數(shù)據(jù)。
18.一種在第一和第二存儲(chǔ)器集線器之間通信的方法,用于配置在所述第二存儲(chǔ)器集線器中的數(shù)據(jù)通路,所述方法包括生成用于要通過(guò)所述第二存儲(chǔ)器集線器來(lái)耦合的相關(guān)讀出響應(yīng)的仲裁分組,所述仲裁分組包括命令碼字段,還包括數(shù)據(jù)通路字段,所述命令碼字段包含標(biāo)識(shí)其是仲裁分組的數(shù)據(jù),所述數(shù)據(jù)通路字段包含表示在第二存儲(chǔ)器集線器中的數(shù)據(jù)所述通路配置的數(shù)據(jù);在將所述相關(guān)讀出響應(yīng)發(fā)送給所述第二存儲(chǔ)器集線器之前發(fā)送所述仲裁分組;以及根據(jù)包含在所述數(shù)據(jù)通路字段中的數(shù)據(jù)來(lái)配置所述第二存儲(chǔ)器集線器中的數(shù)據(jù)通路。
19.如權(quán)利要求18所述的方法,其中配置所述數(shù)據(jù)通路包括,啟用所述第二存儲(chǔ)器集線器中的旁路數(shù)據(jù)通路,以通過(guò)所述第二存儲(chǔ)器集線器來(lái)耦合所述仲裁分組和所述相關(guān)讀出響應(yīng)。
20.如權(quán)利要求18所述的方法,還包括確定所述第二存儲(chǔ)器集線器是否繁忙;以及如果所述第二存儲(chǔ)器集線器不忙,就生成所述仲裁分組,并在將所述相關(guān)讀出響應(yīng)提供給所述第二存儲(chǔ)器集線器之前將所述仲裁分組提供給所述第二存儲(chǔ)器集線器。
21.如權(quán)利要求19所述的方法,還包括確定本地?cái)?shù)據(jù)通路是否空閑的;如果所述本地?cái)?shù)據(jù)通路是空閑的,就生成所述仲裁分組,并在將所述相關(guān)讀出響應(yīng)提供給所述第二存儲(chǔ)器集線器之前將所述仲裁分組提供給所述第二存儲(chǔ)器集線器。
22.一種耦合到至少一個(gè)存儲(chǔ)器設(shè)備上的存儲(chǔ)器集線器,所述存儲(chǔ)器集線器包括遠(yuǎn)程的和本地的輸入節(jié)點(diǎn);輸出節(jié)點(diǎn);可配置的數(shù)據(jù)通路,其耦合到所述遠(yuǎn)程的和本地的輸入節(jié)點(diǎn)上,并且還耦合到所述輸出節(jié)點(diǎn)上,所述可配置的數(shù)據(jù)通路用于通過(guò)所述遠(yuǎn)程的和本地的輸入節(jié)點(diǎn)將至少一個(gè)讀出響應(yīng)耦合到所述輸出節(jié)點(diǎn);以及仲裁控制電路,其耦合到所述可配置的數(shù)據(jù)通路、所述輸出節(jié)點(diǎn)、以及所述遠(yuǎn)程輸入節(jié)點(diǎn)上,所述仲裁控制電路用于生成對(duì)于通過(guò)所述本地輸入節(jié)點(diǎn)耦合的相關(guān)讀出響應(yīng)的仲裁分組,所述仲裁分組包含表示對(duì)于所述相關(guān)讀出響應(yīng)的數(shù)據(jù)通路配置的數(shù)據(jù),所述仲裁控制電路還用于在準(zhǔn)備將通過(guò)所述遠(yuǎn)程輸入節(jié)點(diǎn)耦合的相關(guān)讀出響應(yīng)耦合到所述輸出節(jié)點(diǎn)時(shí),根據(jù)通過(guò)所述遠(yuǎn)程輸入節(jié)點(diǎn)耦合的仲裁分組包括的數(shù)據(jù)來(lái)配置所述可配置的數(shù)據(jù)通路。
23.如權(quán)利要求22所述的存儲(chǔ)器集線器,其中,所述可配置的數(shù)據(jù)通路包括多路復(fù)用器,其具有耦合到所述輸出節(jié)點(diǎn)上的輸出端以及耦合到所述仲裁控制電路上的控制節(jié)點(diǎn);旁路數(shù)據(jù)通路,其耦合到所述遠(yuǎn)程輸入節(jié)點(diǎn)和所述多路復(fù)用器的第一輸入端上;本地隊(duì)列,其具有耦合到所述本地輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第二輸入端上的輸出端;以及遠(yuǎn)程隊(duì)列,其具有耦合到所述遠(yuǎn)程輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第三輸入端上的輸出端,所述仲裁控制電路用于生成用于所述多路復(fù)用器的信號(hào),以有選擇地將所述旁路數(shù)據(jù)通路、本地隊(duì)列或遠(yuǎn)程隊(duì)列耦合到所述輸出節(jié)點(diǎn)上。
24.如權(quán)利要求22所述的存儲(chǔ)器集線器,其中,所述仲裁控制邏輯還用于生成用于所述仲裁分組的數(shù)據(jù),所述數(shù)據(jù)用來(lái)區(qū)分所述仲裁分組和相關(guān)讀出響應(yīng)。
25.一種存儲(chǔ)器集線器,包括旁路數(shù)據(jù)通路,其耦合到輸入節(jié)點(diǎn)和輸出節(jié)點(diǎn)之間,在所述旁路數(shù)據(jù)通路上,所述旁路數(shù)據(jù)通路響應(yīng)于被啟用,在所述輸入節(jié)點(diǎn)和輸出節(jié)點(diǎn)之間耦合所述讀出響應(yīng);以及仲裁控制電路,其耦合到所述旁路數(shù)據(jù)通路上,所述仲裁控制電路響應(yīng)于從耦合到所述存儲(chǔ)器集線器上的存儲(chǔ)器設(shè)備中獲取讀出數(shù)據(jù),生成仲裁分組,所述仲裁分組具有數(shù)據(jù)通路字段,所述數(shù)據(jù)通路字段含有用于啟用上游存儲(chǔ)器集線器的旁路數(shù)據(jù)通路的激活數(shù)據(jù),所述仲裁控制電路還用于從下游存儲(chǔ)器集線器接收仲裁分組并啟用所述旁路數(shù)據(jù)通路以將從所述下游存儲(chǔ)器集線器接收到的讀出響應(yīng)從所述輸入節(jié)點(diǎn)耦合到所述輸出節(jié)點(diǎn)。
26.如權(quán)利要求25所述的存儲(chǔ)器集線器,還包括多路復(fù)用器,其具有耦合到所述輸出節(jié)點(diǎn)上的輸出端以及耦合到所述仲裁控制電路上的控制節(jié)點(diǎn),所述多路復(fù)用器還具有耦合到旁路數(shù)據(jù)通路上的第一輸入端;本地隊(duì)列,其具有耦合到本地輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第二輸入端上的輸出端;以及遠(yuǎn)程隊(duì)列,其具有耦合到所述輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第三輸入端上的輸出端,所述仲裁控制電路用于生成用于所述多路復(fù)用器的控制信號(hào),以有選擇地將所述旁路數(shù)據(jù)通路、本地隊(duì)列或遠(yuǎn)程隊(duì)列耦合到所述輸出節(jié)點(diǎn)上。
27.一種存儲(chǔ)器模塊,包括多個(gè)存儲(chǔ)器設(shè)備;以及存儲(chǔ)器集線器,其通過(guò)存儲(chǔ)器設(shè)備總線耦合到所述存儲(chǔ)器設(shè)備上,以訪問(wèn)所述存儲(chǔ)器設(shè)備,所述存儲(chǔ)器集線器包括遠(yuǎn)程的和本地的輸入節(jié)點(diǎn),所述本地輸入節(jié)點(diǎn)耦合到所述存儲(chǔ)器設(shè)備總線上;輸出節(jié)點(diǎn);可配置的數(shù)據(jù)通路,其耦合到所述遠(yuǎn)程的和本地的輸入節(jié)點(diǎn)上,并且還耦合到所述輸出節(jié)點(diǎn)上,所述可配置的數(shù)據(jù)通路用于通過(guò)所述遠(yuǎn)程的和本地的輸入節(jié)點(diǎn)將至少一個(gè)讀出響應(yīng)耦合到所述輸出節(jié)點(diǎn);以及仲裁控制電路,其耦合到所述可配置的數(shù)據(jù)通路、輸出節(jié)點(diǎn)以及遠(yuǎn)程輸入節(jié)點(diǎn)上,所述仲裁控制電路用于生成對(duì)于通過(guò)所述本地輸入節(jié)點(diǎn)耦合的相關(guān)讀出響應(yīng)的仲裁分組,所述仲裁分組包含表示對(duì)于所述相關(guān)讀出響應(yīng)的數(shù)據(jù)通路配置的數(shù)據(jù),所述仲裁控制電路還用于在準(zhǔn)備將通過(guò)所述遠(yuǎn)程輸入節(jié)點(diǎn)耦合的相關(guān)讀出響應(yīng)耦合到所述輸出節(jié)點(diǎn)時(shí),根據(jù)通過(guò)所述遠(yuǎn)程輸入節(jié)點(diǎn)耦合的仲裁分組包括的數(shù)據(jù)來(lái)配置所述可配置的數(shù)據(jù)通路。
28.如權(quán)利要求27所述的存儲(chǔ)器模塊,其中,所述存儲(chǔ)器集線器的可配置的數(shù)據(jù)通路包括多路復(fù)用器,其具有耦合到所述輸出節(jié)點(diǎn)上的輸出端以及耦合到所述仲裁控制電路上的控制節(jié)點(diǎn);旁路數(shù)據(jù)通路,其耦合到所述遠(yuǎn)程輸入節(jié)點(diǎn)和所述多路復(fù)用器的第一輸入端上;本地隊(duì)列,其具有耦合到所述本地輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第二輸入端上的輸出端;以及遠(yuǎn)程隊(duì)列,其具有耦合到所述遠(yuǎn)程輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第三輸入端上的輸出端,所述仲裁控制電路用于生成用于所述多路復(fù)用器的控制信號(hào),以有選擇地將所述旁路數(shù)據(jù)通路、本地隊(duì)列或遠(yuǎn)程隊(duì)列耦合到所述輸出節(jié)點(diǎn)上。
29.如權(quán)利要求27所述的存儲(chǔ)器模塊,其中,所述存儲(chǔ)器集線器的仲裁控制邏輯還用于生成用于所述仲裁分組的數(shù)據(jù),所述數(shù)據(jù)用于區(qū)分所述仲裁分組和相關(guān)讀出響應(yīng)。
30.一種存儲(chǔ)器模塊,包括多個(gè)存儲(chǔ)器設(shè)備;以及存儲(chǔ)器集線器,其通過(guò)存儲(chǔ)器設(shè)備總線耦合到所述存儲(chǔ)器設(shè)備上,以訪問(wèn)所述存儲(chǔ)器設(shè)備,所述存儲(chǔ)器集線器包括旁路數(shù)據(jù)通路,其耦合在輸入節(jié)點(diǎn)和輸出節(jié)點(diǎn)之間,在所述旁路數(shù)據(jù)通路上,所述旁路數(shù)據(jù)通路響應(yīng)于被啟用,在所述輸入節(jié)點(diǎn)和輸出節(jié)點(diǎn)之間耦合所述讀出響應(yīng);以及仲裁控制電路,耦合到所述旁路數(shù)據(jù)通路上,用于響應(yīng)于從耦合到所述存儲(chǔ)器集線器上的存儲(chǔ)器設(shè)備中獲取讀出數(shù)據(jù),生成仲裁分組,所述仲裁分組具有數(shù)據(jù)通路字段,所述數(shù)據(jù)通路字段含有用于啟用上游存儲(chǔ)器集線器的旁路數(shù)據(jù)通路的激活數(shù)據(jù),所述仲裁控制電路還用于從下游存儲(chǔ)器集線器接收仲裁分組并啟用所述旁路數(shù)據(jù)通路以將從所述下游存儲(chǔ)器集線器接收到的讀出響應(yīng)從所述輸入節(jié)點(diǎn)耦合到所述輸出節(jié)點(diǎn)。
31.如權(quán)利要求30所述的存儲(chǔ)器模塊,其中,所述存儲(chǔ)器集線器還包括多路復(fù)用器,其具有耦合到所述輸出節(jié)點(diǎn)上的輸出端以及耦合到所述仲裁控制電路上的控制節(jié)點(diǎn),所述多路復(fù)用器還具有耦合到所述旁路數(shù)據(jù)通路上的第一輸入端;本地隊(duì)列,其具有耦合到本地輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第二輸入端上的輸出端;以及遠(yuǎn)程隊(duì)列,其具有耦合到所述輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第三輸入端上的輸出端,所述仲裁控制電路用于生成用于所述多路復(fù)用器的信號(hào),以有選擇地將所述旁路數(shù)據(jù)通路、本地隊(duì)列或遠(yuǎn)程隊(duì)列耦合到所述輸出節(jié)點(diǎn)上。
32.一種基于處理器的系統(tǒng),包括具有處理器總線的處理器;耦合到所述處理器總線上的系統(tǒng)控制器,所述系統(tǒng)控制器具有外圍設(shè)備端口,所述系統(tǒng)控制器還包括耦合到系統(tǒng)存儲(chǔ)器端口上的控制器;耦合到所述系統(tǒng)控制器的外圍設(shè)備端口上的至少一個(gè)輸入設(shè)備;耦合到所述系統(tǒng)控制器的外圍設(shè)備端口上的至少一個(gè)輸出設(shè)備;耦合到所述系統(tǒng)控制器的外圍設(shè)備端口上的至少一個(gè)數(shù)據(jù)存儲(chǔ)設(shè)備;耦合到所述系統(tǒng)控制器上、用于在其上發(fā)送存儲(chǔ)器請(qǐng)求和響應(yīng)的存儲(chǔ)器總線;以及耦合到所述存儲(chǔ)器總線上的多個(gè)存儲(chǔ)器模塊,所述模塊中的每一個(gè)包括多個(gè)存儲(chǔ)器設(shè)備;以及存儲(chǔ)器集線器,其通過(guò)存儲(chǔ)器設(shè)備總線耦合到所述存儲(chǔ)器設(shè)備上,以訪問(wèn)所述存儲(chǔ)器設(shè)備,所述存儲(chǔ)器集線器包括遠(yuǎn)程的和本地的輸入節(jié)點(diǎn),所述本地輸入節(jié)點(diǎn)耦合到所述存儲(chǔ)器設(shè)備總線上;輸出節(jié)點(diǎn);可配置的數(shù)據(jù)通路,其耦合到所述遠(yuǎn)程的和本地的輸入節(jié)點(diǎn)上,并且還耦合到所述輸出節(jié)點(diǎn)上,所述可配置的數(shù)據(jù)通路用于通過(guò)所述遠(yuǎn)程的和本地的輸入節(jié)點(diǎn)將至少一個(gè)讀出響應(yīng)耦合到所述輸出節(jié)點(diǎn);以及仲裁控制電路,其耦合到所述可配置的數(shù)據(jù)通路、輸出節(jié)點(diǎn)以及遠(yuǎn)程輸入節(jié)點(diǎn)上,所述仲裁控制電路用于生成對(duì)于通過(guò)所述本地輸入節(jié)點(diǎn)耦合的相關(guān)讀出響應(yīng)的仲裁分組,所述仲裁分組包含表示對(duì)于所述相關(guān)讀出響應(yīng)的數(shù)據(jù)通路配置的數(shù)據(jù),所述仲裁控制電路還用于在準(zhǔn)備將通過(guò)所述遠(yuǎn)程輸入節(jié)點(diǎn)耦合的相關(guān)讀出響應(yīng)耦合到所述輸出節(jié)點(diǎn)時(shí),根據(jù)通過(guò)所述遠(yuǎn)程輸入節(jié)點(diǎn)耦合的仲裁分組包括的數(shù)據(jù)來(lái)配置所述可配置的數(shù)據(jù)通路。
33.如權(quán)利要求32所述的基于處理器的系統(tǒng),其中,存儲(chǔ)器集線器的可配置的數(shù)據(jù)通路包括多路復(fù)用器,其具有耦合到所述輸出節(jié)點(diǎn)上的輸出端以及耦合到所述仲裁控制電路上的控制節(jié)點(diǎn);旁路數(shù)據(jù)通路,其耦合到所述遠(yuǎn)程輸入節(jié)點(diǎn)和所述多路復(fù)用器的第一輸入端上;本地隊(duì)列,其具有耦合到所述本地輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第二輸入端上的輸出端;以及遠(yuǎn)程隊(duì)列,其具有耦合到所述遠(yuǎn)程輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第三輸入端上的輸出端,所述仲裁控制電路用于生成用于所述多路復(fù)用器的信號(hào),以有選擇地將所述旁路數(shù)據(jù)通路、本地隊(duì)列或遠(yuǎn)程隊(duì)列耦合到所述輸出節(jié)點(diǎn)上。
34.如權(quán)利要求32所述的基于處理器的系統(tǒng),其中,所述存儲(chǔ)器集線器的仲裁控制邏輯還用于生成用于所述仲裁分組的數(shù)據(jù),所述數(shù)據(jù)用于區(qū)分所述仲裁分組和相關(guān)讀出響應(yīng)。
35.一種基于處理器的系統(tǒng),包括具有處理器總線的處理器;耦合到所述處理器總線上的系統(tǒng)控制器,所述系統(tǒng)控制器具有外圍設(shè)備端口,所述系統(tǒng)控制器還包括耦合到系統(tǒng)存儲(chǔ)器端口上的控制器;耦合到所述系統(tǒng)控制器的外圍設(shè)備端口上的至少一個(gè)輸入設(shè)備;耦合到所述系統(tǒng)控制器的外圍設(shè)備端口上的至少一個(gè)輸出設(shè)備;耦合到所述系統(tǒng)控制器的外圍設(shè)備端口上的至少一個(gè)數(shù)據(jù)存儲(chǔ)設(shè)備;耦合到所述系統(tǒng)控制器上的、用于在其上發(fā)送存儲(chǔ)器請(qǐng)求和響應(yīng)的存儲(chǔ)器總線;以及耦合到所述存儲(chǔ)器總線上的多個(gè)存儲(chǔ)器模塊,所述模塊中每一個(gè)包括多個(gè)存儲(chǔ)器設(shè)備;以及存儲(chǔ)器集線器,其通過(guò)存儲(chǔ)器設(shè)備總線耦合到所述存儲(chǔ)器設(shè)備上,以訪問(wèn)所述存儲(chǔ)器設(shè)備,所述存儲(chǔ)器集線器包括旁路數(shù)據(jù)通路,其耦合在輸入節(jié)點(diǎn)和輸出節(jié)點(diǎn)之間,在所述旁路數(shù)據(jù)通路上,所述旁路數(shù)據(jù)通路響應(yīng)于被啟用,在所述輸入節(jié)點(diǎn)和輸出節(jié)點(diǎn)之間耦合所述讀出響應(yīng);以及仲裁控制電路,耦合到所述旁路數(shù)據(jù)通路上,用于響應(yīng)于從耦合到所述存儲(chǔ)器集線器上的存儲(chǔ)器設(shè)備中獲取讀出數(shù)據(jù),生成仲裁分組,所述仲裁分組具有數(shù)據(jù)通路字段,所述數(shù)據(jù)通路字段含有用于啟用上游存儲(chǔ)器集線器的旁路數(shù)據(jù)通路的激活數(shù)據(jù),所述仲裁控制電路還用于從下游存儲(chǔ)器集線器接收仲裁分組并啟用所述旁路數(shù)據(jù)通路以將從所述下游存儲(chǔ)器集線器接收到的讀出響應(yīng)從所述輸入節(jié)點(diǎn)耦合到所述輸出節(jié)點(diǎn)。
36.如權(quán)利要求35所述的基于處理器的系統(tǒng),其中,存儲(chǔ)器集線器還包括多路復(fù)用器,其具有耦合到所述輸出節(jié)點(diǎn)上的輸出端以及耦合到所述仲裁控制電路上的控制節(jié)點(diǎn),所述多路復(fù)用器還具有耦合到所述旁路數(shù)據(jù)通路上的第一輸入端;本地隊(duì)列,其具有耦合到本地輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第二輸入端上的輸出端;以及遠(yuǎn)程隊(duì)列,其具有耦合到所述輸入節(jié)點(diǎn)上的輸入端,并且還具有耦合到所述多路復(fù)用器的第三輸入端上的輸出端,所述仲裁控制電路用于生成用于所述多路復(fù)用器的控制信號(hào),以有選擇地將所述旁路數(shù)據(jù)通路、本地隊(duì)列或遠(yuǎn)程隊(duì)列耦合到所述輸出節(jié)點(diǎn)上。
全文摘要
一種存儲(chǔ)器集線器和一種用于在存儲(chǔ)器集線器的數(shù)據(jù)通路上發(fā)送讀出響應(yīng)的方法,其中該存儲(chǔ)器集線器插入在發(fā)送存儲(chǔ)器集線器和接收存儲(chǔ)器集線器之間。在存儲(chǔ)器集線器中接收仲裁分組,其包含表表示用于相關(guān)讀出響應(yīng)的數(shù)據(jù)通路配置的數(shù)據(jù)。解碼該仲裁分組,并且根據(jù)該仲裁分組的數(shù)據(jù)來(lái)配置該數(shù)據(jù)通路。在存儲(chǔ)器集線器中接收該相關(guān)讀出響應(yīng)并且將該相關(guān)讀出響應(yīng)耦合到用于將其發(fā)送到接收存儲(chǔ)器集線器的經(jīng)配置的數(shù)據(jù)通路上。
文檔編號(hào)G06F13/16GK1957332SQ200580016550
公開(kāi)日2007年5月2日 申請(qǐng)日期2005年3月23日 優(yōu)先權(quán)日2004年3月24日
發(fā)明者約瑟夫·M·杰德洛, 拉爾夫·詹姆斯 申請(qǐng)人:米克倫技術(shù)公司