维持稳定计时的装置和方法

文档序号:426105 发布日期:2021-12-21 浏览:20次 >En<

阅读说明:本技术 维持稳定计时的装置和方法 (Apparatus and method for maintaining stable timing ) 是由 纳撒尼尔·奥古斯特 穆罕默德·埃尔古斯 本杰明·戈登 陈财源 于 2020-05-08 设计创作,主要内容包括:在意外时钟停止之前和之后,各种实施例的装置和方法利用电路组件的独特布置向存储器模块提供稳定而连续的时钟,这些电路组件包括时钟检测器电路、时钟平滑电路以及一个或多个PLL。在检测到已停止的主机时钟时,第一PLL从板载晶体振荡器无缝切换到备用参考时钟。时钟平滑电路允许第一PLL保持稳定的相位和频率,而不引起比锁定的PLL的自然抖动更大的短时脉冲波干扰或周期偏移;一个或多个可选的下游PLL可以驱动附加的时钟域。(Before and after an unexpected clock stop, the apparatus and methods of the various embodiments provide a stable and continuous clock to a memory module with a unique arrangement of circuit components, including a clock detector circuit, a clock smoothing circuit, and one or more PLLs. Upon detecting a stopped host clock, the first PLL seamlessly switches from the on-board crystal oscillator to the standby reference clock. The clock smoothing circuit allows the first PLL to maintain a stable phase and frequency without causing short-time pulse wave interference or period drift that is greater than the natural jitter of the locked PLL; one or more optional downstream PLLs may drive additional clock domains.)

具体实施方式

对于存储器接口上的计时和同步,存储器模块依赖于来自主机处理器(例如,CPU)的直接时钟或来自主机处理器的参考时钟信号,所述参考时钟信号用于存储器模块中的板载时钟再生。主机或模块电源故障、模块脱位、热跳闸或其他故障都可能导致主机时钟意外和突然丢失,存储器模块将其视为“意外时钟停止”。

在意外时钟停止时会出现一个问题,此时主机处理器(或简称为主机)和存储器模块可能对事务的状态具有完全不同的看法。主机认为在意外时钟停止之前存储器模块接收到的所有写入均被安全地存储在其永久存储器中。然而,存储器模块在接收到数据后,要使用数百或数千个时钟周期来完成写入到介质(例如,永久存储器)的复杂任务。另外,由于失电可能会导致意外时钟停止,因此期望存储器模块在保持电容器能够安全地维持模块的电源水平的有限时间窗口内完成这些写入。在主机事务完成之后但在存储器模块完成写入所有数据之前出现时钟停止时,会发现数据完整性和安全性的许多问题,包括电路不稳定、数据丢失、非法寄存器访问、FIFO(先进先出)下溢和固件状态损坏。如果模块在意外时钟停止事件之后维持连续而稳定的时钟,则可以避免这些问题。

要解决这个问题,在意外时钟停止之后,可启动复位序列,包括将锁相回路(PLL)锁定或重新锁定到诸如模块上晶体振荡器之类的备用参考时钟源。然后,在将PLL锁定到稳定状态之后,PLL的输出驱动时钟分配网络。

然而,复位序列可能需要数千个时钟周期才能锁定PLL并启用诸如DLL(延迟锁定回路)或跨时钟(clock-crossing)队列之类的下游计时电路。对这一宝贵时间的更好的利用将是按预定时间完成正在进行(in-flight)的操作,以满足给定协议或给定物理介质类型所需的时延限制。另外,长复位序列需要模块的电源在失电后保持更长的时间,这会导致用于附加保持电容器或更昂贵材料(比如钽)的附加费用和面积。

解决突然时钟停止问题的另一方式是切换到直接驱动时钟分配网络的新时钟源。新时钟源可以是模块上晶体振荡器或管芯上环形振荡器。

然而,当接通时,新时钟源可能会将短时脉冲波干扰(glitch)引入时钟分配网络中--不论是作为矮脉冲、延长的周期还是缩短的周期。矮脉冲可能会间歇性地在存储器控制器中的不同物理位置处消失;延长的周期可能会导致下游延迟线发生故障;而缩短的周期可能会导致计时失败。另外,不稳定的时钟可能会导致同步时钟交叉(crossing)失败。此外,如果新时钟来自管芯上环形振荡器,则固有设备和电源噪声可能会随着时间而产生随着噪声的积累无法纠正的日益延长或缩短的周期,最终导致计时失败。

另一解决方案是,对于从主机时钟合成时钟的存储器控制器,可通过将PLL振荡器控制的状态冻结为电容器上的电压(针对模拟PLL)或冻结为数字控制字(针对数字PLL)来处理意外时钟停止。然而,在停止时钟场景的情况下,由于PLL当前正以静态振荡器控制值在开环模式下操作,因此没有对振荡器相位或频率进行校正。设备和电源噪声可能会随着时间而引起随着噪声的积累无法纠正的延长或缩短的周期,最终导致计时失败。

一些实施例通过即使在意外时钟停止事件之后仍然向存储器模块保证稳定而连续的时钟来解决突然时钟停止的问题,因而确保所有模块上操作的及时完成并保持数据的完整性和安全性。在意外时钟停止之前和之后,一些实施例的装置向具有独特电路组件布置的存储器模块提供稳定而连续的时钟,所述电路组件包括时钟检测器电路、时钟平滑电路以及一个或多个锁相回路(PLL)。在检测到停止的主机时钟时,第一PLL例如从板载晶体振荡器无缝切换到备用参考时钟。时钟平滑电路允许第一PLL维持稳定的相位和频率,而不引起比锁定的PLL的自然抖动更大的短时脉冲波干扰或周期偏移。在一些实施例中,一个或多个下游PLL可以从第一PLL驱动附加时钟域。

各种实施例的装置和方案使存储器控制器能够以在意外时钟停止之前和之后在频率和相位上均稳定的短时脉冲波干扰较少的时钟连续驱动存储器模块的时钟分配网络。可能不需要重新锁定任何PLL,并且没有时间浪费在用于重新锁定PLL或调整如DLL或时钟交叉之类的下游计时电路的重置序列上。各种实施例的装置和方案保证以与正常操作相同的预定时间完成正在进行的操作,因而满足给定协议或物理介质类型所需的时延限制,维持数据完整性,并减少保持电容的费用和板面积。根据各种实施例和附图,其他技术效果将是明显的。

在以下描述中,讨论了若干细节来提供对本公开的实施例的更全面的解释。然而,对于本领域技术人员显而易见的是,本公开的实施例可以在没有这些特定细节的情况下实践。在其他情况下,众所周知的结构和设备以框图形式而不是详细示出,以避免混淆本公开的实施例。

应注意,在实施例的对应附图中,信号用线表示。一些线可能更粗,用以指示更多的组成信号路径,和/或在一个或多个末端具有箭头,用以指示主要信息流方向。此类指示并非旨在进行限制。相反,这些线与一个或多个示例性实施例结合使用,以便于更容易地理解电路或逻辑单元。按设计需要或偏好指定的任何代表信号实际上可以包括一个或多个可以沿任一方向行进的信号,并且可以用任何合适类型的信号方案来实现。

