1 剖析具有挑战性的设计时钟方案-德赢Vwin官网 网
0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

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

3天内不再提示

剖析具有挑战性的设计时钟方案

OpenFPGA 来源:OpenFPGA 作者:OpenFPGA 2021-06-17 16:34 次阅读

时钟设计方案在复杂的FPGA设计中,设计时钟方案是一项具有挑战性的任务。设计者需要很好地掌握目标器件所能提供的时钟资源及它们的限制,需要了解不同设计技术之间的权衡,并且需要很好地掌握一系列设计实践知识。

不正确的设计或次优的时钟方案可能会导致在最好情况下较差的设计性能,或者在最坏情况下的随机和难以查找的错误。FPGA时钟资源指目标FPGA中大量与时钟有关的不同资源,如时钟类型(局部的和全局的)、频率限制和不同时钟管理器的抖动特性,以及能用于单个时钟域的时钟最大数量。本文介绍了时钟设计方案中的每个部分,并推荐了一些设计方法。

内部产生的时钟是组合逻辑或寄存器的输出,如图1所示。

fcdcedaa-ca99-11eb-9e57-12bb97331649.png

组合逻辑产生的时钟可能有毛刺,会被错误地当成有效时钟边沿,在设计中会导致功能错误。因此,不要使用组合逻辑的输出作为时钟。内部产生的时钟使用通用布线资源。因此,与专用时钟布线相比延迟较长。其后果是时钟偏移增加,满足时序的过程更加困难。如果大量的逻辑使用了该内部时钟,这个问题尤为突出。公众号:OpenFPGA作为一般规则,尽量避免使用内部产生的时钟,尽可能使用专用时钟资源。

除了一些特殊电路[如双倍数据速率(DDR)的数据捕获]之外,寄存数据通常总是使用时钟的上升沿或下降沿。使用两个边沿带来的问题是由于时钟占空比可能并不总是50%,这会对电路的正常工作产生影响。

建议在频率高的情况下使用差分时钟。通常认为频率高于100MHz以上属于高频。差分时钟相比单端时钟的主要优势是共模噪声抑制,因此抗噪声性能更好。具有PECL、LVPECL和LVDS信号电平的差分时钟是高速逻辑下时钟的首选。Xilinx FPGA提供了一些用于差分时钟的专用原语:IBUFDS、IBUFGDS、IBUFGDS_DIFF、OBUFDS、0BUFTDS等(见图2)。

fd100be0-ca99-11eb-9e57-12bb97331649.png

时钟门控是设计中通过使用控制信号,禁止或允许时钟输入到寄存器和其他同步元件上的一种方法。它能有效降低功耗,因此被广泛应用于ASIC设计中。然而,在FPGA设计中应尽量避免使用门控时钟。

不建议将时钟信号作为通用逻辑的控制、复位或数据输入。下面是这类电路的例子。

module clock_schemes(input clk1,clk2,clk3,clk4,clk5,input data_in,output reg data_out1,data_out2,data_out3,data_out4,data_out5,data_out6);wire data_from_clock, reset_from_clock, control_from_clock;/ / 时钟被用做数据输入assign data_from_clock = clk1;always @(posedge clkl) data out1 《= ~data out1;

always @(posedge clk2) data out2 《= ~data out2 & data_from_clock;

/ / 时钟被用做复位输入assign reset_from_clock = clk3;always @(posedge clk3) data out3 《= ~data out2;always @(posedge clk4, posedge reset_from_clock) if (reset_from_clock) data_out4 《= 0; else data out4 《= data in;/ / 时钟被用做控制assign control_from_clock = clk5;always @(posedge clk5) data out5 《= ~data out5;always @(*) data_out6 = control_from_clock ? data_in : data_out6;endmodule // clock schemes

许多与FPGA接口的外设都使用与数据一样的源同步时钟。如果接口在高速下工作,可能需要对时钟边沿进行校准,以便在数据窗口的中间捕获数据。为实现动态校准Xilinx MMCM原语提供了动态重新配置端口DRP),允许时钟的可编程相位偏移。图3说明了来自MMCM的时钟被移位后,使时钟的上升沿在窗口的中间位置采样数据。

