关于WinCE NAND flash坏块处理的问题

码农老王(JN) 码农老王(JN) 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
在对NAND Flash进行Erase和Write操作时,如果失败,那么就将此块标记为坏块,通常是将spare区的第一字节设为非0xFF。那么在将坏块标记出来后,怎么使用它的?在向某块写入东西的时候都要先判断它是不是坏块么?在NAND Flash的手册中,提到如果出现Erase Failure 或者Program Failure时,除了将本块标记为坏块之外,还要进行block replace。 如果我要把NK写到Block7 ~ Block n, 而Block 9 是坏块,我用一个reseved block(假设为Block i)来保存本应该写到block 9 中的内容,那么系统运行时,怎么实现自动忽略坏块block 9 而去执行block i中的内容呢?

对着现有的BSP包研究了一段时间了,可关于这个部分的实现还是不太懂,希望有知道的高手能稍微介绍一下,谢谢!
...全文

相关推荐

评论 7
收藏 已收藏
分享
返回顶部