在APAUTOSAR 中,Log and Trace 模块负责管理和记录AP平台的日志,既可以应用于开发过程,也可以适用于量产过程。在架构上,Log and Trace模块会与AP的时间同步及通信管理等模块交互。基于AP AUTOSAR 标准定义的LT协议,Log and Trace模块可以让AP应用程序将信息记录到通信总线、控制台或文件系统上。同时 DLT 协议也提供了包括日志等级、日志ID等字段内容,日志客户端可以使用。
本节主要介绍基于 AP 的智能域控制器(后续简称 IDC)OTA升级场景及其实现方案。IDC 的 OTA功能可以进行自身应用软件及系统软件、关联器件固件的升级,并在数据管理、软件升级、可追溯性、安全验证方面满足 AP 的相关要求。
这个其中与传统的Bootloader(UDS刷写方案)配合策略值得在规范中明确定义。
在OTA的功能实现过程中,IDC与外界的数据交互如图所示。云端OTA云服务器向车端HUT(终端信息展现单元 Head Unit & Telematics)推送升级任务,用户确认升级后,HUT会通过网关向IDC及其他ECU以UDS的形式发送升级指令及升级数据,IDC接收升级指令与数据后,在确保安全的情况下完成软件升级并向 HUT 反馈安装进度及安装结果。
1、数据传输与管理
-> IDC内部分为 OTA 进程和 UDS Server进程,UDS Server进程与HUT端交互,负责处理、转发指令和接收软件包,OTA 进程处理软件包进行升级;
-> OTA使用专用的磁盘分区保证有足够的资源来存储软件包及相关数据,从而保证数据的安全性;
-> IDC会进行完整性校验以保证软件包的完整性;
-> OTA结束后,IDC会删除临时数据,最大限度节省空间。
2、软件升级
-> OTA 采用双分区机制,通过活跃分区去升级备份分区,升级成功后重启备份分区,完成备份分区和活跃分区的互相切换,轻松实现 IDC 上的应用软件、中间件、操作系统、配置数据的安装、更新、删除;
-> OTA 采用双分区机制,通过切换启动分区,可以实现 IDC 上所有软件及数据的快速回滚功能;
-> OTA 支持周边器件的升级,如 MCU、Snapshot等;
-> OTA 内部维护状态机,状态变化实时落盘,可以支持在异常中断后恢复升级。
3、可追溯性
-> OTA提供获取当前软件版本号、安装进度、安装结果的接口;
-> OTA会记录升级过程中的日志,供HUT获取。
4、安全性
-> OTA 在软件升级前会使用强加密算法校验证书链与软件包签名,保证软件包的真实性及完整性。
-> OTA 在软件升级前会检查当前车速、IDC 的温度、供电情况,保证在安全的情况下进行 IDC 软件升级。
-> OTA 时会激活 IDC 心跳监控机制及分区损坏回滚机制,当切换到备份分区启动失败后,IDC不会给MCU发送心跳报文,MCU会认为IDC在OTA后变砖,会给IDC断电重启,切回原分区启动,保证车机可用(车载娱乐系统)。