【AUTOSAR标准文档】AotuSar结构横向分层详解(RTE、BSW)
Top view
The AUTOSAR Architecture distinguishes on the highest abstraction level between three software layers: Application, Runtime Environment and Basic Software which run on a Microcontroller.
译文:AUTOSAR架构在最高抽象层次上将软件分为三层:运行在微控制器上的应用层、运行环境层和基础软件层。
Coarse view
The AUTOSAR Basic Software is further divided in the layers: Services, ECU Abstraction, Microcontroller Abstraction and Complex Drivers.
译文: AUTOSAR基础软件进一步细分为以下几个层次:服务层、ECU抽象层、微控制器抽象层和复杂驱动层。
The Basic Software Layers are further divided into functional groups. Examples of Services are System, Memory and Communication Services.
译文:基础软件层进一步被划分为不同的功能组。服务的例子包括系统服务、内存服务和通信服务。
Detailed view
Microcontroller Abstraction Layer
The Microcontroller Abstraction Layer is the lowest software layer of the Basic Software.
It contains internal drivers, which are software modules with direct access to the µC and internal peripherals.
Task
Make higher software layers independent of µC
Properties
Implementation: µC dependent Upper
Interface: standardized and µC independent
译文:
微控制器抽象层是基础软件的最低层。
它包含内部驱动程序,这些驱动程序是能够直接访问微控制器(µC)及其内部外设的软件模块。
任务:
使更高的软件层与微控制器(µC)保持独立。
特性:
- 实现:依赖于微控制器(µC)的上层(此处“Upper”可能指的是该层之上的软件层或接口,即该层的实现是依赖于µC的,但其为上层提供了与µC无关的接口)。
注意:在“Properties”下的“Implementation: µC dependent Upper”这句话中,“Upper”一词可能有些含糊,因为通常我们不会这样描述一个层的实现。但根据上下文,这里可能是指该层(微控制器抽象层)的实现是依赖于微控制器的,并且它为上层软件提供了与微控制器无关的接口。为了更准确地表达,我们可以稍作调整,但保留原意:该层的实现依赖于微控制器,但其提供的接口是标准化的,与微控制器无关。
ECU Abstraction Layer
The ECU Abstraction Layer interfaces the drivers of the Microcontroller Abstraction Layer. It also contains drivers for external devices.
It offers an API for access to peripherals and devices regardless of their location (µC internal/external) and their connection to the µC (port pins, type of interface)
Task
Make higher software layers independent of ECU hardware layout
Properties
Implementation: µC independent, ECU hardware dependent Upper
Interface: µC and ECU hardware independen
译文:
ECU抽象层与微控制器抽象层的驱动程序进行接口连接,并且它还包含用于外部设备的驱动程序。
它提供了一个应用程序接口(API),用于访问外设和设备,无论这些外设和设备位于何处(微控制器内部/外部)以及它们与微控制器的连接方式(端口引脚、接口类型)如何。
任务:
使更高的软件层独立于ECU硬件布局。
特性:
- 实现:与微控制器无关,但与ECU硬件相关(上层,即该层之上的软件层或接口与该层提供的接口进行交互时,无需关心ECU硬件的具体实现)。
- 接口:与微控制器和ECU硬件无关(即该层提供的接口是标准化的,不依赖于特定的微控制器或ECU硬件)。
注意:在描述软件架构时,“实现”通常指的是软件层或组件的具体实现方式,而“接口”则指的是这些层或组件之间如何进行交互的规范或协议。在这里,“实现:µC independent, ECU hardware dependent Upper”意味着ECU抽象层的实现不依赖于特定的微控制器,但确实依赖于ECU硬件的某些方面(例如,ECU上的外设和设备的类型、连接方式等)。同时,“接口:µC and ECU hardware independent”则表明该层提供的接口是标准化的,不依赖于特定的微控制器或ECU硬件,从而允许更高的软件层以统一的方式与外设和设备进行交互。
Complex Drivers
The Complex Drivers Layer spans from the hardware to the RTE.
Task
Provide the possibility to integrate special purpose functionality, e.g. drivers for devices:
① which are not specified within AUTOSAR,
② with very high timing constrains or
③ for migration purposes etc.
Properties
Implementation: might be application, µC and ECU hardware dependent Upper
Interface: might be application, µC and ECU hardware dependent
译文:
复杂驱动层跨越硬件到运行时环境(RTE)的范围。
任务:
提供集成特定功能(例如设备驱动程序)的可能性,这些设备包括:
① 在AUTOSAR规范中未指定的设备,
② 具有极高时间约束的设备,
③ 或出于迁移目的等所需的设备。
特性:
- 实现:可能依赖于应用程序、微控制器(µC)和ECU硬件(上层,即该层之上的软件层或接口与该层提供的接口进行交互时,可能会受到应用程序、微控制器和ECU硬件的影响)。
- 接口:可能依赖于应用程序、微控制器(µC)和ECU硬件(即该层提供的接口可能会因应用程序、微控制器和ECU硬件的不同而有所变化)。
需要注意的是,复杂驱动层的存在是为了处理那些不在AUTOSAR标准范围内的、具有特殊需求的设备。因此,它的实现和接口可能会更加灵活,以适应这些特殊设备的需求。同时,这也意味着在使用复杂驱动层时,需要更加谨慎地考虑其与其他软件层之间的交互和依赖关系。
Services Layer
The Services Layer is the highest layer of the Basic Software which also applies for its relevance for the application software: while access to I/O signals is covered by the ECU Abstraction Layer, the Services Layer offers:
① Operating system functionality
② Vehicle network communication and management services
③ Memory services (NVRAM management)
④ Diagnostic Services (including UDS communication, error memory and fault treatment)
⑤ ECU state management, mode management
⑥ Logical and temporal program flow monitoring (Wdg manager)
Task
Provide basic services for applications, RTE and basic software modules.
Properties
Implementation: mostly µC and ECU hardware independent Upper Interface: µC and ECU hardware independent
译文:
服务层是基础软件的最高层,同时也因其对应用软件的重要性而备受关注。虽然ECU抽象层负责处理I/O信号的访问,但服务层则提供了以下功能:
① 操作系统功能
② 车辆网络通信和管理服务
③ 内存服务(NVRAM管理)
④ 诊断服务(包括UDS通信、错误内存和故障处理)
⑤ ECU状态管理、模式管理
⑥ 程序流程的逻辑和时间监控(看门狗管理器)
任务:
为应用、运行时环境(RTE)和基础软件模块提供基本服务。
特性:
- 实现:大多与微控制器(µC)和ECU硬件无关(上层,即该层之上的软件层或接口与该层提供的接口进行交互时,无需关心微控制器和ECU硬件的具体实现)。
- 接口:与微控制器(µC)和ECU硬件无关(即该层提供的接口是标准化的,不依赖于特定的微控制器或ECU硬件)。
服务层作为基础软件的顶层,为应用软件和其他软件组件提供了必要的服务和支持,确保了整个AUTOSAR架构的稳定性和可靠性。
AUTOSAR Runtime Environment (RTE)
The RTE is a layer providing communication services to the application software (AUTOSAR Software Components and/or AUTOSAR Sensor/Actuator components).
Above the RTE the software architecture style changes from “layered“ to “component style“.
The AUTOSAR Software Components communicate with other components (inter and/or intra ECU) and/or services via the RTE.
Task
Make AUTOSAR Software Components independent from the mapping to a specific ECU.
Properties
Implementation: ECU and application specific (generated individually for each ECU)
Upper Interface: completely ECU independent
译文:
运行时环境(RTE)是一个为应用软件(AUTOSAR软件组件和/或AUTOSAR传感器/执行器组件)提供通信服务的层。
在RTE之上,软件架构风格从“分层式”转变为“组件式”。
AUTOSAR软件组件通过RTE与其他组件(ECU内部和/或ECU之间)和/或服务进行通信。
任务:
使AUTOSAR软件组件独立于特定ECU的映射。
特性:
- 实现:针对ECU和应用具有特异性(为每个ECU单独生成)。
- 上层接口:完全独立于ECU。
运行时环境(RTE)作为连接AUTOSAR软件组件与底层硬件及服务的桥梁,确保了软件组件的可移植性和可重用性。通过RTE,软件组件可以在不同的ECU上运行,而无需关心底层硬件的具体实现,从而提高了软件开发的效率和灵活性。
相关文章:

