vivado 配置存储器器件编程2

为双 QSPI (x8) 器件创建配置存储器文件
您可使用 write_cfgmem Tcl 命令来为双 QSPI (x8) 器件生成 .mcs 镜像。此命令会将配置数据自动拆分为 2 个独立 的 .mcs 文件。
注释 SPIx8 生成 .mcs 时指定的大小即为这 2 个四通道闪存器件的总大小。
注释 write_cfgmem Tcl 命令在为双 QSPI (x8) 模式构建 .mcs 文件时会将起始地址一分为二。
write_cfgmem 使用示例
此示例演示了如何为多重启动设计生成 .mcs 文件 此设计在地址 0 加载“黄金镜像”比特流并在地址 0x0100_0000 加载多重启动比特流。
器件 2 256 Mib QSPI 闪存器件 256 Mib = 32 MiB
总存储空间大小 2 * 32 MiB = 64 MiB
加载地址
黄金 0 * 2 = 0
多重启动 0x0100_0000 * 2 = 0x0200_0000
write_cfgmem -format mcs -interface spix8 -size 32 \
-loadbit "up 0 ./design1_spix8.bit up 0x02000000 ./design2_spix8.bit" \
-file design1_design2_spix8.mcs
连接到 Vivado 中的硬件目标
要连接到 Vivado 中的硬件目标 请执行以下操作
1. 确保在硬件目标的 FPGA 模式管脚上已选中相应的配置模式 Master SPI Master BPI ), 以便从配置存储器器 件配置此 FPGA
如需了解更多信息 请参阅目标器件的相应“配置用户指南”。
2. 遵循“对 FPGA 器件进行编程”中的步骤 连接至硬件目标。
重要提示 如果开发板已掉电或者电缆已断开连接 那么 Vivado IDE 会关闭硬件目标。同时还会取消 Vivado 主线程中的任意 Vivado 操作。
添加配置存储器器件
要将配置存储器器件添加至 Vivado 器件编程器中的硬件目标 请执行以下操作
1. 如上所述连接至硬件目标后 请右键单击硬件目标 如下所示 并选中“ Add Configuration Memory Device ”以 添加配置存储器器件。
单击此菜单项即可打开“ Add Configuration Memory Device ”对话框
2. 选中相应的配置存储器器件 然后选择“ OK ”。
提示 选择“制造商 (Manufacturer) ”、“密度 (Density) ”或“类型 (Type) ”信息 并使用“ Search ”字段
缩小列表显示信息范围。 这样即可将配置存储器器件添加至硬件目标器件中。
对配置存储器器件进行编程
1. 创建配置存储器器件后 Vivado 器件编程器会发出如下提示 “您现在是否想要对配置存储器器件进行编程 (Do you want to program the configuration memory device now?)”。
单击“ OK ”即可打开“对配置存储器器件进行编程 (Program Configuration Memory Device) ”对话框。
2. 选中此对话框中的所有字段
• “ Configuration file .mcs .bin - 指定用于对配置存储器器件进行编程的文件。存储器配置文件将使 用 write_cfgmem Tcl 命令来创建。请参阅“创建配置存储器文件” 以获取更多信息。
• 非配置存储器 I/O 管脚的状态
Pull-none - 指定编程到 FPGA 中的间接配置比特流将未使用的 I/O 管脚设置为“ pull-none ”。
Pull-up - 指定编程到 FPGA 中的间接配置比特流将未使用的 I/O 管脚设置为“ pull-up ”。
Pull-down - 指定编程到 FPGA 中的间接配置比特流将未使用的 I/O 管脚设置为“ pull-down ”。
重要提示 确保非配置存储器 I/O 管脚的状态与 write_bitstream 属性中的设置相匹配。该属性默
认值为 pull-down
• “ Program Operations 在配置存储器器件上执行
Address Range - 指定要编程的配置存储器器件的地址范围。可能的地址范围值如下
- Configuration File Only - 仅使用存储器配置文件所需的地址空间来执行擦除、空白检查、编程和验 证。
- Entire Configuration Memory Device - 将在整个器件上执行擦除、空白检查、编程和验证。
• “ RS Pins - 可选。版本选择管脚映射 (Revision Select Pin Mapping) 仅限配合 BPI 配置存储器器件一起使用 (其中闪存上的前 2 FPGA 地址管脚绑定到 FPGA RS[1:0] 。启用该选项时 Vivado 会驱动 FPGA RS[1:0] 用于编程。请参阅相应的 FPGA 配置用户指南 以了解应用的用法。
• “ Erase - 擦除配置存储器器件的内容。
• “ Blank Check - 检查配置存储器器件 确保编程前器件中不含数据。
• “ Program - 使用指定的配置文件 .mcs .bin 对配置存储器器件进行编程。
• “ Verify - 编程后 验证配置存储器器件的内容与配置文件 .mcs .bin 相匹配。
• “ Verify Checksum - 验证配置存储器器件中已编程的数据。该工具会基于配置存储器器件中已编程的数据来 计算校验和值, 然后将其与 .prm 文件中指定的校验和值进行比较。
提示 用户可生成 cfgmem 文件并指定 -checksum write_cftmem 选项。此步骤会创建 .prm
其中包含有关 cfgmem 输出文件的校验和信息。
• “ Create SVF Only - 启用该选项即可支持以您指定的编程操作来创建 .svf 文件。其它第三方工具可使用 此 .svf 文件在 Vivado 外部对配置存储器器件进行编程。
重要提示 启用该选项时 Vivado 仅生成含相关编程选项的 .svf 文件。它不会实际对配置存储器器件执 行编程。
3. 单击“ OK ”以根据此对话框中的选择 在配置存储器器件上启动擦除、空白检查、编程和验证操作。每项操作完 成后, Vivado 都会通知您。
注释 按下“ Apply ”将存储配置存储器设置 但不会对配置存储器器件进行编程。如果您在按下“应用 (Apply) ” 后按下“取消 (Cancel) 那么配置存储器器件将完成设置 并且可稍后执行编程。
启动器件
对配置存储器器件进行编程后 您可发出软启动操作 JPROGRAM 以从所连配置存储器器件启动 FPGA 配置。
如果要在目标 FPGA 器件上执行启动操作 请选中目标器件 右键单击并选择“ Boot from Configuration Memory Device”。
重要提示 从配置存储器启动后 可能出现由于系统启动设置而导致调试核不立即显示的情况。赛灵思建议您等 待一段时间, 具体时间可在 Vivado 硬件管理器的 Tcl 控制台内使用 boot_hw_device Tcl 命令来指定 如下所 示:
boot_hw_device after 1000 [refresh_hw_device]
其中 可指定的最大 wait_on 值为 1000
在主模式下配置失败
注释 以下内容在 MPSoC Versal 架构上不予支持。
当开发板处于“主 BPI (Master BPI) ”模式或“主 SPI (Master SPI) ”模式下且 JTAG 线缆连接至 Vivado 硬件管理器 时, 可能会发生配置失败。如果硬件管理器轮询和恢复功能导致主模式配置中断 那么在上电时可能会发生间歇性配置 失败。为避免出现此问题, 请在 Vivado 硬件管理器 Tcl 控制台中设置以下参数以确保不对配置状态寄存器进行更新
set_param xicom.allow_cfgin_commands false
注释 此参数会影响整条链上的所有器件。

相关推荐

  1. vivado $clog2函数

    2024-04-02 06:30:06       29 阅读
  2. vivado HDL编码技术

    2024-04-02 06:30:06       20 阅读

最近更新

  1. 11-3.Vue2.x基本列表—列表排序—sort

    2024-04-02 06:30:06       0 阅读
  2. spring注解整理

    2024-04-02 06:30:06       0 阅读
  3. Qt 实战(1)Qt 概述

    2024-04-02 06:30:06       0 阅读
  4. Qt——选中所有的RadioButton

    2024-04-02 06:30:06       0 阅读
  5. 设计模式-策略模式

    2024-04-02 06:30:06       0 阅读

热门阅读

  1. redis -List

    2024-04-02 06:30:06       6 阅读
  2. 数据库设计-MySQL设计小册

    2024-04-02 06:30:06       4 阅读
  3. 谈一谈React的setState的执行机制

    2024-04-02 06:30:06       4 阅读
  4. springboot注解及GET、POST接口写法

    2024-04-02 06:30:06       5 阅读
  5. Towhee

    Towhee

    2024-04-02 06:30:06      4 阅读
  6. Android Room的使用

    2024-04-02 06:30:06       6 阅读
  7. easyexcel 动态列导出

    2024-04-02 06:30:06       4 阅读
  8. Ubuntu 自启动应用程序的方法

    2024-04-02 06:30:06       6 阅读