一种面向汽车电子控制器的运行时环境生成系统及方法技术方案

技术编号:5386690 阅读:257 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种面向汽车电子控制器的运行时环境生成系统及方法,该系统包括项目资源管理模块、描述文件管理模块、XML解析器、代码模板和RTE生成器引擎模块。该方法为:A、读入并整理项目相关的系统描述文件、构件描述文件及ECU信息列表,解析后获得线性信息列表发送至RTE生成器引擎模块中;B、同时,将代码模板输入RTE生成器引擎模块中;C、RTE生成器引擎模块根据代码模板结合从解析后描述文件中取出相应信息生成并输出RTE源文件。该系统可根据构件描述信息、系统描述信息以及ECU的配置信息自动生成满足应用以及底层基础软件要求的运行时环境,同时生成构件端口通信API的申明和实现源文件以及封装构件运行体为任务。

【技术实现步骤摘要】

本专利技术涉及汽车电子
,具体涉及一种面向汽车电子控制器的运行时环境 生成系统及方法。
技术介绍
近年来,汽车领域的应用经历着巨大的变化。越来越多新应用的出现,一方面带来 新的机会,同时也给汽车软件的开发者在研究和开发上带来新的挑战。当今的汽车,尤其 是豪华汽车,其硬件、软件的复杂程度都非常高,例如,一台汽车上可多达70个电子控制器 (Electronic Control Unit,ECU),不同类型的10条控制总线。汽车软件不再是一个电子 控制器上的一个简单控制程序,软件的开发面临的是一个分布式、异构的嵌入式环境。另一方面,随着车载控制系统日益先进和复杂化,每辆汽车投入的软件开发工时 数(时间及人力)2010年将达到2002年的5-10倍。汽车电子系统设计复杂化造成的可靠 性隐患导致汽车因安全隐患被“招回”的现象频繁发生,使得汽车软件的开发还面临软件可 靠性以及上市时间两项指标的考验。传统的汽车软件开发过程是‘V’字形过程,在开发的 很多环节存在着重复劳动。重复的需求,重复的设计,重复的测试等等工作都降低了汽车软 件的开发效率,直接影响汽车上市时间。此外,重复的劳动并不能保证软件的可靠性。如果 一个经过充分测试和验证的软件成果能够多次地应用到不同的汽车平台上,不但能缩短软 件开发时间,也能保证软件的可靠性。为了实现软件复用的目标,汽车电子领域已开始采用软件构件技术进行应用程序 的开发,软件构件技术被视为实现软件成功复用的关键因素。采用构件技术的汽车软件开 发的基本思想为应用软件通过在产品线上连接预制的可信的构件组装而成,构件在运行 时通过连接端口交互。构件间的交互很大程度上依赖于系统的物理结构以及构件的部署方式。对汽车这 样的分布式、异构系统,构件间交互的显得复杂而难以处理。理想的方式是将复杂而容易出 错的交互逻辑分开甚至隐藏。因此,需要采用通信中间件来处理交互。表面上应用构件直 接交互,实际上利用了透明的通信中间件。而构件不需要提供任何关于交互的实现方式,只 考虑构件的实际作用,也使得构件的代码规模小,不易出错。然而通用的通信中间件,例如 C0RBA,是一种重量级的中间件,并不适合于资源约束性强的嵌入式系统。因此,在汽车电子 嵌入式领域需要构建轻量级的通信中间件从而支持构件的开发。这种轻量级的通信中间件 是一种可定制的嵌入式运行时环境,即是面向汽车电子E⑶的运行时环境。运行时环境隔离了应用软件与ECU平台上的基础软件,向上对应用软件屏蔽了底 层细节,向下粘合ECU上的操作系统、通信软件的基本功能实现构件通信。然而在汽车平台 上,不同ECU的硬件有差异以及操作系统、通信软件和其他功能模块有差异。当应用软件部 署到具体的ECU上时,需要一种工具,能结合具体ECU的基础软件功能和软件构件的实际情 况,配置和生成面向E⑶的运行时环境。这样的工具称作运行时环境生成器。
技术实现思路
本专利技术所要解决的技术问题是如何提供一种面向汽车电子控制器的运行时环境 生成系统及方法,该面向汽车电子控制器的运行时环境生成系统可根据构件描述信息、系 统描述信息以及ECU的配置信息自动生成满足应用以及底层基础软件要求的运行时环境, 同时生成构件端口通信API的申明和实现源文件以及封装构件运行体为任务。为达到上述专利技术目的,本专利技术所采用的方案为提供一种面向汽车电子控制器的 运行时环境生成系统,其特征在于所述系统包括项目资源管理模块,用来管理与项目相关的构件描述文件、系统描述文件、ECU信 息列表和RTE源文件;具体功能包括1)以树状结构显示项目所包含的文件夹与文件;2) 提供项目的新建与删除功能;幻提供文件夹与文件的新建、复制、删除、重命名功能;描述文件管理模块,用于管理构件描述文件、系统描述文件和ECU信息列表;具体 功能包括1)提供构件描述文件、系统描述文件和ECU信息列表的导入功能;2)提供构件 描述文件、系统描述文件和ECU信息列表的导出功能;3)提供构件描述文件、系统描述文件 和ECU信息列表的合并功能;4)提供构件描述文件、系统描述文件和ECU信息列表的编辑 功能;XML解析器,主要负责解析XML格式的构件描述文件、系统描述文件和ECU信息列 表内容,将构件描述文件、系统描述文件和ECU信息列表内容读入到内存中并转换为多个 关联的哈希表进行存储;代码模板,用于为RTE生成器引擎模块提供生成RTE源文件规范样式的基本模 板;RTE生成器引擎模块,负责根据项目当前的构件描述文件、系统描述文件和ECU信 息列表完成以下功能1)依据代码模板的规范样式生成输出ECU特定的运行时环境代码 RTE源文件;2)生成构件端口通信函数的申明以及实现函数;3)将构件运行体封装为操作 系统的任务,交给底层的操作系统管理和执行。所述RTE源文件包括运行时环境源代码文件和与构件应用相关的源代码文件。一种面向汽车电子控制器的运行时环境生成方法,包括步骤A、读入并整理项目 相关的系统描述文件、构件描述文件及ECU信息列表,将XML形式的系统描述文件、构件描 述文件及ECU信息列表解析后获得关于系统、构件和ECU的线性信息列表在内存中进行存 储,并发送至RTE生成器引擎模块中;B、同时,将代码模板输入RTE生成器引擎模块中;C、 RTE生成器引擎模块根据代码模板顺序依次解析代码模板内容,并从解析后的系统描述文 件、构件描述文件及ECU信息列表中取出相应信息依据代码模板的规范样式生成并输出 RTE源文件。在所述步骤C中,RTE生成器引擎模块的工作过程如下a、引擎启动后,对输入的配置描述信息和输出目录进行初始化,完成后建立 ListManager和SourceGenerator两个对象;所述ListManager对象用于管理系统描述文 件、构件描述文件和ECU信息列表;b、SourceGenerator对象首先初始化一张结构化表,即SourceFileList,然后调 用SourceFileFactory中的createSourceFiles ()函数,将代码模板提取出来并注册到表 中,把需要生成的目标信息传递给各个模板,从而实例化为SourceFile对象;C、引擎依次读取 SourceFileList 的内容,各个 SourceFile 从 ListManager 中提 取出自己需要的信息,形成源代码实例,并写入到RTE源文件中。在所述步骤C中,代码模板提供了 C语言常见的所有内容结构,通过实例化这些结 构将其挂载到相应位置并存放到SourceFile对象中,引擎模块会自动将它们转换为源代码。 在所述步骤A中,将XML形式的系统描述文件、构件描述文件及ECU信息列表进行 解析后获得关于系统、构件和ECU的线性信息列表,线性信息列表的组织由ListManager完 成,ListManager内部包含了下面14张哈希表 ApplicationSoftwareComponentListAssemblyConnectorListComponentPrototypeListCompositionListDataAccessListDataElementListDataPointListDataTypeListElementListIndexInter本文档来自技高网
...

