NAND FLASH 与普通的EEPROM 和ROM不一样,本身就存在读操作位翻转的问题,就是说数据本来就是对的,但是由于NAND FLASH 的特性,读的时候,有可能会有1个BIT的数据发生翻转, 1变成 0 或者是 0变成1;
所以每个NAND FLASH的页面都有 个数据效验区域,用来计算读出的数据是否发生位翻转,并且可同通过ECC的算发把其中错误的位给矫正过来
所以编程器读NAND FLASH 发生数据变化,并不能说明肯定是坏的;
而且还有说明的是,NAND FLASH 新的芯片本来就存在坏块,需要软件管理,把坏的区域躲开来使用,每片FLASH的坏块位置不一样
所以使用编程器把数据从旧片读出,再写入,并不能保证数据能运行
|