在
Vivado
中执行远程调试
远程调试需求可能在各种情况下出现。在产品原型设计阶段可能需要远程调试以便您在无法实地访问实验室的情况下对 实验室中的设计进行调试,
或者供您在组织内部共享资源。执行现场调试以诊断问题或者延长产品生命周期时也可能需 要远程调试。
赛灵思提供多种解决方案来对您的设计进行远程调试。您可使用赛灵思硬件服务器产品连接到实验室中的远程计算机来 执行调试。也可以实现赛灵思虚拟线缆 (XVC)
协议来连接到联网开发板。在以下章节中对上述每一种情况进行了详细 解释。
使用
Vivado
硬件服务器通过以太网进行调试
您可使用
Vivado
硬件服务器产品来连接到远程实验室机器。该产品为小型
(<100 MB)
独立安装产品
,
可供安装在实验 室机器上。该选项需要内部网或互联网访问权限,
也可仅在您的组织内部使用。

适用于
7
系列、
UltraScale
和
UltraScale+ FPGA
和
MPSoC
的赛灵思虚拟线缆
(XVC)
Vivado IDE
支持赛灵思虚拟线缆
(XVC)
协议。赛灵思虚拟线缆支持您无需使用
USB
或并行配置线缆即可访问并调试赛 灵思器件。此功能有助于 Vivado IDE
调试满足下列条件的设计
:
• 设计所含
FPGA
位于无法访问的位置
(
即
,
此类位置不方便使用实验室
PC
)
。
• 无法直接访问开发板上的器件管脚
-
例如
,
如果
JTAG
管脚只能通过本地微处理器接口来访问。
重要提示
!
请注意
,
Versal
架构不支持赛灵思虚拟线缆。
XVC
是基于互联网的
(TCP/IP)
协议
,
工作方式与
JTAG
线缆类似。它包含非常基本的电缆命令。这样即可支持
XVC
通 过内部网或甚至是通过互联网来调试系统。借助此功能,
您可节省差旅成本
,
或者在差旅不可行情况下仍能解决问题
, 并缩短远程系统调试所需的时间。
XVC
的另一个常见用途是帮助团队按需访问位于别处的共享系统。如果存在多种物理因素导致系统的使用受到约束 (例如
,
JTAG
连接器不可用或不可访问
),
也可以使用
XVC
。
XVC
实现属于编程语言
,
与平台无关。 您可使用现有以太网连接代替专用 JTAG
报头来创建从处理器到目标器件的相应
JTAG
命令。借助
XVC v1.0
协议
, Vivado 即可通过以太网连接与相同的
JTAG
命令进行通信
,
同时仍可支持所有现有
Vivado
调试功能。
重要提示
!
如果将
Vivado Debug Bridge IP
用于
XVC
,
则
Vivado IDE
不支持编程功能。此声明假定器件是在使 用 XVC
调试设计之前完成编程的。
Debug Bridge IP
与
Versal ACAP
不兼容。
Vivado Debug Bridge IP
和赛灵思虚拟线缆
(XVC)
流程
注释
:
在
Versal
™
器件上不支持
Vivado Debug Bridge IP
。
Vivado Debug Bridge IP
核属于可提供多个选项的控制器
,
用于与设计中的调试核进行通信。此设计可采用扁平化设计 或 Dynamic Function eXchange
设计。此外
,
Debug Bridge IP
核还可通过配置来利用设计调试
,
此类设计使用
JTAG 线缆或者通过以太网、PCIe
®
或其它接口
(
无需
JTAG
线缆
)
来进行远程调试。 Debug Bridge IP 中的多种不同模式可支持多种不同用例。
XVC
模式下的
Debug Bridge
在
Debug Bridge
下有
5
种模式可在赛灵思虚拟线缆
(Xilinx Virtual Cable, XVC)
实现中使用。
• 从
AXI
到
BSCAN
:
在此模式下
,
Debug Bridge
通过
AXI4-Lite
从接口
(slave interface)
来接收
XVC
命令。
• 从
JTAG
到
BSCAN
:
在此模式下
,
Debug Bridge
通过由用户逻辑驱动的
JTAG
从接口来接收
XVC
命令。
• 从
PCIe
到
BSCAN
:
在此模式下
,
Debug Bridge
通过
PCIe
扩展配置从接口来接收
XVC
命令。
• 从
PCIe
到
JTAG
:
在此模式下
,
Debug Bridge
通过
PCIe
扩展配置接口来接收
XVC
命令。此
Debug Bridge
会通过 I/O 管脚使
JTAG
管脚脱离
FPGA
。此模式主要用于通过
XVC
对另一块板上的设计进行调试。
• 从
AXI
到
JTAG
:
在此模式下
,
Debug Bridge
通过
AXI4-Lite
接口来接收
XVC
命令
,
以便通过
JTAG
管脚将其发送 到目标器件。
在上述所有模式下
,
Debug Bridge
均可通过
Soft-BSCAN
(
边界扫描
)
接口与设计中的其它调试核或
Debug Bridge
实 例进行进一步通信。Soft BSCAN
主接口支持将
JTAG
接口扩展至内部用户定义的扫描链或
Debug Bridge
实例。
在
Dynamic Function eXchange
设计中使用
Debug Bridge IP
Debug Bridge IP
可在扁平化设计内使用
,
也可在
Dynamic Function eXchange
设计内使用。以下提供了有关在 Dynamic Function eXchange 设计的静态区域或可重配置分区
(RP)
区域内使用的
Debug Bridge
配置的详细信息。根据 设计要求,
在单一分区内允许使用多个
Debug Bridge
实例。
•
BSCAN
原语
(BSCAN Primitive)
:
当静态区域内需要使用含
BSCAN
原语的
Debug Bridge
时
,
则使用此模式。此 Debug Bridge 的
BSCAN
主接口可连接到静态区域和
/
或
RP
区域中的另一个
Debug Bridge
实例
,
从而提供一条或 多条通信路径,
以便对这些区域进行调试。
从
BSCAN
到
Debug Hub (From BSCAN to Debug Hub)
:
在此模式下
,
Debug Bridge
使用
BSCAN
从接口来与 Vivado 硬件管理器通信。它使用
Debug Hub
接口来与相关静态区域或
RP
区域中的设计核进行通信。您还可选择 向此 Debug Bridge
的输出添加更多
BSCAN
主接口
,
以便支持对其它调试核
(
例如
,
MicroBlaze Debug Module (MDM))
或其它
Debug Bridge
实例进行调试。
注释
:
该工具会将
RP
中的调试核自动连接到
Debug Bridge
(
前提是
,
它是分区内例化的唯一
Debug Bridge
)
。
• 从
AXI
到
BSCAN (From AXI to BSCAN)
:
在此模式下
,
Debug Bridge
通过
AXI4-Lite
从接口
(slave interface)
来接 收 XVC
命令。此
Debug Bridge
还可通过
Soft-BSCAN
(
边界扫描
)
主接口与设计中的其它调试核或
Debug Bridge 实例进行进一步通信。Soft BSCAN
接口支持将
JTAG
接口扩展至内部用户定义的扫描链或
Debug Bridge
实例。
• 从
JTAG
到
BSCAN (From JTAG to BSCAN)
:
在此模式下
,
Debug Bridge
通过由用户逻辑驱动的
JTAG
从接口来接 收 XVC
命令。此
Debug Bridge
还可通过
Soft-BSCAN
(
边界扫描
)
主接口与设计中的其它调试核或
Debug Bridge 实例进行进一步通信。Soft BSCAN
接口支持将
JTAG
接口扩展至内部用户定义的扫描链或
Debug Bridge
实例。
• 从
PCIe
到
BSCAN (From PCIe to BSCAN)
:
在此模式下
,
Debug Bridge
通过
PCIe
扩展配置从接口来接收
XVC
命 令。此 Debug Bridge
还可通过
Soft-BSCAN
(
边界扫描
)
接口与设计中的其它调试核或
Debug Bridge
实例进行进 一步通信。Soft BSCAN
主接口支持将
JTAG
接口扩展至内部用户定义的扫描链或
Debug Bridge
实例。
注释
:
此模式仅可用于
UltraScale+
和
UltraScale
器件架构
• 从
PCIe
到
JTAG (From PCIe to JTAG)
:
在此模式下
,
Debug Bridge
通过
PCIe
扩展配置接口来接收
XVC
命令。此 Debug Bridge 会通过
I/O
管脚使
JTAG
管脚脱离
FPGA
。此模式主要用于通过
XVC
对另一块板上的设计进行调 试。
注释
:
此模式仅可用于
UltraScale+
和
UltraScale
器件架构。
• 从
AXI
到
JTAG (From AXI to JTAG)
:
在此模式下
,
Debug Bridge
通过
AXI4-Lite
接口来接收
XVC
命令
,
以便通过 JTAG 管脚将其发送到目标器件。