1 概述
常用的与全局时钟资源相关的Xilinx器件原语包括:
- IBUFG
- IBUFGDS、OBUFGDS 和 IBUFDS、OBUFDS
- BUFG
- BUFGP
- BUFGCE
- BUFGMUX
- BUFGDLL
- IBUFDS_GTXE1
- IBUFDS_GTE2
- IBUFDS_GTE3
- OBUFDS_GTE3
- IBUFDS_GTE4
- OBUFDS_GTE4
- DCM
刚开始看到这写源语,免不了好奇这些源语对应的是哪些器件和官方文档?
6系列 7系列和ultrascale系列有什么区别?
如何正确的使用时钟网络?
2 源语简要说明
IBUFG
Single-ended Input Global Clock Buffer
即输入全局缓冲,是与专用全局时钟输入管脚相连接的首级全局缓冲。所有从全局时钟管脚输入的信号必须经过IBUF元,否则在布局布线时会报错。 IBUFG支持AGP、CTT、GTL、GTLP、HSTL、LVCMOS、LVDCI、LVDS、LVPECL、LVTTL、PCI、PCIX和 SSTL等多种格式的IO标准。
IBUFGDS、OBUFGDS
IBUFGDS是专用差分信号输入缓冲器
OBUFGDS是专用差分信号输出缓冲器
对比 IBUFDS、OBUFDS,IBUFGDS、OBUFGDS是对应差分时钟信号
IBUFDS、OBUFDS是差分信号的输入输出全局缓冲
BUFG
全局缓冲,它的输入是IBUFG的输出,BUFG的输出到达FPGA内部的IOB、CLB、选择性块RAM的时钟延迟和抖动最小。
BUFGP
BUFGP相当于IBUG加上BUFG。
BUFGCE
Global Clock Buffer w/ Enable:带有时钟使能端的全局缓冲。它有一个输入I、一个使能端CE和一个输出端O。只有当BUFGCE的使能端CE有效(高电平)时,BUFGCE才有输出。 (带有时钟使能端的BUFG)
BUFGMUX
BUFGMUX是全局时钟选择缓冲,它有I0和I1两个输入,一个控制端S,一个输出端O。当S为低电平时输出时钟为I0,反之为I1。需要指出的是BUFGMUX的应用十分灵活,I0和I1两个输入时钟甚至可以为异步关系。
BUFGDLL
是全局缓冲延迟锁相环,相当于BUFG与DLL的结合。BUFGDLL在早期设计中经常使用,用以完成全局时钟的同步和驱动等功能。随着数字时钟管理单元(DCM)的日益完善,目前BUFGDLL的应用已经逐渐被DCM所取代。
IBUFDS GTXE、GTE1/2/3/4
IBUFDS: reference clock input 6 series GTP FPGAs
IBUFDS_GTXE1: reference clock input 6 series GTX FPGAs
IBUFDS_GTE2: reference clock input 7 series GTP/GTX/GTH FPGAs
IBUFDS_GTE3: reference clock input UltraScale GTH FPGAs
OBUFDS_GTE3: reference clock output UltraScale GTH FPGAs
IBUFDS_GTE4: reference clock input UltraScale+ GTY FPGAs
OBUFDS_GTE4: reference clock output UltraScale+ GTY FPGAs
DCM
数字时钟管理单元,主要完成时钟的同步、移相、分频、倍频和去抖动等。DCM与全局时钟有着密不可分的联系,为了达到最小的延迟和抖动,几乎所有的DCM应用都要使用全局缓冲资源。DCM可以用Xilinx ISE软件中的Architecture Wizard直接生成。
3 器件和GT的速度
Spartan 6™ GTP (3.2Gb/s):功耗和成本优化的收发器,适用于成本敏感型应用
7 系列 GTP (6.6Gb/s):针对消费类和传统串行标准的功耗优化收发器
UltraScale+ GTH (16.3Gb/s):低功耗和高性能,适合最坚固的背板
UltraScale+ GTY (32.75Gb/s):为最快的光学和背板应用提供最大 NRZ 性能;适用于芯片到芯片、芯片到光学器件和 28G 背板的 33G 收发器
UltraScale™ GTH (16.3Gb/s):低功耗和高性能,适合最坚固的背板
UltraScale GTY (30.5Gb/s):光学和背板应用的高性能;适用于芯片到芯片、芯片到光学器件和 28G 背板的 30G 收发器
4 源语对应的器件和官方文档资料
Spartan-6 FPGA GTP Transceivers User Guide (UG386):AMD Adaptive Computing Documentation Portal
参考时钟在软件中使用IBUFDS原语实例化。控制参考时钟的端口和属性没有绑定到每个IBUFDS,而是映射到GTPA1_DUAL
Virtex-6 FPGA GTX Transceivers User Guide (UG366):AMD Adaptive Computing Documentation Portal
参考时钟在软件中使用IBUFDS_GTXE1软件原语实例化。控制参考时钟输入的端口和属性绑定到IBUFDS_GTXE1软件原语。
7 Series FPGAsGTP Transceivers(UG482):AMD Adaptive Computing Documentation Portal
7 Series FPGAs GTX/GTH Transceivers User Guide (UG476):AMD Adaptive Computing Documentation Portal
参考时钟在软件中使用IBUFDS_GTE2软件原语实例化。控制参考时钟输入的端口和属性绑定到IBUFDS_GTE2软件原语。
UltraScale 架构 GTH 收发器用户指南 ( UG576 ) :AMD Adaptive Computing Documentation Portal
参考时钟输入模式结构如图2-1所示。输入在内部终止,每条腿上的4/5 MGTAVCC用于UltraScale fpga,完整的MGTAVCC用于UltraScale+ fpga。参考时钟在软件中实例化,在UltraScale fpga中使用ibufds_gte3软件原语,在UltraScale+ fpga中使用IBUFDS_GTE4软件原语。控制参考时钟输入的端口和属性绑定到ibufds_gte3 /4软件原语。
带OBUFDS_GTE3/4原语的参考时钟输出模式结构如图2-2所示。控制参考时钟输出的端口和属性绑定到UltraScale fpga中的obufds_gte3软件原语和UltraScale+ fpga中的OBUFDS_GTE4软件原语。
UltraScale 架构 GTY 收发器用户指南 ( UG578 ) :AMD Adaptive Computing Documentation Portal
关于Xilinx原语详解——IBUFDS & OBUFDS:
Xilinx原语详解——IBUFDS & OBUFDS - 知乎
bufg和bufgp_vivado中BUFG和BUFGCE使用-CSDN博客