vivado 时序约束

时间限制
以下ISE设计套件时序约束可以表示为XDC时序约束
Vivado设计套件。每个约束描述都包含一个UCF示例和
等效的XDC示例。
在未直接连接到边界的网络上创建时钟时,UCF和XDC不同
的设计(如端口)。在XDC中,当在上定义带有create_clock的主时钟时
net源点是网络的驱动引脚。
忽略该点之前的时钟插入延迟。计时时钟时可能会出现此问题
与另一个相关的时钟;偏斜将不准确。
使用create_clock Tcl命令
首先,要注意create_clock命令的不同起点如何影响计时
精确
在ISE中
在ISE中,以下时间限制是等效的:

NET "clk" TNM_NET = sys_clk;
TIMESPEC TS_sys_clk = PERIOD "sys_clk" 10 ns HIGH 50%;
NET "clk_IBUF_BUFG" TNM_NET = sys_clk;
TIMESPEC TS_sys_clk = PERIOD "sys_clk" 10 ns HIGH 50%;
In the Vivado Design Suite
In the Vivado Design Suite, the following create_clock constraints differ.
create_clock -period 10.000 -name clk -waveform {0.000 5.000}
[get_ports clk]
create_clock -period 10.000 -name clk -waveform {0.000 5.000}
[get_pins clk_IBUF_BUFG_inst/O]
约束不同,因为它们使用不同的起点来定义
Vivado IDE在计算松弛方程的时钟延迟和不确定性时进行分配。看见
如下图所示。
Vivado IDE忽略来自位于点上游的单元的所有时钟树延迟
其定义了主时钟。如果在
在设计中,只有一部分延迟用于时序分析。如果这个时钟
与设计中的其他相关时钟通信,因为偏斜,因此
时钟之间的值可能不准确。
在时钟树不位于
设计(例如输入端口或GT时钟输出引脚)。在的中间创建生成的时钟
仅设计。
时钟约束
Period
UCF Example
NET "clka" TNM_NET = "clka";
TIMESPEC "TS_clka" = PERIOD "clka" 13.330 ns
HIGH 50.00%;
XDC Example
create_clock -name clka -period 13.330 -
waveform {0 6.665}\ [get_ports clka]
Period Constraints with Uneven Duty Cycle
UCF Example
NET "clka" TNM_NET = "clka";
TIMESPEC "TS_clka" = PERIOD "clka" 13.330 ns HIGH 40.00%;
XDC Example
create_clock -name clka -period 13.330 -waveform {0 5.332}\[get_ports
clka]
Generated Clocks Constraints
UCF Example
NET "gen_clk" TNM_NET = "gen_clk";
TIMESPEC "TS_gen_clk" = PERIOD "gen_clk" "TS_clka" * 0.500 HIGH 50.00%;
XDC Example
create_generated_clock -source [get_ports clka] -name gen_clk\-
multiply_by 2 [get_ports gen_clk]
Period Constraints with LOW Keyword
UCF Example
NET "clka" TNM_NET = "clka";
TIMESPEC "TS_clka" = PERIOD "clka" 13.330 ns LOW 50.00%;
XDC Example
create_clock -name clka -period 13.330 -waveform {6.665 13.330}\
[get_ports clka]
Net PERIOD Constraints
UCF Example
NET "clk_bufg" PERIOD = 10 ns;
XDC Example
create_clock -name clk_bufg -period 10 -waveform {0 5}\
[get_pins clk_bufg/O}
Note : Unless there is specific reason to define the clock on bufg/O, define it at an upstream
top-level port.
OFFSET IN
BEFORE
UCF Example
OFFSET = IN 8 BEFORE clka;
XDC Example
set_input_delay -clock clka 2 [all_inputs]
Note : This assumes the clock period is 10 ns.
AFTER
UCF Example
OFFSET = IN 2 AFTER clka;
XDC Example
set_input_delay -clock clka 2 [all_inputs]
Note : This assumes the clock period is 10 ns.
BEFORE an Input Port Net
UCF Example
NET enable OFFSET = IN 8 BEFORE clka;
XDC Example
set_input_delay 2 [get_ports enable]
Note : This assumes the clock period is 10 ns.
BEFORE an Input Port Bus
UCF Example
INST "processor_data_bus[*]" TNM = "processor_bus";
TIMEGRP "processor_bus" OFFSET = IN 8ns BEFORE "clka";
XDC Example
set_input_delay 2 [get_ports {processor_data_bus[*]}]
Note : Offset is applied to ports only.
To TIMEGROUP
UCF Example
INST "input_ffs[*]" TNM = "input_ffs";
OFFSET = IN 8ns BEFORE "clka" TIMEGRP "input_ffs";
XDC Example
Manual conversion is required. For more information, see TimeGROUP .
FALLING/RISING Edge
UCF Example
OFFSET = IN 8ns BEFORE "clka" FALLING;
XDC Example
set_input_delay -clock clka 2 [all_inputs]
Note : This assumes the clock period is 10 ns.
LOW/HIGH Keyword
UCF Example
OFFSET = IN 8ns BEFORE "clka" HIGH;
XDC Example
Requires manual conversion.
Note : HIGH/LOW keywords are precursors to RISING/FALLING. RISING/FALLING is the
preferred method.
VALID Keyword
UCF Example
OFFSET = IN 1ns VALID 2ns BEFORE clka;
XDC Example
set_input_delay -clock clka -max 9 [all_inputs]
set_input_delay -clock clka -min 1[all_inputs]
Note : This assumes the clock period is 10 ns.
AFTER
UCF Example
OFFSET = OUT 12 AFTER clkc;
XDC Example
set_output_delay -clock clkc -max 8 [all_outputs]
Note : This assumes the clock period is 20 ns.
BEFORE
UCF Example
OFFSET = OUT 8 BEFORE clkc;
XDC Example
set_output_delay -clock clkc 8 [all_outputs]
Note : This assumes the clock period is 20 ns.
Output Net
UCF Example
NET out_net OFFSET = OUT 12 AFTER clkc;
XDC Example
set_output_delay 8 [get_port out_net]
Note : This assumes the clock period is 20 ns.
Group of Outputs
UCF Example
TIMEGRP outputs OFFSET = OUT 12 AFTER clkc;
XDC Example
set_output_delay -clock clkc 8 [get_ports outputs*]
Note : This assumes the clock period is 20 ns.
From a TIMEGROUP
UCF Example
OFFSET = OUT 1.2 AFTER clk TIMEGRP from_ffs;
XDC Example
Manual conversion is required.
FALLING/RISING Edges
UCF Example
OFFSET = OUT 12 AFTER clkc FALLING;
XDC Example
set_output_delay -clock clkc -clock_fall 8 [all_outputs]
LOW Keyword
UCF Example
OFFSET = OUT 12 AFTER clkc LOW;
XDC Example
Requires manual conversion.
Note : HIGH/LOW keywords are precursors to RISING/FALLING. RISING/FALLING is the
preferred method.
REFERENCE_PIN
UCF Example
TIMEGRP mac_ddr_out;
OFFSET = OUT AFTER clk REFERENCE_PIN clk_out RISING;
XDC Example
Requires manual conversion.
Note : REFERENCE_PIN acts as a reporting switch to instruct TRACE to output a bus skew
report. The Vivado Design Suite does not support this feature.
自:到约束
通常,UCF From:To约束会转换为set_max_delay或
set_min_delay XDC约束,与-from、-to和-through设计相关
论据。
UCF约束的目的是使用等效的XDC约束。而大多数UCF
约束是基于网络的,XDC约束必须构造到端口和引脚。
用于这些约束的有用XDC命令有:all_fanout、get_cell和get_pins
以及-from、-to和-through参数。
Assigning Timing Group to an Area Group
UCF Example
TIMEGRP clock_grp = AREA_GROUP clock_ag;
XDC Example
The Vivado Design Suite does not support this constraint in XDC.
EXCEPT
UCF Example
TIMEGRP my_group = FFS EXCEPT your_group;
XDC Example
The Vivado Design Suite does not support this constraint in XDC.
Between Groups
UCF Example
TIMESPEC TS_TIG = FROM reset_ff TO FFS TIG;
XDC Example
Manual conversion is required. Construct a set_false_path that covers the desired paths.
By Net
UCF Example
NET reset TIG;
XDC Example
set_false_path -through [get_nets reset]
A better approach is to find the primary reset port and use:
set_false_path -from [get_ports reset_port]
By Instance
UCF Example
INST reset TIG;
XDC Example
set_false_path -from [get_cells reset]
set_false_path -through [get_cells reset]
set_false_path -to [get_cells reset]
By Pin
UCF Example
PIN ff.d TIG;
XDC Example
set_false_path -to [get_pins ff/D]
set_false_path -from [get_pins ff/C]
set_false_path -through [get_pins lut/I0]
Specific Time Constraints
UCF Example
NET reset TIG = TS_fast TS_even_faster;
XDC Example
The Vivado Design Suite does not support this constraint in XDC.
Note : Constraint-specific TIG tries to disable timing through the net, but only for analysis of
the two referenced constraints.
MAXSKEW
UCF Example
NET local_clock MAXSKEW = 2ns;
XDC Example
The Vivado Design Suite does not support this constraint in XDC.
MAXDELAY
UCF Example
NET local_clock MAXDELAY = 2ns;
XDC Example
The Vivado Design Suite does not support this constraint in XDC. You can, however, use
set_max_delay for specifying the timing requirement for a valid timing path (synchronous
start point to synchronous Endpoint).

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

