首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Win CE6中与硬件ecc结合使用nandflash

在Win CE6中与硬件ecc结合使用nandflash
EN

Stack Overflow用户
提问于 2015-03-05 16:31:04
回答 1查看 163关注 0票数 0

目前,我正在适应一个新的nand闪存芯片的Win CE6设备。新的nand具有较高的ecc要求(4位/ 512字节),支持片上ecc计算。

Microsoft闪存文件系统写入扇区而不删除扇区。当将它的状态信息写入SectorInfo->wReserved2 2中时,就会发生这种情况。在这里,只有一个位被翻转到零。

问题是,在片上ecc中,当文件系统写入wReserved2时,芯片也会计算ecc.但是它不能正确地将此ECC写入设备,因为这将要求删除扇区,而文件系统则不这样做。

也有ecc-不受保护的区域在页面的其余部分,每页15字节。我计算出两次存储SectorInfo的6个重要字节(即扇区状态的wReserved2和逻辑扇区号的dwReserved1 )。

但是当这两个拷贝中的一个出现位错误时,我仍然不知道哪一个是正确的。

所以,我的问题是:

  • 对于如何使用不受保护的15字节来解决这个问题,有什么想法吗?
  • 是否可以将闪存文件系统配置为支持“写入状态信息之前的擦除”
  • 在这个问题上还有其他办法吗?

提前感谢您的帮助。

你好,提姆。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-03-09 15:35:10

这个问题解决了。存储两次dwReserved1 (每一次使用奇偶校验位,因为在扇区初始化时只写一次)。存储三次wReserved2 (因为奇偶校验位不能在这里应用-闪存文件系统写入wReserved2三次而不擦除扇区,即翻转单个比特)。如果两个副本是相同的,他们被假定是正确的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28882838

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档