没有合适的资源?快使用搜索试试~ 我知道了~
首页NAND Flash产生坏块原因
NAND Flash产生坏块原因
需积分: 31 696 浏览量
更新于2023-05-23
评论
收藏 21KB DOC 举报
由于NAND Flash的工艺不能保证NAND的Memory Array在其生命周期中保持性能的可靠,因此,在NAND的生产中及使用过程中会产生坏块。坏块的特性是:当编程/擦除这个块时,不能将某些位拉高,这会造成Page Program和Block Erase操作时的错误,相应地反映到Status Register的相应位。
资源详情
资源评论
资源推荐

NAND Flash 产生坏块原因
由于 NAND Flash 的工艺不能保证 NAND 的 Memory Array 在其生命周期中保持性能的可靠,
因此,在 NAND 的生产中及使用过程中会产生坏块。坏块的特性是:当编程 /擦除这个块
时,不能将某些位拉高,这会造成 Page Program 和 Block Erase 操作时的错误,相应地反映
到 Status Register 的相应位。总体上,坏块可以分为两大类:
1.固有坏块
这是生产过程中产生的坏块,一般芯片原厂都会在出厂时都会将坏块第一个 page 的 spare
area 的第 6 个 byte 标记为不等于 0xff 的值。
2.使用坏块
这是在 NAND Flash 使用过程中,如果 Block Erase 或者 Page Program 错误,就可以简单地
将这个块作为坏块来处理,这个时候需要把坏块标记起来。为了和固有坏块信息保持一致
将新发现的坏块的第一个 page 的 spare area 的第 6 个 Byte 标记为非 0xff 的值。
我们了解了 NAND Flash 出厂时在 spare area 中已经反映出了坏块信息,因此,如果在擦
除一个块之前,一定要先 check 一下 spare area 的第 6 个 byte 是否是 0xff,如果是就证明这
是一个好块,可以擦除;如果是非 0xff,那么就不能擦除。当然,这样处理可能会犯一个
错误―――“错杀伪坏块”,因为在芯片操作过程中可能由于电压不稳定等偶然因素会造成
NAND 操作的错误。但是,为了数据的可靠性及软件设计的简单化,我们就要奉行“蒋委员
长”的“宁可错杀一千,也决不放过一个”的宗旨。
补充说明:
1.需要对前面由于 Page Program 错误发现的坏块进行一下特别说明。如果在对一个块的
某个 page 进行编程的时候发生了错误就要把这个块标记为坏块,首先就要把其他好的 page
里面的内容备份到另外一个空的好块里面,然后,把这个块标记为坏块。当然,这可能会
犯“错杀”之误,一个补救的办法,就是在进行完页备份之后,再将这个块擦除一遍,如果
Block Erase 发生错误,那就证明这个块是个真正的坏块,那就毫不犹豫地将它打个“戳”吧!
2.可能有人会问,为什么要使用 spare area 的第六个 byte 作为坏块标记。这是 NAND
Flash 生产商的默认约定,你可以看到 Samsung,Toshiba,STMicroelectronics 都是使用这个
Byte 作为坏块标记的。


















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0