欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

閃速存儲(chǔ)器和閃速存儲(chǔ)器的映射控制設(shè)備和方法

文檔序號(hào):6442940閱讀:169來(lái)源:國(guó)知局
專利名稱:閃速存儲(chǔ)器和閃速存儲(chǔ)器的映射控制設(shè)備和方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種閃速存儲(chǔ)器和一種閃速存儲(chǔ)器的映射控制設(shè)備和方法,更具體地講,涉及通過(guò)基于預(yù)定的狀態(tài)過(guò)度算法更新閃速存儲(chǔ)器中通過(guò)處理器要求的邏輯操作來(lái)改變的塊狀態(tài)信息并參照更新的關(guān)于讀/寫操作信息來(lái)實(shí)行能夠有效地訪問(wèn)閃速存儲(chǔ)器。
背景技術(shù)
閃速存儲(chǔ)器,具有RAM(隨機(jī)存取存儲(chǔ)器)的數(shù)據(jù)能自由地寫入并從中刪除以及ROM(只讀存儲(chǔ)器)的在無(wú)電源情況下能保持存儲(chǔ)在其中的數(shù)據(jù)的優(yōu)點(diǎn)。因此,閃速存儲(chǔ)器已經(jīng)作為存儲(chǔ)介質(zhì)廣泛應(yīng)用于便攜式電子裝置,例如數(shù)碼相機(jī)、PDA、和MP3播放器。
在這種閃速存儲(chǔ)器中,隨機(jī)存取可如在傳統(tǒng)的RAM、非易失存儲(chǔ)裝置、磁介質(zhì)等中被用于存儲(chǔ)在特定位置的數(shù)據(jù)。然而,閃速存儲(chǔ)器與現(xiàn)有存儲(chǔ)裝置的不同在于,在修改或擦除數(shù)據(jù)處理中以塊為基礎(chǔ)來(lái)獲得存取。
換句話說(shuō),如果先前的數(shù)據(jù)被指定修改或者擦除,則要求包含相應(yīng)數(shù)據(jù)的塊被擦除,然后數(shù)據(jù)被再次寫入。例如,以同樣方式執(zhí)行通過(guò)按“刪除”鍵來(lái)完全刪除整個(gè)詞,然后重打修改的詞以代替逐個(gè)改正字符或字母。
如這里所使用的,術(shù)語(yǔ)‘扇區(qū)’是指具有物理上連續(xù)地址的多個(gè)字節(jié)。扇區(qū)是關(guān)于閃速存儲(chǔ)器的讀/寫操作的基本單位。包括多個(gè)扇區(qū)的塊是刪除操作的基本單位,其可通過(guò)單次擦除操作被擦除。
這種閃速存儲(chǔ)器支持邏輯-物理映射方法,通過(guò)其即使寫在閃速存儲(chǔ)器中的一段數(shù)據(jù)的物理地址由于寫之前擦除操作被改變,寫在閃速存儲(chǔ)器中的該段數(shù)據(jù)也能用同一邏輯地址被存取。
即,映射方案通過(guò)預(yù)定的映射表對(duì)特定數(shù)據(jù)段管理關(guān)于邏輯地址和物理地址之間映射的信息。映射方案大致地分為扇區(qū)映射方法、塊映射方法、和混合方法。
圖1A示意性地示出了根據(jù)傳統(tǒng)扇區(qū)映射方法的閃速存儲(chǔ)器的訪問(wèn)體系結(jié)構(gòu)。
如圖1A所示,扇區(qū)映射方法在閃速存儲(chǔ)器中保持以扇區(qū)為基礎(chǔ)的映射信息以通過(guò)使用邏輯扇區(qū)信息能夠訪問(wèn)該閃速存儲(chǔ)器的物理扇區(qū)。
例如,如果邏輯扇區(qū)號(hào)(LSN)被指定為9,并且對(duì)特定數(shù)據(jù)寫操作的請(qǐng)求一起被指定,那么閃速存儲(chǔ)器訪問(wèn)裝置通過(guò)參考映射表來(lái)搜索相應(yīng)于LSN9的物理扇區(qū)號(hào)(PSN)6。
然后,相關(guān)數(shù)據(jù)被寫入閃速存儲(chǔ)器的扇區(qū)6。如果其他數(shù)據(jù)已經(jīng)被寫入這個(gè)扇區(qū),則該數(shù)據(jù)被寫入閃速存儲(chǔ)器的空物理扇區(qū)中并且在映射表中相應(yīng)于LSN 9的PSN被改變。
圖1B示意性地示出了根據(jù)傳統(tǒng)塊映射方法的閃速存儲(chǔ)器的訪問(wèn)體系結(jié)構(gòu)。
如圖1B所示,塊映射方法在閃速存儲(chǔ)器中保持以塊為基礎(chǔ)的映射信息并且將邏輯扇區(qū)信息轉(zhuǎn)變?yōu)檫壿媺K信息,從而通過(guò)使用邏輯塊信息和偏移量信息能夠訪問(wèn)閃速存儲(chǔ)器的物理扇區(qū)。
例如,如果LSN被指定為9,并且對(duì)特定數(shù)據(jù)寫操作的請(qǐng)求一起被指定,那么閃速存儲(chǔ)器訪問(wèn)裝置對(duì)LSN 9計(jì)算邏輯塊號(hào)(LBN)(即,9/4=2),然后通過(guò)參考映射表來(lái)獲得相應(yīng)于LBN的物理塊號(hào)(PBN)。
在這種情況下,數(shù)據(jù)被寫入在通過(guò)匹配邏輯塊的偏移量與物理塊的偏移量而獲得的PBN 1中的相應(yīng)于偏移量1的扇區(qū)。
如果其他數(shù)據(jù)已經(jīng)被寫入此扇區(qū)中,則當(dāng)匹配偏移量時(shí),閃速存儲(chǔ)器訪問(wèn)裝置將數(shù)據(jù)寫入閃速存儲(chǔ)器的空物理扇區(qū)中,然后在映射表中改變相應(yīng)于LBN 2的PBN。
此時(shí),當(dāng)匹配偏移量時(shí),保持在已有PBN中的有效數(shù)據(jù)應(yīng)被復(fù)制到新的PBN。
圖1C示意性地示出了根據(jù)傳統(tǒng)混合映射方法的閃速存儲(chǔ)器的訪問(wèn)體系結(jié)構(gòu)。
如圖1C所示,混合映射方法像在塊映射方法中一樣執(zhí)行以塊為基礎(chǔ)單元的映射,然后在物理塊中存儲(chǔ)扇區(qū)映射信息以獲得扇區(qū)映射的特性。
例如,如果LSN被指定為9,并且對(duì)特定數(shù)據(jù)寫操作的請(qǐng)求一起被指定,那么閃速存儲(chǔ)器訪問(wèn)裝置對(duì)LSN 9計(jì)算LBN(即,9/4=2),然后通過(guò)參考映射表來(lái)獲得相應(yīng)于該LBN的PBN 1。
其后,閃速存儲(chǔ)器訪問(wèn)裝置在PBN 1的空扇區(qū)中寫數(shù)據(jù)并且寫LSN 9。
在這些傳統(tǒng)的映射方法中,因?yàn)榇嬖谠S多在閃速存儲(chǔ)器中以扇區(qū)為基礎(chǔ)的保持所需要的映射信息,所以扇區(qū)映射方法實(shí)際被應(yīng)用到閃速存儲(chǔ)器是有困難的。
因此,新近技術(shù)基于需要較少的映射信息的塊映射方法。
然而,因?yàn)樵趬K映射方法中應(yīng)匹配偏移量,所以如果寫操作頻繁發(fā)生在同一扇區(qū)中,那么新的塊應(yīng)被分配以在同一扇區(qū)中寫數(shù)據(jù),并且甚至同一塊中不同扇區(qū)的有效數(shù)據(jù)以及相關(guān)扇區(qū)的有效數(shù)據(jù)應(yīng)被復(fù)制。因此,存在問(wèn)題在于寫和擦除操作頻繁發(fā)生,引起系統(tǒng)性能的顯著降低。
同時(shí),盡管塊映射發(fā)生之后由于扇區(qū)映射信息的存儲(chǔ),所以混合映射方法不需要匹配偏移量,但是仍然存在用于寫扇區(qū)映射信息的預(yù)定存儲(chǔ)容量應(yīng)被保證的問(wèn)題,因此與塊映射方法相比,需要的存儲(chǔ)量增加。
為了解決現(xiàn)有技術(shù)中的上述的問(wèn)題,先前提出的標(biāo)題為“管理閃速存儲(chǔ)器的方法”的公開號(hào)為2002-0092487的韓國(guó)已公開專利揭示通過(guò)分配特定記錄塊并將數(shù)據(jù)寫入該記錄塊中來(lái)甚至在頻繁更新數(shù)據(jù)的環(huán)境中防止系統(tǒng)性能下降,其在更新處理中需要寫操作。然而,因?yàn)樵趯懺谟涗泬K中的數(shù)據(jù)傳送到數(shù)據(jù)塊的處理中需要寫/擦除操作,所以由于重復(fù)的寫操作公開的本發(fā)明不足以防止閃速存儲(chǔ)器系統(tǒng)性能的降低。
因此,存在對(duì)訪問(wèn)閃速存儲(chǔ)器的方法的需要,該方法通過(guò)減少包括在由處理器請(qǐng)求的寫操作中的寫/擦除操作的數(shù)量來(lái)使閃速存儲(chǔ)器系統(tǒng)的性能的提高能夠?qū)崿F(xiàn)。

