999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

數據記錄器中NAND Flash的壞塊管理方法*

2016-09-09 09:21:31郁聰沖
艦船電子工程 2016年8期
關鍵詞:管理

邢 旺 郁聰沖

(92941部隊95分隊 葫蘆島 125000)

XING Wang YU Congchong

(Unit 95, No.92941 Trops of PLA, Huludao 125000)

?

數據記錄器中NAND Flash的壞塊管理方法*

邢旺郁聰沖

(92941部隊95分隊葫蘆島125000)

NAND Flash作為數據記錄器中的數據存儲芯片,其在應用時容易受到壞塊問題的影響。大量的應用表明壞塊能夠降低存儲芯片的穩定性,造成存儲數據的錯誤,因此為了保證存儲數據正確,對NAND Flash芯片中壞塊的管理具有重要意義。介紹了NAND Flash的物理結構,歸納了壞塊跳過法和動態壞塊管理法,為NAND Flash的壞塊管理提供了依據。

NAND Flash; 壞塊識別; 壞塊替換; 壞塊跳過; 動態壞塊管理

XING WangYU Congchong

(Unit 95, No.92941 Trops of PLA, Huludao125000)

Class NumberTN401

1 引言

隨著電子技術的飛速發展,嵌入式系統已被廣泛應用于工業生產與軍事國防領域。基于嵌入式系統研發的數據記錄器能夠接收并存儲工業設備的健康狀態數據,為設備的安全運行提供保障;在武器裝備試驗中,數據記錄器可以存儲裝備運行期間的各種試驗參數,試驗結束后可通過導出試驗數據分析裝備故障、測定航行路線等,為事后鑒定提供依據,尤其在飛行器的飛行試驗與水下探測器的航行試驗中,若數據記錄器不能正常工作,不僅沒有依據評定裝備的性能,而且會造成不可估量的損失。現階段,Flash閃存已成為各類便攜型數字設備的存儲介質,由于NAND Flash芯片具有存儲速度快、容量大、可擦除次數多等優勢,其在數據記錄器中應用最為廣泛。但是NAND Flash在出廠時便會存在穩定性無法保證的壞塊,這是由于技術工藝問題造成的,并且無法克服,同時,在使用過程中,隨著擦寫次數的增多,也會出現壞塊,這些壞塊不允許進行擦除和寫入操作,所以,壞塊管理在NAND Flash中具有相當重要的作用[1~3]。

針對數據記錄器中NAND Flash存在壞塊的情況,本文主要研究NAND Flash的工作原理和芯片中壞塊的管理方法,以滿足不同的需求,為數據記錄器中NAND Flash存儲數據的正確性和芯片工作的穩定性提供可靠的保證。

2 NAND Flash的物理結構

現在很多公司都生產NAND Flash芯片,以三星公司生產的K9K8G08U0A芯片為例[4],其物理存儲單元的陣列組織結構如圖1所示,該芯片的存儲結構包含8192個塊,每塊的存儲空間大小為(128K+4K)字節。每一塊又含有64頁,每頁的存儲空間大小為(2K+64)字節,其中,2K為用戶的數據存儲區,最后64字節構成的區域為冗余區域,數據在讀寫時候相對容易出錯,為了保證數據的正確性,必須要有對應的檢測和糾錯方法,而額外的錯誤校驗等需要空間,所以設計了多余的區域,用于放置數據的校驗值或壞塊標記等信息[5]。

圖1 K9K8G08U0A的物理存儲單元的陣列組織結

頁是NAND Flash的寫入操作的基本單位,NAND Flash芯片中都有一個對應的區域,專門用于存放將要寫入到物理存儲單元中去的或者剛從存儲單元中讀取出來的一頁數據,這個數據緩存區稱為頁寄存器,只有將數據寫到了頁寄存器中,等待編程確認命令到來時,實際的編程寫入動作才開始。塊則是NAND Flash擦除操作的最小單位,在發送一個擦除命令后,一次性地將一個塊全部擦除為1,也就是0xFF。NAND Flash的數據流向步驟如圖2所示。

圖2 NAND Flash的數據流向

3 NAND Flash的壞塊管理

3.1壞塊識別和存儲

NAND Flash的出廠壞塊包含一個或更多個不可用的bit,生產NAND Flash的廠家通常會保證芯片的第0塊是好塊,并且一般相對比較耐用,做此保證的主要原因是很多種NAND Flash的壞塊管理方法中,就是將壞塊信息存儲在第0塊內。壞塊的標記保存在冗余區的固定位置,對于現在常見的頁大小為2K的NAND Flash,壞塊標記位于塊中第一頁起始位置的第1個字節,如果該字節不是0xFF,就說明該塊是壞塊。在第一次啟動時,NAND Flash通常會進行壞塊掃描和建立壞塊信息表的過程,該過程的流程圖如圖3所示。

圖3 創建壞塊信息表的流程

NAND Flash在使用過程中出現的壞塊分為兩種:1)當擦除或者編程操作失敗時,會產生第一種使用壞塊。具體過程就是在擦除和編程操作過后讀狀態寄存器,如果失敗就將該塊標記為壞塊。2)讀某塊內的某頁數據時,如果數據出錯位數超出了ECC(Error Correcting Code)校驗能力,則產生第二種使用壞塊。具體過程就是在讀操作后,如果ECC不能校驗回原數據就標記該塊為壞塊[6]。

3.2壞塊的替換

通常情況下,創建壞塊表的同時會創建一個壞塊和好塊的對應關系表并保存在NAND Flash的第0塊中。在存儲數據時,首先讀出壞塊表中的信息,然后根據壞塊表中的信息跳過固有壞塊進行數據的存儲;同樣,在NAND Flash使用過程產生壞塊時,通過壞塊和好塊的對應關系表,把壞塊中的數據轉存到與之對應的好塊中,同時跳過此壞塊,將此壞塊進行標記并更新無效塊表的信息[7]。壞塊替換過程如圖4所示。

圖4 壞塊替換過程

在編程或者寫入過程中,如果發現塊A的第n頁出現錯誤時,首先復制第A塊中第1頁到第(n-1)頁的數據,同時轉存到好塊B的相同位置,然后將緩存中塊A第n頁的數據復制到塊B的第n頁,并在塊B中繼續存儲數據,完成壞塊的替換。

3.3壞塊跳過法

壞塊跳過法的思想在于運行前首先建立壞塊信息標記表,如果在運行中經查詢某塊是壞塊時,則跳過該塊,對下一個塊地址進行操作。如果在NAND Flash使用過程中突發出現壞塊,也將該壞塊的數據存儲在下一個好塊里。這種方法實現簡單,查詢標記和壞塊替換速度快,一般適用于高速順序的場合[8~9]。其具體過程為:上電時先將第0塊的壞塊表信息讀出并存入相應的寄存器中,在寫數據之前調用檢測好塊地址函數,將檢測到的好塊地址存到寄存器中,讀取寄存器中好塊地址進行寫操作的同時繼續調用檢測好塊地址函數,如果檢測到下一塊是好塊就直接存到寄存器中,如果是下一塊是壞塊則將塊加一,并再次調用檢測好塊地址函數,直到檢測到好塊并將其地址存到寄存器中,這樣循環下去,不斷更新和讀出寄存器中的內容,便可以成功跳過壞塊。壞塊跳過法的時序仿真圖如圖5所示。

圖5 壞塊跳過法時序仿真圖

以K9K8G08U0A芯片為例,該芯片的每一塊含有64頁,將地址加64,即16進制的0040,就可以實現塊數增加1,即跳過一塊。圖5中clock為時鐘信號,bad_block為壞塊信號,addr為起始地址,addr_add為地址的增加值。當輸入的起始地址為16進制數1100時,若在地址1102處檢測到壞塊,則發出bad_block壞塊信號,同時地址的增加值addr_add由0000變為0040,操作地址也由1101加上0040變為1141,則成功跳過壞塊,對下一塊進行操作。

3.4動態壞塊管理法

