FPGA设计时序约束十、others类约束之Set_Disable_Timing

news2025/1/25 4:40:52

目录

一、序言

二、Set Disable Timing

2.1 基本概念

2.2 设置界面

2.3 命令语法

2.4 命令示例

三、工程示例

四、参考资料


一、序言

    在Vivado的时序约束窗口中,存在一类特殊的约束,划分在others目录下,可用于设置忽略或修改默认的时序路径分析,以Vivado2022.1版本为例,主要包括以下4类,本文将介绍其中的Set_Disable_Timing,示例的为Vivado2022.1

 

二、Set Disable Timing

2.1 基本概念

    时序弧:时序弧是时序路径的一部分,可以是两个引脚之间的连线,可以是输入端口和输出端口之间的逻辑单元的内部路径,或者时钟输入端口和数据输出端口间的路径

    Set Disable Timing约束用于关闭时序弧,使该段路径不会进行时序分析。

    约束生效范围:如果约束设置的对象是单元cell,那么所有涉及该单元的时序弧都是无效的;如果设置的是from/to 引脚,则from/to之间的时序弧是无效的;如果只设置了from或to,则所有from对象开始的时序狐是无效的,或所有终点为to所对应的对象的时序弧是无效的;如果约束的对象是port,在所有从设置的port开始或结束的时序弧也是无效的,时序弧无效自然不会进行对应的时序分析。

2.2 设置界面

 进入Timing Constraints界面,在左侧Others栏中选中Set Disable Timing,右侧即显示Set Disable Timing

 

约束设置子界面需设置Objects,arcs的source引脚名字,目的引脚名字

 

注意source引脚和Destination引脚不是可选的,需手动输入,一定要输入存在的有效引脚,否则报约束格式错误,要获取对应单元的pin引脚,也可通过命令get_lib_pins -of [get_cells {cells_name}]来获取

 

设置的对象可为Cells,或单元引脚,以及端口

2.3 命令语法

命令格式如下

set_disable_timing [‑from <arg>] [‑to <arg>] [‑quiet] [‑verbose] <objects>

参数含义列表如下

 

2.4 命令示例

1、对一个LUT的输入引脚I0到输出O的时序弧设置约束

set_disable_timing -from I0 -to O [get_cells div_dec_ff_i/U0/count_i_1]

2、对一个块状RAM的输入引脚和输出引脚设置时序弧无效的约束

set_disable_timing -from WEBWE[3] -to CLKMEM [get_cells \ldpc_dout360_channel/U_AP_FIFO_ldpc_dout360_channel_ram/mem_reg_0]

3、对经过指定单元存储器单元的所有时序弧设置无效约束

set arcs [get_timing_arcs -of_objects [get_cells \ldpc_dout360_channel/U_AP_FIFO_ldpc_dout360_channel_ram/mem_reg_0]]

三、工程示例

工程代码:

module timing_analysis(d1,d2,clk1,clk2,clk3,clk4,rst,out1,out2); input d1,d2,clk1,clk2,clk3,clk4,rst; output out1,out2; reg ff1,ff2,ff3,ff4,ff5; always @(posedge clk1)     if(!rst)         ff1<=0;     else         ff1<=d1; always @(posedge clk2)     if(!rst)         ff2<=0;     else         ff2<=ff1; always @(posedge clk3)     if(!rst)         ff3<=0;     else         ff3<=ff2; assign out1=ff3&ff2; always @(posedge clk4)     if(!rst)         ff4<=0;     else         ff4<=d2; always @(posedge clk4)     if(!rst)         ff5<=0;     else         ff5<=ff4; assign out2=ff5; endmodule 

综合后网表连接图

 

约束内容如下,对经过clk4端口的时序弧和经过触发器引脚ff2_reg/Q的时序弧设置无效约束

create_clock -period 10.000 -name clk1 -waveform {0.000 5.000} [get_ports clk1]
create_clock -period 7.000 -name clk2 -waveform {0.000 3.500} [get_ports clk2]
create_clock -period 8.000 -name clk3 -waveform {0.000 5.000} [get_ports clk3]
create_clock -period 5.000 -name clk4 -waveform {0.000 3.500} [get_ports clk4]
set_input_jitter [get_clocks clk1] 1.660
set_disable_timing [get_ports clk4]
set_disable_timing [get_pins ff2_reg/Q]

约束中不设置set_disable_timing约束时

 

设置约束后时序分析结果

 

四、参考资料

用户手册:ug903-vivado-using-constraints-en-us-2022.2.pdf

链接:https://pan.baidu.com/s/17AK_-J4wRXiFLtLTorlrwg?pwd=mylt 

提取码:mylt   

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

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

相关文章

一文学会Aiohttp

一、什么是aiohttp库 aiohttp库官网&#xff1a;https://docs.aiohttp.org/en/stable/ aiohttp是一个Python的HTTP客户端/服务器框架&#xff0c;它基于asyncio库实现异步编程模型&#xff0c;可以支持高性能和高并发的HTTP通信。aiohttp用于编写异步的Web服务器、Web应用程序…

【hacker送书第5期】SQL Server从入门到精通(第5版)

第5期图书推荐 内容简介作者简介图书目录参与方式 内容简介 SQL Server从入门到精通&#xff08;第5版&#xff09;》从初学者角度出发&#xff0c;通过通俗易懂的语言、丰富多彩的实例&#xff0c;详细介绍了SQL Server开发所必需的各方面技术。全书分为4篇共19章&#xff0c;…

Linux下文件操作函数

一.常见IO函数 fopen fclose fread fwrite fseek fflush fopen 运行过程 &#xff1a;打开文件 写入数据 数据写到缓冲区 关闭文件后 将数据刷新入磁盘 1.fopen 返回文件类型的结构体的指针 包括三部分 1).文件描述符&#xff08;整形值 索引到磁盘文件&#xff09;…

【重磅合作】九章云极DataCanvas公司与生态伙伴强强联手,构建人工智能强生态!

11月21日&#xff0c;在「筑基赋能 智向未来」九章云极DataCanvas大模型系列成果发布会上&#xff0c;九章云极DataCanvas公司与人工智能产业链上下游合作伙伴广东民营投资股份有限公司&#xff08;以下简称“粤民投”&#xff09;、西藏赛富合银投资有限公司&#xff08;以下简…

网络入门---网络编程预备知识

目录标题 ifconfigip地址和mac地址的区别端口号pid和端口号UDP和TCP的初步了解网络字节序socket套接字 ifconfig 通过指令ifconfig便可以查看到两个网络接口&#xff1a; 我们当前使用的是一个linux服务器并是一个终端设备&#xff0c;所以他只需要一个接口用来入网即可&…

重排链表,剑指offerII 26,力扣 120

目录 力扣题目地址&#xff1a; 题目&#xff1a; 那我们直接看题解吧&#xff1a; 解题方法&#xff1a; 难度分析&#xff1a; 审题目事例提示&#xff1a; 解题分析&#xff1a; 解题思路&#xff1a; 解题补充&#xff1a; 力扣题目地址&#xff1a; 143. 重排链表 - 力扣&…

树与二叉树堆:堆的意义

目录 堆的意义&#xff1a; 第一是堆的排序&#xff0c;第二是堆的top k 排行问题 堆的 top k 排行问题&#xff1a; 面对大量数据的top k 问题&#xff1a; 堆排序的实现&#xff1a;——以升序为例 方法一 交换首尾&#xff1a; 建立大堆&#xff1a; 根结点尾结点的…

Python之数据可视化

文章目录 一、1、matplotlib简单应用1.1、绘制带有中文标签和图例的图1.2、 绘制散点图1.3、绘制饼状图1.4、多个图形一起显示 一、 1、matplotlib简单应用 matplotlib模块依赖于numpy模块和tkinter模块&#xff0c;可以绘制多种形式的图形&#xff0c;包括线图、直方图、饼状…

理解DALL-E 2

1.简介 DALL-E 2的效果想必大家都已经很清楚了&#xff0c;效果是非常惊人的&#xff0c;该篇文章就是讲一下DALL-E 2的原理是什么。 2.方法 DALL-E 2的原理不难理解&#xff0c;前提是你知道CLIP。简单来说&#xff0c;CLIP是一个由文本和图片多模态训练的一个zero-shot模型…

PTA-2023年软件设计综合实践_9(动态规划法)

