断点是源代码中用户判定的停止点,可供您用于调试设计。
提示: 断点对于大型设计调试尤为实用,在此类设计中,使用 Step 命令(在每一行代码上都停止仿真)执行调试可能过于繁琐且耗时。
您可在 HDL 文件的可执行行内设置断点,这样即可连续运行代码直至仿真器遇到断点为止。
注释: 您可在仅含可执行代码的行上设置断点。如果您将断点置于不可执行的代码行上,则不会添加此断点。
- 运行仿真。
- 转至您的源文件,单击感兴趣的源码行左侧的空心圆 。红点 表示确认断点已设置成功。
完成该过程后,会在代码行旁打开仿真断点按钮。
输入 Tcl 命令:
add_bp <file_name> <line_number>
此命令会在
<file_name>
的<line_number>
处添加断点。如需了解命令使用方法,请参阅 Vivado Design Suite 帮助或 Vivado Design Suite Tcl 命令参考指南(UG835)。打开 HDL 源文件。
- 在 HDL 源文件中的可执行行上设置断点。
- 重复步骤 1 和 2 直至设置完所有断点。
- 使用“Run”(运行)选项来运行仿真:
- 要从头开始运行,请使用 (运行 > 重新启动)命令。
- 使用 (运行 > 全部运行)或 (运行 > 运行对象)命令。
这样仿真会运行直至到达断点,然后停止。
HDL 源文件会显示箭头,指示断点停止点。
- 重复步骤 4 继续执行仿真,逐个完成每个断点,直至您对结果满意为止。
受控制的仿真会持续运行并在您的 HDL 源文件中所设的每个断点处停止。
设计调试期间,您还可运行Run > Step(运行 > 步进)命令来推进仿真,以便对设计进行更详细的调试。
您可从 HDL 源代码中删除单个断点或所有断点。
要删除单个断点,请单击Breakpoint(断点)按钮 。
要移除所有断点,请选中Run > Delete All Breakpoints(运行 > 删除所有断点),或者单击Delete All Breakpoints(删除所有断点)按钮 。
要删除所有断点,请执行以下操作:
- 输入 Tcl 命令:
remove_bps -all
。
要获取指定断点对象列表的断点信息,请执行以下操作:
- 输入 Tcl 命令:
report_bps