在整个说明书和权利要求中,术语“连接(connected)”意指没有任何中间设备的直接连接,比如被连接的事物之间的电、机械或磁连接。

术语“耦接(coupled)”意指直接或间接连接,比如所连接的事物之间的直接电、机械或磁连接,或通过一个或多个无源或有源中间设备的间接连接。

本文的术语“相邻(adjacent)”通常是指一个事物的位置挨着(例如,紧挨着或靠近但它们之间具有一个或多个事物)或邻接另一事物(例如,与之毗邻)。

术语“电路(circuit)”或“模块(module)”可以指一个或多个被布置为彼此协作以提供期望的功能的无源和/或有源组件。

术语“信号(signal)”可以指至少一个电流信号、电压信号、磁信号或数据/时钟信号。“一个(a)、一(an)”和“所述(the)”的含义包括复数引用。“在(in)”的含义包括“在……中(in)”和“在……上(on)”。

术语“缩放(scaling)”通常是指将设计(示意图和布局)从一种处理技术转换为另一种处理技术,并且随后可以减小布局面积。在一些情况下,缩放还指将设计从一种处理技术放大到另一种处理技术,并随后可以增加布局面积。术语“缩放(scaling)”通常也指缩小或放大同一技术节点内的布局和设备。术语“缩放(scaling)”还可以指相对于另一参数(例如,电源电平)调整(例如,减慢或加速——即分别为按比例缩小或按比例放大)信号频率。术语“大体上(substantially)”、“接近(close)”、“大约(approximately)”、“几乎(near)”和“约(about)”通常是指在目标值的+/-10%内。

除非另有说明,否则使用序数形容词“第一(first)”、“第二(second)”和“第三(third)”等来描述共同对象,仅表明所指的是相同对象的不同实例,并不意在暗示如此描述的对象必须在时间、空间、排序或以任何其他方式按照给定的顺序。

出于本公开的目的,短语“A和/或B”和“A或B”意指(A)、(B)或(A和B)。出于本公开的目的,短语“A、B和/或C”意指(A)、(B)、(C)、(A和B)、(A和C)、(B和C)或(A、B和C)。

说明书和权利要求中的术语“左(left)”、“右(right)”、“前(front)”、“后(back)”、“顶部(top)”、“底部(bottom)”、“上方(over)”、“下方(under)”等,如果有,则用于描述的目的,而不一定用于描述永久的相对位置。

需要指出的是,图中与任何其他图的元件具有相同附图标记(或名称)的那些元件可以与所描述的方式类似的任何方式操作或起作用,但并不限于此。

出于实施例的目的,本文描述的各种电路和逻辑块中的晶体管是金属氧化物半导体(MOS)晶体管或其衍生物,其中MOS晶体管包括漏极、源极、栅极和体端子。晶体管和/或MOS晶体管衍生物还包括三栅极晶体管和FinFET晶体管、全环绕栅极晶体管(Gate AllAround Cylindrical Transistor)、隧穿FET(Tunneling FET,TFET)、方线或矩形带状晶体管、铁电FET(ferroelectric FET,FeFET)或实现晶体管功能的其他器件,如碳纳米管或自旋电子器件。MOSFET对称的源极端子和漏极端子在本文中即为相同的端子并且可以互换使用。另一方面,TFET设备具有不对称的源极端子和漏极端子。本领域技术人员将理解,在不脱离本公开的范围的情况下,可以使用其他晶体管,例如双极结型晶体管(BJT PNP/NPN)、BiCMOS、CMOS等。

图1图示了根据本公开的一些实施例的具有维持稳定计时的装置的存储器模块的高级架构100。架构100包括主机处理器101、存储器模块102和主机-存储器接口103(例如,DDR、PCIe等接口)。在各种实施例中,存储器模块102包括存储器控制器104,所述存储器控制器104具有时钟稳定器装置105;和N个存储器组(memory bank)1061-N,其中N是大于1的整数。存储器组(memory bank)可为易失性存储器或非易失性存储器。用于存储器组的存储器的示例包括:自旋转移矩-磁性随机存取存储器(STT-MRAM)、电阻式RAM(ReRAM)、NAND、导电桥接RAM(CBRAM)或相变存储器(PCM)。在各种实施例中,存储器模块102包括或耦接到另一计时源107。在该示例中,附加计时源是晶体振荡器107。晶体振荡器107可与存储器模块封装在同一封装中,也可在封装外。接口103提供数据、时钟(选通)和控制信号。当来自主机处理器101的时钟停止时,时钟稳定器装置105确保存储器控制器104继续按预期操作,而没有有关数据完整性和安全性问题,包括电路不稳定、数据丢失、非法寄存器访问、FIFO下溢和固件状态损坏。

在一些实施例中,在来自主机处理器101的意外时钟停止之前和之后,时钟稳定器装置105使用时钟检测器电路、时钟平滑电路和一个或多个PLL向存储器控制器104和存储器组1061-N提供稳定而连续的时钟。在检测到停止的主机时钟时,通过时钟稳定器装置105,第一PLL从板载晶体振荡器107无缝切换到备用参考时钟。时钟稳定器装置105的时钟平滑电路允许第一PLL维持稳定的相位和频率,而不引起比锁定的PLL的自然抖动更大的干扰或周期偏移。在一些实施例中,一个或多个可选下游PLL可以在存储器模块102内驱动附加时钟域。

图2图示了根据本公开的一些实施例的具有维持稳定计时的装置的存储器模块102的计时架构200。在一些实施例中,计时架构200的时钟稳定器装置105包括分频器201、多路复用器202、时钟检测器电路203、时钟平滑电路204(例如,2041-M)和一个或多个PLL2051-M。时钟检测器电路203使得能够在无需重新锁定存储器控制器104中的任何PLL的情况下,在维持稳定而连续的输出时钟的同时,即时(on-the-fly)切换PLL的2051参考时钟(RefClk)输入。在来自主机处理器101的意外时钟停止事件之后,时钟稳定器装置105保证按预定时间完成正在进行的对非易失性存储器1061-N的操作,因而维持正常的延迟、保持数据完整性并降低保持电容器的成本。在计算机系统的正常操作下,存储器控制器104的分频器201对主机时钟的高速主机时钟频率(例如,在500MHz至10GHz范围内)进行分频,以向第一PLL[0]2051传送较低速度的参考时钟或主机时钟(例如,在10MHz到200MHz范围内)。该低速参考频率与正常操作中未使用的模块上晶体振荡器107的晶体时钟的频率匹配(例如,10%以内或0.1%以内)。在各种实施例中,无论是主机晶体振荡器还是板载晶体振荡器,控制器104均被设计成支持以PPM(百万分之几)计的最坏情况频率精度规格。