動態壞塊管理法的思想在于當NAND Flash存儲空間出現壞塊時,采取動態壞塊管理法標記壞塊,將壞塊放入映射表的壞塊區,從替換塊區選擇一個好塊,代替壞塊進行操作,同時,更新邏輯-物理塊地址映射表。在對已用塊進行寫入操作時,改為對交換塊進行操作,有利于NAND Flash存儲空間的管理及邏輯-物理地址映射表的更新[10~11]。

動態壞塊管理法首先將NAND Flash整個的存儲空間劃分成若干個組,每個組包含相同數量的塊,同時為每個組建立一張邏輯-物理塊地址映射表,并將映射表劃分為四個區:1)數據存儲區:用于存儲數據、系統應用程序等;2)交換塊區:所有對已用塊的寫入操作均改為對交換塊的寫入;3)替換塊區:替換塊用于當寫入塊是一個壞塊時,可以從替換塊中找一個好塊,代替壞塊進行編程操作;4)壞塊區:壞塊區用于存放初始上電掃描發現的壞塊以及使用過程中出現的壞塊。在映射過程中將壞塊放在映射表的最后。每一組的邏輯-物理塊地址映射空間劃分如圖6所示。

圖6 映射空間的劃分

動態壞塊管理法的關鍵環節在于更新邏輯-物理塊地址映射表,需要更新邏輯-物理地址映射表的狀況有兩種:1)當對某一塊進行編程、擦除操作失敗時,則認定該塊為壞塊,此時需要從替換塊區選擇一個好塊,將壞塊的邏輯地址賦給替換塊區選定的好塊,并對替換塊進行寫入數據的操作,同時將壞塊和替換塊進行標記,并將壞塊的邏輯地址對應到地址映射表的壞塊區;2)若沒有出現壞塊,而是將要進行編程寫入操作的塊是已用塊時,便要從交換塊區選擇一個塊代替已用塊進行操作,將交換塊的地址映射到數據塊中,并擦除此已用塊,將其作為新的交換塊進行使用。每次完成對一個塊的寫入操作后,要更新映射表,實現動態的映射地址更新。最后,當對若干個塊構成的某個組全部完成操作后,系統自動更新NAND Flash存儲的地址映射表。

4 結語

針對目前NAND Flash大量應用于數據記錄器的現狀以及NAND Flash存在壞塊問題的限制,本文介紹了壞塊跳過法以及動態壞塊管理法。壞塊跳過法實現簡單且完成速度快,適用于高速場合,而動態壞塊管理法能夠實現邏輯-物理地址映射表的實時更新,同時引入了交換塊的概念,在頻繁進行寫入擦除操作時能及時找到替換塊。通過使用合適的壞塊管理方法,可以對NAND Flash中

產生的壞塊進行有效管理,提高了存儲系統的穩定性,為存儲數據的準確性提供了可靠保障。

[1] 薛瑤.某飛行器數據記錄器的優化設計[D].太原:中北大學,2009:8-10.

[2] 李士照.某水下用數據記錄器的設計及實現[D].太原:中北大學,2013:1-6.

[3] 王安,錢曉亮,樊文俠.基于ARM的USB接口數據記錄器的設計[J].計算機應用,2007,27(1):254-256.

[4] Samsung. K9K8G08U0A [EB/OL]. http://www.samsung.com/Products/Semiconductor, 2006-1-10.

[5] 寧飛.大容量存儲中NAND Flash壞塊的管理方法[J].電子測試,2012(12):64-68.

[6] 周軍.NAND Flash的壞塊管理設計[J].單片機與嵌入式系統應用,2010(9):15-20.

[7] 彭兵,步凱,徐欣.NAND Flash壞塊管理研究[J].微處理器,2009(4):113-115.

[8] 舒文麗,吳云峰.NAND Flash存儲的壞塊管理方法[J].電子器件,2011,34(5):580-583.

[9] 張勝勇,高世杰,吳志勇,等.基于FPGA的NAND Flash壞塊處理方法[J].計算機工程,2010,36(6):239-243.

[10] 韓勇豪,王少云.一種NAND Flash動態壞塊管理算法的設計與實現[J].信息化研究,2011,37(3):23-26.

[11] 張鵬.NAND Flash壞塊管理算法研究與實現[D].哈爾濱:哈爾濱工業大學,2015:8-11.

