• 正文
  • 相关推荐
申请入驻 产业图谱

FPGA中时钟之间的关系

05/22 15:15
140
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

欢迎各位朋友关注“郝旭帅电子设计团队”公众号,本公众号会定时更新相关技术类资料、软件等等,感兴趣的朋友可以浏览一下本公众号的其他“模块”,希望各位朋友都能在本公众号获得一些自己想要的“东西”。

本篇主要讨论FPGA中时钟之间的关系

通常我们将这些关系分为相关时钟(同步时钟)和非相关时钟(异步时钟)两大类.

相关时钟 (Related Clocks) —— 也称为同步时钟

核心定义:两个时钟具有可预测的相位关系固定频率比,源头来自同一个时钟根(如同一晶振、同一PLL),且时序可以被静态时序分析(STA)工具准确计算。

1. 同频同相时钟(零偏斜)

关系:频率、相位完全相同,实际上就是同一个时钟经过时钟树到达不同寄存器,偏斜极小且可预测。

例子:同一时钟通过全局缓冲(BUFG)驱动多个负载。

CDC 策略:不需要同步器,正常单周期或多周期路径分析即可。

2. 同频不同相时钟(固定相位差)

关系:频率相同,但相位差恒定且已知(例如 MMCM/PLL 的移相输出)。

例子:CLK0 与 CLK90(相位差 90°)、CLK180。源同步接口中,中心对齐或边沿对齐的时钟与数据也是这种关系。

CDC 策略:可通过调整时钟相位来实现时序收敛,或者用该相位差做源同步捕获,仍属于同步电路范畴,STA 能完全覆盖建立/保持时间。

3. 整数倍时钟

关系:一个时钟是另一个时钟的整数倍(xN)或分数倍(÷N),且相位关系完全锁定。

倍频:CLK2X(200MHz) 与 CLK1X(100MHz)同源,每 2 个快时钟沿严格对应 1 个慢时钟沿。

分频:CLKDIV 由同一 MMCM 产生,相位对齐或固定偏移。

例子:FPGA 内由同一个 PLL 输出的 100MHz 和 200MHz,或逻辑生成的使能信号分频(不推荐,但逻辑分频产生时钟视为生成时钟,与源时钟相关)。

CDC 策略:快时钟域到慢时钟域,只要慢时钟域寄存器的建立/保持满足,可直接使用同步电路;慢到快常配合“使能脉冲”(多周期路径约束)或简单同步器(需保证慢信号足够长)。STA 能分析。

4. 有理数倍时钟(非整数倍但可公约)

关系:频率比为非整数的有理数(如 3:2,5:3),且来自同一锁相环,相位关系由 PLL 锁定,有确定的周期重复模式。

例子:同一个 MMCM 输出 150MHz 和 100MHz(3:2 关系),其最小公倍周期 20ns 内,两个时钟的相对相位序列固定重复。

CDC 策略:多周期路径约束 + 使能信号设计,或者使用异步 FIFO(此时虽相位固定,但为简化设计也可用 FIFO)。严格上讲 STA 可以分析这类路径(需设置多周期、生成时钟等约束),设计中视为相关时钟。

共同特征

来源于同一时钟根(同一个晶振 → 同一个 PLL/MMCM 输出)。

相位差恒定,可被 STA 工具精确计算。

跨域数据传输可用“周期约束+使能”方式或直接处理,不必引入全握手的异步机制(但为了设计简洁,有时也会用异步 FIFO)。

非相关时钟 (Unrelated Clocks) —— 即异步时钟

核心定义:两个时钟的相位关系不可预测,或者相位随时间漂移,无法用 STA 工具对一个域到另一个域的建立/保持进行确定性分析。任何声称的异步时钟,都需要使用 CDC 电路(如双寄存器同步器、握手、异步 FIFO)。

1. 完全异源时钟

关系:来自不同的晶振、不同的外部时钟源,或 FPGA 内部的不同 PLL 使用独立参考源。

例子:一个外部 25MHz 晶振和另一个 27MHz 晶振同时输入 FPGA,经过不同 PLL 后,其相位差完全随机且会由于频率微小差异而连续滑动。

CDC 策略:必须使用双/多级同步器,异步 FIFO,或边沿检测+握手,决不能直接采样对方数据。

2. 同源但异步的时钟

这是一种容易混淆的情况。即使源于同一个晶振,如果满足以下条件,也被视为非相关

经过不同的 PLL/MMCM,且它们之间的初始相位未被明确对齐(例如两个独立的 MMCM 由同一参考时钟驱动,但去歪斜模式不同或复位时间不同,输出相位关系未知)。

同一 PLL 的输出,但时钟经过了组合逻辑、门控时钟等导致相位紊乱(设计中应避免此类时钟)。

非有理数倍频率:即使同源,如果频率之比是无理数(如 100MHz 和 3.579MHz),STA 没有可重复的周期关系,只能当作异步处理。

设计约束强制异步:有时设计师会将已知相位关系的时钟通过 set_clock_groups -asynchronous 声明为异步,主动放弃分析其间路径,以获得时序收敛简化,这时在约束层面视作非相关,但硬件实际上是相关的,需手动确保 CDC 安全。

异步的一个特例

关系:名义频率相同(或非常接近),但实际来源于不同时钟源,频率存在微小差异(如 ±100 ppm),导致相位缓慢持续漂移。

例子以太网恢复时钟与本地时钟,两个独立晶振但都标称 125MHz。

CDC 策略:严格是异步时钟,必须用异步 FIFO,并在 FIFO 中处理因频率差产生的空满标志,通常带弹性缓冲。

本篇内容中有部分资源来源于网络,如有侵权,请联系作者。

相关推荐