大部分时钟通过支持全局时钟的 I/O (GCIO) 管脚进入器件。这些时钟通过时钟缓冲器直接驱动时钟网络,或者由位于 I/O 列附近的时钟管理模块 (CMT) 中的 PLL 或 MMCM 加以变换。
CMT 包含以下时钟资源:
- 时钟生成块
- 2 个 PLL
- 1 个 MMCM
- 全局时钟缓冲器
- 24 个 BUFGCE
- 8 个 BUFGCTRL
- 4 个 BUFGCE_DIV
GT 用户时钟通过 BUFG_GT 缓冲器驱动全局时钟网络。GTH/GTY 列附近的每个时钟区域都包含 24 个 BUFG_GT 缓冲器。
以下是每个 UltraScale 器件时钟缓冲器的汇总信息:
- BUFGCE
最常用的缓冲器是 BUFGCE。它是通用时钟缓冲器,具有等同于 7 系列 BUFHCE 的时钟启用/禁用功能。
- BUFGCE_DIV
可在以下情况下使用 BUFGCE_DIV:需要对时钟进行简单分频时。相比于使用 MMCM 或 PLL 进行简单时钟分频,它更便于使用并且能效更高。只要正确使用,相比于跨时钟域时使用 MMCM 或 PLL,由此产生的时钟域间偏差更小。BUFGCE_DIV 常用于替代 7 系列器件中的 BUFR 功能。但由于 BUFGCE_DIV 可驱动全局时钟网络,因此其功能比 BUFR 组件更强大。
- BUFGCTRL(和 BUFGMUX)
BUFGCTRL 可例化为 BUFGMUX,通常可在以下情况下使用:对 2 个或更多个时钟源进行多路复用以构成单个时钟网络时。就像 BUFGCE 和 BUFGCE_DIV 一样,它可驱动时钟网络用于区域时钟设置或全局时钟设置。
- BUFG_GT
使用由 GT 生成的时钟时,BUFG_GT 时钟缓冲器允许连接至全局时钟网络。大多数情况下,BUFG_GT 用作为区域缓冲器,其负载布局在 1 或 2 个相邻时钟区域内。BUFG_GT 内置动态时钟分频功能,可替代 MMCM 执行时钟速率更改。
您可以使用 Vivado IDE 中的“Clock Utilization”(时钟使用率)报告来以可视化方式分析时钟资源使用率和时钟布线。下图显示了在Device(器件)窗口中叠加的时钟资源使用率(按时钟区域)。如需了解有关此报告的更多信息,请参阅 Vivado Design Suite 用户指南:设计分析与收敛技巧(UG906)。
如需了解有关 BUFGCE、BUFGCE_DIV、和 BUFGCTRL 缓冲器的更多信息,请参阅 UltraScale 架构时钟资源用户指南(UG572)。如需了解有关 BUFG_GT 缓冲器连接和使用详情,请参阅相应的《UltraScale 架构收发器用户指南》: