Xilinx 7系列时钟篇(UG472)----时钟简介

Xilinx 7系列时钟篇(UG472)

  • 1.0 时钟结构概述
    • 1.1名词解释
    • 1.2 全局时钟
    • 1.3 局部时钟和I/O时钟
    • 1.4 CMT概述
  • 2.0 时钟区域
    • 时钟引脚连接

1.0 时钟结构概述

7系列FPGA时钟资源分为:
全局时钟,局部时钟和I/O时钟
在为时钟功能设计时,不推荐使用非时钟资源,例如本地路由。

•设备左右两侧的I/O列包含时钟输入(时钟输入)引脚,将用户时钟带入时钟资源。
•全局时钟线允许跨设备同步元素的计时,它位于同一设备的上下半部。
•I/O和局部时钟允许最多三个垂直相邻时钟区域的时钟。
•CMT位于I/O列旁边的CMT列中,每个CMT Column包含一个混合模式时钟管理器(MMCM)和一个锁相环(PLL)。
•每个7系列设备被分成8-24个时钟区域(clock region)。
•时钟区域包括50个CLB和1个I/O bank (50 I/Os)区域内的所有同步元素(CLB、I/O、GT、DSP、block RAM、CMT等),其中心为水平时钟行(HROW)。
•每个时钟区域从HROW向上跨越25个clb,向下跨越25个clb,水平横跨设备的每一侧。

1.1名词解释

1,Horizontal Center:FPGA被Horizontal Center分成上下两个部分,每个部分包含16个BUFG。
2,Clock Backbone:全局时钟线的主干道,将FPGA分成了左右两部分,所有的全局时钟布线均要从此经过。
3,HROW:水平时钟线,从水平方向贯穿每个时钟区域的中心区域,将时钟区域分成上下完全一致的两部分。全局时钟线进入每个时钟区域的逻辑资源时,必须经过水平时钟线。
4,I/O Column:外部信号/时钟输入管脚。
5,CMT Backbone:对于相邻时钟区域的时钟布线,可以不使用珍贵的全局时钟网络,而使用每个时钟区域都包含的CMT Backbone通道。
6,GT Column:内含高速串行收发器。
每个时钟区域既可单独工作又可通过全局时钟Clock BackBone统一工作,
同时水平相邻的时钟区域又可通过HROW来统一工作,
上下相邻的时钟区域又可通过CMT Backbone统一工作。
Xilinx 7系列时钟篇(UG472)----时钟简介_第1张图片
图1-1是7系列fpga时钟架构的高级视图。垂直时钟中心线(时钟主干)将设备划分为相邻的左右区域,水平中心线将设备划分为上下两侧。
时钟主干中的资源被镜像到水平相邻区域的两侧,从而将一定的时钟资源扩展到水平相邻区域。顶部和底部分隔分隔了两组全局时钟缓冲区(BUFGs),并对如何连接它们施加了一些限制。但是,BUFGs不属于时钟区域,可以到达设备上的任何时钟点。所有水平时钟资源都包含在时钟区域的水平时钟行(HROW)的中心,而垂直的非区域时钟资源则包含在时钟主干或CMT主干中。

1.2 全局时钟

每个7系列设备有32条全局时钟线,可以对整个设备中的所有顺序资源进行时钟并提供控制信号。
全局时钟缓冲区(BUFG)驱动全局时钟线,必须用于访问全局时钟线。
使用时钟区域中的12条水平时钟线(HROW),每个时钟区域最多可以支持其中12条全局时钟线。

全局时钟缓冲器:
•可以用作时钟启用电路,启用或禁用跨越多个时钟区域的时钟
•可作为一个无故障的多路复用器:

  1. 选择两个时钟源
  2. 远离失败的时钟源

•经常由CMT驱动:

  1. 消除时钟分配延迟
  2. 调整时钟相对于另一个时钟的延迟水平时钟缓冲区

(BUFH/BUFHCE)允许通过水平时钟行访问单个时钟区域中的全局时钟行。
它也可以用作时钟启动电路(BUFHCE),以独立地启动或禁用跨单个时钟区域的时钟。

1.3 局部时钟和I/O时钟

•I/O时钟缓冲区(BUFIO)驱动I/O时钟,提供对同一I/O银行中所有顺序I/O资源的时钟访问。
•局部时钟缓冲区(BUFR)驱动局部时钟,该区域时钟树驱动同一时钟区域内的所有时钟目的地,并且可以通过编程来划分传入的时钟速率。
•结合IOB中的可编程序列化器/反序列化器(参见UG471, 7系列FPGAs SelectIO Resources用户指南中的“高级选择逻辑资源”章节),BUFIO和BUFR时钟缓冲区允许源同步系统跨时钟域,而无需使用额外的逻辑资源。
•当与相关的BUFR或BUFIO一起使用时,可以使用多时钟区域缓冲区(BUFMR)驱动相邻时钟区域和I/O时钟树以及I/O bank。
•一个时钟区域或I/O bank最多可以支持4个独立的I/O时钟和4个独立的局部时钟。

