專利名稱:電子裝置、用于管理電子裝置中的存儲器的設(shè)備和方法
技術(shù)領(lǐng)域:
本申請大體上涉及一種計算機(jī)系統(tǒng),更具體地講,涉及一種用于計算機(jī)系統(tǒng)的閃
速存儲器管理。
背景技術(shù):
閃速存儲器是可以電擦除并再編程的非易失性計算機(jī)存儲器。閃速存儲器主要 用在用于在計算機(jī)和其他數(shù)字產(chǎn)品之間數(shù)據(jù)的一般存儲和傳輸?shù)拇鎯ê蚒SB閃存驅(qū)動 器中。閃速存儲器是一種以大塊來擦除和編程的特殊類型的電可擦除可編程只讀存儲器 (EEPROM)。在早期的閃速存儲裝置中,需要一次擦除整個芯片。閃速存儲器的成本遠(yuǎn)小于 可按字節(jié)(byte)編程的EEPROM的成本。因此,閃速存儲器已經(jīng)變成在需要大量的非易失 性固態(tài)存儲情況下的主要技術(shù)。示例性應(yīng)用包括PDA(個人數(shù)字助理)、膝上型計算機(jī)、數(shù)字 音頻播放器、數(shù)字相機(jī)、移動電話。閃速存儲器還在游戲控制臺市場中受到歡迎,其中,通常 用閃速存儲器代替EEPROM或電池供電的靜態(tài)隨機(jī)存取存儲器(SRAM)用于游戲存檔數(shù)據(jù)。閃速存儲器是非易失性的,這意味著不需要功率來保持存儲在芯片中的信息。另 外,雖然不如用于PC中的主存儲器的易失性動態(tài)隨機(jī)存取存儲器(DRAM)快速,但是閃速存 儲器提供了快速的讀取存取時間,此外,閃速存儲器提供了比硬盤更好的動力學(xué)抗沖擊性。 閃速存儲器的另一特征為當(dāng)被封裝在“存儲卡”中時,閃速存儲器非常耐久,能夠承受很大 的壓力、極端的溫度甚至浸入在水中。雖然在技術(shù)方面為一種EEPR0M,但是術(shù)語“EEPR0M”通常用于特指可以以小的塊 (通常為字節(jié))進(jìn)行擦除的非閃速EEPR0M。因為擦除循環(huán)很慢,所以當(dāng)寫入大量數(shù)據(jù)時,在 閃速存儲器擦除中使用的很大的塊大小使其與舊式EEPROM相比具有顯著的速度優(yōu)勢。NAND閃存架構(gòu)是在諸如緊湊型閃存卡的存儲卡中使用的兩種閃存技術(shù)之一(另 一種是NOR)。NAND門閃存使用用于寫入的隧道注入和用于擦除的隧道釋放。NAND閃速存 儲器形成現(xiàn)今可用的已知作為USB閃存驅(qū)動器的可移動式USB存儲裝置和大多數(shù)存儲卡形 式的核心。它還可以用在MP3播放器中,并為數(shù)字相機(jī)提供圖像存儲。NAND最佳地適合于 需要高容量數(shù)據(jù)存儲的閃存裝置。NAND閃存裝置提供達(dá)512MB的存儲空間,并提供與NOR 架構(gòu)相比更快的擦除、寫入和讀取能力。閃速存儲器的一個限制在于,雖然閃速存儲器可以以隨機(jī)存取的方式一次讀取或 編入一個字節(jié)或一個字(word),但是閃速存儲器必須一次擦除一個“塊”。這樣通常將塊中 的所有的位(bit)設(shè)置為一(1)。最初在新近擦除的塊的情況下,該塊內(nèi)的任何位置均可 以被編程。然而,一旦有一位被設(shè)置為零(0),則僅通過擦除整個塊才可以將其改回一(1)。 換句話說,閃速存儲器提供隨機(jī)存取式讀取操作和編程操作,但是不能提供任意性的隨機(jī) 存取式重寫操作或擦除操作。通常,一次擦除并重寫整個塊。傳統(tǒng)的用于NAND閃存裝置的存儲器管理系統(tǒng)用于諸如文件系統(tǒng)或代碼的需求加 載的功能。這使得難以在有效使用閃速存儲器(下文中,稱為閃存或NAND閃存)和隨機(jī)存 取存儲器(RAM)的情況下實現(xiàn)讀寫(RW)和零初始化(ZI)數(shù)據(jù)的需求加載的存儲器管理。傳統(tǒng)的嵌入式系統(tǒng)不考慮存儲器管理處理中的交換(swapping)。在諸如但不限于Linux 的高級系統(tǒng)中,使用RAM和閃存頁之間的靜態(tài)映射。當(dāng)使用靜態(tài)映射時,閃存大小必須與來 自交換區(qū)域的數(shù)據(jù)的大小相同。將閃存大小保持為等于來自交換區(qū)域的數(shù)據(jù)使得NAND閃 存塊的壽命降低。
發(fā)明內(nèi)容
提供了一種用于管理電子裝置中的存儲器的設(shè)備。所述設(shè)備包括存儲器管理單 元。存儲器管理單元被配置為分配隨機(jī)存取存儲器的一部分和閃速存儲器的一部分。存儲 器管理單元執(zhí)行在所述隨機(jī)存取存儲器和所述閃速存儲器的一個或一個以上的塊之間的 頁的內(nèi)容的交換操作。提供了一種電子裝置。所述電子裝置包括處理器、隨機(jī)存取存儲器、閃速存儲器、 存儲器管理單元。存儲器管理單元被配置為分配所述隨機(jī)存取存儲器的一部分和所述閃速 存儲器的一部分。存儲器管理單元執(zhí)行所述隨機(jī)存取存儲器和所述閃速存儲器的一個或一 個以上的塊之間的頁的內(nèi)容的交換操作。提供了一種存儲器管理方法。所述方法包括將隨機(jī)存取存儲器的一部分分配為 第一交換區(qū)域。所述方法還包括將閃速存儲器的一部分分配為第二交換區(qū)域。此外,所述 方法包括將頁的內(nèi)容從第一交換區(qū)域交換到第二交換區(qū)域;從第二交換區(qū)域加載新的頁 的內(nèi)容。在進(jìn)行下文中的“具體實施方式
”部分之前,可以首先闡述在貫穿本專利文件使用 的特定的詞語的定義術(shù)語“包括”和“包含”及其類似的術(shù)語意指沒有限制情況下的包括;
術(shù)語“或”為包括性的,意指和/或;語句“與......相關(guān)”和“與其相關(guān)”及其類似的語句
可以意指包括有.......被包括在......內(nèi)、與......互連、包含、被包含在......內(nèi)、
連接到......或與......連接、結(jié)合到......或與......連接、可與......通信、
與......配合、交錯、并列、靠近于.......接合到......或與......結(jié)合有、具有、具
有......性質(zhì)等;術(shù)語“控制器”意指控制至少一個操作的裝置、系統(tǒng)及其部件,這樣的裝
置可以以硬件、固件或軟件或它們中的至少兩種的一些組合來實現(xiàn)。應(yīng)該注意,與任何特定 的控制器相關(guān)的功能可以本地或遠(yuǎn)程集中化或分布化。貫穿本專利文件提供了特定詞語的 定義,本領(lǐng)域技術(shù)人員應(yīng)該理解,在一些而非全部的示例中,這樣的定義應(yīng)用于被這樣定義 的詞語在之前及其后的使用。
為了更完整地理解本公開及其優(yōu)點,現(xiàn)在將參照下面的結(jié)合附圖的描述,其中,相 同的標(biāo)號表示相同的部件圖1示出根據(jù)本公開實施例的低端(low-end)裝置中的存儲器的簡化示圖;圖2示出根據(jù)本公開實施例的存儲器交換操作;圖3示出根據(jù)本公開實施例的存儲器管理交換處理;圖4示出根據(jù)本公開實施例的頁錯誤(fault)處理。
具體實施例方式在本專利文件中,圖1至圖4以及用于描述本公開的原理的各種實施例僅為舉例 說明的方式在下面進(jìn)行說明,且不應(yīng)該被解釋為以任何方式限制本公開的范圍。本領(lǐng)域技 術(shù)人員應(yīng)該理解,可以以任何適當(dāng)布置的存儲器管理系統(tǒng)來實現(xiàn)本公開的原理。本公開的實施例示出了在低端裝置中使用的用于NAND閃存裝置的存儲器管理系 統(tǒng),低端裝置諸如但不限于具有有限的存儲器的基于ARM7和ARM9的裝置。諸如但不限于 基于ARM7的蜂窩電話之類的基于ARM7和ARM9的裝置可以包括三十二兆字節(jié)(32MB)的閃 存、2MB的RAM、IOOMHz的中央處理單元(CPU)。存儲器管理系統(tǒng)被配置為使用NAND閃存裝置 來存儲可改變的數(shù)據(jù)。存儲器管理系統(tǒng)被配置為利用大小更小的閃存來執(zhí)行與大型(例如, 高端(high-end))裝置相同的功能。存儲器管理系統(tǒng)被配置為使用閃存來補(bǔ)充RAM的大小。圖1示出根據(jù)本公開實施例的低端裝置中的存儲器的簡化示圖。圖1中示出的低 端裝置中的存儲器的實施例僅用于舉例說明。在不脫離本公開的范圍的情況下,可以使用 低端裝置中的存儲器的其他實施例。用于低端裝置(下文中,稱為“裝置”)100的存儲器包括RAM 105、閃存110、虛擬 存儲器115。應(yīng)該理解的是,雖然RAM 105、閃存110、虛擬存儲器115在一起示出,但是RAM 105、閃存110、虛擬存儲器115可以位于裝置100中的不同的部分中。此外,RAM 105、閃存 110、虛擬存儲器115中的一個或多個可以位于裝置100的外部。RAM 105包括CODE/CONST執(zhí)行區(qū)域120、交換區(qū)域125、堆棧130。閃存110包括 CODE區(qū)域135、RW初始數(shù)據(jù)區(qū)域140、閃存交換區(qū)域145、垃圾收集區(qū)域150、文件系統(tǒng)區(qū)域 155。CODE區(qū)域135包括用于閃存操作的指令。RW初始數(shù)據(jù)區(qū)域140包括與發(fā)生在虛擬存 儲器115中有關(guān)的初始化數(shù)據(jù)。分區(qū)管理器(未示出)為了 RW和ZI需求加載對閃存進(jìn)行 分區(qū)。虛擬存儲器115包括CODE區(qū)域160、C0NST區(qū)域165、RW區(qū)域170和ZI區(qū)域175。虛 擬存儲器115可以遠(yuǎn)大于RAM 105和閃存110。應(yīng)該理解,在圖1中示出的區(qū)域的相對大小并不代表與區(qū)域有關(guān)的實際大小關(guān) 系。例如,閃存交換區(qū)域145的大小實際上可以大于交換區(qū)域125或RW初始數(shù)據(jù)區(qū)域140。虛擬存儲器115被配置為使得在裝置100上運行的應(yīng)用程序?qū)W區(qū)域170和ZI 區(qū)域175當(dāng)作可用的存儲器。因此,為了操作而從RAM 105分配交換區(qū)域125。另外,為了 更新存儲器頁(例如,存儲狀態(tài)數(shù)據(jù))而分配閃存交換區(qū)域145。交換區(qū)域125和閃存交換 區(qū)域145的大小等于RW區(qū)域170和ZI區(qū)域175的大小。例如,如果RW區(qū)域170和ZI區(qū) 域175等于4MB,則交換區(qū)域125和閃存交換區(qū)域145必須至少等于4MB。因此,如果交換 區(qū)域125等于1MB,則閃存的一部分(例如,閃存交換區(qū)域145)必須至少等于3MB。為了存儲“臟頁”而分配垃圾收集區(qū)域150。臟頁為在RAM 105中存在信息的頁。 裝置100的存儲器管理單元(MMU) 180被配置為通過從閃存交換區(qū)域145去除臟頁并將臟 頁置于垃圾收集區(qū)域150中來執(zhí)行垃圾收集。在一些實施例中,MMU 180被配置為在空閑 時間期間執(zhí)行垃圾收集??紤]到正在進(jìn)行或未來的交換操作,MMU 180執(zhí)行垃圾收集以“清 潔”閃存交換區(qū)域145。MMU 180可以是響應(yīng)于存儲在計算機(jī)可讀介質(zhì)(例如,諸如RAM 105的存儲器的一 部分)中的多條指令的特定處理器。另外,MMU 180可以在MMU 180內(nèi)包括存儲在計算機(jī) 可讀介質(zhì)中的多條指令。
當(dāng)出現(xiàn)頁錯誤時,在從閃存110加載新的內(nèi)容之前,MMU 180將交換后的頁從RAM 105存儲到閃存中。例如,MMU 180將當(dāng)前存儲在交換區(qū)域125中的數(shù)據(jù)(例如,頁)存儲 到閃存交換區(qū)域145中。MMU 180使用閃存交換區(qū)域145中的最少被使用的塊來存儲這樣 的數(shù)據(jù)。在一些實施例中,MMU 180將數(shù)據(jù)存儲在垃圾收集區(qū)域150中。MMU 180使用垃圾 收集區(qū)域150中的最少被使用的塊來存儲這樣的數(shù)據(jù)。此外,MMU 180生成用于閃存使用的數(shù)據(jù)庫(未示出)。MMU 180將數(shù)據(jù)庫存儲在 閃存110中。當(dāng)從閃存110將頁內(nèi)容加載到RAM 105中時,MMU 180首先檢查是否引用了 (reference)相關(guān)內(nèi)容。如果沒有引用內(nèi)容,則需求加載系統(tǒng)(DLS) 185將數(shù)據(jù)初始化。如 果先前引用過內(nèi)容,則MMU 180從閃存交換區(qū)域145中的交換頁加載所述內(nèi)容。圖2示出根據(jù)本公開實施例的存儲器交換操作。圖2中示出的存儲器交換操作 200的實施例僅用于舉例說明。在不脫離本公開的范圍的情況下,可以使用存儲器交換操作 200的其他實施例。交換區(qū)域125包括多個塊。圖2示出了包括在交換區(qū)域125中的多個塊中的一個 交換區(qū)域塊205。交換區(qū)域塊205包括用于存儲多個頁的內(nèi)容的多個扇區(qū)210a-210h。閃存交換區(qū)域145也包括多個塊。圖2示出了第一閃存交換區(qū)域塊215、第二 閃存交換區(qū)域塊220、第三閃存交換區(qū)域塊240。閃存交換區(qū)域塊215、220、240中的每個 閃存交換區(qū)域塊均分別包括用于存儲多個頁的內(nèi)容的多個扇區(qū)225a-225h、230a-230h、 245a-245h。在一個示例中,扇區(qū)210a_210d包括頁的內(nèi)容。另外,扇區(qū)225a_225e包括頁的內(nèi) 容。此外,扇區(qū)230g、230h以及扇區(qū)245a-245f也包括頁的內(nèi)容。在一些實施例中,在裝置100上運行應(yīng)用程序。應(yīng)用程序需要特定量的存儲器。裝 置100可以將所需的存儲器空間設(shè)置為虛擬存儲器。例如,應(yīng)用程序可以需要用于四(4) 頁的內(nèi)容的存儲器空間。在一些這樣的實施例中,裝置從RW區(qū)域170和ZI區(qū)域175分配 虛擬存儲器。MMU 180為了應(yīng)用程序的使用而從閃存110分配扇區(qū)。MMU 180確定第一閃存交 換區(qū)域塊215僅包括三(3)個可用扇區(qū)。此外,MMU 180確定第二閃存交換區(qū)域塊220包 括六(6)個可用扇區(qū)。然而,MMU 180還確定從第二塊220分配四(4)個扇區(qū)會導(dǎo)致第一 閃存交換區(qū)域塊215中有三(3)個自由塊并且第二閃存交換區(qū)域塊220中有兩(2)個自由 塊。因此,MMU 180確定需要在從閃存110分配扇區(qū)之前執(zhí)行存儲器交換操作。因此,MMU 180復(fù)制包括在扇區(qū)230g和230h中的頁。然后,MMU 180將復(fù)制的頁 存儲在225f和225g中。在將所述頁存儲在扇區(qū)225f和225g中之后,MMU 180從扇區(qū)230g 和230h擦除所述頁。MMU 180可以通過擦除整個第二閃存交換區(qū)域塊220來從扇區(qū)230g 和230h擦除所述頁。然后,MMU180可以為了應(yīng)用程序的使用而從第二閃存交換區(qū)域塊220 分配存儲器。在一些實施例中,扇區(qū)230g和230h中的頁包括的內(nèi)容與在扇區(qū)210a_210d中的 任意的扇區(qū)(諸如,以扇區(qū)210c和210d為例)中出現(xiàn)的內(nèi)容相同。這樣,將包括在扇區(qū) 230g和230h中的頁稱為臟頁。在這樣的實施例中,MMU 180確定存儲在扇區(qū)230g和230h中的頁為臟頁。MMU180可以從第二閃存交換區(qū)域塊220復(fù)制臟頁。然后,MMU 180將復(fù)制的臟頁存儲在垃圾收 集區(qū)域塊235中。垃圾收集區(qū)域塊235可以為包括在垃圾收集區(qū)域150中的多個塊之一。 這樣,示出的一個垃圾區(qū)域塊235僅出于示例目的。此外,當(dāng)前包括在垃圾收集區(qū)域塊235 中的一個或多個扇區(qū)可以包括頁的內(nèi)容。然后,MMU 180通過擦除整個第二閃存交換區(qū)域 塊220來從扇區(qū)230g和230h擦除臟頁。然后,MMU 180可以為了應(yīng)用程序的使用從第二 閃存交換區(qū)域塊220分配存儲器。在一些實施例中,MMU 180將一個或多個頁從交換區(qū)域塊205交換到第一閃存交 換區(qū)域塊215和第二閃存交換區(qū)域塊220之一。MMU 180識別閃存交換區(qū)域145中最少被 擦除的一個或多個塊(例如,第一閃存交換區(qū)域塊215和第二閃存交換區(qū)域塊220)。然后, MMU 180將一個或多個頁從交換區(qū)域塊205存儲到最少被擦除的塊。然后,MMU 180可以為 了應(yīng)用程序的使用而從RAM 105分配存儲器。圖3示出根據(jù)本公開實施例的存儲器管理交換處理。圖3中示出的存儲器管理交 換處理300的實施例僅用于舉例說明。在不脫離本公開的范圍的情況下,可以使用存儲器 管理交換處理300的其他實施例。在步驟305中,MMU 180尋找具有最多的臟頁的塊。MMU 180評價還有哪個包括頁 的內(nèi)容塊也位于RAM 105中(例如,在交換區(qū)域125中)。MMU180選擇具有最多的臟頁的 塊,以使最多的空間(例如,扇區(qū))可用。MMU180從具有最多臟頁的塊擦除臟位。在一些實 施例中,MMU 180將臟頁傳輸?shù)嚼占瘏^(qū)域150。在這樣的實施例中,MMU 180在從具有 最多的臟頁的塊擦除臟位之前將復(fù)制的臟頁存儲到垃圾收集區(qū)域150。例如,MMU 180可以確定位于塊225a_225e中的所有的頁為臟頁(例如,在這些頁 內(nèi)的復(fù)制的內(nèi)容也存在于RAM 105中)。MMU 180還可以確定位于塊230g_230h中的頁為 臟頁。此外,MMU 180可以確定位于扇區(qū)245a-245c中的一個或多個頁在先前已經(jīng)進(jìn)行過 交換。MMU 180將位于第一閃存交換區(qū)域塊215中的頁選擇為將被擦除的頁。MMU 180 選擇第一閃存交換區(qū)域塊215,這是因為位于第一閃存交換區(qū)域塊215中的臟頁的擦除使 得最多的存儲器空間得以釋放。MMU 180不選擇第二閃存交換區(qū)域塊220,這是因為僅會擦 除兩(2)個塊,而相對而言,會從第一閃存交換區(qū)域塊215擦除五(5)個塊。MMU 180也不 選擇第三閃存交換區(qū)域塊240,這是因為先前已經(jīng)交換了一個或多個塊。在步驟310中,MMU 180從RAM 105將有效頁復(fù)制到閃存110。MMU180從交換區(qū) 域塊205復(fù)制一個或多個頁。然后,MMU 180將復(fù)制的頁存儲到第一閃存交換區(qū)域塊215。 在一些實施例中,MMU 180基于從交換區(qū)域塊205復(fù)制的頁的數(shù)量來選擇第二閃存交換區(qū) 域塊220或第三閃存交換區(qū)域塊240。然后,在步驟315中,MMU 180擦除從交換區(qū)域塊205復(fù)制的頁。然后,在步驟320 中,MMU 180更新存儲器管理表(未示出)。圖4示出根據(jù)本公開實施例的頁錯誤處理。圖4中示出的頁錯誤處理400的實施 例僅用于舉例說明。在不脫離本公開的范圍的情況下,可以使用頁錯誤處理400的其他實 施例。在步驟405中出現(xiàn)數(shù)據(jù)中止。當(dāng)頁錯誤(例如,數(shù)據(jù)中止)出現(xiàn)時,MMU180在從 閃存110加載新內(nèi)容之前將交換的頁從RAM 105存儲到閃存Iio中。例如,MMU 180將當(dāng)前存儲在交換區(qū)域125中的數(shù)據(jù)(例如,頁)存儲到閃存交換區(qū)域145中。在一些實施例 中,MMU 180將數(shù)據(jù)存儲在垃圾收集區(qū)域150中。MMU 180使用閃存交換區(qū)域145中的最少 被使用的塊來存儲這樣的數(shù)據(jù)。在步驟410中,MMU 180得到RAM 105中的交換頁。當(dāng)從閃存110將頁內(nèi)容加載 到RAM 105中時,在步驟415中,MMU 180首先檢查是否引用了相關(guān)內(nèi)容。如果在步驟415 中沒有引用所述內(nèi)容,則在步驟420中,DLS 185使數(shù)據(jù)初始化。如果在步驟415中識別出 先前引用了內(nèi)容,則在步驟430中,MMU 180從閃存交換區(qū)域145中的交換頁加載內(nèi)容。MMU 180還被配置為在空閑時間(例如,應(yīng)用程序不需要使用存儲器的時間段和/ 或當(dāng)MMU 180不需要執(zhí)行交換或頁錯誤操作時的時間段)期間執(zhí)行垃圾清理操作。MMU 180 周期性地或在空閑時間期間掃描位于閃存交換區(qū)域145中的多個塊。MMU 180識別包括臟 頁的塊。MMU 180執(zhí)行交換操作(參照圖2具體說明)。如果需要,則MMU 180將內(nèi)容(例 如,頁的內(nèi)容)從一個閃存交換區(qū)域塊重新定位到另一閃存交換區(qū)域塊。在移動內(nèi)容之后, MMU 180擦除僅包括臟頁的閃存交換區(qū)域塊。在一些實施例中,MMU 180在擦除臟頁之前將 臟頁復(fù)制到垃圾收集區(qū)域150。因此,與RAM 105相比,裝置100被配置為存儲非常多數(shù)據(jù)的閃存110。如在此所 說明的,MMU 180可以被配置為利用RAM和NAND閃存的分配來優(yōu)化存儲器管理。MMU 180 可以集成到具有有限的RAM和有限的閃存的任何裝置100中,諸如但不限于蜂窩電話、MP3 播放器、電視、個人數(shù)字助理、導(dǎo)航裝置(諸如全球定位系統(tǒng)(GPS)裝置)、數(shù)字記錄器、ARM7 和ARM9裝置。雖然已經(jīng)利用示例性實施例描述了本公開,但是本領(lǐng)域技術(shù)人員可以得出各種改 變和修改。本公開意圖包括落入權(quán)利要求范圍內(nèi)的這樣的改變和修改。
9
權(quán)利要求
一種用于管理電子裝置中的存儲器的設(shè)備,所述裝置包括存儲器管理單元,所述存儲器管理單元被配置為分配隨機(jī)存取存儲器的一部分和閃速存儲器的一部分,其中,所述存儲器管理單元執(zhí)行在所述隨機(jī)存取存儲器和所述閃速存儲器的一個或一個以上的塊之間的頁的內(nèi)容的交換操作。
2.如權(quán)利要求1所述的設(shè)備,其中,所述存儲器管理單元將閃速存儲器的一部分分配 為垃圾收集區(qū)域。
3.如權(quán)利要求2所述的設(shè)備,其中,所述存儲器管理單元將臟頁傳輸?shù)剿隼占?區(qū)域。
4.如權(quán)利要求1所述的設(shè)備,其中,所述存儲器管理單元識別所述閃速存儲器中的第 一塊,與所述閃速存儲器中的第二塊相比,所述第一塊包括最多的臟頁。
5.如權(quán)利要求4所述的設(shè)備,其中,所述存儲器管理單元被配置為在所述交換操作期 間將從所述隨機(jī)存取存儲器復(fù)制的數(shù)據(jù)存儲到所述第一塊中。
6.如權(quán)利要求4所述的設(shè)備,其中,所述存儲器管理單元被配置為在所述交換操作之后擦除復(fù)制的頁的內(nèi)容;更新存儲器管理表。
7.如權(quán)利要求1所述的設(shè)備,其中,所述存儲器管理單元被配置為響應(yīng)于頁錯誤來確 定是否對所述頁錯誤中的頁進(jìn)行了引用。
8.一種電子裝置,所述電子裝置包括處理器;隨機(jī)存取存儲器;閃速存儲器;存儲器管理單元,所述存儲器管理單元被配置為分配所述隨機(jī)存取存儲器的一部分和 所述閃速存儲器的一部分,其中,所述存儲器管理單元執(zhí)行所述隨機(jī)存取存儲器和所述閃 速存儲器的一個或一個以上的塊之間的頁的內(nèi)容的交換操作。
9.如權(quán)利要求8所述的電子裝置,其中,所述存儲器管理單元將所述閃速存儲器的一 部分分配為垃圾收集區(qū)域。
10.如權(quán)利要求9所述的電子裝置,其中,所述存儲器管理單元被配置為將臟頁傳輸?shù)?所述垃圾收集區(qū)域。
11.如權(quán)利要求8所述的電子裝置,其中,所述存儲器管理單元識別所述閃速存儲器中 的第一塊,與所述閃速存儲器中的第二塊相比,所述第一塊包括最多的臟頁。
12.如權(quán)利要求11所述的電子裝置,其中,所述存儲器管理單元被配置為在所述交換 操作期間將從所述隨機(jī)存取存儲器復(fù)制的數(shù)據(jù)存儲到所述第一塊中。
13.如權(quán)利要求11所述的電子裝置,其中,所述存儲器管理單元被配置為在所述交換操作之后擦除復(fù)制的頁的內(nèi)容;更新存儲器管理表。
14.如權(quán)利要求8所述的電子裝置,其中,所述存儲器管理單元被配置為響應(yīng)于頁錯誤 來確定是否對所述頁錯誤中的頁進(jìn)行了引用。
15.一種用在電子裝置中的存儲器管理方法,所述方法包括如下步驟將隨機(jī)存取存儲器的一部分分配為第一交換區(qū)域;將閃速存儲器的一部分分配為第二交換區(qū)域; 將頁的內(nèi)容從第一交換區(qū)域交換到第二交換區(qū)域; 從第二交換區(qū)域加載新的頁的內(nèi)容。
16.如權(quán)利要求15所述的方法,所述方法還包括將閃速存儲器的一部分分配為垃圾收 集區(qū)域。
17.如權(quán)利要求16所述的方法,所述方法還包括將臟頁傳輸?shù)嚼占瘏^(qū)域。
18.如權(quán)利要求15所述的方法,其中,交換步驟還包括識別第二交換區(qū)域中的第一塊,第一塊與第二交換區(qū)域中的第二塊相比包括最多的臟頁;在所述交換操作期間,將從第一交換區(qū)域復(fù)制的數(shù)據(jù)存儲到第一塊中。
19.如權(quán)利要求15所述的方法,所述方法還包括 在交換頁的內(nèi)容之后擦除復(fù)制的頁的內(nèi)容;更新存儲器管理表。
20.如權(quán)利要求15所述的方法,所述方法還包括響應(yīng)于頁錯誤來確定是否對所述頁錯 誤中的頁進(jìn)行了引用。
全文摘要
本發(fā)明提供了一種用于管理低端電子裝置中的存儲器的設(shè)備和方法。所述設(shè)備包括存儲器管理單元。存儲器管理單元被配置為將隨機(jī)存取存儲器的一部分和閃速存儲器的一部分分配為交換區(qū)域。所述存儲器管理單元通過在隨機(jī)存取存儲器交換區(qū)域和閃速存儲器交換區(qū)域的一個或多個塊之間交換頁的內(nèi)容來執(zhí)行交換操作。然后,可以從閃速存儲器交換區(qū)域加載頁的內(nèi)容。存儲器管理單元還將閃速存儲器的一部分分配為垃圾收集區(qū)域。存儲器管理單元將臟頁從閃存交換區(qū)域傳輸?shù)嚼占瘑卧?,以釋放閃速存儲器交換區(qū)域塊。
文檔編號G06F12/02GK101901190SQ20091025334
公開日2010年12月1日 申請日期2009年12月7日 優(yōu)先權(quán)日2009年3月19日
發(fā)明者張帆, 沙特布萊特·星 申請人:三星電子株式會社