然后,第一PLL[0]2051生成高速输出时钟(PLL[0]时钟),该高速输出时钟驱动时钟分配网络2061和/或分频器207,以为一个或多个附加下游PLL 2052提供低速参考时钟,该附加下游PLL 2052驱动附加时钟分配网络和时钟域2062并向前。时钟域(例如,端点2081-N)使用分配网络2061的输出时钟clock0。这里,时钟域是指在特定时钟上操作的一个逻辑或一组逻辑。clock0还被分频器207用于为下游PLL 2052生成另一参考时钟。然后,PLL[1]2052的输出时钟由时钟分配网络2062接收以生成clock1。下游PLL具有相关联的时钟平滑电路以减少下游PLL中的任何大相位噪声。例如,时钟平滑电路2042与PLL[1]2052一起工作。然后,clock1被另一时钟域(例如,端点2091-N)使用。该时钟(例如,clock1)或另一下游时钟可被存储器阵列或组1061-N使用。端点的示例包括采样电路、编码器、解码器、纠错逻辑等。在一些实施例中,可以移除用于PLL[1]及前面的时钟平滑电路2042

在意外时钟停止之后,时钟检测器电路203向存储器模块102提供连续而稳定的时钟。在一些实施例中,时钟检测器203快速检测停止的主机时钟并启动从低速、主机导出参考时钟到低速、模块上晶体振荡器107时钟的交换。在一些实施例中,时钟检测器电路203使用数字电路检测停止的主机时钟。例如,时钟检测器电路203使用第一PLL[0]2051的输出(PLL[0]时钟)对高速主机时钟的2分频版本进行采样,其中匹配的路径延迟集中在PLL[0]时钟相对于2分频主机时钟的上升沿。当当前样本与先前样本匹配时,时钟检测器电路203断言时钟选择信号(例如,停止时钟)指示主机时钟已停止。虽然第一PLL[0]2051的输出可能会漂移并最终在没有参考的情况下变得不稳定,但时钟检测操作在几个高速主机时钟周期内完成,这是确保第一PLL[0]2051的输出在检测到停止的主机时钟之前保持稳定的足够短的时间(例如,小于低速参考时钟周期)。

就在检测到停止的主机时钟时,时钟稳定器装置105经由多路复用器202即时交换到模块上晶体振荡器107来作为第一PLL[0]2051的新参考时钟源。在该示例中,因为即使在参考时钟的这种突然变化下,时钟平滑电路204依然维持来自PLL[0]2051的稳定而连续的输出时钟,所以不需要重新锁定任何PLL。时钟平滑电路204允许第一PLL[0]2051在维持完全在定时容限内的稳定输出频率的同时,缓慢且逐渐跟踪新参考时钟的相位。

使用时钟平滑电路204,PLL 2051在突然相位变化下维持稳定的输出时钟频率无需重新锁定,突然相位变化例如可能发生在参考时钟交换期间。时钟平滑电路204,随着与新的参考时钟缓慢对准,确保第一PLL 2051输出上的频率和相位偏差最小。由于低通滤波器特性,下游PLL(例如,2052-M)经历甚至更小的频率和相位偏差。在该示例中,PLL[0]2051为下游的PLL[1:M]2052-M提供参考时钟,PLL[1:M]2052-M为模块上的各个域计时。所有PLL的输出时钟在时钟停止之前和之后都维持一致的周期,所述周期完全在定时容差范围内,其中可忽略的周期间频率和相位偏移诸如在扩频计时或自然晶体振荡器漂移下将会看到。

针对没有时钟平滑情况下的实施方式,下游PLL的低通滤波特性稍微降低了PLL[1]的输出处的频率偏差(例如,降低到约5%),而在时钟平滑的情况下会看到更小的频率偏差(例如,小于0.3%)。共同参考时钟使所有模块上PLL保持同步,并且由于没有主机时钟,因此不再需要与主机同步。在一些实施例中,时钟倍频有利于高速输出;即使在突然的最大输入相位误差(例如,0.5*RefClk的TPeriod)的情况下,时钟平滑电路204仍将高速振荡器输出中的相位和/或频率变化限制为小于高速时钟周期的一小部分。

图3图示了根据一些实施例的时钟检测器电路的装置300和相关联的时序图。装置300包括如图所示耦接在一起的触发器301、303和304、反相器302和组合逻辑305(例如,异或非(exclusive NOR)门)。使用PLL[0]时钟对高速主机时钟的2分频版本进行采样,其中匹配的路径延迟集中在PLL[0]时钟相对于2分频主机时钟(主机时钟div 2)的上升沿。当来自触发器303的当前样本(样本N)与来自触发器304的先前样本(样本N-1)匹配时,组合逻辑305断言时钟信号(停止时钟)指示主机时钟已经停止。依据时钟速度,实施方式可以使用附加采样深度(例如,四个样本),以进一步提高抗抖动的鲁棒性。在一个示例中,使用两个附加触发器(未示出)来生成样本N-2和样本N-3,然后将样本N-2和样本N-3与断言时钟选择信号指示主机时钟确实已停止之前的样本N和样本N-1进行比较。虽然PLL[0]时钟可能漂移并最终在没有参考的情况下变得不稳定,但时钟检测操作在几个高速主机时钟周期内完成,这是确保PLL[0]时钟在检测到停止的主机时钟前保持稳定的足够短的时间(确实小于低速参考时钟周期)。一些实施例不仅可增加采样深度,还可增加宽度。例如,图3中的样本N和样本N-1是主机时钟div 2的移位版本,也是1位计数器。计数器宽度可增加到N位。并且,数字方案可以以诸如格雷码或二进制计数之类的任何样式实现。

图4图示了根据一些实施例的耦接到时钟平滑电路以调整上方脉冲和下方脉冲的锁相回路(PLL)。PLL 400包括相位检测器401或相位频率检测器(PFD)、电荷泵402、滤波器403、压控振荡器(VCO)404、分频器405和时钟平滑电路204。为了不混淆实施例,未示出PLL的其他组件,比如锁定检测器。

相位检测器401接收参考时钟(RefClk)和反馈时钟(FbClk),并生成上方(Up)信号和下方(Dn)信号。上方信号和下方信号是表示RefClk与FbClk之间的相对相位差的脉冲。在没有时钟平滑电路204的情况下,电荷泵402接收上方脉冲和下方脉冲,并且在节点V1上发源或吸收电流。然后,V1上的信号由滤波器403(比如,低通滤波器(LPF))滤波,以生成经滤波的控制电压Vctl。然后,使用Vctl来控制VCO 404的振荡频率。VCO 404的输出为VcoClk。分频器405通过分频比对VcoClk的频率进行分频以生成FbClk。在PLL锁定期间,上方信号和下方信号提供动态相位误差的证据。分频比可以是可编程的或固定的。分频比可以是整数值或分数值。动态相位误差是声明PLL被锁定之前的RefClk与FbClk之间的相位误差。当RefClk与FbClk之间的相位差低于预定阈值时,声明PLL被锁定。

