一种闪存器件仿真设备以及闪存主控模块评测方法

文档序号:6771330阅读:155来源:国知局
专利名称:一种闪存器件仿真设备以及闪存主控模块评测方法
技术领域
本发明涉及一种闪存器件仿真设备以及闪存主控模块评测方法。
背景技术
基于闪存的固态存储方式以其高抗震性、低功耗、高密度、高速等优
点,得到了迅速的发展从最初只有几MB容量的SmartMedia卡到 MultiMedia卡,再到现在人们常用的GB量级容量MP3、 U盘等产品,甚至 可以构成容量高达几个TB的海量固态存储器等。闪存存储已经深入到了人 们生产生活的方方面面,成为最具潜力的下一代主流存储方式之一。目前 主流的闪存芯片主要有两种:NAND闪存和N0R闪存。NAND闪存存储密度高、 写入速度快,适于海量数据存储和访问的场合;而NOR读取速度较快,支 持单字节读写,适于作为程序代码存储器。
相对于传统的磁存储方式,闪存存储也具有其特有的局限性。首先, 闪存所能承受的擦写次数有限,例如,常见的基于MLC架构的NAND闪存, 其擦写次数仅有一万次,即使采用价格昂贵的SLC架构,擦写次数最多也 只有10万次,这远小于磁存储介质所允许的擦写次数;其次,闪存介质可 能存在有一定数量的坏块,这些坏块是不能可靠地写入或保存数据的,随 着使用时间的增加,还会有新的坏块出现;再次,受内部结构的限制,闪 存芯片的读写必须以页为单位进行,如常见的页容量为4KB,这给数据的 随机访问带来了 一定的不便。
由于闪存存在上述特性,基于闪存的固态存储系统一般采用如图l所 示架构存储系统接口 201采用如IDE、 SATA、 1394、 USB等方式;闪存主 控模块202是存储系统的控制系统,主要负责存取负载(外界输入或输出 的各种命令、数据、读写请求等)的解析、闪存器件的管理和调度等,一 般包含损耗均衡,逻辑-物理地址映射,坏块管理、错误管理等功能;闪存 阵列203由多个闪存213组成,负责存储数据。外界产生存取负载的系统 一般为有数据存取需求的系统,如PC等。在实际工作时,闪存主控模块202实时接收并解析由存储系统接口201 输入的数据,并依据一定的管理策略,对闪存阵列203进行一系列适当的 读、写、擦等操作,将外界系统输入的数据存入闪存阵列203中或从闪存 阵列203中读出数据并输出给外界系统。闪存主控模块202 —方面需要保 证数据的高速、可靠访问,另一方面还要尽量均衡闪存介质各位置上的擦 写次数,以延长闪存器件的整体使用寿命,另外,闪存主控模块202还要 实时处理和预测各种突发性的读写错误。可以看出,闪存主控模块202的 性能将直接影响存储系统的整体性能,对其的设计和优化是闪存存储系统 设计中最为重要的一个环节。
然而,在实际系统中,由于闪存器件的各种特性如接口速度、误码率、 坏块、突发性访问错误等都是不可控的,这就使得产品开发者无法高效全 面地评价闪存主控模块202的性能,因此也无法有针对性地对系统性能进 行进一步地优化设计,这给产品的开发带来了很大的困难。对此,现有解 决方案是在计算机上构建软件仿真环境,模拟闪存器件各种可能的负载和 突发状况,对管理算法进行测试。但这种软件模拟的方法与系统实际工作 时的状况毕竟还有很大差别,仅能测试管理算法在理论上的表现,不能真 实地反映其在实际系统中的表现以及整体系统的性能,因此测试的结果也 就只能作为一种参考。
因此,现有的闪存存储系统的综合测评是比较困难的。首先,闪存主 控模块对上层系统屏蔽了闪存的特性,使得上层系统无法直接得到底层闪 存器件的信息,因而对应一定的存取负载,上层系统所能测到参数仅有该 存储系统的数据吞吐速率,对于闪存具体执行了多少次读、写及擦除命令, 上层系统无法直接得到;再者,存储系统需要实现闪存坏块管理、错误数 据纠正、损耗均衡等功能,然而,闪存中出现坏块和存储数据错误情形在 时间、空间上是完全随机且离散的,在无法控制闪存是否出现异常及异常 出现的时间、位置和密度的情况下,评价存储系统的坏块管理和错误数据 纠正等功能是没有意义的。同时,闪存器件允许擦除次数高达 10, 000-100, 000次,在一定的存取负载下,在有限的时间内,很难准确评 价系统中闪存器件的使用寿命。

