烂泥桑 发表于 2014-9-23 18:10:42

请问ECC是如何检测出2bit错误的?(已解决)

本帖最后由 FSL_TICS_ZP 于 2014-10-8 16:07 编辑

问题入标题;其实我也看了一下关于ECC原理的文章,感觉自己还是明白的,但是明明记得ECC能检测出2bit的错误,却没能从一些说明的文章中看出来;附上我看过的文章中的一段(我看网上很多资料都是互抄的吧。。)


当往NAND Flash的page中写入数据的时候,每256字节我们生成一个ECC校验和,称之为原ECC校验和,保存到PAGE的OOB(out-of-band)数据区中。当从NAND Flash中读取数据的时候,每256字节我们生成一个ECC校验和,称之为新ECC校验和。

将从OOB区中读出的原ECC校验和新ECC校验和按位异或,若结果为0,则表示不存在错(或是出现了 ECC无法检测的错误);若3个字节异或结果中存在11个比特位为1,表示存在一个比特错误,且可纠正;若3个字节异或结果中只存在1个比特位为1,表示 OOB区出错;其他情况均表示出现了无法纠正的错误



那么是从“将从OOB区中读出的原ECC校验和新ECC校验和按位异或,若结果..”的结果中检测出2bit错误吗?结果会有什么特征?另外OBB区出错是什么意思啊?

所看文档网址,我觉得讲的挺好的:http://blog.chinaunix.net/uid-21880738-id-1813090.html

FSL_TICS_ZP 发表于 2014-9-25 16:32:28

你好,楼主!
FSL 的部分Kinetis K系列MCU有提供ECC功能的硬件模块NAND Flash Controller (NFC)

烂泥桑 发表于 2014-9-25 18:54:39

FSL_TICS_ZP 发表于 2014-9-25 16:32
你好,楼主!
FSL 的部分Kinetis K系列MCU有提供ECC功能的硬件模块NAND Flash Controller (NFC) ...

啊,你好;我在用的是ATmel的9260,看到这方面的知识,有不懂的就问问了;FSL的寄存器中应该也是提供类似的信息吧?

richyhuang 发表于 2015-9-29 17:09:40

FSL_TICS_ZP 发表于 2014-9-25 16:32
你好,楼主!
FSL 的部分Kinetis K系列MCU有提供ECC功能的硬件模块NAND Flash Controller (NFC) ...

有详细使用的例子吗,applicattion note之类的也可以啊,
页: [1]
查看完整版本: 请问ECC是如何检测出2bit错误的?(已解决)