0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA架构中的全局时钟资源介绍

FPGA之家 ? 来源:FPGA技术实战 ? 作者:FPGA技术实战 ? 2021-03-22 10:09 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

引言:本文我们介绍一下全局时钟资源。全局时钟是一个专用的互连网络,专门设计用于到达FPGA中各种资源的所有时钟输入。这些网络被设计成具有低偏移和低占空比失真、低功耗和改进的抖动容限。它们也被设计成支持非常高频率的信号。了解全局时钟的信号路径可以扩展对各种全局时钟资源的理解。全局时钟资源和网络由以下路径和组件组成:

时钟树和网络:GCLK

时钟区域

全局时钟缓冲器

1. 时钟树和网络:GCLK

7系列FPGA时钟树设计用于低偏差和低功耗操作,任何未使用时钟的分支都会被断开。时钟树还可用于驱动逻辑资源,如复位或时钟启用,这主要用于高扇出/负载网络。在7系列FPGA结构中,全局时钟线的引脚访问不限于逻辑资源时钟引脚。全局时钟线可以驱动CLB中除CLK引脚以外的引脚(例如:控制引脚SR和CE)。需要非常快速的信号连接和大负载/扇出的应用程序可以从该架构中获益。

2. 时钟域

7系列器件通过使用时钟区域改善时钟分布。每个时钟区域最多可以有12个全局时钟域。这12个全局时钟可以由单片器件或SLR中的32个全局时钟缓冲器的任意组合驱动。时钟区域的尺寸固定为50个CLB高(50个IOB),跨越die的左侧或右侧。在7系列器件中,时钟主干线将器件分成左侧或右侧。通过固定时钟区域的尺寸,较大的7系列器件可以有更多的时钟区域。7系列FPGA提供1到24个时钟区域。

3. 全局时钟缓冲器

在7系列器件中有多达32个全局时钟缓冲器。CCIO输入可以直接连接到器件同一半的任何全局时钟缓冲器。每个差分时钟管脚对可以连接到PCB上的差分时钟或单端时钟。当用作差分时钟输入时,直接连接来自差分输入管脚对的P侧。当用作单端时钟输入时,必须使用管脚对的P侧,因为直接连接只存在于该管脚上。有关管脚命名约定,请参阅UG475:7系列FPGA封装和引脚输出规范。如果单端时钟连接到差分管脚对的P侧,则N端不能用作另一个单端时钟管脚。但是,它可以用作用户I/O。器件上半部分的CMT只能驱动器件上半部分的BUFG,下半部分的CMT只能驱动下半部分的BUFG。类似地,只有器件的同一半中的BUFG可以用作对器件同一半中的CMT反馈。当CMT列扩展到同时包含GT和I/O列的区域时,千兆收发器(GTs)只能直接连接到MMCMs/PLL。Virtex-7T和Virtex-7XT器件有这些完整的列。Spartan-7、Artix-7、Kintex-7和Zynq-7000器件中的GT和CMT只能使用BUFHs(首选)或BUFGs进行连接。全局时钟缓冲器允许各种时钟/信号源访问全局时钟树和网络。输入到全局时钟缓冲器的可能来源包括:

时钟输入

在器件同一半区域的时钟管理块(CMT)驱动BUFG

相邻全局时钟缓冲器输出(BUFGs)

通用互连

区域时钟缓冲器(BUFRs)

收发器

7系列FPGA时钟输入可以通过时钟主干列中的垂直时钟网络间接地驱动全局时钟缓冲器。32个BUFG被分成两组,每组16个BUFGs,分别位于器件的顶部和底部。直接连接到BUFGs的任何资源(例如,GTX收发器)都有一个顶部/底部限制。例如,顶部的每个MMCM只能驱动设备顶部的16个BUFGs。同样,底部的MMCMs驱动底部的16个BUFGs。

所有全局时钟缓冲器可以驱动7系列设备中的所有时钟区域。然而,在一个时钟区域内只能驱动12个不同的时钟。时钟缓冲器被设计成具有两个时钟输入的同步或异步glitch-free2:1多路复用器。BUFG级联有一个专用路径(路由资源),允许两个以上的时钟输入选择。7系列FPGA控制引脚提供广泛的功能和强大的输入切换。在7系列FPGA时钟结构中,BUFGCTRL多路复用器和所有派生器可以级联到器件上半部分和下半部分16个BUFGMUX组内的相邻时钟缓冲器,有效地在上半部分创建一个16个BUFGMUX(BUFGCTRL多路复用器)环,在下半部分形成另一个16个环。图1显示了级联BUFG的简化图。

图1、级联BUFGs以下小节详细介绍了7系列FPGA时钟缓冲器的各种配置、原语和使用模型。