【AUTOSAR标准文档】AotuSar结构横向分层详解(RTE、BSW)
Top view The AUTOSAR Architecture distinguishes on the highest abstraction level between three software layers: Application, Runtime Environment and Basic Software which run on a Microcontroller. 译文:AUTOSAR架构在最高抽象层次上将软件分为三层&…...

新 Chrome 插件可检测 AI 伪造声音;Canary Speech 推出用于临床对话的语音分析技术丨 RTE 开发者日报
开发者朋友们大家好: 这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE(Real-Time Engagement) 领域内「有话题的 新闻 」、「有态度的 观点 」、「有意思的 数据 」、「有思考的 文…...
1. 路由定义
1. 通过配置文件形式 配置方式与laravel的配置方式相似 <?php use Hyperf\HttpServer\Router\Router;Router::get(/hello-hyperf, function () {return Hello Hyperf.; });// 设置一个 GET 请求的路由,绑定访问地址 /get 到 App\Controller\IndexController 的 …...

我们可以用微服务创建状态机吗?
大家好,我是锋哥。今天分享关于【我们可以用微服务创建状态机吗?】面试题?希望对大家有帮助; 我们可以用微服务创建状态机吗? 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 是的,微服务架构可…...
邦芒贴士:职场新人需远离的7种坏习惯
咱们每一个人都会有这样那样的毛病,而试用期就是试毛病的大小。对于职场新人来说,第一份工作很容易暴露这样那样的职业毛病。职业习惯直接决定了我们以后的职业发展,职业能力。对于职场新人来说,在试用期内,一些职场坏…...
面向医院的统一支付平台产品经验分享
我们面向医院的统一支付平台其实应该属于四方平台的范畴,依托于微信、支付宝等第三方支付平台和银联、银行等渠道生存。 二、医院常见系统说明: 先普及一下医院的系统情况: HIS(医院信息系统Hospital Information System):医院内的核心系统,为医院所属各部门提供病人诊…...

