vivado 串行矢量格式 (SVF) 文件编程

本文介绍了如何在Versal器件上使用SVF文件对FPGA和配置存储器进行编程,包括创建SVF目标、添加设备、编程操作以及在VivadoIDE和Tcl控制台中的操作步骤。重要的是,XSVF在VivadoIDE中不被支持,且SVF目标非实时有效,需通过边界扫描工具或相关工具执行SVF文件。
摘要由CSDN通过智能技术生成
串行矢量格式 (SVF) 文件编程
注释 串行矢量格式 (SVF) 编程在 Versal 器件上不受支持。
FPGA 和配置存储器器件进行编程的另一种方法是通过使用串行矢量格式 (SVF) 文件来执行编程。通过 Vivado ® Design Suite 和 Vivado Lab Edition 生成的 SVF 文件包含对这些器件执行编程所需的低级别 JTAG 指令和数据。生成此 文件后, 即可通过独立于 Vivado IDE 的边界扫描测试工具来使用。
创建 SVF 文件的一般步骤如下所述
1. 创建 SVF 脱机目标。
2. 打开创建的 SVF 目标。
3. 向目标添加器件以定义 SVF JTAG 扫描链。
4. FPGA 或配置存储器器件进行编程。
5. 编写 SVF
6. 关闭 SVF 目标。
7. 可选 执行 SVF
在步骤 4 编程操作将按顺序被记录并存储在高速缓存文件中。随后 此缓存文件将写出至步骤 5 中的目标。此文 件创建完成后, 即可通过边界扫描工具来使用 或者通过 Vivado Design Suite Vivado Lab Edition 工具来执行。
重要提示 XSVF 文件格式在 Vivado IDE 中不受支持。
创建 SVF 目标
SVF 目标类似于有效的赛灵思平台电缆 USB Digilent JTAG 线缆硬件目标。属性和 Tcl 命令全部相同 主要差异在于 SVF 目标并非实时有效的电缆。这表示对此目标执行的任何操作直至执行 SVF 后才会对硬件产生影响。请注意 您无 需将电缆连接至系统以创建 SVF
使用 Vivado IDE
要在 Vivado 硬件管理器中创建 SVF 目标 请通过启动 Vivado Vivado Lab Edition 来打开 Vivado 硬件管理器。您可 通过依次选中“Tools ” → “ Create SVF Target ”来创建 SVF 目标。这样会在本地主机上自动打开服务器 还会打开 “创建 SVF 目标 (Create SVF Target) ”对话框 如下图中的对话框所示。 在任意可用服务器上, 您均可创建脱机 SVF 目标 如下所示。
这样会打开“ Create SVF Target ”对话框 如下所示。
提示 您可通过启用“ Copy from target ”选项来复制现有 SVF 链。或者 您也可以指定在先前运行的流程中使 用 Vivado 硬件管理器所创建的 SVF 文件。 Vivado IDE 会保存 SVF 链的规格 以便在回读时可重新创建该 SVF 链。 在 Vivado 硬件管理器的“硬件 (Hardware) ”窗口中您的服务器下 您刚创建的 SVF 目标会在显示“打开 (Open) ”。
要删除现有 SVF 目标 请在“ Hardware ”窗口中右键单击该 SVF 目标 然后选择“ Delete ”。
重要提示 删除目标后 还会删除针对此目标创建的所有器件。此外 如果删除的目标先前处于打开状态 则会 被关闭。
您也可以在 Vivado IDE 中使用 Vivado Tcl 模式或 Tcl 控制台来创建 SVF 目标。
以下是初始启动 Vivado Vivado Lab Edition 后创建 SVF 目标所需的步骤
使用命令行
以下是初始启动 Vivado Vivado Lab Edition 后创建 SVF 目标所需的步骤
open_hw_manager
connect_hw_server
create_hw_target my_svf_target
if {[string length [get_hw_targets -quiet -filter
{IS_OPENED == TRUE}]] > 0} \
{close_hw_target [get_hw_targets * -filter {IS_OPENED == TRUE}
] }; \
open_hw_target [get_hw_targets *my_svf_target]
current_hw_target
如已连接到服务器 则可省略前 2 条命令。执行 create_hw_target 命令可定义 my_svf_target 。请注意 同一 会话中不得存在 2 个同名目标。最后 关闭所有打开的目标并打开 svf 目标后 就会运行 create_hw_target 命令。这样 最终命令会显示已创建的 my_svf_target 的完整硬件目标处理名称。 针对目标执行的所有标准操作( 例如 get_hw_targets open_hw_target commands 均受支持。您可使用 IS_SVF 硬件目标属性来区分活动目标和 SVF 目标。例如 以下命令行样本可从名为“ my_svf_target ”的目标读 取 IS_SVF 属性。
get_property IS_SVF [get_hw_targets -regexp .*my_svf_target]
此外 发出以下命令即可显示此会话中创建的所有 SVF hw_targets
get_hw_targets -filter {IS_SVF}
要删除已创建的目标 请使用 delete_hw_target 命令。例如 发出以下命令即可删除 my_svf_target
delete_hw_target [get_hw_targets -regexp .*my_svf_target]
重要提示 删除目标后 还会删除针对此目标创建的所有器件。此外 如果删除的目标先前处于打开状态 则会被关闭。
  • 19
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

cckkppll

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值