[Flash]NAND Flash产生坏块原因
gebi1218 发表于 2010-5-25 22:32:00由于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作为坏块标记的。
本文来自:我爱研发网(52RD.com) - R&D大本营
详细出处:http://www.52rd.com/Blog/Detail_RD.Blog_gebi1218_23862.html
相关文档:
Architecture: i386, amd64
Configure your system to use lenny-backports by adding this line to your sources.list
deb http://www.backports.org/debian lenny-backports main contrib non-free
How to install flashplugin-nonfree :
apt-get update
apt-get install flashplugin-nonfree
How to update flash ......
P0werPoint中插入Flash动画的另一种方法
PowerPoint因其通俗易懂、容易上手而成为老师们制作课件的常用工具,而Flash是目前比较流行的动画制作软件,有时在PowerPoint课件中为了更形象地说明问题,希望可以插入Flash动画。
看过《中国电脑教育报》以前刊登过在PowerPoint中插入Flash动画的文章,基本方法是选择菜单&ldquo ......
这是一篇讲解如何使用XML实现Flash与通信的入门级实例教程。通过本例的学习,我们将了解使用XML开发Flash RIAs的基本流程。
从Flash Player 5开始,就可以使用XML对象来实现Flash与后台通信。Flash浏览器与XML数据之间的直接进行数据交换,并且同LoadVars函数一样,都是以字符串形式传递的。后台语言作为XML数据和数据库 ......
联系QQ:787135989
提供FLASH文件保护.
可以最大限度保护你的FLASH的安全!
防止闪客精灵还原你的SWF文件
中断Action Script Viewer查看脚本资源!
也提供手工破解FLASH
防止非法分配你的个人资源.
------- ......