3.1 全局时钟缓冲器原句

表1中的原句是全局时钟缓冲器的不同配置。ISE或Vivado设计工具管理所有这些原语的配置,约束指南描述了LOC约束。

85af4a4a-8924-11eb-8b86-12bb97331649.png

表1、全局时钟缓冲器原句

BUFGCTRL

BUFGCTRL原句框图如图2所示,它可以实现两路异步时钟切换。所有其他全局缓冲语句都可以由BUFGCTRL的某种配置得到。BUFGCTRL有四个选择端口:S0、S1、CE0和CE1,另外还有两个附件的控制线,IGNORE0和IGNORE1。这六个信号用于控制输入I0和I1。

图2、 BFUGCTRL原句BUFGCTRL用于在两路时钟输入之间切换,而不会产生毛刺。当当前选择的时钟在S0和S1改变后从高电平转换到低电平时,输出保持在低电平,直到另一个(待选择的)时钟从高电平转换到低电平。然后新的时钟开始驱动输出,BUFGCTRL的默认配置是下降沿敏感型,在输入切换之前保持在低位。BUFGCTRL还可以对上升沿敏感,并在输入切换之前使用INIT_OUT属性保持在高极性。在某些应用中,上述条件是不可取的。断言IGNORE引脚将绕过BUFGCTRL来检测在两个时钟输入之间切换的条件。换句话说,断言IGNORE会导致MUX在选择管脚更改时切换输入。当选择引脚改变时,IGNORE0使输出立即从I0输入切换,而当选择引脚改变时,IGNORE1使输出立即从I1输入切换。选择一个输入时钟需要一个“选择”对(S0和CE0,或S1和CE1)被断言为高。如果S或CE没有被断言为高,则所需的输入将不会被激活选定。在正常运行时,S和CE对(所有四条选择线)都不应同时断言高。通常,“选择”对中只有一个管脚用作选择线,而另一个管脚系在高处。真值表如表2所示。

863e136a-8924-11eb-8b86-12bb97331649.jpg

表2、时钟资源真值表虽然S和CE都用于选择所需的输出,但建议只有S用于无故障切换。这是因为当使用CE切换时钟时,时钟选择的变化可能比使用S快。CE引脚的建立/保持时间会导致时钟输出出现毛刺。另一方面,使用S引脚可以在两个时钟输入之间切换,而不考虑设置/保持时间。因此,使用S来切换时钟不会导致毛刺。请参见BUFGMUX_ CTRL。图3中的时序图说明了使用BUFGCTRL原语的各种时钟切换条件。

86b70ce8-8924-11eb-8b86-12bb97331649.png

图3、BUFGCTRL原语的时序图在事件1之前,输出O使用输入I0;BUFGCTRL的其他功能包括:

I0和I1输入的预选在配置之后但在设备运行之前进行。

配置后的初始输出可选择为高或低。

仅使用CE0和CE1的时钟选择(S0和S1绑定高)可以更改时钟选择,而无需等待先前选择的时钟从高到低的转换。

表3概括了BUFGCTRL原句的属性。

86f8d98e-8924-11eb-8b86-12bb97331649.png

表3 BUFGCTRL属性

BUFG

BUFG是一个时钟缓冲器,具有一个时钟输入和一个时钟输出。这个原语基于BUFGCTRL,有些管脚连接到逻辑高或低。图2-5说明了BUFG和BUFGCTRL的关系。可以手动放置约束的位置。

87609358-8924-11eb-8b86-12bb97331649.jpg

图4、BUFG和BUFGCTRLBUFG时序图如图5所示。图中显示了BUFG引入的时钟延迟TBCCKO_O

图5、 BUFG时序图

BUFGCE和BUFGCE_1

与BUFG不同,BUFGCE是一个具有一个时钟输入、一个时钟输出和一条时钟使能线的时钟缓冲器。这个原语基于BUFGCTRL,有些管脚连接到逻辑高或低。图6说明了BUFGCE和BUFGCTRL的关系。LOC约束可用于手动放置BUFGCE和BUFGCE_ 1位置。

图6、 BUFGCE和BUFGCTRLBUFGCE的切换条件类似于BUFGCTRL。如果CE输入在进入上升时钟边缘之前为低电平,则随后的时钟脉冲不会通过时钟缓冲器,并且输出保持低电平。在进入时钟高脉冲期间,CE的任何电平变化在时钟转换为低之前都没有影响。当时钟被禁用时,输出保持低。但是,当时钟被禁用时,它将完成时钟高脉冲。由于时钟使能线路使用BUFGCTRL的CE引脚,因此选择信号必须满足建立时间要求。违反此建立时间可能会导致毛刺。图7说明了BUFGCE的时序图。