http作业
配置nginx服务通过ip访问多网站 1、前提配置 2、安装nginx服务 3、配置多IP 在linux主机上查看ip地址 4、定义nginx文件 5、在主机创建文件,重启nginx服务 6、测试...

AlDente Pro for Mac电脑 充电限制保护工具 安装教程【简单,轻松上手】
Mac分享吧 文章目录 AlDente Pro for Mac 充电限制保护工具 安装完成,软件打开效果一、AlDente Pro for Mac 充电限制保护工具 Mac电脑版——v1.28.41️⃣:下载软件2️⃣:安装软件,将安装包从左侧拖入右侧文件夹中,等…...

C语言数据结构之算法复杂度
目录 一、数据结构是什么 二、算法是什么 三、算法的效率 3.1 复杂度的概念 四、时间复杂度 4.1 大O渐进表示法 4.2 算法题分析 五、空间复杂度 5.1 复杂度对比 5.2 算法题题分析 正文开始 一、数据结构是什么 每个计算机专业的同学在大学都会接触到一门计算机必修课《数…...

HDU RSA
翻译成中文后: 思路:由题易得,d * e y * f ( n ) 1 ,且gcd ( e , f ( n ) ) 1,所以用扩展欧几里得求出 d ,但要保证 d 是非负的,最有用快速幂求出每个字符即可。 #include<bits/stdc.h> using namespace std;…...
数据仓库建设 : 主题域简介
在数据仓库建设中,主题域是数据模型的一个重要概念,它帮助构建逻辑清晰、层次分明的数据结构。主题域的设计基于企业的业务结构,将业务中的关键部分提炼出来,划分为若干个主题域。每个主题域对应一个特定的业务领域,便…...

