专利名称:一种基于fpga的可编程精确时钟电路的制作方法
技术领域:
本发明属于一种时钟电路,特别是一种基于FPGA的可编程精确时钟电路。
背景技术:
时钟源是雷达、通信、测试仪器等电子系统实现的关键,很多现代电子设备和系统功能的实现都直接依赖所用的时钟源的性能。通常数字系统利用片外石英晶体振荡器来得到时钟源信号,石英晶振拥有优越的电压和温度特性,能够稳定地工作,但难以集成到芯片内部,且增加了器件成本,阻碍了芯片的高度集成化。目前从片外晶体振荡器得到的时钟频率都是固定的,只有通过DDS或PLL等电路才能改变频率。
发明内容
本发明的目的在于提供一种无晶振的时钟电路,这种电路能实现频率达吉赫兹的时钟,适用于数字电路中的各种时钟需求。实现本发明目的的技术解决方案为一种基于FPGA的可编程精确时钟电路,包括振荡单元及可编程延时单元,振荡单元的输出信号经过可编程延时单元的延时再输入振荡单元;振荡单元由2个D触发器及2个非门构成,完成输出时钟信号的翻转;振荡单元中第一 D触发器I的输出Q接可编程延时单元的输入端,可编程延时单元的输出接第二 D触发器2的置位端SET,并经过一个非门接第二 D触发器2的复位端CLR,第二 D触发器2的输出Q为输出时钟,同时第二 D触发器2的输出Q接入第一 D触发器I的复位端,并经过一个非门接第一D触发器I的置位端;可编程延时单元由若干个二选一选择器及基本延时单元构成,二选一选择器的一个选择输入端接基本延时单兀的输出端,另一个选择输入端与基本延时单元的输入端相连,直接作为可编程延时单元的输入端;采用布局布线约束技术将振荡单元及可编程延时单元约束在FPGA内部相邻的查找表内,使时钟周期精确可控。非门及二选一选择器由FPGA查找表实现,从而实现系统延时时间最小。所述基本延时单元由FPGA的查找表实现,可实现信号的纳秒级精确延时。可编程延时单元可进行拓展,即改变二选一选择器与基本延时单元的个数。本发明与现有技术相比,其显著优点(I)基于FPGA的可编程精确时钟电路可精确设置频率达吉赫兹的时钟;(2)节省FPGA资源。利用基于FPGA的可编程精确时钟电路来取代片外的晶振,可降低系统的成本,提高系统的集成度。
图1是时钟电路的总体结构。图2是振荡单元电路。图3是二选一选择器。图4是非门。
图5是基本延时单元。图6是可编程延时单元。
具体实施例方式本发明一种基于FPGA的可编程精确时钟电路,包括振荡单元和可编程延时单元,所描述的振荡单元由2个D触发器及2个非门构成,实现输出时钟信号的翻转;所描述的可编程延时单元由若干个二选一选择器及基本延时单元构成,并使用布局布线约束技术,使时钟周期精确可控。所描述的基本延时单元由FPGA的查找表实现,能够延时固定的时间。可实现纳秒级精确延时。所描述的二选一选择器及非门由FPGA的查找表实现,从而实现系统的延时时间最小。所描述的可编程延时单元由若干个二选一选择器及基本延时单元构成,二选一选择器选择是否经过基本延时单元,可实现输出不同周期的时钟信号。所描述的布局布线约束技术使延时电路的阵列结构固定在FPGA内部,使用布局布线约束技术使延时精度可控。本时钟电路可对可编程延时单元进行拓展,比如增加二选一选择器和基本延时单元的个数,来实现各种周期时钟信号。为了使本发明的目的、技术方案及优点更加清楚明确,以下参照附图对本发明进一步详细说明。本发明提供了一种基于FPGA的可编程精确时钟电路,由振荡单元和可编程延时单元组成,具体结构如图1所示。图1所示的时钟电路能实现频率达吉赫兹的时钟,本发明以图1所示结构为例,说明发明的具体实施方式
。其中振荡单元产生振荡信号,可编程延时单元确定时钟的周期。下面对各部分结构进行详细介绍
振荡单元,如图2所示,由2个D触发器及2个非门组成。振荡单元D触发器I的输出Q接可编程延时单元的输入端,可编程延时单元的输出接D触发器2的置位端(SET),并经过一个非门接D触发器2的复位端(CLR),D触发器2的输出Q为输出时钟,同时D触发器2的输出Q接入D触发器I的复位端,并经过一个非接D触发器I的置位端。二选一选择器,如图3所示,由FPGA内部的查找表实现,对其编程使A0、A1端为信号输入端,分别连接经过延时与未经过延时的信号,A3端为信号选择控制端,可选择从Al或A2输入的信号,信号经过查找表后从O端输出。非门,如图4所示,由FPGA内部的查找表实现,对其编程使A1、A2、A3端输入为0,信号从AO端输入,经过查找表后从O端输出相反值。基本延时单元,如图4所示,由FPGA内部的查找表实现,对其编程使Al、A2、A3端输入为O,信号从AO端输入,经过查找表后延时,从O端输出。信号经过查找表后延时最小延时时间,不同型号的FPGA芯片,最小延时时间略有差异。可编程延时单元,如图5所示,由若干个二选一选择器及基本延时单元构成。信号从S端输入可编程延时单元,从S_delay端输出,可通过编程选择经过基本延时单元的个数,每经过一个基本延时单元就会延时最小延时时间,若不通过基本延时单元则延时系统最小延时,连续通过η个基本延时单元就会延时η个最小延时时间加上系统最小延时。通过对二选一选择器分别实现不同时间的延时,最终输出时钟信号的周期就是2倍的延时时间。通过布局布线技术,将振荡单元、延时单元分别固定在FPGA内部相邻的查找表单元中,使延时精度可控。
可编程延时单元拓展,如图5所示,该电路由η个二选一选择器和基本延时单元构成,设计时选取不同的η,最终的时钟信号将会有不同的最小周期和最大周期。经实验,选取η为20的时候,经编程可实现8ns到16ns周期的时钟。
权利要求
1.一种基于FPGA的可编程精确时钟电路,其特征在于包括振荡单元及可编程延时单元,振荡单元的输出信号经过可编程延时单元的延时再输入振荡单元;振荡单元由2个D触发器及2个非门构成,完成输出时钟信号的翻转;振荡单元中第一 D触发器[I]的输出Q接可编程延时单元的输入端,可编程延时单元的输出接第二 D触发器[2]的置位端SET,并经过一个非门接第二 D触发器[2]的复位端CLR,第二 D触发器[2]的输出Q为输出时钟,同时第二 D触发器[2]的输出Q接入第一 D触发器[1]的复位端,并经过一个非门接第一D触发器[I]的置位端;可编程延时单元由若干个二选一选择器及基本延时单元构成,二选一选择器的一个选择输入端接基本延时单兀的输出端,另一个选择输入端与基本延时单兀的输入端相连,直接作为可编程延时单元的输入端;采用布局布线约束技术将振荡单元及可编程延时单元约束在FPGA内部相邻的查找表内,使时钟周期精确可控。
2.根据权利要求1所描述的基于FPGA的可编程精确时钟电路,其特征在于非门及二选一选择器由FPGA查找表实现,从而实现系统延时时间最小。
3.根据权利要求1所描述的基于FPGA的可编程精确时钟电路,其特征在于所述基本延时单元由FPGA的查找表实现,可实现信号的纳秒级精确延时。
4.根据权利要求1所描述的基于FPGA的可编程精确时钟电路,其特征在于可编程延时单元可进行拓展,即改变二选一选择器与基本延时单元的个数。
全文摘要
本发明公开了一种基于FPGA的可编程精确时钟电路。时钟电路由振荡单元及可编程延时单元组成。振荡单元由2个D触发器及2个非门构成,完成输出时钟信号的翻转;可编程延时单元由若干个二选一选择器及基本延时单元级联构成,并使用布局布线约束技术,使时钟周期精确可控。本发明通过编程可产生频率达吉赫兹的时钟,并使用FPGA设计实现,具有很高的精确度、较强的通用性和适用性。
文档编号H03K19/173GK103036555SQ20121048165
公开日2013年4月10日 申请日期2012年11月23日 优先权日2012年11月23日
发明者李洪涛, 朱晓华, 洪弘, 陈诚 申请人:南京理工大学