Advertisement

基于FPGA的NAND闪存控制器设计与开发

阅读量:

控制器核心功能解析

  • 支持的 NAND flash memory 型号包括:Samsung, 128Mx8 (K9F1G08R0A, 1.8V)
    • 支持以下指令:

擦除(块)

编程页面(将内部页面缓冲区内容复制到闪存中)

读取页面(将闪存页面内容载入内部缓冲区)。

  • 为确保数据的高可靠性,在编程过程中将采用 ECC(汉明码)机制 - 在备用页面区域写入 ECC 字节,并在读取操作时,对每个扇区(512 B)的输入数据进行 ECC 计算,从而实现对单个错误的纠正以及双重错误的检测,该计算基于页面(2048 B)的数据。
  • 提供一种简易的主机接口,适用于在同一 FPGA 上进行操作
  • 配备两个双端口 RAM 缓冲区(位于 FPGA Block RAM 中),使得主机可以在准备下一次传输的同时,控制器能够使用另一个缓冲区完成当前与闪存之间的数据传输
  • 构建一个结构紧凑的设计方案,可多次实例化,从而在同一 FPGA 设备上实现多个 NAND 闪存接口

擦除操作

时序图

![](https://ad.itadn.com/c/webl

全部评论 (0)

还没有任何评论哟~