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
注释 此参数会影响整条链上的所有器件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/793874.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

QA测试开发工程师面试题满分问答5: 内存溢出和内存泄漏问题

概念阐述 内存溢出(Memory Overflow)和内存泄漏(Memory Leak)是与计算机程序中的内存管理相关的问题,它们描述了不同的情况。 内存溢出是指程序在申请内存时,要求的内存超出了系统所能提供的可用内存资源…

SSM框架学习——Eclipse创建Spring MVC maven项目

Spring MVC项目创建 什么是Spring MVC Spring MVC是Spring内置的,实现了Web MVC设计模式的框架。 它解决了Web开发过程中很多的问题,例如参数接收、表单验证等。另外它采用松散耦合可插拔组件等结构,具有相对较高的灵活性和扩展性。 Spri…

vue创建项目下载动态路由v-for mounted websocket :style :class store使用说明

在Vue中创建一个项目,并整合动态路由、v-for、mounted生命周期钩子、WebSocket、:style、:class以及Vuex的store,涉及到多个Vue核心特性的使用。下面我将简要说明如何逐步整合这些特性。 1. 创建Vue项目 使用Vue CLI创建项目: 2. 配置动态路…

C++ 类(初篇)

类的引入 C语言中,结构体中只能定义变量,在C中,结构体内不仅可以定义变量,也可以定义函数。 而为了区分C和C我们将结构体重新命名成class去定义 类的定义 标准格式: class className {// 类体:由成员函…

【计算机网络】epoll

IO多路转接 - epoll 一、I/O多路转接之 epoll1. epoll 接口(1)epoll_create()(2)epoll_wait()(3)epoll_ctl() 2. epoll 原理3. epoll 的优点4. epoll 的使用5. epoll 的工作模式(1)水…

实验四 Java图形界面与事件处理(头歌)

实验四 Java图形界面与事件处理(头歌) 制作不易!点个关注!给大家带来更多的价值! 目录 实验四 Java图形界面与事件处理(头歌) 制作不易!点个关注!给大家带来更多的价值!代码如下: 代码如下&…

case语句

Oracle从入门到总裁:​​​​​​https://blog.csdn.net/weixin_67859959/article/details/135209645 CASE 语句的执行方式与 IF...THEN...ELSIF 语句的执行方式类似,但是它是通过一个表达式的值来决定执行哪个分支 CASE 选择器表达式 WHEN 条件 1 THEN 语句序列 …

Linux: linux常见操作指令

目录 01.ls 指令 02. pwd命令 03. cd 指令 04. touch指令 05.mkdir指令(重要) 06.rmdir指令 && rm 指令(重要) 07.man指令(重要) 07.cp指令(重要) 08.mv指令&#…

H.264 压缩与编解码原理

H.264 压缩与编解码原理 H.264 压缩与编解码原理H.264 简介视频编码的总体思路H.264 压缩技术帧内预测压缩什么是空间冗余?具体预测方法 帧间预测压缩什么是时间冗余?具体预测方法:运动估计 概念:Group of Pictures(GO…

java-网络编程socket-聊天室-先导

这边我会简单介绍一下聊天室的组成部分,和思路的引导 涉及知识点 java 中异常处理机制 和 io流和网络编程socket 简单回顾异常机制 Java中的异常机制是一种用于处理程序运行期间出现的错误或异常情况的机制。这种机制允许程序员定义在特定情况下可能发生的错误,并…

mysql慢sql排查与分析

当MySQL遇到慢查询(慢SQL)时,我们可以通过以下步骤进行排查和优化: 标题开启慢查询日志: 确保MySQL的慢查询日志已经开启。通过查看slow_query_log和slow_query_log_file变量来确认。 如果没有开启,可以…

闻风丧胆的算法(二)

🌈个人主页:Rookie Maker 🔥 系列专栏:算法 🏆🏆关注博主,随时获取更多关于IT的优质内容!🏆🏆 😀欢迎来到我的代码世界~ 😁 喜欢的小…

小林coding图解计算机网络|基础篇01|TCP/IP网络模型有哪几层?

小林coding网站通道:入口 本篇文章摘抄应付面试的重点内容,详细内容还请移步: 文章目录 应用层(Application Layer)传输层(Transport Layer)TCP段(TCP Segment) 网络层(Internet Layer)IP协议的寻址能力IP协议的路由能力 数据链路层(Link Lay…

一文介绍回归和分类的本质区别 !!

文章目录 前言 1、回归和分类的本质 (1)回归(Regression)的本质 (2)分类(Classification)的本质 2、回归和分类的原理 (1)回归(Regression&#x…

Vue3(学自尚硅谷)

一、基础准备工作 (一)过程 环境要求:有node.js环境、npm。执行命令: npm create vuelatest 而后选择: ✔ 请输入项目名称: … me_vue3 ✔ 是否使用 TypeScript 语法? … 否 / 是 ✔ 是否启用…

干货| 这篇电商数据分析案例一定要看!

主流电商商品数据采集API接口 直播带货行业在经历了高端玩家的“春秋争霸”之后,逐渐进入到了一种“网红化”的阶段。人们正在将注意力从原来凤毛麟角的直播巨头逐渐转移到一些小主播身上。但近短时间却出现了网红带货营销额放缓的现象。因此商家必须要调整直播策略…

【数据库】数据库的介绍、分类、作用和特点,AI人工智能数据如何存储

欢迎来到《小5讲堂》,大家好,我是全栈小5。 这是《数据库》系列文章,每篇文章将以博主理解的角度展开讲解, 特别是针对知识点的概念进行叙说,大部分文章将会对这些概念进行实际例子验证,以此达到加深对知识…

互联网轻量级框架整合之JavaEE基础II

编写本篇代码并实际执行之前请仔细阅读前一篇互联网轻量级框架整合之JavaEE基础I Servlet 在Servlet容器中,Servlet是最基础的组件,也可以把JSP当做Servlet,JSP的存在意义只在于方便编写动态页面,使Java语言能和HTML相互结合&…

产品推荐 | 中科亿海微推出亿迅®A8000金融FPGA加速卡

01、产品概述 亿迅A8000金融加速卡,是中科亿海微联合金融证券领域的战略合作伙伴北京睿智融科,将可编程逻辑芯片与金融行业深度结合,通过可编程逻辑芯片对交易行情加速解码,实现低至纳秒级的解码引擎,端到端的处理时延…

Linux gcc day3

find命令(importance): 语法:find pathname -options find /root -name test.c which命令: which [指令] 只搜索指令,在什么位置下 为什么文件夹带有颜色呢? 科普补充alias命令: ali…