欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

分級(jí)數(shù)據(jù)超高速緩沖存儲(chǔ)器系統(tǒng)中同步化的系統(tǒng)和方法

文檔序號(hào):6408454閱讀:195來源:國知局
專利名稱:分級(jí)數(shù)據(jù)超高速緩沖存儲(chǔ)器系統(tǒng)中同步化的系統(tǒng)和方法
技術(shù)領(lǐng)域
本發(fā)明涉及包含分級(jí)超高速緩沖存儲(chǔ)裝置的計(jì)算機(jī)系統(tǒng)中數(shù)據(jù)超高速緩沖存儲(chǔ)器的同步化問題。
現(xiàn)代計(jì)算機(jī)中包含著由不同容量及速度的種種存儲(chǔ)裝置構(gòu)成的存儲(chǔ)層次。這樣的存儲(chǔ)裝置中,例如有高速小容量的超高速緩沖存儲(chǔ)器和低速大容量的主存儲(chǔ)裝置。
在超高速緩沖存儲(chǔ)器或主存儲(chǔ)裝置中查找數(shù)據(jù)。進(jìn)而,(中央處理裝置及輸入輸出裝置等)多個(gè)裝置存取、更新包含在超高速緩沖存儲(chǔ)器及主存儲(chǔ)裝置中的數(shù)據(jù)。這樣,數(shù)據(jù)也許任何時(shí)候在超高速緩沖存儲(chǔ)器及/或主存儲(chǔ)裝置中都不一致或已經(jīng)變?yōu)殛惻f。
這就是超高速緩沖存儲(chǔ)器中的相關(guān)化(coherency)問題。超高速緩沖存儲(chǔ)器的同步化問題特別是在多個(gè)處理器各含有1個(gè)或1個(gè)以上超高速緩沖存儲(chǔ)器并且要求所有的超高速緩沖存儲(chǔ)器之間同步化的多處理器計(jì)算機(jī)系統(tǒng)中尤為突出。
維持超高速緩沖存儲(chǔ)器同步化的系統(tǒng)及其方法是眾所周知的,如刊登在一般可利用的文獻(xiàn)上的,為參考而在這里引用的John L.Hennessy and David A.Patterson的Computer Architecture——AQuantitative Approach(計(jì)算機(jī)體系結(jié)構(gòu)定量的方法)(MorganKaufmann Publishers,Inc. San Mateo,California,U.S.A.,1990年)等等。這些源于現(xiàn)有技術(shù)的系統(tǒng)及方法在解除存在于幾乎所有的計(jì)算機(jī)中的超高速緩沖存儲(chǔ)器同步化問題方面是充分的。
然而,新的計(jì)算機(jī)體系結(jié)構(gòu)往往產(chǎn)生新型的超高速緩沖存儲(chǔ)器同步化的問題。這些超高速緩沖存儲(chǔ)器同步化的問題,檢測自不必說,其分析及解決都很困難?,F(xiàn)有的超高速緩沖存儲(chǔ)器的同步化技術(shù)在消除這些新型超高速緩沖存儲(chǔ)器同步化的問題方面也是不適宜的。
這樣就要探求用于解決有關(guān)存在于具有分級(jí)超高速緩沖存儲(chǔ)器配置的計(jì)算機(jī)系統(tǒng)中超高速緩沖存儲(chǔ)器同步化問題的系統(tǒng)及方法。
所以,本發(fā)明的目的在于提供用于在由分別至少具有1個(gè)超高速緩沖存儲(chǔ)器的多個(gè)處理裝置構(gòu)成的計(jì)算機(jī)系統(tǒng)中控制執(zhí)行超高速緩沖存儲(chǔ)器存取指令的控制系統(tǒng)及方法。
若采用本發(fā)明,則在計(jì)算機(jī)系統(tǒng)中能夠維持多處理器的超高速緩沖存儲(chǔ)器的同步化。計(jì)算機(jī)系統(tǒng)的至少1個(gè)處理裝置是包含由被連接到第2級(jí)超高速緩沖存儲(chǔ)器的第1級(jí)超高速緩沖存儲(chǔ)器所構(gòu)成的分級(jí)超高速緩沖存儲(chǔ)器排列的處理裝置,整數(shù)存儲(chǔ)指令能把數(shù)據(jù)存入第1級(jí)超高速緩沖存儲(chǔ)器和第2級(jí)超高速緩沖存儲(chǔ)器。第1級(jí)超高速緩沖存儲(chǔ)器能字節(jié)寫入,第2級(jí)超高速緩沖存儲(chǔ)器能字寫入。
本發(fā)明的控制系統(tǒng)監(jiān)視第2級(jí)超高速緩沖存儲(chǔ)器的流水線,并判斷強(qiáng)制最小單位(FA,forced atomic)指令是否存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中。FA指令是要求第1級(jí)超高速緩沖存儲(chǔ)器中存儲(chǔ)分配的整數(shù)存儲(chǔ)指令,該指令能把字的整數(shù)倍之外的長度的數(shù)據(jù)存入第1級(jí)超高速緩沖存儲(chǔ)器。在FA指令執(zhí)行過程中,遵照FA指令的寫入數(shù)據(jù)向第2級(jí)超高速緩沖存儲(chǔ)器中這樣地寫入1個(gè)或1個(gè)以上的字節(jié)從第1級(jí)超高速緩沖存儲(chǔ)器中讀出并把字長數(shù)據(jù)被寫入到第2級(jí)超高速緩沖存儲(chǔ)器中。
在判定FA指令存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中時(shí),控制系統(tǒng)使對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入延遲,直到FA指令退出第2級(jí)超高速緩沖存儲(chǔ)器。從結(jié)果上看,延遲了對(duì)這種插入的產(chǎn)生負(fù)有責(zé)任的超高速緩沖存儲(chǔ)器存取指令的執(zhí)行,使得用超高速緩沖存儲(chǔ)器存取指令的操作而寫入的數(shù)據(jù)不因FA指令的操作而被破壞。
控制系統(tǒng)還要監(jiān)視第2級(jí)超高速緩沖存儲(chǔ)器,并判斷潛在出錯(cuò)(PM)指令是否存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中。PM指令是在第2級(jí)超高速緩沖存儲(chǔ)器中不要求存儲(chǔ)分配的超高速緩沖存儲(chǔ)器存取指令。
在判定PM指令存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中時(shí),控制系統(tǒng)使FA指令不進(jìn)入第2超高速緩沖存儲(chǔ)器流水線中。用該方法,雖然不能防止執(zhí)行對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的干預(yù),但在處理對(duì)第2級(jí)超高速緩沖存儲(chǔ)器的干預(yù)期間,有可能保留第2級(jí)超高速緩沖存儲(chǔ)器中的指令而能防止計(jì)算機(jī)系統(tǒng)處理裝置間的死鎖。
此外,控制系統(tǒng)還要判斷整數(shù)存儲(chǔ)操作的寫入數(shù)據(jù)所包含的、排列成行的字節(jié)整數(shù)倍的字是否僅為第1級(jí)超高速緩沖存儲(chǔ)器所獨(dú)占。在判定排列成行的字不是僅為第1級(jí)超高速緩沖存儲(chǔ)器所獨(dú)占時(shí),控制系統(tǒng)便開始進(jìn)行超高速緩沖存儲(chǔ)器出錯(cuò),填充操作,使整數(shù)存儲(chǔ)操作不進(jìn)入第2級(jí)超高速緩沖存儲(chǔ)器流水線,使排列成行的字為第1級(jí)超高速緩沖存儲(chǔ)器所獨(dú)占。


