跟着硬汉学 发表于 2023-7-20 09:39:01

Nand Flash识别

本帖最后由 跟着硬汉学 于 2023-7-20 09:41 编辑

在看Nand Flash的数据手册的过程中,分不清这个里面的Page和Block,他们到底是怎么区分的,还有图片中最下面的Page Register中的2K Bytes和64 Bytes又代表什么?有大神可指点一下吗?非常感谢!

学无止境 发表于 2023-7-20 10:57:27

不就是相当于1个 block 中有 64个pages

eric2013 发表于 2023-7-20 11:30:52

1 bock = xxx Page
1 page= 2048字节 + 64字节备用区

/*
      【NAND Flash 结构定义】
   备用区有16x4字节,每page 2048字节,每512字节一个扇区,每个扇区对应16自己的备用区:

         每个PAGE的逻辑结构,前面512Bx4是主数据区,后面16Bx4是备用区
      ┌──────┐┌──────┐┌──────┐┌──────┐┌──────┐┌──────┐┌──────┐┌──────┐
      │ Main area││ Main area││ Main area││Main area   ││ Spare area ││ Spare area ││ Spare area ││Spare area│
      │            ││            ││            ││            ││            ││            ││            ││            │
      │   512B   ││    512B    ││    512B    ││    512B    ││    16B   ││   16B    ││   16B    ││    16B   │
      └──────┘└──────┘└──────┘└──────┘└──────┘└──────┘└──────┘└──────┘

         每16B的备用区的逻辑结构如下:(FlashFS中的配置)
      ┌───┐┌───┐┌───┐┌───┐┌──┐┌───┐┌───┐┌───┐┌──┐┌──┐┌──┐┌──┐┌───┐┌───┐┌───┐┌───┐
      │LSN0││LSN1││LSN2││LSN3││COR ││BBM   ││ECC0││ECC1││ECC2││ECC3││ECC4││ECC5││ECC6││ECC7││ ECC8 ││ ECC9 │
      │      ││      ││      ││      ││    ││      ││      ││      ││    ││    ││    ││    ││      ││      ││      ││      │
      └───┘└───┘└───┘└───┘└──┘└───┘└───┘└───┘└──┘└──┘└──┘└──┘└───┘└───┘└───┘└───┘

    - LSN0 ~ LSN3 : 逻辑扇区号(logical sector number) 。
      - COR         : 数据损坏标记(data corrupted marker)。
      - BBM         : 坏块标志(Bad Block Marker)。
    - ECC0 ~ ECC9 : 512B主数据区的ECC校验。

      K9F1G08U0A 和 HY27UF081G2A 是兼容的。芯片出厂时,厂商保证芯片的第1个块是好块。如果是坏块,则在该块的第1个PAGE的第1个字节
      或者第2个PAGE(当第1个PAGE坏了无法标记为0xFF时)的第1个字节写入非0xFF值。坏块标记值是随机的,软件直接判断是否等于0xFF即可。

      注意:网上有些资料说NAND Flash厂商的默认做法是将坏块标记定在第1个PAGE的第6个字节处。这个说法是错误。坏块标记在第6个字节仅针对部分小扇区(512字节)的NAND Flash
      并不是所有的NAND Flash都是这个标准。大家在更换NAND Flash时,请仔细阅读芯片的数据手册。

*/



dyhfaily 发表于 2023-7-20 14:13:00

eric2013 发表于 2023-7-20 11:30
1 bock = xxx Page
1 page= 2048字节 + 64字节备用区



老哥 1、你这个注释是在哪个工程里面的 2、还有对于nand flash这种原理性的基础知识你有没有在某个文档中介绍过

yunqi 发表于 2023-7-20 14:54:32

eric2013 发表于 2023-7-20 11:30
1 bock = xxx Page
1 page= 2048字节 + 64字节备用区



第二张图是什么软件啊,怎么接的Nand

eric2013 发表于 2023-7-20 15:46:04

dyhfaily 发表于 2023-7-20 14:13
老哥 1、你这个注释是在哪个工程里面的 2、还有对于nand flash这种原理性的基础知识你有没有在某个文档中 ...

1、基于STM32H7的RTX5+RL-USB+RL-FlashFS+RL-TCPnet+emWin6.x综合模板发布,含MDK AC5和AC6,升级至V1.1(2021-03-01)
https://www.armbbs.cn/forum.php?mod=viewthread&tid=104012

2、就是NAND的官方手册里面,这个是官方手册里面整理的。

eric2013 发表于 2023-7-20 15:46:26

yunqi 发表于 2023-7-20 14:54
第二张图是什么软件啊,怎么接的Nand

这个是RL-FlashFS在MDK里面的配置向导。

跟着硬汉学 发表于 2023-7-20 20:03:56

eric2013 发表于 2023-7-20 11:30
1 bock = xxx Page
1 page= 2048字节 + 64字节备用区



非常感谢,看手册已经弄明白了!

mac.chen 发表于 2024-3-7 16:34:38

项目需要SD NAND芯片吗,可以送样测试哦,13537608950

mac.chen 发表于 2024-3-7 16:35:03

项目需要SD NDND芯片吗,可以送样测试哦,13537608950
页: [1]
查看完整版本: Nand Flash识别