專利名稱:信息處理裝置、處理器及存儲器管理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及進(jìn)行對存儲器的訪問的信息處理裝置、處理器及存儲器管理方法。
背景技術(shù):
在以往的信息處理裝置中,例如使用動態(tài)隨機(jī)存儲器(DynamicRandom Access Memory,DRAM)等易失性存儲器,作為處理器的主存儲器。進(jìn)而,在以往的信息處理裝置中, 與易失性存儲器組合地使用二級存儲裝置。 在該以往的信息處理裝置中,若切斷電源則主存儲器的內(nèi)容丟失。因此,在以往的
信息處理裝置中,在每次引導(dǎo)時,都需要系統(tǒng)的啟動,并且關(guān)于程序啟動或數(shù)據(jù)的讀入,每
次都需要將程序或數(shù)據(jù)從二級存儲裝置讀入到主存儲器,從而在執(zhí)行上需要時間。 此外,在以往的信息處理裝置中,在電源被切斷了的情況下,主存儲器的內(nèi)容不會
被保存。因此,在以往的信息處理裝置未正確地關(guān)機(jī)的情況下,數(shù)據(jù)、系統(tǒng)、程序存在受到破
壞的可能性。 在專利文獻(xiàn)1 (特開平7-146820)中,公開了采用快閃存儲器作為信息處理裝置的 主存儲裝置的技術(shù)。在專利文獻(xiàn)1中,在系統(tǒng)的存儲器總線上,經(jīng)由本身是易失性存儲器的 高速緩沖存儲器,連接快閃存儲器。在高速緩沖存儲器中,設(shè)置有記錄該高速緩沖存儲器中 所存儲的數(shù)據(jù)的地址或訪問歷史等信息的地址數(shù)組??刂破?,參照訪問目的地的地址,將高 速緩沖存儲器或快閃存儲器的數(shù)據(jù)提供到存儲器總線上,或者對存儲器總線的數(shù)據(jù)進(jìn)行存 儲。 在專利文獻(xiàn)2 (特開2001-266580號公報)中,公開了能夠?qū)⒎N類不同的半導(dǎo)體存 儲裝置連接到共同的總線上的發(fā)明。 該專利文獻(xiàn)2的半導(dǎo)體存儲裝置,包含隨機(jī)存儲器芯片和具備前述隨機(jī)存儲器芯 片的封裝("'7 , 一 - )。前述封裝,具有將前述隨機(jī)存儲器芯片電連接到外部裝置的多個 引腳。多個引腳,與前述隨機(jī)存儲器和可電擦除及編程的非易失性半導(dǎo)體存儲器共同地提 供存儲器功能。前述多個引腳的各個,排列在非易失性半導(dǎo)體存儲器的對應(yīng)的引腳的位置。
發(fā)明內(nèi)容
本發(fā)明的第1方式的信息處理裝置,具備地址發(fā)生部,在從處理器發(fā)生了對于非 易失性存儲器的寫入的情況下,其以為了抑制寫入位置的重復(fù)次數(shù)而使該寫入位置偏移的 方式生成寫入地址;順序發(fā)生部,其生成表示前述寫入的新近性的順序信息;以及寫入控 制部,其對由前述地址發(fā)生部生成的寫入地址,與由前述順序發(fā)生部生成的順序信息對應(yīng) 地,存儲寫入信息。 本發(fā)明的第2方式的處理器,具備地址發(fā)生部,在發(fā)生了對于非易失性存儲器的 寫入的情況下,其以為了抑制寫入位置的重復(fù)次數(shù)而使該寫入位置偏移的方式生成寫入地 址;順序發(fā)生部,其生成表示前述寫入的新近性的順序信息;以及寫入控制部,其對由前述 地址發(fā)生部生成的寫入地址,與由前述順序發(fā)生部生成的順序信息對應(yīng)地,存儲寫入信息。
本發(fā)明的第3方式的存儲器管理方法,包括在從處理器發(fā)生了對于該處理器所 使用的非易失性存儲器的寫入的情況下,以為了抑制寫入位置的重復(fù)次數(shù)而使該寫入位置 偏移的方式生成寫入地址,并且生成表示前述寫入的新近性的順序信息;以及對所生成的 前述寫入地址,與所生成的前述順序信息對應(yīng)地,將寫入信息存儲到前述非易失性存儲器。
圖1是示出本發(fā)明的第1實(shí)施方式的信息處理裝置的詳細(xì)結(jié)構(gòu)的一例的框圖; 圖2是示出第1實(shí)施方式的信息處理裝置的概要結(jié)構(gòu)的一例的框圖; 圖3是示出第1實(shí)施方式的信息處理裝置中的回寫的一例的流程圖; 圖4是示出第1實(shí)施方式的信息處理裝置中的取數(shù)據(jù)的一例的流程圖; 圖5是示出第1實(shí)施方式的信息處理裝置的恢復(fù)處理的一例的流程圖; 圖6是示出本發(fā)明的第2實(shí)施方式的信息處理裝置的結(jié)構(gòu)的一例的框圖; 圖7是示出本發(fā)明的第3實(shí)施方式的信息處理裝置的結(jié)構(gòu)的一例的框圖; 圖8是示出本發(fā)明的第4實(shí)施方式的程序、數(shù)據(jù)、狀態(tài)信息被分離地存儲到多個數(shù)
據(jù)部(存儲區(qū)域)的非易失性主存儲器的一例的框圖; 圖9是示出從處理器經(jīng)由易失性存儲器而被訪問的非易失性主存儲器的一例的 框圖; 圖10是示出本發(fā)明的第5實(shí)施方式的信息處理裝置的結(jié)構(gòu)的一例的框圖;以及 圖11是示出本發(fā)明的第6實(shí)施方式的包含混合主存儲器的信息處理裝置的一例 的框圖。
具體實(shí)施例方式以下,參照
本發(fā)明的各實(shí)施方式。而且,在以下的說明中,關(guān)于基本或?qū)?質(zhì)上相同的功能及構(gòu)成要素,標(biāo)注相同符號,并且僅在需要的情況下進(jìn)行重復(fù)說明。
(第1實(shí)施方式) 在本實(shí)施方式的信息處理裝置中,對處理器使用非易失性的主存儲器(主存儲裝 置)。 而且,即使在處理器將非易失性存儲器用于非主存儲器的用途的情況下,也可以 使用同樣的訪問控制。 在本實(shí)施方式中,信息處理裝置包含例如微處理單元(Microprocessing Unit, MPU)等那樣的處理器或者處理器和存儲器。 圖1是示出本實(shí)施方式的信息處理裝置的詳細(xì)結(jié)構(gòu)的一例的框圖。 此外,圖2是示出本實(shí)施方式的信息處理裝置的概要結(jié)構(gòu)的一例的框圖。 信息處理裝置1具備處理器2和非易失性主存儲器3。處理器2可訪問二級存儲
裝置4、外部訪問裝置5、 1/0裝置6等各種裝置。此外,二級存儲裝置4、外部訪問裝置5、
I/O裝置6等其他裝置,也可以作為信息處理裝置1的一部分而被具備。 作為非易失性主存儲器3,例如使用快閃(Flash)存儲器。作為快閃存儲器,可以
應(yīng)用NAND型、N0R型等快閃存儲器。也可以采用其他的半導(dǎo)體存儲器作為非易失性主存儲器3。
非易失性主存儲器3,存儲核心程序(恢復(fù)用)7,操作系統(tǒng)8,例如程序P1、P2等 各種程序(命令),例如數(shù)據(jù)D1、D2等各種數(shù)據(jù)。 非易失性主存儲器3中的上述各種程序及數(shù)據(jù),例如從二級存儲裝置4、外部訪問 裝置5、 1/0裝置6被存儲到非易失性主存儲器3中,或者從處理器2被存儲到非易失性主 存儲器3中。 處理器2具備至少一個運(yùn)算核(在該圖1的例子中是4個)91 94、高速緩沖存 儲器10、寫緩沖器11、存儲器管理單元(匪U)12,進(jìn)而具備狀態(tài)信息生成部(例如PSW控制 部)13、訪問控制部14。 運(yùn)算核91 94分別訪問高速緩沖存儲器10或非易失性主存儲器3,并且執(zhí)行程 序。運(yùn)算核91 94,可并行地工作。 在高速緩沖存儲器10的輸出級,設(shè)置寫緩沖器ll,高速緩沖存儲器10的內(nèi)容(例 如,包含數(shù)據(jù)和程序中的至少一種的頁)經(jīng)由寫緩沖器11被存儲到非易失性主存儲器3 中。 此外,在本實(shí)施方式中,作為例子,對于高速緩沖存儲器10及非易失性主存儲器3 的寫入、讀出、擦除,以預(yù)定的頁單位、比頁大小要大的塊大小的塊單位或者頁大小的整數(shù)
倍(大于等于2倍)的單位、塊大小的整數(shù)倍(大于等于2倍)的單位來進(jìn)行。
在本實(shí)施方式中,將高速緩沖存儲器10的高速緩存條目大小及非易失性主存儲 器3的存儲器訪問大小,設(shè)定為頁大小。由此,能夠使高速緩沖存儲器IO及非易失性主存 儲器3的存儲器管理、非易失性主存儲器3的訪問控制簡單化,能夠使信息處理裝置1的硬 件量減少,能夠?qū)崿F(xiàn)信息處理裝置1的處理高效化。 存儲器管理單元12,具備地址變換信息15,進(jìn)行邏輯地址與物理地址間的變換, 地址變換信息15對于高速緩沖存儲器10及非易失性主存儲器3,將虛擬地址等邏輯地址與 物理地址相關(guān)聯(lián)起來。 狀態(tài)信息生成部13,以預(yù)定的定時,獲得表示處理器的狀態(tài)及程序的狀態(tài)的狀態(tài) 信息(例如程序狀態(tài)字PSW)。例如,狀態(tài)信息生成部13,每經(jīng)過預(yù)定時間,生成狀態(tài)信息。 此外,例如,在從處理器2每發(fā)生了預(yù)定次數(shù)的對于非易失性主存儲器3的寫入時,狀態(tài)信 息生成部13便生成狀態(tài)信息。 訪問控制部14,控制從處理器2對于非易失性主存儲器3的數(shù)據(jù)/程序等的寫入 及讀出、非易失性主存儲器3中的數(shù)據(jù)/程序等的擦除等處理器2與非易失性主存儲器3 之間的訪問。在本實(shí)施方式中,也可以形成為對于非易失性主存儲器3的寫入及讀出例如 以頁為單位進(jìn)行,擦除例如以塊為單位進(jìn)行,但是也可以根據(jù)其他的大小進(jìn)行寫入、讀出、擦除。 在本實(shí)施方式中,訪問控制部14具備地址發(fā)生部16、順序發(fā)生部17、寫入控制部 18。 在從處理器2發(fā)生對于非易失性主存儲器3的數(shù)據(jù)/程序的寫入時,地址發(fā)生部 16根據(jù)預(yù)定的規(guī)則,以為了抑制寫入位置的重復(fù)次數(shù)(實(shí)現(xiàn)寫入次數(shù)的平均化)而使該寫 入位置偏移的方式(例如順序地),生成寫入地址。 例如,地址發(fā)生部16,可以從預(yù)定的初始值開始順序地使成為寫入目的地的地址 的值增加,并且在達(dá)到預(yù)定的最終值(大于初始值)時,再次從預(yù)定的初始值開始順序地使成為寫入目的地的地址的值增加。 此外,也可以與之相反,地址發(fā)生部16,從預(yù)定的初始值開始順序地使成為寫入目 的地的地址的值減少,并且在達(dá)到預(yù)定的最終值(小于初始值)時,再次從預(yù)定的初始值開 始順序地使成為寫入目的地的地址的值減少。 進(jìn)而,例如,地址發(fā)生部16,也可以重復(fù)以下的工作在第l輪中空開若干空間 (例如以預(yù)定的間隔)地順序生成寫入目的地的地址的值,在第2輪中順序地在第1輪中未 被進(jìn)行寫入的空的空間處生成寫入目的地的地址的值,以下同樣,在第n輪中,順序地在直 到第n-l輪為止都未被進(jìn)行寫入的空的空間處生成寫入目的地的地址的值;并且,在可利 用的空的空間成為小于等于預(yù)定值的情況(例如,沒有可利用的空的空間的情況)下,從上 述的第1輪開始再次重復(fù)同樣的工作。 進(jìn)而,地址發(fā)生部16,參照存儲器管理單元12的地址變換信息15,僅生成在地址
變換信息15中未使用的地址作為寫入地址。 利用該地址發(fā)生部16的工作,執(zhí)行補(bǔ)寫式的寫入。 順序發(fā)生部17,生成用于判斷寫入的新近性的順序信息。通過使用該順序信息,能 夠獲得關(guān)于特定的數(shù)據(jù)的最新的值。在本實(shí)施方式中,在發(fā)生對于非易失性主存儲器3的 寫入時,順序發(fā)生部17執(zhí)行遞增計(jì)數(shù),并使用該計(jì)數(shù)值作為順序信息。通過將該順序信息 與寫入對象的數(shù)據(jù)/程序相關(guān)聯(lián)地存儲在非易失性主存儲器3中,當(dāng)在多個位置上進(jìn)行了 與同一數(shù)據(jù)/程序有關(guān)的寫入的情況下,能夠判斷出順序信息大的數(shù)據(jù)/程序是最新的。
寫入控制部18,控制從處理器2對于非易失性主存儲器3的寫入處理。
寫入控制部18,在通常的寫入時,將寫入對象的條目的V(Valid,有效)標(biāo)志設(shè)置 為1。通過使用該V標(biāo)志,能夠判斷寫入對象的條目是有效還是無效。 寫入控制部18,對于即使非易失性主存儲器3上的V標(biāo)志是1也被判斷為在存儲 器管理單元12中未被使用的塊,在進(jìn)行擦除之后,進(jìn)行再次寫入,并將V標(biāo)志設(shè)置為1。
寫入控制部18,判斷是否預(yù)定數(shù)量或預(yù)定數(shù)量以上的V標(biāo)志為l(例如全部的V標(biāo) 志為l),并且在預(yù)定數(shù)量或預(yù)定數(shù)量以上的V標(biāo)志為1的情況下,使例外處理發(fā)生,從而利 用軟件進(jìn)行非易失性主存儲器3中的不需要部分的清理,擦除該部分并將V標(biāo)志設(shè)置為0。
在本實(shí)施方式中,在對于非易失性主存儲器3的寫入時,寫入控制部18,對于由 地址發(fā)生部16生成的地址,存儲由順序發(fā)生部17生成的順序信息(計(jì)數(shù)器值)19、 V標(biāo)志 20 "l"、寫入對象的數(shù)據(jù)/程序(頁)21、狀態(tài)信息標(biāo)志22 "0"、匪U信息23。
在此,狀態(tài)信息標(biāo)志22,是表示是否為用于狀態(tài)信息的寫入的條目的信息,例如是 PSW標(biāo)志。在該條目是狀態(tài)信息的寫入的情況下,在狀態(tài)信息標(biāo)志22中設(shè)置l,在該條目不 是狀態(tài)信息的寫入的情況下,在狀態(tài)信息標(biāo)志22中設(shè)置0。 進(jìn)而,在由狀態(tài)信息生成部13生成了新的狀態(tài)信息的情況下,寫入控制部18與所 生成的狀態(tài)信息24對應(yīng)地進(jìn)行條目的寫入。在該狀態(tài)信息24的寫入時,寫入控制部18對 于由地址發(fā)生部16生成的地址,存儲由順序發(fā)生部17生成的順序信息19、V標(biāo)志20 "1"、 狀態(tài)信息24、狀態(tài)信息標(biāo)志22 "1"、匪U信息23。 在本實(shí)施方式中,非易失性主存儲器3存儲有核心程序7。在再次接通信息處理裝 置1的電源等使處理器2的狀態(tài)恢復(fù)的情況下,核心程序7由處理器2的運(yùn)算核91 94 的至少一個執(zhí)行。
根據(jù)核心程序7,處理器2順序讀出非易失性主存儲器3的內(nèi)容(已寫入的條目、 順序信息19、 V標(biāo)志20、狀態(tài)信息標(biāo)志22、匪U信息23等),并基于順序信息19,獲得最新 的狀態(tài)的狀態(tài)信息24,用該最新的狀態(tài)信息24來恢復(fù)處理器2。 此外,根據(jù)核心程序7,處理器2基于順序信息19,讀出最新的狀態(tài)的匪U信息23, 并用該最新的匪U信息23恢復(fù)處理器2的存儲器管理單元12。 此外,核心程序7也可以選擇處理器2可恰當(dāng)?shù)卦俅喂ぷ鞯臓顟B(tài)信息24和匪U信 息23,并從該所選擇的狀態(tài)信息24和匪U信息23中,使用最新的狀態(tài)信息24和匪U信息 23來恢復(fù)處理器2。 例如,核心程序7,也可以在以相互關(guān)聯(lián)起來的狀態(tài)存儲的狀態(tài)信息24和匪U信息 23的組合中,選擇表示V標(biāo)志20有效并且表示順序信息19為最新這樣的狀態(tài)信息24和 匪U信息23的組合,并使用該所選擇的最新的狀態(tài)信息24和匪U信息23來恢復(fù)處理器2。
在本實(shí)施方式中,利用在非易失性主存儲器3中存儲的核心程序7執(zhí)行處理器2 的恢復(fù),但是,例如也可以使用與執(zhí)行該核心程序7的運(yùn)算核進(jìn)行同樣的處理的恢復(fù)單元。 在本實(shí)施方式中,通過使用核心程序7,可實(shí)現(xiàn)裝置結(jié)構(gòu)的簡單化。 在上述圖1中,在非易失性主存儲器3內(nèi),包含核心程序7和作為主存儲器使用的 數(shù)據(jù)部25,在數(shù)據(jù)部25中,在每一條目中包含順序信息19、 V標(biāo)志20、數(shù)據(jù)/程序21或狀 態(tài)信息24、狀態(tài)信息標(biāo)志22、匪U信息23。 但是,非易失性主存儲器3的存儲形式并不限于該圖1的狀態(tài),而只要根據(jù)需要將 各種信息相關(guān)聯(lián)起來即可。 如上所述,高速緩沖存儲器10的高速緩存大小、非易失性主存儲器3的寫入大小、 數(shù)據(jù)/程序21及狀態(tài)信息24的寫入大小,設(shè)定為一致或整數(shù)倍的關(guān)系。由此,能夠使硬件 量減少,能夠使非易失性主存儲器3的控制簡單化,能夠使信息處理裝置1的處理高效化。
關(guān)于具有上述那樣的結(jié)構(gòu)的信息處理裝置1的工作,以下進(jìn)行說明。
在上述的圖1、2中,處理器2具有直接連接到例如NAND型快閃存儲器或NOR型快 閃存儲器等非易失性主存儲器3的結(jié)構(gòu)。 信息處理裝置1,在初始的啟動時,如通常的信息處理系統(tǒng)那樣,執(zhí)行操作系統(tǒng)8 的引導(dǎo)處理,在非易失性主存儲器3中展開執(zhí)行映像。信息處理裝置l,在之后的啟動時,因 為操作系統(tǒng)8已經(jīng)存儲在了非易失性主存儲器3中,所以可以使用非易失性主存儲器3的 操作系統(tǒng)8,省略在非易失性主存儲器3中展開執(zhí)行映像的工作,而直接啟動非易失性主存 儲器3的操作系統(tǒng)8。 在上述圖2中,示出了在非易失性主存儲器3上,展開了操作系統(tǒng)8、程序Pl、 P2、 數(shù)據(jù)D1、D2的狀態(tài)。 運(yùn)算核91 94,使用虛擬地址進(jìn)行例如頁(包含程序、數(shù)據(jù)等)的讀出、寫入。在 訪問對象的頁存在于高速緩沖存儲器10上的情況下,從高速緩沖存儲器10到運(yùn)算核91 94,返回訪問對象的頁。 在訪問對象的頁不存在于高速緩沖存儲器10上的情況下,存儲器管理單元12使 用地址變換信息(頁表),將虛擬地址變換為非易失性主存儲器3上的地址。在此,當(dāng)在存 儲器管理單元12的地址變換信息12中沒有與訪問對象的頁有關(guān)的地址的情況下,生成例 外事件,執(zhí)行由軟件實(shí)現(xiàn)的例外處理。利用該例外處理,將訪問對象的頁從二級存儲裝置4、外部訪問裝置5、 I/O裝置6等裝置存儲到高速緩沖存儲器10或非易失性主存儲器3中。
圖3是示出本實(shí)施方式的信息處理裝置1中的回寫的一例的流程圖。
在從非易失性主存儲器3 (或二級存儲裝置4、外部訪問裝置5、 I/O裝置6等裝置 的任意一個)向高速緩沖存儲器10保存新的頁的情況下,有時會需要回寫(將存儲在高速 緩沖存儲器10中的頁寫入至非易失性主存儲器3的處理)。 在執(zhí)行回寫的情況下,在步驟S1,訪問控制部14的寫入控制部18參照存儲器管理 單元12,判斷由地址發(fā)生部16生成的地址是否未使用。 在由地址發(fā)生部16生成的地址處于使用中的情況下,在步驟S2,地址控制部14的 地址發(fā)生部16,生成下一個地址,并且處理返回到上述步驟S1。由此,當(dāng)前使用中的頁不會 被新的頁所覆寫。非易失性主存儲器3中的寫入對象的地址,跳至下一個空的條目的地址。 而且,也可以不是如步驟S1、 S2那樣在開始回寫之后獲得未使用的地址,而是預(yù)先檢測下 一個未使用的地址。 在由地址發(fā)生部16生成的地址未處于使用中的情況下,在步驟S3,寫入控制部18 將回寫對象的頁寫回到非易失性主存儲器3的、由所生成的未使用的地址表示的位置。
此時,同時地,寫入控制部18,更新存儲器管理單元12的地址變換信息15以表示 回寫后的狀態(tài),并且關(guān)于回寫對象的頁,將當(dāng)前的順序信息19、包含存儲器管理單元12的 地址變換信息15的匪U信息23寫入至非易失性主存儲器3中。此外,寫入控制部18將V 標(biāo)志20設(shè)置為l,將狀態(tài)信息標(biāo)志22設(shè)置為O,并寫入至非易失性主存儲器3。
在本實(shí)施方式中,順序信息19、V標(biāo)志20、頁21、狀態(tài)信息標(biāo)志22、匪U信息23,采 用被存儲到非易失性主存儲器3的由所生成的地址表示的位置的形式,進(jìn)行寫入。
在上述步驟S3的寫入處理之后,訪問控制部14的地址發(fā)生部16,在步驟S4,生成 新的地址,順序發(fā)生部17生成新的順序信息。 例如,地址發(fā)生部16,通過利用計(jì)數(shù)器使成為地址的值增加來生成新的地址,并且 在新的地址大于等于預(yù)定值的情況下,生成初始值的地址,并重復(fù)同樣的工作。此外,例如, 順序發(fā)生部17利用計(jì)數(shù)器使表示寫入的發(fā)生順序的值增加。 在此,在發(fā)生了預(yù)定的狀態(tài)信息事件的情況下(定期地或在執(zhí)行預(yù)定次數(shù)的寫入 工作之后),狀態(tài)信息生成部13生成包含處理器2內(nèi)部的背景信息等的狀態(tài)信息24。
訪問控制部14的寫入控制部18,將由狀態(tài)信息生成部13生成的狀態(tài)信息24存儲 到非易失性主存儲器3中。此外,在這樣將狀態(tài)信息24存儲到非易失性主存儲器3中的情 況下,在狀態(tài)信息標(biāo)志22中設(shè)置1并進(jìn)行寫入。 在狀態(tài)信息24中,包含為了對通用寄存器、控制寄存器、程序計(jì)數(shù)器等處理器2的 工作狀態(tài)進(jìn)行恢復(fù)而所需的信息。 在將狀態(tài)信息24寫入到非易失性主存儲器3中的情況下,當(dāng)在高速緩沖存儲器10 中存在廢數(shù)據(jù)行時,首先將該廢數(shù)據(jù)行寫回到非易失性主存儲器3中。所謂廢數(shù)據(jù)行,指數(shù) 據(jù)的內(nèi)容未被反映在主存儲器中,從而在主存儲器與高速緩沖存儲器之間數(shù)據(jù)的內(nèi)容不一 致的高速緩沖存儲器的行。 進(jìn)而,如果在二級存儲裝置4、外部訪問裝置5、1/0裝置6等裝置中存在不可恢復(fù) 的狀態(tài),則狀態(tài)信息生成部13,利用SYNC等操作,將這些裝置設(shè)定為可恢復(fù)的狀態(tài),之后生 成狀態(tài)信息24。并且,寫入控制部18進(jìn)行所生成的狀態(tài)信息24的寫入處理。
圖4是示出本實(shí)施方式的信息處理裝置1中的取數(shù)據(jù)的一例的流程圖。 在步驟T1,存儲器管理單元12判斷訪問對象的數(shù)據(jù)(對于程序而言也是同樣)是
否存儲在高速緩沖存儲器10中(高速緩存命中)。 在獲取對象的數(shù)據(jù)存儲在高速緩沖存儲器19中的情況下,在步驟T2,運(yùn)算核41 44加載高速緩沖存儲器10上的數(shù)據(jù)。 在數(shù)據(jù)未存儲在高速緩沖存儲器10中的情況下,在步驟T3,存儲器管理單元12判 斷在地址變換信息15中是否存在與該獲取對象的數(shù)據(jù)有關(guān)的頁條目。
當(dāng)在存儲器管理單元12的地址變換信息15中存在與獲取對象數(shù)據(jù)的地址有關(guān)的 頁條目的情況下,在步驟T4,存儲器管理單元12參照地址變換信息15的獲取對象的頁條 目,將邏輯地址變換為物理地址。 當(dāng)在存儲器管理單元12的地址變換信息15中不存在與獲取對象數(shù)據(jù)的地址有關(guān) 的頁條目的情況下,在步驟T5,執(zhí)行例外處理。 在執(zhí)行例外處理時,在步驟T6,訪問控制部14利用軟件處理,將獲取對象數(shù)據(jù)從 例如二級存儲裝置4、外部訪問裝置5、I/0裝置6等裝置加載到非易失性主存儲器3中。存 儲器管理單元12,在地址變換信息15中設(shè)置加載后的頁條目,進(jìn)行地址變換信息15的更 新。之后,處理前進(jìn)至步驟T4。 步驟T4之后,在步驟T7,訪問控制部14讀出存儲在非易失性主存儲器3的物理地 址處的數(shù)據(jù),并向高速緩沖存儲器10加載。此外,訪問控制部14,如果需要,則直接將所讀 出的數(shù)據(jù)饋送至運(yùn)算核41 44。 圖5是示出本實(shí)施方式的信息處理裝置1的恢復(fù)處理(重建)的一例的流程圖。 例如,在信息處理裝置1的電源再次接通時,處理器2讀出存儲在非易失性主存儲
器3中的核心程序7,執(zhí)行核心程序7,進(jìn)行恢復(fù)。核心程序7由運(yùn)算核41 44中的至少
一個執(zhí)行,但是在以下,以在運(yùn)算核41中執(zhí)行核心程序7的情況為例進(jìn)行說明。 在步驟U1,執(zhí)行核心程序7的運(yùn)算核41,順序地讀出非易失性主存儲器3的內(nèi)容。 并且,執(zhí)行核心程序7的運(yùn)算核41從V標(biāo)志20為"1 "的條目中,獲得順序信息19
最新的條目,并獲得該最新的條目的地址(最新的地址)。進(jìn)而,執(zhí)行核心程序7的運(yùn)算核
41,從狀態(tài)信息標(biāo)志22為"l"的條目中,獲得順序信息19最新的條目的狀態(tài)信息24(最新
的狀態(tài)信息)、順序信息19最新的條目的匪U信息23 (最新的匪U信息)。 在步驟U2,執(zhí)行核心程序7的運(yùn)算核41,使地址發(fā)生部16生成相對于V標(biāo)志20
為"1"且順序信息19最新的條目的地址的下一個地址。 執(zhí)行核心程序7的運(yùn)算核41 ,使順序發(fā)生部17生成相對于V標(biāo)志20為"1"且順 序信息19最新的條目的順序信息的下一個順序信息。 執(zhí)行核心程序7的運(yùn)算核41 ,基于V標(biāo)志20為"1"且順序信息19最新的條目的 匪U信息23,恢復(fù)存儲器管理單元12。 執(zhí)行核心程序7的運(yùn)算核41,加載狀態(tài)信息標(biāo)志22為"l"且順序信息19最新的 狀態(tài)信息24,并基于該加載的狀態(tài)信息24,恢復(fù)處理器2的狀態(tài)。 在步驟U3,運(yùn)算核41從核心程序7的執(zhí)行中退出,并從所加載的狀態(tài)信息24所表 示的狀態(tài)再次開始工作。 關(guān)于以上說明的本實(shí)施方式的信息處理裝置1的效果進(jìn)行說明。
在以往的信息處理裝置中,由于對主存儲器使用易失性存儲器,所以在再次啟動 時,需要加載操作系統(tǒng)、程序、數(shù)據(jù)。 相對于此,在本實(shí)施方式的信息處理裝置1中,由于對于主存儲器使用非易失性 存儲器,所以即使在再次啟動的情況下,也由于所需要的程序及數(shù)據(jù)存儲在非易失性主存 儲器3中,所以能夠減少或不需要系統(tǒng)引導(dǎo)、程序及數(shù)據(jù)的加載,從而能夠使信息處理裝置 1的處理高速化。也就是說,在本實(shí)施方式的信息處理裝置1中,通過對于處理器2的主存 儲器使用非易失性存儲器,并將處理過程寫入至非易失性主存儲器3,即使沒有后備電源也 可保持信息處理裝置1的狀態(tài)。此外,在信息處理裝置1中,程序的啟動被高速化。
在本實(shí)施方式的信息處理裝置1中,由于在發(fā)生狀態(tài)信息24的生成事件時,將狀 態(tài)信息24存儲到非易失性主存儲器3中,所以即使在電源被突然切斷的情況下,也能夠讀 出最新的狀態(tài)信息24從而將處理器2的狀態(tài)恢復(fù)至電源切斷前的狀態(tài),能夠使信息處理裝 置1的工作再次執(zhí)行。 在本實(shí)施方式中,例如在采用NAND型快閃存儲器或NOR型快閃存儲器等作為非易 失性主存儲器3的情況下,無需執(zhí)行以往所執(zhí)行的損耗均衡,便能夠用作為主存儲器。
(第2實(shí)施方式) 在本實(shí)施方式中,作為上述第1實(shí)施方式的信息處理裝置1的變形例,對高速緩沖
存儲器具有分層化的結(jié)構(gòu)的信息處理裝置進(jìn)行說明。 圖6是示出本實(shí)施方式的信息處理裝置的結(jié)構(gòu)的一例的框圖。信息處理裝置26,具備至少一個處理器(在該圖6的例子中是4個)271 274、
控制裝置28、非易失性主存儲器3。信息處理裝置26可訪問二級存儲裝置4、外部訪問裝置
5、 I/O裝置6等其他裝置。 各個處理器271 274,分別具備一級高速緩沖存儲器291 294。當(dāng)在一級高速 緩沖存儲器291 294中發(fā)生高速緩存未命中時,處理器271 274向控制裝置28發(fā)送訪 問對象的地址。 控制裝置28具備二級高速緩沖存儲器10、寫緩沖器11、訪問控制部14、狀態(tài)信息 生成部13、存儲器管理單元12。由該控制裝置28執(zhí)行的例如回寫、取數(shù)據(jù)、恢復(fù)等各種處 理,與上述第1實(shí)施方式的情況相同。此外,在本實(shí)施方式中,以由一級高速緩沖存儲器291 294與二級高速緩沖存儲 器10構(gòu)成的2層的情況為例進(jìn)行了說明,但是即使高速緩沖存儲器的分層是3層或3層以 上,也同樣可應(yīng)用控制裝置28。
(第3實(shí)施方式) 在本實(shí)施方式中,對于在上述第1及第2實(shí)施方式的信息處理裝置中,具備寫入次 數(shù)檢查部及異常檢測部的情況進(jìn)行說明。而且,在本實(shí)施方式中,對于在上述第1實(shí)施方式 的信息處理裝置1中具備寫入次數(shù)檢查部及異常檢測部的情況進(jìn)行說明,但是對于在第2 實(shí)施方式的信息處理裝置26等其他方式的信息處理裝置也同樣可應(yīng)用。
圖7是示出本實(shí)施方式的信息處理裝置的結(jié)構(gòu)的一例的框圖。
本實(shí)施方式的信息處理裝置30的處理器31的存儲器管理單元32,除了地址變換 信息15之外,還對于非易失性主存儲器3的每一區(qū)域(例如每一地址或塊)具備表示寫入 次數(shù)的寫入次數(shù)信息33和出錯(Bad)信息34。
對于非易失性主存儲器3的各個區(qū)域而言,在寫入次數(shù)信息33所表示的寫入次數(shù) 超過上限的情況下,出錯信息34成為表示異常的值。此外,出錯信息34還存儲在非易失性 主存儲器3的數(shù)據(jù)部35中。 在本實(shí)施方式中,存儲器管理單元32,在非易失性主存儲器3被進(jìn)行寫入的定時,
更新寫入次數(shù)信息33(使與寫入對象的區(qū)域或條目有關(guān)的寫入次數(shù)加1)。 訪問控制部36的寫入控制部37,將寫入次數(shù)信息33存儲在非易失性主存儲器3
的相應(yīng)區(qū)域。 在訪問控制部36中,具備寫入次數(shù)檢查部38。在對于非易失性主存儲器3的寫入 時,寫入次數(shù)檢查部38檢查寫入目的區(qū)域的寫入次數(shù),并且在該寫入次數(shù)超過表示上限的 預(yù)定值的情況下,使例外處理發(fā)生。在例外處理中,啟動軟件,利用該軟件執(zhí)行所需要的處理。 例如,在由該軟件所實(shí)現(xiàn)的例外處理中,對于存儲器管理單元32和非易失性主存 儲器3,在寫入次數(shù)超過了上限的區(qū)域的條目中設(shè)置出錯信息,以便不進(jìn)行對于寫入次數(shù)超 過了上限的條目的寫入。存儲器管理單元32,禁止對于出錯信息34表示異常的條目的寫 入。 進(jìn)而,在本實(shí)施方式的信息處理裝置30中,處理器31具備異常檢測部39。作為異 常檢測部39,例如使用ECC電路等。異常檢測部39,進(jìn)行位錯誤糾正、不可糾正錯誤檢測、 例外發(fā)生。 在上述的寫入次數(shù)檢查部38中,雖然在寫入次數(shù)超過了上限的情況下設(shè)定為不 可使用,但是有時即使在寫入次數(shù)超過上限之前也會產(chǎn)生位錯誤。 為了應(yīng)對這樣的錯誤,異常檢測部39進(jìn)行對于非易失性主存儲器3的位錯誤檢 測。進(jìn)而,在可糾正所產(chǎn)生的位錯誤的情況下,異常檢測部39進(jìn)行糾正。并且,在產(chǎn)生了不 可糾正的位錯誤的情況下,異常檢測部39使例外處理發(fā)生,利用軟件進(jìn)行所需要的處理。 例如,利用該軟件所實(shí)現(xiàn)的例外處理,對于存儲器管理單元32和非易失性主存儲器3,在產(chǎn) 生了不可糾正的錯誤的區(qū)域的條目中設(shè)置出錯信息,以便對于產(chǎn)生了不可糾正的錯誤的區(qū) 域的條目不進(jìn)行寫入。存儲器管理單元32,禁止對于出錯信息34表示異常的條目的寫入。
在以上說明的本實(shí)施方式中,在對于非易失性主存儲器3的寫入發(fā)生了異常的情 況下,能夠利用軟件進(jìn)行禁止使用發(fā)生了異常的區(qū)域、對于用戶指示更換等適當(dāng)?shù)奶幚怼?
在上述各實(shí)施方式中,也可以進(jìn)行來自高速緩沖存儲器的回寫的速率控制。
(第4實(shí)施方式) 在上述各實(shí)施方式中,非易失性主存儲器3的存儲區(qū)域也可以根據(jù)例如程序、數(shù) 據(jù)、狀態(tài)信息等所寫入的數(shù)據(jù)的種類進(jìn)行劃分。 圖8是示出程序、數(shù)據(jù)、狀態(tài)信息被分隔地存儲到多個數(shù)據(jù)部(存儲區(qū)域)的非易 失性主存儲器3的一例的框圖。 訪問控制部14、36的地址發(fā)生部16,判斷所寫入的內(nèi)容是程序21a、數(shù)據(jù)21b還是 狀態(tài)信息24。并且,在所寫入的內(nèi)容是程序21a的情況下,地址發(fā)生部16以使寫入對象的 程序21a存儲到數(shù)據(jù)部(存儲區(qū)域)25A的方式生成地址。在所寫入的內(nèi)容是數(shù)據(jù)21b的 情況下,訪問控制部14、36以使寫入對象的數(shù)據(jù)21b存儲到數(shù)據(jù)部(區(qū)域)25B的方式生成 地址。在所寫入的內(nèi)容是狀態(tài)信息24的情況下,訪問控制部14、36以使寫入對象的狀態(tài)信
13息24存儲到數(shù)據(jù)部(區(qū)域)25C方式生成地址。對于各個所寫入的內(nèi)容,將順序信息19、V 標(biāo)志20、匪U信息23相關(guān)聯(lián)起來。 此外,關(guān)于匪U信息23,也可以存儲到其他的存儲區(qū)域。 在上述各實(shí)施方式中,處理器2、271 274、31也可以經(jīng)由高速緩沖存儲器訪問非 易失性主存儲器3。 圖9是示出從處理器2、271 274、31經(jīng)由易失性存儲器被訪問的非易失性主存 儲器3的一例的框圖。 通過在處理器2、271 274、31與非易失性主存儲器3之間具備易失性存儲器50,
能夠使處理高速化。(第5實(shí)施方式) 在本實(shí)施方式中,對于上述第1至第4實(shí)施方式的變形例進(jìn)行說明。而且,以下雖 然對于上述第1實(shí)施方式的變形例進(jìn)行說明,但是對于上述第2至第4實(shí)施方式的變形例 而言也是同樣的。 圖10是示出本實(shí)施方式的信息處理裝置的結(jié)構(gòu)的一例的框圖。
訪問控制部14進(jìn)而具備性能下降檢測部51。
核心程序7,具備性能下降抑制程序52。 若在非易失性主存儲器3中可寫入的區(qū)域(可寫入的條目數(shù))變少,則關(guān)于對非 易失性主存儲器3的訪問而言,有時性能會下降。而且,若可寫入的區(qū)域不存在,則不能夠 繼續(xù)處理。 性能下降檢測部51,關(guān)于信息處理裝置1中的從處理器2對于非易失性主存儲器 3的訪問,檢測是否發(fā)生了性能下降。例如,在搜索寫入?yún)^(qū)域的時間超過了設(shè)定值的情況、在 可寫入的條目數(shù)成為小于等于設(shè)定值的情況或在發(fā)生了這二者的組合的情況下,性能下降 檢測部51檢測出性能下降的發(fā)生。 性能下降檢測部51,在關(guān)于從處理器2對于非易失性主存儲器3的訪問檢測出了 性能下降的發(fā)生的情況下,向處理器2發(fā)出例外命令。 在發(fā)出了例外命令的情況下,處理器2執(zhí)行核心程序7內(nèi)的性能下降抑制程序52。
根據(jù)該性能下降抑制程序52,處理器2執(zhí)行無用存儲單元收集等那樣的抑制性能 下降的處理。 性能下降抑制程序52,例如在當(dāng)前的非易失性主存儲器3內(nèi)進(jìn)行搜索,并執(zhí)行下 述這樣的各種處理或各種處理的組合將多個條目中可歸整為一個的條目歸整為一個的 處理,當(dāng)在非易失性主存儲器3內(nèi)混合存在有效的數(shù)據(jù)和已擦除的數(shù)據(jù)的情況下僅收集有 效的數(shù)據(jù)并進(jìn)行重新配置的處理,使訪問頻率低的數(shù)據(jù)、重要度低的數(shù)據(jù)、使用頻率低的數(shù) 據(jù)、優(yōu)先級低的數(shù)據(jù)移動到其他的存儲器從而增加空區(qū)域的處理等。 在以上說明的本實(shí)施方式中,能夠防止信息處理裝置1的性能因可寫入?yún)^(qū)域變少 等原因而下降的情況。 通過使性能下降抑制程序52的處理與通常的處理并行地執(zhí)行,能夠?qū)⑵鋵τ谕?常的處理的影響抑制到最小限度。 此外,通過具備進(jìn)行性能下降抑制程序52的處理的專用的處理器,能夠利用例外 處理抑制處理器2的能力下降的情況。
上述各實(shí)施方式的控制,也可應(yīng)用于以非主存儲器的其他目的來使用非易失性存 儲器的情況。(第6實(shí)施方式) 在上述各實(shí)施方式中,作為主存儲器,使用了非易失性主存儲器3。 但是,也可以代替上述各實(shí)施方式中的非易失性主存儲器3,而使用性質(zhì)相互不同
的不同種類的半導(dǎo)體存儲器混合而成的混合主存儲器。 以下,對于在上述第1實(shí)施方式中應(yīng)用了混合主存儲器的情況進(jìn)行說明,但是對
于在上述第2至第5實(shí)施方式中應(yīng)用混合主存儲器而言也是同樣的。 圖11是示出本實(shí)施方式的包含混合主存儲器的信息處理裝置的一例的框圖。 信息處理裝置53具備處理器54和混合主存儲器56。 處理器54具備控制對于混合主存儲器56的訪問的訪問控制部55 。 混合主存儲器56,通過組合多種半導(dǎo)體存儲器而構(gòu)成。在本實(shí)施方式中,混合主存
儲器56例如具備易失性半導(dǎo)體存儲器56a、非易失性半導(dǎo)體存儲器56b、56c。 易失性半導(dǎo)體存儲器56a例如是DRAM。非易失性半導(dǎo)體存儲器56b例如是
SLC(Single Level Cell,單層單元)的NAND型快閃存儲器。非易失性半導(dǎo)體存儲器56c例
如是MLC(Multi Level Cell,多層單元)類型的NAND型快閃存儲器。MLC與SLC相比較,
讀出及寫入低速,可靠性低。但是,MLC與SLC相比較,元件的集成度高,面向大容量化。 在本實(shí)施方式中,形成為易失性半導(dǎo)體存儲器56a,與非易失性半導(dǎo)體存儲器56b
相比,可靠性或耐久性高,可訪問的次數(shù)多。此外,形成為非易失性半導(dǎo)體存儲器56b,與非
易失性半導(dǎo)體存儲器56c相比,可靠性或耐久性高,可訪問的次數(shù)多。 訪問控制部55的地址發(fā)生部16,以易失性半導(dǎo)體存儲器56a的訪問次數(shù)或訪問頻 率比非易失性半導(dǎo)體存儲器56b的訪問次數(shù)或訪問頻率高(多)、非易失性半導(dǎo)體存儲器 56b的訪問次數(shù)或訪問頻率比非易失性半導(dǎo)體存儲器56c的訪問次數(shù)或訪問頻率高(多) 的方式,選擇混合主存儲器56中的寫入目的地的存儲器。 存儲目的地的存儲器,由地址發(fā)生部16基于寫入對象數(shù)據(jù)的訪問次數(shù)、訪問頻
率、重要度、種類、優(yōu)先級等信息來選擇。 此外,訪問頻率設(shè)定為每單位時間的訪問次數(shù)。
0164] 例如,地址發(fā)生部16基于上述第3實(shí)施方式的寫入次數(shù)信息33和存儲器選擇閾 值,選擇寫入目的地的存儲器。 地址發(fā)生部16,對混合主存儲器1中的多個存儲器中所選擇的存儲器,生成用于 進(jìn)行在上述第1至第4實(shí)施方式中說明的補(bǔ)寫式的寫入的地址。 在本實(shí)施方式中,在將非易失性存儲器用作為主存儲器的情況下,能夠延長主存 儲器的壽命。 此外,作為非易失性半導(dǎo)體存儲器56b、56c,也能夠代替NAND型快閃存儲器,而使 用例如NOR型快閃存儲器等那樣的其他種類的快閃存儲器、PRAM(Phase change memory,相 變存儲器)、Re廳(ResistiveRandom access memory,阻變隨機(jī)存儲器)。
權(quán)利要求
一種信息處理裝置,具備地址發(fā)生部,在從處理器發(fā)生了對于非易失性存儲器的寫入的情況下,其以為了抑制寫入位置的重復(fù)次數(shù)而使該寫入位置偏移的方式生成寫入地址;順序發(fā)生部,其生成表示前述寫入的新近性的順序信息;以及寫入控制部,其對由前述地址發(fā)生部生成的寫入地址,與由前述順序發(fā)生部生成的順序信息對應(yīng)地,存儲寫入信息。
2. 根據(jù)權(quán)利要求1所述的信息處理裝置,其中 前述非易失性存儲器,由前述處理器用作為主存儲器。
3. 根據(jù)權(quán)利要求1所述的信息處理裝置,進(jìn)一步具備 存儲器管理單元,其具備地址變換信息;其中,在從前述處理器發(fā)生對于前述非易失性存儲器的寫入時,前述地址發(fā)生部順序 地生成在前述地址變換信息中未使用的寫入地址,并且在前述寫入地址達(dá)到預(yù)定值時,再 次從初始值開始順序地生成在前述地址變換信息中未使用的寫入地址。
4. 根據(jù)權(quán)利要求1所述的信息處理裝置,進(jìn)一步具備 狀態(tài)信息生成部,其生成前述處理器中的狀態(tài)信息;其中,前述寫入控制部,與由前述順序發(fā)生部生成的順序信息對應(yīng)地,對由前述地址發(fā) 生部生成的寫入地址存儲由前述狀態(tài)信息生成部生成的狀態(tài)信息; 該信息處理裝置進(jìn)一步具備恢復(fù)部,其在前述處理器的恢復(fù)時,基于前述順序信息從前述非易失性存儲器讀出最 新的狀態(tài)信息,并使用該最新的狀態(tài)信息進(jìn)行前述處理器的恢復(fù)。
5. 根據(jù)權(quán)利要求4所述的信息處理裝置,其中前述恢復(fù)部,通過由前述處理器執(zhí)行存儲在前述非易失性存儲器中的程序而實(shí)現(xiàn)。
6. 根據(jù)權(quán)利要求1所述的信息處理裝置,其中前述寫入控制部,與由前述順序發(fā)生部生成的順序信息對應(yīng)地,對由前述地址發(fā)生部 生成的寫入地址存儲存儲器管理單元中所具備的地址變換信息; 該信息處理裝置進(jìn)一步具備恢復(fù)部,其在前述處理器的恢復(fù)時,基于前述順序信息從前述非易失性存儲器使用最 新的地址變換信息進(jìn)行前述處理器的恢復(fù)。
7. 根據(jù)權(quán)利要求1所述的信息處理裝置,進(jìn)一步具備 狀態(tài)信息生成部,其生成前述處理器中的狀態(tài)信息;以及 異常檢測部,其進(jìn)行前述非易失性存儲器的異常檢測; 其中,前述寫入控制部與由前述順序發(fā)生部生成的順序信息對應(yīng)地,對由前述地址發(fā)生部生成的寫入地址存 儲由前述狀態(tài)信息生成部生成的狀態(tài)信息,并且與由前述順序發(fā)生部生成的順序信息對應(yīng) 地,對由前述地址發(fā)生部生成的寫入地址存儲存儲器管理單元中所具備的地址變換信息;在由前述異常檢測部檢測到異常的情況下,基于前述順序信息從前述非易失性存儲器 中讀出最新的狀態(tài)信息及最新的地址變換信息,并使用該最新的狀態(tài)信息及最新的地址變 換信息進(jìn)行前述處理器及前述存儲器管理單元的恢復(fù)。
8. 根據(jù)權(quán)利要求1所述的信息處理裝置,其中前述寫入控制部存儲關(guān)于前述非易失性存儲器的區(qū)域或條目的寫入次數(shù)信息; 該信息處理裝置進(jìn)一步具備寫入次數(shù)檢查部,其禁止對于前述寫入次數(shù)信息所表示的寫入次數(shù)超過了閾值的區(qū)域 或條目的寫入。
9. 根據(jù)權(quán)利要求1所述的信息處理裝置,進(jìn)一步具備異常檢測部,其進(jìn)行對前述非易失性存儲器的錯誤的檢測,在錯誤可糾正的情況下糾 正前述錯誤,在錯誤不可糾正的情況下禁止對于發(fā)生了前述錯誤的區(qū)域或條目的寫入。
10. 根據(jù)權(quán)利要求1所述的信息處理裝置,其中 前述非易失性存儲器被劃分為多個區(qū)域;前述地址發(fā)生部判斷所寫入的數(shù)據(jù)的種類,并在前述多個區(qū)域中選擇與前述種類相應(yīng) 的區(qū)域,在所選擇的區(qū)域內(nèi)順序地生成未使用的寫入地址。
11. 根據(jù)權(quán)利要求1所述的信息處理裝置,其中在前述處理器與前述非易失性存儲器之間進(jìn)一步具備易失性存儲器。
12. 根據(jù)權(quán)利要求1所述的信息處理裝置,具備檢測部,其檢測從前述處理器對于前述非易失性存儲器的訪問的性能下降;以及 性能下降抑制部,在由前述檢測部檢測出性能下降的情況下,其執(zhí)行無用存儲單元收 集處理。
13. 根據(jù)權(quán)利要求1所述的信息處理裝置,進(jìn)一步具備 混合存儲器,其具備前述非易失性存儲器和其他的半導(dǎo)體存儲器;其中,前述地址發(fā)生部,以下述方式選擇存儲目的地的存儲器在前述非易失性存儲器 和前述其他的半導(dǎo)體存儲器中,對于可靠性或耐久性高的第1存儲器的訪問次數(shù)或訪問頻 率,比對于可靠性或耐久性低的第2存儲器的訪問次數(shù)或訪問頻率高。
14. 一種處理器,具備地址發(fā)生部,在發(fā)生了對于非易失性存儲器的寫入的情況下,其以為了抑制寫入位置 的重復(fù)次數(shù)而使該寫入位置偏移的方式生成寫入地址;順序發(fā)生部,其生成表示前述寫入的新近性的順序信息;以及寫入控制部,其對由前述地址發(fā)生部生成的寫入地址,與由前述順序發(fā)生部生成的順 序信息對應(yīng)地,存儲寫入信息。
15. 根據(jù)權(quán)利要求14所述的處理器,其中 前述非易失性存儲器,用作為主存儲器。
16. 根據(jù)權(quán)利要求14所述的處理器,進(jìn)一步具備 存儲器管理單元,其具備地址變換信息;其中,在發(fā)生對于前述非易失性存儲器的寫入時,前述地址發(fā)生部順序地生成在前述 地址變換信息中未使用的寫入地址,并且在前述寫入地址達(dá)到預(yù)定值時,再次從初始值開 始順序地生成在前述地址變換信息中未使用的寫入地址。
17. 根據(jù)權(quán)利要求14所述的處理器,進(jìn)一步具備 狀態(tài)信息生成部,其生成前述處理器的狀態(tài)信息;以及 異常檢測部,其進(jìn)行前述非易失性存儲器的異常檢測; 其中,前述寫入控制部與由前述順序發(fā)生部生成的順序信息對應(yīng)地,對由前述地址發(fā)生部生成的寫入地址存 儲由前述狀態(tài)信息生成部生成的狀態(tài)信息,并且與由前述順序發(fā)生部生成的順序信息對應(yīng) 地,對由前述地址發(fā)生部生成的寫入地址存儲存儲器管理單元中所具備的地址變換信息;在由前述異常檢測部檢測到異常的情況下,基于前述順序信息從前述非易失性存儲器 讀出最新的狀態(tài)信息及最新的地址變換信息,并使用該最新的狀態(tài)信息及最新的地址變換 信息進(jìn)行前述處理器及前述存儲器管理單元的恢復(fù)。
18. 根據(jù)權(quán)利要求14所述的處理器,其中前述寫入控制部存儲關(guān)于前述非易失性存儲器的區(qū)域或條目的寫入次數(shù)信息; 該處理器進(jìn)一步具備寫入次數(shù)檢查部,其禁止對于前述寫入次數(shù)信息所表示的寫入次數(shù)超過了閾值的區(qū)域 或條目的寫入。
19. 一種存儲器管理方法,包括在從處理器發(fā)生了對于該處理器所使用的非易失性存儲器的寫入的情況下,以為了抑 制寫入位置的重復(fù)次數(shù)而使該寫入位置偏移的方式生成寫入地址,并且生成表示前述寫入 的新近性的順序信息;以及對所生成的前述寫入地址,與所生成的前述順序信息對應(yīng)地,將寫入信息存儲到前述 非易失性存儲器。
20. 根據(jù)權(quán)利要求19所述的存儲器管理方法,其中 前述非易失性存儲器,由前述處理器用作為主存儲器。
全文摘要
本發(fā)明的一種方式的信息處理裝置具備地址發(fā)生部,在從處理器發(fā)生了對于非易失性存儲器的寫入的情況下,其以為了抑制寫入位置的重復(fù)次數(shù)而使該寫入位置偏移的方式生成寫入地址;順序發(fā)生部,其生成表示前述寫入的新近性的順序信息;以及寫入控制部,其對由前述地址發(fā)生部生成的寫入地址,與由前述順序發(fā)生部生成的順序信息對應(yīng)地,存儲寫入信息。
文檔編號G06F12/08GK101782871SQ20101000354
公開日2010年7月21日 申請日期2010年1月15日 優(yōu)先權(quán)日2009年1月16日
發(fā)明者國松敦, 大溝孝 申請人:株式會社東芝