FPGA/CPLD
FPGA/CPLD
重要设计思想及工程应用
重要设计思想及工程应用
时序及同步设计篇
时序及同步设计篇
中嵌教育((www.chinaeda.c
中嵌教育
谢大钊谢大钊 编著编著
www.chinaeda.cnn))
谢大钊谢大钊 编著编著
概述
数字电路中,时钟是整个电路最重要、
最特殊的信号。
第一, 系统内大部分器件的动作都是
在时钟的跳变沿上进行, 这就要求时钟信
号时延差要非常小, 否则就可能造成时序
逻辑状态出错.
第二, 时钟信号通常是系统中频率最
高的信号.
谢大钊谢大钊 编著编著
概述
第三第三, , 时钟信号通常是负载最重的信
时钟信号通常是负载最重的信
号号, , 所以要合理分配负载。出于这样的考
所以要合理分配负载。出于这样的考
FPGA这类可编程器件内部一般都设有
虑在虑在FPGA
这类可编程器件内部一般都设有
数量不等的专门用于系统时钟驱动的全局
数量不等的专门用于系统时钟驱动的全局
时钟网络。这类网络的特点是:一、负载
时钟网络。这类网络的特点是:一、负载
能力特别强, , 任何一个全局时钟驱动线都
任何一个全局时钟驱动线都
能力特别强
可以驱动芯片内部的触发器; ; 二是时延差
二是时延差
可以驱动芯片内部的触发器
特别小特别小; ; 三是时钟信号波形畸变小
三是时钟信号波形畸变小, , 工作工作
可靠性好。
可靠性好。
谢大钊谢大钊 编著编著
概述
FPGA设计中最好的时钟方案
因此因此, , 在在FPGA
设计中最好的时钟方案
是是: : 由专用的全局时钟输入引脚驱动单个
由专用的全局时钟输入引脚驱动单个
主时钟去控制设计项目中的每一个触发
主时钟去控制设计项目中的每一个触发
器。同步设计时, , 全局时钟输入一般都接
全局时钟输入一般都接
器。同步设计时
在器件的时钟端, , 否则会使其性能受到影
否则会使其性能受到影
在器件的时钟端
响。响。
对于需要多时钟的时序电路, , 最好选用
最好选用
对于需要多时钟的时序电路
一个频率是它们的时钟频率公倍数的高频
一个频率是它们的时钟频率公倍数的高频
主时钟。
主时钟。
谢大钊谢大钊 编著编著
概述
各个功能模块要使用统一的复位电路。
各个功能模块要使用统一的复位电路。
在使用带时钟的触发器、计数器等有复位
在使用带时钟的触发器、计数器等有复位
端的库器件时, , 一般应尽量使用有同步复
一般应尽量使用有同步复
端的库器件时
位的器件。注意复位时保证各个器件都能
位的器件。注意复位时保证各个器件都能
复位复位, , 以避免某些寄存器的初始状态不确
以避免某些寄存器的初始状态不确
定而引起系统工作不可靠。
定而引起系统工作不可靠。
谢大钊谢大钊 编著编著
建立和保持时间
建立和保持时间
若想掌握时钟设计方法首先需要了解建立时
间和保持时间的概念。
如下页图所示,建立时间(setup time):是指
在触发器的时钟信号上升沿到来以前,数据稳
定不变的时间,如果建立时间不够,数据将不
能在这个时钟上升沿被打入触发器;
保持时间(hold time):是指在触发器的时钟信
号上升沿到来以后,数据稳定不变的时间, 如
果保持时间不够,数据同样不能被打入触发
器。
谢大钊谢大钊 编著编著
建立和保持时间
建立和保持时间
谢大钊谢大钊 编著编著
全局时钟
全局时钟
对于一个设计项目来说,全局时钟((或同或同
对于一个设计项目来说,全局时钟
步时钟步时钟))是最简单和最可预测的时钟。在
是最简单和最可预测的时钟。在
CPLD/FPGA设计中最好的时钟方案是:由专
CPLD/FPGA
设计中最好的时钟方案是:由专
用的全局时钟输入引脚驱动的单个主时钟去
用的全局时钟输入引脚驱动的单个主时钟去
钟控设计项目中的每一个触发器。只要可能
钟控设计项目中的每一个触发器。只要可能
就应尽量在设计项目中采用全局时钟。
就应尽量在设计项目中采用全局时钟。
CPLD/FPGA都具有专门的全局时钟引脚,它
CPLD/FPGA
都具有专门的全局时钟引脚,它
直接连到器件中的每一个寄存器。这种全局
直接连到器件中的每一个寄存器。这种全局
时钟提供器件中最短的时钟到输出的延时。
时钟提供器件中最短的时钟到输出的延时。
谢大钊谢大钊 编著编著