fd1e4714-ca99-11eb-9e57-12bb97331649.png

当同一个逻辑有来自不同时钟源的时钟时,需要在设计中对这些时钟源进行时钟复用(见图4)。一个例子是使用2.5MHz、25MHz或125MHz时钟的以太网MAC,选取哪种时钟取决于10Mbps、100Mbps或1Gbps的协商速度(negotiated speed)。另一个例子是电源内置自测(BIST)电路,在正常工作期间,使用了来自同一个时钟源的不同时钟信号。公众号:OpenFPGA

建议使用专用的时钟资源实现时钟复用,确保输人和输出时钟使用专用时钟线,而不是通用逻辑。参与复用的时钟频率可能彼此并不相关。使用组合逻辑实现的多路复用器在切换时会在时钟线上产生毛刺,从而危害整个系统。这些毛刺会被一些寄存器当成有效时钟边沿,而被另一些寄存器忽略。

Xilinx提供了能在两个全局时钟源之间进行复用的BUFGMUX原语。它还确保了当输人时钟切换后不会产生毛刺。时钟复用需要对复用器中所有从输入到输出的时钟路径进行细致的时序约束

fd4dc174-ca99-11eb-9e57-12bb97331649.png

检测时钟缺失 (absence)的一种方法,是使用其他更高速的时钟对其进行过采样,缺点是时钟可能没有可用的高速时钟。还有一种方法是使用 Xilinx MMCM 原语的 locked 输出,如图 5 所示。

fd62738a-ca99-11eb-9e57-12bb97331649.png

编辑:jq

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

    关注

    1629

    文章

    21729

    浏览量

    602960
  • 寄存器
    +关注

    关注

    31

    文章

    5336

    浏览量

    120224
  • 数据
    +关注

    关注

    8

    文章

    7002

    浏览量

    88937
  • Xilinx
    +关注

    关注

    71

    文章

    2167

    浏览量

    121290

原文标题:FPGA时钟设计方案

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

