首页 » 通讯 » 星载高速大年夜容量存储器文件化坏块治理设计_数据_文件

星载高速大年夜容量存储器文件化坏块治理设计_数据_文件

admin 2024-10-23 12:06:57 0

扫一扫用手机浏览

文章目录 [+]

(1.中国科学院国家空间科学中央,北京100190;2.中国科学院大学,北京100190)

为担保星载高速大容量存储器高速稳定的存储速率,需对NAND Flash存储芯片中因单粒子翻转或超过擦除极限而在写入时涌现的坏块进行管理。
文件化坏块管理采取链表的办法将坏块、分流水级未利用块和分有效载荷数据存储块分别链接身分歧的文件,并采取四级流水乒乓缓冲机制快速更换写入失落败块。
运行于型号任务中的文件化坏块管理,办理了因数据写入涌现坏块时的存储速率抖动问题,实现了四倍于单流水级的写入速率对多有效载荷数据分文件进行稳定存储,从而担保了载荷数据的精确性和完全性。

星载高速大年夜容量存储器文件化坏块治理设计_数据_文件 通讯

星载高速大容量存储器;多有效载荷;流水线操作;文件化坏块管理

中图分类号:TN919.5

文献标识码:A

DOI:10.16157/j.issn.0258-7998.2017.06.003

中文引用格式:杨志勇,董振兴,朱岩,等. 星载高速大容量存储器文件化坏块管理设计[J].电子技能运用,2017,43(6):11-14.

英文引用格式:Yang Zhiyong,Dong Zhenxing,Zhu Yan,et al. Design of file-based bad block management of high-speed large-capacity space-borne storage[J].Application of Electronic Technique,2017,43(6):11-14.

0 弁言

星载高速大容量存储器是卫星及其他航天器进行信息获取、信息处理及信息传输的关键设备之一。
NAND Flash芯片具有存储密度大、接口速率高、非易失落性、低功耗、抗震性强、事情温度宽等特点,是星载高速大容量存储器的空想存储介质[1-3]。
但NAND Flash在空间高能粒子辐射、极高低温环境下,极易涌现位翻转缺点[4-5],采取缺点检测纠正(Error Correcting Code,ECC)技能对其纠错可一定程度上担保数据的精确性[6-8]。
然而,NAND Flash受制造工艺限定,出厂时存在一定数量随机分布的坏块[5,9-10],并且随着韶光的推移,Flash达到擦除极限,坏块数量将会不断增多。
坏块的产生将影响存储器的存储速率和存储信息数据的精确性、完全性,乃至决定航天探测任务的成败。
因此,高效、可靠的坏块管理对星载高速大容量存储用具有重大意义。

1 星载存储器背景

随着空间探测任务的发展,有效载荷产生的数据带宽急剧增大,存储速率同样须要提高,然而NAND Flash固有写操作特性降落了有效吞吐率。
Flash写入数据分为两个过程,首先将命令、地址及数据以字节办法写入芯片内部缓存(即“加载”过程);其次芯片须要一个内部编程过程,才可确定编程是否成功[11-12]。
编程过程中,芯片不相应外部命令。
星载高速大容量存储器针对Flash写操作特点,采取四级流水[9,11]存储技能,充分利用芯片编程韶光加载其他芯片,实现存储区全速无间断数据写入。
图1为四级流水线写操作过程。

空间探测有效载荷不断增多,各个有效载荷所产生的数据量参差不齐。
传统单分区环形行列步队顺序写入的存储管理办法(从前今后存储,待至存储空间尾部,擦除存储空间首部已写入块,使其变为未利用块,以便尾部空间存满后,再次从存储空间首部连续存储)不能适应新的需求。
若存在两种不同速率的有效载荷同时产生数据:高速设备产生的数据存储满存储空间尾部后,环形行列步队顺序写入的存储办法将擦除首部空间;低速设备所存储的数据很少,并且由于回放数据优先级的缘故原由,存在低速设备的数据未及时回放,却被擦除以得到高速设备存储新数据所须要的未利用块。

因此,传统的环形行列步队顺序写入的存储管理办法,不能适用于多载荷。
本文所提到的星载高速大容量存储器,采取的是四级流水存储技能,每一个有效载荷分一个文件的办法进行链式存储管理。

