專利名稱:通過串行總線互連多個(gè)處理節(jié)點(diǎn)的裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于使包括多個(gè)中央處理單元(CPU)節(jié)點(diǎn)的計(jì)算機(jī)系統(tǒng)中的多個(gè)節(jié)點(diǎn)互連的裝置及其方法。更具體地,本發(fā)明涉及一種用于互連計(jì)算機(jī)系統(tǒng)中的多個(gè)節(jié)點(diǎn)的外圍組件互連(PCI)高速交換器及其控制裝置,在該計(jì)算機(jī)系統(tǒng)中通過作為高速串行總線的PCI-高速總線連接有多個(gè)CPU節(jié)點(diǎn)。
背景技術(shù):
隨著近年來數(shù)據(jù)數(shù)字化的發(fā)展,計(jì)算機(jī)系統(tǒng)要處理的數(shù)據(jù)量持續(xù)高速增加。為了應(yīng)對(duì)這一要求,用于內(nèi)部連接計(jì)算機(jī)系統(tǒng)的互連技術(shù)也不斷進(jìn)步,以實(shí)現(xiàn)高速且大容量的數(shù)據(jù)傳輸。
雖然傳統(tǒng)上,PCI總線被廣泛用于計(jì)算機(jī)系統(tǒng)內(nèi)部的互連功能,但是安裝成本低且高速大容量的串行式互連功能成為近期的主流。具體地,預(yù)期PCI-高速總線將被廣泛用于從臺(tái)式個(gè)人計(jì)算機(jī)(PC)到大規(guī)模服務(wù)器及存儲(chǔ)設(shè)備的各種類型的計(jì)算機(jī)系統(tǒng)中,該P(yáng)CI高速總線是由特殊興趣組(SIG)研制出的繼PCI總線之后的串行式互連功能。
圖1A示出使用PCI總線的傳統(tǒng)計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)。圖1A所示的計(jì)算機(jī)系統(tǒng)包括CPU 11、存儲(chǔ)器控制器(MCH)12、多個(gè)存儲(chǔ)器13-1至13-4、以及I/O控制器(ICH)14。I/O控制器14包括多個(gè)PCI總線,并且可將裝配有PCI裝置的卡安裝在PCI槽15-1至15-4中。PCI總線的工作頻率為33至133MHz,并具有兩種總線帶寬,32比特位和64比特位。總線的每個(gè)槽的雙向最大帶寬共為1GB/s。
在圖1B中,使用PCI-高速總線代替圖1A中所示的PCI總線。圖1B所示的計(jì)算機(jī)系統(tǒng)包括CPU11、存儲(chǔ)器控制器12和存儲(chǔ)器13-1至13-4。存儲(chǔ)器控制器12包括多條PCI-高速總線,并且可將裝配有PCI裝置的卡安裝在PCI槽16-1至16-4中。總線的每個(gè)槽的單向最大帶寬為1GB/s。
與作為并行總線的PCI總線相比,作為串行總線的PCI-高速總線的信號(hào)數(shù)量更少。因此,PCI-高速總線具有降低硬件成本的效果。例如,可以減少芯片組的數(shù)量,可以減少板上的導(dǎo)線數(shù)量,并且可以使用更小的連接器。同時(shí),由于可以提供比PCI總線的兩倍更大的帶寬,所以可以滿足高速和高性能的需求。
在包括多個(gè)計(jì)算機(jī)和多個(gè)外圍設(shè)備的系統(tǒng)中,還已知一種能夠任意選擇由各個(gè)計(jì)算機(jī)使用的外圍設(shè)備的集線盒(例如,參見專利文獻(xiàn)1)。
專利文獻(xiàn)1日本特開2001-229119號(hào)公報(bào)如上所述,預(yù)期PCI-高速總線將作為高性能且低成本的互連功能應(yīng)用在廣泛的領(lǐng)域中。但是,由于PCI-高速總線在理論上遵循PCI總線結(jié)構(gòu),所以如果將其用于連接多個(gè)CPU節(jié)點(diǎn)則具有以下問題。
圖1C示出虛擬計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu),其中由具有多個(gè)端口的PCI-高速交換器22連接有具有圖1B所示結(jié)構(gòu)的CPU節(jié)點(diǎn)21-1至21-8。在PCI-高速總線的規(guī)范中,將交換器22的一個(gè)端口稱為上行端口,并且起到對(duì)整個(gè)系統(tǒng)等進(jìn)行初始化的特殊作用。因此,與交換器22的上行端口相連的特定CPU節(jié)點(diǎn)占據(jù)特殊地位,并且沒有該CPU節(jié)點(diǎn),交換器22就無法工作。
然而,在包括多個(gè)CPU節(jié)點(diǎn)的服務(wù)器或存儲(chǔ)設(shè)備中,根據(jù)其產(chǎn)品配置而有時(shí)會(huì)將各CPU節(jié)點(diǎn)用作為可擴(kuò)展單元,以提高產(chǎn)品的靈活性。此時(shí),由于PCI-高速交換器在沒有該特定CPU節(jié)點(diǎn)的情況下無法工作,因此系統(tǒng)不能工作。必須避免這種情形。
發(fā)明內(nèi)容
本發(fā)明的目的是使得一種系統(tǒng)即使在其結(jié)構(gòu)由于該計(jì)算機(jī)系統(tǒng)中的CPU節(jié)點(diǎn)數(shù)量的增加/減少而發(fā)生變化時(shí)也能夠工作,在該計(jì)算機(jī)系統(tǒng)中通過諸如PCI-高速總線的串行總線互連有多個(gè)CPU節(jié)點(diǎn)。
本發(fā)明的互連裝置包括交換器單元和控制單元,并且通過串行總線互連有多個(gè)處理節(jié)點(diǎn)。
交換器單元包括與處理節(jié)點(diǎn)相連的多個(gè)端口。將其中一個(gè)端口指定為上行端口,并將其它端口指定為下行端口。然后,在端口之間切換數(shù)據(jù)傳輸路徑。
在建立交換器單元的各個(gè)端口的鏈接之前,控制單元檢查是否安裝了各處理節(jié)點(diǎn)。然后,控制單元以如下方式控制交換器單元從多個(gè)端口中指定與已安裝的處理節(jié)點(diǎn)之一相連的端口為上行端口,并指定其它端口為下行端口。
圖1A示出使用PCI總線的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)。
圖1B示出使用PCI-高速總線的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)。
圖1C示出由多個(gè)CPU節(jié)點(diǎn)組成的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)。
圖2A示出本發(fā)明的互連裝置的基本結(jié)構(gòu)。
圖2B示出盤陣列設(shè)備的結(jié)構(gòu)。
圖3示出如何復(fù)制數(shù)據(jù)。
圖4示出地址映射。
圖5解釋了用于指示地址范圍的寄存器。
圖6示出地址映射的四種類型。
圖7示出背板。
圖8是示出板管理控制器(BMC)的操作的順序圖。
圖9是示出CPU單元的BMC的操作的流程圖。
圖10是示出交換器單元(No.1)的BMC的操作的流程圖。
圖11是示出交換器單元(No.2)的BMC的操作的流程圖。
圖12示出第一交換器單元的結(jié)構(gòu)。
圖13示出第一PCI-高速交換器的結(jié)構(gòu)。
圖14示出BMC的結(jié)構(gòu)。
圖15示出第二交換器單元的結(jié)構(gòu)。
圖16示出第二PCI-高速交換器的結(jié)構(gòu)。
圖17示出如何提供程序和數(shù)據(jù)。
具體實(shí)施例方式
下面參照附圖詳細(xì)說明本發(fā)明的優(yōu)選實(shí)施例。
圖2A示出本發(fā)明的互連裝置的基本結(jié)構(gòu)。圖2A所示的互連裝置包括交換器設(shè)備101和控制設(shè)備102,并通過串行總線互連有多個(gè)處理節(jié)點(diǎn)103-0至103-n。
交換器單元101包括與處理節(jié)點(diǎn)103-0至103-n相連的多個(gè)端口104-0至104-n。交換器設(shè)備101將端口之一指定為上行端口而將其它端口指定為下行端口,并在端口之間切換數(shù)據(jù)傳輸路徑。
在建立交換器設(shè)備101的各端口的鏈接之前,控制設(shè)備102檢查是否安裝了各個(gè)處理節(jié)點(diǎn)103-0至103-n。然后,控制設(shè)備102以下列方式控制交換器設(shè)備102從交換器設(shè)備101的多個(gè)端口104-0至104-n中分別將與已安裝的處理節(jié)點(diǎn)之一相連的端口指定為上行端口,將其它端口指定為下行端口。
在建立交換器設(shè)備101的鏈接并可以進(jìn)行切換之前,控制設(shè)備102檢查是否安裝了處理節(jié)點(diǎn)103-0至103-n,即,檢查它們是否存在于系統(tǒng)中。然后,控制設(shè)備102從確認(rèn)了存在處理節(jié)點(diǎn)的端口中選擇一個(gè)端口指定為上行端口,并控制交換器設(shè)備101,使得可以將該端口作為上行端口來操作,并且可以將其它端口作為下行端口來操作。
互連裝置對(duì)應(yīng)于例如圖2B所示的交換器單元202-0或202-1(稍后將說明),并且處理節(jié)點(diǎn)103-0至103-n對(duì)應(yīng)于例如圖2B所示的CPU單元210-0至210-3。交換器設(shè)備101對(duì)應(yīng)于例如PCI-高速交換器221-0或221-1,并且控制設(shè)備102對(duì)應(yīng)于例如圖2B所示的BMC 222-0或222-1。
根據(jù)本發(fā)明,即使當(dāng)系統(tǒng)結(jié)構(gòu)由于計(jì)算機(jī)系統(tǒng)(其中通過PCI-高速交換器互連有多個(gè)CPU節(jié)點(diǎn))中的CPU節(jié)點(diǎn)等的數(shù)量的增加/減少而變化時(shí),也可一指定上行端口的CPU節(jié)點(diǎn),并且系統(tǒng)仍可運(yùn)行。由此,消除了上行端口的為PCI-高速規(guī)范所特有的特性。
在本優(yōu)選實(shí)施例中,假設(shè)一種其中由PCI-高速交換器連接有多個(gè)CPU節(jié)點(diǎn)的系統(tǒng)。然后,將板管理控制器(BMC)安裝在各個(gè)CPU節(jié)點(diǎn)(CPU單元)的印刷線路板單元以及PCI-高速交換器(交換器單元)的印刷電路板單元上。
BMC是具有處理器和BMC內(nèi)部通信功能的一種可自主操作的模塊,并且對(duì)各印刷電路板單元進(jìn)行復(fù)位,以及進(jìn)行各種監(jiān)測(cè)/控制。安裝在交換器單元上的BMC具有如下功能切換PCI-高速交換器的上行端口并對(duì)其進(jìn)行配置,檢查安裝了那個(gè)CPU單元,以及檢查是否建立了PCI-高速交換器的各端口的鏈接。
將地址轉(zhuǎn)換模塊安裝在與PCI-高速交換器相連接處的CPU單元上。
CPU單元的BMC與交換器單元的BMC進(jìn)行通信,并切換和配置該交換器的上行端口,以使得選擇可操作的CPU單元作為上行端口的設(shè)備。然后,CPU單元的BMC設(shè)置CPU單元的地址轉(zhuǎn)換模塊。因?yàn)榧词巩?dāng)構(gòu)成系統(tǒng)的CPU單元的數(shù)量發(fā)生變化時(shí),也可這樣指定上行端口的CPU單元,所以系統(tǒng)可以運(yùn)行。
圖2B示出本優(yōu)選實(shí)施例中的計(jì)算機(jī)系統(tǒng)的結(jié)構(gòu)。雖然此處示出了盤陣列設(shè)備作為示例,但是本發(fā)明的應(yīng)用領(lǐng)域并不限于此。圖2B所示的盤陣列設(shè)備包括4個(gè)CPU單元201-0至201-3,兩個(gè)交換器單元202-0和202-1,以及4個(gè)盤陣列203-0至203-3。CPU單元201-0至201-3和交換器單元202-0和202-1通過PCI高速總線連接在一起。每個(gè)盤陣列包括多個(gè)盤設(shè)備。
CPU單元201-i(i=0,1,2和3)包括直接存儲(chǔ)訪問(DMA)控制器211-i、CPU 212-i、存儲(chǔ)器控制器213-i、存儲(chǔ)器214-i、主機(jī)接口(HI)215-i、盤接口(DI)216-i和BMC 217-i。
存儲(chǔ)器控制器213-i在CPU 212-i的控制下,在DMA控制器211-i與存儲(chǔ)器214-i之間、存儲(chǔ)器214-i與主機(jī)接口215-i或盤接口216-i之間傳輸數(shù)據(jù)。
每個(gè)主機(jī)接口215-i和盤接口216-i包括多個(gè)端口。主機(jī)接口215-i與外部主計(jì)算機(jī)204-i進(jìn)行通信,并且盤接口216-i訪問盤陣列203-0至203-3,以讀取/寫入數(shù)據(jù)。
在主機(jī)接口215-i中,依據(jù)所連主計(jì)算機(jī)204-i的類型以及數(shù)據(jù)傳輸?shù)挠猛緛硎褂酶鞣N協(xié)議,例如光纖通道、互連網(wǎng)小型計(jì)算機(jī)系統(tǒng)接口(iSCSI)、企業(yè)系統(tǒng)連接(ESCON)等。在盤接口216-i中,根據(jù)用作盤陣列的盤設(shè)備的類型使用諸如光纖通道、串行ATA(Serial ATattachment)等的協(xié)議。
交換器單元202-j(j=0和1)包括PCI-高速交換器221-j和BMC222-j。交換器221-j通過PCI-高速總線連接到DMA控制器211-0至211-3,并通過切換端口實(shí)現(xiàn)任意CPU單元之間的數(shù)據(jù)傳輸。
BMC 217-0至217-3、222-0和222-1通過特定通信通道彼此連接。在本示例中,多個(gè)BMC通過100Base-TX的Ethernet(注冊(cè)商標(biāo))連接,并進(jìn)行通信。
雖然圖2B所示的結(jié)構(gòu)具有4個(gè)CPU單元,但是即使當(dāng)CPU單元的數(shù)量增加/減少時(shí),也可以進(jìn)行相同操作。雖然為了系統(tǒng)冗余以及性能提高提供了兩個(gè)交換器單元,但是只有一個(gè)交換器單元也可以在任意CPU單元之間傳輸數(shù)據(jù)。雖然在下面的說明中,主要說明了交換器單元202-0的操作,但交換器單元202-1的操作與此相同。
各CPU單元201-i根據(jù)從主計(jì)算機(jī)204-i接收的寫入請(qǐng)求,將用戶數(shù)據(jù)寫入盤陣列203-0至203-3中,或根據(jù)從主計(jì)算機(jī)204-i接收的讀取請(qǐng)求,從這些盤陣列讀取用戶數(shù)據(jù)。
在這種情況下,CPU單元201-i主要用作主計(jì)算機(jī)204-i的盤高速緩沖存儲(chǔ)器。特別地,從主機(jī)算計(jì)204-i的角度看,CPU單元201-i通過如下操作提高了其響應(yīng)速度將從主計(jì)算機(jī)204-i接收的用戶數(shù)據(jù)暫存在存儲(chǔ)器214-i中而不是立即將其寫入盤設(shè)備;當(dāng)接收到讀取請(qǐng)求時(shí)通過從存儲(chǔ)器214-i讀取數(shù)據(jù)進(jìn)行響應(yīng),而不是從盤裝置讀取數(shù)據(jù)。
雖然可以這樣通過將要存儲(chǔ)在盤設(shè)備中的數(shù)據(jù)高速緩沖存儲(chǔ)在存儲(chǔ)器214-i中來改善響應(yīng)速度,但是在可靠性方面,存儲(chǔ)器214-i遠(yuǎn)不如盤設(shè)備。由于存儲(chǔ)器214-i是易失性的,所以存在在電源故障等情況下可能丟失數(shù)據(jù)的危險(xiǎn)。
為了避免這一危險(xiǎn),在盤陣列設(shè)備中對(duì)高速緩沖存儲(chǔ)數(shù)據(jù)進(jìn)行鏡像。通過不只將CPU單元201-m(稱為“主設(shè)備”)接收的用戶數(shù)據(jù)存儲(chǔ)在CPU單元201-m的存儲(chǔ)器214-m中,還將其復(fù)制到另一CPU單元201-n(稱為“從設(shè)備”)的存儲(chǔ)器214-n中,即使丟失了主設(shè)備的存儲(chǔ)器214-m中的數(shù)據(jù),也可以利用從設(shè)備的存儲(chǔ)器214-n中的數(shù)據(jù)滿足來自計(jì)算機(jī)204-m的請(qǐng)求。
當(dāng)將數(shù)據(jù)復(fù)制到另一CPU單元201-n的存儲(chǔ)器214-n中時(shí),CPU單元201-m經(jīng)由交換器單元202-0傳輸使用DMA控制器211-m打包的數(shù)據(jù)。當(dāng)傳輸數(shù)據(jù)時(shí),DMA控制器211-m將數(shù)據(jù)和地址作為數(shù)據(jù)包來發(fā)送。在這種情況下,該地址包括對(duì)方側(cè)(partner)CPU單元201-n中的存儲(chǔ)器地址以及交換器單元202-n中的路由地址。
這里,利用CPU單元201-1將數(shù)據(jù)寫入CPU單元201-3的存儲(chǔ)器214-3時(shí)的情況為例,參照?qǐng)D3描述通過DMA控制器211-1處理的兩個(gè)地址。
例如,使用40比特位來指定各CPU單元中的存儲(chǔ)器地址。可以使用40比特位指定的地址為1TB,近期內(nèi)將不會(huì)支持大于此容量的存儲(chǔ)器。
交換器221-0可以處理64比特位的地址,并將其配置為使得所接收數(shù)據(jù)包的傳輸目的地址可以由與兩個(gè)較高階的比特位[63:62]相對(duì)應(yīng)的地址來確定。如果地址[63:62]為“00”、“01”、“10”和“11”,則將數(shù)據(jù)包分別傳輸?shù)紺PU單元201-0、201-1、201-2和201-3。
當(dāng)將數(shù)據(jù)寫入CPU單元201-3的存儲(chǔ)器214-3的地址‘0×12_3456_7800’中時(shí),CPU單元201-1的DMA控制器211-1將‘0×C000_0012_3456_7800’指定為要附加于數(shù)據(jù)包的地址。交換器221-0利用數(shù)據(jù)包地址的這兩個(gè)較高階的比特位作為路由信息,將該數(shù)據(jù)包傳輸?shù)紺PU單元201-3。
當(dāng)接收到數(shù)據(jù)包時(shí),CPU單元201-3的DMA控制器211-3只提取與該地址的40個(gè)較低階比特位對(duì)應(yīng)的‘0×12_3456_7800’,并將其傳輸?shù)酱鎯?chǔ)器控制器213-3。
圖4示出從各CPU單元的DMA控制器的一側(cè)看到的地址映射。由于將兩個(gè)較高階比特用作路由地址,所以可以在DMA控制器中設(shè)置地址范圍與傳輸目的CPU單元的以下組合。
0×0000_0000_0000_0000~0×3FFF_FFFF_FFFF_FFFFCPU單元201-00×4000_0000_0000_0000~0×7FFF_FFFF_FFFF_FFFFCPU單元201-10×8000_0000_0000_0000~0×BFFF_FFFF_FFFF_FFFFCPU單元201-20×C000_0000_0000_0000~0×FFFF_FFFF_FFFF_FFFFCPU單元201-3當(dāng)系統(tǒng)的電源接通時(shí),各單元的BMC開始工作,并同步取消其自有單元的復(fù)位。在這種情況下,交換器單元202-0的BMC 222-0在選擇了交換器221-0的上行端口之后取消交換器221-0的復(fù)位。開始時(shí),例如,選擇要連接到CPU單元201-0的端口作為上行端口。
如果CPU單元201-0正常運(yùn)轉(zhuǎn),則將初始化序列自動(dòng)應(yīng)用于交換器221-0與CPU單元201-0之間的PCI-高速鏈接。然后建立一鏈接并且使其變得可操作。然后,同樣將初始化序列應(yīng)用于除交換器221-0的上行端口之外的端口。然后,建立多個(gè)鏈接并且使整個(gè)系統(tǒng)變得可運(yùn)轉(zhuǎn)。
如果不存在CPU單元201-0,或者其不能正常運(yùn)轉(zhuǎn),則不能在交換器221-0與CPU單元201-0之間建立PCI-高速鏈接。此時(shí),不能將初始化序列應(yīng)用于交換器221-0的剩余端口,并且整個(gè)系統(tǒng)無法運(yùn)轉(zhuǎn)。
在這種情況下,交換器單元202-0的BMC 222-0檢查CPU單元201-0至201-3的安裝狀態(tài),并選擇已安裝的CPU單元中的一個(gè)作為上行端口。
在取消了復(fù)位之后。BMC 222-0監(jiān)測(cè)是否建立了交換器221-0的鏈接。如果即使經(jīng)過了特定時(shí)間之后還是沒有建立該鏈接,則選擇另一端口作為上行端口,并對(duì)交換器221-0進(jìn)行復(fù)位。如果重新選作上行設(shè)備的CPU單元沒有正常運(yùn)轉(zhuǎn),則再選擇另一端口,并依次改變上行端口。由此,重復(fù)同一處理直到找到了可操作的CPU。
但是,如果如此改變了上行端口,則如果要遵循PCI-高速交換器的規(guī)范,就要改變交換器221-0的地址映射。下面參照?qǐng)D5說明原因。
在PCI-高速交換器的規(guī)范中,有作為配置寄存器的兩個(gè)寄存器“內(nèi)存可預(yù)取基地址寄存器(下文中稱為“基地址寄存器”)”和“內(nèi)存可預(yù)取極限(limit)地址寄存器(下文中成為“極限地址寄存器”)”,并且可以指定各端口的地址范圍。然而,上行端口與除該上行端口之外的端口(下行端口)中,分別由這些寄存器所存儲(chǔ)的地址的意義是不同的。
在下行端口中,將具有處于極限地址寄存器503與基地址寄存器504的兩個(gè)值之間的范圍內(nèi)的地址的數(shù)據(jù)包發(fā)送到相關(guān)端口。然而,在上行端口中,不將具有處于極限地址寄存器501與基地址寄存器502的兩個(gè)值的范圍內(nèi)的地址的數(shù)據(jù)包發(fā)送到相關(guān)端口,而是將具有除上述地址之外的地址的數(shù)據(jù)包發(fā)送到相關(guān)端口。
為此,只有包括整個(gè)地址映射的頂部或者底部地址的范圍可被指定為要被路由到上行端口的數(shù)據(jù)包的地址范圍,而不能指定中間范圍。例如,在圖4所示的地址映射中,不能在上行端口處設(shè)置“發(fā)送到CPU單元201-1的數(shù)據(jù)包的范圍”。
由此,因?yàn)榻粨Q器221-0的地址映射不能如圖5所示總是固定的,所以如圖6所示,必須根據(jù)所選上行端口正確地使用四種地址映射中的一種。在圖6所示的示例中,將地址映射底部的范圍‘0×0000_0000_0000_0000’~‘0×3FFF_FFFF_FFFF_FFFF’指定給上行端口。
當(dāng)各CPU單元201-i的DMA控制器211-i產(chǎn)生數(shù)據(jù)包時(shí),通過修改要指定的地址的設(shè)置來實(shí)現(xiàn)適當(dāng)使用。CPU單元201-i的BMC 217-i指示DMA控制器211-i來修改地址設(shè)置。
圖7示出用于將CPU單元201-0至201-3連接至交換器單元202-0和202-1的背板。將用于檢測(cè)是否存在各個(gè)CPU單元201-i的信號(hào)線702-i通過背板701連接到交換器單元202-j的BMC 222-j。通過交換器單元202-j中的電阻703-j使信號(hào)線702-i上升到特定電壓VDD。另一方面,該信號(hào)線702-i連接到CPU單元201-i中的地電平。
由此,BMC 222-j可以通過檢查信號(hào)線702-i中的信號(hào)是處于電平“L”還是處于“H”來檢查是否安裝了對(duì)應(yīng)的CPU單元201-i。在圖7所示的示例中,由于安裝了CPU單元201-0至201-2,所以信號(hào)線702-0至702-2中的信號(hào)電平變?yōu)椤癓”。由于沒有安裝CPU單元201-3,所以信號(hào)線702-3中的信號(hào)電平變?yōu)椤癏”。
圖8是示出在將各個(gè)CPU單元201-i和交換器單元202-0的各電源接通的情況下,BMC 217-i和BMC 222-0的各自的操作。在此情況下,各個(gè)BMC 217-i和BMC 220-0如下來操作。
1、接通系統(tǒng)電源,并且對(duì)CPU單元212-i和交換器221-0進(jìn)行復(fù)位。
2、各個(gè)單元的BMC 217-i和BMC 222-0啟動(dòng)。BMC 222-0確認(rèn)安裝了CPU單元201-0至201-3。
3、BMC 222-0將CPU單元201-0指定為交換器221-0的上行端口。
4、使BMC 217-i與BMC 222-0同步,并且取消對(duì)CPU 212-i和交換器221-0各自的復(fù)位。
5、BMC 222-0監(jiān)測(cè)交換器221-0的鏈接狀態(tài)。當(dāng)建立了鏈接時(shí),通告BMC 271-i將CPU單元201-0指定為上行端口。
6、當(dāng)接收到來自BMC 222-0的通知時(shí),BMC 217-I通過使用CPU單元201-0作為上行端口來設(shè)置DMA控制器211-i。
7、BMC 217-i啟動(dòng)CPU 212-i,結(jié)果,CPU單元201-I操作。
如果在上述第5項(xiàng)中,沒有建立鏈接并且檢測(cè)到超時(shí),則BMC 222-0對(duì)交換器221-0進(jìn)行復(fù)位,并在將CPU單元201-1指定為上行端口之后取消該復(fù)位。然后,用CPU單元201-1代替201-0,并進(jìn)行上述第5項(xiàng)及其之后的操作。如果進(jìn)一步檢測(cè)到超時(shí),則BMC 222-0依次將上行端口改變到CPU單元201-2和201-3,并進(jìn)行相同操作。
如果在上述第2項(xiàng)中CPU單元之一沒有安裝,則在上述第3項(xiàng)和其后項(xiàng)中,選擇隨后的CPU單元。
圖9是示出各CPU單元201-i的BMC 217-i的操作的流程圖。當(dāng)接通系統(tǒng)電源時(shí),對(duì)CPU 212-i進(jìn)行復(fù)位(步驟801),并且BMC 217-i通過引導(dǎo)操作加載程序(步驟802)。在完成了引導(dǎo)操作之后,以特定間隔將引導(dǎo)完成通知發(fā)布到交換器221-0的BMC 222-0(步驟803),并且檢查是否從BMC 222-0接收到了引導(dǎo)完成通知(步驟804)。
如果沒有接收到引導(dǎo)完成通知時(shí),則BMC 217-i重復(fù)步驟804中的操作。當(dāng)接受到引導(dǎo)完成通知時(shí),BMC 217-i重新發(fā)出引導(dǎo)完成通知,以避免其交錯(cuò)(crossing)。然后,BMC 217-i取消CPU 212-i的復(fù)位(步驟806),并檢查是否從BMC 222-0接收了鏈接完成通知(步驟807)。
如果沒有接收到鏈接完成通知,則BMC 217-i重復(fù)步驟807的操作。當(dāng)接收到了鏈接完成通知時(shí),其根據(jù)該通知中所包含的上行端口的指定信息,將CPU單元中的一個(gè)指定為上行端口,并設(shè)置DMA控制器221-i的地址映射。然后,BMC 217-i啟動(dòng)CPU 212-i(步驟808)。
圖10和圖11是示出交換器單元202-0的BMC 222-0的操作的流程圖。當(dāng)接通系統(tǒng)電源時(shí),對(duì)交換器221-0進(jìn)行復(fù)位(圖10中的步驟901),BMC 222-0進(jìn)行引導(dǎo)操作(步驟902)。然后,在完成了引導(dǎo)操作之后,BMC 222-0通過圖7所示的方法檢查安裝了CPU單元201-0至201-3中的哪一個(gè)(步驟903)。
然后,BMC 222-0以特定間隔將引導(dǎo)完成通知發(fā)送到各個(gè)安裝的CPU單元201-i的BMC 217-i(步驟904),并檢查是否從BMC 217-i接收了引導(dǎo)完成通知(步驟905)。
如果沒有從所安裝的CPU單元中的任何一個(gè)接收到啟動(dòng)完成通知,則BMC 222-0重復(fù)步驟905的操作。當(dāng)從所有CPU單元接收到啟動(dòng)完成通知時(shí),BMC 222-0將啟動(dòng)完成通知重新發(fā)布到各單元,以避免其交錯(cuò)(步驟906)。
然后,BMC 222-0檢查是否安裝了CPU單元201-0(步驟907)。如果安裝了CPU單元201-0,則BMC 222-0將CPU單元201-0指定為交換器221-0的上行端口(步驟908)。更具體地,在交換器221-0的各端口的極限地址寄存器和基地址寄存器中設(shè)置以下地址,以使得可以實(shí)現(xiàn)圖6左端所示的地址映射。
(1)連接到CPU單元201-0的端口-極限地址寄存器0×FFFF_FFFF_FFFF_FFFF-基地址寄存器0×4000_0000_0000_0000(2)連接到CPU單元201-1的端口-極限地址寄存器0×7FFF_FFFF_FFFF_FFFF
-基地址寄存器0×4000_0000_0000_0000(3)連接到CPU單元201-2的端口-極限地址寄存器0×BFFF_FFFF_FFFF_FFFF-基地址寄存器0×8000_0000_0000_0000(4)連接到CPU單元201-3的端口-極限地址寄存器0×FFFF_FFFF_FFFF_FFFF-基地址寄存器0×C000_0000_0000_0000如果在步驟907中沒有安裝CPU單元201-0,則進(jìn)行步驟912及其后的操作,以將另一CPU單元指定為上行端口。
然后,BMC 222-0取消交換器221-0的復(fù)位(步驟909),并檢查是否檢測(cè)到交換器221-0的鏈接(步驟910)。
如果沒有檢測(cè)到鏈接,則BMC 222-0檢查是否檢測(cè)到超時(shí)(步驟911)。如果既沒有檢測(cè)到鏈接也沒有檢測(cè)到超時(shí),則重復(fù)步驟910及其后的操作。如果檢測(cè)到鏈接,則BMC 222-0將鏈接完成通知發(fā)送到各CPU單元201-i的BMC 217-i(圖11中的步驟931)。該鏈接完成通知包含表示被指定為上行端口的CPU單元的信息。
如果沒有檢測(cè)到鏈接而檢測(cè)到了超時(shí),則BMC 222-0檢查是否安裝了CPU單元201-1(步驟912)。如果安裝了CPU單元201-1,則BMC 222-0對(duì)交換器221-0進(jìn)行復(fù)位(步驟913),并將CPU單元201-1指定為交換器221-0的上行端口(步驟914)。更具體地,在交換器221-0的各端口的極限地址寄存器和基地址寄存器中設(shè)置以下地址,以使得可以實(shí)現(xiàn)圖6所示的從左端數(shù)起的第二個(gè)地址映射。
(1)連接到CPU單元201-0的端口-極限地址寄存器0×FFFF_FFFF_FFFF_FFFF-基地址寄存器0×C000_0000_0000_0000(2)連接到CPU單元201-1的端口-極限地址寄存器0×FFFF_FFFF_FFFF_FFFF-基地址寄存器0×4000_0000_0000_0000(3)連接到CPU單元201-2的端口
-極限地址寄存器0×7FFF_FFFF_FFFF_FFFF-基地址寄存器0×4000_0000_0000_0000(4)連接到CPU單元201-3的端口-極限地址寄存器0×BFFF_FFFF_FFFF_FFFF-基地址寄存器0×8000_0000_0000_0000如果在步驟912中沒有安裝CPU單元201-1,則進(jìn)行步驟918及其后的操作,以將另一CPU單元指定為上行端口。
然后,BMC 222-0進(jìn)行與步驟909至911中相同的操作(步驟915至917)。
如果在步驟917檢測(cè)到超時(shí),則BMC 222-0檢查是否安裝了CPU單元201-2(圖11中的步驟918)。如果安裝了CPU單元201-2,則BMC 222-0對(duì)交換器221-0進(jìn)行復(fù)位(步驟919),并將CPU單元201-2指定為交換器221-0的上行端口(步驟920)。更具體地,在交換器221-0的各端口的極限地址寄存器和基地址寄存器中設(shè)置以下地址,以使得可以實(shí)現(xiàn)圖6所示的從右端數(shù)起的第二個(gè)地址映射。
(1)連接到CPU單元201-0的端口-極限地址寄存器0×BFFF_FFFF_FFFF_FFFF-基地址寄存器0×8000_0000_0000_0000(2)連接到CPU單元201-1的端口-極限地址寄存器0×FFFF_FFFF_FFFF_FFFF-基地址寄存器0×C000_0000_0000_0000(3)連接到CPU單元201-2的端口-極限地址寄存器0×FFFF_FFFF_FFFF_FFFF-基地址寄存器0×4000_0000_0000_0000(4)連接到CPU單元201-3的端口-極限地址寄存器0×7FFF_FFFF_FFFF_FFFF-基地址寄存器0×4000_0000_0000_0000如果在步驟918中沒有安裝CPU單元201-2,則進(jìn)行步驟924及其后的操作,以將另一CPU單元指定為上行端口。
然后,BMC 222-0進(jìn)行與步驟909至911中相同的操作(步驟921至923)。
如果在步驟923中檢測(cè)到超時(shí),則BMC 222-0檢查是否安裝了CPU單元201-3(步驟924)。如果安裝了CPU單元201-3,則BMC 222-0對(duì)交換器221-0進(jìn)行復(fù)位(步驟925),并將CPU單元201-3指定為交換器221-0的上行端口(步驟926)。更具體地,在交換器221-0的各端口的極限地址寄存器和基地址寄存器中設(shè)置以下地址,以使得可以實(shí)現(xiàn)圖6所示的右端處的地址映射。
(1)連接到CPU單元201-0的端口-極限地址寄存器0×7FFF_FFFF_FFFF_FFFF-基地址寄存器0×4000_0000_0000_0000(2)連接到CPU單元201-1的端口-極限地址寄存器0×BFFF_FFFF_FFFF_FFFF-基地址寄存器0×8000_0000_0000_0000(3)連接到CPU單元201-2的端口-極限地址寄存器0×FFFF_FFFF_FFFF_FFFF-基地址寄存器0×C000_0000_0000_0000(4)連接到CPU單元201-3的端口-極限地址寄存器0×FFFF_FFFF_FFFF_FFFF-基地址寄存器0×4000_0000_0000_0000然后,BMC 222-0進(jìn)行與步驟909至911中相同的操作(步驟927至929)。
如果在步驟929檢測(cè)到超時(shí),或者在步驟924中沒有安裝CPU單元201-3,則BMC 222-0通知用戶系統(tǒng)不可操作(步驟930)。
如上所述,為了實(shí)現(xiàn)本發(fā)明,必須能夠自由選擇PCI高速交換器的上行端口。然而,這并不是PCI-高速交換器的規(guī)范中所定義的功能,其選擇方法也隨著交換器集成電路(IC)的安裝的不同而變化。
圖12示出交換器單元的結(jié)構(gòu)示例。圖12所示的PCI-高速交換器1101可以通過外部帶狀引腳(帶狀端口)UPSTREAM_SEL_0和UPSTREAM_SEL_1選擇上行端口,并通過I2C總線設(shè)置內(nèi)部寄存器。在這種情況下,在通過BMC 1102的通用I/O(GPIO)選擇了上行端口之后,PCI-高速交換器1101取消復(fù)位,并進(jìn)行適當(dāng)?shù)募拇嫫髟O(shè)置,以從I2C總線設(shè)置交換器1101的地址映射。
圖13示出圖12所示的第一PCI-高速交換器1101的結(jié)構(gòu)。交換器1101的IC包括交叉開關(guān)1201、I2C控制單元1202和用于外側(cè)的4個(gè)PCI-高速交換器端口#0至#3。
各端口#i(i=0、1、2和3)包括串行器/解串行器(SERDES)單元1203-i、PCI-高速協(xié)議控制單元1204-i、選擇電路1205-i和在PCI-高速交換器的規(guī)范中規(guī)定的配置寄存器組。
SERDES單元1203-i將連接到IC外部的高速串行信號(hào)轉(zhuǎn)換成與IC內(nèi)部相連的并行總線信號(hào),反之亦然。協(xié)議控制單元1204-i參照配置寄存器組執(zhí)行在PCI-高速交換器的規(guī)范中提出的協(xié)議處理。交叉開關(guān)1201在這4個(gè)端口之間切換數(shù)據(jù)傳輸路徑。
由于配置寄存器的結(jié)構(gòu)在上行端口與下行端口之間不同,所以提供了上行端口寄存器組1206-i和下行端口寄存器組1207-i。每個(gè)寄存器組1206-i和1207-i包括極限地址寄存器和基地址寄存器,并且選擇電路1205-I排外地選擇兩種寄存器組中的一種。
實(shí)際上,各端口的選擇電路選擇上行端口寄存器組1206-i,以使得4個(gè)端口中僅有一個(gè)成為上行端口,并且各個(gè)其它端口的選擇電路選擇下行端口寄存器組1207-i。
雖然通常從上行的PCI-高速端口中設(shè)置配置寄存器,但是在本優(yōu)選實(shí)施例中,優(yōu)選地,通過I2C等的接口從BMC 1102設(shè)置配置寄存器。在這種情況下,I2C控制單元1202從作為外部I2C主設(shè)備的BMC 1102接收訪問請(qǐng)求,并根據(jù)該請(qǐng)求設(shè)置配置寄存器。
在這種情況下,BMC 1102將上述極限寄存器值和基地址寄存器值寫入被指定為上行端口的端口的上行端口寄存器組1206-i以及被指定為下行端口的端口的下行端口寄存器組1207-i中的每一組。
BMC 1102還輸入來自兩個(gè)帶狀引腳UPSTREAM_SEL_0和UPSTREAM_SEL_1的二進(jìn)制控制信號(hào)(H或L),以控制選擇電路1205-0至1205-3,對(duì)寄存器組1206-i或寄存器組1207-i進(jìn)行選擇。例如如下來定義該控制信號(hào)。
“LL”將端口#0和除端口#0之外的其它端口分別指定為上行端口和下行端口?!癓H”將端口#1和除端口#1之外的端口分別指定為上行端口和下行端口?!癏L”將端口#2和除端口#2之外的端口分別指定為上行端口和下行端口?!癏H”將端口#3和除端口#3之外的端口分別指定為上行端口和下行端口。
上行端口選擇電路和下行端口選擇電路的各選擇電路1205-i選擇上行端口寄存器組1206-i和下行端口寄存器組1207-i。由此,完成上行端口和下行端口各自的設(shè)定。
BMC 1102將控制信號(hào)通過復(fù)位端口輸入給交叉交換器1201、I2C控制單元1202、SERDES單元1203-i、PCI-高速協(xié)議控制單元1204-i和寄存器組1206-i和1207-i中的每一個(gè),并執(zhí)行這些單元的復(fù)位/復(fù)位取消。
圖14示出BMC 1102的結(jié)構(gòu)。BMC 1102包括微處理單元(MPU)1301、Ether-物理層(PHY)電路1302-0和1302-1,溫度/電壓監(jiān)測(cè)設(shè)備1303、同步動(dòng)態(tài)隨機(jī)訪問存儲(chǔ)器(SDRAM)1304、閃存1305和可編程邏輯設(shè)備(PLD)1306。
MPU 1301是開發(fā)的內(nèi)建式的處理器,具有兩個(gè)Ethernet(注冊(cè)商標(biāo))端口、RS232C端口、I2C端口,以及CPU總線1307。一個(gè)Ethernet端口通過Ether-PHY電路1302-1連接到另一BMC。另一Ethernet端口通過Ether-PHY電路1302-0連接到個(gè)人計(jì)算機(jī)等,并用作調(diào)試接口。RS232接口也連接到個(gè)人計(jì)算機(jī)等,并用于進(jìn)行調(diào)試。
I2C端口連接到溫度/電壓監(jiān)測(cè)設(shè)備1303,并且監(jiān)測(cè)該單元中的溫度和電壓是否正常。I2C端口也連接到交換器1101,并用于在交換器1101中的寄存器設(shè)定。
將SDRAM 1304、閃存1305和PLD 1306連接到CPU總線1307。SDRAM1304是BMC 1102的主存儲(chǔ)器,并且其上加載有BMC程序。閃存1305是用于存儲(chǔ)程序的非易失性存儲(chǔ)器。MPU 1301通過將執(zhí)行加載在SDRAM 1304上的程序來進(jìn)行必要的處理。
PLD 1306包括寄存器組1308。當(dāng)通過MPU 1301設(shè)置了寄存器組1308的內(nèi)容時(shí),PLD 1306可以控制GPIO端口和復(fù)位端口。PLD 1306通過復(fù)位端口對(duì)交換器1101進(jìn)行復(fù)位/復(fù)位取消,并通過GPIO端口指定交換器1101的上行端口。此外,圖7所示的信號(hào)線702-0至702-3連接到GPIO端口。由此,PLD 1306檢測(cè)安裝了哪一個(gè)CPU單元,并將其通知MPU1301。
如圖13所示,GPIO端口的兩個(gè)引腳GPIO_0和GPIO_1分別連接到帶狀引腳UPSTREAM_SEL_0和UPSTREAM_SEL_1。當(dāng)MPU 1301將上述4個(gè)控制信號(hào)中的一個(gè)寫入寄存器組1308時(shí),PLD 1306將所寫入的控制信號(hào)通過GPIO引腳傳輸?shù)浇粨Q器1101。由此,將控制信號(hào)所指定的端口選作上行端口。
CPU單元201-i的BMC 2170-i具有與圖14所示的BMC 1102相同的結(jié)構(gòu)。
作為選擇PCI-高速交換器的配置寄存器組的方法,交換器也可以具有電可擦除可編程只讀存儲(chǔ)器(EEPROM)。
圖15示出使用這種交換器的交換器單元的結(jié)構(gòu)示例。在圖15所示的交換器單元中,安裝了4條EEPROM 1403-0至1403-3。在EEPROM中,例如,存儲(chǔ)有分別具有圖6所示的不同映射的數(shù)據(jù)。當(dāng)取消其復(fù)位時(shí),PCI-高速交換器1401自動(dòng)從EEPROM 1403-0至1403-3之一中讀取數(shù)據(jù),并將與數(shù)據(jù)對(duì)應(yīng)的端口分配給上行端口。
BMC 1102可以利用4個(gè)引腳GPIO_0~GPIO_3來控制OR電路1402-0至1402-3,并選擇想要的EEPROM。由此,可以將交換器1401的任一端口設(shè)為上行端口。
圖16示出圖15所示的PCI-高速交換器1401的結(jié)構(gòu)??梢酝ㄟ^從圖13所示的交換器1101刪除I2C控制單元1202,并添加EEPROM控制單元1501來獲得圖16所示的交換器1401的結(jié)構(gòu)。
EEPROM控制單元1501和EEPROM中的每一個(gè)具有作為接口的串行外圍接口(SPI)總線。該SPI總線包括4個(gè)信號(hào)線EEPROM_SK、EEPROM_D0、EEPROM_DI和EEPROM_CS#(‘#’表示負(fù)邏輯)。
EEPROM_CS#是對(duì)EEPROM的芯片選擇信號(hào)。在邏輯‘0’時(shí),選擇EEPROM,并且其表示數(shù)據(jù)被加載到交換器1401上。交換器1401的EEPROM控制單元1501只具有這些信號(hào)線中的一個(gè)。但是,如果BMC 1102將GPIO_0至GPIO_3中的一個(gè)設(shè)為邏輯‘0’,且剩余3個(gè)為邏輯‘1’,則只有OR電路1402-0至1402-3中的一個(gè)輸出‘0’,且與其相對(duì)應(yīng)的EEPROM的EEPROM_CS#變?yōu)椤?’。
EEPROM_SK是送至EEPROM的時(shí)鐘信號(hào)。根據(jù)該時(shí)鐘信號(hào),EEPROM控制電路1501發(fā)送地址信號(hào),且EEPROM發(fā)送讀取信號(hào)。
在這種情況下,EEPROM控制單元1501將地址信號(hào)作為與EEPROM_SK同步的串行數(shù)據(jù)經(jīng)由EEPROM_DO發(fā)送到EEPROM。當(dāng)接收到該地址信號(hào)時(shí),由EEPROM_CS#選擇的EEPROM經(jīng)由EEPROM_DI發(fā)送讀取數(shù)據(jù)作為與EEPROM_SK同步的串行數(shù)據(jù)。然而,未被EEPROM_CS#選擇的EEPROM將EEPROM_DI的信號(hào)線保持在高阻抗。
交換器1401根據(jù)從EEPROM發(fā)送的數(shù)據(jù),在各端口的寄存器組1206-i或1207-i中設(shè)置地址映射,并切換選擇電路1205-i。由此,完成交換器1401中的上行端口和下行端口的設(shè)置。
圖17示出如何提供由圖2所示的盤陣列設(shè)備的BMC 217-i和222-j使用的程序和數(shù)據(jù)。將存儲(chǔ)在信息處理設(shè)備等的外部設(shè)備1601或便攜式存儲(chǔ)介質(zhì)1603中的程序和數(shù)據(jù)加載到盤陣列設(shè)備1602的存儲(chǔ)器上。
外部設(shè)備1601生成用于承載程序和數(shù)據(jù)的承載信號(hào),并將其經(jīng)由通信網(wǎng)絡(luò)中的任意傳輸介質(zhì)發(fā)送到盤陣列設(shè)備1602。便攜式存儲(chǔ)介質(zhì)1603是任意計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),如存儲(chǔ)卡、軟盤、光盤和磁光盤。BMC 217-i和BMC 222-j中的每一個(gè)通過使用所述數(shù)據(jù)并執(zhí)行所述程序來進(jìn)行必要的處理。
權(quán)利要求
1.一種通過串行總線互連多個(gè)處理節(jié)點(diǎn)的互連裝置,包括交換器設(shè)備,具有連接到所述多個(gè)處理節(jié)點(diǎn)的多個(gè)端口,所述交換器設(shè)備用于將所述多個(gè)端口中的一個(gè)指定為上行端口并且將其它端口指定下行端口,并且在所述端口之間對(duì)數(shù)據(jù)傳輸路徑進(jìn)行切換;以及控制設(shè)備,用于在建立所述交換器設(shè)備的各端口的鏈接之前檢查是否安裝了所述多個(gè)處理節(jié)點(diǎn)中的各節(jié)點(diǎn),并控制所述交換器設(shè)備,以使得在所述交換器設(shè)備的所述多個(gè)端口中,將與所安裝的處理節(jié)點(diǎn)之一相連的一個(gè)端口指定為上行端口,并且將其它端口指定為下行端口。
2.根據(jù)權(quán)利要求1所述的互連裝置,其中在指定了所述交換器設(shè)備的上行端口和下行端口之后,所述控制設(shè)備監(jiān)測(cè)是否建立了與所安裝的處理節(jié)點(diǎn)相連的各端口的鏈接,并且如果沒有建立該鏈接,則其控制所述交換器設(shè)備,以使得對(duì)所述交換器設(shè)備進(jìn)行復(fù)位,并將另一端口指定為上行端口。
3.根據(jù)權(quán)利要求1或2所述的互連裝置,其中所述多個(gè)處理節(jié)點(diǎn)中的每一個(gè)包括直接存儲(chǔ)訪問控制設(shè)備,并且所述控制設(shè)備將關(guān)于所指定的上行端口的信息通告所安裝的處理節(jié)點(diǎn),并且被通告的處理節(jié)點(diǎn)根據(jù)關(guān)于所述上行端口的所述信息來設(shè)置所述直接存儲(chǔ)訪問控制設(shè)備的地址映射。
4.根據(jù)權(quán)利要求1或2所述的互連裝置,其中所述交換器設(shè)備的各端口包括第一寄存器設(shè)備,用于指定未被路由到所述上行端口的數(shù)據(jù)的傳輸目的地的范圍;以及第二寄存器設(shè)備,用于指定被路由到所述上行端口的數(shù)據(jù)的傳輸目的地的范圍,并且所述被指定為上行端口的端口在參照所述第一寄存器設(shè)備的同時(shí)進(jìn)行操作,并且所述被指定為下行端口的端口在參照所述第二寄存器設(shè)備的同時(shí)進(jìn)行操作。
5.根據(jù)權(quán)利要求1或2所述的互連裝置,其中所述交換器設(shè)備的各端口包括寄存器設(shè)備,用于存儲(chǔ)數(shù)據(jù)傳輸目的地址的地址映射,并且所述控制設(shè)備將關(guān)于上行端口地址映射的信息寫入應(yīng)被指定為上行端口的端口的寄存器設(shè)備中,并將關(guān)于下行端口地址映射的信息寫入應(yīng)被指定為下行端口的端口的寄存器設(shè)備中。
6.根據(jù)權(quán)利要求1或2所述的互連裝置,還包括存儲(chǔ)設(shè)備,用于在所述交換器設(shè)備的所述多個(gè)端口中的每一個(gè)被指定為上行端口的情況下,存儲(chǔ)關(guān)于多個(gè)不同地址映射的信息,其中所述交換器設(shè)備的各端口包括寄存器設(shè)備,用于存儲(chǔ)數(shù)據(jù)傳輸目的地址的地址映射,并且所述控制設(shè)備控制所述存儲(chǔ)設(shè)備,以使得可根據(jù)將哪個(gè)端口指定為上行端口來將關(guān)于對(duì)應(yīng)地址的信息映射到所述存儲(chǔ)設(shè)備中。
7.一種計(jì)算機(jī)系統(tǒng),包括具有處理單元的多個(gè)處理節(jié)點(diǎn);交換器設(shè)備,具有通過串行總線互連所述多個(gè)處理節(jié)點(diǎn)的多個(gè)端口,所述交換器設(shè)備用于將所述多個(gè)端口中的一個(gè)指定為上行端口,并將其它端口指定為下行端口,并在所述端口之間切換數(shù)據(jù)傳輸路徑;以及控制設(shè)備,用于在建立所述交換器設(shè)備的各端口的鏈接之前檢查是否安裝了多個(gè)處理節(jié)點(diǎn)中的各個(gè)節(jié)點(diǎn),并對(duì)所述交換器設(shè)備進(jìn)行控制,以使得在所述交換器設(shè)備的所述多個(gè)端口中,將與所安裝的處理節(jié)點(diǎn)之一相連的一個(gè)端口指定為上行端口,而將其它端口指定為下行端口。
8.一種存儲(chǔ)介質(zhì),在其上記錄有用于使處理器能夠?qū)哂型ㄟ^串行總線互連多個(gè)處理節(jié)點(diǎn)的多個(gè)端口的交換器進(jìn)行控制的程序,用于將所述多個(gè)端口中的一個(gè)指定為上行端口,并且將其它端口指定為下行端口,并在所述多個(gè)端口之間切換數(shù)據(jù)傳輸路徑,所述程序包括在建立所述交換器設(shè)備的各端口的鏈接之前,檢查是否安裝了所述多個(gè)處理節(jié)點(diǎn)中的各節(jié)點(diǎn);并且控制所述交換器設(shè)備,以使得在所述交換器設(shè)備的所述多個(gè)端口中,將與所安裝的處理節(jié)點(diǎn)之一相連的端口指定為上行端口,而將其它端口指定為下行端口。
9.一種控制方法,用于對(duì)具有通過串行總線互連多個(gè)處理節(jié)點(diǎn)的多個(gè)端口的交換器進(jìn)行控制,用于將所述多個(gè)端口中的一個(gè)指定為上行端口,且將其它端口指定為下行端口,并在所述多個(gè)端口之間切換數(shù)據(jù)傳輸路徑,所述控制方法包括在建立所述交換器設(shè)備的各端口的鏈接之前,檢查是否安裝了所述多個(gè)處理節(jié)點(diǎn)中的各節(jié)點(diǎn);并且控制所述交換器設(shè)備,以使得在所述交換器設(shè)備的所述多個(gè)端口中,將與所安裝的處理節(jié)點(diǎn)之一相連的端口指定為上行端口,而將其它端口指定為下行端口。
10.一種用于承載程序的承載信號(hào),該程序用于使得處理器能夠?qū)哂型ㄟ^串行總線互連所述多個(gè)處理節(jié)點(diǎn)的多個(gè)端口的交換器進(jìn)行控制,以將所述多個(gè)端口中的一個(gè)指定為上行端口,且將其它端口指定為下行端口,并在所述多個(gè)端口之間切換數(shù)據(jù)傳輸路徑,所述程序包括在建立所述交換器設(shè)備的各端口的鏈接之前,檢查是否安裝了所述多個(gè)處理節(jié)點(diǎn)中的各節(jié)點(diǎn);并且控制所述交換器設(shè)備,以使得在所述交換器設(shè)備的所述多個(gè)端口中,將與所安裝的處理節(jié)點(diǎn)之一相連的端口指定為上行端口,而將其它端口指定為下行端口。
11.一種通過串行總線互連多個(gè)處理節(jié)點(diǎn)的互連裝置,包括交換器裝置,具有與所述多個(gè)處理節(jié)點(diǎn)相連的多個(gè)端口,用于將所述多個(gè)端口之一指定為上行端口并且將其它端口指定為下行端口,并在所述端口之間切換數(shù)據(jù)傳輸路徑;以及控制裝置,用于在建立所述交換器設(shè)備的各端口的鏈接之前檢查是否安裝了所述多個(gè)處理節(jié)點(diǎn)的各節(jié)點(diǎn),并控制所述交換器設(shè)備,以使得在所述交換器設(shè)備中的多個(gè)端口中,將與已安裝的處理節(jié)點(diǎn)之一相連的一個(gè)端口指定為上行端口,而將其它端口指定為下行端口。
全文摘要
在建立具有通過串行總線互連多個(gè)處理節(jié)點(diǎn)的多個(gè)端口的交換器的各個(gè)端口的鏈接之前,檢測(cè)是否安裝了各處理節(jié)點(diǎn)。然后,將多個(gè)端口中的與已安裝的處理節(jié)點(diǎn)之一相連的一個(gè)端口指定為上行端口,并將其它端口指定為下行端口。
文檔編號(hào)G06F15/16GK1811744SQ200510080740
公開日2006年8月2日 申請(qǐng)日期2005年6月30日 優(yōu)先權(quán)日2005年1月28日
發(fā)明者小原成介, 增山和則 申請(qǐng)人:富士通株式會(huì)社