專(zhuān)利名稱(chēng):在處理器單元之間交換數(shù)據(jù)的系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于在稱(chēng)為“代理單元”的數(shù)據(jù)處理單元之間交換數(shù)據(jù)的系統(tǒng),其處理器由公共總線(xiàn)互連以形成一組合體,諸如遠(yuǎn)程通信交換中的呼叫處理組合體,或具有多個(gè)單元的可能需要適應(yīng)彼此之間大量數(shù)據(jù)交換業(yè)務(wù)的任何其它組合體。
如眾所周知,用于計(jì)算數(shù)據(jù)和處理數(shù)據(jù)的日益提高的性能的現(xiàn)有手段導(dǎo)致正在安裝的應(yīng)用程序引起以日益加大的速度傳輸和處理日益增加的數(shù)據(jù)量。特別地,處理器正在使用日益提高的時(shí)鐘頻率,例如當(dāng)前大約是200MHz,但是由于與物理上的限制有關(guān)的原因,這種時(shí)鐘頻率不能被可連接到處理器的輸入/輸出端口類(lèi)型的傳輸鏈路所接受。一般的規(guī)則是,只要給定的組合體中的處理器單元的處理器能夠相互通信,就準(zhǔn)備采用更低的時(shí)鐘頻率用于它們之間的交換數(shù)據(jù)。因而,必須提供一些特別的措施,以便最大程度地保障處理器的處理能力實(shí)際上不會(huì)受到處理器彼此之間通信手段能力不足的限制。
具體來(lái)說(shuō),有一種源于IEEE稱(chēng)為“對(duì)于Futurebus+的IEEE標(biāo)準(zhǔn)”的關(guān)于處理器單元之間互連總線(xiàn)并由IEEE頒發(fā)的標(biāo)準(zhǔn)。然而,因?yàn)樵摌?biāo)準(zhǔn)追求一般化,很難獲得簡(jiǎn)單易行在有時(shí)已經(jīng)相當(dāng)復(fù)雜的子組合體中集成的物理實(shí)現(xiàn)。這種實(shí)現(xiàn)上的困難不僅影響到總線(xiàn)本身,而且影響到用于通向被服務(wù)的單元的連接所需的連接器,以及總線(xiàn)的交換組件。這特別是與包含在總線(xiàn)中的大量并行鏈路相關(guān),與各種組件所需的性能水平相關(guān),并與總線(xiàn)周?chē)M成的子組合體及通過(guò)其服務(wù)的單元的操作有關(guān)的限制相關(guān)。
文獻(xiàn)EP0646876描述了用于在稱(chēng)為“代理單元”的數(shù)據(jù)處理器單元之間交換數(shù)據(jù)的一個(gè)系統(tǒng),其中處理器由公共總線(xiàn)互連成包含多個(gè)單元的組合體,以期它們能夠適應(yīng)彼此之間高水平的數(shù)據(jù)交換業(yè)務(wù)。數(shù)據(jù)處理器單元包括處理器裝置,諸如由各單元共用的外部交換總線(xiàn)互連的處理器,總線(xiàn)由仲裁器(arbitrator)協(xié)調(diào)共享。每一單元具有至少是暫時(shí)存儲(chǔ)數(shù)據(jù)的存儲(chǔ)裝置,按有組織的方式、以預(yù)定的地址使數(shù)據(jù)能夠按要求寫(xiě)入和/或讀出。數(shù)據(jù)存儲(chǔ)裝置構(gòu)成了分布在所述單元之間、對(duì)所有單元共用的、且由所有單元通過(guò)交換總線(xiàn)可訪(fǎng)問(wèn)的交換存儲(chǔ)器組合體,每一單元以交換存儲(chǔ)器的形式具有所述組合體的存儲(chǔ)裝置的一部分,該部分首先可由該單元的處理器裝置訪(fǎng)問(wèn),并其次可由其它單元的處理器裝置通過(guò)交換總線(xiàn)訪(fǎng)問(wèn)。
然而,該文獻(xiàn)沒(méi)有涉及在從一個(gè)單元向另一單元傳輸數(shù)據(jù)時(shí)引起的傳輸和同步化問(wèn)題。本發(fā)明的目的就是為了解決這些問(wèn)題。
本發(fā)明提供了用于在稱(chēng)為“代理”單元的數(shù)據(jù)處理器單元之間交換數(shù)據(jù)的系統(tǒng),該系統(tǒng)包括處理器裝置,諸如通過(guò)所述各單元共用的外部多線(xiàn)交換總線(xiàn)與由仲裁器協(xié)調(diào)共享的總線(xiàn)互連的處理器,每一單元包括用于至少暫時(shí)存儲(chǔ)數(shù)據(jù)的裝置,數(shù)據(jù)是以有組織的方式保存在預(yù)定的地址,使數(shù)據(jù)能夠按需要被寫(xiě)入和/或讀出,由所述單元形成的組合體包括構(gòu)成交換存儲(chǔ)器組合體的數(shù)據(jù)存儲(chǔ)裝置,交換存儲(chǔ)器組合體在所述單元之間共享、為所有所述單元共用、并且它們?nèi)客ㄟ^(guò)交換總線(xiàn)可訪(fǎng)問(wèn);每一單元以交換存儲(chǔ)器的形式包含所述組合體的存儲(chǔ)裝置的一部分,這可由該單元的處理器裝置和其它單元的處理器裝置通過(guò)交換總線(xiàn)進(jìn)行訪(fǎng)問(wèn);每一單元中用于局部處理器總線(xiàn)和交換存儲(chǔ)器、及用于交換總線(xiàn)的接口裝置,該接口裝置被互連以便在由單元的交換存儲(chǔ)器組成的存儲(chǔ)裝置、所述單元的處理器裝置、以及其它單元的處理器裝置之間通過(guò)所述其它單元與之連接的交換總線(xiàn)交換數(shù)據(jù);該交換系統(tǒng)的特征在于,它包含每一單元中交換存儲(chǔ)器和交換總線(xiàn)之間的中間存儲(chǔ)裝置,所述裝置由快速訪(fǎng)問(wèn)緩沖存儲(chǔ)器構(gòu)成,單元的處理器能夠以其自身的時(shí)鐘速率對(duì)其訪(fǎng)問(wèn),且其它單元能夠以這時(shí)控制所述交換總線(xiàn)的時(shí)鐘速率對(duì)其訪(fǎng)問(wèn);以及每一單元包括用于產(chǎn)生通過(guò)交換總線(xiàn)向其它單元傳輸?shù)牡谝粫r(shí)鐘信號(hào)的裝置,以及用于從交換總線(xiàn)恢復(fù)第二時(shí)鐘信號(hào)以便產(chǎn)生第三時(shí)鐘信號(hào)的裝置,第三時(shí)鐘信號(hào)為適用于以第二時(shí)鐘信號(hào)速率從其它單元向所述單元傳輸?shù)臄?shù)據(jù)的局部操作。
以這種方式為特征的數(shù)據(jù)交換系統(tǒng),使單元能夠啟動(dòng)交易處理,通過(guò)總線(xiàn)使用其自身的時(shí)鐘發(fā)送,其時(shí)鐘信號(hào)由接收單元用于暫時(shí)在中間存儲(chǔ)裝置中存儲(chǔ)交易數(shù)據(jù)。該數(shù)據(jù)繼而通過(guò)局部時(shí)鐘使用,特別是用來(lái)在共享存儲(chǔ)器中存儲(chǔ)數(shù)據(jù)。各單元時(shí)鐘之間的同步是不需要的。該系統(tǒng)能夠以高達(dá)50MHz到83MHz量級(jí)的傳送頻率、通過(guò)總長(zhǎng)大約為50cm的底板總線(xiàn)工作。
本發(fā)明、其特征、及其優(yōu)點(diǎn)在以下參照附圖給出的說(shuō)明中更為詳細(xì)地描述。
圖1是由公共總線(xiàn)互連的數(shù)據(jù)處理器單元組合體的框圖。
圖2是表示處理器單元的交換存儲(chǔ)器組成的圖示。
圖3是概覽任何兩個(gè)處理器單元之間提供的各種鏈接的圖示。
圖4是關(guān)于由單元傳輸數(shù)據(jù)組的一組簡(jiǎn)化的時(shí)序圖4A到4F。
圖5是關(guān)于重新啟動(dòng)傳輸?shù)膯卧僮鞯囊唤M簡(jiǎn)化的時(shí)序圖5A到5F。
圖6是關(guān)于由一個(gè)單元執(zhí)行的讀操作的一組簡(jiǎn)化的時(shí)序圖6A到6G。
圖1所示的組合體包括代理的數(shù)據(jù)處理單元1,它們通過(guò)稱(chēng)為代理間交換總線(xiàn)的多線(xiàn)總線(xiàn)2與由仲裁器3協(xié)調(diào)的共享總線(xiàn)互連。該組合體在這圖中是孤立表示的,但是作為一般的規(guī)律,它形成更大的組合體的一部分,例如以上提及的遠(yuǎn)程通信交換。
在這種情形下,處理器單元包括其它鏈接,例如把它們與其它設(shè)備單元互連的另一總線(xiàn),但這不直接關(guān)系到本發(fā)明的目的,因而這里沒(méi)有示出。
如上所述,每一處理器單元通常圍繞至少一個(gè)認(rèn)為是高性能的處理器4組成,所述處理器至少有一個(gè)稱(chēng)為“專(zhuān)用”存儲(chǔ)器的存儲(chǔ)器5,適用于按傳統(tǒng)的方式暫時(shí)和/或永久性存儲(chǔ)數(shù)據(jù),例如組織成程序數(shù)據(jù)的數(shù)據(jù),或已經(jīng)處理過(guò)的數(shù)據(jù)或通常有組織的待處理的數(shù)據(jù)。
在圖1所示的實(shí)施例中,可以看到用于按已知方式加速各種處理操作的高速緩沖存儲(chǔ)器6。存儲(chǔ)器5和6與處理器4通過(guò)該領(lǐng)域中通常稱(chēng)為“處理器”總線(xiàn)的總線(xiàn)7進(jìn)行通信。
總線(xiàn)7也用于處理器單元1的處理器4和與同一交換總線(xiàn)2連接的一個(gè)或多個(gè)其它單元1之間交換數(shù)據(jù),具有發(fā)送/接收模塊8的每一單元1使其能夠通過(guò)所述交換總線(xiàn)發(fā)送和接受。接口電路9插入在發(fā)送/接收模塊8和處理器總線(xiàn)7之間,并特別包含“處理器總線(xiàn)”接口10、“代理間交換”總線(xiàn)接口11、和“局部”總線(xiàn)接口13。在所示實(shí)施例中,局部總線(xiàn)接口13使數(shù)據(jù)能夠由包含所述總線(xiàn)的單元的處理器通過(guò)局部總線(xiàn)14交換,并通過(guò)交換總線(xiàn)2由其它單元的處理器交換。舉例來(lái)說(shuō),總線(xiàn)14服務(wù)于與單元1連接并與其交換數(shù)據(jù)的設(shè)備(未示出)的一個(gè)或多個(gè)裝置,例如一個(gè)或多個(gè)電話(huà)設(shè)備(未示出),或服務(wù)于網(wǎng)絡(luò)接入裝置,例如給出對(duì)令牌環(huán)網(wǎng)絡(luò)或某些其它類(lèi)型的網(wǎng)絡(luò)的接入。
接口10、11、和13用來(lái)保證交換操作發(fā)生在子組合體之間,在這些組合體之間接口通過(guò)施加控制結(jié)構(gòu)被插入,通常是控制著這些子組合體的處理器或控制器型的控制結(jié)構(gòu),并如同這一領(lǐng)域中通常那樣,接口根據(jù)需要有選擇地與子組合體連接。處理器總線(xiàn)7設(shè)計(jì)為適用于相對(duì)高的數(shù)據(jù)速率,于是為此它以高頻例如66MHz接收時(shí)鐘信號(hào),并實(shí)際上做成盡可能的短。
交換總線(xiàn)2設(shè)計(jì)為使信息處理器單元1能夠與對(duì)話(huà)配合,例如允許處理器或?qū)ε夹筒僮?,并為此它們共享其組成元件分布在單元1之中的“交換”存儲(chǔ)器組合體。該總線(xiàn)更特別設(shè)計(jì)為允許與快速處理器相容的數(shù)據(jù)速率,例如以大約50MHz時(shí)鐘速率傳輸。
如總線(xiàn)傳輸中通常那樣,按確定的方式組織數(shù)據(jù),且每一數(shù)據(jù)項(xiàng)包括多位,其某些或全部的位與附加位一同對(duì)應(yīng)于適當(dāng)?shù)臄?shù)據(jù),例如用于尋址,用于傳輸?shù)拿恳粩?shù)據(jù)項(xiàng)例如有32數(shù)據(jù)位,32地址位,和用于奇偶校驗(yàn)、有效性檢驗(yàn)、交易特征等目的的附加位。
在給定意向數(shù)據(jù)發(fā)送速率下,由于業(yè)內(nèi)專(zhuān)業(yè)人員所知的原因,連接到交換總線(xiàn)2的單元1的數(shù)目必須受到限制,在以下所述的實(shí)施例中所述的數(shù)目例如在2到10的范圍內(nèi),并同樣必須對(duì)總線(xiàn)的長(zhǎng)度有限制,這種總線(xiàn)例如是以多層板卡實(shí)現(xiàn)的,并例如延伸到大約30厘米長(zhǎng)。
如本領(lǐng)域通常那樣,每一代理單元1安裝在與多層底板板卡連接的裝有交換總線(xiàn)2的一個(gè)板卡上。舉例來(lái)說(shuō),發(fā)送器/接收器模塊8是使用底板傳輸接收邏輯電路(BTL)組件實(shí)現(xiàn)的,這些組件在它們之間共享在單元1之間及所述單元與仲裁器3之間已經(jīng)傳輸或?qū)⒁獋鬏數(shù)男盘?hào)。信號(hào)基于功能準(zhǔn)則在各種發(fā)送/接收模塊的組件之間共享。在優(yōu)選實(shí)施例中,提供了與識(shí)別目標(biāo)單元和用于單元之間要由單個(gè)BTL組件處理的調(diào)用的交易類(lèi)型相關(guān)的信號(hào),以便使請(qǐng)求能夠更快的被處理。提供了一種已知的機(jī)制,使來(lái)自發(fā)送/接收模塊8和到達(dá)組成該模塊的BTL組件的信號(hào)再同步,以便使數(shù)據(jù)同步恢復(fù),而不論涉及到什么模塊組件。
如上所述,數(shù)據(jù)在兩個(gè)單元1之間通過(guò)稱(chēng)為“交換存儲(chǔ)器”的存儲(chǔ)器組合體交換,組合體組成的元件分布在單元之間,這樣每一單元有其自己由標(biāo)號(hào)15所示的“交換”存儲(chǔ)器。
由交換總線(xiàn)2、其仲裁器3、及與其連接的單元1構(gòu)成的組合體的組織,使能夠由單元的交換存儲(chǔ)器15構(gòu)成的存儲(chǔ)器組合體有共享的編址,并使交換總線(xiàn)能夠仲裁及在單元之間交換數(shù)據(jù)。這些交換了對(duì)寫(xiě)入存儲(chǔ)器組合體的操作,從存儲(chǔ)器組合體讀出的操作,以及可能還有輔助操作量,例如“鎖存”操作或“代理之間中斷產(chǎn)生”操作。
如上所述,讀操作的問(wèn)題在于,交換總線(xiàn)上數(shù)據(jù)發(fā)送速度比處理器可執(zhí)行的轉(zhuǎn)移速度要慢。然而,寫(xiě)操作的問(wèn)題目前比較小,因?yàn)槟軌驗(yàn)橐诮粨Q總線(xiàn)上傳輸?shù)臄?shù)據(jù)提供由處理器提供的快速訪(fǎng)問(wèn)緩沖存儲(chǔ)器的速度,緩沖存儲(chǔ)器是作為處理器和交換總線(xiàn)之間的傳輸中介。
根據(jù)本發(fā)明,這樣的設(shè)置使導(dǎo)致寫(xiě)操作的處理器行為最大化,同時(shí)使導(dǎo)致讀出操作行為最小化。這樣的設(shè)置對(duì)于擁有其它單元必須的或有用的信息的單元能夠盡快交換信息,從而使對(duì)應(yīng)于從其它單元請(qǐng)求這種信息的讀操作最小化。
為此,每一單元的交換存儲(chǔ)器15由所有可訪(fǎng)問(wèn)交換總線(xiàn)2的代理共享,并從而對(duì)所有與該總線(xiàn)連接的單元1中的所有處理器4是可見(jiàn)的,每一代理在每一其它單元的交換存儲(chǔ)器15中有存儲(chǔ)器區(qū),該區(qū)由軟件分配到對(duì)應(yīng)于所述代理的單元。
在這里所述的實(shí)施例中,給出對(duì)每一代理保留的存儲(chǔ)器區(qū)訪(fǎng)問(wèn)的地址由代理的物理位置定義,或更為精確地,相對(duì)于其它單元1與之對(duì)應(yīng)的單元1的位置定義,其它單元1由所述單元構(gòu)成的組合體中交換總線(xiàn)2服務(wù)。
舉例來(lái)說(shuō),對(duì)于在4千兆字節(jié)地址域中交換存儲(chǔ)器的全局尋址保留1千兆字節(jié)存儲(chǔ)器空間,例如1千兆字節(jié)空間由按32位尋址定義的兩位A0和A1定義。
例如,每一代理對(duì)其保留了大小在8兆字節(jié)到64兆字節(jié)范圍的一個(gè)交換存儲(chǔ)器區(qū),且在以上定義的存儲(chǔ)器空間中有每一高達(dá)64兆字節(jié)的十六個(gè)邏輯尋址塊的空間。
這種情形下代理不多于十個(gè),每一代理具有分配給它的邏輯尋址塊,如上所述,作為其相對(duì)于其它代理的物理位置的函數(shù)。對(duì)每一代理可用的物理交換存儲(chǔ)器置于代理可用的邏輯塊的頭部。
其它邏輯尋址塊構(gòu)成虛擬交換存儲(chǔ)器塊,并特別為局部訪(fǎng)問(wèn)中的尋址服務(wù),用于對(duì)一個(gè)組的廣播尋址,并用于對(duì)一般廣播的尋址。它們可由附加的代理選擇使用。
每一代理具有其可用的局部尋址,這種尋址可僅由所述代理的單元1的處理器執(zhí)行。
廣播可以是一般的并可從一個(gè)代理的單元1向所有其它代理進(jìn)行,并還可以是成組的廣播,這種情形下廣播從一個(gè)單元向預(yù)定的其它單元組進(jìn)行。一個(gè)給定的單元可能屬于一個(gè)以上的組。
在這一例子中選擇為位A2,A3,A4,A5的塊的地址位在此認(rèn)為可能是對(duì)應(yīng)于或者分配給特定的單元1的塊的一個(gè)地址,例如圖2中的地址0000,0001,0101,和1001,或者在單元中局部分配給交換存儲(chǔ)器15的一個(gè)塊的地址,諸如地址1010,或者用于一般廣播的塊地址,諸如1111,或者用于分組廣播的地址諸如1011。這種情形下,提供諸如1010局部塊地址,以便使由單元的每一處理器4實(shí)現(xiàn)的交換軟件能夠使用同一地址與單元的交換存儲(chǔ)器15通信,而不論所述單元相對(duì)于其它單元沿交換總線(xiàn)的位置如何。
舉例來(lái)說(shuō),一個(gè)代理可以使用對(duì)應(yīng)于所述單元的塊地址,或使用局部塊地址或使用單元所屬的分組的廣播地址,可能是一般的廣播分組,而不必通過(guò)單元與之連接的交換總線(xiàn)2,對(duì)與之對(duì)應(yīng)的單元1的交換存儲(chǔ)器15進(jìn)行訪(fǎng)問(wèn)。
作出的設(shè)置使單元能夠通過(guò)交換總線(xiàn),對(duì)代理地址及對(duì)一般廣播地址或交換存儲(chǔ)器組合體的分組廣播地址,進(jìn)行寫(xiě)訪(fǎng)問(wèn)。然而,讀取只能局部進(jìn)行,特別是從單元的交換存儲(chǔ)器中的一般廣播地址或分組廣播地址,假設(shè)單元是對(duì)應(yīng)分組的一部分,且這不是通過(guò)交換總線(xiàn)進(jìn)行。
如上所述,對(duì)交換總線(xiàn)2的訪(fǎng)問(wèn)是在仲裁器3的控制之下發(fā)生的,并假設(shè)仲裁在這種情形下是以通常的方式借助于為這一目的而設(shè)計(jì)的市售的組件進(jìn)行的,因而這里無(wú)需對(duì)此詳細(xì)說(shuō)明,因?yàn)檫@僅間接涉及本發(fā)明的主題。
在一個(gè)實(shí)施例中,仲裁過(guò)程設(shè)計(jì)為非同步的,并導(dǎo)致仲裁器3接收要暫時(shí)保存交換總線(xiàn)的請(qǐng)求,這一請(qǐng)求是由單元根據(jù)它們各方面要求產(chǎn)生的。為其需求尋求保留總線(xiàn)的每一“請(qǐng)求調(diào)用”單元1產(chǎn)生其自身的異步總線(xiàn)請(qǐng)求信號(hào)BR,該信號(hào)通過(guò)單獨(dú)的導(dǎo)線(xiàn)鏈接傳輸給仲裁器3,以便從其接收總線(xiàn)讓與信號(hào)BG,類(lèi)似地按單獨(dú)方式傳輸。這種總線(xiàn)讓與信號(hào)BG由仲裁器3按來(lái)自所屬各單元的各總線(xiàn)請(qǐng)求信號(hào)到達(dá)順序,發(fā)送給第一個(gè)請(qǐng)求調(diào)用單元。這時(shí)或者如果如BUSY信號(hào)的特征狀態(tài)所指總線(xiàn)是空閑的,或者一旦交換總線(xiàn)已經(jīng)由先前為其主控并先前使用該總線(xiàn)的單元所釋放,則接收總線(xiàn)讓與信號(hào)BG的單元變?yōu)榻粨Q總線(xiàn)2的暫時(shí)的主控,所述釋放是由先前主控單元根據(jù)未來(lái)主控單元而產(chǎn)生的BUSY信號(hào)的狀態(tài)改變指示的。這時(shí)已經(jīng)變?yōu)橹骺氐膯卧?刪除其請(qǐng)求,使能夠在其余的請(qǐng)求調(diào)用單元之間繼續(xù)進(jìn)行仲裁過(guò)程。
數(shù)據(jù)是在暫時(shí)為總線(xiàn)主控的單元1的控制下通過(guò)交換總線(xiàn)2傳輸?shù)模搯卧?具有為此用途的“交換”時(shí)鐘電路16。各單元中的每一時(shí)鐘電路16具有給定頻率的各個(gè)發(fā)送時(shí)鐘,這些時(shí)鐘最好對(duì)所有的單元相同,并具有用于恢復(fù)操縱從其它單元接收的數(shù)據(jù)的時(shí)鐘頻率的時(shí)鐘恢復(fù)模塊。這里所述的實(shí)施例中,由單元1所提供的暫時(shí)為交換總線(xiàn)2主控的時(shí)鐘信號(hào)由與之通信的單元1接收,所述單元使它們按所述信號(hào)同步化。這特別的作用是使每一單元1能夠適應(yīng)于由于它們沿交換總線(xiàn)各個(gè)位置不同傳輸長(zhǎng)度引起的分散狀態(tài)。
對(duì)于標(biāo)記為1和1′的兩個(gè)這種單元,在圖3中示意表示出通過(guò)交換總線(xiàn)2在單元之間傳輸數(shù)據(jù)所需的鏈接。形成交換總線(xiàn)2的各種鏈接使其端部與特定的終接電路17和17′連接,例如由FUTUREBUS FB1651組件構(gòu)成的鏈接,這些組件包含可被采樣的雙向緩沖寄存器,并能并行處理一定的信號(hào)。這種情形下,假設(shè)這些終接電路17為信號(hào)轉(zhuǎn)移的目的在每一單元1中實(shí)現(xiàn),諸如圖3的單元1和1′。這種情形下,信號(hào)如下●n數(shù)據(jù)信號(hào)D;●m相應(yīng)的地址信號(hào)A,其中具體的實(shí)施例中n等于32而m等于30;●p數(shù)據(jù)寫(xiě)使能信號(hào)BE,例如p等于4,因?yàn)樵摂?shù)據(jù)位被分組為8位字節(jié);●q描述所請(qǐng)求的交易類(lèi)型的控制信號(hào)CTRL,例如q等于4并使數(shù)據(jù)的寫(xiě)和讀可被識(shí)別,其中數(shù)據(jù)由字組和功能或位置特征按可分或不可分方式分組,例如按32位的字;●r奇偶檢驗(yàn)信號(hào)PAR,至少與某些其它被傳輸?shù)男盘?hào)相關(guān)、并特別與使能信號(hào)BE相關(guān);●由主控單元1的發(fā)送時(shí)鐘產(chǎn)生的時(shí)鐘信號(hào)CLK,對(duì)地址信號(hào)、q控制信號(hào)CTRL、及與上述信號(hào)相關(guān)的奇偶信號(hào)的發(fā)送定時(shí)標(biāo),當(dāng)寫(xiě)入時(shí)所述信號(hào)還對(duì)n數(shù)據(jù)信號(hào)、p數(shù)據(jù)使得信號(hào)、及對(duì)應(yīng)的奇偶檢驗(yàn)信號(hào)定時(shí)標(biāo),所述時(shí)鐘信號(hào)通過(guò)總線(xiàn)與所述各種信號(hào)一同發(fā)送;●使總線(xiàn)在接收時(shí)同步化的時(shí)鐘信號(hào)CLKD,所述信號(hào)對(duì)應(yīng)于由總線(xiàn)主控發(fā)送的時(shí)鐘信號(hào)CLK的接收電平;以及●當(dāng)其接收的能力暫時(shí)處于變?yōu)椴怀浞值奈kU(xiǎn)時(shí),并當(dāng)所述單元不能處理數(shù)據(jù)時(shí),由目標(biāo)單元分別發(fā)送的等待信號(hào)WAIT和停止信號(hào)HALT。
每一單元1或1′產(chǎn)生與單元相關(guān)的標(biāo)記為CLK或CLK′的發(fā)送時(shí)鐘信號(hào),且每一單元通過(guò)請(qǐng)求信號(hào)BR或BR′與仲裁器通信,如上所述所述仲裁器響應(yīng)各個(gè)讓與信號(hào)BG或BG′。當(dāng)前請(qǐng)求信號(hào)BRX還傳輸?shù)皆搯卧?,并特別是傳輸?shù)浇粨Q總線(xiàn)的當(dāng)前主控單元,以便通知它是否存在從某一其它單元來(lái)的請(qǐng)求。
寫(xiě)操作以由代理單元產(chǎn)生的發(fā)送時(shí)鐘速率在交換存儲(chǔ)器組合體中進(jìn)行,交換總線(xiàn)2的主控剛剛由仲裁器3授予該代理單元(在時(shí)序圖4A中假設(shè)是單元1),在時(shí)序圖4A中所述時(shí)鐘標(biāo)記為CLK1。如上所述,正是BUSY信號(hào)狀態(tài)的變化指示了交換總線(xiàn)2可用,并使得寫(xiě)操作可以開(kāi)始。由一單元發(fā)送用于寫(xiě)操作的同步信號(hào)CLK是由單元1提供的時(shí)鐘信號(hào)CLK1構(gòu)成的,該單元在BUSY信號(hào)狀態(tài)一旦使這成為可能時(shí)變?yōu)榻粨Q總線(xiàn)的主控,BUSY信號(hào)狀態(tài)的變化示于時(shí)序圖4B中。例如可以在BUSY信號(hào)狀態(tài)改變后時(shí)鐘信號(hào)CLK出現(xiàn)之前,提供對(duì)應(yīng)于時(shí)鐘信號(hào)一個(gè)周期的延時(shí)。
目標(biāo)單元例如1′對(duì)同步時(shí)鐘信號(hào)CLKD的接收,由所述單元用于向位于處理器總線(xiàn)和交換存儲(chǔ)器接口10,以及代理間交換總線(xiàn)接口11中的緩沖存儲(chǔ)器寫(xiě)入數(shù)據(jù)。例如使用通常的時(shí)鐘恢復(fù)電路獲得時(shí)鐘CKLD。在目標(biāo)單元的接收部分中先入先出(FIFO)型緩沖存儲(chǔ)器的存在,使得從發(fā)送單元1接收的信號(hào)能夠?yàn)檫@種恢復(fù)所使用,這些信號(hào)存儲(chǔ)到緩沖存儲(chǔ)器,等待對(duì)交換存儲(chǔ)器的訪(fǎng)問(wèn)變?yōu)榭尚小?br>
如時(shí)序圖4E所示,這時(shí)通過(guò)為所述位在交換總線(xiàn)2中保留的并行連接由目標(biāo)單元1′并行接收地址位A、數(shù)據(jù)位D、發(fā)送的數(shù)據(jù)使能位BE、以及奇偶檢驗(yàn)位PAR,且它們按對(duì)應(yīng)于交易的意向類(lèi)型的分組接收,諸如數(shù)據(jù)分組i1。諸如i1、i2、i3、和i4這樣的多個(gè)數(shù)據(jù)分組可被不間斷順序地傳輸,如果它們?cè)诎l(fā)送單元1中等待,且所述單元已經(jīng)收到不提供WAIT或HALT信號(hào)。如上所述,WAIT信號(hào)由這時(shí)正在接收的一個(gè)單元傳輸?shù)教幱诎l(fā)送過(guò)程的單元,這情形是,如果發(fā)送單元繼續(xù)發(fā)送新的數(shù)據(jù),則所述接收單元的接收數(shù)據(jù)存儲(chǔ)能力處于變?yōu)闀簳r(shí)飽和的危險(xiǎn)。故這時(shí)發(fā)送中有一個(gè)暫停,以便讓發(fā)出WAIT信號(hào)的目標(biāo)單元趕上。
時(shí)序圖5A到5F示出過(guò)程受到WAIT信號(hào)狀態(tài)變化的影響的操作例子,其中WAIT信號(hào)在這種情形下是異步型的。
如時(shí)序圖5A到5F所示,只要由不再過(guò)載的目標(biāo)單元釋放之后的WAIT信號(hào)轉(zhuǎn)為復(fù)位狀態(tài),這時(shí)作為交換總線(xiàn)2的主控并已保持BUSY信號(hào)的單元繼續(xù)先前中斷的寫(xiě)操作。假設(shè)寫(xiě)操作的這一重新開(kāi)始發(fā)生在WAIT信號(hào)狀態(tài)改變后的一個(gè)時(shí)鐘周期。
如果由引起WAIT信號(hào)再次改變狀態(tài)的目標(biāo)單元請(qǐng)求發(fā)送新的中斷,則狀態(tài)的改變?cè)俅蝹魉徒o交換總線(xiàn)2的當(dāng)前主控的單元,該單元再次停止發(fā)送最近的數(shù)據(jù)分組中新的當(dāng)前數(shù)據(jù),諸如在所述例子中緊跟在分組i1和i2之后的分組i3。在這里所考慮的實(shí)施例中,數(shù)據(jù)分組i3繼續(xù)被產(chǎn)生,但是它不再由目標(biāo)單元考慮,這樣只要也是從主控單元收到的控制信號(hào)CTRL不再是請(qǐng)求寫(xiě)操作的功能代碼,而是現(xiàn)在對(duì)應(yīng)于非操(NOP)作功能代碼,通知所有的目標(biāo)單元,不要考慮當(dāng)前正被發(fā)送的數(shù)據(jù)組。
如上所述,當(dāng)WAIT信號(hào)由先前過(guò)載的目標(biāo)單元釋放之后轉(zhuǎn)為其復(fù)位狀態(tài)時(shí),通過(guò)再次發(fā)送最近發(fā)送的數(shù)據(jù)組,現(xiàn)在作為交換總線(xiàn)主控的單元繼續(xù)先前中斷的寫(xiě)操作,這種情形下是在發(fā)送任何其它分組i4之前的伴有NOP功能的分組i3。在這種情形下如通常那樣也可以提供監(jiān)控程序,以防止在硬件或軟件故障情形下,交換總線(xiàn)2被與之連接的單元之一阻塞。
信號(hào)BRX還使得暫時(shí)為主控的單元能夠繼續(xù)作為交換總線(xiàn)的主控,但是這時(shí)對(duì)總線(xiàn)的主控沒(méi)有其它請(qǐng)求未決。特別是,這使得單元能夠繼續(xù)單獨(dú)作為交換總線(xiàn)2的主控達(dá)很長(zhǎng)時(shí)間,而無(wú)需仲裁器3的無(wú)意義的干涉,例如當(dāng)從主控單元下載時(shí),或如果數(shù)據(jù)速率偶發(fā)變慢。
寫(xiě)單元的最大數(shù)據(jù)速率是指在交換總線(xiàn)2上仲裁周期與數(shù)據(jù)傳輸周期之間不重疊。為確定最小時(shí)間和最大可能時(shí)間而要考慮的整個(gè)時(shí)間對(duì)應(yīng)于交換總線(xiàn)所占用的時(shí)間、使目標(biāo)單元在新的的主控時(shí)鐘上重新同步化所需的時(shí)間、新的主控為準(zhǔn)備對(duì)應(yīng)于第一數(shù)據(jù)項(xiàng)的位分組的一個(gè)時(shí)鐘周期、及用于發(fā)送所述第一數(shù)據(jù)項(xiàng)的一個(gè)主控時(shí)鐘周期之和。順序發(fā)送的每一新的數(shù)據(jù)項(xiàng)又添加一個(gè)主控時(shí)鐘周期。取決于單元沿交換總線(xiàn)的位置,必須在最小和最大時(shí)間之間有一種分散。應(yīng)當(dāng)看到,由于以突發(fā)發(fā)送數(shù)據(jù)的可能性,負(fù)載越大,則數(shù)據(jù)傳輸?shù)男阅茉礁?,因?yàn)殡S負(fù)載的增加數(shù)據(jù)速率逐漸增加對(duì)數(shù)據(jù)負(fù)載的適應(yīng)。
用于寫(xiě)操作的交換總線(xiàn)最大數(shù)據(jù)速率按對(duì)應(yīng)的方式確定,即為確定最小和最大可能時(shí)間所要考慮的整個(gè)時(shí)間等于BUSY信號(hào)釋放時(shí)間、重新同步化時(shí)間、為準(zhǔn)備對(duì)應(yīng)于第一數(shù)據(jù)項(xiàng)的位分組的一個(gè)主控時(shí)鐘周期、及順序發(fā)送的每數(shù)據(jù)項(xiàng)的一個(gè)時(shí)鐘周期之和。
從交換存儲(chǔ)器組合體讀取也以由作為當(dāng)前交換總線(xiàn)2主控的代理單元產(chǎn)生的發(fā)送時(shí)鐘CKL1的速率進(jìn)行,在時(shí)序圖6A中也假設(shè)所述單元為單元1。如時(shí)序圖6B所示,只要由BUSY信號(hào)的狀態(tài)或其狀態(tài)的改變使其成為可能,這主控單元發(fā)出對(duì)應(yīng)于如時(shí)序圖6C所示的讀指令控制信號(hào)CTRL,及如時(shí)序圖6D所示的定義讀出地址adr的信號(hào)A。這種情形下,讀出命令之后緊隨NOP代碼序列,直到從所請(qǐng)求的讀操作獲得結(jié)果。
假設(shè)讀操作發(fā)生在交換存儲(chǔ)器,則由目標(biāo)單元從主控單元收到的同步化和時(shí)鐘信號(hào)CLKD由目標(biāo)單元用來(lái)恢復(fù)讀命令,及在目標(biāo)單元的交換存儲(chǔ)器15中要對(duì)其執(zhí)行的讀操作的地址。如時(shí)序圖6E到6G所示,這時(shí)與來(lái)自單元1′的時(shí)鐘CLK的同步化信號(hào)CLK′一同,對(duì)應(yīng)于在交換存儲(chǔ)器15中確定的地址找到的數(shù)據(jù)的數(shù)據(jù)信號(hào)D,及對(duì)應(yīng)的總線(xiàn)使能信號(hào)BE由讀命令的目標(biāo)單元發(fā)出。在所述實(shí)施例中,通過(guò)讀操作在數(shù)據(jù)地址所獲得的數(shù)據(jù)在通過(guò)其傳輸?shù)慕粨Q總線(xiàn)的導(dǎo)線(xiàn)上呈現(xiàn)一個(gè)時(shí)鐘周期。由目標(biāo)單元所提供的同步化信號(hào)的數(shù)目是由主控單元所作的請(qǐng)求交易類(lèi)型的函數(shù),例如如果已經(jīng)請(qǐng)求讀出單個(gè)32位字,則為值0010的4位CTRL代碼,或如果要讀出的是兩個(gè)32位字,則值0011的4位CTRL代碼,等等。
在優(yōu)選實(shí)施例中,所作的設(shè)置使只是從所有等待發(fā)送的寫(xiě)操作已經(jīng)執(zhí)行時(shí)起,讀出請(qǐng)求能夠由暫時(shí)為主控單元的單元實(shí)現(xiàn)。類(lèi)似地,在直到交換存儲(chǔ)器中來(lái)自交換總線(xiàn)2的所有的寫(xiě)操作已經(jīng)執(zhí)行之前,目標(biāo)單元不能從交換存儲(chǔ)器讀出。
讀單元的最大數(shù)據(jù)速率要求考慮對(duì)以下各時(shí)間求和所獲得的總和時(shí)間捕獲交換總線(xiàn)所需的時(shí)間、同步化時(shí)間、準(zhǔn)備對(duì)應(yīng)于讀請(qǐng)求的位分組的一個(gè)主控時(shí)鐘周期、用于發(fā)送所述位分組的一個(gè)時(shí)鐘周期、用于與伴隨它的信號(hào)一同傳輸所述位分組所需的時(shí)間、用于由已向其發(fā)送請(qǐng)求的單元恢復(fù)讀請(qǐng)求所需的時(shí)間、再同步化時(shí)間、對(duì)交換存儲(chǔ)器進(jìn)行訪(fǎng)問(wèn)的總線(xiàn)仲裁時(shí)間(未示出)、讀取包含在交換存儲(chǔ)器中數(shù)據(jù)項(xiàng)所需的時(shí)間、處理控制器執(zhí)行讀操作所需的時(shí)間、對(duì)目標(biāo)的發(fā)送時(shí)鐘CLK重新同步化所需的時(shí)間、傳輸數(shù)據(jù)項(xiàng)及伴隨信號(hào)所需的時(shí)間、以及備選地主控單元使構(gòu)成數(shù)據(jù)項(xiàng)的位分組重新同步化所需的時(shí)間。
權(quán)利要求
1.用于在稱(chēng)為“代理”單元的數(shù)據(jù)處理器單元(1)之間交換數(shù)據(jù)的系統(tǒng),該系統(tǒng)包括諸如由所述單元共用的外部多導(dǎo)線(xiàn)交換總線(xiàn)(2)互連的處理器(4)的處理器裝置,總線(xiàn)的共享由仲裁器(3)協(xié)調(diào),每一單元包括用于至少是暫時(shí)存儲(chǔ)以有組織的方式保存在預(yù)定地址的數(shù)據(jù)的裝置(5,6,15),使得數(shù)據(jù)能夠按要求寫(xiě)和/或讀,由所述單元形成的組合體包含數(shù)據(jù)存儲(chǔ)裝置,數(shù)據(jù)存儲(chǔ)單元構(gòu)成在所述單元(1)之間共享、對(duì)所有所述單元共用、并可由它們通過(guò)交換總線(xiàn)(2)訪(fǎng)問(wèn)的交換存儲(chǔ)器組合體;每一單元(1)以交換存儲(chǔ)器(15)的形式包括所述組合體的存儲(chǔ)裝置的一部分,通過(guò)交換總線(xiàn)交換存儲(chǔ)器對(duì)單元的處理器裝置(4)和其它單元的處理器裝置都是可訪(fǎng)問(wèn)的;每一單元中用于局部處理器總線(xiàn)和交換存儲(chǔ)器并用于交換總線(xiàn)的接口裝置(10,11),該接口裝置被互連以便在由單元的交換存儲(chǔ)器構(gòu)成的存儲(chǔ)裝置(15)、所述單元的處理器裝置(4)、以及其它單元的處理器裝置之間,通過(guò)所述其它單元與之連接的交換總線(xiàn)(2)交換數(shù)據(jù);該交換系統(tǒng)的特征在于,它包括每一單元中交換存儲(chǔ)器(15)和交換總線(xiàn)(2)之間的中間存儲(chǔ)裝置(10,11),所述裝置由快速訪(fǎng)問(wèn)緩沖存儲(chǔ)器構(gòu)成,單元的處理器(4)能夠以其自身的時(shí)鐘速率對(duì)其進(jìn)行訪(fǎng)問(wèn),且其它單元能夠以這時(shí)控制所述交換總線(xiàn)的時(shí)鐘速率對(duì)其訪(fǎng)問(wèn);以及特征還在于,每一單元包括用于產(chǎn)生第一時(shí)鐘信號(hào)(CLK)的裝置(16)用于通過(guò)交換總線(xiàn)向其它單元進(jìn)行傳送,并且裝置(16)還用于恢復(fù)來(lái)自交換總線(xiàn)的第二時(shí)鐘信號(hào)(CLKD),以產(chǎn)生用于對(duì)適合從另一單元向所述單元以第二時(shí)鐘信號(hào)的速率進(jìn)行傳送的數(shù)據(jù)進(jìn)行局部運(yùn)算的第三時(shí)鐘信號(hào)。
2.根據(jù)權(quán)利要求1的系統(tǒng),其特征在于將形成交換存儲(chǔ)器組合體的交換存儲(chǔ)器(15)以邏輯方式組織成塊,將所述塊單獨(dú)分配給具體由單元和單元組,有可能是包括所有單元的一個(gè)組構(gòu)成的諸單元。
3.根據(jù)權(quán)利要求1或2的系統(tǒng),其特征在于交換存儲(chǔ)器組合體中的一個(gè)單元的交換存儲(chǔ)器(15)的地址是由該單元(1)相對(duì)于其它單元沿交換總線(xiàn)(2)的位置定義的。
4.根據(jù)權(quán)利要求1至3任何一項(xiàng)權(quán)利要求的系統(tǒng),其特征在于數(shù)據(jù)交換是由當(dāng)時(shí)請(qǐng)求進(jìn)行數(shù)據(jù)傳送并在當(dāng)時(shí)由仲裁器(3)授予了交換總線(xiàn)(2)的主控權(quán)的單元(1)在其中主動(dòng)發(fā)起的,并且只要交換總線(xiàn)忙信號(hào)(BUSY)的狀態(tài)或其中的狀態(tài)變化使之成為可能,它就施加由此產(chǎn)生的第一時(shí)鐘信號(hào),當(dāng)所述單元確實(shí)是總線(xiàn)的主控時(shí),交換總線(xiàn)忙信號(hào)暫時(shí)由某一單元產(chǎn)生要使用的所述第一時(shí)鐘信號(hào),以便為了在交換存儲(chǔ)器組合體的至少一個(gè)交換存儲(chǔ)器(15)中進(jìn)行讀操作和寫(xiě)操作通過(guò)交換總線(xiàn)(2)發(fā)送由多位組成的至少一個(gè)數(shù)據(jù)項(xiàng)。
5.根據(jù)權(quán)利要求4的系統(tǒng),其特征在于,至少是由暫時(shí)成為所述交換總線(xiàn)主控的單元通過(guò)交換總線(xiàn)傳送的第一數(shù)據(jù)項(xiàng),包含對(duì)應(yīng)于這時(shí)為數(shù)據(jù)傳送的目的所施加的交易類(lèi)型的控制信號(hào)(CTRL)特征的位。
6.根據(jù)權(quán)利要求4或5的系統(tǒng),其特征在于,在數(shù)據(jù)正在由所述主控單元傳送時(shí),分別當(dāng)所述目標(biāo)單元的數(shù)據(jù)接收容量已經(jīng)暫時(shí)不足時(shí),或當(dāng)所述目標(biāo)單元不能接納數(shù)據(jù)時(shí),等待信號(hào)(WAIT)或停止信號(hào)(HALT)能夠由數(shù)據(jù)目標(biāo)單元傳送到主控單元。
全文摘要
用于在“代理”數(shù)據(jù)處理器單元之間交換數(shù)據(jù)的系統(tǒng),該系統(tǒng)包括諸如由所述單元共用的外部多導(dǎo)線(xiàn)交換總線(xiàn)互連的處理器,總線(xiàn)的共享由仲裁器協(xié)調(diào)。每一單元具有存儲(chǔ)裝置,其中數(shù)據(jù)以有組織的方式存儲(chǔ)在預(yù)定地址,使得數(shù)據(jù)能夠按要求讀和/或?qū)?。由所述單元的?shù)據(jù)存儲(chǔ)裝置構(gòu)成對(duì)所有所述單元共用、并對(duì)所有它們通過(guò)交換總線(xiàn)可訪(fǎng)問(wèn)的分布式的交換存儲(chǔ)器組合體。每一單元包括由交換存儲(chǔ)器構(gòu)成的組合體裝置的一部分,交換存儲(chǔ)器可由單元的處理器裝置通過(guò)交換總線(xiàn)訪(fǎng)問(wèn)。
文檔編號(hào)G06F9/46GK1221919SQ98123879
公開(kāi)日1999年7月7日 申請(qǐng)日期1998年11月6日 優(yōu)先權(quán)日1997年11月6日
發(fā)明者讓·埃吉恩·格佐, 瑪塞·奧利夫, 波那德·巴里斯 申請(qǐng)人:阿爾卡塔爾公司