FPGA时序约束--实战篇(Vivado添加时序约束)

news2024/11/15 7:55:25

前面几篇文章已经详细介绍了FPGA时序约束基础知识以及常用的时序约束命令,相信大家已经基本掌握了时序约束的方法。

今天介绍一下,如何在Vivado中添加时序约束,Vivado添加约束的方法有3种:xdc文件、时序约束向导(Constraints Wizard)、时序约束编辑器(Edit Timing Constraints )

一、XDC文件

使用VIvado的“Source文件管理器”直接创建新的xdc文件或者添加已有的xdc文件。

具体步骤如下:

第一步:点击“+”

​第二步:选择“Add or create constraints”,点击“next”

​第三步:如果是添加文件则点击“Add Files”,如果是新建文件,则点击“Create File”

​第四步:如果是新建文件,则输入文件名,点击“OK”,再点击“Finish”即可

​这样就可以,在source界面中的“Constraints”中看到新建的文件。

​双击打开新建的xdc文件,写入约束语句即可。

创建XDC文件的方式很灵活,但在添加约束时需要谨慎一些,因为一些错误的约束可能会导致电路出错或性能下降。

二、时序约束向导(Constraints Wizard)

时序约束向导是Vivado提供的一个交互式添加约束工具。

可以帮助用户通过简单的设置界面来自动生成xdc文件中的TIMING约束。

第一步:将HDL代码综合

​第二步:点击VIvado左边导航栏的“Synthesis”的“Constraints Wizard”。

​​第三步:如果未创建xdc文件,vivado会提示新建新的xdc文件。

​​

第四步:进入时序约束向导界面

时序约束向导是按照主时钟约束、衍生时钟约束、输入延迟约束、输出延迟约束、时序例外约束、异步时钟约束等的顺序来依次创建时钟约束的。

​​点击下一步,这里只演示填入主时钟,输入时钟周期,点击“skip to finish”。

​​

​​最后点击finish,生成约束会自动保存到xdc文件中。

三、时序约束编辑器(Edit Timing Constraints )

时序约束编辑器是Vivado中提供的可视化界面,用于修改编辑在xdc文件的时序约束,用户通过这个界面可以添加/删除约束、调整约束优先级及修改约束属性。

第一步:将HDL代码综合完后,点击VIvado左边导航栏的“Synthesis”的“Edit Timing Constraints”。

​​第二步:弹出编辑界面,如下图所示,先在左侧选择时序约束类型,再点击右侧窗口的“+”号,开始添加时序约束命令。

​​第三步,点击红框中“...”,打开搜索端口界面,再点击“find”按钮,自动弹出搜索到端口号。

​​第四步:选中需要添加约束的端口,如“clk”,点击右侧箭头,移动到“选中窗口”,再点击“set”按钮。

​​第五步:输入约束端口名,并设置时钟周期和占空比,点击“OK”。

​​第六步:按“ctrl+s”快捷键保存,最下方的预览窗口会显示设置的时钟约束,而且会自动保存到xdc约束文件中。

​​与直接xdc文件相比,时序约束编辑器提供了时序约束详细的分类和说明,更容易理解和使用。

四、总结

本文分享了Vivado中常用的添加时序约束的方法,大家可以按照自己的习惯和喜好选择方式即可。


本文将不断定期更新中,码字不易,点⭐️赞,收⭐️藏一下,不走丢哦

本文由FPGA入门到精通原创,有任何问题,都可以在评论区和我交流哦

学习资料分享,github开源代码:“FPGA知识库”

您的支持是我持续创作的最大动力!如果本文对您有帮助,请给一个鼓励,谢谢。

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

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

相关文章

vue基础-全选,使用计算属性 和 every遍历数组的返回值 true or false

购物车--计算购物车价格 1、计算属性--只要被依赖的数据 发生变化,结果就会变化 2、全选实现 根据选项,动态计算出布尔值,通过计算属性 得到布尔值: 通过every遍历数组list,只要所有 都满足 item > item.goods_s…

递推算法介绍