相位检测器401的一些实施方式使用模拟电路技术,而其他实施方式使用数字电路。可将相位检测器401设计成仅对相位敏感或对频率和相位敏感。当相位检测器仅对RefClk和FbClk的相位敏感时,会产生与两个信号之间的相位差成比例的输出。当RefClk与FbClk之间的相位差稳定时,相位检测器401产生恒定电压。当两个信号(RefClk和FbCLk)之间存在频率差时,相位检测器401产生变化的电压。相位检测器401的示例实施例包括基于二极管的环形相位检测器、“异或”相位检测器、基于JK触发器的比较器和双D型相位检测器。通常,当数字相位检测器要实现相位检测器401时,数字相位检测器的逻辑门创建短上方脉冲和下方脉冲。静态相位误差是上方脉冲与下方脉冲之间的脉宽差,这是由泄漏电流与电荷泵电流不匹配引起的。

当PLL处于正常操作模式时,PFD输出持续时间与PLL的输入RefClk与FBClk之间的相位误差成比例的脉冲。这些脉冲使电荷泵能够发源或吸收与相位误差的符号和幅度成比例的电荷量。将电荷泵送到电容器(Cp)上并进行滤波,以为VCO404提供控制电压,所述VCO404响应于控制电压(Vctl)的变化而加速或减慢其输出频率。最终,PLL以几乎恒定的Vctl和最小的相位误差达到稳定的“锁定”状态。以N分频的分频器405允许PLL输出比Refclk频率大N倍的频率。

RefClk的源中的突然变化可能在PFD 401的输入引入较大的相位误差。可以看出,源自电容器Cp或从电容器Cp吸收到控制VCO 404的电荷量是相位误差的函数。在电容器上采样的每单位时间的电荷量是电容器大小(Cp)和每单位时间的电荷变化或电流(Ip=dQ/dT)的函数。暂时,考虑将这种电荷变化限制为小于可在RefClk周期(TPeriod)内发源或吸收的最大值。由于Vctl电压的变化与电流成比例,这目前将Vctl的最大值变化限制为这暗示了可使PFD 401和电荷泵系统402的增益饱和,以停止VCO404因突然大的相位误差而突然改变相位和/或频率。在各种实施例中,时钟平滑电路204截取PFD输出(up和dn)并将脉冲长度限制为t0<(1%*TPeriod)。因此,将修改的上方脉冲和下方脉冲(Up’和Dn’)提供给电荷泵402,以限制吸收或发源到节点V1的电荷量。将脉冲宽度限制为t0会在高速振荡器时钟的输出相位和频率中产生类似的变化比(例如,大约1%)。应注意,取决于系统设计考虑,t0可以是1%以外的值。使用时钟平滑电路204,PLL在诸如可能在参考时钟交换期间出现的大于t0的突然相位变化下,无需重新锁定,仍能维持稳定的输出时钟频率。时钟平滑电路,随着与新的参考时钟缓慢对准,确保第一PLL输出上的频率和相位偏差最小。

虽然将PLL 400图示为模拟PLL,但可以使用任何类型的PLL来生成时钟。例如,混合信号PLL、全数字PLL等可以与时钟平滑电路204一起使用。在一些实施例中,PFD 401可以用时间-数字转换器(TDC)代替。在一个这样的实施例中,数字时钟平滑电路监控TDC的数字流输出并对其进行数字处理以平滑相位中突然的大变化。这里,输出可以保持数字格式或转换为模拟输出。在一些实施例中,可以用使用众所周知的数字滤波器实施方式(例如,有限脉冲响应(FIR)或无限脉冲响应(IIR))的全数字滤波器替换滤波器403。在一个这样的实施例中,数字滤波器从时钟平滑电路或从模数转换器接收数字输入。在一些实施例中,VCO404可以用数字控制振荡器或DCO替换。在一个这样的实施例中,DCO从数字滤波器接收数字输入,或者经由模拟-数字转换器将模拟输入转换为数字表示。

图5图示了根据一些实施例的用于时钟平滑的装置500和相关联的时序图。装置500包括如图所示的耦接在一起的延迟线501、反相器502、“与”门503、延迟线504、反相器505和“与”门506。在意外时钟停止时,“已停止时钟”信号(或时钟选择信号)断言启动PLL[0]输入参考时钟从低速主机时钟到低速晶体振荡器时钟的交换。应注意,因为主机时钟的最终来源也是晶体振荡器,所以两个低速时钟的频率在百万分之几(PPM)以内匹配。然而,两个低速时钟之间可能存在任意的相位关系,因此PLL[0]参考时钟边沿可能相对于反馈时钟突然具有大的相位误差。在多路复用器202进行时钟交换之后,该相位误差(也表示为来自PFD 401的上方/下方信号或来自TDC的数字流输出)可能是参考时钟周期的重要部分,这继而会导致PLL[0]2051在没有时钟平滑电路204的情况下显著减速或加速。然而,时钟平滑电路204截取原始PFD输出(up和dn)并将其通过可编程的反相延迟线(501和504)发送,该可编程的反相延迟线与原始PFD输出(Up和Dn)进行“与”运算(通过503和506)。该逻辑限制了PLL[0]所经历的相位误差(表示为Up'/Dn'信号)并为时钟分配网络维持稳定而连续的输出时钟。

在一个示例中,对于100MHz Refclk、t0的1%限制和N=32的情况,5ns的突然输入相位误差在高速3200Mhz输出时钟上产生3.125ps(=0.01*TPeriod/N)的最大偏移。这与PLL噪声固有源(例如,热噪声、电源噪声和馈通噪声(feed-through noise))的自然抖动相似。在该上下文中,还提供了在意外时钟停止下维持“连续而稳定”时钟的更精确定义:这意味着输出时钟平滑电路将高速时钟的相位或频率偏移限制为在幅度上低于那些来自锁定PLL的正常操作期间的固有噪声。

图6图示了示出根据一些实施例的PLL和时钟平滑电路的时钟交换性能的曲线图600。曲线图600示出了PLL[0]601和PLL[1]601输出时钟;附加PLL具有相似的性能。在曲线图600中,PLL[0]和PLL[1]两者首先启动和锁定;然后意外时钟停止出现在3.4μs标记附近,如波形的加窗部分所示。电路仿真包括馈通噪声,这导致锁定PLL[1]中约为20MHz(或小于1%)的固有频率偏移。在意外时钟停止并切换到新的参考时钟之后,时钟平滑电路将引入PLL[0]的输出时钟的附加噪声限制为小于1MHz,并将引入到PLL[1]中的输出时钟的附加噪声限制为小于20MHz。由于正常锁定操作中的所有固有噪声源,因此电路仿真中的频率偏移远小于PLL的输出上的预期总噪声。

