国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      將事務(wù)分離到不同的虛擬信道的制作方法

      文檔序號(hào):6428310閱讀:188來源:國(guó)知局
      專利名稱:將事務(wù)分離到不同的虛擬信道的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及到數(shù)據(jù)通信,特別是涉及到系統(tǒng)中各裝置之間的通信。
      背景技術(shù)
      大多數(shù)計(jì)算機(jī)系統(tǒng)是通過使用一個(gè)或多個(gè)總線耦合在一起的組件形成的,該總線用來在各系統(tǒng)組件之間傳輸信息。諸如PeripheralComponent Interconnect(PCI)Specification(《外圍組件互連規(guī)范》)2.1版(1995年6月1日出版)等的現(xiàn)有總線標(biāo)準(zhǔn)提供了一種多點(diǎn)總線(multidrop bus),其中多個(gè)裝置可以與同一總線相耦合。因此易于通過同一總線對(duì)裝置進(jìn)行讀或?qū)憽?br> 但是,隨著總線接口速度的增加,總線架構(gòu)正在從多點(diǎn)架構(gòu)移向點(diǎn)到點(diǎn)架構(gòu)。在此類點(diǎn)到點(diǎn)架構(gòu)中,對(duì)等通信變得更為困難,原因是此類通信的同步、排序和相干性變得更為困難。點(diǎn)到點(diǎn)架構(gòu)的一個(gè)例子是符合PCI Express Base Specification 1.0版(2002年7月22日出版)的PCI ExpressTM架構(gòu)。
      由于一個(gè)系統(tǒng)的或與之相耦合的多個(gè)總線可能會(huì)使用不同的通信協(xié)議,所以存在著通信困難。例如輸入/輸出(I/O)裝置之間的對(duì)等通信可能會(huì)根據(jù)第一種協(xié)議來發(fā)送,但由于點(diǎn)到點(diǎn)架構(gòu)以及I/O裝置之間的其它組件所使用的第二種協(xié)議,所以此類通信會(huì)變得很困難。
      此外,I/O接口一般將各事務(wù)(transaction)標(biāo)識(shí)為投寄型(posted)或非投寄型(non-posted),而且各類型的定序規(guī)則是不同的。某些定序規(guī)則處在適當(dāng)?shù)奈恢糜糜诠δ艿恼_性(如讀出事務(wù)不許超越寫入處理,寫入處理不許超越寫入等等)。除此類定序規(guī)則之外,某些諸如PCI的協(xié)議要求投寄的循環(huán)(posted cycles),以前進(jìn)越越失速的(stalled)非投寄的循環(huán)。這是為了避免由于缺乏前行而造成接口死鎖。在諸如PCI的某些協(xié)議中,通過允許一個(gè)目標(biāo)“重試”請(qǐng)求來使能前行,此請(qǐng)求用信號(hào)通知啟動(dòng)者它應(yīng)該繞過該嘗試的事務(wù)而試試可能在它之后的事務(wù)。
      但是,在遵循第一種協(xié)議的I/O裝置與具有第二種協(xié)議的一個(gè)系統(tǒng)耦合的情況下,存在不同的方法來避免死鎖,這些不同的機(jī)制有時(shí)是不兼容的。當(dāng)一個(gè)協(xié)議未規(guī)定重試選項(xiàng)時(shí),尤其存在這種不兼容性,并且事務(wù)的信用跟蹤(credit tracking)是在不同協(xié)議的不同層來完成的。因此,存在對(duì)規(guī)定通過系統(tǒng)的事務(wù)進(jìn)行無死鎖傳輸?shù)男枨螅@里對(duì)于該系統(tǒng)的不同組件存在多種協(xié)議。


      圖1是按照本發(fā)明的一種實(shí)施方案的系統(tǒng)方塊圖。
      圖2是按照本發(fā)明的一種實(shí)施方案的輸入/輸出集線器方塊圖。
      圖3是按照本發(fā)明的一種實(shí)施方案的相干系統(tǒng)的部分方塊圖。
      具體實(shí)施方案參見圖1,圖中所示是按照本發(fā)明的一個(gè)實(shí)施方案的系統(tǒng)方塊圖。如圖1中所示,系統(tǒng)10可以是一個(gè)多處理器系統(tǒng),它包括按照本發(fā)明的一個(gè)實(shí)施方案的一個(gè)相干接口。即,在其它實(shí)施方案中,系統(tǒng)10可以代表在不同的實(shí)施方案中的任何一個(gè)所希望的臺(tái)式的、移動(dòng)的、服務(wù)器平臺(tái)或其它類似平臺(tái)。在某些實(shí)施方案中,圖1的不同組件之間的互連可以是提供用于系統(tǒng)10內(nèi)的相干共享存儲(chǔ)器的點(diǎn)到點(diǎn)互連,在一個(gè)這樣的實(shí)施方案中,在其間通信所采用的互連和協(xié)議可以構(gòu)成一個(gè)公共系統(tǒng)接口(CSI)。以這種方式,系統(tǒng)10的多個(gè)處理器、存儲(chǔ)器和其它組件可相干地相互接口。
      參見圖1,系統(tǒng)10可包括一個(gè)第一處理器50(CPU A)和第二處理器55(CPU B)。在各種實(shí)施方案中,每個(gè)處理器可包括存儲(chǔ)控制器功能性,以便處理器能夠通過一個(gè)點(diǎn)到點(diǎn)互連來直接與一個(gè)相關(guān)聯(lián)的共享存儲(chǔ)器相接口。例如如圖1所示,處理器50可以通過一個(gè)點(diǎn)到點(diǎn)互連來與存儲(chǔ)器60(存儲(chǔ)器A)耦合,而處理器55可以通過一個(gè)類似的點(diǎn)到點(diǎn)互連來與存儲(chǔ)器65(存儲(chǔ)器B)耦合。此外,處理器50和55也可通過一個(gè)點(diǎn)到點(diǎn)互連來相互耦合。同樣,處理器50和55中的每一個(gè)都可以通過點(diǎn)到點(diǎn)互連來與第一輸入/輸出集線器(IOH A)20和第二IOH30(IOH B)中的每一個(gè)進(jìn)行耦合。
      在圖1的實(shí)施方案中,方框15中的所有組件可以共同地組成一個(gè)相干系統(tǒng)(即,相干系統(tǒng)15)。此類相干系統(tǒng)可接納相干事務(wù),而事務(wù)所流過的信道之間則無需任何定序。盡管此處所討論的是相干系統(tǒng),但應(yīng)該理解,相干和非相干事務(wù)均可由系統(tǒng)內(nèi)的組件傳遞過去以及進(jìn)行作用。例如存儲(chǔ)器60和65之一或兩者的一個(gè)區(qū)域可為非相干事務(wù)預(yù)留。雖然在圖1實(shí)施方案所示的平臺(tái)拓?fù)渲杏袃蓚€(gè)處理器和兩個(gè)I/O集線器,但應(yīng)理解為,其它實(shí)施方案可以包括更多或更少的此類組件。例如可以實(shí)現(xiàn)一種具有一單個(gè)處理器、一單個(gè)I/O集線器和與其相耦合的關(guān)聯(lián)I/O裝置的單處理器系統(tǒng)。此外,也可以實(shí)現(xiàn)具有4、8、16、32或其它數(shù)目的處理器的多處理器系統(tǒng),且適當(dāng)數(shù)量的I/O集線器和其它組件可與其耦合。任何此類平臺(tái)拓?fù)渚衫命c(diǎn)到點(diǎn)互連,從而為該系統(tǒng)的一個(gè)相干部分內(nèi)的相干性作準(zhǔn)備,并且也允許在與其耦合的I/O裝置之間的非相干對(duì)等事務(wù)。因此,此類點(diǎn)到點(diǎn)互連可以在組件之間提供多個(gè)通路。
      如圖1所示,I/O集線器20和30中的每個(gè)可包含有多個(gè)端口(如IOH 20中的端口21-24,IOH 30中的端口31-34),以便和與其相耦合的I/O裝置相接口。例如在某些實(shí)施方案中,此類I/O裝置可能會(huì)是按照一個(gè)或多個(gè)總線結(jié)構(gòu)的裝置。在一個(gè)實(shí)施方案中,此類I/O裝置可以是PCI ExpressTM裝置。當(dāng)在其中使用時(shí),此類裝置可被稱為“PCI-E”裝置。
      為了簡(jiǎn)化,圖1表示了一種與各I/O集線器相耦合的單I/O裝置,即通過端口21與IOH 20相耦合的I/O裝置(I/O裝置A)40,通過端口31與IOH 30相耦合的I/O裝置(I/O裝置B)45。應(yīng)理解的是,與本發(fā)明的實(shí)施方案相符的一個(gè)I/O集線器中,端口數(shù)可以改變,圖1中所示的端口數(shù)及與其耦合的裝置數(shù)僅用于說明。
      圖1所示是一種與IOH 30相耦合的傳統(tǒng)I/O控制器集線器(ICH)70。在一種實(shí)施方案中,ICH 70可以用來將諸如鍵盤、鼠標(biāo)和UniversalSerial Bus(通用串行總線,USB)裝置(如與《USB規(guī)范》2.0版(2000年12月出版)相符的裝置)之類的傳統(tǒng)裝置耦合到相干系統(tǒng)15。
      雖然圖1所示的I/O集線器包括多個(gè)端口,但應(yīng)理解,集線器可以使用硬件、固件和軟件的組合來實(shí)現(xiàn)各種功能。此類硬件和軟件的使用可使得I/O集線器在相干系統(tǒng)15(如共享存儲(chǔ)器60和65、處理器50和55以及IOH 20和30)以及與其耦合的裝置(如I/O裝置40和45)之間作為接口來使用。此外,圖1的I/O集線器可被用來支持各種總線或與其耦合的裝置的其它通信協(xié)議。IOH 20和IOH 30可用作代理,在兩個(gè)或更多個(gè)通信鏈路間提供一個(gè)中央連接。要特別指出的是,IOH 20和IOH 30也可被稱為在與相干系統(tǒng)15相耦合的不同I/O裝置之間提供連接的“CSI代理”。在各種實(shí)施方案中,相干系統(tǒng)15中的其它組件也可用作CSI代理。
      在各種實(shí)施方案中,I/O集線器20和30的每一個(gè)端口可包括多個(gè)信道,在這里常被稱為“虛擬信道”,這些虛擬信道可共同形成一個(gè)虛擬網(wǎng)絡(luò),該端口還可包括在不同裝置間進(jìn)行數(shù)據(jù)、控制和狀態(tài)信息通信的關(guān)聯(lián)緩沖器。在一個(gè)特定的實(shí)施方案中,每個(gè)端口可至少包括三個(gè)此類信道,包括一個(gè)標(biāo)準(zhǔn)信道、一個(gè)旁路信道和一個(gè)完成信道(completion channel),但本發(fā)明的范圍并不局限于此。此外,這些信道可以是非相干信道,用來路由與相干系統(tǒng)15相耦合的I/O裝置的非相干事務(wù)。在某些此類實(shí)施方案中,可存在用于相干傳輸?shù)母郊有诺馈T谄渌鼘?shí)施方案中,可存在兩個(gè)虛擬信道。在此類實(shí)施方案中,兩個(gè)信道可以是一個(gè)標(biāo)準(zhǔn)信道和一個(gè)旁路信道。以這樣的方式,在裝置間流動(dòng)的事務(wù)可避免死鎖,而死鎖在投寄的事務(wù)變得被延遲于非投寄的事務(wù)(比如讀出)之后時(shí)可發(fā)生。
      現(xiàn)在請(qǐng)參見圖2,圖中所示是本發(fā)明一種實(shí)施方案的I/O集線器方塊圖。如圖2所示,I/O集線器100被耦合于PCI接口105與接線(wire)170之間,該接線可以是相干系統(tǒng)150的通往結(jié)構(gòu)180的接線(如“CSI接線”)。例如在以上圖1所討論的實(shí)施方案中,I/O集線器100可以是I/O集線器20或30中的一個(gè),而結(jié)構(gòu)180可以是相干系統(tǒng)15的一個(gè)結(jié)構(gòu)(如一個(gè)“CSI結(jié)構(gòu)”或一個(gè)“通用系統(tǒng)結(jié)構(gòu)”),PCI接口105可將I/O裝置40與I/O集線器20耦合在一起。雖然圖2的實(shí)施方案中所討論的是與PCI裝置(如某種“傳統(tǒng)”的PCI裝置或與《PCI-X規(guī)范》2.0版(2002年7月22日出版)相一致的某種裝置,或者是PCI-E裝置)相接口,但應(yīng)理解,本發(fā)明的范圍并不局限于此,其它方案可與采用投寄及非投寄的事務(wù)的其它協(xié)議或其它定序方案相接口。例如在一個(gè)實(shí)施方案中,層110可以是對(duì)某個(gè)處理器內(nèi)核的接口。
      請(qǐng)?jiān)賲⒖磮D2,PCI事務(wù)可通過PCI接口105輸入到I/O集線器100??稍贗/O集線器100的PCI事務(wù)層110中接收到此類事務(wù)。PCI事務(wù)層110可包括第一隊(duì)列112和第二隊(duì)列114。在一種實(shí)施方案中,第一隊(duì)列112可以是一個(gè)事務(wù)隊(duì)列(txn_que),第二隊(duì)列114可以是一個(gè)旁路隊(duì)列(byp-que)。通過為投寄的請(qǐng)求、非投寄的請(qǐng)求及完成維持分離的信用帳戶,PCI事務(wù)層110可維持不同業(yè)務(wù)類別的分離。但是,為了確保遵循定序規(guī)則(如完成移動(dòng)超過投寄的請(qǐng)求),當(dāng)?shù)谝魂?duì)列112變成被備份時(shí),投寄的事務(wù)可被轉(zhuǎn)發(fā)給第二隊(duì)列114。第一隊(duì)列112和第二隊(duì)列114相互之間可被判優(yōu),事務(wù)可通過多路復(fù)用器115傳入某個(gè)CSI事務(wù)層120。在一種實(shí)施方案中,可以使用抗資源缺乏(anti-starvation)邏輯來對(duì)第一隊(duì)列112和第二隊(duì)列114進(jìn)行判優(yōu)。
      當(dāng)在CSI事務(wù)層120收到事務(wù)時(shí),業(yè)務(wù)是無序的,且CSI事務(wù)層120可將事務(wù)分裂到多個(gè)不同虛擬信道中的一個(gè)信道。CSI事務(wù)層120也可稱為CSI協(xié)議層。如圖2實(shí)施方案所示,可能存在三個(gè)此類虛擬信道,即第一虛擬信道140、第二虛擬信道150和第三虛擬信道160。在圖2所示的實(shí)施方案中,第一虛擬信道140可以是一個(gè)非相干標(biāo)準(zhǔn)(NCS)信道;第二虛擬信道150可以是一個(gè)非相干旁路(NCB)信道;第三虛擬信道160可以是一個(gè)完成(CMP)虛擬信道。這樣的一個(gè)CMP虛擬信道可用來在接收裝置處指示定序。例如某個(gè)完成分組可從一個(gè)接收對(duì)等事務(wù)的代理傳送到發(fā)送該事務(wù)的代理。但是,應(yīng)理解在其它實(shí)施方案中,可能會(huì)存在更多或較少的虛擬信道,而且虛擬信道的命名和使用都有可能不同。在負(fù)責(zé)其它活動(dòng)時(shí),CSI事務(wù)層120的詳細(xì)情況將在以下做進(jìn)一步的討論。
      如圖2所示,在I/O集線器100中可能會(huì)有多個(gè)附加層,包括一個(gè)路由層125、一個(gè)鏈路層130和一個(gè)物理層135。在各種實(shí)施方案中,這些層一般在整個(gè)I/O集線器100內(nèi)維持三個(gè)虛擬信道的分離,通過附加組件及與其耦合的互連,這些信道可被單獨(dú)地保持,直到某接收裝置(如一個(gè)I/O集線器)的相應(yīng)事務(wù)層接收到它們時(shí)為止。
      雖然圖2實(shí)施方案的討論中包括三個(gè)虛擬信道,但應(yīng)理解在其它實(shí)施方案中,所希望的協(xié)議中可能會(huì)存在附加的虛擬信道。此外,雖然此處討論的是用于一個(gè)相干系統(tǒng)中的情況,但應(yīng)理解非相干系統(tǒng)中也可以采用其它實(shí)施方案,以便為無死鎖的事務(wù)路由作準(zhǔn)備。因此,為平滑整個(gè)相干系統(tǒng)中的業(yè)務(wù)流,各信道可保持業(yè)務(wù)分離通過系統(tǒng)的各個(gè)層,包括諸如物理層、鏈路層和路由層,使得沒有依賴性。除這三個(gè)信道之外,代理可在源事務(wù)層保留功能性定序。在其它實(shí)施方案中,可以有第四虛擬信道,且其可被用于完成。以這種方式,兩個(gè)虛擬信道可用于完成,一個(gè)用于通過數(shù)據(jù)的完成,另一個(gè)則用于不通過數(shù)據(jù)的完成。為了簡(jiǎn)化,圖2所示的實(shí)施方案包括一個(gè)單完成信道,但本發(fā)明的范圍并不局限于此。
      在各種實(shí)施方案中,用于這三個(gè)虛擬信道的流量控制可分離地保持,從而在不同信道之間的業(yè)務(wù)流中不產(chǎn)生互相依賴性。這樣在每個(gè)虛擬信道中便沒有定序。進(jìn)一步來說,與某個(gè)相干系統(tǒng)相耦合的對(duì)等裝置(其對(duì)事務(wù)進(jìn)行定序)的事務(wù)以一種無序的方式流過該虛擬信道。在一種實(shí)施方案中,可以實(shí)現(xiàn)一種基于信用的流量控制機(jī)制,從而使各分離信道具有分離的信用池。但是,在其它實(shí)施方案中可實(shí)現(xiàn)其它流量控制機(jī)制(如重試機(jī)制)或其它類型的流量控制。
      按照本發(fā)明的實(shí)施方案,不同類型的事務(wù)可以通過不同的虛擬信道來被路由,以避免死鎖。此類事務(wù)可包括比如讀出和寫入事務(wù)、以及數(shù)據(jù)消息等。請(qǐng)參看下表1,該表是與本發(fā)明實(shí)施方案相符的將PCI事務(wù)映射為多個(gè)虛擬信道的表。
      表1

      雖然表1表示將表中的特定PCI事務(wù)類型路由到特定的虛擬信道,但應(yīng)理解在其它實(shí)施方案中,PCI事務(wù)或與相干系統(tǒng)相耦合的另一個(gè)I/O裝置的事務(wù)可以在任何所希望的虛擬信道上來傳輸。
      在一種實(shí)施方案中,CSI事務(wù)層120可包括各種協(xié)議引擎,用來形成、定序及處理通過相關(guān)系統(tǒng)傳輸?shù)姆纸M。例如在一個(gè)實(shí)施方案中,CSI事務(wù)層120還尤其可以包括一個(gè)相干引擎、一個(gè)中斷引擎、一個(gè)I/O引擎。利用這種引擎,CSI事務(wù)層120可以形成一個(gè)具有通用系統(tǒng)報(bào)頭(也稱作“系統(tǒng)互連報(bào)頭”)的分組。在CSI事務(wù)層120中這樣形成的分組可在圖2所示的三個(gè)虛擬信道中指定的一個(gè)虛擬信道上提供給路由層125。
      在各種實(shí)施方案中,路由層125可提供一種靈活的和分布式的方法,來將相干分組從源路由到目的地。基于目的地的路由可在路由層105中使用路由表來加以確定,這允許路由表的自適應(yīng)路由和在線重新配置。在一種實(shí)施方案中,由CSI事務(wù)層120所生成的通用系統(tǒng)報(bào)頭可以包括識(shí)別目的地、輸入端口和虛擬網(wǎng)絡(luò)的信息,可將這些值輸入到路由表中以確定所希望的輸出端口以及事務(wù)可在其上流動(dòng)的虛擬網(wǎng)絡(luò)。在各種實(shí)施方案中,路由表可儲(chǔ)存在受保護(hù)的配置空間內(nèi),而且可由固件來進(jìn)行編程??蓪?duì)此類路由表進(jìn)行編程,以便為各種拓?fù)鋯⒂脽o死鎖路由。此類基于目的地的路由可基于某個(gè)節(jié)點(diǎn)識(shí)別符(節(jié)點(diǎn)ID),節(jié)點(diǎn)識(shí)別符在相干系統(tǒng)中唯一地識(shí)別一個(gè)代理。
      事務(wù)和分組可從路由層125傳遞到鏈路層130。在各種實(shí)施方案中,鏈路層130可用來在兩個(gè)直接相連的相干代理之間提供可靠的數(shù)據(jù)傳輸和流量控制,而且還可提供用于在裝置之間虛擬化一個(gè)物理信道。這樣,可對(duì)鏈路層130進(jìn)行流量控制,以防止出現(xiàn)上溢或下溢,并且也可以用來提供檢錯(cuò)和錯(cuò)誤校正。在一個(gè)實(shí)施方案中,可使用一種基于流量控制位(flit-based)級(jí)貸方/借方流量控制來實(shí)現(xiàn)流量控制。在各種實(shí)施方案中,流量控制位可以指數(shù)據(jù)傳輸?shù)淖钚挝?,其在一種實(shí)施方案中可以是80比特長(zhǎng)。一個(gè)分組可以是流量控制位的一個(gè)邏輯編組。在某些實(shí)施方案中,一個(gè)分組可以是最小的信息單位,包括借助報(bào)頭的路由和其它信息。每個(gè)分組可包含一個(gè)報(bào)頭和一個(gè)可選的數(shù)據(jù)字段。在某些實(shí)施方案中,報(bào)頭可以是一至兩個(gè)流量控制位長(zhǎng),以及一個(gè)數(shù)據(jù)部分可延長(zhǎng)到相干系統(tǒng)的一個(gè)超高速緩沖存儲(chǔ)器線的尺寸。
      在各種實(shí)施方案中,鏈路層130可將物理信道虛擬化為多消息類別以及虛擬網(wǎng)絡(luò)。如此,一個(gè)物理信道可在多個(gè)虛擬信道間復(fù)用。此類消息類別可用來避免協(xié)議級(jí)死鎖,并提供服務(wù)質(zhì)量(QoS)措施。在各種實(shí)施方案中,可實(shí)現(xiàn)多個(gè)虛擬網(wǎng)絡(luò),每個(gè)虛擬網(wǎng)絡(luò)都有多個(gè)虛擬信道。在各種實(shí)施方案中,包括所有消息類別的一組虛擬信道可形成一個(gè)虛擬網(wǎng)絡(luò)。每個(gè)虛擬網(wǎng)絡(luò)可以有獨(dú)立的緩沖和流量控制。在這樣的一個(gè)實(shí)施方案中,可存在三個(gè)虛擬網(wǎng)絡(luò),包括一個(gè)第一虛擬網(wǎng)絡(luò)(如VN0)和一個(gè)第二虛擬網(wǎng)絡(luò)(如VN1)。這些虛擬網(wǎng)絡(luò)可提供用于靈活的路由且避免死鎖。此外,在這種實(shí)施方案中,一個(gè)第三虛擬網(wǎng)絡(luò)(如VNA)可提供一個(gè)自適應(yīng)緩沖器池,以便進(jìn)行有效的實(shí)施。
      在某些實(shí)施方案中,共享的VNA可支持大量的消息類別,而且可與VN0或VN1結(jié)合使用,以避免出現(xiàn)死鎖狀況。例如一個(gè)被阻塞的消息(如一個(gè)不可得的信用)可被轉(zhuǎn)移給VN0或VN1,然后在后續(xù)鏈路處再返回到VNA。在一個(gè)實(shí)施方案中,VN1和VN0可基于每個(gè)消息來執(zhí)行流量控制,而VNA則可基于每個(gè)流量控制位來執(zhí)行流量控制。
      如上所述,在各種實(shí)施方案中,每個(gè)虛擬網(wǎng)絡(luò)可至少包括三個(gè)虛擬信道。但應(yīng)理解的是,在其它實(shí)施方案中,可能存在更多或更少的虛擬網(wǎng)絡(luò),而且每個(gè)此類虛擬網(wǎng)絡(luò)可包括更多或更少的虛擬信道。例如在各種實(shí)施方案中,除上述的三個(gè)虛擬信道外,一個(gè)虛擬網(wǎng)絡(luò)可包括用于相干事務(wù)和等時(shí)事務(wù)的附加虛擬信道。
      在各種實(shí)施方案中,物理層135可用來經(jīng)由CSI接線170及通過CSI結(jié)構(gòu)180,在二個(gè)直接相連的相干代理之間提供信息的電傳輸。
      現(xiàn)在請(qǐng)參看圖3,圖中所示為與本發(fā)明的一個(gè)實(shí)施方案相符的相干系統(tǒng)某部分的方塊圖。如圖3所示,系統(tǒng)300包括一個(gè)第一CSI代理310、一個(gè)第二CSI代理350和一個(gè)橋接代理330。在一個(gè)實(shí)施方案中,CSI代理310和350可以是I/O集線器,而橋接代理330可以是一臺(tái)交換裝置。應(yīng)理解的是,在其它實(shí)施方案中代理可以是微處理器、以及其它總線代理等類似裝置。雖然圖3的實(shí)施方案所討論的是一個(gè)相干系統(tǒng),但應(yīng)理解本發(fā)明的范圍并不局限于此。
      CSI代理器310可包括多個(gè)層,包括一個(gè)物理層314、一個(gè)鏈路層318、一個(gè)路由層324和一個(gè)協(xié)議層325。這些層可分別對(duì)應(yīng)于圖2中的物理層135、鏈路層130、路由層125和事務(wù)層120。分組可由CSI代理310在物理層314中接收,該物理層可包括多個(gè)電傳輸端口312a和312b。雖然圖3的實(shí)施方案在包括兩個(gè)這種端口,但應(yīng)理解其它實(shí)施方案中可存在附加端口。
      如圖3所示,該分組可以是CSI分組,但本發(fā)明的范圍并不被如此限制。此類分組可包括一個(gè)報(bào)頭和相關(guān)的信息(如“有效載荷”)。此后分組被轉(zhuǎn)發(fā)到鏈路層318,鏈路層318可包含多個(gè)緩沖器流量控制機(jī)構(gòu)。圖3的實(shí)施方案所示的為兩個(gè)緩沖器流量控制機(jī)構(gòu)316a和316b,每個(gè)流量控制機(jī)構(gòu)可包括一個(gè)輸入緩沖器和一個(gè)輸出緩沖器。
      在正確地接收到流量控制位時(shí),鏈路層318可將該流量控制位提供給路由層324,該流量控制位在路由層324通過交換機(jī)320被多路復(fù)用,并提供給路由表322,該路由表使用諸如目的地節(jié)點(diǎn)ID字段值來將相關(guān)聯(lián)的報(bào)頭和有效載荷(如果有的話)路由到適當(dāng)?shù)拇?。如果一個(gè)分組的目的地為代理310,則路由表322將把該分組提供給協(xié)議層325?;蛘撸绻摲纸M的目的地為另外一個(gè)目的地,則報(bào)頭和分組將會(huì)通過代理31O的鏈路層318和物理層314被送回到一個(gè)不同的代理器。
      在本發(fā)明的各種實(shí)施方案中,協(xié)議層325可利用協(xié)議層325內(nèi)的各種引擎,使用一個(gè)與報(bào)頭相關(guān)聯(lián)的事務(wù)ID,來對(duì)事務(wù)進(jìn)行定序,并對(duì)其執(zhí)行所希望的處理。圖3實(shí)施方案所示的為具有代表性的引擎,它包括一個(gè)相干引擎327a、一個(gè)中斷引擎327c和一個(gè)I/O引擎327d。
      CSI代理350中可存在類似的功能性,該CSI代理包括一個(gè)相應(yīng)的物理層354、鏈路層358、路由層364和協(xié)議層375。如圖3進(jìn)一步所示,這些層中的每一層均可包含與代理310的那些類似的組件,包括比如電傳輸單元352a和352b、緩沖器流量控制機(jī)構(gòu)356a和356b、混合器360、路由表362和協(xié)議引擎377a-377d。
      如圖3進(jìn)一步所示,橋接代理330可包括相應(yīng)的物理層、鏈路層和路由層(分別為物理層334、鏈路層338和路由層344)。在某些實(shí)施方案中,橋接代理330可以是一臺(tái)交換機(jī)、橋、集線器或其它類似裝置,而且可用來在相干系統(tǒng)300的代理或節(jié)點(diǎn)的不同組之間提供一個(gè)橋。例如在另一個(gè)實(shí)施方案中,橋接代理330可以與第一多個(gè)處理器(如在左側(cè)的處理器)和第二多個(gè)處理器(如在右側(cè)的處理器)耦合。
      通過使用多個(gè)不同的信道來在整個(gè)系統(tǒng)中路由不同的事務(wù)類型,該系統(tǒng)內(nèi)的數(shù)據(jù)通信可以被完全無序地進(jìn)行。但是,從第一個(gè)對(duì)等裝置流過該系統(tǒng)到第二個(gè)對(duì)等裝置的定序事務(wù)可以按避免出現(xiàn)死鎖的無序方式被路由通過該系統(tǒng),而且在其定序信息保持完整的情況下被提供給第二個(gè)對(duì)等裝置。
      實(shí)施方案可以以代碼的方式來實(shí)現(xiàn),而且可存儲(chǔ)到其上存儲(chǔ)有指令的存儲(chǔ)媒體中,所述代碼可用來對(duì)計(jì)算機(jī)系統(tǒng)進(jìn)行編程,以執(zhí)行這些指令。存儲(chǔ)介質(zhì)可包括但不局限于任何類型的盤,包括軟盤、光盤、密致盤只讀存儲(chǔ)器(CD-ROM)、可重寫密致盤(CD-RW)以及磁光盤、半導(dǎo)體裝置,比如只讀存儲(chǔ)器(ROM)、隨機(jī)存取存儲(chǔ)器(RAM)、可擦除可編程只讀存儲(chǔ)器(EPROM)、閃速存儲(chǔ)器、電可擦除可編程只讀存儲(chǔ)器(EEPROM)、磁卡或光卡、或適合用來存儲(chǔ)電子指令的任何類型的媒體。
      所例示的實(shí)施方案可由軟件來實(shí)施,該軟件由配置有適當(dāng)硬件裝置組合的適當(dāng)?shù)挠?jì)算機(jī)系統(tǒng)來執(zhí)行。例如在某些實(shí)施方案中,諸如I/O集線器的相干系統(tǒng)的各種代理可包含有代碼或邏輯,從而將各種事務(wù)分離到上述的不同的虛擬信道中。
      盡管已經(jīng)描述了本發(fā)明的有限個(gè)實(shí)施方案,但本領(lǐng)域的技術(shù)人員將理解由其所產(chǎn)生的各種改動(dòng)和變更。旨在使所附權(quán)利要求覆蓋落入本發(fā)明的真實(shí)精神及范圍內(nèi)的所有此類改動(dòng)和變更。
      權(quán)利要求
      1.一種方法,包括基于輸入事務(wù)的類型,將一個(gè)相干系統(tǒng)的代理器的輸入事務(wù)分離到至少第一信道、第二信道和第三信道。
      2.權(quán)利要求1中記載的方法,進(jìn)一步包括使一個(gè)第一事務(wù)類型在第一信道上路由通過該相干系統(tǒng),以及使一個(gè)第二事務(wù)類型在第二信道上路由通過該相干系統(tǒng)。
      3.權(quán)利要求1中記載的方法,進(jìn)一步包括從一個(gè)第一對(duì)等裝置接收輸入事務(wù)。
      4.權(quán)利要求3中記載的方法,進(jìn)一步包括將至少一個(gè)輸入事務(wù)路由到相干系統(tǒng)的第二代理器。
      5.權(quán)利要求4中記載的方法,進(jìn)一步包括將該至少一個(gè)輸入事務(wù)轉(zhuǎn)發(fā)到與第二代理器耦合的第二對(duì)等裝置。
      6.權(quán)利要求1中記載的方法,其中第一信道包括一個(gè)標(biāo)準(zhǔn)信道,第二信道包括一個(gè)旁路信道,而第三信道包括一個(gè)完成信道。
      7.一種方法,包括從相干系統(tǒng)的第一對(duì)等裝置接收第一事務(wù)類型;從該相干系統(tǒng)的該第一對(duì)等裝置接收第二事務(wù)類型;以及在整個(gè)相干系統(tǒng)中保持第一事務(wù)類型與第二事務(wù)類型分離。
      8.權(quán)利要求7中記載的方法,其中保持第一事務(wù)與第二事務(wù)類型分離包括使第一事務(wù)類型在第一信道上路由通過該相干系統(tǒng),并使第二事務(wù)類型在第二信道上路由通過該相干系統(tǒng)。
      9.權(quán)利要求8中記載的方法,其中第一信道和第二信道包括獨(dú)立的信道。
      10.權(quán)利要求7中記載的方法,進(jìn)一步包括基于事務(wù)的類型,使用相干系統(tǒng)的第一代理器的多路復(fù)用器來將輸入事務(wù)分離到第一信道和第二信道。
      11.權(quán)利要求7中記載的方法,進(jìn)一步包括在第一事務(wù)類型和第二事務(wù)類型之間分離信用。
      12.權(quán)利要求7中記載的方法,進(jìn)一步包括獨(dú)立地控制第一事務(wù)類型第二事務(wù)類型的流量。
      13.權(quán)利要求7中記載的方法,其中第一對(duì)等裝置包括一個(gè)通過非相干鏈路與該相干系統(tǒng)耦合的輸入/輸出裝置。
      14.權(quán)利要求7中記載的方法,其中第一事務(wù)類型包括一個(gè)寫入事務(wù),第二事務(wù)類型包括一個(gè)讀出事務(wù)。
      15.權(quán)利要求7中記載的方法,進(jìn)一步包括在接收到第一事務(wù)類型后,將一個(gè)完成分組從一個(gè)完成者代理器發(fā)送到一個(gè)請(qǐng)求者代理器。
      16.權(quán)利要求15中記載的方法,進(jìn)一步包括發(fā)送來自第一事務(wù)類型和第二事務(wù)類型的不同信道上的完成分組。
      17.一種產(chǎn)品,包含有機(jī)器可訪問的存儲(chǔ)媒體,該存儲(chǔ)媒體包含指令,在執(zhí)行該指令時(shí)使系統(tǒng)能夠基于輸入事務(wù)的類型,將一個(gè)相干系統(tǒng)的代理器的輸入事務(wù)分離到至少第一信道、第二信道和第三信道。
      18.權(quán)利要求17中記載的產(chǎn)品,進(jìn)一步包括指令,在執(zhí)行該指令時(shí)能夠使系統(tǒng)將至少一個(gè)輸入事務(wù)路由到該相干系統(tǒng)的第二代理器。
      19.權(quán)利要求18中記載的產(chǎn)品,進(jìn)一步包括指令,在執(zhí)行該指令時(shí)能夠使系統(tǒng)將該至少一個(gè)輸入事務(wù)轉(zhuǎn)發(fā)給與第二代理器相耦合的第二對(duì)等裝置。
      20.權(quán)利要求17中記載的產(chǎn)品,進(jìn)一步包括指令,在執(zhí)行該指令時(shí)能夠使系統(tǒng)在第一事務(wù)類型和第二事務(wù)類型之間分離信用。
      21.權(quán)利要求20中記載的產(chǎn)品,進(jìn)一步包括指令,在執(zhí)行該指令時(shí)能夠使系統(tǒng)獨(dú)立地控制該第一事務(wù)類型和第二事務(wù)類型的流量。
      22.一種裝置,包括第一總線代理器,其基于輸入事務(wù)的類型來接收輸入事務(wù)并通過至少三個(gè)信道中的一個(gè)信道來路由該輸入事務(wù)。
      23.權(quán)利要求22中記載的裝置,其中第一信道包括一個(gè)標(biāo)準(zhǔn)信道,第二信道包括一個(gè)旁路信道,而第三信道包括一個(gè)完成信道。
      24.權(quán)利要求22中記載的裝置,進(jìn)一步包括與第一總線代理器相耦合的第二總線代理器,該第二總線代理器有至少三個(gè)信道。
      25.權(quán)利要求22中記載的裝置,其中第一總線代理器適用于接收來自具有非相干協(xié)議的對(duì)等裝置的輸入事務(wù)。
      26.權(quán)利要求25中記載的裝置,其中第一總線代理器包括一個(gè)相干裝置。
      27.一種系統(tǒng),包括第一總線代理器,其基于輸入事務(wù)的類型,通過至少三個(gè)信道中的一個(gè)信道來接收輸入事務(wù)并路由該輸入事務(wù);第二總線代理器,其通過一個(gè)點(diǎn)-到-點(diǎn)-到-點(diǎn)互連來與第一總線代理器耦合。
      28.權(quán)利要求27中記載的系統(tǒng),其中第一總線代理器適用于接收來自具有非相干協(xié)議的對(duì)等裝置的輸入事務(wù)。
      29.權(quán)利要求27中記載的系統(tǒng),其中第一總線代理器和第二總線代理器均包含相干裝置。
      30.權(quán)利要求27中記載的系統(tǒng),其中第一信道包括一個(gè)標(biāo)準(zhǔn)信道,第二信道包括一個(gè)旁路信道,而第三信道包括一個(gè)完成信道。
      全文摘要
      在本發(fā)明的一個(gè)實(shí)施方案中,一種方法可包括基于輸入事務(wù)的類型將相干系統(tǒng)的某代理的輸入事務(wù)至少分離到第一信道、第二信道和第三信道。輸入事務(wù)可由與相干系統(tǒng)相耦合的對(duì)等裝置來發(fā)送。通過基于類型來分離事務(wù),可避免死鎖。
      文檔編號(hào)G06F13/36GK1690995SQ20041007893
      公開日2005年11月2日 申請(qǐng)日期2004年9月16日 優(yōu)先權(quán)日2004年4月27日
      發(fā)明者K·C·克雷塔, A·T·斯平克, R·G·布蘭肯施普 申請(qǐng)人:英特爾公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1