项目简介
FrankenTrace是一个针对ARM Cortex - M系列微控制器(MCU)的低成本、周期级的程序执行追踪工具。它致力于解决现代低功耗ARMv7 - M型SoC进行非侵入式周期级追踪的难题,通过反复执行确定性应用程序代码,可重建完整的程序执行轨迹,克服低速调试组件的限制。
项目的主要特性和功能
- 周期级追踪:可进行周期级的程序计数器追踪(PC追踪)和数据传输追踪。
- 低速调试组件支持:能在只有低速度调试组件(如DWT、ITM等)的SoC上运行。
- 低成本探针:利用廉价探针获取ITM流,并通过SWO进行数据传输。
- 重执行同步工具:提供工具处理不可避免的非确定性事件。
- 追踪数据处理:有工具和脚本可创建完整的周期级程序执行轨迹。
- ITM事件解码:提供实用程序用于解码ITM事件,便于分析追踪数据。
安装使用步骤
假设用户已经下载了本项目的源码文件,按以下步骤操作:
1. 安装依赖项:确保安装必要的Python库和其他依赖项,如sigrok和相关的解码器。
2. 配置MCU:将device/
目录下的代码烧录到目标ARM Cortex - M MCU上,并正确配置硬件调试追踪相关参数。
3. 运行脚本:运行host/
目录下的脚本,处理和解析MCU产生的追踪数据。
4. 解析数据:使用host/sigrok_decoders/
目录下的解码器解析追踪数据,生成易于分析的结果。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】