1.4 CMT概述

每个7系列FPGA最多有24个cmt,每个cmt由一个MMCM和一个锁相环组成。MMCMs和锁相环可作为广泛频率的频率合成器,可作为外部或内部时钟和deskew时钟的抖动滤波器。

  1. 锁相环是MMCM的子集。
  2. 7系列FPGA时钟输入连接性允许多个资源为MMCM和锁相环提供参考时钟。
  3. 7系列FPGAs MMCMs具有双向无限精细移相能力,可用于动态移相模式。
  4. MMCMs在反馈路径或一个输出路径中都有一个分数计数器,从而支持频率合成功能的进一步粒度。
  5. LogiCORE IP时钟向导可以帮助使用MMCMs和PLLs在7系列FPGA设计中创建时钟网络。
  6. GUI接口用于收集时钟网络参数。时钟向导选择适当的CMT资源,并优化配置CMT资源和相关的时钟路由资源。

2.0 时钟区域

一个时钟区域总是包含每列50个clb、每列10个36K块ram(除非5个36K块被PCI块替换)、每列20个DSP片和12个BUFHs。
一个时钟区域包含(如果适用的话)一个CMT (PLL/MMCM),一个50 I/Os的银行,一个由4个GTs组成的GT quad,以及一个Block RAM列中PCIe的半列。
图1-2是时钟区域中可用时钟资源及其基本连接的高级概览。

  1. BUFG即为全局时钟缓冲器,从图上看到,其输出时钟通过Clock Backbone可以到达任意一个时钟区域,而且BUFG通过HROW到达时钟区域内部的每个逻辑单元。全局时钟缓冲器可以通过HROW驱动到每个区域,即使没有物理位置。
  2. 水平时钟缓冲器(BUFH)驱动器相当于一个功能受限的BUFG,其输出时钟只能通过HROW在左右相邻的时钟区域内工作。
  3. BUFR即为区域时钟缓冲器,其输出只能作用在一个时钟区域,相当于BUFH的阉割版。
  4. BUFGs和BUFHs在HROW中共享路由轨迹。
  5. I/O缓冲器(BUFIO)和局部时钟缓冲器(BUFR)位于I/O Bank内。BUFIO只驱动I/O时钟资源,而BUFR驱动I/O资源和fabric资源。
  6. BUFIO即为IO时钟缓冲器,其输出时钟只能作用在一个时钟区域的IO寄存器处,无法在FPGA内部逻辑使用。
  7. BUFMR即为多区域时钟缓冲器,其输出作用在本时钟区域,还可以通过CMT Backbone作用在上下相邻两个时钟区域。BUFMR支持多区域链接BUFIOs和BUFR。
  8. CC即为外部时钟输入管脚,其管脚在内部可以连接到BUFG、BUFR、BUFIO、BUFH、MMCM、PLL等,看具体的应用具体连接。
  9. MMCM、PLL即时钟管理模块,用来消除时钟的延迟、抖动以及产生各种不同频率的时钟。

Xilinx 7系列时钟篇(UG472)----时钟简介_第2张图片

下图所示为更为细致的CC管脚连接图。一个时钟区域有4对CC管脚,其中2对SRCC,2对MRCC。SRCC作为区域时钟使用时,只能连接本时钟区域的BUFR和BUFIO。而MRCC则还可以通过BUFMR作用在上下相邻的时钟区域。Xilinx 7系列时钟篇(UG472)----时钟简介_第3张图片

时钟引脚连接

