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