【发明公布】用于消除DLL使用LDU单元带来毛刺的系统及方法_京微齐力(北京)科技有限公司_201910591493.3 

申请/专利权人:京微齐力(北京)科技有限公司

申请日:2019-07-02

发明/设计人:苏志刚;王海力;陈子贤;马明

公开(公告)日:2019-09-27

代理机构:北京亿腾知识产权代理事务所(普通合伙)

公开(公告)号:CN110289837A

代理人:陈霁

主分类号:H03K5/14(20140101)

地址:100190 北京市海淀区知春路63号卫星大厦9层901-903

分类号:H03K5/14(20140101);H03L7/081(20060101)

优先权:

专利状态码:在审-公开

法律状态:2019.09.27#公开

摘要:本发明公开了一种用于消除DLL使用LDU单元带来毛刺的系统。包括B2T延迟电路和DCDL。该延迟电路包括:延迟单元、或非门、与非门、反相器和缓冲器。一种用于消除DLL使用LDU单元带来毛刺的方法,包括下列步骤:对B2T产生的温度计码进行延迟处理,使处理后的温度计码慢于未处理的温度计码时间间隔td3;将处理后的温度计码与未处理的温度计码进行或非运算后取反得到第一控制信号;将处理后的温度计码与未处理的温度计码进行与非运算后得到第二控制信号;通过第一控制信号和第二控制信号控制DCDL的LDU激活数目。通过动态延迟控制码,消除了LDU进行信号延迟处理的过程中,切换控制码带来的输出信号上的毛刺。

主权项:1.一种用于消除DLL使用LDU单元带来毛刺的系统,包括B2T和DCDL,其特征在于,还包括延迟电路,用于接收B2T输出的多组温度计码,并对所述多组温度计码进行延迟处理,将处理后的温度计码作为多组控制码输出到DCDL的控制端;其中,每组控制码包括第一控制信号和第二控制信号;所述延迟电路提供动态的时间延迟td3,在所述第一控制信号提供的控制码由0切换为1时,使所述第二控制信号晚于第一控制信号td3后切换;在所述第一控制信号提供的控制码由1切换为0时,使所述第二控制信号早于第一控制信号td3后切换。

