littlebot
Published on 2025-04-12 / 3 Visits
0

【源码】基于ARM架构的CoreSight调试追踪系统

项目简介

本项目是基于ARM架构的CoreSight调试追踪系统,提供了与目标设备上CoreSight跟踪设备直接交互的API。通过该系统,能够在生产系统中捕获程序执行跟踪,无需连接外部调试器,还能将保存的跟踪信息加载到调试器中进行后续分析。

项目的主要特性和功能

  1. 多组件支持:支持ETMv3.x、PTMv1.x、ETMv4.x等多种CoreSight跟踪组件,以及CoreSight ITM、STM、ETB等。
  2. 调试采样支持:可访问v7 Arch或v8 Arch调试采样寄存器,对运行核心的PC、VMID和ContextID进行非侵入式采样。
  3. 可选调试模式:对v7 Arch调试核心的侵入式暂停模式调试提供可选支持。
  4. API更新完善:持续更新API,增加设备版本管理、寄存器访问、交叉触发、跟踪源控制等功能,并优化部分功能使用方式。
  5. 实用工具库:创建CoreSight访问实用工具库,提供板卡注册和检测框架、跟踪提取和快照创建代码。

安装使用步骤

环境准备

确保系统具备ARM架构的处理器和CoreSight硬件支持。

代码编译

  1. 从安装根目录运行make,构建标准版本的库,输出到./lib/<arch>/rel目录;演示程序将构建并链接到库,输出到./bin/<arch>/rel目录。
  2. 若要在程序中使用该库,需包含./include目录下的csaccess.h文件,并链接已构建的库。

文档生成

运行doxygen ./doxygen-cfg.txt,在./doc/html目录生成API文档。

运行演示

参考./demos/readme_demos.md获取运行演示程序的详细信息。

Python使用

./python目录包含生成Python模块以使用该库的源文件和Makefile,默认不构建,可参考./build/readme_python.md获取详细信息。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】