用于管理时钟域边界之间的时钟偏移的方法和装置的制作方法

文档序号:6559734阅读:156来源:国知局
专利名称:用于管理时钟域边界之间的时钟偏移的方法和装置的制作方法
技术领域
本发明涉及当使用独立的时钟域来处理通过关键路径的数据时管理时钟偏移(clock skew)。
背景技术
在传统系统中,诸如使用LSI(大规模集成电路)电路实现的数字电路系统之类的数字电路系统经常使用系统时钟信号,以同步地执行某些逻辑功能。例如,超深亚微米(UDSM)微处理器使用利用系统时钟信号的数字电路系统来同步地执行逻辑功能。这些微处理器工作在1GHz以及更高的系统时钟频率上。给定LSI电路的系统时钟信号经常被划分为许多路径,以服务数字电路系统的许多不同部分。
因为数字电路正在变得更复杂,因此在所述电路内使用多个时钟频率正变得更常见。这允许例如所述电路的一部分工作在较低的频率上,由此降低所述电路中的功耗。但是,这可能要求通过时钟域边界传送数据,即从工作在第一频率的电路系统的一个部分到工作在第二频率的电路系统的另一个部分来传送。
理想的情况是,在数字电路系统的不同部分的系统时钟信号显示完全相同的定时特性,使得数字电路系统的不同部分完全同步地工作,即使当在电路的不同部分中使用不同的时钟频率时也是如此。但是,实际上,在通过数字电路系统的不同点的系统时钟信号展示不同的定时特性,诸如不同的上升和/或下降沿(即跳变)、不同的占空周期和/或不同的频率。这些非理想的特性经常被称为时钟抖动和时钟偏移。
时钟抖动涉及在产生系统时钟信号中固有的不准确性。由于时钟抖动而导致的系统时钟信号的非理想特性以相同的方式影响LSI电路的所有部分,而不管系统时钟信号如何被分布到所述电路的那些部分。时钟偏移涉及由分布技术引入系统时钟信号的不准确性,所述分布技术用于将系统时钟划分为许多路径,并且向数字电路的不同部分传递所述时钟信号。
可以将时钟偏移的来源划分为静态发生和动态发生。时钟偏移的静态发生来源由LSI设计或制造过程引起,而不管LSI电路的操作条件如何。时钟偏移的动态发生来源由LSI电路的操作条件引起,其也可以是LSI电路设计或制造过程的函数。
时钟偏移的静态发生来源包括(i)在晶体管负载电容中的变化(例如栅极负载电容);(ii)电路互连的RC延迟(例如导线长度和宽度的不对称性);(iii)在导线之间的交叉耦合电容(例如布线之间的电容)的变化和/或不对称性;以及(iv)半导体工艺变化(例如晶体管门限电压变化、晶体管导通电阻变化、布线变化、过孔和接触RC变化)。
时钟偏移的动态发生来源包括(i)由于布线之间的电容而导致的在导线长度之间的交叉耦合;(ii)由于电感性的耦合而导致的在导线长度之间的交叉耦合;(iii)由于返回路径电流而导致的交叉耦合;(iv)温度变化;以及(v)VDD和VSS的变化(例如直流工作电压变化)。
不幸的是,由于时钟偏移而导致的系统时钟信号中的定时特性的变化导致在LSI电路的数字电路系统的操作中不希望的误差。当遇到通过时钟域边界的跳变时,该问题恶化。
现在参见图1和图2A-B更详细地讨论由于时钟偏移而导致的上述困难。图1是在组合逻辑的相应级之间使用时钟域边界的数字系统10的方框图。所述系统10包括多个全锁存器电路12、16、20和多个组合逻辑电路14、18。(为了当前的讨论,假定延迟电路22、24不在系统10内)。全锁存器12可操作用于向组合逻辑14的第一级传送数据,而全锁存器电路16可操作用于向组合逻辑18的第二级传送数据。使用工作在第一频率(例如4GHz)的时钟A来为全锁存器电路12计时。使用工作在第二频率(例如2GHz)的时钟B来为全锁存器电路16计时。因此,全锁存器电路16在组合逻辑14的第一级和组合逻辑18的第二级之间建立时钟域边界,所述各个级工作在不同的频率上。
要明白,系统10可以包括进一步的组合逻辑级,为了简洁和清楚,未将它们示出。
图2A是图解当时钟A信号和时钟B信号涉及在组合逻辑14、18的第一和第二级之间的有效数据的可用性和传送时,所述时钟A信号和时钟B信号的定时特性的图。将首先介绍时钟A信号和时钟B(同步)信号,其中,时钟B(同步)信号表示理想情况,其中,时钟A信号和时钟B(同步)信号的上升沿精确地对齐。在时钟A信号的上升沿50上,全锁存器电路12按时钟传送数据到组合逻辑14。最短传播延迟Tp存在于从时钟A信号的上升沿50到来自组合逻辑14的有效输出数据A0的开始。数据A0有效,直到在时钟A信号的下一个上升沿52后的最短传播延迟Tp。
在时钟B(同步)信号的上升沿54,全锁存器电路16将在其输入处的数据(可以包括数据A0)传送到组合逻辑18。全锁存器电路16的建立时间Ts表示在时钟B(同步)信号的上升沿54之前的时间量,在此期间,数据A0必须在全锁存器电路16的输入处有效,以便适合的传送发生。保持时间Th表示在时钟B(同步)信号的上升沿54之后的时间量,在此期间,输出数据A0必须在全锁存器电路16的输入处保持有效,以便适合的传送发生。
因为在组合逻辑14的第一级中的数据的有效性改变之前在时钟A信号的上升沿50、52后总是存在某个最小的传播延迟Tp,所以当时钟B信号与时钟A信号同步时,典型地没有保持时间违反(violation)。
当考虑从组合逻辑18的第二级到由锁存器20表示的下一级的数据传送时获得类似的分析。具体来说,时钟B(同步)信号的上升沿56在全锁存器电路16的输入处,按时钟将数据传递进入组合逻辑18。在上升沿56后的最短传播延迟Tp之后,组合逻辑18的组合数据B0在全锁存器电路20的输入处变得有效。
在时钟A信号的上升沿58,全锁存器电路20将在其输入处的数据(可以包括数据B0)传送到下一级(未示出)的组合逻辑。全锁存器电路20的建立时间Ts表示在时钟A信号的上升沿58之前的时间量,在此期间,输出数据B0必须在全锁存器电路20的输入有效,以便适合的传送发生。保持时间Th表示在时钟A信号的上升沿58后的时间量,在此期间,输出数据B0必须在全锁存器电路20的输入依然有效以便适合的传送发生。
现在参见时钟B(滞后)信号,假定时钟B信号由于时钟偏移问题而滞后于时钟A信号。在此情况下,时钟B(滞后)信号的滞后的上升沿54A比时钟B(同步)信号的上升沿54迟发生显著的时间。当这种滞后具有显著的幅度时,输出数据A0在满足滞后的上升沿54A后的保持时间Th的显著长度时间可能不是有效的。因此,有效输出数据A0可能从未被传送到组合逻辑18的第二级。事实上,虽然可能满足全锁存器电路16的上升沿54A之前的建立时间Ts,但是输出数据A0的有效性在上升沿54A之后的保持时间Th之前期满。结果,全锁存器电路16不可以从组合逻辑14向组合逻辑18传送有效的输出数据A0。
对于从组合逻辑18到下一级的输出数据B0的传送,时钟B(滞后)信号实际上有助于提供另外的时间量,在其中,输出数据B0在时钟A信号的上升沿58后的保持时间Th期满后有效。但是,值得注意的是,时钟B(滞后)信号的滞后特性降低了建立时间——输出数据B0在上升沿58之前有效的时间量。在此示例中,这种降低将可能不违反全锁存器电路20在上升沿58之前的建立时间Ts要求。
现在转向时钟B(超前)信号的细节,假定时钟B(超前)信号的上升沿发生在时钟A信号的上升沿之前。关于输出数据A0,时钟B(超前)信号的超前特性有助于提供保持时间——其中输出数据A0在时钟B(超前)信号的上升沿54B后有效的时段。因此,时钟B(超前)信号的超前特性关于从组合逻辑电路14的第一级到组合逻辑18的第二级输出数据A0的传送将不出现引起保持时间问题。但是,值得注意的是,时钟B(超前)信号的超前特性降低了建立时间——其中输出数据A0在时钟B(超前)信号的上升沿54B之前有效的时间量。因此,有可能依赖于时钟B(超前)信号的超前特性的严重程度而可能发生建立时间问题。
时钟B(超前)信号的超前上升沿56B发生在时钟B(同步)信号的上升沿56之前显著长的时间。当这种超前具有相当大的幅度时,输出数据B0可能在满足在时钟A信号的上升沿58后的保持时间Th的显著长度时间不是有效的。结果,有效输出数据B0可能从未被传送到组合逻辑的下一级。事实上,虽然可能满足在全锁存器电路20的上升沿58之前的建立时间Ts,但是输出数据B0的有效性在时钟A信号的上升沿58之后的保持时间Th之前期满。结果,全锁存器电路20不可以从组合逻辑18向下一级传送有效的输出数据B0。
对于从如在时钟A和时钟B信号之间的时钟偏移现象引起的保持时间违反问题的一种传统解决方案是在组合逻辑14和组合逻辑18各自的数据路径中的某处使用延迟电路22、24。为了讨论的目的,将延迟电路22、24图解为被恰好插入各自的全锁存器电路16、20之前。参见图2B,延迟电路22的引入将输出数据A0的传播在时钟A信号的上升沿50的传播延迟Tp之后延迟数量Td。这保证了输出数据A0在时钟B(滞后)信号的上升沿54A后的另外的时段Td是有效的。因此,可以满足全锁存器电路16的保持时间Th,并且可以向组合逻辑18的第二级传送输出数据A0。
延迟电路24在全锁存器电路20之前的引入,在来自组合逻辑18的输出数据B0有效之前从时钟B(滞后)信号的上升沿56A测量的传播延迟Tp之后,引入延迟量Td。结果,在时钟A信号的上升沿58之前如有效输出数据B0的开始到建立时间Ts的开始之间的时间容限量显著地被减少。
当时钟B信号超前于时钟A信号时,延迟电路22对于输出数据A0的有效性的影响趋向于引起相对于时钟B(超前)信号的上升沿54B测量的关于全锁存器电路16的建立时间Ts违反。时钟B(超前)信号的超前特性可能趋向于改善关于相对于全锁存器电路20和时钟A信号的上升沿58的输出数据B0的有效性的建立时间特性,但是由延迟电路24引入的延迟否定了这样的改善。延迟电路24的引入可能提高在时钟A信号的上升沿58后输出数据B0有效的时间量,由此满足全锁存器电路20的保持时间Th。
虽然使用延迟电路来解决保持时间问题可能是有用的,但是存在建立时间违反的可能性的相应增加。而且,它们消耗了通过组合逻辑的各级的关键路径的大量的总体定时预算。理论上讲,由于延迟电路和时钟偏移而导致被引入特定级的总的延迟量应当是最大时钟偏移的两倍。这可能显著增加建立时间违反的发生,并且也显著降低整个系统的定时容限。