虽然参考向多路复用器202提供低速时钟的振荡器描述了实施例,但也可能出现相反的过程。例如,在存储器模块上电时,其中振荡器107可能是唯一可用的时钟,并且当主机时钟稳定时切换到主机时钟。在一些实施例中,切换也可以在没有时钟检测电路的情况下发生,并且替代地可以基于明确的外部控制信号而发生时钟输入的切换。

图7图示了根据本公开的一些实施例的具有维持稳定计时的装置的智能设备或计算机系统或SoC(片上系统)。需要指出的是,图7中与任何其他图的元件具有相同附图标记(或名称)的那些元件可以与所描述的方式类似的任何方式操作或起作用,但并不限于此。

在一些实施例中,设备2400表示适当的计算设备,例如计算平板电脑、移动电话或智能电话、膝上型电脑、台式电脑、物联网(IOT)设备、服务器、可穿戴设备、机顶盒、具有无线功能的电子阅读器等。应理解,某些组件为一般性示出,并且并非此类设备的所有组件都在设备2400中示出。

在示例中,设备2400包括SoC(片上系统)2401。在图7中使用虚线图示SOC 2401的示例边界,其中将一些示例组件图示为包括在SOC 2401内--然而,SOC 2401可以包括设备2400的任何适当组件。

在一些实施例中,设备2400包括处理器2404。处理器2404可包括一个或多个物理设备,例如微处理器、应用处理器、微控制器、可编程逻辑设备、处理核或其他处理装置。由处理器2404进行的处理操作包括对在上面执行应用和/或设备功能的操作平台或操作系统的执行。处理操作包括与人类用户或与其他设备的I/O设备的I/O(输入/输出)相关的操作、与电力管理相关的操作、与将计算设备2400连接到另一设备相关的操作等。处理操作还可以包括与音频I/O或显示I/O相关的操作。

在一些实施例中,处理器2404包括多个处理核(也成为核)2408a、2408b、2408c。虽然图7中仅图示了三个核2408a、2408b、2408c,但处理器2404可以包括任何其他适当数量的处理核,例如,数十个或甚至数百个处理核。处理核2408a、2408b、2408c可以在单个集成电路(IC)芯片上实现。此外,芯片可以包括一个或多个共享和/或私有缓存、总线或互连、图形和/或存储器控制器、或其他组件。

在一些实施例中,处理器2404包括缓存2406。在示例中,缓存2406的各部分可以专用于各自的核2408(例如,缓存2406的第一部分专用于核2408a、缓存2406的第二部分专用于核2408b等)。在示例中,缓存2406的一个或多个部分可以在两个或多个核2408之间共享。缓存2406可以分成不同级,例如1级(L1)缓存、2级(L2)缓存、3级(L3)缓存等。

在一些实施例中,处理核2404可以包括提取单元,用于提取由核2404执行的指令(包括具有条件分支的指令)。指令可以从诸如存储器2403的任何存储设备中提取。处理器核2404还可以包括解码单元,用于对提取的指令进行解码。例如,解码单元可以将提取的指令解码为多个微操作。处理器核2404可以包括调度单元,用于执行与存储解码指令相关联的各种操作。例如,调度单元可以保持来自解码单元的数据,直到准备好指令以供分派为止,例如,直到解码指令的所有原值变得可用为止。在一个实施例中,调度单元可以将解码指令调度和/或发布(或分派)到执行单元以供执行。

在对指令进行解码(例如,由解码单元)和分派(例如,由调度单元)之后,执行单元可以执行分派的指令。在实施例中,执行单元可以包括一个以上执行单元(比如,成像计算单元、图形计算单元、通用计算单元等)。执行单元还可以进行诸如加法、减法、乘法和/或除法等各种算术运算,并且可以包括一个或多个算术逻辑单元(ALU)。在实施例中,协处理器(未示出)可以结合执行单元来进行各种算术运算。

此外,执行单元可以乱序执行指令。因此,在一个实施例中,处理器核2404可以为乱序处理器核。处理器核2404还可以包括引退单元(retirement unit)。引退单元可以在指令提交之后使已执行指令引退。在实施例中,已执行指令引退可以产生根据指令执行正在提交的处理器状态、正在解除分配的指令所使用的物理寄存器等。处理器核2404还可以包括总线单元以使处理器核2404的组件与其他组件之间能够经由一个或多个总线通信。处理器核2404还可以包括一个或多个寄存器以存储由核2404的各种组件访问的数据(比如,与分配的应用优先级和/或子系统状态(模式)关联相关的值)。

在一些实施例中,设备2400包括连通性电路2431。例如,电路2431包括硬件设备(例如,无线和/或有线连接器和通信硬件)和/或软件组件(例如,驱动器、协议栈等),例如以使设备2400能够与外部设备通信。设备2400可以与诸如其他计算设备、无线接入点或基站之类的外部设备分离。

在示例中,连通性电路2431可以包括多种不同类型的连通性。一般来说,连通性电路2431可以包括蜂窝连通性电路、无线连通性电路等。连通性电路2431的蜂窝连通性电路一般是指由无线运营商提供的蜂窝网络连通性,比如经由GSM(全球移动通信系统)或变体或衍生物、CDMA(码分多址)或变体或衍生物、TDM(时分复用)或变体或衍生物、第三代合作伙伴计划(3GPP)通用移动电信系统(UMTS)系统能够或变体或衍生物、3GPP长期演进(LTE)系统或变体或衍生物、3GPP LTE-高级(LTE-A)系统或变体或衍生物、第五代(5G)无线系统或变体或衍生物、5G移动网络系统或变体或衍生物、5G新无线电(NR)系统或变体或衍生物、或其他蜂窝服务标准来提供。连通性电路2431的无线连通性电路(或无线接口)是指非蜂窝的无线连通性,并且可包括个人局域网(比如,蓝牙、近场等)、局域网(比如,Wi-Fi)和或广域网(比如,WiMax)和/或其他无线通信。在示例中,连通性电路2431可以包括诸如有线或无线接口之类的网络接口,例如使得系统实施例可以并入诸如手机或个人数字助理之类的无线设备。

在一些实施例中,设备2400包括控制中心2432,所述控制中心2432表示与一个或多个I/O设备的交互相关的硬件设备和/或软件组件。例如,处理器2404可以经由控制中心2432与显示器2422、一个或多个外围设备2424、存储设备2428、一个或多个其他外部设备2429等中的一者或多者通信。控制中心2432可以是芯片组、平台控制中心(PCH)等。

例如,控制中心2432图示了用于连接到设备2400的附加设备的一个或多个连接点,例如,用户可以通过这些连接点与系统交互。例如,可附着到设备2400的设备(例如,设备2429)包括麦克风设备、扬声器或立体声系统、音频设备、视频系统或其他显示设备、键盘或小键盘设备、或诸如读卡器或其他设备等用于特定应用的其他I/O设备。

