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

基于高速圖像數據Flash存儲陣列無效塊管理

2016-06-29 01:25:38任勇峰儲成群閆安斌
電視技術 2016年4期

任勇峰,薄 仕,儲成群,李 杰,閆安斌

(中北大學 電子測試技術國家重點實驗室,山西 太原 030051)

基于高速圖像數據Flash存儲陣列無效塊管理

任勇峰,薄仕,儲成群,李杰,閆安斌

(中北大學電子測試技術國家重點實驗室,山西太原030051)

摘要:針對高速圖像數據FPGA大容量存儲的需求,提出了兩種基于高速并行化Flash大容量數據存儲結構的無效塊管理策略,并對比了在不同應用環境下,基于超級塊地址映射的無效塊管理及基于位索引的無效塊管理的優缺點,列出了兩種方式的數據無效塊列表資源占用情況和存儲容量損耗。通過多個工程項目的驗證,這兩種無效快管理策略各有所長,滿足高速并行化存儲Flash陣列的不同應用環境。

關鍵詞:存儲陣列;無效塊管理;超級塊地址映射;位索引

在高速圖像應用中,分辨率要求一般較高。因此數據的高速大容量有效存儲成為了Flash存儲研究的重點。由于單片NANDFLASH芯片的存儲容量相對較小、讀寫速度也比較慢,常常需要構建以閃存為基本單元的存儲陣列,以此擴大存儲容量、提高存儲速度[1]。同時由于工藝因素,NANDFLASH不可避免地存在無效塊,且數量不等,存在的位置也具有不確定性。因此,在復雜的FLASH陣列系統中對無效塊的有效管理是數據可靠存儲的關鍵。

傳統的無效塊管理策略是以單片Flash作為基本的管理單元。而大容量存儲結構體系中存在存儲芯片多的特點,若以這種最基本的細粒度完成的無效塊管理方式,會使得Flash存儲陣列的驅動程序復雜化,并占用過多的FPGA資源。若直接將其應用到大容量存儲結構體系中,將不能發揮多通道構架的并發讀寫和資源的整合與優化設計的優勢[2]。因此,針對大容量存儲結構的特點,本文提出兩種不同應用環境下的無效塊管理策略:一種是基于超級塊地址映射的無效塊管理策略。另一種為基于位索引的無效塊管理策略。這兩種方法相較于傳統方法優勢巨大,超級塊地址映射的無效塊管理極大地節約了映射地址的存儲空間,而位索引的無效塊管理策略能實現無延時匹配。在高速大容量數據存儲結構中,這兩種方法更適合應用環境。

1大容量高速存儲體系結構

圖1為基于FPGA的多片大容量m×nNANDFlash高速存儲陣列模塊結構,其中m表示存儲通道的數量,n表示每個存儲通道所含有的Flash芯片的個數。該結構采用FPGA作為主控單元,實現了高速輸入數據的接口轉換,并利用其片內的豐富的RAM資源構成數據緩存,送入到相應的存儲控制邏輯中[3]。

圖1 m×n高速存儲模塊結構

每個存儲通道的Flash芯片組的所有數據總線接口D0~D7分別復接在一起,其控制線接口ALE,CLE,WE,RE信號也將復用,忙信號RB是由OC門輸出,也可以將其直接連接到一起。而所有芯片的使能信號,包括單個芯片中存在的片選信號(CE1,CE2)必須占用單獨的I/O資源。

2無效塊管理策略

2.1基于超級塊地址映射的無效塊識別與預匹配機制

超級塊是由多個實際的物理塊組成的集合,與使用基本邏輯塊的塊地址映射的方法相比,其占用的內存將減小為原來的1/N,能大幅度地減小資源占用率,在實現多個NANDFlash芯片的無效塊管理中具有絕對的優勢。