圖1是本發(fā)明的計(jì)算機(jī)系統(tǒng)的框圖。
圖2是示出了在具有分級(jí)超高速緩沖存儲(chǔ)器陣列的計(jì)算機(jī)系統(tǒng)中如何執(zhí)行整數(shù)存儲(chǔ)操作的示意圖。
圖3是描述由于具有分級(jí)超高速緩沖存儲(chǔ)器的計(jì)算機(jī)系統(tǒng)的構(gòu)造及操作上的特征而丟失數(shù)據(jù)情況的說明圖。
圖4是描述本發(fā)明的適宜的實(shí)施例的控制系統(tǒng)操作的流程圖。
圖5是描述本發(fā)明的適宜的實(shí)施例的控制系統(tǒng)操作的流程圖。
以下參照附圖詳細(xì)地說明本發(fā)明的理想實(shí)施例。另外,圖中相同的參考符號(hào)表示相同或功能相似的元件。
1.0.硬件環(huán)境圖1是使本發(fā)明能夠良好地動(dòng)作的計(jì)算機(jī)系統(tǒng)101的部分框圖。另外,如計(jì)算機(jī)專業(yè)人員能看出那樣,計(jì)算機(jī)系統(tǒng)101包含圖1所示內(nèi)容之外的構(gòu)成部件。
計(jì)算機(jī)系統(tǒng)101具有連接于總線126上的處理裝置102。處理裝置102雖然最好是RISC(Reduced Instruction Set Computer)(簡化指令系統(tǒng)計(jì)算機(jī))處理器,但也可以是具有其它類型計(jì)算機(jī)結(jié)構(gòu)的處理器。有關(guān)RISC計(jì)算處理器,記載在為參考而引用的以下文獻(xiàn)中。即,記載于G.Kane and J.Heinrich,MIPS RISC Architec-ture(Pren“Hall“,Englewood Cliffs,New Jersey,U.S.A.,1992);Mike Johnson,Superscalar Microprocessor Design(Pren-tice Hall,Englewood Cliffs,New Jersey,U.S.A.,1991)以及Stephen B.Furber,VLSI RISC Architecture and Organization(Marcol Dekker,Inc.,New York,New York,U.S.A.,1989)中。
處理裝置102包含用于執(zhí)行整數(shù)操作的整數(shù)功能單元(IU為清楚明了而在圖1中未畫出)及用于執(zhí)行浮點(diǎn)操作的浮點(diǎn)功能單元(FPU為清楚明了起見在圖1中未畫出)等多個(gè)功能單元。
處理裝置102包含由數(shù)據(jù)超高速緩沖存儲(chǔ)器108那樣的第1級(jí)超高速緩沖存儲(chǔ)器和綜合超高速緩沖存儲(chǔ)器112那樣的第2級(jí)超高速緩沖存儲(chǔ)器構(gòu)成的分級(jí)超高速緩中存儲(chǔ)器排列。一般說數(shù)據(jù)超高速緩沖存儲(chǔ)器108比綜合超高速緩沖存儲(chǔ)器112小(數(shù)據(jù)超高速緩沖存儲(chǔ)器108的理想大小是16K字節(jié),綜合超高速緩沖存儲(chǔ)器112的理想大小是16M字節(jié))。存儲(chǔ)在綜合超高速緩沖存儲(chǔ)器112中數(shù)據(jù)的部分子集進(jìn)入到數(shù)據(jù)超高速緩沖存儲(chǔ)器108中。通常數(shù)據(jù)超高速緩沖存儲(chǔ)器108的操作比綜合超高速緩沖存儲(chǔ)器112操作速度快。
數(shù)據(jù)超高速緩沖存儲(chǔ)器108在處理裝置102中最好和IU形成在同一個(gè)計(jì)算機(jī)芯片上(因而,數(shù)據(jù)超高速緩沖存儲(chǔ)器108也被稱為“片內(nèi)超高速緩沖存儲(chǔ)器”)。綜合超高速緩沖存儲(chǔ)器112在處理裝置102中最好位于功能單元104的外部(因而,綜合超高速緩沖存儲(chǔ)器112也被稱為“片外超高速緩沖存儲(chǔ)器”)。
整數(shù)數(shù)據(jù)處于數(shù)據(jù)超高速緩沖存儲(chǔ)器108中。浮點(diǎn)數(shù)據(jù)處于綜合超高速緩沖存儲(chǔ)器112中。此外綜合超高速緩沖存儲(chǔ)器112也是整數(shù)數(shù)據(jù)用的第2級(jí)存儲(chǔ)單元。整數(shù)存儲(chǔ)操作是把整數(shù)數(shù)據(jù)存在數(shù)據(jù)超高速緩沖存儲(chǔ)器108和綜合超高速緩沖存儲(chǔ)器112二者之中。浮點(diǎn)存儲(chǔ)操作是繞過數(shù)據(jù)超高速緩沖存儲(chǔ)器108,把浮點(diǎn)數(shù)據(jù)存儲(chǔ)到綜合超高速緩沖存儲(chǔ)器112中。
理想的是數(shù)據(jù)超高速緩沖存儲(chǔ)器108支持非字寫入。數(shù)據(jù)超高速緩沖存儲(chǔ)器108雖然也可以支持不同非字寫入長度的寫入,但理想的是數(shù)據(jù)超高速緩沖存儲(chǔ)器108支持字節(jié)寫入。即,數(shù)據(jù)能夠以1個(gè)字節(jié)組寫入數(shù)據(jù)超高速緩沖存儲(chǔ)器108。換言之,數(shù)據(jù)超高速緩沖存儲(chǔ)器108理想的是能夠字節(jié)寫入。綜合超高速緩沖存儲(chǔ)器112不支持字節(jié)寫入。但綜合超高速緩沖存儲(chǔ)器112支持字寫入,這時(shí),字最好是4字節(jié)。換言之,綜合超高速緩沖存儲(chǔ)器112能夠進(jìn)行字寫入。
通過支持字寫入而不是字節(jié)寫入,使得能夠用更少的RAM(隨機(jī)存取存儲(chǔ)器)執(zhí)行綜合超高速緩沖存儲(chǔ)器112寫入,因此可削減處理裝置102的費(fèi)用。由于支持字節(jié)寫入時(shí)比支持字寫入時(shí)的奇偶檢驗(yàn)程度加大,所以實(shí)際上也是如此。例如,在字為32位并且用具有4位寫入寬度的RAM執(zhí)行綜合超高速緩沖存儲(chǔ)器112寫入的情況下,支持字節(jié)寫入時(shí),每2個(gè)數(shù)據(jù)RAM就需要1個(gè)奇偶檢驗(yàn)的RAM。
如上所述,通過整數(shù)存儲(chǔ)操作整數(shù)數(shù)據(jù)被存入到數(shù)據(jù)超高速緩沖存儲(chǔ)器108和綜合超高速緩沖存儲(chǔ)器112二者之中。如上所述,數(shù)據(jù)超高速緩沖存儲(chǔ)器108支持字節(jié)寫入,綜合超高速緩沖存儲(chǔ)器112支持字寫入。
圖2圖示出了對(duì)于綜合超高速緩沖存儲(chǔ)器112執(zhí)行1字節(jié)的整數(shù)存儲(chǔ)操作的情況。圖2中概念性地描畫出了數(shù)據(jù)超高速緩沖存儲(chǔ)器108由多列構(gòu)成的狀況,各列包含著排列為4字節(jié)的數(shù)據(jù)字。
在1字節(jié)的整數(shù)存儲(chǔ)操作的操作過程中,1字節(jié)(表示整數(shù)存儲(chǔ)操作的“寫入數(shù)據(jù)”)被寫入到數(shù)據(jù)超高速緩沖存儲(chǔ)器108的1列中。而本列其它3個(gè)字節(jié)從數(shù)據(jù)高速緩沖存儲(chǔ)器108讀出,并將此三個(gè)字節(jié)與整數(shù)存儲(chǔ)操作的字節(jié)(即寫入數(shù)據(jù))適當(dāng)?shù)亟Y(jié)合,形成數(shù)據(jù)字。其后該字被存入綜合超高速緩沖存儲(chǔ)器112中。
向數(shù)據(jù)超高速緩沖存儲(chǔ)器108及綜合超高速緩沖存儲(chǔ)器112的數(shù)據(jù)存儲(chǔ)被流水線化。與數(shù)據(jù)超高速緩沖存儲(chǔ)器108及綜合超高速緩沖存儲(chǔ)器112相關(guān)連的數(shù)據(jù)存儲(chǔ)流水線(數(shù)據(jù)超高速緩沖存儲(chǔ)器流水線在圖1中示為106,綜合超高速緩沖存儲(chǔ)器流水線在圖1中示為110)在實(shí)現(xiàn)對(duì)于綜合超高速緩沖存儲(chǔ)器112的浮點(diǎn)錯(cuò)誤之前,執(zhí)行對(duì)于數(shù)據(jù)超高速緩沖存儲(chǔ)器108的整數(shù)存儲(chǔ)。這樣一來,在執(zhí)行了對(duì)于數(shù)據(jù)高速緩沖存儲(chǔ)器108的存儲(chǔ)后并在結(jié)束對(duì)于綜合超高速緩沖存儲(chǔ)器112(包含浮點(diǎn)錯(cuò)誤的實(shí)現(xiàn))的浮點(diǎn)存儲(chǔ)之前,不能取消整數(shù)存儲(chǔ)指令。
分級(jí)超高速緩沖存儲(chǔ)器的排列進(jìn)一步地在題為“分級(jí)超高速緩沖存儲(chǔ)器”的美國專利申請中進(jìn)行了論述。
另外,在圖1中,計(jì)算機(jī)系統(tǒng)101包含處理裝置114那樣的與總線126連接的附加處理裝置。這些與總線126連接的附加處理裝置(處理裝置114等)既可以具有分級(jí)超高速緩沖存儲(chǔ)器排列,也可以是其它類型的超高速緩沖存儲(chǔ)器排列(這樣的超高速緩沖存儲(chǔ)器排列必須能存儲(chǔ)整數(shù)數(shù)據(jù)和浮點(diǎn)數(shù)據(jù))。為了說明起見,也把處理裝置102稱為第1處理裝置102,把處理裝置114稱為第2處理裝置114。
計(jì)算機(jī)系統(tǒng)101維持多處理器數(shù)據(jù)的同步性。即,用計(jì)算機(jī)系統(tǒng)101維持被分配和存儲(chǔ)在連接到總線126的處理裝置之間的整數(shù)及浮點(diǎn)數(shù)據(jù)的同步。計(jì)算機(jī)系統(tǒng)101為維持這些數(shù)據(jù)的同步具備有超高速緩沖存儲(chǔ)器同步化機(jī)構(gòu)(未畫出)。
用于超高速緩沖存儲(chǔ)器同步化的系統(tǒng)及方法是眾所周知的,上述中所引用的Compute Architecture A Quantitative Approach(計(jì)算機(jī)體系結(jié)構(gòu),定量分析)等刊載在很多一般可利用的文獻(xiàn)之中。這些眾所周知的超高速緩沖存儲(chǔ)器同步化技術(shù)可用于執(zhí)行計(jì)算機(jī)系統(tǒng)101中眾多超高速緩沖存儲(chǔ)器同步化機(jī)構(gòu)的情況。
本發(fā)明者特別指定了起因于計(jì)算機(jī)系統(tǒng)101的特別構(gòu)造上及操作上的特征、特別是上述分級(jí)超高速緩沖存儲(chǔ)器排列而與計(jì)算機(jī)系統(tǒng)101中超高速緩沖存儲(chǔ)器同步化相關(guān)聯(lián)的問題。本發(fā)明者還發(fā)展了對(duì)于這些與超高速緩沖存儲(chǔ)器同步化相關(guān)聯(lián)問題的解決方案。這些與超高速緩沖存儲(chǔ)器同步化相關(guān)聯(lián)的問題從前沒有被特別指出過,因而至今也還未被解決。
以下,詳細(xì)地論述由本發(fā)明者特別指定的與超高速緩沖存儲(chǔ)器相關(guān)聯(lián)的問題以及本發(fā)明者所發(fā)展了的對(duì)于這些問題的解決辦法。
2.0.數(shù)據(jù)損失問題作為計(jì)算機(jī)系統(tǒng)101特別構(gòu)造上及操作上的特征之結(jié)果,通過1個(gè)處理器而被存入超高速緩沖存儲(chǔ)器的數(shù)據(jù)有可能因其它處理器的操作而被破壞。特別是,該數(shù)據(jù)損失問題是由計(jì)算機(jī)系統(tǒng)101的以下特征所引起的。即,(1)分級(jí)超高速緩沖存儲(chǔ)器排列;(2)數(shù)據(jù)超高速緩沖存儲(chǔ)器108和綜合超高速緩沖存儲(chǔ)器112的寫入情況不同(即,數(shù)據(jù)超高速緩沖存儲(chǔ)器108支持字節(jié)寫入而綜合超高速緩沖存儲(chǔ)器112支持字寫入);(3)計(jì)算機(jī)系統(tǒng)101的多處理器同步化必要條件;(4)對(duì)于數(shù)據(jù)超高速緩沖存儲(chǔ)器108的整數(shù)存儲(chǔ)要在實(shí)現(xiàn)對(duì)于綜合超高速緩沖存儲(chǔ)器112的浮點(diǎn)出錯(cuò)之前執(zhí)行。
圖3描述了發(fā)生該數(shù)據(jù)損失問題的情況,用4個(gè)不同的時(shí)間t0、t1、t2、t3(這些時(shí)間也可以不一定相互之間為等間隔)表示第1處理裝置102中綜合超高速緩沖存儲(chǔ)器112所選擇的內(nèi)容和連接到總線126上(圖中未顯示)的別的處理裝置的超高速緩沖存儲(chǔ)器。設(shè)該別的處理裝置的超高速緩沖存儲(chǔ)器支持字節(jié)寫入。
在時(shí)間t0,第1處理裝置102中的綜合超高速緩沖存儲(chǔ)器112存儲(chǔ)具有字節(jié)值A(chǔ)、B、C、D的排列成行的4字節(jié)字302。假設(shè)該字的獨(dú)占拷貝(即,計(jì)算機(jī)系統(tǒng)101中唯一有效的拷貝)容納在第1處理裝置102的綜合超高速緩沖存儲(chǔ)器112中。因而,該字302不能在圖3所示的別的處理裝置的超高速緩沖存儲(chǔ)器中利用。
在時(shí)間t0和t1之間的任意時(shí)刻,第1處理裝置102的功能單元104對(duì)于第1處理裝置102的數(shù)據(jù)超高速緩沖存儲(chǔ)器108及綜合超高速緩沖存儲(chǔ)器112中所存儲(chǔ)的數(shù)據(jù)字302發(fā)出寫入字節(jié)“Y”的整數(shù)存儲(chǔ)指令。該整數(shù)存儲(chǔ)指令的處理使字節(jié)A、B、C、D從第1處理器102的數(shù)據(jù)超高速緩沖存儲(chǔ)器108中讀進(jìn)來,并與整數(shù)存儲(chǔ)指令相關(guān)連,與字節(jié)“Y”進(jìn)行適當(dāng)?shù)亟Y(jié)合。
在時(shí)間t0和t1之間,別的處理裝置內(nèi)的功能單元發(fā)出把字節(jié)“X”寫入數(shù)據(jù)字節(jié)302的存儲(chǔ)指令。然而,由于數(shù)據(jù)字302在別的處理裝置的超高速緩沖存儲(chǔ)器中無效,未被獨(dú)占,因此,由別的處理裝置發(fā)出超高速緩沖存儲(chǔ)器出錯(cuò)信息。即,在計(jì)算機(jī)系統(tǒng)101中只有在數(shù)據(jù)被獨(dú)占時(shí)才能夠進(jìn)行超高速緩沖存儲(chǔ)器的數(shù)據(jù)寫入。
作為超高速緩沖存儲(chǔ)器出錯(cuò)信息的結(jié)果,數(shù)據(jù)字302的獨(dú)占拷貝從第1處理裝置102傳送到其它處理裝置。于是,結(jié)束別的處理裝置中的存儲(chǔ)指令,字節(jié)“X”被存入數(shù)據(jù)字302的字節(jié)之一。這些動(dòng)作如圖3所示直到時(shí)間t1結(jié)束。
在時(shí)間t1和t2之間的任意時(shí)刻,做好被結(jié)合的字節(jié)A、Y、C、D寫入第1處理裝置102中數(shù)據(jù)超高速緩沖存儲(chǔ)器108的準(zhǔn)備。然而,由于數(shù)據(jù)字302在第1處理裝置102的數(shù)據(jù)超高速緩沖存儲(chǔ)器108中無效,未被獨(dú)占,因此,由第1處理裝置102發(fā)出超高速緩沖存儲(chǔ)器出錯(cuò)信息。超高速緩沖存儲(chǔ)器出錯(cuò)信息的結(jié)果,數(shù)據(jù)字302的獨(dú)占拷貝從其它處理裝置傳送到第1處理裝置102。如圖3所示,這些動(dòng)作直到時(shí)間t2結(jié)束。
在時(shí)間t2和t3之間的任意時(shí)刻,在第1處理裝置102中結(jié)束懸而未決的整數(shù)存儲(chǔ)指令,字節(jié)A、Y、C、D被存入數(shù)據(jù)字302中。應(yīng)注意的是,用其它處理裝置寫入到數(shù)據(jù)字302中的字節(jié)“X”由于第1處理裝置102的操作而被破壞。這樣,計(jì)算機(jī)系統(tǒng)101的特殊構(gòu)造上及操作上的特征之結(jié)果,使得用1個(gè)處理器所存儲(chǔ)的數(shù)據(jù)將被其它處理器的操作破壞。
對(duì)于計(jì)算機(jī)系統(tǒng)101的詳細(xì)且總括性的分析結(jié)果,使得由本發(fā)明者特別指出并理解了數(shù)據(jù)損失的問題。特定出數(shù)據(jù)損失的問題比較困難,若再考慮到將它們組合起來產(chǎn)生問題的上述要素的多重性及復(fù)雜性,則理解并解決這一問題就更為困難了。
3.0.由本發(fā)明所提出的數(shù)據(jù)損失問題的解決方法以下論述為解決數(shù)據(jù)損失問題本發(fā)明開發(fā)的解決方法。
通過確實(shí)地最小單位地執(zhí)行可能引起數(shù)據(jù)損失問題的超高速緩沖存儲(chǔ)器存取指令而解決數(shù)據(jù)損失問題。特別是從數(shù)據(jù)超高速緩沖存儲(chǔ)器108內(nèi)的(3字節(jié)的)讀出開始到綜合超高速緩沖存儲(chǔ)器112內(nèi)的(4字節(jié)的)寫入結(jié)束為止最小單位地執(zhí)行可能引起數(shù)據(jù)損失問題的超高速緩沖存儲(chǔ)器存取指令。換言之,從可能引起數(shù)據(jù)損失問題的超高速緩沖存儲(chǔ)器存取指令進(jìn)入綜合超高速緩沖存儲(chǔ)器112的流水線110之點(diǎn)開始到指令退出綜合超高速緩沖存儲(chǔ)器112的流水線之點(diǎn)為止,最小單位地執(zhí)行該指令。在這樣指令的最小單位地執(zhí)行過程中不允許插入。
如計(jì)算機(jī)專業(yè)人員所周知,插入是為處理器X而執(zhí)行的,包括從處理器Y讀出數(shù)據(jù),這樣的數(shù)據(jù)被用于更新處理器X的超高速緩沖存儲(chǔ)器。插入在為維持計(jì)算機(jī)系統(tǒng)中超高速緩沖存儲(chǔ)器之間的同步方面是不可缺少的。
例如,考慮圖3所示的情況。如上述,在時(shí)間t0,第1處理裝置102內(nèi)的綜合超高速緩沖存儲(chǔ)器112將存儲(chǔ)具有字節(jié)值A(chǔ)、B、C、D的排列成行的4字節(jié)字302的獨(dú)點(diǎn)拷貝(exdusive copy)。在第1處理裝置102中,用功能單元104之一在時(shí)間t0和t1之間所發(fā)出的整數(shù)存儲(chǔ)指令,開始從數(shù)據(jù)超高速緩沖存儲(chǔ)器108進(jìn)行字節(jié)A、C、D的存儲(chǔ)器的讀取。
若應(yīng)用本發(fā)明,則在該時(shí)刻,整數(shù)存儲(chǔ)指令將進(jìn)入到阻止對(duì)于綜合超高速緩沖存儲(chǔ)器112插入的最小單位地執(zhí)行部分。因而,其它處理裝置直到第1處理裝置102中未決的整數(shù)存儲(chǔ)指令結(jié)束之前(即,字節(jié)A、Y、C、D被存儲(chǔ)到綜合超高速緩沖存儲(chǔ)器112之前)沒有修正數(shù)據(jù)字302的機(jī)會(huì)。
在該第1處理裝置102內(nèi)未決的整數(shù)存儲(chǔ)指令結(jié)束之后,數(shù)據(jù)字302的獨(dú)點(diǎn)拷貝被傳送到其它處理裝置。即,在未決的存儲(chǔ)指令結(jié)束并退出綜合超高速緩沖存儲(chǔ)器112的流水線之后,允許對(duì)于綜合超高速緩沖存儲(chǔ)器112的插入。隨后,字節(jié)“X”被寫入到數(shù)據(jù)字302中,使數(shù)據(jù)字302包含字節(jié)A、Y、X、D。
因而,通過本發(fā)明的操作,用1個(gè)處理器(即圖3例中的其它處理器)存儲(chǔ)到超高速緩沖存儲(chǔ)器中的數(shù)據(jù)不會(huì)因其它處理器(即圖3例中的第1處理裝置102)的操作而被破壞。
如上述,本發(fā)明通過確實(shí)地最小單位地執(zhí)行可能引起數(shù)據(jù)損失問題的超高速緩沖存儲(chǔ)器存取指令,解決數(shù)據(jù)損失的問題。由于這些指令如上述那樣被強(qiáng)制地最小單位地執(zhí)行,所以被稱為強(qiáng)制最小單位指令(FAforced atomic)。
作為數(shù)據(jù)損失問題解決對(duì)策的一部分,發(fā)明者把FA指令特定為包含整數(shù)存儲(chǔ)指令(即,要求把數(shù)據(jù)存儲(chǔ)在存儲(chǔ)排列成行的字塊以外數(shù)據(jù)的數(shù)據(jù)超高速緩沖存儲(chǔ)器108和綜合超高速緩沖存儲(chǔ)器112二者之中的超高速緩沖存儲(chǔ)器存取指令)。在理想狀態(tài)下,綜合超高速緩沖存儲(chǔ)器112的數(shù)據(jù)存儲(chǔ)寬度是4字節(jié),F(xiàn)A指令是存儲(chǔ)排列成行的4字節(jié)的字塊以外的數(shù)據(jù)或是存儲(chǔ)排列成行的4字節(jié)整倍數(shù)以外數(shù)據(jù)的整數(shù)存儲(chǔ)指令。這樣的指令要求數(shù)據(jù)超高速緩沖存儲(chǔ)器108中的存儲(chǔ)分配,要求數(shù)據(jù)超高速緩沖存儲(chǔ)器108為檢索字節(jié)而存取,并把4字節(jié)的存儲(chǔ)內(nèi)容寫入綜合超高速緩沖存儲(chǔ)器112中。
以下詳細(xì)地論述數(shù)據(jù)損失問題的本解決方法。
4.0.死鎖問題如上述,數(shù)據(jù)損失問題通過特定FA指令并最小單位地執(zhí)行FA指令而得到解決。然而,如下所述,F(xiàn)A指令的最小單位執(zhí)行將產(chǎn)生出新的問題,這就是存在著計(jì)算機(jī)系統(tǒng)101中處理裝置死鎖的可能性。
死鎖問題有2種情況,那就是基于潛在出錯(cuò)指令的死鎖和在執(zhí)行強(qiáng)制最小單位指令時(shí)對(duì)于數(shù)據(jù)獨(dú)占性的要求而引進(jìn)的死鎖。對(duì)于這些死鎖問題的情況,以下進(jìn)行說明。
4.1.由潛在出錯(cuò)指令引起的死鎖聯(lián)系圖1,說明包含產(chǎn)生死鎖的FA指令執(zhí)行過程的情況。
在時(shí)間t0,假設(shè)在第1處理裝置102中開始浮點(diǎn)寫入指令。同樣,假定在第2處理裝置114中也開始浮點(diǎn)寫入指令。如上述,浮點(diǎn)寫入指令繞過數(shù)據(jù)超高速緩沖存儲(chǔ)器108、120,直接進(jìn)入綜合超高速緩沖存儲(chǔ)器112、124中。
在時(shí)間t1,假定在第1處理裝置102中未決的浮點(diǎn)寫入指令尚未結(jié)束,F(xiàn)A整數(shù)寫入指令在第1處理裝置102中已開始。在第1處理裝置102中FA整數(shù)寫入指令的處理過程中,開始從數(shù)據(jù)超高速緩沖存儲(chǔ)器108的讀取操作,檢索適當(dāng)?shù)?字節(jié),對(duì)綜合超高速緩沖存儲(chǔ)器112進(jìn)行應(yīng)傳送來的4字節(jié)的寫入。這樣,就阻止了綜合超高速緩沖存儲(chǔ)器112中對(duì)于包含這些3字節(jié)(還包含F(xiàn)A整數(shù)寫入指令的寫入數(shù)據(jù))的排列成行的4字節(jié)的插入。
另外,假定在時(shí)間t1,第2處理裝置114中未決的浮點(diǎn)寫入指令尚未結(jié)束,在第2處理裝置114內(nèi)FA整數(shù)寫入指令。在第2處理裝置114中開始FA整數(shù)寫入指令的處理過程中,開始從數(shù)據(jù)超高速緩沖存儲(chǔ)器120的讀取操作,檢索適當(dāng)?shù)?字節(jié),對(duì)綜合超高速緩沖存儲(chǔ)器124進(jìn)行應(yīng)傳送來的4字節(jié)的寫入。這樣,阻止了綜合超高速緩沖存儲(chǔ)器124中對(duì)于包含這些3字節(jié)(還包含F(xiàn)A整數(shù)寫入指令的寫入數(shù)據(jù))的排列整齊的4字節(jié)字。
假設(shè)在時(shí)間t2,由于第1處理裝置102中未決的浮點(diǎn)寫入指令而實(shí)現(xiàn)超高速緩沖存儲(chǔ)器出錯(cuò)。即,應(yīng)該用浮點(diǎn)寫入指令修正的數(shù)據(jù)在第1處理裝置102的綜合超高速緩沖存儲(chǔ)器112中無效,未被獨(dú)占。進(jìn)而,假設(shè)該數(shù)據(jù)在第2處理裝置114的綜合超高速緩沖存儲(chǔ)器124中有效,被獨(dú)占。這樣,為了結(jié)束第1處理裝置102中為未決狀態(tài)的浮點(diǎn)寫入指令,就要請求第2處理裝置114的綜合超高速緩沖存儲(chǔ)器124中的插入。然而,該插入由于第2處理裝置114中未決狀態(tài)中的FA整數(shù)寫入指令的最小單位執(zhí)行而被阻止。
再有,假設(shè)在時(shí)間t2,第2處理裝置114內(nèi)由于未決的浮點(diǎn)寫入指令而實(shí)現(xiàn)超高速緩沖存儲(chǔ)器出錯(cuò)。即,應(yīng)該用浮點(diǎn)寫入指令修正的數(shù)據(jù)在第2處理裝置114的綜合超高速緩沖存儲(chǔ)器124中無效,未被獨(dú)占。再假設(shè)該數(shù)據(jù)在第1處理裝置102的綜合超高速緩沖存儲(chǔ)器112中有效,被獨(dú)占。這樣,為了結(jié)束在第2處理裝置114中為未決狀態(tài)的浮點(diǎn)寫入指令,就請求第1處理裝置102的綜合超高速緩沖存儲(chǔ)器112中的插入。然而,該插入由于第1處理裝置102中未決狀態(tài)中的FA整數(shù)寫入指令的最小單位執(zhí)行而被阻止。
這樣一來,第1處理裝置102被封鎖,依賴來自第2處理裝置114的數(shù)據(jù),第2處理裝置114被封鎖,依賴來自第1處理裝置102的數(shù)據(jù)。然而,來自第1處理裝置102的數(shù)據(jù)在第1處理裝置102的封鎖被解除之前不能利用。同樣,來自第2處理裝置114的數(shù)據(jù)在第2處理裝置114的封鎖被解除之前也不能利用,因而,在第1處理裝置102和第2處理裝置114之間存在死鎖狀態(tài)。
4.2.本發(fā)明提出的死鎖問題(潛在出錯(cuò)指令)的解決方法說明發(fā)明者們?yōu)榻鉀Q這個(gè)死鎖問題而開發(fā)的解決方法。
如由發(fā)明者特定那樣,對(duì)于該死鎖問題有關(guān)的超高速緩沖存儲(chǔ)器存取指令中有2個(gè)范疇。第1指令范疇包含可能產(chǎn)生數(shù)據(jù)損失問題的超高速緩沖存儲(chǔ)器存取指令。這些指令被稱為強(qiáng)制最小單位(FA)指令,在前述中進(jìn)行了限定及說明。
第2指令范疇包含不要求在數(shù)據(jù)超高速緩沖存儲(chǔ)器108、120中的存儲(chǔ)分配(即,不在數(shù)據(jù)超高速緩沖存儲(chǔ)器108、120中存儲(chǔ)數(shù)據(jù)),而直接在綜合超高速緩沖存儲(chǔ)器112、124中存取的超高速緩沖存儲(chǔ)器存取指令。這些指令和在數(shù)據(jù)超高速緩沖存儲(chǔ)器108、120中要求存儲(chǔ)分配的FA指令不同。
在綜合超高速緩沖存儲(chǔ)器112、124的流水線中FA指令不能發(fā)生綜合超高速緩沖存儲(chǔ)器出錯(cuò)(但請參照下節(jié)中關(guān)于該話題的議論)。由于FA指令在數(shù)據(jù)超高速緩沖存儲(chǔ)器108、120中要求存儲(chǔ)分配,又由于數(shù)據(jù)超高速緩沖存儲(chǔ)器108、120存儲(chǔ)了在各個(gè)綜合超高速緩沖存儲(chǔ)器112、124中被存數(shù)據(jù)的適當(dāng)子集,因而實(shí)際情況確實(shí)如此。
與此形成對(duì)照的是,第2指令范疇的指令由于不要求在數(shù)據(jù)超高速緩沖存儲(chǔ)器108、120中存儲(chǔ)分配,所以能夠發(fā)生綜合超高速緩沖存儲(chǔ)器出錯(cuò)。因而,第2指令范疇的指令被稱為潛在出錯(cuò)(PM)指令。
實(shí)際上還有包含不屬于第1指令范疇或第2指令范疇的超高速緩沖存儲(chǔ)器存取指令的第3指令范疇。第3指令范疇的指令能夠與第1指令范疇的指令或第2指令范疇的指令放在同一組中。這樣的指令分組法,例如是為提高性能而進(jìn)行的。第3指令范疇的指令由于與解決死鎖問題無關(guān)所以不做更深入的論述。
一旦特定出FA及PM指令范疇,發(fā)明者就能夠發(fā)明用于完全分析死鎖問題并解決死鎖問題的順序。特別是,發(fā)明者斷定死鎖問題僅在潛在出錯(cuò)指令之后接續(xù)強(qiáng)制最小單位指令時(shí)潛在地發(fā)生。若更詳細(xì)地對(duì)于處理裝置102進(jìn)行說明,則發(fā)明者斷定死錯(cuò)問題僅在PM指令已經(jīng)存在于綜合超高速緩沖存儲(chǔ)器112的流水線中的情況下允許FA指令進(jìn)入綜合超高速緩沖存儲(chǔ)器112的流水線時(shí)潛在地發(fā)生。
在上述的情況中,例如,于時(shí)間t0開始的浮點(diǎn)寫入指令表示PM指令。在時(shí)間t1開始的指令表示FA指令。
這樣一來,若應(yīng)用本發(fā)明,則通過采用僅當(dāng)PM指令已經(jīng)不存在于綜合超高速緩沖存儲(chǔ)器112的流水線時(shí)才允許FA指令進(jìn)入綜合超高速緩沖存儲(chǔ)器112的流水線的方法,能夠避免死鎖問題。PM指令仍存在于綜合超高速緩沖存儲(chǔ)器112的流水線時(shí)使FA指令延遲。
以上進(jìn)一步詳細(xì)地說明了對(duì)于死鎖問題(即,部分地由潛在出錯(cuò)指令引起的死鎖問題)的該解決方法。
4.3.在執(zhí)行強(qiáng)制最小單位指令時(shí)因?qū)τ跀?shù)據(jù)獨(dú)占性的要求而引起的死鎖上述中說明了由于執(zhí)行潛在出錯(cuò)指令而引進(jìn)的死鎖問題,以下說明在執(zhí)行強(qiáng)制最小單位指令時(shí)因要求數(shù)據(jù)的獨(dú)占性而引起的死鎖問題。該死鎖問題與潛在出錯(cuò)死鎖問題類似。
如上述那樣,當(dāng)對(duì)于處理裝置102進(jìn)行說明時(shí),則只在綜合超高速緩沖存儲(chǔ)器112存儲(chǔ)著數(shù)據(jù)的獨(dú)占拷貝時(shí)(即,僅在綜合超高速緩沖存儲(chǔ)器112存儲(chǔ)著數(shù)據(jù)的有效拷貝時(shí))才能夠把數(shù)據(jù)寫入綜合超高速緩沖存儲(chǔ)器112。浮點(diǎn)寫入對(duì)于綜合超高速緩沖存儲(chǔ)器112進(jìn)行,與問題有關(guān)的數(shù)據(jù)獨(dú)占拷貝沒有存儲(chǔ)在綜合超高速緩沖存儲(chǔ)器112時(shí),必須執(zhí)行超高速緩沖存儲(chǔ)器出錯(cuò)·填充操作(即插入)。
在計(jì)算機(jī)系統(tǒng)101中,第1處理裝置102內(nèi)所進(jìn)行的1字節(jié)FA整數(shù)寫入操作是進(jìn)行對(duì)于數(shù)據(jù)超高速緩沖存儲(chǔ)器108和綜合超高速緩沖存儲(chǔ)器112的寫入。若應(yīng)用本發(fā)明,與對(duì)于數(shù)據(jù)超高速緩沖存儲(chǔ)器108的寫入相關(guān)聯(lián),與人們所關(guān)心的數(shù)據(jù)字節(jié)(即,用整數(shù)寫入操作修正的數(shù)據(jù)超高速緩沖存儲(chǔ)器108中的字節(jié))被要求存在于數(shù)據(jù)超高速緩沖存儲(chǔ)器108中被獨(dú)占的超高速緩沖存儲(chǔ)器塊中。否則,不允許進(jìn)行整數(shù)寫入操作處理。超高速緩沖存儲(chǔ)器塊的寬度理想的是128字節(jié),但只要不脫離本發(fā)明的范圍和精神,也可以是其它的值。
發(fā)明者斷定,只有與人們所關(guān)心的有關(guān)的數(shù)據(jù)和排列成行的4字節(jié)數(shù)據(jù)(包含人們所關(guān)心的數(shù)據(jù)字節(jié))中其它3字節(jié)一起位于數(shù)據(jù)超高速緩沖存儲(chǔ)器108中被獨(dú)占的超高速緩沖存儲(chǔ)器塊中時(shí),才應(yīng)該允許整數(shù)寫入操作進(jìn)入綜合超高速緩沖存儲(chǔ)器的流水線中。否則,也許會(huì)發(fā)生死鎖。
考慮在這些4字節(jié)在數(shù)據(jù)超高速緩沖存儲(chǔ)器108中未被獨(dú)占時(shí)也允許整數(shù)寫入操作進(jìn)入綜合超高速緩沖存儲(chǔ)器112的流水線中的情況。在這種情況下,再進(jìn)一步假設(shè)這些4字節(jié)在綜合超高速緩沖存儲(chǔ)器112中也未被獨(dú)占。整數(shù)讀取操作到達(dá)綜合超高速緩沖存儲(chǔ)器112的流水線的端部時(shí),將發(fā)生超高速緩沖存儲(chǔ)器出錯(cuò)·填充操作(即插入)。
因而,在這種情況下,由于FA指令在綜合超高速緩沖存儲(chǔ)器112中將發(fā)生錯(cuò)誤,因此具有潛在出錯(cuò)指令的性質(zhì)。作為其結(jié)果,由于FA指令可以阻止對(duì)于綜合超高速緩沖存儲(chǔ)器112的插入,并依賴于來自其它處理裝置的獨(dú)占性,因而存在著死鎖的可能性。
4.4.本發(fā)明對(duì)于死鎖問題(數(shù)據(jù)獨(dú)占性必要條件)的解決方法若應(yīng)用本發(fā)明,則通過對(duì)于數(shù)據(jù)超高速緩沖存儲(chǔ)器108中的存儲(chǔ)要求獨(dú)占的配置能解決該死鎖問題。特別是,只有在包含與所關(guān)心的排列成行的4字節(jié)字的超高速緩沖存儲(chǔ)器塊在數(shù)據(jù)超高速緩沖存儲(chǔ)器108中被獨(dú)占時(shí),才在數(shù)據(jù)超高速緩沖存儲(chǔ)器108中執(zhí)行FA整數(shù)寫入操作。否則,將發(fā)生超高速緩沖存儲(chǔ)器出錯(cuò)·填充操作。在發(fā)生該超高速緩沖存儲(chǔ)器出錯(cuò)。填充操作時(shí),應(yīng)注意的是FA整數(shù)寫入指令不在對(duì)于綜合超高速緩沖存儲(chǔ)器112的流水線中,而且,該超高速緩沖存儲(chǔ)器出錯(cuò)。填充操作不能以最小單位的形式進(jìn)行。這樣,能夠回避死鎖的危險(xiǎn)。
以下詳細(xì)地說明對(duì)于死鎖問題(即起因于獨(dú)占性必要條件)的該解決方法。
5.0.解決方法及執(zhí)行解決方法的總結(jié)如上所述,計(jì)算機(jī)系統(tǒng)101的特殊構(gòu)造上和操作上的特征引起了許多與超高速緩沖存儲(chǔ)器同步化相關(guān)聯(lián)的問題。發(fā)明者以這些問題為特定目標(biāo),開發(fā)了用于消除這些問題的系統(tǒng)及方法。實(shí)質(zhì)上,本發(fā)明的系統(tǒng)及方法是通過執(zhí)行以下3條規(guī)則來控制超高速緩沖存儲(chǔ)器存取指令的執(zhí)行(為使說明簡潔起見,就處理裝置102來說明這些規(guī)則)。
(1)(為修正數(shù)據(jù)字而動(dòng)作的)FA指令在綜合超高速緩沖存儲(chǔ)器112的流水線中時(shí),延遲對(duì)于與數(shù)據(jù)字有關(guān)(即參考數(shù)據(jù)字)的綜合超高速緩沖存儲(chǔ)器112的插入,直到FA指令結(jié)束并退出綜合超高速緩沖存儲(chǔ)器112的流水線?;蛘?,F(xiàn)A指令在綜合超高速緩沖存儲(chǔ)器112的流水線中時(shí),延遲對(duì)所有綜合超高速緩沖存儲(chǔ)器112的插入,直到FA指令結(jié)束并退出綜合超高速緩沖存儲(chǔ)器112的流水線。
(2)PM指令在綜合超高速緩沖存儲(chǔ)器112的流水線中時(shí),不允許FA指令進(jìn)入綜合超高速緩沖存儲(chǔ)器112的流水線。這樣的FA指令被延遲(即,這些指令先被阻止,在其后的時(shí)間里再次開始)。
(3)與FA指令相關(guān)聯(lián)的排列成行的字在數(shù)據(jù)超高速緩沖存儲(chǔ)器108中未被獨(dú)占時(shí),不允許FA指令進(jìn)入對(duì)于綜合超高速緩沖存儲(chǔ)器112的流水線,將發(fā)生非最小單位式的超高速緩沖存儲(chǔ)器出錯(cuò)·填充。
規(guī)則(1)解決數(shù)據(jù)損失的問題。規(guī)則(2)解決死鎖的問題(潛在出錯(cuò))。規(guī)則(3)解決死鎖問題(數(shù)據(jù)獨(dú)占性的必要條件)。
本發(fā)明還包括下面的第4個(gè)規(guī)則。即,在綜合超高速緩沖存儲(chǔ)器112中插入未決時(shí),不允許FA指令進(jìn)入綜合超高速緩沖存儲(chǔ)器112的流水線。代之以把FA指令延遲,直到成為未決狀態(tài)的全部插入結(jié)束。
該第4個(gè)規(guī)則以提高性能為目的,而不是為解決上述問題使用的。第4個(gè)規(guī)則不是用FA指令永久地阻止插入,而是保證給與處理的機(jī)會(huì)。
理想的是通過在進(jìn)入到綜合超高速緩沖存儲(chǔ)器112的流水線中的各個(gè)指令上追加FA位和PM位的辦法執(zhí)行規(guī)則(1)、(2)、(4)。如果指令是強(qiáng)制最小單位指令,則最好把FA位設(shè)定為1,否則設(shè)定為0。同樣,如果指令是潛在出錯(cuò)指令,則最好把其PM位設(shè)定為1,否則設(shè)定為0。
控制系統(tǒng)150最好在指令進(jìn)入綜合超高速緩沖存儲(chǔ)器112的流水線時(shí)監(jiān)視這些指令(為了簡明起見,控制系統(tǒng)150和處理裝置102的部件之間的控制線未畫出來)。參照圖4的流程圖,說明控制系統(tǒng)150的操作。
如果控制系統(tǒng)150檢測出了伴隨在綜合超高速緩沖存儲(chǔ)器流水線中被設(shè)定為1的FA位的指令(步驟404所示),則控制系統(tǒng)150將阻止對(duì)于綜合超高速緩沖存儲(chǔ)器112中適當(dāng)數(shù)據(jù)(即,被注意的排列好的4位字)的插入(步驟406所示)。以此來執(zhí)行第1規(guī)則。
同樣,如果判斷出控制系統(tǒng)150對(duì)于綜合超高速緩沖存儲(chǔ)器112插入為未決狀態(tài)(步驟412所示),則控制系統(tǒng)150阻止FA指令進(jìn)入綜合超高速緩沖存儲(chǔ)器112的流水線(步驟410所示)。假設(shè)控制系統(tǒng)150與具有關(guān)于插入未決知識(shí)的計(jì)算機(jī)系統(tǒng)101的其它構(gòu)成部件相接觸。以此執(zhí)行第4規(guī)則。
規(guī)則(3)理想的是通過在數(shù)據(jù)超高速緩沖存儲(chǔ)器108中對(duì)各個(gè)超高速緩沖存儲(chǔ)器塊(理想的是128字節(jié))追加W(能寫入)位的辦法來執(zhí)行。超高速緩沖存儲(chǔ)器塊如果在數(shù)據(jù)超高速緩沖存儲(chǔ)器108中未被獨(dú)占,則最好把與數(shù)據(jù)超高速緩沖存儲(chǔ)器108中的超高速緩沖存儲(chǔ)器塊相關(guān)聯(lián)的W位設(shè)定為1,否則設(shè)定為0。參照圖5所示的流程圖,說明控制系統(tǒng)150進(jìn)一步的動(dòng)作。
控制系統(tǒng)150監(jiān)視在數(shù)據(jù)超高速緩沖存儲(chǔ)器108中被處理的整數(shù)存儲(chǔ)指令(即,在數(shù)據(jù)超高速緩沖存儲(chǔ)器108的流水線中被處理的整數(shù)存儲(chǔ)指令)。和FA指令相關(guān)聯(lián)的排列成行的4字節(jié)字處于在數(shù)據(jù)超高速緩沖存儲(chǔ)器108中被獨(dú)占的超高速緩沖存儲(chǔ)器塊中時(shí)(如用和超高速緩沖存儲(chǔ)器塊相關(guān)聯(lián)的W位所示那樣,這個(gè)測試在步驟504表示),允許FA指令進(jìn)入綜合超高速緩沖存儲(chǔ)器112的流水線,并在這里被賦予即將說明的控制系統(tǒng)150的其它處理(這一點(diǎn)在步驟510表示)。
如果和FA指令相關(guān)聯(lián)的排列成行的4字節(jié)處于數(shù)據(jù)超高速緩沖存儲(chǔ)器108中未被獨(dú)占的超高速緩沖存儲(chǔ)器塊中(這個(gè)測試在步驟504表示),則不允許FA指令進(jìn)入綜合超高速緩沖存儲(chǔ)器112的流水線(步驟506所示),并把超高速緩沖存儲(chǔ)器出錯(cuò)·填充信息送到綜合超高速緩沖存儲(chǔ)器112(步驟508所示)。
控制系統(tǒng)150最好被裝配成如上述那樣操作的硬件狀態(tài)機(jī)器,特別是最好遵從上述的4個(gè)規(guī)則進(jìn)行裝配,或者,控制系統(tǒng)150被裝配成依據(jù)軟件動(dòng)作的處理器。
控制系統(tǒng)150最好作為包含數(shù)據(jù)超高速緩沖存儲(chǔ)器108的整數(shù)功能單元(JU)的一部分,裝配在(具有分級(jí)超高速緩沖存儲(chǔ)器排列的)各個(gè)處理裝置中?;蛘撸刂葡到y(tǒng)150作為在功能單元104外部的構(gòu)成部件,裝配在(具有分級(jí)超高速緩沖存儲(chǔ)器排列的)各個(gè)處理裝置中?;蛘?,控制系統(tǒng)150被裝配為分散在包含分級(jí)超高速緩沖存儲(chǔ)器的計(jì)算機(jī)系統(tǒng)101內(nèi)各個(gè)處理裝置的多重狀態(tài)機(jī)器。
控制系統(tǒng)150最好使用硬件開發(fā)者能夠進(jìn)行開發(fā)的適當(dāng)?shù)木幾g系統(tǒng)和軟件中的原型硬件電路進(jìn)行開發(fā)。在這樣的編譯系統(tǒng)中,可以使用編譯程序語言表述硬件構(gòu)成部件的功能。這樣的編譯系統(tǒng)能夠用于證明邏輯,有助于限定控制信號(hào)及相關(guān)隨機(jī)邏輯的定時(shí)和世代。這種編譯系統(tǒng)之一是加利福尼亞州圣何塞的Cadence DesignSystems,Inc.開發(fā)的Verilog編譯器。
根據(jù)本說明書中的說明,有關(guān)本發(fā)明實(shí)施例的詳細(xì)內(nèi)容對(duì)于計(jì)算機(jī)的專業(yè)人員來說應(yīng)是明確的。
上述中說明了本發(fā)明的各種形態(tài),應(yīng)該理解為那些不過是作為例子而列舉的并不受限于這些形式。
這樣一來,若應(yīng)用本發(fā)明,則能夠不引起數(shù)據(jù)損失和死鎖就能解決與存在于具有分級(jí)超高速緩沖存儲(chǔ)器排列的計(jì)算機(jī)系統(tǒng)內(nèi)的超高速緩沖存儲(chǔ)器的同步化有關(guān)的問題。
權(quán)利要求
1.一種在計(jì)算機(jī)系統(tǒng)中防止數(shù)據(jù)損失的方法,特征在于在由每個(gè)都至少具有1個(gè)超高速緩沖存儲(chǔ)器的多個(gè)處理裝置所構(gòu)成的計(jì)算機(jī)系統(tǒng)內(nèi)防止數(shù)據(jù)損失的方法中,這是一種這樣的方法在計(jì)算機(jī)系統(tǒng)中維持多處理器超高速緩沖存儲(chǔ)器的同步;至少1個(gè)處理裝置具有由被連接到第2級(jí)超高速緩沖存儲(chǔ)器的第1級(jí)超高速緩沖存儲(chǔ)器構(gòu)成的分級(jí)超高速緩沖存儲(chǔ)器排列;整數(shù)存儲(chǔ)指令能夠把數(shù)據(jù)存入第1級(jí)超高速緩沖存儲(chǔ)器和第2級(jí)超高速緩沖存儲(chǔ)器;第1級(jí)超高速緩沖存儲(chǔ)器能夠字節(jié)寫入;第2級(jí)超高速緩沖存儲(chǔ)器能夠字寫入,該方法具有下述步驟(a)具有監(jiān)視第2級(jí)超高速緩沖存儲(chǔ)器的流水線,以判斷強(qiáng)制最小單位(FA)指令是否在第2級(jí)超高速緩沖存儲(chǔ)器流水線的步驟,其中,F(xiàn)A指令是要求第1級(jí)超高速緩沖存儲(chǔ)器中存儲(chǔ)分配的整數(shù)存儲(chǔ)指令,該指令能把字的整倍數(shù)以外長度的數(shù)據(jù)存入第1級(jí)超高速緩沖存儲(chǔ)器,在FA指令的執(zhí)行過程中,按照FA指令的寫入數(shù)據(jù)向第2級(jí)超高速緩沖存儲(chǔ)器中這樣寫入從第1級(jí)超高速緩沖存儲(chǔ)器中讀入一個(gè)或一個(gè)以上的字節(jié)并把字長數(shù)據(jù)寫入到第2級(jí)超高速緩沖存儲(chǔ)器中,(b)具有延遲步驟,在判定FA指令存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中時(shí),延遲對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入直到FA指令退出第2級(jí)超高速緩沖存儲(chǔ)器流水線,延遲成為這種插入原因的超高速緩沖存儲(chǔ)器存取指令的執(zhí)行使得用這種延遲來防止因FA指令的操作而破壞由超高速緩沖存儲(chǔ)器存取指令的操作所寫入的數(shù)據(jù)。
2.如權(quán)利要求1中所述的方法,特征在于該方法還包含(c)判斷對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入是否為未決狀態(tài)的步驟;(d)在對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入為未決狀態(tài)時(shí)防止FA指令進(jìn)入第2級(jí)超高速緩沖存儲(chǔ)器流水線的步驟,使得不會(huì)由于第2級(jí)超高速緩沖存儲(chǔ)器流水線中FA指令的存在而始終延遲對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入執(zhí)行。
3.如權(quán)利要求1中記述的方法,特征在于前述步驟(a)中包括使與進(jìn)入到識(shí)別指令是否為FA指令的第2級(jí)超高速緩沖存儲(chǔ)器流水線標(biāo)識(shí)中去的指令相關(guān)聯(lián)的步驟;以及分析處于第2級(jí)超高速緩沖存儲(chǔ)器中的指令的上述標(biāo)識(shí)并判斷FA指令是否在第2級(jí)超高速緩沖存儲(chǔ)器流水線中的步驟。
4.如權(quán)利要求3中記述的方法,特征在于前述標(biāo)識(shí)由與進(jìn)入到第2級(jí)超高速緩沖存儲(chǔ)器流水線中的各個(gè)指令相關(guān)聯(lián)的強(qiáng)制最小單位(FA)位構(gòu)成,F(xiàn)A位被設(shè)定為FA指令用的第1值及非FA指令用的第2值。
5.如權(quán)利要求1中記述的方法,特征在于在前述步驟(b)中,延遲對(duì)多字節(jié)字的存取插入直到FA指令退出第2級(jí)超高速緩沖存儲(chǔ)器流水線,該多字節(jié)字在于第2級(jí)超高速緩沖存儲(chǔ)器中,被加入了FA指令的寫入數(shù)據(jù)并且排列成行。
6.一種防止計(jì)算機(jī)系統(tǒng)中處理裝置之間死鎖的方法,特征在于在防止由每個(gè)都至少具有1個(gè)超高速緩沖存儲(chǔ)器這樣的多個(gè)處理裝置構(gòu)成的計(jì)算機(jī)系統(tǒng)內(nèi)處理裝置之間死鎖的方法中這是這樣一種方法在計(jì)算機(jī)系統(tǒng)中維持多處理器超高速緩沖存儲(chǔ)器的同步;至少1個(gè)處理裝置包含由連接第2級(jí)超高速緩沖存儲(chǔ)器的第1級(jí)超高速緩沖存儲(chǔ)器構(gòu)成的分級(jí)超高速緩沖存儲(chǔ)器排列;第1級(jí)超高速緩沖存儲(chǔ)器能夠字節(jié)寫入;第2級(jí)超高速緩沖存儲(chǔ)器能夠字寫入,該方法具有下述步驟(a)具有監(jiān)視第2級(jí)超高速緩沖存儲(chǔ)器的流水線以判斷潛在出錯(cuò)(PM)指令是否在第2級(jí)超高速緩沖流水線中的步驟。該P(yáng)M指令是在第2級(jí)超高速緩沖存儲(chǔ)器中要求存儲(chǔ)分配而在第1級(jí)超高速緩沖存儲(chǔ)器中不要求存儲(chǔ)分配的超高速緩沖存儲(chǔ)存取指令,(b)具有在判斷PM指令存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中時(shí),使強(qiáng)制最小單位(FA)指令不進(jìn)入第2級(jí)超高速緩沖存儲(chǔ)器的流水線中,(該FA指令是能把數(shù)據(jù)存入第1級(jí)超高速緩沖存儲(chǔ)器和第2級(jí)超高速緩沖存儲(chǔ)器二者之中的超高速緩沖存儲(chǔ)器存取指令,被存入第1級(jí)超高速緩沖存儲(chǔ)器的數(shù)據(jù)是字的整數(shù)倍以外長度的數(shù)據(jù)),在FA指令存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中期間不允許對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器進(jìn)行插入的步驟,該步驟能夠防止計(jì)算機(jī)系統(tǒng)的處理裝置之間的死鎖;在為第2級(jí)超高速緩沖存儲(chǔ)器而處理插入期間及第2級(jí)超高速緩沖存儲(chǔ)器中的指令有可能被保留期間不妨礙對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器插入的執(zhí)行。
7.如權(quán)利要求6中記述的方法,特征在于前述步驟(a)中包括使與進(jìn)入到識(shí)別指令是否為PM指令的第2級(jí)超高速緩沖存儲(chǔ)器流水線標(biāo)識(shí)中去的指令相關(guān)聯(lián)的步驟和,分析第2級(jí)超高速緩沖存儲(chǔ)器中指令的前述標(biāo)識(shí)并判斷PM指令是否在第2級(jí)超高速緩沖存儲(chǔ)器流水線中的步驟。
8.如權(quán)利要求7中記述的方法,特征在于前述標(biāo)識(shí)由與進(jìn)入到第2級(jí)超高速緩沖存儲(chǔ)器流水線中的各個(gè)指令相關(guān)聯(lián)的潛在出錯(cuò)(PM)位構(gòu)成,PM位被設(shè)定為PM指令用的第1值及非PM指令用的第2值。
9.一種在計(jì)算機(jī)系統(tǒng)中控制執(zhí)行超高速緩沖存儲(chǔ)器存取指令的方法,特征在于在由每個(gè)都至少具有1個(gè)超高速緩沖存儲(chǔ)器這樣的多個(gè)處理裝置構(gòu)成的計(jì)算機(jī)系統(tǒng)內(nèi)控制執(zhí)行超高速緩沖存儲(chǔ)器存取指令的方法中,這是這樣一種方法多處理器超高速緩沖存儲(chǔ)器的同步在計(jì)算機(jī)系統(tǒng)中維持;至少1個(gè)處理裝置包含由連接到第2級(jí)超高速緩沖存儲(chǔ)器上去的第1級(jí)超高速緩沖存儲(chǔ)器構(gòu)成的分級(jí)超高速緩沖存儲(chǔ)器排列;第1級(jí)超高速緩沖存儲(chǔ)器能夠字節(jié)寫入;第2級(jí)超高速緩沖存儲(chǔ)器能夠字寫入;分級(jí)超高速緩沖存儲(chǔ)器排列支持整數(shù)存儲(chǔ)操作使數(shù)據(jù)存入第1級(jí)超高速緩沖存儲(chǔ)器和第2級(jí)超高速緩沖存儲(chǔ)器二者之中;在整數(shù)存儲(chǔ)操作過程中,按照FA指令的寫入數(shù)據(jù)下述那樣地寫入到第2級(jí)超高速緩沖存儲(chǔ)器中使得1個(gè)或1個(gè)以上的字節(jié)從第1級(jí)超高速緩沖存儲(chǔ)器中讀進(jìn)來并且字長數(shù)據(jù)作為整數(shù)存儲(chǔ)操作的結(jié)果被寫入第2級(jí)超高速緩沖存儲(chǔ)器中,使這樣的整數(shù)存儲(chǔ)操作的執(zhí)行是以最小單位地進(jìn)行,該方法包括(a)判斷已放進(jìn)了整數(shù)存儲(chǔ)操作的寫入數(shù)據(jù)并排列成行的多字節(jié)字是否僅存在于第1級(jí)超高速緩沖存儲(chǔ)器的步驟;(b)在判定排列成行的字不是僅在第1級(jí)超高速緩沖存儲(chǔ)器中被獨(dú)占時(shí),防止整數(shù)存儲(chǔ)操作進(jìn)入第2級(jí)超高速緩沖存儲(chǔ)器的流水線,開始超高速緩沖存儲(chǔ)器出錯(cuò),填充操作并使排列成行的字僅存在于第1級(jí)超高速緩沖存儲(chǔ)器中的步驟。
10.如權(quán)利要求9中記述的方法,特征在于前述步驟(a)中包括使存在于識(shí)別排列成行的字是否僅存在于第1級(jí)超高速緩沖存儲(chǔ)器的第1級(jí)超高速緩沖存儲(chǔ)器標(biāo)識(shí)中的排列成行的多字節(jié)字與標(biāo)識(shí)相關(guān)聯(lián),并且把標(biāo)識(shí)存儲(chǔ)在第1級(jí)超高速緩沖存儲(chǔ)器中的步驟;分析存儲(chǔ)在第1級(jí)超高速緩沖存儲(chǔ)器的前述標(biāo)識(shí)并判斷已加進(jìn)了整數(shù)存儲(chǔ)操作的寫入數(shù)據(jù)的排列成行的多字節(jié)字是否僅存在于第1級(jí)超高速緩沖存儲(chǔ)器中的步驟。
11.如權(quán)利要求10中記述的方法,特征在于前述標(biāo)識(shí)由與各個(gè)第1級(jí)超高速緩沖存儲(chǔ)器內(nèi)排列成行的多字節(jié)字相關(guān)聯(lián)的可寫入(W)位構(gòu)成,W位被設(shè)定為在第1級(jí)超高速緩沖存儲(chǔ)中被獨(dú)占的排列成行的字用的第1值和在第1級(jí)超高速緩沖存儲(chǔ)器中未被獨(dú)占的排列成行的字用的第2值。
12.一種在計(jì)算機(jī)系統(tǒng)中控制執(zhí)行超高速緩沖存儲(chǔ)器存取指令的方法,特征在于在由每個(gè)都至少具有1個(gè)超高速緩沖存儲(chǔ)器這樣的多個(gè)處理裝置構(gòu)成的計(jì)算機(jī)系統(tǒng)內(nèi)控制執(zhí)行超高速緩沖存儲(chǔ)器存取指令的方法中,這是這樣一種方法多處理器超高速緩沖存儲(chǔ)器的同步在計(jì)算機(jī)系統(tǒng)中維持;至少1個(gè)處理裝置包含由被連接到第2級(jí)超高速緩沖存儲(chǔ)器的第1級(jí)超高速緩沖存儲(chǔ)器構(gòu)成的分級(jí)超高速緩沖存儲(chǔ)器排列;整數(shù)存儲(chǔ)指令能夠把數(shù)據(jù)存入第1級(jí)超高速緩沖存儲(chǔ)器和第2級(jí)超高速緩沖存儲(chǔ)器;第1級(jí)超高速緩沖存儲(chǔ)器能夠字節(jié)寫入;第2級(jí)超高速緩沖存儲(chǔ)器能夠字寫入;該方法具有下述步驟(a)具有監(jiān)視第2級(jí)超高速緩沖存儲(chǔ)器流水線并判斷強(qiáng)制最小單位(FA)指令是否存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中的步驟,該FA指令是要求第1級(jí)超高速緩沖存儲(chǔ)器中存儲(chǔ)分配的整數(shù)存儲(chǔ)指令,該指令能夠把字的整數(shù)倍以外長度的數(shù)據(jù)存入第1級(jí)超高速緩沖存儲(chǔ)器,在FA指令執(zhí)行過程中,按照FA指令的寫入數(shù)據(jù)如下述那樣寫入到第2級(jí)超高速緩沖存儲(chǔ)器中1個(gè)或1個(gè)以上的字節(jié)從第1級(jí)超高速緩沖存儲(chǔ)器中讀入并且字長數(shù)據(jù)被寫入到第2級(jí)超高速緩沖存儲(chǔ)器中;(b)具有監(jiān)視第2級(jí)超高速緩沖存儲(chǔ)器的流水線并判斷潛在出錯(cuò)(PM)指令是否存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中的步驟,該P(yáng)M指令是要求第2級(jí)超高速緩沖存儲(chǔ)器中存儲(chǔ)分配而不要求第1級(jí)超高速緩沖存儲(chǔ)器中存儲(chǔ)分配的超高速緩沖存儲(chǔ)器存取指令;(c)具有在判斷PM指令存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中時(shí)防止FA指令進(jìn)入到第2級(jí)超高速緩沖存儲(chǔ)器流水線中的步驟;(d)具有在判斷FA指令存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中時(shí),延遲對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入直到FA指令退出第2級(jí)超高速緩沖存儲(chǔ)器流水線的步驟。
13.如權(quán)利要求12中記述的方法,特征在于該方法還包括(e)判斷對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入是否為未決狀態(tài)的步驟;(f)在對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入為未決狀態(tài)時(shí),防止FA指令進(jìn)入第2級(jí)超高速緩沖存儲(chǔ)器流水線中的步驟,使得不會(huì)由于第1級(jí)超高速緩沖存儲(chǔ)器流水線中FA指令的存在而總是延遲對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入執(zhí)行。
14.如權(quán)利要求12中記述的方法,特征在于該方法還包括(g)判斷加入了整數(shù)存儲(chǔ)操作寫入數(shù)據(jù)的排列成行的多字節(jié)字是否僅存在于第1級(jí)超高速緩沖存儲(chǔ)器中的步驟;(h)在判斷排列成行的字不是僅為第1級(jí)超高速緩沖存儲(chǔ)器獨(dú)占時(shí),防止整數(shù)存儲(chǔ)動(dòng)作進(jìn)入第2級(jí)超高速緩沖存儲(chǔ)器,開始超高速緩沖存儲(chǔ)器出錯(cuò),填充操作使排列成行的字僅存在于第1級(jí)超高速緩沖存儲(chǔ)器中的步驟。
15.一種控制系統(tǒng),特征在于在由每個(gè)都至少具有1個(gè)超高速緩沖存儲(chǔ)器的多個(gè)處理裝置構(gòu)成的計(jì)算機(jī)系統(tǒng)內(nèi)用于控制超高速緩沖存儲(chǔ)器存取指令的執(zhí)行的控制系統(tǒng)中,多處理器超高速緩沖存儲(chǔ)器的同步在計(jì)算機(jī)系統(tǒng)中維持;至少1個(gè)處理裝置具有由被連接到第2級(jí)超高速緩沖存儲(chǔ)器的第1級(jí)超高速緩沖存儲(chǔ)器構(gòu)成的分級(jí)超高速緩沖存儲(chǔ)器排列;整數(shù)存儲(chǔ)指令能夠把數(shù)據(jù)存入第1級(jí)超高速緩沖存儲(chǔ)器和第2級(jí)超高速緩沖存儲(chǔ)器二者之中;第1級(jí)超高速緩沖存儲(chǔ)器能夠字節(jié)寫入;第2級(jí)超高速緩沖存儲(chǔ)器能夠字寫入;該控制系統(tǒng)具有下述裝置具有監(jiān)視第2級(jí)超高速緩沖存儲(chǔ)器的流水線并判斷強(qiáng)迫最小單位(FA)指令是否存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中的裝置,該FA指令是要求第1級(jí)超高速緩沖存儲(chǔ)器中存儲(chǔ)分配的整數(shù)存儲(chǔ)指令,該指令使得能夠把字的整數(shù)倍以外長度的數(shù)據(jù)存入第1級(jí)超高速緩沖存儲(chǔ)器;在FA指令的執(zhí)行過程中,按照FA指令的寫入數(shù)據(jù)如下述那樣寫入到第2級(jí)超高速緩沖存儲(chǔ)器中1個(gè)或1個(gè)以上的字節(jié)從第1級(jí)超高速緩沖存儲(chǔ)器中讀入并且字長數(shù)據(jù)被寫入到第2級(jí)超高速緩沖存儲(chǔ)器中;具有監(jiān)視第2級(jí)超高速緩沖存儲(chǔ)器的流水線并判斷潛在出錯(cuò)(PM)指令是否存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中的裝置,該P(yáng)M指令是要求第2級(jí)超高速緩沖存儲(chǔ)器中存儲(chǔ)分配而不要求第1級(jí)超高速緩沖存儲(chǔ)器中存儲(chǔ)分配的超高速緩沖存儲(chǔ)器存取指令;具有在判定PM指令存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中時(shí)防止FA指令進(jìn)入第2級(jí)超高速緩沖存儲(chǔ)器流水線的裝置;具有在判定FA指令存在于第2級(jí)超高速緩沖存儲(chǔ)器流水線中時(shí)延遲對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入直到FA指令退出第2級(jí)超高速緩沖存儲(chǔ)器流水線的裝置。
16.如權(quán)利要求15中記述的控制系統(tǒng),特征在于該系統(tǒng)還包括判斷對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入是否為未決狀態(tài)的裝置;在判定對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入為未決狀態(tài)時(shí)防止FA指令進(jìn)入第2級(jí)超高速緩沖存儲(chǔ)器流水線的裝置,使得不會(huì)由于第2級(jí)超高速緩沖存儲(chǔ)器流水線中FA指令的存在而總是延遲對(duì)于第2級(jí)超高速緩沖存儲(chǔ)器的插入執(zhí)行。
17.如權(quán)利要求15中記述的控制系統(tǒng),特征在于該系統(tǒng)還包括判斷加入了整數(shù)存儲(chǔ)操作的寫入數(shù)據(jù)并排列成行的多字節(jié)字是否僅存在于第1級(jí)超高速緩沖存儲(chǔ)器中的裝置;在判定排列成行的字不是僅為第1級(jí)超高速緩沖存儲(chǔ)器獨(dú)占時(shí)防止整數(shù)存儲(chǔ)操作進(jìn)入第2級(jí)超高速緩沖存儲(chǔ)器的流水線,開始超高速緩沖存儲(chǔ)器出錯(cuò),填充操作使排列成行的字僅存在于第1級(jí)超高速緩沖存儲(chǔ)器中的裝置。
全文摘要
控制系統(tǒng)控制執(zhí)行超高速緩沖存儲(chǔ)器存取指令使得不發(fā)生關(guān)于超高速緩沖存儲(chǔ)器同步化的問題。計(jì)算機(jī)系統(tǒng)包含至少具有1個(gè)超高速緩沖存儲(chǔ)器的多個(gè)處理裝置(102)。多處理器超高速存儲(chǔ)器的同步在計(jì)算機(jī)系統(tǒng)中維持。至少1個(gè)處理裝置包含由被連接到第2級(jí)超高速緩沖存儲(chǔ)器(112)的第1級(jí)超高速緩沖存儲(chǔ)器(108)構(gòu)成的超高速緩沖存儲(chǔ)器排列,在這里,整數(shù)存儲(chǔ)指令能把數(shù)據(jù)存入第1級(jí)超高速緩沖存儲(chǔ)器和第2級(jí)超高速緩沖存儲(chǔ)器二者之中。第1級(jí)超高速緩沖存儲(chǔ)器能夠字節(jié)寫入,第2級(jí)超高速緩沖存儲(chǔ)器能夠字寫入。在整數(shù)存儲(chǔ)指令的執(zhí)行過程中,按照FA指令的寫入數(shù)據(jù)如下述那樣寫入到第2級(jí)超高速緩沖存儲(chǔ)器中;1個(gè)或1個(gè)以上的字節(jié)從第1級(jí)超高速緩沖存儲(chǔ)器讀入并且字長數(shù)據(jù)被寫入到第2級(jí)超高速緩沖存儲(chǔ)器中。
文檔編號(hào)G06F12/08GK1117767SQ94191177
公開日1996年2月28日 申請日期1994年12月15日 優(yōu)先權(quán)日1993年12月15日
發(fā)明者約瑟夫·P·布拉特, 約翰·布倫南, 彼得·蘇顏特, 威廉姆·A·赫夫曼, 約瑟夫·T·斯坎倫, 史蒂夫·查瓦格利 申請人:硅圖像有限公司, 東芝株式會(huì)社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
鹤山市| 浦城县| 兴宁市| 福清市| 礼泉县| 汽车| 新巴尔虎右旗| 漳浦县| 吉安县| 桦川县| 磴口县| 临安市| 司法| 洱源县| 淳化县| 娱乐| 汝州市| 蒲城县| 离岛区| 商丘市| 南木林县| 郯城县| 六枝特区| 岳西县| 资溪县| 饶河县| 乌兰浩特市| 新巴尔虎右旗| 枣庄市| 天气| 原阳县| 石嘴山市| 遵义市| 珲春市| 维西| 南京市| 长子县| 汾西县| 武乡县| 布尔津县| 土默特左旗|