递推算法 给定一个数的序列H0,H1,…,Hn,…若存在整数n0&#xff0c;使当n>n0时,可以用等号(或大于号、小于号)将Hn与其前面的某些项Hi(0<i<n)联系起来&#xff0c;这样的式子就叫做递推关系。 递推算法是一种简单的算法&#xff0c;即通过已知条件&#xff0c;利用特…

CVPR 2023|EfficientViT:让ViT更高效部署实现实时推理(附源码)

点击蓝字 关注我们 关注并星标 从此不迷路 计算机视觉研究院 公众号ID&#xff5c;计算机视觉研究院 学习群&#xff5c;扫码在主页获取加入方式 论文地址&#xff1a;https://arxiv.org/pdf/2305.07027.pdf 项目代码&#xff1a;https://github.com/microsoft/Cream/tree/main…

打通B端企业私域运营体系:海康威视企业公众号矩阵一探究竟

B端企业私域运营体系的打造需要全新的思路和流程重构&#xff0c;要紧紧围绕B端客户的需求和特性来构建矩阵号&#xff0c;而且要时刻意识到与C端私域运营的巨大差异。 B端企业的获客是一个大部分企业都十分关注但难以提升的部分&#xff0c;传统B端企业的营销以百度等在线渠道…

candence:常见表贴焊盘绘制举例

常见表贴焊盘绘制举例 一、先来看看X7R电容的相关信息 以贴装瓷片电容X7R系列为例 1、误差范围&#xff1a; 2、尺寸大小 3、推荐焊盘尺寸 二、绘制 0603 (inch) 电容的焊盘 下面开始绘制焊盘&#xff1a; 1、 双击打开Pad Designer 2、设置单位等。 3、 点击"LAYER&…

GeSciLiVis | 想知道你感兴趣的基因有多少人在研究吗!?用这个包来解决吧!!!~

1写在前面 天气好热啊&#xff0c;我这里还下着大暴雨&#xff01;~&#x1f625; 不知道各位小伙伴那里的温度怎么样&#xff0c;端午临近&#xff0c;各位有假期吗&#xff01;&#xff1f;&#x1f618; 换组后工作轻松了不少&#xff0c;也有时间做点自己的事情了。&#x…

JDK8-2-流(2.1)- 流操作-distinct

JDK8-2-流&#xff08;2.1&#xff09;- 流操作-distinct 去重操作&#xff0c;如下开头两个菜品一样&#xff0c;对 menu 去重如下&#xff1a; public class DishDistinctTest1 {public static final List<Dish> menu Arrays.asList(new Dish("pork", fal…

如何白嫖一年CSDN会员?618活动!亲测有效!!!

活动详情 CSDN会员免费送一年&#xff0c;仅剩3天&#xff01; 下载权益同样延长一年&#xff01; 一年一次的机会&#xff0c;走过不要错过&#xff01; 博主已经领取到了&#xff01; 会员权益 1、修改专属域名&#xff0c;别人都是https://blog.csdn.net/qq_xxxxxxxx&…

用ipad2022款pro平板和平精英吃鸡120帧是种什么体验

用ipad2022款pro平板和平精英吃鸡120帧是种什么体验&#xff0c;平板玩游戏把把吃鸡的秘密#和平精英 #吃鸡 #我眼中的电子竞技 和平精英 微信游戏 怎么很多小伙伴都准备入手二款的 iPad Pro&#xff0c;绝大多数小伙伴都是冲着这个吃鸡来的&#xff0c;咱们今天就看一下新款平…

AI绘图新玩法「艺术风二维码」保姆级教程分享,注册账号就能玩,一分钟出图,定制自己的二维码!

大家好&#xff0c;我是卷了又没卷&#xff0c;薛定谔的卷的AI算法工程师「陈城南」~ 担任某大厂的算法工程师&#xff0c;带来最新的前沿AI知识和工具&#xff0c;包括AI相关技术、ChatGPT、AI绘图等&#xff0c;欢迎大家交流~。 最近AI绘图界又出了一个现象级的玩法&#xf…

FPGA基础知识-开关级建模

目录 学习目标 学习内容 1.MOS开关 2.CMOS开关 3.双向开关 4.电源和地 5.阻抗开关 6.开关中的延迟说明 学习时间 学习总结 学习目标&#xff1a; 提示&#xff1a;这里可以添加学习目标 1.能够描述基本 MOS开关:nmos.pmos和cmos。 2.理解双向传输开关、电源和地的建…

