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

一種基于大容量數(shù)據(jù)記錄儀的壞塊管理設(shè)計

2014-03-28 01:53:42胡紅王少云葉艷
電子設(shè)計工程 2014年8期
關(guān)鍵詞:信息方法管理

胡紅,王少云,葉艷

(1.南京航空航天大學(xué)電子信息工程學(xué)院,江蘇南京210016;2.南京航空航天大學(xué)無人機(jī)研究院,江蘇南京210016)

Flash芯片作為一種新興的半導(dǎo)體存儲器件,具有集成度高、非易失性、功耗低、價格低、容量大、可擦除次數(shù)多等優(yōu)點(diǎn),被廣泛應(yīng)用于大容量數(shù)據(jù)存儲系統(tǒng)中。Samsung公司的K9F8G08U0M單片容量達(dá)到8GB,可通過多片NAND Flash串聯(lián)的方法擴(kuò)大系統(tǒng)容量。但是由于工藝和使用環(huán)境等因素,NAND Flash較其他形式的存儲芯片更易出現(xiàn)壞塊問題,同時由于NAND Flash存儲芯片的容量大,出現(xiàn)壞塊問題也更多。因此,在使用NAND Flash存儲芯片時,對壞塊的管理愈顯重要。

使用NAND Flash存儲芯片時,對壞塊的管理的一般方法有:1)基于FPGA的片內(nèi)RAM,存儲有效塊信息,將有效塊地址作為數(shù)據(jù)存入RAM中。進(jìn)行讀寫操作時,從RAM中讀出有效塊地址。2)基于FPGA內(nèi)部RAM,RAM地址與塊地址相對應(yīng),在與壞塊地址相對應(yīng)的RAM中存儲1,而其他存儲0[1]。

本文提出了一種基于FPGA的大容量數(shù)據(jù)記錄儀的壞塊管理方法,利用FPGA[2]內(nèi)部RAM[3]空間建立壞塊地址信息存儲區(qū),通過查詢存儲區(qū)中的信息,來確定當(dāng)前存儲塊是否損壞,若是壞塊則跳過,從而避免對壞塊的操作,實(shí)現(xiàn)了對Flash存儲空間的有效管理。該壞塊管理方案在不增加FPGA使用的復(fù)雜程度的條件下,需要的內(nèi)存資源比方法1、方法2明顯減少。

1 NAND Flash K 9F8G08U0M簡介

文中的大容量數(shù)據(jù)記錄儀采用9片Samsung公司的NAND Flash芯片K9F8G08U0M,其總?cè)萘窟_(dá)到72G。K9F8G08U0M芯片由4096個塊組成,每個塊有64頁,每個頁為(4K+128)Bytes,其中4KBytes為Main Area,128Bytes為Spare area,Main Area專門存儲數(shù)據(jù),Spare Area存儲其他信息,如ECC校檢碼、壞塊信息等。K9F8G08U0M的讀寫操作以頁為最小單位,擦除操作以塊為最小單位進(jìn)行,禁止按位擦除。8個I/O引腳為多路復(fù)用,既可以作為數(shù)據(jù)線進(jìn)行數(shù)據(jù)傳輸,也可以作為地址線進(jìn)行尋址。這個方案顯著減少了芯片引腳,允許在保持系統(tǒng)板不變的情況下升級存儲密度[4]。

2 壞塊管理設(shè)計方案

K9F8G08U0M芯片是數(shù)據(jù)記錄儀的核心部分,若某個塊發(fā)生損壞時,視為壞塊。記錄儀工作時,剔除壞塊,只將數(shù)據(jù)存儲到好塊中,從而提高存儲數(shù)據(jù)的正確性,即數(shù)據(jù)記錄儀使用NAND Flash存儲芯片時,需要對存儲板壞塊進(jìn)行管理。

2.1 壞塊產(chǎn)生原因及分類

由于Flash的制造工藝不能保證其存儲陣列在其生命周期中保持性能的可靠,因此,在Flash的生產(chǎn)與使用過程中會產(chǎn)生壞塊。

NAND Flash的壞塊可分為兩類:固有壞塊、使用壞塊。固有壞塊是出廠前,由于生產(chǎn)工藝所產(chǎn)生的壞塊。廠商已經(jīng)對固有壞塊進(jìn)行了壞塊標(biāo)記,在每個塊第1頁的第一個備份字節(jié)標(biāo)志壞塊值,若為0xff,則為好塊,若為非0xff,則為壞塊。為了保持與固有壞塊信息一致,使用過程中發(fā)現(xiàn)新的壞塊時,將新的壞塊第一頁的第一個備份字節(jié)標(biāo)志為非0xff。

