周期概念是FPGA/ASIC时序定义的基础,周期(PERIOD)约束附加在时钟网线上,时序分析工具根据PERIOD约束检查时钟域内所有同步元件(包括寄存器、锁存器、同步RAM/ROM等)的时序是否满足要求。
PERIOD约束会自动处理寄存器时钟端的反相问题。如果相邻同步元件的时钟相位相反,那么它们之间的延时将被默认限制为PERIOD约束值的一半。
PERIOD约束分析的对象包括输入PAD到同步元件和同步元件到同步元件之间的组合逻辑路径。不同时钟网络之间的逻辑块以目标网络的时钟为约束。
如下图:
设定PERIOD约束之前,预估系统最高可能的工作频率是十分重要的。设计电路所能达到的最高工作频率取决于同步元件本身的建立保持时间,以及同步元件之间的逻辑和布线延迟,如下图:
由上图可以计算出,时钟的最小周期:
其中是时钟输出时间,是同步元件之间的组合逻辑延时,是同步元件的建立时间,是时钟信号之间的偏斜(偏移)。
最小时钟周期的倒数就是最高频率,用表示。
能体现设计的时钟性能,是最重要的时序指标之一。
可以用两种方法对时钟网络附加时钟周期约束,分别为Simple Method 和 Preferred Method。
下面分别介绍: