CN105191205A - 用于亚稳态解决的循环式同步器电路 - Google Patents
用于亚稳态解决的循环式同步器电路 Download PDFInfo
- Publication number
- CN105191205A CN105191205A CN201480013914.XA CN201480013914A CN105191205A CN 105191205 A CN105191205 A CN 105191205A CN 201480013914 A CN201480013914 A CN 201480013914A CN 105191205 A CN105191205 A CN 105191205A
- Authority
- CN
- China
- Prior art keywords
- latch
- data
- input
- multiplexer
- output
- 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.)
- Granted
Links
- 230000000295 complement effect Effects 0.000 claims description 37
- 238000000034 method Methods 0.000 claims description 25
- 230000004044 response Effects 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 5
- 230000003213 activating effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 11
- 238000006243 chemical reaction Methods 0.000 description 8
- 230000014759 maintenance of location Effects 0.000 description 8
- 230000004913 activation Effects 0.000 description 7
- 230000001360 synchronised effect Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 101150018075 sel-2 gene Proteins 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- HCUOEKSZWPGJIM-YBRHCDHNSA-N (e,2e)-2-hydroxyimino-6-methoxy-4-methyl-5-nitrohex-3-enamide Chemical compound COCC([N+]([O-])=O)\C(C)=C\C(=N/O)\C(N)=O HCUOEKSZWPGJIM-YBRHCDHNSA-N 0.000 description 1
- 101001109689 Homo sapiens Nuclear receptor subfamily 4 group A member 3 Proteins 0.000 description 1
- 101000598778 Homo sapiens Protein OSCP1 Proteins 0.000 description 1
- 101001067395 Mus musculus Phospholipid scramblase 1 Proteins 0.000 description 1
- 102100022673 Nuclear receptor subfamily 4 group A member 3 Human genes 0.000 description 1
- 230000000712 assembly Effects 0.000 description 1
- 238000000429 assembly Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000002592 echocardiography Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 230000003319 supportive effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/02—Details ; arrangements for supplying electrical power along data transmission lines
- H04L25/05—Electric or magnetic storage of signals before transmitting or retransmitting for changing the transmission rate
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/0016—Arrangements for synchronising receiver with transmitter correction of synchronization errors
- H04L7/005—Correction by an elastic buffer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/02—Speed or phase control by the received code signals, the signals containing no special synchronisation information
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Engineering (AREA)
- Logic Circuits (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
公开了一种用于亚稳态解决的循环式同步器。同步器包括M+1个的多个锁存器,每个锁存器被耦合以通过共同的数据输入接收数据。同步器还包括具有N个输入和一个输出的多路复用器,每个输入被耦合以从M+1个锁存器中对应的一个锁存器的输出接收数据,其中多路复用器被配置为选择它的输入中的一个输入以耦合到输出。控制电路被配置为使得多路复用器响应于N个连续的时钟脉冲,按顺序地选择M+1个锁存器的输出,并且进一步被配置为使得M+1个锁存器按顺序地锁存通过共同的数据输入接收的数据。
Description
技术领域
本公开涉及集成电路,并且更具体地涉及用于同步从一个时钟域传递到另一个时钟域的信号的电路。
背景技术
现代集成电路通常包括处于互不相同的时间域和/或电压域中的多个功能块。在不同的时钟域中的电路不共享共同的时钟信号,并且它们各自的时钟信号可以操作在不同的频率上。在不同的电压域中的电路可以在互不相同的电压下接收功率。尽管在操作的时钟频率和接收的电压方面存在不同,但是在不同的时钟域和/或电压域中的电路可以被布置以相互通信。相应地,可以提供各种类型的电路以便将信号从一个时钟和/或电压域传递到另一个时钟和/或电压域。
为了在操作在不同频率上的第一时钟域和第二时钟域之间进行信号传输,可以使用同步器。同步器可以通过使用串联耦合的主从触发器(master-slaveflip-flop)链来实施。由于时钟域可以操作在不同的频率上,因此从发送时钟域接收的数据信号和在接收时钟域中的时钟信号之间没有保证的关系。如果数据信号到达以使得对建立时间和保持时间的要求未被满足,那么有可能第一触发器可能进入亚稳定状态。在亚稳定状态中,状态单元(诸如在触发器中的状态单元)可能处于不稳定平衡的状态中,在该状态中既不是逻辑1被存储也不是逻辑0被存储。在若干时钟周期的过程中,所述用于实施同步器的串联耦合的触发器链可以解决亚稳态,从所述链的最后一个触发器输出逻辑1或逻辑0。
为了在在不同供给电压下接收功率的第一电压域和第二电压域之间进行信号传输,可以使用电平移位电路。电平移位电路可以接收具有第一电压摆幅的逻辑信号并且输出具有第二电压摆幅的对应的逻辑信号。在一些电平移位电路中,第一电压摆幅可以大于第二电压摆幅。在其他电平移位电路中,第一电压摆幅可以小于第二电压摆幅。
发明内容
公开了一种用于亚稳态解决的旋转的同步器。在一个实施例中,同步器包括M+1个的多个锁存器,每个锁存器被耦合以通过共同的数据输入接收数据。同步器还包括具有N个输入和一个输出的多路复用器,每个输入被耦合以从M+1个锁存器中的对应一个锁存器的输出接收数据,其中多路复用器被配置为选择它的输入中的一个输入以耦合到输出。控制电路被配置为使得多路复用器响应于N个连续的时钟脉冲,按顺序地选择M+1个锁存器的输出,并且进一步被配置为使得M+1个锁存器按顺序地锁存通过共同的数据输入接收的数据。
在一个实施例中,一种方法包括按顺序地选择多路复用器的输入,其中多路复用器的输入中的每个输入耦合到M+1个锁存器中的对应一个锁存器的输出,其中多路复用器包括N个输入,并且其中一次选择输入中的一个输入。所述方法还包括按顺序地将数据锁存到M+1个锁存器中的两个或多个锁存器,其中M+1个锁存器中的每个锁存器被耦合以通过共同的数据输入接收数据。M+1个锁存器中的每个锁存器被配置为在与它的输出被选择为多路复用器的输入时相同的时钟脉冲期间内,响应于接收两个或多个连续的时钟脉冲中的特定一个时钟脉冲来锁存数据,其中数据被锁存到M+1个锁存器中的两个或多个锁存器中,一次锁存到一个锁存器。
附图说明
在阅读以下详细的描述以及参考现在如下简要描述的附图时,本公开的其他方面将变得清晰。
图1是具有多个电压域和多个时间域的集成电路(IC)的一个实施例的框图;
图2是同步器的一个实施例的图;
图3是说明同步器的一个实施例的操作的时序图;
图4是用在同步器中的锁存器的一个实施例的示意图;
图5是电平移位电路的一个实施例的逻辑图;
图6A是电平移位电路的一个实施例的示意图;
图6B是电平移位电路的另一个实施例的示意图;
图6C是电平移位电路的第三个实施例的示意图;
图7是说明用于操作同步器的方法的一个实施例的流程图;
图8是说明用于从第一电压/时钟域传送信号到第二电压/时钟域的方法的一个实施例的流程图。
虽然在这里公开的主题可以有各种修改和替代形式,但关于它的具体的实施例以示例的方式在附图中被示出并且将在这里被详细地描述。但应该理解,附图及其描述不旨在限于已公开的特定形式,但相反地,旨在涵盖落入附加权利要求所确定的本公开的精神和范围内的所有修改、等效物和替代物。
具体实施方式
现在转到图1,集成电路(IC)的一个实施例的框图被示出。值得注意的是,在实施例中示出的IC10是一个示例性的实施例,因此其他实施例是可能的和预期的。为了说明的目的,IC10的某些组件在这里被示出,然而要理解的是IC10可以包括在这里未明确示出也未讨论的其他组件。还值得注意的是,在一些实施例中,时钟域和电压域不一定相一致,但为了说明的目的,在这里以这样的方式被示出。
在说明的实施例中,第一供给电压Vdd1被提供到时钟/电压域#1(‘第一域’)的电路。类似地,时钟/电压域#2(‘第二域’)的电路被耦合以接收第二供给电压Vdd2。在各种实施例中,这两个供给电压可以互不相同。在一些实施例中,这两个供给电压可以是彼此独立可调的以适应所要求的功率和/或性能等级。因此,在某些时候第一和第二供给电压彼此不同,而在其他时候第一和第二供给电压是相同的,这样的实施例是可能的和预期的。在其中第一和第二供给电压被设置为基本上固定的值的实施例也是可能的和预期的。
在示出的实施例中的IC10包括时钟/电压域#1中的第一功能单元12。第二功能单元24被包括在时钟/电压域#2中。值得注意的是,在一些实施例中,时钟域和电压域不一定相一致,但为了说明的目的,在这里以这样的形式被示出。时钟/电压域#1可以按照由时钟发生器11(可以是任何合适类型的时钟发生电路)生成的第一时钟信号Clk1P操作。即,在时钟/电压域#1内的同步电路可以被同步到第一时钟信号。时钟/电压域#2的同步电路可以由时钟发生器23(可以和时钟发生器11相似)生成的第二时钟信号Clk2P同步。第一和第二时钟信号可以在不同的频率上操作。在一些实施例中,第一和/或第二时钟信号的频率可以是彼此独立可调的以适应所要求的性能等级或所要求的功率消耗等级。因此,有可能在一些实施例中,有时候第一和第二时钟信号各自的频率可以是相同的,而在其它时候频率可以是不同的。在其中两个时钟频率固定在彼此不同的值上的实施例也是可能的和预期的。
功能单元12可以在IC10的操作期间向功能单元24发送数据。由于这两个功能单元处于不同的时钟域和电压域,因此从时钟/电压域#1中的功能单元12传送的信号被调整以供时钟/电压域#2中的功能单元24接收。在IC10中,功能单元12可以发送多个(N+1个)数据信号(其中N是整数)D0-DN,其携带数据以被功能单元24接收。这些信号作为单端信号(具有真逻辑值)被发送到功能单元24。IC10包括多个(N+1个)发生电路13,其被耦合以接收从功能单元12接收的单端信号并且将这些信号转换为具有真和互补两个逻辑值的差分信号。例如,第一发生电路13被耦合以接收真逻辑值的D0,并且被配置为产生真(D0)逻辑值和互补(DX0)逻辑值以用于跨时钟/电压域#1和时钟/电压域#2之间的边界进行传输。
在时钟/电压域#2中,差分信号可以由对应的电平移位电路15接收。由于由两个域接收的供给电压可以不同,因此逻辑信号的电压摆幅(即在逻辑高和逻辑低之间的差)也可以不同。每个电平移位电路15可以因此将从第一域接收的信号的电压电平转换为适合于第二域中的操作的电平。在这个特定的实施例中,两个域共享共同的地节点(或参考节点),因此两个域的逻辑0的电压电平可以是相同的。但是,时钟/电压域#1中的逻辑1的逻辑电平可以与供给电压Vdd1大致相同,而在时钟/电压域#2中逻辑1可以具有与供给电压Vdd2大致相同的电压电平。相应地,每个电平移位电路15可以将从第一域接收的大约在Vdd1的逻辑1转化为大约在Vdd2的逻辑1。另外,如下进一步讨论,每个电平移位电路15可以被优化以便与某些类型的锁存器一起使用,所述锁存器用于解决在没有足够的建立/保持时间的情况下在时钟/电压域#2中接收信号时可能发生的亚稳态。
在示出的实施例中的每个电平移位电路15可以输出具有真逻辑值和互补逻辑值的差分信号,其具有对第二域合适的电压电平。由电平移位电路15的给定实例输出的差分信号可以由同步器20的对应实例接收。每个同步器20可以包括许多锁存电路,并且可以用于同步从第一域接收的信号和第二域中的时钟信号(Clk2P)。如前所述,第一域中的时钟频率Clk1P可以不同于第二域中的时钟信号的频率。在每个同步器20中使用的锁存器可以因此被用于解决在未留出适量的建立/保持时间的情况下接收信号时可能发生的亚稳态问题。另外,每个同步器20还可以将差分信号转换回单端信号。每个同步器20的输出可以具有与由功能单元12最初发送的信号的真逻辑值对应的逻辑值。从每个同步器20输出的信号可以被功能单元24接收。
图2是同步器的一个实施例的图。在所示出的实施例中,同步器20包括多个锁存器21,其中每个锁存器被耦合以从共同的(即相同的)输入29接收数据。在所示出的实施例中,同步器20包括M+1个锁存器21,其中M是至少为一的整数。锁存器21中的每个锁存器的输出耦合到多路复用器24的对应的输入。多路复用器24也被耦合以接收对应数目的选择信号,并且在这个实施例中,多路复用器24被实施为独热(one-hot)多路复用器。因此在任何给定的时间,仅有一个锁存器输出被选择以传递数据到多路复用器24的Q输出。
锁存器21中的每个锁存器可以响应于在锁存器各自的输入上接收时钟脉冲以锁存数据。这里使用的术语“latch(锁存)”在用作动词时可以被定义为当存储电路透明因此能够接收数据时将数据输入到存储电路。术语“透明(transparent)”当用在这里时可以指当数据可以被写入存储元件时以及当先前存储的数据可以被覆写时存储元件的状态,而“非透明(non-transparent)”可以指其中即使在存储单元的数据输入上存在新数据,新数据也可能不覆盖当前存储的数据的存储单元的状态。当“锁存器(latch)”在这里用作名词时,可以被定义为具有单级的时钟控制的存储元件。在这里讨论的时钟信号可以是短脉冲(例如,小于50%的占空比),所以单状态锁存器可以起到触发器的功能。即,当时钟转换为高电平时它们可以锁存数据并且可以在时钟周期的剩余部分(包括当时钟再次降为低电平时)在它们的输出上保持该锁存值。因此,这里描述的锁存器可以区别于传统的触发器,传统的触发器在这里可以被定义为具有两个不同的级的存储元件(并且其可以由串联耦合的两个锁存器构造而成)。
同步器20被布置以使得在任何给定的时间锁存器21中仅有一个锁存器透明。此外,同步器20被布置以使得其中的锁存器21按照轮流(rotating)的次序,或换句话说,按照重复的顺序变为透明。例如,在具有四个锁存器实例21(表示为锁存器0、锁存器1、锁存器2和锁存器3)的实施例中,锁存器0可以第一个变为透明,而其他三个锁存器保持为非透明。锁存器1可以是变为透明的下一个锁存器,锁存器0、锁存器2和锁存器3保持为非透明。接着是锁存器2变为透明、其他三个锁存器保持为非透明,然后锁存器3变为透明、其他三个锁存器保持为非透明。然后该顺序自身可以重复,再从锁存器0开始。因此同步器20可以被认为具有在共同输入29和多路复用器24(下面讨论)的输出‘Q’之间并联耦合的多个数据通路,其中在任何给定时间仅有一个数据通路的锁存电路是活动的,以及数据通路的锁存电路按照重复的顺序被激活。同步器20的结构还可以被认为类似于先进先出(FIFO)存储器,其中数据按照顺序的次序被写入给定的位置(在这个实例中为锁存器21),并且接着按照相同的顺序的次序从相同的位置被读取。锁存器21中的每个锁存器可以被由控制电路25输出到锁存器各自的时钟输入的对应的逻辑‘1’激活。例如,在第一周期期间控制电路25可以在Clk_L0P上输出逻辑‘1’到锁存器0,而逻辑‘0’可以被输出到其他锁存器中的每一个的时钟输入。逻辑‘1’可以在Clk2P的每个连续周期上从一个锁存器的时钟输入前进到下一个。在给定的序列期间被激活的锁存器的总数目可以取决于控制逻辑25中可调节反馈环路的设置。取决于该可调节反馈环路的长度,环路中的逻辑‘1’将循环经过M个、M-1个…2个或1个锁存器位置。
由于通过共同输入29接收的进入的数据未同步到第二时钟信号Clk2P,因此携带数据的信号可以在不具有适量的建立/保持时间的情况下到达锁存器21中的透明的一个锁存器的输入。相应地,锁存器21中透明的一个锁存器可能不能,至少最初不能正确地解释进入的逻辑值,并且可能进入亚稳定的状态。但是,在相同的锁存器21处于非透明的剩余的时钟周期内,相同的锁存器21可以解决亚稳态,从而为接收的数据稳定在特定的逻辑值上。通常来说,针对上面讨论的重复的序列的给定数量的时钟周期,特定的锁存器可以在特定时钟周期中的一个周期上锁存数据,并且可以在剩余的时钟周期上解决出现的任何亚稳态。如下所讨论,数据被写入特定锁存器的时间和数据从该特定锁存器被读取(通过使得多路复用器选择它的输出)的时间之间的时钟周期的数目可以是可调的。
在控制电路25的控制下锁存器21可以变为透明或者非透明。特别地,控制电路25被配置为按顺序地向锁存器21提供时钟脉冲。第一锁存器21被耦合以从控制电路25接收第一时钟脉冲Clk_L0P,而第M+1锁存器被耦合以从控制电路25接收时钟脉冲Clk_LM。另外,控制电路25被配置为一次仅向一个锁存器21提供时钟脉冲。相应地,在任何给定的时间,不超过一个锁存器21是透明的。此外,如果向锁存器提供的时钟脉冲具有小于50%的占空比(如在这个实施例中),那么在时钟脉冲之间的那些时间,锁存器21中没有一个锁存器是透明的。可以按照重复的顺序向锁存器21提供时钟脉冲。例如,锁存器0可以接收第一时钟脉冲,锁存器1(未示出,但应理解为是存在的)可以接收第二时钟脉冲,以此类推到锁存器M。还要注意的是,控制电路25是可配置的以调整在操作期间可以被激活的若干锁存器。例如,如果同步器20的实施例包括八个锁存器,则针对一个特定的操作配置,其控制电路25可以是可调的以使得锁存器中的仅仅四个锁存器被激活。对被激活的锁存器的数目的调整可以通过控制电路25的这里被标记为‘调整’的编程输入来编程。
在图2中示出的控制电路25可以按照与锁存器21被激活的顺序相对应的顺序,将向多路复用器24提供的选择信号置位(assert)。通常来说,多路复用器24可以首先置位Sel0(以选择锁存器0的输出),下一个置位Sel1(以选择锁存器1的输出),以此类推。但要注意的是,给定的选择信号被置位的周期可以不同于它对应的锁存器被激活以锁存数据的周期。例如,锁存器0可以在第一周期期间变为透明,而在第一周期之后的一个或多个周期时可以由Sel0的置位选择Latch0_Out。在特定的锁存器21被激活以锁存数据的时间和锁存器的输出随后被多路复用器24选择的时间之间的周期的数目是同步器20的另一个可调的参数,其可以通过输入‘调整’编程。通常来说,在给定的锁存器21被激活以锁存数据的时间和该给定的锁存器21的输出被多路复用器24选择的时间之间的周期的数目可以在由整个序列期间要被激活的锁存器21的数目限制高位端的范围内变化。例如,如果在给定的序列期间四个锁存器21被激活,则该给定的序列占用四个操作周期。在这四个操作周期内,在给定的锁存器已经被写入的周期之后的或一个、或两个或三个操作周期时(取决于通过‘调整’输入是如何编程的),多路复用器24可以选择给定的锁存器的输出。选择写入数据到锁存器21和从相同的锁存器21读取数据(通过多路复用器24选择它的输出的方式)之间的操作周期的数目的这种延迟可以为解决当不具有最佳的建立和保持时间量的情况下锁存数据时可能出现的亚稳态问题留出时间。
控制电路25的操作可以相似于用于为FIFO生成读取和写入指针的电路的操作。写入指针可以对应于生成向锁存器21中对应的锁存器提供的时钟脉冲的信号。读取指针可以对应于生成到多路复用器24的选择信号的信号。这些信号之间在时间上的间隔可以以与读取和写入指针的间隔相似的方式来设置以确保存储位置(在这个实例中为锁存器21)在它被读取之前不被覆写。
各种类型的电路可以用于实施控制电路25。在一个实施例中,一个或多个移位寄存器可以用于生成一个信号或多个信号,该信号导致将到锁存器21的时钟脉冲置位和将提供给多路复用器24的选择信号置位。在一个示例性实施例中,控制电路25可以包括第一移位寄存器以生成时钟脉冲并且第二移位寄存器可以用于生成选择信号。移位寄存器中的每个移位寄存器可以利用将单个逻辑1置于一个位置并且将逻辑0置于剩余位置中的每个位置来种子化。移位寄存器还可以包括可调的反馈以便实施被选择的序列。来自移位寄存器中的第一移位寄存器的逻辑1可以用于生成时钟脉冲以提供给当前被选择的锁存器21,而来自移位寄存器中的第二移位寄存器的逻辑1可以用于将提供给多路复用器24的选择信号置位。逻辑1在第一和第二移位寄存器中的相对位置可以是不同的以使得给定锁存器21的输出不在该锁存器为透明的相同周期期间被多路复用器24选择。
在其他实施例中,可以用单个移位寄存器和附加的支持性的组合逻辑、状态机,通过执行指令的处理器、或任何其他合适的硬件和/或软件来实施控制电路25。通常来说,控制电路25可以以任何可以提供所要求的序列的方式和/或任何类似于为FIFO生成读取和写入指针的方式的方式来实施。此外,控制电路25可以被实施以使得它是可编程的以控制在一系列操作期间被激活的可用锁存器的特定数目、以及控制在数据被写入给定锁存器的时间和数据从该给定锁存器被读取的时间之间的操作周期的数目。
控制在锁存器被写入的时间和被读取的时间之间的周期的数目、以及在给定的序列期间内被激活的锁存器的数目可以为特定的应用优化同步器20的使用。例如,在可容忍较高的比特误差率(BER)的应用中,可以为亚稳态解决分配较少的周期,从而允许更大的数据吞吐量。这还可以允许较少的锁存器在给定序列期间内被激活。相反地,在保持低的BER是期望的应用中,可以为亚稳态解决分配较多的操作周期。相应地,在这样的序列的过程中更多的锁存器可以被激活。通常来说,控制电路25的可编程性可以允许精细调节它的操作以达到BER和数据吞吐量之间的最佳折衷。
除了提供选择锁存器的输出以传递数据到触发器28的功能之外,在示出的实施例中的多路复用器24还可以满足最小延迟填充(min-delaypadding)的需求。即,多路复用器24可以消除可以导致竞态条件(racecondition)的快速路径,在该竞态条件中信号可以通过多个存储元件无意地传播从而引起下游错误的电路操作。由于多路复用器24可以在给定锁存器透明的时间之后的操作周期期间内选择给定锁存器21的输出,因此可以有效地阻止可能导致竞态条件的信号传播。
由于可以利用并联的单级锁存器,而不是串联的多级触发器来实施同步器20,因此可以节省电路面积。更具体地,由于触发器通常需要两个锁存器,因此相对于用在同步器20中的锁存器的数量,两倍数量的锁存器可以用于实施串联同步器。此外,由于在串联同步器的级之间可以实施延迟元件,因此相对于同步器20可以占用额外的面积,因为多路复用器24可以实施最小时间延迟填充。由于串联同步器中的延迟元件对解决亚稳态没有贡献,因此该延迟元件可能浪费时间。相应地,通过在并行数据通路中实施锁存器并且使用多路复用器24以提供最小时间延迟填充,同步器20可以减少对亚稳态解决不提供贡献的电路元件的数目。
如上所述,在示出的实施例中的同步器20包括耦合到多路复用器24的Q输出的触发器28。在一些实施例中,触发器28是具有两个串联耦合的锁存器27的主从触发器。第一寄存器27(具有耦合到多路复用器的Q输出的D输入)在CLk2P处于低电平的部分期间被布置为透明。第二锁存器在Clk2P处于高电平的部分期间被布置为透明。在一些实施例中,触发器28可以进一步被布置为边缘触发锁存器,其中在锁存器27中给定的一个锁存器中的数据转换响应于时钟沿发生而不是响应于接收的时钟信号的电平发生。
图3是进一步说明同步器20的操作的时序图。在图3中示出的实例可以应用到同步器20的不只一个实施例中。图3可以应用到具有四个数据通路的实施例中,其中每个数据通路在所说明的序列期间被启用,并且在实施例中上面讨论的反馈通路可以是固定的或可调的。图3还可以应用到同步器20的可调反馈实施例中,其具有多于四个的数据通路,但其中仅四个数据通路被启用。不考虑图3被应用到的特定实施例,这里示出的实例包括数据通路的操作,数据通路包括四个锁存器(锁存器0-锁存器3),以及具有四个选择输入(Sel0-Sel3)的多路复用器,在给定时间四个选择输入中仅有一个被置位。锁存器0-锁存器3中的每个锁存器可以接收基于接收时钟域的时钟信号Clk2P生成的时钟脉冲Clk_L0P-ClkL3P中对应的一个时钟脉冲。
图3中说明的序列的迭代1开始于在周期A期间在锁存器0的时钟输入上时钟脉冲Clk_L0P的置位。响应于接收时钟脉冲,锁存器0变为透明并且保持这样直到时钟脉冲降为低电平。在时钟脉冲降为低电平之后,锁存器0为非透明。如果在无合适的建立和保持时间的情况下,锁存器0在其为透明的阶段内接收数据,那么在周期A期间锁存器0可能最初就处于亚稳定的状态。但是这种亚稳态可以在周期A的剩余期间以及在随后的Clk_L0P不活动的周期内被解决。在这个特定实例中,由(1)所示,在周期D(即Clk_0P被置位之后的三个整周期)的开始处,Sel0被置位。相应地,提供三个整周期以供解决亚稳态,即从周期A开始处锁存器0最初变为透明的时间到在周期D中数据被读取的时间。
在迭代1中周期B的开始处,Clk_L1P被置位使得锁存器1变为透明。如(2)所示,Sel1在三个周期之后的迭代2的周期A中被置位。类似地,Clk_2P在迭代1的周期C期间被置位,Sel2在三个周期以后的迭代2的周期B期间被置位,如(3)所示。Clk_3P在迭代1的周期D开始处被置位,Sel3在三个周期之后的迭代2的周期C中被置位,如(4)所示。通常来说,图3说明了一个示例性场景,其中在给定的操作周期上数据被写入锁存器并且在3个周期之后数据从相同的锁存器被读取。因此,在所说明的序列期间,从写入锁存器的开始到从锁存器读取的开始,过去了三个操作周期。在这个分配的时间内,如果在不具有最佳定时的情况下接收数据可能出现的锁存器中的亚稳态可以被解决。
此外,图3的Sel0、Sel1、Sel2和Sel3可以向右移位单个周期。这为在每个锁存器21中的亚稳态解决提供了两个周期。移位两个周期则提供亚稳态解决的三个周期。移位三个周期则提供亚稳态解决的四个周期。以这种方式,可以以额外的延迟为代价调整总体电路的BER。
在实施同步器20的系统的操作期间,图3中示出的迭代可以无限期地重复。针对每个迭代,序列可以保持相同,因此可以提供基本上相同的时间量给锁存器中的每个锁存器以解决在数据最初被锁存时可能出现的任何亚稳态问题。要注意亚稳态可能不会在给定的锁存器透明时的所有情况下出现,但是由于输入数据与第二时钟信号Clk2P没有任何关系,因此存在亚稳态将在一些情况下出现的非零概率。
现在转到图4,用于同步器20的锁存器21的一个实施例的示意图被示出。在所示出的实施例中,锁存器21包括真数据输入D、互补输入DX和时钟输入Clk_P。如上所述,真输入信号和互补输入信号可以由电平移位电路15提供,下面进一步进行详细讨论。
在所说明的实施例以及这里讨论的其他电路实施例中,用‘P’标示的晶体管(例如P1)是P沟道金属氧化物半导体(PMOS)晶体管。用‘N’标示的晶体管(例如N1)是N沟道金属氧化物半导体(NMOS)晶体管。但是要注意的是,这里讨论的各种电路的实施例可以用其他类型的晶体管来实施。相应地,本公开不意图被限制在这里明确讨论的实施例中。
在示出的实施例中的锁存器21在ClkP是高电平时被配置为透明。当ClkP是高电平时,在晶体管N1的栅极端上接收逻辑高,而逻辑低经由反相器I1提供给晶体管P2。当ClkP是低电平时,锁存器21非透明因此没有数据可以被锁存到锁存器21。
当锁存器21透明时,如果DX是低电平并且D是高电平,则晶体管P1可以被激活。节点S1可以通过经由P1和P2的上拉通路被拉至Vdd2。晶体管N4响应于输入D上的高电平可以被激活。节点S2可以通过N3和N4被拉低到地电平。锁存器21的存储元件,其包括交叉耦合的反相器I3和I4,可以覆写先前存储的数据并且在ClkP降为低电平后保持S1上的高电平和S2上的低电平。如果DX是高电平并且D是低电平,则S1可以通过N1和N2被拉低,而节点S2可以通过P3和P4被拉高。锁存器21的输出可以从节点S2通过反相器I2被传送,并且只要输入数据已经被写入存储单元,锁存器21的输出可以逻辑等值于D输入。
在锁存器21中接收真数据和互补数据的一个优点是,在向其中的存储单元写入数据期间,电路的一部分将开始将一个存储节点拉高到Vdd2,基本上在相同时间电路的其他部分开始将其他存储节点拉低到地电平。为了实现对真数据值和互补数据值的近似同时的接收,电平移位电路15的各种实施例可以与锁存器21结合使用。现在转到图5,说明电平移位电路15的一个实施例的逻辑框图被示出。
在图5的实例中,电平移位电路15被耦合以接收来自生成电路13的真数据D和互补数据DX。电平移位电路15的晶体管处于由Vdd2供电的接收电压域中,而生成电路13的晶体管处于由Vdd1供电的发送电压域中。在一些情况下,Vdd1可能大于Vdd2,而在其他情况下,Vdd2可能大于Vdd1。相应地,在图5中示出的电路中以及下面讨论的其他电平移位电路实施例中的晶体管,可以被相应地调整以按要求上移或下移逻辑电压。
在所说明的实施例中的电平移位电路15实施包括或非(NOR)门NOR1和NOR2的置位-复位(SR)锁存器。通过将存储元件实施为SR锁存器,可以在不造成过压保护(crowbar)电流的情况下写入(或覆写)状态。此外,电路可以被布置以使得状态节点S1和S2的转换近乎同时地发生(例如,彼此在10皮秒内)。因此,电平移位电路15的输出D和DX(分别经由反相器17和18发送)可以基本上同时地转换。因此,耦合以接收来自电平移位电路15的输出D和DX的锁存器21可以检测出它的输入的基本上同时的转换,从而可以提供上面所讨论的优点。
图6A是说明逻辑上等同于在图5中示出的电平移位电路15的电平移位电路的一个实施例的示意图。在示出的实施例中,电平移位电路15A包括由第一和第二NOR门形成的状态元件。第一NOR门由晶体管N5、N6、P5和P6形成。第二NOR门由N7、N8、P7和P8形成。经由反相器I10提供电路的真输出,而经由反相器I9提供电路的互补输出。电平移位电路15的晶体管可以被调整以将输入信号移位到更高的电压域(当Vdd2>Vdd1)或更低的电压域(当Vdd2<Vdd1)。
电平移位电路15A的布置可以在内部状态节点S1和S2从一个状态到另一状态的转换期间阻止过压保护电流出现。此外,电路的布置还可以减小当真输出和互补输出的对应的输入在不同时间到达时真输出和互补输出的转换时间之间的差异。
电路的左半部分(包括P5、P6、N5和N6)由真输入节点控制,而电路的右半部分(包括P7、P8、N7和N8)由互补输入节点控制。当如图5所示与生成电路13配对时,新数据可以略早于到达真输入节点而到达互补输入节点。
现在解释电路的操作,开始于节点S1和真输入节点的初始条件处于逻辑低的状态,而节点S2和互补输入节点中的每一个处于逻辑高的状态。当S1和真输入节点两者均是低电平时,P5和P6两者均是活动的以将节点S2拉至逻辑高的状态。当S2是高电平时,晶体管N7是活动的以拉低S1。当互补输入节点是高电平时,晶体管N8是活动的,也拉低S1。
当逻辑低到达互补输入节点时,逻辑低可以激活晶体管P8,而去激活晶体管N8。由于晶体管N7仍是活动的,因此节点S2初始保持在低电平的状态。当逻辑高到达真输入节点时,晶体管N5被激活而晶体管P6被去激活。对晶体管P6的去激活阻断通过P5和P6的上拉通路,而对N5的激活在S2和地之间生成一个下拉通路。相应地,S2被拉低,因此导致对P7的激活。当P7被激活时,在S1和Vdd2之间生成一个上拉通路,这部分由于当在互补输入节点上接收低电平时对P8的先前的激活。由于从S1到Vdd2的上拉通路直到S2被拉低时才被激活,因此在真输出节点和互补输出节点的转换之间的时间量可以相对于接收对应的输入之间的时间量被减少。
如上所述将S1写为逻辑高并且将S2写为逻辑低之后,逻辑高可以在互补输入节点上被接收,其后不久逻辑低在真输入节点上被接收。响应于在互补输入节点上的逻辑高,晶体管P8被去激活,而晶体管N8变为活动的并且使得S1被拉低。当S1被拉低时,晶体管P5被激活。当真输入降为低电平时,晶体管P6被激活,从而在S2和Vdd2之间形成一个上拉通路。在这个段落中描述的操作中,互补输出节点可以略早于真输出节点进行转换。但是,如果激活N8的延迟足够大,那么如果在N8是充分活动的并且使得S1被拉低之前真输入节点降为低电平,则在转换时间上的差异可以被最小化。
图6B是电平移位电路的另一个实施例的示意图。类似于电平移位电路15A,电平移位电路15B包括第一NOR门(由N10、N12、P9和P10形成)和第二NOR门(由N14、N16、P11和P12形成)。电平移位电路15B还包括四个额外的NMOS晶体管N9、N11、N13和N15,以及两个额外的反相器I13和I14。额外设备的作用可以是相对于在图6A中示出的实施例减少输出的转换之间的时间量。这可以至少部分地通过使得内部状态节点与先前讨论的实施例中的相比更快地被上拉来实现。
可以通过晶体管N9和N14减少上拉时间。如果互补输入节点转为高电平,则晶体管N9被导通并且节点S2被上拉到近似为Vdd2-Vth的电压,其中Vth为晶体管阈值电压。当P9和P10随后被激活时,可以将S2上拉剩余的部分到近似为Vdd2的电平。类似地,当逻辑高到达真输入节点上时,N15被激活并且将S1上拉到近似为Vdd2-Vth的电平。响应于对晶体管P11和P12的激活,可以将节点S1上拉剩余的部分到近似为Vdd2的电平。由于晶体管N9和N15将它们各自耦合的内部状态节点上拉一部分到近似于Vdd2-Vth,因此一旦耦合到各自的状态节点的PMOS上拉通路被激活,上拉操作的剩余部分可以更快地发生。
拉低内部状态节点可以通过使用晶体管N16和N10来实现。当互补输入节点转为高电平时,晶体管N16被激活。由于S1也是高电平(S1的高电平被I11反相为低电平,并且被I14再反相为高电平,其驱动N13的栅极),因此在互补输入节点的电平转换之前晶体管13是导通的。因此,当晶体管N16被激活时,在S1和地之间提供一个下拉通路,并且作为结果P9也被激活。互补节点转为高电平也使P12去激活,切断Vdd2和节点S1之间的上拉通路,从而避免过压保护电流。当真输入节点降为低电平时,P10被激活。因此,S2被上拉至Vdd2,这又引起N14的激活以及S1和地之间的第二下拉通路的生成。当S1降为低电平时,I11输出逻辑高,逻辑高被I14再次反相为逻辑低。当I14的输出降为低电平时,晶体管N13被去激活,但由激活的N14将S1仍然保持为低电平。
下拉S2可以以类似的方式实现。在真输入节点转为高电平时,N11是活动的,因此N10的激活在S2和地之间生成一个下拉通路。这又造成P11的激活、以及S1和Vdd2之间上拉通路的生成,因为P12通过与真输入转为高电平相呼应的互补输入降为低电平被激活。响应于S1被拉高,晶体管N12被激活以生成在S2和地之间的第二下拉通路。同时,S2的低电平被I12反相为高电平并且被I13再次反相为低电平,从而去激活N11。此后S2被N12保持为低电平直到输入的下一次转换为止。
图6C说明电平移位电路的第三个实施例。电平移位电路15C包含来自先前讨论的实施例的特征。但是在电平移位电路15C中,输出信号从单节点(在这个实例中为S2,但可以构造输出从S1导出的相似的实施例)导出。结合单节点导出的输出但不具有在电平移位电路15B的讨论中介绍的额外设备的电平移位电路的实施例也是可能的和预期的。
在这个实施例中,电平移位电路15C的互补输出DX逻辑上等同于节点S2。相应地,S2经由反相器I16和I17耦合到互补输出节点。节点S2经由I15和非反相的传输门PG1耦合到真输出节点。相对于包括反相器但不包括传输门的实施例,在一个输出通路中使用两个反相器并且在其他的通路中使用传输门-反相器的组合可以减少延迟。因此,在从S2到真输出和互补输出两者的传播延迟上的差异可以是可忽略的。此外,在其中输出电路被布置为电平移位电路15C中的电路的实施例中,进程、电压和温度变化较不可能影响在真输出和互补输出之间的相对转换时间上的差异。
如前所述,上面所讨论的各种电平移位电路的实施例可以被优化以便与也在上面讨论的锁存器21一起使用。更具体地,当由锁存器21从这里公开的电平移位电路中的一个电路接收信号时,通过最小化真信号和互补信号的转换之间的任何时间差,可以有助于解决亚稳态。使用上面讨论的电平移位电路中的任何电平移位电路的集成电平移位/锁存电路的实施例因此是可能的和预期的。
现在转到图7,说明操作同步器的方法的一个实施例的流程图被示出。这里所讨论的方法700可以与同步器20的任何变体以及它可以被实施的各种电路一起使用。此外,方法700可以通过利用未在这里明确讨论的硬件实施。
方法700开始于向同步器的第一锁存器提供时钟脉冲(框705)。该锁存器是在同步器的两个或更多个并行数据通路中实施的两个或更多个对应的锁存器中的一个锁存器。第一锁存器可以接收排斥所有其他数据通路中的锁存器的时钟脉冲。当第一锁存器接收时钟脉冲时,锁存器变为透明并且因此可以锁存在它的输入上接收的数据。
选择信号被提供给多路复用器作为它的活动的输入,以选择下一个被读取的锁存器的输出(框710)。对下一个被读取的锁存器的输出的选择于第一锁存器接收时钟脉冲同时发生。下一个被读取的锁存器于第一锁存器不同,并且可以存储着被写入其中的先前的值。当下一个被读取的锁存器的输出被选择时,先前被写入其中的数据可以通过多路复用器传递。被选择的锁存器也可以已经将它的状态从如果在不具有最佳的建立和保持时间的情况下接收数据可能出现的亚稳定状态中解脱出来。
在第一时钟脉冲降为低电平之后,第二时钟脉冲被提供给第二锁存器(框715),该第二时钟脉冲排斥其他并行数据通路中的锁存器。在这个时候第二锁存器也可以锁存数据,而第一锁存器可以正在解决从先前的时钟周期中存在的任何亚稳态问题。将第二时钟信号进行置位的同时,第二选择信号可以被置位以使得多路复用器选择不同于第二锁存器的另一被读取的锁存器的输出(框720)。当第二选择信号被置位时,先前被锁存到锁存器的数据可以通过多路复用器传递。
如果同步器仅包括两个数据通路,或仅使用多于两个可用数据通路中的两个数据通路(框725,否),那么该方法返回到框705。如果多于两个数据通路在同步器操作中被使用,那么该方法继续前进到框730,在框730中另一时钟脉冲被排他地提供给另一数据通路的锁存器。该锁存器可以响应于该时钟脉冲锁存数据。同时地,选择信号可以被提供给多路复用器以选择这又一个被读取的锁存器的输出(框735)。该方法然后可以继续回到框725。对每个附加的锁存器,框730和框735可以被重复。一旦同步器已经循环通过写入和读取数据通路中的每个通路的锁存器,方法700可以返回到框705并且整体重复它自身。
图8是说明用于从第一电压/时钟域发送信号到第二电压/时钟域的方法的一个实施例的流程图。方法800可以与上面讨论的电路/硬件实施例中的任何实施例以及这里未明确提到的实施例一起使用。
方法800开始于将在第一时钟/电压域中的单端数据信号转换为具有真信号和互补信号的差分数据(框805)。在转换为差分数据之后,真信号和互补信号可以从第一时钟/电压域被发送到第二时钟/电压域(框810)。假设第一和第二时钟/电压域的供给电压不同,真信号和互补信号中的至少一个信号的电压电平可以被移位(框815)。在一些实施例中,两个电压域可以共享共同的地,因此可以对高信号实施移位,而不对低信号实施。
在电平移位之后,差分数据信号可以被接收并且锁存到同步器的锁存电路(框820)。锁存电路以及在其中实施锁存电路的同步器可以被优化以解决如果在不具有适量的建立和保持时间的情况下接收差分数据信号可能出现的亚稳态。可以在同步器中使用的M个并行数据通路中的一个数据通路中实施锁存,并且可以将M个时钟周期分配给锁存器以解决亚稳态。在M个时钟周期经过之后,同步器可以输出数据作为单端数据(框825),其后该数据可以由第二时钟/电压域中的功能单元接收以供进一步的处理(框830)。
要注意的是,在这里公开的同步器可以用于信号从一个时钟域跨越到另一时钟域而未从一个电压域跨越到另一电压域的实施例中。在这样的实施例中,类似于电平移位电路15、15A-15C以及其变体的电路可以与诸如锁存器21之类的锁存器或其他适合的锁存电路一起使用以优化亚稳态的解决,而不执行电平移位操作。
虽然参考特定的实施例已经描述了本发明,但将理解的是,实施例是说明性的并且发明范围并不限于此。对所述实施例的任何改变、修改、增加和改善是可能的。这些改变、修改、增加和改善可以落在如下面的权利要求详细描述的本发明的范围内。
Claims (20)
1.一种电路,包括:
M+1个的多个锁存器,每个锁存器被耦合以通过共同的数据输入接收数据;
具有M+1个输入和一个输出的多路复用器,每个输入被耦合以从该M+1个锁存器中对应的一个锁存器的输出接收数据,其中该多路复用器被配置为选择它的输入中的一个输入以耦合到该输出;和
控制电路,其被配置为使得该多路复用器响应于M+1个连续的时钟脉冲按顺序地选择该M+1个锁存器的输出,并且进一步被配置为使得该M+1个锁存器按顺序地锁存通过该共同的数据输入接收的数据。
2.如权利要求1所述的电路,其中该M+1个锁存器中的每个锁存器包括时钟输入,并且其中该控制电路被配置为响应于该N个连续的时钟脉冲中的一个时钟脉冲将脉冲提供给该M+1个锁存器中被选择的一个锁存器。
3.如权利要求2所述的电路,其中该M+1个锁存器中的每个锁存器被配置为响应于从该控制电路接收脉冲,锁存通过该共同的数据输入接收的数据,并且进一步被配置为在从没有该控制电路接收脉冲的周期期间禁止数据被锁存。
4.如权利要求2所述的电路,其中该控制电路被配置为响应于该N个连续的时钟脉冲中的一个时钟脉冲选择该M+1个锁存器中所述被选择的一个锁存器的输出,该一个时钟脉冲出现在该N个连续的时钟脉冲中的、在其期间数据被锁存到该M+1个锁存器中的所述被选择的一个锁存器中的所述一个时钟脉冲之后。
5.如权利要求4所述的电路,其中该控制电路是可调的以控制数据被锁存到该M+1个锁存器中的给定的一个锁存器中的周期和该M+1个锁存器中的该给定的一个锁存器的输出被该多路复用器选择的周期之间的时钟脉冲的数目。
6.如权利要求1所述的电路,其中响应于该N个连续的时钟脉冲中给定的一个时钟脉冲,该控制电路被配置为使得该M+1个锁存器中的第一锁存器锁存数据并且使得该多路复用器选择该M+1个锁存器中的第二锁存器的输出。
7.如权利要求1所述的电路,其中耦合到该M+1个锁存器中的每个锁存器的该共同的数据输入是包括真数据输入和互补数据输入的差分数据输入。
8.如权利要求4所述的电路,其中该多个锁存器中的每个锁存器被配置为提供单端数据输出。
9.一种方法,包括:
按顺序地选择多路复用器的输入,其中该多路复用器的输入中的每个输入耦合到M+1个锁存器中对应的一个锁存器的输出,其中该多路复用器包括M+1个输入,并且其中一次选择该输入中的一个输入;
按顺序地将数据锁存到该M+1个锁存器中的两个或更多个锁存器,其中该M+1个锁存器中的每个锁存器被耦合以通过共同的数据输入接收数据,并且其中该M+1个锁存器中的每个锁存器被配置为在与它的输出被选择为该多路复用器的输入时相同的时钟脉冲期间内,响应于接收两个或更多个连续的时钟脉冲中的特定一个时钟脉冲来锁存数据,其中数据被锁存到该M+1个锁存器中的该两个或更多个锁存器,一次锁存到一个锁存器。
10.如权利要求9所述的方法,进一步包括控制电路将脉冲提供给该M+1个锁存器中的第一锁存器,并且与将该时钟脉冲提供给该M+1个锁存器中的被选择的一个锁存器同时,提供使得该多路复用器选择该M+1个锁存器中的第二锁存器的该输出的选择信号。
11.如权利要求10所述的方法,进一步包括:
控制电路禁止脉冲被提供给该M+1个锁存器中的每个未被选择的锁存器;以及
当没有时钟脉冲被提供给未被选择的锁存器时,该未被选择的锁存器中的每个锁存器禁止数据被锁存到其中。
12.如权利要求9所述的方法,进一步包括:
向该共同的数据输入提供作为具有真逻辑值和互补逻辑值的差分信号的数据;
从该多路复用器的输出提供作为具有真逻辑值的单端信号的数据。
13.如权利要求9所述的方法,进一步包括:
该控制电路使得该多路复用器在数据被锁存到该M+1个锁存器中给定的一个锁存器之后的一个或多个周期时,选择该M+1个锁存器中该给定的一个锁存器的输出;以及
使得该控制电路改变在数据被锁存到该M+1个锁存器中该给定的一个锁存器的时间和该多路复用器选择该M+1个锁存器中该给定的一个锁存器的该输出的时间之间的周期的数目。
14.一种同步器,包括:
在共同的数据输入和多路复用器的输出之间并联耦合的M+1个的多个数据通路,其中该M+1个数据通路中的每个数据通路包括M+1个锁存电路中的一个电路,每个锁存电路被耦合以从该共同的数据输入接收数据并且每个锁存电路具有耦合到该多路复用器的M+1个输入中对应的一个输入的各自的输出,其中该多路复用器被配置为响应于接收M+1个选择信号中对应的一个选择信号来选择它的M+1个输入中的一个输入;
控制电路,其被配置为使得该M+1个锁存电路中的两个或更多个锁存电路按照重复的顺序一次一个地锁存数据,并且进一步被配置为使得该多路复用器按照该重复的顺序一次一个地选择该M+1个锁存电路中的该两个或更多个锁存电路的输出,其中该控制电路被配置为使得该多路复用器在其中该M+1个锁存电路中给定的一个锁存电路被激活的操作周期之后的操作周期期间,选择该M+1个锁存电路中该给定的一个锁存电路的输出。
15.如权利要求14所述的同步器,其中该控制电路进一步被配置为使得该M+1个锁存电路中的未被选择的锁存电路禁止对数据的锁存。
16.如权利要求14所述的同步器,其中该共同的数据输入是具有真信号输入和互补信号输入的差分输入,并且其中该多路复用器的输出是具有真数据输出的单端输出。
17.如权利要求16所述的同步器,其中该M+1个数据通路中的每个数据通路的锁存电路被耦合以接收作为具有真逻辑状态和互补逻辑状态的差分信号的数据,并且其中该M+1个数据通路中的每个数据通路的锁存电路被耦合以在它的各自的输出上提供作为在真逻辑状态的单端信号的数据。
18.如权利要求14所述的同步器,其中该控制电路是可调的以在该重复的序列期间激活该M+1个锁存器中的、在两个到M+1个之间的任何整数数目的锁存器,其中M是大于一的整数。
19.如权利要求18所述的同步器,其中该控制电路被配置为在该重复的序列期间生成选择信号以便使得该多路复用器选择该M+1个锁存器中的在该重复的序列期间被激活的该特定的多个锁存器。
20.如权利要求18所述的同步器,其中该控制电路是可调的以控制数据被锁存到该M+1个锁存器中给定的一个锁存器的周期和该M+1个锁存器中该给定的一个锁存器的输出被该多路复用器选择的随后的周期之间的周期的数目。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/755,056 | 2013-01-31 | ||
US13/755,056 US9509317B2 (en) | 2013-01-31 | 2013-01-31 | Rotational synchronizer circuit for metastablity resolution |
PCT/US2014/014114 WO2014121057A1 (en) | 2013-01-31 | 2014-01-31 | Rotational synchronizer circuit for metastablity resolution |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105191205A true CN105191205A (zh) | 2015-12-23 |
CN105191205B CN105191205B (zh) | 2019-01-18 |
Family
ID=50102275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201480013914.XA Active CN105191205B (zh) | 2013-01-31 | 2014-01-31 | 用于亚稳态解决的循环式同步器电路 |
Country Status (5)
Country | Link |
---|---|
US (1) | US9509317B2 (zh) |
EP (1) | EP2951943B1 (zh) |
JP (1) | JP6397829B2 (zh) |
CN (1) | CN105191205B (zh) |
WO (1) | WO2014121057A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107592098A (zh) * | 2016-11-18 | 2018-01-16 | 上海兆芯集成电路有限公司 | 用于将数据信号寄存到时钟域的数据同步器 |
CN107729614A (zh) * | 2017-09-18 | 2018-02-23 | 北京空间飞行器总体设计部 | 一种可扩展的通用功能级异步电路 |
WO2021093700A1 (zh) * | 2019-11-14 | 2021-05-20 | 华为技术有限公司 | 一种电路以及电子设备 |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10110232B2 (en) * | 2015-06-30 | 2018-10-23 | Taiwan Semiconductor Manufacturing Company, Ltd. | Multiplexer and latch system |
CN105607689B (zh) * | 2015-12-22 | 2017-12-22 | 邓晨曦 | 高速多相时钟同步方法 |
KR102501754B1 (ko) * | 2016-03-28 | 2023-02-20 | 삼성전자주식회사 | 불균형 멀티플렉서 및 이를 적용하는 스캔 플립플롭 |
US9825636B1 (en) * | 2016-10-20 | 2017-11-21 | Arm Limited | Apparatus and method for reduced latency signal synchronization |
US20230268010A1 (en) * | 2022-02-18 | 2023-08-24 | Infineon Technologies LLC | Data path circuit and method |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5598113A (en) * | 1995-01-19 | 1997-01-28 | Intel Corporation | Fully asynchronous interface with programmable metastability settling time synchronizer |
US6137851A (en) * | 1998-02-13 | 2000-10-24 | Agilent Technologies | System and method for synchronizing a signal with respect to another signal |
US6819156B1 (en) * | 2001-11-26 | 2004-11-16 | Xilinx, Inc. | High-speed differential flip-flop |
US20080232179A1 (en) * | 2007-03-15 | 2008-09-25 | Micron Technology, Inc. | Circuit, system and method for controlling read latency |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5045801A (en) | 1990-05-29 | 1991-09-03 | The United States Of America As Represented By The Secretary Of The Air Force | Metastable tolerant asynchronous interface |
JPH07131302A (ja) * | 1993-11-08 | 1995-05-19 | Nec Corp | レジスタ回路 |
JP3696077B2 (ja) * | 2000-11-13 | 2005-09-14 | シャープ株式会社 | 電圧変換回路及びこれを備えた半導体集積回路装置 |
JP2002325041A (ja) * | 2001-04-25 | 2002-11-08 | Nec Corp | デコード回路及び符号変換回路と方法 |
JP4339145B2 (ja) * | 2004-02-18 | 2009-10-07 | 旭化成エレクトロニクス株式会社 | 同期化回路 |
DE102007059554A1 (de) | 2007-12-11 | 2009-06-25 | Robert Bosch Gmbh | Verfahren zur Ermittlung der Taktrate eines von einem Teilnehmer eines Kommunikationssystems empfangenen Datensignals, aktiver Sternkoppler zur Ausführung des Verfahrens und Kommunikationssystem mit einem solchen aktiven Sternkoppler |
-
2013
- 2013-01-31 US US13/755,056 patent/US9509317B2/en active Active
-
2014
- 2014-01-31 CN CN201480013914.XA patent/CN105191205B/zh active Active
- 2014-01-31 JP JP2015556166A patent/JP6397829B2/ja active Active
- 2014-01-31 EP EP14704509.0A patent/EP2951943B1/en active Active
- 2014-01-31 WO PCT/US2014/014114 patent/WO2014121057A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5598113A (en) * | 1995-01-19 | 1997-01-28 | Intel Corporation | Fully asynchronous interface with programmable metastability settling time synchronizer |
US6137851A (en) * | 1998-02-13 | 2000-10-24 | Agilent Technologies | System and method for synchronizing a signal with respect to another signal |
US6819156B1 (en) * | 2001-11-26 | 2004-11-16 | Xilinx, Inc. | High-speed differential flip-flop |
US20080232179A1 (en) * | 2007-03-15 | 2008-09-25 | Micron Technology, Inc. | Circuit, system and method for controlling read latency |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107592098A (zh) * | 2016-11-18 | 2018-01-16 | 上海兆芯集成电路有限公司 | 用于将数据信号寄存到时钟域的数据同步器 |
CN107592098B (zh) * | 2016-11-18 | 2019-04-30 | 上海兆芯集成电路有限公司 | 用于将数据信号寄存到时钟域的数据同步器 |
CN107729614A (zh) * | 2017-09-18 | 2018-02-23 | 北京空间飞行器总体设计部 | 一种可扩展的通用功能级异步电路 |
WO2021093700A1 (zh) * | 2019-11-14 | 2021-05-20 | 华为技术有限公司 | 一种电路以及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
US9509317B2 (en) | 2016-11-29 |
WO2014121057A1 (en) | 2014-08-07 |
US20140210526A1 (en) | 2014-07-31 |
EP2951943B1 (en) | 2022-09-07 |
JP2016509810A (ja) | 2016-03-31 |
EP2951943A1 (en) | 2015-12-09 |
JP6397829B2 (ja) | 2018-09-26 |
CN105191205B (zh) | 2019-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105191205A (zh) | 用于亚稳态解决的循环式同步器电路 | |
US8994402B2 (en) | Level shifter circuit optimized for metastability resolution and integrated level shifter and metastability resolution circuit | |
US8880965B2 (en) | Low power scan flip-flop cell | |
KR100631164B1 (ko) | 전력 소모를 줄인 레지스터 제어 지연고정루프 | |
JP5807333B2 (ja) | ディレイラッチ回路、および、ディレイフリップフロップ | |
KR100631166B1 (ko) | 지연고정 시간을 줄인 레지스터 제어 지연고정루프 | |
US10193539B1 (en) | High speed data synchronization | |
US6828837B2 (en) | Low power flip-flop circuit | |
US20120025870A1 (en) | Method and apparatus for voltage level shifting with concurrent synchronization | |
JP4986318B2 (ja) | 半導体装置 | |
US8587338B1 (en) | Method and apparatus for clocking | |
CN107567684A (zh) | 用于低功率应用的可编程延迟电路 | |
TWI528720B (zh) | 用於低擺時脈之免競爭位準轉換正反器 | |
CN109818598B (zh) | 一种触发器、触发器电路控制方法、芯片及电子设备 | |
US10339986B1 (en) | Data latch circuit and pulse signal generator thereof | |
US11863188B2 (en) | Flip-flop circuit including control signal generation circuit | |
US20040019830A1 (en) | Test apparatus of semiconductor integrated circuit with hold error preventing function | |
KR101699241B1 (ko) | 저전력, 고속 처리가 가능한 플립플랍 회로 | |
US20100289677A1 (en) | Circuit and method for parallel to serial conversion | |
US9515665B1 (en) | Selector circuit, equalizer circuit, and semiconductor integrated circuit | |
CN110390964B (zh) | 管道锁存器、使用管道锁存器的半导体装置和半导体系统 | |
US20230396241A1 (en) | Semiconductor Device and Semiconductor System Having The Same | |
JP7052971B2 (ja) | 半導体集積回路 | |
KR101025699B1 (ko) | 레벨 변환 플립플롭 | |
CN116913338A (zh) | 振荡信号生成电路及使用其的半导体装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |