CN107425844B - 一种适用于sram型fpga的可配置时钟缓冲器 - Google Patents

一种适用于sram型fpga的可配置时钟缓冲器 Download PDF

Info

Publication number
CN107425844B
CN107425844B CN201710581051.1A CN201710581051A CN107425844B CN 107425844 B CN107425844 B CN 107425844B CN 201710581051 A CN201710581051 A CN 201710581051A CN 107425844 B CN107425844 B CN 107425844B
Authority
CN
China
Prior art keywords
gate
flop
flip
multiplexer
clock
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201710581051.1A
Other languages
English (en)
Other versions
CN107425844A (zh
Inventor
李智
张彦龙
李琦
林彦君
王科迪
杨铭谦
张健
付勇
杨佳奇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Microelectronic Technology Institute
Mxtronics Corp
Original Assignee
Beijing Microelectronic Technology Institute
Mxtronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Microelectronic Technology Institute, Mxtronics Corp filed Critical Beijing Microelectronic Technology Institute
Priority to CN201710581051.1A priority Critical patent/CN107425844B/zh
Publication of CN107425844A publication Critical patent/CN107425844A/zh
Application granted granted Critical
Publication of CN107425844B publication Critical patent/CN107425844B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17736Structural details of routing resources
    • H03K19/1774Structural details of routing resources for global signals, e.g. clock, reset
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17748Structural details of configuration resources
    • H03K19/1776Structural details of configuration resources for memories
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K23/00Pulse counters comprising counting chains; Frequency dividers comprising counting chains
    • H03K23/64Pulse counters comprising counting chains; Frequency dividers comprising counting chains with a base or radix other than a power of two

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Logic Circuits (AREA)
  • Electronic Switches (AREA)
  • Stabilization Of Oscillater, Synchronisation, Frequency Synthesizers (AREA)

Abstract

本发明提供一种适用于SRAM型FPGA的可配置时钟缓冲器,包括可配置时钟N分频电路M21、时序匹配电路M23、配置存储器M22和多路器M24。配置存储器M22接收FPGA输入的配置信息,当分频数信息为N时,可配置时钟N分频电路M21对外部输入时钟信号CLKIN进行N分频,并将分频后的时钟信号输出给多路器M24,当分频数信息为1时,时序匹配电路M23对外部输入时钟信号CLKIN进行时序调整,使其与可配置时钟N分频电路M21输出的时钟信号边沿对齐,将调整后的时钟信号输出给多路器M24,多路器M24将时钟传输给FPGA。本发明可实现任意倍数的时钟分频,时钟上升沿的延时大小与分频数N无关。

Description

一种适用于SRAM型FPGA的可配置时钟缓冲器
技术领域
本发明涉及一种适用于SRAM型FPGA的可配置时钟缓冲器,属于集成电路技术领域。
背景技术
现场可编程逻辑门阵列(以下简称FPGA)根据配置信息可以实现不同的逻辑功能。SRAM型FPGA内使用由SRAM单元组成的配置存储器阵列存储用户的配置信息,由SRAM单元组成的配置帧可以无限次反复烧写,使FPGA的应用具有极大的灵活性,特别适合航天工程对宇航用器件的高可靠、多品种、小批量的特色要求,广泛应用于航天工程中。
随着数字***复杂度的增加与通信速度的提高,使用串行通信在多数情况下成为一个较优的选择。对串行数据解串需要使用一个低频时钟,该低频时钟的频率为原始串行数据时钟频率的1/N。在FPGA中,为了给用户提供最高的使用灵活性,需要在配置中可对N进行设置,如图1所示:当需要进行数据解串处理时,可以对时钟进行N分频;当不需要进行数据解串处理时,可以提供时钟对并行数据进行流水缓存。为了保证电路整体良好的时序特性,在各种配置下时钟缓冲器输出时钟的边沿要精确对齐,满足后级电路的建立/保持时间。
目前常见的时钟缓冲器基于计数器进行分频,主要问题是分频数受限,只能进行2的幂级数的分频,同时无法保证各种分频下输出时钟边沿的精确对齐,从而降低后级电路时序特性。
发明内容
本发明解决的技术问题为:克服现有技术的不足,提供一种适用于SRAM型FPGA的可配置时钟缓冲器,可实现任意倍数的时钟分频,时钟上升沿的延时大小与分频数N无关。
本发明解决的技术方案为:一种适用于SRAM型FPGA的可配置时钟缓冲器,包括:可配置时钟N分频电路M21、时序匹配电路M23、配置存储器M22和多路器M24;
配置存储器M22接收FPGA输入的配置信息,并将该配置信息输出给可配置时钟N分频电路M21、时序匹配电路M23和输出多路器M24,所述配置信息为分频数信息;
可配置时钟N分频电路M21接收配置存储器M22输出的分频数信息以及外部输入的时钟信号CLKIN和使能信号CLKDEN,当分频数信息为1时,可配置时钟N分频电路不动作;当分频数信息为N时,可配置时钟N分频电路M21对外部输入时钟信号CLKIN进行N分频,并将分频后的时钟信号输出给多路器M24,其中N为大于1的自然数;
时序匹配电路M23接收配置存储器M22输出的分频数信息以及外部输入的时钟信号CLKIN和使能信号CLKDEN,当分频数信息为N,时序匹配电路M23不动作;当分频数信息为1时,时序匹配电路M23对外部输入时钟信号CLKIN进行时序调整,使其与可配置时钟N分频电路M21输出的时钟信号边沿对齐,将调整后的时钟信号输出给多路器M24;
多路器M24接收配置存储器M22输出的分频数信息以及可配置时钟N分频电路M21和时序匹配电路M23输出的时钟信号,根据分频数信息确定输出时钟信号:当N>1时,将可配置时钟N分频电路M21的输出时钟传输给FPGA;当N=1时,将时序匹配电路M23的输出时钟传输给FPGA。
所述可配置时钟N分频电路包括多路器M31、配置存储器M32、D触发器D30、非门G40、传输门G61、传输门G62以及n组分频控制单元;当N为奇数时,n=(N-1)/2,当N为偶数时,n=N/2-1。
配置存储器M32用于存储FPGA输入的分频数N,并将分频数N发送给多路器M31的选择端,多路器M31的第1输入端地连接;
D触发器D30的D端连接多路器M31的输出端,D触发器D30的Q端连接非门G40的输入端,非门G40的输出端连接输出多路器M31的第2输入端;D触发器D30的CLK端与外部输入时钟信号CLKIN连接,D触发器D30的R端与外部输入使能信号CLKDEN连接;
第i组分频控制单元包括或非门G5i、非门G4i和D触发器D3i;或非门G5i的第1输入端连接D触发器D3i的D端,或非门G5i的第2输入端连接D触发器D3i的Q端,或非门G5i的输出端连接多路器M31的第(2i+1)输入端,非门G4i的输入端连接D触发器D3i的Q端,非门G4i的输出端连接多路器M31的第(2i+2)输入端,D触发器D3i的D端连接D触发器D3(i-1)的Q端,其中1<=i<=n;
每个分频控制单元中D触发器的CLK端与外部输入时钟信号CLKIN连接,每个分频控制单元中D触发器的R端与外部输入使能信号CLKDEN连接;
传输门G61的输入端连接D触发器D30的Q端,传输门G61的输出端连接传输门G62的输入端,传输门G62的输出端作为可配置时钟N分频电路的输出端,用于输出时钟NCLKOUT。
所述时序匹配电路包括D触发器D130、D触发器D131、非门G130、非门G131、非门G132、非门G133、传输门G134和2选1多路器M130;
D触发器D130的CLK端连接外部输入时钟信号CLKIN,D触发器D130的D端连接非门G131的输出端,D触发器D130的Q端同时与非门G131的输入端、非门G133的输入端以及传输门G134的输入端连接,传输门G134的输出端与2选1多路器M130的第一输入端连接,非门G133的输出端与2选1多路器M130的第二输入端连接;
非门G130的输入端连接外部输入时钟信号CLKIN,非门G130的输出端连接D触发器D131的CLK端,D触发器D130的R端以及D触发器D131的R端同时与外部输入使能信号CLKDEN连接;D触发器D131的D端连接非门G132的输出端;D触发器D131的Q端同时与非门G132的输入端以及2选1多路器M130的选择端连接,2选1多路器M130的输出端作为时序匹配电路的输出端,用于输出时钟1CLKOUT。
所述传输门G61、非门G133以及传输门G134尺寸相同,传输门G62与2选1多路器M130内所用传输门的尺寸相同。
本发明与现有技术相比的有益效果在于:
(1)使用本发明的可配置时钟N分频电路,根据FPGA的配置信息对分频数进行配置,通过调整电路结构可以实现任意整数倍数的时钟分频。
(2)当分频数大于1时,输入时钟通过可配置时钟N分频电路进入FPGA内部;当分频数等于1时,输入时钟通过时序匹配电路进入FPGA内部。当时钟通过可配置时钟N分频电路传输时,其上升沿延时为一个D触发器的CLK-Q的延时、两个传输门的延时与一个2选1多路器延时的总和;当时钟通过时序匹配电路时,其上升沿延时为一个D触发器的CLK-Q的延时、一个传输门或一个非门的延时与两个2选1多路器延时的总和,通过电路设计(设置器件尺寸),可使传输门、非门、二选一多路器的延时基本相同,使得不同分频倍数下时钟上升沿可以对齐,时钟上升沿的延时大小与分频数N无关。保证各种分频下输出时钟边沿的精确对齐,从而降低后级电路时序特性。
附图说明
图1为时钟缓冲器在FPGA中的应用示意图;
图2为本发明的时钟缓冲器整体结构示意图;
图3为本发明的可配置时钟N分频电路结构示意图;
图4为本发明的可配置时钟N(N=8时)分频电路结构示意图;
图5为本发明时钟分频电路进行2分频时电路工作原理示意图,其中(a)为电路结构示意图,(b)为时序图;
图6为本发明时钟分频电路进行3分频时电路工作原理示意图,其中(a)为电路结构示意图,(b)为时序图;
图7为本发明时钟分频电路进行4分频时电路工作原理示意图,其中(a)为电路结构示意图,(b)为时序图;
图8为本发明时钟分频电路进行5分频时电路工作原理示意图,其中(a)为电路结构示意图,(b)为时序图;
图9为本发明时钟分频电路进行6分频时电路工作原理示意图,其中(a)为电路结构示意图,(b)为时序图;
图10为本发明时钟分频电路进行7分频时电路工作原理示意图,其中(a)为电路结构示意图,(b)为时序图;
图11为本发明时钟分频电路进行8分频时电路工作原理示意图,其中(a)为电路结构示意图,(b)为时序图;
图12为本发明的可配置时钟N(N=10时)分频电路结构示意图;
图13为本发明时序匹配电路结构示意图;
图14为本发明时序匹配电路工作原理示意图。
具体实施方式
下面结合附图和具体实施例对本发明做进一步详细描述。
图2所示为本发明的适用于SRAM型FPGA的可配置时钟缓冲器,包括:可配置时钟N分频电路M21、时序匹配电路M23、配置存储器M22和多路器M24;
配置存储器M22接收FPGA输入的配置信息,并将该配置信息输出给可配置时钟N分频电路M21、时序匹配电路M23和输出多路器M24,其中配置信息为分频数信息;
可配置时钟N分频电路M21接收配置存储器M22输出的分频数信息以及外部输入的时钟信号CLKIN和使能信号CLKDEN,当分频数信息为1时,可配置时钟N分频电路不动作;当分频数信息为N时,可配置时钟N分频电路M21对外部输入时钟信号CLKIN进行N分频,并将分频后的时钟信号输出给多路器M24,其中N为大于1的自然数;
时序匹配电路M23接收配置存储器M22输出的分频数信息以及外部输入的时钟信号CLKIN和使能信号CLKDEN,当分频数信息为N,时序匹配电路M23不动作;当分频数信息为1时,时序匹配电路M23对外部输入时钟信号CLKIN进行时序调整,使其与可配置时钟N分频电路M21输出的时钟信号边沿对齐,将调整后的时钟信号输出给多路器M24;
多路器M24接收配置存储器M22输出的分频数信息以及可配置时钟N分频电路M21和时序匹配电路M23输出的时钟信号,根据分频数信息确定输出时钟信号:当N>1时,将可配置时钟N分频电路M21的输出时钟传输给FPGA;当N=1时,将时序匹配电路M23的输出时钟传输给FPGA。
图3所示为本发明的可配置时钟N分频电路,包括多路器M31、配置存储器M32、D触发器D30、非门G40、传输门G61、传输门G62以及n组分频控制单元;当N为奇数时,n=(N-1)/2,当N为偶数时,n=N/2-1。
配置存储器M32用于存储FPGA输入的分频数N,并将分频数N发送给多路器M31的选择端,多路器M31的第1输入端地连接;
D触发器D30的D端连接多路器M31的输出端,D触发器D30的Q端连接非门G40的输入端,非门G40的输出端连接输出多路器M31的第2输入端;D触发器D30的CLK端与外部输入时钟信号CLKIN连接,D触发器D30的R端与外部输入使能信号CLKDEN连接;
第i组分频控制单元包括或非门G5i、非门G4i和D触发器D3i;或非门G5i的第1输入端连接D触发器D3i的D端,或非门G5i的第2输入端连接D触发器D3i的Q端,或非门G5i的输出端连接多路器M31的第(2i+1)输入端,非门G4i的输入端连接D触发器D3i的Q端,非门G4i的输出端连接多路器M31的第(2i+2)输入端,D触发器D3i的D端连接D触发器D3(i-1)的Q端,其中1<=i<=n;
每个分频控制单元中D触发器的CLK端与外部输入时钟信号CLKIN连接,每个分频控制单元中D触发器的R端与外部输入使能信号CLKDEN连接;
传输门G61的输入端连接D触发器D30的Q端,传输门G61的输出端连接传输门G62的输入端,传输门G62的输出端作为可配置时钟N分频电路的输出端,用于输出时钟NCLKOUT。
下面以N=8为例,说明本发明的可配置时钟N分频电路的工作过程与工作原理。N=8时,本发时的可配置时钟N分频电路可简化为图4所示电路。如图所示,分频电路包括:D触发器D30、D触发器D31、D触发器D32、D触发器D33,非门G40、非门G41、非门G42、非门G43,或非门G51、或非门G52、或非门G53,8选1多路器M31、配置存储器M32、传输门G61与传输门G62。
输入时钟信号CLKIN连接D触发器D30的CLK端、D触发器D31的CLK端、D触发器D32的CLK端、D触发器D33的CLK端。使能信号CLKDEN连接D触发器D30的R端、D触发器D31的R端、D触发器D32的R端、D触发器D33的R端。
D触发器D30的D端连接8选1多路器M31的输出端;D触发器D30的Q端连接D触发器D31的D端、非门G40的输入端、或非门G51的第1输入端、传输门G61的输入端。D触发器D31的Q端连接D触发器D32的D端、非门G41的输入端、或非门G51的第2输入端、或非门G52的第1输入端。D触发器D32的Q端连接D触发器D33的D端、非门G42的输入端、或非门G52的第2输入端、或非门G53的第1输入端。D触发器D33的Q端连接非门G43的输入端、或非门G53的第2输入端。
8选1多路器M31的第1输入端连接至地;8选1多路器M31的第2输入端连接非门G40的输出;8选1多路器M31的第3输入端连接或非门G51的输出端;8选1多路器M31的第4输入端连接非门G41的输出端;8选1多路器M31的第5输入端连接或非门G52的输出端;8选1多路器M31的第6输入端连接非门G42的输出端;8选1多路器M31的第7输入端连接或非门G53的输出端;8选1多路器M31的第8输入端连接非门G43的输出端。
传输门G61的输出端连接传输门G62的输入端。传输门G62的输出端用于输出时钟信号NCLKOUT。
为方便描述电路结构与工作原理,对电路中的关键结点进行命名:定义D触发器D30的输出端为信号Q0、D触发器D31的输出端为信号Q1、D触发器D32的输出端为信号Q2、D触发器D33的输出端为信号Q3;定义8选1多路器M31的输出端输出信号D0。下面结合波形说明电路的工作原理。
进行2分频时电路的工作过程如图5所示。如图5中(a)所示,配置存储器将001输出给8选1多路器M31的选择端,8选1多路器M31将非门G40的输出连接至8选1多路器M31的输出端。
图5中(b)为时序图。开始时,CLKDEN为1,D触发器D30为复位状态,D0、Q0分别为1、0。当CLKDEN变为0后,D触发器D30开始工作。
第1个CLKIN上升沿时,由于D0为1,Q0变为1。之后,由于Q0变为1,D0变为0。第1个CLKIN上升沿后,D0、Q0分别为0、1。
第2个CLKIN上升沿时,由于D0为0,Q0变为0。之后,由于Q0变为0,D0变为1。第2个CLKIN上升沿后,D0、Q0分别为1、0。
此时,电路回到初始状态,后续工作状态与前述相同。此时,NCLKOUT为CLKIN的2分频。
进行3分频时电路的工作过程如图6所示。如图6中(a)所示,配置存储器将010输出给8选1多路器M31的选择端,8选1多路器M31将或非门G51的输出连接至8选1多路器M31的输出端。
图6中(b)为时序图。开始时,CLKDEN为1,D触发器D30、D触发器D31为复位状态,D0、Q1、Q2分别为1、0、0。当CLKDEN变为0后,D触发器D30、D触发器D31开始工作。
第1个CLKIN上升沿时:由于D0、Q0分别为1、0,Q0、Q1分别变1、0;之后,由于Q0为1,或非门G51使D0变为0。第1个CLKIN上升沿后,D0、Q0、Q1分别为0、1、0。
第2个CLKIN上升沿时:由于D0、Q0分别为0、1,Q0、Q1分别变0、1;之后,由于Q1为1,或非门G51使D0为0不变。第2个CLKIN上升沿后,D0、Q0、Q1分别为0、0、1。
第3个CLKIN上升沿时:由于D0、Q0分别为0、0,Q0、Q1分别变0、0;之后,由于Q0与Q1均为0,或非门G51使D0变为1。第3个CLKIN上升沿后,D0、Q0、Q1分别为1、0、0。
此时,电路回到初始状态,后续工作状态与前述相同,D0、Q0、Q1状态转换如表1所示。可见NCLKOUT为CLKIN的3分频。
表1 3分频时D0、Q0、Q1状态转换表
Figure BDA0001352293010000101
进行4分频时电路的工作过程如图7所示。如图7中(a)所示,配置存储器将011输出给8选1多路器M31的选择端,8选1多路器M31将非门G41的输出连接至8选1多路器M31的输出端。
图7中(b)为时序图。开始时,CLKDEN为1,D触发器D30、D触发器D31为复位状态,D0、Q0、Q1分别为1、0、0。当CLKDEN变为0后,D触发器D30、D触发器D31开始工作。
第1个CLKIN上升沿时:由于D0、Q0分别为1、0,Q0、Q1分别变为1、0。之后,由于Q1为0不变,非门G41使D0为1不变。第1个CLKIN上升沿后,D0、Q0、Q1分别为1、1、0。
第2个CLKIN上升沿时:由于D0、Q0分别为1、1,Q0、Q1分别变为1、1。之后,由于Q1变为1,非门G41使D0变为0。第2个CLKIN上升沿后,D0、Q0、Q1分别为0、1、1。
第3个CLKIN上升沿时:由于D0、Q0分别为0、1,Q0、Q1分别变为0、1。之后,由于Q1为1不变,非门G41使D0为0不变。第3个CLKIN上升沿后,D0、Q0、Q1分别为0、0、1。
第4个CLKIN上升沿时:由于D0、Q0分别为0、0,Q0、Q1分别变为0、0。之后,由于Q1变为0,非门G41使D0变为1。第4个CLKIN上升沿后,D0、Q0、Q1分别为1、0、0。
此时,电路回到初始状态,后续工作状态与前述相同,D0、Q0、Q1状态转换如表2所示。可见NCLKOUT为CLKIN的4分频。
表2 4分频时D0、Q0、Q1状态转换表
Figure BDA0001352293010000111
进行5分频时电路的工作过程如图8所示。如图8中(a)所示,配置存储器将100输出给8选1多路器M31的选择端,8选1多路器M31将或非门G52的输出连接至8选1多路器M31的输出端。
图8中(b)为时序图。开始时,CLKDEN为1,D触发器D30、D触发器D31、D触发器D32为复位状态,D0、Q0、Q1、Q2分别为1、0、0、0。当CLKDEN变为0后,D触发器D30、D触发器D31、D触发器D32开始工作。
第1个CLKIN上升沿时:由于D0、Q0、Q1分别为1、0、0,Q0、Q1、Q2分别变为1、0、0。之后,由于Q1、Q2为0不变,D0为1不变。第1个CLKIN上升沿后,D0、Q0、Q1、Q2分别为1、1、0、0。
第2个CLKIN上升沿时:由于D0、Q0、Q1分别为1、1、0,Q0、Q1、Q2分别变为1、1、0。之后,由于Q1变为1,D0变为0。第2个CLKIN上升沿后,D0、Q0、Q1、Q2分别为0、1、1、0。
第3个CLKIN上升沿时:由于D0、Q0、Q1分别为0、1、1,Q0、Q1、Q2分别变为0、1、1。之后,由于Q1、Q2均为1,D0为0不变。第3个CLKIN上升沿后,D0、Q0、Q1、Q2分别为0、0、1、1。
第4个CLKIN上升沿时:由于D0、Q0、Q1分别为0、0、1,Q0、Q1、Q2分别变为0、0、1。之后,由于Q2为1,D0为0不变。第4个CLKIN上升沿后,D0、Q0、Q1、Q2分别为0、0、0、1。
第5个CLKIN上升沿时:由于D0、Q0、Q1分别为0、0、0,Q0、Q1、Q2分别变为0、0、0。之后,由于Q1、Q2均为0,D0变为1。第5个CLKIN上升沿后,D0、Q0、Q1、Q2分别为1、0、0、0。
此时,电路回到初始状态,后续工作状态与前述相同,D0、Q0、Q1、Q2状态转换如表3所示,可见NCLKOUT为CLKIN的5分频。
表3 5分频时D0、Q0、Q1、Q2状态转换表
Figure BDA0001352293010000121
Figure BDA0001352293010000131
进行6分频时电路的工作过程如图9所示。如图9中(a)所示,配置存储器将101输出给8选1多路器M31的选择端,8选1多路器M31将非门G42的输出连接至8选1多路器M31的输出端。
图9中(b)为时序图。开始时,CLKDEN为1,D触发器D30、D触发器D31、D触发器D32为复位状态,D0、Q0、Q1、Q2分别为1、0、0、0。当CLKDEN变为0后,D触发器D30、D触发器D31、D触发器D32开始工作。
第1个CLKIN上升沿时:由于D0、Q0、Q1分别为1、0、0,Q0、Q1、Q2分别变为1、0、0。之后,由于Q2为0不变,D0为1不变。第1个CLKIN上升沿后,D0、Q0、Q1、Q2分别为1、1、0、0。
第2个CLKIN上升沿时:由于D0、Q0、Q1分别为1、1、0,Q0、Q1、Q2分别变为1、1、0。之后,由于Q2为0不变,D0为1不变。第2个CLKIN上升沿后,D0、Q0、Q1、Q2分别为1、1、1、0。
第3个CLKIN上升沿时:由于D0、Q0、Q1分别为1、1、1,Q0、Q1、Q2分别变为1、1、1。之后,由于Q2变为1,D0变为0。第3个CLKIN上升沿后,D0、Q0、Q1、Q2分别为0、1、1、1。
第4个CLKIN上升沿时:由于D0、Q0、Q1分别为0、1、1,Q0、Q1、Q2分别变为0、1、1。之后,由于Q2为1不变,D0为0不变。第4个CLKIN上升沿后,D0、Q0、Q1、Q2分别为0、0、1、1。
第5个CLKIN上升沿时:由于D0、Q0、Q1分别为0、0、1,Q0、Q1、Q2分别变为0、0、1。之后,由于Q23为1不变,D0为0不变。第5个CLKIN上升沿后,D0、Q0、Q1、Q2分别为0、0、0、1。
第6个CLKIN上升沿时:由于D0、Q0、Q1分别为0、0、0,Q0、Q1、Q2分别变为0、0、0。之后,由于Q23变为0,D0变为1。第6个CLKIN上升沿后,D0、Q0、Q1、Q2分别为1、0、0、0。
此时,电路回到初始状态,后续工作状态与前述相同,D0、Q0、Q1、Q2状态转换如表4所示,可见NCLKOUT为CLKIN的6分频。
表4 6分频时的D0、Q0、Q1、Q2状态转换表
Figure BDA0001352293010000141
进行7分频时电路的工作过程如图10所示。如图10中(a)所示,配置存储器将110输出给8选1多路器M31的选择端,8选1多路器M31将或非门G53的输出连接至8选1多路器M31的输出端。
图10中(b)为时序图。开始时,CLKDEN为1,D触发器D30、D触发器D31、D触发器D32、D触发器D33为复位状态,D0、Q0、Q1、Q2、Q3分别为1、0、0、0、0。当CLKDEN变为0后,D触发器D30、D触发器D31、D触发器D32、D触发器D33开始工作。
第1个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为1、0、0、0,Q0、Q1、Q2、Q3分别变为1、0、0、0。之后,由于Q2与Q3为0不变,D0为1不变。第1个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为1、1、0、0、0。
第2个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为1、1、0、0,Q0、Q1、Q2、Q3分别变为1、1、0、0。之后,由于Q2与Q3为0不变,D0为1不变。第2个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为1、1、1、0、0。
第3个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为1、1、1、0,Q0、Q1、Q2、Q3分别变为1、1、1、0。之后,由于Q2变为1,D0变为0。第3个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为0、1、1、1、0。
第4个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为0、1、1、1,Q0、Q1、Q2、Q3分别变为0、1、1、1。之后,由于Q2与Q3均为1,D0为0不变。第4个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为0、0、1、1、1。
第5个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为0、0、1、1,Q0、Q1、Q2、Q3分别变为0、0、1、1。之后,由于Q2与Q3均为1,D0为0不变。第5个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为0、0、0、1、1。
第6个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为0、0、0、1,Q0、Q1、Q2、Q3分别变为0、0、0、1。之后,由于Q3为1不变,D0为0不变。第6个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为0、0、0、0、1。
第7个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为0、0、0、0,Q0、Q1、Q2、Q3分别变为0、0、0、0。之后,由于Q3变为0,D0变为1。第7个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为1、0、0、0、0。
此时,电路回到初始状态,后续工作状态与前述相同,D0、Q0、Q1、Q2、Q3状态转换如表5所示,可见NCLKOUT为CLKIN的7分频。
表5 7分频时D0、Q0、Q1、Q2、Q3状态转换表
Figure BDA0001352293010000161
进行8分频时电路的工作过程如图11所示。如图11中(a)所示,配置存储器将111输出给8选1多路器M31的选择端,8选1多路器M31将非门G43的输出连接至8选1多路器M31的输出端。
图11中(b)为时序图。开始时,CLKDEN为1,D触发器D30、D触发器D31、D触发器D32、D触发器D33为复位状态,D0、Q0、Q1、Q2、Q3分别为1、0、0、0、0。当CLKDEN变为0后,D触发器D30、D触发器D31、D触发器D32、D触发器D33开始工作。
第1个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为1、0、0、0,Q0、Q1、Q2、Q3分别变为1、0、0、0。之后,由于Q3为0不变,D0为1不变。第1个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为1、1、0、0、0。
第2个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为1、1、0、0,Q0、Q1、Q2、Q3分别变为1、1、0、0。之后,由于Q3为0不变,D0为1不变。第2个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为1、1、1、0、0。
第3个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为1、1、1、0,Q0、Q1、Q2、Q3分别变为1、1、1、0。之后,由于Q3为0不变,D0为1不变。第3个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为1、1、1、1、0。
第4个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为1、1、1、1,Q0、Q1、Q2、Q3分别变为1、1、1、1。之后,由于Q3变为1,D0变为0。第4个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为0、1、1、1、1。
第5个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为0、1、1、1,Q0、Q1、Q2、Q3分别变为0、1、1、1。之后,由于Q3为1不变,D0为0不变。第5个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为0、0、1、1、1。
第6个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为0、0、1、1,Q0、Q1、Q2、Q3分别变为0、0、1、1。之后,由于Q3为1不变,D0为0不变。第6个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为0、0、0、1、1。
第7个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为0、0、0、1,Q0、Q1、Q2、Q3分别变为0、0、0、1。之后,由于Q3为1不变,D0为0不变。第7个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为0、0、0、0、1。
第8个CLKIN上升沿时:由于D0、Q0、Q1、Q2分别为0、0、0、0,Q0、Q1、Q2、Q3分别变为0、0、0、0。之后,由于Q3变为0,D0变为0。第8个CLKIN上升沿后,D0、Q0、Q1、Q2、Q3分别为1、0、0、0、0。
此时,电路回到初始状态,后续工作状态与前述相同,D0、Q0、Q1、Q2、Q3状态转换如表6所示,可见NCLKOUT为CLKIN的8分频。
表6 8分频时的D0、Q0、Q1、Q2、Q3状态转换表
Figure BDA0001352293010000181
如前所述,通过配置存储器M32对8选1多路器M31进行控制,可以实现任意N分频(N=2~8)。按照本发明的方案可以实现更高的分频数。图12所示为实现9分频与10分频的电路图。通过在图4所示8分频电路的基础上增加D触发器D34、或非门G54、非门G44,并把8选1多路器改为10选1多路器,即可实现9分频与10分频。其工作原理与8分频类似,不再赘述。
从上述各个时序图中可以看出,当N为偶数时,本发明分频后的时钟占空比为50%;当N为奇数时,分频后的时钟占空比小于50%。
图13所示为本发明的时序匹配电路,时序匹配电路的作用即为对时钟加沿进行延时,使时钟通过时序匹配电路后的时序特性与N可配置时钟分频电路相匹配。时序匹配电路包括D触发器D130、D触发器D131、非门G130、非门G131、非门G132、非门G133、传输门G134和2选1多路器M130。
D触发器D130的CLK端连接外部输入时钟信号CLKIN,D触发器D130的D端连接非门G131的输出端,D触发器D130的Q端同时与非门G131的输入端、非门G133的输入端以及传输门G134的输入端连接,传输门G134的输出端与2选1多路器M130的第一输入端连接,非门G133的输出端与2选1多路器M130的第二输入端连接;
非门G130的输入端连接外部输入时钟信号CLKIN,非门G130的输出端连接D触发器D131的CLK端,D触发器D130的R端以及D触发器D131的R端同时与外部输入使能信号CLKDEN连接;D触发器D131的D端连接非门G132的输出端;D触发器D131的Q端同时与非门G132的输入端以及2选1多路器M130的选择端连接,2选1多路器M130的输出端作为时序匹配电路的输出端,用于输出时钟1CLKOUT。
为方便描述电路结构与工作原理,对电路中的关键结点进行命名:定义D触发器D130的输出端为信号QQ0、D触发器D131的输出端为信号QQ1;定义2选1多路器M130的第1输入端为信号I1、第2输入端为信号I2。下面结合波形说明时序匹配电路的工作原理。
时序匹配电路工作时波形如图14所示,其工作过程如下:开始时,CLKDEN为1,D触发器D130、D触发器D131为复位状态。此时QQ0与QQ1均为0,I1与I2分别为0、1,多路器M130将I1传输至输出1CLKOUT。此时1CLKOUT为0。当CLKDEN变为0后,D触发器D130、D触发器D131开始工作。
第1个CLKIN上升沿时:QQ0由0变为1,QQ1为0不变。此后,I1由0变为1,I2由1变为0。由于QQ1为0不变,多路器M130将I1输出至1CLKOUT。1CLKOUT将跟随I1由0变为1。
第1个CLKIN下降沿时:QQ0为1不变,QQ1由0变为1。I1为1不变,I2为0不变。由于QQ1由0变为1,多路器M130将I2输出至1CLKOUT。1CLKOUT将由跟随I1变为跟随I2,即由1变为0。
第2个CLKIN上升沿时:QQ0由1变为0,QQ1为1不变。此后,I1由1变为0,I2由0变为1。由于QQ1为1,多路器M130将I2输出至1CLKOUT。1CLKOUT将跟随I2由0变为1。
第2个CLKIN下降沿时:QQ0为0不变,QQ1由1变为0。I1为0不变,I2为1不变。由于QQ1由1变为0,多路器M130将I1输出至1CLKOUT。1CLKOUT将跟随I2变为跟随I1,即由1变为0。
此时,电路回到初始状态,后续工作状态与前述相同。可见1CLKOUT与CLKIN具有相同的频率。
通过对可配置时钟N分频电路的分析可知:对任意的分频数,输出时钟NCLKOUT与输入时钟CLKIN上升沿的相对延时为D触发器CLK-Q端的延时与两个传输门的延时之和,该延时与分频数N的大小无关。
通过对时序匹配电路的分析可知:输出时钟1CLKOUT与输入时钟CLKIN上升沿的相对延时为为1个D触发器的CLK-Q的延时、1个传输门(或一个非门的延时)与1个2选1多路器延时的总和。
通过电路设计,如令传输门G61、非门G133以及传输门G134尺寸相同、同时令传输门G62与2选1多路器M130内所用传输门的尺寸相同,可使传输门、非门、二选一多路器的延时相同。使得时钟上升沿通过可配置时钟N分频电路与时序匹配电路的延时相同,使得任何分频倍数下,时钟上升沿的延时大小与分频数N无关。
本说明书中未作详细描述的内容属本领域专业技术人员的公知技术。

Claims (4)

1.一种适用于SRAM型FPGA的可配置时钟缓冲器,其特征在于包括:可配置时钟N分频电路M21、时序匹配电路M23、配置存储器M22和多路器M24;
配置存储器M22接收FPGA输入的配置信息,并将该配置信息输出给可配置时钟N分频电路M21、时序匹配电路M23和输出多路器M24,所述配置信息为分频数信息;
可配置时钟N分频电路M21接收配置存储器M22输出的分频数信息以及外部输入的时钟信号CLKIN和使能信号CLKDEN,当分频数信息为1时,可配置时钟N分频电路不动作;当分频数信息为N时,可配置时钟N分频电路M21对外部输入时钟信号CLKIN进行N分频,并将分频后的时钟信号输出给多路器M24,其中N为大于1的自然数;
时序匹配电路M23接收配置存储器M22输出的分频数信息以及外部输入的时钟信号CLKIN和使能信号CLKDEN,当分频数信息为N,时序匹配电路M23不动作;当分频数信息为1时,时序匹配电路M23对外部输入时钟信号CLKIN进行时序调整,使其与可配置时钟N分频电路M21输出的时钟信号边沿对齐,将调整后的时钟信号输出给多路器M24;
多路器M24接收配置存储器M22输出的分频数信息以及可配置时钟N分频电路M21和时序匹配电路M23输出的时钟信号,根据分频数信息确定输出时钟信号:当N>1时,将可配置时钟N分频电路M21的输出时钟传输给FPGA;当N=1时,将时序匹配电路M23的输出时钟传输给FPGA。
2.根据权利要求1所述的一种适用于SRAM型FPGA的可配置时钟缓冲器,其特征在于:所述可配置时钟N分频电路包括多路器M31、配置存储器M32、D触发器D30、非门G40、传输门G61、传输门G62以及n组分频控制单元;当N为奇数时,n=(N-1)/2,当N为偶数时,n=N/2-1;
配置存储器M32用于存储FPGA输入的分频数N,并将分频数N发送给多路器M31的选择端,多路器M31的第1输入端地连接;
D触发器D30的D端连接多路器M31的输出端,D触发器D30的Q端连接非门G40的输入端,非门G40的输出端连接输出多路器M31的第2输入端;D触发器D30的CLK端与外部输入时钟信号CLKIN连接,D触发器D30的R端与外部输入使能信号CLKDEN连接;
第i组分频控制单元包括或非门G5i、非门G4i和D触发器D3i;或非门G5i的第1输入端连接D触发器D3i的D端,或非门G5i的第2输入端连接D触发器D3i的Q端,或非门G5i的输出端连接多路器M31的第(2i+1)输入端,非门G4i的输入端连接D触发器D3i的Q端,非门G4i的输出端连接多路器M31的第(2i+2)输入端,D触发器D3i的D端连接D触发器D3(i-1)的Q端,其中1<=i<=n;
每个分频控制单元中D触发器的CLK端与外部输入时钟信号CLKIN连接,每个分频控制单元中D触发器的R端与外部输入使能信号CLKDEN连接;
传输门G61的输入端连接D触发器D30的Q端,传输门G61的输出端连接传输门G62的输入端,传输门G62的输出端作为可配置时钟N分频电路的输出端,用于输出时钟NCLKOUT。
3.根据权利要求2所述的一种适用于SRAM型FPGA的可配置时钟缓冲器,其特征在于:所述时序匹配电路包括D触发器D130、D触发器D131、非门G130、非门G131、非门G132、非门G133、传输门G134和2选1多路器M130;
D触发器D130的CLK端连接外部输入时钟信号CLKIN,D触发器D130的D端连接非门G131的输出端,D触发器D130的Q端同时与非门G131的输入端、非门G133的输入端以及传输门G134的输入端连接,传输门G134的输出端与2选1多路器M130的第一输入端连接,非门G133的输出端与2选1多路器M130的第二输入端连接;
非门G130的输入端连接外部输入时钟信号CLKIN,非门G130的输出端连接D触发器D131的CLK端,D触发器D130的R端以及D触发器D131的R端同时与外部输入使能信号CLKDEN连接;D触发器D131的D端连接非门G132的输出端;D触发器D131的Q端同时与非门G132的输入端以及2选1多路器M130的选择端连接,2选1多路器M130的输出端作为时序匹配电路的输出端,用于输出时钟1CLKOUT。
4.根据权利要求3所述的一种适用于SRAM型FPGA的可配置时钟缓冲器,其特征在于:所述传输门G61、非门G133以及传输门G134尺寸相同,传输门G62与2选1多路器M130内所用传输门的尺寸相同。
CN201710581051.1A 2017-07-17 2017-07-17 一种适用于sram型fpga的可配置时钟缓冲器 Active CN107425844B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710581051.1A CN107425844B (zh) 2017-07-17 2017-07-17 一种适用于sram型fpga的可配置时钟缓冲器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710581051.1A CN107425844B (zh) 2017-07-17 2017-07-17 一种适用于sram型fpga的可配置时钟缓冲器

Publications (2)

Publication Number Publication Date
CN107425844A CN107425844A (zh) 2017-12-01
CN107425844B true CN107425844B (zh) 2020-09-11

Family

ID=60430005

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710581051.1A Active CN107425844B (zh) 2017-07-17 2017-07-17 一种适用于sram型fpga的可配置时钟缓冲器

Country Status (1)

Country Link
CN (1) CN107425844B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108847842B (zh) * 2018-06-05 2022-02-11 西安微电子技术研究所 一种具有自刷新功能的抗单粒子翻转效应异步分频电路
CN109036276A (zh) * 2018-09-25 2018-12-18 深圳市峰泳科技有限公司 一种Micro-OLED微型显示器驱动电路

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010124228A (ja) * 2008-11-19 2010-06-03 Sharp Corp 分周回路および電子機器
CN201663588U (zh) * 2010-03-17 2010-12-01 中兴通讯股份有限公司 一种实现多相位时钟分数分频的装置
CN102208911A (zh) * 2011-03-02 2011-10-05 北京航天测控技术有限公司 基于fpga片内锁相环的窗口时钟生成和动态配置方法
CN104283561A (zh) * 2014-09-22 2015-01-14 电子科技大学 一种异步时钟并串转换半周期输出电路
CN104931778A (zh) * 2015-06-09 2015-09-23 浙江大学 一种时钟频率检测电路
CN105553447A (zh) * 2014-11-03 2016-05-04 上海华虹宏力半导体制造有限公司 时钟切换电路
CN105675981A (zh) * 2016-03-18 2016-06-15 中国科学技术大学 一种基于fpga的频率计及频率测量方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010124228A (ja) * 2008-11-19 2010-06-03 Sharp Corp 分周回路および電子機器
CN201663588U (zh) * 2010-03-17 2010-12-01 中兴通讯股份有限公司 一种实现多相位时钟分数分频的装置
CN102208911A (zh) * 2011-03-02 2011-10-05 北京航天测控技术有限公司 基于fpga片内锁相环的窗口时钟生成和动态配置方法
CN104283561A (zh) * 2014-09-22 2015-01-14 电子科技大学 一种异步时钟并串转换半周期输出电路
CN105553447A (zh) * 2014-11-03 2016-05-04 上海华虹宏力半导体制造有限公司 时钟切换电路
CN104931778A (zh) * 2015-06-09 2015-09-23 浙江大学 一种时钟频率检测电路
CN105675981A (zh) * 2016-03-18 2016-06-15 中国科学技术大学 一种基于fpga的频率计及频率测量方法

Also Published As

Publication number Publication date
CN107425844A (zh) 2017-12-01

Similar Documents

Publication Publication Date Title
CN106992770B (zh) 时钟电路及其传输时钟信号的方法
US6400735B1 (en) Glitchless delay line using gray code multiplexer
US7505548B2 (en) Circuits and methods for programmable integer clock division with 50% duty cycle
US7138844B2 (en) Variable delay circuitry
US8471607B1 (en) High-speed frequency divider architecture
CN111865300B (zh) 应用于双环路延迟锁相环的可编程数字控制延迟线
CN107425844B (zh) 一种适用于sram型fpga的可配置时钟缓冲器
CN115361003A (zh) 延时链控制电路
US3456200A (en) Frequency divider having a first decade with an adjustable counting length that is repeatable during each divider cycle
CN113360444B (zh) 一种基于菊花链级联数据产生***的数据同步产生方法
US20080012605A1 (en) Glitch-free clock switcher
CN114499147A (zh) 一种延迟电路的校准电路、校准方法、装置以及介质
EP3350928B1 (en) High-speed programmable clock divider
CN215642687U (zh) 一种菊花链式数据同步产生***
CN108777575B (zh) 分频器
CN111490776B (zh) 一种基于计数器占空比可调同步分频器
US8115532B2 (en) Linear monotonic delay chain circuit
US11262786B1 (en) Data delay compensator circuit
KR20060131743A (ko) 주파수 분할기 및 전자 장치
CN114204937B (zh) 一种分频器电路及频率合成器
CN216699984U (zh) 一种同异步混合计数器及半导体器件
US10389341B1 (en) Synchronize-able modular physical layer architecture for scalable interface
CN116758971B (zh) 一种寄存器堆的时序测试电路及芯片
WO2022237886A1 (zh) 延时电路、脉冲产生电路、芯片及服务器
CN116683896B (zh) 一种占空比可调电路、芯片及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant