本文档可提供新的版本。客户应 单击此处 前往查看最新版本。
2.1.5.1. 时序报告命令
2.1.5.2. Fmax汇总报告(Fmax Summary Report)
2.1.5.3. Report Timing命令
2.1.5.4. 报告逻辑电平深度
2.1.5.5. 报告相邻路径(Report Neighbor Paths)
2.1.5.6. Report CDC Viewer命令
2.1.5.7. Report Custom CDC Viewer命令
2.1.5.8. 报告时间借用数据
2.1.5.9. 将约束与时序报告相关联
2.1.5.10. 从Timing Analyzer运行Design Assistant
2.1.5.11. 在其他工具中定位时序路径
2.2.1. 建议的初始SDC约束
2.2.2. SDC文件优先级
2.2.3. 迭代约束修改(Iterative Constraint Modification)
2.2.4. 使用实体绑定的SDC文件(Using Entity-bound SDC Files)
2.2.5. 创建时钟和时钟约束
2.2.6. 创建I/O约束
2.2.7. 创建延迟和偏移约束(Creating Delay and Skew Constraints)
2.2.8. 创建时序异常(Creating Timing Exceptions)
2.2.9. 使用Fitter过约束(Using Fitter Overconstraints)
2.2.10. 示例电路和SDC文件
2.2.5.4. Deriving PLL Clocks
Derive PLL Clocks (derive_pll_clocks)约束自动对设计中的所有PLL的每个输出创建时钟。derive_pll_clocks检测当前的PLL设置,并通过调用create_generated_clock命令自动在每个PLL的输出上创建生成的时钟。
注: 只有 Intel® Arria® 10和 Intel® Cyclone® 10 GX器件支持Derive PLL Clocks (derive_pll_clocks)约束。对于所有其他支持的器件,Timing Analyzer自动从绑定到相关IP的约束中获取PLL时钟。
对PLL输入时钟端口创建基本时钟
如果您的设计包含收发器,LVDS发送器或LVDS接收器,那么要使用derive_pll_clocks约束此逻辑,并对这些模块创建时序异常。
create_clock -period 10.0 -name fpga_sys_clk [get_ports fpga_sys_clk] \ derive_pll_clocks
在create_clock命令之后,将derive_pll_clocks命令包含在.sdc文件中。每次Timing Analyzer读取.sdc文件时,都会对每个PLL输出时钟管脚创建相应的生成时钟。如果在运行derive_pll_clocks之前PLL输出上存在时钟,那么预先存在的时钟优先,并且不对该PLL输出创建自动生成的时钟。
下面显示了一个包含register-to-register路径的简单PLL设计:
图 67. 简单PLL设计
当使用derive_pll_clocks命令约束PLL时,Timing Analyzer会生成类似以下示例的消息。
derive_pll_clocks命令消息
Info: Info: Deriving PLL Clocks: Info: create_generated_clock -source pll_inst|altpll_component|pll|inclk[0] -divide_by 2 -name pll_inst|altpll_component|pll|clk[0] pll_inst|altpll_component|pll|clk[0] Info:
PLL的输入时钟是节点pll_inst|altpll_component|pll|inclk[0],此节点是-source选项。PLL的输出时钟的名称是PLL输出时钟节点pll_inst|altpll_component|pll|clk[0]。
如果PLL处于时钟切换模式,那么对PLL的输出时钟生成多个时钟;一个用于主输入时钟(primary input clock)(例如,inclk [0]),一个用于辅助输入时钟(secondary input clock)(例如,inclk [1])。由于主输出时钟和辅助输出时钟不同时处于活动状态,因此要对它们创建专用时钟组。