集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 2718|回复: 1

FPGA设计中的时钟设计

[复制链接]
小泡泡 发表于 2010-4-23 12:47:09 | 显示全部楼层 |阅读模式
本帖最后由 fpgaw 于 2011-5-22 09:46 编辑

在任何数字电路设计中,可靠的时钟是非常关键的。时钟一般可分为全局时钟、门控时钟
和多级逻辑时钟等几种类型。

2.1.1 全局时钟

全局时钟或同步时钟是最简单、可靠的时钟。在FPGA设计中时钟的最好解决方案是:由专
用的全局时钟输入引脚驱动的单个主时钟去钟控设计中的每一个时序器件,只要有可能就
应尽量在设计项目中采用全局时钟。FPGA都具有专门的全局时钟引脚,它直接连到器件中
的每一个寄存器。在器件中,这种全局时钟能提供最短的时钟延时(数据输入到数据到达输
出的时间)。图2是全局时钟的一个实例。


2.1.2 门控时钟

在许多应用中,都采用外部的全局时钟是不实际的,通常要用阵列时钟构成门控时钟。门
控时钟常常同微处理器接口有关,每当用组合函数钟控触发器时,通常都存在着门控时钟
。如果符合下述条件,门控时钟可以象全局时钟一样可靠地工作:(1)驱动时钟的逻辑必
须只包含一个"与"门或"或"门;(2)逻辑门的一个输入是实际的时钟,而该逻辑门的所有
其它输入必须是地址或控制线,它们约束时钟的建立和保持时间。当然也可以将门控时钟
转换成全局时钟以改善设计项目的可靠性。

2.1.3 多时钟系统

许多应用要求在同一个FPGA内采用多个时钟,比如两个异步微处理器之间的接口或微处理
器和异步通信通道的接口。由于两个时钟信号之间要求一定的建立和保持时间,所以引进
了附加的定时约束条件,将某些异步信号同步化。在许多系统中只将异步信号同步化是不
够的,当系统中有两个或两个以上非同源时钟的时候,数据的建立和保持时间很难得到保
证,最好的解决办法是将所有非同源时钟同步化。使用FPGA内部的锁相环(PLL)模块是一个
很好的方法。如果不用PLL,当两个时钟的频率比是整数时,同步的方法比较简单;当两个
时钟的频率比不为整数时,处理方法要复杂得多。这时需要使用带使能端的D触发器,并
引入一个高频时钟来实现。

2.1.4 时钟歪斜

时钟歪斜是FPGA设计中最严重的问题之一。电路中控制各元件同步运行的时钟源到各元件
的距离相差很大,时钟歪斜就是在系统内不同元件处检测到有效的时钟跳变沿所需的时间
差异。为了保证各个元件的建立保持时间,歪斜必须足够小。若歪斜的程度大于从一边缘
敏感存储器的输出到下一级输入的延迟时间,就能使移位寄存器的数据丢失,使同步计数
器输出发生错误,故必须设法消除时钟歪斜。减少时钟歪斜的方法有以下几种:(1)采用
适当的时钟缓冲器,或者在边缘敏感器件的输出与其馈给的任何边缘敏感器件输入端之间
加入一定的延迟以减小歪斜。(2)严重的时钟歪斜往往是由于在FPGA内的时钟及其它全局
控制线(如复位线)使负载过重造成的,在信号线上接一串线形缓冲器,使驱动强度逐步增
大,可以消除时钟歪斜。(3)在受时钟控制的部件之后分别接入缓冲器,并在两个缓冲器
输出端之间接一平衡网络。(4)采用FPGA内的PLL模块可以对输入时钟进行很好的分频
和倍频,从而使时钟歪斜减到最低程度。
fpga_feixiang 发表于 2024-8-12 14:34:55 | 显示全部楼层
6                 
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2024-11-23 08:16 , Processed in 0.060948 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表