【技术保护点】
一种面向汽车电子控制器的运行时环境生成系统,其特征在于:所述系统包括:项目资源管理模块,用来管理与项目相关的构件描述文件、系统描述文件、ECU信息列表和RTE源文件;具体功能包括:1)以树状结构显示项目所包含的文件夹与文件;2)提供项目的新建与删除功能;3)提供文件夹与文件的新建、复制、删除、重命名功能;描述文件管理模块,用于管理构件描述文件、系统描述文件和ECU信息列表;具体功能包括:1)提供构件描述文件、系统描述文件和ECU信息列表的导入功能;2)提供构件描述文件、系统描述文件和ECU信息列表的导出功能;3)提供构件描述文件、系统描述文件和ECU信息列表的合并功能;4)提供构件描述文件、系统描述文件和ECU信息列表的编辑功能;XML解析器,主要负责解析XML格式的构件描述文件、系统描述文件和ECU信息列表内容,将构件描述文件、系统描述文件和ECU信息列表内容读入到内存中并转换为多个关联的哈希表进行存储;代码模板,用于为RTE生成器引擎模块提供生成RTE源文件规范样式的基本模板;RTE生成器引擎模块,负责根据项目当前的构件描述文件、系统描述文件和ECU信息列表完成以下功能:1)依据代码模板的规范样式生成输出ECU特定的运行时环境代码RTE源文件;2)生成构件端口通信函数的申明以及实现函数;3)将构件运行体封装为操作系统的任务,交给底层的操作系统管理和执行。...

