Xilinx FPGA常用时序约束详解

时间:2025-07-26  作者:Diven  阅读:0

1.   基本的约束方法

Xilinx FPGA常用时序约束详解

为了保证成功的设计,所有路径的时序要求必须能够让执行工具获取。最普遍的三种路径为:

输入路径(Input Path),使用输入约束

寄存器寄存器路径(Register-to-Register Path),使用周期约束

输出路径(Output Path),使用输出约束

具体的异常路径(Path specifIC exceptions),使用虚假路径、多周期路径约束

1.1.  输入约束Input Constraint

OFFSET IN约束限定了输入数据和输入时钟边沿的关系。

1.1.1.   系统同步输入约束System Synchronous Input

在系统同步接口中,同一个系统时钟既传输数据也获取数据。考虑到板子路径延时和时钟抖动,接口的操作频率不能太高。

                       

1‑1 简化的系统同步输入SDR接口电路图

 

1‑2 SDR系统同步输入时序

上述时序的约束可写为:

NET "SysClk" TNM_NET = "SysClk";

TIMESPEC "TS_SysClk" = PERIOD "SysClk" 5 ns HIGH 50%;

OFFSET = IN 5 ns VALID 5 ns BEFORE "SysClk";

1.1.2.   源同步输入约束Source Synchronous Input

在源同步接口中,时钟是在源设备中和数据一起产生并传输。

 

1‑3 简化的源同步输入DDR接口电路

 

1‑4 DDR源同步输入时序

上图的时序约束可写为:

NET "SysClk" TNM_NET = "SysClk";

TIMESPEC "TS_SysClk" = PERIOD "SysClk" 5 ns HIGH 50%;

OFFSET = IN 1.25 ns VALID 2.5 ns BEFORE "SysClk" RISING;

OFFSET = IN 1.25 ns VALID 2.5 ns BEFORE "SysClk" FALLING;

1.2.  寄存器到寄存器约束Register-to-Register Constraint

寄存器到寄存器约束往往指的是周期约束,周期约束的覆盖范围包括:

覆盖了时钟域的时序要求

覆盖了同步数据在内部寄存器之间的传输

分析一个单独的时钟域内的路径

分析相关时钟域间的所有路径

考虑不同时钟域间的所有频率、相位、不确定性差异

1.2.1.   使用DLL, DCM, PLL, and MMCM等时钟器件自动确定同步关系

使用这一类时钟IP Core,只需指定输入时钟约束,器件将自动的根据用户生成IP Core时指定的参数约束相关输出,不需用户手动干预。

 

1‑5 输入到DCM的时钟约束

上图的时序约束可写为:

NET “ClkIn” TNM_NET = “ClkIn”;

TIMESPEC “TS_ClkIn” = PERIOD “ClkIn” 5 ns HIGH 50%;

1.2.2.   手动约束相关联的时钟域

在某些情况下,工具并不能自动确定同步的时钟域之间的时钟时序关系,这个时候需要手动约束。例如:有两个有相位关系的时钟从不同的引脚进入FPGA器件,这个时候需要手动约束这两个时钟。

 

1‑6 通过两个不同的外部引脚进入FPGA的相关时钟

上图的时序约束可写为:

NET“Clk1X"TNM_NET=“Clk1X";

NET“Clk2X180"TNM_NET=“Clk2X180";

TIMESPEC"TS_Clk1X"=PERIOD"Clk1X 7 5ns;

TIMESPEC"TS_Clk2X180"=PERIOD"Clk2X180“TS_Clk1X/2PHAS2 +1.25ns;

1.2.3.   异步时钟域

异步时钟域的发送和接收时钟不依赖于频率或相位关系。因为时钟是不相关的,所以不可能确定出建立时间、保持时间和时钟的最终关系。因为这个原因,Xilinx推荐使用适当的异步设计技术来保证对数据的成功获取。Xilinx约束系统允许设计者在不需考虑源和目的时钟频率、相位的情况下约束数据路径的最大延时。

异步时钟域使用的约束方法的流程为:

为源寄存器定义时序组

为目的寄存器定义时序组

使用From-to和DATAPATHDELAY关键字定义寄存器组之间的最大延时

1.3.  输出约束Output Constraint

输出时序约束约束的是从内部同步元件或寄存器到器件管脚的数据。

1.3.1.   系统同步输出约束System Synchronous Output Constraint

系统同步输出的简化模型如图所示,在系统同步输出接口中,传输和获取数据是基于同一个时钟的。

 

1‑7 系统同步输出

其时序约束可写为:

NET "ClkIn" TNM_NET = "ClkIn";

OFFSET = OUT 5 ns AFTER "ClkIn";

