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

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

    关注

    1664

    文章

    22503

    浏览量

    639269
  • 寄存器
    +关注

    关注

    31

    文章

    5619

    浏览量

    130421
  • 数据
    +关注

    关注

    8

    文章

    7349

    浏览量

    95023
  • Xilinx
    +关注

    关注

    73

    文章

    2206

    浏览量

    131902

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

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

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    MAX9491:多功能时钟发生器的技术剖析

    可靠的时钟解决方案。今天,我们就来深入剖析一下这款产品。 文件下载: MAX9491.pdf 产品概述 MAX9491是一款专为通信应用设计的多功能时钟发生器。它
    的头像 发表于 04-22 15:30 71次阅读

    DS1682:集成式累计时间记录器的技术剖析与应用指南

    高效且可靠的解决方案。本文将深入剖析DS1682的技术特性、工作原理、应用场景以及使用注意事项,为电子工程师在实际设计中提供全面的参考。 文件下载: DS1682.pdf 一、DS1682概述 DS1682是一款集成式累计时间记
    的头像 发表于 03-24 15:25 148次阅读

    深入剖析DS1556:1M非易失Y2K兼容计时RAM

    深入剖析DS1556:1M非易失Y2K兼容计时RAM 在电子设备的设计中,精确的计时和数据存储是至关重要的。Maxim的DS1556作为一款功能强大的实时
    的头像 发表于 03-24 15:20 157次阅读

    深入解析DS1557:功能强大的非易失计时RAM

    、Y2K兼容的计时RAM。 文件下载: DS1557.pdf 一、产品特性 DS1557集成了NV SRAM、实时时钟(RTC)、晶体、掉电控制电路和锂能源等功能,具有诸多显著特性。
    的头像 发表于 03-24 15:20 339次阅读

    AD9557:高性能时钟解决方案的深度剖析

    AD9557:高性能时钟解决方案的深度剖析 在电子设备的设计中,时钟的稳定性和精确至关重要。AD9557作为一款多功能
    的头像 发表于 03-23 10:10 171次阅读

    深入剖析 ICS932S421B:PCIe Gen2 和 QPI 时钟解决方案

    深入剖析 ICS932S421B:PCIe Gen2 和 QPI 时钟解决方案 在当今的服务器设计领域,时钟信号的精确和稳定性对于系统的性
    的头像 发表于 03-15 17:05 521次阅读

    工业HMI高精度计时方案:RTC时钟芯片YSN8900 内置TCXO技术

    作为时钟频率器件行业的深耕者,我们始终坚持技术创新和价值创造,为工业HMI厂商提供高精度、高可靠的计时解决方案,赋能工业智能化转型。 YSN8900凭借超高精度、超低功耗等核心优势,持续引领工业HMI高可靠
    的头像 发表于 03-13 16:22 560次阅读
    工业HMI高精度<b class='flag-5'>计时方案</b>:RTC<b class='flag-5'>时钟</b>芯片YSN8900 内置TCXO技术

    CDC328A:高性能时钟驱动器的技术剖析

    CDC328A:高性能时钟驱动器的技术剖析 在电子设计领域,时钟驱动器对于确保时钟信号的精确分配和稳定传输至关重要。CDC328A作为一款具有
    的头像 发表于 02-10 16:20 496次阅读

    深入剖析LMK01000家族:高性能时钟解决方案的首选

    深入剖析LMK01000家族:高性能时钟解决方案的首选 在电子设备的设计中,时钟信号的精确分配和处理至关重要,它直接影响着整个系统的性能和稳定性。德州仪器(TI)的LMK01000家族
    的头像 发表于 02-09 17:05 419次阅读

    深入剖析LMK01000:高性能时钟缓冲、分频与分配器

    GHz高性能时钟缓冲、分频与分配器,能为系统提供出色的时钟解决方案。 文件下载: lmk01020.pdf 一、产品特性亮点 低抖动性能 LMK01000系列具有仅30 fs的附加抖
    的头像 发表于 02-09 17:00 409次阅读

    LMK04000 系列时钟抖动清理器:高精度时钟解决方案深度剖析

    LMK04000 系列时钟抖动清理器:高精度时钟解决方案深度剖析 引言 在当今的电子系统中,高精度时钟信号对于数据转换器、无线基础设施、网络
    的头像 发表于 02-09 16:30 218次阅读

    LMK04828 - EP:超低噪声时钟抖动清理器的技术剖析与应用指南

    JESD204B标准的时钟抖动清理器,为众多应用场景提供了卓越的时钟解决方案。本文将深入剖析LMK04828 - EP的特性、应用及设计要点,帮助工程师更好地理解和应用这款产品。 文件
    的头像 发表于 02-08 11:45 705次阅读

    探索LMX1205:高性能时钟解决方案的技术剖析

    探索LMX1205:高性能时钟解决方案的技术剖析 在高速数据处理和通信系统中,时钟信号的稳定性和精确对系统性能起着决定性作用。今天,我们将
    的头像 发表于 02-06 14:40 268次阅读

    深度剖析LMK1C110xA系列LVCMOS时钟缓冲器

    深度剖析LMK1C110xA系列LVCMOS时钟缓冲器 一、引言 在电子设备高度集成化和高速化的今天,时钟信号的稳定性和准确对于设备的性能至关重要。LVCMOS
    的头像 发表于 02-06 13:50 411次阅读

    Amphenol FlexTraX:创新电缆管理解决方案深度剖析

    Amphenol FlexTraX:创新电缆管理解决方案深度剖析 在电子设备和网络系统中,电缆管理一直是一个关键且具有挑战性的任务。合理的电缆管理不仅能提高系统的可靠
    的头像 发表于 12-11 14:50 524次阅读