【技术特征摘要】
1.一种面向汽车电子控制器的运行时环境生成系统,其特征在于所述系统包括项目资源管理模块,用来管理与项目相关的构件描述文件、系统描述文件、ECU信息列 表和RTE源文件;具体功能包括1)以树状结构显示项目所包含的文件夹与文件;2)提供项目的新建与删除功能;3)提供文件夹与文件的新建、复制、删除、重命名功能;描述文件管理模块,用于管理构件描述文件、系统描述文件和ECU信息列表;具体功能 包括1)提供构件描述文件、系统描述文件和ECU信息列表的导入功能;2)提供构件描述文件、系统描述文件和ECU信息列表的导出功能;3)提供构件描述文件、系统描述文件和ECU信息列表的合并功能;4)提供构件描述文件、系统描述文件和ECU信息列表的编辑功能;XML解析器,主要负责解析XML格式的构件描述文件、系统描述文件和ECU信息列表内 容,将构件描述文件、系统描述文件和ECU信息列表内容读入到内存中并转换为多个关联 的哈希表进行存储;代码模板,用于为RTE生成器引擎模块提供生成RTE源文件规范样式的基本模板;RTE生成器引擎模块,负责根据项目当前的构件描述文件、系统描述文件和ECU信息列 表完成以下功能1)依据代码模板的规范样式生成输出ECU特定的运行时环境代码RTE源文件;2)生成构件端口通信函数的申明以及实现函数;3)将构件运行体封装为操作系统的任务,交给底层的操作系统管理和执行。2.根据权利要求1所述的面向汽车电子控制器的运行时环境生成系统,其特征在于 所述RTE源文件包括运行时环境源代码文件和与构件应用相关的源代码文件。3.一种面向汽车电子控制器的运行时环境生成方法,其特征在于所述方法包括步骤A、读入并整理项目相关的系统描述文件、构件描述文件及ECU信息列表,将XML形式的 系统描述文件、构件描述文件及ECU信息列表解析后获得关于系统、构件和ECU的线性信息 列表在内存中进行存储,并发送至RTE生成器引擎模块中;B、同时,将代码模板输入RTE生成器引擎模块中;C、RTE生成器引擎模块根据代码模板顺序依次解析代码模板内容,并从解析后的系统 描述文件、构件描述文件及ECU信息列表中取出相应信息依据代码模板的规范样式生成并 输出RTE源文件。4.根据权利要求3所述的面向汽车电子控制器的运行时环境生成方法,其特征在于 在所述步骤C中,RTE生成器引擎模块的工作过程如下a、引擎启动后,对输入的配置描述信息和输出目录进行初始化,完成后建立 ListManager和SourceGenerator两个对象;所述ListManager对象用于管理系统描述文 件、构件描述文件和ECU信息列表;b、SourceGenerator对象首先初始化一张结构化表,即SourceFileList,然后调用 SourceFileFactory中的createSourceFiles ()函数,将代码模板提取出来并注册到表中,把需要生成的目标信息传递给各个模板,从而实例化为SourceFile对象;c、引擎依次读取SourceFileList的内容,各个SourceFile从ListManager中提取出 自己需要的信息,形成源代码实例,并写入到RTE源文件中。5.根据权利要求3所述的面向汽车电子控...

【专利技术属性】
技术研发人员:晏华陈昊陈丽蓉李允
申请(专利权)人:电子科技大学
类型:发明
国别省市:90[中国|成都]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1