發(fā)明內(nèi)容
因此,本發(fā)明的目的在于解決上述問(wèn)題。本發(fā)明的主要目的在于提供一種用于有效訪問(wèn)閃速存儲(chǔ)器的映射算法,其中,通過(guò)由處理器要求的邏輯操作改變的塊狀態(tài)信息根據(jù)預(yù)定狀態(tài)轉(zhuǎn)移算法被寫入閃速存儲(chǔ)器中,并且當(dāng)讀/寫操作時(shí)參考改變的信息。
本發(fā)明的另一目的在于不需匹配偏移量,使用通過(guò)現(xiàn)有的塊映射算法的閃速存儲(chǔ)器訪問(wèn)方法能夠訪問(wèn)閃速存儲(chǔ)器。
本發(fā)明的另一目的在于通過(guò)使用狀態(tài)轉(zhuǎn)移算法通過(guò)狀態(tài)信息將擦除操作次數(shù)最小化來(lái)提高閃速存儲(chǔ)器系統(tǒng)的全部性能。
本發(fā)明的目的在于基于表示塊的狀態(tài)的塊狀態(tài)信息來(lái)確定在對(duì)閃速存儲(chǔ)器的預(yù)定邏輯操作期間在其上將執(zhí)行邏輯操作的扇區(qū),并且訪問(wèn)該確定的扇區(qū)。
此外,本發(fā)明的目的在于根據(jù)預(yù)定狀態(tài)轉(zhuǎn)移算法更新塊狀態(tài)信息,該塊狀態(tài)信息基于訪問(wèn)該確定的扇區(qū)的結(jié)果來(lái)改變。
在本發(fā)明中,狀態(tài)轉(zhuǎn)移算法表示通過(guò)預(yù)定邏輯操作而改變的塊的狀態(tài)。塊的狀態(tài)包括第一狀態(tài),其中,數(shù)據(jù)沒(méi)有被寫入該塊中;第二狀態(tài),其中,當(dāng)匹配扇區(qū)偏移量時(shí),預(yù)定數(shù)據(jù)被寫入第一狀態(tài)中;第三狀態(tài),其中,不匹配扇區(qū)偏移量,預(yù)定的數(shù)據(jù)就被寫入第一狀態(tài);第四狀態(tài),其中,第二狀態(tài)中的數(shù)據(jù)被寫入整個(gè)塊;和第五狀態(tài),第三狀態(tài)或第四狀態(tài)中的有效數(shù)據(jù)被傳送到新的塊,因此寫在先前塊中的數(shù)據(jù)不再有效。
以下,結(jié)合實(shí)施例描述本發(fā)明的配置和操作,第一狀態(tài)定義為自由(Free)(以下,稱為“F”),第二狀態(tài)定義為M,第三狀態(tài)定義為N,第四狀態(tài)定義為源(Source)(以下,稱為“S”),和第五狀態(tài)定義為舊的(Old)(以下,稱為“O”)。包含相應(yīng)塊狀態(tài)信息的塊被分別地定義為塊F、塊M、塊N、塊S、和塊O。
根據(jù)本發(fā)明的一方面,提供了一種包括以其每個(gè)包括預(yù)定數(shù)目扇區(qū)的塊為基礎(chǔ)而劃分的區(qū)域的閃速存儲(chǔ)器,其中閃速存儲(chǔ)器包含表示每個(gè)塊的狀態(tài)并且被用于確定在其上邏輯操作將被執(zhí)行的扇區(qū)的塊狀態(tài)信息。
根據(jù)本發(fā)明的另一方面,提供了一種閃速存儲(chǔ)器的映射控制設(shè)備,包括閃速存儲(chǔ)器,其包括以塊為基礎(chǔ)而劃分的區(qū)域,并且包含表示包括預(yù)定數(shù)目扇區(qū)的每個(gè)塊的狀態(tài)的塊狀態(tài)信息;和處理器,用于當(dāng)需要對(duì)閃速存儲(chǔ)器進(jìn)行邏輯操作時(shí),基于塊狀態(tài)信息來(lái)確定在其上預(yù)定的邏輯操作將被執(zhí)行的扇區(qū),并且根據(jù)預(yù)定狀態(tài)轉(zhuǎn)移算法來(lái)更新塊狀態(tài)信息。
根據(jù)本發(fā)明的另一方面,提供一種閃速存儲(chǔ)器的映射控制方法,包括以下步驟如果在閃速存儲(chǔ)器的指定邏輯扇區(qū)上需要預(yù)定的邏輯操作,那么通過(guò)參考映射表來(lái)搜索相應(yīng)于該邏輯扇區(qū)的物理塊;基于該物理塊的塊狀態(tài)信息來(lái)確定在其上邏輯操作將被執(zhí)行的扇區(qū);和訪問(wèn)該確定的扇區(qū)以執(zhí)行邏輯操作。


