[发明专利]一种嵌入式系统下的二进制烧写格式的加载方法及系统在审
申请号: | 202110882000.9 | 申请日: | 2021-08-02 |
公开(公告)号: | CN113590227A | 公开(公告)日: | 2021-11-02 |
发明(设计)人: | 赵复阳;宋伟铭;韩雪;杨煦;周中亚;刘敏;郭勇军 | 申请(专利权)人: | 中国大恒(集团)有限公司北京图像视觉技术分公司;北京大恒图像视觉有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F8/61;G06F8/654;G06F11/10 |
代理公司: | 北京驰纳南熙知识产权代理有限公司 11999 | 代理人: | 李佳佳 |
地址: | 100080 北京市海淀区苏*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 嵌入式 系统 二进制 格式 加载 方法 | ||
1.一种嵌入式系统下的二进制烧写格式的加载方法,其特征在于:所述方法包括以下步骤:
实时从存储介质中读取烧写文件中的文件头基础信息,所述文件头基础信息包括文件头长度、数据长度、数据块个数、数据块地址、数据块长度、文件头校验和和数据校验和;
根据获取的文件头,计算文件头校验和,判断文件头中存储的校验和与计算校验和是否一致,若一致,则解析文件头中的数据块信息,判断是否存在未写入内存的数据块;
若存在未写入内存的数据块,则当前数据块存储的地址设置为DDR目标地址,并判断当前数据块剩余未写入的数据长度是否大于预设的单次读取长度;若大于预设的单次读取长度,则从存储介质中获取预设的数值,更新数据校验和,拷贝到DDR目标地址。
2.根据权利要求1所述的嵌入式系统下的二进制烧写格式的加载方法,其特征在于:还包括:
在判断文件头中存储的校验和与计算校验和是否一致时,若不一致,则加载失败,报错退出。
3.根据权利要求2所述的嵌入式系统下的二进制烧写格式的加载方法,其特征在于:还包括:
在判断是否存在未写入内存的数据块时,若不存在未写入内存的数据块,则判断文件头中存储的数据校验和与实际数据计算校验和是否相同,若相同,则加载成功,开始运行程序,若不相同,则加载失败,报错退出。
4.根据权利要求3所述的嵌入式系统下的二进制烧写格式的加载方法,其特征在于:还包括:
在判断当前数据块剩余未写入的数据是否大于预设的单次读取长度时,若当前数据块剩余未写入的数据≤预设的单次读取长度时,则读取不足预设的单次读取长度的剩余数据,更新数据校验和。
5.根据权利要求4所述的嵌入式系统下的二进制烧写格式的加载方法,其特征在于:还包括烧写文件的生成方法,所述生成方法包括以下步骤:
以文本方式从输入文件中读取一行数据进入;
若是输入文件中的第一行,则判断读取行类型是否为SREC文件起始类型,若是,则确认为SREC文件,若不是,则确认不是SREC文件,提示错误信息并结束;
若非输入文件中的第一行,则判断读取行类型是否为数据行,若是,则本行为数据行,解析本行数据,更新数据校验和,数据转换为二进制形式拷贝到预先申请的数据空间中;
判断上一行地址加上一行数据长度是否等于本行地址,若是,则本行数据与上一行数据处于同一个数据块,数据块长度累加当前行数据长度;若不是或上一行为第一行数据,则本行数据相对于上一行数据产生了地址跳跃,开始一个新的数据块。
6.根据权利要求5所述的嵌入式系统下的二进制烧写格式的加载方法,其特征在于:所述文件头长度为SEC格式文件头的总长度,其取值范围为256字节~1024字节。
7.根据权利要求6所述的嵌入式系统下的二进制烧写格式的加载方法,其特征在于:所述数据块信息包括:每8字节划分为一个数据块信息单元,每个数据块信息单元中前4字节代表该数据块加载的目标地址,后4字节代表该数据块需要向目标地址加载的数据长度。
8.根据权利要求7所述的嵌入式系统下的二进制烧写格式的加载方法,其特征在于:所述生成方法还包括:
在判断读取行类型是否为数据行时,若不是,则判断本行数据是否为结束行,若本行数据为结束行,则判断本行是否为文件最后一行,若本行为文件最后一行,则输入文件解析正常完成。
9.根据权利要求8所述的嵌入式系统下的二进制烧写格式的加载方法,其特征在于:所述生成方法还包括:
根据过程中的数据块信息和数据校验和填充文件头数据,计算文件头校验和并填充到文件头校验码位置,将文件头和各数据块数据,以二进制形式写入输出文件,输出文件数据重新校验,校验成功则结束,校验失败提示错误信息并结束。
10.一种嵌入式系统下的二进制烧写格式的加载系统,其特征在于:包括:
获取模块,用于实时从存储介质中读取烧写文件中的文件头基础信息,所述文件头基础信息包括文件头长度、数据长度、数据块个数、数据块地址、数据块长度、文件头校验和和数据校验和;
处理模块,用于根据获取的文件头,计算文件头校验和,判断文件头中存储的校验和与计算校验和是否一致,若一致,则解析文件头中的数据块信息,判断是否存在未写入内存的数据块;若存在未写入内存的数据块,则当前数据块存储的地址设置为DDR目标地址,并判断当前数据块剩余未写入的数据长度是否大于预设的单次读取长度;若大于预设的单次读取长度,则从存储介质中获取预设的数值,更新数据校验和,拷贝到DDR目标地址。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国大恒(集团)有限公司北京图像视觉技术分公司;北京大恒图像视觉有限公司,未经中国大恒(集团)有限公司北京图像视觉技术分公司;北京大恒图像视觉有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110882000.9/1.html,转载请声明来源钻瓜专利网。