autosar
1. RTE概述
The Run-Time Environment (RTE) is at the heart of the AUTOSAR ECU architecture.
The RTE is the realization (for a particular ECU) of the interfaces of the AUTOSAR
Virtual Function Bus (VFB).
RTE是AUTOSAR中VFB的接口实现。
The RTE provides the infrastructure services that enable
communication to occur between AUTOSAR software-components as well as acting as
the means by which AUTOSAR software-components access basic software modules
including the OS and communication service.
RTE提供基础的通信服务,支持软件构件间和软件构件到基础软件模块的通信。
The RTE encompasses both the variable elements of the system infrastructure that
arise from the different mappings of components to ECUs as well as standardized RTE
services.
RTE提供了构件到ECU异构信息的配置从而使得RTE服务标准化。
The RTE is generated for each ECU to ensure that the RTE is optimal for the ECU.
RTE是特定的对于每个ECU生成的。
2. 基本概念
RTE基本对象:

它们间的关系:
1. 通信:

2. 并发

AUTOSAR software-components have no direct access to the OS and hence there are
no "tasks" in an AUTOSAR application. Instead, concurrent activity within AUTOSAR
is based around runnable entities within components that are invoked by the RTE.(P31)
AUTOSAR软件构件不能直接访问操作系统,所以在AUTOSAR应用程序中没有 "task" 的概念,取而代之的是被RTE所管理的构件运行体。
The AUTOSAR VFB specification [13] defines a runnable entity as a "sequence of
instructions that can be started by the Run-Time Environment". A component provides
one2 or more runnable entities [RTE00031] and each runnable entity has exactly one
entry point. An entry point defines the symbol within the software-component's code
that provides the implementation of a runnable entity.
每个构件都有一个或多个运行体,但每个运行体只有一个入口。
The RTE is responsible for invoking runnable entities – AUTOSAR software-components
are not able to (dynamically) create private threads of control. Hence,
all activity within an AUTOSAR application is initiated by the triggering of runnable entities
by the RTE as a result of RTEEvents.
因为AUTOSAR软件构件没有能力动态创建线程,所以由RTE负责调入运行体。正因为这样,AUTOSAR所有软件活动都是由RTEEvents引起的。
An RTEEvent encompasses all possible situations that can trigger execution of a runnable
entity by the RTE.
RTEEvents 试图把所有可能触发任务的事件都包含进来。[The different classes of RTEEvent are defined in Section 5.7.5.]
The RTE supports runnable entities in any component that has an AUTOSAR interface
- this includes AUTOSAR software-components and basic software modules.
RTE支持所有含有AUTOSAR接口的运行体,不仅有SWC,还包括了BSW。
Runnable entities are divided into multiple categories with each catgory supporting different
facilities.
运行体被分为不同的类别,以便支持不同的设备。[The categories supported by the RTE are described in Section 4.2.2.2.]
3. RTE生成器
RTE生成器(RTE Generator)是我们最终提供给用户使用的工具,它和操作系统、通信等配置工具联合使用,以实现虚拟总线的真实功能。
RTE生成器的主要功能是:创建与操作系统系统功能相适应的AUTOSAR软件构件API,并管理软件构件间的通信。
这些生成的代码在运行时:
(1)为软件构件分配所需的系统资源,如消息号、任务运行环境等
(2)负责具体执行软件构件间通过端口进行的通信
(3)根据软件构件描述中的信息,在适当时刻为软件构件提供事件或调度。
RTE生成包含两个阶段:(1)定义阶段(RTE Contract phase)(2)生成阶段(RTE Generation phase)。
在(1)定义阶段中,将软件构件和RTE交互描述信息定义为头文件,作为软件构件与RTE的契约,双方都使用相同数据结构进行编程。在此阶段,需要完成的工作是:
l 软件构件类型描述
l 构件内部行为描述
l 真实源代码或目标代码及其API(头文件)生成
l 实现语言描述

从上图中可以清晰的看到,其实定义阶段就是扫描一下InternalBehavior这个xml的标签(
),然后生成它的头文件。
Internal Behavior中可以包含的内容如下:

在(2)生成阶段中,将所有软件构件、相关系统和ECU信息联合起来,为每一个ECU生成一个RTE。

由上图可以看出,生成阶段之前要先收集ECU配置信息,然后进行配置,可配置的内容有:
So first the 'RTE Configuration Editor' needs to collect all the information needed to establish
an operational RTE. This gathering includes information on the SW-Component
instances and their communication relationships, the Runnable Entities and the involved
RTE-Events and so on. The main source for all this information is the 'ECU
Configuration Description', which might provide references to further descriptions like
the SW-Component description or the System Configuration description.
SWC的接口和它们的通信关系。
运行体和它们的RTE-Events。

One extremely important point is the mapping of application signals from SW-Component's
ports to COM signals. A mapping of the application signals to system signals
has already been defined by the 'System Configuration Generator' .
还有一个极端重要的内容就是把SWC的端口映射成为COM的信号。映射的规则已经被系统配置生成器(
)所描述。
The generated RTE interacts with AUTOSAR COM and OS. For the latter, the RTE
both uses OS objects already in existance (e.g. tasks for which the RTE generator
builds bodies) as well as requires new objects (e.g. a schedule table or periodic alarms
for periodic runnable entities).
The coordination of configuration information between
the OS and RTE is therefore key since both the RTE and OS have to agree upon the
set of OS objects.
RTE生成器使用COM和操作系统已有的对象(如:task),同时也创建自己的新对象(如调度表和周期时钟)。但是如果一个对象OS已经提供,RTE就必须使用。
The AUTOSAR OS is configured in the ECU Configuration Description. The RTE
configurator/generator needs to communicate its needs to the OS and therefore it
seems sensible to use the same format order to allow the communication of the set
of OS object required by the generated RTE.
AUTOSAR OS被ECU配置描述文件所配置。
The specification of the OS objects used by the generated RTE, henceforth termed
OsNeeds, can be done either at configuration time only or at a mixture of configuration
and generation time, depending on which approach is supported by the configuration
and generation tools of RTE and OS. Thus according to figure 3.4 the output information
OsNeeds can be alternatively provided by the RTE Configuration Editor or the RTE
Generator.
如果是操作系统特别需要的对象,就标记上OsNeed。如下图所示:

