vivado时序约束学习系列:时序约束中常用概念(时钟、建立时间和保持时间、时序裕量等)

文摘   2024-12-29 18:40   江苏  
一、时钟

1、时钟偏差

2、时钟抖动

二、建立时间和保持时间

三、时序裕量

一、时钟

在FPGA开发中,同步设计必不可少,电路的状态变化通常由一个周期信号的边沿进行触发控制,上升沿或者下降沿均可以作为触发条件,推荐使用同一种触发条件。这种触发信号本质上就是时钟。在仿真或者理想状态下,通常会将时钟设置为一个占空比为50%,周期固定的方波信号。时钟周期用Tclk来表示,对应的时钟频率也就是1/Tclk,单位为Hz。高脉冲时间T1宽度与低脉冲时间T2宽度之比就T1/T2是所谓的时钟信号占空比。

二、时钟特性

FPGA设计的时钟,通常来自外部器件或者从链路中恢复出来。外部晶振器件或者时钟芯片,提供一个相对稳定的周期,通过使用器件的手册说明可以评估时钟的信号质量。FPGA的设计中一般会将其作为内部PLL的输入,使用PLL的输出进行功能开发。输入时钟的频率可以通过xdc进行约束。

1、时钟偏差

时钟芯片手册中常用的一个单位,PPM,百万分之一。±10PPM,表示一秒产生百万分之一秒*10的偏差,也就是10微妙的偏差。

2、时钟抖动

时钟抖动,可以描述为周期性偏差,通常是晶振或者芯片内部PLL固有的噪声和干扰所引起的,其单位一般是ps。通常约束的时候在高频时钟处理时候,会考虑约束时钟的抖动。

下面是xilinx的内部锁相环的时钟抖动数据。

二、建立时间和保持时间

建立时间,时钟上升沿到来之前数据必须保持稳定的时间,下图中的Tsu。保持时间,时钟上升沿到了之后数据必须保持稳定的时间,下图中的Th。数据要在时钟的上升沿锁定,也就是在Tsu+Th这段时间内保持数据稳定,才能被当前时钟稳定的采样。

三、时序裕量

数据到达路径,data arrival path,数据在两个寄存器reg之间传输的实际路径。下图中数据到达路径表示时钟到达reg1的路径和reg1到reg2之间的传输路径之和。

数据需求路径,data required path,数据满足建立时间和保持时间的理论需求计算路径。下图中数据需求路径表示时钟到达reg2的路径。

上述中Tc1表示时钟到达reg1的时间,Tc2表示时钟到达reg2的时间,Tdata表示reg1输出端到reg2输入端经过的延时。寄存器内部的传输时间Tco也在这一部分,固定值。Tsu/Th是reg2的建立时间和保持时间。Tclk表示一个时钟周期,理解为数据锁存时间。

数据到达时间Data Arrival Time=Tclk+Tc1+Tdata

数据需求时间Data Reguired Time=Tclk+Tc2-Tsu

建立时间裕量Setup Time Slack=Data Reguired Time-Data Arrival Time

Setup Time Slack=Tc2-Tsu-Tc1-Tdata。

本文使用 markdown.com.cn 排版


小灰灰的FPGA
努力成为一名FPGA全栈工程师,分享FPGA、嵌入式、硬件及软件知识,扩充自己的知识面,比如图像处理,通信协议以及数据处理等方向。
 最新文章