NANDFlash芯片在進行讀、寫擦除操作之前,均需要對當前操作塊進行有效性識別。這一操作在高速應用中,將占用大量的時間,因此,亟需一種高效可靠的無效塊識別方法來提高數據的高吞吐率。其基本原理是,當一個超級塊內部的任何一個子邏輯塊被檢測為無效塊時,即認為該超級塊是無效塊。

NANDFlash存儲陣列中無效塊校驗流程如圖2所示。當系統上電完成復位后,對邏輯控制超級塊內的第一個邏輯塊進行檢測,當檢測到當前超級快的第一個子塊為非無效塊時,將超級塊的塊地址寫到FPGA內部開辟的RAM中,待完成寫入操作后,將簡單雙端口RAM的寫地址加一,同時將超級塊的塊地址加一,并再次對下一個超級塊進行檢測,直至所有的超級塊都檢測完成。需要注意的是,為了便于后續的無效塊地址的匹配,在生成無效塊列表的時候,將“FFF”寫入無效塊列表的最后,即將芯片的最后一個超級塊看成是無效塊[4]。

圖2 Micron公司NAND Flash無效塊校驗流程

基于超級塊地址映射的無效塊校驗會造成一定的存儲容量的損失,其損失大小與實際的選用的芯片的無效塊的個數與位置相關。如果存儲通道陣列中的存儲芯片的無效塊的位置均在同一個超級塊內,其容量損失將達到最小,當然,由于無效塊的位置在芯片內部具有隨機性,其出現這種可能性很小。一般都是在一個超級塊的內部存在一個或者多個子塊是無效塊。

表1所示為MT29F128G08AJAAA芯片內部的塊信息。單個MT29F128G08AJAAA芯片內部至多含有4×80=320個無效塊,損失的容量為320Mbyte。當采用超級塊地址映射時則最大將損失320Mbyte×4=1 280Mbyte的容量。存儲通道中Flash器件陣列的個數與損失的最大的容量直接的關系如圖3 所示,單個存儲通道使用的芯片數量越多,其理論上損失的存儲容量就越大。

表1 MT29F128G08AJAAA芯片內部塊信息

圖3 超級塊映射方式下造成的容量損失最大的情況

建立相應的無效塊列表以后,在對存儲通道陣列進行控制時,需要實時完成無效塊列表中的無效塊地址信息與實際操作的塊地址進行匹配工作。圖4所示為高效的無效塊塊地址預匹配原理框圖。

圖4 無效塊塊地址預匹配機制實現框圖

在對某個塊操作的初始階段,從無效塊列表中讀出一個無效塊的地址信息,該地址信息與初始塊操作地址進行預匹配,當讀出的無效塊的地址大于初始的塊地址信息時,則認為該操作塊為有效塊,可以進行后續的讀、寫或者擦除操作。待操作完成以后,將初始的塊地址進行更新后再與無效塊的地址信息進行比較,若仍然要小于無效塊的地址,則認為該塊也是有效的塊。若操作塊地址與當前讀出的RAM輸出的地址相同,則表示該塊為無效塊,不能對該塊進行操作。控制邏輯此時需要將待操作的塊地址加1,同時重新從RAM中讀出下一條無效塊的地址的信息,按照上述流程循環操作,直至所有的塊都操作完成。圖5為預匹配邏輯的實現流程,其中A表示從無效塊列表中讀出的無效塊的地址信息,B表示的是需要操作的塊地址的信息。

圖5 無效塊預匹配邏輯流程圖

2.2基于位索引的快速無效塊識別方法與預匹配機制

高速存儲通道中基于超級塊地址映射的無效塊識別與預匹配方法,將完整的無效塊地址信息保存在無效塊列表中,在匹配過程中需要將所保存的無效塊地址信息讀出,并與當前的操作地址信息進行比較,使得Flash存儲陣列讀寫操作存在一定的時間延時,不能極大地發揮多通道構架的并發讀寫和資源的整合與優化設計的優勢,此外,造成了大量的存儲容量損失也是該無效塊識別存在的一個缺陷[5]。為了解決上述不足,實現多芯片存儲陣列中的無效塊的快速檢索與高效識別,提出了一種基于位索引的快速無效塊識別和實時的預匹配機制。