2 传统坏块管理

2.1 坏块更换

存储器初始化时,读取相应的块状态信息,构建坏块表。
数据存储时,根据坏块表中信息,跳过已有的坏块。
若在存储块中写入数据的过程中第n页失落败则得到一块未利用块,更换正在写入块,并将失落败块的前n-1页复制到有效未利用块,并将第n页及之后的数据写入新块[7,10,12-15]。
如图2所示。

传统的坏块更换方法是将存储出错块中的有效数据复制到新的替代块中,以增加额外的存储韶光开销来担保数据存储的精确性。
若在存储块的尾部出错,那么将复制出错块近一块的数据到替代块中,这大大降落了存储的速率。
在全体存储过程中,由于出错块出错所在的页数不同,将会涌现存储速率抖动。
星载高速存储器不许可存储速率的抖动,否则将可能涌现数据的丢失。

2.2 动态坏块管理

动态坏块管理[2,4-5,13]将存储空间分为4个区:数据存储区、交流块区、更换(保留)块区[10,15-16]和坏块区。
其思想是在存储器利用过程中涌现坏块,采取动态办法标记坏块,将坏块加入坏块映射区,从更换(保留)块区选择有效未利用块对坏块进行更换,并更新逻辑-物理块地址映射表。
若对已写入数据块修正,需将全体存储块的数据读到存储掌握器,对其数据进行修正,然后将修正后的数据写入到交流块区的存储块,末了更新逻辑-物理块地址映射表[10,13]。

动态坏块管理对已写入数据的修正办法,比直接在原存储块中写入速率高。
星载高速大容量存储器只对有效载荷数据存储,不对数据进行修正。
同时,存储器采取四级流水存储技能,并对不同的有效载荷分文件进行链式存储。
因此,动态坏块管理的方法不适宜星载高速大容量存储管理。

2.3 异步坏块管理

异步坏块管理[6]是基于嵌入式文件系统实现读、写、擦除等要求的坏块管理缓冲层。
文件系统发出读、写、擦除等要求,独立运行的异步坏块管理进程将这些要求缓冲到行列步队,并直接向文件系统返回要求实行成功状态。
异步坏块管理进程在相应写要求时,将其他读、写、擦除要求壅塞,直到这次写要求完成为止。
当实行写要求涌现坏块时,异步坏块管理进程将复制已写入坏块的数据到替代块中,并将要求缓冲行列步队中相应写要求的数据写入到未利用块,从而担保数据的完全性和精确性。

异步坏块管理中不能同时实行读、写、擦除三种类型的要求,这将降落星载存储器的数据存储管理性能;写入数据涌现坏块,读取已写入坏块数据将增加星载CPU运行内存资源花费;异步坏块管理是一种基于嵌入式文件系统的管理算法,星载存储器不宜采取不成熟的星载文件系统技能。
因此,星载高速大容量存储器不能采取异步坏块管理方法。

3 文件化坏块管理

3.1 块状态信息存储

星载高速大容量存储器,FPGA和CPU折衷合营共同掌握管理数据存储。
存储器块状态信息存储在每个块的空余区,当系统第一次启动时,FPGA扫描存储器中所有块空余区,获取所有块状态信息,并由FPGA组建OBAT(Original Block Allocate Table)存储到掉电非易失落型存储器MRAM,再由CPU将OBAT从MRAM中读到CPU运行内存,末了由CPU组建成IBAT(Index Block Allocate Table),并将组建好的IBAT写回MRAM。
系统正常运行过程中,存储块状态发生改变,FGPA修正相应块空余区,并实时掩护MRAM中的IBAT表。
这样的存储机制,能够担保大容量存储管理系统快速可靠的启动。
系统正常断电,将CPU运行内存中的IBAT写回MRAM,系统重启时,CPU直接从MRAM快速读取IBAT即可。
当系统非常断电启动,FPGA校验MRAM中的数据,若校验成功,CPU直接从MRAM中快速读取IBAT表即可;若校验失落败,系统的启动过程和第一次启动过程一样。
因此,系统只是第一次启动和系统非常断电校验失落败时的启动韶光较长。
OBAT表和IBAT表分别如表1、表2所示。

