CN100583289C - 用于执行动态修整的系统 - Google Patents

用于执行动态修整的系统 Download PDF

Info

Publication number
CN100583289C
CN100583289C CN200710107351A CN200710107351A CN100583289C CN 100583289 C CN100583289 C CN 100583289C CN 200710107351 A CN200710107351 A CN 200710107351A CN 200710107351 A CN200710107351 A CN 200710107351A CN 100583289 C CN100583289 C CN 100583289C
Authority
CN
China
Prior art keywords
phase
signal
delay
clock signal
frequency
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.)
Expired - Fee Related
Application number
CN200710107351A
Other languages
English (en)
Other versions
CN101114517A (zh
Inventor
埃里克·L·马松
爱德华·S·阿恩
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.)
Nvidia Corp
Original Assignee
Nvidia 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 Nvidia Corp filed Critical Nvidia Corp
Publication of CN101114517A publication Critical patent/CN101114517A/zh
Application granted granted Critical
Publication of CN100583289C publication Critical patent/CN100583289C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

本发明揭示一种用于执行动态修整的系统和方法。具体来说,所述系统包括用于产生参考时钟信号的时钟。所述参考时钟信号包括第一频率,所述第一频率是信号(例如,来自DDR存储器的数据时钟信号)的第二频率的因数。计数器可耦合到所述时钟,且可基于所述参考时钟信号的脉冲而产生多个时钟脉冲。可以从所述第一频率减慢的频率产生所述多个时钟脉冲以进行低功率操作。相位长度检测器可耦合到所述计数器,且可包括用于检测所述产生的多个时钟脉冲中的至少一者的平均长度的修整器链。变换模块可耦合到所述相位长度检测器,以便将所述平均长度变换为所述信号的相位延迟。

Description