收藏 人收藏

    评论

    相关推荐

    2024年ICPC与华为挑战赛冠军杯圆满落幕

    近日,2024年ICPC&华为挑战赛冠军杯在深圳圆满落幕。该活动由华为和ICPC联合举办,汇聚全球顶尖的编程人才,共同探讨和解决具有挑战性的工业界真实问题,并对未来技术发展趋势及关键挑战
    的头像 发表于 10-27 16:00 738次阅读

    边缘计算的技术挑战与解决方案

    边缘计算作为一种新型的计算架构,在带来诸多优势的同时,也面临着一些技术挑战。以下是对边缘计算的技术挑战及相应解决方案的分析: 一、技术挑战 资源受限 边缘设备通常
    的头像 发表于 10-24 14:36 440次阅读

    【智能生活新宠】:WTR096芯片语音时钟方案,录音播放+时钟提醒+计时时钟功能一体,一键掌控您的日常节奏

    的健康与生活。我司推出的WTR096芯片,集录放音、播放、计时时钟功能于一身,专为这类产品量身打造,能够为者智能语音时钟提供可靠且优质的解决方案。我们先了解一下这些
    的头像 发表于 08-30 13:21 358次阅读
    【智能生活新宠】:WTR096芯片语音<b class='flag-5'>时钟</b><b class='flag-5'>方案</b>,录音播放+<b class='flag-5'>时钟</b>提醒+<b class='flag-5'>计时时钟</b>功能一体,一键掌控您的日常节奏

    康谋分享 | 在基于场景的AD/ADAS验证过程中,识别挑战性场景!

    基于场景的验证是AD/ADAS系统开发过程中的重要步骤,然而面对海量驾驶记录数据时,如何实现自动且高效地识别、分类和提取驾驶记录中的挑战性场景?本文康谋为您介绍IVEX软件识别挑战性场景并进行数据分析的强大功能。
    的头像 发表于 08-28 10:16 1062次阅读
    康谋分享 | 在基于场景的AD/ADAS验证过程中,识别<b class='flag-5'>挑战性</b>场景!

    CC2340系统降低成本的方案剖析

    德赢Vwin官网 网站提供《CC2340系统降低成本的方案剖析.pdf》资料免费下载
    发表于 08-27 09:43 0次下载
    CC2340系统降低成本的<b class='flag-5'>方案</b><b class='flag-5'>剖析</b>

    FPGA设计面临的挑战和解决方案

    设计可靠的可编程逻辑门阵列(FPGA)对于不容故障的系统来说是一项具有挑战性的任务。本文介绍FPGA设计的复杂,重点关注如何在提高可靠的同时管理随之带来的功耗增加、设计复杂
    的头像 发表于 08-06 11:33 446次阅读

    FPGA的sata接口设计时需要注意哪些问题

    ,对时钟的稳定性和精度要求较高。设计时需要仔细配置时钟源,确保时钟信号的稳定性和准确。对于SATA III接口,串行
    发表于 05-27 16:20

    具有密集交联结构的明胶基水凝胶电解质(ODGelMA)

    目前,开发一种能够成功实现兼具机械强度、离子电导率和界面适应的综合水凝胶电解质基质仍然具有挑战性
    的头像 发表于 05-22 09:17 721次阅读
    <b class='flag-5'>具有</b>密集交联结构的明胶基水凝胶电解质(ODGelMA)

    使用STM8L做内部RTC做时钟时钟计时计到了超过24时怎么解决?

    我在使用STM8L做内部RTC做时钟的时候,发现了一个问题。时钟计时计到了超过24时。昨天下午我设置了一个初始时间,今天早上8:19的时候读取STM8内部RTC时间显示的是 2018.8.2932:19:05时间
    发表于 04-19 06:59

    EPSON 的 RX8010SJ 为安防产品提供高可靠低功耗的实时时钟模块解决方案

    EPSON作为实时时钟解决方案提供商中的佼佼者,为了适应市场需求,推出实时时钟模块RX8010SJ。该款实时时钟模块除了拥有超高性价比以外,还拥有不俗的整体性能,同时集成了日历功能可用
    发表于 04-15 16:04 0次下载

    单片机开发好学吗?学习中有哪些乐趣与挑战

    单片机编程究竟是不是好学的问题。先来说一说单片机编程的挑战性,对于初学者而言,单片机编程可能具有一定的挑战性,因为它需要你具备以下几点能力;单片机开发学习中的乐趣与
    的头像 发表于 03-28 08:04 1898次阅读
    单片机开发好学吗?学习中有哪些乐趣与<b class='flag-5'>挑战</b>?

    硬件工程师在可靠设计中所面临的挑战及解决之道

    Course硬件电路可靠设计HardwareEngineer硬件电路工程师在进行可靠计时,常常会陷入一系列烦恼之中。这些挑战包括成本、时间压力、可靠
    的头像 发表于 03-23 08:16 964次阅读
    硬件工程师在可靠<b class='flag-5'>性</b>设计中所面临的<b class='flag-5'>挑战</b>及解决之道

    时钟同步系统在网络通信中的重要及优势

    的发送和接收都需要使用时间戳来标识时间。如果网络中不同设备或系统的时钟不同步,则会导致数据包的时间戳不一致,从而导致数据传输错误。 提高网络通信的可靠 在网络通信中,许多协议都需要使用时间戳来进行计时和控制。如
    的头像 发表于 03-19 10:35 1243次阅读
    <b class='flag-5'>时钟</b>同步系统在网络通信中的重要<b class='flag-5'>性</b>及优势

    探讨制造中差异变量的概念和重要

    制造高端电子产品是非常复杂精密的过程。制作用于演示或原型的一次样品可能具有挑战性,但真正的挑战在于如何以盈利的方式持续生产。
    的头像 发表于 03-13 10:40 415次阅读
    探讨制造中差异变量的概念和重要<b class='flag-5'>性</b>

    FPGA时钟内部设计方案

    时钟设计方案 在复杂的FPGA设计中,设计时钟方案是一项具有挑战性的任务。设计者需要很好地掌
    发表于 01-22 09:30 628次阅读
    FPGA<b class='flag-5'>时钟</b>内部设计<b class='flag-5'>方案</b>