以2芯片陣列結構為例,該結構中包含2片MT29F128G08AJAAA芯片,共存在8個LUN模塊,即1個超級塊由8個LUN中相同位置的子塊組成,也就是說1個超級塊地址對應有8位的無效塊標識符。因每片上述芯片的每個LUN模塊被劃分為4 096個存儲塊,故本例程中的超級塊地址的深度為4 096,轉換成16進制表示就是000h~FFFh。假設用二進制數據“1”表示的是無效塊,“0”為有效塊標識。這樣就可通過存儲列表的地址來表示超級塊的塊地址,根據其保存的數據來識別該地址所對應的物理塊是否是無效塊。圖6所示為改進的基于位索引的無效塊列表結構。無效塊列表的地址也就是超級塊對應的地址,其多存儲的信息則表示為各LUN模塊的無效塊標識位。這樣能夠遍歷存儲空間中的所有的塊,避免了額外的存儲容量損失。

圖6 基于位索引的無效塊列表結構

圖7所示為基于位索引的無效塊列表生成流程。首先開辟一個存儲深度為4 096,數據位寬為8bit存儲模塊,并將其所保存的內容置“0”。當開始無效塊檢測后,若檢測到超級塊內的某個子塊為無效塊,將其在無效塊識別字的相應位置給置成“1”。待該超級塊內的所有子塊均檢測完畢后,將無效塊識別字寫入到當前超級塊地址所對應的存儲空間中,直至所有的超級塊都完成了檢測。

圖7 基于位索引的無效塊列表生成流程圖

位索引式快速無效塊識別方法在Flash存儲陣列進行讀寫操作中,讀寫有效塊與識別無效塊是并行執行的,換言之,當主控芯片對陣列中的Flash有效塊進行讀寫操作的同時,也對無效塊列表檢索,并在當前有效塊讀寫操作完畢前,能夠及時準確地將下一個有效塊的地址提前給出。從另一種角度講,這樣就大大削減了無效塊的識別過程,可以認為讀寫操作是不間斷性的,從而大大提高了Flash存儲陣列操作速率。其匹配流程圖如圖8所示。

圖8 基于位索引的無效塊預匹配流程圖

3 性能對比分析

為測試實際的NANDFlash器件的無效塊的分布情況,利用ChipScope軟件獲取無效塊列表中的無效塊地址信息。隨機抽取了10片某同一批次的Micron公司的MT29F128G08AJAAA大容量芯片進行了無效塊測試。采用了上超級塊映射結構,即根據芯片內的4個LUN結構,使每個超級塊含有4個子塊,其超級塊地址的范圍為:000h~FFFh,共4 096個超級塊。

圖9所示為某一個芯片的無效塊測試的FPGA的采樣時序圖,存在有3個無效塊,其塊地址分別為05Ah、05Bh以及273h。表2所示為隨機抽取的10片芯片的無效塊測試的結果統計。

圖9 某一芯片無效塊測試FPGA采樣時序圖(截圖)

表2 無效塊測試結果統計

從兩個方面對上述統計結果的無效塊識別與匹配機制的性能進行對比分析,即無效塊列表占用的存儲資源的容量大小以及整體的存儲容量的損耗情況(1#:基于超級塊地址的無效塊識別與匹配;2#:基于位索引的無效塊識別與匹配)。

1)無效塊列表占用存儲資源

