AUTOSAR_RS_ClassicPlatformDebugTraceProfile
AUTOSAR经典平台调试、跟踪与分析支持
目录
- 简介
- ARTI核心扩展
- 核心特定ARTI扩展结构
- 核心参数定义
- 操作系统和任务扩展
- OS特定ARTI扩展
- 任务特定ARTI扩展
- 软件组件特定扩展
- 总体架构
- 组件结构
- 接口定义
- 错误处理
- 默认错误跟踪器(DET)
- 总结
1. 简介
本文档详细描述了AUTOSAR经典平台中对调试、跟踪和分析功能的支持要求。AUTOSAR Run Time Interface (ARTI)为调试工具、跟踪工具和分析工具提供了一种标准化的方式,用于访问AUTOSAR系统内部状态和行为。
ARTI扩展主要关注以下几个方面:
- 核心特定扩展:访问特定核心的状态和参数
- 操作系统特定扩展:访问OS的应用模式和状态
- 任务特定扩展:访问任务的状态和执行信息
- 软件组件特定扩展:访问SWC的状态和行为
通过这些扩展,开发者可以更有效地调试、跟踪和分析AUTOSAR系统的运行状态,提高开发效率和系统可靠性。
2. ARTI核心扩展
2.1 核心特定ARTI扩展结构
ARTI的核心特定扩展定义了一种机制,允许调试和跟踪工具访问与特定处理器核心相关的参数。这些参数对于多核系统中的调试和跟踪尤为重要。
图2.1 ARTI核心特定扩展结构图
如图2.1所示,ARTI核心扩展包含以下主要组件:
-
ARTICoreClass:核心类定义
- 定义了与特定核心相关的额外ARTI参数扩展
- 提供获取当前应用、当前任务和最后错误的接口
-
ARTICoreInstance:核心实例
- 每个核心实例引用EcucCoreDefinition
- 负责提供特定核心参数的具体值
- 实现了评估当前应用、当前任务和最后错误的方法
-
Application:当前应用参数
- 表示特定核心上正在运行的应用
- 包含应用ID、名称和状态信息
-
Task:当前任务参数
- 表示特定核心上正在运行的任务
- 包含任务ID、名称、优先级和状态信息
-
Error:最后错误参数
- 表示特定核心上发生的最后一个错误
- 包含错误代码、描述和时间戳信息
2.2 核心参数定义
根据RS_ARTICP_00001到RS_ARTICP_00004的需求规范,核心特定ARTI扩展支持以下关键参数:
-
当前应用参数(RS_ARTICP_00002)
- 定义:包含对特定核心上当前运行的应用的评估
- 用途:调试器和跟踪工具需要了解当前应用以显示和跟踪核心活动
-
当前任务参数(RS_ARTICP_00003)
- 定义:包含对特定核心上当前运行的任务的评估
- 用途:调试器和跟踪工具需要了解当前任务以显示和跟踪核心活动
-
最后错误参数(RS_ARTICP_00004)
- 定义:包含对特定核心上发生的最后一个错误的评估
- 用途:调试器和跟踪工具需要了解最后错误以显示和跟踪核心活动
这些参数通过类实例的方法调用获取,由具体的核心实例负责实现评估逻辑。
3. 操作系统和任务扩展
3.1 OS特定ARTI扩展
操作系统特定ARTI扩展定义了访问OS状态和参数的机制,这对于调试OS行为和监控系统状态非常重要。
图3.1 ARTI OS和任务特定扩展结构图
如图3.1所示,OS特定ARTI扩展包含以下组件:
-
ARTIOSClass:OS类定义
- 定义了与操作系统相关的额外ARTI参数扩展
- 提供获取应用模式、OS状态和定时器计数的接口
-
ARTIOSInstance:OS实例
- 每个OS实例引用EcucDefs/Os/OsOS
- 负责提供特定OS参数的具体值
- 实现了评估应用模式、OS状态和定时器计数的方法
-
ApplicationMode:应用模式参数
- 表示操作系统当前的应用模式
- 包含ID、名称和是否默认模式的信息
根据RS_ARTICP_00005和RS_ARTICP_00006的需求规范,OS特定ARTI扩展支持以下关键参数:
- 应用模式参数(RS_ARTICP_00006)
- 定义:包含对OS应用模式的评估,并引用EcucDefs/Os/OsAppMode
- 用途:调试器和跟踪工具需要了解应用模式以显示和跟踪OS活动
3.2 任务特定ARTI扩展
任务特定ARTI扩展提供了访问任务状态和执行信息的机制,这对于分析任务行为和调试任务问题至关重要。
如图3.1所示,任务特定ARTI扩展包含以下组件:
-
ARTITaskClass:任务类定义
- 定义了与任务相关的额外ARTI参数扩展
- 提供获取栈使用情况、优先级、状态和执行时间的接口
-
ARTITaskInstance:任务实例
- 每个任务实例引用EcucDefs/Os/OsTask
- 负责提供特定任务参数的具体值
- 实现了评估栈使用情况、优先级、状态和执行时间的方法
-
TaskState:任务状态参数
- 表示任务的当前状态
- 包含状态标识、是否可抢占和活动资源列表
根据RS_ARTICP_00007的需求规范,任务特定ARTI扩展支持任务实例参数,该参数引用EcucDefs/Os/OsTask并提供任务相关的评估信息。
3.3 软件组件特定扩展
软件组件特定扩展提供了访问SWC状态和行为的机制,对于分析组件交互和调试组件问题具有重要价值。
如图3.1所示,SWC特定ARTI扩展包含以下组件:
-
ARTISWCInstance:SWC实例
- 每个SWC实例引用EcucDefs/Rte/RteSwComponentInstance
- 负责提供特定SWC参数的具体值
- 实现了评估组件状态和可运行状态的方法
-
SWCState:组件状态参数
- 表示软件组件的当前状态
- 包含活动可运行实体列表和待处理事件列表
-
RunableStatus:可运行状态参数
- 表示可运行实体的状态
- 包含名称、是否活动和执行时间信息
根据RS_ARTICP_00008的需求规范,SWC特定ARTI扩展支持SWC实例参数,该参数引用EcucDefs/Rte/RteSwComponentInstance并提供组件相关的评估信息。
4. 总体架构
4.1 组件结构
AUTOSAR Classic Platform中的调试、跟踪和分析支持架构由多个组件组成,这些组件共同协作以提供全面的调试、跟踪和分析能力。
图4.1 AUTOSAR Classic Platform 调试、跟踪和分析支持架构图
如图4.1所示,整体架构包含以下主要层次和组件:
-
外部工具
- 调试工具:用于调试AUTOSAR系统的外部工具
- 跟踪工具:用于跟踪AUTOSAR系统行为的外部工具
- 分析工具:用于分析AUTOSAR系统性能的外部工具
-
应用层
- 应用软件组件:实现应用功能的软件组件
- RTE:运行时环境,提供软件组件间通信的基础设施
-
基础软件层
- 系统服务
- ARTI Manager:管理所有调试、跟踪和分析接口,协调各个扩展组件的工作
- Default Error Tracer (DET):提供标准化的错误检测和报告机制
- OS服务
- OS:操作系统,提供任务调度和资源管理
- 任务管理:管理任务的创建、调度和终止
- MCU/ECU抽象
- MCU驱动:提供对底层硬件的访问,支持调试和跟踪功能
- 计时器:提供时间测量和定时服务
- 系统服务
-
ARTI扩展
- 核心ARTI扩展:提供对核心特定参数的访问
- OS ARTI扩展:提供对OS特定参数的访问
- 任务ARTI扩展:提供对任务特定参数的访问
- SWC ARTI扩展:提供对SWC特定参数的访问
4.2 接口定义
架构中定义了多个接口,用于外部工具与AUTOSAR系统的交互:
- 调试接口:允许调试工具访问AUTOSAR系统内部状态
- 跟踪接口:允许跟踪工具记录和分析AUTOSAR系统的行为
- 分析接口:允许分析工具测量和评估AUTOSAR系统的性能
- 错误接口:提供对错误信息的访问
- 参数接口:提供对系统参数的访问
这些接口由ARTI Manager统一管理,各个扩展组件通过这些接口提供特定的功能和数据。
5. 错误处理
5.1 默认错误跟踪器(DET)
默认错误跟踪器(Default Error Tracer, DET)是AUTOSAR系统中错误检测和报告的标准机制。DET提供了一种一致的方式来报告、记录和处理在AUTOSAR模块内部检测到的开发和运行时错误。
默认错误跟踪器的主要功能包括:
- 错误检测:检测模块内部的错误情况
- 错误报告:提供标准化的错误报告机制
- 错误记录:记录错误信息,包括错误码、模块ID和实例ID
- 错误处理:支持对检测到的错误进行处理
DET通过错误接口与ARTI框架集成,允许调试和分析工具访问错误信息,从而帮助开发者识别和解决系统问题。
6. 总结
AUTOSAR Classic Platform的调试、跟踪和分析支持为开发者提供了强大的工具,用于监控和分析AUTOSAR系统的行为。通过ARTI扩展机制,外部工具可以访问系统内部状态和行为,包括核心、OS、任务和SWC的相关信息。
主要优势包括:
- 标准化接口:提供统一的方式访问AUTOSAR系统
- 全面的覆盖范围:涵盖核心、OS、任务和SWC等多个层面
- 灵活的扩展机制:允许根据需要添加特定参数
- 错误检测与处理:提供标准化的错误检测和报告机制
通过这些功能,AUTOSAR Classic Platform显著提升了系统的可调试性、可跟踪性和可分析性,为开发高质量的汽车电子系统提供了坚实的基础。