基于闪存的大容量存储阵列
由Verilog HDL语言编写模块后编译下载,用ChipSeope Pro采集到与NAND芯片的接口控制信号如图3所示。本文引用地址:https://www.eepw.com.cn/article/149176.htm
图3中信号是第一级存储芯片的接口信号,是以cle_wrl的上升沿来作为触发的,其中dio_wrl信号对应于上面编程时序图的I/Ox信号,ale_wrl、cle_wrl、we_wrl、re_wrl、wp_wrl信号为Flash芯片的地址锁存、命令锁存、写使能、读使能、写保护信号。其中写命令h80后的00、40、1B是上位机通过控制板发至存储板的行地址,由时序可知,与Flash芯片的所需要的编程时序一致。
3.2 流水的缓存模块设计
根据NAND Flash芯片的特点,高速数据控制模块的数据流按照页访问方式进行管理。设计选取的Flash芯片的页大小为4 kB,因此在写入的数据进入高速数据控制模块后,首先进行按照页大小进行数据分割。
在FPGA内开辟出40个容量为4 kB的双口RAM的缓冲区,每10个为一组,相对应一组Flash阵列中的10片芯片。数据传输通道工作时序如图4所示。
当数据率为200 MB·s-1时,数据传输周期是Tc1=5 ns,传送1页的时间是Tp1=4 096×Tc1=20.48μs,4级高速FIFO的延迟时间为△Tm=20 ns。在数据传输开始后,第1个10页数据(P1,P3,P5,P7,P9,P11,P13,P15、P17,P19)以200 MB·s-1的速率分别写入对应的存储器组缓冲区G0,第2个10页的数据以200 MB·s-1的速率分别写入相应的存储器组缓冲区G1,第3个10页的数据以200 MB·s-1的速率分别写入相应的存储器组缓冲区G2,第4个10页的数据以200 MB·s-1的速率分别写入相应的存储器组缓冲区G3。
评论