AUTOSAR架构介绍

news2024/11/20 18:25:08

简介

AUTOSAR(AUTomotive Open System ARchitecture)是一种面向汽车电子系统的软件架构标准。AUTOSAR为汽车电子系统提供一种开放式的软件架构标准,以促进汽车电子系统的可重用性、互操作性和可扩展性。它包括一系列的规范和标准,涉及汽车电子系统的各个方面,如软件架构、通信、诊断、安全等。

AUTOSAR的主要目标是提高汽车电子系统的开发效率和质量,以及降低开发成本。它可以使汽车制造商和供应商在开发汽车电子系统时更加灵活和高效,从而加速新产品的上市和提高产品质量。

AUTOSAR的核心是一个分层的软件架构,包括应用层、运行时环境层、基础软件层和硬件抽象层等。它还定义了一些通信协议、诊断协议和安全机制等,以保证汽车电子系统的安全性和可靠性。

总之,AUTOSAR为汽车电子系统提供了一种开放式的软件架构标准,可以提高汽车电子系统的开发效率和质量,降低开发成本,并促进汽车电子系统的可重用性、互操作性和可扩展性。

AUTOSAR的软件架构

汽车电子软件架构被抽象成四层分别为:应用层(Application Layer)、运行时环境(Run Time Environment,RTE)、基础软件层(Basic Software,BSW)以及微控制器(Microcontroller)
在这里插入图片描述
AUTOSAR软件架构层次的作用如下:

  1. 应用层:应用层是最高层,它包含了汽车电子系统的应用软件,这些软件可以是从多个供应商获取的,也可以是自己开发的。应用层的主要任务是提供功能和服务。
  2. 运行时环境层:运行时环境层提供了一个运行环境,包括操作系统和一些运行时库,以支持应用程序的运行。这一层还定义了一些标准接口,用于应用层和基础软件层之间的通信。
  3. 基础软件层:基础软件层提供了一些基础软件模块,包括通信协议、诊断协议、内存管理、定时器等,以支持运行时环境层和应用层的功能实现。基础软件层的主要任务是提供可重用性和互操作性。
  4. 硬件抽象层:硬件抽象层是最底层,它提供了一个硬件抽象层次,使得汽车电子系统的软件可以与硬件独立。硬件抽象层的主要任务是提供硬件相关的抽象和访问接口。

AUTOSAR基础软件层进一步拆分四部分:

微控制器抽象层,ECU抽象层,服务层以及复杂驱动。
在这里插入图片描述
AUTOSAR基础软件层各层次的作用如下:

  1. 微控制器抽象层(MCAL):MCAL层提供了与微控制器硬件无关的软件接口,使得上层应用程序能够以统一的方式访问硬件资源,而不需要了解底层硬件的细节。MCAL层包含了一些硬件抽象接口,例如通用IO口、定时器、ADC、SPI等,这些接口能够方便地控制微控制器的硬件资源。
  2. ECU抽象层(ECU Abstraction Layer):ECU抽象层是在MCAL层之上的一个抽象层,它提供了一些ECU硬件资源的抽象接口,例如CAN总线、LIN总线、FlexRay总线等。ECU层主要负责与外部通信,以及与其他ECU共享数据。
  3. 服务层(Service Layer):服务层提供了一些常用的服务和功能,例如定时、报警、内存管理、任务管理、通信管理等。服务层是一个比较底层的层次,它提供了很多基础功能,为上层应用程序提供了便利。
  4. 复杂驱动(Complex Driver):复杂驱动层是指一些与硬件有关的复杂驱动程序,例如CAN驱动、FlexRay驱动、以太网驱动等。这些驱动程序需要与硬件密切配合,实现数据的传输和控制。

总体来说,这四个部分共同构成了基础软件层,为上层应用程序提供了统一的接口和功能,使得应用程序能够更加方便地访问硬件资源,提高了软件的可重用性和可维护性。

AUTOSAR基础软件层划分为功能组

在这里插入图片描述

服务层Service Layer说明:

服务层来源3个不同部分:

◆通信服务

通信服务communication services是一组车辆网络通信模块(CAN、LIN、FlexRay、MOST)。他们通过通信硬件抽象communication hardware abstraction与通信驱动communication drivers进行交互。
该模块提供以下功能:
・为各种应用和车辆网络的通信提供统一接口;
・为网络管理提供统一服务;
・为诊断通信提供车辆网络的统一接口;
・隐藏协议和来自应用的消息特性

◆存储服务

存储服务负责管理非挥发数据(从不同存储驱动进行读/写)。NVRAM管理提供RAM镜像为应用层用作的数据接口,以便快速访问读。功能如下:
・利用统一方法为应用层提供非挥发数据
・抽取存储器的位置及特性
・为非挥发数据管理提供机制,如保存、装载、校验和保护、核实、可靠保存等。

◆系统服务

系统服务的功能可以被所有层次使用。例如实时操作系统、错误管理及库(CRC、插件)。这些服务依赖μC(如OS)、ECU硬件及依赖应用(ECU状态管理、DCM)或硬件及独立于μC,为应用和基本软件模块提供基本服务。

ECU抽象层ECU Abstraction Layer说明

ECU抽象层被分为4部分:

◆I/O Hardware Abstraction

I/O硬件抽象模块抽取外设I/O设备(芯片或面板)的位置和ECU硬件分层(μC管脚连接和信号转变)。I/O硬件抽象并不提取传感器/执行器。通过I/O信令接口访问不同的I/O设备。功能如下:
・I/O信令与ECU硬件的连接(电流、电压、频率);
・为较高的软件层隐藏ECU硬件和布局特性

◆Communication Hardware Abstraction

通信硬件抽象层抽取通信控制器的位置和ECU硬件布局。对所有通信系统必须有一个指明的通信硬件抽象(LIN、CAN、MOST、FlexRay)。例如,ECU有一个带有2个内部CAN信道的微控制器和一个附加的带有4个CAN控制器的ASIC面板。CAN-ASIC通过SPI与微控制器连接。
通过总线指定的接口访问通信驱动(如CAN接口)。意味着访问CAN控制器不考虑它是否在微控制器内部、外部或是否通过SPI连接。
・提供相等的装备访问总线信道而不需要考虑其位置(芯片上/面板上)。

◆Memory Hardware Abstraction

存储硬件抽象模块提取出外部存储设备的位置(芯片或面板)及ECU硬件布局。如:通过等价结构(equal mechanism)访问芯片EEPROM和外部EEPROM设备。通过存储器指定的接口(如EEPROM接口)可以访问memory驱动。
・提供等价结构来访问内部((on-chip)和外部(on-board)存储设备。

◆Onboard Device Abstraction

面板设备抽象包括ECU面板设备驱动,它不能向系统基本芯片、外部看门狗那样被当做传感器或执行器。这些设备通过μC抽象层访问ECU面板设备。
・提取ECU指定的面板设备

★复杂驱动

复杂驱动可以直接访问MCU,以实现一些复杂的传感器和控制器操作,比如喷油控制、曲轴信号采集等。复杂驱动重要的意义有:首先,可以用于实现AUTOSAR不支持或未标准化的硬件驱动,其次,可以作为已存在的应用程序向AUTOSAR过度的接口。

Microcontroller Abstraction Layer说明

微控制器抽象层被分成4部分:

◆I/O驱动

驱动模拟和数字I/O(如:ADC、PWM、DIO)

◆通信驱动

驱动ECU面板(如SPI、I2C)和车辆通信(如CAN)、OSI-Layer:数据链路层部分。

◆内存驱动

驱动芯片内存设备(内部Flash、内部EEPROM)和内存映射的外部存储设备(如外部Flash)。

◆微控制器驱动

驱动内部设备(如看门狗、时钟单元)并具有直接访问μC的功能(如:RAM test、Core test)。

autosar 22-11版本功能组如下变化
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/603005.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Force Dimension 全系列触觉反馈装置

力觉或触觉是人体感官中具有双向传递信息能力的信息载体。借助于力反馈,人们可以真实的按照人类的肢体语言进行人机自然互动和信息交流,用户通过应用力反馈,可以获得和触摸实际物体时相同的运动感,从而产生更真实的沉浸感。 力反馈…

毕业遭失业,前途一片黑暗...不得已转行软件测试,太多心酸和无助...

大家好,我叫小涵,一名应届毕业生,目前已经成功转行互联网。写这篇文章的目的是因为很多人不喜欢自己的现状,想通过学习改变,奈何没有出路,所以想为这部分人提供一些思路;其次文章会总结我自己转…

汽车电子设计之SBC芯片

参考英飞凌SBC官网资料:https://www.infineon.com/cms/cn/product/automotive-system-ic/system-basis-chips-sbc/ SBC芯片在汽车电子领域可谓占一席之地了。那么什么是SBC?怎么用?用在哪里?主要特性? 目录 1.什么是…

unity Sockets通信 使用UDP协议,设置客户端电脑网络配置,使用新线程获取数据,解决卡顿问题,

今天调试和服务器连接,发现始终获取不到服务器的数据, 电脑和服务器都在同一局域网,仍然获取不到, 下面是电脑环境配置, 第一步: 设置网络为专用网络,然后点击配置防火墙和安全设置,…

Unity——2D小游戏笔记整理

【每日一句:清晨和夜晚都请用尽全力去生活】 目录 一、环境搭建 二、人物 三、相机跟随人物移动 四、平铺精灵 五、血条跟随敌人行走 六、脚本逻辑 【玩家行走方法】 【玩家跳跃方法】 【改变玩家血量值方法】 【创建玩家子弹方法】 【主角血量&#xff…

《计算机网络——自顶向下方法》精炼——3.7(1)

少而好学,如日出之阳;壮而好学,如日中之光;志而好学,如炳烛之光。——刘向 文章目录 拥塞控制方法ATM ABR拥塞控制 TCP拥塞控制TCP拥塞控制算法的实现慢启动拥塞避免快速恢复总结 拥塞控制方法 在上一篇文章中,我们介绍了在数据传输过程中出现的问题。本节将简要介…

Bitbucket 的SSH keys 突然无法识别 -> Permission denied (publickey)问题

Bitbucket 的SSH keys 突然无法识别 -> Permission denied (publickey)问题 用了几年的SSH keys突然出现Permission denied (publickey)问题,如下图所示: 1、首先排查项目权限问题,确认其他账号可更新代码,排除 2、排除SSH k…

【软件测试】白盒测试与黑盒测试

白盒测试与黑盒测试 测试用例定义生成的基本准测设计步骤作用测试数据和测试用例的区别 黑盒测试定义优点缺点黑盒测试的实施过程等价类划分法边界值分析法错误推测法因果图判定表判定表例题 白盒测试介绍覆盖程度基本路径覆盖程序流程图简化成控制流图计算圈复杂度导出测试用例…

chatGPT 学习笔记

学习笔记:chatGPT chatGPT 概述 什么是 chatGPT ?(要说明定义、来源、功能和特点) ChatGPT 是 OpenAI 开发的一个大型预训练语言模型,它基于 GPT-3.5 模型,可以在对话中生成类似人类的文本响应,简称对齐。它使用自监…

基于节点分层的配网潮流前推回代方法【IEEE33节点】(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

java的UDP(一)

文章目录 1. 简介2. UDP客户端3. UDP服务器4. DatagramPacket类 1. 简介 Java中的UDP实现分为两个类:DatagramPacket和DatagramSocket。DatagramPacket类将数据字节填充到UDP包汇总,这称为数据报,由你来解包接收的数据报。DatagramSocket可以…

2023北京大学首席营销官CMO高级研修班简介

【课程背景】自 2022 年以来,营销新趋势呈现以下变化:消费渠道多元化,社会化媒体 成为信息主要渠道,流量红利消失,数字营销成当下主流:元宇宙数字营销成热点;私域运营更受品牌重视;国…

MySQL主存复制

介绍 配置-主库master 第一步:修改MySQL数据库的配置文件/etc/my.cnf [mysqld] log-binmysql-bin #[必须]启用二进制日志 server-id100 #[必须]服务器唯一id第二部:重启MySQL服务 systemctl restart mysqld第三步:登录MySQL操作&#x…

Talk预告 | 新加坡国立大学张傲:10%成本定制类 GPT-4 多模态大模型

本期为TechBeat人工智能社区第502期线上Talk! 北京时间06月01日(周四)20:00,新加坡国立大学在读博士生 — 张傲的Talk将准时在TechBeat人工智能社区开播! 他与大家分享的主题是: “10%成本定制类 GPT-4 多模态大模型 ”,届时将介…

RemoteSensing投稿流程

RemoteSensing投稿流程,底部有官网地址和word模板 RemoteSensing投稿流程,遇到的坑RemoteSensing期刊官网地址,模板 RemoteSensing投稿流程, ##3.16 Submit (第一次提交) 3.17 Under review (正…

中核浦原一号数字员工诞生,实在智能为智能制造再添强大引擎

头戴博士帽,脚踩喷气引擎,身披“科技蓝”披风,今年的全国科技工作者日,一位硬“核”数字员工正式诞生! 这就是由上海中核八所科技有限公司(下称中核八所)人工智能研发中心为上海中核浦原有限公司…

网工内推 | 上海网工专场,NP认证,朝九晚六,多次调薪机会

01 上海伍贤信息技术股份有限公司 🔷招聘岗位:网络工程师 🔷职责描述: 1、在网络基础设施方面提供日常支持,例如,WIFI、局域网、视频会议等。 2、协助管理亚太地区的网络安全服务(防火墙/代理/…

CVE-2023-33246 Apache RocketMQ 命令注入漏洞复现及分析

CVE-2023-33246 Apache RocketMQ 命令注入漏洞复现及分析 0x0.威胁情报: 漏洞编号CVE编号CVE-2023-33246漏洞评估危害评级高危漏洞类型RCE公开程度PoC已公开利用条件1.在受影响版本内威胁类型远程利用情报在野利用无漏洞活跃度中影响产品产品名称Apache RocketMQ受…

代码随想录算法训练营第二十四天| 回溯理论基础 、77. 组合

理论基础 回溯通常隐藏在递归函数的下面,递归和回溯是相辅相成的,通常来说 回溯函数就是指递归函数。 回溯法其实是一个纯暴力的搜索,有些问题只能依靠回溯法将所有的结果搜出来。 例如: 组合问题:N个数里面按一定规…

【VictoriaMetrics】VictoriaMetrics单机版数据删除

在使用vm的过程中,我们会遇到需要删除不必要的数据,那vm是如何操作数据删除的呢? VictoriaMetrics通过发送HTTP请求到http://<victoriametrics-addr>:8428/api/v1/admin/tsdb/delete_series?match=<timeseries_selector_for_delete> 其中<timeseries_sele…