用于脉冲锁存器的时钟树的制作方法

文档序号:6430204阅读:112来源:国知局
专利名称:用于脉冲锁存器的时钟树的制作方法
技术领域
本发明涉及时钟树以及用于为多个锁存器提供脉冲信号的时钟树的电路设计方法。
背景技术
由上升沿或下降沿控制的触发器和由脉冲信号控制的脉冲锁存器之间是有区别的。为了控制触发器,诸如时钟信号的控制信号通过包括有锁存器的时钟树被分配到每个触发器。根据每个触发器的输入端的控制信号的特定同步约束来选择时钟树的大小。脉冲锁存器没触发器那么复杂,因此脉冲锁存器允许电路设计得更加紧凑且功耗更小。在脉冲时序信号的高脉冲期间,数据输入到脉冲锁存器中。脉冲时序信号由脉冲发生器生成,并且每个脉冲的脉冲宽度通常明显比常规时钟信号的高电平或低电平期间要短。然而,现有的同步电路通常使用触发器作为同步元件,由于上述原因,期望用脉冲锁存器替代触发器。但是,在设计时钟树时,数字电路实现工具适于基于时钟脉冲边缘进行时序分析,而不适于基于脉冲进行分析,并且其通常不会允许插入脉冲发生器。由此在基于脉冲锁存器的电路设计的构想和验证中出现了问题。

发明内容
本发明的目的在于至少部分地解决现有技术中的一个或多个问题。根据本发明的一个方面,提供了一种时钟树电路设计的计算机实现方法,该时钟树包括多个脉冲发生器,每一个连接到一个或多个脉冲锁存器的输入端并布置为产生脉冲信号;以及缓冲器树,用于为脉冲发生器提供时钟信号,该方法包括基于由计算机进行的时钟树中时钟边沿的传播的时序分析,进行不具有脉冲发生器的时钟树设计;及由计算机将时钟树中的至少一个连接到每个脉冲锁存器的输入端的缓冲器替代为脉冲发生器。根据一种实施方式,本方法还包括在替代步骤之后,由所述计算机进行时钟树电路的时序分析。根据另一实施方式,在所述时钟边沿时序分析期间,所述时钟树的每个缓冲器由与所述脉冲发生器相同的电路实现,除了其脉冲发生功能由所述计算机转化为非激活状态,并且用脉冲发生器替代每个锁存器之前的最后一个缓冲器的步骤包括由所述计算机再次激活所述最后一个缓冲器的脉冲发生功能。根据另一实施方式,在所述时钟边沿时序分析期间,所述时钟树的每个缓冲器由包括逻辑门和延迟块的电路实现,其中,逻辑门具有用于接收所述时钟信号的第一输入端, 延迟块用于生成所述时钟信号的延迟且倒置版本,其中,所述逻辑块的第二输入端连接到参考电压。根据另一实施方式,由计算机用脉冲发生器替代至少一个缓冲器的步骤包括将所述逻辑门的第二输入端从所述参考电压断开并将其连接到所述延迟块的输出端。
根据本发明的另一方面,提供了一种方法,包括上述的计算机实现时钟树的设计;及根据所述设计制造电路。根据本发明的又一方面,提供了一种计算机,其程序化为实现上述方法。根据本发明的再一方面,提供了一种数字存储媒体,其存储当执行时适于实现上述方法的程序。根据本发明的另一方面,提供了一种用于为多个脉冲锁存器提供脉冲信号的时钟树,其包括多个脉冲发生器,每一个连接用于控制所述多个脉冲锁存器中的至少一个;及缓冲器树,用于为所述脉冲发生器的每一个提供时钟信号,其中所述缓冲器树包括与所述脉冲发生器相同的电路,除了缓冲的脉冲发生功能被转化为未激活状态。根据一种实施方式,所述缓冲器树中的每个缓冲器包括逻辑门和延迟块,其中,逻辑门具有用于接收所述时钟信号的第一输入端,延迟块用于生成所述时钟信号的延迟且倒置版本,其中,所述逻辑块的第二输入端连接到参考电压。根据另一实施方式,所述逻辑门是NAND门。根据本发明的又一方面,提供了一种集成电路,其包括由多个脉冲锁存器同步的逻辑电路以及上述时钟树,该时钟树经布置用于为每个所述脉冲锁存器提供脉冲信号。