发明内容
按照本发明的一个或多个实施例,一种装置包括组合逻辑的至少第一和第二级;第一和第二全锁存器电路,可分别操作用于向组合逻辑的第一和第二级传送数据;以及第一透明锁存器电路,可操作用于从组合逻辑的第一级向所述第二全锁存器电路传送输出数据。
所述装置还可以包括第二透明锁存器电路,可操作用于传送从组合逻辑的第二级输出的数据。优选的是,使用第一时钟信号来计时第一全锁存器电路,并且优选的是,使用反相的第一时钟信号来计时第一透明锁存器电路。类似地,可以使用第二时钟信号来计时第二全锁存器电路,并且可以使用反相的第二时钟信号来计时第二透明锁存器电路。优选的是,第一时钟信号比第二时钟信号的频率更高。
所述装置还可以包括组合逻辑的多个级,每个级包括全锁存器电路,可操作用于向组合逻辑的给定级传送数据;以及透明锁存器电路,可操作用于从所述组合逻辑的给定级向所述各级的下一个传送输出数据。优选的是,使用公共时钟信号的反相形式来计时每个级的所述全锁存器电路和所述透明锁存器电路。可以以不同的频率计时相邻的各级。
要注意,组合逻辑的所述各级的至少一个可以包括数字逻辑门的多个分支,其中,每个分支对数据的各个输入流操作以产生数据的各个输出流。因此,优选的是,组合逻辑的所述至少一个级的全锁存器电路包括多个触发器,其中每个触发器将数据的输入流传送到所述级。类似地,优选的是,所述组合逻辑的所述至少一个级的透明锁存器电路包括多个半锁存器,其中,每个半锁存器向所述各级的下一个传送数据的输出流。
优选的是,第一透明锁存器可操作用于(i)当第一透明锁存器的时钟信号处于两个逻辑电平的第一个时,传送来自给定组合逻辑的输出数据的状态变化,而不管这样的变化何时发生;并且(ii)抑制(withhold)所述输出数据的状态变化,直到第一透明锁存器的时钟信号从所述两个逻辑电平的第二个跳变到第一逻辑电平。
按照本发明的一个或多个其他实施例,一种装置包括组合逻辑的多个级,每个级包括全锁存器电路,可操作用于向组合逻辑的给定级传送数据;以及透明锁存器电路,可操作用于向所述各级的下一个传送来自组合逻辑的所述给定级的输出数据。
按照本发明的一个或多个其他实施例,一种方法包括提供组合逻辑的多个级,每个级包括全锁存器电路,可操作用于向组合逻辑的给定级传送数据;在每个级中,当全锁存器电路的时钟信号处于两个逻辑电平的第一个时,传送来自给定组合逻辑的输出数据的状态变化,而不管这样的变化何时发生;并且在每个级中,抑制(withhold)所述输出数据的状态变化,直到全锁存器电路的时钟信号从所述两个逻辑电平的第二个跳变到第一逻辑电平。
当在此的本发明的说明与附图结合时,对于本领域内的技术人员来说,其他方面、特征、优点等将变得清楚。


为了图解本发明的各个方面,在附图中示出了当前优选的形式,但是要明白,本发明不限于在此示出的精确布置和手段(instrumentality)。
图1是按照现有技术的在组合逻辑的各个级之间使用时钟边界的系统的方框图;图2A和2B是图解在具有和不具有时钟偏移的图1的系统的数据有效性特性和时钟信号之间的关系的时序图;图3是按照本发明的一个或多个实施例的在组合逻辑的各个级之间使用时钟边界的系统的方框图;图4是按照本发明的一个或多个实施例的用于透明锁存器的真值表的图;图5是图解在具有和不具有时钟偏移的图3的系统的数据有效性特性和时钟信号之间的关系的时序图。
具体实施例方式
参见附图,其中相同的标号表示相同的元件,在图3中示出了按照本发明的一个或多个实施例的数字系统100。所述系统100包括多个级102A、102B、102C...,其中,每个级102包括组合逻辑110或112,可操作用于以期望的方式操纵数字数据。所述系统100还包括多个全锁存器电路104、106。所述全锁存器电路104可操作用于向组合逻辑110的第一级传送数据,而全锁存器电路106可操作用于向组合逻辑112的第二级传送数据。使用工作在第一频率(例如4GHz)的时钟A来计时全锁存器电路104。使用工作在第二频率(例如2GHz)的时钟B来对全锁存器电路106计时。因此,全锁存器电路106在第一级102A和第二级102B之间建立时钟域边界,所述各个级工作在不同的频率上。要注意,优选的是,在时钟A和时钟B之间存在关系,诸如时钟A频率是时钟B频率的整数倍,或时钟B频率是时钟A频率的整数倍。
要明白,系统100可以包括进一步的组合逻辑级,为了简洁和清楚,未将它们示出。
优选的是,每个级102还包括透明锁存器,其中,级102A包括透明锁存器电路114,级102B包括透明锁存器电路116等。参见图4,每个透明锁存器电路最好按照真值表工作,在所述真值表中,锁存器可操作来传送向其输入的数据的状态变化,而不管这样的变化何时发生,只要透明锁存器的时钟信号处于两个逻辑电平的第一个。在图4中所示的真值表中,第一逻辑电平可以是逻辑高,而第二逻辑电平可以是逻辑低。所述透明锁存器最好还抑制(withhold)向其输入的数据的状态变化,直到时钟信号从第二逻辑电平跳变到第一逻辑电平。因此,尽管从逻辑低到高或逻辑高到低的状态变化在时钟信号处于第一(例如高)电平时可以基本上立即地通过透明锁存器,但是当时钟信号处于第二(例如低)电平时所述状态变化被“保持”,直到这样的时钟信号跳变到第一逻辑。本领域内的技术人员将会理解,此真值表有时被称为“半锁存器”布局。
要注意到,为了简单,每个级的组合逻辑110、112等可以包括数字逻辑门的多个分支,其中,每个分支工作在各自的数据输入流上以产生各自的数据输出流。但是,为了简单,示出了单个线用作被输入到组合逻辑110、112的每个级,并且示出一条线离开每个级。然而假定数字逻辑的多个分支可以存在于组合逻辑的每个级内,要理解到,可以使用多个这样的锁存器电路来在各自组合逻辑电路中容纳数字逻辑的每个分支,以实现全锁存器电路104、106、108等和透明锁存器电路114、116等。例如,可以使用触发器(FIFO)阵列来实现全锁存器电路104,所述触发器可操作用于向形成组合逻辑110的数字逻辑门的各个分支中传送数据。类似地,可以使用多个半锁存器电路来实现透明锁存器电路114,其中,每个半锁存器电路可操作用于将来自组合逻辑110的数字逻辑门的分支的各自输出数据传送到全锁存器电路106的一个或多个输入。类似的细节可以适用于系统100的其他级。
值得注意的是,使用各自的时钟信号的反相形式来计时每个级102的全锁存器电路和透明锁存器电路。因此,使用时钟A来计时全锁存器电路104,而使用时钟A的反相形式来计时第一级102A的透明锁存器电路114。类似地,使用时钟B来计时全锁存器电路106,而使用时钟B的反相形式来计时透明锁存器电路116。优选的是,这种计时布置和其他级(如果有的话)一致。也优选的是,以不同的频率来计时相邻的级。为了与上述的示例一致,以4GHz计时第一级102A,而以2GHz计时第二级102B。
现在参见图5来更详细地说明系统100的操作,图5是图解与进入和来自系统100的每个级的数据发送相比较的各个时钟信号的定时特性的图。将首先介绍时钟A信号和时钟B(同步)信号,其中,时钟B(同步)信号表示理想的情况,其中,时钟A信号和时钟B(同步)信号的上升沿精确地对齐。在时钟A信号的上升沿50上,全锁存器电路104按时钟传输数据到组合逻辑110。从时钟A信号的上升沿50到来自组合逻辑110的有效输出数据A0的开始存在最短的传播延迟Tp。数据A0有效,直到在时钟A信号的下一个上升沿52之后的最短传播延迟Tp。
在时钟B(同步)信号的上升沿54处,全锁存器电路106将在其输入处的数据传送到组合逻辑112。全锁存器电路106的建立时间Ts表示在时钟B(同步)信号的上升沿54之前的时间量,在此期间,数据A0必须在全锁存器电路106的输入处有效,以便适合的传送发生。保持时间Th表示在时钟B(同步)信号的上升沿54后的时间量,在此期间,输出数据A0必须在全锁存器电路106的输入处保持有效,以便适合的传送发生。
因为在组合逻辑110的第一级中的数据的有效性改变之前总是存在时钟A信号的上升沿50、52之后的某个最小的传播延迟Tp,因此当时钟B信号与时钟A信号同步时通常不存在保持时间违反。
类似的分析在考虑从组合逻辑112的第二级到由锁存器108表示的下一级的数据传送时获得。具体来说,时钟B(同步)信号的上升沿56按时钟传送在全锁存器电路106的输入处的数据到组合逻辑112。在上升沿56后的最短传播延迟Tp之后,组合逻辑112的组合数据B0变得在全锁存器电路116的输入处有效。
在时钟A信号的上升沿58处,全锁存器电路108将在其输入处的数据(可以包括数据B0)传送到下一级的组合逻辑(未示出)。全锁存器电路108的建立时间Ts表示在时钟A信号的上升沿58之前的时间量,在此期间,输出数据B0必须在全锁存器电路108的输入处有效,以便适合的传送发生。保持时间Th表示在时钟A信号的上升沿58后的时间量,在此期间,输出数据B0必须在全锁存器电路108的输入处保持有效以便适合的传送发生。
现在参见时钟B(滞后)信号,假定时钟B信号由于时钟偏移问题而滞后于时钟A信号。在此情况下,时钟B(滞后)信号的滞后的上升沿54A比在时钟B(同步)信号的上升沿54之后晚发生显著时间。当这种滞后具有相当大的幅度时,输出数据A0在满足在滞后的上升沿54A后的保持时间Th的显著长度的时间不是有效的。结果,有效输出数据A0可能从未被传送到组合逻辑112的第二级。事实上,虽然可能满足全锁存器电路106的上升沿54A之前的建立时间Ts,但是输出数据A0的有效性在上升沿54A之后的保持时间Th之前期满。结果,全锁存器电路106不能从组合逻辑110向组合逻辑112传送有效的输出数据A0。
来自组合逻辑110的输出数据被标注为A0,而透明锁存器电路114对于输出数据A0的影响被标注为A0’。类似地,组合逻辑112的输出数据被标注为B0,而透明锁存器电路116对于这样的数据的影响被标注为B0’。为了与在上面提供的透明锁存器电路的操作的说明一致,虽然来自组合逻辑110的输出数据A0的状态可以在传播Tp期满后改变和变得有效,但是透明锁存器114在反相的时钟A信号低时抑制(withhold)输出数据A0的任何状态改变。因此,当时钟A信号在50’从高逻辑电平跳变到低逻辑电平时,输出数据A0’变得有效。类似地,尽管输出数据A0的状态可以在时钟A信号的上升沿52后改变,但是透明锁存器电路114将在时钟A信号在逻辑高并且反相的时钟A信号在逻辑低的时间期间保持输出信号A0’的状态,并且当在52’反相的时钟A信号的状态从逻辑低跳变到逻辑高时,允许输出信号A0’的状态跳变。
结果,当时钟B信号由于时钟偏移而滞后于时钟A时,透明锁存器电路114将输出数据A0’的有效状态保持足够的时间以满足在时钟B(滞后)信号的上升沿54A后的保持时间Th。而且,透明锁存器电路114不将输出数据A0’的定时移位到违反在时钟B(超前)信号的上升沿54B之前的建立时间Ts这样的程度。
对于从组合逻辑112到下一级的输出数据B0的传送,时钟B(滞后)信号实际上有助于提供另外的时间量,在其中,输出数据B0在时钟A信号的上升沿58后的保持时间Th期满后有效。但是,值得注意的是,时钟B(滞后)信号的滞后特性降低了建立时间——输出数据B0在上升沿58之前有效的时间量。在此示例中,这种降低将可能对全锁存器电路108不违反在上升沿58之前的建立时间Ts的要求。
当全锁存器电路106在时钟B信号的上升沿56向组合逻辑112传送数据时,透明锁存器电路116保持(withhold)最初的输出数据B0’的状态,直到反相的时钟B信号的逻辑状态从低跳变到高。类似地,当反相的时钟B信号的状态在边沿59和60之间为低时,透明锁存器电路116保持输出数据信号B0’的状态。
现在转向时钟B(超前)信号的细节,假定时钟B(超前)信号的上升沿发生在时钟A信号的上升沿之前。关于输出数据A0,时钟B(超前)信号的超前特性有助于提供保持时间——其中输出数据A0在时钟B(超前)信号的上升沿54B后有效的时段。因此,时钟B(超前)信号的超前特性将不出现以引起关于从组合逻辑电路110的第一级到组合逻辑112的第二级的输出A0的传送的保持时间问题。但是,值得注意的是,时钟B(超前)信号的超前特性降低了建立时间——其中输出数据A0在时钟B(超前)信号的上升沿54B之前有效的时间量。因此,有可能依赖于时钟B(超前)信号的超前特性的严重程度而可能发生建立时间问题。
时钟B(超前)信号的超前上升沿56B发生在时钟B(同步)信号的上升沿56之前的显著时间。当这种超前具有相当大的幅度时,输出数据B0可能在满足在时钟A信号的上升沿58后的保持时间Th的显著长度的时间不是有效的。结果,有效输出数据B0可能从未被传送到组合逻辑的下一级。事实上,虽然可能满足在全锁存器电路108的上升沿58之前的建立时间Ts,但是输出数据B0的有效性在时钟A信号的上升沿58之后的保持时间Th之前期满。结果,全锁存器电路108不能从组合逻辑112向下一级传送有效的输出数据B0。
值得注意的是,当由于时钟偏移而展现时钟B(超前)信号时,透明锁存器电路116抑制(withhold)输出数据B0’的状态改变,直到在边沿60B反相的时钟B(超前)信号从低跳变到高。因此,全锁存器电路108的保持时间Th在时钟A信号的上升沿58后被满足。还要注意到,在未牺牲和由现有技术的延迟电路实现(图2B)所展现的同样多的建立时间容限的情况下,实现了保持时间问题的这种跨越(traversal)。
有益的是,在图3中图示的并且按照本发明的一个或多个实施例的所述电路实现有效地解决了时钟偏移的问题,而对于建立时间容限的影响相对小。这表示相对于在上文中讨论的现有技术的方法的特性具有明显的进步。
要注意到,可以使用任何公知的技术,如标准数字电路系统、模拟电路系统、微处理器、数字信号处理器,包括现在可用的器件和/或以后开发的器件的可操作用于执行软件和/或固件程序的任何公知处理器、可编程数字器件或系统、可编程阵列逻辑器件或上述的任何组合,来实现在本文件中至此所描述的和/或后来所述的所述方法和装置。
虽然在此已经参照特定的实施例说明了本发明,但是要理解到,这些实施例仅仅是说明本发明的原理和应用。因此要理解,在不偏离权利要求所限定的本发明的精神和范围的情况下,可以对于所述说明性实施例进行多种修改,并且可以设计其他的布置。
权利要求
1.一种装置,包括组合逻辑的至少第一和第二级;第一和第二全锁存器电路,可分别操作用于向组合逻辑的第一和第二级传送数据;以及,第一透明锁存器电路,可操作用于从组合逻辑的第一级向所述第二全锁存器电路传送输出数据。
2.按照权利要求1的装置,还包括第二透明锁存器电路,可操作用于从组合逻辑的第二级传送输出数据。
3.按照权利要求2的装置,其中,使用第一时钟信号来计时第一全锁存器电路,并且使用反相的第一时钟信号来计时第一透明锁存器电路。
4.按照权利要求3的装置,其中,使用第二时钟信号来计时第二全锁存器电路,并且使用反相的第二时钟信号来计时第二透明锁存器电路。
5.按照权利要求4的装置,其中,第一时钟信号比第二时钟信号频率更高。
6.按照权利要求1-5的任何一个所述的装置,还包括组合逻辑的多个级,每个级包括全锁存器电路,可操作用于向组合逻辑的给定级传送数据;以及透明锁存器电路,可操作用于从所述组合逻辑的给定级向下一个级传送输出数据。
7.按照权利要求6的装置,其中,使用公共时钟信号的反相形式来计时每个级的所述全锁存器电路和所述透明锁存器电路。
8.按照权利要求6的装置,其中,以不同的频率计时相邻的级。
9.按照权利要求1-5中的任何一个所述的装置,其中组合逻辑的至少一个级包括数字逻辑门的多个分支,每个分支对各自的数据输入流操作以产生各自的数据输出流;组合逻辑的所述至少一个级的全锁存器电路包括多个触发器,每个触发器将数据的输入流传送到所述级;并且组合逻辑的所述至少一个级的透明锁存器电路包括多个半锁存器,每个半锁存器向下一个级传送数据的输出流。
10.按照权利要求1-5的任何一个所述的装置,其中,第一透明锁存器可操作用于(i)当第一透明锁存器的时钟信号处于两个逻辑电平的第一个时,传送来自组合逻辑的第一级的输出数据的状态变化,而不管这样的变化何时发生;并且(ii)抑制所述输出数据的状态变化,直到第一透明锁存器的时钟信号从所述两个逻辑电平的第二个跳变到第一逻辑电平。
11.一种装置,包括组合逻辑的多个级,每个级包括全锁存器电路,可操作用于向组合逻辑的给定级传送数据;以及透明锁存器电路,可操作用于向所述各级的下一个传送来自组合逻辑的给定级的输出数据。
12.按照权利要求11的装置,其中,使用公共时钟信号的反相形式来计时每个级的所述全锁存器电路和所述透明锁存器电路;以及在不同的频率计时相邻的级。
13.按照权利要求11或12的装置,其中,所述透明锁存器电路可操作用于(i)当所述透明锁存器电路的时钟信号处于两个逻辑电平的第一个时,传送来自给定组合逻辑的输出数据的状态变化,而不管这样的变化何时发生;并且(ii)抑制所述输出数据的状态变化,直到所述透明锁存器电路的时钟信号从所述两个逻辑电平的第二个跳变到第一逻辑电平。
14.一种方法,包括提供组合逻辑的多个级,每个级包括全锁存器电路,该全锁存器电路可操作用于向组合逻辑的给定级中传送数据;在每个级中,当全锁存器电路的时钟信号处于两个逻辑电平的第一个时,传送来自给定组合逻辑的输出数据的状态变化,而不管这样的变化何时发生;并且在每个级中,抑制所述输出数据的状态变化,直到全锁存器电路的时钟信号从所述两个逻辑电平的第二个跳变到第一逻辑电平。
15.按照权利要求14的方法,还包括,以不同的时钟频率计时相邻级的全锁存器电路。
全文摘要
本发明的方法和装置提供了组合逻辑的多个级,每个级包括全锁存器电路,可操作用于向组合逻辑的给定级传送数据;以及透明锁存器电路,可操作用于从组合逻辑的所述给定级向所述多个级的下一个传送输出数据;在每个级中,当透明锁存器电路的时钟信号处于两个逻辑电平的第一个时,传送来自给定组合逻辑的输出数据的状态变化,而不管这样的变化何时发生;并且在每个级中,抑制所述输出数据的状态变化,直到透明锁存器电路的时钟信号从所述两个逻辑电平的第二个跳变到第一逻辑电平。
文档编号G06F1/10GK1877485SQ20061009451
公开日2006年12月13日 申请日期2006年6月9日 优先权日2005年6月9日
发明者高野知明 申请人:索尼计算机娱乐公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1