用于执行动态修整的系统
相关美国申请案的交叉参考
本申请案主张2006年5月30日申请且转让给本发明的受让人的题为“Circuit forPerforming Low Power Dynamic Trimming”的共同待决临时专利申请案的优先权,所述申请案的申请号为60/809,636,代理人案号为NVID-P002543.PRO,其全文以引用的方式并入本文中。
技术领域
本发明的实施例涉及低功率动态修整。更具体来说,本发明的实施例涉及芯片的用以产生几乎不变的延迟的跟踪操作。本发明至少揭示用于执行动态修整的系统和方法。
背景技术
随机存取存储器(RAM)可用于计算机平台中以便在主存储器中进行临时数据存储。特定来说,动态RAM(DRAM)存储器为系统存储器提供具有成本效益的解决方案。对DRAM的改进导致出现同步DRAM(SDRAM)技术,在所述技术中使用同步接口来存取存储器数据。也就是说,在与计算机系统总线和处理器同步的时钟脉冲的上升沿传递来自存储器的数据。特定来说,SDRAM每个时钟周期传递一个数据位(每条数据线)。
对SDRAM的改进导致出现“双数据速率”(DDR)SDRAM技术。基本上,DDR技术使SDRAM的带宽或数据速率传递加倍。特定来说,DDR存储器在时钟周期的上升(从低到高)和下降(从高到低)沿两者上传递数据。由此,每一时钟周期传递两个数据位(每条线)。DDR存储器的革新导致出现DDR2存储器,在DDR2存储器中DDR存储器的带宽或数据速率传递加倍。此外,在DDR2存储器中可实现较高的数据速率传递。
DDR存储器有时用于低功率装置(例如,LP-DDR、LP-DDR2等)中。这些较小的低功率装置(例如,手机、个人数字助理(PDA)、移动装置等)在低功率条件下操作时显著得益于DDR技术的较高存取速度。
两个问题显著影响了低功率LP-DDR定时。第一,LP-DDR读取数据定时需要客户端芯片预测接收到返回读取数据的时间窗口。第二,客户端还必须延迟返回时钟选通信号,使得其可在稳定时间对数据进行取样。通常用客户端电路中的可调谐延迟来解决这两个问题。典型的解决方案是静态延迟链或延迟锁定回路(DLL),其功率消耗经不起低功率市场的检验。
过程-电压-温度(PVT)变化可显著影响LP-DDR存储器的性能。PVT变化可变得非常大。举例来说,移动应用可经受极端的温度变化。也就是说,在移动市场中,操作条件也可能经历较大变化。
特定来说,通过使用由DDR存储器供应的读取选通信号(时钟)来实施对DDR存储器中数据的存取。读取选通信号与来自存储器的数据精密地对准。也就是说,读取选通信号的上升沿和下降沿与传入的来自DDR存储器的数据字节选通信号一致。举例来说,当数据选通信号切换且“quse”信号(例如,指示期望使用存储器的Q输出的信号)为高时读取数据。
然而,当数据正随着读取选通信号切换时,不能对数据进行取样。由此,读取选通信号被延迟,使得当数据不在切换时可存取数据。特定来说,在某一频率下,可通过选择在装置的整个操作过程中经过固定且不变数目的逻辑单元的延迟来以静态方式完成修整器延迟。另外,单元链容易受PVT变化的影响,且因此找到适合于所有操作条件的静态修整器值是困难的。举例来说,移动应用可经受极端的温度变化,从而导致较大的PVT变化。当PVT条件向极端变化时,随着延迟单元偏离于其标称延迟,静态修整器值将逐渐失去其居中属性。由此,实施减小的操作频率以解决PVT变化。
如先前提及,可实施DLL来获得读取选通信号中的不变延迟。然而,已知DLL会消耗大量功率,且因此可能不适于在严格低功率限制下操作的移动应用。与典型的DDR存储器相比,LP-DDR存储器上不存在DLL会导致读取数据的返回时间的较大变化。由于接收电路的可调谐延迟在LP-DDR中不匹配,因此这要求用于可调谐延迟的电路在所有操作条件下都尽可能地不变。然而,在低功率移动DDR应用中,PVT变化更加显著,因为大多数DRAM存储器常见的tAC定时参数由于不存在DLL的缘故而具有几乎一个完整的时钟周期的变化。
发明内容
一种用于执行动态修整的系统和方法。具体来说,所述系统包括用于产生参考时钟信号的时钟。所述参考时钟信号包括第一频率,所述第一频率是信号(例如,来自DDR存储器的数据时钟信号)的第二频率的因数。计数器耦合到所述时钟,且基于所述参考时钟信号的脉冲产生多个时钟脉冲。所述多个时钟脉冲是以从所述第一频率减慢的频率产生的以便进行低功率操作。相位长度检测器耦合到所述计数器,且包括用于检测所产生的多个时钟脉冲中的至少一者的平均长度的修整器链。变换模块耦合到所述相位长度检测器,以便将所述平均长度变换为信号的相位延迟。
附图说明
附图并入本说明书中并形成本说明书的一部分,附图说明本发明的实施例,且连同描述内容一起用以解释本发明的原理:
图1是根据本发明的一个实施例用于产生时钟信号的波形的方框图。
图2是说明根据本发明的一个实施例能够执行动态修整的系统的方框图。
图3A是根据本发明的一个实施例的相位长度检测器的示意图。
图3B是根据本发明的一个实施例的相位长度检测器的示意图,所述相位长度检测器假定延迟链中的负边沿和正边沿具有近似相等的传播延迟。
图4是说明根据本发明的一个实施例用于确定施加到数据时钟信号的延迟的多个时钟脉冲的时序图。
图5是根据本发明的一个实施例能够计算相位长度的系统的图。
图6是根据本发明的一个实施例的修整器电路的示意图,所述修整器电路用于基于由图3A和3B的相位长度检测器电路计算的相位延迟来修整来自DDR接口的数据时钟信号。
图6A描绘选择时改变的分块(Blocking Changed In Select)。
图7是根据本发明的一个实施例用于执行动态修整的计算机实施的步骤的流程图。
图8是根据本发明的一个实施例用于调度事件的周期性计数器电路的示意图。
图9A是根据本发明的一个实施例的修整器电路的示意图,其中偶数值用于对来自DDR存储器接口的数据时钟信号计算并实施相位延迟。
图9B是根据本发明的一个实施例的用于偶数运算的计数器的电路图。
图9C是根据本发明的一个实施例的用于偶数运算的相位长度检测器的电路图。
图10A是根据本发明实施例用于检测脉冲的边沿位置的边沿位置检测器的电路图。
图10B是根据本发明的一个实施例用于检测用于偶数修整运算的相位位置检测的边沿位置检测器的电路图。
图10C是根据本发明的一个实施例在图10A和10B的边沿位置检测电路中重复的单元的示意图。
图11A是根据本发明的一个实施例64x6编码器的一般编码器位设计的示意图。
图11B是根据本发明的一个实施例32x5编码器的一般编码器位设计的示意图。
图12展示根据本发明的一个实施例能够对取数字的平均值的加法器电路。
具体实施方式
现将具体参照本发明的优选实施例,附图中说明了所述优选实施例的实例。虽然将结合优选实施例描述本发明,但将了解,不希望其将本发明限于这些实施例。相反,本发明希望涵盖可能包含在由所附权利要求书界定的本发明的精神和范围内的替代形式、修改和等效物。此外,在本发明实施例的以下具体实施方式中,陈述大量特定细节以便提供对本发明的彻底理解。然而,所属领域的一般技术人员将了解,可在没有这些特定细节的情况下实践本发明。在其它情况下,为了不会不必要地混淆本发明实施例的各方面,未详细描述众所周知的方法、程序、组件和电路。
因此,本发明实施例提供用于执行低功率动态修整的电路和方法。所提供的电路提供用于动态地跟踪芯片的操作状态以产生近似不变的延迟的机制。在一个实施例中,由于电路以从来自DDR存储器的数据时钟信号的频率任意缩减的频率操作,所以实现了低功率操作。举例来说,本发明的一个实施例以DDR时钟的频率的1/8操作。电路的操作频率缓慢还使设计在亚稳定性方面更为稳固,同时还使得能够使用消耗较少功率的缩减的电路小片区域。另外,在一个实施例中,设计可进行缩放,因为经调谐的延迟的长度可编程为固定延迟的线性变换。另一实施例可按照DDR时钟周期的1/64至任意长度的步距进行编程。其它实施例提供可缩放性,使得可能产生预期返回读取数据的可调谐时间窗口。本发明实施例也是可缩放的,因为可编程延迟步距的间隔尺寸是高速2输入NAND门的间隔尺寸。一个实施例的电路还使用于产生时钟延迟的参考时钟中出现的工作周期失真最终达到平衡。另一实施例的电路还能够解决可动态调谐延迟中正边沿与负边沿之间的传播差异。在其它实施例中,所述电路还可通过使用跨越若干时钟周期的较长期平均电路来滤出参考时钟上的抖动。在一个实施例中,使用四个样本的平均值来滤出一阶效应。
低功率动态修整
本发明实施例能够提供对于LP-DDR(低功率双数据速率存储器)标准的功率动态修整。为了读取从DDR存储器返回的数据,本发明实施例能够延迟传入的字节选通信号(例如,rdqs0、rdqs1、rdqs2和rdqs3),使得在稳定状态下对返回读取数据进行取样。因此,在数据不在变换时对数据进行取样。并且,本实施例产生预期返回读取选通信号稳定且因此有效的所预期的时间窗口。这确保当总线读取选通信号为三态时,双向选通信号不被用作时钟。
在LP-DDR存储器的情境内描述本发明实施例。本发明的其它实施例较好地适于使用任何类型的DDR存储器的实施方案。因此,本文提供的实例在DDR存储器、LP-DDR存储器等内实施。
图1是说明根据本发明的一个实施例产生用于对来自DDR存储器的数据进行取样的时钟的信号图100。明确地说,图1的图表展示供LP-DDR客户端使用以读取数据信号110中的返回数据的信号。如图1所示,信号图100包含数据信号110、读取选通信号120、窗口信号130、经逻辑AND操作的信号140,和经移位的读取选通信号150。
数据信号110含有从DDR存储器存取的返回数据。DDR存储器还发送与数据信号110精密对准的读取选通信号(rdqs)。rdqs信号120是用于读取来自DDR存储器的数据的时钟。rdqs信号120还包含不读取数据信号110的三态区125(散列标记)。
本实施例产生自定时quse信号130以当预期返回读取数据时确定有效窗口135。在一个实施例中,以粗粒度和细粒度旋钮来确定窗口135的时间位置。在一个实施例中,使用例如触发器的顺序元件来实现粗粒度调谐。用本文称为“quse修整器”的修整器来完成细粒度延迟调谐,所述修整器的名称指示预期存储器的Q输出正在使用中。经由本文称为“rdqs修整器”的修整器来完成选通信号的移位。
时间窗口135用于通过对传入的rdqs选通信号120与所述窗口135执行AND操作来限定读取选通信号。此过程从时钟中消除了三态区125。也就是说,对窗口信号和读取选通信号120执行AND操作以当可从LP-DDR存储器读取数据时确定取样时钟。
在一个实施例中,rdqs修整器应旨在实现几乎等效于来自DDR存储器的传入时钟的四分之一相位的延迟,因为这使rdqs精确地位于数据的两个边沿之间的中心处。
施加到quse窗口135的延迟量取决于其所处的系统。在一个实施例中,适当目标可在0到时钟的四分之一相位之间变化,其中步距超出使用触发器进行的粗粒度修整过程中所处理的四分之一相位。在一个实施例中,在执行上述AND操作之前修整窗口信号。
在一个实施例中,执行动态修整的电路是一种适应性方法,其改变通过使用稳定的时钟参考跟踪操作状态而确定的延迟单元的数目。通过跟踪操作状态,修整器可使rdqs选通信号即使在极端的操作状态下也保持位于中心处。
图2是说明根据本发明的一个实施例能够执行动态修整的系统200的方框图200。系统200能够动态地跟踪LP-DDR存储器芯片的操作状态,以便产生近似不变的延迟。根据本发明的一个实施例,系统200用于跟踪与LP-DDR存储器的互动,以便使图1的读取选通信号120和quse窗口130位于中心处。
如图2所示,系统200包含时钟210。时钟(例如,210)产生参考时钟信号。在一个实施例中,时钟(例如,210)产生具有频率的参考时钟信号,所述频率是一信号(例如,DDR存储器时钟信号、LP-DDR存储器时钟信号等)的周期的因数。
在一个实施例中,参考时钟信号的频率快于数据时钟信号的频率。举例来说,在一个实施例中,从可用于存取LP-DDR存储器的锁相回路(PLL)中产生参考时钟信号。在一个实施例中,参考时钟信号的频率快两倍。较快的参考时钟信号用于(例如)向LP-DDR存储器产生双边沿输出。较快的时钟具有较好的工作周期,因为参考时钟信号对LP-DDR存储器的输出需要与来自LP-DDR存储器的数据时钟信号一起位于中心处。在此情况下,参考时钟信号的脉冲长度近似等于数据时钟信号的相位的四分之一。
在其它实施例中,参考时钟信号的频率等于或小于数据时钟信号的频率。在这些情况下,为了适应较慢的频率,实施动态修整的延迟链电路将大于以快于数据时钟信号的频率操作的电路。
并且,系统200包含周期性计数器220。计数器耦合到时钟并产生基于参考时钟信号脉冲的多个时钟脉冲。明确地说,计数器产生用于减少功率消耗的较慢频率的时钟。因此,在一个实施例中,以从参考时钟信号的频率减慢的频率产生所述多个时钟脉冲以进行低功率操作。参看图8和9B提供对周期性计数器的更详细论述。
如图2所示,周期性计数器220产生使用参考时钟的脉冲的正相位和负相位来估计由于PVT变化而导致的延迟的周期性事件。并且,使用周期性计数器220来产生用于估计延迟的所述多个脉冲的正边沿和负边沿。举例来说,用于估计由于PVT变化而导致的延迟的脉冲包含以下内容:参考时钟信号的正相位和正边沿;参考时钟信号的负相位和正边沿;参考时钟信号的正相位和负边沿;以及参考时钟信号的负相位和负边沿。在一个实施例中,以参考时钟信号的近似每16个周期的频率产生脉冲以进行较低功率操作。
另外,系统200包含相位长度检测器230。所述相位长度检测器耦合到计数器,且用于检测来自所述多个时钟脉冲的脉冲中的至少一者的平均长度。在一个实施例中,相位长度检测器包括修整器链。图3A、3B和9C中包含对相位长度检测器230的更详细论述。
所述系统还包含耦合到相位长度检测器230的变换模块。举例来说,所述变换模块将检测到的脉冲的长度变换为数据时钟信号的相位延迟。以此方式,通过动态地修整来自LP-DDR存储器的数据时钟信号将过程、电压和温度(PVT)变化考虑至整个系统200中。
图3A是根据本发明的一个实施例的相位长度检测器电路300A的示意图。相位长度检测器电路300A类似于图2的相位长度检测器230。相位长度检测器300A包括大体上类似于用于修整数据时钟信号的修整器的修整器310。另外,相位长度检测器300A包括用于俘获修整器310的每一级处的数据的锁存器行320。并且,相位长度检测器300A包括对所述行锁存器320中的锁存内容进行重新定时以便避免亚稳定性的一行触发器330。
在本实施例中,修整器310中的延迟链足够长而超过较快时钟信号的时钟周期的一半或DDR时钟信号的周期的四分之一。并且,延迟链必须足够长以适应最大工作周期失真。当使用快时钟(例如,以数据时钟信号的频率的两倍操作的参考时钟)时,这意味着延迟链俘获来自DDR存储器的数据时钟信号的四分之一周期加上工作周期失真。另一方面,根据本发明的另一实施例,使用来自DDR存储器本身的数据时钟信号将需要两倍长的延迟链,且将检测来自DDR存储器的数据时钟信号的一半周期。
图3A中,输入区块340从计数器选择用于确定脉冲长度和施加到数据时钟信号的相应延迟的脉冲。举例来说,多路复用器345选择用于由计数器产生的多个脉冲中的基于参考时钟信号的一个脉冲的两个时钟门控锁存器之间的信号。将选定的信号同时且并行地发送到所述锁存器行320和修整器310。
如图3A所示,修整器310确定脉冲穿过修整器310的延迟级的传播。明确地说,在一个实施例中,修整器310包括64个包含NAND门的延迟级。展示反相缓冲器耦合到延迟级的每一者以复制对于用于延迟数据时钟信号的修整器的延迟状态的负载。其它实施例较好地适于更多或更少的延迟级。
在一个实施例中,将共同信号施加到修整器310中的延迟级的每一者(例如,标记为“TIEHI”)。在一个实施例中,共同信号可以是高信号。
修整器已达到稳定状态之后,将脉冲的前沿发送到修整器310的级。其后,将脉冲的后沿发送到修整器310的级。这将脉冲长度设定在前沿与后沿之间。在一个实施例中,前沿和后沿分别是脉冲的正边沿和负边沿。
同时,锁存器行320在脉冲的正边沿开启。并且,所述锁存器行在脉冲的负边沿关闭。也就是说,锁存器行320俘获延迟级的每一者的状态。
在一个实施例中,由于修整器310中的延迟链由交替的反相组成,所以使用锁存器行320中的锁存器的非反相(Q)和反相(QN)输出。每当锁存器门关闭时,通过记下两个相邻锁存器具有不同值的位置来确定脉冲的传播位置。也就是说,随着脉冲的前沿传播通过延迟级,当锁存器关闭时,前沿将已到达具有高值的最后延迟级NAND门。下一NAND门延迟级仍被重设为共同信号:低信号。因此,两个相邻锁存器具有不同值。
在一个实施例中,如果参考时钟信号的频率是数据时钟信号的频率的两倍,那么脉冲长度指示数据时钟信号的四分之一相位。因此,通过记下两个相邻锁存器具有不同值的位置来确定所述四分之一相位延迟的位置。
图3B是根据本发明的一个实施例的相位长度检测器电路300B的示意图。相位长度检测器电路300B类似于图2的相位长度检测器230。因为反相沿着相位长度检测器电路发生,所以延迟链中的正边沿和负边沿可具有几乎相等的传播延迟。因此,相位长度检测器电路300B是相位长度检测器电路300A的简化形式。明确地说,图3B中的电路不包含使传递到延迟链的边沿反相的反相器395。并且,图3B中的电路消除了图3A的并行XOR门390中提供的失真。图3A和3B中类似编号的方框希望执行类似功能。
在另一实施例中,相位长度检测器电路300A和300B可以更多硬件为代价来避免使负相位反相和/或在锁存器之间进行多路传输(例如,使用多路复用器345)。可通过使用第二组负相位锁存器来实现此目的,藉此减少使时钟信号反相和/或在经反相与未经反相的时钟信号之间进行多路传输的需要。
在一个实施例中,取最后四个相位延迟值的平均值会滤出时钟的工作周期失真和延迟链边沿失真的一部分。取更多样本的平均值会产生更好的结果,因为这会滤出更多的抖动。在一个实施例中,取平均值限于在一个实施例中的四个样本:参考时钟信号的正相位和正边沿;参考时钟信号的负相位和正边沿;参考时钟信号的正相位和负边沿;以及参考时钟信号的负相位和负边沿。这会滤出由于周期失真而导致的时钟噪音。举例来说,时钟信号的正相位和负相位两者可与正边沿锁存器开启和负边沿锁存器关闭一起考虑(例如,如图9C所示)。电路300A使用仅一个锁存器链来解决所有可能的边沿/相位情况。另外,为了改进时钟抖动滤波,可以更多存储装置和算术硬件的额外代价来取跨越若干时钟周期的样本的平均值。
在另一实施例中,以非谐波方式产生并递送脉冲。这是为了减少与取样周期谐调的抖动。也就是说,以参考时钟信号的频率周期的质数间隔发送用于计算相位延迟的脉冲。这样实施是为了减少谐波抖动。
图4是说明根据本发明的一个实施例用于确定施加到数据时钟信号的延迟的可由输入区块340选择的多个时钟脉冲的时序图。如图所示,在计数7处,时钟门控锁存器343在信号420中传递时钟脉冲的正相位、正边沿。在计数23处,在信号420中传播时钟脉冲的反相负相位、正边沿。在计数39处,在信号420中传播正相位、负边沿。在计数55处,在信号420中传播反相负相位、负边沿。使用正和负相位的目的是补偿参考时钟中的失真的工作周期。并且,使用正和负边沿的目的是补偿下文论述的修整器310的延迟链中的正边沿和负边沿失真。取所述四个情况的平均值会滤出这些噪音源的一部分。
如图4所示,时钟信号410产生用于图3A中的所有触发器330上的时钟。明确地说,信号410允许当本实施例中计数器达到6、22、38和54时时钟脉冲通过。依据图4的波形图,触发器行在锁存器俘获数据之后几乎16个周期时俘获数据。在一个实施例中如此做是因为,亚稳定性的概率随着花费在此取样间隔上的时间增加而大大减小。在另一实施例中,差值并非精确地为16个周期,以避免锁存器与触发器之间的任何保持时间问题。因此,触发器处的上升时钟边沿始终比锁存器处早至少半个周期。
图5是根据本发明的一个实施例将从图3A和3B的相位长度检测器检测到的脉冲的长度变换成用于将读取选通信号(rdqs)和quse窗口定位在中心处的修整器设定的流程图500。
图5展示48个修整器可选位置的实例。如图所示,边沿位置检测器510针对边沿位置产生一位热码编码(one hot encoding)。接着由编码器520将此转译为二进制编码。在一个实施例中,如先前所述,将当前值和最后三个值保存在寄存器530中。加法器电路540取所有收集到的值的平均值以便删除一阶噪音效应。也就是说,加法器取从多个时钟脉冲确定的多个长度的平均值。
接着通过变换模块550执行平均值的线性变换,使得可由修整器来合成延迟。也就是说,脉冲长度的平均值变换为数据时钟信号的相位延迟。举例来说,在此情况下,计算读取选通信号rdqs延迟。其为延迟传入的数据时钟信号的修整值。
另外,平均值的二次线性变换由变换模块555执行。在此情况下,除了四分之一相位(或半个相位)以外的延迟可由修整器合成。这产生了针对读取数据返回信号的预期时间窗口的quse精细修整值。如先前所述,这对于移动环境中的quse修整尤其重要。
系数“A和a”的值是表示时钟周期的分数的乘数。在一个实施例的情况下,其范围在0/64到23/64,藉此允许1/4时钟周期的微小过调量(overshoot)。在一个实施例中,偏移量“B和b”是二的补值,其范围以修整器位置单位为-1024/64到+1023/64。
线性变换单元(例如,550和555)还计算取平均所需要的除以四的除法。结果是,线性变换接着四舍五入为最接近的修整器位置。如果最终结果为负,那么线性变换单元结果箝位为0,或如果结果超过修整器长度,那么线性变换单元结果箝位为最大修整器值。
图6是根据本发明的一个实施例用于基于通过图3A和3B的相位长度检测器电路计算出的相位延迟来修整来自DDR接口的数据时钟信号的修整器电路600的示意图。修整器电路600包括延迟链610,其中延迟链610包括多个反相NAND门。修整器电路600的延迟链610的长度可通过选择或启用多个修整器分支点(例如,标记为“dec[x]”,其中“x”表示修整器级数)来动态地编程,其中每一修整器分支点可包括NAND门。在一个实施例中,延迟链610的长度范围可在2到65。另外,在一个实施例中,可响应于PVT变化来动态地更新所述长度。
如图6所示,输入CLKIN通过延迟链610的动态选择的数目的级。可使修整器的长度为任意的,只要解码值足够宽。视修整器长度而定,如图所示需要在链的开始和结束处输入奇或偶信号。
如果修整器级或分支点的数目可由2除尽,那么延迟链610的开始处的输入可以是奇信号。如图6所示,延迟链610包括64个级,因此在延迟链610的开始处输入奇信号。然而,如果所选择的级的数目不可由二除尽,那么可在延迟链610的开始处输入偶信号。
如图6所示,小的悬摆反相器(dangling inverter)模仿图3A的相位长度检测器310的反相器(其中动态地估计延迟)中建立的电容。NAND链的每一级均反相,因此CLKOUT输出处的上升与下降延迟差值非常小,因此对于DDR系统来说具有较好的质量。重要的是,修整器电路600的延迟级中的每一NAND门均经历相同的虚拟反相器,使得所有门在上升和下降情况下均经历相同的电容。
当输入CLKIN为0时,修整器电路600可动态地改变选择值。当rdqs选通信号通过时,无法改变修整器值(rdqs或quse)。在一个实施例中,DDR接口已保证当不产生选通信号时时间周期的间隔是规则的。这在向存储器发布刷新时发生。在另一实施例中,存储器接口的容量被100%利用是相当罕见的。因此,即使在刷新以外也不总是发生读取。因此,在至少保证以周期性刷新周期进行更新的可能性的情况下不预期有读取数据返回的可能性期间,发生对修整器值的连续更新。当接口不预期读取数据返回时,预期在两种情况下对于修整器的输入均为零。
注意,无法在不在链中引起潜在的时钟边沿的情况下动态地改变选择信号。在一个实施例中,为了确保安全地发生切换,可能在修整器的输出处添加额外的门以阻止发生转变选择。举例来说,在选择不断变化时,定义称为切换保持高的信号。此信号可用于保持输出时钟稳定。图6A中展示此方案。
图7是说明根据本发明的一个实施例用于对LP-DDR存储器接口中的数据时钟信号执行动态修整的计算机实施的方法中的步骤的流程图700。在一个实施例中,流程图700中执行的操作由图2、3A、3B和5中提供的系统实施。
在710处,输入区块340将来自参考时钟信号的脉冲的正边沿发送到锁存器行。正边沿开启锁存器中的每一者。参考时钟信号包括是数据时钟信号的频率的因数的频率。每一锁存器能够俘获反相修整器链中相应且耦合的延迟级的相应状态。
在720处,输入区块340将正边沿同时发送到修整器链。脉冲的正边沿接着沿着修整器链的延迟级向下传播。可通过计算脉冲的正边沿已传播通过的延迟级的数目来近似地确定脉冲的长度。
在730处,锁存器行320俘获修整器链中延迟级的每一者的状态。明确地说,将脉冲的负边沿并行地发送到所述锁存器行和修整器链。一旦脉冲的负边沿由锁存器行接收,锁存器中的每一者就关闭并俘获耦合且相应的延迟级的状态。
在740处,图2的相位长度检测器230确定当锁存器行中的两个锁存器之间发生状态变化时两个延迟级之间的点或链接处的脉冲长度。在所述点之前,延迟级的状态为高值,其指示脉冲的正边沿的传播。所述点之后,所俘获的延迟级的状态应处于共同的低水平,如先前所述。
在750处,图2的变换模块240确定对应于所计算的脉冲长度的数据时钟信号相位延迟。在一个实施例中,来自DDR存储器的数据时钟信号或读取选通信号的修整应旨在实现接近数据时钟信号的四分之一相位的延迟,因为这将使读取选通信号精确地位于数据的两个边沿之间的中心处。
用于调度事件的周期性计数器
图8是根据本发明的一个实施例用于调度事件的周期性计数器电路800的图。周期性计数器800用于通过使用延迟链中的脉冲的正和负相位以及正和负边沿两者估计来自DDR存储器接口的数据时钟信号的延迟,来从参考时钟中产生较慢频率的时钟。明确地说,在本发明的实施例中,计数器900B(如图9B所示)的输出用于驱动模仿修整器的延迟链。
在一个实施例中,计数器800在rdqs和quse修整器在动态模式中操作时操作。在另一实施例中,也可能进行静态操作。另外,时钟门控锁存器通过在未选择动态更新时完全切断时钟来节省功率。
根据本发明的一个实施例,计数器800每16个周期产生一脉冲以指示使用针对时钟的正相位还是负相位的脉冲来估计延迟。计数器每32个周期确定在延迟链中启动正边沿还是负边沿。计数器确保所有相位延迟计算电路均以参考时钟信号的频率的1/16操作。在另一实施例中,可通过使用较宽的计数器作为图8所示的计数器来使时钟频率减慢。
偶数值运算
在本发明的实施例中,可能进行用于修整来自DDR存储器的数据时钟信号的偶数值运算。偶数值运算允许使用约一半的硬件电路来实现对数据时钟信号的动态修整的电路设计。举例来说,在图9A-9D中,展示包含动态修整器、计数器、相位长度检测器和相位位置检测电路的组件,且可比使用偶数与奇数修整器分支的较复杂的实施例使用更少的电路组件来实施所述组件。
如图9A所示,根据本发明的一个实施例,展示修整器电路900A的图,其中使用偶数值对来自DDR存储器接口的数据时钟信号计算并实施相位延迟。在本实施例中,假定2个NAND门延迟的间隔尺寸足够小,那么可通过将动态修整值限制为偶数值来实施更基本的修整器。
修整器电路900A具有对于延迟链910的可选输入915(例如,奇数、偶数等),所述延迟链910可对应于较细粒度的修整器(例如,600)的偶数选择输入。在一个实施例中,所述可选输入可为恒定高(例如,1′b1),其中修整器(例如,900A)具有奇数个门(例如,47对NAND门加上一个标记为“u1_trim_s_nand00”的初始NAND门,总共95个NAND门)。
单个NAND门的延迟相当小,且因此,图9A的修整器可足以用于大多数LP-DDR应用。特定来说,当输入CLKIN为0时,修整器900A可动态地改变选择值,而不需要在修整器电路的输出处有任何保护电路。
如图9A所示,延迟链910中的每一NAND门均遇到同一虚拟反相器,使得所有门均在上升和下降条件下经历相同电容。由于各种选择值共享同一NAND门链,因此增加选择值可靠地增加了修整器延迟。
在图9B中,展示根据本发明的一个实施例用于偶数运算的计数器900B的电路图。计数器900B含有较少硬件,因为修整器的每一级处的反相假定修整器中的正边沿和负边沿的正边沿和负传播的延迟几乎是相等的。
在计数器900B的简化型式中,计数器900B失去其控制边沿信息的最高有效位。在本发明的实施例中,计数器900B的输出用于驱动模仿修整器的延迟链。
在图9C中,展示根据本发明的一个实施例用于偶数运算的相位长度检测器900C的电路图。在本实施例中,相位长度检测器900C仅致力于从偶数值改变为偶数值(或奇数值改变为奇数值)。由此,在一个实施例中,通过去除一半的锁存器和一半的门,可从图3A和3B的检测器300A和300B进一步缩减相位长度检测器900C的设计。
在图9C中,将奇数值保留在锁存器链中,且通过观察两个奇数锁存器之间的点来确定偶数值。如图9C所示,修整器920中的相同反相器(例如,925)如在动态修整器中一样被使用,从而在修整器920的每一延迟级处产生相同的电容性负载。
边沿位置检测
图10A和10B分别是根据本发明实施例用于检测脉冲的边沿位置的边沿位置检测器1000A和1000B的电路图。
举例来说,图10A展示根据本发明的一个实施例的边沿位置检测器1000A。图10A的电路确保输出具有至少且至多单个具有高输出的位(一位热码编码的定义)。
现参看图10B,当仅使用偶数值来进行相位长度检测时,那么边沿位置检测器1000B在硬件组件设计方面可进一步缩减。边沿位置检测器1000B更为经济,因为其产生以修整器间隔尺寸为代价而需要一半的硬件。在另一实施例中,边沿位置检测器1000A和1000B两者的设计使用重复多次的相同单元1000C(图10C所示的实施例中)。
根据本发明的其它实施例,接着使用简单的编码器将一位热码编码转译成二进制数。图11A和11B中展示一些用于编码的示范性结构。举例来说,图11A中的编码器1100A说明64x6编码器的编码器位设计。并且,图11B中的编码器1100B说明32x5编码器的编码器位设计。
线性变换和取平均
根据本发明的一个实施例,可使用乘法器完成图2的方框240以及图5的方框550、555和540中执行的线性变换和取平均。在一个实施例中,通过使用4:2压缩器单元在小区域内实施乘法器。具体来说,在一个实施例中,选择系数“A和a”的最大分子,因为这将部分乘积数限于四。此外,预期不需要长于DDR时钟的四分之一相位的延迟。
图12展示根据本发明的一个实施例的加法器电路1200,其能够使用半加法器、全加法器和压缩器单元产生将各有5位的四个数相加的较小设计来取数字的平均值。本实施例用于具有32个位置的修整器。
在另一实施例中,使用类似的结构和单元来设计线性变换单元。在一个实施例中,如果较多的值达到平均值,那么可寄存一边值(side value)来跟踪累积的计数。当新值出现时,可减去最旧的值并加上新值。在另一实施例中,当此结构限于四个样本的平均值时,不需要此结构。
或者,根据本发明的一个实施例,可综合整个设计以优化从位置检测器一直到线性变换的门。线性变换的输出被翻转且选择性地用于当不在进行读取时改变修整器值。
由于线性变换的缘故,一个实施例能够将quse修整器更新到时钟周期的期望分数(使用系数A)并使其移位某一任意数目的位置(使用偏移量B)。这提供适合于LP-DDR移动应用中的可能较大的tAC变化的PVT稳固方式。
本发明的实施例使用低功率和电路小片面积来动态地跟踪延迟,实现可缩放延迟的存在,以低面积成本提供亚稳定性稳固性,且提供在不导致低频干扰的同时改变具有反相级的低面积修整器的分支点的设计选择。本实施例的解决方案解决了在不存在消耗功率的DLL时LP-DDR返回读取数据的高变化量。最后,所述设计解决了在产生延迟时用作参考的信号的工作周期失真。
简略地概述,本发明已揭示以下内容。
概念1.一种用于执行动态修整的系统,包括:
时钟,其用于产生参考时钟信号,其中所述参考时钟信号包括第一频率,所述第一频率是信号的第二频率的因数;
计数器,其耦合到所述时钟以便基于所述参考时钟信号的脉冲而产生多个时钟脉冲,其中所述多个时钟脉冲是以从所述第一频率减慢的频率产生的;
相位长度检测器,其耦合到所述计数器,所述相位长度检测器包括用于检测所述多个时钟脉冲中的至少一者的平均长度的修整器链;和
变换模块,其耦合到所述相位长度检测器以便将所述长度变换为施加到所述信号的相位延迟。
概念2.根据概念1所述的方法,其中所述因数为2,使得所述参考时钟信号的所述第一频率是所述信号的所述第二频率的两倍,使得所述长度等于所述信号的相位的约四分之一。
概念3.根据概念1所述的方法,其中所述多个时钟脉冲包括:
所述参考时钟信号的正相位和正边沿;
所述参考时钟信号的负相位和正边沿;
所述参考时钟信号的正相位和负边沿;和
所述参考时钟信号的负相位和负边沿。
概念4.根据概念1所述的方法,其中所述相位长度检测器包括:
锁存器行,其用于在所述多个时钟脉冲中的一者的上升沿开启且在所述多个时钟脉冲中的一者的下降沿关闭;
修整器,其耦合到所述锁存器行,所述修整器包括多个延迟级,所述延迟级用于在所述下降沿传播通过所述锁存器行时一点处确定所述上升沿通过所述修整器的传播。
概念5.根据概念4所述的方法,其中所述锁存器行包括多个交替反相锁存器,所述多个交替反相锁存器耦合到所述多个延迟级,使得所述长度被确定在两个相邻锁存器具有不同的输出值之处。
概念6.根据概念1所述的方法,其中所述变换模块包括:
加法器,其用于取从所述多个时钟脉冲确定的多个长度的平均值;和
线性变换模块,其用于执行所述变换,将所述多个长度的平均值变换为所述相位延迟。
概念7.根据概念1所述的方法,其中所述变换模块执行将所述长度变换为包括数据时钟信号的所述信号的相位延迟的操作。
概念8.根据概念1所述的方法,其中所述变换模块执行将所述长度变换为包括用于确定读取数据何时有效的窗口的所述信号的相位延迟的操作。
概念9.根据概念1所述的方法,进一步包括:
修整器,其用于通过所述相位延迟修整信号。
概念10.一种用于执行动态修整的系统,包括:
修整器链,其用于接收来自参考时钟信号的至少一个脉冲,其中所述修整器包括用于确定脉冲的上升沿通过所述修整器的传播的多个延迟级,其中所述修整器链精密地近似于用于修整所述数据时钟信号的修整器链;
锁存器行,其用于俘获所述多个延迟级中的延迟级的状态,其中在所述修整器中当所述脉冲的下降沿传播通过所述锁存器行时一点处确定所述上升沿通过所述修整器的传播,其中所述时间点对应于所述脉冲的长度;
加法器,其用于取从所述至少一个脉冲确定的多个长度的平均值;
线性变换模块,其用于将所述多个长度的平均长度变换为所述数据时钟信号的相位延迟;和
修整器,其用于修整所述数据时钟信号使其具有所述相位延迟。
概念11.根据概念10所述的方法,其中所述锁存器行对所述多个延迟级的一半进行编号,以俘获所述多个延迟级的偶数值。
概念12.根据概念10所述的方法,其中所述参考时钟信号的每16个周期产生所述至少一个脉冲的脉冲以用于低功率操作,且其中被取平均值的所述至少一个脉冲包括:
所述参考时钟信号的正相位和正边沿;
所述参考时钟信号的负相位和正边沿;
所述参考时钟信号的正相位和负边沿;和
所述参考时钟信号的负相位和负边沿。
概念13.一种用于执行动态修整的方法,包括:
将来自参考时钟信号的脉冲的正边沿发送到锁存器行,其中所述参考时钟信号包括第一频率,所述第一频率是信号的第二频率的因数,且其中所述锁存器行中的每一锁存器能够俘获修整器链中的相应延迟级的相应状态;
同时将所述正边沿发送到所述修整器链;
在所述脉冲的负边沿上俘获所述锁存器行中所述经反相的修整器链中的所述延迟级中的每一者的状态;
确定当所述锁存器行中的两个锁存器之间发生状态变化时所述脉冲的长度;和
确定所述信号的对应于所述长度的相位延迟。
概念14.根据概念13所述的方法,进一步包括:
将所述第一频率设定为所述第二频率的两倍,使得所述相位延迟是所述信号的四分之一相位。
概念15.根据概念13所述的方法,进一步包括:
对指示读取数据何时有效的窗口信号和来自存储器的读取选通信号执行AND操作,以确定取样时钟;和
使用由所述修整器链精密地表示的修整器来修整所述取样时钟使其具有所述相位延迟。
概念16.根据概念13所述的方法,进一步包括:
以从所述第一频率减小的频率发送来自所述参考时钟信号的至少又一个脉冲以进行低功率操作,从而确定所述至少又一个脉冲的相应长度;和
取所述长度和所述相应长度的平均值以确定所述相位延迟的平均值。
概念17.根据概念16所述的方法,其中所述发送至少又一个脉冲包括:
通过发送所述参考时钟信号的正相位的负边沿来减少抖动,其中所述脉冲的所述正边沿包括所述正相位。
概念18.根据概念16所述的方法,其中所述发送至少又一个脉冲包括:
通过发送所述参考时钟信号的经反相的负相位的正边沿来减少工作周期失真,其中所述脉冲的所述正相位包括所述参考时钟信号的正相位。
概念19.根据概念16所述的方法,进一步包括:
以所述第一频率的周期的质数间隔发送所述至少又一个脉冲中的脉冲以减少谐波抖动。
概念20.根据概念13所述的方法,其中所述信号包括数据时钟信号。
广义上来说,本发明至少揭示一种用于执行动态修整的系统和方法。具体来说,所述系统包括用于产生参考时钟信号的时钟。所述参考时钟信号包括第一频率,所述第一频率是信号(例如,来自DDR存储器的数据时钟信号)的第二频率的因数。计数器可耦合到所述时钟,且可基于所述参考时钟信号的脉冲而产生多个时钟脉冲。所述多个时钟脉冲可以从第一频率减慢的频率产生以进行低功率操作。相位长度检测器可耦合到计数器,且可包括用于检测所产生的多个时钟脉冲中的至少一者的平均长度的修整器链。变换模块可耦合到相位长度检测器,以便将平均长度变换为信号的相位延迟。
已出于说明和描述的目的提供了对本发明特定实施例的以上描述。不希望其为详尽的或将本发明限于所揭示的精确形式,且显然,根据以上教示,可能作出许多修改和变化。选择并描述所述实施例是为了最佳地解释本发明的原理及其实践应用,借此使所属领域的其他技术人员能够最佳地利用本发明和各种实施例,并作出适于所预期的特定用途的各种修改。希望本发明的范围由附于此的权利要求书及其等效物界定。