全文数据:用于消除DLL使用LDU单元带来毛刺的系统及方法技术领域本发明涉及信号延迟领域,尤其涉及一种用于消除DLL使用LDU单元带来毛刺的系统及方法。背景技术目前,延迟锁相环DLLdelay-lockedloop被广泛地应用于现代微处理器芯片和片上系统的设计中,例如动态随机存储器接口DRAM、时钟产生与分布电路等。虽然传统的模拟DLL具有低抖动和较小静态相位差的特点,随着cmos器件特征尺寸不断缩小,数字DLL现在被更多的采用。与模拟DLL相比,数字DLL对环境变化不敏感,更适用于低电压、低功耗的现代微处理器和片上系统的设计上。DLL的基本结构见图1。在数字DLL中,数控延迟线DCDLDigital-ControlledDelayLine用来代替压控延迟线VCDLvoltage-controlleddelayline实现延迟的功能。在多种DCDL的结构中,晶格延迟单元LDULatticeDelayUnit被广泛地采用。使用LDU的DCDL在切换code时有可能会给输出时钟带来毛刺glitch。发明内容本发明的目的在于解决现有技术存在的缺陷。为达到上述目的,本发明公开了一种用于消除DLL使用LDU单元带来毛刺的系统及及方法。一方面,该系统包括:二进制-温度计码译码器B2TBinarytoThermometer、延迟电路和DCDL。其中,延迟电路用于接收B2T输出的多组温度计码,并对多组温度计码进行延迟处理,将处理后的温度计码作为多组控制码输出到DCDL的控制端。每组控制码包括第一控制信号和第二控制信号。延迟电路提供动态的时间延迟td3,在第一控制信号提供的控制码由0切换为1时,使第二控制信号晚于第一控制信号td3后切换;在第一控制信号提供的控制码由1切换为0时,使第二控制信号早于第一控制信号td3后切换。优选地,延迟电路包括多个子电路,每个子电路包括:延迟单元、或非门、与非门、反相器和缓冲器;其中,延迟单元的输入端、或非门的第一输入端和与非门的第一输入端连接B2T的输出端;或非门的第二输入端和与非门的第二输入端连接延迟单元的输出端;或非门的输出端连接反相器的输入端,反相器的输出端输出第一控制信号;与非门的输出端连接缓冲器的输入端,缓冲器器的输出端输出第二控制信号。优选地,当延迟电路包含N个子电路时,延迟电路能为具备N+1个LDU的DCDL提供控制信号;当延迟电路包含N个子电路时,延迟电路能一次性增加或减少所述DCDL输出信号与输入信号间M个LDU级延迟;其中,M<N。另一方面,应用于上述系统的方法,包括下列步骤:对B2T产生的多组温度计码进行延迟处理,使处理后的每组温度计码慢于对应的未处理的温度计码时间间隔td3;将每个处理后的温度计码与其对应的未处理的温度计码进行或非运算后取反得到第一控制信号;将每个处理后的温度计码与其对应的未处理的温度计码进行与非运算后得到第二控制信号;通过第一控制信号和第二控制信号控制DCDL的LDU激活数目。优选地,将每个处理后的温度计码与其对应的未处理的温度计码进行与非运算后得到第二控制信号的步骤还包括:对得到的第二控制信号进行缓冲处理。优选地,当未处理的温度计码由0切换为1时,第二控制信号晚于第一控制信号时间间隔td3切换;当未处理的温度计码由1切换为0时,第二控制信号早于第一控制信号时间间隔td3切换。本发明的优点在于:通过动态延迟控制码,消除了LDU进行信号延迟处理的过程中,切换控制码带来的输出信号上的毛刺。附图说明为了更清楚说明本发明实施例的技术方案,下面将对实施例描述中所需使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为现有技术中通过温度计码控制数控延迟线的示意图;图2为数控延迟线的结构图;图3为数控延迟线中每一个LDU的结构图;图4为三个LDU构成的数控延迟线的结构图;图5a为参考例一的温度计码切换与数控延迟线内信号变化关系图;图5b为参考例二的温度计码切换与数控延迟线内信号变化关系图;图6为本发明实施例的用于消除DLL使用LDU单元带来毛刺的系统框图;图7为本发明实施例中的延迟电路子电路的电路图;图8为本发明实施例中的延迟电路子电路的信号变化关系图;图9a为本发明实施例一的温度计码切换与数控延迟线内信号变化关系图;图9b为本发明实施例二的温度计码切换与数控延迟线内信号变化关系图;图10为本发明实施例三的一种用于消除NLDL输出毛刺的电路连接示意图。具体实施方式为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。在数字延迟锁相环DLL电路中,一般使用数控延迟线DCDLDigital-ControlledDelayLine来实现延迟功能。如图1所示。由于控制DCDL中LDU激活数目的控制码必须是温度计码,所以由二进制-温度计码译码器B2TBinarytoThermometer向DCDL提供温度计码。通过B2T译码后的多组温度计码即控制码控制DCDL中LDU的激活数目。一个DCDL由多个LDU串联构成,每个LDU具备相同的LDU延迟,由于不同环境下工作频率的不同要求,DCDL中被激活的LDU数目会发生变化。如图2所示,en[m:0]、enb[m:0]为B2T提供的温度计码,输入信号CLKin为待延迟信号,输出信号CLKout为延迟处理后的信号,需要说明的是,最后一级的LDU,其控制码输入端分别接高电位和地,使最后一级LDU,始终进行1级LDU延迟。如图3所示。一个LDU包括4个与非门,每个与非门尺寸相同,所以具备相同的门级延迟。其中,第一输入信号指DCDL的输入信号CLKin或上一级LDU发送的第一输出信号,第一输出信号指通过第一与非门的运算得到并发送至下一级LDU的信号,第二输入信号指下一级LDU发送的第二输出信号,第二输出信号指第三与非门运算后的输出信号;需要特殊说明的是,第四与非门在LDU中起到均衡负载的作用,其输出信号并不参与输入信号CLKin的处理;作为最后一级LDU的第一输出信号等于第二输入信号。在运算过程中,当输入信号CLKin为0时,代表没有时钟信号输入,即输入为0,则CLKout输出也为0。当输入信号CLKin为1时,代表输入时钟信号,DCDL对输入的时钟信号进行延迟处理,每经过1个LDU,输入信号CLKin进行一次一级LDU延迟。通过温度计码en[m:0]、enb[m:0]控制参与延迟的LDU个数。采用图1的延迟系统对图4所示的DCDL进行控制,通过切换温度计码以控制DCDL中LDU的激活数目。动态的控制输出信号CLKout的延迟。参考例一如图5a所示,初始输入信号CLKin为1,即一个有效的时钟信号作为输入信号CLKin输入DCDL。此时,第一控制码en0初始状态为0,第二控制码enb0初始状态为1,第一控制码en1初始状态为0,第二控制码enb1初始状态为1。通过各与非门对其输入信号进行运算,得到,节点a处信号a为0同时为时钟信号的取反,节点b处信号b为0,节点c处信号c为1,节点d处信号d为1,节点e处信号e为1,节点f处信号f为1,输出信号CLKout为1同时为进行了一级LDU延迟的时钟信号。控制码发生变化,en0由0切换为1,同时enb0由1切换为0。en1和enb1保持不变,使CLKin增加了一级LDU的延迟。信号c由1变为0同时为时钟信号的取反,信号b由0变为1,信号f由1变为0,经过3级与非门产生的门级延迟,信号f的延迟时间为td2,信号a由0变为1,经过1级与非门产生的门级延迟,信号a的延迟时间为td1。由于产生信号a经由的与非门数目少于信号f,则td1<td2。在信号a经td1后切换成1时,此时信号f还没有从1切换为0,此时输出信号CLKout由1变为0,在信号f经td2后切换成0时,输出信号CLKout才由0变为1。在这个切换过程中,输出信号CLKout出现了毛刺,即CLKout切换为0的时候。为了避免参考例一中输出信号的毛刺的产生,在控制码切换的过程中,即en0由0切换为1,enb0由1切换为0的过程中,使enb0的切换晚于en0切换td3>td2-td1的时间间隔,即可保证不产生输出信号的毛刺。但仅设置td3>td2-td1的控制码切换时间间隔还会发生另一问题。在增加输出信号CLKout延时,即增加LDU激活数目的过程中避免了毛刺的产生,但在减少输出信号CLKout延时,即减少LDU激活数目的过程中,将会产生毛刺。具体过程如参考例二所述。参考例二如图5b所示,初始输入信号CLKin为1,即一个有效的时钟信号作为输入信号CLKin输入DCDL。此时,第一控制码en0初始状态为1,第二控制码enb0初始状态为0,第一控制码en1初始状态为0,第二控制码enb1初始状态为1。通过各与非门对其输入信号进行运算,得到,节点a处信号a为1,节点b处信号b为1,节点c处信号c为0,节点d处信号d为1,节点e处信号e为1,节点f处信号f为0,输出信号CLKout为1。控制码发生变化,en0由1切换为0,enb0晚于en0时间间隔td3后由0切换为1。en1和enb1保持不变。信号c由0变为1,信号b由1变为0,信号f由0变为1,经过3级与非门产生的门级延迟,信号f的延迟时间为td2。由于td3>td2-td1,即td3+td1>td2。信号a在enb0经过时间间隔td3后由于经过1级门级延迟产生的时间间隔td1后由1变为0。在此变化过程中,存在信号f和信号a同时为1的时候,在这个时间段,输出信号CLKout会切换为0,即输出信号CLKout出现毛刺。由于参考例一、二的缺陷,本专利中设计一种动态的控制码切换的延迟电路,与B2T和DCDL构成一完整的用于消除DLL使用LDU单元带来毛刺的系统。根据在具体实施过程中,是增加LDU激活数目还是减少LDU激活数目通过控制第一控制码和第二控制码的切换间隔进而实现。需要说明,上述参考例以及下文涉及的实施例中,都是以输入信号CLKin为1为前提进行讨论。当输入信号CLKin为0时,改变控制码en[m:0]、enb[m:0]不会使CLKout产生毛刺。图6为本发明实施例的用于消除DLL使用LDU单元带来毛刺的系统框图。如图6所示,该系统包括B2T、延迟电路和DCDL。其中延迟电路作为DCDL的控制码输入端,串联在B2T与DCDL之间。该延迟电路用于接收B2T输出的多组温度计码,并对多组温度计码进行延迟处理,将处理后的温度计码作为多组控制码输出到DCDL的控制端,进而控制DCDL中LDU的激活数目的多少,已达到控制延迟的效果。上述延迟电路包括多个子电路,每个子电路如图7所示,包括:延迟单元、或非门、与非门、反相器和缓冲器。其中,延迟单元DelayCell、或非门的第一输入端和与非门的第一输入端接入B2T的输出信号作为第一信号t[m:0],或非门的第二输入端和与非门的第二输入端接入延迟单元的输出信号作为第二信号td[m:0],或非门的输出信号通过反相器作用输出第一控制信号en[m:0],与非门的输出信号通过缓冲器作用输出第二控制信号enb[m:0]。通过第一控制信号和第二控制信号,控制DCDL中m+1个LDU的激活与否,即控制DCDL中LDU的激活数目。每组控制码均包括第一控制信号和第二控制信号。第一控制信号和第二控制信号具有动态的时间延迟td3,使td3>td2-td1;其中,td2为在第一控制信号变化时,LDU接收第一控制信号后产生的时间延迟;td1为在第二控制信号变化时,LDU接收第二控制信号后产生时间延迟。当第一控制信号由0切换为1时,延迟单元使第二控制信号晚于第一控制信号td3的时间间隔进行切换;第一控制信号由1切换为0时,延迟单元使第二控制信号早于第一控制信号td3的时间间隔进行切换,进而消除图1所示系统在切换过程中使DCDL的输出信号产生毛刺的现象。具体的,第一信号、第二信号、第一控制信号和第二控制信号的时序变化图,如图8所示。初始状态,第一信号t为0,第二信号td为0,第一控制信号en为0,第二控制信号enb为1。当第一信号t由0切换为1时,延迟单元使第一信号t延迟td3的时间间隔形成第二信号td并输出,即第二信号td晚于第一信号t时间间隔td3后由0切换为1。在这个过程中,第一控制信号en在第一信号t切换时,由0切换为1;第二控制信号enb在第二信号td切换时,由1切换为0。当第一信号t由1切换为0时,延迟单元使第一信号t延迟td3的时间间隔形成第二信号td并输出,即第二信号td晚于第一信号t时间间隔td3后由1切换为0。在这个过程中,第一控制信号en在第二信号td切换时,由1切换为0;第二控制信号enb在第一信号t切换时,由0切换为1。接下来将通过具体实施例详细描述该延迟系统如何使DCDL消除输出信号的毛刺。通过本发明的延迟电路向DCDL提供第一控制信号和第二控制信号,进而控制DCDL中LDU的激活数目。在第一控制信和和第二控制信号切换时,提供延迟时间td3消除DCDL的输出信号产生毛刺的现象。实施例一如图9a所示。由第一控制信号en0、en1和第二控制信号enb0、enb1控制DCDL中LDU的激活数目,通过DCDL中各LDU内部各与非门对输入信号CLKin进行运算。初始状态时,第一控制信号en0为0,第二控制信号enb0为1,第一控制信号en1为0,第二控制信号enb1为1。此时,节点a处信号a为0,节点f处信号f为1,DCDL的输出信号CLK为1。第一控制信号en0由0切换为1,信号f经过延迟间隔td2后由1切换至0,在此过程中,输出信号CLKout始终为1。延迟单元使第二控制信号enb0晚于第一控制信号en0时间间隔td3后由1切换为0,信号a经过延迟间隔td1后由0切换至1,在此过程中,输出信号CLKout始终为1。上述过程中DCDL中被激活的LDU由1个变为2个,设1级与非门提供Tnd2的延迟,则1个LDU提供2*Tnd2的延迟,CLKout由初始时延迟CLKin时间间隔2*Tnd2*1变为延迟CLKin时间间隔2*Tnd2*2。在此过程中,CLKout没有产生毛刺。实施例二如图9b所示。由第一控制信号en0、en1和第二控制信号enb0、enb1控制DCDL中LDU的激活数目,通过DCDL中各LDU内部各与非门对输入信号CLKin进行运算。初始状态时,第一控制信号en0为1,第二控制信号enb0为0,第一控制信号en1为0,第二控制信号enb1为1。此时,信号a为1,信号f为0,DCDL的输出信号CLK为1。由于延迟单元的作用,在第一控制信号en0由1切换为0前时间间隔td3时,第二控制信号enb0由0切换为1,信号a经过延迟间隔td1后由1切换为0,在此过程中,输出信号CLKout始终为1。第一控制信号en0在第二控制信号enb0切换后时间间隔td3后由1切换为0,信号f经过延迟间隔td2后由0切换为1,在此过程中,输出信号CLKout始终为1。上述过程中DCDL中被激活的LDU由2个变为1个,CLKout相对于CLKin的延迟发生了变化,且CLKout没有产生毛刺。在实施例一、二中,提供了针对于DCDL中增加或减少激活1个LDU的具体实施过程。在DCDL需要增加或减少激活M个LDU时,B2T中M组温度计码发生变化,延迟电路中M个子电路同时进行延迟处理,并通过处理后的M组控制码每组控制码均包含第一控制信号和第二控制信号分别控制对应的LDU,实现M个LDU的激活或取消激活。在处理需要大量LDU进行延迟的信号时,为了简化DCDL,以及B2T自身的因素。往往使用由晶格延迟线LDL和嵌套晶格延迟线NLDL构成的DCDL来进行信号的延迟处理。常见的LDL多使用2n个LDU组成,一般是8或16个LDU,NLDL中的LDU使用LDL的最大延迟,以降低B2T的设计复杂度。实施例三如图10所示。在第一级B2T与LDL的电路之间串联第一级延迟电路,使LDL的输出信号在延迟的同时避免产生毛刺。在第二级B2T与NLDL的电路之间串联第二级延迟电路,使NLDL的输出信号CLKout在延迟的同时避免产生毛刺。图中虽未示出,但需要注意,每个LDL都具备对应的第一级B2T及第一级延迟电路。设DCDL中的每个LDU使输入信号CLKin产生时间延迟Tldu=2*Tnd2,则第一级延迟电路的时间间隔td3>Tldu。如LDL由8个LDU组成,则第二级延迟电路的时间间隔td3′>8Tldu。本发明提供了一种用于消除DLL使用LDU单元带来毛刺的系统及方法,通过动态延迟控制码,消除了LDU进行信号延迟处理的过程中,切换控制码带来的输出信号上的毛刺。以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

