浅析FPGA时钟设计

发布时间:2012-01-6 阅读量:1948 来源: 我爱方案网 作者:

中心议题:
    *  全局时钟
    *  门控时钟
    *  多级逻辑时钟
    *  波动式时钟
解决方案
    *  PLD/ FPGA 设计中的时钟方案
  
对于一个设计项目来说, 全局时钟是最简单和最可预测的时钟。在PLD/ FPGA 设计中最好的时钟方案是由专用的全局时钟输入引脚驱动的单个主时钟去钟控设计项目中的每一个触发器。只要可能就应尽量在设计项目中采用全局时钟。PLD/ FPGA 都具有专门的全局时钟引脚, 它直接连到器件中的每一个寄存器。这种全局时钟提供器件中最短的时钟到输出的延时。
  
1  全局时钟
  
全局时钟的实例如图1 所示。图1 中定时波形示出触发器的数据输入D[ 1. . 3] 应遵守建立时间和保持时间的约束条件。建立和保持时间的数值在PLD 数据手册中给出, 也可用软件的定时分析器计算出来。如果在应用中不能满足建立和保持时间的要求, 则必须用时钟同步输入信号。

图1  全局时钟
  
2  门控时钟
  
在许多应用中, 整个设计项目都采用外部的全局时钟是不可能或不实际的。PLD 具有乘积项逻辑阵列时钟( 即时钟是由逻辑产生的) , 允许任意函数单独地钟控各个触发器。然而, 当你用阵列时钟时, 应仔细地分析时钟函数, 以避免毛刺。
  
通常用阵列时钟构成门控时钟。门控时钟常常同微处理器接口有关, 用地址线去控制写脉冲。然而, 每当用组合函数钟控触发器时, 通常都存在着门控时钟。
  
如果符合下述条件, 门控时钟可以象全局时钟一样可靠地工作, 图2 所示是一个可靠的门控时钟电路。

图2 门控时钟
  
( 1) 驱动时钟的逻辑必须只包含一个“与” 门或一个“或”门。如果采用任何附加逻辑在某些工作状态下, 会出现竞争产生的毛刺。
  
( 2) 逻辑门的一个输入作为实际的时钟, 而该逻辑门的所有其他输入必须当成地址或控制线, 它们遵守相对于时钟的建立和保持时间的约束。
  
在设计中可以将门控时钟转换成全局时钟以改善设计项目的可靠性。图3 示出如何用全局时钟重新设计图2 所示的电路。地址线在控制D 触发器的使能输入, 许多PLD 设计软件, 如Max+ Plus 软件都提供这种带使能端的D 触发器。当EN A 为高电平时, D 输入端的值被钟控到触发器中: 当ENA 为低电平时, 维持现在的状态。

图3  "与" 门门控时钟转化成全局时钟
 

 

 
3  多级逻辑时钟
  
当产生门控时钟的组合逻辑超过一级( 即超过单个的“与”门或“或”门) 时, 验证设计项目的可靠性变得很困难。即使样机或仿真结果没有显示出静态险象, 但实际上仍然可能存在着危险。通常, 不应该用多级组合逻辑去钟控PLD 设计中的触发器。
  
图4 给出一个含有险象的多级时钟的例子。时钟是由SEL 引脚控制的多路选择器输出的。多路选择器的输入是时钟( CLK) 和该时钟的2 分频( DIV2) 。多级逻辑的险象可以去除。例如, 可以插入“冗余逻辑”到设计项目中。然而, PLD/ FPGA 编译器在逻辑综合时会去掉这些冗余逻辑, 使得验证险象是否真正被去除变得困难了。
  
为此, 必须应寻求其他方法来实现电路的功能。

图4  有静态险象的多级时钟
  
图5 给出图4 电路的一种单级时钟的替代方案。
  
图中SEL 引脚和DIV2 信号用于使能D 触发器的使能输入端, 而不是用于该触发器的时钟引脚。采用这个电路并不需要附加PLD 的逻辑单元, 工作却可靠多了。

图5  无静态险象的多级时钟
  
4  行波时钟
  
另一种流行的时钟电路是采用行波时钟, 即一个触发器的输出用作另一个触发器的时钟输入。如果仔细地设计, 行波时钟可以像钟一样地可靠工作。然而, 行波时钟使得与电路有关的定时计算变得很复杂。行波时钟在行波链上各触发器的时钟之间产生较大的时间偏移, 并且会超出最坏情况下的建立时间、保持时间和电路中时钟到输出的延时, 使系统的实际速度下降, 如图6 所示。

图6 行波时钟
  
5  多时钟系统
  
许多系统要求在同一个PLD 内采用多时钟。最常见的例子是两个异步微处理器之间的接口, 或微处理器和异步通信通道的接口。由于两个时钟信号之间要求一定的建立和保持时间, 所以, 上述应用引进了附加的定时约束条件。它们也会要求将某些异步信号同步化。
  
