时序设计、时序收敛、时序约束都是什么呢?

时序设计(Timing Design):电路设计的难点在时序设计,时序设计的实质就是满足每一个触发器的建立时间、保持时间的要求,从而达到时序收敛的过程。

(扩大一点说就是使得数据能够在正确的时间到达从而正确地被处理)

 

时序收敛(Timing Closure):时序收敛是现场可编程逻辑门阵列、专用集成电路等集成电路设计过程中,调整、修改设计,从而使得所设计的电路满足时序要求的过程。

 

时序约束(Timing Constraint):时序约束主要包括周期约束,偏移约束,静态时序路径约束三种。通过附加时序约束可以综合布线工具调整映射和布局布线,使设计达到时序要求。

  时序约束的作用:

    1:提高设计的工作频率(减少了逻辑和布线延时)。
    2:获得正确的时序分析报告(静态时序分析工具以约束作为判断时序是否满足设计要求的标准,因此要求设计者正确输入约束,以便静态时序分析工具可以正确的输出时序报告)。

 

附加:

对于时钟的设计中:

 

1、在通常的FPGA设计中对时钟偏差的控制主要有以下几种方法:

  控制时钟信号尽量走可编程器件的的全局时钟网络。在可编程器件中一般都有专门的时钟驱动器及全局时钟网络,不同种类、型号的可编程器件,它们中的全局时钟网络数量不同,因此要根据不同的设计需要选择含有合适数量全局时钟网络的可编程器件。一般来说,走全局时钟网络的时钟信号到各使用端的延时小,时钟偏差很小,基本可以忽略不计。

  若设计中时钟信号数量很多,无法让所有的信号都走全局时钟网络,那么可以通过在设计中加约束的方法,控制不能走全局时钟网络的时钟信号的时钟偏差。

 

2、FPGA 设计中对时钟的正确操作(例如分频等等)如下:

  FPGA 芯片有固定的时钟路由,这些路由能有减少时钟抖动和偏差。需要对时钟进行相位移动或变频的时候,一般不允许对时钟进行逻辑操作(就算是最基本的与或非也最好避免),因为这样不仅会增加时钟的偏差和抖动,还会使时钟带上毛刺。

  一般的处理方法是采用 FPGA 芯片自带的时钟管理器如 PLL、DLL 或 DCM,或者把逻辑转换到触发器的 D 输入(这些也是对时钟逻辑操作的替代方案)。

你可能感兴趣的:(时序设计、时序收敛、时序约束都是什么呢?)