参考资料:《UG1393》Automated Setup for Hardware Debug 章节。
1. 设置环境变量:
cd /opt/Xilinx/Vitis/2019.2/ //进入vitis 安装目录
source settings64.sh;
cd /opt/xilinx/xrt/; //进入xrt安装目录
source setup.sh;
2. 输入以下命令(输入后会进入特定状态,需要另开一个终端输入后续命令):
debug_hw --xvc_pcie /dev/xvc_pub.<driver_id> --hw_server
//例如: 服务器的<driver_id>=u45313,这是我的U250卡的驱动id号。
3. 修改 host,在 host 定义断点函数并加入至 program kernel 后、触发波形前:
void wait_for_enter(const std::string &msg) {
std::cout << msg << std::endl;
std::cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
}
例如加至:
4. 运行修改后的 host 程序
运行后输出会卡在 wait_for_enter 处,需要另开一个终端输入后续命令。
5. 使用以下命令打开 vivado:
debug_hw --vivado --host <host_name> --ltx_file ./_x/link/vivado/vpl/prj/
prj.runs/impl_1/debug_nets.ltx
其中,<host_name>使用”hostname”命令查看,--Itx_file 后的输入参数是第 4 步 host 程序中下载的 xclbin 所对应的.ltx 文件。该命令输入后会自动打开vivado。