创建主时钟
主时钟是指用于为设计定义时序参考的时钟,而时序引擎可利用主时钟获取时序路径要求以及与其它时钟的相位关系。
计算主时钟插入延迟时应从时钟源点 (定义主时钟的驱动器引脚 / 端口位置)开始,一直到时钟扇出所至时序单元的时
钟引脚。
基于这个原因,定义主时钟时很重要的一点是要将主时钟定义在与设计边界相对应的对象上,这样主时钟的延迟以及
间接条件下的偏差,都可以得到精确计算。
典型的主时钟根包括:
•
" 输入端口 "
•
"7 系列器件中千兆位收发器输出引脚 "
•
" 某些硬件原语输出引脚 "
输入端口

约束实例:
create_clock -name SysClk -period 10 -waveform {0 5} [get_ports sysclk]
该实例中,波形的占空比设定为 50% 。上面给出了变量 -waveform 的用法,并且只有在定义占空比不是 50% 的时钟
时才有必要使用该变量。对于差分时钟输入缓存,只需在差分对的 P 侧对主时钟进行定义。
7 系列器件中千兆位收发器输出引脚
千兆位收发器输出引脚,例如已恢复的时钟:

约束实例:
create_clock -name txclk -period 6.667 [get_pins gt0/TXOUTCLK]
建议: 对于面向 7 系列器件的设计,赛灵思还建议定义 GT 输入时钟,因为 Vivado 工具能够计算 GT 输出引脚上的预期
时钟,并将这些时钟与用户创建的时钟进行比较。如果时钟不同或者到 GT 的输入时钟丢失,工具会发出方法检查警
告。
注释: 对于面向 UltraScale 器件的设计,赛灵思不建议在 GT 的输出上定义主时钟,因为在定义相关电路板输入时钟
时,将自动导出 GT 时钟。
某些硬件原语输出引脚
某些硬件原语,例如, BSCANE2 的输出引脚不含连接同一原语输入引脚的时序 arc 。

重要提示: 在主时钟传递扇出中不应定义另外一个主时钟,因为这种情况不但不符合任何硬件现实,还会妨碍完整的
时钟插入延迟计算,从而阻碍正确的时序分析。如果发生任何这种情况,必须重新修改并修正约束。
下图给出了一个示例,其中时钟 clk1 在时钟 clk0 的传递扇出中定义。 clk1 从其定义位置 BUFG1 的输出开始覆盖
clk0 。因此, REGA 与 REGB 之间的时序分析就不会准确,因为 clk0 和 clk1 之间存在无效的偏差计算。

vivado 创建主时钟
cckkppll2025-03-26 18:09
相关推荐
daxi1507 小时前
Verilog入门实战——第5讲:Testbench 仿真编写 + 波形查看与分析FPGA的花路11 小时前
UDP协议LCMICRO-1331084774621 小时前
长芯微LPS123完全P2P替代ADP123,高性能、低压差的线性稳压器fei_sun1 天前
面经、笔试(持续更新中)xixixi777771 天前
通信领域的“中国速度”:从5G-A到6G,从地面到星空Nobody331 天前
Verilog always语句详解:从组合逻辑到时序逻辑李嘉图Ricado1 天前
FPGA 时序约束与分析白又白、1 天前
时序优化和上板调试小结Z22ZHaoGGGG1 天前
verilog实现采样电流有效值的计算fei_sun1 天前
牛客Verilog刷题篇