时序约束总结verilog lzw_24@163.com 1 时序约束总结 很多人发贴,来信询问关于约束、时序分析的问题,比如:如何设置 setup,hold时间?如何使用全局时钟和第二全局时钟(长线资源)?如何进行分组约束?如何约束某部分组合逻辑?如何通过约束保证异步时钟域之间的数据交换可靠?如何使用 I/O逻辑单元内部的寄存器资源?如何进行物理区域约束,完成物理综合和物理实现?等等。。。 为了解决大家的疑难,我们将逐一讨论这些问题。 今天先讨论一下约束的作用? 有些人不知道何时该添加约束,何时不需要添加?有些人认为低速设计不需要时序约束?关于这些问题,希望下面关于约束作用的论述能够有所帮助! 附加约束的基本作用有 3: (1)提高设计的工作频率 对很多数字电路设计来说,提高工作频率非常重要,因为高工作频率意味着高处理能力。通过附加约束可以控制逻辑的综合、映射、布局和布线,以减小逻辑和布线延时,从而提高工作频率。 (2)获得正确的时序分析报告 几乎所有的 FPGA设计平台都包含静态时序分析工具,利用这类工具可以获得映射或布局布线后的时序分析报告,从而对设计的性能做出评估。静态时序分析工具以约束作为判断时序是否满足设计要求的标准,因此要求设计者正确输入约束,以便静态时序分析工具输出正确的时序分析报告。 (3)指定 FPGA/CPLD引脚位置与电气标准 FPGA/CPLD的可编程特性使电路板设计加工和 FPGA/CPLD设计可以同时进行,而不必等FPGA/CPLD引脚位置完全确定,从而节省了系统开发时间。这样,电路板加工完成后,设计者要根据电路板的走线对 FPGA/CPLD加上引脚位置约束,使 FPGA/CPLD与电路板正确连接。另外通过约束还可以指定 IO引脚所支持的接口标准和其他电气特性。为了满足日新月异的通信发展,Xilinx新型 FPGA/CPLD可以通过 IO引脚约束设置支持诸如 AGP、BLVDS、CTT、GTL、GTLP、HSTL、LDT、LVCMOS、LVDCI、LVDS、LVPECL、LVDSEXT、LVTTL、PCI、PCIX、SSTL、ULVDS等丰富的 IO接口标准。 另外通过区域约束还能在 FPGA上规划各个模块的实现区域,通过物理布局布线约束,完成模块化设计等。 贴2:时序约束的概念和基本策略! 时序约束主要包括周期约束(FFS到 FFS,即触发器到触发器)和偏移约束(IPAD到 FFS、FFS到 OPAD)以及静态路径约束(IPAD到 OPAD)等 3种。通过附加约束条件可以使综合布线工具调整映射和布局布线过程,使设计达到时序要求。例如用 OFFSET_IN_BEFORE约束可...