权利要求:1.一种用于消除DLL使用LDU单元带来毛刺的系统,包括B2T和DCDL,其特征在于,还包括延迟电路,用于接收B2T输出的多组温度计码,并对所述多组温度计码进行延迟处理,将处理后的温度计码作为多组控制码输出到DCDL的控制端;其中,每组控制码包括第一控制信号和第二控制信号;所述延迟电路提供动态的时间延迟td3,在所述第一控制信号提供的控制码由0切换为1时,使所述第二控制信号晚于第一控制信号td3后切换;在所述第一控制信号提供的控制码由1切换为0时,使所述第二控制信号早于第一控制信号td3后切换。2.根据权利要求1所述的系统,其特征在于,所述延迟电路包括多个子电路,每个所述子电路包括:延迟单元、或非门、与非门、反相器和缓冲器;其中,延迟单元的输入端、或非门的第一输入端和与非门的第一输入端连接B2T的输出端;或非门的第二输入端和与非门的第二输入端连接延迟单元的输出端;或非门的输出端连接反相器的输入端,反相器的输出端输出第一控制信号;与非门的输出端连接缓冲器的输入端,缓冲器器的输出端输出第二控制信号。3.根据权利要求1所述的系统,其特征在于,当所述延迟电路包含N个子电路时,所述延迟电路能为具备N+1个LDU的DCDL提供控制信号。4.根据权利要求1所述的系统,其特征在于,当所述延迟电路包含N个子电路时,所述延迟电路能一次性增加或减少所述DCDL输出信号与输入信号间M个LDU级延迟;其中,M<N。5.一种用于消除DLL使用LDU单元带来毛刺的方法,应用于如权利要求1-4所述的延迟系统,其特征在于,包括下列步骤:对B2T产生的多组温度计码进行延迟处理,使处理后的每组温度计码慢于对应的未处理的温度计码时间间隔td3;将每个处理后的温度计码与其对应的未处理的温度计码进行或非运算后取反得到第一控制信号;将每个处理后的温度计码与其对应的未处理的温度计码进行与非运算后得到第二控制信号;通过所述第一控制信号和所述第二控制信号控制DCDL的LDU激活数目;其中,当所述未处理的温度计码由0切换为1时,所述第二控制信号晚于第一控制信号时间间隔td3切换;当所述未处理的温度计码由1切换为0时,所述第二控制信号早于第一控制信号时间间隔td3切换。6.根据权利要求5所述的方法,其特征在于,所述将每个处理后的温度计码与其对应的未处理的温度计码进行与非运算后得到第二控制信号的步骤还包括:对得到的第二控制信号进行缓冲处理。

百度查询: 京微齐力(北京)科技有限公司 用于消除DLL使用LDU单元带来毛刺的系统及方法

vip会员权益升级
价格优惠/年费监控/专利管家/定制微网站 关闭