FPGA原理与结构——时钟资源

这篇具有很好参考价值的文章主要介绍了FPGA原理与结构——时钟资源。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

系列文章目录:FPGA原理与结构(0)——目录与传送门

一、时钟概述

1、时钟

        时钟,即clock信号,是由晶体经过激发产生的振荡电路。模拟端通过各种技术(PLL,DPLL)产生规律、周期性变化的信号给数字端,数字端使用该信号的边沿进行过赋值(procedural assignment)操作。

2、时钟结构概述

        7系列FPGA时钟资源通过专门的全局和区域I/O和时钟资源来管理复杂和简单的时钟需求。时钟管理块(CMT)提供时钟频率合成、去倾斜和抖动滤波功能。在设计时钟功能时,不建议使用非时钟资源。

        (1)全局时钟树允许同步模块时钟跨越整个FPGA器件。

        (2)I/O时钟和区域时钟树允许最多为三个垂直相邻的时钟区域提供时钟。

        (3)每个CMT包含一个混合模式时钟管理器(MMCM)和一个锁相环(PLL),位于I/O列旁边的CMT列中。

        为了提供时钟,每个7系列器件被划分为时钟域。

        (1)时钟域的数量随器件大小而变化,从最小器件的1个时钟域到最大器件中的24个时钟域。
        (2)一个时钟域包括50个CLB和一个I/O bank(50个I/O)的区域中的所有同步模块(例如:CLB、I/O、串行收发器、DSP、块RAM、CMT),在它的中心有一个水平时钟行(HROW)。
        (3)每个时钟区域从HROW向上和向下跨越25个CLB,并水平跨越器件的每一侧。

3、时钟布线资源概述

        每个I/O bank包含支持时钟的输入引脚,可以将用户时钟带到7系列FPGA时钟布线资源上。与专用时钟缓冲器一起,时钟输入管脚将用户时钟引入到:

        (1)在同一设备上/下部分的全局时钟线

        (2)相同I/O Bank和垂直相邻的I/O Bank的I/O时钟线

        (3)相同时钟区域和垂直相邻的时钟区域的区域时钟线

        (4)同一时钟区域内的和有限制的情况下的垂直相邻的时钟区域的CMT

        其实就是说I/O bank具有输入引脚,支持把用户的时钟引到全局时钟线,I/O时钟线,区域时钟线,CMT上。

3.1 全局时钟缓冲器

        每个7系列器件有32条全局时钟线,可以对整个器件中的所有时序资源进行时钟控制并提供控制信号。全局时钟缓冲器(BUFGCTRL,在本用户指南中被简化为BUFG)驱动全局时钟线,而且必须用于访问全局时钟线。每个时钟区域可以使用时钟区域中的12条水平时钟线来支持多达12条这样的全局时钟线。

        全局时钟缓冲器(BUFG):

        (1)可用作一个时钟使能电路,以使能或禁用跨越多个时钟区域的时钟

        (2)可用作glitch-free multiplexer:

                        在两个时钟源之间选择

                        从故障时钟源切换

        (3)通常由CMT驱动,用于:

                        调整相对于另一个时钟的时钟延迟

                        消除时钟分布延迟

3.2 水平时钟缓冲器       

        水平时钟缓冲器BUFH/BUFHCE)允许通过水平时钟行访问单个时钟域中的全局时钟线。它也可以作为时钟使能电路(BUFHCE)独立地使能或禁用单个时钟域的时钟。使用每个时钟域中的12条水平时钟线可以支持多达12个时钟。

3.3 区域时钟数和I/O时钟树

        每个7系列FPGA都有区域时钟树和I/O时钟树,它们可以为一个时钟区域内所有时序资源提供时钟。每个器件还具有多时钟域缓冲器(BUFMR),允许区域和I/O时钟跨越最多三个垂直相邻的时钟区域。

        (1)I/O时钟缓冲器(BUFIO)驱动I/O时钟树,提供对同一I/O bank中所有时序I/O资源的访问。
        (2)区域时钟缓冲器(BUFR)驱动区域时钟树,该树驱动同一时钟区域中的所有时钟目的地,并可编程输入时钟频率。
        (3)紧邻IOB中的可编程序列化/反序列化器(请参阅UG471 7系列FPGA SelectIO Resources用户指南中的Advanced SelectIO Logic Resources一章),BUFIO和BUFR时钟缓冲区允许源同步系统跨时钟域,而无需使用额外的逻辑资源。
        (4)当与相关的BUFR或BUFIO一起使用时,可以使用多时钟区域缓冲器(BUFMR)驱动相邻时钟区域和I/O时钟树。
        (5)在一个时钟区域或I/O bank中最多可支持四个唯一的I/O时钟和四个唯一的区域时钟。

        高性能时钟路由将CMT的某些输出以非常低的抖动、最小的占空比失真的连接到I/O上。