开源表单生成器OpnForm
什么是 OpnForm ? OpnForm 是一个开源的表单构建工具,旨在简化创建自定义表单的过程,特别适合无编码知识的用户。它通过人工智能优化表单创建流程,支持多种用途,如联系人表单、调查表等。OpnForm 提供了一个直观的拖放…...
Zookeeper面试整理-Zookeeper的基础概念
Zookeeper的基础概念是理解其作为分布式协调服务的核心要素。以下是一些关键的基础概念: 1. Zookeeper是什么? Zookeeper 是一个开源的分布式协调服务,用于分布式应用中的配置管理、命名服务、分布式锁、集群管理等任务。它提供了一组简单的原语,帮助开发人员构建健壮的分布…...
验证archive_command配置是否正确
要验证 archive_command 配置是否正确,你可以按照以下步骤进行: 检查配置文件: 确保 postgresql.conf(或你的 PostgreSQL 实例使用的任何自定义配置文件)中的 archive_command 已经设置为你想要的命令。 重启 …...
2024.10.19小米笔试题解
第一题数独计数 考虑dfs遍历所有情况 n = int(input())def check(grid, x, y, v):dx = [1, 0, -1, 0]dy = [0, 1, 0, -1]for i in range(4):nx, ny = x + dx[i], y + dy[i]if 0 <= nx < 3 and 0 <= ny < 3:if grid[nx][ny] == 0:continueif abs(grid[nx][ny] - v…...

SQL-SERVER导入excel表格
首先先找到数据源,如上图。我们用的是excel表格。 这里你需要选择excel版本,反正你随便选,应该没什么问题的。 再导入数据 我们需要导入最后那个,也就是OLE DB Provider for SQL SERVER 只有这个才能导入到当前的数据库中 接下来…...
Vue学习笔记(三、v-cloak、v-text、v-html指令)
一、 v-cloak v-cloak 是 Vue.js 提供的一个特殊指令,用于在 Vue 实例准备完毕并开始进行 DOM 编译之前隐藏未编译的模板。它通常用于防止页面闪烁或者展示未编译的 Vue 模板语法。 你可以简单地在 HTML 元素上添加 v-cloak 指令,然后在确保 Vue…...

Java | Leetcode Java题解之第496题下一个更大元素I
题目: 题解: class Solution {public int[] nextGreaterElement(int[] nums1, int[] nums2) {Map<Integer, Integer> map new HashMap<Integer, Integer>();Deque<Integer> stack new ArrayDeque<Integer>();for (int i num…...

【ArcGIS微课1000例】0125:ArcGIS矢量化无法自动完成面解决方案
文章目录 一、坐标系统问题二、正确使用自动完成面工具一、坐标系统问题 1. 数据库坐标系 arcgis矢量化的过程中,无法自动完成面,可能是因为图层要素没有坐标系造成的。双击数据库打开数据库属性,可以查看当前数据框的坐标系。 2. 图层坐标系 双击图层,打开图层属性,切…...

slam技术支持下的果园作物估产论文汇总
文章目录 2019ROLS : Robust Object-level SLAM for grape counting(CVPR) 2021PATHoBot: A Robot for Glasshouse Crop Phenotyping and Intervention 2023ORB-Livox: A real-time dynamic system for fruit detection and localization(Com…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...

基于当前项目通过npm包形式暴露公共组件
1.package.sjon文件配置 其中xh-flowable就是暴露出去的npm包名 2.创建tpyes文件夹,并新增内容 3.创建package文件夹...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...

1.3 VSCode安装与环境配置
进入网址Visual Studio Code - Code Editing. Redefined下载.deb文件,然后打开终端,进入下载文件夹,键入命令 sudo dpkg -i code_1.100.3-1748872405_amd64.deb 在终端键入命令code即启动vscode 需要安装插件列表 1.Chinese简化 2.ros …...

[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...

BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...
Java线上CPU飙高问题排查全指南
一、引言 在Java应用的线上运行环境中,CPU飙高是一个常见且棘手的性能问题。当系统出现CPU飙高时,通常会导致应用响应缓慢,甚至服务不可用,严重影响用户体验和业务运行。因此,掌握一套科学有效的CPU飙高问题排查方法&…...

短视频矩阵系统文案创作功能开发实践,定制化开发
在短视频行业迅猛发展的当下,企业和个人创作者为了扩大影响力、提升传播效果,纷纷采用短视频矩阵运营策略,同时管理多个平台、多个账号的内容发布。然而,频繁的文案创作需求让运营者疲于应对,如何高效产出高质量文案成…...