Bad Block Management Methods of NAND Flash Memory in Data Recorder*

NAND Flash is used as memory chips of the data recorder. NAND Flash is easily affected by the bad block problem. Bad block could be able to reduce the stability of the memory chips and cause data errors. Therefore, bad block management of the NAND Flash is important. The physical structure of NAND Flash is introduced. Bad block skip method and dynamic bad block management method are summarized. Theoretic analysis can verify the truth of the bad block management methods of NAND Flash.

NAND Flash, bad block identification, bad block replacement, bad block skip, dynamic bad block management

2016年2月9日,

2016年3月21日

邢旺,男,碩士研究生,助理工程師,研究方向:衛星導航。郁聰沖,男,碩士研究生,助理工程師,研究方向:衛星導航。

TN401

10.3969/j.issn.1672-9730.2016.08.032

猜你喜歡
管理
棗前期管理再好,后期管不好,前功盡棄
今日農業(2022年15期)2022-09-20 06:56:20
《水利建設與管理》征訂啟事
聆聽兩會
——關注自然資源管理
2020年《水利建設與管理》征稿函
運行管理
管理就是溝通
中國制筆(2019年1期)2019-08-28 10:07:26
加強土木工程造價的控制與管理
如何加強土木工程造價的控制與管理
解秘眼健康管理
“這下管理創新了!等7則
雜文月刊(2016年1期)2016-02-11 10:35:51
主站蜘蛛池模板: 亚洲综合九九| 亚洲人成日本在线观看| 中文字幕永久视频| 色欲不卡无码一区二区| 成人精品午夜福利在线播放| 亚洲精品成人福利在线电影| 日韩精品一区二区三区免费| 福利视频一区| 香蕉久久国产超碰青草| 国产欧美在线观看视频| 蝴蝶伊人久久中文娱乐网| 无码在线激情片| 精品国产网| 波多野结衣在线se| 这里只有精品在线| 成人伊人色一区二区三区| av无码久久精品| 波多野结衣一区二区三区四区视频 | 在线欧美日韩| 日本黄网在线观看| 日韩av无码DVD| 久久熟女AV| 毛片一区二区在线看| 国产一级一级毛片永久| 亚洲系列中文字幕一区二区| 久久人妻xunleige无码| 久久久久夜色精品波多野结衣| 欧美一区中文字幕| 不卡午夜视频| 国产理论一区| 国产日韩精品一区在线不卡 | 欧美精品影院| 国产真实乱子伦视频播放| 亚洲精品综合一二三区在线| 欧类av怡春院| 国产精品久久久久久久伊一| 免费视频在线2021入口| 国产v欧美v日韩v综合精品| 国产麻豆另类AV| 国产成人精品高清在线| 国产96在线 | 无码视频国产精品一区二区 | 成人国产一区二区三区| 美女毛片在线| 国产一级小视频| 亚洲无码免费黄色网址| 婷婷午夜天| 成人无码一区二区三区视频在线观看| 欧美日韩中文国产| 亚洲欧美在线综合一区二区三区| 国产资源免费观看| 六月婷婷激情综合| 久久天天躁夜夜躁狠狠| 亚洲午夜天堂| 免费一级毛片在线播放傲雪网| 97视频免费在线观看| 久青草免费在线视频| 国产一区二区人大臿蕉香蕉| 亚洲人成电影在线播放| 无码中文字幕精品推荐| 成人年鲁鲁在线观看视频| 日韩在线永久免费播放| 国产成人成人一区二区| 欧美精品亚洲精品日韩专区| 日韩A∨精品日韩精品无码| 午夜精品福利影院| 亚洲天堂网在线播放| 国产精品妖精视频| 无码网站免费观看| 国产在线无码一区二区三区| 97se综合| 亚洲小视频网站| 国产美女一级毛片| 亚洲人成色77777在线观看| 四虎国产永久在线观看| 国产成人综合久久精品下载| 一级毛片在线播放免费| 日本www色视频| 国产一区自拍视频| 国产精品福利社| 亚洲天堂免费| 免费无码AV片在线观看国产|