RISC-V Trace 标准简介
在复杂系统中,理解程序行为并不容易。软件有时可能无法按照预期运行,这可能是由于多种因素,例如与其他内核、软件、外设、实时事件的交互,或者实现不佳,或这些因素的某种组合。在这些情况下,传统调试方法可能会显得侵入性太强,而处理器追踪(trace)能提供程序执行的可见性,是一种重要的调试方法。它可以帮助开发者了解代码的执行路径、执行时间、任务切换、以及中断等信息,还可生成代码覆盖率报告。与传统调试方法类似快照的特点不同,基于追踪的调试就像是一段带有时间戳的视频。
两个追踪标准
与统一的 RISC-V 调试标准不同,RISC-V 将有两个追踪标准:N-Trace 和 E-Trace。这两个标准的规范即将被批准,并预计将在 2024 年下半年最终确定。
Lauterbach 在 RISC-V 处理器追踪工作组中对这两个追踪标准都做出了重要贡献。目前,已经广泛使用的两个专有追踪解决方案是 SiFive 的 Nexus Trace 和 Tessent Embedded Analytics 的追踪解决方案。
- N-Trace: 基于 Nexus IEEE-ISTO 5001 标准