LwIP 之十 详解 TCP RAW 编程、示例、API 源码、数据流

我们最为熟知的网络通信程序接口应该是 Socket。LwIP 自然也提供了 Socket 编程接口,不过,LwIP 的 Socket 编程接口都是使用最底层的接口来实现的。我们这里要学习的 TCP RAW 编程则是指的直接使用 LwIP 的最底层 TCP 接口来直接实现应用层功能。这里先来一张图,对 LwIP 内部…

【JS重点知识02】栈、堆与数据类型 关系

一:栈堆空间分配区别: 1 栈:由操作系统自动分配释放存放函数的参数值、局部变量的值等。其操作方式类似于数据结构中的栈; 简单数据类型存放在栈中 2 堆:存储复杂数据类型(对象),…

C#知识|通用数据访问类SQLHelper的编写

哈喽,你好啊,我是雷工! 前面学习了C#操作SQLServer数据库数据的增删改查, 《C#知识|通过ADO.NET实现应用程序对数据库的增、删、改操作。》 其中实现的过程中有很多代码是重复的,此时作为高阶程序员为了使代码更优雅,避免重复, 从而要考虑代码的复用技术,针对此案例中代…

vscode 编程工具配置Java开发环境

vs code 开发环境配置。 环境准备: 1. 安装JDK/安装maven/安装vs code 首先安装好vs code 之后,需要安装 Extension Pack for Java 这么个插件 配置maven,进入setting, 3:配置 maven安装目录,4&#xff1a…

