[发明专利]一种A2L变量地址处理方法和装置在审
| 申请号: | 201811607811.2 | 申请日: | 2018-12-27 |
| 公开(公告)号: | CN109697279A | 公开(公告)日: | 2019-04-30 |
| 发明(设计)人: | 许晓梦;宋炳雨;刘硕;何晓明;李峰 | 申请(专利权)人: | 潍柴动力股份有限公司 |
| 主分类号: | G06F17/22 | 分类号: | G06F17/22 |
| 代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
| 地址: | 261061 山东省潍坊*** | 国省代码: | 山东;37 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 目标变量 变量类型 读取 物理地址 方法和装置 变量地址 基础地址 偏移信息 元素地址 读取效率 操作系统 可读 更新 转化 | ||
一种A2L变量地址处理方法和装置,方法包括:读取A2L文件和ELF文件,将ELF文件中的debug_info部分转化为当前操作系统可读文件;获取A2L文件所需读取物理地址的各个目标变量的变量名和变量类型;依据变量类型将目标变量划分为第一变量类型和第二变量类型;由debug_info中读取第一类变量类型中的目标变量所对应的物理地址;由debug_info中读取第二变量类型中的目标变量所对应的基础地址以及元素地址偏移信息,基于基础地址以及元素地址偏移信息计算得到目标变量所对应的物理地址;依据读取到的物理地址更新A2L文件中的目标变量的所对应的地址,提高了A2L文件中的目标变量的物理地址的读取效率。
技术领域
本发明涉及数据处理技术领域,具体涉及一种A2L变量地址处理方法和装置。
背景技术
通过A2L文件,标定工具识别程序中变量名称、地址、所占用字节长度等信息,标定和测量的数据一般以AASAM MCD-2MC格式存储,文件名称以.a2l结尾,因此,本领域技术人员将这类文件简称A2L文件。A2L是控制器的描述文件,标定工具可以根据A2L文件提供的消息,读取ECU(Electronic Control Unit)中可测量量和标定参数的数值,并按用户的要求标定参数数值以优化控制策略。
目前,汽车电子控制器开发领域,应用国际通用的V字开发模式,首先根据控制需求设计MATLAB控制模型,利用MATLAB自动代码生成功能产生C代码和A2L文件,C代码与底层驱动函数编译集成生成目标运行代码,而A2L文件参数地址是虚拟地址,需要从编译生成的MAP(Linker Map File)文件(映射文件)中找到其真实的地址并替换后,才能用于标定。具体的,MAP文件中基本数据类型变量、指针变量、普通数组、枚举、共用体等可直接从MAP文件中获取变量地址,替换A2L文件对应位置为变量地址;对于结构体等复杂变量类型,一般是首先分析结构体对齐规则及元素数据类型正向的确定元素地址偏移生成带有偏移信息的A2L文件,然后通过从MAP中获取该变量基地址加上模板中地址偏移替换该结构体元素地址为物理地址。
现有的A2L文件变量地址替换方法存在如下缺陷:
一、不同编译器生成的MAP文件格式不一致,从MAP中获取变量地址的方式则不统一。
二、MAP中无结构体元素等偏移信息,地址偏移信息需通过其数据类型、结构体元素对齐等因素确定元素地址偏移,而结构体元素对齐不仅受对齐规则的影响同时受代码中关键字及编译选项的影响,会造成结构体及其结构体数组等类型变量元素地址获取存在偏差,同时比较复杂的变量类型元素的偏移考虑因素更多则不容易获取。
三、A2L文件针对普通变量、结构体变量也不一致,前期A2L文件生成及后期A2L处理需区别处理。
发明内容
有鉴于此,本发明实施例提供一种A2L变量地址处理方法和装置,以实现A2L文件中虚拟地址到物理地址之间的转换。
为实现上述目的,本发明实施例提供如下技术方案:
一种A2L变量地址处理方法,包括:
读取A2L文件和ELF文件,所述A2L文件中具有虚拟地址,所述ELF文件中具有与所述虚拟地址相匹配的物理地址;
将所述ELF文件中的debug_info部分转化为当前操作系统可读文件,所述debug_info中包含有调试信息,通过所述调试信息可获取全局变量的参数信息,所述参数信息包括但不限于变量名、变量地址、变量类型索引和元素偏移;
获取所述A2L文件所需读取物理地址的各个目标变量的变量名和变量类型;
依据所述变量类型将所述目标变量划分为第一变量类型和第二变量类型,所述第一变量类型为可直接由debug_info中读取物理地址的变量类型,所述第二变量类型为需获取元素地址偏移的变量类型;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于潍柴动力股份有限公司,未经潍柴动力股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811607811.2/2.html,转载请声明来源钻瓜专利网。





