一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

嵌入式设备NANDFlash的ECC码存储方法与流程

2021-10-30 02:08:00 来源:中国专利 TAG:嵌入式 设备 方法 镜像文件 启动

嵌入式设备nand flash的ecc码存储方法
技术领域
1.本发明属于嵌入式设备技术领域,具体涉及一种基于嵌入式设备启动程序的nand flash镜像文件ecc码存储方法。


背景技术:

2.随着科技产业发展,嵌入式设备越来越多地使用nand flash芯片设计,以应对大容量存储需求,各种不同工艺的nand flash也被设计出来。ecc(error correcting code),是一种能够实现“错误检查和纠正”的技术,可提高计算机运行的稳定性和增加可靠性。在实际应用中,嵌入式系统主控芯片在读取nand flash数据时,使用ecc纠错功能发现和纠正数据位跳变。不同型号nand flash发生位跳变几率不同,所要求的ecc纠错能力也会不一样,ecc纠错能力越强大,ecc码占用存储空间也越大。对于固化在主控芯片的rom程序在读取用户启动程序时(s1),需要采用用一种通用的ecc码存储以兼容各种不同ecc纠错要求的nand flash。
3.nand flash的读写操作以页为单位,每页主数据区域大小为2kb的倍数,如2kb或4kb,绝大部分nand flash型号还会有带外空间(oob),oob也有不同大小。


技术实现要素:

4.本发明的目的就是提供一种嵌入式设备nand flash的ecc码存储方法,解决主控芯片不能兼容不同ecc纠错要求的nand flash问题,有效的提高系统的兼容性。
5.本发明方法是将启动程序的镜像文件数据和对应的ecc码都写入nand flash页主数据区,具体写入方法是:
6.将每页nand flash页主数据区划分为镜像文件数据存储区和ecc数据存储区,其中镜像文件数据存储区为每页nand flash页主数据区的前1kb,其他为ecc数据存储区,每页划分方式相同;
7.将启动程序的镜像文件数据存储在nand flash的镜像文件数据存储区,存储方式采用按页码顺序依次填满的方式;
8.采用ecc算法计算存储在每页的部分启动程序镜像文件数据,得到对应的ecc码;
9.将每页的部分启动程序镜像文件数据对应的ecc码存储在该页的ecc数据存储区。
10.即,每页nand flash页主数据区存储部分启动程序镜像文件数据,以及对应的ecc码。
11.采用本发明方法,当芯片读取启动程序时,将主数据区的镜像文件数据和ecc码同时读取出来,逐页进行检查或纠错。相较于将ecc码存储在oob区域,大大提高系统兼容性,而不需要依赖oob空间。
附图说明
12.图1为本发明主数据区划分存储示意图。
具体实施方式
13.以下结合附图对本发明做进一步说明。
14.一种嵌入式设备nand flash的ecc码存储方法,是将启动程序的镜像文件数据和对应的ecc码都写入nand flash页主数据区。由于启动程序(s1)比较小,一般只有几十kb,对于大容量的nand flash,占用空间很小。具体写入方法是:
15.如图1所示,将每页nand flash页主数据区划分为镜像文件数据存储区和ecc数据存储区,其中镜像文件数据存储区为每页nand flash页主数据区的前1kb,其他为ecc数据存储区,每页划分方式相同。
16.将启动程序的镜像文件数据存储在nand flash的镜像文件数据存储区,存储方式采用按页码顺序依次填满的方式。
17.采用ecc算法计算存储在每页的部分启动程序镜像文件数据,得到对应的ecc码。
18.将每页的部分启动程序镜像文件数据对应的ecc码存储在该页的ecc数据存储区。
19.即,每页nand flash页主数据区存储部分启动程序镜像文件数据,以及对应的ecc码。


技术特征:
1.嵌入式设备nand flash的ecc码存储方法,其特征在于:将启动程序的镜像文件数据和对应的ecc码都写入nand flash页主数据区,具体写入方法是:将每页nand flash页主数据区划分为镜像文件数据存储区和ecc数据存储区,其中镜像文件数据存储区为每页nand flash页主数据区的前1kb,其余为ecc数据存储区,每页划分方式相同;将启动程序的镜像文件数据存储在nand flash的镜像文件数据存储区,存储方式采用按页码顺序依次填满的方式;采用ecc算法计算存储在每页的部分启动程序镜像文件数据,得到对应的ecc码;将每页的部分启动程序镜像文件数据对应的ecc码存储在该页的ecc数据存储区。

技术总结
本发明公开了嵌入式设备NAND Flash的ECC码存储方法。现有方法是将ECC码存储在OOB区域,系统兼容性差。本发明将每页NAND Flash页主数据区划分为镜像文件数据存储区和ECC数据存储区,其中主数据区前1KB为镜像文件数据存储区;将启动程序的镜像文件数据存储在镜像文件数据存储区;采用ECC算法计算存储在每页的部分启动程序镜像文件数据,得到对应的ECC码;将每页启动程序镜像文件数据对应的ECC码存储在该页的ECC数据存储区。当芯片读取启动程序时,将主数据区的镜像文件数据和ECC码同时读取出来,逐页进行检查或纠错。本发明方法不需要依赖OOB空间,提高了系统兼容性。提高了系统兼容性。提高了系统兼容性。


技术研发人员:戴志 刘怡雄
受保护的技术使用者:杭州国芯科技股份有限公司
技术研发日:2021.07.26
技术公布日:2021/10/29
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