無效塊列表是利用的是FPGA內部的存儲資源實現,對于1#方案,無效塊列表的容量的大小受所選用的器件的中單個LUN中所含有的最多的無效塊數量所決定,如單個芯片MT29F128G08AJAAA中的每個LUN中最多含有的無效塊的數量是80個,采用超級塊映射的方式下,其最壞的情況下會有80×4=320個無效塊,無效塊的地址為12位二進制數,故其無效塊列表最大將達到:(320×12bit=480byte)。N個芯片在最壞的情況下的無效塊列表的大小為480byte×N。2#方案中,超級塊地址的深度就是無效塊列表的深度,即無效塊列表的深度為4 096,而無效塊的標識位寬與總的LUN個數有關,對于有著M個Flash芯片的存儲通道,無效塊列表的容量大小為:(4 096×4×M)/8=2k×M字節。由此可以看出,1#方案所需要的FPGA內部的存儲資源要比2#方案所需的資源要小,且不到其大小的1/4。

2)存儲容量的損耗

1#方案是利用超級塊的地址作為無效塊地址識別的最小單位,只要在超級塊內部的任何一個小塊中存在一個是無效塊,則會認為整個的這個超級塊都是無效塊。2#方案中將超級塊中的小塊作為識別的最小單位,其內部的所有的小塊都將被標記,避免了1#方案中的有效塊被當成無效塊的情況。2#方案的容量損失只于芯片中存在的總的無效塊的個數有關,即其最大的容量損失與芯片的個數N的關系為:(80×4)×NMbyte。而1#方案中的造成的容量損失與芯片個數N的關系為:(80×4)×N×4Mbyte即1#方案的存儲容量損失是2#方案損失的4倍關系。

4小結

針對不同的應用環境基于超級塊地址映射的無效塊識別和基于位索引的無效塊識別方法均具有一定的應用價值。在高速大容量存儲環境中,這兩種無效塊識別方法對Flash存儲陣列的讀寫操作均有絕對的優勢,基于超級塊的地址映射的無效塊識別,占用主控芯片RAM資源較少,對主控芯片性能要求不高,但其在讀寫操作中存在一定的時間延時,而且資源利用率也不高,更適用于超大容量的數據存儲陣列環境;基于位索引的無效塊識別方法讀寫操作較快,資源利用率也較高,但其占用主控芯片RAM資源較多,更適合持續超高速、高密度的數據存儲環境。

致謝:

論文成果要感謝任勇峰老師、儲成群老師和劉東海師兄的指導,以及李杰同學和閆安斌同學在設計中進行的大量試驗和測試。

參考文獻:[1]楊立宏, 毛亞杰, 行長印. 基于Flash的CCD相機數據高速存儲系統設計[J].長春理工大學學報(自然科學版),2009,32(1):31-34.

[2]王芳, 李恪, 蘇林,等. 空間太陽望遠鏡的星載固態存儲器研制[J].電子學報,2004, 32(3): 472-475.

[3]張科, 郝智泉, 王貞松. 一種基于新體系結構的空間固態記錄器原型系統[J].電子學報,2008, 36(2): 285-291.

[4]宋杰, 何友, 唐小明. 基于FPGA的超高速雷達信號實時采集存儲系統[J].電子技術應用,2005, 31(11): 18-20.[5]任勇峰, 張文棟. 高精度、高速雷達圖像記錄設備的研究[J].彈箭與制導學報,2004 (2): 71-74.

任勇峰(1968— ),博士生導師,主要研究方向為電路與系統,信號采集及存儲;

薄仕(1989— ),碩士生,主研電路與系統、信號采集及存儲;

儲成群(1987— ),博士,主研電路與系統、測試計量技術;

李杰(1989— ),碩士生,主研電路與系統、信號采集及存儲;

閆安斌(1989— ),碩士生,主研電路與系統、信號采集及存儲。責任編輯:閆雯雯

Invalidblockmanagementbasedonhigh-speedmassimagedataflashstoragearray

RENYongfeng,BOShi,CHUChengqun,LIJie,YANAnbin

(National Key Laboratory for Electronic Measurement Technology, North University of China Taiyuan,Taiyuan 030051,China)