使用壞塊是出廠后,用戶對芯片使用產(chǎn)生過程中產(chǎn)生的新壞塊。

2.2 壞塊管理設(shè)計方案分析與實(shí)現(xiàn)

本文提出的壞塊管理方法是對方法1上進(jìn)行改進(jìn)后形成的。我們稱為方法3。方法3在FPGA中內(nèi)建片上RAM來存儲壞塊地址信息,通過壞塊查詢模塊來辨別當(dāng)前存儲塊是否有效。壞塊管理需要做以下工作:識別壞塊并建立壞塊表(BBT,bad block table),將壞塊地址信息存儲到壞塊表中;在對當(dāng)前存儲塊進(jìn)行操作時,發(fā)生錯誤需更新BBT,并且通過壞塊查詢模塊來跳過壞塊,從而對有效塊進(jìn)行操作。

2.2.1 識別壞塊與存儲信息

第一次對NAND Flash進(jìn)行操作之前,先要識別固有壞塊,建立初始BBT。其操作流程為:設(shè)置塊初始地址為0,檢查塊中備份區(qū)的第一個字節(jié)是否為0xff,如果是,則為有效塊,如果不是,則為壞塊,產(chǎn)生初始壞塊表(后面的塊為壞塊,則需更新BBT),將該壞塊地址信息存儲進(jìn)去,增加塊地址,繼續(xù)上面的步驟,直到最后一塊。流程圖如圖1所示。

圖1 創(chuàng)建壞塊表的流程圖Fig.1 Flow chart of creating initial bad block table

在壞塊管理過程中,不僅僅要識別壞塊,而且必須將壞塊地址信息存儲起來,這樣在對存儲塊進(jìn)行操作時只需要檢查該塊是否在BBT中,不需要每次去識別,節(jié)省了大量時間。首先在FPGA中建立RAM空間,將壞塊地址信息存儲到RAM壞塊地址信息存儲區(qū),然后再寫入到NAND Flash的一個有效塊中。為了防止意外掉電,每個BBT必須在Flash里保存兩份[5]。當(dāng)發(fā)現(xiàn)兩個BBT不一樣時,說明出現(xiàn)狀況,必須重新建立壞塊表[7]。

NAND Flash除了固有壞塊,對NAND Flash進(jìn)行讀寫擦除操作過程中也會隨機(jī)產(chǎn)生新的壞塊,這時需要更新BBT。NAND Flash讀操作失敗時,一般不會造成整頁全部出錯,僅僅是頁中的一個或幾個比特出錯。文中使用一種比較專用的校檢—ECC(Error Correction Code)。ECC能夠糾正一個比特錯誤以及檢測兩個比特錯誤,而且計算速度很快[6]。本設(shè)計中,對每個512Bytes原始數(shù)據(jù)生成3個字節(jié)ECC校檢碼:8比特的列校檢碼和16比特的行校檢碼。對于每頁4KB的數(shù)據(jù)來說,會產(chǎn)生24Bytes的ECC校檢碼。當(dāng)出現(xiàn)1bit錯誤時,可糾正;當(dāng)出現(xiàn)2bits以上的錯誤,就將該塊標(biāo)記為壞塊,這時需要更新BBT,如圖2所示。當(dāng)擦寫操作失敗時,其狀態(tài)會相應(yīng)地反映到狀態(tài)寄存器上,將壞塊里面的內(nèi)容備份到有效塊中,然后將其標(biāo)志為壞塊,這時也需要更新BBT,如圖3所示。

圖2 讀操作失敗更新BBTFig.2 Update BBT with failure of read operation

2.2.2 壞塊查詢模塊

對當(dāng)前存儲塊進(jìn)行操作時,需要調(diào)用壞塊查詢模塊。上電時,首先將壞塊信息從Flash的存儲區(qū)讀入到RAM中。當(dāng)對第n塊進(jìn)行操作時,只需調(diào)用壞塊查詢模塊,查詢FPGA內(nèi)部RAM的壞塊地址信息,如果該塊為壞塊,則對第n+1個壞塊查詢,直至查詢到一個有效塊。查詢壞塊模塊部分代碼如下所示。

always@(posedge clk or negedge rst)

if(!rst)

begin

valid_blockaddr<=12'b0;

i<=5'b0;

read<=1'b0;

圖3 擦寫操作失敗更新BBTFig.3 Update BBT with failure of erase and write operation

num<=5'b0;

end

else

begin

if(i<64)

begin

block_addr<=addr[30:19]+num;

read<=1'b1;

address<=i;

if(block_addr==data)//說明該塊為壞塊,設(shè)num為1,則塊地址加1

begin

i<=0;

num<=num+5'b1;

end

else//與下一個地址信息對比,num不變,則地址不變

