CN113904680A - 快速重新锁定dll电路的方法 - Google Patents
快速重新锁定dll电路的方法 Download PDFInfo
- Publication number
- CN113904680A CN113904680A CN202111082977.9A CN202111082977A CN113904680A CN 113904680 A CN113904680 A CN 113904680A CN 202111082977 A CN202111082977 A CN 202111082977A CN 113904680 A CN113904680 A CN 113904680A
- Authority
- CN
- China
- Prior art keywords
- delay
- clock
- dll circuit
- current
- module
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 49
- 230000008569 process Effects 0.000 claims description 8
- 230000003247 decreasing effect Effects 0.000 claims description 7
- 230000003111 delayed effect Effects 0.000 claims description 7
- 230000007423 decrease Effects 0.000 claims description 6
- 230000001934 delay Effects 0.000 claims description 3
- 238000012935 Averaging Methods 0.000 claims description 2
- 230000011664 signaling Effects 0.000 claims description 2
- 238000001514 detection method Methods 0.000 abstract description 11
- 230000005540 biological transmission Effects 0.000 abstract description 6
- 230000002411 adverse Effects 0.000 abstract description 3
- 230000000694 effects Effects 0.000 abstract description 3
- 238000005516 engineering process Methods 0.000 abstract description 3
- 230000008859 change Effects 0.000 abstract description 2
- 230000002349 favourable effect Effects 0.000 abstract description 2
- 230000001737 promoting effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 13
- 101100328957 Caenorhabditis elegans clk-1 gene Proteins 0.000 description 8
- 238000013461 design Methods 0.000 description 5
- 230000015654 memory Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000000875 corresponding effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011217 control strategy Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03L—AUTOMATIC CONTROL, STARTING, SYNCHRONISATION OR STABILISATION OF GENERATORS OF ELECTRONIC OSCILLATIONS OR PULSES
- H03L7/00—Automatic control of frequency or phase; Synchronisation
- H03L7/06—Automatic control of frequency or phase; Synchronisation using a reference signal applied to a frequency- or phase-locked loop
- H03L7/08—Details of the phase-locked loop
- H03L7/081—Details of the phase-locked loop provided with an additional controlled phase shifter
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/4076—Timing circuits
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
Abstract
本发明提供的快速重新锁定DLL电路的方法,设置DLL电路;步骤包括:实时检测是否存在上溢或下溢,根据检测结果相应设置控制信号,控制内部时钟的延迟。通过本发明的方法能大幅减少指令和数据的丢失,且无须重置DLL电路就能及时恢复正常相位锁定状态;还能够在上溢或下溢时给输出数据提供最小错误的时钟,并快速重新锁定,数据传输准确率高、稳定性好;有效解决了温度变化对时钟处理带来的不利影响;有利于提高DRAM工作的可靠性,进一步推动集成电路技术的深入应用。
Description
技术领域
本发明属于半导体集成电路技术领域,尤其涉及快速重新锁定DLL电路的方法。
背景技术
动态随机存储器DRAM和外部控制芯片CPU通过时钟来准确完成指令和数据的传输。在读的操作时,DRAM需要提供输出时钟dqs,dqs主要用来在一个时钟周期(tCK)内准确的区分出每个传输周期,并便于接收方准确接收数据。当输出时钟dqs和外部时钟clk相位差别较大时,CPU会抓取到错误的指令和数据。调整DRAM输出时钟dqs,使输出时钟dqs与外部时钟clk相位对齐目前主要是通过延迟锁相环DLL(Delay Locked Loop)电路来实现的。DLL电路通过提供延迟量使输出时钟dqs和外部时钟clk相位保持对齐。
DRAM芯片工作中不稳定的电压和温度变化往往会引起DLL电路不能正常工作,一般称这种情形为DLL电路失锁。其中有两种突出的失锁情况一般称为:overflow(上溢)和underflow(下溢)。overflow一般是DLL电路持续发出增加延迟的指令,但DLL电路已提供了最大延迟量,无法再增加延迟量,输出时钟dqs将维持当前未锁定的状态,且无法做出任何调整。underflow是DLL电路持续发出减小延迟的指令,但DLL电路已提供了其所能调节的最少的延迟量,无法再减少延迟量,导致相位失锁,且无法做出调整脱离当前overflow或underflow。出现以上任何一种情况时,内存芯片都无法在准确的时间提供数据和指令,导致数据传输失败。特别的,随着集成电路技术的发展和应用需求的深入,当集成有DRAM的设备应用于极端环境中时,温度突变的情况时有发生,更容易出现overflow或underflow的现象,使DRAM输出时钟dqs无法和外部时钟clk对齐,且此时现有的DLL电路不会对输出时钟dqs相位再进行修正,内存芯片最终无法准确传输数据。
已知的解决办法是重置DLL电路。重置DLL电路需要比较长的时间,以DDR4-2666内存为例,要求的DLL电路锁存时间(locking time)是854tCK。在这段时间内DRAM芯片不能接收任何指令,后续的指令都将丢失。对于正在工作中的DRAM芯片,显然重置DLL电路并不能快速重新锁定DLL电路,并不是一个有效解决overflow或underflow的方法。由温度变化等因素引发overflow或underflow而产生的不利影响限制了DRAM存储器及具有其的集成电路设备在复杂环境中的应用。
因此目前十分需要研究一种快速重新锁定DLL电路的方法,无需重置DLL电路能够用较短的时间恢复到DLL电路正常锁定状态,解决在DRAM存储器中,DLL电路发生underflow或overflow现象时指令和数据大量丢失的问题,以此进一步推动半导体集成电路技术的深层次发展及广泛应用。
发明内容
本发明是为解决上述现有技术的全部或部分问题,提供快速重新锁定DLL电路的方法用于使DLL电路能够及时跳出overflow或underflow的状态,短时间内重新锁定,实现数据和指令的正确传输。
为了便于理解本发明的内容,对本发明涉及的DLL电路工作原理及overflow与underflow现象进行示例性而非限定的描述。如图1所示,外部时钟clk由CPU提供。DLL电路中包括占空比调整模块DCC(Duty Cycle Correction)用于调节时钟的占空比、延迟链模组delay_line用于提供可调延迟量。还有固定延迟模块delay replica用于复制图1中Logic电路的真实延迟。这是因为Logic电路在DLL电路之后,需要将这部分Logic电路对时钟产生的影响也加入到DLL电路中,这样经过Logic电路后的输出时钟dqs才可能与clk相位对齐。本发明中overflow是指鉴相模块phase detect输出的相位差指示需要继续增加当前DLL电路提供的延迟量,但此时延迟链模组delay_line已提供了最大延迟量。underflow则是指鉴相模块phase detect输出的相位差指示需要继续减少延迟量,但此时延迟链模组delay_line已提供了最小延迟量。由于underflow或overflow导致了需要由延迟链模组delay_line提供的延迟量,已经超过了其可调范围,此时如果控制模块control仅根据鉴相模块phase detect输出的相位差,持续要求增加或减少延迟链模组delay_line中参与延迟链路的延迟单元,延迟链模组delay_line将卡死在其延迟量的最大值或最小值处,使DRAM处于失锁的状态下,需要重新锁定。
本发明提供的快速重新锁定DLL电路的方法,DLL电路包括控制模块和延迟链模组;所述延迟链模组包括串联的粗调延迟模块和精调延迟模块;步骤包括:步骤S1.通过所述控制模块获取当前外部时钟和所述DLL电路反馈时钟的相位差以及所述粗调延迟模块提供的当前延迟量;步骤S2.判断所述当前延迟量能否继续改变以补偿所述相位差,实时检测是否存在上溢或下溢;若不存在,通过所述控制模块基于所述相位差更新当前的控制信号以调节所述当前延迟量更新所述反馈时钟,返回所述步骤S1;若存在,通过所述控制模块随机生成更新的控制信号以设定所述当前延迟量使得所述DLL电路脱离所述上溢或所述下溢,返回所述步骤S1;重复所述步骤S1至所述步骤S2直至所述外部时钟与所述反馈时钟相位对齐。当所述DLL电路存在上溢或下溢时通过随机生成更新的控制信号能够设定一个更新的延迟量,响应于该控制信号仍能得到一个反馈时钟,及时重启锁定过程。
所述粗调延迟模块包括若干延迟链路,所述延迟链路包括级联的多个延迟单元,所述当前延迟量基于所述DLL电路的内部时钟所经历的所述延迟单元个数;所述实时检测是否存在上溢或下溢的做法包括:根据所述相位差确定需要继续增加或减少所述当前延迟量;通过所述控制模块获取当前已使用的延迟单元个数,并判断能否继续改变延迟单元个数继续增加或减少所述当前延迟量。
检测存在所述上溢的方法是:若需要继续增加所述当前延迟量而当前已使用的所述延迟单元已是最多,则判断存在所述上溢。
检测存在所述下溢的方法是:若需要继续减少所述当前延迟量而当前已使用的所述延迟单元已是最少,则判断存在所述下溢。
所述控制信号包括第一控制信号和第二控制信号;所述内部时钟响应于所述第一控制信号经历若干所述延迟单元得到第一时钟;所述内部时钟响应于所述第二控制信号经历若干所述延迟单元得到第二时钟;使得所述DLL电路脱离所述上溢或所述下溢的做法是:保持当前的所述第一控制信号不变以保持当前的所述第一时钟不变;随机生成新的所述第二控制信号,控制所述内部时钟经历随机个数的所述延迟单元更新所述第二时钟;基于当前的所述第一时钟和更新的所述第二时钟更新所述反馈时钟。
在随机生成更新的所述第二控制信号之前,使用当前的所述第一时钟经过所述DLL电路作为当前输出数据的临时时钟。当检测到所述DLL电路存在上溢或下溢时,将此时的所述第一时钟经DLL电路后续部分延迟后直接输出到外部电路中作为输出数据的临时时钟,在重新锁定之前给输出数据提供了最小错误的时钟作为重新锁定实现之前的临时时钟,避免了此时中断读取数据,保证了DRAM读取数据的连续性,减少了实现重新锁定所需时间内的指令和数据丢失。
所述DLL电路还包括连接所述粗调延迟模块输入端的占空比调整模块,用于接收外部时钟并调整其占空比后输出所述内部时钟;所述延迟链路包括分别有N个延迟单元的第一支链和第二支链;得到第一时钟的做法是:所述内部时钟经历所述第一支链的i个所述延迟单元延迟得到第一时钟,1≤i≤N;得到第二时钟的做法是:所述内部时钟经历所述第二支链的j个所述延迟单元延迟得到第二时钟,1≤j≤N;其中N、i和j是正整数;判断能否继续改变延迟单元个数以继续增加或减少所述当前延迟量的过程包括判断i和j的差值能否继续增加或减少。
所述第一时钟为奇分频信号;所述第二时钟为偶分频信号。
所述控制信号还包括精调控制信号;更新所述反馈时钟的做法包括:所述精调延迟模块响应于所述精调控制信号,基于所述第一时钟和所述第二时钟的相位差延迟所述第一时钟,得到并输出延迟时钟;对所述延迟时钟累加***固定延迟得到所述反馈时钟。
得到所述延迟时钟的做法是:基于延迟精度要求将所述第一时钟与第二时钟相位差均分为若干延迟步长;将所述第一时钟累加延迟m个所述延迟步长得到所述延迟时钟。通过所述精调延迟模块根据具体延迟精度的要求均分单位延迟步长,由所述精调控制信号设定所述延迟步长的份数累加延迟量,进一步提高了锁定的速度和精度。
与现有技术相比,本发明的主要有益效果:
1、本发明的快速重新锁定DLL电路的方法,通过判断所述当前延迟量能否继续改变以补偿所述相位差,实时检测所述DLL电路是否存在上溢或下溢,根据检测结果相应设置控制信号,能够将外部时钟与反馈时钟快速对齐;通过随机更新所述控制信号无须重置DLL电路能在较短的时间内恢复到正常的相位锁定状态,保证DRAM的输出时钟与输入时钟相位对齐。通过在发生上溢或下溢时使用所述第一时钟经过DLL电路直接输出,在重新锁定的之前中仍提供给输出数据提供最小错误的时钟,避免了传输中断,大幅减少了指令和数据的丢失。
2、通过实施本发明的快速重新锁定DLL电路的方法极有利于提高DRAM工作的可靠性,为突破由于温度等环境因素所带来的不利影响对集成DRAM的设备应用的限制提供了切实有效的解决方案,进一步推动集成电路设备在复杂环境中的深入应用。
附图说明
图1为本发明示例的DLL电路同步时钟的原理示意图。
图2为本发明实施例一的DLL电路的方块图。
图3为本发明实施例一的DLL电路的简化方块图。
图4为本发明实施例一的DLL电路正常锁相时的信号时序图。
图5为本发明实施例一的延迟链模组基本结构示意图。
图6为本发明实施例一的延迟链路示意图。
图7为本发明实施例一中精调延迟模块输出的信号时序图。
图8为本发明实施例一发生underflow时延迟链路的示意图。
图9为本发明实施例一快速重新锁定DLL电路的方法过程示意图。
图10为本发明实施例一中重新锁定DLL电路时延迟链路的示意图。
图11为本发明实施例二发生overflow时延迟链路的示意图。
图12为本发明实施例二中重新锁定DLL电路时延迟链路的示意图。
具体实施方式
在下述实施例中采用特定次序描绘了实施例的操作,这些次序的描述是为了更好的理解实施例中的细节以全面了解本发明,但这些次序的描述并不一定与本发明的方法一一对应,也不能以此限定本发明的范围。
实施例一
如图2所示,本实施例示例的DLL电路包括鉴相模块phase detect、控制模块control、占空比调整模块DCC、延迟链模组delay_line和固定延迟模块delay_replica。其中各部分的通信连接与常规的DLL路相同,不再展开。外部时钟clk和初始的反馈时钟clk_fb经过鉴相模块phase detect相位比对后由控制模块control做出控制策略去控制占空比调整模块DCC和延迟链模组delay_line。示例的情况中,占空比调整模块DCC调整外部时钟clk的占空比为50%得到内部时钟。外部时钟clk经过延迟链模组delay_line延迟后得到延迟时钟clk_1,clk_1通过固定延迟模块delay_replica累加***固定延迟更新反馈时钟clk_fb。为了便于理解本发明的要点,在此省略占空比调整模块DCC的工作,如图3所示,图3中将图2的DLL电路结构中关于延迟链路部分可以简化成延迟链模组delay_line和固定延迟模块delay_replica,展开示例提供当前延迟量的工作情况。需要注意的是以上是为了便于说明而进行的简化,并不能因此认为本实施例的DLL电路结构中必然没有占空比调整模块DCC。本实施例中DLL电路正常锁相时,延迟链模组delay_line输出的延迟时钟clk_1、输入的外部时钟clk与锁相时DLL电路输出的反馈时钟clk_fb的时序图如图4所示。固定延迟模块delay_replica的模拟延迟链路是复制***自带的延迟量,并且它受工艺漂移、温度等因素影响。为了叙述清楚,本实施例中以延迟时间来表征延迟量。在本实施例的应用场景中,温度与固定延迟模块delay_replica的延迟时间正相关。当温度升高,固定延迟模块delay_replica延迟时间t_rep变长,而正常锁相的总延迟时间t_delay是固定不变的,那么就需要减少延迟链模组delay_line的延迟时间t_line才能保证DLL电路正常工作。但是当温度升高超过一定范围时,需要t_line减少到小于延迟链模组delay_line能提供的最小延迟时间,而此时t_line已经无法再继续减少,DLL电路将无法正常锁相。本实施例将这种失锁情况称为underflow。反之,当温度降低,固定延迟模块delay_replica的延迟时间t_rep相应缩短,导致延迟链模组delay_line所需的延迟时间t_line持续增加。当需要延迟时间t_line增加到延迟链模组delay_line能提供的最大延迟时间后,t_line已经无法继续增加,DLL电路也将无法正常锁相,本实施例将这种失锁情况称为overflow。在DRAM存储器中,外部时钟clk是CPU的命令时钟,反馈时钟clk_fb是输出数据的时钟。当overflow或underflow发生时,DLL电路没有正常锁相,外部时钟clk和当前的反馈时钟clk_fb不能保持同相位,需要快速脱离overflow或underflow,重新锁定才能保证CPU正常读取DRAM的数据。
本实施例的延迟链模组delay_line及信号流程如图5所示。输入粗调延迟模块coarse delay的内部时钟clk_coarse响应于控制模块control输出的第一控制信号和第二控制信号,生成第一时钟和第二时钟输入精调延迟模块fine delay。如图6示例的延迟链路包括分别有N个延迟单元的第一支链A和第二支链B。1≤i≤N,1≤j≤N;其中N、i和j是正整数。本实施例中控制模块control包括检测单元和第一计数器、第二计数器和第三计数器。当不存在underflow或overflow时,控制模块control依据当前相位差的大小输出增加还是减少当前延迟量的命令。示例的第一控制信号是奇数控制码cnt_odd,;第二控制信号是偶数控制码cnt_even。精调控制信号直接输入到精调延迟模块fine delay,包括一个计数控制码cnt_fine。本实施例中第一时钟clk_odd是内部时钟clk_coarse经i个延迟单元后生成的奇数分频信号;第二时钟clk_even是内部时钟clk_coarse经过j个延迟单元后生成的偶数分频信号。第一时钟clk_odd和第二时钟clk_even一同输入精调延迟模块fine delay。如图6所示,示例的,每个延迟单元由三个与非门组成,两个与非门的输出端分别连接第三个与非门的第一输入端和第二输入端。延迟单元也可以有其他结构例如反相器、传输门等实现延迟功能的电路结构,并不限定。图6示例的延迟单元一共有18个,即N的示例值是9。生成第一时钟clk_odd最多能用9个延迟单元;生成第二时钟clk_even最多能用9个延迟单元。粗调延迟模块coarse delay中延迟单元的数量以及i、j的最大值并不因此限定,可以根据实际应用或具体产品设计参数相应设定。在本实施例中第一时钟clk_odd和第二时钟clk_even经历的与非门个数同为偶数或同为奇数。第一时钟clk_odd和第二时钟clk_even具有相位差。本实施例中,精调控制信号还包括分频信号,用于依据延迟精度的实际要求进行分频,将第一时钟clk_odd和第二时钟clk_even的相位差进行若干等分用于进一步精调延迟量,每个等份就是一个延迟步长(等分数量越多,精调延迟的单次延迟量就越小,延迟的精度就越高)。将第一时钟clk_odd和第二时钟clk_even的相位差分成n个等份,一个延迟步长就是相位差的n分之一,精调控制信号cnt_fine输入精调延迟模块fine delay用于选择对输入的第一时钟clk_odd延迟m个延迟步长,即给m赋值。最终延迟链模组delay_line输出的延迟时钟clk_1就是第一时钟clk_odd加上m个延迟步长后得到的。如图7所示,示例的情况中,采用一个1/8比率的分频器,n为8,m为2。精调延迟的结果是在第一时钟clk_odd的基础上加上两个延迟步长。
本实施例的DLL电路锁定过程中,控制模块control根据获取的相位差的大小决定增加还是减少当前已经提供的延迟量,相应生成的第一控制信号cnt_odd和第二控制信号cnt_even确定使用粗调延迟模块coarse delay中的几个延迟单元,即给i和j赋值。并且由第一控制信号cnt_odd和第二控制信号cnt_even决定第一时钟clk_odd和第二时钟clk_even所经的延迟链路中使用延迟单元个数交替增加或者减少。本实施例中,出现underflow时的延迟链路如图8所示,比较了外部时钟clk和当前的反馈时钟clk_fb的相位后,控制模块control发出的命令是继续减少当前延迟量,但是此时已经使用了最少的延迟单元参与延迟链路,即当前的i和j都已经是其最小值1。可知第一时钟clk_odd经历第一支链A和第二时钟clk_even所经历的第二支链B中使用延迟单元个数无法继续交替减少,即i和j的差值无法继续减少。如图8示例的第一时钟clk_odd和第二时钟clk_even的相位差已经最小,无法继续减少延迟时钟clk_1的延迟量,即t_line无法减少。那么检测单元检测此时发生了underflow。如图9所示,示例的快速重新锁定DLL电路的方法包括:步骤S1.通过控制模块control获取当前外部时钟clk和反馈时钟clk_fb的相位差以及粗调延迟模块coarsedelay提供的当前延迟量。步骤S2.判断当前延迟量能否继续改变以补偿相位差,实时检测是否存在下溢。分别不同操作:若不存在,通过控制模块control基于相位差更新当前的控制信号以调节当前延迟量更新反馈时钟,返回步骤S1;若存在,通过控制模块control随机生成新的控制信号以设定当前延迟量使得DLL电路脱离下溢,返回步骤S1。重复步骤S1至步骤S2直至外部时钟clk与反馈时钟clk_fb相位对齐。本实施例的快速重新锁定DLL电路的方法可以通过VLSI设计,结合相应的算法,采用数字ASIC流程来设计控制模块来实现。在也有具体应用是通过模拟电路设计来实现的,并不限定。
发生underflow时控制模块control保持当前的第一控制信号cnt_odd不变,使得当前的第一时钟clk_odd保持不变。控制模块control随机设置一个新的第二控制信号cnt_even控制内部时钟clk_coarse经过随机个数的延迟单元得到更新的第二时钟clk_even。如图10所示,本实施例示例的随机个数为5个延迟单元,随机个数大于j的最小值即可,并不限定。新的第二时钟clk_even和未改变的当前的第一时钟clk_odd输入精调延迟模块finedelay生成更新的延迟时钟clk_1,其经过固定延时模块delay_replica后输出更新的反馈时钟clk_fb,鉴相模块phase detect基于此更新的反馈时钟clk_fb和外部时钟clk进行相位比对,控制模块control根据此时的相位差更新第一控制信号和第二控制信号以此重新开始DLL电路相位锁定过程,直至外部时钟clk与最终的反馈时钟clk_fb相位对齐。本实施例中以第一控制信号是一个奇数控制码cnt_odd、第二控制信号是一个偶数控制码cnt_even为例是为了便于理解本发明,在也有的实施情况中粗调延时模块coarse delay的延时链路结构、精调延迟模块fine delay的电路结构根据实际应用和产品设计相应设置,相应的计数器或其生成的信号可以有更多;控制信号可以是数字信号也可以是模拟信号,根据具体应用的DLL电路设计相应设置,并不限定。
实施例二
如图11所示,实施例二对发生overflow时快速重新锁定DLL电路的方法展开示例。步骤S2中判断当前延迟量能否继续改变以补偿相位差,实时检测是否存在上溢。当比较了当前输入DLL电路的外部时钟clk和反馈时钟 clk_fb的相位后,控制模块control判断需要发出是增加延迟的命令,同时检测单元判断当前第一支链A和第二支链B中已经用了最多的延迟单元参与延迟链路。即判断当前i和j的值分别已经达到其最大值。那么检测到此时DLL电路发生了overflow。如图11所示,当前第一时钟clk_odd已经是内部时钟clk_coarse经过9个延迟单元后生成的,同样第二时钟clk_even也是经过9个延迟单元后得到的,此时无法再增加当前延迟量。如图12所示,此时控制模块control保持当前的第一控制信号cnt_odd不变,使得当前的第一时钟clk_odd保持不变。一方面使用当前的第一时钟clk_odd经过精调延迟模块fine delay后再经固定延迟模块delay_replica后输出的时钟作为输出数据的时钟,以保证当前的DRAM存储器正常读写数据,不丢失指令和数据。另一方面,控制模块control设置一个新的第二控制信号cnt_even控制内部时钟clk_coarse经过随机个数的延迟单元得到更新的第二时钟clk_even。本实施例示例的随机个数为5个延迟单元,随机个数小于j的最大值即可,并不限定。更新的第二时钟clk_even和未改变的当前的第一时钟clk_odd输入精调延迟模块fine delay生成更新的延迟时钟clk_1,其经过固定延时模块delay_replica后输出更新的反馈时钟clk_fb,鉴相模块phase detect基于此更新的反馈时钟clk_fb和外部时钟clk进行相位比对,控制模块control根据此时的相位差得到第一控制信号和第二控制信号以此重新开始DLL电路相位锁定过程,直至外部时钟clk与最终的反馈时钟clk_fb相位相同。
在本实施例中,以控制模块control的具体构成是检测单元和计数单元为例,并相应以控制信号为计数器信号进行示例是为了便于理解本发明的具体应用。在也有的实施情况中控制模块control的是其他的具体电路构成,还可以包括编码器、缓冲器和逻辑单元等电路元件,控制信号形式并不是计数器信号,如电流信号或电压信号或其他模拟信号并不限定。本实施例对控制模块control实时检测是否存在上溢的做法进行了示例,在也有的实施情况中,也可以是其他结合具体电路结构的做法,例如通过对当前相位差与前一时刻相位差进行比对判断两次相位比对结果是否不同,以此检测DLL电路是否是正常工作状态,并不限定。
本发明为了便于叙述清楚而采用的一些常用的英文名词或字母只是用于示例性指代而非限定性解释或特定用法,不应以其可能的中文翻译或具体字母来限定本发明的保护范围。还需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
本文中应用了具体的个例对本发明的结构及工作原理进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求保护的范围内。
Claims (10)
1.快速重新锁定DLL电路的方法,DLL电路包括控制模块和延迟链模组;所述延迟链模组包括串联的粗调延迟模块和精调延迟模块;其特征在于:步骤包括:
步骤S1.通过所述控制模块获取当前外部时钟和所述DLL电路反馈时钟的相位差以及所述粗调延迟模块提供的当前延迟量;
步骤S2.判断所述当前延迟量能否继续改变以补偿所述相位差,实时检测是否存在上溢或下溢;
若不存在,通过所述控制模块基于所述相位差更新当前的控制信号以调节所述当前延迟量更新所述反馈时钟,返回所述步骤S1;若存在,通过所述控制模块随机生成更新的控制信号以设定所述当前延迟量使得所述DLL电路脱离所述上溢或所述下溢,返回所述步骤S1;
重复所述步骤S1至所述步骤S2直至所述外部时钟与所述反馈时钟相位对齐。
2.根据权利要求1所述的快速重新锁定DLL电路的方法,其特征在于:所述粗调延迟模块包括若干延迟链路,所述延迟链路包括级联的多个延迟单元,所述当前延迟量基于所述DLL电路的内部时钟所经历的所述延迟单元个数;所述实时检测是否存在上溢或下溢的做法包括:
根据所述相位差确定需要继续增加或减少所述当前延迟量;
通过所述控制模块获取当前已使用的延迟单元个数,并判断能否继续改变延迟单元个数继续增加或减少所述当前延迟量。
3.根据权利要求2所述的快速重新锁定DLL电路的方法,其特征在于:检测存在所述上溢的方法是:若需要继续增加所述当前延迟量而当前已使用的所述延迟单元已是最多,则判断存在所述上溢。
4.根据权利要求2所述的快速重新锁定DLL电路的方法,其特征在于:检测存在所述下溢的方法是:若需要继续减少所述当前延迟量而当前已使用的所述延迟单元已是最少,则判断存在所述下溢。
5.根据权利要求2-4任意一项所述的快速重新锁定DLL电路的方法,其特征在于:所述控制信号包括第一控制信号和第二控制信号;所述内部时钟响应于所述第一控制信号经历若干所述延迟单元得到第一时钟;所述内部时钟响应于所述第二控制信号经历若干所述延迟单元得到第二时钟;
使得所述DLL电路脱离所述上溢或所述下溢的做法是:
保持当前的所述第一控制信号不变以保持当前的所述第一时钟不变;
随机生成新的所述第二控制信号,控制所述内部时钟经历随机个数的所述延迟单元更新所述第二时钟;
基于当前的所述第一时钟和更新的所述第二时钟更新所述反馈时钟。
6.根据权利要求5所述的快速重新锁定DLL电路的方法,其特征在于:在随机生成更新的所述第二控制信号之前,使用当前的所述第一时钟经过所述DLL电路作为当前输出数据的临时时钟。
7.根据权利要求5所述的快速重新锁定DLL电路的方法,其特征在于:所述DLL电路还包括连接所述粗调延迟模块输入端的占空比调整模块,用于接收外部时钟并调整其占空比后输出所述内部时钟;所述延迟链路包括分别有N个延迟单元的第一支链和第二支链;
得到第一时钟的做法是:所述内部时钟经历所述第一支链的i个所述延迟单元延迟得到第一时钟,1≤i≤N;
得到第二时钟的做法是:所述内部时钟经历所述第二支链的j个所述延迟单元延迟得到第二时钟,1≤j≤N;
其中N、i和j是正整数;判断能否继续改变延迟单元个数以继续增加或减少所述当前延迟量的过程包括判断i和j的差值能否继续增加或减少。
8.根据权利要求7所述的快速重新锁定DLL电路的方法,其特征在于:所述第一时钟为奇分频信号;所述第二时钟为偶分频信号。
9.根据权利要求8所述的快速重新锁定DLL电路的方法,其特征在于:所述控制信号还包括精调控制信号;更新所述反馈时钟的做法包括:所述精调延迟模块响应于所述精调控制信号,基于所述第一时钟和所述第二时钟的相位差延迟所述第一时钟,得到并输出延迟时钟;对所述延迟时钟累加***固定延迟得到所述反馈时钟。
10.根据权利要求9所述的快速重新锁定DLL电路的方法,其特征在于:得到所述延迟时钟的做法是:基于延迟精度要求将所述第一时钟与第二时钟相位差均分为若干延迟步长;将所述第一时钟累加延迟m个所述延迟步长得到所述延迟时钟。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111082977.9A CN113904680A (zh) | 2021-09-15 | 2021-09-15 | 快速重新锁定dll电路的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111082977.9A CN113904680A (zh) | 2021-09-15 | 2021-09-15 | 快速重新锁定dll电路的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113904680A true CN113904680A (zh) | 2022-01-07 |
Family
ID=79028437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111082977.9A Pending CN113904680A (zh) | 2021-09-15 | 2021-09-15 | 快速重新锁定dll电路的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113904680A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114124083A (zh) * | 2022-01-27 | 2022-03-01 | 浙江力积存储科技有限公司 | 一种dll延时链及下溢时快速锁定方法 |
-
2021
- 2021-09-15 CN CN202111082977.9A patent/CN113904680A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114124083A (zh) * | 2022-01-27 | 2022-03-01 | 浙江力积存储科技有限公司 | 一种dll延时链及下溢时快速锁定方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6069506A (en) | Method and apparatus for improving the performance of digital delay locked loop circuits | |
US6683928B2 (en) | Process, voltage, temperature independent switched delay compensation scheme | |
US5552726A (en) | High resolution digital phase locked loop with automatic recovery logic | |
US7423468B2 (en) | Duty correction circuit of digital type for optimal layout area and current consumption | |
KR100857855B1 (ko) | 반도체 메모리 장치 및 그 구동방법 | |
US7619454B2 (en) | Clock generator for semiconductor memory apparatus | |
US7489171B2 (en) | Adaptive delay-locked loops and methods of generating clock signals using the same | |
US8294498B2 (en) | Clock de-skewing delay locked loop circuit | |
JP4397933B2 (ja) | 位相同期回路 | |
KR100868015B1 (ko) | 지연 장치, 이를 이용한 지연 고정 루프 회로 및 반도체메모리 장치 | |
CN101951260A (zh) | 一种数字延迟锁相环电路 | |
US9564907B2 (en) | Multi-channel delay locked loop | |
CN113541679B (zh) | 一种延迟锁定回路 | |
GB2341286A (en) | A delay locked loop device | |
US8587355B2 (en) | Coarse lock detector and delay-locked loop including the same | |
JP2004222287A (ja) | 集積回路装置 | |
US8081021B2 (en) | Delay locked loop | |
US8035431B2 (en) | Delay locked loop and delay locking method having burst tracking scheme | |
CN113904680A (zh) | 快速重新锁定dll电路的方法 | |
US6940325B2 (en) | DLL circuit | |
US6777990B2 (en) | Delay lock loop having an edge detector and fixed delay | |
US8217695B2 (en) | Fast measurement initialization for memory | |
CN114124083B (zh) | 一种dll延时链及下溢时快速锁定方法 | |
US9276590B1 (en) | Generating signals with accurate quarter-cycle intervals using digital delay locked loop | |
EP1271786B1 (en) | Improved delay locked loop circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: Room 1302, 13th Floor, No. 1088 Zhenghan South Street, Xiaoshun Town, Jindong District, Jinhua City, Zhejiang Province Applicant after: Zhejiang Liji Storage Technology Co.,Ltd. Address before: 321000 1005, floor 10, No. 1088, Zhenghan South Street, Xiaoshun Town, Jindong District, Jinhua City, Zhejiang Province Applicant before: Zhejiang Liji Electronics Co.,Ltd. |