專利名稱:運(yùn)算處理裝置、信息處理裝置、以及運(yùn)算處理裝置的存儲(chǔ)器訪問(wèn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及具有MMU (Memory Management Unit-存儲(chǔ)器管理單元) 等高速緩沖存儲(chǔ)器和TLB (Translation Lookaside Buffer-轉(zhuǎn)換后援緩沖區(qū)) 的信息處理裝置,并涉及在發(fā)生MMU-MISS-TRAP (TLB失敗)時(shí)向高
速緩沖存儲(chǔ)器進(jìn)行數(shù)據(jù)預(yù)取的技術(shù)。
背景技術(shù):
一般,與CPU (Central Processing Unit-中央處理器)的工作速度相 比,主存儲(chǔ)部的工作速度較慢,并且,由于CPU與主存儲(chǔ)部的距離也較 遠(yuǎn),因此,CPU為了從主存儲(chǔ)部取得數(shù)據(jù),當(dāng)發(fā)生主存儲(chǔ)訪問(wèn)時(shí),耗費(fèi) 處理時(shí)間。
因此,在CPU內(nèi)部的執(zhí)行處理命令控制和運(yùn)算控制的命令運(yùn)算部與 主存儲(chǔ)部之間安裝高速緩沖存儲(chǔ)器的系統(tǒng)已成為當(dāng)前的主流。
高速緩沖存儲(chǔ)器與主存儲(chǔ)部比較,其可存儲(chǔ)的容量小,但能以高速 進(jìn)行工作,并且,由于其與命令運(yùn)算部之間的距離也比其與主存儲(chǔ)部之 間的距離近,因此,命令運(yùn)算部可以用比訪問(wèn)主存儲(chǔ)部遠(yuǎn)為短暫的時(shí)間 將數(shù)據(jù)取出。
接著,對(duì)MMU (Memory Management Unit)進(jìn)行描述,例如,在 SPARC (注冊(cè)商標(biāo))體系結(jié)構(gòu)中,OS (Oprating System-操作系統(tǒng))管理 著從虛擬地址到物理地址的轉(zhuǎn)換表,將其一部分項(xiàng)目存儲(chǔ)到主存儲(chǔ)部上 的TSB (Translation Storage Buffer:轉(zhuǎn)換存儲(chǔ)緩沖區(qū);地址轉(zhuǎn)換用表)中, 該項(xiàng)目由稱為T(mén)TE (Translation Table Entry-轉(zhuǎn)換表項(xiàng)目)的虛擬地址 (TTE-Tag)和物理地址(TTE-Data)的對(duì)構(gòu)成。
另外,還將其一部分項(xiàng)目存儲(chǔ)在MMU內(nèi)的TLB (TranslationLookaside Buffer)中。
此處,TSB雖然容量大,但來(lái)自命令運(yùn)算部的訪問(wèn)相當(dāng)耗費(fèi)時(shí)間, 而TLB雖然容量小,但能夠從命令運(yùn)算部進(jìn)行高速的訪問(wèn)。
在具有這樣的TSB和TLB的系統(tǒng)中,在所指定的虛擬地址沒(méi)有被登 記到位于MMU內(nèi)的TLB中的情況下,就會(huì)產(chǎn)生MMU-MISS-TRAP (MMU失敗;TLB失敗)。
此時(shí),命令運(yùn)算部將該MMU-MISS-TRAP報(bào)告給OS,接收?qǐng)?bào)告后 的OS向CPU內(nèi)部的命令運(yùn)算部請(qǐng)求存儲(chǔ)器訪問(wèn)處理,由此CPU內(nèi)部的 命令運(yùn)算部按照?qǐng)D9的流程(步驟S100 SH8)和圖10的時(shí)間圖(Tl 丁33)所示執(zhí)行該存儲(chǔ)器訪問(wèn)處理。并且,圖10所示的T1 T33表示CPU 內(nèi)部的命令運(yùn)算部的處理單位時(shí)間。
艮口,命令運(yùn)算部根據(jù)虛擬地址,開(kāi)始進(jìn)行存儲(chǔ)器訪問(wèn)(圖9的步驟 SIOO),從TLB中檢索采用該虛擬地址和對(duì)應(yīng)該虛擬地址的物理地址的 對(duì)的項(xiàng)目(參照?qǐng)D9的步驟S101、圖10的T1)。
此處,如果包含該虛擬地址的項(xiàng)目被登記在TLB中(即,在沒(méi)有發(fā) 生MMU-MISS-TRAP的情況下;圖9的步驟S102的否分支),命令運(yùn)算 部為了取得與所檢索的該虛擬地址對(duì)應(yīng)的物理地址所表示的數(shù)據(jù),而使 用該物理地址檢索高速緩沖存儲(chǔ)器(圖9的步驟S103)。
并且,若高速緩沖存儲(chǔ)器中登記了包含該數(shù)據(jù)的高速緩沖項(xiàng)目(圖9 的步驟S104的是分支),則通過(guò)命令運(yùn)算部讀出該數(shù)據(jù),完成存儲(chǔ)器訪 問(wèn)(步驟S105),結(jié)束處理。
另外,在高速緩沖存儲(chǔ)器中沒(méi)有登記采用該物理地址與數(shù)據(jù)的對(duì)的 高速緩沖項(xiàng)目的情況下(圖9的步驟S104的否分支),則命令運(yùn)算部使 用該物理地址進(jìn)行主存儲(chǔ)訪問(wèn),將該物理地址的數(shù)據(jù)登記到高速緩沖存 儲(chǔ)器中(圖9的步驟S106),再次幵始基于該虛擬地址的處理(圖9的步 驟S107; g卩,返回到上述步驟S100)。
另一方面,在TLB中沒(méi)有登記釆用進(jìn)行了檢索的該虛擬地址的對(duì)的 項(xiàng)目的情況下(即,發(fā)生MMU-MISS-TRAP的情況;參照?qǐng)D9的步驟S102 的是分支,圖10的T2),接收到MMU-MISS-TRAP報(bào)告后的OS向命令運(yùn)算部請(qǐng)求后述的圖9的步驟S108 S118的處理。
艮口,命令運(yùn)算部將發(fā)生了MMU失敗的該虛擬地址設(shè)定在寄存器中, 并且根據(jù)該虛擬地址生成與該虛擬地址對(duì)應(yīng)的TSB上的虛擬地址(以下 稱為T(mén)SB虛擬地址),將其設(shè)定在寄存器中之后,從寄存器中讀出這些虛 擬地址和TSB虛擬地址(參照?qǐng)D9的步驟S108、 S109以及圖10的T3 T8)。
并且,將該虛擬地址設(shè)定在寄存器中的處理以及生成TSB虛擬地址 并將其設(shè)定在寄存器中的處理,在圖10的T2到T3期間被執(zhí)行。
接著,對(duì)虛擬地址與TSB虛擬地址之間的關(guān)系進(jìn)行說(shuō)明。如上所述, 采用虛擬地址和物理地址的對(duì)的項(xiàng)目被保存在主存儲(chǔ)部上的TSB中,保 存有采用該虛擬地址和物理地址的對(duì)的項(xiàng)目的TSB上的地址是TSB物理 地址,與該TSB物理地址對(duì)應(yīng)的虛擬地址是TSB虛擬地址。另外,在該 MMU中,采用TSB虛擬地址和TSB物理地址的對(duì)的項(xiàng)目被登記并保存 在TLB中。
接著,命令運(yùn)算部開(kāi)始進(jìn)行使用了所讀出的TSB虛擬地址的存儲(chǔ)器 訪問(wèn)(圖9的步驟S110),從TLB中檢索采用該TSB虛擬地址以及與該 TSB虛擬地址對(duì)應(yīng)的TSB物理地址的對(duì)的項(xiàng)目(參照?qǐng)D9的步驟Slll 以及圖10的T9)。另外,當(dāng)從TLB中檢索出(命中)這樣的項(xiàng)目時(shí)(參 照?qǐng)D9的步驟S112以及圖10的TIO),命令運(yùn)算部使用該TSB物理地址 在高速緩沖存儲(chǔ)器中檢索(參照?qǐng)D9的步驟S113以及圖lO的Tll)。
此處,當(dāng)在高速緩沖存儲(chǔ)器中檢索出(命中)采用該TSB物理地址 和該TSB物理地址所表示的主存儲(chǔ)部上所保存的數(shù)據(jù)(TTE-Tag/Data; 虛擬地址和物理地址的對(duì))的對(duì)的項(xiàng)目時(shí)(圖9的步驟S114的是分支), 則通過(guò)將檢索出的該項(xiàng)目登記到TLB中(圖9的步驟S115),從而將采 用在上述步驟S101中進(jìn)行檢索、在上述步驟S102中發(fā)生MMU失敗的 虛擬地址以及與該虛擬地址對(duì)應(yīng)的物理地址的對(duì)的項(xiàng)目登記到TLB中。 然后,命令運(yùn)算部再次開(kāi)始進(jìn)行使用了該虛擬地址的存儲(chǔ)器訪問(wèn)(圖9 的步驟S116;即,返回到上述步驟SIOO)。
另一方面,當(dāng)在高速緩沖存儲(chǔ)器中沒(méi)有登記采用該TSB物理地址和數(shù)據(jù)的對(duì)的高速緩沖項(xiàng)目時(shí)(即,發(fā)生了高速緩沖存儲(chǔ)器失敗的情況; 參照?qǐng)D9的步驟S114的否分支以及圖10的T12),則使用該TSB物理地 址,對(duì)主存儲(chǔ)部進(jìn)行訪問(wèn)(參照?qǐng)D9的步驟S117以及圖10的T13),從 主存儲(chǔ)部讀出該TSB物理地址和數(shù)據(jù)的對(duì),并登記到高速緩沖存儲(chǔ)器中 (參照?qǐng)D10的T14),再次開(kāi)始進(jìn)行使用了該TSB物理地址的存儲(chǔ)器訪 問(wèn)(參照?qǐng)D9的步驟S118以及圖10的T15以后;gp,返回到上述步驟 SllO)。
另夕卜,圖10的T15 T22的處理相當(dāng)于上述圖9的步驟S110 S116, 圖10的T23 T28的處理相當(dāng)于上述圖9的步驟S100 S104、 S106、 S107,圖10的T29 T33的處理相當(dāng)于上述圖9的步驟S100 S105的處理。
另夕卜,迄今為止,在TLB中發(fā)生了轉(zhuǎn)換失敗(TLB失敗)的情況下 的處理技術(shù),己提出了各種方案(例如,參照下述專利文獻(xiàn)1 3)。 專利文獻(xiàn)1:日本特開(kāi)2000-112821號(hào)公報(bào) 專利文獻(xiàn)2:日本特開(kāi)平02-285440號(hào)公報(bào) 專利文獻(xiàn)3:日本特開(kāi)平02-178750號(hào)公報(bào)
如上所述,在現(xiàn)有的MMU中,因?yàn)椴捎眠M(jìn)行了檢索的虛擬地址對(duì) 的項(xiàng)目沒(méi)有被登記到TLB中,因此,在發(fā)生MMU-MISS-TRAP的情況 下,命令運(yùn)算部在OS的主導(dǎo)下進(jìn)行下述(1) (6)的處理。
(1) 將MMU-MISS-TRAP報(bào)告給OS。
(2) 從寄存器讀出指定的虛擬地址。
(3) 從寄存器讀出根據(jù)該虛擬地址生成的TSB虛擬地址。
(4) 使用TSB虛擬地址進(jìn)行存儲(chǔ)器訪問(wèn)。
(5) 當(dāng)對(duì)應(yīng)TSB虛擬地址的數(shù)據(jù)存在于高速緩沖存儲(chǔ)器或主存儲(chǔ) 部中時(shí),則將TTE-Tag/Data (虛擬地址和物理地址的對(duì))登記到TLB中。
(6) 再次進(jìn)行所指定的虛擬地址的存儲(chǔ)器訪問(wèn)。
此處,在上述(5)的處理中,在高速緩沖存儲(chǔ)器中沒(méi)有該數(shù)據(jù)的情 況下,發(fā)生對(duì)主存儲(chǔ)部的存儲(chǔ)器訪問(wèn),因此,處理耗費(fèi)時(shí)間,為了完成 上述(1) (6)的所有處理,就需要很多的時(shí)間。此外,如圖IO所示,在現(xiàn)有技術(shù)中,OS在生成TSB虛擬地址之后, 將該虛擬地址設(shè)定在寄存器中,從寄存器讀出該設(shè)定的TSB虛擬地址(參 照T6 T8),使用根據(jù)該TSB虛擬地址得到的TSB物理地址來(lái)檢索高速 緩沖存儲(chǔ)器(參照Tll),此處,在高速緩沖存儲(chǔ)器中不存在數(shù)據(jù)的情況 下(參照T12),開(kāi)始主存儲(chǔ)訪問(wèn)(參照T13)。這樣,在現(xiàn)有技術(shù)中,存 在從TSB虛擬地址生成后直到開(kāi)始主存儲(chǔ)訪問(wèn)為止時(shí)間太長(zhǎng)的問(wèn)題。
艮口,在現(xiàn)有技術(shù)中,無(wú)論在T2 T3期間是否生成TSB虛擬地址, 在作為結(jié)果判明了高速緩沖失敗之后的T13的定時(shí)之前,不會(huì)開(kāi)始主存 儲(chǔ)訪問(wèn),因此存在直到數(shù)據(jù)(此處,與TSB物理地址對(duì)應(yīng)的TTE)到達(dá) 高速緩沖存儲(chǔ)器為止需要很長(zhǎng)時(shí)間的問(wèn)題。
另外,如圖IO所示,在現(xiàn)有技術(shù)中,無(wú)論與TSB物理地址對(duì)應(yīng)的 TTE在T14的定時(shí)是否到達(dá),與該TTE的物理地址(TTE-Data)有關(guān)的 數(shù)據(jù)相對(duì)于高速緩沖存儲(chǔ)器的取出,在作為結(jié)果判明了高速緩沖存儲(chǔ)器 失敗之后的T27的定時(shí)之前不被執(zhí)行,因此存在直到數(shù)據(jù)到達(dá)高速緩沖 存儲(chǔ)器為止需要很長(zhǎng)時(shí)間的問(wèn)題。
此外,在連續(xù)進(jìn)行的存儲(chǔ)器訪問(wèn)中存在如下問(wèn)題,即在前面的存 儲(chǔ)器訪問(wèn)和后續(xù)的存儲(chǔ)器訪問(wèn)兩者中,在發(fā)生TLB失敗的情況下,如果 針對(duì)前面的存儲(chǔ)器訪問(wèn)的上述(1) (6)的處理沒(méi)有完成,則針對(duì)后 續(xù)的存儲(chǔ)器訪問(wèn)不能執(zhí)行上述(1) (6)的處理。
艮P,如圖11的時(shí)間圖(T1 T56)所示,在連續(xù)的存儲(chǔ)器訪問(wèn)中, 在連續(xù)發(fā)生TLB失敗的情況下,在前面的存儲(chǔ)器訪問(wèn)中,在將發(fā)生了 TLB 失敗的虛擬地址登記到TLB中的處理(參照T1 T22)完成之前,不會(huì) 開(kāi)始后續(xù)的存儲(chǔ)器訪問(wèn)(參照T24),因此,當(dāng)在該后續(xù)的存儲(chǔ)器訪問(wèn)中 也發(fā)生TLB失敗時(shí),為了完成后續(xù)的存儲(chǔ)器訪問(wèn),就會(huì)非常耗費(fèi)時(shí)間(參 照T56)。并且,圖11中的前面的存儲(chǔ)器訪問(wèn)的處理內(nèi)容(T1 T33)與 圖IO所示的存儲(chǔ)器訪問(wèn)的處理內(nèi)容(T1 T33)相同,并且,關(guān)于圖11 中的后續(xù)的存儲(chǔ)器訪問(wèn)的處理(T24 T56),只有處理對(duì)象的地址不同, 其處理內(nèi)容與前面的存儲(chǔ)器訪問(wèn)的處理(T1 T33)相同。
發(fā)明內(nèi)容
本發(fā)明是鑒于上述問(wèn)題而完成的,其目的在于,在具有高速緩沖存
儲(chǔ)器、TLB以及TSB的信息處理裝置中,當(dāng)在進(jìn)行存儲(chǔ)器訪問(wèn)時(shí)發(fā)生了 TLB失敗的情況下,可以大幅縮短此情況下存儲(chǔ)器訪問(wèn)的處理時(shí)間,并 且,即使在相互連續(xù)的存儲(chǔ)器訪問(wèn)均發(fā)生了 TLB失敗的情況下,也可以 大幅縮短針對(duì)這些連續(xù)的存儲(chǔ)器訪問(wèn)的處理時(shí)間。
為達(dá)成上述目的,本發(fā)明的運(yùn)算處理裝置的特征在于,其連接到存 儲(chǔ)單元,該存儲(chǔ)單元將第1地址轉(zhuǎn)換對(duì)作為地址轉(zhuǎn)換用表加以保存,該 第1地址轉(zhuǎn)換對(duì)是保存數(shù)據(jù)的第1物理地址和與所述第1物理地址對(duì)應(yīng) 的第1虛擬地址的對(duì),所述運(yùn)算處理裝置具有高速緩沖存儲(chǔ)單元;地 址轉(zhuǎn)換緩沖單元,其保存第2地址轉(zhuǎn)換對(duì),并且可保存所述第1地址轉(zhuǎn) 換對(duì),該第2地址轉(zhuǎn)換對(duì)是第2物理地址和與該第2物理地址對(duì)應(yīng)的第2 虛擬地址的對(duì),所述第2物理地址表示在所述存儲(chǔ)單元中保存所述第1 地址轉(zhuǎn)換對(duì)的地址;第1檢索部,其使用上述第1虛擬地址,從上述地 址轉(zhuǎn)換緩沖單元中進(jìn)行上述第1物理地址的檢索;第2檢索部,其使用 與上述第1虛擬地址一一對(duì)應(yīng)的第2虛擬地址,從上述地址轉(zhuǎn)換緩沖單 元中進(jìn)行上述第2物理地址的檢索;以及預(yù)取控制部,其使用作為上述 檢索結(jié)果的第2物理地址,將與上述第1虛擬地址有關(guān)的上述第1地址 轉(zhuǎn)換對(duì),從上述地址轉(zhuǎn)換用表向上述高速緩沖存儲(chǔ)單元進(jìn)行登記。
另外,本發(fā)明的運(yùn)算處理裝置的特征在于,其還具有虛擬地址生成 部,在與上述第1虛擬地址對(duì)應(yīng)的第1地址轉(zhuǎn)換對(duì)沒(méi)有被保存在上述地 址轉(zhuǎn)換緩沖單元中的情況下,通過(guò)上述虛擬地址生成部進(jìn)行與上述第1 虛擬地址一一對(duì)應(yīng)的上述第2虛擬地址的生成。
另外,本發(fā)明的運(yùn)算處理裝置的特征在于,上述第1檢索部、上述 虛擬地址生成部、上述第2檢索部以及上述預(yù)取控制部被進(jìn)行流水線控 制,上述第1檢索部、上述虛擬地址生成部、上述第2檢索部以及上述 預(yù)取控制部依次地執(zhí)行對(duì)連續(xù)命令的處理。
另外,本發(fā)明的運(yùn)算處理裝置的特征在于,上述預(yù)取控制部具有 第1預(yù)取控制部,其使用上述第2物理地址從上述地址轉(zhuǎn)換用表中檢索上述第1地址轉(zhuǎn)換對(duì),將上述第2物理地址和檢索出的上述第1地址轉(zhuǎn)
換對(duì)的組在上述高速緩沖存儲(chǔ)單元中進(jìn)行登記;以及第2預(yù)取控制部, 其在上述地址轉(zhuǎn)換緩沖單元開(kāi)始進(jìn)行上述第1地址轉(zhuǎn)換對(duì)的登記的情況 下,根據(jù)包含在上述第1地址轉(zhuǎn)換對(duì)中的第1物理地址,將保存在上述 第1物理地址中的數(shù)據(jù)從上述存儲(chǔ)單元向上述高速緩沖存儲(chǔ)單元進(jìn)行登 記。
另外,本發(fā)明的信息處理裝置的特征在于,該信息處理裝置具有-存儲(chǔ)單元,其將第1地址轉(zhuǎn)換對(duì)作為地址轉(zhuǎn)換用表加以保存,該第1地 址轉(zhuǎn)換對(duì)是保存數(shù)據(jù)的第1物理地址和與上述第1物理地址對(duì)應(yīng)的第1 虛擬地址的對(duì);高速緩沖存儲(chǔ)單元;地址轉(zhuǎn)換緩沖單元,其保存第2地 址轉(zhuǎn)換對(duì),并且可保存所述第1地址轉(zhuǎn)換對(duì),該第2地址轉(zhuǎn)換對(duì)是第2 物理地址和與該第2物理地址對(duì)應(yīng)的第2虛擬地址的對(duì),所述第2物理 地址表示在所述存儲(chǔ)單元中保存所述第1地址轉(zhuǎn)換對(duì)的地址;第1檢索 部,其使用上述第1虛擬地址,從上述地址轉(zhuǎn)換緩沖單元中進(jìn)行上述第1 物理地址的檢索;第2檢索部,其使用與上述第1虛擬地址一一對(duì)應(yīng)的 第2虛擬地址,從上述地址轉(zhuǎn)換緩沖單元中進(jìn)行上述第2物理地址的檢 索;以及預(yù)取控制部,其使用作為上述檢索結(jié)果的第2物理地址,將與 上述第1虛擬地址有關(guān)的上述第1地址轉(zhuǎn)換對(duì),從上述地址轉(zhuǎn)換用表向 上述高速緩沖存儲(chǔ)單元進(jìn)行登記。
另外,本發(fā)明的信息處理裝置的特征在于,上述信息處理裝置還具 有虛擬地址生成部,在與上述第1虛擬地址對(duì)應(yīng)的第1地址轉(zhuǎn)換對(duì)沒(méi)有 被保存在上述地址轉(zhuǎn)換緩沖單元中的情況下,通過(guò)上述虛擬地址生成部 進(jìn)行與上述第1虛擬地址一一對(duì)應(yīng)的上述第2虛擬地址的生成。
另外,本發(fā)明的信息處理裝置的特征在于,上述第1檢索部、上述 虛擬地址生成部、上述第2檢索部以及上述預(yù)取控制部被進(jìn)行流水線控 制,上述第1檢索部、上述虛擬地址生成部、上述第2檢索部、以及上 述預(yù)取控制部依次地執(zhí)行對(duì)連續(xù)命令的處理。
另外,本發(fā)明的信息處理裝置的特征在于,上述預(yù)取控制部具有 第1預(yù)取控制部,其使用上述第2物理地址從上述地址轉(zhuǎn)換用表中檢索上述第1地址轉(zhuǎn)換對(duì),將上述第2物理地址和檢索出的上述第1地址轉(zhuǎn)
換對(duì)的組在上述高速緩沖存儲(chǔ)單元中進(jìn)行登記;以及第2預(yù)取控制部, 其在上述地址轉(zhuǎn)換緩沖單元開(kāi)始登記上述第1地址轉(zhuǎn)換對(duì)的情況下,根 據(jù)包含在上述第1地址轉(zhuǎn)換對(duì)中的第1物理地址,將保存在上述第1物 理地址中的數(shù)據(jù)從上述存儲(chǔ)單元向上述高速緩沖存儲(chǔ)單元中進(jìn)行登記。 另外,本發(fā)明的存儲(chǔ)器訪問(wèn)方法的特征在于,該方法具有如下步驟
將第1地址轉(zhuǎn)換對(duì)作為地址轉(zhuǎn)換用表保存在存儲(chǔ)單元的步驟,該第1地 址轉(zhuǎn)換對(duì)是保存數(shù)據(jù)的第1物理地址和與上述第1物理地址對(duì)應(yīng)的第1
虛擬地址的對(duì);保存第2地址轉(zhuǎn)換對(duì)并且保存所述第1地址轉(zhuǎn)換對(duì)的步 驟,該第2地址轉(zhuǎn)換對(duì)是第2物理地址和與該第2物理地址對(duì)應(yīng)的第2 虛擬地址的對(duì),所述第2物理地址表示保存所述第1地址轉(zhuǎn)換對(duì)的地址; 使用上述第1虛擬地址從上述地址轉(zhuǎn)換緩沖單元中進(jìn)行上述第1物理地 址的檢索的步驟;使用與上述第1虛擬地址一一對(duì)應(yīng)的第2虛擬地址, 從上述地址轉(zhuǎn)換緩沖單元中進(jìn)行上述第2物理地址的檢索的步驟;以及 使用作為上述檢索結(jié)果的第2物理地址,將與上述第1虛擬地址有關(guān)的 上述第1地址轉(zhuǎn)換對(duì)從上述地址轉(zhuǎn)換用表向高速緩沖存儲(chǔ)單元中進(jìn)行登 記的步驟。
另外,本發(fā)明的存儲(chǔ)器訪問(wèn)方法的特征在于,上述運(yùn)算處理裝置的 存儲(chǔ)器訪問(wèn)方法在保存上述第1地址轉(zhuǎn)換對(duì)的步驟中還具有如下步驟 根據(jù)包含在上述第1地址轉(zhuǎn)換對(duì)中的第1物理地址,將保存在上述第1 物理地址中的數(shù)據(jù)從上述存儲(chǔ)單元向上述高速緩沖存儲(chǔ)單元中進(jìn)行登記 的步驟。
這樣,若根據(jù)本發(fā)明,在針對(duì)TLB失敗的通常處理中,為了取得作 為虛擬地址(TTE-Tag)和物理地址(TTE-Data)的對(duì)的項(xiàng)目的TTE,在 執(zhí)行主存儲(chǔ)訪問(wèn)之前,第1預(yù)取控制部就提前執(zhí)行主存儲(chǔ)訪問(wèn),由此, 該第1地址轉(zhuǎn)換對(duì)到達(dá)高速緩沖存儲(chǔ)器的定時(shí)變?cè)?,具有可以大幅縮短 發(fā)生了 TLB失敗的存儲(chǔ)器訪問(wèn)的處理時(shí)間這一效果。
此外,通過(guò)流水線處理,在根據(jù)來(lái)自O(shè)S的請(qǐng)求的處理被執(zhí)行之前, 通過(guò)執(zhí)行該處理,即使在相互連續(xù)的命令均發(fā)生了 TLB失敗的情況下,也不必等待針對(duì)前面命令的存儲(chǔ)器訪問(wèn)處理完成,而可以執(zhí)行該存儲(chǔ)器 訪問(wèn)處理、以及依次地執(zhí)行針對(duì)后續(xù)命令的存儲(chǔ)器訪問(wèn)處理,從而可以 提前執(zhí)行針對(duì)后續(xù)命令的由第1預(yù)取控制部進(jìn)行的預(yù)取處理。其結(jié)果,
可以在較早的階段,將數(shù)據(jù)(上述的TTE或與第1物理地址對(duì)應(yīng)的數(shù)據(jù)) 保存在高速緩沖存儲(chǔ)器中,在連續(xù)存儲(chǔ)器訪問(wèn)中,即使在發(fā)生了TLB失 敗的情況下,也具有可以大幅度縮短所述連續(xù)存儲(chǔ)器訪問(wèn)的處理時(shí)間這 一效果。
另外,在向TLB進(jìn)行上述TTE登記的登記部開(kāi)始登記該TTE的同 時(shí),第2預(yù)取控制部(數(shù)據(jù)預(yù)取控制部)根據(jù)包含在該TTE中的第1物 理地址,將保存在該第1物理地址表示的地址中的數(shù)據(jù),從主存儲(chǔ)部向 上述高速緩沖存儲(chǔ)器進(jìn)行預(yù)取;第2預(yù)取控制部針對(duì)保存在包含于該TTE 中的第1物理地址中的數(shù)據(jù),根據(jù)該第1物理地址,從主存儲(chǔ)部向高速 緩沖存儲(chǔ)器中進(jìn)行預(yù)取,因此,在執(zhí)行根據(jù)來(lái)自O(shè)S的請(qǐng)求的主存儲(chǔ)訪問(wèn) 之前,該第2預(yù)取控制部通過(guò)提前執(zhí)行主存儲(chǔ)訪問(wèn),具有可以大幅縮短 這種存儲(chǔ)器訪問(wèn)的處理時(shí)間這一效果。
圖1是表示作為本發(fā)明的第1實(shí)施方式和第2實(shí)施方式的信息處理 裝置的結(jié)構(gòu)的方框圖。
圖2是表示作為本發(fā)明的第1實(shí)施方式的信息處理裝置的主要結(jié)構(gòu) 的方框圖。
圖3是表示作為本發(fā)明的第1實(shí)施方式的信息處理裝置的主要結(jié)構(gòu) 的方框圖。
圖4是用于說(shuō)明作為本發(fā)明的第1實(shí)施方式的預(yù)取控制方法的步驟 的流程圖。
圖5是表示作為本發(fā)明的第1實(shí)施方式的預(yù)取控制方法的步驟的一 例的時(shí)間圖。
圖6是表示作為本發(fā)明的第2實(shí)施方式的信息處理裝置的主要結(jié)構(gòu) 的方框圖。圖7是用于說(shuō)明作為本發(fā)明的第2實(shí)施方式的預(yù)取控制方法的步驟
的流程圖。
圖8是表示作為本發(fā)明的第2實(shí)施方式的預(yù)取控制方法的步驟的一 例的時(shí)間圖。
圖9是用于說(shuō)明具有現(xiàn)有的MMU (Memory Management Unit)的信
息處理裝置的動(dòng)作步驟的流程圖。
圖10是表示現(xiàn)有的具有MMU的信息處理裝置的動(dòng)作步驟的一例的 時(shí)間圖。
圖11是表示現(xiàn)有的具有MMU的信息處理裝置的動(dòng)作步驟的一例的 時(shí)間圖。
符號(hào)說(shuō)明
i、 r...信息處理裝置
10...主存儲(chǔ)部
11 ... TSB (Translation Storage Buffer-轉(zhuǎn)換存儲(chǔ)緩沖區(qū);TSB區(qū)域; 地址轉(zhuǎn)換用表)
12...高速緩沖存儲(chǔ)器
13 ...TLB (TranslationLookasideBuffer-轉(zhuǎn)換后援緩沖區(qū);地址轉(zhuǎn)換 用緩沖器)
14... VA (VirtualAddress-虛擬地址)比較器(第1檢索部;第2檢 索部;檢索部)
15 ... TSB-VA生成邏輯(第1生成部) 16...寄存器
17 ... PA (Physical Address-物理地址)生成邏輯(生成部;第2生 成部)
18 ..PA比較器(高速緩沖存儲(chǔ)器檢索部)
19 ..高速緩沖存儲(chǔ)器控制部
20 ..登記部
21 ..預(yù)取控制部
22 .,.第1預(yù)取控制部23...第2預(yù)取控制部(數(shù)據(jù)預(yù)取控制部)
具體實(shí)施例方式
以下參照附圖對(duì)本發(fā)明的實(shí)施方式進(jìn)行說(shuō)明。 [l]關(guān)于本發(fā)明的第l實(shí)施方式
首先,參照?qǐng)D1所示的方框圖,對(duì)作為本發(fā)明的第1實(shí)施方式的信 息處理裝置的結(jié)構(gòu)進(jìn)行說(shuō)明。如圖1所示,本信息處理裝置1構(gòu)成為具
有主存儲(chǔ)部10;以及運(yùn)算處理裝置2,其例如包含有命令運(yùn)算部3、
高速緩沖存儲(chǔ)器12、 TLB 13、 VA (Virtual Address-虛擬地址)比較器(第 l檢索部;第2檢索部;檢索部)14、 TSB-VA生成邏輯(第1生成部) 15、寄存器16、 PA (Physical Address;物理地址)生成邏輯(生成部; 第2生成部)17、 PA比較器(高速緩沖存儲(chǔ)器檢索部)18、高速緩沖存 儲(chǔ)器控制部19、登記部20、以及預(yù)取控制部21。
主存儲(chǔ)部10具有TSB (Translation Storage Buffer-轉(zhuǎn)換存儲(chǔ)緩沖區(qū); 地址轉(zhuǎn)換用表,以下稱為T(mén)SB區(qū)域)11,該TSB 11保存與執(zhí)行命令的命 令運(yùn)算部3所執(zhí)行的命令有關(guān)的數(shù)據(jù),并且保存采用地址轉(zhuǎn)換對(duì)(第1 地址項(xiàng)目;TTE)的項(xiàng)目,該地址轉(zhuǎn)換對(duì)是表示保存該數(shù)據(jù)的地址的物理 地址(第l物理地址;TTE (Translation Table Entry) -Data)和與該物理 地址對(duì)應(yīng)的虛擬地址(第1虛擬地址;TTE-Tag)的地址轉(zhuǎn)換對(duì)。
高速緩沖存儲(chǔ)器12安裝在命令運(yùn)算部3與主存儲(chǔ)部10之間,用于 臨時(shí)保存數(shù)據(jù)。
TLB13構(gòu)成為其既可保存作為物理地址(第2物理地址,以下稱 為T(mén)SB物理地址)以及與該TSB物理地址對(duì)應(yīng)的虛擬地址(第2虛擬地 址;以下稱為T(mén)SB虛擬地址)的地址轉(zhuǎn)換對(duì)的項(xiàng)目(第2地址項(xiàng)目;以 下稱為T(mén)SB地址項(xiàng)目),還可保存地址轉(zhuǎn)換對(duì)(第l地址項(xiàng)目),所述物 理地址表示在TSB區(qū)域11中保存作為地址轉(zhuǎn)換對(duì)的項(xiàng)目的地址。
另外,如上所述,在以下的說(shuō)明中,在僅提及"虛擬地址"的情況下, 表示第l虛擬地址,在僅提及"物理地址"的情況下,表示第l物理地址, 在僅提及"地址轉(zhuǎn)換對(duì)"的情況下,表示第1地址項(xiàng)目。與此相對(duì),在以下的說(shuō)明中,將第2物理地址稱為"TSB物理地址",將第2虛擬地址稱 為"TSB虛擬地址",將第2地址項(xiàng)目稱為"TSB地址項(xiàng)目"。
此處,對(duì)高速緩沖存儲(chǔ)器12和TLB 13的數(shù)據(jù)保存方法進(jìn)行說(shuō)明。 高速緩沖存儲(chǔ)器12在保存作為物理地址和保存在該物理地址表示的 主存儲(chǔ)部10的地址中的數(shù)據(jù)的對(duì)的高速緩沖項(xiàng)目時(shí),將物理地址保存為 作為檢索標(biāo)志的"Cache-Tag",并且將這種數(shù)據(jù)作為檢索對(duì)象的數(shù)據(jù)保存 為"Cache-data"。
另外,高速緩沖存儲(chǔ)器12在保存TSB物理地址和作為保存在該TSB 物理地址表示的TSB區(qū)域11的地址中的數(shù)據(jù)的地址轉(zhuǎn)換對(duì)(TTE)時(shí), 將TSB物理地址保存為"Cache-Tag",并且將地址轉(zhuǎn)換對(duì)保存為 "Cache-data"。
TLB 13在保存虛擬地址和物理地址的地址轉(zhuǎn)換對(duì)時(shí),將虛擬地址保 存為作為檢索標(biāo)志的"Tag",并且將物理地址保存為作為檢索對(duì)象的數(shù)據(jù) 的"Data"。
另外,TLB 13在保存TSB虛擬地址和TSB物理地址的TSB地址項(xiàng) 目時(shí),將TSB虛擬地址保存為作為檢索索引而使用的"Tag",并且將TSB 物理地址保存為作為檢索對(duì)象的"Data"。
此外,如圖1所示,VA比較器14針對(duì)作為與命令運(yùn)算部3的處理 對(duì)象的虛擬地址(圖中記載為"訪問(wèn)地址")有關(guān)的地址轉(zhuǎn)換對(duì)的TSB地 址項(xiàng)目,根據(jù)該虛擬地址從TLB 13中進(jìn)行檢索。
另外,與通過(guò)TSB-VA生成部15根據(jù)該訪問(wèn)地址生成一一對(duì)應(yīng)的 TSB虛擬地址同時(shí),VA比較器14針對(duì)與生成的該TSB虛擬地址有關(guān)的 TSB地址項(xiàng)目,根據(jù)該TSB虛擬地址從TLB 13中進(jìn)行檢索。
在通過(guò)VA比較器14進(jìn)行檢索的結(jié)果是與處理對(duì)象的虛擬地址有關(guān) 的地址轉(zhuǎn)換對(duì)沒(méi)有保存在TLB 13中(即,發(fā)生TLB失敗)的情況下, TSB-VA生成邏輯(以下,稱為T(mén)SB-VA生成部)15生成與該虛擬地址 一一對(duì)應(yīng)的TSB虛擬地址。
寄存器16臨時(shí)保存發(fā)生了 TLB失敗的虛擬地址、或由TSB-VA生成 部15生成的TSB虛擬地址。PA生成邏輯(以下,稱為PA生成部)17根據(jù)VA比較器14檢索 TLB 13的結(jié)果得到的、與發(fā)生了TLB失敗的TSB虛擬地址對(duì)應(yīng)的TSB 物理地址,生成表示TSB區(qū)域11的實(shí)際地址的最終的TSB物理地址, 與VA比較器14完成檢索同時(shí),生成最終的TSB物理地址。
例如,PA生成部17通過(guò)在與發(fā)生了上述TLB失敗的TSB虛擬地址 對(duì)應(yīng)的TSB物理地址中添加該TSB虛擬地址的一部分,從而生成最終的 TSB物理地址。
另外,PA生成部17根據(jù)發(fā)生TLB失敗后從TSB區(qū)域11讀出的物 理地址和與該物理地址對(duì)應(yīng)的虛擬地址,生成與該虛擬地址對(duì)應(yīng)的、表 示主存儲(chǔ)部10的實(shí)際地址的最終的物理地址。
例如,PA生成部17通過(guò)將虛擬地址的一部分添加到物理地址中, 生成該最終的物理地址。
PA比較器18用于檢索保存在高速緩沖存儲(chǔ)器12中的數(shù)據(jù),根據(jù)物 理地址,檢索保存在該物理地址表示的主存儲(chǔ)部10的地址中的數(shù)據(jù)。
另外,PA比較器18根據(jù)TSB物理地址檢索地址轉(zhuǎn)換對(duì),該地址轉(zhuǎn) 換對(duì)是保存在該TSB物理地址表示的TSB區(qū)域11的地址中的項(xiàng)目。
高速緩沖存儲(chǔ)器控制部19用于控制高速緩沖存儲(chǔ)器12,在通過(guò)PA 比較器18進(jìn)行檢索的結(jié)果是檢索對(duì)象的高速緩沖項(xiàng)目沒(méi)有被保存在高速 緩沖存儲(chǔ)器12中的情況下,高速緩沖存儲(chǔ)器控制部19從主存儲(chǔ)部10讀 出作為檢索對(duì)象的數(shù)據(jù),并將其作為高速緩沖項(xiàng)目保存在高速緩沖存儲(chǔ) 器12中。
登記部20用于將保存在高速緩沖存儲(chǔ)器12中的高速緩沖項(xiàng)目中的 地址轉(zhuǎn)換對(duì)登記在TLB 13中。并且,在本信息處理裝置1中,TSB地址 項(xiàng)目由OS (Operating system-操作系統(tǒng))來(lái)管理,被預(yù)先登記保存到TLB 13中。
預(yù)取控制部21構(gòu)成為具有第1預(yù)取控制部22和第2預(yù)取控制部(數(shù) 據(jù)預(yù)取控制部)23。
第1預(yù)取控制部22在通過(guò)VA比較器14檢索出與TSB虛擬地址對(duì) 應(yīng)的TSB物理地址的同時(shí),使用由PA生成部17生成的最終的TSB物理地址,將與發(fā)生了 TLB失敗的處理對(duì)象的虛擬地址有關(guān)的地址轉(zhuǎn)換對(duì)從 主存儲(chǔ)部10的TSB區(qū)域11向高速緩沖存儲(chǔ)器12中進(jìn)行預(yù)取。
此處,參照?qǐng)D1和圖2對(duì)第1預(yù)取控制部22進(jìn)行更加詳細(xì)的說(shuō)明, 第1預(yù)取控制部22在通過(guò)VA比較器14從TLB 13中檢索出與設(shè)定在寄 存器16中的TSB虛擬地址對(duì)應(yīng)的TSB物理地址的同時(shí),使PA比較器 18根據(jù)該檢索出的TSB物理地址從高速緩沖存儲(chǔ)器12中檢索高速緩沖 項(xiàng)目,該高速緩沖項(xiàng)目是該TSB物理地址和被保存在該TSB物理地址表 示的TSB區(qū)域11的地址中的地址轉(zhuǎn)換對(duì)的對(duì)。
艮P,在由PA生成部17生成了最終的TSB物理地址的情況下,第1 預(yù)取控制部22使PA比較器18執(zhí)行使用了該最終TSB物理地址的高速 緩沖存儲(chǔ)器的檢索。
另外,在通過(guò)PA比較器18進(jìn)行檢索的結(jié)果是沒(méi)有從高速緩沖存儲(chǔ) 器12中檢索出作為T(mén)SB物理地址和地址轉(zhuǎn)換對(duì)的對(duì)的該高速緩沖項(xiàng)目 (即,在高速緩沖存儲(chǔ)器12中沒(méi)有保存這種高速緩沖項(xiàng)目)的情況下, 第1預(yù)取控制部22使高速緩沖存儲(chǔ)器控制部19將TSB物理地址和地址 轉(zhuǎn)換對(duì)的對(duì)作為高速緩沖項(xiàng)目登記到高速緩沖存儲(chǔ)器12中。
艮P,第1預(yù)取控制部22通過(guò)控制高速緩沖存儲(chǔ)器控制部19,從而根 據(jù)這種最終的TSB物理地址,從主存儲(chǔ)部10的TSB區(qū)域11讀出地址轉(zhuǎn) 換對(duì),使TSB物理地址與該讀出后的地址轉(zhuǎn)換對(duì)的對(duì)作為高速緩沖項(xiàng)目 保存到高速緩沖存儲(chǔ)器12中。
第2預(yù)取控制部23針對(duì)被保存在高速緩沖存儲(chǔ)器12中的高速緩沖 項(xiàng)目,在登記部20開(kāi)始將發(fā)生了 TLB失敗的虛擬地址的地址轉(zhuǎn)換對(duì)向 TLB13中登記的同時(shí),根據(jù)該地址轉(zhuǎn)換對(duì)的物理地址,僅在發(fā)生了高速 緩沖失敗的情況下,將保存在該物理地址中的數(shù)據(jù)從主存儲(chǔ)部10向高速 緩沖存儲(chǔ)器12進(jìn)行預(yù)取。
并且,在本信息處理裝置l中,至少TSB-VA生成邏輯15、寄存器 16、 PA生成邏輯17、 PA比較器18、高速緩沖存儲(chǔ)器控制部19以及登記 部20起到如下第1地址項(xiàng)目登記部的作用在通過(guò)檢索部14進(jìn)行檢索 的結(jié)果是與發(fā)生了 TLB失敗的虛擬地址有關(guān)的地址轉(zhuǎn)換對(duì)沒(méi)有被保存在TLB 13中的情況下,根據(jù)與該虛擬地址一一對(duì)應(yīng)的TSB虛擬地址的TSB 地址項(xiàng)目,將與該虛擬地址對(duì)應(yīng)的地址轉(zhuǎn)換對(duì)向TLB 13中進(jìn)行登記。此 夕卜,也可以使預(yù)取控制部21的第1預(yù)取控制部22起到第1地址項(xiàng)目登 記部的作用。
此處,參照?qǐng)D1和圖3對(duì)第2預(yù)取控制部23進(jìn)行更加詳細(xì)的說(shuō)明, 在通過(guò)VA比較器14檢索的結(jié)果是與處理對(duì)象的虛擬地址有關(guān)的地址轉(zhuǎn) 換對(duì)沒(méi)有被保存在TLB 13內(nèi)的情況下,在起到第1地址項(xiàng)目登記部的作 用的TSB-VA生成部15、寄存器16、 PA生成部17、 PA比較器18、高速 緩沖存儲(chǔ)器控制部19、登記部20以及第1預(yù)取控制部22開(kāi)始將與這種 虛擬地址有關(guān)的地址轉(zhuǎn)換對(duì)登記到TLB 13中的同時(shí),第2預(yù)取控制部 23將這種地址轉(zhuǎn)換對(duì)的物理地址所表示的地址上的數(shù)據(jù)僅在發(fā)生高速緩 沖存儲(chǔ)器訪問(wèn)失敗的情況下才向高速緩沖存儲(chǔ)器12進(jìn)行預(yù)取。
艮口,第2預(yù)取控制部23以登記部20開(kāi)始向TLB 13中登記地址轉(zhuǎn)換 對(duì)作為觸發(fā)來(lái)控制高速緩沖存儲(chǔ)器控制部19,在高速緩沖存儲(chǔ)器控制部 19中,根據(jù)這種地址轉(zhuǎn)換對(duì)的物理地址,將保存在該物理地址所表示的 主存儲(chǔ)部10上的地址中的數(shù)據(jù)從主存儲(chǔ)部10讀出,向高速緩沖存儲(chǔ)器 12中進(jìn)行登記。
接著,參照?qǐng)D4所示的流程圖(步驟S10 S32)和圖5所示的時(shí)間 圖(tl t40)對(duì)本信息處理裝置1的動(dòng)作(預(yù)取控制方法)進(jìn)行說(shuō)明。 并且,圖5中的tl t40分別表示本信息處理裝置1的處理單位時(shí)間。
首先,命令運(yùn)算部3根據(jù)虛擬地址開(kāi)始存儲(chǔ)器訪問(wèn)(圖4的步驟SIO), VA比較器14針對(duì)該虛擬地址和與該虛擬地址對(duì)應(yīng)的物理地址的地址轉(zhuǎn) 換對(duì),從TLB13中進(jìn)行檢索(參照?qǐng)D4的步驟S11,圖5的tl;第l檢 索步驟)。
此處,在這種地址轉(zhuǎn)換對(duì)沒(méi)有被登記在TLB13中的情況下(即,發(fā) 生MMU-MISS-TRAP的情況;參照?qǐng)D4的步驟S12的是分支和圖5的t2), 命令運(yùn)算部3向OS報(bào)告MMU-MISS-TRAP,并且,TSB-VA生成部15 根據(jù)發(fā)生了 TLB失敗的虛擬地址,生成與該虛擬地址一一對(duì)應(yīng)的TSB虛 擬地址(TSB-VA)(參照?qǐng)D5的t3;第1生成步驟)。此時(shí),在圖5的t3 t5所示的期間,通過(guò)OS將這種虛擬地址與該生
成后的TSB虛擬地址臨時(shí)設(shè)定在寄存器16中。
然后,在通過(guò)TSB-VA生成部15生成TSB虛擬地址的同時(shí)(即,在 TSB虛擬地址生成后緊接著),VA比較器14從TLB 13中檢索與所生成 的TSB虛擬地址有關(guān)的TSB地址項(xiàng)目(參照?qǐng)D4的步驟S13和圖5的t4;
第2檢索步驟)。
接著,在通過(guò)VA比較器14從TLB 13中檢索出TSB地址項(xiàng)目(即, 發(fā)生TLB-HIT的情況;參照?qǐng)D4的步驟S14,圖5的t5)的同時(shí)(即, 通過(guò)VA比較器14檢索出TSB地址項(xiàng)目后緊接著),第1預(yù)取控制部22 使用檢索出的TSB物理地址,將發(fā)生了 TLB失敗的虛擬地址的地址轉(zhuǎn)換 對(duì)(TTE-Data)從主存儲(chǔ)部10的TSB區(qū)域11向高速緩沖存儲(chǔ)器12進(jìn)行 預(yù)取(參照?qǐng)D4的步驟S15和圖5的t6 t8;第1預(yù)取控制步驟)。
并且,在第1預(yù)取控制步驟中,根據(jù)來(lái)自第1預(yù)取控制部22的信號(hào), PA比較器18從高速緩沖存儲(chǔ)器12中檢索這種地址轉(zhuǎn)換對(duì)(高速緩沖存 儲(chǔ)器檢索步驟),在該檢索結(jié)果是這種地址轉(zhuǎn)換對(duì)沒(méi)有被保存在高速緩沖 存儲(chǔ)器12中(發(fā)生了高速緩沖失敗)的情況下(參照?qǐng)D5的t7),高速 緩沖存儲(chǔ)器控制部19根據(jù)來(lái)自第1預(yù)取控制部22的信號(hào),開(kāi)始對(duì)主存 儲(chǔ)部10的TSB區(qū)域11進(jìn)行訪問(wèn)(參照?qǐng)D5的t8),以便將TSB物理地 址和地址轉(zhuǎn)換對(duì)的對(duì)預(yù)取到高速緩沖存儲(chǔ)器12中。并且,當(dāng)接收該地址 轉(zhuǎn)換對(duì)時(shí),高速緩沖存儲(chǔ)器控制部19將該地址轉(zhuǎn)換對(duì)以及該TSB物理地 址作為高速緩沖項(xiàng)目保存在高速緩沖存儲(chǔ)器12中(保存步驟)。但是, 在圖5所示的例子中,由于在進(jìn)行后述的根據(jù)來(lái)自O(shè)S的請(qǐng)求的通常處理 (圖5的tl2 t16)后接收該地址轉(zhuǎn)換對(duì),因此,在圖5所示的例中,保 存步驟在tl9的定時(shí)被執(zhí)行。
此處,在本信息處理裝置1中,在第1預(yù)取控制部22開(kāi)始預(yù)取的同 時(shí),根據(jù)來(lái)自O(shè)S的請(qǐng)求開(kāi)始針對(duì)TLB失敗進(jìn)行通常處理(參照?qǐng)D5的 t6)。
艮口,根據(jù)來(lái)自O(shè)S的請(qǐng)求,命令運(yùn)算部3從寄存器16讀出發(fā)生了 TLB 失敗的虛擬地址(參照?qǐng)D4的步驟S16,圖5的t6 t8),另外,從寄存器16中讀出由TSB-VA生成部15生成的TSB虛擬地址(參照?qǐng)D4的步 驟S17和圖5的t9 tl1)。
然后,開(kāi)始根據(jù)所讀取的TSB虛擬地址進(jìn)行存儲(chǔ)器訪問(wèn)(圖4的步 驟18),首先,VA比較器14根據(jù)TSB虛擬地址從TLB13中檢索與該 TSB虛擬地址對(duì)應(yīng)的TSB物理地址(參照?qǐng)D4的步驟S19和圖5的t12)。
接著,當(dāng)檢索出TSB物理地址時(shí)(TLB命中的情況;參照?qǐng)D4的步 驟S20和圖5的t13), PA比較器18根據(jù)檢索出的TSB物理地址,從高 速緩沖存儲(chǔ)器12中檢索該TSB物理地址和與該TSB物理地址對(duì)應(yīng)的地 址轉(zhuǎn)換對(duì)(TTE-Data)(參照?qǐng)D4的步驟S21和圖5的t14)。
此處,在通過(guò)PA比較器18檢索的結(jié)果是在高速緩沖存儲(chǔ)器12中沒(méi) 有將該TSB物理地址和該地址轉(zhuǎn)換對(duì)的對(duì)作為高速緩沖項(xiàng)目進(jìn)行保存的 情況下(即,發(fā)生高速緩沖失敗的情況;參照?qǐng)D4的步驟S22的否分支 和圖5的t15),高速緩沖存儲(chǔ)器控制部19為了將該TSB物理地址和該地 址轉(zhuǎn)換對(duì)的對(duì)取出到高速緩沖存儲(chǔ)器12中,而對(duì)主存儲(chǔ)部10的TSB區(qū) 域11進(jìn)行訪問(wèn)(參照?qǐng)D4的步驟S23和圖5的t16)。
這樣,在本信息處理裝置1中,在將MMU-MISS-TRAP報(bào)告給OS 之后的、根據(jù)來(lái)自O(shè)S的請(qǐng)求對(duì)TLB失敗執(zhí)行處理(參照?qǐng)D4的步驟S16 S23,圖5的tl2 tl6)之前,通過(guò)TSB-VA生成部15生成TSB虛擬地 址,緊接著VA比較器14和第1預(yù)取控制部22為了將與發(fā)生了 TLB失 敗的虛擬地址有關(guān)的地址轉(zhuǎn)換對(duì)保存在高速緩沖存儲(chǔ)器12中,而執(zhí)行預(yù) 取處理(參照?qǐng)D4的步驟S13 S15,圖5的t4 t7),因此,相對(duì)于根據(jù) 來(lái)自O(shè)S的請(qǐng)求的通常處理,在本例中,可以提前相當(dāng)于8t (8個(gè)處理時(shí) 間單位)對(duì)主存儲(chǔ)部10執(zhí)行訪問(wèn)(參照?qǐng)D5的t8)。
從而,該地址轉(zhuǎn)換對(duì)到達(dá)高速緩沖存儲(chǔ)器12、并將該地址轉(zhuǎn)換對(duì)登 記到高速緩沖存儲(chǔ)器12中的定時(shí),比起只執(zhí)行這種通常處理的情況,可 以大大提前,從而可以縮短發(fā)生了 TLB失敗的情況下的處理時(shí)間。
然后,在根據(jù)OS的請(qǐng)求而進(jìn)行主存儲(chǔ)訪問(wèn)(參照?qǐng)D4的步驟S23 和圖5的t16)之后,在地址轉(zhuǎn)換對(duì)到達(dá)高速緩沖存儲(chǔ)器12的情況下, 該地址轉(zhuǎn)換對(duì)和與該地址轉(zhuǎn)換對(duì)對(duì)應(yīng)的TSB物理地址的對(duì)作為高速緩沖項(xiàng)目被登記到高速緩沖存儲(chǔ)器12中(參照?qǐng)D5的tl9;保存步驟),再次
開(kāi)始根據(jù)由TSB-VA生成部15生成的TSB虛擬地址進(jìn)行存儲(chǔ)器訪問(wèn)(參 照?qǐng)D4的步驟S24)。 g卩,返回到圖4的步驟S18。
此處,VA比較器14根據(jù)由TSB-VA生成部15生成的、與發(fā)生了 TLB失敗的虛擬地址一一對(duì)應(yīng)的TSB虛擬地址,再次檢索TLB 13 (參照 圖4的步驟S19、 S20和圖5的t20、 t21 ), PA比較器18使用命中的TSB 物理地址,從高速緩沖存儲(chǔ)器12中檢索發(fā)生了 TLB失敗的虛擬地址的 地址轉(zhuǎn)換對(duì)(TTE-Data)(參照?qǐng)D4的步驟S21和圖5的t22)。
該TSB物理地址和地址轉(zhuǎn)換對(duì)的對(duì)由于在上述步驟S23 (即,參照 圖5的tl9;保存步驟)中作為高速緩沖項(xiàng)目已經(jīng)被登記到高速緩沖存儲(chǔ) 器12中,因此,在本次通過(guò)PA比較器18進(jìn)行的檢索中,作為該TSB 物理地址和地址轉(zhuǎn)換對(duì)的對(duì)的高速緩沖項(xiàng)目被命中(參照?qǐng)D4的步驟S22 的是分支和圖5的t23),完成由TSB-VA生成部15生成的TSB虛擬地址 的存儲(chǔ)器訪問(wèn)(TSB-VA訪問(wèn))(參照?qǐng)D5的t24)。
接著,登記部20將高速緩沖命中后的地址轉(zhuǎn)換對(duì)登記到TLB 13中 (參照?qǐng)D4的步驟S25和圖5的t25、 t26、 t27;第1地址項(xiàng)目登記步驟)。
此時(shí),在本信息處理裝置l中,在登記部20幵始將地址轉(zhuǎn)換對(duì)登記 到TLB 13中的同時(shí),第2預(yù)取控制部23根據(jù)該地址轉(zhuǎn)換對(duì)的物理地址, 將保存在該物理地址表示的主存儲(chǔ)部10的地址中的數(shù)據(jù)從主存儲(chǔ)部10 向高速緩沖存儲(chǔ)器12進(jìn)行預(yù)取(參照?qǐng)D4的步驟S26和圖5的t25 t28; 第2預(yù)取控制步驟,預(yù)取控制步驟)。
艮口,第2預(yù)取控制部23以登記部20開(kāi)始將地址轉(zhuǎn)換對(duì)向TLB 13中 登記作為觸發(fā),或者以輸入到登記部20中的TLB登記請(qǐng)求信號(hào)作為觸 發(fā),開(kāi)始進(jìn)行預(yù)取。
具體地,第2預(yù)取控制部23首先根據(jù)這種地址轉(zhuǎn)換對(duì)的虛擬地址和 物理地址,使PA生成部17生成最終的物理地址(參照?qǐng)D5的t25;第2 生成步驟,生成步驟)。
接著,第2預(yù)取控制部23使用由PA生成部17生成的最終的物理地 址,使PA比較器18執(zhí)行高速緩沖存儲(chǔ)器12的檢索(參照?qǐng)D5的t26;高速緩沖存儲(chǔ)器檢索步驟)。此處,在發(fā)生了高速緩沖失敗的情況下(參照?qǐng)D5的t27),第2預(yù) 取控制部23使高速緩沖存儲(chǔ)器控制部19使用發(fā)生了高速緩沖失敗的物 理地址,針對(duì)被保存在該物理地址表示的主存儲(chǔ)部10的地址中的數(shù)據(jù)執(zhí) 行預(yù)取(即,執(zhí)行主存儲(chǔ)訪問(wèn);參照?qǐng)D5的t28)。并且,在接收了該數(shù)據(jù)的情況下,高速緩沖存儲(chǔ)器控制部19將該數(shù) 據(jù)和該物理地址的對(duì)作為高速緩沖項(xiàng)目保存在高速緩沖存儲(chǔ)器12中(保 存步驟)。但是,在圖5所示的例子中,由于該數(shù)據(jù)在后述的通常處理(圖 5的t28 t32)之后到達(dá),因此,在圖5所示的例子中,保存步驟在t35 的定時(shí)被執(zhí)行。另一方面,當(dāng)完成圖4的步驟S25和圖5的t25 t28所示的TTE-Data 的登記處理時(shí),命令運(yùn)算部3再次開(kāi)始進(jìn)行發(fā)生了 TLB失敗的虛擬地址 的存儲(chǔ)器訪問(wèn)處理(圖4的步驟S27)。 g卩,返回到上述步驟SIO。然后,VA比較器14使用發(fā)生了 TLB失敗的虛擬地址,再次進(jìn)行TLB 13的檢索(參照?qǐng)D4的步驟Sll和圖5的t28)。此處,通過(guò)上述圖4的步驟S25和圖5的t25 t28中的登記處理, 該虛擬地址的地址轉(zhuǎn)換對(duì)作為項(xiàng)目已被登記在TLB13中,因此,并不會(huì) 發(fā)生MMU-MISS-TRAP (TLB失敗),而發(fā)生TLB命中(參照?qǐng)D4的步 驟S12的否的分支和圖5的t29)。接著,PA比較器18使用發(fā)生了 TLB命中的與該虛擬地址對(duì)應(yīng)的物 理地址,從高速緩沖存儲(chǔ)器12中檢索被保存在該物理地址表示的主存儲(chǔ) 部10的地址中的數(shù)據(jù)(參照?qǐng)D4的步驟S28和圖5的t30)。此處,在通過(guò)PA比較器18進(jìn)行檢索的結(jié)果是作為該物理地址和該 數(shù)據(jù)的對(duì)的該高速緩沖項(xiàng)目沒(méi)有被保存在高速緩沖存儲(chǔ)器12中的情況下 (即,高速緩沖存儲(chǔ)器失敗發(fā)生的情況;參照?qǐng)D4的步驟S29的否的分 支和圖5的t31),為了將該物理地址和該數(shù)據(jù)的對(duì)取出到高速緩沖存儲(chǔ) 器12中,高速緩沖存儲(chǔ)器控制部19對(duì)主存儲(chǔ)部10進(jìn)行訪問(wèn)(參照?qǐng)D4 的步驟S30和圖5的t32)。這樣,在本信息處理裝置l中,在發(fā)生了TLB失敗的虛擬地址和物理地址的地址轉(zhuǎn)換對(duì)向TLB 13中登記的處理(參照?qǐng)D4的步驟S25和圖 5的t25 t28)之后被執(zhí)行的、使用了該虛擬地址的處理(VA訪問(wèn);圖5 的t28 t32)開(kāi)始之前,開(kāi)始這種登記處理,同時(shí),為了使與該虛擬地址 對(duì)應(yīng)的物理地址、以及該物理地址表示的地址上的數(shù)據(jù)作為高速緩沖項(xiàng) 目保存到高速緩沖存儲(chǔ)器12中,第2預(yù)取控制部23執(zhí)行預(yù)取處理(參 照?qǐng)D4的步驟S26和圖5的t25 t28)。從而,針對(duì)該處理,例如在本例中可以提前4t (4個(gè)處理時(shí)間單位) 執(zhí)行對(duì)主存儲(chǔ)部10的訪問(wèn)(參照?qǐng)D5的t28)。因此,比起只執(zhí)行這種通常處理的情況,高速緩沖存儲(chǔ)器12接收該 數(shù)據(jù)、將該數(shù)據(jù)登記到高速緩沖存儲(chǔ)器12中的定時(shí)可以提前,從而可以 縮短發(fā)生了 TLB失敗情況下的處理時(shí)間。然后,在根據(jù)OS的請(qǐng)求而進(jìn)行主存儲(chǔ)訪問(wèn)(參照?qǐng)D4的步驟S30 和圖5的t32)之后,當(dāng)高速緩沖存儲(chǔ)器12接收到物理地址表示的地址 上的數(shù)據(jù)時(shí),該物理地址和該數(shù)據(jù)的對(duì)作為高速緩沖項(xiàng)目被登記到高速 緩沖存儲(chǔ)器12中(參照?qǐng)D5的t35;保存步驟),再次幵始根據(jù)發(fā)生了 TLB失敗后的虛擬地址進(jìn)行存儲(chǔ)器訪問(wèn)(參照?qǐng)D4的步驟S31)。 g卩,返 回到圖4的步驟S10。此處,VA比較器14使用發(fā)生了 TLB失敗的虛擬地址,第3次對(duì)TLB 13執(zhí)行檢索(參照?qǐng)D4的步驟Sll和圖5的t36)。接著,利用TLB命中(參照?qǐng)D4的步驟S12的否的分支和圖5的t37) 后的結(jié)果得到的、與該虛擬地址對(duì)應(yīng)的物理地址,PA比較器18從高速 緩沖存儲(chǔ)器12中再次檢索該物理地址表示的數(shù)據(jù)(參照?qǐng)D4的步驟S28 和圖5的t38)。該物理地址和該數(shù)據(jù)的對(duì)在上述步驟S30 (即,參照?qǐng)D5的t35)中 已經(jīng)作為高速緩沖項(xiàng)目被登記到高速緩沖存儲(chǔ)器12中,因此,在本次由 PA比較器18進(jìn)行的檢索中,該物理地址和數(shù)據(jù)的對(duì)作為高速緩沖項(xiàng)目 被命中(參照?qǐng)D4的步驟S29的是分支和圖5的t39)。然后,通過(guò)將檢索到的該數(shù)據(jù)發(fā)送到命令運(yùn)算部3,完成該存儲(chǔ)器訪 問(wèn)處理(參照?qǐng)D4的步驟S32和圖5的t40)。這樣,根據(jù)作為本發(fā)明的第1實(shí)施方式的信息處理裝置1和預(yù)取控制方法,VA比較器14在通過(guò)TSB-VA生成部15生成TSB虛擬地址的同 時(shí),使用該TSB虛擬地址從TLB 13中檢索TSB地址項(xiàng)目(第2檢索步 驟),在通過(guò)該VA比較器14檢索出與該TSB虛擬地址對(duì)應(yīng)的TSB物理 地址的同時(shí),第1預(yù)取控制部使用檢索出的該TSB物理地址,將發(fā)生了 TLB失敗的虛擬地址的地址轉(zhuǎn)換對(duì)從主存儲(chǔ)部10的TSB區(qū)域11向高速 緩沖存儲(chǔ)器12進(jìn)行預(yù)取(第1預(yù)取控制步驟),因此,在本信息處理裝 置1的針對(duì)TLB失敗進(jìn)行的通常處理中,在執(zhí)行主存儲(chǔ)訪問(wèn)以便取得該 地址轉(zhuǎn)換對(duì)之前,第1預(yù)取控制部22提前執(zhí)行主存儲(chǔ)訪問(wèn),使高速緩沖 存儲(chǔ)器12接收該地址轉(zhuǎn)換對(duì)的定時(shí)變?cè)?,其結(jié)果,能夠大幅縮短發(fā)生了 TLB失敗的存儲(chǔ)器訪問(wèn)的處理時(shí)間。另外,在登記部20開(kāi)始將該地址轉(zhuǎn)換對(duì)向TLB 13中的登記(登記 步驟;第l地址項(xiàng)目登記步驟)的同時(shí),第2預(yù)取控制部23根據(jù)該物理 地址,將保存在該地址轉(zhuǎn)換對(duì)的物理地址所表示的地址中的數(shù)據(jù)從主存 儲(chǔ)部10向高速緩沖存儲(chǔ)器12進(jìn)行預(yù)取(第2預(yù)取控制步驟),因此,在 本信息處理裝置1的針對(duì)TLB失敗進(jìn)行的通常處理中,在執(zhí)行主存儲(chǔ)訪 問(wèn)以便取得該數(shù)據(jù)以前,第2預(yù)取控制部23提前執(zhí)行主存儲(chǔ)訪問(wèn),使該 數(shù)據(jù)到達(dá)高速緩沖存儲(chǔ)器12的定時(shí)變?cè)?,其結(jié)果,能夠縮短發(fā)生了 TLB 失敗的存儲(chǔ)器訪問(wèn)的處理時(shí)間。[2]關(guān)于本發(fā)明的第2實(shí)施方式接著,對(duì)作為本發(fā)明的第2實(shí)施方式的信息處理裝置進(jìn)行說(shuō)明。如 圖1所示,作為本發(fā)明的第2實(shí)施方式的信息處理裝置l'具有與上述圖1 所示的第1實(shí)施方式的信息處理裝置1相同的結(jié)構(gòu),但相對(duì)于第1實(shí)施 方式的信息處理裝置1, VA比較器14、 TSB-VA生成部15、 PA生成部 17、 PA比較器18、高速緩沖存儲(chǔ)器控制部19、登記部20、以及預(yù)取控 制部21構(gòu)成為在發(fā)生了 TLB失敗的情況下,在向OS報(bào)告 MMU-MISS-TRAP之前,根據(jù)所生成的表示發(fā)生了 TLB失敗的信號(hào)(以 下,稱為T(mén)LB失敗信號(hào))來(lái)執(zhí)行該MMU-MISS-TRAP處理;并且構(gòu)成 為通過(guò)流水線控制,依次地執(zhí)行針對(duì)連續(xù)命令的處理(存儲(chǔ)器訪問(wèn)處從而,如圖6所示,在本信息處理裝置l'中,VA比較器14根據(jù)發(fā) 生TLB失敗時(shí)所生成的ITLB失敗信號(hào)來(lái)進(jìn)行檢索,第1預(yù)取控制部22 在通過(guò)VA比較器14從TLB 13中檢索出設(shè)定在寄存器16中的與TSB虛 擬地址對(duì)應(yīng)的TSB物理地址的同時(shí),根據(jù)這種TLB失敗信號(hào)執(zhí)行預(yù)取處 理。此處,關(guān)于作為本發(fā)明的第2實(shí)施方式的預(yù)取控制方法,參照?qǐng)D7 所示的流程圖(步驟SIO、 Sll、 S12'、 S13 S32)進(jìn)行說(shuō)明。并且,在 圖7中,與已描述的符號(hào)相同的符號(hào),表示相同的步驟或基本相同的步 驟。如該圖7所示,本預(yù)取控制方法相對(duì)于上述圖4所示的第1實(shí)施方 式的預(yù)取控制方法,除了第1實(shí)施方式的預(yù)取控制方法中的將 MMU-MISS-TRAP報(bào)告給OS的步驟(步驟S12)變成發(fā)送TLB失敗信 號(hào)的步驟(步驟S12')這點(diǎn)外,其他相同。艮P,在開(kāi)始發(fā)生TLB失敗的情況下(步驟S12'的是分支),當(dāng)通過(guò) TSB-VA生成部15生成與發(fā)生了 TLB失敗的虛擬地址一一對(duì)應(yīng)的TSB 虛擬地址時(shí),VA比較器14使用該TSB虛擬地址檢索TLB 13(步驟S13), 第1預(yù)取控制部22使用命中(步驟S14)的TSB物理地址,將這種虛擬 地址的地址轉(zhuǎn)換對(duì)向高速緩沖存儲(chǔ)器12中進(jìn)行預(yù)取。另一方面,在發(fā)生了這種TLB失敗(步驟S12'的是分支)后,在命 令運(yùn)算部3向OS報(bào)告MMU-MISS-TRAP之后,與上述第1實(shí)施方式的 預(yù)取控制方法相同,執(zhí)行步驟S16 S27的處理。從而,根據(jù)本信息處理裝置l'和本預(yù)取控制方法,可以得到與上述 第1實(shí)施方式同樣的作用效果。另夕卜,本信息處理裝置l'如上所述,VA比較器14、 TSB-VA生成部 15、 PA生成部17、 PA比較器18、高速緩沖存儲(chǔ)器控制部19、登記部20、 以及預(yù)取控制部21被進(jìn)行流水線控制,關(guān)于本信息處理裝置l'的流水線 動(dòng)作(即,由本信息處理裝置l'進(jìn)行的、針對(duì)連續(xù)的2個(gè)命令的存儲(chǔ)器 訪問(wèn)處理),參照?qǐng)D8所示的時(shí)間圖(tl t71)進(jìn)行說(shuō)明。并且,在圖8中,對(duì)于與已描述的處理內(nèi)容相同的處理內(nèi)容,此處省略其詳細(xì)說(shuō)明。
此外,圖8中的ti t71分別表示本信息處理裝置r的處理單位時(shí)間。
如圖8所示,本信息處理裝置l'在命令運(yùn)算部3中連續(xù)被輸入2個(gè) 命令時(shí),首先,VA比較器14使用前面的處理對(duì)象的虛擬地址檢索TLB 13 (參照tl)。此處,在發(fā)生了 TLB失敗的情況下(參照t2),由TSB-VA 生成部15、 VA比較器14、以及第1預(yù)取控制部22 (PA比較器18和高 速緩沖存儲(chǔ)器控制部19)進(jìn)行的處理順次被執(zhí)行(參照t3 t8)。并且, 該t3 t8的各處理與圖5所示的t3 t8的各處理相同。
此時(shí),在本信息處理裝置l'中,VA比較器14在使用前面的虛擬地 址完成檢索(參照tl)的同時(shí),執(zhí)行使用后續(xù)的虛擬地址的TLB 13的檢 索(參照t2)。
然后,關(guān)于后續(xù)的虛擬地址,在發(fā)生了 TLB失敗的情況下,由TSB-VA 生成部15、 VA比較器14、以及第1預(yù)取控制部22完成對(duì)前面的虛擬地 址的處理,同時(shí)(即,在下一處理單位時(shí)間中),執(zhí)行針對(duì)后續(xù)虛擬地址 的處理(參照t4 t9)。
從而,在圖8所示的例子中,由TSB-VA生成部15、 VA比較器14、 以及第1預(yù)取控制部22分別進(jìn)行的針對(duì)后續(xù)虛擬地址的處理,相對(duì)于對(duì) 前面虛擬地址的處理是錯(cuò)開(kāi)lt (1個(gè)處理單位時(shí)間)來(lái)執(zhí)行,依次地執(zhí)行 針對(duì)前面虛擬地址的處理和針對(duì)后續(xù)虛擬地址的處理。
對(duì)于后續(xù)虛擬地址,通常,在t29的定時(shí)處理被執(zhí)行,根據(jù)來(lái)自O(shè)S 的請(qǐng)求進(jìn)行的、與TSB物理地址對(duì)應(yīng)的發(fā)生了 TLB失敗的虛擬地址的地 址轉(zhuǎn)換對(duì)從TSB區(qū)域11的取出(主存儲(chǔ)訪問(wèn)),在t44的定時(shí)被執(zhí)行, 但在本信息處理裝置l'中,如上所述,由于能夠提前到t9的定時(shí)執(zhí)行主 存儲(chǔ)訪問(wèn),因此,比起只執(zhí)行通常處理的情況,可以使數(shù)據(jù)登記到高速 緩沖存儲(chǔ)器12的定時(shí)更早,其結(jié)果,能夠縮短連續(xù)的存儲(chǔ)器訪問(wèn)和發(fā)生 了 TLB失敗的情況下的處理時(shí)間。
并且,在圖8中,列舉了在針對(duì)后續(xù)虛擬地址的通常處理(參照t29 t71 )中,通過(guò)PA比較器18使用TSB物理地址進(jìn)行檢索的結(jié)果(參照t42) 是高速緩沖存儲(chǔ)器失敗(參照t43)的情況,但如上所述,由于在t9的定時(shí)已經(jīng)執(zhí)行主存儲(chǔ)訪問(wèn),因此,此處有時(shí)也有高速緩沖存儲(chǔ)器命中的情 況。在此情況下,能夠進(jìn)一步縮短存儲(chǔ)器訪問(wèn)處理的處理時(shí)間。
另外,此處列舉了 2個(gè)命令連續(xù)的情況為例進(jìn)行了說(shuō)明,但在3個(gè) 以上的命令連續(xù)的情況下,該命令處理中的由預(yù)取控制部21進(jìn)行的預(yù)取 處理,在比通常處理更早的階段被執(zhí)行,由此,越是后續(xù)命令,預(yù)取處 理的處理時(shí)間縮短的效果越高。
并且,在圖8中,針對(duì)前面虛擬地址的tl t40中的處理(圖中的"前 面的VA訪問(wèn)"、以及"前面的TSB-VA訪問(wèn)"),與上述圖4的tl t40中 的處理相同。另夕卜,針對(duì)后續(xù)虛擬地址的t29 t71中的處理(圖中的"后 續(xù)的VA訪問(wèn)"、以及"后續(xù)的TSB-VA訪問(wèn)")只有處理對(duì)象的虛擬地址 不同,其處理內(nèi)容與針對(duì)前面虛擬地址的tl t40中的處理相同。
這樣,根據(jù)作為本發(fā)明的第2實(shí)施方式的信息處理裝置1', VA比較 器14、 TSB-VA生成部15、 PA生成部17、 PA比較器18、高速緩沖存儲(chǔ) 器控制部19、登記部20、以及預(yù)取控制部21,根據(jù)向OS報(bào)告 MMU-MISS-TRAP之前生成的TLB失敗信號(hào)進(jìn)行動(dòng)作,并且,由于進(jìn)行 流水線控制,因此,即使在連續(xù)命令中均發(fā)生了TLB失敗的情況下,也 不等待針對(duì)前面命令的存儲(chǔ)器訪問(wèn)處理完成,而能夠執(zhí)行該存儲(chǔ)器訪問(wèn) 處理、以及依次地執(zhí)行針對(duì)后續(xù)命令的存儲(chǔ)器訪問(wèn)處理。針對(duì)后續(xù)命令 的由預(yù)取控制部21進(jìn)行的預(yù)取處理能夠大幅提前執(zhí)行,可以在非常早的 階段將數(shù)據(jù)(地址轉(zhuǎn)換對(duì)或與物理地址對(duì)應(yīng)的數(shù)據(jù))保存到高速緩沖存 儲(chǔ)器12中。從而,在連續(xù)的存儲(chǔ)器訪問(wèn)中,即使在發(fā)生了 TLB失敗的 情況下,也可以縮短這種處理時(shí)間。其他
并且,本發(fā)明并不僅限于上述實(shí)施方式,在不脫離本發(fā)明主旨的范 圍內(nèi),可以進(jìn)行種種變形和組合后實(shí)施。
并且,在本發(fā)明中,并不僅限于上述圖5、圖8的時(shí)間圖中的處理單 位時(shí)間。g卩,圖5、圖8的時(shí)間圖中所示的各處理被執(zhí)行的處理時(shí)間(各 處理的處理時(shí)間的長(zhǎng)短)在本發(fā)明中不受限定。
如以上詳述的那樣,本發(fā)明的信息處理裝置的特征在于具有命令運(yùn)算部,其執(zhí)行命令;主存儲(chǔ)部,其具有地址轉(zhuǎn)換用表,該地址轉(zhuǎn)換用
表保存與通過(guò)該命令運(yùn)算部執(zhí)行的命令有關(guān)的數(shù)據(jù),并且保存第1地址 轉(zhuǎn)換對(duì),該第1地址轉(zhuǎn)換對(duì)是表示保存該數(shù)據(jù)的地址的第1物理地址、
以及與該第1物理地址對(duì)應(yīng)的第1虛擬地址的地址轉(zhuǎn)換對(duì);高速緩沖存 儲(chǔ)器,其介入安裝在上述命令運(yùn)算部與上述主存儲(chǔ)部之間,用于臨時(shí)保 存數(shù)據(jù);地址轉(zhuǎn)換用緩沖器,其保存第2地址轉(zhuǎn)換對(duì),同時(shí)可保存第1 地址轉(zhuǎn)換對(duì),該第2地址轉(zhuǎn)換對(duì)是表示在上述地址轉(zhuǎn)換用表中保存第1 地址轉(zhuǎn)換對(duì)的地址的第2物理地址、以及與該第2物理地址對(duì)應(yīng)的第2 虛擬地址的地址轉(zhuǎn)換對(duì);第1檢索部,其從上述地址轉(zhuǎn)換用緩沖器中檢 索與處理對(duì)象的第1虛擬地址有關(guān)的第1地址轉(zhuǎn)換對(duì);第1生成部,在 由該第1檢索部進(jìn)行檢索的結(jié)果是與上述處理對(duì)象的第1虛擬地址有關(guān) 的第1地址轉(zhuǎn)換對(duì)沒(méi)有被保存在上述地址轉(zhuǎn)換用緩沖器內(nèi)的情況下,根 據(jù)該第1虛擬地址,生成與該第1虛擬地址對(duì)應(yīng)的第2虛擬地址;第2 檢索部,其在通過(guò)該第1生成部生成上述第2虛擬地址的同時(shí),從上述 地址轉(zhuǎn)換用緩沖器中檢索與被生成的上述第2虛擬地址有關(guān)的第2地址 轉(zhuǎn)換對(duì);第1預(yù)取控制部,其在通過(guò)該第2檢索部檢索出與上述第2虛 擬地址對(duì)應(yīng)的第2物理地址的同時(shí),利用檢索出的該第2物理地址,將 與上述處理對(duì)象的第1虛擬地址有關(guān)的第1地址轉(zhuǎn)換對(duì),從上述主存儲(chǔ) 部的上述地址轉(zhuǎn)換用表預(yù)取到上述高速緩沖存儲(chǔ)器中。
并且,優(yōu)選方式為,上述第1檢索部、上述第1生成部、上述第2 檢索部、以及上述第1預(yù)取控制部被進(jìn)行流水線控制,上述第1檢索部、 上述第1生成部、上述第2檢索部、以及上述第1預(yù)取控制部并行地執(zhí) 行針對(duì)連續(xù)命令的處理。
并且,優(yōu)選方式為,上述信息處理裝置還具有高速緩沖存儲(chǔ)器檢索 部,其從上述高速緩沖存儲(chǔ)器中檢索上述第2物理地址和上述第1地址 轉(zhuǎn)換對(duì)的對(duì)。上述第1預(yù)取控制部使上述高速緩沖存儲(chǔ)器檢索部根據(jù)上 述第2物理地址從上述高速緩沖存儲(chǔ)器中檢索該第2物理地址和保存在 該第2物理地址表示的地址中的第1地址轉(zhuǎn)換對(duì)的對(duì)。在通過(guò)上述高速 緩沖存儲(chǔ)器檢索部檢索的結(jié)果是該第2物理地址和該第1地址轉(zhuǎn)換對(duì)的對(duì)沒(méi)有被保存在上述高速緩沖存儲(chǔ)器中的情況下,從上述地址轉(zhuǎn)換用表 中讀出該第1地址轉(zhuǎn)換對(duì),將該第2物理地址和該第1地址轉(zhuǎn)換對(duì)的對(duì) 保存在上述高速緩沖存儲(chǔ)器中。
并且,優(yōu)選方式為,上述信息處理裝置構(gòu)成為還具有登記部,其 將保存在上述高速緩沖存儲(chǔ)器中的、與上述處理對(duì)象的第1虛擬地址有
關(guān)的第1地址轉(zhuǎn)換對(duì)登記到上述地址轉(zhuǎn)換用緩沖器中;第2預(yù)取控制部,
其在該登記部開(kāi)始將上述第1地址轉(zhuǎn)換對(duì)向上述地址轉(zhuǎn)換用緩沖器中登 記的同時(shí),根據(jù)該第1地址轉(zhuǎn)換對(duì)的第1物理地址,將保存在該第1物 理地址表示的地址中的數(shù)據(jù)從上述主存儲(chǔ)部預(yù)取到上述高速緩沖存儲(chǔ)器 中。
并且,優(yōu)選方式為,上述信息處理裝置還具有第2生成部,其根據(jù) 第2虛擬地址和第2物理地址,生成針對(duì)該第2虛擬地址的最終的物理 地址,上述第1預(yù)取控制部使用由上述第2生成部生成的最終的物理地 址執(zhí)行上述預(yù)取。
此外,本發(fā)明的信息處理裝置的特征在于具有命令運(yùn)算部,其執(zhí) 行命令;主存儲(chǔ)部,其具有地址轉(zhuǎn)換用表,該地址轉(zhuǎn)換用表保存與通過(guò)
該命令運(yùn)算部執(zhí)行的命令有關(guān)的數(shù)據(jù),并且保存第1地址轉(zhuǎn)換對(duì),該第1 地址轉(zhuǎn)換對(duì)是表示保存該數(shù)據(jù)的地址的第1物理地址和與該第1物理地
址對(duì)應(yīng)的第1虛擬地址的地址轉(zhuǎn)換對(duì);高速緩沖存儲(chǔ)器,其介入安裝在 上述命令運(yùn)算部與上述主存儲(chǔ)部之間,用于臨時(shí)保存數(shù)據(jù);地址轉(zhuǎn)換用 緩沖器,其保存第2地址轉(zhuǎn)換對(duì),并且可保存第1地址轉(zhuǎn)換對(duì),該第2
地址轉(zhuǎn)換對(duì)是表示在上述地址轉(zhuǎn)換用表中保存第1地址轉(zhuǎn)換對(duì)的地址的
第2物理地址、以及與該第2物理地址對(duì)應(yīng)的第2虛擬地址的地址轉(zhuǎn)換 對(duì);檢索部,其從上述地址轉(zhuǎn)換用緩沖器中檢索與處理對(duì)象的第1虛擬 地址有關(guān)的第1地址轉(zhuǎn)換對(duì);第1地址轉(zhuǎn)換對(duì)登記部,其在通過(guò)該檢索 部檢索的結(jié)果是與上述處理對(duì)象的第1虛擬地址有關(guān)的第1地址轉(zhuǎn)換對(duì) 沒(méi)有保存在上述地址轉(zhuǎn)換用緩沖器中的情況下,根據(jù)與該第1虛擬地址 對(duì)應(yīng)的第2地址轉(zhuǎn)換對(duì),將與該第1虛擬地址有關(guān)的第1地址轉(zhuǎn)換對(duì)登 記到上述地址轉(zhuǎn)換用緩沖器中;數(shù)據(jù)預(yù)取控制部,其在該第1地址轉(zhuǎn)換對(duì)登記部開(kāi)始將上述第1地址轉(zhuǎn)換對(duì)向上述地址轉(zhuǎn)換用緩沖器中登記的 同時(shí),根據(jù)該第1地址轉(zhuǎn)換對(duì)的第1物理地址,將保存在該第l物理地 址表示的地址中的數(shù)據(jù)從上述主存儲(chǔ)部預(yù)取到上述高速緩沖存儲(chǔ)器中。
另外,優(yōu)選方式為,上述信息處理裝置還具有高速緩沖存儲(chǔ)器檢索 部,其從上述高速緩沖存儲(chǔ)器中檢索上述第1物理地址和上述數(shù)據(jù)的對(duì)。 上述數(shù)據(jù)預(yù)取控制部根據(jù)上述第1物理地址,從上述高速緩沖存儲(chǔ)器中 檢索該第1物理地址、以及保存在該第1物理地址表示的地址中的上述 數(shù)據(jù)的對(duì),在通過(guò)上述高速緩沖存儲(chǔ)器檢索部檢索的結(jié)果是該第1物理 地址和該數(shù)據(jù)的對(duì)沒(méi)有被保存在上述高速緩沖存儲(chǔ)器中的情況下,讀出 該數(shù)據(jù),將該第1物理地址和該數(shù)據(jù)的對(duì)保存到上述高速緩沖存儲(chǔ)器中。
另外,優(yōu)選方式為,上述信息處理裝置還具有生成部,其根據(jù)第1 虛擬地址和第1物理地址,生成對(duì)應(yīng)該第1虛擬地址的最終的物理地址。 上述數(shù)據(jù)預(yù)取控制部使用由上述生成部生成的最終的物理地址執(zhí)行上述 預(yù)取。
此外,本發(fā)明的預(yù)取控制方法是在信息處理裝置中,將第1地址轉(zhuǎn) 換對(duì)預(yù)取到上述地址轉(zhuǎn)換用緩沖器中的方法,該信息處理裝置具有命 令運(yùn)算部,其執(zhí)行命令;主存儲(chǔ)部,其具有地址轉(zhuǎn)換用表,該地址轉(zhuǎn)換 用表保存與通過(guò)該命令運(yùn)算部執(zhí)行的命令有關(guān)的數(shù)據(jù),并且保存第1地 址轉(zhuǎn)換對(duì),該第1地址轉(zhuǎn)換對(duì)是表示保存該數(shù)據(jù)的地址的第1物理地址、 以及與該第1物理地址對(duì)應(yīng)的第1虛擬地址的地址轉(zhuǎn)換對(duì);高速緩沖存 儲(chǔ)器,其介入安裝在上述命令運(yùn)算部與上述主存儲(chǔ)部之間,用于臨時(shí)保 存數(shù)據(jù);地址轉(zhuǎn)換用緩沖器,其保存第2地址轉(zhuǎn)換對(duì),并且可保存第1 地址轉(zhuǎn)換對(duì),該第2地址轉(zhuǎn)換對(duì)是表示在上述地址轉(zhuǎn)換用表中保存第1 地址轉(zhuǎn)換對(duì)的地址的第2物理地址、以及與該第2物理地址對(duì)應(yīng)的第2 虛擬地址的地址轉(zhuǎn)換對(duì),該預(yù)取控制方法的特征在于具有如下步驟第1 檢索步驟,在該步驟中,從上述地址轉(zhuǎn)換用緩沖器中檢索與處理對(duì)象的 第1虛擬地址有關(guān)的第1地址轉(zhuǎn)換對(duì);第1生成步驟,在該步驟中,在 該第1檢索步驟中的檢索結(jié)果是與上述處理對(duì)象的第1虛擬地址有關(guān)的 第1地址轉(zhuǎn)換對(duì)沒(méi)有被保存在上述地址轉(zhuǎn)換用緩沖器內(nèi)的情況下,根據(jù)該第1虛擬地址,生成與該第1虛擬地址對(duì)應(yīng)的第2虛擬地址;第2檢 索步驟,在該步驟中,與在該第1生成步驟中生成上述第2虛擬地址同 時(shí),從上述地址轉(zhuǎn)換用緩沖器中檢索與所生成的上述第2虛擬地址有關(guān) 的第2地址轉(zhuǎn)換對(duì);第1預(yù)取控制步驟,在該步驟中,與在該第2檢索 步驟中檢索出與上述第2虛擬地址對(duì)應(yīng)的第2物理地址同時(shí),使用檢索 出的該第2物理地址,將與上述處理對(duì)象的第1虛擬地址有關(guān)的第1地 址轉(zhuǎn)換對(duì),從上述主存儲(chǔ)部的上述地址轉(zhuǎn)換用表預(yù)取到上述高速緩沖存 儲(chǔ)器中。
并且,優(yōu)選方式為,使上述第1檢索步驟、上述第1生成步驟、上 述第2檢索步驟、以及上述第1預(yù)取控制步驟,通過(guò)流水線控制,并列 地執(zhí)行連續(xù)命令。
另外,優(yōu)選方式為,上述第1預(yù)取控制步驟包含有高速緩沖存儲(chǔ) 器檢索步驟,在該步驟中,根據(jù)上述第2物理地址,從上述高速緩沖存 儲(chǔ)器中檢索該第2物理地址和保存在該第2物理地址表示的地址中的第1 地址轉(zhuǎn)換對(duì)的對(duì);保存步驟,在該步驟中,在上述高速緩沖存儲(chǔ)器檢索 步驟中的檢索結(jié)果是該第2物理地址與該第1地址轉(zhuǎn)換對(duì)的對(duì)沒(méi)有被保 存在上述高速緩沖存儲(chǔ)器中的情況下,從上述地址轉(zhuǎn)換用表中讀出該第1 地址轉(zhuǎn)換對(duì),使該第2物理地址和該第1地址轉(zhuǎn)換對(duì)的對(duì)保存到上述高 速緩沖存儲(chǔ)器中。
此外,優(yōu)選方式為,還包含登記步驟,在該步驟中,將保存在上 述高速緩沖存儲(chǔ)器中的、與上述處理對(duì)象的第1虛擬地址有關(guān)的第1地 址轉(zhuǎn)換對(duì)登記到上述地址轉(zhuǎn)換用緩沖器中;第2預(yù)取控制步驟,在該步 驟中,與在該登記步驟中開(kāi)始將上述第1地址轉(zhuǎn)換對(duì)登記到上述第1地 址轉(zhuǎn)換對(duì)的上述地址轉(zhuǎn)換用緩沖器中同時(shí),根據(jù)該第1地址轉(zhuǎn)換對(duì)的第1 物理地址,將保存在該第1物理地址表示的地址中的數(shù)據(jù)從上述主存儲(chǔ) 部預(yù)取到上述高速緩沖存儲(chǔ)器中。
并且,優(yōu)選方式為,還包含第2生成步驟,在該步驟中,根據(jù)第2 虛擬地址和第2物理地址,生成對(duì)應(yīng)該第2虛擬地址的最終的物理地址; 上述第1預(yù)取控制步驟利用在上述第2生成步驟中生成的最終的物理地址,執(zhí)行上述預(yù)取。
此外,本發(fā)明的預(yù)取控制方法是在信息處理裝置中,將與上述命令 有關(guān)的數(shù)據(jù)預(yù)取到上述高速緩沖存儲(chǔ)器中的方法,該信息處理裝置具有-命令運(yùn)算部,其執(zhí)行命令;主存儲(chǔ)部,其具有地址轉(zhuǎn)換用表,該地址轉(zhuǎn) 換用表保存與通過(guò)該命令運(yùn)算部執(zhí)行的命令有關(guān)的數(shù)據(jù),并且保存第1 地址轉(zhuǎn)換對(duì),該第1地址轉(zhuǎn)換對(duì)是表示保存該數(shù)據(jù)的地址的第1物理地 址、以及與該第1物理地址對(duì)應(yīng)的第1虛擬地址的地址轉(zhuǎn)換對(duì);高速緩
沖存儲(chǔ)器,其介入安裝在上述命令運(yùn)算部與上述主存儲(chǔ)部之間,用于臨
時(shí)保存數(shù)據(jù);地址轉(zhuǎn)換用緩沖器,其保存第2地址轉(zhuǎn)換對(duì),并且可保存 第1地址轉(zhuǎn)換對(duì),該第2地址轉(zhuǎn)換對(duì)是表示在上述地址轉(zhuǎn)換用表中保存 第1地址轉(zhuǎn)換對(duì)的地址的第2物理地址、以及與該第2物理地址對(duì)應(yīng)的 第2虛擬地址的地址轉(zhuǎn)換對(duì),該預(yù)取控制方法的特征在于具有如下步驟 檢索步驟,在該步驟中,從上述地址轉(zhuǎn)換用緩沖器中檢索與處理對(duì)象的 第1虛擬地址有關(guān)的第1地址轉(zhuǎn)換對(duì);第1地址轉(zhuǎn)換對(duì)登記步驟,在該 步驟中,在該檢索步驟的檢索結(jié)果是與上述處理對(duì)象的第1虛擬地址有 關(guān)的第1地址轉(zhuǎn)換對(duì)沒(méi)有被保存在上述地址轉(zhuǎn)換用緩沖器內(nèi)的情況下, 根據(jù)與該第1虛擬地址對(duì)應(yīng)的第2地址轉(zhuǎn)換對(duì),將與該第1虛擬地址有
關(guān)的第1地址轉(zhuǎn)換對(duì)登記到上述地址轉(zhuǎn)換用緩沖器中;數(shù)據(jù)預(yù)取控制步 驟,在該步驟中,與在該第1地址轉(zhuǎn)換對(duì)登記步驟中開(kāi)始將上述第1地 址轉(zhuǎn)換對(duì)登記到上述地址轉(zhuǎn)換用緩沖器中同時(shí),根據(jù)該第1地址轉(zhuǎn)換對(duì) 的第1物理地址,將保存在該第1物理地址表示的地址中的數(shù)據(jù),從上 述主存儲(chǔ)部中預(yù)取到上述高速緩沖存儲(chǔ)器中。
并且,優(yōu)選方式為,上述數(shù)據(jù)預(yù)取控制步驟具有高速緩沖存儲(chǔ)器 檢索步驟,在該步驟中,根據(jù)上述第1物理地址,從上述高速緩沖存儲(chǔ) 器中檢索該第1物理地址、以及保存在該第1物理地址表示的地址中的 上述數(shù)據(jù)的對(duì);保存步驟,在該步驟中,在上述高速緩沖存儲(chǔ)器檢索步 驟中的檢索結(jié)果是該第1物理地址與該數(shù)據(jù)的對(duì)沒(méi)有被保存在上述高速 緩沖存儲(chǔ)器中的情況下,讀出該數(shù)據(jù),將該第1物理地址與該數(shù)據(jù)的對(duì) 保存到上述高速緩沖存儲(chǔ)器中。另外,優(yōu)選方式為,還包含有生成步驟,在該步驟中,根據(jù)第1虛 擬地址和第1物理地址,生成對(duì)應(yīng)該第1虛擬地址的最終的物理地址; 上述數(shù)據(jù)預(yù)取控制步驟使用在上述生成步驟中生成的最終的物理地址來(lái) 執(zhí)行上述預(yù)取。
權(quán)利要求
1.一種運(yùn)算處理裝置,其特征在于,該運(yùn)算處理裝置連接到存儲(chǔ)單元,該存儲(chǔ)單元將第1地址轉(zhuǎn)換對(duì)作為地址轉(zhuǎn)換用表加以保存,該第1地址轉(zhuǎn)換對(duì)是保存數(shù)據(jù)的第1物理地址和與所述第1物理地址對(duì)應(yīng)的第1虛擬地址的對(duì),所述運(yùn)算處理裝置具有高速緩沖存儲(chǔ)單元;地址轉(zhuǎn)換緩沖單元,其保存第2地址轉(zhuǎn)換對(duì),并且可保存所述第1地址轉(zhuǎn)換對(duì),該第2地址轉(zhuǎn)換對(duì)是第2物理地址和與該第2物理地址對(duì)應(yīng)的第2虛擬地址的對(duì),所述第2物理地址表示在所述存儲(chǔ)單元中保存所述第1地址轉(zhuǎn)換對(duì)的地址;第1檢索部,其使用所述第1虛擬地址,從所述地址轉(zhuǎn)換緩沖單元中進(jìn)行所述第1物理地址的檢索;第2檢索部,其使用與所述第1虛擬地址一一對(duì)應(yīng)的第2虛擬地址,從所述地址轉(zhuǎn)換緩沖單元中進(jìn)行所述第2物理地址的檢索;以及預(yù)取控制部,其使用作為所述檢索結(jié)果的第2物理地址,將與所述第1虛擬地址有關(guān)的所述第1地址轉(zhuǎn)換對(duì),從所述地址轉(zhuǎn)換用表向所述高速緩沖存儲(chǔ)單元進(jìn)行登記。
2. 根據(jù)權(quán)利要求1所述的運(yùn)算處理裝置,其特征在于, 所述運(yùn)算處理裝置還具有虛擬地址生成部,在與所述第1虛擬地址對(duì)應(yīng)的第1地址轉(zhuǎn)換對(duì)沒(méi)有被保存在所述地 址轉(zhuǎn)換緩沖單元中的情況下,通過(guò)所述虛擬地址生成部進(jìn)行與所述第1 虛擬地址一一對(duì)應(yīng)的所述第2虛擬地址的生成。
3. 根據(jù)權(quán)利要求2所述的運(yùn)算處理裝置,其特征在于,所述第1檢索部、所述虛擬地址生成部、所述第2檢索部以及所述 預(yù)取控制部被進(jìn)行流水線控制,所述第1檢索部、所述虛擬地址生成部、所述第2檢索部以及所述 預(yù)取控制部依次地執(zhí)行對(duì)連續(xù)命令的處理。
4. 根據(jù)權(quán)利要求1所述的運(yùn)算處理裝置,其特征在于, 所述預(yù)取控制部具有-第1預(yù)取控制部,其使用所述第2物理地址從所述地址轉(zhuǎn)換用表中 檢索所述第1地址轉(zhuǎn)換對(duì),將所述第2物理地址和檢索出的所述第1地 址轉(zhuǎn)換對(duì)的組在所述高速緩沖存儲(chǔ)單元中迸行登記;以及第2預(yù)取控制部,其在所述地址轉(zhuǎn)換緩沖單元開(kāi)始登記所述第1地 址轉(zhuǎn)換對(duì)的情況下,根據(jù)包含在所述第1地址轉(zhuǎn)換對(duì)中的第1物理地址, 將保存在所述第1物理地址中的數(shù)據(jù)從所述存儲(chǔ)單元向所述高速緩沖存 儲(chǔ)單元進(jìn)行登記。
5. —種信息處理裝置,其特征在于, 該信息處理裝置具有存儲(chǔ)單元,其將第1地址轉(zhuǎn)換對(duì)作為地址轉(zhuǎn)換用表加以保存,該第1 地址轉(zhuǎn)換對(duì)是保存數(shù)據(jù)的第1物理地址和與所述第1物理地址對(duì)應(yīng)的第1 虛擬地址的對(duì);高速緩沖存儲(chǔ)單元;地址轉(zhuǎn)換緩沖單元,其保存第2地址轉(zhuǎn)換對(duì),并且可保存所述第1 地址轉(zhuǎn)換對(duì),該第2地址轉(zhuǎn)換對(duì)是第2物理地址和與該第2物理地址對(duì) 應(yīng)的第2虛擬地址的對(duì),所述第2物理地址表示在所述存儲(chǔ)單元中保存 所述第1地址轉(zhuǎn)換對(duì)的地址;第1檢索部,其使用所述第1虛擬地址,從所述地址轉(zhuǎn)換緩沖單元 中進(jìn)行所述第1物理地址的檢索;第2檢索部,其使用與所述第1虛擬地址一一對(duì)應(yīng)的第2虛擬地址, 從所述地址轉(zhuǎn)換緩沖單元中進(jìn)行所述第2物理地址的檢索;以及預(yù)取控制部,其使用作為所述檢索結(jié)果的第2物理地址,將與所述 第1虛擬地址有關(guān)的所述第1地址轉(zhuǎn)換對(duì),從所述地址轉(zhuǎn)換用表向所述 高速緩沖存儲(chǔ)單元進(jìn)行登記。
6. 根據(jù)權(quán)利要求5所述的信息處理裝置,其特征在于, 所述信息處理裝置還具有虛擬地址生成部,當(dāng)與所述第1虛擬地址對(duì)應(yīng)的第1地址轉(zhuǎn)換對(duì)沒(méi)有被保存在所述地址轉(zhuǎn)換緩沖單元中的情況下,通過(guò)所述虛擬地址生成部進(jìn)行與所述第1虛擬地址一一對(duì)應(yīng)的所述第2虛擬地址的生成。
7. 根據(jù)權(quán)利要求6所述的信息處理裝置,其特征在于,所述第1檢索部、所述虛擬地址生成部、所述第2檢索部以及所述 預(yù)取控制部被進(jìn)行流水線控制,所述第1檢索部、所述虛擬地址生成部、所述第2檢索部以及所述 預(yù)取控制部依次地執(zhí)行對(duì)連續(xù)命令的處理。
8. 根據(jù)權(quán)利要求5所述的信息處理裝置,其特征在于,所述預(yù)取控制部具有第1預(yù)取控制部,其使用所述第2物理地址從所述地址轉(zhuǎn)換用表中 檢索所述第1地址轉(zhuǎn)換對(duì),將所述第2物理地址和檢索出的所述第1地 址轉(zhuǎn)換對(duì)的組在所述高速緩沖存儲(chǔ)單元中進(jìn)行登記;以及第2預(yù)取控制部,其在所述地址轉(zhuǎn)換緩沖單元開(kāi)始登記所述第1地 址轉(zhuǎn)換對(duì)的情況下,根據(jù)包含在所述第1地址轉(zhuǎn)換對(duì)中的第1物理地址, 將保存在所述第1物理地址中的數(shù)據(jù)從所述存儲(chǔ)單元向所述高速緩沖存 儲(chǔ)單元中進(jìn)行登記。
9. 一種運(yùn)算處理裝置的存儲(chǔ)器訪問(wèn)方法,其特征在于,該方法具有如下步驟將第1地址轉(zhuǎn)換對(duì)作為地址轉(zhuǎn)換用表保存在存儲(chǔ)單元中的步驟,該 第1地址轉(zhuǎn)換對(duì)是保存數(shù)據(jù)的第1物理地址和與所述第1物理地址對(duì)應(yīng)的第1虛擬地址的對(duì);保存第2地址轉(zhuǎn)換對(duì)并且保存所述第1地址轉(zhuǎn)換對(duì)的步驟,該第2 地址轉(zhuǎn)換對(duì)是第2物理地址和與該第2物理地址對(duì)應(yīng)的第2虛擬地址的 對(duì),所述第2物理地址表示保存所述第1地址轉(zhuǎn)換對(duì)的地址;使用所述第1虛擬地址,從所述地址轉(zhuǎn)換緩沖單元中進(jìn)行所述第1 物理地址的檢索的步驟;使用與所述第1虛擬地址一一對(duì)應(yīng)的第2虛擬地址,從所述地址轉(zhuǎn) 換緩沖單元中進(jìn)行所述第2物理地址的檢索的步驟;以及使用作為所述檢索結(jié)果的第2物理地址,將與所述第1虛擬地址有關(guān)的所述第1地址轉(zhuǎn)換對(duì)從所述地址轉(zhuǎn)換用表向高速緩沖存儲(chǔ)單元中進(jìn) 行登記的步驟。
10.根據(jù)權(quán)利要求9所述的運(yùn)算處理裝置的存儲(chǔ)器訪問(wèn)方法,其特征 在于,所述運(yùn)算處理裝置的存儲(chǔ)器訪問(wèn)方法在保存所述第1地址轉(zhuǎn)換對(duì)的 步驟中還具有如下步驟-根據(jù)包含在所述第1地址轉(zhuǎn)換對(duì)中的第1物理地址,將保存在所述 第1物理地址中的數(shù)據(jù)從所述存儲(chǔ)單元向所述高速緩沖存儲(chǔ)單元中進(jìn)行 登記的步驟。
全文摘要
本發(fā)明在具有高速緩沖存儲(chǔ)器、TLB以及TSB的信息處理裝置中,在進(jìn)行存儲(chǔ)器訪問(wèn)時(shí)發(fā)生了TLB失敗的情況下,為了能大幅縮短此情況下的該存儲(chǔ)器訪問(wèn)的處理時(shí)間,而使該信息處理裝置構(gòu)成為具有第2檢索部(14),其使用與第1虛擬地址一一對(duì)應(yīng)的第2虛擬地址,從地址轉(zhuǎn)換緩沖單元(13)中進(jìn)行第2物理地址的檢索;以及預(yù)取控制部(22),其使用作為該檢索結(jié)果的第2物理地址,將與第1虛擬地址有關(guān)的第1地址轉(zhuǎn)換對(duì)從地址轉(zhuǎn)換用表(11)向高速緩沖存儲(chǔ)單元(12)進(jìn)行登記。
文檔編號(hào)G06F12/08GK101300555SQ20068004094
公開(kāi)日2008年11月5日 申請(qǐng)日期2006年1月20日 優(yōu)先權(quán)日2005年10月31日
發(fā)明者木村啟昭 申請(qǐng)人:富士通株式會(huì)社