图7、 BUFGCE的时序图BUFGCE_1与BUFGCE类似,只是其开关条件不同。如果CE输入在进入下降时钟边缘之前是低的,则随后的时钟脉冲不通过时钟缓冲器,并且输出保持高。在进入时钟低脉冲期间,CE的任何电平变化在时钟变高之前都没有影响。当时钟被禁用时,输出保持高电平。但是,当时钟被禁用时,它将完成时钟低脉冲。

图8、BUFGCE_1的时序图

BUFGMUX和BUFGMUX_1

BUFGMUX是一个具有两个时钟输入、一个时钟输出和一条选择线的时钟缓冲器。这个原语基于BUFGCTRL,有些管脚连接到逻辑高位或高位低。图9说明了BUFGMUX和BUFGCTRL的关系。LOC约束可用于手动放置BUFGMUX和BUFGCTRL位置。

892d5b44-8924-11eb-8b86-12bb97331649.png

图9、 BUFGMUX和BUFGCTRL由于BUFGMUX使用CE管脚作为选择管脚,因此在使用选择管脚时,必须满足建立时间要求。违反此建立时间可能会导致毛刺。BUFGMUX的开关条件与上的CE引脚相同BUFGCTRL.图图10显示了BUFGMUX的时序图。

8986ac9e-8924-11eb-8b86-12bb97331649.png

图10、BUFGMUX时序图

BUFGMUX_1对上升沿敏感,在输入开关之前保持在高电平。图11显示了BUFGMUX_ 1的时序图。LOC约束可用于手动放置BUFGMUX和BUFGMUX_1位置。

89c0d414-8924-11eb-8b86-12bb97331649.png

图10、BUFGMUX_1时序图

表3、 BUFGMUX属性

BUFGMUX_CTRL

BUFGMUX_CTRL替换了BUFGMUX_VIRTEX4遗留版本基元.BUFGMUX_CTRL是一个具有两个时钟输入、一个时钟输出和一条选择线的时钟缓冲区。这个原语基于BUFGCTRL,有些管脚连接到逻辑高或低。图12显示了BUFGMUX_CTRL和BUFGCTRL的关系。

8a93cb9e-8924-11eb-8b86-12bb97331649.png

图12、BUFGMUX_CTRL和BUFGCTRLCTRL和MUX选择管脚。S可以随时切换而不会引起故障。S上的建立/保持时间用于确定在切换到新时钟之前,输出是否将通过先前选择的时钟的额外脉冲。如果S如图2-14所示在设置时间TBCCCK_S之前和I0从高变低之前发生变化,则输出将不会传递额外的I0脉冲。如果S在S的保持时间后发生变化,则输出将传递一个额外的脉冲。如果S违反建立/保持要求,输出可能会传递额外的脉冲,但不会出现故障。在任何情况下,输出将在慢时钟的三个时钟周期内更改为新时钟。S0和S1的建立/保持要求与时钟下降沿有关,而不是与CE0和CE1的上升沿有关。

BUFGMUX_CTRL的切换条件与BUFGCTRL.图13显示了BUFGMUX_CTRL的时序图。

图13、BUFGMUX_CTRL时序图BUFGMUX_CTRL原语的其他功能包括:

配置后预选I0和I1输入。

初始输出可在配置后选择为高或低

原文标题:Xilinx 7系列FPGA架构之时钟资源(三)

文章出处:【微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

责任编辑:haq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1646

    文章

    22072

    浏览量

    619787
  • Xilinx
    +关注

    关注

    73

    文章

    2185

    浏览量

    125747
  • 时钟
    +关注

    关注

    11

    文章

    1903

    浏览量

    133371