二、CMT概述(CMT:时钟管理模块)

        每个7系类FPGA包含有高达24个CMT资源,每个CMT有一个MMCM和一个PLL组成。MMCMs和PLL用作频率合成器,用于非常宽的频率范围,用作外部或内部时钟的抖动滤波器,以及低偏移时钟。PLL包含MMCM功能的一个子集。7系列FPGA时钟输入连接允许多个资源向MMCM和PLL提供参考时钟。

        7系列FPGA MMCMs具有任意方向的无限精细相移能力,可用于动态相移模式。MMCMs在反馈路径或一个输出路径中也有一个小数计数器,使得频率合成能力能够进一步细化。

        LogiCORE™ IP时钟向导可用于帮助利用MMCMs和PLL在7系列FPGA设计中创建时钟网络。图形用户界面用于采集时钟网络参数。计时向导选择适当的CMT资源,并以最佳方式配置CMT资源。

三、时钟缓冲,管理,布线

        图1是7系列FPGA时钟结构的高级视图。垂直的时钟中心线(时钟主干道)(图中①)把器件划分成相邻的两个左右两个区域,水平的时钟中心线(图中②)把器件分成顶部和底部两侧。时钟主干中的资源被镜像到水平相邻区域的两侧,从而将某些时钟资源扩展到水平相邻区域。顶部和底部(③)分隔两组全局时钟缓冲器(BUFGs),并对它们的连接方式施加了一些限制。但是,BUFGs不属于时钟区域,可以到达器件上的任何时钟点。所有水平时钟资源都包含在时钟区域水平时钟行(HROW)(④)的中心,而垂直的、非区域的时钟资源包含在时钟主干或CMT主干中(图中⑤)。

FPGA原理与结构——时钟资源,FPGA原理与结构,fpga开发,fpga,硬件架构
 

        一个时钟域总是包含每列50个CLB,10块36Kb的BRAM(除非其中的5个BRAM被PCI-E取代),20个DSP Slice和12个BUFH。一个时钟域包含一个CMT(PLL/ MMCM),一个50个 I/O的 bank,一个由四个串行收发器组成的GT Quad,以及一个块RAM列中的PCIe半列。

        图二是一个时钟域内可用时钟资源及其基本连接的高层次概述。全局时钟缓冲区可以通过HROW驱动到每个区域,即使其物理空间上不属于那里。水平时钟缓冲区(BUFH)通过HROW驱动到该区域内的每个时钟点。BUFG和BUFH在HROW中共享布线通道。I/O缓冲区(BUFIO)和区域时钟缓冲区(BUFR)位于I/O存储组内。BUFIO只驱动I/O时钟资源,而BUFR则驱动I/O资源和逻辑资源。BUFMR支持BUFIOs和BUFR的多区域链接。支持时钟的输入将外部时钟连接到设备上的时钟资源。某些资源可以通过CMT主干连接到上面和下面的区域。

FPGA原理与结构——时钟资源,FPGA原理与结构,fpga开发,fpga,硬件架构

         图3显示了设备右侧单个时钟区域的更详细视图:

FPGA原理与结构——时钟资源,FPGA原理与结构,fpga开发,fpga,硬件架构

图4显示了更详细的全局BUFG和区域BUFH/CMT/CC引脚连接以及一个区域内可用资源的数量(此处显示右侧区域)。

FPGA原理与结构——时钟资源,FPGA原理与结构,fpga开发,fpga,硬件架构

       4个时钟输入引脚中的任何一个都可以驱动CMT中的的PLL/MMCM和BUFH。BUFG显示在该区域中,但在物理空间上可以位于时钟主干道中的其他物理位置。BUFG和BUFH共享HROW中的12个布线轨道,可以驱动该区域内的所有时钟点。BUFG也可以驱动BUFH(图1-4中没有显示)。这允许在其他全局时钟分布上单独启用时钟(CE)。一个GT Quad有10条专用路径来驱动CMT和时钟主干道中的时钟缓冲器。位于I/O bank中的BUFRs有四个走线驱动逻辑、CMT和BUFG中的时钟点。CMT可以使用CMT主干网驱动相邻区域中的其他CMT,但有局限性。类似地,时钟输入管脚可以在相同的限制下驱动相邻区域的CMT。具有支持时钟的引脚可以驱动BUFG在设备相同的顶部/底部的任何位置。在CMT主干道中有四个通道支持垂直区域之间的连接。来自一个区域的时钟源可以驱动其自身区域内的时钟缓冲区资源,也可以驱动水平相邻区域内的时钟缓冲区资源。CMT、支持时钟引脚和串行收发器可以通过BUFH将时钟驱动到水平相邻区域.也可以连接到设备相同的顶部/底部的BUFG。

        逻辑互连驱动BUFG和BUFH的CE引脚。逻辑互连也可以将时钟驱动到相同的缓冲区,但必须小心,因为时间是不可预测的。

        图5显示了BUFR/BUFMR/BUFIO时钟区域详细信息:

