一、时钟
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 排版