发明内容
本发明所要解决的技术问题是提供一种真实检测和评估闪存主控模块性能的装置以及对闪存主控模块的性能进行检测和评估的方法。 本发明的目的是通过以下技术方案来实现的 本发明公开一种闪存器件仿真设备,包括-闪存接口模拟模块,用于与闪存主控模块交换数据;
闪存存储特性模拟模块,用于模拟闪存的信号,并输出到所述闪存接 口模拟模块;
数据存储模块,用于存储各种数据; 通信接口模块,用于与上位机交换数据;
操作监测模块,用于接收由所述闪存接口模拟模块输入的信号,并把 该信号传送到所述通信接口模块;以及
系统配置模块,用于控制所述闪存存储特性模拟模块、数据存储模块 和操作监测模块的工作。
所述闪存存储特性模拟模块所模拟闪存的信号,对应闪存的内部功 能,所述内部功能包括访问速度、读写延迟等接口特性参数,总容量、 页容量、坏块数量、位置、原始误码率、数据错误、坏块、写入操作失败、 读出操作失败以及突发错误概率。
所述操作监测模块还处理分析所接收的闪存主控模块所输出的数据, 并把处理结果通过所述通信接口模块传送给所述上位机。
所述系统配置模块保存有用于控制闪存存储特性模拟模块的存储特 性参数的配置参数;所述存储特性参数包括访问速度、读写延迟等接口 特性参数,总容量、页容量、坏块数量和位置、原始误码率,以及突发错 误概率。
所述上位机通过通信接口模块向所述系统配置模块写入所述配置参数。
所述通信接口模块采用USB接口 。
所述数据存储模块采用DRAM或硬盘,所述闪存接口模拟模块、闪存 存储特性模拟模块、系统配置模块和操作监测模块集成在同一片FPGA上。
本发明还公开一种闪存主控模块评测方法,包括如下步闪存器件仿真设备通过闪存接口模拟模块与闪存主控模块连接;
A. 闪存器件仿真设备向闪存主控模块发出模拟闪存的信号并接收闪 存主控模块输出的信号;
B. 对闪存主控模块输出的信号进行统计与分析。 闪存器件仿真设备包括通信接口模块、数据存储模块、系统配置模
块、操作监测模块和闪存存储特性模拟模块;该方法还包括如下步骤-
上位机通过所述通信接口模块向所述系统配置模块输入用于控制闪 存存储特性模拟模块的存储特性参数的配置参数,所述存储特性参数包括
访问速度、读写延迟等接口特性参数,总容量、页容量、坏块数量和位置、 原始误码率,以及突发错误概率。
所述步骤A包括
所述操作监测模块负责接收并处理通过所述闪存接口模拟模块输入
的所述闪存主控模块的数据;所述闪存存储特性模拟模块将由所述闪存主 控模块输入的闪存地址转化数据存储模块的物理地址,当所述闪存主控模 块命令写入数据时,所述闪存存储特性模拟模块产生写入数据相关的冗余 信息,与由所述闪存主控模块所要写入数据一起写入到所述数据存储模块; 当所述闪存主控模块命令读出数据时,所述闪存存储特性模拟模块对由所 述数据存储模块读出数据进行冗余信息去除;所述闪存存储特性模拟模块 根据所述系统配置模块的命令产生对应相应的存储特性参数的信号,该信 号通过所述闪存接口模拟模块传送给所述闪存主控模块; 所述步骤B包括
所述闪存主控模块输出的信号由所述闪存器件仿真设备处理后传送
给上位机,由所述上位机进行统计与分析。
与现有技术相比本发明的优点在于,本发明的闪存器件仿真设备对于 闪存主控模块而言,能够完全模拟成闪存器件,提供足够真实的接口速度 和存储特性,并能够将时间、空间上完全随机且离散的闪存异常情形进行 集中化处理,也可以自定义模拟闪存块的擦除次数上限。因此采用本发明 的设备及方法能够准确、高效地评测闪存存储系统的各种性能参数。