Abstract:According to the need of the high-speed mass image data storage base on FPGA,it is proposed that two kinds of invalid fast management strategy of the structure based on high-speed parallel Flash high-capacity data storage, and compares the advantages and disadvantages of the invalid block management based on the super block address mapping and based on an index of invalid block management in different application environment, lists the two ways of invalid data block list resource utilization and storage capacity loss. Through multiple validation of the project, the two kinds of invalid fast management strategy strengths and meet the high-speed parallel Flash storage array of different applications.

Key words:memory array;invalid block management;super block address mapping;bit index

中圖分類號:TP391

文獻標志碼:A

DOI:10.16280/j.videoe.2016.04.008

作者簡介:

收稿日期:2015-11-16

文獻引用格式:任勇峰,薄仕,儲成群,等. 基于高速圖像數據Flash存儲陣列無效塊管理[J].電視技術,2016,40(4):38-42.

RENYF,BOS,CHUCQ,etal.Invalidblockmanagementbasedonhigh-speedmassimagedataflashstoragearray[J].Videoengineering,2016,40(4):38-42.

主站蜘蛛池模板: 国产69精品久久| 国产激爽爽爽大片在线观看| 91激情视频| 国产男女免费完整版视频| 国产在线观看精品| 婷婷激情五月网| 99久久国产精品无码| 四虎精品国产永久在线观看| 欧美一区二区人人喊爽| 无码专区国产精品第一页| 国产综合在线观看视频| 色老头综合网| 国产呦视频免费视频在线观看| 国产成人一二三| 美女潮喷出白浆在线观看视频| 99久久精品久久久久久婷婷| 久久免费精品琪琪| 国产精彩视频在线观看| 欧美视频在线播放观看免费福利资源| 国产一区二区三区夜色| 国产成人亚洲日韩欧美电影| 91色爱欧美精品www| 天天综合亚洲| 亚洲系列中文字幕一区二区| 91视频区| 久久国产乱子伦视频无卡顿| 国产精品亚洲综合久久小说| 91精品视频播放| 国产95在线 | 99视频有精品视频免费观看| 日本手机在线视频| 天天躁夜夜躁狠狠躁躁88| 亚洲国产精品一区二区第一页免 | 欧美啪啪一区| 99精品热视频这里只有精品7| 亚洲欧美成人在线视频| 青草视频免费在线观看| 国产午夜无码专区喷水| 在线色综合| 国产特级毛片aaaaaa| 日本人妻一区二区三区不卡影院| 依依成人精品无v国产| 国产精品大白天新婚身材| 国产精品欧美亚洲韩国日本不卡| 成人福利在线视频| 波多野吉衣一区二区三区av| 99久久精品国产自免费| 日韩成人免费网站| 老司机久久99久久精品播放| 蜜芽一区二区国产精品| 五月天综合网亚洲综合天堂网| 色窝窝免费一区二区三区| 伊人久久久大香线蕉综合直播| 成人午夜亚洲影视在线观看| 4虎影视国产在线观看精品| 国产一级精品毛片基地| 色婷婷亚洲综合五月| 国产在线一区视频| 三级毛片在线播放| 国产男女免费视频| 久久人体视频| 新SSS无码手机在线观看| 色综合日本| 四虎精品国产AV二区| 99久久精品国产精品亚洲| 亚洲成人免费看| 精品国产www| 白丝美女办公室高潮喷水视频| 亚洲高清日韩heyzo| 欧美中文字幕一区二区三区| 国产无码性爱一区二区三区| 亚洲一区二区精品无码久久久| 精品福利视频网| 精品第一国产综合精品Aⅴ| 国产成人精品免费av| 国产毛片久久国产| 99热精品久久| 精品视频一区二区三区在线播| av在线手机播放| 日韩AV手机在线观看蜜芽| 国产精品香蕉在线| 婷婷久久综合九色综合88|