图1-4是全球BUFG和区域BUFH/ CMT/CC pin连接的详细示意图,以及区域内可用的资源数量(右侧区域如图所示)。
Xilinx 7系列时钟篇(UG472)----时钟简介_第4张图片

  1. C:被外部差分/单端时钟驱动;可以驱动本时钟区域的4个BUFIO、4个BUFR、2个BUFMR、本时钟区域的CMT以及上下相邻时钟区域的CMT、16个BUFG、本时钟区域以及水平相邻时钟区域的BUFH。

  2. SRCC:和MRCC类似,但只作用在本时钟区域;其被外部差分/单端时钟驱动;可以驱动本时钟区域的4个BUFIO、4个BUFR、本时钟区域的CMT以及上下相邻时钟区域的CMT、16个BUFG、本时钟区域以及水平相邻时钟区域的BUFH。

  3. BUFIO:在相同的时钟区域内,其可以被MRCC、SRCC、MMCM的CLKOUT0~3、CLKFBOUT驱动,还可以被本时钟区域以及上下相邻区域的BUFMR驱动;其只能驱动本时钟区域内的ILOGIC、OLOGIC。

  4. BUFR:在相同时钟区域内,其可以被MRCC、SRCC、MMCM的CLKOUT0~3、CLKFBOUT驱动,还可以被本时钟区域以及上下相邻区域的BUFMR驱动;其能驱动本时钟区域内的CMT、本时钟区域内所有逻辑单元、以及16个BUFG(不推荐)。

  5. BUFMR:其只能被本时钟区域的MRCC以及某些GT时钟驱动;其能驱动本时钟区域以及上下相邻区域的BUFIO、BUFR。

  6. BUFG:其能被每个时钟区域内的SRCC、MRCC、CMT、GT、BUFR(不推荐)、其他BUFG;其可以驱动CMT、GT时钟、其他BUFG、FPGA内任何逻辑单元、BUFH。

  7. BUFH:其能被本时钟区域以及左右相邻时钟区域内的SRCC、MRCC、CMT、BUFG、GT时钟驱动;其能驱动本时钟区域的CMT、GT时钟、以及本时钟区域内的所有逻辑单元。

  8. GT时钟之RXUSERCLK、TXUSERCLK:其能被任何BUFG、以及本时钟区域内的BUFH驱动;其只能驱动专用的串行收发器模块。

  9. GT时钟之RXOUTCLK、TXOUTCLK:其被专用的串行收发器模块驱动;其能驱动BUFG、相同时钟区域内的CMT、BUFMR、BUFH以及相邻时钟区域内的BUFH。

  10. MGTREFCLK:其被外部MGT时钟源驱动;其能驱动BUFG、相同时钟区域内的CMT、BUFMR、BUFH以及相邻时钟区域内的BUFH。

  11. CMT(PLL&MMCM):其能被BUFG、SRCC(本时钟区域以及上下相邻时钟区域)、MRCC(本时钟区域以及上下相邻时钟区域)、GT(本时钟区域)、BUFR(本时钟区域或者上下相邻时钟区域加上BUFMR)、BUFMR、MMCM/PLL.CLKOUT0~3驱动;其能驱动BUFG、相同时钟区域内的BUFIO、BUFR、BUFH以及水平相邻的时钟区域的BUFH、MMCM/PLL。

图1-5显示了I/O时钟资源和连接的更详细的图。

Xilinx 7系列时钟篇(UG472)----时钟简介_第5张图片
每个I/O Bank包含四个BUFIOs和四个BUFRs。每个时钟缓冲器可以由特定的CC输入时钟针对驱动,也可以由MMCM的特定输出时钟直接驱动。CC输入pin对中的两个称为MRCCs,支持多区域时钟方案。MRCC pin对可以驱动特定的BUFMR,而该BUFMR又可以在相同和相邻的区域驱动BUFIOs和BUFRs,从而促进多区域/银行接口。同样,GT四轴发动机也可以驱动BUFMRs。MMCM<3:0>输出有一个专用的高性能差分路径到BUFRs和BUFIOs。这个特性在本文中也称为高性能时钟(HPC)。

每个7系列FPGA至少有一个完整的I/O列在设备的左边缘。GT可以是7系列FPGAs (GTP、GTX或GTH)支持的任何一个串行收发器。

GTs的设备要么混合列GTs和I / O设备的右边缘(一些Kintex-7和Artix-7设备)或者一个完整的列GTs的右边缘(一些Kintex-7和Virtex-7设备)和一个完整的I / O列右边的设备。其他Virtex-7设备在左右两侧都有完整的GT列,在左右两侧都有完整的I/O列。两个较大的Artix设备在时钟列旁边的顶部和底部都有GTP收发器。
==因此,并非7系列设备中的所有时钟区域都包含上述图中所示的所有块。==有关各种7系列设备的块级体系结构视图,请参阅UG475、7系列FPGA封装和Pinout规范中的模级库编号概述部分。附录B,每个时钟区域的时钟资源和连接变化有详细的图表显示时钟区域变化的时钟资源和连接。

注意:There are no direct connections from the GTP transceivers to the
CMTs and BUFMRs. When connecting from the GTP transceivers to
a CMT, a BUFH or BUFG is required.

你可能感兴趣的:(FPGA,FPGA,Xilinx7,时钟结构)