约束

Vivado 工具支持范围限定的约束特性,旨在将 XDC 文件与设计子集(如子模块 网表、团队设计流程中设计的不同部分、设计中的 IP 等)关联起来。通过本指南了解Vivado的约束范围设定方法。

Vivado约束文件报错

'set_property' expects at least one object

报XDC里面的set_property找不到正确的object,这个在vivado后续版本中都显示为警告,一般都是处于object的port名大小写问题。XDC和Verilog都对大小写敏感。建议RTL内部接口定义全部用小写。

错误: set_property PACKAGE_PIN "V7 " [get_ports "CN1_V7 "]

正确: set_property PACKAGE_PIN "V7 " [get_ports "CN1_v7 "]

关于vivado的IO口约束

为什么要进行管脚约束。

刚做项目的时候,往往会忽略IO口的约束。每次稍微改动一些东西,就会发现 编译的结果不是自己想要的。 这样的现象一般来说,就是时序有问题。 一般 逻辑代码的约束还好做, IO口的约束有些麻烦。

解释一个名词。

为了改进系统同步接口中时钟频率受限的弊端,一种针对高速I/O的同步时序接口应运而生,在发送端将数据和时钟同步传输,在接收端用时钟沿脉冲来对数据进行锁存,重新使数据与时钟同步,这种电路就是源同步接口电路(Source Synchronous Interface)。 在我们这边的设计中, 在IO设计中,经常要用到 源同步时钟。

input_delay.

在我们的设计中 setup 为2.5ns. hold on为 2.0ns,时钟周期是 13.468ns. 在不考虑 时钟 有jitter跟skew的存在,那么 在 vivado 里面应该这么设置。

关于XDC约束文件,你需要知道的几点

作者: 圆宵 FPGA那点事儿

在ISE时代,使用的是UCF约束文件。从Vivado开始,XDC成了唯一支持的约束标准。XDC除了遵循工业界的通行标准SDC(Synopsys Design Constraints)之外,还加入了XILINX FPGA特有的位置物理约束等特性。以下是在实际使用中,经历过一些经验教训后,体会的几点我们在组织XDC约束时需要注意的事项。

1. XDC约束条目是有先后顺序的

Vivado时钟分组约束的三类应用

在Vivado中通过set_clock_groups来约束不同的时钟组,它有三个选项分别是-asynchronous,-logically_exclusive和-physically_exclusive。

-asynchronous应用于异步时钟,如下图所示,CLKA和CLKB由两个外部独立的晶振提供,那么跨时钟域路径即REGA到REGB0之间的路径可采用如下约束:

create_clock–name CLKA –period 10.0 [get_ports CLKA]
create_clock–name CLKB –period 5.0 [get_ports CLKB]
set_clock_groups –async –group CLKA –group CLKB

上述约束等效于
set_false_path–from [get_clocks CLKA] –to [get_clocks CLKB]
set_false_path–from [get_clocks CLKB] –to [get_clocks CLKA]

Vivado: 如何理解多周期路径约束

我们先看看单时钟周期的情形,如下图所示。红色标记为默认情况下的建立时间检查,蓝色标记为默认情况下的保持时间检查,且注意保持时间的检查是以建立时间的检查为前提,即总是在建立时间检查的前一个时钟周期确定保持时间检查。

如果是多周期,如下图所示,此时两个寄存器之间尽管使用同一个时钟但因为使能信号的作用,使得两者数据率变为时钟频率的一半,意味着发起沿和捕获沿相隔2个时钟周期。

此时新的建立时间检查如下图中的红色实线所示,红色虚线为默认情况下的建立时间检查。

【中文视频】:设计约束概述

观看视频了解和学习有关XDC约束,包括时序,以及物理约束相关知识。

By Adam Taylor

在约束系列的最后,我们讲讲关联布局宏(RPM)的约束。RPM允许你在FPGA的布局中将DSP、FF、LUT和RAMS等资源组合在一起。与PBlocks不同,RPM并不把设计元素的位置限制到特定区域去(除非你想那样做)。相反,当这些设计元素被放置后,RPM将它们组合到一起。近距离放置这些资源允许你改进资源利用率,并且能微调互连长度来保证更好的时序。

作者:周丽娜(Ally Zhou ),Xilinx工具与方法学应用专家

 《XDC约束技巧之时钟篇》中曾对I/O约束做过简要概括,相比较而言,XDC中的I/O约束虽然形式简单,但整体思路和约束方法却与UCF大相径庭。加之FPGA的应用特性决定了其在接口上有多种构建和实现方式,所以从UCF到XDC的转换过程中,最具挑战的可以说便是本文将要讨论的I/O约束了。

作者:周丽娜(Ally Zhou ),Xilinx工具与方法学应用专家

《XDC约束技巧之时钟篇》中曾对I/O约束做过简要概括,相比较而言,XDC中的I/O约束虽然形式简单,但整体思路和约束方法却与UCF大相径庭。加之FPGA的应用特性决定了其在接口上有多种构建和实现方式,所以从UCF到XDC的转换过程中,最具挑战的可以说便是本文将要讨论的I/O约束了。

I/O 约束的语法

同步内容