用于提供减少的占空比失真的技术的制作方法

文档序号:3411657阅读:381来源:国知局
专利名称:用于提供减少的占空比失真的技术的制作方法
技术领域
本发明涉及电子电路,并且更具体地涉及用于提供减少的占空比失真的技术。
背景技术
图IA图示了用在延迟锁定环(DLL)电路中的现有技术的延迟线电路。图IA的延迟线电路包括串联耦合的16个延迟电路10-25以及5至I多路复用器电路50。延迟电路10-25将参考时钟信号REFCK延迟。计数器控制信号CCS控制延迟电路10-25的延迟。多路复用器50基于静态选择信号的逻辑状态从延迟电路15、17、19、21或25之一的输出中选择参考时钟信号的延迟版本,以生成反馈时钟信号FBCK。静态选择信号的逻辑状态在DLL的操作期间保持恒定。FBCK被传送到DLL中的相位检测器。延迟电路10-25中的每一个包括图IB所示的电路架构。图IB包括IX延迟电路101-108以及2至I多路复用器110。延迟电路101-108中的每一个包括与标准CMOS反相器串联I禹合的电流饥饿型反相器(current starving inverter)。延迟电路101-108中的每个电流饥饿型反相器为可变延迟电路,该可变延迟电路包括并联耦合的9个PMOS晶体管和并联耦合的9个NMOS晶体管。PMOS晶体管和NMOS晶体管可以为电流饥饿型反相器生成9个不同的延迟选项。延迟电路101-104串联耦合以将延迟电路101的输入处的输入时钟信号延迟以在多路复用器110的高频输入处生成延迟时钟信号。延迟电路101-108串联耦合以将延迟电路101的输入处的输入时钟信号延迟以在多路复用器110的低频输入处生成延迟时钟信号。多路复用器110基于静态选择信号的逻辑状态选择在低频输入处的延迟时钟信号或在高频输入处的延迟时钟信号作为在输出处的输出时钟信号。静态选择信号的逻辑状态在DLL的操作期间保持恒定。延迟电路101-108中的延迟选项在DLL的操作期间通过相位检测器和计数器电路的组合来进行动态调整。

发明内容
根据一些实施例,反馈环电路包括相位检测器和延迟电路。相位检测器基于延迟的周期信号生成输出信号。延迟电路耦合在延迟链中,该延迟链对延迟的周期信号进行延迟。每个延迟电路包括可变延迟块和固定延迟块,该可变延迟块和固定延迟块耦合为形成用于输入信号通过延迟电路以生成延迟的输出信号的至少两个延迟路径。延迟电路中的可变延迟块的延迟基于相位检测器的输出信号而变化。在反馈环电路的操作期间,每个延迟电路基于相位检测器的输出信号将输入信号重新路由通过延迟路径中的不同路径以生成延迟的输出信号。每个可变延迟块和每个固定延迟块将接收信号反相从而生成反相信号。根据其他实施例,反馈环电路包括相位检测器、延迟线和控制电路。相位检测器可操作为响应于延迟的周期信号生成输出信号。延迟线包括串联耦合的延迟电路,这些延迟电路可操作为将周期信号延迟以提供对延迟的周期信号的延迟。延迟电路中的每个延迟电路包括可调延迟块。该可调延迟块每个都将接收信号反相来生成反相信号。控制电路可操作为基于相位检测器的输出信号生成用于控制可调延迟块的延迟的控制信号。控制信号激活可调延迟块以 向延迟的周期信号添加延迟,以用于在可调延迟块之中对延迟的周期信号中的占空比失真进行平均。考虑到下面的详细描述和附图,本发明的各种目的、特征和优势将变得明显。


