專利名稱:存儲控制裝置及其控制方法
技術(shù)領(lǐng)域:
本發(fā)明涉及存儲控制裝置及其控制方法。
背景技術(shù):
在針對 SDRAM (Synchronous Dynamic Random Access Memory 同步云力態(tài)隨機存取存儲器)等的具有多個存儲體的多存儲體存儲器的存儲器存取控制中,為了協(xié)調(diào)來自多個 CPU和輸入輸出裝置的存儲器請求的命令,有時采用使用了優(yōu)先級控制寄存器的協(xié)調(diào)電路。 在該電路中,多個存儲器請求按每個請求目標(biāo)的存儲體被分配保持在被稱之為請求緩沖器的隊列中。并且,根據(jù)從各個請求緩沖器讀出后保存在優(yōu)先級控制寄存器中的存儲器請求的優(yōu)先等級,從優(yōu)先等級高的請求緩沖器讀出存儲器請求并執(zhí)行。在該控制方式中,若某請求緩沖器的存儲器請求的優(yōu)先等級最高而被執(zhí)行,則在下一個命令執(zhí)行周期中該請求緩沖器的優(yōu)先等級變?yōu)樽畹?。另一方面,在下一個命令執(zhí)行周期中,執(zhí)行最早的命令讀出,即、最近命令讀出最沒有被執(zhí)行的請求緩沖器的優(yōu)先等級被上升到最高等級,從該請求緩沖器讀出的存儲器請求被執(zhí)行。該控制方式是所謂的基于LRU (Least Recently Used)的控制方式。在此,對于DRAM存在存取規(guī)定。所謂的存取規(guī)定是指,例如在某命令執(zhí)行周期中對DRAM執(zhí)行了數(shù)據(jù)讀取請求的情況下,在接著執(zhí)行數(shù)據(jù)寫入請求(異種命令)時,例如有必須等待7個周期之類的規(guī)定?;蛘?,在某命令執(zhí)行周期中對DRAM的某存儲體執(zhí)行了數(shù)據(jù)讀取請求的情況下,在接著對其他的存儲體執(zhí)行數(shù)據(jù)讀取請求(同種命令)時,例如有必須等待2個周期之類的規(guī)定?,F(xiàn)在,設(shè)想在使用了優(yōu)先級控制寄存器的存儲器存取控制的現(xiàn)有技術(shù)中,從根據(jù)保存在優(yōu)先級控制寄存器中的存儲器請求的優(yōu)先等級而選擇的一個請求緩沖器中讀出的存儲器請求A不滿足DRAM的存取規(guī)定的情況。此時,存儲器請求A等待其執(zhí)行,直到存取規(guī)定被滿足的命令執(zhí)行周期??墒牵诟鶕?jù)保存在優(yōu)先級控制寄存器中的存儲器請求的優(yōu)先等級而沒被選擇的請求緩沖器中,可能存在讀出滿足存取規(guī)定的存儲器請求的請求緩沖器。例如,在當(dāng)前執(zhí)行中的存儲器請求是數(shù)據(jù)讀取請求的情況下,當(dāng)在下一個命令執(zhí)行周期中所選擇的存儲器請求是數(shù)據(jù)寫入請求時,該數(shù)據(jù)寫入請求從先行的數(shù)據(jù)讀取請求的執(zhí)行開始,例如必須等待7 個周期。在此,設(shè)想針對與上述先行的數(shù)據(jù)讀取請求的執(zhí)行存儲體不同的執(zhí)行存儲體的其他的數(shù)據(jù)讀取請求,存在于沒有被優(yōu)先級控制寄存器選擇的請求緩沖器中。此時,由于針對同種命令的等待周期比針對異種命令的等待周期短,所以上述其他的數(shù)據(jù)讀取請求,從先行的數(shù)據(jù)讀取請求的執(zhí)行開始,例如在3個周期后可執(zhí)行。在這樣的情況下,若不是在執(zhí)行完通過優(yōu)先級控制寄存器從請求緩沖器當(dāng)前讀出的存儲器請求A (異種命令)之后,則無法執(zhí)行存在于其他的請求緩沖器中的滿足存取規(guī)定的存儲器請求B。即、在使用了優(yōu)先級控制寄存器的存儲器存取控制的現(xiàn)有技術(shù)中,在上述那樣的情況下,存在存儲器請求的執(zhí)行效率下降的問題點。
專利文獻(xiàn)1 日本特開平6-161941號公報專利文獻(xiàn)2 日本特開平11-272567號公報專利文獻(xiàn)3 日本特開2005-173859號公報專利文獻(xiàn)4 日本特開2008-503808號公報
發(fā)明內(nèi)容
因此,本發(fā)明的一個方面的目的在于,能夠進(jìn)行使?jié)M足DRAM等存儲裝置的存取規(guī)定的請求緩沖器的優(yōu)先等級變高的優(yōu)先等級控制。在實施方式的一例中,作為存儲控制裝置來實現(xiàn),該存儲控制裝置與運算處理裝置和具有對應(yīng)于第一存儲體的第一以及第二存儲體的存儲裝置連接,并且向上述存儲裝置發(fā)行從上述運算處理裝置接收到的存儲器存取請求,具有以下的構(gòu)成。第一請求存儲部,保持針對第一存儲體的存儲器存取請求。第二請求存儲部,保持針對第二存儲體的存儲器存取請求。譯碼部,按照存儲器存取請求中包含的存儲體地址,將從運算處理裝置接收到的存儲器存取請求,分配給第一請求存儲部或第二請求存儲部。選擇部,與第一請求存儲部和第二請求存儲部連接,并根據(jù)選擇信號,對保持于第一請求存儲部或第二請求存儲部的存儲器存取請求進(jìn)行選擇并輸出。第一判定電路,其輸出第一判定結(jié)果,該第一判定結(jié)果為,根據(jù)保持在第一請求存儲部中的存儲器存取請求和已經(jīng)向第一存儲體發(fā)行的存儲器存取請求之間的關(guān)系,判定保持在第一請求存儲部中的存儲器存取請求能否向第一存儲體發(fā)行的判定結(jié)果。第二判定電路,其輸出第二判定結(jié)果,該第二判定結(jié)果為,根據(jù)保持在第二請求存儲部中的存儲器存取請求和已經(jīng)向第二存儲體發(fā)行的存儲器存取請求之間的關(guān)系,判定保持在第二請求存儲部中的存儲器存取請求能否向第二存儲體發(fā)行的判定結(jié)果。第三判定電路,其輸出第三判定結(jié)果,該第三判定結(jié)果為,根據(jù)選擇電路所選擇的存儲器存取請求和已經(jīng)向存儲裝置發(fā)行的存儲器存取請求之間的關(guān)系,判定選擇電路所選擇的存儲器存取請求能否向存儲裝置發(fā)行的判定結(jié)果。優(yōu)先等級控制電路,與第一判定電路和第二判定電路連接,并且根據(jù)第一至第三判定結(jié)果,輸出選擇保持于第一判定電路的存儲器存取請求或保持于第二判定電路的存儲器存取請求的選擇信號。根據(jù)以上的構(gòu)成,根據(jù)已經(jīng)發(fā)行的存儲器存取請求的可否發(fā)行狀況和各請求存儲部內(nèi)的存儲器存取請求的滯留狀況,可動態(tài)地控制優(yōu)先等級的變化狀態(tài),也可進(jìn)行與存儲裝置的存取規(guī)定對應(yīng)的優(yōu)先等級的跳躍控制。該控制可通過簡單的構(gòu)成的判定電路和簡單的構(gòu)成的優(yōu)先等級控制電路來實現(xiàn)。由此,可有效地使用存儲控制裝置和存儲裝置、或連接它們的總線。
圖1是表示存儲器控制裝置的實施方式的構(gòu)成圖。圖2是表示存儲器請求分配電路的構(gòu)成 例的圖。圖3是表示判定電路的構(gòu)成例的圖。
圖4是表示存儲器請求可否發(fā)行信號生成部的構(gòu)成例的圖。圖5是優(yōu)先級控制寄存器的動作說明圖。圖6是表示優(yōu)先級控制寄存器的電路構(gòu)成例的圖。圖7是本 實施方式的動作流程圖。圖8是與本實施方式對比的現(xiàn)有技術(shù)的動作流程圖。圖9是表示應(yīng)用本實施方式的計算機系統(tǒng)的構(gòu)成例的圖。
具體實施例方式以下,參照附圖對用于實施公開的存儲控制裝置及其控制方法的方式進(jìn)行詳細(xì)地說明。圖1是表示存儲器控制裝置的實施方式的構(gòu)成圖。存儲器控制裝置100與一個以上的CPU107(#0 #x)或IO(輸入輸出)裝置 108 (#0 #y)以及一個以上的DRAM模塊109連接。在存儲器控制裝置100中,存儲器請求分配電路101如圖2所示包含存儲體地址譯碼電路201。該存儲體地址譯碼電路201從圖1的CPU107或IO裝置108接收對DRAM 模塊109的數(shù)據(jù)讀取或數(shù)據(jù)寫入的存儲器請求。存儲體地址譯碼電路201按照根據(jù)存儲器請求所識別的、與構(gòu)成DRAM模塊109的N個存儲體相對應(yīng)的存儲體地址,從N個請求緩沖器(REQ_BUF)102組中選擇發(fā)送目的地。并且,存儲體地址譯碼電路201對所選擇的REQ_ BUF102設(shè)置存儲器請求。在圖1以及圖2的例子中,構(gòu)成的DRAM模塊109存儲體由#0 #3的4個存儲體構(gòu)成(N = 4),與其相對應(yīng)地,REQ_BUF102也設(shè)置#0 #3的4個。REQ_ BUF102例如利用FIFO (First In First Out 先進(jìn)先出)等緩沖器電路來實現(xiàn)。選擇器電路103在存在存儲器請求的REQ_BUF102中,選擇優(yōu)先級控制寄存器104 所表示的優(yōu)先等級為最高的。判定電路105 (#1)根據(jù)存儲器請求可否發(fā)行信號生成部106生成的存儲器請求可否發(fā)行信號,對能否發(fā)行利用選擇器電路103選擇的存儲器請求進(jìn)行檢查。并且,判定電路 105 (#1),只在判定為能夠發(fā)行上述存儲器請求時,對DRAM模塊109發(fā)行利用選擇器電路 103選擇的存儲器請求。判定電路105(#1)例如通過如圖3所示的電路來實現(xiàn)。在圖3中,譯碼部301對利用選擇器電路103選擇的存儲器請求進(jìn)行譯碼。其結(jié)果,譯碼部301僅使存儲體#0讀取、 存儲體#1讀取、存儲體#2讀取、存儲體#3讀取、存儲體#0寫入、存儲體#1寫入、存儲體#2 寫入、存儲體#3寫入中的一個的輸出為“1”,使其他的輸出為“0”。換言之,譯碼部301是獨熱(Ι-hot)譯碼器。例如,在存儲器請求是訪問DRAM模塊109的存儲體#0的數(shù)據(jù)讀取請求的命令時,譯碼部301僅使存儲體#0讀取的輸出為“1”。同樣,在存儲器請求是訪問 DRAM模塊109的存儲體#0的數(shù)據(jù)寫入請求的命令時,譯碼部301僅使存儲體#0寫入的輸出為“1”。關(guān)于其他的存儲體也是同樣的。AND (邏輯與)電路302例如對存儲體#0讀取和存儲器請求可否發(fā)行信號生成部 106輸出的表示存儲體#0可的存儲器請求可否發(fā)行信號進(jìn)行邏輯與運算。同樣,存儲體#1 讀取和存儲體#1讀取可、存儲體#2讀取和存儲體#2讀取可、存儲體#3讀取和存儲體#3 讀取可、存儲體#0寫入和存儲體#0寫入可、存儲體#1寫入和存儲體#1寫入可、存儲體#2寫入和存儲體#2寫入可、存儲體#3寫入和存儲體#3寫入可的各邏輯與運算被進(jìn)行。來自AND電路302的各邏輯與運算結(jié)果,經(jīng)由OR(邏輯或)電路303輸出存儲器請求可發(fā)行信號。OR電路303對所有的AND電路302的輸出進(jìn)行邏輯或運算。圖1的判定電路105, 在該存儲器請求可發(fā)行信號被輸出時,向DRAM模塊109發(fā)行選擇器電路103所選擇的存儲器請求。例如,在存儲器請求是存儲體#0讀取的命令時,如果存儲器請求可否發(fā)行信號生成部106輸出表示存儲體#0可的存儲器請求可否發(fā)行信號,則輸出存儲器請求可否發(fā)行信號。另外,在存儲器請求是存儲體#0讀取的命令時,如果存儲器請求可否發(fā)行信號生成部 106沒有輸出表示存儲體#0可的存儲器請求可否發(fā)行信號,則不輸出存儲器請求可否發(fā)行信號。關(guān)于其他的存儲體以及數(shù)據(jù)寫入請求的命令也是同樣的。圖1所示的#2 #5的判定電路105也具有和圖3所例示的判定電路105 (#1)大致相同的功能,然而,只監(jiān)視各自負(fù)責(zé)的存儲體的存儲器請求即可。例如,判定電路105 (#2) 對是否從REQ_BUF102 (#0)輸出了存儲體#0讀取或存儲體#0寫入進(jìn)行監(jiān)視,在從存儲器請求可否發(fā)行信號生成部106分別輸入了存儲體#0讀取可或存儲體#0寫入可的情況下,輸出與存儲體#0有關(guān)的存儲器請求可否發(fā)行信號。判定電路105(#3)對是否從REQ_ BUF102(#1)輸出了存儲體#1讀取或存儲體#1寫入進(jìn)行監(jiān)視,在從存儲器請求可否發(fā)行信號生成部106分別輸入了存儲體#1讀取可或存儲體#1寫入可的情況下,輸出與存儲體#1 有關(guān)的存儲器請求可否發(fā)行信號。判定電路105(#4)對是否從REQ_BUF102(#2)輸出了存儲體#2讀取或存儲體#2寫入進(jìn)行監(jiān)視,在從存儲器請求可否發(fā)行信號生成部106分別輸入了存儲體#2讀取可或存儲體#2寫入可的情況下,輸出與存儲體#2有關(guān)的存儲器請求可否發(fā)行信號。判定電路105 (#5)對是否從REQ_BUF102(#3)輸出了存儲體#3讀取或存儲體 #3寫入進(jìn)行監(jiān)視,在從存儲器請求可否發(fā)行信號生成部106分別輸入了存儲體#3讀取可或存儲體#3寫入可的情況下,輸出與存儲體#3有關(guān)的存儲器請求可否發(fā)行信號。圖1的存儲器請求可否發(fā)行信號生成部106例如通過如圖4所示的電路來實現(xiàn)。 在圖4中,多級結(jié)構(gòu)的觸發(fā)電路401依次保持已發(fā)行存儲器存取信息(已發(fā)行的存儲器請求)。觸發(fā)電路401的級數(shù)與能夠判定DRAM模塊109的存取規(guī)約的量的過去的已發(fā)行存儲器存取信息的保持?jǐn)?shù)相對應(yīng)。控制電路402根據(jù)保持在觸發(fā)電路401的已發(fā)行存儲器存取信息組,對DRAM模塊109的存取規(guī)約進(jìn)行判定。其結(jié)果,控制電路402輸出存儲體#0讀取可、存儲體#1讀取可、存儲體#2讀取可、存儲體#3讀取可、存儲體#0寫入可、存儲體#1 寫入可、存儲體#2寫入可以及存儲體#3寫入可的存儲器請求可否發(fā)行信號。例如,設(shè)想當(dāng)前對DRAM模塊109發(fā)行的存儲器請求是針對存儲體#0的數(shù)據(jù)讀取請求的情況。此時,從當(dāng)前的命令執(zhí)行周期開始例如7個周期后,存儲體#0寫入可、存儲體#1寫入可、存儲體#2 寫入可以及存儲體#3寫入可的各存儲器請求可否發(fā)行信號變?yōu)椤?”。另外,從當(dāng)前的命令執(zhí)行周期開始例如2個周期后,存儲體#1讀取可、存儲體#2讀取可以及存儲體#3讀取可的各存儲器請求可否發(fā)行信號變?yōu)椤?”??刂齐娐?02是執(zhí)行這樣的存取規(guī)則的算法的電路。圖1的優(yōu)先級控制寄存器104根據(jù)#1 #5的各判定電路105的輸出,進(jìn)行如以下所示的動作。 首先,優(yōu)先級控制寄存器104,在判定電路105向DRAM模塊109發(fā)行了從選擇器電路103所選擇的REQ_BUF102讀出的存儲器請求時,更新內(nèi)部的變化狀態(tài),以使在下一個命令執(zhí)行周期中,該REQ_BUF102的優(yōu)先等級變?yōu)樽畹?。另外,?yōu)先級控制寄存器104,在判定為#2 #5的其中一個判定電路105能夠針對#0 #3的其中一個REQ_BUF102發(fā)行存儲器請求時,更新內(nèi)部的變化狀態(tài),以使該REQ_ BUF102的優(yōu)先等級變高。優(yōu)先級控制寄存 器104,如圖5所示,其內(nèi)部具有優(yōu)先級控制寄存器_01、優(yōu)先級控制寄存器_02、優(yōu)先級控制寄存器_03、優(yōu)先級控制寄存器_12、優(yōu)先級控制寄存器_13以及優(yōu)先級控制寄存器_23這6個電路。優(yōu)先級控制寄存器_01保持REQ_BUF102 (#0)和REQ_BUF102 (#1)的優(yōu)先等級。如圖5所示,優(yōu)先級控制寄存器_01所保持的值為“0”時,表示REQ_BUF102 (#0)的優(yōu)先等級比REQ_BUF102(#1)的優(yōu)先等級高。優(yōu)先級控制寄存器_01所保持的值為“ 1 ”時,表示REQ_ BUF102(#1)的優(yōu)先等級比REQ_BUF102(#0)的優(yōu)先等級高。優(yōu)先級控制寄存器_02保持REQ_BUF102 (#0)和REQ_BUF102 (#2)的優(yōu)先等級。如圖5所示,優(yōu)先級控制寄存器_02所保持的值為“0”時,表示REQ_BUF102(#0)的優(yōu)先等級比REQ_BUF102(#2)的優(yōu)先等級高。優(yōu)先級控制寄存器_02所保持的值為“ 1 ”時,表示REQ_ BUF102(#2)的優(yōu)先等級比REQ_BUF102(#0)的優(yōu)先等級高。優(yōu)先級控制寄存器_03保持REQ_BUF102 (#0)和REQ_BUF102 (#3)的優(yōu)先等級。如圖5所示,優(yōu)先級控制寄存器03所保持的值為“0”時,表示REQ_BUF102(#0)的優(yōu)先等級比 REQ_BUF102(#3)的優(yōu)先等級高。優(yōu)先級控制寄存器_03所保持的值為“1”時,表示REQ_ BUF102(#3)的優(yōu)先等級比REQ_BUF102(#0)的優(yōu)先等級高。優(yōu)先級控制寄存器_12保持REQ_BUF102 (#1)和REQ_BUF102 (#2)的優(yōu)先等級。如圖5所示,優(yōu)先級控制寄存器_12所保持的值為“0”時,表示REQ_BUF102(#1)的優(yōu)先等級比REQ_BUF102(#2)的優(yōu)先等級高。優(yōu)先級控制寄存器_12所保持的值為“ 1 ”時,表示REQ_ BUF102(#2)的優(yōu)先等級比REQ_BUF102(#1)的優(yōu)先等級高。優(yōu)先級控制寄存器_13保持REQ_BUF102 (#1)和REQ_BUF102 (#3)的優(yōu)先等級。如圖5所示,優(yōu)先級控制寄存器_13所保持的值為“0”時,表示REQ_BUF102(#1)的優(yōu)先等級比REQ_BUF102(#3)的優(yōu)先等級高。優(yōu)先級控制寄存器_13所保持的值為“ 1 ”時,表示REQ_ BUF102(#3)的優(yōu)先等級比REQ_BUF102(#1)的優(yōu)先等級高。優(yōu)先級控制寄存器_23保持REQ_BUF102 (#2)和REQ_BUF102 (#3)的優(yōu)先等級。如圖5所示,優(yōu)先級控制寄存器_23所保持的值為“0”時,表示REQ_BUF102(#2)的優(yōu)先等級比REQ_BUF102(#3)的優(yōu)先等級高。優(yōu)先級控制寄存器_23所保持的值為“ 1 ”時,表示REQ_ BUF102(#3)的優(yōu)先等級比REQ_BUF102(#2)的優(yōu)先等級高。優(yōu)先級控制寄存器104通過比較利用上述6個優(yōu)先級控制寄存器得到的各優(yōu)先等級來決定優(yōu)先等級最高的REQ_BUF102,并將其信息通知給選擇器電路103。選擇器電路103 選擇從該通知的REQ_BUF102輸出的存儲器請求。圖6是表示實現(xiàn)構(gòu)成優(yōu)先級控制寄存器104的優(yōu)先級控制寄存器_01、優(yōu)先級控制寄存器_02、優(yōu)先級控制寄存器_03、優(yōu)先級控制寄存器_12、優(yōu)先級控制寄存器_13以及優(yōu)先級控制寄存器_23的各電路的電路構(gòu)成例的圖。在此,將一個優(yōu)先級控制寄存器作為優(yōu)先級控制寄存器」j。即、ij的組合是(01)、(02)、(03)、(12)、(13)以及(23)。圖6是表示優(yōu)先級控制寄存器」j的實現(xiàn)例的圖。
在圖6中,作為OR電路601的第一輸入,輸入對具有圖3的構(gòu)成例的判定電路 105 (#1)的、存儲體#i讀取被輸入的AND電路302的輸出以及存儲體#i寫入被輸入的AND 電路302的輸出進(jìn)行或運算而得到的輸出。作為OR電路601的第2輸入,輸入OR電路607 的輸出。OR電路601的輸出被作為AND電路602的第一輸入。作為AND電路602的第二輸入,輸入對具有圖3的構(gòu)成例的判定電路105 (#1)的、存儲體#j讀取被輸入的AND電路302 的輸出以及存儲體#j寫入被輸入的AND電路302的輸出進(jìn)行或運算而得到的輸出的反相輸出。
AND電路602的輸出被輸入至觸發(fā)電路603。作為NAND電路604的第一輸入,輸入對具有圖3的構(gòu)成例的判定電路105(#i+2)的、存儲體#i讀取被輸入的AND電路302 的輸出以及存儲體#i寫入被輸入的AND電路302的輸出進(jìn)行或運算而得到的輸出。作為 NAND(與非邏輯)電路604的第二輸入,輸入對具有圖3的構(gòu)成例的判定電路105(#i+3) 的、存儲體#j讀取被輸入的AND電路302的輸出以及存儲體#j寫入被輸入的AND電路302 的輸出進(jìn)行或運算而得到的輸出的反相輸出。作為AND電路605的第一輸入,輸入對具有圖3的構(gòu)成例的判定電路105(#i+2) 的、存儲體#i讀取被輸入的AND電路302的輸出以及存儲體#i寫入被輸入的AND電路302 的輸出進(jìn)行或運算而得到的輸出的反相輸出。作為AND電路605的第二輸入,輸入對具有圖3的構(gòu)成例的判定電路105 (#i+3)的、存儲體#j讀取被輸入的AND電路302的輸出以及存儲體#j寫入被輸入的AND電路302的輸出進(jìn)行或運算而得到的輸出。作為AND電路606的第一輸入,輸入NAND電路604的輸出。作為AND電路606的第二輸入,輸入觸發(fā)電路603的輸出。作為OR電路607的第一輸入,輸入AND電路606的輸出。作為OR電路607的第二輸入,輸入AND電路605的輸出。OR電路607的輸出被作為OR電路601的第二輸入。觸發(fā)電路603的輸出成為優(yōu)先級控制寄存器」j的輸出值。在觸發(fā)電路603的輸出值為“0”時,表示REQ_BUF102(#i)的優(yōu)先等級比REQ_BUF102 (#j)的優(yōu)先等級高。在觸發(fā)電路603的輸出值為“1”時,表示REQ_BUF102(#j)的優(yōu)先等級比REQ_BUF102 (#i)的優(yōu)先等級高?,F(xiàn)在,假設(shè)(ij) = (01)。并且,假設(shè)在選擇器電路103中,來自REQ_BUF102(#i = #0)的針對存儲體#0的存儲器請求被選擇,來自判定電路105(#1)的與存儲體#0對應(yīng)的 AND電路302 (圖3)的輸出為“1”。其結(jié)果,圖6的OR電路601的輸出成為“ 1”。此時,來自判定電路105 (#1)的與其他的REQ_BUF102 (#j = #1)對應(yīng)的AND電路302的輸出為“0”。 因此,AND電路602的輸出成為“1”,觸發(fā)電路603被設(shè)置為“1”。其結(jié)果,在接下來以后的命令執(zhí)行周期中,優(yōu)先級控制寄存器_01的輸出值成為“1”,REQ_BUF102(#i = #0)的優(yōu)先等級比REQ_BUF102(#j = #1)的優(yōu)先等級下降。涉及REQ_BUF102 (#i = #0)的其他的優(yōu)先級控制寄存器」j也進(jìn)行同樣的動作,最終,REQ_BUF102(#i = #0)的優(yōu)先等級變成最低。之后,例如,假設(shè)在判定電路105(#j+2 = #3)中,判定為可執(zhí)行REQ_BUF102 (#j = #1)的存儲器請求,與存儲體#1對應(yīng)的AND電路302 (圖3)的輸出成為“1”。另一方面, 假設(shè)在判定電路105(#i+2 = #2)中,REQ_BUF102(#i = #0)的存儲器請求被判定為不可執(zhí)行,與存儲體#0對應(yīng)的AND電路302 (圖3)的輸出成為“0”。其結(jié)果,AND電路605的輸出成為“1”,其值經(jīng)由OR電路607以及601輸入至AND電路602。在此,如果選擇器電路103 處于一直選擇著REQ_BUF102 (#i = #0)的輸出的狀態(tài),則來自判定電路105 (#1)的與REQ_ BUF102 (#j = #1)對應(yīng)的AND電路302的輸出維持為“0”。其結(jié)果,AND電路602的輸出成為“1”,觸發(fā)電路603的輸出成為“1”。因此,REQ_BUF102(#j = #1)的優(yōu)先等級變高。涉及REQ_BUF102(#j = #1)的其他的優(yōu)先級控制寄存器」j也進(jìn)行同樣的動作,最終,REQ_ BUF102(#j =#1)的優(yōu)先等級變?yōu)樽罡?。如此,作為存取?guī)定被判定的結(jié)果,針對判定為可執(zhí)行的存儲器請求,進(jìn)行如下動作,即、通過本實施方式的優(yōu)先級控制寄存器104,優(yōu)先等級變高,從而使得來自對應(yīng)的REQ_BUF102的存儲器請求被較早地選擇。 另外,例如,在由于來自REQ_BUF102(#0)的存儲器請求的發(fā)行而導(dǎo)致優(yōu)先級控制寄存器_01的觸發(fā)電路603的輸出值成為1,REQ_BUF102(#i = #0)的優(yōu)先等級變?yōu)檩^低的狀態(tài)之后,考慮以下的情況。即、假設(shè)在判定電路105(#i+2 = #2)中,REQ_BUF102(#i = #0)的存儲器請求被判定為可連續(xù)執(zhí)行(例如是同種命令),與存儲體#0對應(yīng)的AND電路 302 (圖3)的輸出成為“1”。此時,假設(shè)在判定電路105(#j+2 = #3)中,REQ_BUF102 (#j = #1)的存儲器請求被判定為不可執(zhí)行,與存儲體#1對應(yīng)的AND電路302 (圖3)的輸出成為 “0”。其結(jié)果,NAND電路604的輸出成為“0”,AND電路606的輸出成為“0”。另一方面, AND電路605的輸出也成為“0”。其結(jié)果,OR電路607的輸出成為“0”。另外,假設(shè)根據(jù)選擇器電路103中的選擇狀態(tài)的變化,來自判定電路105(#1)的與存儲體#0對應(yīng)的AND電路 302(0 3)的輸出變?yōu)椤?”。由此,OR電路601的輸出成為“0”,AND電路602的輸出也成為 “0”,其結(jié)果,觸發(fā)電路603的輸出變?yōu)椤?”。由此,執(zhí)行以下的動作,即、對于由于存儲器請求的發(fā)行而導(dǎo)致優(yōu)先等級暫時下降的REQ_BUF102(#0)而言,如果有可發(fā)行的存儲器請求, 則優(yōu)先等級再次提高。由此,根據(jù)來自存儲器請求可否發(fā)行信號生成部106的存儲器請求的可否發(fā)行狀況和來自#2 #5的各判定電路105的各REQ_BUF102內(nèi)的存儲器請求的滯留狀況,對優(yōu)先級控制寄存器104內(nèi)的各優(yōu)先級控制寄存器」j的變化狀態(tài)進(jìn)行控制。由此,可進(jìn)行與 DRAM模塊109的存取規(guī)定對應(yīng)的優(yōu)先等級的跳躍控制。該控制可通過#2 #5的簡單的構(gòu)成的判定電路105和圖6所例示的簡單的構(gòu)成的優(yōu)先級控制寄存器_ij來實現(xiàn)。下面對具有以上的圖1 圖6的構(gòu)成的存儲器控制裝置100的實施例的具體動作進(jìn)行說明。假設(shè)在REQ_BUF102(#0)中保持有一個目的地為存儲體#0的數(shù)據(jù)寫入請求、在 REQ_BUF102(#1)中保持有一個目的地為存儲體#1的數(shù)據(jù)讀取請求、在REQ_BUF102 (#2)中保持有一個目的地為存儲體#2的數(shù)據(jù)寫入請求。另外,假設(shè)在REQ_BUF102(#3)中沒有保持存儲器請求。另外,假設(shè)優(yōu)先等級的控制基本按照LRU(Least Recently Used)而進(jìn)行?,F(xiàn)在,對根據(jù)優(yōu)先級控制寄存器104,優(yōu)先等級表示為REQ_BUF102 (#0) > REQ_ BUFlO2 (#1) > REQ_BUF102 (#2) > REQ_BUF102 (#3)的情況進(jìn)行說明。首先,選擇器電路103,根據(jù)從優(yōu)先級控制寄存器104通知了 REQ_BUF102 (#0)的情況,選擇從優(yōu)先等級最高的REQ_BUF102 (#0)讀出的目的地為存儲體#0的數(shù)據(jù)寫入請求。 在判定電路105 (#1)中,根據(jù)來自存儲器請求可否發(fā)行信號生成部106的存儲器請求可否發(fā)行信號,判定為可發(fā)行針對存儲體#0的數(shù)據(jù)寫入請求,并向DRAM模塊109發(fā)行上述存儲器請求。此時,通過對保持在優(yōu)先級控制寄存器104內(nèi)的具有圖6的構(gòu)成例的各優(yōu)先級控制寄存器—ij的值進(jìn)行邏輯運算,使REQ_BUF102(#0)的優(yōu)先等級變?yōu)樽畹汀F浣Y(jié)果,優(yōu)先等級更新為 REQ_BUF102(#1) > REQ_BUF102 (#2) > REQ_BUF102 (#3) > REQ_BUF102 (#0)。在接下來的命令執(zhí)行周期中,選擇器電路103,根據(jù)從優(yōu)先級控制寄存器104通知了 REQ_BUF102(#1)的情況,選擇從優(yōu)先等級最高的REQ_BUF102 (#1)讀出的目的地為存儲體#1的數(shù)據(jù)讀取請求。此時,對于DRAM模塊109來說,通常規(guī)定有如下的存取規(guī)定,即、從數(shù)據(jù)寫入請求發(fā)行后到能夠發(fā)行數(shù)據(jù)讀取請求為止,必須空出數(shù)周期(例如7個周期)的時間。因此,在之前剛發(fā)行的目的地為存儲體#0的數(shù)據(jù)寫入請求被發(fā)行之后例如7個周期內(nèi),存儲器請求可否發(fā)行信號生成部106輸出的存儲器請求可否發(fā)行信號中的表示存儲體 #1讀取可的信息(參照圖4)為“0”,由此判定電路105 (#3)的輸出成為“0”。另一方面,對于DRAM模塊109來說,規(guī)定有向某存儲體發(fā)行了數(shù)據(jù)寫入請求之后,可連續(xù)地發(fā)行針對其他的存儲體的數(shù)據(jù)寫入請求。因此,在之前剛發(fā)行的目的地為存儲體#0的數(shù)據(jù)寫入請求被發(fā)行之后2個周期左右,存儲器請求可否發(fā)行信號生成部106輸出的存儲器請求可否發(fā)行信號中的表示存儲體#2寫入可的信息(參照圖4)成為“1”,判定電路105(#4)的輸出成為 “1”。其結(jié)果,通過對保持在優(yōu)先級控制寄存器104內(nèi)的具有圖6的構(gòu)成的各優(yōu)先級控制寄存器_ij的值進(jìn)行邏輯運算,REQ_BUF102(#2)的優(yōu)先等級變?yōu)樽罡?。其結(jié)果,優(yōu)先等級更新為 REQ_BUF102 (#2) > REQ_BUF102 (#1) > REQ_BUF102 (#3) > REQ_BUF102 (#0)。在接下來的命令執(zhí)行周期中,由于從優(yōu)先級控制寄存器104通知了 REQ_ BUF102 (#2),所以選擇器電路103選擇從優(yōu)先等級最高的REQ_BUF102 (#2)讀出的目的地為存儲體#2的數(shù)據(jù)寫入請求。并且,存儲器請求可否發(fā)行信號生成部106所輸出的存儲器請求可否發(fā)行信號中的表示存儲體#2寫入可的信息(參照圖4)為“1”,由此,從判定電路105(#1)輸出的存儲器請求可發(fā)行信號成為“1”。其結(jié)果,向DRAM模塊109發(fā)行目的地為存儲體#2的數(shù)據(jù)寫入請求。之后,優(yōu)先級控制寄存器104中的優(yōu)先等級更新為REQ_ BUF102(#1) > REQ_BUF102(#3) > REQ_BUF102(#0) > REQ_BUF102(#2) 之后,選擇器電路103選擇REQ_BUF102(#1)。并且,判定電路105 (#1)進(jìn)行等待, 直到存儲器請求可否發(fā)行信號生成部106所輸出的存儲器請求可否發(fā)行信號中的表示存儲體#1讀取可的信息(參照圖4)成為“1”,自身輸出的存儲器請求可發(fā)行信號成為“1”為止。若存儲器請求可發(fā)行信號成為“1”,則判定電路105 (#1)向DRAM模塊109發(fā)行目的地為存儲體#1的數(shù)據(jù)讀取請求。其結(jié)果,優(yōu)先級控制寄存器104中的優(yōu)先等級更新為REQ_ BUF102(#3) > REQ_BUF102(#0) > REQ_BUF102(#2) > REQ_BUF102(#1)。對以上的動作,使用圖7的動作時序圖進(jìn)行更詳細(xì)地說明。在此,假設(shè)在數(shù)據(jù)寫入請求的發(fā)行之后到可發(fā)行數(shù)據(jù)讀取請求的間隔為7周期,在數(shù)據(jù)寫入請求發(fā)行之后到可發(fā)行存儲體不同的數(shù)據(jù)寫入請求的間隔為2周期。圖7(b) (f)中的“valid”(有效的)是表示,“ 1 ”時存在有效的請求,“0”時不存在有效的請求或所保持的請求無效的有效信號。在圖7(b) (f)的#1 #5的各判定電路105的輸出中,在判定為可發(fā)行來自各自對應(yīng)的REQ_BUF102的存儲器請求時是“〇”, 在判定為不可發(fā)行時為“ X ”。根據(jù)上述的實施方式,在周期編號為1的命令執(zhí)行周期中,選擇器電路103選擇 REQ_BUF102(#0),判定電路105 (#1)判定為可發(fā)行來自REQ_BUF102 (#0)的存儲器請求(圖 7(b)、(C))。因此,判定電路105 (#1),在周期編號為2、3的各個命令執(zhí)行周期中,向DRAM模塊109發(fā)行目的地為存儲體#0的數(shù)據(jù)寫入請求(圖7 (m))。在周期編號為2的命令執(zhí)行周期中,優(yōu)先控制寄存器_01、優(yōu)先控制寄存器_02、優(yōu)先控制寄存器_03被更新為“1”,REQ_BUF102(#0)的優(yōu)先等級變?yōu)樽畹汀?br>
在周期編號為3的命令執(zhí)行周期中,判定電路105(#1)判定為不可發(fā)行(圖 7(b))、判定電路105(#4)判定為可發(fā)行(圖7(e))。因此,在周期編號4中,優(yōu)先級控制寄存器_12被更新為“ 1 ”,REQ_BUF102 (#2)的優(yōu)先等級變?yōu)樽罡摺F浣Y(jié)果,在周期編號為4的命令執(zhí)行周期中,選擇器電路103選擇來自REQ_ BUF102(#2)的存儲器請求。該存儲器請求在判定電路105(#1)中被判定為可發(fā)行(圖 7(b))。其結(jié)果,在周期編號為5、6的命令執(zhí)行周期中,向DRAM模塊109發(fā)行目的地為存儲體#2的數(shù)據(jù)寫入請求(圖7(m))。在周期編號5中,優(yōu)先級控制寄存器_02、優(yōu)先級控制寄存器_12被更新為“0”,優(yōu)先級控制寄存器_23被更新為“1”,REQ_BUF102(#2)的優(yōu)先等級變?yōu)樽畹汀T趶闹芷诰幪枮?到11為止的命令執(zhí)行周期中,選擇器電路103選擇REQ_ BUF102(#1)。并且,在周期編號為11的命令執(zhí)行周期中,判定電路105(#1)判定為可發(fā)行來自REQ_BUF102(#1)的存儲器請求。因此,在周期編號為12、13的命令執(zhí)行周期中,發(fā)行目的地為存儲體#1的數(shù)據(jù)讀取請求(圖7 (m))。并且,在周期編號為12的命令執(zhí)行周期中,優(yōu)先級控制寄存器_01被更新為“0”, 優(yōu)先級控制寄存器_12、優(yōu)先級控制寄存器_13被更新為“ 1”。根據(jù)上述的實施方式,可有效地使用存儲器控制裝置100和DRAM模塊109、或連接它們的總線。圖8是表示存儲器控制裝置被沒有考慮DRAM模塊109的存取規(guī)定的優(yōu)先等級控制進(jìn)行控制的情況下的動作的動作時序圖。如在圖7中說明的那樣,在目的地為存儲體#0 的數(shù)據(jù)寫入請求發(fā)行之后,在REQ_BUF102 (#2)內(nèi)保持有每隔2個命令執(zhí)行周期可執(zhí)行的目的地為存儲體#2的數(shù)據(jù)讀取請求??墒牵趫D8中,目的地為存儲體#2的數(shù)據(jù)讀取請求是在目的地為存儲體#0的數(shù)據(jù)寫入請求發(fā)行后的7個周期之后才可以執(zhí)行。由此,本實施方式的優(yōu)勢很明顯。圖9是表示可應(yīng)用具有圖1的構(gòu)成的實施方式的計算機系統(tǒng)的構(gòu)成例的圖。在圖9 中,在被稱為CMU(CPU Memory Unit :CPU存儲器單元)的控制裝置904內(nèi),配置有與圖1的存儲器控制裝置100對應(yīng)的MAC (Memory Access Controller 存儲器存取控制器)901。該 MAC901 對從 CPU902(與圖 1 的 CPU107 對應(yīng))向 DIMM(Dual Inline Memory Module)903(與圖1中的DRAM模塊109對應(yīng))發(fā)行的存儲器請求的優(yōu)先等級進(jìn)行控制。另外,MAC901,還對從10框體907內(nèi)的輸入輸出裝置(與圖1的10裝置108對應(yīng))經(jīng)由I0U(Input Output Unit 輸入輸出單元)906以及BP (Back Plane 背板)905輸入的、針對DIMM903的存儲器請求的優(yōu)先等級進(jìn)行控制。
權(quán)利要求
1.一種存儲控制裝置,其與運算處理裝置和具有對應(yīng)于第一存儲體的第一以及第二存儲體的存儲裝置連接,并且向上述存儲裝置發(fā)行從上述運算處理裝置接收到的存儲器存取請求,該存儲控制裝置的特征在于,包含第一請求存儲部,其保持針對上述第一存儲體的存儲器存取請求; 第二請求存儲部,其保持針對上述第二存儲體的存儲器存取請求; 譯碼部,其按照上述存儲器存取請求中包含的存儲體地址,將從上述運算處理裝置接收到的存儲器存取請求分配給上述第一請求存儲部或上述第二請求存儲部;選擇部,其與上述第一請求存儲部和上述第二請求存儲部連接,根據(jù)選擇信號,對保持在上述第一請求存儲部或上述第二請求存儲部中的存儲器存取請求進(jìn)行選擇并輸出;第一判定電路,其輸出第一判定結(jié)果,該第一判定結(jié)果為,根據(jù)保持在上述第一請求存儲部中的存儲器存取請求和已經(jīng)向上述第一存儲體發(fā)行的存儲器存取請求之間的關(guān)系,判定保持在上述第一請求存儲部中的存儲器存取請求能否向上述第一存儲體發(fā)行的判定結(jié)果;第二判定電路,其輸出第二判定結(jié)果,該第二判定結(jié)果為,根據(jù)保持在上述第二請求存儲部中的存儲器存取請求和已經(jīng)向上述第二存儲體發(fā)行的存儲器存取請求之間的關(guān)系,判定保持在上述第二請求存儲部中的存儲器存取請求能否向上述第二存儲體發(fā)行的判定結(jié)果;第三判定電路,其輸出第三判定結(jié)果,該第三判定結(jié)果為,根據(jù)上述選擇電路所選擇的存儲器存取請求和已經(jīng)向上述存儲裝置發(fā)行的存儲器存取請求之間的關(guān)系,判定上述選擇電路所選擇的存儲器存取請求能否向上述存儲裝置發(fā)行的判定結(jié)果;和優(yōu)先等級控制電路,其與上述第一判定電路和上述第二判定電路連接,并且根據(jù)上述第一至第三判定結(jié)果,輸出選擇保持于上述第一判定電路的存儲器存取請求或保持于上述第二判定電路的存儲器存取請求的上述選擇信號。
2.根據(jù)權(quán)利要求1所述的存儲控制裝置,其特征在于,上述優(yōu)先等級控制電路,在上述第一或第二請求存儲部中,在針對最后被選擇的存儲器存取請求的存儲器存取結(jié)束了的情況下,降低保持于上述最后被選擇的請求存儲部的存儲器存取請求的優(yōu)先等級,并且在從上述第一至第三判定電路中的任意一個接收到上述第一至第三判定結(jié)果為不能向上述第一存儲裝置或第二存儲裝置發(fā)行的意思的判定結(jié)果的情況下,提高輸出了該判定結(jié)果的請求存儲部的優(yōu)先等級。
3.根據(jù)權(quán)利要求1或2所述的存儲控制裝置,其特征在于, 上述存儲控制裝置還與輸入輸出控制裝置連接,除了從上述運算處理裝置接收到的存儲器存取請求之外,上述譯碼部還將從上述輸入輸出控制裝置接收到的存儲器存取請求,按照上述存儲器存取請求中包含的存儲體地址, 分配給上述第一請求存儲部或上述第二請求存儲部。
4.根據(jù)權(quán)利要求1至3的任意一項所述的存儲控制裝置,其特征在于, 上述第一以及第二請求存儲部是先進(jìn)先出緩沖器。
5.一種信息處理裝置,其包含運算處理裝置、具有對應(yīng)于第一存儲體的第一以及第二存儲體的存儲裝置、和與上述存儲裝置連接的存儲控制裝置,該信息處理裝置的特征在于,上述控制裝置包含第一請求存儲部,其保持針對上述第一存儲體的存儲器存取請求; 第二請求存儲部,其保持針對上述第二存儲體的存儲器存取請求; 譯碼部,其按照上述存儲器存取請求中包含的存儲體地址,將從上述運算處理裝置接收到的存儲器存取請求分配給上述第一請求存儲部或上述第二請求存儲部;選擇部,其與上述第一請求存儲部和上述第二請求存儲部連接,根據(jù)選擇信號,對保持在上述第一請求存儲部或上述第二請求存儲部中的存儲器存取請求進(jìn)行選擇并輸出;第一判定電路,其輸出第一判定結(jié)果,該第一判定結(jié)果為,根據(jù)保持在上述第一請求存儲部中的存儲器存取請求和已經(jīng)向上述第一存儲體發(fā)行的存儲器存取請求之間的關(guān)系,判定保持在上述第一請求存儲部中的存儲器存取請求能否向上述第一存儲體發(fā)行的判定結(jié)果;第二判定電路,其輸出第二判定結(jié)果,該第二判定結(jié)果為,根據(jù)保持在上述第二請求存儲部中的存儲器存取請求和已經(jīng)向上述第二存儲體發(fā)行的存儲器存取請求之間的關(guān)系,判定保持在上述第二請求存儲部中的存儲器存取請求能否向上述第二存儲體發(fā)行的判定結(jié)果;第三判定電路,其輸出第三判定結(jié)果,該第三判定結(jié)果為,根據(jù)上述選擇電路所選擇的存儲器存取請求和已經(jīng)向上述存儲裝置發(fā)行的存儲器存取請求之間的關(guān)系,判定上述選擇電路所選擇的存儲器存取請求能否向上述存儲裝置發(fā)行的判定結(jié)果;和優(yōu)先等級控制電路,其與上述第一判定電路和上述第二判定電路連接,并且根據(jù)上述第一至第三判定結(jié)果,輸出選擇保持于上述第一判定電路的存儲器存取請求或保持于上述第二判定電路的存儲器存取請求的上述選擇信號。
6.根據(jù)權(quán)利要求5所述的信息處理裝置,其特征在于,上述優(yōu)先等級控制電路,在上述第一或第二請求存儲部中,在針對最后被選擇的存儲器存取請求的存儲器存取結(jié)束了的情況下,降低保持于上述最后被選擇的請求存儲部的存儲器存取請求的優(yōu)先等級,并且在從上述第一至第三判定電路中的任意一個接收到上述第一至第三判定結(jié)果為不能向上述第一存儲裝置或第二存儲裝置發(fā)行的意思的判定結(jié)果的情況下,提高輸出了該判定結(jié)果的請求存儲部的優(yōu)先等級。
7.根據(jù)權(quán)利要求5或6所述的信息處理裝置,其特征在于, 上述存儲控制裝置還與輸入輸出控制裝置連接,除了從上述運算處理裝置接收到的存儲器存取請求之外,上述譯碼部還將從上述輸入輸出控制裝置接收到的存儲器存取請求,按照上述存儲器存取請求中包含的存儲體地址, 分配給上述第一請求存儲部或上述第二請求存儲部。
8.根據(jù)權(quán)利要求4至7的任意一項所述的信息處理裝置,其特征在于, 上述第一以及第二請求存儲部是先進(jìn)先出緩沖器。
9.一種存儲控制裝置的控制方法,該存儲控制裝置與運算處理裝置和具有對應(yīng)于第一存儲體的第一以及第二存儲體的存儲裝置連接,并且向上述的存儲裝置發(fā)行從上述運算處理裝置接收到的存儲器存取請求,該控制方法的特征在于,包含上述存儲控制裝置所具有的第一請求存儲部保持針對上述第一存儲體的存儲器存取請求的步驟;上述存儲控制裝置所具有的第二請求存儲部保持針對上述第二存儲體的存儲器存取請求的步驟;上述存儲控制裝置所具有的譯碼部,按照上述存儲器存取請求中包含的存儲體地址, 向上述第一請求存儲部或上述第二請求存儲部分配從上述運算處理裝置接收到的存儲器存取請求的步驟;上述存儲控制裝置所具有的選擇部,與上述第一請求存儲部和上述第二請求存儲部連接,根據(jù)選擇信號,對保持在上述第一請求存儲部或上述第二請求存儲部中的存儲器存取請求進(jìn)行選擇并輸出的步驟;上述存儲控制裝置所具有的第一判定電路輸出第一判定結(jié)果的步驟,該第一判定結(jié)果為,根據(jù)保持在上述第一請求存儲部中的存儲器存取請求和已經(jīng)向上述第一存儲體發(fā)行的存儲器存取請求之間的關(guān)系,判定保持在上述第一請求存儲部中的存儲器存取請求能否向上述第一存儲體發(fā)行的判定結(jié)果;上述存儲控制裝置所具有的第二判定電路輸出第二判定結(jié)果的步驟,該第二判定結(jié)果為,根據(jù)保持在上述第二請求存儲部中的存儲器存取請求和已經(jīng)向上述第二存儲體發(fā)行的存儲器存取請求之間的關(guān)系,判定保持在上述第二請求存儲部中的存儲器存取請求能否向上述第二存儲體發(fā)行的判定結(jié)果;上述存儲控制裝置所具有的第三判定電路輸出第三判定結(jié)果的步驟,該第三判定結(jié)果為,根據(jù)上述選擇電路所選擇的存儲器存取請求和已經(jīng)向上述存儲裝置發(fā)行的存儲器存取請求之間的關(guān)系,判定上述選擇電路所選擇的存儲器存取請求能否向上述存儲裝置發(fā)行的判定結(jié)果;和 上述存儲控制裝置所具有的優(yōu)先等級控制電路,與上述第一判定電路和上述第二判定電路連接,并且根據(jù)上述第一至第三判定結(jié)果,輸出選擇保持于上述第一判定電路的存儲器存取請求或保持于上述第二判定電路的存儲器存取請求的上述選擇信號的步驟。
10.根據(jù)權(quán)利要求9所述的存儲控制裝置的控制方法,其特征在于, 上述優(yōu)先等級控制電路,在上述第一或第二請求存儲部中,在針對最后被選擇的存儲器存取請求的存儲器存取結(jié)束了的情況下,降低保持于上述最后被選擇的請求存儲部的存儲器存取請求的優(yōu)先等級,并且在從上述第一至第三判定電路中的任意一個接收到上述第一至第三判定結(jié)果為不能向上述第一存儲裝置或第二存儲裝置發(fā)行的意思的判定結(jié)果的情況下,提高輸出了該判定結(jié)果的請求存儲部的優(yōu)先等級。
全文摘要
優(yōu)先級控制寄存器104根據(jù)從存儲器請求可否發(fā)行信號生成部106內(nèi)得到的存儲器請求的可否發(fā)行狀況和通過各#2~#5的各判定電路105得到的REQ_BUF102內(nèi)的存儲器請求的滯留狀況,動態(tài)地控制內(nèi)部的變化狀態(tài)。由此,可進(jìn)行與DRAM模塊109的存取規(guī)定相對應(yīng)的優(yōu)先等級的跳躍控制。
文檔編號G06F12/06GK102405466SQ200980158610
公開日2012年4月4日 申請日期2009年4月24日 優(yōu)先權(quán)日2009年4月24日
發(fā)明者本藤干雄, 高橋德幸 申請人:富士通株式會社