2022年AUTOSAR技术分析报告.doc
《2022年AUTOSAR技术分析报告.doc》由会员分享,可在线阅读,更多相关《2022年AUTOSAR技术分析报告.doc(37页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、AUTOSAR技术分析报告(科银京成:王瑜、余鹏、曾英哲、鲁阳、杨宝泽)1 AUTOSAR简介汽车电子领域的软件主要属于嵌入式软件。因而,其开展阶段类似于其他嵌入式系统的软件开展。由于受限于嵌入式硬件本身资源的匮乏,各种硬件产品的品种繁多和各自差异,以及整体嵌入式系统软件的逐步开展,起初的软件设计开发主要是封闭式的。如此有助于开发针关于特定硬件体,充分优化利用资源而特定设计的软件系统。如此的软件系统,是针关于特定硬件和特定应用而设计,其关于硬件资源的充分应用,以及软件本身的执行效率无疑是特别高。然而,随着硬件本身的逐步开展,其可用资源已经十分充分。另一方面,汽车电子领域应用需求也日趋复杂,软件
2、本身也变得越来越复杂。因而,不管汽车厂依然部件商都感到软件的标准化咨询题。软件的可治理性,可重复使用性,可裁减性,以及质量保证等等咨询题被提上了议程。AUTOSAR 的提出正是基于以上一些软件开展的要求,由几大主要汽车厂商以及部件提供商结合提出的,其中包括BWM, DaimlerChrysler, Ford Motor, PSA Peugeot, Toyota Motor, Volkswagen AG, Bosch, Continetal, Siemens VDO等。AUTOSAR是针对特定的汽车电子这一领域,提出的一套开放式软件构造。其主体思想是使得软件设计开发更易于治理,软件系统更易于移植
3、、裁剪,以及更好的维护性和质量保证。AUTOSAR组织所提出的目的以及它所关注的功能领域在下表中列出:工程目的功能领域处理汽车的可用性和平安性需求保持汽车电子系统一定的冗余能够移植到不同汽车的不同平台上实现标准的根本系统功能作为汽车供给商的标准软件模块通过网络共享软件功能集成多个开发商提供的软件模块在产品生命周期内更好的进展软件维护更充分的利用“货价产品”在车辆整个生命周期中进展软件更新与晋级为了实现上述的工程目的,针对在汽车电子行业中面临的一些挑战,AUTOSAR所采纳的处理方案及其好处能够概述如下:挑战处理方法好处不成熟的过程,由于ad-hoc形式/缺少对功能需要的追踪才能。缺少兼容的工具
4、(供给商、OEM)标准化的标准交换格式对标准的改良(格式、内容)提供无缝的工具链。浪费在实现和优化组件上的努力,而顾客并不承认这些努力的价值。根底软件核软件质量的加强。将工作集中在有价值的功能上。微操纵器模型缺乏可用性,特别难习惯现有软件。(由新功能引起的)微操纵器功能的扩展需求所导致的晋级需要(如重新设计)。微操纵器抽象微操纵器能在不需要改变更高软件层的情况下互换。重定位ECU之间的功能时需要做大量的工作。功能重用时也需要做大量的工作。运转时环境(RTE)功能封装导致的通讯技术的独立性。通过标准化机制,使得通讯更加简单。使功能分区和功能重定位变得可能。非竞争性功能必须习惯OEM的特定环境。由
5、于需要从其它组件供给接口需要特别多功夫,因而哪怕是特别微小的革新,也需要做特别多工作。根底软件和模型生成的代码间缺少明晰的接口。接口标准化减少/防止OEM和供给商之间的接口。通过使用通用接口目录,使独立于软件功能的硬件实现所耗费的工作量。简化模型驱动的开发,同意使用标准化的AUTOSAR代码生成工具。OEM间的模型的可重用性。不同供给商之间模块的可交换性。2 AUTOSAR软件构造2.1 AUTOSAR软件的组成与分层AUTOSAR的软件组件能够用以下图来表示:关于上图所示的一些组件,能够依照功能及互相关系对其进展分层,如以下图所示:微操纵器抽象层这一层是根底软件中的最低一层。它包含驱动,这些
6、驱动是软件模块,用来对C内部设备和映射了C外部设备的内存进展访咨询。ECU抽象层这一层与微操纵器抽象层进展对接。它也包含了外部设备的驱动。它为访咨询外设提供了API,不管这些外设的位置(C内部或外部),也不管它们与C的连接(端口针脚,接口类型)。效劳层这层是根底软件中的最高层,而且它与应用软件之间有关联:当对I/O信号的访咨询包含ECU抽象层中时,效劳层提供:l 操作系统功能l 车辆网络通讯及治理效劳l 存储治理(NVRAM治理)l 诊断效劳(包括UDS通讯及错误内存)l ECU状态治理2.2 RTE运转时环境RTE是AUTOSAR ECU体系构造的核心组成部分。RTE是AUTOSAR虚拟功能
7、总线(Virtual Function Bus,VFB)的接口(针对某个特定ECU)的实现,因而,它为应用程序软件组件之间的通讯提供了根本的效劳,同时也便于访咨询包含OS的根本软件组件。应用程序软件组件包含独立于CPU和所处位置的系统软件。这就意味着,为了满足系统设计者所做的一些限制,应用程序组件能够在系统配置期间被映射到任何有效的ECU上。RTE负责确保这些组件能够通讯。RTE和OS,AUTOSAR COM和其他的根底软件模块(BSW)是VFB(Virtual Functional Bus)概念的实现。RTE实现了AUTOSAR VFB的接口,从而实现了AUTOSAR软件组件之间的通讯。RT
8、E是AUTOSAR ECU体系的核心,它提供了在AUTOSAR软件组件间通讯的根底效劳,扮演了一些方法,通过这些方法AUROSAR软件组件能访咨询包括OS和通讯效劳在内根底软件模块的。2.3 系统效劳系统效劳是一组能够由所有层次模块使用的模块和功能。例如实时操作系统、错误治理器和库功能。为应用和根本软件模块提供根本效劳。它包含以下图所示功能:2.3.1 AUTOSAR OSAUTOSAR OS为实时应用提供了所有根本效劳,即中断处理、调度、系统时间和时钟同步、本地音讯处理,以及错误检测机制。所有效劳都隐藏在良好定义的API之后。应用与OS和通讯层的连接只通过API。AUTOSAR OS的根本特
9、征包括:静态配置能够推断实时系统功能提供基于优先级的调度策略提供运转时保护功能(存储、计时等)可宿主在低端操纵器上,同时不需要其他资源它包含以下几个方面:实时操作系统在嵌入式汽车ECU中的实时操作系统构成软件动态行为的根底。它治理任务和事件的调度,不同任务间的数据流,同时提供监控和错误处理功能。但是,在汽车系统中,对操作系统的需求集中在特定领域。所使用的操作系统必须高效运转同时所占存储空间小。在多媒体和远程信息处理应用中,操作系统提供的特征集以及可用计算资源有特别大不同。在纯粹的任务治理之上,OS中还包含了复杂的数据处理(例如,流、快速文件系统等)、存储治理甚至图形用户接口。汽车OS的典型领域
10、涵盖了调度和同步的核心特征。在AUTOSAR中,上面讨论的附加特征在OS的范围之外,其他WP4.2.2.1工作包(例如SPAL)涵盖了这些特征。在AUTOSAR的体系构造约束之下不可能把其他OS(例如,QNX、VxWorks和Windows CE等)的特征集合集成到整体的OS/通讯/驱动构造中。因而,AUTOSAR OS只考虑核心特征。核心操作系统OSEK/VDK操作系统广泛应用于汽车工业,同时已经证明了能够在现代车辆的所有ECU类型中使用。OSEK OS引入的概念被广泛地理解,汽车工业领域在设计基于OSEK OS的系统方面有多年的经历。OSEK OS是一个事件触发的操作系统。这为基于AUTO
11、SAR的系统的设计和维护提供了高度的灵敏性。事件触发使得能够自由地选择在运转时驱动调度的事件,例如角反转、部分时间源、全局时间源、错误出现等等。由于这些缘故,AUTOSAR OS的核心功能必须基于OSEK OS。OSEK OS特别提供了以下特性以支持AUTOSAR: 固定的基于优先级调度 处理中断的功能 只有中断有高于任务的优先级 一些防止错误使用OS效劳的保护措施 StartOS()和StartupHook启动接口 ShutdownOS()和ShutdownHook关闭接口AUTOSAR OS基于OSEK OS意味着应用程序是向后兼容的。为OSEK OS编写的应用程序能够在AUTOSAR O
12、S上运转。但是,使用AUTOSAR OS引入的一些新特性需要对已存在的OSEK OS特性的使用有所限制。例如:为定时器回调实现定时和内存保护效率就会特别低。此外,AUTOSAR OS扩展了一些已存在的特性,例如直截了当通过定时器驱动计数器。AUTOSAR OS提供的API向后兼容于OSEK OS的API。新的需求作为功能扩展来集成。AUTOSAR OS对OSEK OS扩展的API如下表:效劳名语法GetApplicationIDApplicationType GetApplicationID (void)GetISRIDISRType GetISRID (void)CallTrustedFun
13、ctionStatusType CallTrustedFunction(TrustedFunctionIndexType FunctionIndex,TrustedFunctionParameterRefType FunctionParams)CheckISRMemoryAccessAccessType CheckISRMemoryAccess(ISRType ISRID,MemoryStartAddressType Address,MemorySizeType Size)CheckTaskMemoryAccessAccessType CheckTaskMemoryAccess(TaskTyp
14、e TaskID,MemoryStartAddressType Address,MemorySizeType Size)CheckObjectAccessObjectAccessType CheckObjectAccess(ApplicationType ApplID,ObjectTypeType ObjectType,)CheckObjectOwnershipApplicationType CheckObjectOwnership(ObjectTypeType ObjectType,)StartScheduleTableRelStatusType StartScheduleTableRel(
15、ScheduleTableType ScheduleTableID,TickType Offset)StartScheduleTableAbsStatusType StartScheduleTableAbs(ScheduleTableType ScheduleTableID,TickType Tickvalue)StopScheduleTableStatusType StopScheduleTable(ScheduleTableType ScheduleTableID)NextScheduleTableStatusType NextScheduleTable(ScheduleTableType
16、 ScheduleTableID_current,ScheduleTableType ScheduleTableID_next)IncrementCounterStatusType IncrementCounter(CounterType CounterID)SyncScheduleTableStatusType SyncScheduleTable(ScheduleTableType SchedTableID,GlobalTimeTickType GlobalTime)SetScheduleTableAsyncStatusType SetScheduleTableAsync(ScheduleT
17、ableType ScheduleID)GetScheduleTableStatusStatusType GetScheduleTableStatus(ScheduleTableType ScheduleID,ScheduleTableStatusRefType ScheduleStatus)TerminateApplicationStatusType TerminateApplication(RestartType RestartOption)DisableInterruptSourceStatusType DisableInterruptSource (ISRType DisableISR
18、)EnableInterruptSourceStatusType EnableInterruptSource (ISRType EnableISR)ProtectionHookProtectionReturnType ProtectionHook(StatusType Fatalerror)静态定义的调度在许多应用中需要静态定义一组互相关联的任务的活动。这用于在基于数据流的设计中保证数据一致性,与时间触发的网络同步,保证正确的运转时定相,等等。时间触发的操作系统通常作为这个咨询题的处理方法。然而,时间只是简单的事件,因而任何事件触发的OS,包括OSEK OS,会在汽车电子操纵单元实现一个用于静
19、态调度实时软件的调度器。监控功能监控功能在适当的执行阶段检测错误,不是在错误发生的时刻。因而,监控功能是在运转时捕捉失效,而不是预防毛病。保护功能AUTOSAR概念需要多来源的OS应用共存在同一处理器中。为了防止这些OS应用之间意想不到的交互,需要提供保护机制。计时器效劳计时器效劳为应用和根底软件提供软件计时器。计时机制的核心已经由OSEK OS的计数器和闹钟提供。假如要提供通用的软件计时,一些补充特性需要添加到AUTOSAR OS。时间触发操作系统时间触发操作系统在汽车电子操纵单元实现了一个用于静态调度实时软件的调度器。另外,操作系统为实时应用提供了所有根本效劳,即中断处理、调度、系统时间和
20、时钟同步、本地音讯处理,以及错误检测机制。所有效劳都隐藏在良好定义的API之后。应用与OS和通讯层的连接只通过API。关于特别的应用,操作系统能够配置为只包含该应用需要的效劳。因而操作系统的资源需求尽量少。2.3.2 BSW调度器BSW调度器是系统效劳的一部分,因而它向所有层次的所有模块提供效劳。但是,与其它BSW模块不同,BSW调度器提供了集成的概念和效劳。BSW调度器提供方法用以: 把BSW模块的实现嵌入AUTOSAR OS上下文 触发BSW模块的主要处理功能 应用BSW模块的数据一致性机制集成者的任务是应用所给的方法(AUTOSAR OS提供的),在特定工程环境中以良好定义和有效的方式把
21、BSW模块装配起来。这也意味着BSW调度器只是使用AUTOSAR OS。它与AUTOSAR OS调度器并不冲突。BSW调度器的实现基于: BSW模块的BSW模块描绘 BSW调度器的配置2.3.3 形式治理形式治理簇包括三个根本软件模块:ECU状态治理器,操纵AUTOSAR BSW模块的启动阶段,包括OS的启动;通讯治理器,负责网络资源治理;看门狗治理器,基于应用软件的生存状态触发看门狗。2.3.3.1 ECU状态治理器ECU状态治理器是一个根本软件模块,治理ECU的状态(OFF、RUN、SLEEP),以及这些状态之间的转换(过渡状态:STARTUP、WAKEUP、SHUTDOWN)。详细地,E
22、CU状态治理器:负责初始化和de-initialization所有根本软件模块,包括OS和RTE;在需要时与所谓的资源治理器(例如,通讯治理器)协作,关闭ECU;治理所有唤醒事件,并在被要求时配置ECU为SLEEP状态。为了完成所有这些任务,ECU状态治理器提供了一些重要的协议:RUN恳求协议,调整ECU是保持活动状态依然预备关闭,唤醒确认协议,从“不稳定的”唤醒事件中区分出“真正的”唤醒事件,时间触发的增多非工作状态协议(Time Triggered Increased Inoperation - TTII),同意ECU更多地进入节能的休眠状态。ECU状态治理器必须支持独立的预处理动作和过渡
23、,以启动ECU或将其转换到低功耗状态(例如,休眠状态/备用状态)。通过良好使用ECU状态治理器的特性和才能,此模块能够用于执行电源耗费的预定义策略,因而提供了对ECU的有效能源治理。ECU状态治理器的特性和优势包括:初始化和关闭根本软件模块。ECU主要状态的标准化定义。时间触发的更多非工作状态。2.3.3.2 看门狗治理器看门狗治理器是AUTOSAR(效劳层次)的标准化根本软件体系构造的根本软件模块。它监控与计时约束有关的应用执行的可靠性。分层体系构造方法使得应用计时约束和看门狗硬件计时约束别离。基于此,看门狗治理器在触发看门狗硬件的同时提供了对一些独立应用的生存监控。看门狗治理器提供以下特性
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 AUTOSAR 技术 分析 报告
限制150内