图IA图示了用在延迟锁定环(DLL)电路中的现有技术的延迟线电路。图IB图示了图IA所示的每个延迟电路的电路架构。图2图示了根据本发明实施例的延迟锁定环(DLL)电路的示例。图3图示了根据本发明实施例的可变延迟电路的示例。图4图示了根据本发明实施例的可变延迟开关电路的示例。图5是图示了电流饥饿型反相器电路的示例的示意图。图6图示了根据本发明实施例的可变延迟电路的另一示例。图7图示了根据本发明实施例的可以用来生成用于选择通过可变延迟电路的不同路径的选择信号的寄存器的示例。图8是图示了根据本发明实施例的图6的可变延迟电路的输入时钟信号和输出时钟信号的示例的定时图。图9图示了根据本发明实施例的可变延迟电路的另一示例。图IOA图示了当时钟信号传播通过DLL中的延迟链时该时钟信号如何会积累占空比失真的不例。图IOB图示了根据本发明实施例的具有偶数个反相延迟电路元件的DLL中的延迟链如何减少传播通过延迟链的时钟信号中的占空比失真的示例。图11图示了根据本发明实施例的可以用来减少传播通过延迟链的时钟信号的占空比失真的延迟锁定环(DLL)中的延迟链的延迟电路元件的一部分。图12A图形化地图示了下表2中所示的解码方案A如何增加时钟信号中的占空比失真。图12B图形化地图示了根据本发明实施例的在使用表2中所示的解码方案B的理想DLL中如何减少时钟信号中的占空比失真。图13是可以包括本发明的各个方面的现场可编程门阵列的简化局部框图。图14示出了可以实施本发明的技术的示例性数字系统的框图。
具体实施例方式包含图IA和图IB的电路架构的延迟锁定环(DLL)电路具有大量不同问题。由于用于生成FBCK的图IA中的延迟电路10-25的数目改变以支持不同频率,所以变得难以在所支持的频率范围上实现所需的相位移位。例如,双数据率(DDR)存储器数据捕获需要可靠的90度的相位移位从而将采样时钟信号放置在数据采样窗口的中间。该相位移位在延迟线中有6或10个延迟电路的情况下是不可能的,这可能造成具有更高频率的数据信号和时钟信号中的问题。此外,更高频率的时钟信号要求延迟线中更少数量的延迟电路,这减少了对于支持诸如平 衡DDR3存储器应用之类的特征而言重要的相位选项。为了在DLL中支持广泛连续的频率范围,由图IA至图IB的延迟线支持的每个频率范围应该具有跨工艺、电源电压和温度(PVT)拐角的充分重叠。所支持的频率范围之间的重叠产生整个更小的连续频率范围。设计具有跨PVT拐角的最小频率和最大频率约束的延迟电路是很难的并且限制了延迟电路结构的选择。大多数延迟电路的可变延迟浪费在满足跨PVT拐角的重叠约束中。图IA至图IB的多级架构影响固有延迟并因而在不减少级数的情况下影响可通过DLL实现的最大频率。该结构在沿着延迟电路101-108的延迟路径的每个点处都不是对称的。由于延迟电路101-108是缓冲器,所以由延迟电路101-108之一引起的任何占空比失真沿着路径积累。该失真对于16级高频延迟路径是最差的。达到覆盖约束的限制通常导致延迟电路10-25中的每一个具有许多较小的延迟电路。通常,向DLL中的延迟线添加的每个附加延迟电路具有逐渐减少的益处。例如,使用不同的沟道长度可以造成延迟电路中的不均匀的延迟步长。图2图示了根据本发明实施例的延迟锁定环(DLL)电路200的示例。图2所示的DLL 200包括8个延迟电路元件201A-201H、相位检测器202、上/下计数器203、总线210和分频器电路214和216。延迟电路元件201A-201H、相位检测器202、上/下计数器203、总线210和分频器电路214和216形成数字控制的延迟锁定环(DLL)电路。DLL 200可以具有串联耦合在延迟链中的任何适当数目的延迟电路元件201。在图2中仅作为示例示出八个延迟电路元件201。电路200通常制作在集成电路上。本发明的电路例如可以制作在诸如现场可编程门阵列(FPGA)之类的可编程逻辑集成电路或专用集成电路(ASIC)上。分频器电路214将输入时钟信号INCK的频率除以8来生成分频时钟信号INCKD。分频时钟信号INCKD被路由到延迟电路元件20IA的输入。延迟电路元件201A-201H—起串联耦合在时钟信号INCKD的延迟路径中以形成延迟链212。延迟电路元件201A-201H将时钟信号INCKD延迟以生成周期反馈时钟信号FBCK。8个延迟电路元件201A-201H生成FBCK中的延迟,该延迟基于计数信号CT[1:Q]的逻辑状态的改变而变化。延迟链中的每个延迟电路元件201A-201H在任意给定时间具有相同的延迟。延迟电路元件201A-201H的延迟称为IX。相对于时钟信号INCKD,每个延迟电路元件201A-201H将IX的附加延迟添加到反馈时钟信号FBCK。结果,反馈时钟信号FBCK相对于时钟信号INCKD 延迟 8X。当INCK和FBCK在相位上对准时,每个延迟电路元件201A-20IH使FBCK延迟45。的延迟,并且延迟电路元件201A-201H—起使FBCK延迟360°。45°指代INCK周期的八分之一,360°指代INCK的一个整周期。因而,FBCK在INCKD的相位之后延迟INCK的一个整周期。FBCK和INCKD具有相同的频率。8个延迟电路元件201A-201H的8个输出时钟信号分别具有45°、90°、135°、180°、225°、270°、315°、360°的相对相位偏移。这些相位偏移是相对于INCK的周期而言的。如果输入数据信号中的比特的周期是采样时钟信号的周期的一半,则延迟电路元件201A-201H的8个输出时钟信号可以用于生成采样时钟信号中相对于输入数据信号的比特周期的90°相位偏移。在一个实施例中,每个延迟电路元件201A-201H具有与每个其它延迟电路元件201A-201H相同的延迟电路架构和相同尺寸的晶体管。输入时钟信号INCK被路由到相位检测器202的第一输入端子。分频器电路216 将输入时钟信号INCK的频率除以8来生成第二分频时钟信号。第二分频时钟信号被路由到上/下计数器203的时钟CLK输入端子。反馈时钟信号FBCK在延迟电路元件201H的输出端子处生成并且被路由到相位检测器202的第二输入端子。相位检测器202将反馈时钟信号FBCK的相位与输入时钟信号INCK的相位比较从而生成数字UP/DN信号。上/下计数器203响应于第二分频时钟信号和UP/DN信号而生成Q个数字计数信号CT[1:Q]。上/下计数器203例如可以生成5个数字计数信号(Q = 5)。数字计数信号称为计数信号CT[I:Q]。计数信号CT[1:Q]通过总线210并行传送到每个延迟电路元件201A-201H的输入端子。计数信号CT[1:Q]为例如使用简单格雷码进行过格雷编码的。计数信号CT[1:Q]的格雷编码值决定每个延迟电路元件201A-201H的延迟。延迟锁定环(DLL)电路200的功能在于通过延迟电路元件201A-201H生成组合延迟,从而使FBCK的相位滞后INCK的相位360度。360度指代INCK的整周期。DLL 200通过改变计数信号CT[1:Q]的格雷编码值调整延迟电路元件201A-201H的可变延迟,该计数信号CT[1:Q]控制延迟电路元件201A-201H的可变延迟。当反馈时钟信号FBCK的相位滞后输入时钟信号INCK的相位少于360°时,相位检测器202生成UP/DN信号的逻辑高状态。当UP/DN信号处于逻辑高状态时,上/下计数器203增加计数信号CT[1:Q]的格雷编码值,使得每个延迟电路元件201A-201H的延迟增加。当反馈时钟信号FBCK的相位滞后输入时钟信号INCK的相位多于360°时,相位检测器202生成UP/DN信号的逻辑低状态。当UP/DN信号处于逻辑低状态时,上/下计数器203减少计数信号CT[1:Q]的格雷编码值,使得每个延迟电路元件201A-201H的延迟减少。在计数信号CT[1:Q]的格雷编码值增加或减少I时出现的每个延迟电路元件201A-201H的延迟的改变称为步进延迟Dstep。当计数信号CT[1:Q]的格雷编码值增加I时,延迟电路元件201A-201H形成的延迟链的总延迟增加8xDStep。当计数信号CT[1 :Q]的格雷编码值减少I时,延迟电路元件201A-201H形成的延迟链的总延迟减少8xDstep。当延迟电路元件201A-201H的组合延迟使得FBCK信号的相位滞后输入时钟信号INCK的相位360度时,DLL电路200处于锁定模式。在DLL的锁定模式中,计数器203维持计数信号CT[1:Q]的逻辑状态恒定。相位检测器202监视DLL 200何时处于锁定模式。当相位检测器202检测到DLL 200并不处于锁定模式时,从相位检测器202传送到计数器203的使能信号(未示出)使得计数器203响应于UP/DN信号调整计数信号CT[I:Q]。当相位检测器202检测到DLL 200处于锁定模式时,相位检测器202使得使能信号跃迁为使得计数器203维持计数信号CT[I:Q]处于恒定逻辑状态的状态。当DLL 200离开锁定模式时,相位检测器202使得使能信号允许计数器203再次调整计数信号。图3图示了根据本发明实施例的可变延迟电路的示例。图3的可变延迟电路包括解码器301、可变延迟元件302-303、固定延迟电路304-307和多路复用器310。图3的可变延迟电路为图2所示的每个延迟电路元件201A-201H的示例。因而,在一个实施例中,每个延迟电路元件201A-201H包括如 图3所示那样耦合的解码器301、可变延迟元件302-303、固定延迟电路304-307和多路复用器310。解码器电路301对经格雷编码的计数信号CT [ I: Q]进行解码以生成解码的控制信号DCS和DCSM。解码的控制信号DCS和DCSM包括任何适当数目的各自数字信号。在DLL200中,每个延迟电路元件201A-20IH具有控制在该延迟电路元件内的可变延迟电路的解码器电路301。图3的可变延迟电路配置用于将输入时钟信号延迟从而生成输出时钟信号。可变延迟元件302-303串联耦合。可变延迟元件302使输入时钟信号延迟以生成延迟的输出时钟信号。可变延迟元件303将可变延迟电路302的延迟的输出时钟信号延迟从而生成传送至固定延迟电路304的输入的延迟的输出时钟信号。解码的控制信号DCS控制可变延迟元件302-303的延迟。可变延迟元件302-303的延迟基于控制信号DCS的逻辑状态的改变而变化。固定延迟电路304将可变延迟元件303的延迟的输出时钟信号延迟从而生成延迟的输出时钟信号。固定延迟电路305耦合为将固定延迟电路304的延迟的输出时钟信号延迟从而生成延迟的输出时钟信号。固定延迟电路306耦合为将固定延迟电路305的延迟的输出时钟信号延迟从而生成延迟的输出时钟信号。固定延迟电路307耦合为将固定延迟电路306的延迟的输出时钟信号延迟从而生成延迟的输出时钟信号。多路复用器310基于解码的控制信号DCSM的逻辑状态选择固定延迟电路304-307之一的延迟的输出时钟信号。解码的控制信号DCSM决定将选择固定延迟电路304-307的哪个延迟的输出时钟信号作为多路复用器310的输出信号。多路复用器310将选择的延迟的输出时钟信号传输至其输出作为图3的可变延迟电路的输出时钟信号。图4图示了根据本发明实施例的可变延迟开关电路400的示例。可变延迟开关电路400是图3的每个可变延迟元件302-303的示例。可变延迟开关电路400包括NAND逻辑门401、电流饥饿型反相器402和反相器电路403。电路401-403串联耦合以将NAND门401的输入IN处的时钟信号延迟从而在反相器403的输出0处生成延迟的时钟信号。NAND门401还在输入S处接收输入选择信号。NAND门401和反相器403提供电流饥饿型反相器402与延迟链212内的相邻可变延迟开关电路中的电流饥饿型反相器之间的负载隔离。可变延迟开关电路400可以用作延迟链中的可变延迟电路或固定延迟电路。由于可变延迟开关电路400仅具有三个门,所以电路400随着晶体管尺寸的工艺有关的减少良好地缩减。图5是图示电流饥饿型反相器电路402的架构的示例的示意图。图5所示的电流饥饿型反相器处于图IB的现有技术设计中的延迟电路101-108中。图5所示的电流饥饿型反相器402也是图4的可变延迟开关电路400中的电流饥饿型反相器电路402的示例。在图5中,电流饥饿型反相器电路402包括p沟道金属氧化物半导体场效应晶体管(] 05 £1')501、503和5024-50211。电流饥饿型反相器电路402还包括n沟道MOSFET 504、505和506A-506H。尽管电流饥饿型反相器电路402包括8个晶体管502A-502H和8个晶体管506A-506H,但电流饥饿型反相器电路402可以包括任意合适数目的晶体管502和506。晶体管503和504稱合在一起而形成反相器。晶体管503和504的栅极端子f禹合为从NAND门401的输出接收输入时钟信号CSIN,晶体管503和504的漏极耦合到反相器403的输入,并且反相器403在输出0处生成电路400的延迟的输出时钟信号。p沟道晶体管501的栅极耦合为接地,晶体管501的源极耦合到电源电压VCC,晶体管501的漏极耦合到晶体管503的源极。当电源电压VCC处于其标称操作电压时,晶体管501导通从而在其饱和区域中从电源电压VCC向晶体管503传导电流。n沟道晶体管505的栅极耦合到电源电压VCC,晶体管505的源极耦合为接地,并且晶体管505的漏极耦合到晶体管504的源极。当电源电压VCC处于其标称操作电压时,晶体管505导通从而在其饱和区域中从晶体管504向接地传导电流。
p沟道晶体管502A-504H并联耦合在电源电压VCC和晶体管503的源极之间。n沟道晶体管506A-506H并联耦合在晶体管504的源极与接地之间。解码的控制信号DCS用于生成栅极控制信号V1-V8和VB1-VB8。栅极控制信号V1-V8分别被传送至p沟道晶体管502A-502H的栅极。栅极控制信号VB1-VB8分别被传送至n沟道晶体管506A-506H的栅极。栅极控制信号VB1-VB8分别为栅极控制信号V1-V8的逻辑反相。计数信号CT[1:Q]的格雷编码值决定被导通以通过晶体管503-504供给电流的晶体管502和506的数目。计数器电路203调整计数信号的格雷编码值,以通过变化导通的晶体管对502/506的数目来变化电流饥饿型反相器402的延迟。解码器301基于计数信号CT [I: Q]的格雷编码值选择V1-V8和VB1-VB8控制信号的逻辑状态。解码器301响应于计数信号的格雷编码值每次增加I而生成V1-V8信号中的附加的I。解码器301响应于计数信号的格雷编码值每次减少I而生成V1-V8信号中的附加的O。晶体管502A-502H之一的栅极处的逻辑高状态(I)使该晶体管截止,并且晶体管502A-502H之一的栅极处的逻辑低状态(0)使该晶体管在其饱和区域中导通。晶体管506A-506H之一的栅极处的逻辑低状态(0)使该晶体管截止,并且晶体管506A-506H之一的栅极处的逻辑高状态(I)使该晶体管在其饱和区域中导通。因而,计数信号CT[1:Q]的每次增加使通过电流饥饿型反相器402的电流减少,并且计数信号CT[1:Q]的每次减少使通过电流饥饿型反相器402的电流增加。当所有晶体管502A-502H和506A-506H导通并且在它们的饱和区域中传导电流时,电流饥饿型反相器402生成通过晶体管503-504的最大电流Imax和最小延迟DMIN。当所有晶体管502A-502H和506A-506H截止并且不传导电流时,电流饥饿型反相器402生成通过晶体管503-504的最小电流Imin和最大延迟Dmx。最小电流Imin由晶体管501和505生成。Imax流过晶体管503-504时的电容与Imin流过晶体管503-504时的电容相同。根据一个实施例,每个晶体管502A-502H的宽长(W L)沟道比可以相同,并且每个晶体管506A-506H的W L沟道比可以相同。在该实施例中,通过晶体管503-504的电流随着每个附加晶体管对502/506导通而理想地线性增加。然而,每个附加晶体管502在晶体管503的源极处添加电容,并且每个附加晶体管506在晶体管504的源极处添加电容。根据另一实施例,晶体管502A-502H的W : L沟道比在图5中从左向右增加,并且晶体管506A-506H的W L沟道比在图5中从左向右增加。在电流饥饿型反相器402的设计期间,可以选择晶体管502和506的W L沟道比来使得电流饥饿型反相器402生成所希望的步
进延迟。图6图示了根据本发明实施例的可变延迟电路600的示例。可变延迟电路600为图2所示每个IX延迟电路元件201A-201H的示例。因而,在一个实施例中,每个IX延迟电路元件201A-201H包括可变延迟电路600的电路系统。根据另一实施例,可变延迟电路600可以用在锁相环(PLL)电路中的环形振荡器中。可变延迟电路600包括8个可变延迟开关601-608。图4至图5所示的可变延迟 开关电路400是用于可变延迟开关601-608中每一个的示例电路架构。由于可变延迟开关601-608具有相同的电路架构,所以工艺变化对于开关601-608的延迟具有相同的影响。可变延迟电路600将输入时钟信号CLKIN延迟以生成输出时钟信号CLK0UT。八个解码的控制信号DCS [1:8]从解码器301传送至可变延迟开关601和603的输入,并且八个附加的解码的控制信号DCS[9:16]从解码器301传送至可变延迟开关602的输入,如图6所示。解码的控制信号DCS[1:8]控制可变延迟开关601和603的延迟,并且解码的控制信号DCS[9:16]控制可变延迟开关602的延迟。可变延迟电路600向CLKOUT提供的相对于CLKIN的延迟可以通过改变解码的控制信号DCS的逻辑状态来变化。解码的控制信号DCS[1:8]基于来自计数器203的计数信号CT[1:Q]的逻辑状态的改变而变化可变延迟开关601和603的延迟。解码的控制信号DCS[9:16]基于来自计数器203的计数信号CT[I:Q]的逻辑状态的改变而变化可变延迟开关602的延迟。例如,解码的控制信号DCS[1:16]可以通过使电流饥饿型反相器402中的晶体管502A-502H和506A-506H中的更多个导通或截止来变化可变延迟开关601-603的延迟。固定延迟控制信号FDS被传送至可变延迟开关604-608的输入,如图6所不。固定延迟控制信号FDS被设置为在DLL 200的操作期间不变化的恒定逻辑状态。固定延迟控制信号FDS使得可变延迟开关604-608的延迟被设置为它们的最小可编程延迟值。例如,固定延迟控制信号FDS可以被设置为使得每个可变延迟开关604-608中所有16个晶体管502A-502H和506A-506H都导通的逻辑状态,从而开关604-608向它们在输出0处的输出时钟信号提供它们的最小可编程延迟值。在该示例中,信号FDS设置开关604-608中的信号V1-V8和VB1-VB8的逻辑状态。控制信号FDS使得可变延迟开关604-608在DLL 200的操作期间保持在它们的最小可编程延迟值。可变延迟电路600向输出时钟信号CLKOUT提供的相对于输入时钟信号CLKIN的延迟也可以通过改变CLKIN所采用的通过可变延迟开关601-608以生成CLKOUT的延迟路径来进行变化。控制信号SELA、SELA#、SELB, SELB#和SELC的逻辑状态控制CLKIN所采用的通过可变延迟开关601-608以生成CLKOUT的延迟路径。变化控制信号SELA、SELA#、SELB.SELB#和SELC的逻辑状态以改变CLKIN所采用的通过可变延迟开关601-608以生成CLKOUT的路径。信号SELA#是信号SELA的逻辑反相,信号SELB#是信号SELB的逻辑反相。SELA, SELA#、SELB, SELB#和SELC信号响应于解码的控制信号而生成。这些解码的控制信号响应于来自计数器203的计数信号CT[1:Q]通过解码器而生成。信号SELA被传送至可变延迟开关601的选择输入S,信号SELA#被传送至可变延迟开关603的选择输入S。当信号SELA处于逻辑高状态并且信号SELA#处于逻辑低状态时,CLKIN通过可变延迟开关601从其IN输入传播至其O输出,然后通过可变延迟开关602从其IN输入传播至其O输出作为输出时钟信号CLKOUT。在该示例中,CLKIN不通过可变延迟开关603-608路由。信号SELB被传送至可变延迟开关604的选择输入S,信号SELB#传送至可变延迟开关606的选择输入S。当信号SELA和SELB#处于逻辑低状态并且信号SELA#和SELB处于逻辑高状态时,CLKIN依次通过可变延迟开关603、604、605和602传播来生成CLK0UT。CLKIN通过可变延迟开关603-605串行地从它们的IN输 入传播至它们的0输出。在可变延迟开关605的0输出处的时钟信号然后通过可变延迟开关602从其S输入传播至其0输出作为CLK0UT。在该示例中,CLKIN传播通过具有可变延迟的两个可变延迟开关602-603以及被编程为具有固定延迟的两个延迟开关604-605。信号SELC被传送至可变延迟开关607的选择输入S,并且电源电压VCC (代表逻辑高状态)被传送至可变延迟开关608的选择输入S。当信号SELA和SELB处于逻辑低状态并且信号SELA#、SELB#和SELC处于逻辑高状态时,CLKIN依次通过可变延迟开关603、606、607、608、605和602传播来生成CLKOUT。CLKIN通过可变延迟开关603和606-608串行地从它们的IN输入传播至它们的0输出。可变延迟开关608的0输出处的时钟信号然后通过可变延迟开关605从其S输入传播至其0输出。可变延迟开关605的0输出处的时钟信号然后通过可变延迟开关602从其S输入传播至其0输出作为CLKOUT。在该示例中,CLKIN传播通过具有可变延迟的两个可变延迟开关602-603以及被编程为具有固定延迟的四个延迟开关605-608。上述SELA、SELA#、SELB, SELB#和SELC信号的每个可能组合都使得偶数个可变延迟开关位于CLKIN和CLKOUT之间的路径中。结果,CLKOUT的逻辑状态没有相对于CLKIN的逻辑状态反相。现在描述电路600的操作的示例。最初,SELA处于逻辑高状态,SELA#处于逻辑低状态,CLKIN仅路由通过可变延迟开关601-602。为了增加可变延迟电路600的延迟,DLL200最初通过基于计数信号CT[1:Q]的格雷编码值的改变来改变控制信号DCS [1:16]的逻辑状态,从而增加可变延迟开关601-602的延迟。当可变延迟开关601-602的延迟处于它们的最大值时,DLL 200使CLKIN重新路由通过开关603-605和602,如上所述,并且同时,DLL 200将开关602-603的延迟设置为它们的最小值。在一个实施例中,开关602的最大延迟减去开关602的最小延迟加上开关603的最大延迟减去开关603的最小延迟等于开关604-605的组合延迟,并且电路600的延迟在CLKIN重新路由通过开关603-605和602时不改变。随后,DLL 200通过增加可变延迟开关602-603的延迟来增加电路600的延迟。DLL200通过基于计数信号CT [I: Q]的格雷编码值的改变来改变DCS[1:16]的逻辑状态,从而增加可变延迟开关602-603的延迟。当可变延迟开关602-603正生成它们的最大延迟时,DLL200使CLKIN重新路由通过开关603、606-608、605和602,如上所述,并且同时,DLL 200将开关602-603的延迟设置为它们的最小值。在一个实施例中,开关602的最大延迟减去开关602的最小延迟加上开关603的最大延迟减去开关603的最小延迟等于开关607-608的组合延迟,并且电路600的延迟在CLKIN重新路由通过开关603、606-608、605和602时不改变。随后,DLL 200再次通过增加可变延迟开关602-603的延迟增加电路600的延迟。因而,可变延迟电路600可以通过将输入时钟信号CLKIN重新路由通过不同延迟路径来增加其在可变延迟开关的延迟之外的延迟。通过可变延迟电路600的不同延迟路径可以支持对于DLL 200的输入参考时钟信号INCK的不同频率范围。通过开关601-602的最短延迟路径可以用于支持INCK中的高频。通过开关603-605和602的延迟路径可以用于支持INCK中的中间范围的频率。通过开关603、606-608、605和602的最长延迟路径可以用于支持INCK中的最低频率。可变延迟电路600为DLL 200提供宽频率范围,而不必针对频率重叠进行设计。因而,可变延迟电路600为输入时钟信号INCK和CLKIN中的高频提供快速固有路径。对于INCK和CLKIN中的低频,向CLKIN所采用的通过可变延迟电路600的路径添加适当数目的固定延迟级,如上所述。解码器301根据需要动态地添加固定延迟开关以为DLL200 提供一致的宽频率范围。通过调整可变延迟开关601-602的延迟,可变延迟电路600被设计用于INCK中所需的最高频。可变延迟电路600通过添加固定延迟开关来实现低频操作。固定延迟开关与通过开关601-602的高频延迟路径并联耦合。固定延迟开关不影响高频路径。可变延迟电路600仅需要足够的灵活性来补偿PVT漂移。通过调整CLKIN所采用的通过开关601-608的路径来执行频率锁定。下面的表I图示了可变延迟电路600的操作。在该示例中,计数器203从0开始向上计数。表I所示的针对计数值0-8的示例延迟随着开关601-602的延迟从它们的最小值增加到它们的最大值而出现。在计数值9处,DLL 200使CLKIN重新路由通过开关603-605和602,并且将开关602-603的延迟设定回它们的最小值。在表I中,简写ps指代皮秒,并且假设可变延迟开关601-603仅具有提供4个步长的4个晶体管502和4个晶体管506。每个步长添加IOps的附加延迟。同样在表I中,第7列的每行中所示的总延迟是通过将来自该行的第二列至第六列的延迟加在一起得到的。在表I所示的示例中,固定延迟块604-605中的每一个具有45ps的固定延迟。表I'l CT[1:Q] I可曼延迟@~^~可变延迟开关来自系径变化"]~总延远~ 的值601/603__602 _ 的固定延迟
最小可变最小可变
030 psOps30 psOpsOps60 ps
130 psIOps30 psO psOps70 ps
230 ps20 ps30 psOpsOps80 ps
330 ps30 ps30 psOpsOps90 ps
430 ps40 ps30 psOpsOpsIOOps
530 ps40 ps30 psIOpsOpsIlOps
630 ps40 ps30 ps20 psOps120 ps
730 ps40 ps30 ps30 ps0 ps130 ps
830 ps40 p s30 ps40 psOps140 ps
930 psOps30 psOps90 ps150 ps
1030 psIOps30 psOps90 ps160 ps
1130 ps20 ps30 psOps90 ps170 ps由于计数信号CT[1:Q]是经格雷编码的,所以计数信号CT[1:Q]的值的每次递增和递减都仅造成控制可变延迟电路600的延迟的控制信号DCS[1:16]中改变I位。响应于DCS[1:16]控制信号中的位的每次改变,仅耦合在CLKIN延迟路径中的可变延迟开关之一改变其延迟。当计数信号的值为9时,可变延迟电路600改变CLKIN的路径并且将开关602的延迟减少到其最小值,这依赖于定时延迟可以在CLKOUT中引入抖动。为了减少在CLKOUT中的抖动,电路600仅当CLKIN和CLKOUT信号都具有稳定逻辑状态时在不同延迟路径之间切换。当CLKIN和CLKOUT都具有稳定逻辑状态时,没有附加的抖动引入到CLKOUT中,因为不存在穿过可以受到电路600的变化延迟影响的电路600的边沿跃迁。图7图示了根据本发明实施例的可以用来生成信号SELA、SELA#、SELB, SELB#和SELC的寄存器的示例。图7图示了三个触发器701-703。每个延迟电路201A-201H具有单独的触发器701-703的集合。触发器701-703防止可变延迟电路600在CLKIN的延迟路径改变时生成输出时钟信号CLKOUT中的毛刺(glitch)。结果,触发器701-703减少CLKOUT中的抖动。每个触发器701-703都包括D输入、时钟输入、置位输入、Q输出和反向0输出。控制信号DCSX、DCSY和DCSZ分别被传送至触发器701、702和703的D输入。控制信号DCSX、DCSY和DCSZ由解码器基于计数信号CT [I: Q]的格雷编码值生成。可变延迟电路600的输出时钟信号CLKOUT被传送至触发器701-703的时钟输入。复位信号被传送至触发器701-703的置位输入。触发器701-703在它们的Q输出处分别生成输出信号SELA、SELB和SELC。触发器701-703在它们的反相。输出处分别生成输出信号SELA#、SELBI^P SELC#。信号SELA#、SELB#和SELC#分别为信号SELA、SELB和SELC的逻辑反相。响应于输出时钟信号CLKOUT的上升沿,触发器701-703将DCSX、DCSY和DCSZ信号的逻辑状态分别存储为在它们Q输出处的信号SELA、SELB和SELC。结果,信号SELA、SELB、SELC、SELA#、SELB#和SELC#仅在CLKIN的上升沿已经传播通过可变延迟电路600以引起CLKOUT的上升沿之后改变状态。图8是图示了可变延迟电路600的输入时钟信号CLKIN和输出时钟信号CLKOUT的示例的定时图。如图8所示,CLKIN和CLKOUT中的上升沿分开可变延迟电路600的延迟。CLKOUT的上升沿与CLKIN的下一下降沿之间的时间被称为定时裕量。定时裕量 在CLKIN的下一边沿之前为触发器701-703改变SELA、SELB, SELC, SELA#和SELB#信号的逻辑状态以及电路600改变CLKIN通过开关601-608的路径提供充足时间。结果,电路600在CLKIN和CLKOUT具有稳定逻辑状态时改变CLKIN通过开关601-608的路径从而防止引起CLKOUT中的毛刺。图9图示了根据本发明实施例的可变延迟电路900的示例。可变延迟电路900是图2所示每个IX延迟电路元件201A-201H的示例。因而,在一个实施例中,每个IX延迟电路元件201A-201H包括可变延迟电路900的电路系统。根据另一实施例,可变延迟电路900可以用在锁相环(PLL)电路中的环形振荡器中。可变延迟电路900包括10个可变延迟开关901-910。图4至图5所示的可变延迟开关电路400是用于每个可变延迟开关901-910的示例性电路架构。由于可变延迟开关901-910具有相同的电路架构,所以工艺差异对于开关901-910的延迟具有相同的影响。可变延迟电路900将输入时钟信号CLKIN延迟以生成输出时钟信号CLKOUT。由解码器生成的八个解码的控制信号DCS[1:8]控制可变延迟开关901和903的延迟。由解码器生成的八个解码的控制信号DCS[9:16]控制可变延迟开关902的延迟。由解码器生成的八个解码的控制信号DCS [17:24]控制可变延迟开关907的延迟。由解码器生成的八个解码的控制信号DCS[25:32]控制可变延迟开关908的延迟。可变延迟开关901-903和907-908的延迟基于解码的控制信号DCS [1:32]的改变而变化。解码的控制信号DCS[1:32]基于计数信号CT[1:Q]的解码值而生成。例如通过将可变延迟开关中的电流饥饿型反相器402中的晶体管502A-502H和506A-506H中的更多个导通或截止,解码的控制信号DCS[1:32]响应于来自计数器203的计数信号CT[I:Q]的逻辑状态的每次改变而变化可变延迟开关901-903和907-908之一的延迟。固定延迟控制信号FDS被传送至可变延迟开关904-906和909-910的输入,如图9所示。在DLL 200操作期间,固定延迟控制信号FDS被设置为不变化的恒定逻辑状态。固定延迟控制信号FDS使得可变延迟开关904-906和909-910的延迟被设置为它们的最小可编程延迟值。例如,固定延迟控制信号FDS可以被设置为使得所有晶体管502A-502H和506A-506H导通的逻辑状态,从而使得可变延迟开关904-906和909-910向它们在输出0处的输出时钟信号提供它们的最小可编程延迟值。控制信号FDS使得可变延迟开关904-906和909-910在DLL 200的操作期间保持在它们的最小可编程延迟值。通过改变CLKIN所采用的通过可变延迟开关901-910以生成CLKOUT的延迟路径可以变化可变延迟电路900提供给输出时钟信号CLKOUT的相对于输入时钟信号CLKIN的延迟。选择信号SELA、SELA#、SELB, SELB#和SELC的逻辑状态控制CLKIN所采用的通过可变延迟开关901-910以生成CLKOUT的延迟路径。选择信号SELA、SELA#、SELB, SELB#和SELC的逻辑状态变化以改变CLKIN所采用的通过可变延迟开关901-910以生成CLKOUT的
延迟路径。选择信号SELA被传送至可变延迟开关901的S输入,并且选择信号SELA#传送至可变延迟开关903的S输入。当SELA处于逻辑高状态并且SELA#处于逻辑低状态时,CLKIN被路由通过具有可变延迟的两个可变延迟开关901-902以生成CLK0UT。通过基于计数信号CT[1:Q]的改变来变化开关901-902的延迟,从而变化电路900的延迟。选择信号SELB被传送至可变延迟开关904的S输入,选择信号SELB#被传送至可 变延迟开关906的S输入。当可变延迟开关901-902的延迟都达到它们的最大值时,DLL200将SELA改变为逻辑低状态,将SELA#改变为逻辑高状态,将SELB改变为逻辑高状态,并且将SELB#改变为逻辑低状态,从而提供电路900的延迟中的附加增加。当SELA处于逻辑低状态、SELA#处于逻辑高状态、SELB处于逻辑高状态且SELB#处于逻辑低状态时,CLKIN被路由依次通过可变延迟开关903、904、905和902从而生成CLKOUT。因而,CLKIN被路由通过具有可变延迟的两个可变延迟开关以及被编程为具有固定延迟的两个可变延迟开关。将开关902-903的延迟设定为它们的最小值,然后通过基于计数信号CT[1:Q]的改变来增加开关902-903的延迟从而增加电路900的延迟。选择信号SELC被传送至可变延迟开关909的S输入,并且电源电压VCC传送至可变延迟开关907-908和910的S输入。当可变延迟开关902-903的延迟都达到它们的最大值时,DLL 200将SELB改变为逻辑低状态、将SELB#改变为逻辑高状态并且将SELC改变为逻辑高状态,从而提供电路900的延迟中的附加增加。当SELA处于逻辑低状态、SELA#处于逻辑高状态、SELB处于逻辑低状态、SELB#处于逻辑高状态且SELC处于逻辑高状态时,CLKIN被路由依次通过可变延迟开关903、906、907、908、909、910、905和902从而生成CLKOUT。因而,CLKIN被路由通过具有可变延迟的四个可变延迟开关以及被编程为具有固定延迟的四个可变延迟开关。此外,将开关902-903和907-908的延迟设定为它们的最小延迟。然后通过基于计数信号CT[1:Q]的改变来增加开关902-903和907-908的延迟从而增加电路900的延迟。根据可变延迟电路的另一实施例,CLKIN通过可变延迟电路的路径可以被重新路由通过具有可变延迟的6个可变延迟开关以及被编程为具有固定延迟的6个可变延迟开关。在可变延迟电路的又一实施例中,CLKIN通过可变延迟电路的路径可以被重新路由通过具有可变延迟的8个可变延迟开关以及被编程为具有固定延迟的8个可变延迟开关。在双数据速率(DDR)存储器系统中,响应于周期时钟信号的上升沿和下降沿对输入数据进行采样。周期时钟信号通常具有50%的占空比。由于时钟信号传播通过延迟锁定环(DLL)电路中的延迟链,所以时钟信号可以积累占空比失真(DCD)。DCD可能是由例如耦合在一起形成延迟链的各个延迟电路元件内的上拉电流和下拉电流之间的差异引起的。DCD使得时钟信号的占空比从理想值变化。例如,传播通过DLL中的延迟链的时钟信号的占空比可以从50%变化。图IOA图示了当时钟信号传播通过DLL中的延迟链时该时钟信号如何会积累占空比失真的示例。在图IOA的左侧上示出的输入时钟信号具有50%的占空比并且没有占空比失真(DOT)。图IOA中心处的每个向上指示的箭头代表在延迟链中的8个延迟电路元件之一的输入处的输入时钟信号的上升沿。延迟链中的每个延迟电路元件是非反相的。因而,延迟链中的每个延迟电路元件不使其输出时钟信号相对于其输入时钟信号反相。结果,随着输入时钟信号传播通过延迟链中的延迟电路元件,D⑶在输入时钟信号中积累。延迟链的所得输出时钟信号具有大量积累的DCD,如在图IOA的右侧上示出的那样。图IOB图示了根据本发明实施例的具有偶数个反相延迟电路元件的DLL中的延迟链如何减少传播通过该延迟链的时钟信号中的占空比失真的示例。图IOA的左侧示出的输入时钟信号具有50%的占空比并且没有占空比失真(D⑶)。图IOB的中心处的向上和向下指示的箭头分别代表输入时钟信号的上升沿和下降沿。这些箭头中的每个箭头代表在延迟链中的8个延迟电路元件之一的输入处的输入时钟信号的边沿。在参照图IOB所述的示例中,延迟链中的每个延迟电路元件是反相的。结果,输入 时钟信号的每次跃迁随着该跃迁传播通过延迟链中的延迟电路元件而在上升沿和下降沿之间交替,如图IOB中由交替的上箭头和下箭头所代表的那样。由于延迟链中的每个延迟电路元件反相,所以输入时钟信号中通过一个延迟电路元件的上升沿变为通过延迟链中的下一延迟电路元件的下降沿。具有反相延迟电路元件的延迟链对时钟信号中的高脉冲和低脉冲之间的占空比失真(DCD)进行平均。该延迟链的所得输出时钟信号与图IOA中示出的输出时钟信号相比,具有如在图IOB的右侧上示出的少得多的DCD。如果延迟链具有偶数个延迟电路元件,则输出时钟信号中的跃迁具有与输入时钟信号中的对应跃迁相同的极性。图4和图5所示的可变延迟开关电路400是可以用来实现对传播通过延迟链的时钟信号中的DCD进行平均的延迟链的反相延迟电路元件的示例。可以将偶数个可变延迟开关电路400耦合在一起来形成如图2、图6和图9所示且上面结合图2、图6和图9描述的延迟链。图11图示了根据本发明实施例的可以用于减少传播通过延迟链的时钟信号的占空比失真的延迟锁定环(DLL)中的延迟链的延迟电路元件的一部分。可变延迟开关1101和1102可以例如分别为图6所示的可变延迟电路600中的可变延迟开关601和602。备选地,可变延迟开关1101和1102可以分别为图9所示的可变延迟电路900中的可变延迟开关901和902。可变延迟开关1101-1102将周期输入时钟信号CLKIN延迟从而生成周期输出时钟信号CLKOUT。可变延迟开关1101接收解码的控制信号A1、A2、A3和A4,并且可变延迟开关1102接收解码的控制信号B1、B2、B3和B4。控制信号A1-A4分别控制可变延迟开关1101内的电流饥饿型反相器402中的4个p沟道晶体管502A-502D以及4个n沟道晶体管506A-506D的导通状态。控制信号B1-B4分别控制可变延迟开关1102内的电流饥饿型反相器402中的4个p沟道晶体管502A-502D以及4个n沟道晶体管506A-506D的导通状态。这里将具有4个晶体管502和4个晶体管506的可变延迟开关1101-1102仅作为示例描述。可变延迟开关1101-1102可以具有任意数目的晶体管502和506。下面的表2示出用来生成信号A1-A4和B1-B4的解码方案如何影响添加到传播通过可变延迟开关1101-1102的时钟信号的占空比失真的示例。在表2中,INT是指当对应可变延迟开关(VDS) 1101或1102中的所有可变晶体管502和506截止时时钟信号的上升沿和下降沿之间的固有占空比失真(DCD)。此外,在表2中,D是指响应于一个p沟道晶体管502和一个n沟道晶体管506导通而在时钟信号的上升沿和下降沿之间添加的附加的占空比失真 ⑶)。表2中的计数值是由计数器203生成的计数信号CT[1:Q]的十进制值。表2
解码方案A Iclk0utI 解码方案BCLKOUT值中的中的_VDS1101 VDS1102 DCD VDS1101 VDSl 102 DCD
0MINMININTMINMININT 1AlMINDAlMIND
2Al A2MIN2DAlBIINT
3Al Al A3MIN3DAl AlBID
4A1A2A3MIN4DAl AlBI B2INT
A4
5A1A2A3BI3DAl A2 A3BI B2D
A4
6A1A2 A3 BI B22DAl A2 A3 BI B2 B3INT
A4
7A1A2 A3 B1B2B3IDA1A2 A3 B1B2B3D
A4A4
8A1A2 A3 BI B2B3B4 INT A1A2 A3 BI B2B3B4 INT
A4A4参照表2,当在可变延迟开关(VDS) 1101下的列中显示MIN时,VDS 1101中的所有晶体管502A-502D和506A-506D都截止。当在可变延迟开关1101下的列中显示Al时,一个晶体管502A导通,一个晶体管506A导通,并且其余晶体管502B-502D和506B-506D截止。当在可变延迟开关1101下的列中显示Al A2时,两个晶体管502A-502B导通,两个晶体管506A-506B导通,并且其余晶体管502C-502D和506C-506D截止。当在可变延迟开关1101下的列中显示Al A2 A3时,三个晶体管502A-502C导通,三个晶体管506A-506C导通,并且其余晶体管502D和506D截止。当在可变延迟开关1101下的列中显示Al A2 A3 A4时,所有四个晶体管502A-502D导通,并且所有四个晶体管506A-506D导通。同样参照表2,当在可变延迟开关(VDS) 1102下的列中显示MIN时,VDS 1102中的所有晶体管502A-502D和506A-506D都截止。当在可变延迟开关1102下的列中显示BI时,晶体管502A导通,晶体管506A导通,并且其余晶体管502B-502D和506B-506D截止。当在可变延迟开关1102下的列中显示BI B2时,两个晶体管502A-502B导通,两个晶体管506A-506B导通,并且其余晶体管502C-502D和506C-506D截止。当在可变延迟开关1102下的列中显示BI B2 B3时,三个晶体管502A-502C导通,三个晶体管506A-506C导通,并且其余晶体管502D和506D截止。当在可变延迟开关1102下的列中显示BI B2 B3 B4时,所有四个晶体管502A-502D导通,并且所有四个晶体管506A-506D导通。
表2示出称为解码方案A和解码方案B的两种解码方案。在解码方案A中,VDS1101和VDS 1102都是反相开关。在解码方案A中,计数值从0到4的每次增加使得VDS1101中的晶体管502A-502D和506A-506D的附加的对导通。随着计数值从0增加到4,CLKOUT中的D⑶从INT增加到4D。由解码方案A造成的CLKOUT中的D⑶的连续增加在图12A中图形化地示出。计数值从4到8的每次增加使得VDS 1102中的晶体管502A-502D和506A-506D的附加的对导通。随着计数值从4增加到8,CLK0UT中的D⑶从4D减少到INT。在解码方案B中,VDS 1101和VDS 1102都是反相开关。在解码方案B中,随着计数值从0增加到8,在交替的可变延迟开关1101-1102中将晶体管502和506对导通。例如,响应于计数值从0增加至Ij I (Al),VDS 1101中的晶体管502A和506A导通,并且CLKOUT中的D⑶从INT变到D。响应于计数值从I增加到2(B1),VDS 1102中的晶体管502A和506A导通,并且CLKOUT中的DCD从D变到INT。响应于计数值从2增加到3 (Al A2),VDS1101中的晶体管502B和506B导通,并且CLKOUT中的D⑶从INT变到D。响应 于计数值从3增加到4 (BI B2),VDS 1102中的晶体管502B和506B导通,并且CLKOUT中的DCD从D变到 INT。在计数值的每次增加之后,在不同的可变延迟开关中的附加晶体管502和506被选择导通。结果,CLKOUT中的D⑶响应于计数值中的每次改变而在INT和D之间变化。在解码方案B中,DCD在计数值的附加增加之后没有积累。图12B图形化地示出了根据本发明实施例的在使用解码方案B的理想DLL中的CLKOUT中的D⑶如何在INT和D之间变化。实践中,作为例如可变延迟开关1101-1102中的晶体管502和506中的失配的结果,CLKOUT中的D⑶在计数值增加到2以上之后可以增加到INT以上或者降低到D以下。然而,与解码方案A相比,解码方案B提供可变延迟开关1101-1102的输出时钟信号CLKOUT中的占空比失真(DCD)的显著减少。在图12A至图12B中,也示出了 CLKOUT的平均固有ECD。图13是可以包括本发明的各个方面的现场可编程门阵列(FPGA) 1300的简化局部框图。FPGA 1300只是可以包括本发明特征的集成电路的一个示例。本发明的实施例可以用在各种类型的集成电路中,诸如现场可编程门阵列(FPGA)、可编程逻辑器件(PLD)、复杂可编程逻辑器件(CPLD)、可编程逻辑阵列(PLA)、专用集成电路(ASIC)、通用处理器、中央处理单元(CPU)、数字信号处理器、控制器集成电路、存储器集成电路、模拟集成电路和数字集成电路。FPGA 1300包括通过具有可变长度和速度的互连导体的列和行网络互连的可编程逻辑阵列块(或LAB) 1302的二维阵列。LAB 1302包括多个(例如10个)逻辑元件(或LE)。LE是提供用户定义的逻辑功能的有效实现的可编程逻辑电路块。FPGA具有可以配置为实现各种组合功能和次序功能的各种逻辑元件。逻辑元件有权访问可编程互连结构。可编程互连结构可以被编程用于以几乎任何期望配置来互连逻辑元件。FPGA 1300还包括分布式存储器结构,该结构包括在整个阵列中提供的具有可变尺寸的随机访问存储器(RAM)块。RAM块例如包括块1304、块1306和块1308。这些存储器块还可以包括移位寄存器和先入先出(FIFO)缓冲器。FPGA 1300进一步包括可以实现例如具有加法或减法特征的乘法器的数字信号处理(DSP)块1310。在本示例中,位于芯片外围周围的输入/输出元件(IOE) 1312支持各种单端和差分输入/输出标准。IOE 1312耦合到引脚。每个引脚是FPGA的外部端子。将理解到的是,这里描述FPGA 1300仅用于说明性目的,并且本发明可以在许多不同类型的集成电路中实现。本发明还可以实现在具有FPGA作为若干组件之一的系统中。图14示出可以实施本发明的技术的示例性数字系统1400的框图。系统1400可以为编程的数字计算机系统、数字信号处理系统、专用数字交换网络或其它处理系统。此外,这种系统可以设计用于各种各样的应用,诸如电信系统、自动化系统、控制系统、消费电子、个人计算机、因特网通信和网络连接等。此外,系统1400可以被提供在单个板上、提供在多个板上或者提供在多个壳体内。系统1400包括通过一个或多个总线互连在一起的处理单元1402、存储器单元 1404和输入/输出(I/O)单元1406。根据本示例性实施例,FPGA 1408嵌入在处理单元1402中。FPGA 1408在图14的系统内可以用于许多不同的目的。FPGA 1408例如可以为处理单元1402的支持其内部操作和外部操作的逻辑构建块。FPGA 1408可编程为实现实施其在系统操作中的特定角色所需的逻辑功能。FPGA1408可以通过连接1410专门耦合到存储器1404,并且通过连接1412专门耦合到I/O单元1406。处理单元1402可以将数据引导到适当的用于处理或存储的系统组件、执行存储器1404中存储的程序、经由I/O单元1406接收和发射数据或其它类似功能。处理单元1402可以为中央处理单元(CPU)、微处理器、浮点协处理器、图形协处理器、硬件控制器、微控制器、被编程用作控制器的现场可编程门阵列、网络控制器或者任何类型的处理器或控制器。此外,在许多实施例中,通常不需要存在CPU。例如,代替CPU,一个或多个FPGA 1408可以控制系统的逻辑操作。作为另一示例,FPGA 1408用作可重新配置处理器,该处理器可以根据需要被重新编程用于操纵特定计算任务。备选地,FPGA1408本身可以包括内嵌式微处理器。存储器单元1404可以为随机访问存储器(RAM)、只读存储器(ROM)、固定或软盘介质、快闪存储器、磁带或任何其它存储装置或者这些存储装置的任何组合。出于图示和描述的目的,呈现了前面对本发明的示例性实施例的描述。前面的描述并不旨在于穷尽或者将本发明限于这里公开的示例。在一些情况下,本发明的特征可以在不对应使用所阐述的其它特征的情况下实施。在不脱离本发明的精神的情况下,可以在上述教导下进行各种修改、替换和变型。
权利要求
1.一种反馈环电路,包括 相位检测器,可操作为基于延迟的周期信号生成输出信号;以及 延迟电路,耦合在可操作为使所述延迟的周期信号延迟的延迟链中,其中所述延迟电路中的每个延迟电路都包括可变延迟块和固定延迟块,所述可变延迟块和固定延迟块耦合为形成用于输入信号通过所述延迟电路以生成延迟的输出信号的至少两个延迟路径,其中所述延迟电路中的所述可变延迟块的延迟基于所述相位检测器的输出信号而变化,其中所述延迟电路可操作为在所述反馈环电路的操作期间基于所述相位检测器的输出信号,将所述输入信号重新路由通过所述至少两个延迟路径中的不同路径以生成所述延迟的输出信号,并且其中每个所述可变延迟块和每个所述固定延迟块将接收信号反相以生成反相信号。
2.根据权利要求I所述的反馈环电路,还包括 控制电路,可操作为基于所述相位检测器的输出信号生成用于控制所述可变延迟块的延迟的控制信号,其中所述控制信号激活所述可变延迟块以向所述延迟的周期信号添加延迟,以用于在所述可变延迟块之中对所述延迟的周期信号的占空比失真进行平均。
3.根据权利要求I所述的反馈环电路,其中所述可变延迟块和所述固定延迟块均包括逻辑门、耦合到所述逻辑门的输出的电流饥饿型反相器以及耦合到所述电流饥饿型反相器的输出的反相器。
4.根据权利要求I所述的反馈环电路,其中所述反馈环电路为延迟锁定环。
5.根据权利要求I所述的反馈环电路,其中所述可变延迟块和所述固定延迟块均包括电流饥饿型反相器电路,并且其中所述固定延迟块中的可变延迟晶体管保持导通。
6.根据权利要求5所述的反馈环电路,还包括 控制电路,可操作为基于所述相位检测器的输出信号生成用于控制所述可变延迟块的延迟的控制信号,其中所述控制信号被解码以导通所述可变延迟块的交替的可变延迟块中的可变延迟晶体管,从而对所述延迟的周期信号的相位提供附加延迟。
7.根据权利要求I所述的反馈环电路,其中所述延迟链中的所述可变延迟块和所述固定延迟块的总数为偶数。
8.根据权利要求I所述的反馈环电路,其中所述可变延迟块和所述固定延迟块均具有耦合为接收选择信号的第一输入和耦合为接收所述输入信号的第二输入,并且其中所述选择信号用于选择所述至少两个延迟路径中的延迟路径。
9.一种反馈环电路,包括 相位检测器,可操作为响应于延迟的周期信号生成输出信号; 延迟线,包括串联耦合的可操作为使周期信号延迟的延迟电路,从而对所述延迟的周期信号提供延迟,其中所述延迟电路中的每个延迟电路包括可调延迟块,并且其中所述可调延迟块均使接收信号反相从而生成反相信号;以及 控制电路,可操作为基于所述相位检测器的输出信号生成用于控制所述可调延迟块的延迟的控制信号,其中所述控制信号激活所述可调延迟块以向所述延迟的周期信号添加延迟,用于在所述可调延迟块之中对所述延迟的周期信号的占空比失真进行平均。
10.根据权利要求9所述的反馈环电路,其中所述延迟电路可配置为通过穿过所述可调延迟块的至少两个不同延迟路径中的任ー个提供输入信号以生成延迟的输出信号,其中第一组所述可调延迟块的延迟基于第一组所述控制信号而变化,并且其中第二组所述可调延迟块的延迟响应于由所述反馈环电路的操作产生的固定延迟信号而保持不变。
11.根据权利要求10所述的反馈环电路,其中所述延迟电路可操作为响应于第二组所述控制信号而将所述输入信号重新路由通过所述至少两个不同延迟路径中的不同路径以生成所述延迟的输出信号。
12.根据权利要求9所述的反馈环电路,其中所述可调延迟块均包括逻辑门、耦合到所述逻辑门的输出的电流饥饿型反相器以及耦合到所述电流饥饿型反相器的输出的反相器。
13.根据权利要求12所述的反馈环电路,其中所述控制信号被解码以导通所述可调延迟块中的交替的可调延迟块中的所述电流饥饿型反相器中的可变延迟晶体管,从而对所述延迟的周期信号的相位提供附加延迟。
14.根据权利要求9所述的反馈环电路,其中所述延迟线中的可调延迟块的总数为偶数。
15.根据权利要求10所述的反馈环电路,其中所述可调延迟块均具有耦合为接收选择信号的第一输入和耦合为接收所述输入信号的第二输入,并且其中所述选择信号用于选择所述至少两个不同延迟路径中的延迟路径。
16.根据权利要求9所述的反馈环电路,其中所述反馈环电路为延迟锁定环电路。
17.一种用于生成延迟的周期信号的方法,所述方法包括 比较第一周期信号和第二周期信号的相位以生成相位比较信号; 通过穿过耦合在延迟链中的延迟电路中的每个延迟电路的延迟路径提供输入信号,从而使用所述延迟电路将所述第二周期信号延迟,其中每个所述延迟电路中的可调延迟块耦合为形成与穿过所述延迟电路的所述输入信号相关联的至少两个延迟路径; 基于所述相位比较信号生成用于控制所述可调延迟块的延迟的控制信号; 基于所述控制信号激活所述可调延迟块以向所述第二周期信号添加延迟,以用于在所述可调延迟块之中对所述第二周期信号中的占空比失真进行平均;以及 基于所述控制信号将所述输入信号重新路由通过所述延迟电路之一中的所述至少两个延迟路径中的不同路径。
18.根据权利要求17所述的方法,其中每个所述可调延迟块包括第一可调延迟块和第ニ可调延迟块,其中所述第一可调延迟块的延迟基于所述控制信号而变化,并且其中所述第二可调延迟块的延迟响应于固定延迟信号而保持不变。
19.根据权利要求18所述的方法,其中基于所述控制信号将所述输入信号重新路由通过所述延迟电路之一中的所述至少两个延迟路径中的不同路径进一歩包括,将所述输入信号的延迟路径从通过所述第一可调延迟块中的至少两个可调延迟块的第一延迟路径变为通过所述延迟电路中的所述第一可调延迟块中的至少两个可调延迟块和所述第二可调延迟块中的至少两个可调延迟块的第二延迟路径。
20.根据权利要求17所述的方法,其中所述可调延迟块均将接收信号反相以生成反相信号。
全文摘要
反馈环电路包括相位检测器和延迟电路。相位检测器基于延迟的周期信号生成输出信号。延迟电路耦合在使延迟的周期信号延迟的延迟链中。每个延迟电路包括可变延迟块和固定延迟块,二者耦合为形成用于输入信号通过延迟电路以生成延迟的输出信号的至少两个延迟路径。延迟电路中的可变延迟块的延迟基于相位检测器的输出信号而变化。在反馈环电路的操作期间,每个延迟电路基于相位检测器的输出信号,将输入信号重新路由通过延迟路径中的不同路径以生成延迟的输出信号。可变延迟块和固定延迟块中的每个将接收信号反相以生成反相信号。
文档编号H03L7/081GK102696174SQ201080055483
公开日2012年9月26日 申请日期2010年12月15日 优先权日2009年12月18日
发明者J·黄, P·纳加拉简, 宋家康, 种燕 申请人:阿尔特拉公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1