FPGA 大型设计中推荐使用同步时序电路,同步时序电路基于时钟触发沿设计,对时钟的周期、占空比、延时和抖动有更高的要求。为满足时序的要求,一般采用全局时钟资源驱动设计的主时钟,FPGA 的主时钟一般使用全铜层工艺实现,并设计了专用时钟缓冲与驱动结构。
1 缓冲和驱动#
1.1 缓冲#
输入输出缓冲,主要用于片外输入时钟或者片外差分输入的信号。
差分信号和差分时钟进入片内后如果不经过 IBUFGDS、IBUFDS 缓冲就无法直接处理
1.2 驱动#
当信号扇出过大时可以通过加 BUFG 增加信号稳定性
过一次 BUFG 有 10ns 左右的延时,但是通过 BUFG 后输出到片上所有单元的延时都可以忽略不记
2 Buffer 的类别和作用#
2.1 BUFG#
BUFG 是一个高扇出缓冲器,将信号连接到全局布线资源上,使得信号的延时和抖动最小
通常用于时钟网络以及其他高扇出网络,比如复位和使能信号
2.2 BUFGCE#
BUFGCE 具有单门控输入的全局时钟缓冲器,CE 高电平有效
当 CE 为低电平时 O 端口输出 0
2.3 BUFH#
BUFH 原语允许直接访问 BUFG 的时钟区域入口,允许访问全局时钟网络中未使用的部分,作为高速低偏移的本地路由资源(单时钟区域)
2.4 IBUFDS#
支持低压差分信号输入的缓冲器,有两个输入的端口,一个为主端口一个为从端口,输入的信号相位相反
2.5 IBUFDS_GTE2#
7 系列器件中的 Gbit 收发器输入缓冲,REFCLK 应连接到串行收发器的专用参考时钟输入引脚
2.6 OBUFDS#
差分信号输出缓冲器