基于FPGA的NAND闪存控制器设计与开发
发布时间
阅读量:
阅读量
控制器核心功能解析
- 支持的 NAND flash memory 型号包括:Samsung, 128Mx8 (K9F1G08R0A, 1.8V)
- 支持以下指令:
擦除(块)
编程页面(将内部页面缓冲区内容复制到闪存中)
读取页面(将闪存页面内容载入内部缓冲区)。
- 为确保数据的高可靠性,在编程过程中将采用 ECC(汉明码)机制 - 在备用页面区域写入 ECC 字节,并在读取操作时,对每个扇区(512 B)的输入数据进行 ECC 计算,从而实现对单个错误的纠正以及双重错误的检测,该计算基于页面(2048 B)的数据。
- 提供一种简易的主机接口,适用于在同一 FPGA 上进行操作
- 配备两个双端口 RAM 缓冲区(位于 FPGA Block RAM 中),使得主机可以在准备下一次传输的同时,控制器能够使用另一个缓冲区完成当前与闪存之间的数据传输
- 构建一个结构紧凑的设计方案,可多次实例化,从而在同一 FPGA 设备上实现多个 NAND 闪存接口
擦除操作

时序图
全部评论 (0)
还没有任何评论哟~
