NANDFLASH 8位ECC校验驱动

码农老王(JN) 2013-08-21 03:54:16
平台条件:s3c2416+K9GAG08U0D+Wince6.0
原有的驱动程序是4bit ECC校验,现在要改成8bit ECC校验,驱动程序为WHIMORY架构。现在的进度是:
1.将数据写入NANDFLASH正常,ECC相关寄存器能够产生正确的校验码,并且已经成功的写入到NANDFLASH的spare区。
2.在不开启ECC校验的情况下,读取NANDFLASH main区和spare区数据正常。
3.开启ECC校验后,每读取512字节,就从NANDFLASH的spare区中读取对应的ECC校验码(该校验码经过串口返回后发现,数据正常),然后等待ECC模块校验完成,然后通过NF8ECCERR0寄存器判断错误位数。但是,每次校验都是NF8ECCERR0[28:25] = 1010。(在手册中,1010~1111都是reserved)

问题:
1.从现象来看,好像是ECC校验模块儿并没有工作,不知道NF8ECCERR0[28:25] = 1010时有没有什么特殊的含义?
2.在参考大神“一介布衣萧萧”的博客时,发现他提到8 bit ECC校验需要使能一些中断,否则ECC校验无法正常工作。中断会影响ecc模块的工作与否么(我现在没有使能中断)? (blog:http://blog.csdn.net/brantyou/article/details/8205575)


跪求大神指点!!
...全文
600 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
一介布衣萧萧 2013-08-22
  • 打赏
  • 举报
回复
使能ECC 8bit校验之后,从NF8ECCERR0[28:25]中可以得知到底是哪个位错误,如果是1bit~8bit的错误,那么可以通过软件来纠错,其他的错误或者未知就是无法修复的。正常的则是没有错误
woshi_ziyu 2013-08-22
  • 打赏
  • 举报
回复
Nandflash 驱动移植 (五) 这篇文章是8位ECC校验的 可以参考配置
woshi_ziyu 2013-08-22
  • 打赏
  • 举报
回复
引用 5 楼 w0801101117 的回复:
[quote=引用 2 楼 woshi_ziyu 的回复:] Nandflash 驱动移植 (五) 这篇文章是8位ECC校验的 可以参考配置
谢谢,正在好好研究这篇文章。这篇文章是在FAL+FMD架构上做的,我是在WHIMORY架构上做的,有些区别,不过本质的东西还是一样的[/quote] 对寄存器的处理方式是一样的 文章写得很不错
码农老王(JN) 2013-08-22
  • 打赏
  • 举报
回复
引用 2 楼 woshi_ziyu 的回复:
Nandflash 驱动移植 (五) 这篇文章是8位ECC校验的 可以参考配置
谢谢,正在好好研究这篇文章。这篇文章是在FAL+FMD架构上做的,我是在WHIMORY架构上做的,有些区别,不过本质的东西还是一样的
码农老王(JN) 2013-08-22
  • 打赏
  • 举报
回复
引用 3 楼 brantyou 的回复:
使能ECC 8bit校验之后,从NF8ECCERR0[28:25]中可以得知到底是哪个位错误,如果是1bit~8bit的错误,那么可以通过软件来纠错,其他的错误或者未知就是无法修复的。正常的则是没有错误
你在blog中提到:“要使能一些中断,否则ECC无法正常校验....”。这里的“无法正常校验”是什么现象呢,还记得吗?
码农老王(JN) 2013-08-21
  • 打赏
  • 举报
回复
求回复啊,大神呢,给点儿意见就行

19,498

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
  • 嵌入开发(WinCE)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