autosar的更多相关文章
- Automotive Security的一些资料和心得(7):AUTOSAR和Security
1. 密码模块[1] 密码模块在Services Layer Configurable and common access to 密码子程序 硬件支持密码模块 2. 应用 应用和密码子程序分离 Cry ...
- Automotive Security的一些资料和心得(6):AUTOSAR
1.1 Introduction AUTOSAR(汽车开放系统架构)是一个开放的,标准化的汽车软件架构,由汽车制造商,供应商和开发工具共同开发.它联合了汽车OEM ,供应商和开发工具供应商,其目标是创 ...
- AUTOSAR分层-MCAL辨析
8. AUTOSAR中MCAL虽然包含各种drvier,但毕竟是AL即抽象层,不应包含architecture和device特定的信息.应该只包含模型定义,不包含实现细节. AUTOSAR文档中的 ...
- AUTOSAR - 标准文档下载
官网 https://www.autosar.org/ 文档分类 按功能分 按类型分 CLASSIC PLATFORM The AUTOSAR Classic Platform architectur ...
- AUTOSAR的前期开源实现Arctic Core
AUTOSAR (AUTomotive Open System ARchitecture) is a worldwide development partnership of vehicle manu ...
- AUTOSAR ArcticCore重构 - for_each_HOH
Arctic Core是AUTOSAR的实现,早期版本是开源的. 基本问题 在ARM架构下对CAN driver的实现(arch/arm/arm_cm3/drivers/Can.c)中,有这样一段代码 ...
- 【2018.05.11 智能驾驶/汽车电子】非技术向:关于Simulink和AutoSar的几种观点
最近看到几篇关于Simulink及AutoSar的Blog和Paper,感觉比较有意思,转载备忘之. 1. 看衰Simulink及AutoSar From:Tumiz的技术天地 https://blo ...
- 【2018.05.10 智能驾驶/汽车电子】AutoSar Database-ARXML及Vector Database-DBC的对比
最近使用python-canmatrix对can通信矩阵进行编辑转换时,发现arxml可以很容易转换为dbc,而dbc转arxml却需要费一番周折,需要额外处理添加一些信息. 注意:这里存疑,还是需要 ...
- 关于Autosar中的NM模块的理解
本篇文章主要介绍AutoSar中关于NM模块的理解. 阅读本篇文章希望达到的目的: 1. NM(网络管理)是用来做什么的: 2. AutoSar中网络管理的原理: 3.项目实例介绍 1. NM(网络管 ...
随机推荐
- 【Django】创建后的基本操作
1.创建Django项目做基本的配置步骤Pycharm->new->New Project 2.基本的配置settings.py-->STATIC_URL = '/static/'后 ...
- Windows 错误 0x80070570
Windows程序运行或者删除文件提示错误0x80070570:文件或目录损坏且无法读取. 环境 Windows 10 解决办法 管理员权限打开cmd,输入chkdsk 盘符: /f,提示输入Y,修复 ...
- 线性回归(regression)
简介 回归分析只涉及到两个变量的,称一元回归分析.一元回归的主要任务是从两个相关变量中的一个变量去估计另一个变量,被估计的变量,称因变量,可设为Y:估计出的变量,称自变量,设为X. 回归分析就是要找出 ...
- [luogu] P4823 [TJOI2013]拯救小矮人(贪心)
P4823 [TJOI2013]拯救小矮人 题目描述 一群小矮人掉进了一个很深的陷阱里,由于太矮爬不上来,于是他们决定搭一个人梯.即:一个小矮人站在另一小矮人的 肩膀上,知道最顶端的小矮人伸直胳膊可以 ...
- web_custom_request函数做get接口测试
最近研究了使用loadrunner做接口测试,刚开始一直不成功,后来加了QQ群,遇到大神了,经指导终于成功 下面是具体实例代码: //{"signIOS":1,"sign ...
- OS - 线程和进程的差别
进程是资源分配的基本单位,又是调度执行的基本单位.比如.用户执行自己的程序,系统就创建一个进程.并为它分配资源,包含各种表.内存空间.磁盘空间.I/O设备等. 然后.把该进程放入进程的就绪队列.进程调 ...
- 认识一下Kotlin语言,Android平台的Swift
今天在CSDN首页偶然看到一个贴子JetBrains正式公布Kotlin 1.0:JVM和Android上更好用的语言 看完后,感觉Kotlin语法非常简洁,有一系列动态语言的特点,Lambda表达式 ...
- 神经网络预测mnist时候如果不归一化,则准确率仅仅10%下文作者svm也遇到了。
转自:http://blog.csdn.net/jeryjeryjery/article/details/72649320 这两天用Python来实现手写数字识别,刚开始用原始数据进行训练,结果预测结 ...
- Oracle GoldenGate
Oracle GoldenGate实现数据库同步 前言:最近刚好在弄数据库同步,网上查了些资料再加上自己整理了一些,做个分享! 一.GoldenGate的安装 官方文档: Oracle®GoldenG ...
- Oracle 11g AWR生成报告
1.生成单实例 AWR 报告: @$ORACLE_HOME/rdbms/admin/awrrpt.sql 2.生成 Oracle RAC AWR 报告: @$ORACLE_HOME/rdbms/adm ...