表1、表2中:(1)块状态表示正常写入块、正常替代块、正常失落败块、替代失落败块、未利用块和无效块。
(2)块尾页地址,表示块的正常写入页地址。
(3)文件号,表示不同有效载荷。
(4)本文件内块计数,表示该文件已经写入的块数。
(5)本文件下一流水级指针,即下一流水级的块序号。

3.2 文件化组织构造

星载高速大容量存储器,为办理低速写入单块速率的限定,采取四级流水并行写入的办法,以提高系统的存储速率。
同时,为了对多有效载荷的管理,存储系统采取文件化的管理办法。
所谓文件化管理,即根据不同的有效载荷分不同的文件对其进行存储,将未利用块根据四个流水级分为四个文件进行管理,以及无效块作为一个文件进行管理。

存储器系统第一次启动,FPGA从块的空余区扫描块状态组织成OBAT构造存放于MRAM中,CPU从MRAM读取OBAT到内存的一块连续存储空间,并由OBAT组建成IBAT,也是一个文件化的过程。
其OBAT变为IBAT,文件化的过程为:(1)根据块状态、流水级和文件号分为不同的块组;(2)针对各个有效载荷文件,根据OBAT中的本文件内块计数按照从小到大进行排序;(3)各有效载荷文件根据排序结果,将OBAT中的块计数的存储位置修正为指向下一流水级的指针,即块序号。
分流水级的未利用块和无效块无需排序,直接将其修正为后续的块序号。

OBAT组建成IBAT,得到文件化链式存储构造(如图3所示)后,原存放OBAT的连续内存空间大小不改变,相应块状态信息物理位置及序号不变,只是在内存中增加了相应文件的头信息(文件ID、文件大小、指向第一块块序号指针等)。
分流水级的未利用块文件中指针指向本流水级块序号,无效块文件中指针不分流水级,直接指向无效块序号。

3.3 文件化坏块更换

星载高速大容量存储器,CPU向FPGA供应有效的未利用块,FPGA采取四级流水存储技能向未利用块中写入数据,二者协同合营,共同实现对有效载荷数据高速有效稳定的存储。
FPGA内部为每个有效载荷文件创建四级流水乒乓缓冲块空间,即存放8个块序号。
CPU和FPGA同等,创建同样类似的缓冲块空间。
以某一有效载荷向Flash中写入数据为例:

(1)系统启动初始化,CPU为相应文件分配四个流水级的未利用块序号ABCD,并发送给FPGA。
如表3所示。

(2)FPGA将ABCD移入正在写入块缓冲空间,并向CPU申请第0流水级的未利用块。
CPU收到FPGA的申请后,首先将ABCD添加到文件链表,其次将ABCD移入正在写入块缓冲,末了分别从四个流水级未利用块文件中快速得到未利用块EFGH发送给FPGA。
FPGA将得到的未利用块添加到相应缓冲空间,并开始对A块写入数据。
如表4所示。

(3)当FGPA再次向CPU正常申请第0水级流未利用块时,和上一步骤操作类似。
如表5所示。

(4)若FPGA向第1流水级块F写入出错,FGPA将J直接作为其替代块,将J放入到正在写入块缓冲。
FGPA向CPU申请替代块,并奉告出错块的有效尾页地址。
CPU收到申请后,首先设置块F正常失落败状态和有效尾页地址,其次将J作为F的替代块,并将J添加到文件链表之后,设置J的块状态为正常替代块,末了从第1流水级未利用块文件中快速申请块M,如表6所示。

(5)当后续正常申请时,与步骤(2)和(3)的操作相同。

当涌现出错块时,保持出错块中已写入数据不变,从出错块的出错页地址开始向替代块中写入数据,避免了数据存储过程中的数据抖动,保持一定的速率写入数据。
对付任何一个流水级的块出错,都能够得到快速高效的相应。
星载存储器采取与写入数据时相对应的算法,对存储块中的数据进行回放。

4 结论

传统坏块管理方法是将已写入的数据复制到缓冲空间中,增大了缓冲空间资源占用;将已写入坏块数据重新写入未利用块的办法,造成数据存储速率抖动;只针对单流水级存储块履行坏块管理。