图7 给出一个多时钟系统的实例。CLK _A 用以钟控REG_A, CLK_B 用于钟控REG_B, 由于REG_A驱动着进入REG_B 的组合逻辑, 故CLK_A 的上升沿相对于CLK_B 的上升沿有建立时间和保持时间的要求。由于REG_B 不驱动馈到REG_A 的逻辑, CLK_B的上升沿相对于CLK_A 没有建立时间的要求。此外,由于时钟的下降沿不影响触发器的状态, 所以CLK_A和CLK_B 的下降沿之间没有时间上的要求。电路中有两个独立的时钟, 可是, 在它们之间的建立时间和保持时间的要求是不能保证的。在这种情况下, 必须将电路同步化。图8 给出REG_A 的值( 如何在使用前) 同CLK_B 同步化。新的触发器REG_C 由GLK_B 触控,保证REG_G 的输出符合REG_B 的建立时间。然而,这个方法使输出延时了一个时钟周期。
 

 



图7  多时钟系统
   
在许多应用中只将异步信号同步化还是不够的, 当系统中有两个或两个以上非同源时钟的时候, 数据的建立和保持时间很难得到保证, 将面临复杂的时间问题。
  
最好的方法是将所有非同源时钟同步化。使用PLD 内部的锁项环( PLL 或DLL) 是一个效果很好的方法, 但不是所有PLD 都带有PLL, DLL, 而且带有PLL 功能的芯片大多价格昂贵, 所以除非有特殊要求, 一般场合可以不使用带PLL 的PLD。这时需要使用带使能端的D 触发器, 并引入一个高频时钟。

图8 具有同步寄存器输出的多时钟系统
  
6  结语
  
稳定可靠的时钟是系统稳定可靠的重要条件, 所以不能将任何可能含有毛刺的输出作为时钟信号, 并且尽可能只使用一个全局时钟, 对多时钟系统要注意同步异步信号和非同源时钟。

相关资讯
“中国芯”逆袭时刻:新唐携7大新品打造全场景AIoT解决方案矩阵

在万物互联与智能化浪潮席卷全球的今天,新唐科技以颠覆性创新奏响行业强音。4月25日,这场历时10天、横跨七城的科技盛宴在深圳迎来高潮,以"创新驱动AI、新能源与车用科技"为主题,汇聚全球顶尖行业领袖,首次公开七大核心产品矩阵,展现从芯片设计到智能生态的全链条创新能力,为半导体产业转型升级注入新动能。

半导体先进制程技术博弈:台积电、英特尔与三星的差异化路径

在2025年北美技术研讨会上,台积电正式宣布其A14(1.4nm)工艺将于2028年量产,并明确表示无需依赖ASML最新一代High NA EUV光刻机。这一决策背后,折射出全球半导体巨头在技术路线、成本控制和市场竞争中的深层博弈。

嵌入式主板EMB-3128:轻量级边缘计算的工业级解决方案

随着AIoT技术的快速落地,智能设备对高性能、低功耗嵌入式硬件的需求持续攀升。华北工控推出的EMB-3128嵌入式主板,搭载Intel® Alder Lake-N系列及Core™ i3-N305处理器,以高能效比设计、工业级可靠性及丰富的接口配置,成为轻量级边缘AI计算的理想选择。该主板支持DDR5内存、多模态扩展接口及宽温运行环境,可广泛应用于智能家居、工业自动化、智慧零售等场景,助力产业智能化升级。

从ASMI财报看行业趋势:AI芯片需求爆发如何重塑半导体设备市场?

作为全球半导体沉积设备领域的龙头企业,荷兰ASM国际(ASMI)近日发布2024年第一季度财报,展现强劲增长动能。财报显示,公司当季新增订单额达8.34亿欧元(按固定汇率计算),同比增长14%,显著超出市场预期的8.08亿欧元。这一表现主要受益于人工智能芯片制造设备需求激增与中国市场的战略性突破,同时反映出半导体产业技术迭代与地缘经济博弈的双重影响。

车规级SerDes国产替代提速:解析纳芯微NLS9116/NLS9246技术优势与市场潜力

随着汽车智能化加速,车载摄像头、激光雷达、显示屏等传感器数量激增,数据传输带宽需求呈指数级增长。传统国际厂商基于私有协议(如TI的FPD-Link、ADI的GMSL)垄断车载SerDes市场,导致车企供应链弹性不足、成本高企。2025年4月,纳芯微电子发布基于HSMT公有协议的全链路国产化SerDes芯片组(NLS9116加串器与NLS9246解串器),通过协议解耦、性能优化与供应链自主可控,为ADAS、智能座舱等场景提供高性价比解决方案,标志着国产车规级芯片从“跟跑”迈向“并跑” 。