begin

i<=i+5'b1;

num<=num;

end

end

else//當(dāng)i大于63時,說明已與所有壞塊地址信息對比過,并且該塊不在壞塊中

begin

valid_blockaddr<=block_addr;

i<=0;

num<=5'b0;

end

end

其中read、address分別為存儲壞塊地址信息RAM的讀使能端、地址,數(shù)據(jù)寬度為12,深度為64。addr為31位操作地址,data為RAM輸出的壞塊地址,將操作地址與壞塊地址data相比較,如果數(shù)據(jù)相同,說明該塊為壞塊,則將塊地址加1,從而跳過壞塊。由于所選型號不同以及工藝上的差別,壞塊數(shù)目自然不同,因此根據(jù)實(shí)際情況建立RAM[5]。

2.3 壞塊管理設(shè)計方法比較

由于一般壞塊的數(shù)量不超過總量的2%,所以其壞塊信息量較有效塊信息量小很多。方法3只占用FPGA較少的RAM資源。對于單片K9F8GU0M而言,對方法1、方法2以及本文所提出的方法進(jìn)行存儲信息以及占用RAM資源的比較,如表1所示。方法3占用RAM的資源大約是方法1的2.5%,是方法3的30%。

表1 壞塊管理設(shè)計方法比較Tab.1 The comparison of bad block storage methods

3 仿真分析

3.1 仿真試驗(yàn)

本文使用Verilog HDL語言進(jìn)行編程,在QuartusII軟件平臺上對實(shí)現(xiàn)的功能進(jìn)行編譯、運(yùn)行,并且在Modelsim仿真平臺上編寫測試[8]平臺,對模塊進(jìn)行功能仿真。圖4、圖5分別為識別壞塊仿真圖、壞塊查詢仿真圖。

圖4 識別壞塊仿真圖Fig.4 Simulation diagram of identifying bad block

3.2 結(jié)果分析

圖5 壞塊查詢仿真圖Fig.5 Stimulation graph of checking bad block

圖4為識別固有壞塊仿真時序。該數(shù)據(jù)記錄儀由9片K9F8G08U0M組成,圖中CE_L為9位片選信號,低電平有效;ALE_H為地址鎖存使能,高電平有效;CLE_H為命令鎖存使能,高電平有效;WE_L為寫使能,低電平有效;RE_L為讀使能,低電平有效;RB為設(shè)備狀態(tài)對于識別壞塊的仿真,本設(shè)計片選第1個芯片,讀出每塊的第一個備份字節(jié)。塊的初始地址為0,讀出數(shù)據(jù)后,將塊地址加1。由仿真圖可知第0,1塊為好塊,第2塊為壞塊,依次類推。仿真結(jié)果表明該壞塊管理中的壞塊識別模塊能夠?qū)崿F(xiàn)識別壞塊的功能。

圖5為壞塊查詢模塊仿真圖。為了便于觀察,設(shè)置RAM中第1、2、3、4地址存儲的壞塊地址為第1、3、5、6塊。圖5中addr為31位操作地址,分別設(shè)置為0x00000000、0x00180000、0x00280000,其對應(yīng)的塊地址為第0、3、5塊;valid_block為12位有效塊地址。由圖5可知,當(dāng)對第3塊操作時,由于該塊為壞塊,所以跳過壞塊,對第4塊進(jìn)行操作;當(dāng)對第5塊進(jìn)行操作時,由于該塊為壞塊,并且下一個塊即第6塊也為壞塊,所以跳到第7塊進(jìn)行操作。仿真結(jié)果表明,該壞塊管理中壞塊查詢模塊能夠?qū)崿F(xiàn)辨別當(dāng)前存儲塊是否為壞塊,并且跳過壞塊的功能。

4 結(jié)束語

文中的大容量數(shù)據(jù)記錄儀的存儲板由9片NAND Flash串聯(lián)組成,存儲容量大,出現(xiàn)壞塊問題的可能也多,因此提出了一種基于FPGA存儲壞塊地址信息的壞塊管理方案,來解決存儲板中的壞塊管理問題。仿真分析表明,該壞塊管理方案能夠有效地解決NAND Flash的壞塊管理問題,具有占用FPGA資源少的優(yōu)點(diǎn),也可供其他類型的大容量數(shù)據(jù)記錄儀作為參考。

[1] 張勝勇,高世杰,吳志勇,等.基于FPGA的NAND Flash壞塊處理方法[J].計算機(jī)工程,2010,36(6):239-243.ZHANG Sheng-yong,GAO Shi-jie,WU Zhi-yong,et al.Bad block handle method of NAND flash memory based on FPGA[J].Computer Engineering,2010,36(6):239-243.