文件化坏块管理采取四倍于单块写入速率的四级流水存储技能,能够同时对多个有效载荷产生的数据分文件进行管理。
文件化坏块管理将已写入数据的坏块保留在有效载荷文件存储块链表中,从相应流水级未利用块文件快速获取新块作为其替代块,避免了数据存储速率抖动,担保了星载高速大容量存储器高效稳定运行。
此方案已在某型号任务中得到验证和运用。

参考文献

[1] 徐永刚,任国强,吴钦章,等.NAND Flash图像记录系统坏块管理关键技能[J].红外与激光工程,2012,41(4):1101-1106.

[2] 乔立岩,张鹏,魏德宝,等.一种新型NAND Flash坏块管理算法的研究与实现[J].电子丈量技能,2015,38(11):37-41.

[3] ASHRAF M N,DASTUR J.Software based nand flash management techniques[C].2009 International Conference on Computing, Engineering and Information,2009:168-171.

[4] 张小萌.NAND Flash存储管理的设计与实现[D].广州:广东工业大学,2014.

[5] 张鹏.NAND Flash坏块管理算法研究与实现[D].哈尔滨:哈尔滨工业大学,2015.

[6] MAHESH S,SAUGATA D P.Asynchronous bad block management in nand flash memory[P/OL]:United States,US 2013/0205072 A1.(2013-8-8)[2017-4-5].http://kns.cnki.net/kns/detail/detail.aspx?FileName=US9483395(B2)&DbName=SOPD2016.

[7] PELEATO B,TABRIZI H,AGARWAL R,et al.Ber-based wear leveling and bad block management for nand flash[C].2015 IEEE International Conference on Communications(icc),2015:295-300.

[8] MA Y,DU H,YANG S.Independent bad block management for mass storage flash memory arrays[C].2015 6th IEEE International Conference on Software Engineering and Service Science(icsess),2015:388-391.

[9] 赵亚慧,金龙旭,陶宏江,等.基于NAND Flash的高速大容量存储系统的设计[J].电光与掌握,2016,23(5):71-75,79.

[10] SUPRIYA K P.Study of bad block management and wear leveling in nand flash memories[J].International Journal of Research in Engineering and Technology,2013,2(10):284-288.

[11] 闫梦婷,安军社,江源源.实现流水存储及坏块处理的Flash掌握器设计[J].电子设计工程,2016,24(16):50-53.

[12] Samsungelectronics.1Gx8bit-2Gx8bit Nand flash memory_K9F8G08UXM[EB/OL].Samsung Corporation.2006-9-26(2007-3-31)[2017-4-6].https://wenku.baidu.com/view/96a00d00bed5b9f3f90f1cbe.html.

[13] 邢旺,郁聪冲.数据记录器中NAND Flash的坏块管理方法[J].舰船电子工程,2016,36(8):132-134,160.

[14] 舒文丽,吴云峰,赵启义,等.NAND Flash存储的坏块管理方法[J].电子器件,2011,34(5):580-583.

[15] 宁飞.大容量存储中NAND Flash坏块的管理方法[J].电子测试,2010,38(12):64-68.

[16] 汤瑞.一种基于NAND Flash固态硬盘的坏块管理方法[J].电子科技,2014,27(8):40-42.

标签:

相关文章

容桂地区网站建设,助力企业腾飞的新引擎

随着互联网的飞速发展,网站已经成为企业展示形象、拓展市场、提升竞争力的重要手段。在众多地区中,容桂凭借其独特的区位优势和丰富的产业...

通讯 2025-01-07 阅读0 评论0

宽带装机协议,构建高效网络连接的基石

随着信息技术的飞速发展,宽带网络已经成为人们生活中不可或缺的一部分。在享受高速网络带来的便捷生活的宽带装机协议作为网络连接的基础,...

通讯 2025-01-07 阅读0 评论0

封锁协议,保障网络安全的关键步骤

随着互联网的普及和发展,网络安全问题日益凸显。为了维护国家安全和社会稳定,我国政府采取了一系列措施,其中封锁协议作为一项重要手段,...

通讯 2025-01-07 阅读0 评论0

对赌协议,国外视角下的风险与机遇

对赌协议,作为一种常见的风险投资合同,近年来在我国资本市场备受关注。这种协议在国外同样具有广泛的应用。本文将从国外视角出发,探讨对...

通讯 2025-01-07 阅读0 评论0