FPGA原理与结构——时钟资源,FPGA原理与结构,fpga开发,fpga,硬件架构

         每个/O BANK包含4个BUFIO和4个BUFR。每个时钟缓冲器可以被一个特定的具有支持时钟管脚对的输入时钟驱动,也可以由MMCM的特定输出时钟直接驱动。两个支持时钟的输入管脚对,称为MRCCs,支持多区域时钟方案。一个MRCC管脚对可以驱动一个特定的BUFMR,而该BUFMR又可以驱动相同和相邻区域中的BUFIOs和BUFRs,从而促进多区域/bank接口。GT Quad也可以驱动BUFMRs。MMCM <3:0>的输出到BUFR和BUFIO有专用的高性能差分路径。这个特性也被称为高性能时钟(HPC)。

四、总结

        Xilinx FPGA时钟包括全局时钟资源、区域时钟资源和I/O时钟资源。

        全局时钟:全局时钟是为所有时钟输入设计的专用互连网络,可以覆盖FPGA中的各种资源。通过使用专用时钟缓冲(BUFG)和驱动结构,确保了整个芯片的任意一个触发器的电延时是等长的,并且全局时钟网络可提供低延时和低抖动的时钟,可应用于时钟、快速信号和高扇出信号的布线。全局时钟资源是一种精心设计的布线资源,路线很长且扇出系数很大,一般使用全铜层工艺实现。全局时钟设计采用了专用时钟缓冲与驱动结构,使得全局时钟到达芯片内部所有资源(包括CLB、I/O单元、Block RAM和DSP核等)的时延和抖动都最小。全局时钟网络到FPGA内部的各种资源的采样时钟同时到达,使得信号的时序计算和分析较容易,不会产生不稳定的情况。通常来说,从 FPGA 的任意 IO 引脚输入的普通信号都会先经过一个普通的IO 输入缓冲,当从 FPGA 的专用时钟 IO 引脚输入的时钟信号不仅会经过一个普通的 IO 输入缓冲,紧接着还会经过一个全局低歪斜缓冲资源(全局缓冲),它用于增加时钟的驱动能力,降低时钟歪斜,但是同时会引入10ns 的延时,这对于IO 的时序约束是及其不利的,所以经过全局缓冲后的时钟即使不需要进行分频/倍频/相移等功能时,也要经过一个 PLL。因为 PLL 的普通反馈模式就可以补偿由输入 IO 缓冲和全局缓冲带来的延时,从而降低时钟从专用时钟 IO 引脚到达目的寄存器的延时。这种经过全局缓冲的时钟也不需要额外的时序约束。 需要强调的是,如果外部时钟进入 FPGA 之后没有经过全局缓冲,那么极有可能会导致时钟歪斜过大,从而导致保持时间违例。

        区域时钟:区域时钟是驱动时钟区域内所有资源的时钟网络,对于该时钟区域内部的资源,区域时钟具有更好的时钟性能,尤其是在基于源同步接口设计中使用区域时钟网络更加有效。
        I/O时钟:I/O时钟是在Virtex-5系列后的FPGA中定义的时钟资源,其高速性能主要用于局部化的I/O串行器/解串器的电路设计,并且可以应用于时钟网络的源同步设计。
文章来源地址https://www.toymoban.com/news/detail-656176.html

