首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于固态存储器的ECC算法分析及实现
来源:本站整理  作者:佚名  2009-11-27 14:45:17




    列校验码生成用数学表达式表示为

   

   
    行校验码生成用数学表达式表示为


    这里xor表示异或操作。
    因为发生错误的数据位在该数据块中的字节的偏移量为

发生错误的数据位在所处的字节中的位偏移量为P4_1,P2_1,P1_1
    所以根据字节的偏移量和字节中的位的偏移量即可确定该页数据中哪一位发生了变化。
2.2 ECC校验流程
    当向NAND Flash的页中写入数据的时候,每2 048 bit生成4 bit的ECC校验码,称之为写ECC校验码,保存到每一页的空闲数据区中。
    当从NAND Flash中读取数据的时候,每2 048 bit生成4 bit的ECC校验码,称之为读ECC校验码。校验的时候,根据上述ECC生成原理不难推断:将从页空闲区中读出的写ECC校验码和读ECC校验码按位异或,若结果为0,则表示不存在错;若4 bit的异或结果中存在14 bit为1,表示存在1 bit错误,且可纠正;若4个bit的异或结果中只存在1 bit为1,表示空闲区中的校验码出错;其他情况均表示出现了无法纠正的错误,校验流程图,如图2所示。

3 ECC算法的实现
3.1 C语言实现ECC算法
    以一页数据2 048个字节作为测试数据产生ECC校验码,数据是0x00~0xFF,循环8次产生2048个数据,数据序列,如图3所示。

上一页  [1] [2] [3] 

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:195,457.00000 毫秒