Claims (10)

1.一种用于执行动态修整的系统,包括:
时钟,其用于产生参考时钟信号,其中所述参考时钟信号包括第一频率,所述第一频率是信号的第二频率的因数;
计数器,其耦合到所述时钟以便基于所述参考时钟信号的脉冲而产生多个时钟脉冲,其中所述多个时钟脉冲是在从所述第一频率减慢的频率处产生的;
相位长度检测器,其耦合到所述计数器,所述相位长度检测器包括用于检测所述多个时钟脉冲中的至少一者的平均长度的修整器链;和
变换模块,其耦合到所述相位长度检测器以便将所述平均长度变换为施加到所述信号的相位延迟。
2.根据权利要求1所述的系统,其中所述因数为2,使得所述参考时钟信号的所述第一频率是所述信号的所述第二频率的两倍,使得所述半均长度等于所述信号的相位的四分之一。
3.根据权利要求1所述的系统,其中所述多个时钟脉冲包括:
所述参考时钟信号的正相位和正边沿;
所述参考时钟信号的负相位和正边沿;
所述参考时钟信号的正相位和负边沿;和
所述参考时钟信号的负相位和负边沿。
4.根据权利要求1所述的系统,其中所述相位长度检测器包括:
锁存器行,其用于在所述多个时钟脉冲中的一者的上升沿开启且在所述多个时钟脉冲中的一者的下降沿关闭;
修整器,其耦合到所述锁存器行,所述修整器包括多个延迟级,所述延迟级用于在所述下降沿传播通过所述锁存器行时,将所述上升沿通过所述修整器的传播确定在一点处。
5.根据权利要求4所述的系统,其中所述锁存器行包括多个交替反相锁存器,所述多个交替反相锁存器耦合到所述多个延迟级,使得所述平均长度被确定在两个相邻锁存器具有不同的输出值之处。
6.根据权利要求1所述的系统,其中所述变换模块包括:
加法器,其用于取从所述多个时钟脉冲确定的多个长度的平均值;和
线性变换模块,其用于执行将所述多个长度的平均值变换为所述相位延迟的所述变换。
7.根据权利要求1所述的系统,其中所述变换模块执行将所述平均长度变换为包括数据时钟信号的所述信号的相位延迟的操作。
8.根据权利要求1所述的系统,其中所述变换模块执行将所述平均长度变换为包括用于确定读取数据何时有效的窗口的所述信号的相位延迟的操作。
9.根据权利要求1所述的系统,进一步包括:
修整器,其用于通过所述相位延迟修整信号。
10.根据权利要求1所述的系统,其中所述参考时钟信号的每16个周期产生所述多个时钟脉冲以用于低功率操作。
CN200710107351A 2006-05-30 2007-05-29 用于执行动态修整的系统 Expired - Fee Related CN100583289C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US80963606P 2006-05-30 2006-05-30
US60/809,636 2006-05-30
US11/784,268 2007-04-06