【机器学习】深入探索机器学习:利用机器学习探索股票价格预测的新路径

❀机器学习 📒1. 引言📒2. 多种机器学习算法的应用📒3. 机器学习在股票价格预测中的应用现状🎉数据收集与预处理🎉模型构建与训练🌈模型评估与预测🌞模型评估🌙模型预测⭐注意事项 &…

msvcp100.dll丢失怎样修复?几种快速有效修复msvcp100.dll丢失的方法

在使用电脑时是不是遇到过关于msvcp100.dll丢失文件丢失的情况?出现这样的情况有什么办法可以将丢失的msvcp100.dll文件快速恢复?今天的这篇文章就将教大家几种能够有效的解决msvcp100.dll丢失问题的方法。 方法一:重启电脑 重启电脑是一种简…

sqliteSQL基础

SQL基础 SQLite 数据库简介 SQLite 是一个开源的、 内嵌式的关系型数据库, 第一个版本诞生于 2000 年 5 月, 目前最高版本为 SQLite3。 下载地址: https://www.sqlite.org/download.html 菜鸟教程 : https://www.runoob.com/sqlite/sqlit…

项目VS运营

一、项目与运营的定义与区别 项目与运营是企业管理中的两个重要概念,尽管在实际运作中它们常被视为同义词,但它们之间存在明显的区别。 项目,指的是为达到特定目标,通过临时性、系统性、有计划的组织、协调、控制等系列活动&…

活动预告|6月13日Apache Flink Meetup·香港站

6 月 13 日 | 香港 | 线下 Apache Flink Meetup 的风吹到了香江之畔,Apache Flink 香港 Meetup 来啦!本次活动,我们邀请了来自阿里云的顶尖专家,帮助开发者全面了解 Apache Flink 的流批一体的数据处理能力,流式数据湖…