通過(guò)下面結(jié)合附圖對(duì)示例性實(shí)施例進(jìn)行的描述,本發(fā)明的上述和其他目的、特點(diǎn)和優(yōu)點(diǎn)將會(huì)變得更加清楚,其中圖1A至1C是分別示出根據(jù)用于訪問(wèn)閃速存儲(chǔ)器的傳統(tǒng)方法中的控制方案的操作處理的閃速存儲(chǔ)器的方框圖;圖2是示意性地示出根據(jù)本發(fā)明實(shí)施例的基于閃速存儲(chǔ)器的系統(tǒng)的視圖;圖3是示意性地示出根據(jù)本發(fā)明實(shí)施例的用于基于閃速存儲(chǔ)器的系統(tǒng)的軟件結(jié)構(gòu)的視圖;圖4是示意性地示出根據(jù)本發(fā)明實(shí)施例的狀態(tài)轉(zhuǎn)移算法中的狀態(tài)轉(zhuǎn)移處理的視圖;圖5是示意性地示出根據(jù)本發(fā)明實(shí)施例的寫操作處理的流程圖;圖6是示意性地示出根據(jù)本發(fā)明實(shí)施例的讀操作處理的流程圖;圖7是示意性地示出根據(jù)本發(fā)明實(shí)施例的使用映射表的寫操作處理的視圖;和圖8A至8C是示意性地示出根據(jù)本發(fā)明實(shí)施例的在閃速存儲(chǔ)器中的塊轉(zhuǎn)移處理的視圖。
具體實(shí)施例方式
以下,將參照附圖來(lái)詳細(xì)描述根據(jù)本發(fā)明的閃速存儲(chǔ)器和該閃速存儲(chǔ)器的映射控制設(shè)備及方法。
首先,參照附圖結(jié)合實(shí)施例來(lái)詳細(xì)描述根據(jù)本發(fā)明的包括閃速存儲(chǔ)器的基于閃速存儲(chǔ)器的系統(tǒng)的結(jié)構(gòu)和操作和該閃速存儲(chǔ)器的映射控制設(shè)備。
圖2是示意性地示出根據(jù)本發(fā)明實(shí)施例的基于閃速存儲(chǔ)器的系統(tǒng)的視圖。
如圖2所示,該系統(tǒng)包括閃速存儲(chǔ)器100、系統(tǒng)存儲(chǔ)器300和處理器500。
閃速存儲(chǔ)器100包括每個(gè)是擦除操作的基本單元的塊。每個(gè)塊包含多個(gè)其每個(gè)是寫/讀操作的基本單元的扇區(qū)。
此外,閃速存儲(chǔ)器100包含表示每個(gè)塊的狀態(tài)的塊狀態(tài)信息,其被用于確定在其上邏輯操作例如寫或讀操作將被執(zhí)行的扇區(qū)。
塊狀態(tài)信息被寫入在其中寫入關(guān)于閃速存儲(chǔ)器100的信息的元塊(meta-block)中,或?qū)懭朐诿總€(gè)塊的存儲(chǔ)區(qū)域之中分配的預(yù)定區(qū)域(例如,備用的區(qū)域)中。
系統(tǒng)存儲(chǔ)器300包含用于訪問(wèn)閃速存儲(chǔ)器的訪問(wèn)代碼。能夠支持原地執(zhí)行(XIP)的存儲(chǔ)器例如RAM或ROM被用作系統(tǒng)存儲(chǔ)器。
處理器500使用寫在系統(tǒng)存儲(chǔ)器300中的閃速存儲(chǔ)器訪問(wèn)代碼來(lái)訪問(wèn)閃速存儲(chǔ)器100。如果要求預(yù)定邏輯操作,則處理器500將邏輯扇區(qū)地址轉(zhuǎn)變?yōu)橛糜谠L問(wèn)閃速存儲(chǔ)器的物理塊地址,并且基于關(guān)于相應(yīng)于該物理塊地址的相關(guān)塊的塊狀態(tài)信息來(lái)確定在其上邏輯操作將被執(zhí)行的扇區(qū),從而執(zhí)行該邏輯操作。
此外,如果要求預(yù)定邏輯操作,則處理器500確定根據(jù)預(yù)定狀態(tài)轉(zhuǎn)移算法通過(guò)邏輯操作而被改變的每個(gè)塊的塊狀態(tài)信息,并且基于確定的塊狀態(tài)信息來(lái)更新寫在閃速存儲(chǔ)器100中的關(guān)于相關(guān)塊的塊狀態(tài)信息。
根據(jù)各塊的狀態(tài)信息,塊被分類為塊F,其中數(shù)據(jù)不被寫入該塊中;塊M,其中通過(guò)匹配扇區(qū)偏移量,預(yù)定的數(shù)據(jù)被寫入塊F中;塊N,其中不匹配扇區(qū)偏移量,預(yù)定的數(shù)據(jù)就被寫入塊M中;塊S,其中塊M的數(shù)據(jù)被寫入整個(gè)塊中;和塊O,其中塊N或塊S中的有效數(shù)據(jù)被傳送到新的塊,從而寫入先前塊中的數(shù)據(jù)不再有效。
狀態(tài)轉(zhuǎn)移算法執(zhí)行交換合并(swap merge)操作,通過(guò)其如果塊M被充分地使用,則另外的塊F被分配以執(zhí)行最近要求的寫操作,進(jìn)行現(xiàn)有塊M到塊S的轉(zhuǎn)移然后新的數(shù)據(jù)被寫入塊F中。
此外,狀態(tài)轉(zhuǎn)移算法執(zhí)行智能合并(smart merge)操作,通過(guò)其如果塊N被充分地使用,則另外的塊F被分配以執(zhí)行最近要求的寫操作,只有寫在現(xiàn)有的塊N中的數(shù)據(jù)之中的有效數(shù)據(jù)被寫在塊F中,并且現(xiàn)有塊N到塊O的轉(zhuǎn)移被進(jìn)行。
根據(jù)該智能合并操作數(shù)據(jù)被寫入新的塊F中,當(dāng)扇區(qū)偏移量被匹配時(shí)塊F到塊M的轉(zhuǎn)移被進(jìn)行,并且通過(guò)預(yù)定擦除操作進(jìn)行塊O到塊F的轉(zhuǎn)移。
圖3是示意性地示出根據(jù)本發(fā)明實(shí)施例的基于閃速存儲(chǔ)器的系統(tǒng)的軟件體系結(jié)構(gòu)的視圖。
如圖3所示,根據(jù)本發(fā)明的軟件體系結(jié)構(gòu)粗略地包括應(yīng)用程序模塊(應(yīng)用程序),用于根據(jù)基于閃速存儲(chǔ)器的系統(tǒng)的文件系統(tǒng)對(duì)特定文件執(zhí)行邏輯操作;閃速存儲(chǔ)器的映射控制裝置模塊,用于訪問(wèn)由在應(yīng)用程序模塊中執(zhí)行的邏輯操作需要的閃速存儲(chǔ)器中的數(shù)據(jù);和閃速存儲(chǔ)器模塊(閃速存儲(chǔ)器),用于響應(yīng)于映射控制裝置的訪問(wèn)控制來(lái)寫或讀相關(guān)數(shù)據(jù)。
閃速存儲(chǔ)器的映射控制裝置模塊包括文件系統(tǒng),用于通過(guò)根據(jù)由應(yīng)用程序模塊需要的邏輯操作訪問(wèn)閃速存儲(chǔ)器模塊來(lái)訪問(wèn)閃速存儲(chǔ)器;和閃速轉(zhuǎn)換層(FTL),用于把給定的邏輯扇區(qū)號(hào)(LSN)轉(zhuǎn)變?yōu)樽鳛殚W速存儲(chǔ)器中的實(shí)際地址的物理地址以能夠以文件系統(tǒng)來(lái)訪問(wèn)閃速存儲(chǔ)器。
圖4是示意性地示出根據(jù)本發(fā)明實(shí)施例在狀態(tài)轉(zhuǎn)移算法中的狀態(tài)轉(zhuǎn)移處理的視圖。
如圖4中所示,對(duì)閃速存儲(chǔ)器100的特定塊的狀態(tài)轉(zhuǎn)移處理以在其中不寫入數(shù)據(jù)的塊F開始。
如果處理器500請(qǐng)求在塊F上的寫操作,則處理器500確定在其上寫操作將被執(zhí)行的扇區(qū)。當(dāng)要求被寫的數(shù)據(jù)的扇區(qū)偏移量匹配時(shí),處理器500進(jìn)行從塊F到塊M的塊狀態(tài)信息的轉(zhuǎn)移(a)。
根據(jù)由處理器500請(qǐng)求的寫操作來(lái)進(jìn)行塊M到塊S或到塊N的轉(zhuǎn)移。換句話說(shuō),如果由于重復(fù)的具有匹配的扇區(qū)偏移量的數(shù)據(jù)的寫操作導(dǎo)致在塊M內(nèi)不存在可用于寫操作的扇區(qū),那么執(zhí)行交換合并操作以分配另外的塊F,并且引起從塊M到塊S的轉(zhuǎn)移(b)。
此外,如果要求在數(shù)據(jù)已經(jīng)被寫入其中的塊M的扇區(qū)上執(zhí)行寫操作,則處理器500確定任意的扇區(qū)作為在其上寫操作將被執(zhí)行的扇區(qū),進(jìn)行從塊M到塊N的塊狀態(tài)信息的轉(zhuǎn)移(c),然后在確定的扇區(qū)中寫入數(shù)據(jù)。
如果塊S的數(shù)據(jù)不再有效,那么處理器500進(jìn)行從塊S到塊O的塊狀態(tài)信息轉(zhuǎn)移(d)。
另外,如果由于重復(fù)的不具有匹配的扇區(qū)偏移量的數(shù)據(jù)的寫操作導(dǎo)致在塊N內(nèi)不存在可用于寫操作的扇區(qū),那么智能合并操作將被執(zhí)行以僅將有效的數(shù)據(jù)寫入新分配的塊F中,并且進(jìn)行從塊N到塊O的塊狀態(tài)信息轉(zhuǎn)移(e)。
進(jìn)行塊O到塊F的轉(zhuǎn)移作為由處理器500請(qǐng)求的預(yù)定擦除操作的結(jié)果(f)。
用于參考,在根據(jù)本發(fā)明實(shí)施例的閃速存儲(chǔ)器和閃速存儲(chǔ)器的映射控制設(shè)備中,全部或一些模塊可用硬件或軟件來(lái)實(shí)現(xiàn),或者一些模塊可用軟件來(lái)實(shí)現(xiàn)。
因此,很明顯用硬件或軟件來(lái)實(shí)現(xiàn)根據(jù)本發(fā)明實(shí)施例的閃速存儲(chǔ)器和閃速存儲(chǔ)器的映射控制設(shè)備落于本發(fā)明的精神,并且在不脫離本發(fā)明精神的情況下,可以對(duì)用硬件和/或軟件對(duì)其的實(shí)現(xiàn)進(jìn)行各種修改和變換。
參照附圖結(jié)合實(shí)施例對(duì)閃速存儲(chǔ)器的映射控制方法進(jìn)行詳細(xì)描述,使用根據(jù)本發(fā)明的基于閃速存儲(chǔ)器的系統(tǒng)通過(guò)該方法訪問(wèn)閃速存儲(chǔ)器。
在描述根據(jù)本發(fā)明的閃速存儲(chǔ)器的映射控制方法中,因?yàn)槌跏蓟幚砼c現(xiàn)有的處理相同所以將省略對(duì)初始化處理的描述。
因此,將首先對(duì)通過(guò)根據(jù)本發(fā)明的映射控制方法的寫操作處理進(jìn)行描述,然后將對(duì)通過(guò)該映射控制方法的讀操作處理進(jìn)行描述。
1、寫操作處理圖5是示意性地示出根據(jù)本發(fā)明實(shí)施例的寫操作處理的流程圖。
如圖5所示,如果需要對(duì)具有特定邏輯扇區(qū)號(hào)的數(shù)據(jù)進(jìn)行寫操作,則處理器500首先基于指定的邏輯扇區(qū)號(hào)(以下,稱為“邏輯扇區(qū)”)來(lái)計(jì)算邏輯塊號(hào)(以下,稱為“邏輯塊”)。
然后,處理器500通過(guò)在初始化處理中獲得的映射表來(lái)搜索相應(yīng)于計(jì)算的邏輯塊的物理塊號(hào)(以下,稱為“物理塊”),并且從關(guān)于相關(guān)物理塊的塊狀態(tài)信息中確定是否需要合并操作(S1)。
即,如果由于在相關(guān)物理塊上的重復(fù)的寫操作導(dǎo)致在相關(guān)物理塊中不存在可用于寫操作的扇區(qū),則將確定是否需要交換或者智能合并操作以分配在其中數(shù)據(jù)將被寫入的新的塊。
如果確定需要合并操作,則根據(jù)相關(guān)物理塊的特征來(lái)執(zhí)行合并操作(S2)。
換句話說(shuō),如果寫在映射表中的相關(guān)物理塊的當(dāng)前狀態(tài)是塊M,則處理器500執(zhí)行用于進(jìn)行從塊M到塊S的轉(zhuǎn)移的交換合并操作。如果相關(guān)物理塊的當(dāng)前狀態(tài)是塊N,則處理器500執(zhí)行通過(guò)其新的塊F被分配的智能合并操作,僅塊F中的有效數(shù)據(jù)被檢測(cè)并寫入,并且塊F到塊M的轉(zhuǎn)移被進(jìn)行。
如果確定不需要合并操作或者合并操作被執(zhí)行,則處理器500通過(guò)映射表確定在其上需要寫操作的邏輯塊是否具有塊M或者塊N(S3)。
如果確定邏輯塊具有塊M或塊N,則處理器500搜索塊M或塊N以找到與在其上需要寫操作的數(shù)據(jù)的偏移量信息相匹配的扇區(qū),并且確定相關(guān)扇區(qū)是否為空(S4)。
如果確定相關(guān)扇區(qū)為空,則處理器500將在其上需要寫操作的數(shù)據(jù)寫入相關(guān)扇區(qū)中(S5)。如果確定相關(guān)扇區(qū)不為空,則處理器500確定相關(guān)塊是否為塊M(S6)。
如果確定相關(guān)塊是塊M,則進(jìn)行關(guān)于相關(guān)物理塊M的到塊N的塊狀態(tài)信息轉(zhuǎn)移(S7)。如果確定相關(guān)塊不是塊M或者進(jìn)行了從塊M到塊N的塊狀態(tài)信息轉(zhuǎn)移,則處理器500不匹配扇區(qū)偏移量而在塊N中選擇任意的扇區(qū)并且寫入數(shù)據(jù)(S8)。
如果確定邏輯塊不具有塊M或塊N,則由于沒(méi)有數(shù)據(jù)已被寫入相應(yīng)于計(jì)算的邏輯塊的物理塊或者已經(jīng)執(zhí)行了合并操作,所以處理器500分配在其中將寫入數(shù)據(jù)的新的塊F(S9)。
緊接著,處理器500進(jìn)行分配的塊F到塊M的轉(zhuǎn)移(S10),并且當(dāng)匹配扇區(qū)偏移量時(shí)將需要接受寫操作的數(shù)據(jù)寫入塊M中(S11)。
2、讀操作處理圖6是示意性地示出根據(jù)本發(fā)明實(shí)施例的讀操作處理的流程圖。
如圖6所示,如果需要對(duì)具有特定邏輯扇區(qū)號(hào)的數(shù)據(jù)進(jìn)行讀操作,則處理器500首先基于指定的邏輯扇區(qū)來(lái)計(jì)算邏輯塊。
緊接著,處理器500通過(guò)在初始化過(guò)程中獲得的映射表來(lái)搜索相應(yīng)于計(jì)算的邏輯塊的物理塊,并且確定在其上需要進(jìn)行讀操作的邏輯塊是否具有塊M或塊N(S20)。
如果確定該邏輯塊不具有塊M或塊N,則處理器500通過(guò)映射表來(lái)確定該邏輯塊是否具有塊S(21)。
如果確定該邏輯塊具有塊S,則處理器500搜索塊S以找到與在其上需要讀操作的數(shù)據(jù)的偏移量信息相匹配的扇區(qū),并且讀出寫在相關(guān)扇區(qū)中的數(shù)據(jù)(S22)。
如果確定該邏輯塊不具有塊S,則處理器500確定在其上需要讀操作的數(shù)據(jù)不存在于閃速存儲(chǔ)器100中并且產(chǎn)生讀錯(cuò)誤消息(S23)。
如果確定該邏輯塊具有塊M或N,則處理器500確定相應(yīng)于該邏輯塊的物理塊是否具有塊M(S24)。
如果確定相應(yīng)于該邏輯塊的物理塊不具有塊M,則處理器500確定相應(yīng)于在其上需要進(jìn)行讀操作的邏輯扇區(qū)的扇區(qū)是否存在于塊N中(S25)。
如果確定相關(guān)扇區(qū)存在于塊N中,則處理器500讀出寫在塊N的相關(guān)扇區(qū)中的數(shù)據(jù)(S26)。如果確定相關(guān)扇區(qū)不存在于塊N中,則處理器500確定相應(yīng)于該邏輯塊的物理塊是否具有塊S(S27)。
如果確定相應(yīng)于該邏輯塊的物理塊具有塊S,則處理器500讀出寫在相關(guān)扇區(qū)中的數(shù)據(jù)(S28)。如果確定相應(yīng)于該邏輯塊的物理塊不具有塊S,則處理器500確定在其上需要讀操作的數(shù)據(jù)不存在于閃速存儲(chǔ)器100中并且產(chǎn)生讀錯(cuò)誤消息(S29)。
如果確定相應(yīng)于邏輯塊的物理塊是塊M,則處理器500確定在其上需要進(jìn)行讀操作的扇區(qū)是否存在于塊M中(S30)。
如果確定相關(guān)扇區(qū)存在于塊M中,則處理器500從塊M的相關(guān)扇區(qū)中讀出數(shù)據(jù)(S31)。如果確定相關(guān)扇區(qū)不存在于塊M中,則處理器確定在其上需要進(jìn)行讀操作的邏輯塊是否具有塊S(S32)。
如果確定該邏輯塊不具有塊S,則處理器500確定在其上需要進(jìn)行讀操作的數(shù)據(jù)不存在于閃速存儲(chǔ)器100中,并且產(chǎn)生讀錯(cuò)誤消息(S33)。
如果確定邏輯塊具有塊S,則處理器500搜索塊S以找到與在其上需要進(jìn)行讀操作的數(shù)據(jù)的偏移量信息相匹配的扇區(qū),并且讀出寫在相關(guān)扇區(qū)中的數(shù)據(jù)(S34)。
結(jié)合附圖通過(guò)舉例對(duì)根據(jù)本發(fā)明實(shí)施例的閃速存儲(chǔ)器和閃速存儲(chǔ)器的映射控制設(shè)備和方法進(jìn)行詳細(xì)描述。
圖7是示意性地示出根據(jù)本發(fā)明實(shí)施例的使用映射表的寫操作處理的視圖。
在根據(jù)本發(fā)明的映射表中,一個(gè)邏輯塊相應(yīng)于可達(dá)兩個(gè)的物理塊,并且該兩個(gè)物理塊可以是塊S與塊M或塊N的組合。
如圖7所示,如果需要對(duì)在邏輯扇區(qū)9(LSN=9)中的數(shù)據(jù)進(jìn)行寫操作,則處理器500計(jì)算邏輯塊和邏輯塊9的偏移量值(LBN9/4=2;偏移量1)。
在這種情況下,處理器500搜索相應(yīng)于通過(guò)參考映射表計(jì)算的邏輯塊(LBN=2)的物理塊,以及該物理塊(a)的狀態(tài)。
緊接著,處理器500基于相關(guān)物理塊的塊狀態(tài)信息來(lái)確定是否需要合并操作。
如果相關(guān)物理塊是塊1并且具有寫入其是塊M的塊的所有扇區(qū)中的數(shù)據(jù),則處理器500進(jìn)行從塊M到塊S的轉(zhuǎn)移,并且執(zhí)行通過(guò)其用于寫數(shù)據(jù)中的塊F被分配的交換合并操作。
如果物理塊2(PBN=2)通過(guò)交換合并操作作為新的塊F被分配,則處理器500當(dāng)匹配偏移量時(shí)在新分配的物理塊2中寫入將對(duì)其進(jìn)行寫操作的數(shù)據(jù),并且在映射表中更新相應(yīng)于邏輯塊(LBN=2)的物理塊和狀態(tài)信息。
換句話說(shuō),處理器500在映射表中更新的邏輯塊(LBN=2)物理塊(PBN=1)的塊狀態(tài)從M到S(M→S),和更新新分配的物理塊(PBN=2)的塊狀態(tài)從F到M(F→M)。
例如,當(dāng)閃速存儲(chǔ)器100的一個(gè)塊包括如圖8A所示的四個(gè)扇區(qū)時(shí),如果需要按照扇區(qū)偏移量0、1、2、3和0的順序在特定邏輯扇區(qū)上進(jìn)行寫操作,則處理器500從特定邏輯扇區(qū)計(jì)算邏輯塊。
緊接著,處理器500搜索相應(yīng)于通過(guò)參考映射表計(jì)算的邏輯塊的物理塊,并且識(shí)別搜索到的物理塊的塊狀態(tài)信息以根據(jù)該塊狀態(tài)信息來(lái)確定在其上寫操作將被執(zhí)行的扇區(qū)。
如果相關(guān)物理塊是塊F,則處理器500根據(jù)偏移量信息來(lái)在相關(guān)物理塊中寫入數(shù)據(jù)。
具體地講,處理器500進(jìn)行從塊F到塊M的塊狀態(tài)信息的轉(zhuǎn)移,然后按照扇區(qū)偏移量0、1、2、3和0的順序在相關(guān)物理塊的每個(gè)扇區(qū)中寫入數(shù)據(jù)。
在這種情況下,因?yàn)橐粋€(gè)塊包括四個(gè)扇區(qū),所以如果數(shù)據(jù)被寫入扇區(qū)0、1、2和3中,則在相關(guān)塊中不存在可用于寫操作的可獲得的扇區(qū)。因此,處理器500通過(guò)交換合并操作來(lái)分配另外的塊F,并且進(jìn)行從塊M到塊S的塊狀態(tài)信息的轉(zhuǎn)移(1)。
緊接著,處理器500進(jìn)行從塊F到塊M的附加分配的塊F的塊狀態(tài)信息的轉(zhuǎn)移,然后在相關(guān)扇區(qū)中寫入具有為0的扇區(qū)偏移量的數(shù)據(jù)(2)。
如圖8B所示的另一個(gè)例子,處理器500在需要在特定邏輯扇區(qū)上按照扇區(qū)偏移量0、1、2、3、0、1、2、3和0的順序進(jìn)行寫操作的情況下從邏輯扇區(qū)計(jì)算邏輯塊。
緊接著,處理器500搜索相應(yīng)于通過(guò)參考映射表計(jì)算的邏輯塊的物理塊,并且識(shí)別搜索到的物理塊的塊狀態(tài)信息以根據(jù)該塊狀態(tài)信息來(lái)確定將在其上執(zhí)行寫操作的扇區(qū)。
如果相關(guān)物理塊是塊F,則處理器500根據(jù)偏移量信息來(lái)將數(shù)據(jù)寫入相關(guān)物理塊。
具體地講,處理器進(jìn)行從塊F到塊M的塊狀態(tài)信息轉(zhuǎn)移,然后按照扇區(qū)偏移量0、1、2、3、0、1、2、3和0的順序在相關(guān)物理塊的每個(gè)扇區(qū)中寫入數(shù)據(jù)。
在這種情況下,因?yàn)橐粋€(gè)塊包括四個(gè)扇區(qū),所以如果數(shù)據(jù)被寫入扇區(qū)0、1、2和3,則在相關(guān)塊中不存在可用于寫操作的扇區(qū)。因此,處理器500通過(guò)交換合并操作來(lái)分配另外的塊F,并且進(jìn)行從塊M到塊S的塊狀態(tài)信息轉(zhuǎn)移(1)。
緊接著,處理器500進(jìn)行從塊F到塊M的附加分配的塊F的塊狀態(tài)信息轉(zhuǎn)移,然后在附加分配的塊M中寫入具有為0、1、2和3的扇區(qū)偏移量的數(shù)據(jù)。
其后,因?yàn)樵谙嚓P(guān)塊中不存在可用于寫操作的扇區(qū)并且塊S中的數(shù)據(jù)不再有效,所以處理器500進(jìn)行從塊S到塊O的塊S的塊狀態(tài)信息轉(zhuǎn)移,通過(guò)交換合并操作分配另外的塊F,并且進(jìn)行從塊M到塊S的先前附加分配的塊的塊狀態(tài)信息轉(zhuǎn)移(2)。
然后,處理器500再次進(jìn)行從塊F到塊M的附加分配的塊F的塊狀態(tài)信息的轉(zhuǎn)移,然后在相關(guān)扇區(qū)中寫入具有為0的扇區(qū)偏移量的數(shù)據(jù)(3)。
如圖8C所示的另一例子,處理器500在需要在特定的邏輯扇區(qū)按照扇區(qū)偏移量0、0、0、0和1的順序進(jìn)行寫操作的情況下從邏輯扇區(qū)計(jì)算邏輯塊。
緊接著,處理器500搜索相應(yīng)于通過(guò)參考映射表計(jì)算的邏輯塊的物理塊,并且識(shí)別搜索到的物理塊的塊狀態(tài)信息以根據(jù)該塊狀態(tài)信息來(lái)確定在其上寫操作將被執(zhí)行的扇區(qū)。
如果相關(guān)的物理塊是塊F,則處理器500根據(jù)偏移量信息將數(shù)據(jù)寫入相關(guān)物理塊中。
即,處理器500進(jìn)行從塊F到塊M的塊狀態(tài)信息的轉(zhuǎn)移,然后按照扇區(qū)偏移量0、0、0、0和1的順序在相關(guān)物理塊的每個(gè)扇區(qū)中寫入數(shù)據(jù)。
在這種情況下,因?yàn)閿?shù)據(jù)已經(jīng)在執(zhí)行第二寫操作處理中被寫在物理塊的相關(guān)扇區(qū)中,所以處理器500進(jìn)行從塊M到塊N的物理塊的塊狀態(tài)信息的轉(zhuǎn)移,選擇任意扇區(qū)并且將需要對(duì)其進(jìn)行寫操作的數(shù)據(jù)寫入選擇的扇區(qū)中。
以這種方式,如果在其中扇區(qū)偏移量不匹配的寫操作被重復(fù)執(zhí)行,并因此在相關(guān)物理塊中不存在可用于寫操作的扇區(qū),則處理器500通過(guò)交換合并操作來(lái)分配另外的塊F并且進(jìn)行從塊N到塊O的轉(zhuǎn)移(1)。
緊接著,處理器500進(jìn)行從塊F到塊M的附加分配的塊F的塊狀態(tài)信息轉(zhuǎn)移,在寫入塊N的數(shù)據(jù)之中僅僅檢測(cè)有效的數(shù)據(jù),并且將它們寫入塊M的相關(guān)扇區(qū)中。
換句話說(shuō),在寫入塊O中具有為0的扇區(qū)偏移量的數(shù)據(jù)之中僅僅最后寫入的數(shù)據(jù)段被讀取,然后被寫入附加分配的塊M的扇區(qū)0中。此外,具有為1的扇區(qū)偏移量的數(shù)據(jù)被寫入相關(guān)扇區(qū)(2)。
根據(jù)本發(fā)明,在執(zhí)行所需的用于閃速存儲(chǔ)器中的邏輯扇區(qū)的寫/讀操作的過(guò)程中,通過(guò)預(yù)定的狀態(tài)轉(zhuǎn)移算法來(lái)確定在其上相關(guān)操作將被執(zhí)行的扇區(qū),從而最小化所需在特定邏輯塊上的寫操作的擦除操作,并且最大化閃速存儲(chǔ)器系統(tǒng)性能。
盡管本發(fā)明是結(jié)合附圖中所示的實(shí)施例來(lái)詳細(xì)描述的,但它們僅僅是示例性的。本領(lǐng)域的技術(shù)人員應(yīng)該理解,在不脫離本發(fā)明的精神和范圍的情況下,可以對(duì)其進(jìn)行各種修改和等同物。因此,本發(fā)明的范圍應(yīng)由所附權(quán)利要求限定。
權(quán)利要求
1.一種閃速存儲(chǔ)器,包括被分成多個(gè)塊的區(qū)域,每個(gè)塊包括預(yù)定數(shù)目的扇區(qū),其中,閃速存儲(chǔ)器包含表示每個(gè)塊的狀態(tài)并且被用于確定在其上邏輯操作將被執(zhí)行的特定扇區(qū)的塊狀態(tài)信息。
2.如權(quán)利要求1所述的閃速存儲(chǔ)器,其中,根據(jù)預(yù)定狀態(tài)轉(zhuǎn)移算法來(lái)確定塊狀態(tài)信息。
3.如權(quán)利要求2所述的閃速存儲(chǔ)器,其中,表示的狀態(tài)至少是下面中的一個(gè)第一狀態(tài),其中,數(shù)據(jù)不被寫入該塊;第二狀態(tài),其中,當(dāng)匹配扇區(qū)偏移量時(shí),預(yù)定的數(shù)據(jù)被寫入第一狀態(tài);第三狀態(tài),其中,不匹配扇區(qū)偏移量,預(yù)定的數(shù)據(jù)就被寫入第一狀態(tài);第四狀態(tài),其中,第二狀態(tài)中的數(shù)據(jù)被寫入整個(gè)塊;和第五狀態(tài),其中,第三狀態(tài)中或第四狀態(tài)中的有效數(shù)據(jù)被傳送到新的塊,因此寫入先前塊中的數(shù)據(jù)不再有效。
4.如權(quán)利要求3所述的閃速存儲(chǔ)器,其中,狀態(tài)轉(zhuǎn)移算法執(zhí)行交換合并操作,通過(guò)其第一狀態(tài)中的另外的塊被分配以執(zhí)行第四狀態(tài)中最近要求的寫操作。
5.如權(quán)利要求3所述的閃速存儲(chǔ)器,其中,如果相關(guān)塊的所有的扇區(qū)被用于第三狀態(tài),則狀態(tài)轉(zhuǎn)移算法執(zhí)行通過(guò)其第一狀態(tài)中的另外的塊被分配以執(zhí)行最近要求的寫操作的智能合并操作,并且在寫入先前塊中的數(shù)據(jù)之中僅僅有效的數(shù)據(jù)被檢測(cè)然后被寫入分配的附加塊中。
6.如權(quán)利要求5所述的閃速存儲(chǔ)器,其中,如果有效的數(shù)據(jù)被寫入,則智能合并操作通過(guò)進(jìn)行從第一狀態(tài)到第二狀態(tài)的分配的塊的塊狀態(tài)信息的轉(zhuǎn)移和從第三狀態(tài)到第五狀態(tài)的先前塊的塊狀態(tài)信息的轉(zhuǎn)移來(lái)執(zhí)行。
7.如權(quán)利要求3所述的閃速存儲(chǔ)器,其中,擦除操作進(jìn)行從第五狀態(tài)到第一狀態(tài)的轉(zhuǎn)移。
8.如權(quán)利要求1所述的閃速存儲(chǔ)器,其中,塊狀態(tài)信息被寫入塊或?qū)懹嘘P(guān)于該閃速存儲(chǔ)器的信息的元塊中。
9.一種閃速存儲(chǔ)器的映射控制設(shè)備,包括閃速存儲(chǔ)器,包括被分為多個(gè)塊的區(qū)域并且包含表示包括預(yù)定數(shù)目扇區(qū)的每個(gè)塊的狀態(tài)的塊狀態(tài)信息;和處理器,當(dāng)需要對(duì)閃速存儲(chǔ)器的邏輯操作時(shí),可操作以基于塊狀態(tài)信息來(lái)確定在其上預(yù)定邏輯操作將被執(zhí)行的扇區(qū),并且根據(jù)預(yù)定狀態(tài)轉(zhuǎn)移算法來(lái)更新塊狀態(tài)信息。
10.如權(quán)利要求9所述的設(shè)備,其中,塊狀態(tài)信息被寫入塊或?qū)懹嘘P(guān)于閃速存儲(chǔ)器信息的元塊中。
11.如權(quán)利要求9所述的設(shè)備,其中,處理器將預(yù)定的數(shù)據(jù)寫入根據(jù)邏輯操作確定的扇區(qū)中或從該扇區(qū)讀取數(shù)據(jù),并且基于更新的塊狀態(tài)信息通過(guò)擦除操作來(lái)擦除塊中的非有效數(shù)據(jù)。
12.如權(quán)利要求9所述的設(shè)備,其中,特殊塊的狀態(tài)至少包括下面中的一個(gè)第一狀態(tài),其中,數(shù)據(jù)不寫入該塊中;第二狀態(tài),其中,當(dāng)匹配扇區(qū)偏移量時(shí),預(yù)定的數(shù)據(jù)被寫入第一狀態(tài);第三狀態(tài),其中,不匹配扇區(qū)偏移量,預(yù)定的數(shù)據(jù)就被寫入第一狀態(tài);第四狀態(tài),其中,第二狀態(tài)中的數(shù)據(jù)被寫入整個(gè)塊;和第五狀態(tài),其中,第三狀態(tài)中或第四狀態(tài)中的有效數(shù)據(jù)被傳送到新的塊,因此寫入先前塊中的數(shù)據(jù)不再有效。
13.如權(quán)利要求12所述的設(shè)備,其中,狀態(tài)轉(zhuǎn)移算法執(zhí)行通過(guò)其第一狀態(tài)中的另外的塊被分配以執(zhí)行在第四狀態(tài)中最近要求的寫操作的交換合并操作。
14.如權(quán)利要求12所述的設(shè)備,其中,如果相關(guān)塊的所有扇區(qū)被用于第三狀態(tài),則狀態(tài)轉(zhuǎn)移算法執(zhí)行通過(guò)其第一狀態(tài)中的另外的塊被分配以執(zhí)行新近要求的寫操作的智能合并操作,并且在寫入先前塊中的數(shù)據(jù)之間僅僅有效的數(shù)據(jù)被檢測(cè)并且然后被寫入分配的塊中。
15.如權(quán)利要求14所述的設(shè)備,其中,智能合并操作通過(guò)進(jìn)行從第一狀態(tài)到第二狀態(tài)的分配的塊的塊狀態(tài)信息的轉(zhuǎn)移和從第三狀態(tài)到第五狀態(tài)的先前塊的塊狀態(tài)信息的轉(zhuǎn)移來(lái)執(zhí)行。
16.如權(quán)利要求12所述的設(shè)備,其中,擦除操作進(jìn)行第五狀態(tài)到第一狀態(tài)的轉(zhuǎn)移。
17.一種閃速存儲(chǔ)器的映射控制方法,包括如果需要對(duì)閃速存儲(chǔ)器的特定邏輯扇區(qū)執(zhí)行預(yù)定的邏輯操作,則通過(guò)參考映射表來(lái)確定相應(yīng)于該邏輯扇區(qū)的第一物理塊;基于第一物理塊的塊狀態(tài)信息,確定在其上邏輯操作將被執(zhí)行的扇區(qū);和訪問(wèn)確定的扇區(qū)以執(zhí)行邏輯操作。
18.如權(quán)利要求17所述的方法,還包括搜索相應(yīng)于邏輯塊的第二物理塊;從該邏輯扇區(qū)計(jì)算第二邏輯塊;和通過(guò)映射表搜索相應(yīng)于計(jì)算出的第二邏輯塊的第三物理塊。
19.如權(quán)利要求17所述的方法,其中,確定在其上邏輯操作將被執(zhí)行的扇區(qū)的步驟包括基于第一物理塊的塊狀態(tài)信息,選擇具有匹配的扇區(qū)偏移量的扇區(qū)。
20.如權(quán)利要求17所述的方法,其中,確定在其上邏輯操作將被執(zhí)行的扇區(qū)的步驟包括基于第一物理塊的塊狀態(tài)信息,選擇具有不匹配的扇區(qū)偏移量的扇區(qū)。
21.如權(quán)利要求17所述的方法,其中,訪問(wèn)確定的扇區(qū)以執(zhí)行邏輯操作的步驟包括通過(guò)預(yù)定的狀態(tài)轉(zhuǎn)移算法確定由邏輯操作改變的第一物理塊的塊狀態(tài)信息;和基于確定的塊狀態(tài)信息來(lái)更新第一物理塊的塊狀態(tài)信息。
22.如權(quán)利要求21所述的方法,其中,狀態(tài)至少包括下面中的一個(gè)第一狀態(tài),其中,數(shù)據(jù)不被寫入第一塊中;第二狀態(tài),其中,當(dāng)匹配扇區(qū)偏移量時(shí),預(yù)定的數(shù)據(jù)被寫入第一狀態(tài);第三狀態(tài),其中,不匹配扇區(qū)偏移量,預(yù)定的數(shù)據(jù)就被寫入第一狀態(tài);第四狀態(tài),其中,第二狀態(tài)中的數(shù)據(jù)被寫入整個(gè)第一物理塊;和第五狀態(tài),其中,第三狀態(tài)中或第四狀態(tài)中的有效數(shù)據(jù)被傳送到新的塊中,并因此寫入第一物理塊中的數(shù)據(jù)不再有效。
23.如權(quán)利要求22所述的方法,其中,狀態(tài)轉(zhuǎn)移算法執(zhí)行通過(guò)其第一狀態(tài)中的另外的塊被分配以執(zhí)行在第四狀態(tài)中最近要求的寫操作的交換合并操作。
24.如權(quán)利要求22所述的方法,其中,如果相關(guān)塊的所有扇區(qū)被用于第三狀態(tài)中,則狀態(tài)轉(zhuǎn)移算法執(zhí)行通過(guò)其在第一狀態(tài)中的另外的塊被分配以執(zhí)行最近要求的寫操作的智能合并操作,并在寫入第一物理塊中的數(shù)據(jù)之中僅僅有效的數(shù)據(jù)被檢測(cè),并且然后被寫入分配的塊中。
25.如權(quán)利要求24所述的方法,其中,智能合并操作通過(guò)進(jìn)行從第一狀態(tài)到第二狀態(tài)的分配的塊的塊狀態(tài)信息的轉(zhuǎn)移和從第三狀態(tài)到第五狀態(tài)的第一物理塊的塊狀態(tài)信息的轉(zhuǎn)移來(lái)執(zhí)行。
26.如權(quán)利要求22所述的方法,其中,擦除操作進(jìn)行第五狀態(tài)到第一狀態(tài)的轉(zhuǎn)移。
27.如權(quán)利要求17所述的方法,其中,塊狀態(tài)信息被寫入第一物理塊或?qū)懹嘘P(guān)于該閃速存儲(chǔ)器的信息的元塊中。
全文摘要
一種用于有效訪問(wèn)閃速存儲(chǔ)器的映射算法,其中,通過(guò)由處理器需要的邏輯操作而改變的塊狀態(tài)信息,根據(jù)預(yù)定的狀態(tài)轉(zhuǎn)移算法被寫入閃速存儲(chǔ)器中,并且當(dāng)讀/寫操作時(shí)參考被改變的信息。一種根據(jù)本發(fā)明的閃速存儲(chǔ)器的映射控制設(shè)備包括閃速存儲(chǔ)器,具有以塊為基礎(chǔ)劃分的區(qū)域并且包含表示包括預(yù)定數(shù)目扇區(qū)的每個(gè)塊的狀態(tài)的塊狀態(tài)信息;和處理器,用于當(dāng)需要對(duì)閃速存儲(chǔ)器的邏輯操作時(shí),基于塊狀態(tài)信息確定在其上預(yù)定的邏輯操作將被執(zhí)行的扇區(qū),并且根據(jù)預(yù)定狀態(tài)轉(zhuǎn)移算法來(lái)更新塊狀態(tài)信息。
文檔編號(hào)G06F12/16GK1627271SQ200410098408
公開日2005年6月15日 申請(qǐng)日期2004年12月10日 優(yōu)先權(quán)日2003年12月10日
發(fā)明者鄭泰善, 樸亨碩, 鄭明珍 申請(qǐng)人:三星電子株式會(huì)社
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
陇川县| 临夏市| 衡东县| 陆川县| 玉门市| 闵行区| 喀什市| 竹北市| 丰城市| 阳泉市| 留坝县| 沙雅县| 秭归县| 本溪市| 绵竹市| 紫阳县| 泸定县| 兴山县| 登封市| 肇州县| 靖边县| 浠水县| 德钦县| 上蔡县| 天镇县| 大埔县| 齐河县| 山东省| 黑河市| 奉新县| 鹤山市| 鹤岗市| 涪陵区| 邻水| 凉山| 章丘市| 宜州市| 赣州市| 吴忠市| 漳浦县| 海晏县|