通过下文中结合附图对示例性的而非限制性的实施方式的详细说明,本发明的上述和其他目的、特征、方面和优点将更加清晰,附图中图1示出了根据本发明的实施方式的基于脉冲锁存器的同步电路;图2示出了根据本发明的实施方式的用于提供多个脉冲信号的时钟树;图3是流程图,示出了根据本发明的实施方式的图2的时钟树的电路设计和制造的方法的步骤;图4A示出了根据本发明的实施方式的缓冲电路;图4B示出了根据本发明的实施方式的的脉冲发生器;图5是流程图,示出了根据本发明另一实施方式的时钟树的电路设计和制造的方法的步骤;图6示出了包括根据本发明的实施方式的时钟树的集成电路;及图7示出了根据本发明的实施方式的计算机。
具体实施例方式下文中,仅详细描述有助于理解本发明的特征和方面。其他特征(例如脉冲锁存器的具体电路设计)是本领域内技术人员的常规技能,在此不再赘述。图1示出了同步电路100,其由脉冲锁存器102同步,图中示出了三个脉冲锁存器 102。每个脉冲锁存器包括用于接收脉冲信号PS的输入线104。在脉冲信号PS的每个脉冲期间,每个脉冲锁存器102存储在其输入节点上出现的数据。在每个脉冲结束时,由脉冲锁存器存储的数据变为有效。因此,连接在脉冲锁存器102对之间的逻辑块106同步运行。尽管图1仅示出了三个脉冲锁存器,但典型的集成电路可包括数百个或数千个这样的锁存器。为了为这些脉冲锁存器中的每一个提供脉冲信号PS,一个解决方案是由脉冲发生器生成单个脉冲信号,并将该脉冲信号经由缓冲器的标准时钟树分配。然而,这种方法的问题在于脉冲信号的脉冲宽度对于锁存器的正确操作来说是决定性的,并且时钟树具有使脉冲宽度产生变化的风险。此外,构建时钟树的工具是基于时钟边沿时序分析的,因此不适于验证提供给每个脉冲锁存器的脉冲信号的脉冲宽度。 图2示出了用于将脉冲信号PS提供给多个脉冲锁存器的时钟树200,在该实例中, 共有8个脉冲锁存器201。时钟树200包括多个脉冲发生器202,而不是使用单个脉冲发生器。尽管在替代实施方式中,每个脉冲发生器202可控制不止一个脉冲锁存器201,但在该实例中,每个脉冲锁存器201均提供有一个脉冲发生器202。时钟树200还包括缓冲器204 的树,用于将时钟信号CLK提供到每个脉冲发生器202的输入线206上。在该实例中,每个缓冲器204能够驱动另外两个缓冲器或脉冲发生器的输入端,因此,7个缓冲器204能够为 8个脉冲发生器202提供时钟信号CLK。显而易见,时钟树200仅是一个例子,在替代实施方式中,时钟树200可包括任意数量的脉冲发生器202,该脉冲发生器202由合适数量的缓冲器提供信号。时钟树200的一个好处在于脉冲信号不会通过时钟树传播,由此脉冲宽度不会有失真的风险。替代地,缓冲器的树传播标准时钟信号CLK并且由此能够利用标准方法被分析,这将结合图3描述。在某些情况下,时钟树的一个或多个缓冲器可连接在脉冲发生器 202和脉冲锁存器201之间,例如,如果确定由锁存器201提供的脉冲并未由于这些缓冲器而大量失真。图3是流程图,示出了基于图2电路布置的时钟树的计算机实现的电路设计和制造的方法的步骤。在步骤Si,基于时钟树的计算机实现的时钟边沿时序分析,进行不具有脉冲发生器的时钟树的设计。例如,参考图2中的时钟树200,基于每个脉冲发生器202被缓冲器替代的电路设计,进行时钟边沿时序分析。根据时序分析的结果,可以调整时钟树的一个或多个缓冲器204的大小并且/或者缓冲器可以被计算机用户增加或移去且/或由计算机自动地增加或移去。通过这种方式,可确保通过树的时钟边沿传播彼此之间良好的同步。在后续步骤S2中,计算机用脉冲发生器202替代至少一个缓冲器。例如,为了确定将被替换的缓冲器,计算机搜索与每个脉冲锁存器的脉冲信号输入端直接连接的缓冲器, 或者在某些情况下,搜索通过一个或多个缓冲器与该输入端连接的缓冲器。在图2所示的实例中,这导致了示出的时钟树200的电路布置。了解到提供给每个脉冲发生器202的时钟信号良好地同步,可以知道由脉冲发生器提供的脉冲也将良好地同步。此外,假设脉冲发生器202是一样的,由于脉冲信号不通过额外的缓冲器传播,因此,脉冲宽度将很好地匹配。举例来说,可选的后续步骤S3包括由计算机进行时钟树的操作的时序分析以及由脉冲锁存器驱动的逻辑电路的操作的时序分析。最终步骤S4包括在计算机的控制下制造电路,该电路源自包括具有脉冲发生器的时钟树的设计。图4A和4B分别展示了实现缓冲器204的电路400和实现图2中的脉冲发生器 202的电路410。如图4A所示,缓冲器204包括与脉冲发生器极为类似的电路。时钟输入线401连接到NAND门402的第一输入端。NAND门402的第二输入端通过输入线403连接到逻辑高电压VDD。时钟输入线401也连接到延迟逆变器块404,该延迟逆变器块404包括一个或多个延迟元件。例如,延迟块404包括多个串联连接的逆变器(未示出)。然而,延迟块404 的输出向左浮动,从而电路的该分支是不可操作的。这意味着电路的脉冲发生功能转化为非激活状态,并且因此,NAND门402的输出仅仅是时钟信号CLK的倒置。NAND门402的输出连接到逆变器406上,从而在缓冲之后在缓冲器的输出线408上提供原始时钟信号CLK。如图4B所示,举例来说,脉冲发生器202包括与缓冲器204完全相同的结构,除了 NAND门402的第二输入端连接到延迟逆变器块404的输出端,而不是连接到VDD,延迟逆变器块404的输出端是时钟信号CLK的延迟且倒置版本CLK'。因此,电路202运行为脉冲发生器,而不运行为简单的缓冲器。具体地,当时钟信号CLK变高时,线405上的信号也变高。 当时钟信号的延迟且倒置版本CLK'变低时,其再次变低。因此,其生成的脉冲信号的脉冲宽度依赖于延迟块404引入的延迟。图5是流程图,示出了基于图4A和4B的缓冲器400和脉冲发生器410的时钟树的计算机实现的电路设计和制造的方法的步骤。在第一步骤Sl中,基于时钟树(该时钟树的每个脉冲发生器被信用以实现缓冲器功能)的计算机实现的时钟边沿时序分析,进行时钟树的设计。例如,在图4B的电路410 中,这通过由计算机将输入线403连接到VDD实现,这形成了缓冲器电路400。时钟树的每个缓冲器优选地也由图4A中的缓冲器400实现,从而时钟树的任意缓冲器可在后续步骤S2 中转换为脉冲发生器。基于计算机实现的时序分析,可以调整时钟树的一个或多个缓冲器大小并且/或者缓冲器可以被计算机用户增加或移去且/或由计算机自动地增加或移去。 通过这种方式,可确保通过树的时钟边沿传播彼此之间良好的同步。在下一步骤S2中,至少一个缓冲器(例如连接到每个脉冲锁存器的输入端的那个缓冲器)由计算机转换为脉冲发生器。举例来说,这通过将逻辑门402的第二输入线403 连接到延迟块404的输出端来实现。有利的是,由于该步骤仅涉及一些连接的改变,因此, 电路布局几乎不受影响。正如图3的步骤S3 —样,举例来说,可选的后续步骤S3包括由计算机进行时钟树的操作的时序分析以及由脉冲锁存器驱动的逻辑电路的操作的时序分析。正如图3的步骤S4 —样,最终步骤S4包括在计算机的控制下制造电路,该电路源自包括具有脉冲发生器的时钟树的设计。图6示出了包括时钟树602的集成电路600,举例来说,时钟树602是上述的时钟树200,尽管脉冲锁存器、脉冲发生器和缓冲器的数量可以不同。举例来说,每个缓冲器由图 4A的电路400实现,每个脉冲发生器由图4B的电路410实现。时钟树602接收时钟信号604并通过输出线606为同步逻辑608提供多个脉冲信号PS,同步逻辑608将脉冲锁存器用作同步元件。同步逻辑通过输出线610提供输出数据, 举例来说,输出数据存储在存储器中和/或是集成电路的输出。图7示出的适于实施图3和图5的方法的计算机的实例。计算机700包括连接到指令存储器704的处理器702、主存储器706、通信接口 708、一个或多个控制输入端710 和显示器712。举例来说,指令存储器704是易性存储器,例如SRAM(静态随机存储器)或 FLASH存储器,其存储用于控制处理器702实施图3和图5的方法的指令。举例来说,主存储器706由非易失性存储器实现,例如硬盘,其在设计期间和设计后存储电路的表示物。举例来说,通信接口 708允许将设计的电路输出到制造设备中,用于控制包括有本文描述的时钟树电路的集成电路的制造。举例来说,控制输入端710和显示器712允许用户控制和跟进时钟树的设计。本文描述的实施方式的优点在于脉冲信号可提供给多个锁存器,而不具有由于通过时钟树传输而使脉冲失真的风险。此外,可基于时钟边沿以快速且有效的方式进行时序分析。通过附图描述了本发明的多个具体实施方式
,本领域技术人员显而易见地意识到可以进行很多修改和变化。例如,本领域内技术人员显然知道图4B中的脉冲发生器和缓冲器实施方法仅是示例性的,其他电路也是可能的。例如,NAND门402可由其他逻辑门(例如NOR门)替代。此外,本领域技术人员显然知道本文描述的原理可应用于时钟树,以为任意数量的脉冲锁存器提供脉冲信号。本领域技术人员显然知道本文描述的各种特征以及各种实施方式可在本发明的替代实施方式中以任何结合方式组合。
权利要求
1.一种时钟树O00)电路设计的计算机实现方法,该时钟树(200)包括多个脉冲发生器002),每一个连接到一个或多个脉冲锁存器的输入端并布置为产生脉冲信号(PS); 以及缓冲器(204)树,用于为脉冲发生器提供时钟信号(CLK),该方法包括基于由计算机进行的时钟树中时钟边沿的传播的时序分析,进行不具有脉冲发生器的时钟树设计;及由计算机将时钟树中的至少一个连接到每个脉冲锁存器的输入端的缓冲器替代为脉冲发生器。
2.如权利要求1的方法,还包括在替代步骤之后,由所述计算机进行时钟树电路的时序分析。
3.如权利要求1的方法,其中,在所述时钟边沿时序分析期间,所述时钟树的每个缓冲器由与所述脉冲发生器相同的电路实现,除了其脉冲发生功能由所述计算机转化为非激活状态,并且用脉冲发生器替代每个锁存器之前的最后一个缓冲器的步骤包括由所述计算机再次激活所述最后一个缓冲器的脉冲发生功能。
4.如权利要求1的方法,其中,在所述时钟边沿时序分析期间,所述时钟树的每个缓冲器由包括逻辑门(40 和延迟块(404)的电路实现,其中,逻辑门(40 具有用于接收所述时钟信号的第一输入端,延迟块(404)用于生成所述时钟信号的延迟且倒置版本(CLK'), 其中,所述逻辑块的第二输入端连接到参考电压。
5.如权利要求4的方法,其中,由计算机用脉冲发生器替代至少一个缓冲器的步骤包括将所述逻辑门的第二输入端从所述参考电压断开并将其连接到所述延迟块的输出端。
6.一种方法,包括根据权利要求1的由计算机实现时钟树的设计;及根据所述设计制造电路。
7.一种计算机,其程序化为实现权利要求1的方法。
8.一种数字存储媒体,其存储当执行时适于实现权利要求1的方法的程序。
9.一种用于为多个脉冲锁存器提供脉冲信号(PQ的时钟树,其包括多个脉冲发生器002),每一个连接用于控制所述多个脉冲锁存器中的至少一个;及缓冲器树,用于为所述脉冲发生器的每一个提供时钟信号(CLK),其中所述缓冲器树包括与所述脉冲发生器相同的电路,除了缓冲的脉冲发生功能被转化为未激活状态。
10.如权利要求9的时钟树,其中,所述缓冲器树中的每个缓冲器包括逻辑门(402)和延迟块004),其中,逻辑门(40 具有用于接收所述时钟信号的第一输入端,延迟块(404) 用于生成所述时钟信号的延迟且倒置版本(CLK'),其中,所述逻辑块的第二输入端连接到参考电压。
11.如权利要求10的时钟树,其中,所述逻辑门是NAND门002)。
12.—种集成电路,其包括由多个脉冲锁存器同步的逻辑电路以及权利要求9的时钟树,该时钟树经布置用于为每个所述脉冲锁存器提供脉冲信号(PS)。
全文摘要
本发明涉及计算机时钟树(200)电路设计的计算机实现方法,该时钟树(200)包括多个脉冲发生器(202),每一个连接到一个或多个脉冲锁存器的输入端并布置为产生脉冲信号(PS);以及缓冲器(204)树,用于为脉冲发生器提供时钟信号(CLK),该方法包括基于由计算机进行的时钟树中时钟边沿的传播的时序分析,进行不具有脉冲发生器的时钟树设计;及由计算机将时钟树中的至少一个连接到每个脉冲锁存器的输入端的缓冲器替代为脉冲发生器。
文档编号G06F1/10GK102375472SQ20111022535
公开日2012年3月14日 申请日期2011年8月8日 优先权日2010年8月6日
发明者叶海亚·马拉姆, 莱昂内尔·卓尔, 迈克尔·吉鲁 申请人:道芬综合公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1