專(zhuān)利名稱(chēng):采用實(shí)時(shí)調(diào)度邏輯和時(shí)間確定結(jié)構(gòu)的分布式計(jì)算環(huán)境的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)處理控制系統(tǒng)領(lǐng)域,特別是多個(gè)計(jì)算機(jī)在網(wǎng)絡(luò)中以協(xié)同方式執(zhí)行它們的邏輯的集成系統(tǒng)。本說(shuō)明書(shū)所描述的系統(tǒng)雖然對(duì)涉及多計(jì)算機(jī)處理器、平行計(jì)算機(jī)處理器和網(wǎng)絡(luò)計(jì)算機(jī)處理器的努力也有益,但其應(yīng)用首先是針對(duì)大實(shí)體規(guī)模設(shè)施(例如化工設(shè)施)所采用的設(shè)備的計(jì)算機(jī)控制。
當(dāng)計(jì)算請(qǐng)求或地理限制需要計(jì)算設(shè)施物理散布時(shí)(例如用于大的、地理上分散的化工廠的進(jìn)程控制),采用計(jì)算任務(wù)的中央?yún)f(xié)調(diào)可能有益于實(shí)用因素(如生成物質(zhì)量)。本發(fā)明描述了一種系統(tǒng)和方法,能使地理上分散的多臺(tái)計(jì)算機(jī)成為可實(shí)現(xiàn)時(shí)間協(xié)調(diào)的內(nèi)部行為的網(wǎng)絡(luò)。這個(gè)聯(lián)合網(wǎng)絡(luò)能使任務(wù)協(xié)調(diào)并能實(shí)現(xiàn)其它有益于本系統(tǒng)所執(zhí)行任務(wù)的性質(zhì),如冗余可靠、安全以及高通量。
1995年6月27日公布的5,428,769號(hào)美國(guó)專(zhuān)利授予了Glaser,Robert S;Hoy,Robert S;Fernandez,G.Paulh和Grai,Timothy J,名稱(chēng)為“具有三重冗余遠(yuǎn)場(chǎng)單元的進(jìn)程控制接口系統(tǒng)”,它描述了一個(gè)說(shuō)明這類(lèi)用于進(jìn)程控制系統(tǒng)的一系列物理散布的遠(yuǎn)場(chǎng)單元實(shí)施實(shí)時(shí)聯(lián)網(wǎng)的系統(tǒng)的實(shí)施例。盡管在需要時(shí)這種聯(lián)網(wǎng)方法會(huì)有效地在各個(gè)時(shí)間周期內(nèi)為各個(gè)系統(tǒng)編址,因而這個(gè)系統(tǒng)適用于多種進(jìn)程控制情形;但是,如果所有交換的變量都是穩(wěn)定的,那么這些編址循環(huán)中有許多都是不必要的-從網(wǎng)絡(luò)效率的觀點(diǎn)來(lái)看,只在輸入或輸出需要改變的情況下才提供通信的方案更加簡(jiǎn)潔。
計(jì)算設(shè)備的物理散布與計(jì)算任務(wù)的中央?yún)f(xié)調(diào)相結(jié)合在以并行為特征的高性能處理器中也是一個(gè)主要概念。在John L.Hennessy和David A.Patterson所著(Morgen Kaufmann;San Mateo,California;1990;第351-363頁(yè))的“計(jì)算機(jī)體系結(jié)構(gòu),一種定量方法”的7.1和7.2節(jié)(“向量處理器”)中描述的那種向量處理器就是這種系統(tǒng)的一個(gè)證明,而E.F.Gehringer,D.P.Siewiore和Z.Segall在“平行處理-Cm*經(jīng)驗(yàn)”(Digital出版社經(jīng)Editorial公司,Rockport,Massachusetts;1987)從第11頁(yè)到第18頁(yè)討論的那種Cm*設(shè)計(jì)提供了這類(lèi)方法的第二個(gè)例子。
在用于未來(lái)的調(diào)度流程中計(jì)算任務(wù)的中央?yún)f(xié)調(diào)也運(yùn)用了如J.William Gavett在“生產(chǎn)和運(yùn)作經(jīng)營(yíng)”(Harrot,Brace,and World;New York;1968)的第569頁(yè)到第584頁(yè)中所討論的那種傳統(tǒng)的項(xiàng)目調(diào)度概念。
進(jìn)程控制系統(tǒng)的發(fā)展具有以下特征,即在被控制的系統(tǒng)內(nèi)問(wèn)題的引入和管理單調(diào)大量增加,這要求在不可延長(zhǎng)的時(shí)間框架內(nèi)對(duì)相應(yīng)較大量的數(shù)據(jù)進(jìn)行相應(yīng)較大量的邏輯。能夠更快地進(jìn)行邏輯并能在一個(gè)編址的物理存儲(chǔ)單元中存儲(chǔ)更多數(shù)據(jù)的硬件可以在某種程度上獲得上述特征,但采取這個(gè)方案代價(jià)昂貴。要解決未來(lái)系統(tǒng)有效擴(kuò)展它們對(duì)境況控制的綜合處理能力這個(gè)問(wèn)題所需要的是真正提供一個(gè)解決途徑,使得大量的散布的計(jì)算機(jī)以在整個(gè)網(wǎng)絡(luò)中時(shí)間同步的交互方式執(zhí)行大量邏輯。本發(fā)明提供了這樣一種方法和系統(tǒng)。
本發(fā)明提供了一種計(jì)算機(jī)實(shí)施方法,能夠使多計(jì)算機(jī)節(jié)點(diǎn)靠交互數(shù)據(jù)通信以協(xié)同方式執(zhí)行邏輯(a)在計(jì)算機(jī)節(jié)點(diǎn)之間校準(zhǔn)時(shí)間定義以便各個(gè)計(jì)算機(jī)節(jié)點(diǎn)精確地具有對(duì)時(shí)間的相同“理解”;(b)為各個(gè)計(jì)算機(jī)節(jié)點(diǎn)確定一個(gè)通信調(diào)度表,這個(gè)調(diào)度表為將來(lái)開(kāi)始各次相應(yīng)的通信確定了不同的時(shí)間;(c)向各計(jì)算機(jī)節(jié)點(diǎn)傳遞相應(yīng)的調(diào)度表;(d)按照各自調(diào)度表所確定的時(shí)間開(kāi)始各次通信。
描述的實(shí)施例提供了一種計(jì)算機(jī)網(wǎng)絡(luò)體系結(jié)構(gòu),它具有一個(gè)與多臺(tái)計(jì)算機(jī)相連的消息載體;一個(gè)用來(lái)保持計(jì)算機(jī)間時(shí)間同步的時(shí)鐘系統(tǒng)(可被網(wǎng)絡(luò)內(nèi)的所有計(jì)算機(jī)訪問(wèn));和一個(gè)決定計(jì)算機(jī)間通信順序的調(diào)度器,它根據(jù)計(jì)算機(jī)執(zhí)行的時(shí)間確定任務(wù)引起消息載體在選定的計(jì)算機(jī)間建立通信來(lái)完成這一功能。
描述的實(shí)施例還提供了一種全局的時(shí)間系統(tǒng)以將該計(jì)算機(jī)系列中的時(shí)間讀出校準(zhǔn)到一個(gè)全局定義的參考值。
描述的實(shí)施例還提供了一種能夠使多個(gè)成員節(jié)點(diǎn)以協(xié)同方式執(zhí)行邏輯的計(jì)算機(jī)實(shí)施方法。
描述的實(shí)施例還提供了計(jì)算機(jī)間經(jīng)由消息載體通信的同時(shí)性。
描述的實(shí)施例還提供了為作為一個(gè)集體組的多個(gè)資源對(duì)象中的一個(gè)資源對(duì)象調(diào)度任務(wù)的計(jì)算機(jī)實(shí)施方法。
描述的實(shí)施例還提供了一種方法,用這種方法不同的計(jì)算機(jī)能靠調(diào)節(jié)它們振蕩器的振蕩頻率來(lái)校準(zhǔn)它們的時(shí)間定義。
計(jì)算機(jī)網(wǎng)絡(luò)體系結(jié)構(gòu)具有支持多信道的消息載體;多個(gè)連接到消息載體上的計(jì)算機(jī),其中的每臺(tái)計(jì)算機(jī)都被編程,使其循環(huán)通過(guò)多個(gè)不同狀態(tài),包括通信狀態(tài),以執(zhí)行時(shí)間確定的任務(wù);一個(gè)用來(lái)保持計(jì)算機(jī)中的時(shí)間同步,可被所有計(jì)算機(jī)訪問(wèn)的時(shí)鐘系統(tǒng);和一個(gè)連接到消息載體上用來(lái)確定計(jì)算機(jī)間的通信次序的調(diào)度器,它根據(jù)計(jì)算機(jī)執(zhí)行的時(shí)間確定的任務(wù)引起消息載體在選定的計(jì)算機(jī)間建立通信來(lái)完成這一功能。
多個(gè)計(jì)算機(jī)節(jié)點(diǎn)中的一個(gè)計(jì)算機(jī)節(jié)點(diǎn)(帶有一個(gè)獨(dú)立的中央處理器的計(jì)算單元)與其它計(jì)算機(jī)節(jié)點(diǎn)一起連接到一個(gè)消息載體上,就能與其它計(jì)算機(jī)節(jié)點(diǎn)協(xié)同執(zhí)行邏輯,還提供(a)在一臺(tái)計(jì)算機(jī)節(jié)點(diǎn)上的主調(diào)度能力以建立主調(diào)度器;(b)在各個(gè)計(jì)算機(jī)節(jié)點(diǎn)中確定該計(jì)算機(jī)節(jié)點(diǎn)在對(duì)應(yīng)的未來(lái)時(shí)間周期中所需的與其它計(jì)算機(jī)節(jié)點(diǎn)的各次通信的通信請(qǐng)求表;(c)從各個(gè)計(jì)算機(jī)節(jié)點(diǎn)經(jīng)由消息載體向主調(diào)度器發(fā)送通信請(qǐng)求表;(d)各個(gè)計(jì)算機(jī)節(jié)點(diǎn)經(jīng)由消息載體從主調(diào)度器接收通信調(diào)度表;(e)各個(gè)計(jì)算機(jī)節(jié)點(diǎn)從接收到的通信調(diào)度表確定當(dāng)?shù)厝蝿?wù)調(diào)度表。
上述方法使系統(tǒng)中的多個(gè)成員節(jié)點(diǎn)能在多個(gè)分散的平臺(tái)上以協(xié)同方式執(zhí)行大量邏輯。
在一個(gè)實(shí)施例中,上述執(zhí)行過(guò)程中定義時(shí)刻參考值的步驟由主調(diào)度器執(zhí)行。
在一個(gè)實(shí)施例中,上述執(zhí)行過(guò)程中在個(gè)成員節(jié)點(diǎn)中定義通信請(qǐng)求表的步驟限制了在未來(lái)的時(shí)間區(qū)間內(nèi)的最大通信數(shù)量,各次通信都有一個(gè)持續(xù)時(shí)間屬性,為獲得有效操作,這個(gè)持續(xù)時(shí)間屬性值小于一個(gè)固定的極大值。
在一個(gè)實(shí)施例中,全局時(shí)間系統(tǒng)的使用使得在擴(kuò)展的系統(tǒng)中的所有不同的計(jì)算機(jī)節(jié)點(diǎn)(成員節(jié)點(diǎn))具有對(duì)時(shí)間的普適理解。
調(diào)度的方法包括給作為一個(gè)集體組的多個(gè)資源對(duì)象中的一個(gè)資源(成員)對(duì)象調(diào)度任務(wù)的過(guò)程;這個(gè)計(jì)算機(jī)實(shí)施過(guò)程(稱(chēng)為“表觀關(guān)鍵資源(apparent critical resource,ACR)”過(guò)程)包括下列步驟為該集體組確定一系列未來(lái)任務(wù);為未來(lái)任務(wù)系列中的各未來(lái)任務(wù)確定各資源對(duì)象;確定對(duì)應(yīng)于未來(lái)任務(wù)系列的任意兩個(gè)資源對(duì)象之間所需的交互作用;為各資源對(duì)象確定一個(gè)使用示例以完成各交互作用,該使用示例具有一個(gè)使用時(shí)長(zhǎng)屬性值;對(duì)應(yīng)于各個(gè)使用示例確定一個(gè)訪問(wèn)資源對(duì)象和一個(gè)被訪問(wèn)資源對(duì)象;為各訪問(wèn)資源對(duì)象確定總訪問(wèn)時(shí)間值,該值為對(duì)應(yīng)于這個(gè)資源對(duì)象為訪問(wèn)資源對(duì)象時(shí)所有使用示例的所有使用期屬性值的總和;為各被訪問(wèn)資源對(duì)象確定總被訪問(wèn)時(shí)間值,該值為對(duì)應(yīng)于這個(gè)資源對(duì)象為被訪問(wèn)資源對(duì)象時(shí)所有使用示例的所有使用期屬性值的總和;確定在調(diào)度表中的一個(gè)調(diào)度周期內(nèi)的連續(xù)一系列未來(lái)時(shí)間段;
根據(jù)該系列未來(lái)任務(wù)中的第一個(gè)有效的未來(lái)任務(wù),將一個(gè)發(fā)生在下列對(duì)象之間的未來(lái)資源交互作用事件調(diào)度進(jìn)第一個(gè)未來(lái)時(shí)間段中的最早可用時(shí)間內(nèi)(a)具有對(duì)應(yīng)于該系列未來(lái)任務(wù)的最高總訪問(wèn)值的訪問(wèn)資源對(duì)象和(b)具有對(duì)應(yīng)于該系列未來(lái)任務(wù)的最高總被訪問(wèn)值的被訪問(wèn)資源對(duì)象(如果在該訪問(wèn)資源對(duì)象和被訪問(wèn)資源對(duì)象之間存在使用示例-在調(diào)度表記錄中該未來(lái)資源交互作用事件具有與調(diào)度表中的最早可用時(shí)間相等的起始時(shí)間,與訪問(wèn)資源對(duì)象對(duì)應(yīng)的訪問(wèn)資源對(duì)象識(shí)別標(biāo)志,與被訪問(wèn)資源對(duì)象對(duì)應(yīng)的被訪問(wèn)資源對(duì)象識(shí)別標(biāo)志,和前述的使用期屬性值)從調(diào)度候選者中刪除對(duì)應(yīng)于已調(diào)度的未來(lái)資源交互作用事件中該被訪問(wèn)資源對(duì)象的使用示例和已調(diào)度的未來(lái)資源交互作用事件中的該訪問(wèn)成員對(duì)象的識(shí)別標(biāo)志,以對(duì)那些還未調(diào)度交互作用的未來(lái)任務(wù)重新確定未來(lái)任務(wù)系列;重復(fù)確定總訪問(wèn)值、確定總被訪問(wèn)值、調(diào)度未來(lái)通信任務(wù)和刪除對(duì)應(yīng)于已調(diào)度的資源對(duì)象的所有使用示例的步驟,直至所有能被調(diào)度進(jìn)第一個(gè)未來(lái)時(shí)間段的使用示例都被調(diào)度了為止;循環(huán)地執(zhí)行確定總訪問(wèn)值、確定總被訪問(wèn)值、調(diào)度未來(lái)通信任務(wù)和刪除對(duì)應(yīng)于已預(yù)定的資源對(duì)象的所有使用示例的步驟,并重復(fù)這些步驟直至所有能被調(diào)度進(jìn)第一個(gè)未來(lái)時(shí)間段的使用示例都被調(diào)度好,以及所有資源交互作用事件都被調(diào)度進(jìn)這個(gè)調(diào)度周期。
在一個(gè)實(shí)施例中,消息載體具有允許多通信事件并行的多個(gè)通道,調(diào)度步驟對(duì)應(yīng)于多個(gè)通道,作為一個(gè)整體實(shí)施,其中最早可用時(shí)間是對(duì)應(yīng)于該消息載體的任意一個(gè)通道的。
在某些實(shí)施例中,各成員節(jié)點(diǎn)具有可變速振蕩器,用來(lái)調(diào)整當(dāng)?shù)貢r(shí)鐘與網(wǎng)絡(luò)中的全局時(shí)鐘校準(zhǔn)。這些實(shí)施例中還提供由計(jì)算機(jī)線路執(zhí)行的時(shí)間校準(zhǔn)邏輯和振蕩器頻率調(diào)整邏輯以獲得對(duì)特定成員節(jié)點(diǎn)(計(jì)算機(jī)節(jié)點(diǎn))的快速時(shí)間校準(zhǔn)。
在上述實(shí)施例中使用的消息載體具有(在優(yōu)選實(shí)施例中)帶縱橫接線器或者(在另一個(gè)實(shí)施例中)有帶射頻通信系統(tǒng)的網(wǎng)絡(luò)拓?fù)洹?br>
閱讀對(duì)優(yōu)選實(shí)施例的具體描述和附圖,會(huì)更加全面清楚地理解本發(fā)明的其它特性和優(yōu)點(diǎn)。
圖1表示了在散布的網(wǎng)絡(luò)中不同單元之間的數(shù)據(jù)流示意圖。
圖2描述了散布的計(jì)算單元網(wǎng)絡(luò),它們分布在全世界物理上不同的位置上。本圖包括計(jì)算單元網(wǎng)絡(luò),主調(diào)度器和公共時(shí)間源。
圖3表示了一個(gè)總線結(jié)構(gòu)的網(wǎng)絡(luò)示意圖。
圖4顯示了分散的計(jì)算環(huán)境中環(huán)形布局的網(wǎng)絡(luò)。
圖5表示了轉(zhuǎn)換星形布局的網(wǎng)絡(luò)示意圖,它是網(wǎng)絡(luò)體系結(jié)構(gòu)的優(yōu)選實(shí)施例。
圖6表示了在計(jì)算單元和主調(diào)度器之間通信的數(shù)據(jù)結(jié)構(gòu)示意圖。
圖7描繪了主調(diào)度器對(duì)兩個(gè)分離的計(jì)算單元之間的通信調(diào)度的實(shí)施過(guò)程的流程圖。
圖8表示了在主調(diào)度器對(duì)兩個(gè)分離的計(jì)算單元之間的通信調(diào)度中實(shí)施的調(diào)度邏輯(電子線路所執(zhí)行的軟件)的簡(jiǎn)單示意圖;圖9表示了主調(diào)度器所執(zhí)行的調(diào)度邏輯的詳細(xì)流程圖。
圖10表示了描述在首次連接被調(diào)度后計(jì)算單元之間的首次已調(diào)度通信的條帶圖。
圖11表示了描述在第一個(gè)步驟中可調(diào)度的所有連接被調(diào)度后計(jì)算單元之間的已調(diào)度通信的條帶圖。
圖12表示了描述在所有連接被調(diào)度后計(jì)算單元之間的已調(diào)度通信的條帶圖。
圖13提供了消息載體、主調(diào)度器、時(shí)鐘和成員節(jié)點(diǎn)的詳細(xì)構(gòu)成。
圖14顯示了優(yōu)選實(shí)施例中采用的技術(shù)和那些應(yīng)用中最關(guān)鍵的重點(diǎn)之間的關(guān)系。
圖15表示了各計(jì)算單元為實(shí)現(xiàn)兩節(jié)點(diǎn)間通信所執(zhí)行的邏輯的流程圖。
圖16描繪了在一個(gè)以射頻實(shí)現(xiàn)通信的散布網(wǎng)絡(luò)中各不同單元之間數(shù)據(jù)流的示意圖。
作為對(duì)這部分說(shuō)明的介紹,本發(fā)明的系統(tǒng)和方法實(shí)施合作執(zhí)行的任務(wù)的中央化調(diào)度,時(shí)間確定事件的運(yùn)行,以及有效實(shí)時(shí)同步化和網(wǎng)絡(luò)上的多臺(tái)計(jì)算機(jī)(也稱(chēng)作“成員節(jié)點(diǎn)”)上相應(yīng)的振蕩器的校準(zhǔn)。在這一點(diǎn)上,這個(gè)時(shí)間確定的網(wǎng)絡(luò)包含基于時(shí)間的而不是基于某種事件(例如一個(gè)信號(hào)的接收或檢測(cè)到一條特定總線可用)的在分離的計(jì)算單元之間的通信。合作執(zhí)行的任務(wù)的中央化調(diào)度,時(shí)間確定事件的運(yùn)行,以及有效實(shí)時(shí)同步化和網(wǎng)絡(luò)上多臺(tái)計(jì)算機(jī)上相應(yīng)的振蕩器的校準(zhǔn)需要計(jì)算機(jī)對(duì)實(shí)時(shí)的一個(gè)真實(shí)時(shí)刻的數(shù)據(jù)邏輯表象共用一個(gè)精確相同的表觀。舉例來(lái)說(shuō)并對(duì)這個(gè)例子假定(這并不限制本發(fā)明的范圍),全系統(tǒng)范圍需要百萬(wàn)分之一秒的精度,這意味著,該系統(tǒng)中的兩臺(tái)不同的計(jì)算機(jī)必須知道,當(dāng)被本網(wǎng)絡(luò)權(quán)威的時(shí)間源定義的實(shí)時(shí)時(shí)刻為08:00:0000000小時(shí)時(shí),兩臺(tái)計(jì)算機(jī)中的第一臺(tái)具有實(shí)時(shí)的該時(shí)刻的數(shù)據(jù)邏輯表象在07:59:9999995到08:00:0000005之間,而兩臺(tái)計(jì)算機(jī)中的第二臺(tái)具有實(shí)時(shí)的該時(shí)刻的數(shù)據(jù)邏輯表象也在07:59:9999995到08:00:0000005之間;正如可以斷定的那樣,兩臺(tái)計(jì)算機(jī)對(duì)實(shí)時(shí)的該時(shí)刻的數(shù)據(jù)邏輯表象的差別不大于百萬(wàn)分之一秒。
當(dāng)一個(gè)散布的網(wǎng)絡(luò)中的計(jì)算機(jī)對(duì)實(shí)時(shí)的一個(gè)真實(shí)時(shí)刻的數(shù)據(jù)邏輯表象共用一個(gè)精確相同的表觀時(shí),它們就可以被編程根據(jù)時(shí)間來(lái)執(zhí)行特定的任務(wù)。涉及多臺(tái)計(jì)算機(jī)的任務(wù)可以實(shí)現(xiàn)中央調(diào)度,并且為在地理上散布的計(jì)算機(jī)中以確定的方法引起時(shí)間相關(guān)的活動(dòng)奠定了基礎(chǔ)。從這個(gè)意義上說(shuō),在預(yù)定的實(shí)時(shí)時(shí)刻發(fā)生一個(gè)預(yù)定事件的特征是實(shí)時(shí)操作的確定性。
在計(jì)算機(jī)之間的通信中使用這樣的時(shí)間協(xié)同也使動(dòng)態(tài)冗余的使用容易起來(lái)。在動(dòng)態(tài)冗余中,有兩臺(tái)或更多的計(jì)算機(jī)各自執(zhí)行完全相同的邏輯,交換這些操作的結(jié)果,可選地裁定這些獨(dú)立得到的結(jié)果以為進(jìn)一步使用取得共同理解的聯(lián)合結(jié)論,并運(yùn)行以共同影響該結(jié)果。當(dāng)被各計(jì)算機(jī)接收到的數(shù)據(jù)在結(jié)果仲裁之前被其它執(zhí)行同樣邏輯的計(jì)算機(jī)共用時(shí),就能最有效地進(jìn)行這個(gè)過(guò)程,所以必須存在這樣一些機(jī)制,靠它們來(lái)共同確定仲裁處理開(kāi)始的時(shí)間。在本發(fā)明中,提供冗余計(jì)算機(jī)之間時(shí)間同步并調(diào)度關(guān)于一個(gè)通信示例的任務(wù)的機(jī)制是(1)在計(jì)算機(jī)中提供一個(gè)完全相同的一個(gè)實(shí)時(shí)時(shí)刻的數(shù)據(jù)邏輯表象;(2)當(dāng)在計(jì)算機(jī)中將發(fā)生通信示例時(shí),使用一種調(diào)度方法來(lái)確定該計(jì)算機(jī)的時(shí)刻;以及(3)然后在這個(gè)為通信示例定義的時(shí)刻發(fā)生的通信示例所涉及到的各系統(tǒng)中實(shí)施合適的發(fā)送、接收和連接任務(wù)。以這種方式,將要執(zhí)行上面提及的仲裁任務(wù)的時(shí)刻是在調(diào)度好通信任務(wù)之后就預(yù)先確定了的(與在實(shí)際執(zhí)行了通信任務(wù)之后再等待確定仲裁任務(wù)的起始時(shí)間的方法相反)。
本調(diào)度方法是靠執(zhí)行調(diào)度邏輯來(lái)實(shí)施的。邏輯的概念與軟件(計(jì)算機(jī)程序)有關(guān),它的目的是由一個(gè)可執(zhí)行該軟件的電子電路系統(tǒng)(通常以術(shù)語(yǔ)“計(jì)算機(jī)”稱(chēng)之)在執(zhí)行該軟件的過(guò)程中達(dá)到的。被用于通信調(diào)度的調(diào)度邏輯是基于對(duì)已調(diào)度的資源(例如指定的計(jì)算機(jī)、各計(jì)算機(jī)中的數(shù)據(jù)空間、各計(jì)算機(jī)的執(zhí)行時(shí)間、各計(jì)算機(jī)中的指定電路)的命令所做的分析。這個(gè)調(diào)度邏輯被用于網(wǎng)絡(luò)通信的調(diào)度,但它還可以應(yīng)用于任意一個(gè)與另一個(gè)之間需要交互作用的資源的調(diào)度,而且它特別適合于實(shí)時(shí)的應(yīng)用。調(diào)度邏輯還被設(shè)計(jì)成能夠負(fù)責(zé)相應(yīng)資源的調(diào)度和可從輸入(這是網(wǎng)絡(luò)中任意兩個(gè)計(jì)算機(jī)之間連接要求的集合)預(yù)計(jì)要產(chǎn)生它的輸出,即一個(gè)調(diào)度表,所需要的時(shí)間的量。為完成這個(gè)任務(wù),調(diào)度邏輯調(diào)度對(duì)生成調(diào)度表具有最多時(shí)間要求的可用資源。這個(gè)說(shuō)明中描述的特定的調(diào)度邏輯在這里也被稱(chēng)作表觀關(guān)鍵資源或ACR調(diào)度邏輯,它反映了該操作的以下特性(1)估計(jì)在調(diào)度表的各點(diǎn)具有最高要求的資源和(2)賦予具有最高要求的資源優(yōu)先權(quán)。本說(shuō)明書(shū)中特別描述的調(diào)度邏輯被稱(chēng)為ACR調(diào)度邏輯。在這一點(diǎn)上,在優(yōu)選實(shí)施例中,一旦一個(gè)特定的任務(wù)被調(diào)度了,它不被移出調(diào)度表以在調(diào)度表中尋求它的替代者,調(diào)度邏輯在這個(gè)意義上說(shuō)是不重復(fù)的。正是這個(gè)品質(zhì)使得調(diào)度邏輯的優(yōu)先ACR調(diào)度邏輯類(lèi)型非常適合于實(shí)時(shí)應(yīng)用。
在調(diào)度邏輯的網(wǎng)絡(luò)通信調(diào)度應(yīng)用中,考慮到了發(fā)射資源和接收資源的存在。每次調(diào)度網(wǎng)絡(luò)通信,一個(gè)發(fā)射資源總是與一個(gè)接收資源相連。
在這個(gè)網(wǎng)絡(luò)通信調(diào)度中,主調(diào)度器和成員節(jié)點(diǎn)各有其責(zé)。
圖1表示了一般單元和在散布的網(wǎng)絡(luò)中的不同的一般單元之間的關(guān)聯(lián)數(shù)據(jù)流的數(shù)據(jù)流示意圖130,并且顯示了一個(gè)消息載體100,第一個(gè)成員節(jié)點(diǎn)107和第二個(gè)成員節(jié)點(diǎn)108,一個(gè)用來(lái)經(jīng)由數(shù)據(jù)信道101和數(shù)據(jù)信道102協(xié)調(diào)成員節(jié)點(diǎn)107,108之間的通信的主調(diào)度器106,用于獲得成員節(jié)點(diǎn)107,108之間的同步的時(shí)鐘選擇(如時(shí)鐘109,和備選時(shí)鐘110)(經(jīng)由數(shù)據(jù)信道104,數(shù)據(jù)信道105,數(shù)據(jù)信道101,和數(shù)據(jù)信道102),以及初始數(shù)據(jù)表和在這個(gè)散布的計(jì)算環(huán)境中有效交互作用所需的交換(經(jīng)由經(jīng)由數(shù)據(jù)信道118,數(shù)據(jù)信道117,數(shù)據(jù)信道119,數(shù)據(jù)信道120,和數(shù)據(jù)信道121)。
時(shí)鐘109被通過(guò)消息載體從主調(diào)度器分配給成員節(jié)點(diǎn)(或者,消息載體100也能將備選時(shí)鐘110分配給成員節(jié)點(diǎn)107,108和主調(diào)度器106)。這就允許所有連在消息載體上的成員節(jié)點(diǎn)共有一個(gè)共同的時(shí)間表觀。在這一點(diǎn)上,時(shí)鐘109代表了一個(gè)環(huán)繞物理的地球(如在北美,在歐洲,以及在亞洲)使用的全局的時(shí)鐘,而備選時(shí)鐘110則代表為網(wǎng)絡(luò)設(shè)計(jì)的僅被消息載體100應(yīng)用的時(shí)鐘,另一方面,由一臺(tái)計(jì)算機(jī)擔(dān)任消息載體100的情況為散布的網(wǎng)絡(luò)中與之相連的計(jì)算機(jī)任意地定義時(shí)間。時(shí)鐘109或時(shí)鐘110對(duì)應(yīng)地經(jīng)由連結(jié)104或105周期性地輸出公共時(shí)鐘信號(hào)。
各成員節(jié)點(diǎn)107,108負(fù)責(zé)接收公共時(shí)鐘信號(hào);有效地與該公共時(shí)鐘信號(hào)“同步”(用相應(yīng)的公共時(shí)鐘信號(hào)的時(shí)間定義將節(jié)點(diǎn)的時(shí)間定義校準(zhǔn)到一個(gè)很小的公差內(nèi),用以根據(jù)與已建立的時(shí)鐘頻率和固定點(diǎn)同步的操作創(chuàng)造系統(tǒng)時(shí)間);從主調(diào)度器106接收適當(dāng)?shù)漠?dāng)?shù)厥录?14,116;根據(jù)接收到的當(dāng)?shù)厥录?16,114和任何在當(dāng)?shù)厥录?14,116種沒(méi)有描述的附加任務(wù)制定相應(yīng)的任務(wù)執(zhí)行表;執(zhí)行任務(wù)執(zhí)行表;產(chǎn)生通信請(qǐng)求表113,115;并且向主調(diào)度器106發(fā)送該任務(wù)執(zhí)行表。各成員節(jié)點(diǎn)107,108根據(jù)需要節(jié)點(diǎn)107,108的任務(wù)產(chǎn)生連接請(qǐng)求表113,115,并且在前述時(shí)間通過(guò)消息載體100將這些請(qǐng)求傳遞給主調(diào)度器106。主調(diào)度器106將從成員節(jié)點(diǎn)來(lái)的連接請(qǐng)求表113,115結(jié)合起來(lái)放進(jìn)綜合請(qǐng)求表111,它被用來(lái)產(chǎn)生總事件表112所代表的通信調(diào)度表。然后這個(gè)總事件表112被分成能應(yīng)用于各成員節(jié)點(diǎn)107,108的片段并通過(guò)消息載體100(也在前述時(shí)間)傳送給成員節(jié)點(diǎn)107,108以存儲(chǔ)進(jìn)當(dāng)?shù)厥录?14,116。當(dāng)?shù)厥录?14,116被成員節(jié)點(diǎn)用于對(duì)合適的時(shí)間相關(guān)任務(wù),包括與其它成員節(jié)點(diǎn)的通信,的時(shí)間控制。
圖2描述了散布的計(jì)算單元網(wǎng)絡(luò)220,它們分布在全世界物理上不同的位置上,它顯示了圖1的數(shù)據(jù)流圖130所提出的情況的一個(gè)例子。這個(gè)圖包括計(jì)算機(jī)201-214和兩個(gè)時(shí)間源構(gòu)成的網(wǎng)絡(luò),這兩個(gè)時(shí)間源是代表相應(yīng)于時(shí)間流圖的時(shí)鐘109,110的時(shí)鐘203和時(shí)鐘204;在這一點(diǎn)上,圖2顯示了時(shí)鐘203作為北美和歐亞的所有系統(tǒng)時(shí)間定義的基準(zhǔn),而時(shí)鐘214則為小于全球分布的位于非洲的計(jì)算機(jī)206,207,208,209和214的主機(jī)確定一個(gè)時(shí)間定義基準(zhǔn)。這里要注意時(shí)鐘203“圖示”了圖1的數(shù)據(jù)流圖流程中的時(shí)鐘109,而時(shí)鐘214“圖示”了圖1的數(shù)據(jù)流圖流程中的時(shí)鐘110。在圖2里描繪了散布的計(jì)算環(huán)境的兩種可能形式(有助于聯(lián)合的消息載體100,主調(diào)度器106和時(shí)鐘104,105)。散布的計(jì)算環(huán)境可能被局限于一個(gè)地理上有限的區(qū)域,或者散布于全世界。當(dāng)散布于大的地理區(qū)域時(shí),時(shí)鐘203可能是一個(gè)衛(wèi)星時(shí)間分配系統(tǒng),如全球定位系統(tǒng)。
圖3表示了一個(gè)總線結(jié)構(gòu)330的網(wǎng)絡(luò)示意圖。圖3顯示了圖1中的基本部分,只不過(guò)消息載體100是一個(gè)將成員節(jié)點(diǎn)107,108與主調(diào)度器106相連的總線300。
圖4顯示了一個(gè)分散的計(jì)算環(huán)境,其中網(wǎng)絡(luò)被布置成環(huán)形布局430。圖4顯示了圖1中的基本部分,只不過(guò)消息載體100是由有效地將成員節(jié)點(diǎn)107,108與主調(diào)度器106連接起來(lái)的弧402,403,405和401構(gòu)成的環(huán)形。
圖5表示了轉(zhuǎn)換星形布局530的網(wǎng)絡(luò)示意圖,它是優(yōu)先的網(wǎng)絡(luò)體系結(jié)構(gòu)實(shí)施例。圖5也顯示了圖1中的基本部分,只不過(guò)消息載體100明顯地是一個(gè)布置成星形布局的轉(zhuǎn)換網(wǎng)絡(luò),這種布局將成員節(jié)點(diǎn)107,108與主調(diào)度器106連接起來(lái),并且主調(diào)度器106是包含在網(wǎng)絡(luò)交換器501內(nèi)部的。這個(gè)示意圖顯示了優(yōu)先的實(shí)施例,因?yàn)樗芡ㄟ^(guò)可能在地理上分散布置的大量輸入/輸出處理裝置和計(jì)算平臺(tái)被用于大型制造過(guò)程(用于在一個(gè)設(shè)備中完成物質(zhì)制造的制造過(guò)程,這個(gè)設(shè)備的可移動(dòng)部件用來(lái)自一個(gè)計(jì)算機(jī)控制系統(tǒng)的控制信號(hào)實(shí)現(xiàn)實(shí)時(shí)變更,這個(gè)系統(tǒng)執(zhí)行從設(shè)備讀取量度數(shù)據(jù)和輸出控制信號(hào)的邏輯)。這個(gè)星形布局網(wǎng)絡(luò)530能夠?yàn)閷?shí)施制造過(guò)程而通過(guò)I/O(輸入信號(hào)/輸出信號(hào))接口510,I/O接口522,I/O接口519,I/O接口512,I/O接口513,I/0接口520,I/O接口521對(duì)相應(yīng)的設(shè)備讀取測(cè)量數(shù)據(jù)和輸出控制信號(hào)。I/O接口510,I/O接口511,I/O接口512,和I/O接口513都經(jīng)環(huán)引出口508和環(huán)引出口509通過(guò)局域網(wǎng)515與控制計(jì)算機(jī)504和記錄計(jì)算機(jī)505相連。以類(lèi)似的方式,I/O接口522,I/O接口519,I/O接口520,和I/O接口521都經(jīng)環(huán)引出口518和環(huán)引出口517通過(guò)局域網(wǎng)514與控制計(jì)算機(jī)506和記錄計(jì)算機(jī)507相連。I/O接口510,I/O接口511,I/O接口512,I/O接口513,環(huán)引出口508,環(huán)引出口509,控制計(jì)算機(jī)504,記錄計(jì)算機(jī)505和局域網(wǎng)515以局域邏輯的整體性和高度的實(shí)時(shí)數(shù)據(jù)邏輯的內(nèi)聚性運(yùn)行。以類(lèi)似的方式,I/O接口522,I/O接口519,I/O接口520,和I/O接口521,環(huán)引出口518,環(huán)引出口517,控制計(jì)算機(jī)506,記錄計(jì)算機(jī)507和局域網(wǎng)514以局域邏輯的整體性和高度的實(shí)時(shí)數(shù)據(jù)邏輯的內(nèi)聚性運(yùn)行。網(wǎng)絡(luò)交換器501使得(a)I/O接口510,I/O接口511,I/O接口512,I/O接口513,環(huán)引出口508,環(huán)引出口509,控制計(jì)算機(jī)504,記錄計(jì)算機(jī)505和局域網(wǎng)515和(b)I/O接口522,I/O接口519,I/O接口520,和I/O接口521,環(huán)引出口518,環(huán)引出口517,控制計(jì)算機(jī)506,記錄計(jì)算機(jī)507和局域網(wǎng)514之間的內(nèi)聚性能夠發(fā)送,這個(gè)網(wǎng)絡(luò)交換器實(shí)施(1)給計(jì)算機(jī)中提供實(shí)時(shí)中的一個(gè)時(shí)刻的完全一致的數(shù)據(jù)邏輯表象的通信;(2)在計(jì)算機(jī)506,記錄計(jì)算機(jī)507,控制計(jì)算機(jī)504,記錄計(jì)算機(jī)505,用戶(hù)接口503中任意兩各之間經(jīng)使用網(wǎng)絡(luò)交換器501的各次通信示例發(fā)生的時(shí)間內(nèi),為控制計(jì)算機(jī)506,記錄計(jì)算機(jī)507,控制計(jì)算機(jī)504,記錄計(jì)算機(jī)505,用戶(hù)接口503,網(wǎng)絡(luò)支持502,和網(wǎng)絡(luò)交換器501確定各個(gè)時(shí)刻的主調(diào)度器106的程序;(3)在為通信示例確定的時(shí)間對(duì)該通信示例所涉及的部件適時(shí)地發(fā)送、接收和鏈接任務(wù)。作為單一的信息源,網(wǎng)絡(luò)支持502確定星形布局530中可接受的通信伙伴,也累計(jì)并向星形布局530中的診斷信號(hào)提供訪問(wèn),它被作為一個(gè)節(jié)點(diǎn)與轉(zhuǎn)換星形布局530協(xié)同。網(wǎng)絡(luò)交換器501參考網(wǎng)絡(luò)支持502列出星形布局530中可接受的通信伙伴并確認(rèn)那些在確定發(fā)送接收和鏈接任務(wù)時(shí)有悖于該列表的通信示例需要。
在一個(gè)實(shí)施例中,I/O接口522,I/O接口519,I/O接口520,和I/O接口521很容易由一個(gè)如美國(guó)專(zhuān)利第5,555,424(24Sederlund等)所描述的進(jìn)程控制系統(tǒng)來(lái)實(shí)現(xiàn)。這個(gè)于1996年9月10日授權(quán)的專(zhuān)利授予Sederlund,Edward R.;Lindesmith,RobertJ.;Root,Larry A.;Dupree,Wayne P.;和Thomas,Lowell V.的“具有可編址增量的擴(kuò)展的哈佛體系結(jié)構(gòu)計(jì)算機(jī)存儲(chǔ)系統(tǒng)”。在這里特地將此專(zhuān)利引用合并于本應(yīng)用中以顯示獲得和使用本發(fā)明的方法。
在一個(gè)更優(yōu)先的實(shí)施例中,I/O接口522,I/O接口519,I/O接口520,和I/O接口521很容易經(jīng)由在一個(gè)使用兩臺(tái)進(jìn)程控制計(jì)算機(jī)(如24Sederlund等所描述的進(jìn)程控制計(jì)算機(jī))的一般的進(jìn)程控制系統(tǒng)中的一個(gè)冗余進(jìn)程控制計(jì)算機(jī)系統(tǒng),如美國(guó)專(zhuān)利第5,583,757(Baca,Jr.等)所描述的系統(tǒng)來(lái)實(shí)現(xiàn),這個(gè)于1996年12月10日授權(quán)的專(zhuān)利授予Baca,Jr.Eloy;Dupree,Wayne P.;Grinwis,DonaldJ.;Kanse,Johannes C.;Pelletier,Douglas P.;和Schlze,Oscar E.的“用于動(dòng)態(tài)冗余進(jìn)程控制計(jì)算機(jī)的輸入信號(hào)分辨方法”。在這里特地將此專(zhuān)利引用合并于本應(yīng)用中以顯示獲得和使用本發(fā)明的方法。
于1996年10月22日授權(quán)的美國(guó)專(zhuān)利5,568,615(15Sederlund等)授予了Sederlund,Edward R.;Thomas,NadeneT.;Lindesmith,Robert J.;和Cowles,Russel W.的“用于進(jìn)程控制計(jì)算機(jī)的Stealth接口”,其中描述了一個(gè)用于24Sederlund等所描述的進(jìn)程控制計(jì)算機(jī)獲得數(shù)據(jù)訪問(wèn)的一個(gè)實(shí)施例。在這里特地將此專(zhuān)利引用合并于本應(yīng)用中以顯示獲得和使用本發(fā)明的方法。
于1995年6月27日授權(quán)的美國(guó)專(zhuān)利5,428,769(69Glaser等)授予Glaser,Robert S.;Hoy,Robert S.;Fernandez,G.Paul;和Grai,和Timothy J.的“有三重冗余遠(yuǎn)場(chǎng)單元的進(jìn)程控制接口系統(tǒng)”,其中描述了一個(gè)與24Sederlund等所描述的進(jìn)程控制計(jì)算機(jī)一起使用的提供遠(yuǎn)場(chǎng)單元的系統(tǒng)的一個(gè)實(shí)施例。在這里特地將此專(zhuān)利引用合并于本應(yīng)用中以顯示獲得和使用本發(fā)明的方法。
于1992年9月29日授權(quán)的美國(guó)專(zhuān)利5,151,866(66Glaser等)授予Glaser,R.Steven和Bade,Jeffrey M.的“高速功率分析”,其中描述了一個(gè)與69Glaser等所描述的遠(yuǎn)場(chǎng)單元一起使用的提供用來(lái)讀取功率分配系統(tǒng)中電流的接口的系統(tǒng)的一個(gè)實(shí)施例。在這里特地將此專(zhuān)利引用合并于本應(yīng)用中以顯示獲得和使用本發(fā)明的方法。
在以下美國(guó)專(zhuān)利中
(a)于1996年5月21日授權(quán)的授予Allbery,Jr.,James D.;Troisi,Peter.,A.;Johnson,Susan J.;Cullen,James H.;Butler,Richard L.;Ferreira,James P.;Ellison,Joseph;Patel,Chiman L.;Uban,James E.;和Schultz,DaleH.的“能對(duì)相應(yīng)數(shù)據(jù)系列進(jìn)行的時(shí)間校準(zhǔn)的智能進(jìn)程控制通信系統(tǒng)和方法”的美國(guó)專(zhuān)利5,519,603(Allbery,Jr.
等);(b)于1995年6月27日授權(quán)的授予Bruijn,RonnyP.;Verboven,Marc L.K.;van Weele,Leonardus A.;Vermeire,Roger R.;Schultz,Oscar E.;Schultz,Dale H.;和Bell,Brian G.的“使用新隨機(jī)數(shù)的用于在通信時(shí)間期限結(jié)束之前重新建立第一臺(tái)和第二臺(tái)計(jì)算機(jī)之間限時(shí)通信的安全通信系統(tǒng)”的美國(guó)專(zhuān)利5,428,745(45de Bruijn,等);和(c)于1996年10月1日授權(quán)的授予de Bruijn,Ronney P.;van Weele,Leonardus A.;Verboven,Marc L.K.;Vermeire,Roger R.;Schultz,Oscar E.;Bell,Brian G.和Schultz,Dale H.的“靠檢查與命令中可變的標(biāo)識(shí)符相聯(lián)系的允許指示器的狀態(tài)來(lái)決定是否發(fā)出命令來(lái)控制計(jì)算機(jī)的系統(tǒng)與方法”的美國(guó)專(zhuān)利5,561,770(70de Bruijn,等);描述了一個(gè)與冗余進(jìn)程控制計(jì)算機(jī)系統(tǒng)一起使用的提供高速路由的系統(tǒng)的實(shí)施例。
在這里特地將這些專(zhuān)利引用合并于本應(yīng)用中以顯示獲得和使用本發(fā)明的方法。
于1997年5月20日授權(quán)的美國(guó)專(zhuān)利5,631,825(van Weele等)授予van Weele,Leonardus A.;de Bruijn,Ronney P.;Vermeire,Roger R.;Zemiering,Christo;和Lenting,Ben的“用于制造進(jìn)程控制系統(tǒng)的操作站”,其中描述了一個(gè)與冗余進(jìn)程控制計(jì)算機(jī)系統(tǒng)和上述專(zhuān)利中描述的接口一起使用的提供面向人類(lèi)的接口的系統(tǒng)的實(shí)施例。在這里特地將此專(zhuān)利引用合并于本應(yīng)用中以顯示獲得和使用本發(fā)明的方法。盡管這個(gè)面向人類(lèi)的接口可以被I/O接口522,I/O接口519,I/O接口520,和I/O接口521中的每個(gè)或任意一個(gè)作為用戶(hù)接口使用,還是應(yīng)該注意到在轉(zhuǎn)換星形布局530的特例中,用戶(hù)接口503是優(yōu)先為經(jīng)網(wǎng)絡(luò)交換器501到整套系統(tǒng)的接口設(shè)計(jì)的。
(a)于1996年2月13日授權(quán)的授予Pressnall,Dana W.;Polishak,Jeffery T.;Felix,Bradley K.;Durisin,Michael J.;和Ellison,Joseph的“用于動(dòng)態(tài)冗余計(jì)算機(jī)化進(jìn)程控制的信息顯示系統(tǒng)”的美國(guó)專(zhuān)利5,491,625(Pressnall等)和(b)于1995年4月18日授權(quán)的授予Van de Lavior,Ronny;Follon,Marinus(Neerpelt,BE);和Ravenscroft,Ian的“用于動(dòng)態(tài)冗余計(jì)算機(jī)化進(jìn)程控制的信息顯示系統(tǒng)”的美國(guó)專(zhuān)利5,408,603(Van de Lavior等)中描述了一個(gè)對(duì)在上述系統(tǒng)中執(zhí)行的應(yīng)用程序代碼提供實(shí)時(shí)解釋的系統(tǒng)的實(shí)施例。在這里特地將此專(zhuān)利引用合并于本應(yīng)用中以顯示獲得和使用本發(fā)明的方法。
一個(gè)提供面對(duì)人類(lèi)的接口的大型圖形總覽系統(tǒng)與操作站一起被應(yīng)用于這個(gè)優(yōu)選實(shí)施例中。于1998年3月10日授權(quán)的授予John L.Clement的美國(guó)專(zhuān)利5,726,668(Clement)中描述了這個(gè)大型圖形總覽系統(tǒng)。在這里特地將此專(zhuān)利引用合并于本應(yīng)用中以顯示獲得和使用本發(fā)明的方法。
在一個(gè)概念化的最優(yōu)先的實(shí)施例中,用一個(gè)由Wayne Dupree,Jeffery Lucas,Larry Root,Gerrit Verniers,和Stephen Churchill于1997年2月12日存檔的名為“一個(gè)專(zhuān)用流程循環(huán)(Context-Cycling)的計(jì)算機(jī)”的08/797,967號(hào)美國(guó)專(zhuān)利申請(qǐng)中描述的專(zhuān)用流程循環(huán)計(jì)算機(jī),I/O接口510,I/O接口511,I/O接口522,I/O接口519,I/O接口512,I/O接口513,I/O接口520,I/O接口521,環(huán)引出口508,環(huán)引出口509,控制計(jì)算機(jī)504,記錄計(jì)算機(jī)505,環(huán)引出口518,環(huán)引出口517,控制計(jì)算機(jī)506,記錄計(jì)算機(jī)507,I/O接口522,I/O接口519,I/O接口520,I/O接口52l,環(huán)引出口518,環(huán)引出口517,控制計(jì)算機(jī)506,網(wǎng)絡(luò)支持502,網(wǎng)絡(luò)交換器501,記錄計(jì)算機(jī)507相繼被使用。這個(gè)專(zhuān)用流程循環(huán)計(jì)算機(jī)帶有提供與場(chǎng)檢測(cè)儀的接口的69Glaser等的系統(tǒng)。在這里特地將此專(zhuān)利應(yīng)用引用合并于本應(yīng)用中以顯示獲得和使用本發(fā)明的方法。
這個(gè)流程循環(huán)處理器向大量和不同的輸入輸出回路提供指定回路,各指定回路至少擁有一個(gè)專(zhuān)用記錄器以在另一個(gè)流程處于當(dāng)前狀態(tài)時(shí)保持與回路或功能相關(guān)的有關(guān)資源、屬性、或外觀的進(jìn)程和配置狀態(tài);還提供指定回路和根據(jù)一個(gè)流程建立電路系統(tǒng)的專(zhuān)用記錄器的組合。流程也包括特定用于電路系統(tǒng)的相關(guān)邏輯。多個(gè)流程在CPU中共享公共資源。
于1997年8月5日授權(quán)的美國(guó)專(zhuān)利5,655,133(Dupree等)授予Dupree,Wayne P.;Churchill,Stephen G.;Gallant Jeffery R.;Root,Larry A.;Bressette,William J.;Orr,Ⅲ,Robert A.;Ramaswamy,Srikala;Lucas,Jeffery A.;和Bleck,James的“大規(guī)模超純量哈佛體系結(jié)構(gòu)的計(jì)算機(jī)”,其中描述了與組織程序循環(huán)計(jì)算機(jī)共同使用的需要的協(xié)處理器。在這里特地將此專(zhuān)利引用合并于本應(yīng)用中以顯示獲得和使用本發(fā)明的優(yōu)先期望的方法。網(wǎng)絡(luò)交換器501也優(yōu)先使用能實(shí)施至少99個(gè)平行或連續(xù)通信鏈接的縱橫接線器(Xbar)516。
在網(wǎng)絡(luò)交換器501中使用主調(diào)度器106來(lái)提供公共時(shí)鐘信號(hào)(即時(shí)鐘109的取數(shù)或時(shí)鐘110的顯示),并且還負(fù)責(zé)時(shí)鐘信號(hào)分配;從各成員節(jié)點(diǎn)107,108(在網(wǎng)絡(luò)530的這個(gè)特例中,控制計(jì)算機(jī)506,記錄計(jì)算機(jī)507,控制計(jì)算機(jī)504,記錄計(jì)算機(jī)505,用戶(hù)接口503,網(wǎng)絡(luò)支持502和網(wǎng)絡(luò)交換器501都是圖1中數(shù)據(jù)流流程中的成員節(jié)點(diǎn)107和108的例子)收集請(qǐng)求;為各成員節(jié)點(diǎn)107,108調(diào)度通信任務(wù);向各成員節(jié)點(diǎn)107,108發(fā)送調(diào)度表;以及實(shí)施成員節(jié)點(diǎn)107,108之間的連接。
分配一個(gè)共用時(shí)鐘信號(hào)的目的是使網(wǎng)絡(luò)530上的各節(jié)點(diǎn)108,107具有對(duì)時(shí)間的相同理解。具有對(duì)時(shí)間的相同理解在本發(fā)明是至關(guān)重要的,因?yàn)槿蝿?wù)的調(diào)度是基于時(shí)間進(jìn)行的。因此,共用時(shí)鐘信號(hào)用來(lái)有效地將所有節(jié)點(diǎn)108,107同步到共用時(shí)間。在預(yù)定周期的基礎(chǔ)上,網(wǎng)絡(luò)交換器501中的主調(diào)度器106發(fā)送一個(gè)消息給節(jié)點(diǎn)108,107中的每一個(gè)以確定時(shí)間周期的開(kāi)始。
每個(gè)調(diào)度周期從各成員節(jié)點(diǎn)107,108(控制計(jì)算機(jī)506,記錄計(jì)算機(jī)507,控制計(jì)算機(jī)504,記錄計(jì)算機(jī)505,用戶(hù)接口503,網(wǎng)絡(luò)支持502和網(wǎng)絡(luò)交換器501中的任意一個(gè))收集一次連接請(qǐng)求。各調(diào)度周期網(wǎng)絡(luò)交換器501中的主調(diào)度器106都留出時(shí)間來(lái)接收來(lái)自各成員節(jié)點(diǎn)107,108(控制計(jì)算機(jī)506,記錄計(jì)算機(jī)507,控制計(jì)算機(jī)504,記錄計(jì)算機(jī)505,用戶(hù)接口503,網(wǎng)絡(luò)支持502和網(wǎng)絡(luò)交換器501中的任意一個(gè))的連接請(qǐng)求。通信請(qǐng)求來(lái)自于需要被請(qǐng)求的通信的成員節(jié)點(diǎn)107,108。網(wǎng)絡(luò)交換器501中的主調(diào)度器106接收每個(gè)請(qǐng)求并在其調(diào)度邏輯中考慮這些請(qǐng)求。每個(gè)請(qǐng)求都包含通信的源、目標(biāo)和長(zhǎng)度方面的信息。另外,各請(qǐng)求還可能包含優(yōu)先級(jí)指示符和向在目標(biāo)節(jié)點(diǎn)上執(zhí)行的特定應(yīng)用發(fā)送其信息所需的信息。當(dāng)從所有的成員節(jié)點(diǎn)107,108收集連接請(qǐng)求的任務(wù)完成以后,其結(jié)果被收集進(jìn)一個(gè)綜合請(qǐng)求表111。注意在綜合請(qǐng)求表111入口可能在網(wǎng)絡(luò)交換器501中的主調(diào)度器106內(nèi)部初始化其本身;特定的連接請(qǐng)求也可能具有重復(fù)特性,例如由單一信號(hào)在未來(lái)一系列時(shí)間周期里引起多次連接。
然后網(wǎng)絡(luò)交換器501中的主調(diào)度器106調(diào)度未來(lái)將發(fā)生的通信。雖然在本說(shuō)明中討論的表觀關(guān)鍵資源是優(yōu)先的方法,但在時(shí)間確定網(wǎng)絡(luò)的功能中為執(zhí)行通信調(diào)度所使用的方法并不是決定性的。邏輯給需要的通信分配時(shí)間??梢杂靡韵氯N方式?jīng)Q定在調(diào)度周期中何時(shí)停止調(diào)度過(guò)程第一,所有可被調(diào)度的通信請(qǐng)求都已經(jīng)被調(diào)度,因此不存在剩余的調(diào)度任務(wù);第二,沒(méi)有剩余的執(zhí)行調(diào)度的時(shí)間(處理器必須停止調(diào)度過(guò)程以繼續(xù)它的下一個(gè)任務(wù));第三,存在多于在可用的調(diào)度窗口里所能調(diào)度的所需連接(帶寬耗盡),在這種情況下過(guò)剩的請(qǐng)求被保持在隊(duì)列中等待下次調(diào)度嘗試。
發(fā)生的調(diào)度被存進(jìn)總事件表112。這個(gè)總事件表112除了包含與綜合請(qǐng)求表111中同樣的信息之外,還包含已調(diào)度的通信的起始時(shí)間621。注意,可能總事件表112中預(yù)先裝載了一定的任務(wù)以繞過(guò)調(diào)度過(guò)程,正如增強(qiáng)任務(wù)的特時(shí)間確定間調(diào)度需求所需要的那樣。
然后網(wǎng)絡(luò)交換器501中的主調(diào)度器106向各相應(yīng)的成員節(jié)點(diǎn)傳遞當(dāng)?shù)厥录?14,116(調(diào)度表的一部分,它適合于特定的成員節(jié)點(diǎn)107,108)。出現(xiàn)在總事件表112中的以成員節(jié)點(diǎn)107,108作為源或目標(biāo)的各個(gè)事件都在當(dāng)?shù)厥录?14,116存在入口。任何一個(gè)涉及任意通信的成員節(jié)點(diǎn)107,108(控制計(jì)算機(jī)506,記錄計(jì)算機(jī)507,控制計(jì)算機(jī)504,記錄計(jì)算機(jī)505,用戶(hù)接口503,網(wǎng)絡(luò)支持502和網(wǎng)絡(luò)交換器501中的任意一個(gè))接收它的當(dāng)?shù)厥录?14,116。
然后網(wǎng)絡(luò)交換器501中的主調(diào)度器106根據(jù)出現(xiàn)在總事件表112中的被分配的時(shí)間實(shí)施連接。當(dāng)使用無(wú)阻塞轉(zhuǎn)換的優(yōu)選實(shí)施例時(shí),這些連接的過(guò)程導(dǎo)致可能出現(xiàn)多個(gè)連接同時(shí)被實(shí)施的情況。
位于網(wǎng)絡(luò)交換器501中的主調(diào)度器106中的綜合請(qǐng)求表111可能包含沒(méi)有臨時(shí)改變地實(shí)施連續(xù)的重復(fù)連接,或者動(dòng)態(tài)需要的連接(當(dāng)需要時(shí)才實(shí)施,通常由網(wǎng)絡(luò)上的一個(gè)節(jié)點(diǎn)提出需要)。這個(gè)連接請(qǐng)求表至少包含一個(gè)源指示符、一個(gè)目標(biāo)指示符和一個(gè)時(shí)長(zhǎng)指示符(見(jiàn)顯示記錄細(xì)節(jié)600的圖6)。另外的與調(diào)度相關(guān)的參數(shù)選擇性地包括如優(yōu)先級(jí)指示符617這樣的指示符。
圖6顯示了用于調(diào)度和任務(wù)協(xié)調(diào)過(guò)程的原始表和信息的組合600。連接請(qǐng)求表115在成員節(jié)點(diǎn)107,108中和當(dāng)網(wǎng)絡(luò)交換器501中的主調(diào)度器106中在結(jié)合成綜合請(qǐng)求表111時(shí),均具有源614,目標(biāo)615,長(zhǎng)度616和可能的優(yōu)先級(jí)617的區(qū)域610。在主調(diào)度器106中的調(diào)度器邏輯611使用這些區(qū)域610中的數(shù)據(jù)以帶有區(qū)域612的總事件表112的形式來(lái)為個(gè)次連接的源618,目標(biāo)619,長(zhǎng)度620和起始時(shí)間621構(gòu)造調(diào)度表。注意調(diào)度器邏輯611從連接請(qǐng)求表111中提取源614,目標(biāo)615和長(zhǎng)度616,盡管起始時(shí)間621是調(diào)度過(guò)程本身的產(chǎn)物。
當(dāng)?shù)厥录?14,116只是總事件表112的簡(jiǎn)單的子系,總事件表112被分成那些可應(yīng)用于相應(yīng)的成員節(jié)點(diǎn)107,108(控制計(jì)算機(jī)506,記錄計(jì)算機(jī)507,控制計(jì)算機(jī)504,記錄計(jì)算機(jī)505,用戶(hù)接口503,網(wǎng)絡(luò)支持502和網(wǎng)絡(luò)交換器501中的任意一個(gè))的部分-不需要對(duì)區(qū)域613做任何操作。虛擬通道601,602,603,606,607和608顯示了從連接請(qǐng)求表區(qū)域610到當(dāng)?shù)厥录韰^(qū)域613的信息流。虛擬通道604顯示了調(diào)度表的優(yōu)先級(jí)617的輸入;虛擬通道609顯示了從調(diào)度器邏輯611傳遞來(lái)的起始時(shí)間621,625。
然后調(diào)度器邏輯611用這些數(shù)據(jù)得出調(diào)度表以提供需要的連接。調(diào)度器邏輯611的調(diào)度過(guò)程的結(jié)果被記錄在總事件表112中,總事件表又轉(zhuǎn)而被進(jìn)行句法分進(jìn)入相應(yīng)的當(dāng)?shù)厥录?16中以分配給網(wǎng)絡(luò)節(jié)點(diǎn)(見(jiàn)圖1)。這些事件表包括源622,目標(biāo)623,時(shí)長(zhǎng)624和起始時(shí)間625的區(qū)域613。
在網(wǎng)絡(luò)節(jié)點(diǎn)中,當(dāng)?shù)厥录?14,116與當(dāng)?shù)厝蝿?wù)表合并在一起并且執(zhí)行邏輯以確保能完成所有要做的工作和所有對(duì)應(yīng)于(或與之無(wú)沖突)被調(diào)度器邏輯611指定的時(shí)間調(diào)度。
圖7概述了一般的調(diào)度過(guò)程710。在預(yù)定的請(qǐng)求接收周期內(nèi)收集連接請(qǐng)求。經(jīng)過(guò)預(yù)定的時(shí)間周期后,必須處理大量的連接請(qǐng)求。更多的連接不被禁止,但必須建立一個(gè)截?cái)帱c(diǎn)。圖7顯示了在網(wǎng)絡(luò)交換器501中的主調(diào)度器106中的調(diào)度連接請(qǐng)求所需要的基本步驟。前三步701-703為所有節(jié)點(diǎn)提供校準(zhǔn)的時(shí)間定義。在步驟704中,從所有成員節(jié)點(diǎn)107,108(這些節(jié)點(diǎn)在它們的當(dāng)?shù)厝蝿?wù)調(diào)度表預(yù)定的時(shí)刻從優(yōu)先的操作發(fā)送它們的請(qǐng)求作為一次通信)接收連接請(qǐng)求。在步驟705中,當(dāng)調(diào)度過(guò)程應(yīng)用于那些在表示結(jié)束的特殊的時(shí)間段窗口中從成員節(jié)點(diǎn)107,108收集到的那些請(qǐng)求時(shí),連接請(qǐng)求過(guò)程停止以便能為未來(lái)確定調(diào)度表。一旦請(qǐng)求已被收集(詳見(jiàn)圖8),調(diào)度連接請(qǐng)求的步驟706就可以開(kāi)始。步驟707中,一旦完成了該調(diào)度,就從總事件表112中抽取適當(dāng)?shù)牟糠謩?chuàng)建當(dāng)?shù)厥录?14,116,然后在步驟708中傳遞給節(jié)點(diǎn)107,108以備在步驟709中實(shí)施。
一般對(duì)于散布的計(jì)算環(huán)境,節(jié)點(diǎn)107,108之間可能在任何時(shí)刻需要連接,這意味著連接請(qǐng)求可能開(kāi)始于任何時(shí)刻,并且必須允許一些處理這些連接的服務(wù)時(shí)間。存在四個(gè)過(guò)程,并在網(wǎng)絡(luò)530中以與想要的響應(yīng)一致的速度重復(fù)執(zhí)行收集連接請(qǐng)求,調(diào)度連接請(qǐng)求,向網(wǎng)絡(luò)節(jié)點(diǎn)分配產(chǎn)生的調(diào)度表,通過(guò)網(wǎng)絡(luò)530經(jīng)已建立的所需連接通信(見(jiàn)表1)。
表1-四個(gè)調(diào)度過(guò)程
表2顯示了這四個(gè)過(guò)程的時(shí)間關(guān)系,如聲明的那樣,這四個(gè)過(guò)程一直在進(jìn)行。
表2-調(diào)度流程
注意在表2最右側(cè)的列中通信總是發(fā)生在為通信建立基礎(chǔ)的最初幾次重復(fù)之后。對(duì)在一個(gè)時(shí)間段窗口中的任意一個(gè)特定的通信,都要在其前面的時(shí)間段窗口中傳遞被實(shí)施的通信調(diào)度表,而請(qǐng)求在調(diào)度表傳遞之前的時(shí)間段窗口中被調(diào)度,并且還要提出在調(diào)度之前這些請(qǐng)求。在這個(gè)流程中可以存在時(shí)間調(diào)度上的變化,但個(gè)流程這與優(yōu)選實(shí)施例中的流程相似。
當(dāng)前優(yōu)選實(shí)施例中使用的邏輯的設(shè)計(jì)帶有兩個(gè)目的必須得到有效的調(diào)度表,以及產(chǎn)生這個(gè)調(diào)度表所需的循環(huán)數(shù)必須被限制在合理的水平。有效調(diào)度涉及一個(gè)基于以下前提的簡(jiǎn)單過(guò)程,即綜合調(diào)度表的效率首先是一個(gè)有效率的功能使得在該調(diào)度表中資源被盡可能地利用。這意味著在調(diào)度過(guò)程中要一直確保具有最高待執(zhí)行要求的資源得到優(yōu)先調(diào)度。為在可接受的時(shí)間里得到調(diào)度表,邏輯被設(shè)計(jì)成每個(gè)請(qǐng)求被調(diào)度一次并只被調(diào)度一次(嘗試和錯(cuò)誤邏輯被認(rèn)為不可接受),并對(duì)每個(gè)連接請(qǐng)求有有限的處理要求。
如圖8所示,調(diào)度806中的基本過(guò)程如下1)確定衡量資源要求的判據(jù);2)根據(jù)關(guān)鍵性將資源分類(lèi);3)按資源關(guān)鍵性的順序提供在本步驟中所能提供的連接;4)進(jìn)一步完成前面已經(jīng)被處理的任務(wù)因而騰出可用的資源;5)重復(fù)步驟2-4直至所有請(qǐng)求都被處理過(guò)或直至沒(méi)有機(jī)會(huì)處理更多請(qǐng)求為止。
在這個(gè)調(diào)度過(guò)程中,任何不能被處理的請(qǐng)求可以在下一個(gè)調(diào)度過(guò)程中再次被提出。
圖8的流程圖概括了在一個(gè)表觀關(guān)鍵資源的調(diào)度邏輯中使用的過(guò)程。第一步是確定衡量資源使用量的判據(jù)800,對(duì)于本優(yōu)選實(shí)施例,發(fā)送和接收通道就是已調(diào)度的資源,而各資源的使用時(shí)長(zhǎng)就被選為判據(jù)。
一旦確定了資源的使用量,就被按使用量801分類(lèi)。這允許使用最多的資源在步驟802中被首先調(diào)度。當(dāng)所有能被調(diào)度的資源都已被調(diào)度時(shí)(現(xiàn)有請(qǐng)求的連接可能不需要或不允許所有資源的同時(shí)使用),在步驟803中調(diào)度的時(shí)間段窗口前移直至所有可利用的資源全部可用為止。如果還有更多需要處理的連接請(qǐng)求并且在調(diào)度表中還有處理這些請(qǐng)求的時(shí)間,在步驟804決定了對(duì)應(yīng)于對(duì)是否需要一次從步驟801到803的重復(fù)這個(gè)問(wèn)題之后,就回重復(fù)這個(gè)過(guò)程。根據(jù)調(diào)度示例已完成的步驟804的決定,調(diào)度器邏輯的子過(guò)程806進(jìn)行到步驟805退出。
圖9表示了表觀關(guān)鍵資源(ACR)的優(yōu)選實(shí)施例的調(diào)度邏輯的子過(guò)程950的更詳細(xì)的概貌。作為圖8所示過(guò)程的優(yōu)先的實(shí)施,這個(gè)簡(jiǎn)圖圍繞這圖8中提到的步驟并增加了一些條件運(yùn)算和例外處理所需的動(dòng)作。步驟901代表優(yōu)先的ACR過(guò)程的起始點(diǎn)。在步驟902中,建立ACR表,在步驟903中,根據(jù)ACR表中的SAV值(如果該值指示在ACR表中沒(méi)有請(qǐng)求,就立即執(zhí)行步驟918退出)確定未調(diào)度請(qǐng)求的存在。如果存在請(qǐng)求,ACR子過(guò)程950進(jìn)行步驟904計(jì)算窗口大小,步驟905搜尋指定的請(qǐng)求,和步驟906檢查指定的請(qǐng)求和通信雙方的存在。如果該請(qǐng)求和通信雙方存在,該過(guò)程就在進(jìn)行步驟914中下一個(gè)請(qǐng)求之前進(jìn)行步驟912將該事件加入事件表中并在步驟913中調(diào)整ACR路徑。如果步驟915中的高值為零,ACR中(未來(lái))時(shí)間的確定就在步驟916前移,步驟917檢查帶寬以確認(rèn)在這個(gè)調(diào)度運(yùn)行中有足夠的時(shí)間進(jìn)行進(jìn)一步調(diào)度,然后為下一個(gè)請(qǐng)求過(guò)程返回步驟914。如果在步驟906中,通信的接收者不存在,就在步驟907中定義替代接收者并在步驟908中給予評(píng)價(jià)。如果步驟908沒(méi)有定義替代接收者,就在步驟919中選擇一個(gè)替代發(fā)送者并在步驟920中給予評(píng)價(jià);如果可接受(步驟920),步驟921選擇選擇具有最高ACR值的接收者并且過(guò)程返回908;如果不可接受(步驟920),過(guò)程進(jìn)入步驟916。當(dāng)步驟908中定義了替代者時(shí),過(guò)程經(jīng)由步驟909,910和911到912進(jìn)行調(diào)度??紤]一個(gè)對(duì)應(yīng)于表3顯示的一個(gè)包含五個(gè)節(jié)點(diǎn)的假設(shè)網(wǎng)絡(luò)的通信請(qǐng)求的例子,通過(guò)這個(gè)例子可以很好地描述按上述步驟執(zhí)行的虛擬數(shù)據(jù)邏輯過(guò)程。
表3初始請(qǐng)求表
假定長(zhǎng)度是以任意時(shí)間單位測(cè)量的,可能是毫秒,并且有n個(gè)不同的優(yōu)先水平,從1到n,其中1是最緊急的而n是最后的。
首先,注意廣播型網(wǎng)(其中所有交互行為都需要共享帶寬,例如具有命中探測(cè)的載波檢測(cè)多址或CSMA/CD網(wǎng)絡(luò))完成上述請(qǐng)求所需的服務(wù)時(shí)間在理論上最少需要246時(shí)間單位。
無(wú)阻塞交換器的引入允許五個(gè)發(fā)射資源和五個(gè)接收資源同時(shí)運(yùn)行。為分析應(yīng)用無(wú)阻塞交換器的好處,本例的調(diào)度器邏輯首先建立一個(gè)表評(píng)估各資源上的要求,如表4表4初始匯總訪問(wèn)值
總計(jì)的訪問(wèn)值,或SAV,就簡(jiǎn)單地是發(fā)送者(X-表的行)和接收者(R-表的列)的交互作用次數(shù)的行或列的總和,并反映了在特殊資源上的以任意時(shí)間單位量度的要求的總和。注意選用無(wú)阻塞交換器后處理請(qǐng)求所需的理論最小時(shí)間從246時(shí)間單位降到了104時(shí)間單位。由于發(fā)送者3具有最高的SAV,而當(dāng)發(fā)送者3被處理時(shí),其它發(fā)送者通常也可以被處理,所以這些請(qǐng)求的最小服務(wù)時(shí)間受發(fā)送者3制約。當(dāng)理論下限可能為104時(shí)間單位時(shí),實(shí)際最小服務(wù)時(shí)間可能會(huì)較長(zhǎng)并且甚至可能依賴(lài)于連接被處理的次序。但是,下個(gè)目標(biāo)是確定最佳調(diào)度方法以使現(xiàn)有網(wǎng)絡(luò)的能力最大化(最小化所需的服務(wù)時(shí)間)。
對(duì)這個(gè)特殊的例子假設(shè),合成的調(diào)度表應(yīng)用于未來(lái)時(shí)間的時(shí)間段窗口,不論請(qǐng)求的組成和數(shù)量,該窗口都具有150時(shí)間單位時(shí)長(zhǎng)。這個(gè)例子開(kāi)始于為這個(gè)150單位的調(diào)度表查看在時(shí)間=0時(shí)所進(jìn)行的連接。第一個(gè)目標(biāo),由SAV判斷,是調(diào)度那些與發(fā)送者3和接收者1相關(guān)的請(qǐng)求。參照前面的初始請(qǐng)求表,本例的調(diào)度器邏輯找到一個(gè)具有16個(gè)時(shí)間單位時(shí)長(zhǎng)的與發(fā)送者3和接收者1相關(guān)的請(qǐng)求。由于本例的調(diào)度器邏輯正在調(diào)度時(shí)間=0時(shí)的連接,并且本例的調(diào)度器邏輯具有150單位時(shí)長(zhǎng),本例的調(diào)度器邏輯將16字請(qǐng)求放進(jìn)時(shí)間段調(diào)度窗口,并且將交互作用記錄進(jìn)事件表表5。
表5中間事件表
表5可以?xún)?yōu)先地表示成圖10中的圖1001。已調(diào)度的發(fā)送者3單元1002和已調(diào)度的接收者3單元1003表示出已調(diào)度的任務(wù)。
然后請(qǐng)求表一定以某種方式反映最后一個(gè)請(qǐng)求已被處理的事實(shí)。這個(gè)調(diào)整過(guò)的請(qǐng)求表可能類(lèi)似于表6。
表6中間請(qǐng)求表
由于發(fā)送者3和接收者1現(xiàn)在在時(shí)間=0時(shí)被占用,它們的狀態(tài)一定要指出這一點(diǎn),所以更新的SAV表隨之有一些改變,現(xiàn)在可能類(lèi)似于表7。
表7中間匯總訪問(wèn)值
注意發(fā)送者3和接收者1的SAV已經(jīng)被調(diào)整以反映已處理的請(qǐng)求。這是因?yàn)檎{(diào)度器邏輯繼續(xù)給予調(diào)度表中命中最高的資源調(diào)度優(yōu)先權(quán)。這個(gè)過(guò)程的發(fā)生是已其它資源的需要為代價(jià)的,并且在某些情況下被置入具有低SAV的資源的低效率可以導(dǎo)致這些資源在調(diào)度表的剩余部分具有比在起始時(shí)命中最高的的那些資源還要高的命中。由于這個(gè)原因,這個(gè)協(xié)定被稱(chēng)為表觀關(guān)鍵資源調(diào)度(調(diào)度優(yōu)先權(quán)總是給那些在所考慮的時(shí)刻出現(xiàn)在關(guān)鍵路徑上的資源),或ACR調(diào)度。
明顯地,本例的調(diào)度器邏輯應(yīng)該試圖調(diào)度從發(fā)送者5到接收者4的請(qǐng)求,既下面兩個(gè)的剩下的可調(diào)度的與命中的調(diào)度有關(guān)的并行資源。由于存在這樣一個(gè)請(qǐng)求,所以本例的調(diào)度器邏輯的執(zhí)行使得那些表現(xiàn)在類(lèi)似于表8,9和10。
表8中間請(qǐng)求表
表9中間事件表
表10中間匯總訪問(wèn)值表
注意這個(gè)事件表顯然是從請(qǐng)求表而來(lái)的已調(diào)度的請(qǐng)求的(按時(shí)間順序)分類(lèi)表。由于這個(gè)原因,各調(diào)度步驟的中間階段未被顯示出來(lái)。
重復(fù)前面的過(guò)程,本例的調(diào)度器邏輯調(diào)度一個(gè)1到2的通信示例請(qǐng)求(即從發(fā)送者1到接收者2的連接),并且這些表被調(diào)整為如下的表11和12表11中間請(qǐng)求表
表12中間匯總訪問(wèn)值表
本例的調(diào)度器邏輯接下來(lái)搜尋2到5的通信示例請(qǐng)求,但沒(méi)有作出這樣的請(qǐng)求。在確定下面被嘗試的組合中存在幾個(gè)選擇,但最佳方案是根據(jù)帶寬效率和處理費(fèi)用之間的權(quán)衡選出的。(具有最小帶寬命中,多個(gè)簡(jiǎn)單的法則可以被選擇,對(duì)本優(yōu)選實(shí)施例,在這個(gè)特殊的發(fā)送者被忽略并且下一個(gè)發(fā)送者被選擇之后,為現(xiàn)有的發(fā)送者選擇替代接收者直到所有接收者的選擇被耗盡,并且命中最高的接收者被重新考慮為止-見(jiàn)圖9。)用這個(gè)邏輯,搜尋2到3的通信示例請(qǐng)求但沒(méi)有找到,然后4到5的通信示例請(qǐng)求被搜尋、被找到并被選擇。SAV表被更新,并確定在時(shí)間=0時(shí)沒(méi)有其它可進(jìn)行的連接。事件表現(xiàn)在被顯示為表13。
表13中間事件表
這四個(gè)連接也可以被圖11中的調(diào)度圖1101形象地表示。圖10中的已調(diào)度的發(fā)送者單元1002和已調(diào)度的接收者單元1003被相應(yīng)地表示為已調(diào)度的單元1102和1103,并且還加入了已調(diào)度的單元1104和1105(4到5的連接),1106和1107(1到2的連接)以及1108和1109(4到5的連接)。
涉及前移時(shí)間的邏輯等于按時(shí)間順序前移到下個(gè)結(jié)束。在這里4到5的通信示例請(qǐng)求就是按時(shí)間順序的下個(gè)結(jié)束,所以本例前移時(shí)間到時(shí)間=9時(shí),在這一時(shí)刻發(fā)送者4和接收者5就又可以使用了?,F(xiàn)在請(qǐng)求表和SAV表被顯示在表14和15中。
表14中間請(qǐng)求表
表15中間匯總訪問(wèn)值表
在搜尋2到5的通信示例請(qǐng)求,2到3的通信示例請(qǐng)求,4到5的通信示例,請(qǐng)求4到3的通信示例請(qǐng)求和4到3的通信示例請(qǐng)求之后,本例的調(diào)度器邏輯判定本例必須再次前移時(shí)間-在時(shí)間=9的時(shí)候?qū)嶋H上沒(méi)有任何請(qǐng)求能被調(diào)度?,F(xiàn)在下一次結(jié)束是在時(shí)間=15時(shí),在這個(gè)時(shí)刻1到2的通信示例連接結(jié)束并且SAV表為表16。
表16中間匯總訪問(wèn)值表
本例的調(diào)度器邏輯現(xiàn)在搜尋1到2的通信示例請(qǐng)求,但1到2的通信示例已經(jīng)被調(diào)度了,所以本例搜尋1到5的通信示例請(qǐng)求,本例發(fā)現(xiàn)了并調(diào)度這個(gè)請(qǐng)求。新的SAV表就是表17了。
表17中間匯總訪問(wèn)值表
本例的調(diào)度器邏輯然后在決定再次前移時(shí)間之前搜尋2到2的通信示例請(qǐng)求,2到3的通信示例請(qǐng)求,4到2的通信示例請(qǐng)求和4到3的通信示例請(qǐng)求。本例前移時(shí)間從15到16,在這個(gè)時(shí)刻SAV表看起來(lái)如表18。
表18中間匯總訪問(wèn)值表
本例的調(diào)度器邏輯然后調(diào)度3到1的通信示例請(qǐng)求,它被證明是在時(shí)間=16時(shí)唯一一個(gè)可以被調(diào)度的請(qǐng)求。在本例的調(diào)度器邏輯操前移時(shí)間至?xí)r間=17后,這些表看起來(lái)如表19,20和21。
表19中間匯總訪問(wèn)值表
表20中間請(qǐng)求表
在時(shí)間=17時(shí)沒(méi)有能被被調(diào)度的請(qǐng)求,所以本例前移時(shí)間至?xí)r間=18,此刻5到4的通信示例請(qǐng)求結(jié)束。
表21中間匯總訪問(wèn)值表
在對(duì)5到4的通信示例請(qǐng)求的搜尋不成功后,發(fā)現(xiàn)了5到2的通信示例請(qǐng)求和1到4的通信示例請(qǐng)求,并且這些表看起來(lái)如表22和23表22中間匯總訪問(wèn)值表
表23中間請(qǐng)求表
本例的調(diào)度器邏輯操前移時(shí)間至?xí)r間=26,此時(shí)本例的調(diào)度器邏輯操定義表24表24中間匯總訪問(wèn)值表
本例的調(diào)度器邏輯現(xiàn)在調(diào)度5到3的通信示例請(qǐng)求,它是在這一時(shí)刻能被調(diào)度的所有請(qǐng)求。然后時(shí)間被前移至?xí)r間=27,然后28,并且SAV表看起來(lái)如表25。
表25中間匯總訪問(wèn)值表
由于沒(méi)有3到1的通信示例請(qǐng)求,本例的調(diào)度器邏輯調(diào)度3到2的通信示例請(qǐng)求和5到1的通信示例請(qǐng)求,并前移時(shí)間至31,然后至48,此刻SAV表變成表26。
表26中間匯總訪問(wèn)值表
本例的調(diào)度器邏輯調(diào)度3到4的通信示例請(qǐng)求,并前移時(shí)間至49,結(jié)果給出表27。
表27中間匯總訪問(wèn)值表
本例的調(diào)度器邏輯預(yù)定2到1的通信示例請(qǐng)求,并前移時(shí)間至67,給出表28。
表28中間匯總訪問(wèn)值表
本例的調(diào)度器邏輯現(xiàn)在調(diào)度3到3的通信示例請(qǐng)求和5到1的通信示例請(qǐng)求,并前移時(shí)間至73,如表29所示。
表29中間匯總訪問(wèn)值表
本例的調(diào)度器邏輯然后調(diào)度4到1的通信示例請(qǐng)求,并前移時(shí)間至75,導(dǎo)致表30。
表30中間匯總訪問(wèn)值表
這允許本例的調(diào)度器邏輯調(diào)度剩余的3到4的通信示例請(qǐng)求,在此之后本例的調(diào)度器邏輯前移時(shí)間至?xí)r間=86,導(dǎo)致表31的數(shù)據(jù)。
表31中間匯總訪問(wèn)值表
本例的調(diào)度器邏輯現(xiàn)在調(diào)度5到1的通信示例請(qǐng)求,前移時(shí)間至91,調(diào)度第一個(gè)3到5的通信示例請(qǐng)求,前移時(shí)間至94,然后至95,和調(diào)度最后一個(gè)請(qǐng)求,另一個(gè)3到5的通信示例請(qǐng)求。結(jié)果事件表看起來(lái)如表32。
表32最終事件表
注意整個(gè)請(qǐng)求表在104個(gè)時(shí)間單位后完成-這是處理這些特定請(qǐng)求理論上所需的最小時(shí)間量。
最終調(diào)度表被以圖形方式顯示為圖12中的調(diào)度圖1201。圖10中的已調(diào)度的發(fā)送者單元1002和已調(diào)度的接收者單元1003被相應(yīng)地表示為已調(diào)度的單元1202和1203;圖11中的已調(diào)度的單元1104和1105,1106和1107以及1108和1109被相應(yīng)地表示為已調(diào)度的單元1204,1205,1206,1207,1208和1209;并且還顯示了新單元對(duì)應(yīng)1到4的通信示例的1216-1217,對(duì)應(yīng)5到2的通信示例的1214-1215,對(duì)應(yīng)3到1的通信示例的1212-1213,對(duì)應(yīng)3到2的通信示例的1220-1221,對(duì)應(yīng)5到1的通信示例的1222-1223,對(duì)應(yīng)2到1的通信示例的1226-1227,對(duì)應(yīng)3到4的通信示例的1224-1225,對(duì)應(yīng)3到3的通信示例的1228-1229,對(duì)應(yīng)4到1的通信示例的1230-1231,對(duì)應(yīng)3到4的通信示例的1232-1233,對(duì)應(yīng)5到1的通信示例的1234-1235,和對(duì)應(yīng)3到5的通信示例的1238-1239。其中顯示出的三個(gè)交互作用上出沒(méi)有畫(huà)出單元指示符(時(shí)長(zhǎng)為2的1到5的通信,時(shí)長(zhǎng)為1的5到3的通信,和時(shí)長(zhǎng)為4的3到5的通信)。
注意關(guān)鍵資源發(fā)送者3一直被預(yù)定滿(mǎn)直至?xí)r間=104,即為達(dá)到理論上的最小調(diào)度時(shí)間所必須達(dá)到的判別值。還應(yīng)注意接收者1,次關(guān)鍵資源,被預(yù)定滿(mǎn)直至?xí)r間=94。盡管這個(gè)邏輯并不總產(chǎn)生理論上的最佳調(diào)度表,但它被設(shè)計(jì)成對(duì)具有最高要求的資源是有效的。
如果調(diào)度過(guò)程被應(yīng)用于一個(gè)100單位的時(shí)間段窗口而不是一個(gè)150單位的時(shí)間段窗口,在這個(gè)時(shí)間段窗口中最后的請(qǐng)求就會(huì)被從已調(diào)度的請(qǐng)求中卡掉,但會(huì)被置于隊(duì)列中直至對(duì)下一個(gè)時(shí)間段窗口的調(diào)度過(guò)程重新開(kāi)始。
上面的例子顯示了一個(gè)所有請(qǐng)求的優(yōu)先級(jí)都是1的請(qǐng)求表。在一個(gè)實(shí)施例中,支持四個(gè)不同的優(yōu)先級(jí)。根據(jù)邏輯,所有最高級(jí)別的請(qǐng)求在任何其它優(yōu)先級(jí)別的請(qǐng)求被考慮調(diào)度之前被調(diào)度。
一旦所有被保證的請(qǐng)求都被調(diào)度了,就在已存在于調(diào)度表中的被保證的請(qǐng)求的周?chē){(diào)度其它三個(gè)優(yōu)先級(jí)。當(dāng)調(diào)度表中已經(jīng)存在連接時(shí),計(jì)算時(shí)間段窗口大小的過(guò)程就比較復(fù)雜了,但邏輯是完全一樣的。雖然ACR值(或SAV)在決定什么時(shí)間調(diào)度什么時(shí)仍然時(shí)主導(dǎo)因素,但同樣的兩個(gè)并行的資源之間的連接請(qǐng)求被根據(jù)優(yōu)先級(jí)選擇。這意味著ACR邏輯可能決定在調(diào)度一個(gè)中優(yōu)先級(jí)的4到2的通信示例請(qǐng)求之前調(diào)度一個(gè)低優(yōu)先級(jí)的4到5的通信示例請(qǐng)求,但絕不會(huì)在調(diào)度一個(gè)中優(yōu)先級(jí)的4到5的通信示例請(qǐng)求之前調(diào)度它。
由于確定的連接需求可能發(fā)生在特定的時(shí)刻而不是簡(jiǎn)單地在某個(gè)時(shí)間段窗口內(nèi),就能夠做出調(diào)整使這些請(qǐng)求繞開(kāi)調(diào)度。這些固時(shí)間確定間的連接在調(diào)度開(kāi)始之前進(jìn)入事件表并且那些被調(diào)度的連接必須被調(diào)度在固定連接的周?chē)_@些固時(shí)間確定間的連接明顯地具有所有請(qǐng)求中最高的優(yōu)先級(jí)。
在上述例子中,前移時(shí)間就是這樣一件事,即簡(jiǎn)單地找出已經(jīng)調(diào)度的連接的按時(shí)間順序的下個(gè)結(jié)束。但是這個(gè)前移時(shí)間的過(guò)程用掉了很多循環(huán),而這些循環(huán)最好用來(lái)執(zhí)行其它功能。本優(yōu)選實(shí)施例的網(wǎng)絡(luò)調(diào)度器使用256單位的最小時(shí)間段(本例具有一個(gè)25,000時(shí)間單位的調(diào)度時(shí)間段窗口而不是前面所述的150時(shí)間單位的窗口)以減低處理的需求。盡管這對(duì)調(diào)度效率有明顯的負(fù)面影響,但也存在不那么明顯的正面影響。由于在時(shí)間段之間處理完較多的事件,平均地在各時(shí)間段中就有較多可供調(diào)度的資源。隨著更多資源同時(shí)競(jìng)爭(zhēng),那些具有較高關(guān)鍵命中值的資源似乎不大可能被一些其它早已結(jié)束的資源所替代。這個(gè)折中的最后結(jié)果是計(jì)算循環(huán)被保存,而帶寬效率并未明顯受影響。
在上述例子中,所有請(qǐng)求被整體調(diào)度-不需要中斷請(qǐng)求。如果任何一個(gè)請(qǐng)求具有比定義的時(shí)間段窗口(在上述例子中為150時(shí)間單位)長(zhǎng),為了能被調(diào)度,它無(wú)論如何將被分成至少兩部分。如果設(shè)計(jì)中不能避免長(zhǎng)信息,在這種情況下長(zhǎng)的低優(yōu)先級(jí)信息不大可能靠分解這個(gè)信息和使用較低的優(yōu)先級(jí)指示抵擋住較高優(yōu)先級(jí)的信息對(duì)同一資源的競(jìng)爭(zhēng)。
在本優(yōu)選實(shí)施例中,大于1023時(shí)間單位的請(qǐng)求被分解為1000時(shí)間單位的“滿(mǎn)”塊和一個(gè)可選的直至1023單位長(zhǎng)的“部分”的塊。
在本優(yōu)選實(shí)施例中,因?yàn)槁肪€(用來(lái)傳遞調(diào)度表的特殊信息)的變化和可能的大容量,它們是自我調(diào)度的信息。但是時(shí)間表(用來(lái)收集連接請(qǐng)求的信息)很小并被作為固時(shí)間確定間的連接處理(它們不被逐一調(diào)度)。用于本優(yōu)選實(shí)施例的調(diào)度流程包括在第一時(shí)間段窗口中時(shí)間表的收集和線路的調(diào)度,其中第二、第三和第四時(shí)間段窗口(相應(yīng)地用于信息的調(diào)度,傳遞調(diào)度表以及連接的實(shí)施)被按照描述的那樣使用。
現(xiàn)在參見(jiàn)圖13,它更詳細(xì)地描述了對(duì)應(yīng)于成員節(jié)點(diǎn)107,108的部件的代表。雖然圖13沿用了圖1和圖5的單元編號(hào),但它還顯示了允許對(duì)應(yīng)于其它節(jié)點(diǎn)的信息的并行發(fā)送和接收。在這種情況下,顯示了主調(diào)度器106的發(fā)送邏輯1301和接收邏輯1302,與在成員節(jié)點(diǎn)107上的伴隨發(fā)送邏輯1319和接收邏輯1320,以及在成員節(jié)點(diǎn)108上的另一個(gè)伴隨發(fā)送邏輯1321和接收邏輯1322。路徑1311,1305和1306顯示了從消息載體100(帶縱橫接線器516)向外的向量化的信息路徑。使用如前面討論過(guò)流程循環(huán)計(jì)算機(jī)就能得到這種使特定的節(jié)點(diǎn)107,108,106忙于高度交叉的信息發(fā)送和接收的通信方法。節(jié)點(diǎn)107被更詳細(xì)圖示為當(dāng)?shù)卣{(diào)度器1307,振蕩器1308,CPU1309和VCXO(晶體振蕩器控制的電壓)1309,并與前面描述過(guò)的當(dāng)?shù)厝蝿?wù)表1303和已經(jīng)被一般地討論過(guò)的當(dāng)?shù)厝蝿?wù)調(diào)度表1304一起顯示出來(lái)。
現(xiàn)在參見(jiàn)聚焦在三種技術(shù)上的圖14,結(jié)合它,摘要地說(shuō)明了關(guān)于散布的網(wǎng)絡(luò),實(shí)時(shí)計(jì)算機(jī)的思考的唯一且有價(jià)值的特性,以進(jìn)一步全面看清到本發(fā)明的特性。從這一點(diǎn)看,關(guān)鍵技術(shù)與計(jì)算機(jī)間的緊密同步化;時(shí)間確定的操作,包括網(wǎng)絡(luò)通信;以及對(duì)散布的任務(wù),特別是那些涉及網(wǎng)絡(luò)通信的任務(wù)的中央化調(diào)度。這個(gè)簡(jiǎn)圖顯示了本優(yōu)選實(shí)施例中實(shí)施的各種技術(shù)之間的相互關(guān)系1400,其中強(qiáng)調(diào)了那些被認(rèn)為對(duì)于實(shí)施是關(guān)鍵的技術(shù)。這些基本的技術(shù)相結(jié)合就提供了一個(gè)體系結(jié)構(gòu),它能負(fù)責(zé)在散布的計(jì)算環(huán)境中的實(shí)時(shí)計(jì)算。這些技術(shù)是(1)時(shí)間確定的事件控制1422;(2)系統(tǒng)間的緊密同步化1423;和(3)散布的計(jì)算環(huán)境中實(shí)時(shí)系統(tǒng)操作的關(guān)鍵的任務(wù)的中央化調(diào)度1421。
這些技術(shù)間的關(guān)系被箭頭顯示出來(lái),其中箭頭從允許實(shí)現(xiàn)技術(shù)指向被允許實(shí)現(xiàn)技術(shù),其中術(shù)語(yǔ)“允許實(shí)現(xiàn)”在這里被廣義地地使用以描述在技術(shù)效用方面或在該技術(shù)應(yīng)用的簡(jiǎn)單化方面的改進(jìn)。注意許多技術(shù)是相互有益的,在這里用雙向箭頭指出。
下表解釋了實(shí)施特性之間的關(guān)系,如圖14的在緊密同步1423,優(yōu)先化1424,時(shí)間確定的事件控制1422,安全1426,極限查驗(yàn)1425,中央化控制1421,可靠度1428,動(dòng)態(tài)冗余1427和低成本1435之間的虛擬鏈接。
表33關(guān)鍵技術(shù)特征的相互作用
現(xiàn)在參見(jiàn)圖15,討論了對(duì)應(yīng)于各成員節(jié)點(diǎn)108,107(控制計(jì)算機(jī)506,記錄計(jì)算機(jī)507,控制計(jì)算機(jī)504,記錄計(jì)算機(jī)505,用戶(hù)接口503,網(wǎng)絡(luò)支持502和網(wǎng)絡(luò)交換器501中的任意一個(gè))中的調(diào)度被執(zhí)行的一般處理1500。各成員節(jié)點(diǎn)108,107負(fù)責(zé)接收公共時(shí)鐘信號(hào);與公共時(shí)鐘信號(hào)的同步;從網(wǎng)絡(luò)交換器501中的主調(diào)度器106接收當(dāng)?shù)厥录?14,116;根據(jù)接收到的當(dāng)?shù)厥录?14,116形成任務(wù)執(zhí)行表并且將任何未在當(dāng)?shù)厥录?14,116中描述的附加任務(wù)并入此表;執(zhí)行任務(wù)執(zhí)行表;產(chǎn)生通信請(qǐng)求表并向網(wǎng)絡(luò)交換器501中的主調(diào)度器106發(fā)送該通信請(qǐng)求表。
步驟1501和1502-由于網(wǎng)絡(luò)如此高度依賴(lài)于一個(gè)全局的時(shí)間基準(zhǔn),在成員節(jié)點(diǎn)108,107上的第一步1501就是接收公共時(shí)鐘信號(hào)。公共時(shí)鐘信號(hào)被作為一個(gè)信息從網(wǎng)絡(luò)交換器501中的主調(diào)度器106傳送給各成員節(jié)點(diǎn)108,107。成員節(jié)點(diǎn)108,107在步驟1501中接收這個(gè)時(shí)鐘信號(hào),附上實(shí)際接收的時(shí)間,確認(rèn)這個(gè)信息整體有效。被確認(rèn)的信息被用作同步化過(guò)程的輸入,并且在步驟1502中,時(shí)間信息的預(yù)期接收時(shí)間和實(shí)際接收時(shí)間之間的差別被可選地確定(時(shí)間信息的性質(zhì)可選地是一個(gè)脈沖而不是載有日期的信息)。
步驟1503和1504-各成員節(jié)點(diǎn)108,107現(xiàn)在必須與公共時(shí)鐘信號(hào)同步化。這個(gè)同步化的執(zhí)行過(guò)程可以被分解為兩個(gè)單獨(dú)的任務(wù)第一,在步驟1503中,電壓控制的振蕩器(1308)調(diào)整至與公共時(shí)鐘信號(hào)源相匹配的頻率;第二,在步驟1504中,時(shí)間校準(zhǔn)至被公共時(shí)鐘信號(hào)定義的各時(shí)間周期的起點(diǎn)在成員節(jié)點(diǎn)108,107和在網(wǎng)絡(luò)交換器501中的主調(diào)度器106中發(fā)生在同一時(shí)間。
步驟1505-一旦完成了成員節(jié)點(diǎn)108,107到網(wǎng)絡(luò)交換器501中的主調(diào)度器106的同步化,成員節(jié)點(diǎn)108,107必須從網(wǎng)絡(luò)交換器501中的主調(diào)度器106接收當(dāng)?shù)厥录?14,116。當(dāng)?shù)厥录?14,116包含著涉及這個(gè)成員節(jié)點(diǎn)的通信的調(diào)度表。注意當(dāng)?shù)厥录?14,116的接收本身是被網(wǎng)絡(luò)交換器501中的主調(diào)度器106調(diào)度的。因此,第一次接收當(dāng)?shù)厥录?14,116的節(jié)點(diǎn)必須在任何可能接收當(dāng)?shù)厥录?14,116的時(shí)間都是可用的,以接收這個(gè)信息。
步驟1506-對(duì)成員節(jié)點(diǎn)108,107下一步是形成任務(wù)執(zhí)行表。這個(gè)任務(wù)執(zhí)行表是由當(dāng)?shù)厥录?14,116和成員節(jié)點(diǎn)108,107必須執(zhí)行的但當(dāng)?shù)厥录?14,116沒(méi)有描述的附加任務(wù)形成的。從網(wǎng)絡(luò)交換器501中的主調(diào)度器106傳來(lái)的當(dāng)?shù)厥录?14,116提供了與發(fā)送和接收任務(wù)相關(guān)的時(shí)間調(diào)度。為了形成任務(wù)執(zhí)行表,必須進(jìn)行下列子步驟子步驟1506A調(diào)整從網(wǎng)絡(luò)交換器501中的主調(diào)度器106接收到的起始時(shí)間以計(jì)入傳播延遲。從網(wǎng)絡(luò)交換器501中的主調(diào)度器106接收到的時(shí)間調(diào)度是關(guān)于網(wǎng)絡(luò)交換器501中的主調(diào)度器106的。雖然成員節(jié)點(diǎn)108,107與網(wǎng)絡(luò)交換器501中的主調(diào)度器106同步化了,但在通過(guò)通信媒體的傳播中仍然存在本征延遲。要么網(wǎng)絡(luò)交換器501中的主調(diào)度器106必須計(jì)入這個(gè)延遲,要么通信時(shí)間段窗口必須足夠大以至能將這個(gè)本征延遲作為撥給這次連接的時(shí)間的額外開(kāi)銷(xiāo)包括在內(nèi)。在本優(yōu)選實(shí)施例中,這個(gè)延遲被成員節(jié)點(diǎn)計(jì)入。
子步驟1506B調(diào)度那些依賴(lài)于通信任務(wù)的任務(wù)。有些任務(wù)必須在發(fā)送前調(diào)度(例如從存儲(chǔ)器中發(fā)出的數(shù)據(jù)的傳送);還有些任務(wù)必須在接收后調(diào)度(例如冗余計(jì)算環(huán)境下多個(gè)不同的源之間的數(shù)據(jù)裁定以及向存儲(chǔ)器傳送數(shù)據(jù))。成員節(jié)點(diǎn)108,107負(fù)責(zé)調(diào)度這些任務(wù)。
子步驟1506C調(diào)度那些既未當(dāng)?shù)厥录?14,116描述,也不依賴(lài)于通信的任務(wù)。這些是在與通信相關(guān)的任務(wù)之外成員節(jié)點(diǎn)108,107必須完成的任務(wù)。這些任務(wù)可能是為了其它I/O操作、局域化顯示等。
步驟1507-對(duì)成員節(jié)點(diǎn)108,107下一步是執(zhí)行任務(wù)執(zhí)行表。表中的各任務(wù)包含著將被執(zhí)行的任務(wù),任務(wù)的起始時(shí)間和任何成功地完成該任務(wù)所必需的參數(shù)。
步驟1508-對(duì)成員節(jié)點(diǎn)108,107現(xiàn)在形成通信請(qǐng)求表,它是成員節(jié)點(diǎn)108,107想要與之通信的成員節(jié)點(diǎn)108,107的表。該通信請(qǐng)求表包含的信息是源節(jié)點(diǎn)指示符,目標(biāo)節(jié)點(diǎn)指示符和通信總長(zhǎng)度。
步驟1509-通信請(qǐng)求表被傳送給網(wǎng)絡(luò)交換器501中的主調(diào)度器106以便在其調(diào)度中考慮它。這時(shí),成員節(jié)點(diǎn)108,107已經(jīng)完成了在這個(gè)特定的時(shí)間周期內(nèi)所有必需的作用。下一步1510是確定是否到了接收下一個(gè)參考時(shí)刻信息的時(shí)間。如果是,那么整個(gè)過(guò)程就從最早的第一步1501開(kāi)始重復(fù)它本身。如果還未到接收下一個(gè)參考時(shí)刻信息的時(shí)間,那么成員節(jié)點(diǎn)的邏輯可能進(jìn)入步驟1505。
作為一個(gè)深思熟慮的實(shí)施例,圖16以數(shù)據(jù)流簡(jiǎn)圖1600表示了圖1的一般的數(shù)據(jù)流簡(jiǎn)圖130,其中以射頻的方式完成通信,并且經(jīng)射頻發(fā)送器和接收器完成發(fā)送1601,1602和1603。
通過(guò)使用被認(rèn)為是專(zhuān)用的計(jì)算機(jī)的的設(shè)備使本發(fā)明得以實(shí)施,在一個(gè)實(shí)施例中這些計(jì)算機(jī)是將計(jì)算機(jī)與指向進(jìn)程控制的專(zhuān)項(xiàng)功能的計(jì)算機(jī)程序代碼(換言之,例如,軟件或邏輯,這里邏輯指的是被許可電路系統(tǒng)或給許可電路系統(tǒng)執(zhí)行的軟件)結(jié)合起來(lái)創(chuàng)建的,以便當(dāng)它與一個(gè)電源連接時(shí),就被通電并被激活以執(zhí)行它的計(jì)算機(jī)程序代碼(軟件),該專(zhuān)用計(jì)算機(jī)在計(jì)算機(jī)程序代碼引導(dǎo)下執(zhí)行關(guān)于本發(fā)明的專(zhuān)項(xiàng)功能。該計(jì)算機(jī)包括一個(gè)被稱(chēng)為中央處理單元的電活性部件,至少一個(gè)與中央處理單元相連的物理存儲(chǔ)器,一個(gè)可選的與中央處理單元相連的輸入鍵盤(pán),一個(gè)可選的與中央處理單元相連的輸出顯示(它可包括但不限于打印機(jī)、其輸出為打印出的紙張的打印終端,陰極射線管顯示器,和/或平板顯示器),一個(gè)計(jì)算機(jī)時(shí)鐘脈沖發(fā)生器和一個(gè)為計(jì)算機(jī)的所有電活性部件供應(yīng)能量的電源連線。進(jìn)而中央處理器有一個(gè)控制總線和為暫時(shí)容納數(shù)據(jù)(例如注冊(cè)器或疊加器)或?yàn)閳?zhí)行基本數(shù)據(jù)處理操作(例如加法電路)的專(zhuān)用計(jì)算機(jī)電路;該專(zhuān)用計(jì)算機(jī)電路在通信中通過(guò)閂鎖電路與控制總線相連,這個(gè)閂鎖電路可以獨(dú)立地處于傳導(dǎo)(通信)狀態(tài)或非傳導(dǎo)(非通信)狀態(tài);在特時(shí)間確定刻所有閂鎖電路狀態(tài)的集合決定了中央處理器的特定狀態(tài);并且當(dāng)計(jì)算機(jī)程序代碼的單獨(dú)的指令被中央處理單元連續(xù)訪問(wèn)以及時(shí)鐘脈沖發(fā)生器的輸出指向這些閂鎖電路時(shí),中央處理器的狀態(tài)被相應(yīng)地調(diào)整和改變。該計(jì)算機(jī)還可選地有商用操作系統(tǒng)的形式的計(jì)算機(jī)程序代碼,這個(gè)操作系統(tǒng)作為計(jì)算機(jī)程序代碼的操作平臺(tái)起作用,使指向本發(fā)明的專(zhuān)項(xiàng)功能的專(zhuān)用計(jì)算機(jī)程序代碼能夠被執(zhí)行。概括地說(shuō),在這個(gè)實(shí)施例中的本發(fā)明用和通過(guò)多臺(tái)計(jì)算機(jī)被應(yīng)用于優(yōu)選實(shí)施例中,在執(zhí)行指定的使用目的和上述系統(tǒng)的實(shí)際應(yīng)用之前這些計(jì)算機(jī)已經(jīng)被編程以提供給技術(shù);各計(jì)算機(jī)作為實(shí)現(xiàn)功能的媒體起作用,而這個(gè)功能是由計(jì)算機(jī)程序代碼的功能所提供的。在某些實(shí)施例中,在某些擴(kuò)展形式的專(zhuān)用計(jì)算機(jī)中可能用電、光或射頻信號(hào)通信接口和通信媒體實(shí)施通信鏈接,這些接口和媒體共同使用用電能的發(fā)送器和接收器,它們直接或間接地與至少一個(gè)中央處理單元相連。
駐留在計(jì)算機(jī)中的計(jì)算機(jī)程序代碼提供了這種設(shè)備的至少一個(gè)部件。計(jì)算機(jī)程序代碼可能是交互連接模塊、例程和子例程、程序?qū)ο蟆⒑?或安裝的交互作用過(guò)程的形式,但不限于這些形式。在一些現(xiàn)有的計(jì)算機(jī)設(shè)計(jì)中,現(xiàn)代的專(zhuān)用集成電路(ASIC)計(jì)算機(jī)程序代碼可能至少被與傳統(tǒng)的不需時(shí)鐘脈沖執(zhí)行簡(jiǎn)化邏輯方案的硬布線門(mén)裝置相似的硬布線電路部分地表達(dá)。這個(gè)描述的圖顯示了在計(jì)算機(jī)程序代碼中的關(guān)鍵模塊和部件之間的大量結(jié)構(gòu)關(guān)系和使本發(fā)明的設(shè)備的功能能夠?qū)崿F(xiàn)的本發(fā)明的其它方面;在這一點(diǎn)上,在硬件和軟件的結(jié)合之外構(gòu)造了系統(tǒng)中的計(jì)算單元。
以上以圖示的方式描述了本發(fā)明。這一點(diǎn)上,對(duì)那些熟悉本技術(shù)的人來(lái)說(shuō)是明顯的,一旦給出了前面公開(kāi)的好處,現(xiàn)在就可能對(duì)在這里描述的特定實(shí)施例作出修改而不背離本發(fā)明的精神。這樣的修改被認(rèn)為是包含在本發(fā)明的范圍之內(nèi)的,這個(gè)范圍僅僅被附錄的權(quán)利要求的范圍和精神所限制。
權(quán)利要求
1.一種由計(jì)算機(jī)實(shí)施的方法,它允許在交互式數(shù)據(jù)通信中多個(gè)計(jì)算機(jī)節(jié)點(diǎn)以協(xié)同的方式執(zhí)行邏輯,包括步驟在所說(shuō)的多個(gè)計(jì)算機(jī)節(jié)點(diǎn)之間校準(zhǔn)時(shí)間以便各計(jì)算機(jī)節(jié)點(diǎn)具有基本上相同的實(shí)時(shí)時(shí)間;為每個(gè)計(jì)算機(jī)節(jié)點(diǎn)確定一個(gè)通信調(diào)度表,上述調(diào)度表為在未來(lái)開(kāi)始各相應(yīng)的通信確定了不同的時(shí)間;向相應(yīng)的計(jì)算機(jī)節(jié)點(diǎn)傳送它的調(diào)度表;按它的調(diào)度表在適當(dāng)?shù)臅r(shí)間從各節(jié)點(diǎn)開(kāi)始通信。
2.一種網(wǎng)絡(luò)體系結(jié)構(gòu),包括支持多通信路徑的消息載體;與上述消息載體相連的多臺(tái)計(jì)算機(jī),上述計(jì)算機(jī)被編程靠通過(guò)多個(gè)不同運(yùn)行狀態(tài),包括通信狀態(tài)的循環(huán)來(lái)執(zhí)行時(shí)間確定的任務(wù);可以被上述計(jì)算機(jī)訪問(wèn)的用來(lái)在上述計(jì)算機(jī)中保持同步的時(shí)鐘系統(tǒng);與上述消息載體相連的調(diào)度器,它靠引起上述消息載體根據(jù)被上述計(jì)算機(jī)執(zhí)行的上述時(shí)間確定的任務(wù)在選定的計(jì)算機(jī)之間建立通信來(lái)確定上述計(jì)算機(jī)之間的通信順序。
3.一種由計(jì)算機(jī)實(shí)施的方法,它允許多個(gè)計(jì)算機(jī)節(jié)點(diǎn)中的一個(gè)節(jié)點(diǎn)以與上述多個(gè)計(jì)算機(jī)節(jié)點(diǎn)中的其它計(jì)算機(jī)協(xié)同的方式執(zhí)行邏輯,包括步驟將消息載體連接到上述多個(gè)計(jì)算機(jī)節(jié)點(diǎn)中各計(jì)算機(jī)節(jié)點(diǎn);在一個(gè)計(jì)算機(jī)節(jié)點(diǎn)中提供主調(diào)度能力以建立主調(diào)度器;在各計(jì)算機(jī)節(jié)點(diǎn)中確定相應(yīng)于一個(gè)未來(lái)時(shí)間周期的上述計(jì)算機(jī)節(jié)點(diǎn)所需的與其它計(jì)算機(jī)節(jié)點(diǎn)的各次通信的通信請(qǐng)求表;從各計(jì)算機(jī)節(jié)點(diǎn)經(jīng)由上述消息載體向上述主調(diào)度器發(fā)送上述通信請(qǐng)求表;在各計(jì)算機(jī)節(jié)點(diǎn)中經(jīng)由上述消息載體從上述主調(diào)度器接收通信調(diào)度表;在各計(jì)算機(jī)節(jié)點(diǎn)中從上述通信調(diào)度表中確定一個(gè)當(dāng)?shù)厝蝿?wù)表。
4.一種由計(jì)算機(jī)實(shí)施的方法,它允許多個(gè)成員節(jié)點(diǎn)以協(xié)同方式執(zhí)行邏輯,包括步驟將消息載體連接到上述多個(gè)成員節(jié)點(diǎn)中各成員節(jié)點(diǎn);在經(jīng)由上述消息載體與上述各成員節(jié)點(diǎn)的數(shù)據(jù)通信中提供一個(gè)主調(diào)度器;為上述多個(gè)成員節(jié)點(diǎn)確定一個(gè)參考時(shí)刻時(shí)間值;經(jīng)由上述消息載體向上述各成員節(jié)點(diǎn)和上述主調(diào)度器傳送上述參考時(shí)刻時(shí)間值;在各上述成員節(jié)點(diǎn)中確定一個(gè)通信請(qǐng)求表來(lái)顯示在一個(gè)未來(lái)時(shí)間周期內(nèi)上述成員節(jié)點(diǎn)所需的與其它成員節(jié)點(diǎn)的通信;從各成員節(jié)點(diǎn)經(jīng)由上述消息載體向上述主調(diào)度器傳送上述通信請(qǐng)求表;在上述主調(diào)度器中確定在通信事件時(shí)間各成員節(jié)點(diǎn)之間的已調(diào)度的通信,這些時(shí)間對(duì)應(yīng)于上述參考時(shí)刻時(shí)間值以及在各上述接收到的通信請(qǐng)求表中的各上述通信表;在上述主調(diào)度器中為各成員節(jié)點(diǎn)確定對(duì)應(yīng)于上述已調(diào)度的通信的通信調(diào)度表;從上述主調(diào)度器經(jīng)由上述消息載體向各相應(yīng)成員節(jié)點(diǎn)傳送上述通信調(diào)度表;在上述各成員節(jié)點(diǎn)中確定在上述參考時(shí)刻時(shí)間值和將上述參考時(shí)刻時(shí)間值傳送給上述成員節(jié)點(diǎn)時(shí)的時(shí)間之間的時(shí)差;在上述各成員節(jié)點(diǎn)中由上述通信調(diào)度表和上述時(shí)差為成員節(jié)點(diǎn)確定當(dāng)?shù)厝蝿?wù)調(diào)度表,以便該成員節(jié)點(diǎn)在上述已調(diào)度的通信事件時(shí)間經(jīng)由上述消息載體與其它成員節(jié)點(diǎn)通信;根據(jù)上述當(dāng)?shù)厝蝿?wù)調(diào)度表經(jīng)由上述消息載體執(zhí)行上述對(duì)應(yīng)于各已調(diào)度通信的成員節(jié)點(diǎn)之間已調(diào)度的通信。
5.如權(quán)利要求4的方法,其中上述確定參考時(shí)刻時(shí)間值的步驟由上述主調(diào)度器執(zhí)行。
6.如權(quán)利要求4的方法,其中上述的在各成員節(jié)點(diǎn)中確定通信請(qǐng)求表的步驟限制了上述通信在上述未來(lái)時(shí)間周期中的最大數(shù)量。
7.如權(quán)利要求4的方法,其中各通信具有持續(xù)時(shí)間屬性并且上述持續(xù)時(shí)間屬性值小于一個(gè)固定的極大值。
8.如權(quán)利要求4的方法,其中上述為多個(gè)成員節(jié)點(diǎn)確定參考時(shí)刻時(shí)間值的步驟由全局時(shí)間系統(tǒng)來(lái)執(zhí)行。
9.一種由計(jì)算機(jī)實(shí)施的方法,它允許多個(gè)成員節(jié)點(diǎn)以協(xié)同方式執(zhí)行邏輯,包括步驟將消息載體連接到上述多個(gè)成員節(jié)點(diǎn)中各成員節(jié)點(diǎn),各節(jié)點(diǎn)都具有一個(gè)中央處理單元;在經(jīng)由上述消息載體與上述各成員節(jié)點(diǎn)的數(shù)據(jù)通信中提供一個(gè)主調(diào)度器;為上述多個(gè)成員節(jié)點(diǎn)確定一個(gè)作為一個(gè)時(shí)刻的時(shí)間的參考時(shí)刻時(shí)間值;經(jīng)由上述消息載體向上述各成員節(jié)點(diǎn)和上述主調(diào)度器傳送上述參考時(shí)刻時(shí)間值;在各上述成員節(jié)點(diǎn)中將上述成員節(jié)點(diǎn)所需的對(duì)任何其它成員節(jié)點(diǎn)的訪問(wèn)確定進(jìn)一個(gè)通信請(qǐng)求表中,以獲得對(duì)應(yīng)于一個(gè)未來(lái)時(shí)間周期的未來(lái)任務(wù)時(shí)間段;從各成員節(jié)點(diǎn)經(jīng)由上述消息載體向上述主調(diào)度器傳送上述通信請(qǐng)求表;在上述主調(diào)度器中確定對(duì)應(yīng)于上述成員節(jié)點(diǎn)所需的對(duì)任何其它成員節(jié)點(diǎn)的各次訪問(wèn)的通信事件數(shù)據(jù)對(duì)象以獲得未來(lái)任務(wù)時(shí)間段,上述通信事件數(shù)據(jù)對(duì)象具有一個(gè)訪問(wèn)成員標(biāo)識(shí)屬性值,一個(gè)被訪問(wèn)成員標(biāo)識(shí)屬性值和一個(gè)訪問(wèn)時(shí)長(zhǎng)屬性值;在上述主調(diào)度器中將所有確定的通信事件數(shù)據(jù)對(duì)象收集進(jìn)通信事件系列中;在上述主調(diào)度器中為在上述在通信事件系列中的各成員節(jié)點(diǎn)確定一個(gè)總被訪問(wèn)值作為對(duì)應(yīng)于上述成員節(jié)點(diǎn)所有具有被訪問(wèn)成員節(jié)點(diǎn)標(biāo)識(shí)屬性值的通信事件數(shù)據(jù)對(duì)象中所有訪問(wèn)時(shí)長(zhǎng)屬性值的總和;在上述主調(diào)度器中為在上述在通信事件系列中的各成員節(jié)點(diǎn)確定一個(gè)總訪問(wèn)值作為對(duì)應(yīng)于上述成員節(jié)點(diǎn)所有具有訪問(wèn)成員節(jié)點(diǎn)標(biāo)識(shí)屬性值的通信事件數(shù)據(jù)對(duì)象中所有訪問(wèn)時(shí)長(zhǎng)屬性值的總和;在上述主調(diào)度器中將對(duì)應(yīng)于上述參考時(shí)刻時(shí)間值的在下列訪問(wèn)成員節(jié)點(diǎn)和被訪問(wèn)成員節(jié)點(diǎn)之間的未來(lái)通信任務(wù)調(diào)度進(jìn)最早可用時(shí)間,該訪問(wèn)成員節(jié)點(diǎn)具有對(duì)應(yīng)于上述通信事件系列的最高總訪問(wèn)值,在通信事件系列中對(duì)應(yīng)于被訪問(wèn)成員標(biāo)識(shí)屬性值的該被訪問(wèn)成員節(jié)點(diǎn)在所有通信事件數(shù)據(jù)對(duì)象中具有對(duì)應(yīng)于上述訪問(wèn)節(jié)點(diǎn)的最高關(guān)聯(lián)訪問(wèn)時(shí)長(zhǎng)屬性值,上述未來(lái)的通信任務(wù)具有與調(diào)度表中的最早可用時(shí)間相等的任務(wù)起始時(shí)間、對(duì)應(yīng)于訪問(wèn)成員節(jié)點(diǎn)的訪問(wèn)成員節(jié)點(diǎn)標(biāo)識(shí)屬性值和對(duì)應(yīng)于被訪問(wèn)成員節(jié)點(diǎn)的被訪問(wèn)成員節(jié)點(diǎn)標(biāo)識(shí)屬性值;在上述主調(diào)度器中刪除已調(diào)度的未來(lái)通信任務(wù)中對(duì)應(yīng)于被訪問(wèn)成員節(jié)點(diǎn)標(biāo)識(shí)屬性的通信事件數(shù)據(jù)對(duì)象和在已調(diào)度的未來(lái)通信任務(wù)中該被訪問(wèn)成員節(jié)點(diǎn)標(biāo)識(shí)屬性以重新對(duì)那些尚未被調(diào)度的通信事件數(shù)據(jù)對(duì)象確定通信事件系列;在上述主調(diào)度器中對(duì)應(yīng)于重新確定的通信事件系列重復(fù)確定總被訪問(wèn)值,確定總訪問(wèn)值,調(diào)度未來(lái)通信任務(wù),和刪除所有對(duì)應(yīng)于已調(diào)度的成員節(jié)點(diǎn)的通信事件數(shù)據(jù)對(duì)象的步驟,直至所有通信事件數(shù)據(jù)對(duì)象都被調(diào)度進(jìn)各成員節(jié)點(diǎn)的通信調(diào)度表為止;從上述主調(diào)度器經(jīng)由上述消息載體向各相應(yīng)成員節(jié)點(diǎn)發(fā)送上述通信調(diào)度表;在各成員節(jié)點(diǎn)中確定在上述參考時(shí)刻時(shí)間值和將上述參考時(shí)刻時(shí)間值傳送給上述成員節(jié)點(diǎn)時(shí)的時(shí)間之間的時(shí)差;在各成員節(jié)點(diǎn)中由上述通信調(diào)度表和上述時(shí)差為成員節(jié)點(diǎn)確定當(dāng)?shù)厝蝿?wù)調(diào)度表以便該成員節(jié)點(diǎn)在上述已調(diào)度的通信事件時(shí)間經(jīng)由上述消息載體與其它成員節(jié)點(diǎn)通信;根據(jù)上述當(dāng)?shù)厝蝿?wù)調(diào)度表經(jīng)由上述消息載體執(zhí)行對(duì)應(yīng)于各已調(diào)度通信事件的成員節(jié)點(diǎn)之間的已調(diào)度的通信;
10.一種為調(diào)度作為一個(gè)集體組起作用的多個(gè)成員對(duì)象中的成員對(duì)象之間的通信任務(wù)的由計(jì)算機(jī)實(shí)施的方法,包括下列步驟提供一個(gè)計(jì)算機(jī);在上述計(jì)算機(jī)中為各成員對(duì)象確定與上述成員對(duì)象所需的對(duì)任何其它成員對(duì)象的各次訪問(wèn)對(duì)應(yīng)的通信事件數(shù)據(jù)對(duì)象以獲得一個(gè)未來(lái)任務(wù)時(shí)間段,上述通信事件數(shù)據(jù)對(duì)象具有訪問(wèn)成員標(biāo)識(shí)屬性值,被訪問(wèn)成員標(biāo)識(shí)屬性值和訪問(wèn)時(shí)長(zhǎng)屬性值;在上述計(jì)算機(jī)中將所有已確定的通信事件數(shù)據(jù)對(duì)象收集進(jìn)一個(gè)通信事件系列;在上述計(jì)算機(jī)中為在上述在通信事件系列中的各成員對(duì)象確定一個(gè)總被訪問(wèn)值作為對(duì)應(yīng)于上述成員對(duì)象的所有具有被訪問(wèn)成員對(duì)象標(biāo)識(shí)屬性值的通信事件數(shù)據(jù)對(duì)象中所有訪問(wèn)時(shí)長(zhǎng)屬性值的總和;在上述計(jì)算機(jī)中為在上述在通信事件系列中的各成員對(duì)象確定一個(gè)總訪問(wèn)值作為對(duì)應(yīng)于上述成員對(duì)象所有具有訪問(wèn)成員對(duì)象標(biāo)識(shí)屬性值的通信事件數(shù)據(jù)對(duì)象中所有訪問(wèn)時(shí)長(zhǎng)屬性值的總和;確定在對(duì)應(yīng)于調(diào)度表的一個(gè)調(diào)度周期內(nèi)一系列連續(xù)的未來(lái)時(shí)間段;在上述計(jì)算機(jī)中,基于在上述通信事件系列中第一個(gè)可用通信事件數(shù)據(jù)對(duì)象,將未來(lái)通信任務(wù)調(diào)度進(jìn)第一個(gè)時(shí)間段中的最早可用時(shí)間中,該通信發(fā)生在具有對(duì)應(yīng)于上述通信事件系列的最高上述訪問(wèn)值的訪問(wèn)成員對(duì)象和具有對(duì)應(yīng)于上述通信事件系列的最高上述被訪問(wèn)值的被訪問(wèn)成員對(duì)象之間,如果在上述被訪問(wèn)成員對(duì)象和上述訪問(wèn)成員對(duì)象之間存在通信事件數(shù)據(jù)對(duì)象的話(huà),上述未來(lái)的通信任務(wù)具有與調(diào)度表中的最早可用時(shí)間相等的任務(wù)起始時(shí)間、對(duì)應(yīng)于訪問(wèn)成員的訪問(wèn)成員對(duì)象對(duì)象標(biāo)識(shí)屬性值、對(duì)應(yīng)于被訪問(wèn)成員對(duì)象的被訪問(wèn)成員對(duì)象標(biāo)識(shí)屬性值和上述訪問(wèn)時(shí)長(zhǎng)屬性值;在上述計(jì)算機(jī)中從調(diào)度候選者中刪除在已調(diào)度的未來(lái)通信任務(wù)中對(duì)應(yīng)于被訪問(wèn)成員對(duì)象標(biāo)識(shí)屬性的通信事件數(shù)據(jù)對(duì)象和在已調(diào)度的未來(lái)通信任務(wù)中的該被訪問(wèn)成員對(duì)象標(biāo)識(shí)屬性以重新對(duì)那些尚未被調(diào)度的通信事件數(shù)據(jù)對(duì)象確定通信事件系列;在上述計(jì)算機(jī)中對(duì)應(yīng)于重新確定的通信事件系列重復(fù)確定總被訪問(wèn)值,確定總訪問(wèn)值,調(diào)度未來(lái)通信任務(wù),和刪除所有對(duì)應(yīng)于已調(diào)度的成員對(duì)象的通信事件數(shù)據(jù)對(duì)象的步驟,直至所有可以被調(diào)度進(jìn)上述第一個(gè)未來(lái)時(shí)間段中的通信事件數(shù)據(jù)對(duì)象都被調(diào)度了為止;在上述計(jì)算機(jī)中對(duì)應(yīng)于重新確定的通信事件系列并隨之對(duì)應(yīng)于上述多個(gè)未來(lái)時(shí)間段的剩余部分再次執(zhí)行確定總被訪問(wèn)值,確定總訪問(wèn)值,調(diào)度未來(lái)通信任務(wù),和刪除所有對(duì)應(yīng)于已調(diào)度的成員對(duì)象的通信事件數(shù)據(jù)對(duì)象的步驟,并且重復(fù)這些步驟直至所有可以被調(diào)度進(jìn)上述各未來(lái)時(shí)間段中的通信事件數(shù)據(jù)對(duì)象都被調(diào)度了,且所有通信事件數(shù)據(jù)對(duì)象都被調(diào)度進(jìn)了上述調(diào)度周期為止。
11.如權(quán)利要求10的方法,其中上述確定被局限于在預(yù)定的時(shí)間周期中所需的未來(lái)任務(wù)時(shí)間段,并且上述調(diào)度也對(duì)應(yīng)于上述預(yù)定的時(shí)間周期。
12.如權(quán)利要求11的方法,進(jìn)而包括將消息載體與上述多個(gè)成員對(duì)象中的各成員對(duì)象相連接的步驟,上述消息載體具有允許上述通信事件并行的多個(gè)通道,對(duì)應(yīng)于上述多個(gè)通道上述調(diào)度步驟被作為一個(gè)整體實(shí)施,其中上述最早可用時(shí)間是對(duì)應(yīng)于上述消息載體中任意一個(gè)通道的。
13.如權(quán)利要求12的方法,其中上述各成員對(duì)象是用上述消息載體的數(shù)據(jù)通信中的成員節(jié)點(diǎn),各成員節(jié)點(diǎn)都具有一個(gè)中央處理單元。
14.一種為作為一個(gè)集體組起作用的多個(gè)資源對(duì)象中的成員對(duì)象調(diào)度任務(wù)的由計(jì)算機(jī)實(shí)施的方法,包括下列步驟提供一個(gè)計(jì)算機(jī);在上述計(jì)算機(jī)中為上述集體組確定一系列未來(lái)任務(wù);在上述計(jì)算機(jī)中為一系列未來(lái)任務(wù)中的各未來(lái)任務(wù)確定各資源對(duì)象;在上述計(jì)算機(jī)中確定任意兩個(gè)資源對(duì)象之間對(duì)應(yīng)于上述一系列未來(lái)任務(wù)的各次交互作用;在上述計(jì)算機(jī)中為獲得上述各次交互作用為上述各資源對(duì)象確定使用示例,上述使用示例具有使用時(shí)長(zhǎng)屬性值;在上述計(jì)算機(jī)中確定對(duì)應(yīng)于上述使用示例的訪問(wèn)資源對(duì)象和被訪問(wèn)資源對(duì)象;首先,在上述計(jì)算機(jī)中對(duì)各訪問(wèn)資源對(duì)象確定一個(gè)總訪問(wèn)時(shí)間值作為所有對(duì)應(yīng)于作為訪問(wèn)資源對(duì)象的資源對(duì)象的上述使用示例的所有使用時(shí)長(zhǎng)屬性值的總和;然后,在上述計(jì)算機(jī)中對(duì)各訪問(wèn)資源對(duì)象確定一個(gè)總被訪問(wèn)時(shí)間值作為所有對(duì)應(yīng)于作為被訪問(wèn)資源對(duì)象的資源對(duì)象的上述使用示例的所有使用時(shí)長(zhǎng)屬性值的總和;在上述計(jì)算機(jī)中確定一系列在對(duì)應(yīng)于調(diào)度表的調(diào)度周期內(nèi)的未來(lái)時(shí)間段;在上述計(jì)算機(jī)中將基于在上述一系列未來(lái)任務(wù)中的第一個(gè)可執(zhí)行任務(wù)的未來(lái)資源交互作用事件調(diào)度進(jìn)第一個(gè)未來(lái)時(shí)間段中的最早可用時(shí)間,這個(gè)交互作用發(fā)生在具有對(duì)應(yīng)于上述一系列未來(lái)任務(wù)的最高上述訪問(wèn)值總和的訪問(wèn)資源對(duì)象和具有對(duì)應(yīng)于上述一系列未來(lái)任務(wù)的最高上述被訪問(wèn)值總和的被訪問(wèn)資源對(duì)象之間,如果在上述被訪問(wèn)資源對(duì)象和上述訪問(wèn)資源對(duì)象之間存在上述一系列未來(lái)任務(wù)的話(huà),上述未來(lái)資源交互作用事件具有與調(diào)度表中的最早可用時(shí)間相等的任務(wù)起始時(shí)間、對(duì)應(yīng)于訪問(wèn)資源對(duì)象標(biāo)識(shí)屬性值的訪問(wèn)資源對(duì)象、對(duì)應(yīng)于被訪問(wèn)資源對(duì)象的被訪問(wèn)資源對(duì)象標(biāo)識(shí)屬性值和上述使用時(shí)長(zhǎng)屬性值;在上述計(jì)算機(jī)中從調(diào)度候選者中刪除在已調(diào)度的未來(lái)資源交互作用事件中對(duì)應(yīng)于被訪問(wèn)資源對(duì)象的使用示例和在已調(diào)度的未來(lái)資源交互作用事件中的該被訪問(wèn)成員對(duì)象標(biāo)識(shí)屬性以重新對(duì)那些尚未被調(diào)度的交互作用確定未來(lái)任務(wù)系列;在上述計(jì)算機(jī)中對(duì)應(yīng)于重新確定的未來(lái)任務(wù)系列重復(fù)確定總被訪問(wèn)值,確定總訪問(wèn)值,調(diào)度未來(lái)通信任務(wù),和刪除所有對(duì)應(yīng)于已調(diào)度的資源對(duì)象的使用示例的步驟,直至所有可以被調(diào)度進(jìn)上述第一個(gè)未來(lái)時(shí)間段中的使用示例都被調(diào)度了為止;在上述計(jì)算機(jī)中對(duì)應(yīng)于重新確定的未來(lái)任務(wù)系列并隨之對(duì)應(yīng)于上述多個(gè)未來(lái)時(shí)間段的各剩余部分再次執(zhí)行確定總被訪問(wèn)值,確定總訪問(wèn)值,調(diào)度未來(lái)資源交互作用事件,和刪除所有對(duì)應(yīng)于已調(diào)度的資源對(duì)象的資源對(duì)象的步驟,并且重復(fù)這些步驟直至所有可以被調(diào)度進(jìn)上述各未來(lái)時(shí)間段中的通信事件數(shù)據(jù)對(duì)象都被調(diào)度了,且所有資源交互作用事件都被調(diào)度進(jìn)了上述調(diào)度周期為止。
15.一種計(jì)算機(jī)實(shí)施的裝置,它允許在交互式數(shù)據(jù)通信中多個(gè)計(jì)算機(jī)節(jié)點(diǎn)以協(xié)同的方式執(zhí)行邏輯,包括在上述多個(gè)計(jì)算機(jī)節(jié)點(diǎn)之間校準(zhǔn)實(shí)時(shí)時(shí)間以使各計(jì)算機(jī)節(jié)點(diǎn)具有完全相同的實(shí)時(shí)時(shí)間的裝置;為各計(jì)算機(jī)節(jié)點(diǎn)確定通信調(diào)度表的裝置,上述調(diào)度表具有在未來(lái)開(kāi)始各相應(yīng)任務(wù)的不同時(shí)間;向相應(yīng)的計(jì)算機(jī)節(jié)點(diǎn)傳送各調(diào)度表的裝置;在其調(diào)度表上確定的時(shí)間從各節(jié)點(diǎn)開(kāi)始各通信的裝置。
16.一種具有消息載體的計(jì)算機(jī)實(shí)施的裝置,包括多個(gè)成員節(jié)點(diǎn),各成員節(jié)點(diǎn)都在與上述消息載體進(jìn)行數(shù)據(jù)通信,各成員節(jié)點(diǎn)具有一個(gè)中央處理單元,用來(lái)從上述消息載體接收帶有參考時(shí)刻時(shí)間值的參考時(shí)刻信息和用來(lái)確定上述參考時(shí)刻時(shí)間值和接收上述的參考時(shí)刻信息之差的時(shí)間相移邏輯,用來(lái)標(biāo)識(shí)在未來(lái)時(shí)間周期中上述成員節(jié)點(diǎn)所需的各節(jié)間通信和用來(lái)建立對(duì)應(yīng)于所有上述節(jié)間通信的通信請(qǐng)求表的通信確定邏輯,用來(lái)經(jīng)由上述消息載體向上述主調(diào)度器傳送上述通信請(qǐng)求表的通信請(qǐng)求發(fā)送邏輯,用來(lái)經(jīng)由上述消息載體從上述主調(diào)度器接收上述通信調(diào)度表的通信任務(wù)接收邏輯,用來(lái)從上述通信調(diào)度表和上述時(shí)差確定當(dāng)?shù)厝蝿?wù)調(diào)度表的任務(wù)集成邏輯,用來(lái)根據(jù)上述當(dāng)?shù)厝蝿?wù)調(diào)度表經(jīng)由上述消息載體與其它成員節(jié)點(diǎn)通信的通信實(shí)施邏輯,在經(jīng)由上述消息載體與上述多個(gè)成員節(jié)點(diǎn)數(shù)據(jù)通信中的主調(diào)度器,上述主調(diào)度器具有被中央處理單元執(zhí)行的調(diào)度器邏輯,上述調(diào)度器邏輯具有用來(lái)確定作為時(shí)間中的一個(gè)時(shí)刻的上述參考時(shí)刻時(shí)間值的參考時(shí)刻確定邏輯,用來(lái)創(chuàng)建具有上述參考時(shí)刻時(shí)間值的參考時(shí)刻信息和用來(lái)經(jīng)由上述消息載體傳送上述參考時(shí)刻信息的參考時(shí)刻通信邏輯,用來(lái)經(jīng)由上述消息載體從上述成員節(jié)點(diǎn)接收上述各通信請(qǐng)求表的通信請(qǐng)求接收邏輯,用來(lái)調(diào)度在對(duì)應(yīng)于上述參考時(shí)刻時(shí)間值的通信事件時(shí)間在成員節(jié)點(diǎn)之間的和對(duì)應(yīng)于在上述各接收到的通信請(qǐng)求表中列出的上述各節(jié)間通信的通信以及用來(lái)進(jìn)一步為對(duì)應(yīng)于上述已調(diào)度的通信的各成員節(jié)點(diǎn)確定通信請(qǐng)求表的通信調(diào)度表確定邏輯,用來(lái)經(jīng)由上述消息載體向相應(yīng)的成員節(jié)點(diǎn)發(fā)送上述各通信調(diào)度表的成員節(jié)點(diǎn)通信調(diào)度響應(yīng)邏輯。
17.如權(quán)利要求16的裝置,其中各成員節(jié)點(diǎn)還包括一個(gè)可變速振蕩器。
18.如權(quán)利要求16的裝置,其中各成員節(jié)點(diǎn)還包括時(shí)間校準(zhǔn)邏輯和振蕩器速率調(diào)節(jié)邏輯。
19.如權(quán)利要求16的裝置,其中上述消息載體包括一個(gè)縱橫接線器。
20.如權(quán)利要求16的裝置,其中上述消息載體包括一個(gè)網(wǎng)絡(luò)布局。
21.如權(quán)利要求16的裝置,其中上述消息載體包括一個(gè)射頻通信系統(tǒng)。
全文摘要
本發(fā)明公開(kāi)了一個(gè)在交互數(shù)據(jù)通信中多個(gè)計(jì)算機(jī)節(jié)點(diǎn)以協(xié)同方式執(zhí)行邏輯的系統(tǒng)。這個(gè)方法的特征在于校準(zhǔn)節(jié)點(diǎn)中時(shí)間的定義以便各節(jié)點(diǎn)具有完全相同的時(shí)間定義,為各計(jì)算機(jī)節(jié)點(diǎn)確定一個(gè)通信調(diào)度表,在這個(gè)調(diào)度表中具有為開(kāi)始各通信確定的未來(lái)時(shí)刻,向相應(yīng)的節(jié)點(diǎn)傳送它的調(diào)度表,在該調(diào)度表中確定的時(shí)間開(kāi)始各次通信。這個(gè)計(jì)算機(jī)網(wǎng)絡(luò)具有一個(gè)支持多個(gè)通信路徑的消息載體;與該消息載體相連的多臺(tái)計(jì)算機(jī);一個(gè)用來(lái)在計(jì)算機(jī)中保持時(shí)間同步的時(shí)鐘系統(tǒng);和一個(gè)用來(lái)決定計(jì)算機(jī)間通信順序的與消息載體相連的調(diào)度器。消息載體根據(jù)被計(jì)算機(jī)執(zhí)行的時(shí)間確定的任務(wù)在選出的計(jì)算機(jī)間建立通信。靠確定未來(lái)時(shí)間周期內(nèi)各計(jì)算機(jī)節(jié)點(diǎn)所需的與任何其它計(jì)算機(jī)節(jié)點(diǎn)的各次通信的通信請(qǐng)求表,向主調(diào)度器發(fā)送該通信請(qǐng)求表,接收從主調(diào)度器返回的通信調(diào)度表,從該通信調(diào)度表確定一個(gè)當(dāng)?shù)厝蝿?wù)調(diào)度表和在調(diào)度好的時(shí)間執(zhí)行通信,在多個(gè)計(jì)算機(jī)節(jié)點(diǎn)中的一個(gè)計(jì)算機(jī)節(jié)點(diǎn)以與其它計(jì)算機(jī)節(jié)點(diǎn)協(xié)同的方式執(zhí)行邏輯。
文檔編號(hào)G06F15/177GK1303497SQ99806614
公開(kāi)日2001年7月11日 申請(qǐng)日期1999年3月26日 優(yōu)先權(quán)日1998年5月26日
發(fā)明者蘭迪·D·伍茲, 戴維·M·杰奇莫, 韋恩·P·杜普雷, 蓋瑞特·H·弗尼爾斯, 斯蒂芬·G·邱吉爾, 喬治·P·費(fèi)爾南德斯 申請(qǐng)人:陶氏化學(xué)公司