第100+9步 ChatGPT文献复现:ARIMA预测百日咳

基于WIN10的64位系统演示 一、写在前面 我们来继续换一篇文章来学习学习: 《BMC Public Health》杂志的2022年一篇题目为《ARIMA and ARIMA-ERNN models for prediction of pertussis incidence in mainland China from 2004 to 2021》文章的模拟数据做案例。 这…

源码编译安装LNMP

1、LNMP 包含:linux、Nginx、Mysql、php LNMP的工作原理 由客户端发送页面请求给Nginx,Nginx会根据location匹配用户访问请求的URL路径判断是静态还是动态,静态的一般是以 .html .htm .css .shtml结尾,动态的一般是以 .php .jsp…

【测试】linux快捷指令工具cxtool

简介 登录linux时,我们经常需要重复输入一些指令. 这个工具可以把这些指令预置,需要的时候鼠标一点,会自动按预置的字符敲击键盘,敲击出指令. 下载地址 https://download.csdn.net/download/bandaoyu/89379371 使用方法 1,编辑配置文件,自定义自己的快捷指令。 2…

PMP证书有用吗?到底要不要报名?

证书就是,适用者自有用,不适者无用。对于做管理之类的人士考个PMP必然有用。 首先PMP是什么? PMP指的是项目管理专业人士资格认证。那怎么来定义“项目”?“项目“可以简单的理解为:在给定的费用与时间约束范围之内,完成意向独立的、一次…

2024年5月软件设计师选择题答案(持续更新~)

题目1【考生回忆版】在计算机网络协议5层体系结构中,()工作在数据链路层 A.路由器 B.以太网交换机 C.防火墙 D.集线器 题目2【考生回忆版】软件交付之后,由于软硬件环境发生变化而对软件进行修改的行为属于()维护。 A.改善性 B.适应性 C.预防性 …

JVM之【运行时数据区1】

JVM简图 运行时数据区简图 一、程序计数器(Program Counter Register) 1.程序计数器是什么? 程序计数器是JVM内存模型中的一部分,它可以看作是一个指针,指向当前线程所执行的字节码指令的地址。每个线程在执行过程中…

『ZJUBCA MeetUP』 5月25日线下活动——Aptos 链的动态与应用

2024 求是创新 ZJUBCA Sponsored by the ALCOVE Community TIME:2024/05/25 ADD:浙江大学紫金港校区 --- Alcove 是 Aptos 公链与 Alibaba Cloud 共同打造的亚洲首个 Move 开发者社区,致力于支持开发者使用 Move 语言构建下一代 Web3 应用&am…

5分钟了解APP广告变现成功之道!

在当今的移动互联网时代,随着智能手机的普及,越来越多的APP应运而生,竞争愈发激烈。 对于开发者和企业来说,如何在保证用户体验的前提下实现广告变现,成为了一个既重要又棘手的问题。 本文旨在深入探讨和揭示成功的A…

济南著名起名大师,现代山东文化名人颜廷利教授:通过魔方解析世界

济南著名起名大师,现代山东文化名人颜廷利教授:通过魔方解析世界 在山东济南,中国第一起名大师的恩师颜廷利教授不仅是一位杰出的齐鲁文化名人,更是全球首个利用魔方游戏来解析和理解世界的先驱。他的理论框架——包括升命学说、净…

YOLO目标检测:框架技术原理和代码实现

Dream推荐 适读人群 :本书适合对YOLO目标检测感兴趣、了解深度学习相关概念的算法工程师、软件工程师等人员阅读。 全面:涵盖6个常用目标检测框架(YOLOv1、YOLOv2、YOLOv3、YOLOv4、YOLOX、YOLOv7)的发展状况、技术原理和代码实…

过敏者的福音:猫毛克星大揭秘!使用宠物空气净化器效果如何?

对于猫毛过敏者来说,家中爱宠的陪伴与过敏的困扰并存,给他们的日常生活带来了极大的不便。猫毛过敏者常常因为与猫咪接触后出现打喷嚏、鼻塞、眼睛发痒等症状而苦恼,严重时甚至可能影响到他们的呼吸健康。 然而,这并不意味着猫毛…