nor flash寿命及失效模式测试

来源:互联网 发布:java jdk 7 32位 编辑:程序博客网 时间:2024/05/02 02:50

动手写flash文件系统前,花几天实测了一下flash寿命和失效模式。从以往使用经验中,对flash的失效模式是有一个基本的感性认识的,但毕竟没有实测过,都是凭经验和手册使用。djyos的flash文件系统会利用这些测试结果,用以优化文件系统性能;但不会依赖这些测试结果,一是这些测试结果并没有得到器件datasheet的明文确认,二是如果将来flash技术如果改变,使flash特性与测试结果不再相符,不会导致致命错误,三是测试不能覆盖所有厂家和型号。
测试的flash型号是sst39vf160,由于测试时间的问题,只测试了一个扇区4个字节,用了整整一个星期才完成所有测试,测试结果总结如下:
1、flash有寿命限制,sst39vf160手册上说是10万次,实验片的实测却超过80万次。
2、每一个位的寿命是独立的,也就是说,一个字节的bit0失效了,bit1仍然可以正常操作。
3、flash的寿命指的是被改写的次数,如果一次擦除或写操作不改变某一个位的内容,该位就不会被磨损。比如一个字节被反复执行“擦除-写入0xfe” 操作,把bit0损坏后,该字节高7位的寿命丝毫不受影响。
4、flash磨损后,总是表现为擦除不干净,多擦除几次又能够擦干净,随着磨损程度的加剧,越来越难以擦除干净,但只要擦干净了,写入一定是正确的。但写入的数据是否牢固就没有办法测了。
5、只要原来内容是1的位,总是可以被写入,但只要原来内容是0的位,就只有擦除才能改为1.

实测数据,对一个字节反复写0和擦除,寿命指的是写0的次数。
第一次擦除不干净的寿命:876842次
第一次出现连续两次擦除仍然不干净的寿命:1169465次
第一次出现连续4次擦除仍然不干净的寿命:1769609次
第一次出现连续8次擦除仍然不干净的寿命:1886879次

原文地址:http://blog.chinaaet.com/detail/2412.html