NandFlash手册梳理与操作流程 -- BadBlock检测

本文介绍了NandFlash中的坏块定义,强调了出厂时坏块的数量要求。详细阐述了坏块检测方法,包括出厂坏块标记、检测流程,并提供了操作命令、地址和时序的详细说明,以及示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、坏块的定义及坏块的出厂数量要求

在这里插入图片描述
我们以GD5F1GQ5REYIG为例:
1)在出厂时,就有一些blocks无效,官方会在手册中声明全部block数量和可用block的最小数量(NVB);
2)坏块(invalid block)是至少有一页含有多个bad bit,且能够被ECC 校验出来的。虽然额外的坏块会随着使用增加,但在整个Flash芯片周期内,可用的block数量仍然满足NVB的要求。

2、坏块的检测方法

在这里插入图片描述

1)出厂坏块标记

在出厂时,工厂在each block的first spare area,将bad block设置mark(0x00);

2)出厂坏块标记的使用

在进行烧写或者擦除操作时,应该首先检查each block的first page的first spare area location,看看是否是非0xFF的数据,如果是,代表这个block是坏块;

3)出厂坏块检测具体流程

对于flash的操作(读、擦除、写),流程中有3个关键地方,我们需要掌握,操作指令、操作地址和操作时序
出厂坏块检测其实就是把每个block的第一页读到cache中,然后在cache中读出0x800位置的字节内容

3-1 操作命令:

13H (PAGE READ to cache)
0FH (GET FEATURES command to read the status)
03H or 0BH (Read from cache)/3BH (Read from cache x2)/6BH (Read from cache x4)/BBH (Read from cache
dual IO)/EBH (Read from cache Quad IO)/EEH (Read from cache Quad IO DTR)

3-2 操作地址:

页地址:页地址和block地

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值