webpack配置preload和prefetch预加载技术

我们前面已经做了代码分割&#xff0c;同时会使用 import 动态导入语法来进行代码按需加载&#xff08;我们也叫懒加载&#xff0c;比如路由懒加载就是这样实现的&#xff09;。 但是加载速度还不够好&#xff0c;比如&#xff1a;是用户点击按钮时才加载这个资源的&#xff0…

【第二次】21级计科计算机组成原理课外练习

【第二次】21级计科计算机组成原理课外练习 一、单选题二、填空题 一、单选题 2-1 设计算机字长 8位&#xff0c;设x -10, [x]补 为 ( ) A.F0H B.E6H C.FAH D.F6H 2-2 对字长为8位的二进制代码10110110&#xff0c;下列说法错误的是&#xff08;&#xff09;。 A.如果代码为…

主流通信协议详解、二进制协议和文本协议的区别和使用场景

二进制协议和文本协议的特征和使用场景 二进制协议和文本协议具有不同的特征和适用场景&#xff1a; 二进制协议的特征&#xff1a; 数据表示&#xff1a;使用二进制编码来表示数据&#xff0c;以字节为单位进行传输。效率&#xff1a;由于数据以原始二进制形式传输&#xff…

年龄越来越大,技术人究竟该往哪个方向提升?(很多人都有这个困惑)

【1】 有位匿名朋友&#xff0c;在星球中提问&#xff1a; 想咨询一下沟通交流能力应该如何培养。平时遇到问题话到嘴边不会说&#xff0c;或者说出来的和开始想的不一致&#xff0c;请沈总赐教。 分享下自己的实践&#xff1a; 首先&#xff0c;充分准备。 我在和老板&#xf…

Linux ACL访问控制

文章目录 1、场景2、ACL权限设置1) ACL权限管理命令2) 给用户和用户组添加ACL权限3) 最大有效权限mask4) 默认ACL权限和递归ACL权限5) 删除ACL权限 1、场景 在普通权限中&#xff0c;用户对文件只有三种身份&#xff0c;就是属主、属组和其他人&#xff1b;每种用户身份拥有读…

实验篇(7.2) 14. 站对站安全隧道 - 多条隧道冗余(FortiGate-IPsec) ❀ 远程访问

【简介】IPsec VPN虽然价廉物美&#xff0c;但是由运营商原因&#xff0c;偶尔出现不稳定情况&#xff0c;例如访问慢甚至断开等&#xff0c;好在现在大多数企业都有二条甚至更多条宽带&#xff0c;我们可以创建多条IPsec VPN&#xff0c;来保证不间断访问。 实验要求与环境 Ol…

线性搜索算法-数据结构和算法教程

线性搜索被定义为一种顺序搜索算法&#xff0c;它从一端开始&#xff0c;遍历列表的每个元素&#xff0c;直到找到所需的元素&#xff0c;否则搜索继续到数据集的末尾。 线性搜索算法是如何工作的&#xff1f; 在线性搜索算法中&#xff0c; 每个元素都被认为是键的潜在匹配…

回归预测 | MATLAB实现基于QPSO-LSTM、PSO-LSTM、LSTM多输入单输出回归预测

回归预测 | MATLAB实现基于QPSO-LSTM、PSO-LSTM、LSTM多输入单输出回归预测 目录 回归预测 | MATLAB实现基于QPSO-LSTM、PSO-LSTM、LSTM多输入单输出回归预测效果一览基本描述模型描述程序设计参考资料 效果一览 基本描述 1.Matlab实现QPSO-LSTM、PSO-LSTM和LSTM神经网络时间序…

事件循环(字数不足凑字)

浏览器的进程模型 何为进程&#xff1f; 程序运行需要有它自己专属的内存空间&#xff0c;可以把这块内存空间简单的理解为进程。 每个应用至少有一个进程&#xff0c;进程之间相互独立&#xff0c;即使要通信&#xff0c;也需要双方同意。 即使崩溃也互不影响。 何为线程&…