1.3.2.   源同步输出约束Source Synchronous Output Constraint

在源同步输出接口中,时钟是重新产生的并且在某一FPGA时钟的驱动下和数据一起传输至下游器件。

 

1‑8 源同步输出简化电路时序图

 

1‑9 源同步小例子时序图

小例子的时序约束可写为:

NET “ClkIn” TNM_NET = “ClkIn”;

OFFSET = OUT AFTER “ClkIn” REFERENCE_PIN “ClkOut” RISING;

OFFSET = OUT AFTER “ClkIn” REFERENCE_PIN “ClkOut” FALLING;

1.3.3.   虚假路径约束False Path Constraint

令SRC_GRP为一组源寄存器,DST_GRP为一组目的寄存器,如果你确定SRC_GRP到DST_GRP之间的路径不会影响时序性能,那么可以将这一组路径约束为虚假路径,工具在进行时序分析的时候将会跳过对这组路径的时序分析。这种路径最常见于不同时钟域的寄存器数据传输,如下图:

 

1‑10 虚假路径

其约束可写为:

NET "CLK1" TNM_NET = FFS "GRP_1";

NET "CLK2" TNM_NET = FFS "GRP_2";

TIMESPEC TS_Example = FROM "GRP_1" TO "GRP_2" TIG;

1.3.4.   多周期路径约束Multi-Cycle Path Constraint

在多周期路径里,令驱动时钟的周期为PERIOD,数据可以最大n*PERIOD的时间的从源同步元件传输到目的同步元件,这一约束降低工具的布线难度而又不会影响时序性能。这种约束通常用在有时钟使能控制的同步元件路径中。

 

图1-11 时钟使能控制的寄存器路径

必须说明的是上图Enable信号的产生周期必须大于等于n*PERIOD,且每个Enable传输一个数据。假设上图的n=2,MC_GRP为时钟使能Enable控制的多周期同步元件组,则约束可写为:

NET "CLK1" TNM_NET = "CLK1";

TIMESPEC "TS_CLK1" = PERIOD "CLK1" 5 ns HIGH 50%;

NET "Enable" TNM_NET = FFS "MC_GRP";

TIMESPEC TS_Example = FROM "MC_GRP" TO "MC_GRP" TS_CLK1*2;

审核编辑:陈陈

 

猜您喜欢

变容二极管,又称可变电容二极管,是具有电压控制电容特性的半导体器件。由于其独特的电压-电容特性,变容二极管在现代电子电路中发挥着重要的作用。本文将深入探讨变容二...
2025-04-08 17:31:08

自从换了智能锁霍尔开关,我真的是爱不释手!这个小东西,不仅给我带来了安全,还给我带来了无限的便利。首先,它的安全性是无与伦比的。霍尔开关采用的是先进的生物识别技...
2023-09-04 13:56:00

2010-09-10 00:00:00

铝壳电阻作为重要的电子元件,应用于各种电路设计和工业设备中。美磊(Mag.Layers)作为国内知名的铝壳电阻品牌,凭借其高品质的产品性能和良好的市场口碑,逐渐...
2023-07-14 23:22:12

分流器电阻作为测量电流的重要元件,其性能和品质直接影响系统的稳定性和准确性。科达嘉(CODACA)作为知名的分流器电阻品牌,凭借其优良的技术和可靠的产品,赢得了...
2013-08-20 10:06:57

贴片电阻体积小,检测其好坏需要借助一些工具。最常用的方法是使用万用表。选择万用表的电阻档位。根据贴片电阻的标称阻值选择合适的量程,一般从小量程开始测试。将万用表...
2024-11-29 10:26:06

现代电子产品中,发光二极管(LED)作为重要的光源,应用于显示、指示和照明等领域。为了便于设计和制造,PCB(印刷电路板)上的发光二极管需要使用特定的封装符号。...
2025-04-06 05:30:36

贴片电阻能承受的最大启动瞬间脉冲电流或浪涌电流,并非一个固定值,而是取决于多个因素。一般来说,贴片电阻的数据表会列出其最大脉冲功率或能量额定值,而不是直接给出最...
2024-11-29 10:25:29

本部分,我们就跟随作者一起看看Intel Stratix10 NX和Nvidia在这个领域的利器T4以及V100之间的对比,过程分为芯片级对比以及系统级对比。...
2022-08-16 09:22:00

馈电绝缘子和射频绝缘子是电力系统中重要的组件,各自承担着不同的功能。馈电绝缘子主要用于电力线路中,承载电流并确保电流安全通过,同时防止电流泄漏到地面。其设计强调...
2008-12-03 00:00:00