【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…...

IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...

docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...

中南大学无人机智能体的全面评估!BEDI:用于评估无人机上具身智能体的综合性基准测试
作者:Mingning Guo, Mengwei Wu, Jiarun He, Shaoxian Li, Haifeng Li, Chao Tao单位:中南大学地球科学与信息物理学院论文标题:BEDI: A Comprehensive Benchmark for Evaluating Embodied Agents on UAVs论文链接:https://arxiv.…...

HTML 列表、表格、表单
1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...

【项目实战】通过多模态+LangGraph实现PPT生成助手
PPT自动生成系统 基于LangGraph的PPT自动生成系统,可以将Markdown文档自动转换为PPT演示文稿。 功能特点 Markdown解析:自动解析Markdown文档结构PPT模板分析:分析PPT模板的布局和风格智能布局决策:匹配内容与合适的PPT布局自动…...

从零实现STL哈希容器:unordered_map/unordered_set封装详解
本篇文章是对C学习的STL哈希容器自主实现部分的学习分享 希望也能为你带来些帮助~ 那咱们废话不多说,直接开始吧! 一、源码结构分析 1. SGISTL30实现剖析 // hash_set核心结构 template <class Value, class HashFcn, ...> class hash_set {ty…...
解决本地部署 SmolVLM2 大语言模型运行 flash-attn 报错
出现的问题 安装 flash-attn 会一直卡在 build 那一步或者运行报错 解决办法 是因为你安装的 flash-attn 版本没有对应上,所以报错,到 https://github.com/Dao-AILab/flash-attention/releases 下载对应版本,cu、torch、cp 的版本一定要对…...

用机器学习破解新能源领域的“弃风”难题
音乐发烧友深有体会,玩音乐的本质就是玩电网。火电声音偏暖,水电偏冷,风电偏空旷。至于太阳能发的电,则略显朦胧和单薄。 不知你是否有感觉,近两年家里的音响声音越来越冷,听起来越来越单薄? —…...

技术栈RabbitMq的介绍和使用
目录 1. 什么是消息队列?2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...