原文标题:Xilinx 7系列FPGA架构之时钟资源(三)

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    PLL技术在FPGA的动态调频与展频功能应用

    随着现代电子系统的不断发展,时钟管理成为影响系统性能、稳定性和电磁兼容性(EMI)的关键因素之一。在FPGA设计,PLL因其高精度、灵活性和可编程性而得到广泛应用,本文将深入探讨PLL技术在
    的头像 发表于 06-20 11:51 ?1390次阅读
    PLL技术在<b class='flag-5'>FPGA</b><b class='flag-5'>中</b>的动态调频与展频功能应用

    Xilinx Ultrascale系列FPGA时钟资源架构解析

    。Ultrascale+采用16ns,有3个系列:Artix,Kintex,Virtex。不仅是工艺制程方面,在其他方面也存在较大改进,如时钟资源架构,本文将重点介绍Ultrasca
    的头像 发表于 04-24 11:29 ?1137次阅读
    Xilinx Ultrascale系列<b class='flag-5'>FPGA</b>的<b class='flag-5'>时钟</b><b class='flag-5'>资源</b>与<b class='flag-5'>架构</b>解析

    FPGA时序约束之设置时钟

    Vivado时序分析工具默认会分析设计中所有时钟相关的时序路径,除非时序约束设置了时钟组或false路径。使用set_clock_groups命令可以使时序分析工具不分析
    的头像 发表于 04-23 09:50 ?536次阅读
    <b class='flag-5'>FPGA</b>时序约束之设置<b class='flag-5'>时钟</b>组

    AD9253对时钟抖动的要求怎么样,应该选择怎样的时钟架构

    1:这款芯片支持连续采样、沿触发和外触发工作方式 2:时钟必须使用时钟芯片配置才行?使用有源晶振是否可以? 3:这款芯片对时钟抖动的要求怎么样,应该选择怎样的时钟架构
    发表于 04-15 06:43

    如果用FPGA采集AD1672,如何保障FPGA时钟同1672时钟一致?

    第一次用这种AD芯片,买了个开发板,发现,开发板母板上没有晶振。请教几个问题。 1。母板上用的时钟是SCLK作为源时钟吗? 2、如果用FPGA采集AD1672,如何保障FPGA
    发表于 12-24 06:17

    ADS58C48的输出给FPGA时钟怎样产生的,是只要有输入时钟,就有输出时钟吗?

    最近采用ADS58C48采集数据,ADS58C48的时钟FPGA差分提供。上电后,FPGA首先给ADS58C48配置。ADS58C48输出时钟作为
    发表于 12-20 06:32

    DAC5675用外部时钟,数据FPGA给,FPGA不用采集时钟不同步发数据可以吗?

    DAC5675用外部时钟,数据FPGA给,FPGA不用采集时钟不同步发数据可以吗
    发表于 11-25 06:36

    FPGA复位的8种技巧

    FPGA 设计,复位起到的是同步信号的作用,能够将所有的存储元件设置成已知状态。在数字电路设计,设计人员一般把全局复位作为一个外部引脚来实现,在加电的时候初始化设计。
    的头像 发表于 11-16 10:18 ?1251次阅读
    <b class='flag-5'>FPGA</b>复位的8种技巧

    Verilog vhdl fpga

    相关专业,具有良好的专业基础知识。 感兴趣可滴滴 JYHXDX534 2.工作年限不限,有工作经验或优秀应届毕业生亦可。 3.对FPGA芯片架构资源有深入的理解,精通Verilog HDL、VHDL
    发表于 11-12 16:40

    RISC-V内核是如何与FPGA内核进行资源共享的?

    我们知道RISC-V内核支持的精简指令集,FPGA又是要求性能相对比较高的模块,这两者在同一个产品可否共存?若能,两者的资源又是通过哪些接口进行传输共享的呢?
    发表于 10-27 17:05

    详解FPGA的基本结构

    ZYNQ PL 部分等价于 Xilinx 7 系列 FPGA,因此我们将首先介绍 FPGA架构。简化的 FPGA 基本结构由 6 部分组
    的头像 发表于 10-25 16:50 ?3443次阅读
    详解<b class='flag-5'>FPGA</b>的基本结构

    FPGA做深度学习能走多远?

    的发展前景较为广阔,但也面临一些挑战。以下是一些关于 FPGA 在深度学习应用前景的观点,仅供参考: ? 优势方面: ? 高度定制化的计算架构FPGA 可以根据深度学习算法的特殊需
    发表于 09-27 20:53

    FPGA芯片架构资源有深入的理解,精通Verilog HDL、VHDL

    、计算机相关专业,具有良好的专业基础知识。 2.工作年限不限,有工作经验或优秀应届毕业生亦可。 3.对FPGA芯片架构资源有深入的理解,精通Verilog HDL、VHDL编程语言,熟悉时序约束、时序分析
    发表于 09-15 15:23

    ALINX FPGA+GPU异架构视频图像处理开发平台介绍

    Alinx 最新发布的新品 Z19-M 是一款创新的 FPGA+GPU 异构架构视频图像处理开发平台,它结合了 AMD Zynq UltraScale+ MPSoC(FPGA)与 NVIDIA Jetson Orin NX(GP
    的头像 发表于 08-29 14:43 ?2220次阅读

    FPGA如何消除时钟抖动

    FPGA(现场可编程门阵列)设计,消除时钟抖动是一个关键任务,因为时钟抖动会直接影响系统的时序性能、稳定性和可靠性。以下将详细阐述FPGA
    的头像 发表于 08-19 17:58 ?2926次阅读