[發(fā)明專利]一種閃存數(shù)據(jù)存儲方法在審
| 申請?zhí)枺?/td> | 201210071112.7 | 申請日: | 2012-03-16 |
| 公開(公告)號: | CN103309619A | 公開(公告)日: | 2013-09-18 |
| 發(fā)明(設(shè)計)人: | 宋政斌 | 申請(專利權(quán))人: | 國民技術(shù)股份有限公司 |
| 主分類號: | G06F3/06 | 分類號: | G06F3/06;G06F13/16 |
| 代理公司: | 深圳鼎合誠知識產(chǎn)權(quán)代理有限公司 44281 | 代理人: | 薛祥輝 |
| 地址: | 518057 廣東省深圳市南山區(qū)*** | 國省代碼: | 廣東;44 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 閃存 數(shù)據(jù) 存儲 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)存儲技術(shù)領(lǐng)域,具體涉及NAND閃存數(shù)據(jù)存儲技術(shù)領(lǐng)域。
背景技術(shù)
NAND?FLASH(資料存儲型閃存)由于具有容量高、價格低的優(yōu)勢,在電子產(chǎn)品中有著極其廣泛的應用。如圖1所示,在NAND?FLASH的架構(gòu)中,有塊(Block)和頁(Page)兩種數(shù)據(jù)管理單元,其中塊由一定數(shù)量的頁組成(例如:64頁、128頁、256頁等)。NAND?FLASH的讀取和編程操作,是以頁(Page)為單位進行,而擦除操作,則是以塊(Block)為單位進行。而且NAND?FLASH必須要先擦除,才能被寫入數(shù)據(jù)(編程)。這就產(chǎn)生了一個問題,若是改寫某一個頁(Page)上存儲的數(shù)據(jù),則需要對該頁(Page)所位于的塊(Block)進行擦除操作;而在塊擦除時,不僅會將該頁的原有數(shù)據(jù)清空,而且還會清除掉該塊(Block)內(nèi)其它頁(Page)上的有效數(shù)據(jù)。
常規(guī)的NAND?FLASH存儲管理的技術(shù)方案,是建一個塊(Block)映射表,用于映射線性邏輯塊地址到真實的物理塊地址;并預先保留一定數(shù)量的備用塊;當然,還建專門的表結(jié)構(gòu)對NAND?FLASH中的壞塊進行管理。當發(fā)生需要改寫某頁數(shù)據(jù)時,則取出一個預先擦除好的備用塊,將新數(shù)據(jù)寫到備用塊的對應頁位置;然后,將原數(shù)據(jù)塊中其它含有效數(shù)據(jù)的頁(Page)中的數(shù)據(jù)讀出;再寫入到備用塊的相應的頁(Page)位置;最后,再將該備用塊(Block)填入塊映射表中原數(shù)據(jù)塊對應的位置,即取代原數(shù)據(jù)塊,而原來的數(shù)據(jù)塊則轉(zhuǎn)為備用塊;這樣才完成一次數(shù)據(jù)改寫的操作。這一數(shù)據(jù)轉(zhuǎn)移動作俗稱為“塊搬家”。
正常情況下,當往NAND?FLASH寫入一頁數(shù)據(jù)時,僅需要花費1個頁(Page)的數(shù)據(jù)傳輸及其編程的時間;而當需要改寫某頁數(shù)據(jù),即“塊搬家”發(fā)生時,假設(shè)一個塊(Block)包含N個頁(Page),花費的時間最長可能為:N個頁的寫數(shù)據(jù)傳輸時間和編程時間,再加上(N-1)個頁的讀數(shù)據(jù)傳輸時間和頁讀取的等待時間;目前的主流NAND?FLASH,其N值通常為128,或者256,也即,若往NAND?FLASH寫數(shù)據(jù)如果發(fā)生“塊搬家”時,其花費的時間可能為正常寫數(shù)據(jù)時間的數(shù)百倍。
對以NAND?FLASH為存儲介質(zhì)(如U盤,SD卡等)的存儲設(shè)備進行文件寫入操作時,若是對大文件操作,其“塊搬家”發(fā)生的次數(shù)較少,表現(xiàn)為寫入速度還較快;而對小文件操作時,特別是對一批小文件進行操作,“塊搬家”發(fā)生會非常頻繁,表現(xiàn)為寫入速度極慢。
另外,站在主機系統(tǒng)底層驅(qū)動的角度看,只要“塊搬家”發(fā)生,均會導致主機往NAND?FLASH寫入數(shù)據(jù)時時間超長,有可能會超過主機系統(tǒng)的忍耐限度,從而導致某主機系統(tǒng)對該NAND?FLASH存儲設(shè)備操作不穩(wěn)定。
發(fā)明內(nèi)容
本發(fā)明解決的技術(shù)問題是提出一種閃存數(shù)據(jù)存儲方法,實現(xiàn)了在數(shù)據(jù)存儲時將NAND?FLASH基于頁(Page)的寫入(編程)和基于塊(Block)的擦除完全分隔開。
本發(fā)明提出的閃存數(shù)據(jù)存儲方法,包括以下寫數(shù)據(jù)處理過程:確定待寫入數(shù)據(jù)的原頁地址,并判斷所述原頁是否為空白頁;如果為空白頁,則向所述原頁地址寫入數(shù)據(jù),完成寫數(shù)據(jù)處理;否則,確定一個為空白頁的替代頁,將所述替代頁與所述原頁的映射關(guān)系寫入所述原頁的冗余區(qū),并向所述替代頁地址寫入數(shù)據(jù),完成寫數(shù)據(jù)處理。
進一步的,在所述確定待寫入數(shù)據(jù)的原頁地址處理之前還包括:建立用于記錄所述閃存各頁狀態(tài)的頁狀態(tài)表。
進一步的,所述判斷所述原頁是否為空白頁的處理為:通過查詢所述頁狀態(tài)表判斷所述原頁是否為空白頁。
進一步的,所述確定一個為空白頁的替代頁的處理為:通過查找所述頁狀態(tài)表,選定一個空白頁,將空白頁確定為替代頁。
進一步的,所述建立用于記錄所述閃存各頁狀態(tài)的頁狀態(tài)表為:建立由分散存儲的多個子表構(gòu)成的頁狀態(tài)表,所述每個子表記錄至少一個頁的狀態(tài)。
進一步的,所述的頁狀態(tài)表中標識的頁狀態(tài)選擇項包括:有效數(shù)據(jù)頁、無效數(shù)據(jù)頁、空白頁和損壞頁。
進一步的,所述將所述替代頁與所述原頁的映射關(guān)系寫入所述原頁的冗余區(qū)為:將所述替代頁的地址寫入所述原頁的冗余區(qū)。
進一步的,所述向原頁地址寫入數(shù)據(jù)后還包括以下處理過程:在頁狀態(tài)表中將原頁的頁狀態(tài)選擇項設(shè)置為有效數(shù)據(jù)頁。
進一步的,所述向所述替代頁地址寫入數(shù)據(jù)后還包括以下處理過程:在頁狀態(tài)表中將替代頁的頁狀態(tài)選擇項設(shè)置為有效數(shù)據(jù)頁,將原頁的頁狀態(tài)選擇項設(shè)置為無效數(shù)據(jù)頁。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于國民技術(shù)股份有限公司,未經(jīng)國民技術(shù)股份有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210071112.7/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字數(shù)據(jù)處理
G06F3-00 用于將所要處理的數(shù)據(jù)轉(zhuǎn)變成為計算機能夠處理的形式的輸入裝置;用于將數(shù)據(jù)從處理機傳送到輸出設(shè)備的輸出裝置,例如,接口裝置
G06F3-01 .用于用戶和計算機之間交互的輸入裝置或輸入和輸出組合裝置
G06F3-05 .在規(guī)定的時間間隔上,利用模擬量取樣的數(shù)字輸入
G06F3-06 .來自記錄載體的數(shù)字輸入,或者到記錄載體上去的數(shù)字輸出
G06F3-09 .到打字機上去的數(shù)字輸出
G06F3-12 .到打印裝置上去的數(shù)字輸出
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





