一种嵌入式系统安全存储数据的方法及装置制造方法

文档序号:6518717阅读:196来源:国知局
一种嵌入式系统安全存储数据的方法及装置制造方法
【专利摘要】本发明公开了一种嵌入式系统安全存储数据的方法,其包括下列步骤:启动后扫描NandFlash中的块信息,对块信息中的坏块进行标记并跳过,扫描到非坏块时,扫描其中的页的标签信息,根据标签信息建立物理地址和逻辑地址的映射表;将物理地址和逻辑地址的映射表存储到NandFlash的特定块中;根据输入的逻辑地址找到物理地址进行数据读写,下一次启动时,直接将NandFlash中的数据结构中的内容加载到RAM中。本发明具备坏块处理功能;具备文件系统,存储效率更高;无需基于特定的智能操作系统来实现,支持嵌入式文件系统,降低了操作成本。
【专利说明】—种嵌入式系统安全存储数据的方法及装置
【技术领域】
[0001]本发明涉及数据存储【技术领域】,尤其涉及一种嵌入式系统安全存储数据的方法及装置。
【背景技术】
[0002]工程机械经常使用到数据记录功能,用来存储历史工况数据,以便进行离线诊断和故障分析。存储介质一般选用NandFlash, NandFlash的特点是写数据之前要进行块擦除,在擦除的过程中有一定概率产生坏块,而且擦写的次数越大,产生坏块的概率越大。在对数据可靠性要求不高的场合,可以不进行坏块处理,但是在工程机械行业,作业环境苛亥IJ,对安全和可靠性要求比较高,就需要进行坏块的处理。常见的方案:1、采用Linux或WinCE等智能操作系统,自带有文件管理系统,可以自动处理坏块;2、在MCU上移植文件系统进行坏块处理功能。存在的技术问题是:智能操作系统,Linux或WinCE对硬件资源要求高,WinCE还需付费获得微软授权,不是工程机械所有的芯片平台都支持智能操作系统。

【发明内容】

[0003]有鉴于此,本发明提出一种嵌入式系统安全存储数据的方法及装置,以解决现有技术中的不足。
[0004]为达到上述目的,本发明的技术方案是这样实现的: [0005]一方面,提供一种嵌入式系统安全存储数据的方法,其中,包括下列步骤:
[0006]启动后扫描NandFlash中的块信息,对块信息中的坏块进行标记并跳过,扫描到非坏块时,扫描其中的页的标签信息,根据标签信息建立物理地址和逻辑地址的映射表;
[0007]将物理地址和逻辑地址的映射表存储到NandFlash的特定块中;
[0008]根据输入的逻辑地址找到物理地址进行数据读写,下一次启动时,直接将NandFlash中的数据结构中的内容加载到RAM中。
[0009]上述嵌入式系统安全存储数据的方法,其中,建立物理地址和逻辑地址的映射表时建立逻辑页号与物理页号映射表,所述逻辑页号与物理页号映射表包括:逻辑页号与物理页号映射树的层数,以及逻辑页号与物理页号映射树最高层节点首地址。
[0010]上述嵌入式系统安全存储数据的方法,其中,当进行数据写时,首先要对坏块进行擦除,如果产生坏块,调用备用块,将数据写入新页,将新页号存到存储逻辑地址-物理地址映射树中。
[0011]另一方面,提供一种嵌入式系统安全存储数据的装置,其中,采用如上述的嵌入式系统安全存储数据的方法进行数据存储。
[0012]相对于现有技术,本发明具有以下优势:
[0013]I)具备坏块处理功能;
[0014]2)具备文件系统,存储效率更高;
[0015]3)无需基于特定的智能操作系统来实现,支持嵌入式文件系统,降低了操作成本。【专利附图】

【附图说明】
[0016]构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
[0017]图1为本发明嵌入式系统安全存储数据的方法的流程示意图。
【具体实施方式】
[0018]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0019]需要说明的是,在不冲突的情况下,本发明中的实施例及实施例中的特征可以相
互组合。
[0020]参照图1,本发明嵌入式系统安全存储数据的方法,包括下列步骤:启动后扫描NandFlash中的块信息,对块信息中的坏块进行标记并跳过,扫描到非坏块时,扫描其中的页的标签信息,根据标签信息建立物理地址和逻辑地址的映射表;将物理地址和逻辑地址的映射表存储到NandFlash的特定块中;根据输入的逻辑地址找到物理地址进行数据读写,下一次启动时,直接将NandFlash中的数据结构中的内容加载到RAM中。
[0021]第一次启动时,扫描保存在NandFlash中的块信息,如果为坏块进行标记,并跳过,直到扫描到非坏块后,开始扫描本块中页的标签信息,根据标签信息建立物理地址和逻辑地址的映射表,将该表存储在特定数据结构中,并位于微控制器的RAM中。
[0022]建立逻辑页号与物理页号映射表,该映射表主要包括:逻辑页号与物理页号映射树的层数,以及逻辑页号与物理页号映射树最高层节点首地址。
[0023]将RAM中的数据结构存储在Nand Flash的特定块中,该块NandFlash厂家会保证擦写10万次不会产生坏块。下一次启动时,直接将NandFlash中的数据结构中的内容加载到RAM中。
[0024]根据逻辑地址从存储逻辑地址-物理地址映射表中找到相应物理地址的存储器进行读写。当进行数据写时,首先要将坏进行擦除,如果产生坏块,调用备用块,将数据写入新页,并将新页号存到存储逻辑地址-物理地址映射树中。
[0025]本发明实施例还提供了一种装置,其采用上述介绍的嵌入式系统安全存储数据的方法来实现数据存储。
[0026]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种嵌入式系统安全存储数据的方法,其特征在于,包括下列步骤: 启动后扫描NandFlash中的块信息,对块信息中的坏块进行标记并跳过,扫描到非坏块时,扫描其中的页的标签信息,根据标签信息建立物理地址和逻辑地址的映射表; 将物理地址和逻辑地址的映射表存储到NandFlash的特定块中; 根据输入的逻辑地址找到物理地址进行数据读写,下一次启动时,直接将NandFlash中的数据结构中的内容加载到RAM中。
2.根据权利要求1所述嵌入式系统安全存储数据的方法,其特征在于,建立物理地址和逻辑地址的映射表时建立逻辑页号与物理页号映射表,所述逻辑页号与物理页号映射表包括:逻辑页号与物理页号映射树的层数,以及逻辑页号与物理页号映射树最高层节点首地址。
3.根据权利要求2所述嵌入式系统安全存储数据的方法,其特征在于,当进行数据写时,首先要对坏块进行擦除,如果产生坏块,调用备用块,将数据写入新页,将新页号存到存储逻辑地址-物理地址映射树中。
4.一种嵌入式系统安全存储数据的装置,其特征在于,采用如权利要求3所述的嵌入式系统安全存储数据的方法进行数据存储。
【文档编号】G06F12/02GK103559144SQ201310561217
【公开日】2014年2月5日 申请日期:2013年11月12日 优先权日:2013年11月12日
【发明者】王晓朋, 郭长城, 闫鑫 申请人:上海华兴数字科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1