到了这里,关于FPGA原理与结构——时钟资源的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 从底层结构开始学习FPGA(0)----FPGA的硬件架构层次(BEL Site Tile FSR SLR Device)

    《从底层结构开始学习FPGA》目录与传送门 Xilinx的FPGA,从硬件架构的角度可以划分为6个层次,从底层到顶层依次是: BEL(最底层单元) Site Tile FSR SLR Device(FPGA芯片) 接下来我们从最底层开始依次了解下各个层级。 BEL(Basic Element of Logic),即基本逻辑元素,是FPGA的最底层

    2024年03月20日
    浏览(43)
  • FPGA时钟资源详解(3)——全局时钟资源

     FPGA时钟系列文章总览: FPGA原理与结构(14)——时钟资源 https://ztzhang.blog.csdn.net/article/details/132307564         全局时钟是 FPGA 中的一种专用互连网络,旨在将时钟信号分配到 FPGA 内各种资源的时钟输入处。这种设计考虑了时钟信号在整个芯片上的传播,确保了低偏斜(

    2024年04月27日
    浏览(40)
  • FPGA时钟资源详解(4)——区域时钟资源

     FPGA时钟系列文章总览: FPGA原理与结构(14)——时钟资源 https://ztzhang.blog.csdn.net/article/details/132307564 目录 一、概述 二、Clock-Capable I/O 三、I/O 时钟缓冲器 —— BUFIO 3.1 I/O 时钟缓冲器 3.2 BUFIO原语 四、区域时钟缓冲器——BUFR  4.1 区域时钟缓冲器 4.2 BUFR原语 五、区域时钟网

    2024年04月26日
    浏览(40)
  • FPGA的时钟资源

    目录 简介 Clock Region详解 MRCC和SRCC的区别  BUFGs 时钟资源总结 7系列FPGA的时钟结构图: Clock Region:时钟区域,下图中有6个时钟区域,用不同的颜色加以区分出来 Clock Backbone:从名字也能看出来,这个一个纵向贯穿整个FPGA的时钟资源,把FPGA的clock region分成了两个部分,所有的

    2024年04月12日
    浏览(38)
  • 基于 VPX 总线的工件台运动控制系统研究与开发-DSP+FPGA硬件架构(一)

    作为光刻机核心单元之一,超精密工件台主要负责实现快速扫描、上下片、精密定位、调平调焦等功能。目前,较为成熟的方案大多采用 VME 并行总线架构来建立超精密工件台控制系统,由于随着系统性能要求的提升,VME 总线以及相应的处理器已无法满足需求,所以必须设计

    2024年02月03日
    浏览(43)
  • xilinx 7系列FPGA时钟布线资源

    7系列FPGA拥有多种时钟路由资源,以支持各种时钟方案和需求,包括高扇出、短传播延迟以及极低的偏斜。为了最佳地利用时钟路由资源,需要了解如何将用户时钟从PCB传递到FPGA,确定哪种时钟路由资源最优,然后通过利用适当的I/O和时钟缓冲器来访问这些时钟路由资源。

    2024年04月22日
    浏览(57)
  • 几种FPGA时钟BUF资源的区别:

    目前,已知的FPGA内部的buf资源分为:          BUFG:直接把时钟信号路由到全局时钟树,可以全芯片使用,驱动能力强,但时钟质量略差,同时资源有限。(优先使用)          BUFH:把时钟信号路由到本时钟域和 左右 相邻两个时钟域,驱动能力仅次于BUFG,但时钟质

    2024年02月08日
    浏览(31)
  • Xilinx 7系列FPGA局部时钟资源

    局部时钟网络是玩去哪独立于全局时钟网络的。与全局时钟不同,局部时钟信号(BUFR)的覆盖范围仅限于一个时钟区域。一个I/O时钟信号驱动单个时钟区域。这些网络对于源同步接口设计特别有用。在7系列器件中,I/O bank与局部时钟域的大小相同。 在7系列器件中,局部时钟

    2024年04月29日
    浏览(52)
  • FPGA时钟资源与设计方法——Xilinx(Vivado)

    1.时钟资源包括:时钟布线、时钟缓冲器(BUFGBUFRBUFIO)、时钟管理器(MMCM/PLL)。 2.时钟类型有三种:全局时钟,可以驱动整个内核上的同步逻辑;局部时钟,可以驱动特定和相邻区域的逻辑;IO时钟,可以驱动某个IO的特定逻辑。 3.混合模式时钟管理器(MMCM)和数字时钟管理

    2024年02月22日
    浏览(53)
  • Xilinx FPGA器件中时钟资源的说明以及使用 --ibufg ibufgds

    xilinx 时钟资源分为两种:全局时钟和第二全局时钟。 一、全局时钟资源 Xilinx 全局时钟采用全铜工艺实现,并设计了专用时钟缓冲与驱动结构,可以到达芯片内部任何一个逻辑单元,包括CLB、I/O引脚、内嵌RAM、硬核乘法器等,而且时延和抖动都很小。对FPGA设计而言,全局时

    2023年04月09日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包