大数跨境
0
0

衍生时钟约束

衍生时钟约束 至芯
2025-12-12
3
衍生时钟约束是 FPGA 时序约束中的关键技术,用于定义由主时钟经分频、倍频、相移等操作生成的衍生时钟属性,核心是向静态时序分析(STA)工具明确衍生时钟与主时钟的关联,确保时序分析的准确性,以下是其详细介绍:

01

核心概念

衍生时钟又称生成时钟,是通过 FPGA 内部的时钟管理单元(MMCM、PLL)或寄存器、组合逻辑等电路,对主时钟进行分频、倍频、相移、改变占空比等变换后得到的新时钟。它并非独立时钟,其周期、相位等时序特性完全依赖于源时钟,而衍生时钟约束就是通过特定命令,将这种依赖关系告知 STA 工具,使其能正确识别该信号为时钟并分析相关时序路径。

02

约束的核心作用

保障时钟资源分配
若不约束,STA 工具会把衍生时钟当作普通数据信号,不会为其分配低偏移的全局时钟资源(如 BUFG),进而导致时钟抖动、偏移增大,严重影响时钟质量。
避免时序分析遗漏
未约束的衍生时钟所驱动的寄存器路径,以及它与其他时钟域的交互路径,会被标记为未约束状态,STA 工具无法对这些路径做时序检查,极易隐藏时序违例问题,最终可能造成芯片工作异常。
确保时序计算精准
约束明确了衍生时钟与主时钟的倍频、分频等关系后,STA 工具才能准确计算出衍生时钟的周期、边沿位置等参数,得出有意义的时序分析结果,为设计优化提供依据。

03

核心约束命令与参数

主流 FPGA 开发工具(如 Vivado)中,常用 creategeneratedclock 命令进行约束,其核心语法及参数如下:
  • -name:为衍生时钟命名,方便后续约束引用
  • -source:指定衍生时钟的源时钟节点,必须是主时钟或其他衍生时钟直接驱动的物理引脚,是约束的核心参数
  • -multiply_by:设置相对于源时钟的倍频系数,系数需大于等于 1
  • -divide_by:设置相对于源时钟的分频系数,系数需大于等于 1
  • -edges:通过主时钟的边沿列表定义衍生时钟波形,适用于复杂相位关系场景
  • (get_pins):指定衍生时钟的物理产生点,如 PLL 输出引脚、寄存器输出引脚等

04

典型约束场景与实例

基础整数分频
若 100MHz 主时钟(周期 10ns)经寄存器二分频生成 50MHz 时钟,约束语句如下:

createclock -period 10.000 -name clk100m (getports clkin)
creategeneratedclock -name clk_50m \
-source (getports clkin) \
-divide_by 2 \
(getpins divreg/Q)

PLL 倍频约束
主时钟 50MHz 输入 PLL 后倍频为 200MHz,约束语句如下:

createclock -period 20.000 -name clk50m (getports clkin)
creategeneratedclock -name clk_200m \
-source (getpins pllinst/CLKIN) \
-multiply_by 4 \
(getpins pllinst/CLKOUT1)

非整数分频约束
100MHz 主时钟经 MMCM 生成 35MHz 非整数分频时钟,可通过分频与倍频系数组合约束:

createclock -period 10.000 -name clk100m (getports sysclk)
creategeneratedclock -name clk_35m \
-source (getpins mmcminst/CLKIN) \
-divideby 20 -multiplyby 7 \
(getpins mmcminst/CLKOUT0)


05

特殊场景处理要点

自动推导时钟补充约束
MMCM、PLL 生成的衍生时钟,工具会自动推导约束,但自动生成的时钟名可能随设计层次变化。此时可手动指定时钟名,避免后续约束引用出错。
高精度约束需求
高速设计中,非整数分频时钟需提高周期精度。例如 35MHz 时钟,建议保留 6 位以上小数,约束语句可通过 TCL 计算实现精确周期约束。
复杂相位约束
当衍生时钟存在相移、占空比改变等情况,可使用 -edges 参数搭配 -edge_shift 参数,精准定义时钟边沿与源时钟的对应关系。
🌻亲爱的读者们,今天的分享就到这里啦!如果今天的内容对你有启发
记得点亮右下角的“❤️”或转发给需要的朋友,让温暖传递的更远!
生活或许没有标准答案,但每一次【分享】和【点赞】,都是我们相遇的印记。你最近有哪些感悟或故事?欢迎留言区聊一聊~~~
你的认可,是我们深夜码字的充电桩🔋
明天见!保持好奇,永远鲜活~
🔍关注我们,不错过每一次相遇图片图片图片
扫码领取免费学习资料~~~
往期精彩部分
NVME的admin指令
NVME的命令仲裁机制
NVME的中断机制
NVME的电源管理
NVME的优势
就业寒冬 拿到5个offer 至芯学生用真本领拿牛offer

【声明】内容源于网络
0
0
至芯
至芯科技关于FPGA信息的交流平台
内容 392
粉丝 0
至芯 至芯科技关于FPGA信息的交流平台
总阅读26
粉丝0
内容392