專利名稱:數(shù)據(jù)處理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種通過多條通信路徑將多個數(shù)據(jù)處理器裝置彼此連接的數(shù)據(jù)處理系統(tǒng)。
背景技術(shù):
使用彼此連接的多個數(shù)據(jù)處理器裝置(或CPU)處理數(shù)據(jù)的數(shù)據(jù)處理系統(tǒng)(或并行計算機)已經(jīng)久為人知。即使每個數(shù)據(jù)處理器裝置的性能不是很高,但是這種數(shù)據(jù)處理系統(tǒng)能夠通過增加單元的數(shù)目而極大的提高其處理速度。
上述數(shù)據(jù)處理系統(tǒng)需要判斷連接于數(shù)據(jù)處理器裝置之間的通信路徑中失效的發(fā)生。例如,專利文獻1(日本特許公開No.S61-138354(圖1))揭示了一種復(fù)制了連接于處理器之間的數(shù)據(jù)總線的結(jié)構(gòu)。此外,專利文獻2(日本特許公開No.H3-209550(圖12))揭示了一種通過網(wǎng)絡(luò)將以網(wǎng)格形式設(shè)置的多個處理器彼此連接的系統(tǒng)。在該系統(tǒng)中,當轉(zhuǎn)換器出現(xiàn)故障時,將繞過該轉(zhuǎn)換器而繼續(xù)進行數(shù)據(jù)傳送。
在連接于數(shù)據(jù)處理器裝置之間的通信路徑中發(fā)生失效的情況下,執(zhí)行簡并操作。在本說明書中,簡并操作(degenerate operation)指一種操作模式,用于通過在正常(非失效)通信路徑上傳送將在失效通信路徑上傳送的數(shù)據(jù)而作為一個整體系統(tǒng)執(zhí)行正常數(shù)據(jù)處理操作。
在下面的說明中,將參考圖1A和1B說明數(shù)據(jù)處理器系統(tǒng)的簡并操作。在該說明中,數(shù)據(jù)A和數(shù)據(jù)B從數(shù)據(jù)處理裝置110傳送到數(shù)據(jù)處理裝置120。在正常操作中,通過輸入/輸出端口111A、通信路徑130A和輸入/輸出端口121A傳送數(shù)據(jù)A,通過輸入/輸出端口111B、通信路徑130B和輸入/輸出端口121B傳送數(shù)據(jù)B。
假設(shè)在通信路徑130B中發(fā)生失效。在這種情況下,數(shù)據(jù)A和數(shù)據(jù)B都通過圖1A所示結(jié)構(gòu)中的輸入/輸出端口111A、通信路徑130A和輸入/輸出端口121A傳送。然而,在這種情況下,需要改變正常操作中的數(shù)據(jù)處理器裝置110和120的操作以及簡并操作中的數(shù)據(jù)處理裝置110和120的操作。
在圖1B所示的結(jié)構(gòu)中,數(shù)據(jù)處理裝置(110、120)與輸入/輸出端口(111A、111B、121A、121B)之間的每條總線都被復(fù)制。在該結(jié)構(gòu)中,不需要在正常操作中和簡并操作中的數(shù)據(jù)處理器裝置110和120的操作變化。然而,與圖1A所示的結(jié)構(gòu)相比,此結(jié)構(gòu)需要增加數(shù)據(jù)處理裝置110和120的引腳數(shù)目(端子數(shù)目)。引腳數(shù)目的增加將引起數(shù)據(jù)處理器裝置的成本的增加和/或數(shù)據(jù)處理器裝置設(shè)計的復(fù)雜性的增加。
發(fā)明內(nèi)容
本發(fā)明的一個目的是無需復(fù)制數(shù)據(jù)處理系統(tǒng)中的數(shù)據(jù)處理器裝置的結(jié)構(gòu)和操作而實現(xiàn)簡并操作,在該數(shù)據(jù)處理系統(tǒng)中通過多條通訊路徑將多個數(shù)據(jù)處理器裝置彼此連接。
本發(fā)明的數(shù)據(jù)處理系統(tǒng),在發(fā)送源數(shù)據(jù)處理器裝置與發(fā)送目的地數(shù)據(jù)處理器裝置之間設(shè)有彼此同步操作的第一和第二通信路徑,該數(shù)據(jù)處理系統(tǒng)包括第一輸入/輸出端口,設(shè)置在該發(fā)送源數(shù)據(jù)處理器裝置與該第一通信路徑之間;第二輸入/輸出端口,設(shè)置在該發(fā)送源數(shù)據(jù)處理器裝置與該第二通信路徑之間;用于發(fā)送的旁路通信路徑,設(shè)置在該第一與第二輸入/輸出端口之間;第三輸入/輸出端口,設(shè)置在該發(fā)送目的地數(shù)據(jù)處理器裝置與該第一通信路徑之間;第四輸入/輸出端口,設(shè)置在該發(fā)送目的地數(shù)據(jù)處理器裝置與該第二通信路徑之間;以及用于接收的旁路通信路徑,設(shè)置在該第三與第四輸入/輸出端口之間。
當該第一和第二通信路徑處于正常狀態(tài)時,通過該第一輸入/輸出端口、該第一通信路徑和該第三輸入/輸出端口,將該發(fā)送源數(shù)據(jù)處理器裝置發(fā)送的第一數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置,并且,通過該第二輸入/輸出端口、該第二通信路徑和該第四輸入/輸出端口,將該發(fā)送源數(shù)據(jù)處理器裝置發(fā)送的第二數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置。同時,當該第二通信路徑中發(fā)生失效時,通過該第一輸入/輸出端口、該第一通信路徑和該第三輸入/輸出端口,將該第一數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置,并且,通過該第二輸入/輸出端口、用于發(fā)送的該旁路通信路徑、該第一輸入/輸出端口、該第一通信路徑、該第三輸入/輸出端口、用于接收的該旁路通信路徑和該第四輸入/輸出端口,將該第二數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置。
在上述數(shù)據(jù)處理系統(tǒng)中,當在一條通信路徑上發(fā)生失效時,與該失效的通信路徑連接的輸入/輸出端口通過旁路通信路徑進行與其附近的輸入/輸出端口的數(shù)據(jù)傳送。因而,即使發(fā)生失效,數(shù)據(jù)處理器裝置與每個輸入/輸出端口之間的數(shù)據(jù)傳送也以與通信系統(tǒng)處于正常狀態(tài)下時相同的方式進行。
在上述數(shù)據(jù)處理系統(tǒng)中,第一輸入/輸出端口可以包括等待緩沖器,用于保存第一數(shù)據(jù),以使第一數(shù)據(jù)和第二數(shù)據(jù)同步。根據(jù)該結(jié)構(gòu),即使在通信路徑中發(fā)生失效,第一和第二數(shù)據(jù)也能彼此同步地傳送。
根據(jù)本發(fā)明,即使在通信路徑中發(fā)生失效,數(shù)據(jù)處理器裝置與每個輸入/輸出端口之間的數(shù)據(jù)傳送也與通信系統(tǒng)處于正常狀態(tài)下時相同。從而,無需復(fù)制數(shù)據(jù)處理器裝置的結(jié)構(gòu)和操作就能實現(xiàn)簡并操作。
圖1A和圖1B是說明傳統(tǒng)數(shù)據(jù)處理系統(tǒng)中的簡并操作的示圖;圖2是示出本發(fā)明實施例的數(shù)據(jù)處理系統(tǒng)的總體結(jié)構(gòu)的示圖;圖3是說明在正常操作中的數(shù)據(jù)處理系統(tǒng)中的數(shù)據(jù)傳送的示圖;圖4是說明在發(fā)生失效時數(shù)據(jù)處理系統(tǒng)中的數(shù)據(jù)傳送的示圖;圖5是說明I/O端口中發(fā)送電路的硬件結(jié)構(gòu)的示圖;圖6是說明I/O端口中接收電路的硬件結(jié)構(gòu)的示圖;圖7是說明數(shù)據(jù)處理系統(tǒng)中發(fā)送操作的流程圖;圖8是說明數(shù)據(jù)處理系統(tǒng)中接收操作的流程圖;圖9是其它連接結(jié)構(gòu)的數(shù)據(jù)處理系統(tǒng)的應(yīng)用實例;圖10是另一其它連接結(jié)構(gòu)的數(shù)據(jù)處理系統(tǒng)的應(yīng)用實例;以及圖11是說明包含四條數(shù)據(jù)通信路徑的數(shù)據(jù)處理系統(tǒng)的結(jié)構(gòu)的示圖。
具體實施例方式
在下面的說明中,將參考附圖闡明本發(fā)明的優(yōu)選實施例。
圖2是示出本發(fā)明實施例的數(shù)據(jù)處理系統(tǒng)的總體結(jié)構(gòu)的示圖。該實施例的數(shù)據(jù)處理系統(tǒng)1中包括多個系統(tǒng)板(#0到#n)2、連接于多個系統(tǒng)板2之間的多條數(shù)據(jù)通信路徑3、以及連接于多個系統(tǒng)板2之間的地址總線4。在該實施例中,建立了3A到3D四條通信路徑。盡管并未特別限定數(shù)據(jù)通信路徑3的數(shù)目,但是其基本上應(yīng)為偶數(shù)。
每個系統(tǒng)板2包括數(shù)據(jù)處理器裝置11、CPU 12、I/O端口13和內(nèi)存(DIMM)14。數(shù)據(jù)處理器裝置11主要執(zhí)行有關(guān)在系統(tǒng)板之間數(shù)據(jù)傳送的處理。換句話說,數(shù)據(jù)處理器裝置11至少負責(zé)有關(guān)用于將CPU 12的計算結(jié)果數(shù)據(jù)或從內(nèi)存14讀取的數(shù)據(jù)發(fā)送至其它系統(tǒng)板的操作的控制,以及有關(guān)用于將從其它系統(tǒng)板接收的數(shù)據(jù)傳送至相應(yīng)的CPU 12或內(nèi)存14的操作的控制。
CPU 12與數(shù)據(jù)處理器裝置11連接,并且通過運行指定的程序而執(zhí)行相應(yīng)于給定數(shù)據(jù)的處理。每個系統(tǒng)板2所包含的CPU 12的數(shù)目可以是一個或者多個。
I/O端口13執(zhí)行將從數(shù)據(jù)處理器裝置11發(fā)送的數(shù)據(jù)輸出到數(shù)據(jù)通信路徑3的處理,以及將從數(shù)據(jù)通信路徑3接收的數(shù)據(jù)輸入到數(shù)據(jù)處理器裝置11的處理。此處,數(shù)據(jù)處理器裝置11發(fā)送的數(shù)據(jù)包括CPU 12產(chǎn)生的計算結(jié)果數(shù)據(jù)和從內(nèi)存14讀取的數(shù)據(jù)。通過數(shù)據(jù)通信路徑3接收的數(shù)據(jù)包括將被傳遞到CPU 12的數(shù)據(jù)和將被寫入內(nèi)存14的數(shù)據(jù)。每個I/O端口13為相應(yīng)的數(shù)據(jù)通信路徑3而設(shè)置。在本實施例中,在數(shù)據(jù)處理器裝置11和數(shù)據(jù)通信路徑3A到3D之間分別設(shè)有四個I/O端口13。
內(nèi)存14與每個相應(yīng)的I/O端口13連接。每個I/O端口13作為相應(yīng)內(nèi)存14的內(nèi)存控制器而操作。
每條數(shù)據(jù)通信路徑3A到3D是具有指定比特寬度的數(shù)據(jù)總線,并傳送彼此同步的數(shù)據(jù)。地址總線4用于通知數(shù)據(jù)處理器裝置11彼此之間的地址。
在每個系統(tǒng)板2中,多個I/O端口13以兩個為一組。在每組中的I/O端口13之間設(shè)有旁路通信路徑21。在本實施例中,在I/O端口13(A)與13(B)之間設(shè)有一條旁路通信路徑21,而在I/O端口13(C)與13(D)之間也設(shè)有另一條旁路通信路徑21。旁路通信路徑21是例如具有指定比特寬度的數(shù)據(jù)總線。
在具有上述結(jié)構(gòu)的數(shù)據(jù)處理系統(tǒng)1中,每個數(shù)據(jù)處理器裝置11能夠?qū)?shù)據(jù)發(fā)送至指定的系統(tǒng)板。然后,通過使用多個CPU 12執(zhí)行并行計算,實現(xiàn)了高速數(shù)據(jù)處理。
圖3和圖4是說明在數(shù)據(jù)處理系統(tǒng)1中傳送數(shù)據(jù)的總體示圖。在下面的說明中,數(shù)據(jù)處理系統(tǒng)1具有在數(shù)據(jù)處理器裝置11-1與11-2之間設(shè)有兩條數(shù)據(jù)通信路徑3A和3B的結(jié)構(gòu)。數(shù)據(jù)處理器裝置11-1包括一對I/O端口13(1A)和13(1B),并且數(shù)據(jù)處理器裝置11-2包括一對I/O端口13(2A)和13(2B)。在I/O端口13(1A)與13(1B)之間設(shè)有旁路通信路徑21-1,并且在I/O端口13(2A)和13(2B)之間設(shè)有旁路通信路徑21-2。另外,將數(shù)據(jù)A和數(shù)據(jù)B從數(shù)據(jù)處理器裝置11-1傳送到數(shù)據(jù)處理器裝置11-2。數(shù)據(jù)A和數(shù)據(jù)B是一對同步數(shù)據(jù),要求它們被同時傳送。
圖3說明了在正常操作中數(shù)據(jù)處理系統(tǒng)1的操作。此處,“正?!敝阜鞘У臓顟B(tài)并且其中兩條數(shù)據(jù)通信路徑3A和3B都可用于數(shù)據(jù)傳送。在正常操作中,通過I/O端口13(1A)、數(shù)據(jù)通信路徑3A和I/O端口13(2A)將數(shù)據(jù)處理器裝置(發(fā)送源數(shù)據(jù)處理器裝置)11-1傳送的數(shù)據(jù)A傳送到數(shù)據(jù)處理器裝置11-2。另一方面,通過I/O端口13(1B)、數(shù)據(jù)通信路徑3B和I/O端口13(2B)將數(shù)據(jù)B傳送到數(shù)據(jù)處理器裝置11-2。也就是說,在正常操作中,基本上不通過旁路通信路徑21-1或21-2傳送數(shù)據(jù)A和數(shù)據(jù)B。
圖4說明在數(shù)據(jù)通信路徑3B中發(fā)生失效時數(shù)據(jù)處理系統(tǒng)1的操作。當在數(shù)據(jù)通信路徑3B中發(fā)生失效時,通過I/O端口13(1A)、數(shù)據(jù)通信路徑3A和I/O端口13(2A)將數(shù)據(jù)A傳送到數(shù)據(jù)處理器裝置11-2。另一方面,通過I/O端口13(1B)、旁路通信路徑21-1、I/O端口13(1A)、數(shù)據(jù)通信路徑3A、I/O端口13(2A)、旁路通信路徑21-2以及I/O端口13(2B)將數(shù)據(jù)B傳送到數(shù)據(jù)處理器裝置11-2。
這時,數(shù)據(jù)處理器裝置11-1同時輸出數(shù)據(jù)A和數(shù)據(jù)B。然后,I/O端口13(1A)將直接從數(shù)據(jù)處理器裝置11-1接收的數(shù)據(jù)A和從I/O端口13(1B)接收的數(shù)據(jù)B作為一個數(shù)據(jù)塊而輸出到數(shù)據(jù)通信路徑3A。在接收端,一從數(shù)據(jù)通信路徑3A接收到數(shù)據(jù)塊時,I/O端口13(2A)就將數(shù)據(jù)塊中包含的數(shù)據(jù)A傳送到數(shù)據(jù)處理器裝置11-2,同時將數(shù)據(jù)B傳送到I/O端口13(2B)。然后,I/O端口13(2B)將數(shù)據(jù)B傳送到數(shù)據(jù)處理器裝置11-2。數(shù)據(jù)A從I/O端口13(2A)到數(shù)據(jù)處理器裝置11-2的傳送與數(shù)據(jù)B從I/O端口13(2B)到數(shù)據(jù)處理器裝置11-2的傳送同時進行。
在本實施例的數(shù)據(jù)處理系統(tǒng)中,如上述說明的,如圖4所示,當在數(shù)據(jù)通信路徑3A或者3B中發(fā)生失效時,執(zhí)行簡并操作。然而,即使改變了數(shù)據(jù)處理系統(tǒng)1的操作模式(圖3中的正常操作和圖4中的簡并操作),但是數(shù)據(jù)處理器裝置11-1和11-2的操作基本上沒有改變。換句話說,數(shù)據(jù)發(fā)送源的數(shù)據(jù)處理器裝置(該情況下為數(shù)據(jù)處理器裝置11-1)以任一操作模式,同時向I/O端口13(1A)和13(1B)分別輸出數(shù)據(jù)A和數(shù)據(jù)B。同樣的,在數(shù)據(jù)發(fā)送目的地的數(shù)據(jù)處理器裝置(該情況下為數(shù)據(jù)處理器裝置11-2)中,同時從I/O端口13(2A)和13(2B)分別輸入數(shù)據(jù)A和數(shù)據(jù)B。
因此,在本實施例的數(shù)據(jù)處理系統(tǒng)中,與圖1A中所示的結(jié)構(gòu)不同,每個數(shù)據(jù)處理器裝置11不需要包含用于實現(xiàn)簡并操作的特殊功能。即,不需要為實現(xiàn)簡并操作而改變每個數(shù)據(jù)處理器裝置11的操作。而且,與圖1B所示的結(jié)構(gòu)不同,不需要增加每個數(shù)據(jù)處理器裝置11中的引腳數(shù)目以實現(xiàn)簡并操作。
在數(shù)據(jù)處理系統(tǒng)1中,因為要在一對I/O端口13之間設(shè)置旁路通信電路21,因而將用于簡并操作的電路添加到每個I/O端口13,從而與圖1A所示的結(jié)構(gòu)相比,增加了每個I/O端口13的引腳數(shù)目。然而,與數(shù)據(jù)處理器裝置11相比,I/O端口13的電路規(guī)模要小得多,從而,可以相對容易地添加用于簡并操作的電路。
在數(shù)據(jù)處理系統(tǒng)1中,如果在I/O端口13之間存在除數(shù)據(jù)通信路徑3以外的用于發(fā)送/接收某種類型數(shù)據(jù)的通信路徑,也可以將該通信路徑用作旁路通信路徑21。在該結(jié)構(gòu)中,不需要僅用于簡并操作的旁路通信路徑21,并且不會增加I/O端口13的引腳的數(shù)目。
圖5是說明I/O端口13中的發(fā)送電路的硬件結(jié)構(gòu)的示圖。在該圖中,說明了一對I/O端口13(1A)和I/O端口13(1B)。然而,在圖5中省略了接收電路。I/O端口13(1A)和I/O端口13(1B)具有相同的結(jié)構(gòu)。
每個I/O端口13的操作根據(jù)數(shù)據(jù)通信路徑3的狀態(tài)而改變。為此,在說明I/O端口13的操作之前,將說明數(shù)據(jù)通信路徑3的狀態(tài)與每個I/O端口13的操作模式間的關(guān)系。數(shù)據(jù)處理系統(tǒng)1包括失效檢測功能,圖中未特別示出,用于檢測每個通信路徑3A和3B的狀態(tài)并通知每個I/O端口13(1A、1B、2A和2B)。
下面說明與數(shù)據(jù)通信路徑3A連接的I/O端口13(1A和2A)的操作模式(1)正常操作模式數(shù)據(jù)通信路徑3A和3B都處于正常狀態(tài)。
(2)簡并操作模式數(shù)據(jù)通信路徑3A處于正常狀態(tài),而在數(shù)據(jù)通信路徑3B中發(fā)生失效。
(3)阻塞操作模式當數(shù)據(jù)通信路徑3B處于正常狀態(tài)時,在數(shù)據(jù)通信路徑3A中發(fā)生失效(在阻塞操作模式中,I/O端口13不能將數(shù)據(jù)發(fā)送至相應(yīng)的數(shù)據(jù)通信路徑3)。
(4)操作中斷模式在數(shù)據(jù)通信路徑3A和3B中都發(fā)生失效。
以同樣的方式,下面說明與數(shù)據(jù)通信路徑3B連接的I/O端口13(1B和2B)的操作模式(1)正常操作模式數(shù)據(jù)通信路徑3A和3B都處于正常狀態(tài)。
(2)阻塞操作模式數(shù)據(jù)通信路徑3A處于正常狀態(tài),而在數(shù)據(jù)通信路徑3B中發(fā)生失效(在阻塞操作模式中,I/O端口13不能將數(shù)據(jù)發(fā)送至相應(yīng)的數(shù)據(jù)通信路徑3)。
(3)簡并操作模式當數(shù)據(jù)通信路徑3B處于正常狀態(tài)時,在數(shù)據(jù)通信路徑3A中發(fā)生失效。
(4)操作中斷模式在數(shù)據(jù)通信路徑3A和3B中都發(fā)生失效。
回到圖5,當輸出隊列緩沖器32或者中間隊列緩沖器36未滿時,數(shù)據(jù)源31輸出數(shù)據(jù)。在正常操作模式下的I/O端口中,響應(yīng)隊列忙信號“busy_1”,數(shù)據(jù)源31向選擇器33輸出數(shù)據(jù)。在簡并操作模式或者阻塞操作模式下的I/O端口中,響應(yīng)隊列忙信號“busy_2”,數(shù)據(jù)源31向中間隊列緩沖器36輸出數(shù)據(jù)。從數(shù)據(jù)源31輸出的數(shù)據(jù)是由相應(yīng)的數(shù)據(jù)處理器裝置11發(fā)送的數(shù)據(jù)。一對I/O端口(此情況下為I/O端口13(1A)和I/O端口13(1B))的數(shù)據(jù)源31同時輸出數(shù)據(jù)。
輸出隊列緩沖器32臨時保存選擇器33選擇的數(shù)據(jù),并且在指定定時將保存于輸出隊列緩沖器32中的數(shù)據(jù)輸出到相應(yīng)的數(shù)據(jù)通信路徑3中。然后,如果在每條數(shù)據(jù)通信路徑3中都沒有發(fā)生失效,則同時從一對I/O端口的輸出隊列緩沖器32中輸出一組數(shù)據(jù)。在正常操作模式下的I/O端口中,選擇器33從數(shù)據(jù)源31中選擇數(shù)據(jù)。在簡并操作模式下的I/O端口中,選擇器33從速度調(diào)節(jié)器46中選擇數(shù)據(jù)。
隊列控制器34利用隊列忙信號“busy_1”將輸出隊列緩沖器32的狀態(tài)(滿/空)通知數(shù)據(jù)源31。并且其根據(jù)通過選擇器35提供的設(shè)置信號,將選擇器33選擇的數(shù)據(jù)寫入輸出隊列緩沖器32。在正常操作模式下的I/O端口中,選擇器35選擇來自數(shù)據(jù)源31的設(shè)置信號“set1”。另一方面,在簡并操作模式下的I/O端口中,選擇器35選擇來自等待緩沖器44的設(shè)置信號“set2”。
中間隊列緩沖器36臨時保存來自數(shù)據(jù)源31的數(shù)據(jù)。隊列控制器37利用隊列忙信號“busy_2”將中間隊列緩沖器36的狀態(tài)(滿/空)通知數(shù)據(jù)源31。其也根據(jù)上述的設(shè)置信號“set1”將數(shù)據(jù)寫入中間隊列緩沖器36中。此外,當旁路通信路徑21處于可用狀態(tài)時,隊列控制器37從中間隊列緩沖器36讀取數(shù)據(jù)。將從中間隊列緩沖器36讀取的數(shù)據(jù)發(fā)送到簡并操作模式下的I/O端口中的等待緩沖器45中,或者發(fā)送到阻塞操作模式下的I/O端口中的選擇器43中。
每當輸出隊列緩沖器32變空時,隊列狀態(tài)監(jiān)控單元38利用啟動信號“credit”通知狀態(tài)。通過等待緩沖器39將啟動信號“credit”提供給選擇器40,并且將啟動信號“credit”也發(fā)送到另一端的I/O端口中的選擇器40。通過這樣的處理,將同一I/O端口內(nèi)的啟動信號“credit_s”和/或來自另一端中的I/O端口的啟動信號“credit_r”提供給選擇器40。在簡并操作模式下的I/O端口中,選擇器40選擇在同一I/O端口中的啟動信號“credit_s”。另一方面,在阻塞操作模式下的I/O端口中,選擇器40選擇來自另一端中的I/O端口的啟動信號“credit_r”。
傳送請求單元41通過選擇器40接收啟動信號“credit”而不斷地獲取輸出隊列緩沖器32的狀態(tài)(滿/空)。當輸出隊列緩沖器32未滿時,輸出向I/O端口總線仲裁器42請求使用旁路通信路徑21的請求信號“req”。當收到請求信號“req”時,I/O端口總線仲裁器42便在該請求信號“req”與其它請求信號(例如,請求通過旁路通信路徑21發(fā)送/接收用于ECC交換的數(shù)據(jù))之間仲裁。如果旁路通信路徑21可用,則I/O端口總線仲裁器42向傳送請求單元41返回響應(yīng)信號“res”,并且選擇器43根據(jù)來自I/O端口總線仲裁器42的指令選擇從中間隊列緩沖器36讀取的數(shù)據(jù),并將其輸出到旁路通信路徑21。當收到響應(yīng)信號“res”時,傳送請求單元41發(fā)出設(shè)置信號“set2”。設(shè)置信號“set2”通過等待緩沖器44而被發(fā)送到選擇器35。
簡并操作模式下的I/O端口的等待緩沖器45將從中間隊列緩沖器36讀取的數(shù)據(jù)保存一指定時期。在簡并操作模式下的I/O端口中,速度調(diào)節(jié)器46從來自等待緩沖器45的數(shù)據(jù)和經(jīng)過旁路通信路徑21從另一端中的I/O端口發(fā)送的數(shù)據(jù)中產(chǎn)生數(shù)據(jù)塊,并將該數(shù)據(jù)塊輸出到選擇器33。
下面,說明具有上述結(jié)構(gòu)的I/O端口13(1A和1B)的數(shù)據(jù)發(fā)送操作。在下面的說明中,數(shù)據(jù)處理器裝置11-1向I/O端口13(1A)發(fā)送數(shù)據(jù)A,并向I/O端口13(1B)發(fā)送數(shù)據(jù)B。
(1)當數(shù)據(jù)通信路徑3A和3B都能使用時;這種情況下,一對I/O端口同時執(zhí)行下面的操作。數(shù)據(jù)源31輸出的數(shù)據(jù)(數(shù)據(jù)A和數(shù)據(jù)B)被選擇器33選擇,并被寫入輸出隊列緩沖器32,并且在指定定時將寫入輸出緩沖器32的數(shù)據(jù)輸出到數(shù)據(jù)通信路徑3(分別為3A和3B)中。此時,I/O端口13(1A)將數(shù)據(jù)A輸出到數(shù)據(jù)通信路徑3A,而I/O端口13(1B)將數(shù)據(jù)B輸出到數(shù)據(jù)通信路徑3B。
(2)當在數(shù)據(jù)通信路徑3B中發(fā)生失效時;這種情況下,I/O端口13(1A)以簡并操作模式操作,并且I/O端口13(1B)以阻塞操作模式操作。
將數(shù)據(jù)源31輸出的數(shù)據(jù)(數(shù)據(jù)A和數(shù)據(jù)B)寫入中間隊列緩沖器36中。在簡并操作模式或者阻塞操作模式下,如果在I/O端口間傳送的啟動信號“credit”定期證實輸出隊列緩沖器未滿,并且,如果旁路通信路徑21處于可用狀態(tài),則通過等待緩沖器45將I/O端口13(1A)的中間隊列緩沖器36中保存的數(shù)據(jù)A發(fā)送到速度調(diào)節(jié)器46。這種情況下,通過旁路通信路徑21傳送I/O端口13(1B)的中間隊列緩沖器36中保存的數(shù)據(jù)B,并將數(shù)據(jù)B發(fā)送到I/O端口13(1A)的速度調(diào)節(jié)器46。
在下面的說明中,將說明簡并操作模式下的I/O端口13(1A)的操作。速度調(diào)節(jié)器46連續(xù)輸出數(shù)據(jù)A和數(shù)據(jù)B。速度調(diào)節(jié)器46輸出的數(shù)據(jù)A和數(shù)據(jù)B被選擇器33選擇,并被寫入輸出隊列緩沖器32中。此外,在指定定時將寫入輸出隊列緩沖器32中的數(shù)據(jù)A和數(shù)據(jù)B輸出到數(shù)據(jù)通信路徑3A。換句話說,將數(shù)據(jù)A和數(shù)據(jù)B從I/O端口13(1A)輸出到數(shù)據(jù)通信路徑3A。
在這種方式下,當數(shù)據(jù)通信路徑3B發(fā)生失效時,通過旁路通信路徑21將與失效的數(shù)據(jù)通信路徑3B連接的I/O端口13(1B)中的數(shù)據(jù)B傳送到I/O端口13(1A),并且輸出到未失效的數(shù)據(jù)通信路徑3A。此時,連續(xù)傳送了一對數(shù)據(jù)(數(shù)據(jù)A和數(shù)據(jù)B)。
(3)在數(shù)據(jù)通信路徑3A中發(fā)生失效;這種情況下的操作基本上與數(shù)據(jù)通信路徑3B中發(fā)生失效的情況相同。然而,這種情況下,通過旁路通信路徑21將與數(shù)據(jù)通信路徑3A連接的I/O端口13(1A)中的數(shù)據(jù)A傳送到I/O端口13(1B),并且輸出到數(shù)據(jù)通信路徑3B。
圖6是說明I/O端口13的接收電路的硬件結(jié)構(gòu)的示圖。在該圖中,說明了一對I/O端口13(2A)和I/O端口13(2B)。然而在圖6中省略了發(fā)送電路。I/O端口13(2A)具有與I/O端口13(2B)相同的結(jié)構(gòu)。
由檢測器51或者檢測器54檢測從相應(yīng)的數(shù)據(jù)通信路徑3接收的數(shù)據(jù)。將檢測器51檢測的數(shù)據(jù)寫入中間隊列緩沖器52,并將檢測器54檢測的數(shù)據(jù)寫入輸入隊列緩沖器55。中間隊列緩沖器52保存寫入的數(shù)據(jù),直到旁路通信路徑21可用時為止。將寫入輸入隊列緩沖器55的數(shù)據(jù)發(fā)送到相應(yīng)的數(shù)據(jù)處理器裝置11。
在正常操作模式下的I/O端口中,選擇器53選擇從相應(yīng)的數(shù)據(jù)通信路徑3直接發(fā)送的數(shù)據(jù)。另一方面,在簡并操作模式或者阻塞操作模式下的I/O端口中,選擇器53選擇來自選擇器61的數(shù)據(jù)。
當數(shù)據(jù)寫入中間隊列緩沖器52中時,傳送請求單元56發(fā)出用于通知操作的請求信號“pre_req”。通過等待緩沖器57將請求信號“pre_req”提供給選擇器58,同時將其發(fā)送到另一端的I/O端口中的選擇器58。通過這種處理,將I/O端口內(nèi)的請求信號“pre_req_s”和/或另一端內(nèi)的I/O端口的請求信號“pre_req_r”提供給選擇器58。在簡并操作模式下的I/O端口中,選擇器58選擇I/O端口內(nèi)的請求信號“pre_req_s”。另一方面,在阻塞操作模式下的I/O端口中,選擇器58選擇來自另一端中的I/O端口的請求信號“pre_req_r”。
在收到選擇器58選擇的請求信號“pre_req”后,I/O端口總線仲裁器42在該請求信號和其它請求信號(例如,請求通過旁路通信路徑21發(fā)送/接收用于ECC交換的數(shù)據(jù))之間仲裁。如果旁路通信路徑21可用,則I/O端口總線仲裁器42將響應(yīng)信號“res”返回到傳送請求單元56,并且選擇器59根據(jù)來自I/O接口總線仲裁器42的指令選擇從中間隊列緩沖器52讀取的數(shù)據(jù),并將數(shù)據(jù)輸出到旁路通信路徑21。
在簡并操作模式下的I/O端口中,等待緩沖器60將從中間隊列緩沖器52讀取的數(shù)據(jù)保存一指定時期。選擇器61選擇在簡并操作模式下的I/O端口內(nèi)的等待緩沖器60中保存的數(shù)據(jù),并且在阻塞操作模式下的I/O端口中,通過旁路通信路徑21選擇從另一端的I/O端口發(fā)送的數(shù)據(jù)。
下面,將說明具有上述結(jié)構(gòu)的I/O端口13(2A和2B)的數(shù)據(jù)接收操作。
(1)當數(shù)據(jù)通信路徑3A和3B都能夠使用時;這種情況下,分別通過數(shù)據(jù)通信路徑3A和3B傳送數(shù)據(jù)A和數(shù)據(jù)B。將來自數(shù)據(jù)通信路徑3A的數(shù)據(jù)A寫入I/O端口13(2A)內(nèi)的輸入隊列緩沖器55,而將來自數(shù)據(jù)通信路徑3B的數(shù)據(jù)B寫入I/O端口13(2B)內(nèi)的輸入隊列緩沖器55。用虛線畫出I/O端口內(nèi)的數(shù)據(jù)路徑。然后,同時將寫入一對I/O端口的輸入隊列緩沖器55的數(shù)據(jù)A和數(shù)據(jù)B傳送到數(shù)據(jù)處理器裝置11-2。
(2)當在數(shù)據(jù)通信路徑3B中發(fā)生失效時;這種情況下,I/O端口13(2A)以簡并操作模式操作,而I/O端口13(2B)以阻塞操作模式操作。
數(shù)據(jù)A和數(shù)據(jù)B都通過數(shù)據(jù)通信路徑3A傳送。然后,將數(shù)據(jù)A和數(shù)據(jù)B都寫入I/O端口13(2A)內(nèi)的中間隊列緩沖器52中。隨后,在I/O端口13(2A)與13(2B)之間傳送請求信號“pre_req”。如果旁路通信路徑21可用,則通過等待緩沖器60將I/O端口13(2A)的中間隊列緩沖器52中保存的數(shù)據(jù)A發(fā)送到輸入隊列緩沖器55,并且通過旁路通信路徑21傳送數(shù)據(jù)B,并將其發(fā)送到I/O端口13(2B)的輸入隊列緩沖器55。同時將寫入一對I/O端口的相應(yīng)輸入隊列緩沖器55中的數(shù)據(jù)A和數(shù)據(jù)B傳送到數(shù)據(jù)處理器裝置11-2。
(3)在數(shù)據(jù)通信路徑3A中發(fā)生失效;這種情況下的操作基本上與數(shù)據(jù)通信路徑3B中發(fā)生失效的情況相同。然而,這種情況下,數(shù)據(jù)A和數(shù)據(jù)B都通過數(shù)據(jù)通信路徑3B傳送,并且通過旁路通信路徑21將數(shù)據(jù)A從I/O端口13(2B)傳送到I/O端口13(2A)。
本實施例的數(shù)據(jù)處理系統(tǒng)1能夠通過旁路通信路徑21在一對I/O端口之間交換ECC數(shù)據(jù)。此處,ECC數(shù)據(jù)是糾錯碼(或其等效的數(shù)據(jù)序列),并被添加到在數(shù)據(jù)處理器裝置之間發(fā)送/接收的數(shù)據(jù)的末端。
當數(shù)據(jù)處理器裝置11通過一對I/O端口13傳送一對數(shù)據(jù)時,數(shù)據(jù)處理系統(tǒng)1能夠?qū)⒁粋€糾錯碼添加到一對數(shù)據(jù)中。例如,當使用16比特ECC時,能夠?qū)?比特ECC分給一對數(shù)據(jù)中的每一個。在這種情況下,通過在I/O端口之間交換8比特ECC(或者其等效的數(shù)據(jù)序列)能夠?qū)崿F(xiàn)16比特的ECC。
當數(shù)據(jù)處理系統(tǒng)1具有上述結(jié)構(gòu)時,利用在數(shù)據(jù)通信路徑3之外單獨提供的數(shù)據(jù)總線而在I/O端口之間交換8比特ECC。因而,在具有該結(jié)構(gòu)的系統(tǒng)中,利用用于ECC交換的數(shù)據(jù)總線能夠?qū)崿F(xiàn)關(guān)于本發(fā)明的旁路通信路徑21。如果是這種情況,則I/O端口總線仲裁器42在數(shù)據(jù)總線(即通信路徑21)之間進行仲裁。
如上所述,當在I/O端口之間設(shè)有用于除簡并操作以外的目的的數(shù)據(jù)總線時,就可以通過使用該數(shù)據(jù)總線而實現(xiàn)旁路通信路徑21。然而,用于ECC交換的數(shù)據(jù)總線只是一個實例,當在I/O端口之間建立了用于交換控制數(shù)據(jù)的某種通信路徑時,也可以使用該通信路徑而提供旁路通信路徑21。
圖7是說明數(shù)據(jù)處理系統(tǒng)1的發(fā)送操作的流程圖。在下面的說明中,假設(shè)在包含兩條數(shù)據(jù)通信路徑3A和3B的系統(tǒng)中,將64字節(jié)的數(shù)據(jù)分為一對32字節(jié)的數(shù)據(jù)并傳送。并假設(shè)每條數(shù)據(jù)通信路徑3A和3B的數(shù)據(jù)寬度為4字節(jié)。步驟S1a到S8a是由與數(shù)據(jù)通信路徑3A連接的I/O端口執(zhí)行的處理,且步驟S1b到S8b是由與數(shù)據(jù)通信路徑3B連接的I/O端口執(zhí)行的處理。
在步驟S1a和步驟S1b中,將數(shù)據(jù)從數(shù)據(jù)處理器裝置11傳送到I/O端口13。此處,數(shù)據(jù)傳送時間為8τ。在步驟S2a和步驟S2b中,判斷數(shù)據(jù)處理系統(tǒng)1的操作是否處于簡并操作模式。如果在任一數(shù)據(jù)通信路徑3A或3B中發(fā)生失效時,此時判斷操作模式為簡并操作模式。在簡并操作模式中,將在步驟S1a和步驟S1b中從數(shù)據(jù)處理器裝置11接收的數(shù)據(jù)保存在中間隊列緩沖器36中。
在步驟S3a和步驟S3b中,判斷相應(yīng)的數(shù)據(jù)通信路徑3A或3B是否被阻塞。例如,在本說明中,如果數(shù)據(jù)通信路徑3B中發(fā)生失效,則在#A側(cè)的步驟S3a中判斷為“No”,而在#B側(cè)的步驟S3b中判斷為“Yes”。也就是說,如果未處于阻塞狀態(tài),則處理進行到步驟S4a或步驟S4b,而如果處于阻塞狀態(tài),則處理進行到步驟S5a或步驟S5b。
在步驟S4a和步驟S4b中,將分別在步驟S1a和步驟S1b中從數(shù)據(jù)處理器裝置11接收的數(shù)據(jù)存儲在等待緩沖器45中。這種情況下,等待緩沖器45的等待時間為8τ(在4字節(jié)寬的總線中傳送32字節(jié)數(shù)據(jù)所需的一段時間)。
在步驟S5a和S5b中,通過旁路通信路徑21將分別在步驟S1a和步驟S1b中從數(shù)據(jù)處理器裝置11接收的數(shù)據(jù)傳送到另一端的I/O端口。如果旁路通信路徑的數(shù)據(jù)寬度為4字節(jié),則數(shù)據(jù)傳送時間為8τ。
在步驟S6a或步驟S6b中,將由等待緩沖器45保存的數(shù)據(jù)和從另一端中的I/O端口接收的數(shù)據(jù)連續(xù)傳送到輸出隊列緩沖器32中。此處,由于傳送64字節(jié)數(shù)據(jù),其數(shù)據(jù)傳送時間為16τ。由與未失效的數(shù)據(jù)通信路徑3連接的I/O端口中的速度調(diào)節(jié)器46執(zhí)行步驟S6a和步驟S6b。
在步驟S7a和步驟S7b中,通過數(shù)據(jù)通信路徑3將數(shù)據(jù)從發(fā)送源I/O端口傳送到發(fā)送目的地I/O端口。這種情況下,由于傳送64字節(jié)數(shù)據(jù),其數(shù)據(jù)傳送時間為16τ。僅由與未失效的數(shù)據(jù)通信路徑3連接的I/O端口執(zhí)行步驟S7a和步驟S7b。
當數(shù)據(jù)處理系統(tǒng)1未處于簡并操作模式(步驟S2a和步驟S2b否)時,在步驟S8a和步驟S8b中,將分別在步驟S1a和步驟S1b中從數(shù)據(jù)處理器裝置11接收的數(shù)據(jù)輸出到相應(yīng)的數(shù)據(jù)通信路徑。換句話說,I/O端口(#A)將32比特的數(shù)據(jù)A輸出到數(shù)據(jù)通信路徑3A,而I/O端口(#B)將32比特的數(shù)據(jù)B輸出到數(shù)據(jù)通信路徑3B。
圖8是說明數(shù)據(jù)處理系統(tǒng)1的接收操作的流程圖。在下面的說明中,如對圖7的說明,假設(shè)在包含兩條數(shù)據(jù)通信路徑3A和3B的系統(tǒng)中,將64字節(jié)的數(shù)據(jù)分為一對32字節(jié)的數(shù)據(jù)并傳送。也假設(shè)每條數(shù)據(jù)通信路徑3A和3B的數(shù)據(jù)寬度為4字節(jié)。步驟S11a到S17a是關(guān)于與數(shù)據(jù)通信路徑3A連接的I/O端口的處理,且步驟S11b到S17b是關(guān)于與數(shù)據(jù)通信路徑3B連接的I/O端口的處理。
在步驟S11a和步驟S11b中,檢測通過相應(yīng)的數(shù)據(jù)通信路徑3接收的數(shù)據(jù)。在步驟S12a和步驟S12b中,判斷數(shù)據(jù)處理系統(tǒng)1的操作是否處于簡并操作模式。如果其處于簡并操作模式,則分別在步驟S13a和步驟S13b中將接收的數(shù)據(jù)存儲于中間隊列緩沖器52中。在這種情況下,接收到的數(shù)據(jù)為由32字節(jié)的數(shù)據(jù)A和32字節(jié)的數(shù)據(jù)B組成的64字節(jié)的數(shù)據(jù)。另一方面,在正常操作模式下,不加任何修改地將接收的數(shù)據(jù)發(fā)送到輸入隊列緩沖器55。這種情況下,每個接收的數(shù)據(jù)為32字節(jié)的數(shù)據(jù)。
在步驟S14a和步驟S14b中,從64字節(jié)的接收數(shù)據(jù)中檢測出32字節(jié)的數(shù)據(jù)A和32字節(jié)的數(shù)據(jù)B。在I/O端口(#A)中,在步驟S15a中將數(shù)據(jù)A寫入等待緩沖器60,而在步驟S16a中,通過旁路通信路徑21將數(shù)據(jù)B傳送到I/O端口(#B)。另一方面,在I/O端口(#B)中,在步驟S15b中將數(shù)據(jù)B寫入等待緩沖器60,而在步驟S16b中,通過旁路通信路徑21將數(shù)據(jù)A傳送到I/O端口(#A)。此處,等待緩沖器60的等待時間為8τ(在4字節(jié)寬的總線中傳送32字節(jié)數(shù)據(jù)所需的一段時間)。
如果數(shù)據(jù)處理系統(tǒng)1處于正常操作模式,則跳過步驟S13a到S16a和步驟S13b到步驟S16b,并且將從相應(yīng)的數(shù)據(jù)通信路徑3接收的32字節(jié)數(shù)據(jù)分別寫入輸入隊列緩沖器55中。如果在相應(yīng)數(shù)據(jù)通信路徑3中發(fā)生失效,則將通過旁路通信路徑21從另一端的I/O端口傳送的32字節(jié)數(shù)據(jù)寫入輸入隊列緩沖器55中。此外,如果在另一數(shù)據(jù)通信路徑3中發(fā)生失效,則將從相應(yīng)的數(shù)據(jù)通信路徑3接收的32字節(jié)數(shù)據(jù)寫入輸入隊列緩沖器55中。也就是說,在任何一種情況下,將由I/O端口處理的32字節(jié)數(shù)據(jù)都被寫入輸入隊列緩沖器55中。
在步驟S17a和步驟S17b中,將寫入輸入隊列緩沖器55中的數(shù)據(jù)傳送到數(shù)據(jù)處理器裝置11中。
在上述實施例中,說明了兩個I/O端口13與一個單元的數(shù)據(jù)處理器裝置11連接的結(jié)構(gòu);然而,本發(fā)明并未限制于該結(jié)構(gòu)。
例如,在圖9中,每個I/O端口13X都與兩個數(shù)據(jù)處理器裝置11-1和11-2連接。這種情況下,就需要使I/O端口13X具有選擇器,以選擇從數(shù)據(jù)處理器裝置11-1和11-2發(fā)送的數(shù)據(jù),以及轉(zhuǎn)換器,以轉(zhuǎn)換將被傳送到數(shù)據(jù)處理器裝置11-1和11-2的數(shù)據(jù)的輸出目的地。
每個數(shù)據(jù)處理器11-3和11-4都與一個I/O端口13Y連接。此處,假設(shè)圖3和圖4所示的數(shù)據(jù)處理器裝置11-1(或11-2)和圖9所示的一對數(shù)據(jù)處理器裝置11-3和11-4具有相同的功能。數(shù)據(jù)處理器裝置11-3和11-4彼此同步地操作。
在圖10所示的實例中,每個I/O端口13Z連接有3個單元的數(shù)據(jù)處理器裝置。換句話說,數(shù)據(jù)處理器裝置11-1、11-2和11-3與#A系統(tǒng)的I/O端口13Z連接,而數(shù)據(jù)處理器裝置11-1、11-2和11-3與#B系統(tǒng)的I/O端口13Z連接。這種情況下,每個I/O端口13Z也需要選擇器和轉(zhuǎn)換器。
圖11是說明包含四個數(shù)據(jù)通信路徑3A到3D的數(shù)據(jù)處理系統(tǒng)的結(jié)構(gòu)的示圖。這種情況下,相應(yīng)于四條數(shù)據(jù)通信路徑3A到3D的四個I/O端口與每個數(shù)據(jù)處理器裝置11-1和11-2連接。
在I/O端口13(1A)與I/O端口13(1B)之間、在I/O端口13(1C)與I/O端口13(1D)之間、在I/O端口13(2A)與I/O端口13(2B)之間以及在I/O端口13(2C)與I/O端口13(2D)之間設(shè)有旁路通信路徑21。
在具有上述結(jié)構(gòu)的數(shù)據(jù)處理系統(tǒng)中,在正常操作模式下,通過I/O端口13(1A)、數(shù)據(jù)通信路徑3A和I/O端口13(2A)發(fā)送/接收數(shù)據(jù)A,通過I/O端口13(1B)、數(shù)據(jù)通信路徑3B和I/O端口13(2B)發(fā)送/接收數(shù)據(jù)B,通過I/O端口13(1C)、數(shù)據(jù)通信路徑3C和I/O端口13(2C)發(fā)送/接收數(shù)據(jù)C,以及通過I/O端口13(1D)、數(shù)據(jù)通信路徑3D和I/O端口13(2D)發(fā)送/接收數(shù)據(jù)D。此時,相應(yīng)的數(shù)據(jù)A到數(shù)據(jù)D彼此同步地同時傳送。
假設(shè),在具有上述結(jié)構(gòu)的數(shù)據(jù)處理系統(tǒng)中,在數(shù)據(jù)通信路徑3B中發(fā)生失效。這種情況下,如參考圖3到圖8所作的說明,通過旁路通信路徑21和#A系統(tǒng)中的通信路徑(I/O端口13(1A)、數(shù)據(jù)通信路徑3A和I/O端口13(2A))發(fā)送/接收數(shù)據(jù)B。通過旁路通信路徑21和#C系統(tǒng)中的通信路徑(I/O端口13(1C)、數(shù)據(jù)通信路徑3C和I/O端口13(2C))發(fā)送/接收數(shù)據(jù)D。在這種方式下,即使只在數(shù)據(jù)通信路徑3B中發(fā)生失效,但不僅在#A/#B系統(tǒng)中執(zhí)行簡并操作模式,而且在#C/#D系統(tǒng)中也執(zhí)行簡并操作模式。通過采用這種結(jié)構(gòu),相應(yīng)的數(shù)據(jù)A到數(shù)據(jù)D能夠彼此同步并且同時傳送。
權(quán)利要求
1.一種數(shù)據(jù)處理系統(tǒng),在發(fā)送源數(shù)據(jù)處理器裝置和發(fā)送目的地數(shù)據(jù)處理器裝置之間設(shè)有彼此同步操作的第一和第二通信路徑,該數(shù)據(jù)處理系統(tǒng)包括第一輸入/輸出端口,設(shè)置在該發(fā)送源數(shù)據(jù)處理器裝置與該第一通信路徑之間;第二輸入/輸出端口,設(shè)置在該發(fā)送源數(shù)據(jù)處理器裝置與該第二通信路徑之間;用于發(fā)送的旁路通信路徑,設(shè)置在該第一與第二輸入/輸出端口之間;第三輸入/輸出端口,設(shè)置在該發(fā)送目的地數(shù)據(jù)處理器裝置與該第一通信路徑之間;第四輸入/輸出端口,設(shè)置在該發(fā)送目的地數(shù)據(jù)處理器裝置與該第二通信路徑之間;以及用于接收的旁路通信路徑,設(shè)置在該第三與第四輸入/輸出端口之間,其中當該第一和第二通信路徑處于正常狀態(tài)時,通過該第一輸入/輸出端口、該第一通信路徑和該第三輸入/輸出端口,將該發(fā)送源數(shù)據(jù)處理器裝置發(fā)送的第一數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置,并且,通過該第二輸入/輸出端口、該第二通信路徑和該第四輸入/輸出端口,將該發(fā)送源數(shù)據(jù)處理器裝置發(fā)送的第二數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置,其中當該第二通信路徑中發(fā)生失效時,通過該第一輸入/輸出端口、該第一通信路徑和該第三輸入/輸出端口,將該第一數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置,并且,通過該第二輸入/輸出端口、用于發(fā)送的該旁路通信路徑、該第一輸入/輸出端口、該第一通信路徑、該第三輸入/輸出端口、用于接收的該旁路通信路徑和該第四輸入/輸出端口,將該第二數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置。
2.如權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),其中所述第一輸入/輸出端口包括隊列緩沖器,保存將被發(fā)送到該第一通信路徑的數(shù)據(jù);以及通知單元,用于將該隊列緩沖器的狀態(tài)通知該第二輸入/輸出端口,并且所述第二輸入/輸出端口包括輸出控制單元,響應(yīng)來自該通知單元的通知,該輸出控制單元將該第二數(shù)據(jù)輸出到用于發(fā)送的該旁路通信路徑。
3.如權(quán)利要求2所述的數(shù)據(jù)處理系統(tǒng),其中所述輸出控制單元仲裁請求使用用于發(fā)送的該旁路通信路徑。
4.如權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),其中所述第一輸入/輸出端口包括等待緩沖器,用于保存該第一數(shù)據(jù)以使該第一數(shù)據(jù)和第二數(shù)據(jù)同步。
5.如權(quán)利要求4所述的數(shù)據(jù)處理系統(tǒng),其中所述第一輸入/輸出端口包括調(diào)節(jié)單元,用于連續(xù)發(fā)送由該等待緩沖器保存的該第一數(shù)據(jù)和通過用于發(fā)送的該旁路通信路徑接收的該第二數(shù)據(jù)。
6.如權(quán)利要求5所述的數(shù)據(jù)處理系統(tǒng),其中所述第一輸入/輸出端口包括選擇器,用于選擇該發(fā)送源數(shù)據(jù)處理器裝置發(fā)送的該第一數(shù)據(jù)或者該調(diào)節(jié)單元的輸出。
7.如權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),其中所述第三輸入/輸出端口包括隊列緩沖器,用于保存該第一和第二數(shù)據(jù);以及等待緩沖器,用于保存該第一數(shù)據(jù),以使從該隊列緩沖器讀取的該第一數(shù)據(jù)與從該隊列緩沖器讀取并通過用于接收的該旁路通信路徑而傳送到該第四輸入/輸出端口的該第二數(shù)據(jù)同步。
8.如權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),其中所述第四輸入/輸出端口包括選擇器,用于選擇通過該第二通信路徑接收的數(shù)據(jù)或者通過用于接收的該旁路通信路徑接收的數(shù)據(jù)。
9.如權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),其中通過用于發(fā)送的該旁路通信路徑交換用于控制該第一數(shù)據(jù)的第一控制數(shù)據(jù)和用于控制該第二數(shù)據(jù)的第二控制數(shù)據(jù)。
10.如權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),其中通過用于接收的該旁路通信路徑交換用于控制該第一數(shù)據(jù)的第一控制數(shù)據(jù)和用于控制該第二數(shù)據(jù)的第二控制數(shù)據(jù)。
11.如權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),其中該發(fā)送源數(shù)據(jù)處理器裝置由多個發(fā)送源數(shù)據(jù)處理單元組成,并且其中所述第一或第二輸入/輸出端口與所述多個發(fā)送源數(shù)據(jù)處理單元連接,并且包括選擇器,用于從所述多個發(fā)送源數(shù)據(jù)處理單元中選擇數(shù)據(jù)。
12.如權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),其中該發(fā)送目的地數(shù)據(jù)處理器裝置由多個發(fā)送目的地數(shù)據(jù)處理單元組成,并且其中所述第三或第四輸入/輸出端口與所述多個發(fā)送目的地數(shù)據(jù)處理單元連接,并且包括分配器,用于控制向所述多個發(fā)送目的地數(shù)據(jù)處理單元的數(shù)據(jù)分配。
13.如權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),其中多個發(fā)送源數(shù)據(jù)處理器裝置與每個第一和第二輸入/輸出端口連接。
14.如權(quán)利要求1所述的數(shù)據(jù)處理系統(tǒng),其中多個發(fā)送目的地數(shù)據(jù)處理器裝置與每個第三和第四輸入/輸出端口連接。
15.一種數(shù)據(jù)處理系統(tǒng),在發(fā)送源數(shù)據(jù)處理器裝置與發(fā)送目的地數(shù)據(jù)處理器裝置之間設(shè)有彼此同步操作的第一到第四通信路徑,該數(shù)據(jù)處理系統(tǒng)包括第一到第四發(fā)送源輸入/輸出端口,分別設(shè)置在該發(fā)送源數(shù)據(jù)處理器裝置與該第一到第四通信路徑之間;用于發(fā)送的第一旁路通信路徑,設(shè)置在該第一與第二發(fā)送源輸入/輸出端口之間;用于發(fā)送的第二旁路通信路徑,設(shè)置在該第三與第四發(fā)送源輸入/輸出端口之間;第一到第四發(fā)送目的地輸入/輸出端口,分別設(shè)置在該發(fā)送目的地數(shù)據(jù)處理器裝置與該第一到第四通信路徑之間;用于接收的第一旁路通信路徑,設(shè)置在該第一與第二發(fā)送目的地輸入/輸出端口之間;用于接收的第二旁路通信路徑,設(shè)置在該第三與第四發(fā)送目的地輸入/輸出端口之間,其中當該第一到第四通信路徑處于正常狀態(tài)時,分別通過該第一到第四發(fā)送源輸入/輸出端口、該第一到第四通信路徑和該第一到第四發(fā)送目的地輸入/輸出端口,將該發(fā)送源數(shù)據(jù)處理器裝置發(fā)送的第一數(shù)據(jù)到第四數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置,并且其中當該第二通信路徑中發(fā)生失效時,通過該第一發(fā)送源輸入/輸出端口、該第一通信路徑和該第一發(fā)送目的地輸入/輸出端口,將該第一數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置,通過該第二發(fā)送源輸入/輸出端口、用于發(fā)送的該第一旁路通信路徑、該第一發(fā)送源輸入/輸出端口、該第一通信路徑、該第一發(fā)送目的地輸入/輸出端口、用于接收的該第一旁路通信路徑和該第二發(fā)送目的地輸入/輸出端口,將該第二數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置,通過該第三發(fā)送源輸入/輸出端口、該第三通信路徑和該第三發(fā)送目的地輸入/輸出端口,將該第三數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置,以及通過該第四發(fā)送源輸入/輸出端口、用于發(fā)送的該第二旁路通信路徑、該第三發(fā)送源輸入/輸出端口、該第三通信路徑、該第三發(fā)送目的地輸入/輸出端口、用于接收的該第二旁路通信路徑和該第四發(fā)送目的地輸入/輸出端口,將該第四數(shù)據(jù)傳送到該發(fā)送目的地數(shù)據(jù)處理器裝置。
全文摘要
本發(fā)明提供一種數(shù)據(jù)處理系統(tǒng)。在第一與第二數(shù)據(jù)處理器裝置之間設(shè)有兩條數(shù)據(jù)通信路徑(第一和第二數(shù)據(jù)通信路徑)。在第一數(shù)據(jù)處理器裝置與第一數(shù)據(jù)通信路徑之間設(shè)有第一和第二I/O端口。在第二數(shù)據(jù)處理器裝置與第二數(shù)據(jù)通信路徑之間設(shè)有第三和第四I/O端口。當在第一數(shù)據(jù)通信路徑中發(fā)生失效時,通過第一I/O端口、旁路通信路徑、第二I/O端口、第二數(shù)據(jù)通信路徑、第三I/O端口、旁路通信路徑和第四I/O端口將第一數(shù)據(jù)處理器裝置發(fā)送的數(shù)據(jù)傳送到第二數(shù)據(jù)處理器裝置。
文檔編號G06F15/177GK1834949SQ20051008707
公開日2006年9月20日 申請日期2005年7月26日 優(yōu)先權(quán)日2005年3月17日
發(fā)明者小口孝, 本田育史, 鈴木賢司 申請人:富士通株式會社