创建主时钟
主时钟是指用于为设计定义时序参考的时钟,而时序引擎可利用主时钟获取时序路径要求以及与其它时钟的相位关系。
计算主时钟插入延迟时应从时钟源点 (定义主时钟的驱动器引脚 / 端口位置)开始,一直到时钟扇出所至时序单元的时
钟引脚。
基于这个原因,定义主时钟时很重要的一点是要将主时钟定义在与设计边界相对应的对象上,这样主时钟的延迟以及
间接条件下的偏差,都可以得到精确计算。
典型的主时钟根包括:
•
" 输入端口 "
•
"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
相关推荐
HIZYUAN1 小时前
AG32嵌入式系统如何实现加密与固件升级(一)hhh123987_2 小时前
以太网基础③ARP 协议的原理与 FPGA 实现LabVIEW开发1 天前
LabVIEW与FPGA超声探伤cycf1 天前
FPGA设计中的数据存储FPGA之旅2 天前
FPGA从零到一实现FOC(一)之PWM模块设计XMAIPC_Robot2 天前
基于ARM+FPGA的光栅尺精密位移加速度测试解决方案cycf2 天前
状态机的设计szxinmai主板定制专家2 天前
【精密测量】基于ARM+FPGA的多路光栅信号采集方案千宇宙航3 天前
闲庭信步使用SV搭建图像测试平台:第三十二课——系列结篇语千宇宙航3 天前
闲庭信步使用SV搭建图像测试平台:第三十一课——基于神经网络的手写数字识别