软件调试规划 - 2023.2 简体中文

Versal 自适应 SoC 系统和解决方案规划方法指南 (UG1504)

Document ID
UG1504
Release Date
2023-11-15
Version
2023.2 简体中文

根据设计中使用的处理器和软件栈的类型,软件调试可能需要在设计中启用特定硬件接口。在启动整个软件栈之前,您必须确保处理器、硬件外设和互连都正常运行。您可以使用 JTAG 接口来运行基本启动测试,以确保硬件块正常运行。下一步是启动操作系统 (OS) 框架。特定调试可能需要查看启动 log 日志,检查操作系统加载是否成功。加载操作系统后,您可以使用 AMD 提供的调试工具或开源调试工具来运行特定应用和调试应用,在应用处理单元 (APU) 中添加内置定时器来剖析特定函数调用等。

下面是有关特定软件调试方法的详细信息:

基于 XSCT 的调试
软件命令行工具 (XSCT) 提供了一组用于启用硬件调试的命令。您还可使用赛灵思系统调试器 (XSDB) 来运行基于 Tcl 的命令和过程,以检查特定硬件的状态。在启动整个软件栈之前,通过运行 XSDB 命令,检查硬件是否正常运行,如 Vitis 嵌入式软件开发流程文档(UG1400) 中的软件命令行工具 中所述。如果设计包含 DDR 存储器,您可以运行读取/写入测试以验证 DDR 存储器是否正常运行。要调试裸机应用,请使用 XSCT 调试器。您可以使用 XSCT 下载应用,并使用 Vitis 调试器启用单步断点插入来调试特定函数。Vitis 调试器支持您查看存储器和处理器寄存器内容以帮助分析故障代码。如需了解更多信息,请参阅 vitis -debug 命令行
使用软件工具进行调试
您可以使用 GNU 调试器 (GDB) 来调试基于 Linux 的应用,包括插入断点和恢复程序。您还可以使用基于 Linux 的 Valgrind 工具来帮助分析程序中的存储器泄漏问题。构建 Linux 镜像时,启用 GDB 和 Valgrind 工具以支持特定于应用的调试。
特殊处理器调试
要调试在特殊处理器(如 AI 引擎 MicroBlaze™ 处理器)上运行的代码,必须在设计中启用特定硬件接口。AI 引擎处理器阵列具有事件/追踪功能,可帮助查看 PC 事件或执行追踪。您必须在 AI 引擎编译阶段启用此硬件接口。MicroBlaze 处理器具有 MicroBlaze Debug Module (MDM) 接口,此接口可连接到系统 JTAG 链。如需了解更多信息,请参阅 MicroBlaze 处理器参考指南(UG984) AI 引擎工具和流程用户指南 (UG1076)

欲知详情,请访问此链接以参阅 Versal 自适应 SoC 系统集成和确认方法指南(UG1388) 中的相应内容。