如上所述,控制中心2432可与音频设备、显示器2422等交互。例如,通过麦克风或其他音频设备的输入,可为设备2400的一个或多个应用或功能提供输入或命令。另外,代替显示输出或除显示输出之外,还可提供音频输出。在另一示例中,如果显示器2422包括触摸屏,则显示器2422还充当输入设备,所述输入设备可至少部分由控制中心2432管理。计算设备2400上还可以有附加按钮或开关以提供由控制中心2432管理的I/O功能。在一个实施例中,控制中心2432管理诸如加速度计、相机、光传感器或其他环境传感器之类的设备,或者可包括在设备2400中的其他硬件设备。输入可为直接用户交互的一部分,也可向系统提供环境输入以影响其操作(比如,过滤噪声、调整显示以进行亮度检测、为相机应用闪光灯或其他特征)。

在一些实施例中,控制中心2432可以使用任何适当的通信协议耦接到各种设备,例如,PCIe(快速外围组件互连)、USB(通用串行总线)、雷电(Thunderbolt)、高清晰度多媒体接口(HDMI)、火线(Firewire)等。

在一些实施例中,显示器2422表示为用户提供视觉和/或触觉显示以与设备2400交互的硬件(例如,显示设备)和软件(例如,驱动器)组件。显示器2422可以包括显示接口、显示屏和/或用于向用户提供显示的硬件器件。在一些实施例中,显示器2422包括向用户提供输出和输入的触摸屏(或触摸板)设备。在示例中,显示器2422可以直接与处理器2404通信。显示器2422可为一个或多个如在移动电子设备或膝上型设备内的内部显示设备或经由显示接口(例如,DisplayPort等)附接的外部显示设备。在一个实施例中,显示器2422可为头戴式显示器(HMD),比如用于虚拟现实(VR)应用或增强现实(AR)应用的立体显示设备。

在一些实施例中并且虽然未在图中图示,除了(或代替)处理器2404,设备2400还可以包括图形处理单元(GPU),所述图形处理单元(GPU)包括一个或多个图形处理核,所述图形处理核可以控制显示器2422上的显示内容的一个或多个方面。

控制中心2422(或平台控制器中心)可以包括硬件接口和连接器,以及软件组件(例如,驱动器、协议栈)以例如与外围设备2424进行外围连接。

应理解,设备2400既可以是其他计算设备的外围设备,也可以使外围设备与其连接。出于诸如管理(例如,下载和/或上传、更改、同步)设备2400上的内容之类的目的,设备2400可以具有用于连接到其他计算设备的“对接(docking)”连接器。另外,对接连接器可允许设备2400连接到某些允许计算设备2400控制内容输出(例如,到视听系统或其他系统)的外围设备。

除了专属对接连接器或其他专属连接硬件之外,设备2400还可经由常用连接器或基于标准的连接器进行外围连接。常用类型可包括通用串行总线(USB)连接器(可包括多个不同硬件接口中的任何一者)、包括迷你显示端口(MiniDisplayPort,MDP)的显示端口、高清多媒体接口(HDMI)、火线或其他类型。

在一些实施例中,例如,除了直接耦接到处理器2404之外或代替直接耦接到处理器2404,连通性电路2431还可以耦接到控制中心2432。在一些实施例中,例如,除了直接耦接到处理器2404之外或代替直接耦接到处理器2404,显示器2422还可以耦接到控制中心2432。

在一些实施例中,设备2400包括经由存储器接口2434耦接到处理器2404的存储器2430。存储器2430包括用于在设备2400中存储信息的存储器设备。

在一些实施例中,存储器2430包括如参考各种实施例所述的维持稳定计时的装置。存储器可包括非易失性(如果存储设备的电源中断,则状态不会改变)和/或易失性(如果存储设备的电源中断,则状态不确定)存储器设备。存储器设备2430可为动态随机存取存储器(DRAM)设备、静态随机存取存储器(SRAM)设备、闪存设备、相变存储器设备或一些具有用作处理存储器的合适性能的其他存储器设备。在一个实施例中,存储器2430可作为设备2400的系统存储器操作,以存储数据和指令,以供在一个或多个处理器2404执行应用或处理时使用。存储器2430可存储应用数据、用户数据、音乐、照片、文档或其他数据,以及与执行设备2400的应用和功能相关的系统数据(无论是长期的还是临时的)。在一些实施例中,存储设备2428可以包括该装置。

还提供各种实施例和示例的元件作为用于存储计算机可执行指令(例如,用于实现本文中讨论的任何其他过程的指令)的机器可读介质(例如,存储器2430)。机器可读介质(例如,存储器2430)可以包括但不限于闪存、光盘、CD-ROM、DVD ROM、DVD ROM、RAM、EPROM、EEPROM、磁卡或光卡、相变存储器(PCM),或适于存储电子或计算机可执行指令的其他类型的机器可读介质。例如,本公开的实施例可以下载为计算机程序(例如,BIOS),所述计算机程序可以经由通信链路(例如,调制解调器或网络连接)以数据信号的方式从远程计算机(例如,服务器)传送到请求计算机(例如,客户端)。

在一些实施例中,设备2400包括温度测量电路2440,例如,用于测量设备2400的各种组件的温度。在示例中,温度测量电路2440可以嵌入、耦接或附接到温度要被测量或监控的各种组件。例如,温度测量电路2440可以测量核2408a、2408b、2408c、电压调节器2414、存储器2430、SOC 2401的主板和/或设备2400的任何适当组件中的一者或多者的(或内部的)温度。

在一些实施例中,设备2400包括电力测量电路2442,例如,用于测量设备2400的一个或多个组件所消耗的电力。在示例中,除了测量电力之外,或者代替测量电力,电力测量电路2442还可以测量电压和/或电流。在示例中,电力测量电路2442可以嵌入、耦接或附接到电力、电压和/或电流消耗将被测量或监控的各种组件。例如,电力测量电路2442可以测量由一个或多个电压调节器2414提供的电力、电流和/或电压、向SOC 2401提供的电力、向设备2400提供的电力、由设备2400的处理器2404(或任何其他组件)消耗的电力等。

在一些实施例中,设备2400包括一个或多个电压调节器电路,所述电压调节器电路通常称为电压调节器(VR)2414。VR 2414生成处于适当电压电平的信号,所述信号可以被提供以操作设备2400的任何适当组件。仅作为示例,将VR 2414图示为向设备2400的处理器2404提供信号。在一些实施例中,VR 2414接收一个或多个电压识别(VID)信号,并基于所述VID信号生成处于适当电平的电压信号。针对VR 2414可以利用不同类型的VR。例如,VR2414可以包括“降压(buck)”VR、“升压(boost)”VR、降压和升压VR的组合、低压差(LDO)调节器、开关DC-DC调节器等。降压VR通常用于输入电压需要以小于1的比率转换为输出电压的电力传输应用中。在一些实施例中,每个处理器核具有由PCU 2410a/b和/或PMIC 2412控制的其自己的VR。在一些实施例中,每个核具有分布式LDO网络以提供对电源管理的有效控制。LDO可为数字、模拟或者数字或模拟LDO的组合。