[2] 華清遠(yuǎn)見嵌入式培訓(xùn)中心.FPGA應(yīng)用開發(fā)入門與典型實(shí)例[M].北京:人民郵電出版社,2008.

[3] 夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程[M].北京:北京航空航天大學(xué)出版社,2008.

[4] Samsung Electronics.K9F8G08UXMFLASH Memory[M].2007.

[5] 羅曉,劉昊.一種基于FAT文件系統(tǒng)的NAND Flash壞塊處理方法[J].電子器件,2008,31(2):716-719.LUO Xiao,LIU Hao.Method of NAND flash memory bad block management based on FAT file system[J].Chinese Journal Of Electron Devices,2008,31(2):716-719.

[6] 韓勇豪,王少云.一種固態(tài)飛行參數(shù)記錄儀的研制[J].電子設(shè)計工程,2011,19(16)159-162.HAN Yong-hao,WANG Shao-yun.Design of a solid flight parameter recorder[J].Electronic Design Engineering,2011,19(16)159-162.

[7] 周軍.NAND Flash的壞塊管理設(shè)計[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2010(9):15-17.ZHOU Jun.Bad block management for NAND flash[J].Microcontrollers&Embedded Systems,2010(9):15-17.

[8] 王文龍,張少博,陳海峰.一種試驗(yàn)數(shù)據(jù)處理軟件設(shè)計[J].火箭推進(jìn),2012(1):76-80.WANG Wen-long,ZHANG Shao-bo,CHEN Hai-feng.Design of a test data processing software[J].Journal of Rocket Propulsion,2012(1):76-80.

猜你喜歡
信息方法管理
棗前期管理再好,后期管不好,前功盡棄
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
用對方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
“這下管理創(chuàng)新了!等7則
雜文月刊(2016年1期)2016-02-11 10:35:51
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
捕魚
人本管理在我國國企中的應(yīng)用
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
管理的另一半
健康信息
祝您健康(1987年3期)1987-12-30 09:52:32
主站蜘蛛池模板: 国产精品亚洲天堂| 国产成人精品18| 无码AV日韩一二三区| 国产激爽大片高清在线观看| 98精品全国免费观看视频| 婷婷色婷婷| 精品久久高清| 高清乱码精品福利在线视频| 人妻丰满熟妇AV无码区| 亚洲第一区欧美国产综合| 亚洲综合片| 精品国产黑色丝袜高跟鞋| 欧美激情视频二区| 啊嗯不日本网站| 华人在线亚洲欧美精品| 国产在线精彩视频论坛| 国产激情无码一区二区APP| 强乱中文字幕在线播放不卡| 国产亚洲视频免费播放| 国产一级裸网站| 日本午夜三级| 日韩精品免费一线在线观看| 青草91视频免费观看| 中文字幕佐山爱一区二区免费| 在线观看视频99| 狼友视频一区二区三区| 成年网址网站在线观看| 日韩中文精品亚洲第三区| 亚洲AV色香蕉一区二区| 999国产精品永久免费视频精品久久| 久久中文电影| 国产精品免费电影| 国产精品白浆在线播放| 久久免费视频播放| 亚洲人成人伊人成综合网无码| 国产无遮挡猛进猛出免费软件| 制服丝袜 91视频| 国模私拍一区二区三区| 国产精品免费入口视频| 欧美精品另类| 午夜啪啪福利| 国产成人欧美| 青青国产在线| 国内精自线i品一区202| 欧美精品啪啪| 波多野结衣在线se| 久久永久视频| 国产一区二区精品高清在线观看| 一本一道波多野结衣一区二区| 中文字幕色在线| 亚洲乱码在线视频| 美女黄网十八禁免费看| 成年人免费国产视频| a毛片基地免费大全| 精品久久国产综合精麻豆| 免费AV在线播放观看18禁强制| 成人伊人色一区二区三区| 国产无码性爱一区二区三区| 最新国产精品第1页| 69免费在线视频| 2018日日摸夜夜添狠狠躁| 亚洲成a人片在线观看88| 伊人久久福利中文字幕| 久久五月视频| 国产无码精品在线播放| 日本久久网站| 日韩欧美中文字幕一本| 热伊人99re久久精品最新地| 2022精品国偷自产免费观看| 国产大片喷水在线在线视频| 国产一区二区色淫影院| 毛片网站在线播放| 国产精品主播| 毛片网站在线看| 欧美无遮挡国产欧美另类| www成人国产在线观看网站| 亚洲天堂2014| www.亚洲天堂| 综合人妻久久一区二区精品| 国产麻豆aⅴ精品无码| 天天躁夜夜躁狠狠躁躁88| 青青草一区二区免费精品|