“Debug”视图 - 2023.2 简体中文

Vitis 统一软件平台文档 应用加速开发 (UG1393)

Document ID
UG1393
Release Date
2023-12-13
Version
2023.2 简体中文

Vitis IDE 调试环境具有诸多基于 GUI 的传统调试环境内常见的功能特性,例如 GDB。您可在代码中添加断点、单步跳过或单步进入代码、循环或函数的特定行、检验变量状态并将其强制设为特定值。“Debug”(调试)视图包含多个窗口或视图,如下图所示。

图 1. “Debug”视图

“Control Panel”(控制面板)

“Debug”视图Control Panel显示在屏幕左上角,如下图所示。调试期间,您可以使用Continue(继续)、Step Over(单步跳过)、Step Into(单步进入)、Step Out(单步跳出)、Restart(重新启动)和Stop(停止)等控制按钮来控制调试进程。

图 2. 调试控制面板
“Threads”(线程)
Threads(线程)用于显示相关调试线程。线程是在调试进程中创建和销毁的。您可在多个线程之间进行切换。
“Call Stack”(调用栈)
Call Stack(调用栈)显示了运行应用时更新的函数调用栈。
“Variables”(变量)
Variables(变量)显示了全局变量和局部变量的当前值。切换线程时,会更新变量信息。
“Watch”(观察)
Watch(观察)显示了您指定要关注的变量和表达式。要添加观察点,请选中Add Expression(添加表达式)(+)。
“Breakpoints”(断点)

Vitis IDE 会在主机组件的 main 函数处与 PL 内核的 top 函数处设置断点,前提是这些函数可调试。要添加断点,可打开源文件并单击行号左侧显示红点处。您可单击先前添加的断点以将其移除。

显示红点时,您可右键单击并选中Add Conditional Breakpoint(添加条件断点)来添加条件断点。您还可右键单击并选中Add Logpoint(添加记录点)插入到达断点时要记录的消息。

“Source Code Editor”(源代码编辑器)
Flow NavigatorLaunch Configuration(启动配置)视图启动Debug时,会打开Source Code(源代码)视图。
“Memory Inspector”(存储器检查器)
Memory Inspector会显示特定存储器地址的内容。
“Register Inspector”(寄存器检查器)
在应用组件源代码中触发断点时,Register Inspector会显示 Cortex-A72 寄存器,在 AI 引擎内核中触发断点时,此视图会显示 AI 引擎的寄存器。
“Disassembly”(反汇编)视图
您可从“Source Code”窗口的右键单击菜单中打开Disassembly视图。
“Debug Console”(调试控制台)
此调试控制台会显示调试进程的转录文本,以及从受测应用接收到的任何消息,例如,来自 printf() 语句的文本。
提示: Vitis Unified IDE 还会从工具栏菜单显示Debug视图的状态,并以蓝色圆圈高亮显示调试中正在运行的会话数量。如果您已更改视图,而Debug仍在运行,那么这项提醒很有帮助。