图1为基于闪存的固态存储系统的架构示意图; 图2为本发明可配置式闪存器件仿真设备实施例的功能框图; 图3为本发明闪存主控模块评测方法实施例的操作流程图; 图4为本发明可配置式闪存器件仿真设备实施例的硬件结构示意图。 其中,201-存储系统接口, 202-闪存主控模块,213-闪存、203-闪存 阵列,101-闪存接口模拟模块,102-闪存存储特性模拟模块,103-数据存 储模块,104-系统配置模块,105-操作检测模块,106-通信接口模块,300-上位机,301- PC, 801-USB接口, 802-FPGA, SDRAM-803。
具体实施例方式
下面结合附图和较佳的实施例对本发明作进一步说明。
如图2所示,可配置式闪存器件仿真设备包括如下部分
1、 闪存接口模拟模块ioi,为模拟闪存器件输出的接口,作为本设备 与闪存主控模块202的接口;
2、 闪存存储特性模拟模块102,负责模拟出闪存器件的内部功能,如 数据的写入、读出、坏块、突发读写错误、原始误码等;
3、 数据存储模块103,能够存储由闪存主控模块202写入的数据;
4、 系统配置模块104,负责接收并保存上位机300输入的配置参数, 并根据所述配置参数对被模拟出的闪存器件的多种存储特性进行配置,例 如访问速度、读写延迟等接口特性参数,总容量、页容量、坏块数量和位 置、原始误码率、突发错误概率等存储特性参数;
5、 操作监测模块105,监测闪存主控模块202对本设备进行的各种操 作,对其进行记录与统计分析,并通过通信接口模块106发送给上位机;
6、 通信接口模块106,为本设备与上位机107进行数据交换的接口, 上位机300为具有数据处理能力的电子计算机。
如图4所示,可配置式闪存器件仿真设备的硬件能够以以下方式实现 所述数据存储模块103采用DRAM,所述通信接口模块106采用USB接口 , 所述闪存接口模拟模块101、闪存存储特性模拟模块102、系统配置模块 104和操作监测模块105集成在同一片FPGA上。而所述上位机300则采用PC301。
所述数据存储模块103也可以采用硬盘存储数据。
如图4所示,可配置式闪存器件仿真设备的工作流程可以分为两个工
作阶段被动配置模式和主动监测模式。
可配置式闪存器件仿真设备通过通信接口模块106与上位机107相连。
被动配置模式下,上位机300通过所述通信接口模块106向所述系统配置 模块104输入用于控制闪存存储特性模拟模块102的存储特性参数的配置 参数。所述配置参数包括如下配置数据闪存类型、内部存储模块组织结 构、接口特性参数以及异常产生算法等。
之后,可配置式闪存器件仿真设备则可以进入主动监测模式。将闪存 接口模拟模块101与闪存主控模块202相连,开启闪存主控模块202并加 以预定存取负载,操作监测模块105负责监测、统计闪存接口模拟模块101 接收到的由闪存主控模块202输出的各种操作命令数据,并通过通信接口 模块106发送到上位机300。
在此主动监测模式过程中,闪存存储特性模拟模块102将由所述闪存 主控模块202输入的闪存地址转化数据存储模块103的物理地址,当所述 闪存主控模块202命令写入数据时,所述闪存存储特性模拟模块102产生 写入数据相关的冗余信息,与由所述闪存主控模块202所要写入数据一起 写入到所述数据存储模块103;当所述闪存主控模块202命令读出数据时, 所述闪存存储特性模拟模块102对由所述数据存储模块103读出数据进行 冗余信息去除。
并且,所述闪存存储特性模拟模块102根据所述系统配置模块104的 命令产生与相应的存储特性参数对应的信号,并通过所述闪存接口模拟模 块101传送给所述闪存主控模块202。闪存存储特性模拟模块102还能自 定义闪存擦除次数上限等参数。
所述闪存主控模块202输出的命令信号由所述闪存器件仿真设备传送 给上位机,由所述上位机300进行统计与分析。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说 明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若 干简单推演或替换,都应当视为属于本发明的保护范围。
权利要求
1、一种闪存器件仿真设备,用于监测闪存主控模块(202)的工作状态,其特征在于,包括闪存接口模拟模块(101),用于与闪存主控模块(202)交换数据;闪存存储特性模拟模块(102),用于模拟闪存的信号,并输出到所述闪存接口模拟模块(101);数据存储模块(103),用于存储各种数据;通信接口模块(106),用于与上位机(300)交换数据;操作监测模块(105),用于接收由所述闪存接口模拟模块(101)输入的信号,并把该信号传送到所述通信接口模块(106);以及系统配置模块(104),用于控制所述闪存存储特性模拟模块(102)、数据存储模块(103)和操作监测模块(105)的工作。
2、 根据权利要求1所述的闪存器件仿真设备,其特征在于,所述闪 存存储特性模拟模块(102)所模拟闪存的信号,对应闪存的内部功能,所 述内部功能包括数据的写入、读出、坏块、突发读写错误和原始误码。
3、 根据权利要求1所述的闪存器件仿真设备,其特征在于,所述操 作监测模块(105)还处理分析所接收的闪存主控模块(202)所输出的数 据,并把处理结果通过所述通信接口模块(106)传送给所述上位机(300)。
4、 根据权利要求1所述的闪存器件仿真设备,其特征在于,所述系 统配置模块(104)保存有用于控制闪存存储特性模拟模块(102)的存 储特性参数的配置参数;所述存储特性参数包括访问速度、读写延迟等 接口特性参数,总容量、页容量、坏块数量和位置、原始误码率、数据错 误、写入操作失败、读出操作失败以及突发错误概率。
5、 根据权利要求1所述的闪存器件仿真设备,其特征在于,所述上 位机(300)通过通信接口模块(106)向所述系统配置模块(104)写入所 述配置参数。
6、 根据权利要求l、 2、 3、 4或5所述的闪存器件仿真设备,其特征 在于,所述通信接口模块(106)采用USB接口。
7、 根据权利要求6所述的闪存器件仿真设备,其特征在于,所述数据存储模块(103)采用DRAM或硬盘,所述闪存接口模拟模块(101)、闪 存存储特性模拟模块(102)、系统配置模块(104)和操作监测模块(105) 集成在同一片FPGA上。
8、 一种闪存主控模块评测方法,其特征在于,包括如下步骤 闪存器件仿真设备通过闪存接口模拟模块(101)与闪存主控模块(202)连接;A. 闪存器件仿真设备向闪存主控模块(202)发出模拟闪存的信号并 接收闪存主控模块(202)输出的信号;B. 对闪存主控模块(202)输出的信号进行统计与分析。
9、 根据权利要求8所述的闪存主控模块评测方法,其特征在于,闪 存器件仿真设备包括通信接口模块(106)、数据存储模块(103)、系统 配置模块(104)、操作监测模块(105)和闪存存储特性模拟模块(102);该方法还包括如下步骤上位机(300)通过所述通信接口模块(106)向所述系统配置模块(104)输入用于控制闪存存储特性模拟模块(102)的存储特性参数的配置参数,所述存储特性参数包括访问速度、读写延迟等接口特性参数,总容量、页容量、坏块数量和位置、原始误码率,以及突发错误概率。
10、 根据权利要求9所述的闪存主控模块评测方法,其特征在于,所述步骤A包括所述操作监测模块(105)负责接收并处理通过所述闪存接口模拟模 块(101)输入的所述闪存主控模块(202)的数据;所述闪存存储特性模 拟模块(102)将由所述闪存主控模块(202)输入的闪存地址转化数据存 储模块(103)的物理地址,当所述闪存主控模块(202)命令写入数据时, 所述闪存存储特性模拟模块(102)产生写入数据相关的冗余信息,与由所 述闪存主控模块(202)所要写入数据一起写入到所述数据存储模块(103); 当所述闪存主控模块(202)命令读出数据时,所述闪存存储特性模拟模块 (102)对由所述数据存储模块(103)读出数据进行冗余信息去除;所述 闪存存储特性模拟模块(102)根据所述系统配置模块(104)的命令产生与相应的存储特性参数对应的信号,并通过所述闪存接口模拟模块(101) 传送给所述闪存主控模块(202); 所述步骤B包括所述闪存主控模块(202)输出的信号由所述闪存器件仿真设备处理后传送给上位机(300),由所述上位机(300)进行统计与分析。
全文摘要
本发明提供一种闪存器件仿真设备以及闪存主控模块评测方法。闪存器件仿真设备,包括闪存接口模拟模块(101),用于与闪存主控模块(202)交换数据;闪存存储特性模拟模块(102),用于模拟闪存的信号,并输出到所述闪存接口模拟模块(101);数据存储模块(103),用于存储各种数据;操作监测模块(105),用于接收由所述闪存接口模拟模块(101)输入的信号;系统配置模块(104),用于控制所述闪存存储特性模拟模块(102)、数据存储模块(103)和操作监测模块(105)的工作;以及通信接口模块(106),用于与上位机(300)交换数据。本发明能够准确、高效地评测闪存存储系统的各种性能参数。
文档编号G11C29/56GK101419844SQ200810217479
公开日2009年4月29日 申请日期2008年11月18日 优先权日2008年11月18日
发明者凯 倪, 崔铭常, 松 张, 张海光, 李慧平, 林喜荣, 林家用, 毛乐山, 王怀涛, 程雪岷, 符英文, 马建设 申请人:清华大学深圳研究生院;东莞市智盾电子技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1