一種微處理器中存儲(chǔ)資源全局調(diào)度裝置及調(diào)度方法
【專利摘要】本發(fā)明涉及一種微處理器中存儲(chǔ)資源全局調(diào)度裝置及調(diào)度方法,所述的全局調(diào)度裝置包括全局調(diào)度分配器、全局?jǐn)?shù)據(jù)及地址總線和全局控制總線,所述的全局調(diào)度分配器通過(guò)全局?jǐn)?shù)據(jù)及地址總線和全局控制總線分別連接存儲(chǔ)模塊中的至少一個(gè)存儲(chǔ)器,所述的存儲(chǔ)器通過(guò)全局?jǐn)?shù)據(jù)及地址總線和全局控制總線相互連接;所述的調(diào)度方法為:微處理器靜態(tài)或動(dòng)態(tài)地生成存儲(chǔ)資源優(yōu)化信息,全局調(diào)度分配器接收存儲(chǔ)資源優(yōu)化信息后,生成相應(yīng)的存儲(chǔ)資源分配控制信號(hào),并將該控制信號(hào)傳輸給相應(yīng)的存儲(chǔ)器,相應(yīng)的存儲(chǔ)器根據(jù)該控制信號(hào)對(duì)內(nèi)部存儲(chǔ)資源進(jìn)行分配映射。與現(xiàn)有技術(shù)相比,本發(fā)明具有可進(jìn)行資源統(tǒng)一分配、容錯(cuò)性好、可提高微處理器性能等優(yōu)點(diǎn)。
【專利說(shuō)明】一種微處理器中存儲(chǔ)資源全局調(diào)度裝置及調(diào)度方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及計(jì)算機(jī)技術(shù)、集成電路【技術(shù)領(lǐng)域】,尤其是涉及一種微處理器中存儲(chǔ)資源全局調(diào)度裝置及調(diào)度方法。
【背景技術(shù)】
[0002]隨著半導(dǎo)體工藝以及計(jì)算機(jī)體系結(jié)構(gòu)、微處理器設(shè)計(jì)技術(shù)的不斷進(jìn)步,微處理器的功能越來(lái)越強(qiáng)大,結(jié)構(gòu)也變得越來(lái)越復(fù)雜。在微處理器中,存儲(chǔ)資源是不可或缺的重要部分,也在很大程度上決定了微處理器的性能。因而,針對(duì)存儲(chǔ)資源的優(yōu)化對(duì)于微處理器性能以及可靠性的提高非常有必要。
[0003]在微處理器中,存在多種分屬不同功能單元、具備規(guī)整結(jié)構(gòu)的存儲(chǔ)資源,如寄存器堆、一級(jí)、二級(jí)緩存等處理器體系結(jié)構(gòu)相關(guān)的存儲(chǔ)資源,以及與處理器體系結(jié)構(gòu)無(wú)關(guān)的存儲(chǔ)資源如分支預(yù)測(cè)器中的跳轉(zhuǎn)目標(biāo)表、指令分配單元中的指令隊(duì)列、存儲(chǔ)管理單元中的地址映射與查找表、指令執(zhí)行調(diào)度單元中的重排序緩沖器等。這些存儲(chǔ)資源在基本結(jié)構(gòu)上具有共同性。各類存儲(chǔ)資源的用途不同,在針對(duì)不同的工作負(fù)載時(shí),其重要性亦有明顯區(qū)別。
[0004]容錯(cuò)設(shè)計(jì)是微處理器的一個(gè)重要方面,所謂容錯(cuò)是指當(dāng)微處理器中的某些部件單元發(fā)生故障時(shí),應(yīng)能保證微處理仍可以正常工作。傳統(tǒng)上多采用雙?;蚨嗄H哂嗟母叽鷥r(jià)策略,或?qū)Υ鎯?chǔ)器采用檢錯(cuò)、糾錯(cuò)碼和備用單元等方式。主要面向高可靠性要求的特定領(lǐng)域,例如大型機(jī)、高可靠服務(wù)器、航空航天等。這些領(lǐng)域的特點(diǎn)是成本和資源代價(jià)相對(duì)次要,故可采取高代價(jià)冗余的方式構(gòu)建微處理器芯片。
[0005]隨著微處理器芯片集成度的不斷提高以及半導(dǎo)體工藝特征尺寸的不斷縮小,普通商用微處理器芯片的容錯(cuò)設(shè)計(jì)要求采用低代價(jià)的容錯(cuò)方法。通過(guò)合理的設(shè)計(jì),對(duì)微處理器內(nèi)部大多數(shù)具備規(guī)整結(jié)構(gòu)的存儲(chǔ)資源來(lái)說(shuō),發(fā)生故障時(shí),僅導(dǎo)致性能的降低,但仍可正常工作。因而,如何使這種情況下的性能損失最小,是一個(gè)很有價(jià)值的問(wèn)題。
【發(fā)明內(nèi)容】
[0006]本發(fā)明的目的就是為了克服上述現(xiàn)有技術(shù)存在的缺陷而提供一種可進(jìn)行資源統(tǒng)一分配、容錯(cuò)性好、可提高微處理器性能的微處理器中存儲(chǔ)資源全局調(diào)度裝置及調(diào)度方法。
[0007]本發(fā)明的目的可以通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn):
[0008]一種微處理器中存儲(chǔ)資源全局調(diào)度裝置,所述的微處理器包括控制及運(yùn)算模塊、存儲(chǔ)模塊和輸入輸出模塊,所述的存儲(chǔ)模塊中包括多個(gè)分屬不同功能單元、具備規(guī)整結(jié)構(gòu)的存儲(chǔ)器,所述的全局調(diào)度裝置包括全局調(diào)度分配器、全局?jǐn)?shù)據(jù)及地址總線和全局控制總線,所述的全局調(diào)度分配器通過(guò)全局?jǐn)?shù)據(jù)及地址總線和全局控制總線分別連接存儲(chǔ)模塊中的至少一個(gè)存儲(chǔ)器,所述的存儲(chǔ)器通過(guò)全局?jǐn)?shù)據(jù)及地址總線和全局控制總線相互連接;
[0009]全局調(diào)度分配器接收存儲(chǔ)資源優(yōu)化信息后,生成相應(yīng)的存儲(chǔ)資源分配控制信號(hào),并將該控制信號(hào)傳輸給相應(yīng)的存儲(chǔ)器,相應(yīng)的存儲(chǔ)器根據(jù)該控制信號(hào)對(duì)內(nèi)部存儲(chǔ)資源進(jìn)行分配映射。[0010]還包括全局備用存儲(chǔ)器,該全局備用存儲(chǔ)器通過(guò)全局?jǐn)?shù)據(jù)及地址總線和全局控制總線分別連接全局調(diào)度分配器和存儲(chǔ)模塊中的多個(gè)存儲(chǔ)器。
[0011]所述的全局備用存儲(chǔ)器接收全局調(diào)度分配器發(fā)出的存儲(chǔ)資源優(yōu)化信息,并根據(jù)該信息將自身存儲(chǔ)資源全部分配給某一個(gè)功能單元或分別分配給多個(gè)不同的功能單元。
[0012]所述的存儲(chǔ)資源優(yōu)化信息由指令編譯階段靜態(tài)生成或根據(jù)系統(tǒng)整體運(yùn)行狀況動(dòng)態(tài)生成或由控制及運(yùn)算模塊根據(jù)指令運(yùn)行的統(tǒng)計(jì)信息和微處理器的狀態(tài)信息動(dòng)態(tài)生成。
[0013]一種微處理器中存儲(chǔ)資源全局調(diào)度方法,包括以下步驟:
[0014]I)微處理器根據(jù)所運(yùn)行的工作負(fù)載對(duì)于各功能單元的性能需求,靜態(tài)或動(dòng)態(tài)地生成存儲(chǔ)資源優(yōu)化信息;
[0015]2)全局調(diào)度分配器接收存儲(chǔ)資源優(yōu)化信息后,生成相應(yīng)的存儲(chǔ)資源分配控制信號(hào),并通過(guò)全局控制總線將該控制信號(hào)傳輸給相關(guān)的存儲(chǔ)器;
[0016]3)存儲(chǔ)器接收到存儲(chǔ)資源分配控制信號(hào)后對(duì)內(nèi)部存儲(chǔ)資源進(jìn)行分配映射;
[0017]4)微處理器實(shí)時(shí)檢測(cè)各存儲(chǔ)器是否正常工作,若檢測(cè)到某個(gè)或某些存儲(chǔ)器存在故障則發(fā)出錯(cuò)誤報(bào)告,并根據(jù)故障狀態(tài)定位故障的位置,并禁止使用故障位置所對(duì)應(yīng)的電路;
[0018]5)微處理器根據(jù)剩余的正常存儲(chǔ)資源分布情況以及工作負(fù)載重新生成存儲(chǔ)資源優(yōu)化信息,并發(fā)送給全局調(diào)度分配器,返回步驟2)。
[0019]與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果:
[0020]1、本發(fā)明克服了傳統(tǒng)方法中僅在局部進(jìn)行存儲(chǔ)器資源管理的局限,根據(jù)不同情況下對(duì)于不同功能模塊內(nèi)部存儲(chǔ)資源的不同需求,進(jìn)行統(tǒng)一的調(diào)度和分配;
[0021]2、在無(wú)故障時(shí)可以實(shí)現(xiàn)性能的優(yōu)化和提升,在有故障時(shí),具有較好的容錯(cuò)性,并可以使故障導(dǎo)致的性能損失降至最小。
【專利附圖】
【附圖說(shuō)明】
[0022]圖1為典型的微處理器內(nèi)部資源結(jié)構(gòu)示意圖;
[0023]圖2為本發(fā)明的結(jié)構(gòu)示意圖;
[0024]圖3為本發(fā)明的儲(chǔ)資源分配過(guò)程示意圖;
[0025]圖4為本發(fā)明實(shí)施例2中僅對(duì)部分存儲(chǔ)器資源進(jìn)行分配和調(diào)度的結(jié)構(gòu)示意圖;
[0026]圖5為本發(fā)明實(shí)施例3具有全局備用存儲(chǔ)器的結(jié)構(gòu)示意圖。
且體實(shí)施方式
[0027]下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明。本實(shí)施例以本發(fā)明技術(shù)方案為前提進(jìn)行實(shí)施,給出了詳細(xì)的實(shí)施方式和具體的操作過(guò)程,但本發(fā)明的保護(hù)范圍不限于下述的實(shí)施例。
[0028]實(shí)施例1
[0029]如圖1為典型的微處理器內(nèi)部資源分類結(jié)構(gòu)。微處理器可以劃分為控制及運(yùn)算模塊101、存儲(chǔ)模塊102、輸入輸出模塊103三大類。其中存儲(chǔ)模塊中包含分屬不同功能單元的具備規(guī)整結(jié)構(gòu)的存儲(chǔ)器,例如二級(jí)緩存104、一級(jí)緩存105、寄存器堆106、分支預(yù)測(cè)器單元的跳轉(zhuǎn)目標(biāo)表108、存儲(chǔ)管理單元的地址查找表107、指令調(diào)度單元的重排序緩沖器109、指令分配單元的指令隊(duì)列110等。在本發(fā)明實(shí)施例之外的情況下,這些存儲(chǔ)資源分屬不同的功能單元,由相應(yīng)的控制邏輯進(jìn)行控制,相互之間不能進(jìn)行資源的共享和重新分配。
[0030]如圖2所示,一種微處理器中存儲(chǔ)資源全局調(diào)度裝置,包括全局調(diào)度分配器201、全局?jǐn)?shù)據(jù)及地址總線202和全局控制總線203,所述的全局調(diào)度分配器201通過(guò)全局?jǐn)?shù)據(jù)及地址總線202和全局控制總線203分別連接存儲(chǔ)模塊102中的所有存儲(chǔ)器,所述的存儲(chǔ)器通過(guò)全局?jǐn)?shù)據(jù)及地址總線202和全局控制總線203相互連接。
[0031]如圖3所示,一種微處理器中存儲(chǔ)資源全局調(diào)度方法,包括以下步驟:
[0032]I)微處理器根據(jù)所運(yùn)行的工作負(fù)載對(duì)于各功能單元的性能需求,靜態(tài)或動(dòng)態(tài)地生成存儲(chǔ)資源優(yōu)化信息,該存儲(chǔ)資源優(yōu)化信息可以在指令編譯階段由編譯器根據(jù)程序的特征靜態(tài)生成,并附加于目標(biāo)代碼內(nèi);也可以是由操作系統(tǒng)根據(jù)系統(tǒng)整體運(yùn)行狀況,動(dòng)態(tài)提供給微處理器中的全局調(diào)度分配器,也可以是由微處理器內(nèi)部的控制和運(yùn)算模塊根據(jù)指令運(yùn)行的統(tǒng)計(jì)信息和微處理器的狀態(tài)信息動(dòng)態(tài)提供給全局調(diào)度分配器;
[0033]2)全局調(diào)度分配器接收存儲(chǔ)資源優(yōu)化信息后,生成相應(yīng)的存儲(chǔ)資源分配控制信號(hào),并通過(guò)全局控制總線將該控制信號(hào)傳輸給相關(guān)的存儲(chǔ)器;
[0034]3)存儲(chǔ)器接收到存儲(chǔ)資源分配控制信號(hào)后對(duì)內(nèi)部存儲(chǔ)資源進(jìn)行分配映射;
[0035]4)微處理器實(shí)時(shí)檢測(cè)各存儲(chǔ)器是否正常工作,若檢測(cè)到某個(gè)或某些存儲(chǔ)器存在故障則發(fā)出錯(cuò)誤報(bào)告,并根據(jù)故障狀態(tài)定位故障的位置,并禁止使用故障位置所對(duì)應(yīng)的電路;
[0036]5)微處理器根據(jù)剩余的正常存儲(chǔ)資源分布情況以及工作負(fù)載重新生成存儲(chǔ)資源優(yōu)化信息,并發(fā)送給全局調(diào)度分配器,返回步驟2)。
[0037]微處理器中設(shè)有全局檢錯(cuò)電路,每個(gè)功能單元均設(shè)有局部檢錯(cuò)電路,全局檢錯(cuò)電路或局部檢錯(cuò)電路檢測(cè)到存儲(chǔ)器存在故障后,發(fā)出錯(cuò)誤報(bào)告,并根據(jù)故障狀態(tài)定位故障的位置,并禁止使用故障位置所對(duì)應(yīng)的電路,對(duì)錯(cuò)誤進(jìn)行屏蔽,全局調(diào)度分配器根據(jù)錯(cuò)誤屏蔽后的存儲(chǔ)資源的具體情況,重新優(yōu)化存儲(chǔ)資源在各個(gè)功能單元間的分布,使性能的損失達(dá)到最小。
[0038]實(shí)施例2
[0039]如圖4所示,本實(shí)施例的存儲(chǔ)資源全局調(diào)度裝置中的全局調(diào)度分配器201通過(guò)全局?jǐn)?shù)據(jù)及地址總線202和全局控制總線203分別連接存儲(chǔ)模塊102中的部分存儲(chǔ)器,僅對(duì)部分儲(chǔ)資源進(jìn)行分配和調(diào)度。盡管各類結(jié)構(gòu)規(guī)整的存儲(chǔ)器資源具有共性,但在訪問(wèn)速度、讀寫時(shí)序、可靠性保護(hù)重要性等方面可能有明顯區(qū)別。在某些情況下,可以僅對(duì)必要的存儲(chǔ)資源進(jìn)行分配和調(diào)度。圖4所示中,未將一級(jí)緩存105、二級(jí)緩存10連接至全局?jǐn)?shù)據(jù)及地址總線202、全局控制總線203上與其他存儲(chǔ)資源進(jìn)行分配和共享。本實(shí)施例的其余部分同實(shí)施例I。
[0040]實(shí)施例3
[0041]如圖5所示,本實(shí)施例的存儲(chǔ)資源全局調(diào)度裝置還包括全局備用存儲(chǔ)器204,該全局備用存儲(chǔ)器204通過(guò)全局?jǐn)?shù)據(jù)及地址總線202和全局控制總線203分別連接全局調(diào)度分散器201和存儲(chǔ)模塊中的多個(gè)存儲(chǔ)器??紤]到性能的重要性,在某些情況下,可以增加全局備用存儲(chǔ)器,該全局備用存儲(chǔ)器接收全局調(diào)度分配器發(fā)出的存儲(chǔ)資源優(yōu)化信息,并根據(jù)該信息將自身存儲(chǔ)資源全部分配給某一個(gè)功能單元或分別分配給多個(gè)不同的功能單元,從而達(dá)到性能優(yōu)化的目的。在有存儲(chǔ)單元故障發(fā)生時(shí),通過(guò)全局備用存儲(chǔ)器的分配,也可以更好地彌補(bǔ)性能損失。本實(shí)施例的其余部分同實(shí)施例1。
【權(quán)利要求】
1.一種微處理器中存儲(chǔ)資源全局調(diào)度裝置,所述的微處理器包括控制及運(yùn)算模塊、存儲(chǔ)模塊和輸入輸出模塊,所述的存儲(chǔ)模塊中包括多個(gè)分屬不同功能單元、具備規(guī)整結(jié)構(gòu)的存儲(chǔ)器,其特征在于,所述的全局調(diào)度裝置包括全局調(diào)度分配器、全局?jǐn)?shù)據(jù)及地址總線和全局控制總線,所述的全局調(diào)度分配器通過(guò)全局?jǐn)?shù)據(jù)及地址總線和全局控制總線分別連接存儲(chǔ)模塊中的至少一個(gè)存儲(chǔ)器,所述的存儲(chǔ)器通過(guò)全局?jǐn)?shù)據(jù)及地址總線和全局控制總線相互連接; 全局調(diào)度分配器接收存儲(chǔ)資源優(yōu)化信息后,生成相應(yīng)的存儲(chǔ)資源分配控制信號(hào),并將該控制信號(hào)傳輸給相應(yīng)的存儲(chǔ)器,相應(yīng)的存儲(chǔ)器根據(jù)該控制信號(hào)對(duì)內(nèi)部存儲(chǔ)資源進(jìn)行分配映射。
2.根據(jù)權(quán)利要求1所述的一種微處理器中存儲(chǔ)資源全局調(diào)度裝置,其特征在于,還包括全局備用存儲(chǔ)器,該全局備用存儲(chǔ)器通過(guò)全局?jǐn)?shù)據(jù)及地址總線和全局控制總線分別連接全局調(diào)度分配器和存儲(chǔ)模塊中的多個(gè)存儲(chǔ)器。
3.根據(jù)權(quán)利要求2所述的一種微處理器中存儲(chǔ)資源全局調(diào)度裝置,其特征在于,所述的全局備用存儲(chǔ)器接收全局調(diào)度分配器發(fā)出的存儲(chǔ)資源優(yōu)化信息,并根據(jù)該信息將自身存儲(chǔ)資源全部分配給某一個(gè)功能單元或分別分配給多個(gè)不同的功能單元。
4.根據(jù)權(quán)利要求1所述的一種微處理器中存儲(chǔ)資源全局調(diào)度裝置,其特征在于,所述的存儲(chǔ)資源優(yōu)化信息由指令編譯階段靜態(tài)生成或根據(jù)系統(tǒng)整體運(yùn)行狀況動(dòng)態(tài)生成或由控制及運(yùn)算模塊根據(jù)指令運(yùn)行的統(tǒng)計(jì)信息和微處理器的狀態(tài)信息動(dòng)態(tài)生成。
5.一種如權(quán)利要求4所述的微處理器中存儲(chǔ)資源全局調(diào)度方法,其特征在于,包括以下步驟: 1)微處理器根據(jù)所運(yùn)行的工作負(fù)載對(duì)于各功能單元的性能需求,靜態(tài)或動(dòng)態(tài)地生成存儲(chǔ)資源優(yōu)化信息; 2)全局調(diào)度分配器接收存儲(chǔ)資源優(yōu)化信息后,生成相應(yīng)的存儲(chǔ)資源分配控制信號(hào),并通過(guò)全局控制總線將該控制信號(hào)傳輸給相關(guān)的存儲(chǔ)器; 3)存儲(chǔ)器接收到存儲(chǔ)資源分配控制信號(hào)后對(duì)內(nèi)部存儲(chǔ)資源進(jìn)行分配映射; 4)微處理器實(shí)時(shí)檢測(cè)各存儲(chǔ)器是否正常工作,若檢測(cè)到某個(gè)或某些存儲(chǔ)器存在故障則發(fā)出錯(cuò)誤報(bào)告,并根據(jù)故障狀態(tài)定位故障的位置,并禁止使用故障位置所對(duì)應(yīng)的電路; 5)微處理器根據(jù)剩余的正常存儲(chǔ)資源分布情況以及工作負(fù)載重新生成存儲(chǔ)資源優(yōu)化信息,并發(fā)送給全局調(diào)度分配器,返回步驟2)。
【文檔編號(hào)】G06F13/16GK103970685SQ201310041565
【公開日】2014年8月6日 申請(qǐng)日期:2013年2月1日 優(yōu)先權(quán)日:2013年2月1日
【發(fā)明者】張志峰, 程茜, 任浩琪 申請(qǐng)人:同濟(jì)大學(xué)