基于闪存阵列的缓存容量确定方法
2011-06-13张娟娟蒲南江
电子测试 2011年8期
关键词:系统
张娟娟,蒲南江
(中北大学 仪器科学与动态测试教育部重点实验室 山西 太原 030051)
0 引言
在以NAND Flash为存储器的大容量存储系统中,有两种方案可以实现连续数据传输:一种是使用两片数据缓存读写,但是这种方案需要两片缓存输入输出数据线分别并联,这大大增加了电路复杂度;另一种方案是使用一片缓存对缓存写始终进行,但每次数据传输只传输半片缓存的数据,保证缓存不会变满变空。此种方法在一定程度上提高了系统的存储速度[2]。但是,由于NAND Flash的编程特点,在传输数据之前需要对Flash进行写编程控制命令和起始地址,使用处理器来实现这段操作花费的时间是相当可观的,虽然传输数据的过程速度快,但是平均传输速度提高的并不明显;基于以上技术的系统,启动一次数据传输的数据量比较大,这就对缓存的容量要求也比较大,为便于对Flash存储数据的管理缓存的容量设置为NAND Flash一页容量的整数倍[3]。另一方面,现今市场上的大容量的FIFO也比较贵,而且对于某些领域的数据存储系统其体积的大小也受到一定的限制。所以使用外部FIFO既增加了系统的成本开销,也给系统的体积增加不少[4-5]。
本文提出一种针对阵列式Flash存储系统缓存设备(FIFO)容量的确定方法,设计用于直接存储的写逻辑控制器(DMA)来实现数据存储,并根据NAND Flash特殊的工作方式,使用FPGA内部的RAM资源设计所需FIFO的容量,减少系统对缓存容量的过度依赖。
1 阵列存储系统的结构与工作原理
存储模块由4片Flash存储芯片组成。……
登录APP查看全文