在一些实施例中,设备2400包括一个或多个时钟生成器电路,所述时钟生成器电路通常称为时钟生成器2416。时钟生成器2416生成处于适当频率电平的时钟信号,所述时钟信号可以被提供给操作设备2400的任何适当组件。仅作为示例,将时钟生成器2416图示为向设备2400的处理器2404提供时钟信号。在一些实施例中,时钟生成器2416接收一个或多个频率识别(FID)信号,并基于所述FID信号生成处于适当频率的时钟信号。

在一些实施例中,设备2400包括向设备2400的各种组件供电的电池2418。仅作为示例,将电池2418被示为向处理器2404供电。虽然图中未图示,但设备2400可以包括充电电路,所述充电电路例如基于从交流(AC)适配器接收的交流电源对电池再充电。

在一些实施例中,设备2400包括电力控制单元(PCU)2410(也称为电力管理单元(PMU)、电力控制器等)。在示例中,PCU 2410的一些部分可以由一个或多个处理核2408实现,并且PCU 2410的这些部分被使用虚线框象征性地图示并标记为PCU 2410a。在示例中,PCU 2410的一些其他部分可以在处理核2408外部实现,并且PCU 2410的这些部分被使用虚线框象征性地图示并标记为PCU 2410b。PUC 2140可以针对设备2400实施各种电力管理操作。PCU 2410可以包括硬件接口、硬件电路、连接器、寄存器等、以及软件组件(例如,驱动器、协议栈),以针对设备2400实施各种电力管理操作。

在一些实施例中,设备2400包括电源管理集成电路(PMIC)2412,例如,以针对设备2400实施各种电力管理操作。在一些实施例中,PMIC 2412为可重配置电源管理IC(RPMIC)和/或IMVP(移动电压定位)。在示例中,PMIC位于与处理器2404分离的IC芯片内。PMIC可以针对设备2400实施各种电力管理操作。PMIC 2412可以包括硬件接口、硬件电路、连接器、寄存器等、以及软件组件(例如,驱动器、协议栈),以针对设备2400实施各种电力管理操作。

在示例中,设备2400包括PCU 2410或PMIC 2412中的一者或两者。在示例中,在设备2400中可能不存在PCU 2410或PMIC 2412中的任何一者,因此,使用虚线图示这些组件。

可由PCU 2410、PMIC 2412或PCU 2410与PMIC 2412的组合进行设备2400的各种电力管理操作。例如,PCU 2410和/或PMIC 2412可以选择用于设备2400的各种组件的电力状态(例如,P-状态)。例如,PCU 2410和/或PMIC 2412可以选择用于设备2400的各种组件的电力状态(例如,根据ACPI(高级配置和电力接口)规格)。仅作为示例,PCU 2410和/或PMIC2412可以使设备2400的各种组件转换为睡眠状态、活动状态、适当的C状态(例如,根据ACPI标准的C0状态或另一适当的C状态)。在示例中,PCU 2410和/或PMIC 2412可以例如分别通过输出VID信号和/或FID信号来控制VR 2414输出的电压和/或时钟生成器输出的时钟信号的频率。在示例中,PUC 2410和/或PMIC 2412可以控制电池电力使用、电池2418的充电以及与省电操作相关的特征。

时钟生成器2416可包括锁相回路(PLL)、锁频回路(FLL)或任何合适的时钟源。在一些实施例中,处理器2404的每个核具有自己的时钟源。如此,每个核可在独立于其他核的操作频率的频率下操作。在一些实施例中,PCU 2410和/或PMIC 2412进行自适应或动态频率缩放或调整。例如,如果核未在其最大功耗阈值或限制下操作,则可增加处理器核的时钟频率。在一些实施例中,PCU 2410和/或PMIC 2412确定处理器的每个核的操作条件,并且当PCU 2410和/或PMIC 2412确定核载低于目标性能水平下运行时,在核时钟源(例如,该核的PLL)不失锁的情况下,机会性地调整该核的频率和/或电源电压。例如,如果核从电源轨汲取的电流小于分配给该核或处理器2404的总电流,则PCU 2410和/或PMIC 2412可暂时增加该核或处理器2404的电力汲取(例如,通过增加时钟频率和/或电源电压水平),使得核或处理器2404可在更高的性能水平下运行。如此,可在不违反产品可靠性的情况下为处理器2404临时增加电压和/或频率。

在示例中,PCU 2410和/或PMIC 2412可以例如至少部分地基于从电力测量电路2442、温度测量电路2440、电池2418的充电水平和/或任何其他适当的可以用于电源管理的信息接收的测量进行电力管理操作。为此,PMIC 2412通信地耦接到一个或多个传感器以感测/检测对系统/平台的电力/热行为有影响的一个或多个因素中的各种值/变化。一个或多个因素的示例包括电流、压降、温度、操作频率、操作电压、功耗、核间通信活动等。可以与计算系统的一个或多个组件或逻辑/IP块物理接近地(和/或热接触/耦接)提供这些传感器中的一者或多者。另外,在至少一个实施例中,(一个或多个)传感器可以直接耦接到PCU 2410和/或OMIC 2412,以允许PCU 2410和/或PMIC 2412至少部分地基于由一个或多个传感器检测到的值来管理处理器核能量。

还图示了设备2400的示例软件栈(虽然并未图示软件栈的所有元件)。仅作为示例,处理器2404可以执行应用程序2450、操作系统2452、一个或多个电力管理(PM)特定应用程序(例如,通常称为PM应用2458)等。PM应用2458还可以由PCU 2410和/或PMIC 2412执行。OS 2452还可以包括一个或多个PM应用2456a、2456b、2456c。OS 2452还可以包括各种驱动器2454a、2454b、2454c等,所述驱动器中的一些可以专用于电力管理目的。在一些实施例中,设备2400还可以包括基本输入/输出系统(BIOS)2420。BIOS 2420可以与OS 2452通信(例如,经由一个或多个驱动器2454)、与处理器2404通信等。

例如,PM应用2458、2456、驱动器2454、BIOS 2420等中的一者或多者可以用于实施电力管理特定任务,例如,以控制设备2400的各种组件的电压和/或频率,控制设备2400的各种组件的唤醒状态、睡眠状态和/或任何其他适当的电力状态,控制电池电力使用、电池2418的充电、与省电操作相关的特征等。

说明书中对“实施例(an embodiment)”、“一个实施例(one embodiment)”、“一些实施例(some embodiments)”或“其他实施例(other embodiments)”的提及意指结合实施例描述的特定特征、结构或特性包括在至少一些实施例中,但不一定是所有实施例。“实施例”、“一个实施例”或“一些实施例”的各种出现不一定都是指相同的实施例。如果说明书阐述了“可以(may)”、“可能(might)”或“能够(could)”包括组件、特征、结构或特性,则并非要求包括该特定组件、特征、结构或特性。如果说明书或权利要求提及“一个(a or an)”元件,则并不意味着只有一个元件。如果说明书或权利要求提及“附加(an additional)”元件,则并不排除有多于一个附加元件。