7-1 数塔 数塔如图所示&#xff0c;若每一步只能走到相邻的结点&#xff08;图中有数字的方格&#xff09;&#xff0c;则从最顶层走到最底层所经过的所有结点的数字之和最大是多少&#xff1f;测试数据保证结果不大于231−1。 C #include <bits/stdc.h> using namespa…

15个超级实用的Python操作,肯定有你意想不到的!

文章目录 1&#xff09;映射代理&#xff08;不可变字典&#xff09;2&#xff09;dict 对于类和对象是不同的3) any() 和 all()4) divmod()5) 使用格式化字符串轻松检查变量6) 我们可以将浮点数转换为比率7) 用globals()和locals()显示现有的全局/本地变量8) import() 函数9) …

Flink-时间流与水印

时间流与水印 一、背景二、时间语义1.事件时间&#xff08;event time&#xff09;2.读取时间&#xff08;ingestion time&#xff09;3.处理时间&#xff08;processing time&#xff09; 三、水印-Watermarks1.延迟和正确性2.延迟事件3.顺序流4.无序流5.并行流 四、Windows1.…

【Openstack Train安装】八、placement安装

Placement 肩负着这样的历史使命&#xff0c;最早在 Newton 版本被引入到 openstack/nova repo&#xff0c;以 API 的形式进行孵化&#xff0c;所以也经常被称呼为 Placement API。它参与到 nova-scheduler 选择目标主机的调度流程中&#xff0c;负责跟踪记录 Resource Provide…

Windows下命令行启动与关闭WebLogic的相关服务

WebLogic 的服务器类型 WebLogic提供了三种类型的服务器&#xff1a; 管理服务器节点服务器托管服务器 示例和关系如下图&#xff1a; 对应三类服务器&#xff0c; 就有三种启动和关闭的方式。本篇介绍使用命令行脚本的方式启动和关闭这三种类型的服务器。 关于WebLogic 的…

洗地机哪个牌子好用?希亦、添可、石头洗地机品牌实测推荐!

现代家居生活中&#xff0c;普通的扫把拖把已经快要脱离了普通百姓家&#xff0c;人们纷纷使用智能扫地机洗地机等。 但是现在市场上洗地机的品牌参差不齐&#xff0c;很多不懂行的人不知道该选什么&#xff0c;那么什么洗地机的品牌质量好且耐用呢&#xff1f;下面笔者为大家…

Azure Machine Learning - 创建Azure AI搜索索引

目录 一、先决条件检查空间 二、创建和加载索引启动向导连接到 数据源跳过认知技能配置配置索引配置索引器 三、监视索引器进度四、检查搜索索引结果五、添加或更改字段六、使用搜索浏览器查询七、运行更多示例查询八、清理资源 在本文中&#xff0c;你将使用导入数据向导和由虚…

解决msvcr71.dll丢失5个方法,修复程序运行缺失dll问题

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“msvcr71.dll丢失”。这个错误提示通常出现在运行某些程序或游戏时&#xff0c;给使用者带来了很大的困扰。那么&#xff0c;究竟是什么原因导致了msvcr71.dll文件的丢失呢&#xff1f;本文…

T-Rex:检测一切 | 基于视觉提示的开集检测器,检测并计数

图1. 我们引入了一个交互式对象计数模型T-Rex。给定参考图像上指定的框或点&#xff0c;T-Rex 可以检测目标图像上的所有与指定对象表现出相似模式的实例&#xff0c;然后将其相加得到计数结果。我们先通过T-Rex生成检测到框提示&#xff0c;再使用SAM得到mask&#xff0c;以获…

Android端极致画质体验之HDR播放

高动态范围HDR视频通过扩大亮度分量的动态范围(从100cd/m2到1000cd/m2)&#xff0c;以及采用更宽的色彩空间BT2020&#xff0c;提供极致画质体验。从Android10开始&#xff0c;支持HDR视频播放。 一、HDR技术 HDR技术标准包括&#xff1a;Dolby-Vision、HDR10、HLG、PQ。支持…

set与map

set与map 一、序列式容器与关联式容器二、pair1、键值对2、作用3、构造函数4、make_pair&#xff08;1&#xff09;构造函数&#xff08;2&#xff09;作用 5、代码6、运行结果 三、set1、概念2、代码3、运行结果4、说明 四、multiset1、与set的关系2、代码3、运行结果 五、map…