Publications (2)

Publication Number Publication Date
CN101114517A CN101114517A (zh) 2008-01-30
CN100583289C true CN100583289C (zh) 2010-01-20

Family

ID=39022785

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200710107351A Expired - Fee Related CN100583289C (zh) 2006-05-30 2007-05-29 用于执行动态修整的系统

Country Status (1)

Country Link
CN (1) CN100583289C (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102457155B1 (ko) * 2015-11-09 2022-10-20 에스케이하이닉스 주식회사 래치 회로, 그 래치 기반의 이중 데이터 레이트 디코딩 장치
US10338953B2 (en) * 2016-03-18 2019-07-02 Intel Corporation Facilitating execution-aware hybrid preemption for execution of tasks in computing environments
CN109545264B (zh) * 2018-10-31 2020-10-16 大唐微电子技术有限公司 一种对含闪存flash芯片的晶圆级测试方法、装置
CN111208781B (zh) * 2020-01-16 2022-06-17 深圳市高川自动化技术有限公司 运动中测量刀具直径的电路

Also Published As

Publication number Publication date
CN101114517A (zh) 2008-01-30

Similar Documents

Publication Publication Date Title
CN100470670C (zh) 延迟锁定回路及其锁定方法
CN100431267C (zh) 用于安排粗细延迟间隔的同步镜像延迟(smd)电路及方法
CN101625888B (zh) 半导体存储装置及其操作方法
CN113903375A (zh) 用于控制输入信号路径上的等待时间的设备
US20090238016A1 (en) Circuits to delay signals from a memory device
US9154141B2 (en) Continuous high-frequency event filter
CN103684375B (zh) 一种时钟分频切换电路及时钟芯片
CN105718404A (zh) 一种基于fpga的方波发生器及方法
CN100583289C (zh) 用于执行动态修整的系统
CN103676742B (zh) 一种基于fpga的数据重组方法
CN102467963B (zh) 半导体存储装置
CN104795091B (zh) 在fpga中实现zbt读写的时序稳定度的系统及方法
CN102111148B (zh) 延迟锁定环及其驱动方法
US7966509B2 (en) System and method for performing low power dynamic trimming
CN105242903B (zh) 随机数生成装置和方法
US11539354B2 (en) Systems and methods for generating a controllable-width pulse signal
CN110492872A (zh) 数字占空比校正电路系统
US8976619B2 (en) Semiconductor apparatus
US6973155B2 (en) Highly scalable glitch-free frequency divider
CN100376081C (zh) 可共用计数器的延迟锁定回路及相关方法
JP2004064143A (ja) クロック同期回路及び半導体装置
CN115576386A (zh) 一种信号延时调节芯片、方法、设备及存储介质
JP3982934B2 (ja) 入力回路および該入力回路を有する半導体集積回路
Rahimian et al. A high-throughput, metastability-free GALS channel based on pausible clock method
TWI316792B (en) A digital phase-locked loop and a clock adjustment method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100120