此外,特定特征、结构、功能或特性可以在一个或多个实施例中以任何合适的方式组合。例如,在与第一实施例和第二实施例相关联的特定特征、结构、功能或特性不相互排斥的任何地方,所述第一实施例均可以与所述第二实施例组合。

虽然已经结合具体实施例描述了本公开,但是根据前述描述,这些实施例的许多替代、修改和变型对于本领域普通技术人员来说将是显而易见的。本公开的实施例旨在涵盖落入所附权利要求的广泛范围内的所有此类替代、修改和变型。

另外,为了简化说明和讨论,并且为了不使本公开内容模糊,在所呈现的图中可以示出也可以不示出众所周知的与集成电路(IC)芯片和其他组件的电源/接地连接。此外,为了避免混淆本公开,而且还考虑到关于此框图布置的实施方式的细节高度依赖于在其中实施本公开的平台的事实(即,这些细节应在本领域技术人员的能力范围内),布置可以以框图形式示出。在陈述具体细节(例如,电路)以描述本公开的示例实施例的情况下,对本领域技术人员显而易见的是,本公开可在没有这些具体细节或在这些具体细节的变型的情况下实践。因此,认为描述是说明性的而不是限制性的。

提供以下示例来说明各种实施例。这些示例可以任何合适的方式相互引用。

示例1:一种装置,包括:第一电路,用于选择第一时钟或第二时钟中的一者;锁相回路(PLL),用于接收所述第一电路的输出作为所述PLL的参考时钟;以及第二电路,耦接到所述PLL,其中所述第二电路用于检测是否存在所述第一时钟,并向所述第一电路提供选择信号以:在存在所述第一时钟的情况下,选择所述第一时钟作为所述第一电路的输出;以及在不存在所述第一时钟的情况下,选择所述第二时钟作为所述第一电路的输出。

示例2:根据示例1所述的装置,包括第三电路,所述第三电路用于在所述第一电路选择所述第二时钟时,调节来自所述PLL的相位检测器的上方脉冲和下方脉冲。

示例3:根据示例1所述的装置,包括第四电路,所述第四电路用于对第三时钟进行分频以生成所述第一时钟。

示例4:根据示例3所述的装置,其中所述第三时钟由主机处理器生成。

示例5:根据示例1所述的装置,其中所述第二时钟由晶体振荡器生成,其中所述第一时钟的频率与所述第二时钟的频率大体相同。

示例6:根据示例1所述的装置,其中所述第一电路包括多路复用器。

示例7:根据示例1所述的装置,其中所述第二电路包括:第一触发器,具有接收所述第一时钟的时钟输入以及经由反相器耦接到所述输入的输出;第二触发器,具有接收所述PLL的输出的时钟输入、耦接到所述第一触发器的输出的输入、以及输出;第三触发器,具有接收所述PLL的输出的时钟输入、耦接到所述第二触发器的输出的输入、以及输出;以及组合逻辑,用于接收所述第二触发器的输出和所述第三触发器的输出,其中所述组合逻辑的输出提供所述选择信号。

示例8:根据示例2所述的装置,其中所述第三电路包括:第一可编程延迟线,用于接收所述上方脉冲;第一反相器,耦接到所述第一可编程延迟线的输出;第一组合逻辑,用于接收所述上方脉冲和所述第一反相器的输出,其中所述第一组合逻辑的输出提供经调整的上方脉冲;第二可编程延迟线,用于接收所述下方脉冲;第二反相器,耦接到所述第一可编程延迟线的输出;以及第二组合逻辑,用于接收所述下方脉冲和所述第二反相器的输出,其中所述第二组合逻辑的输出提供经调整的下方脉冲。

示例9:根据示例1所述的装置,包括时钟分配网络,所述时钟分配网络耦接到所述PLL的输出。

示例10:根据示例9所述的装置,其中,所述参考时钟为第一参考时钟,其中所述PLL为第一PLL,其中所述装置包括:分频器,用于对所述第一PLL的输出进行分频并生成第二参考时钟;以及第二PLL,用于接收所述第二参考时钟。

示例11:根据示例10所述的装置,其中所述时钟分配网络为第一时钟分配网络,其中所述装置包括耦接到所述第二PLL的输出的第二时钟分配网络,并且其中所述第二时钟分配网络的输出由存储器接收。

示例12:根据示例10所述的装置,其中,所述第一PLL和所述第二PLL为模拟PLL或数字PLL中的一者。

示例13:一种装置,包括:锁相回路(PLL),用于接收参考时钟并生成输出时钟,所述输出时钟被直接或间接用于向存储器写入数据;以及电路,用于检测有效的第一时钟并在所述第一时钟无效时使多路复用器提供第二时钟作为所述参考时钟。

示例14:根据示例13所述的装置,其中所述电路为第一电路,并且其中所述装置包括第二电路,所述第二电路用于在所述多路复用器提供所述第二时钟作为所述参考时钟时调整来自所述PLL的上方脉冲和下方脉冲。

示例15:根据示例14所述的装置,包括第三电路,所述第三电路对所述第一时钟进行分频以生成第三时钟,其中所述第三时钟和所述第二时钟被输入到所述多路复用器。

示例16:根据示例13所述的装置,其中所述第一时钟由主机处理器生成。

示例17:根据示例15所述的装置,其中所述第二时钟由晶体振荡器生成,并且其中所述第三时钟的频率与所述第二时钟的频率大体相同。

示例18:一种系统,包括:处理器;存储器模块,耦接至所述处理器,其中所述处理器将第一时钟发送到所述存储器模块,其中所述处理器模块包括:第一电路,用于选择第一时钟或第二时钟中的一者;锁相回路(PLL),用于接收所述第一电路的输出作为所述PLL的参考时钟;以及第二电路,耦接到所述PLL,其中所述第二电路用于检测是否存在所述第一时钟,并向所述第一电路提供选择信号以:在存在所述第一时钟的情况下,选择所述第一时钟作为所述第一电路的输出;以及在不存在所述第一时钟的情况下,选择所述第二时钟作为所述第一电路的输出;及无线接口,用于允许所述处理器与另一设备通信。

示例19:根据示例18所述的系统,其中所述存储器模块包括:第三电路,用于在所述第一电路选择所述第二时钟时,调整来自所述PLL的相位检测器的上方脉冲和下方脉冲;以及第四电路,用于对第三时钟进行分频以生成所述第一时钟。

示例20:根据示例18所述的系统,其中所述第二时钟由晶体振荡器生成,其中所述第一时钟的频率与所述第二时钟的频率大体相同。

提供的摘要将允许读者确定本技术公开的性质和要点。应理解,所提交的摘要不用于限制权利要求的范围或含义。所附权利要求据此并入详细说明中,每个权利要求自身作为单独的实施方式。

26页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:用于在通信或广播系统中解码数据的方法和装置

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类