时钟同步方法

文档序号:10538371阅读:531来源:国知局
时钟同步方法
【专利摘要】本发明提供一种时钟同步方法。在本发明的时钟同步方法中,在下位层模块的分频时钟的时钟树的起点配置第1同步FF,并获取从基准时钟和分频时钟的分支点至第1同步FF为止的基准时钟的延迟时间的最大值。将第2同步FF之间的基准时钟的延迟时间的最大值确定为不到基准时钟的半个周期的时间。根据分频时钟的延迟时间的最大值以及第2同步FF之间的基准时钟的延迟时间的最大值确定第2同步FF的级数。将从分支点开始的延迟时间的目标值确定为第2同步FF之间的基准时钟的延迟时间的最大值以下的延迟时间,并在延迟时间成为延迟时间的目标值的位置配置第2同步FF及锁存器。
【专利说明】
时钟同步方法
技术领域
[0001]本发明涉及一种使从顶层模块(block)所具备的时钟生成电路供给至多个下位层模块各自所具备的终端FF(触发器)的基准时钟及分频时钟的相位同步的时钟同步方法。
【背景技术】
[0002]在大规模半导体集成电路的布局设计中,使用分层布局设计方法。在分层布局设计方法中,半导体集成电路的大部分电路被分割成多个下位层模块,并进行各下位层模块的布局设计。之后或者同时,进行除下位层模块以外的顶层模块的布局设计,各下位层模块上连接有时钟信号,且各下位层模块之间连接有配线。
[0003]在下位层模块及顶层模块的布局设计中,为了将时钟信号供给至各下位层模块所具备的庞大数量的FF群,使用一种被称作时钟树综合的方法。时钟树综合是一种使从顶层模块的时钟信号的起点经由各个路径到达各下位层模块所具备的所有FF为止的时钟信号的延迟时间一致(使相位同步)的功能。
[0004]在分层布局设计方法中,时钟配线跨越在顶层模块和各下位层模块之间,因此在各下位层模块内进行下游部分的时钟树生成。然后,在该结果的基础上,在顶层模块内进行上游部分的时钟树生成,并进行顶层模块内时钟信号的延迟时间的调整,以使从时钟信号的起点至各下位层模块的所有FF为止的时钟信号的延迟时间一致。
[0005]在半导体集成电路中,由于制造时的工艺偏差和/或动作时的电压/温度偏差等,各信号的延迟时间会发生变动。在进行布局设计时,将时序设计成即使各信号的延迟时间发生偏差电路也会正常动作。具体而言,这种信号的延迟时间的偏差被称作0CV(0n ChipVariat1n,芯片上变异),将时序设计成即使半导体集成电路包含该OCV量的裕度也会正常动作。
[0006]另外,在大规模集成电路中,基准时钟由来的分频时钟群大多是由顶层模块所具备的时钟生成电路生成,并被分配至各下位层模块。其结果,基准时钟和分频时钟在时钟树的上游侧被分支,分支点之后的基准时钟以及分频时钟的路径往往会变长。由于分支点之后的长的时钟路径分别各自产生偏差,因此应考虑的时序裕度变为大的值,时序设计难以进行。
[0007]图6是表示现有半导体集成电路的结构的一例的示意图。该图所示的半导体集成电路70是通过分层布局设计方法所设计的电路,其具备3个下位层模块A、B、C,以及除了该下位层模块A、B、C以外的顶层模块。另外,顶层模块具备时钟生成电路12,时钟生成电路12具备PLL电路14和分频电路16。
[0008]半导体集成电路70中,在时钟生成电路12中通过PLL电路14生成基准时钟15,从PLL电路14输出的基准时钟15被分频电路16分频而生成分频时钟17。基准时钟15及分频时钟17从时钟生成电路12供给至下位层模块A、B、C所具备的与基准时钟15同步动作的所有第I终端FFl 8、以及与分频时钟17同步动作的所有第2终端FF20。
[0009]在进行半导体集成电路70的布局设计时,在分层布局设计方法中,首先,在下位层模块A、B、C生成基准时钟的时钟树19以及分频时钟的时钟树21 (图6中以三角框表示时钟树)。下位层模块A、B、C的大小和第I终端FF18及第2终端FF20的个数按照每个模块而不同,因此时钟树的延迟时间不同。在图示例的情况下,下位层模块A、B、C内的基准时钟的时钟树19及分频时钟的时钟树21的延迟时间分别为2ns、7ns、5ns。
[0010]接着,在顶层模块生成基准时钟15及分频时钟17的时钟树。此时,调整顶层模块的基准时钟15以及分频时钟17的时钟树的延迟时间,以消除下位层模块A、B、C内的基准时钟的时钟树19及分频时钟的时钟树21的延迟时间的偏差。在图示例的情况下,从时钟生成电路12至下位层模块A、B、C为止的基准时钟15以及分频时钟17的时钟树的延迟时间分别为10ns、5ns、7nso
[0011]由此,从基准时钟15和分频时钟17的分支点13至下位层模块A、B、C的各第I终端FF18及第2终端FF20为止的延迟时间被统一为12ns,能够使下位层模块A、B、C的所有第I终端FFl 8以及第2终端FF20同步动作。
[0012]然而,此时的问题在于,基准时钟15及分频时钟17的时序裕度过大,设计困难。由于在时钟生成电路12中从基准时钟15中分支的分频时钟17供给至下位层模块A、B、C,因此基准时钟15和分频时钟17的分支点13之后的12ns量的时钟路径成为OCV偏差的对象。
[0013]如图7所示,基准时钟15的周期为5ns,即基准时钟15被2分频的分频时钟17的周期为1ns时,需要例如超过基准时钟15的I个周期的大的时序裕度,该例子中需要基准时钟15及分频时钟17的上升时间的前后各6ns总计12ns的时序裕度,布局设计非常困难。
[0014]为了解决该问题,如图8所示,将同步FF41配置于分频时钟17的路径上的各下位层模块A、B、C附近的位置。所述同步FF41与基准时钟15同步而将分频时钟17作为数据信号接收并以基准时钟重新进行输出。
[0015]由此,分支点从基准时钟15和分频时钟17的分支点13移至各下位层模块A、B、C附近的分支点37,如图9所示,能够一定程度上减小时序裕度。在该例子的情况下,能够将时序裕度设为总计8ns。
[0016]另外,如图10所示,通过将同步FF41移至各下位层模块A、B、C的内部的第2终端FF20附近的位置,能够将分支点从基准时钟15和分频时钟17的分支点13移至各下位层模块A、B、C的内部的第2终端FF20附近的分支点39,如图11所示,能够进一步减小时序裕度。在该例子的情况下,能够设为总计4ns。
[0017]然而,此时的问题在于,配置于时钟路径的同步FF41的时序设计变得困难。
[0018]如图12所示,供给至同步FF41的基准时钟15的延迟时间大多成为比基准时钟15的I个周期更长的延迟时间。在该例子的情况下,从时钟生成电路12内部的基准时钟15和分频时钟17的分支点13至各下位层模块A、B、C的内部的同步FF41为止的基准时钟15的延迟时间分别成为I Ins、7ns、9ns。
[0019]在同步FF41的时钟路径的基准时钟15发生超过这种基准时钟15的周期的延迟,意味着在并行的数据路径的分频时钟17大多也发生同等程度的延迟。若数据路径的延迟时间超过周期,则在有些情况下会无法满足同步设计的建立(setup)约束。因此,需要如图13所示在数据路径上增加多级同步FF41,以将数据路径的延迟时间限制在基准时钟15的I个周期的时间以内。
[0020]然而,即使增加多个同步FF41来使数据路径的延迟时间限制在I个周期以内,也难以满足保持(hold)约束。
[0021 ]以下,对满足保持约束的难度进行说明。
[0022]首先,如图14所示,考虑对于I个下位层模块的同步FF41群的时序设计。
[0023]若对象仅为这些同步FF41群,则如图15所示,在从基准时钟和分频时钟的分支点起至所有同步FF41为止的基准时钟的路径上插入缓冲器45来统一延迟时间(消除时钟偏差),由此能够满足建立/保持约束。
[0024]另一方面,如上述的例子,当存在3个下位层模块A、B、C且各延迟时间为llns、7ns、9ns不同时,通常使延迟的时钟延迟与3个值中最大的11ns对齐,以免引起数据的穿透。
[0025]然而,此时的问题在于,通过使构成分频电路的FF及所有同步FF41群的延迟时间与最迟的时间统一,在基准时钟的路径上增加的缓冲器45的数量庞大,布局面积及消耗电力增加。另外,若基准时钟的延迟时间的最大值和最小值之差超过基准时钟的I个周期,则会超过同步设计能够应对的时间宽度,因此时序设计不再成立。
[0026]因此,会发生以使基准时钟的延迟时间与最迟的时间统一的方法所无法应对的情况,这是个问题。因此,如图16所示,需要对于局部或整体,在使基准时钟的延迟时间错开的同时满足建立/保持约束。
[0027]接着,对于在使基准时钟的延迟时间错开的同时满足建立/保持约束的难度进行说明。
[0028]半导体集成电路需要以动作保证范围内的各种温度、电压、工艺条件进行动作,因此需要考虑基于各种动作环境的信号的延迟变动。为了不引起数据的穿透,如图17A及图17B所示,必须通过缓冲器47使从前级的FFA输出的数据Q延迟,并在后级的FFB的时钟CLK上升之后改变FFB的数据D。因此,在该结构的情况下,需要使基于数据系统的缓冲器47的延迟时间大于基于时钟系统的缓冲器49的延迟时间。
[0029]各单元的延迟时间随着动作环境而变动,但由于缓冲器47、49的延迟时间大,因此数据路径的延迟变动幅度大。由于时钟路径也会延迟变动,因此在考虑两者的路径的延迟变动的基础上进行满足建立/保持约束的时序设计较困难。在实际的半导体集成电路的布局设计中,通常会产生多次对时序设计进行再调整的需要。
[0030]在此,作为与本发明具有关联性的现有技术文献有如下专利文献:专利文献1(日本特开2002-76127号公报),涉及一种半导体集成电路进一步涉及一种半导体芯片上的同步用的时钟信号的分配方式;专利文献2(日本特开2002-158286号公报),涉及控制时钟分配的半导体集成电路等;专利文献3(日本特开2001-320022号公报),涉及一种在多相时钟分配于内部电路的集成电路中的时钟分配方式;以及专利文献4(日本特开平9-51255号公报),涉及一种通过将基准时钟进行分频来延迟从而生成多个延迟时钟的时钟生成电路,等专利文献。

【发明内容】

[0031]本发明的目的在于,提供一种能够消除上述现有技术的问题,大幅削减为了使基准时钟和分频时钟同步所需的时序裕度,且使时序设计变得容易的时钟同步方法。
[0032]为实现上述目的,本发明提供一种时钟同步方法,该方法从顶层模块所具备的时钟生成电路经由多个下位层模块各自所具备的基准时钟的时钟树以及上述基准时钟被分频的分频时钟的时钟树,使上述基准时钟以及上述分频时钟的相位同步,上述基准时钟以及上述分频时钟供给至与上述基准时钟同步动作的第I终端FF以及与上述分频时钟同步动作的第2终端FF,上述时钟同步方法的特征在于,具备如下步骤:
[0033]在各上述下位层模块的分频时钟的时钟树的起点配置第I同步FF,其中,上述第I同步FF与从各上述下位层模块所具备的基准时钟的时钟树输入的基准时钟同步而将上述分频时钟作为数据信号来保持,并以被保持的上述分频时钟的数据信号作为数据输入,且与各上述下位层模块所具备的基准时钟的时钟树的起点连接;
[0034]求出从上述基准时钟和上述分频时钟的分支点至各上述下位层模块的第I同步FF为止的基准时钟的延迟时间,并获取上述基准时钟的延迟时间的最大值;
[0035]将在各上述下位层模块的分频时钟的配线路径上串联配置的多个第2同步FF之间的基准时钟的延迟时间的最大值确定为不到上述基准时钟的半个周期的时间;
[0036]以用在将上述基准时钟的延迟时间的最大值除以上述第2同步FF之间的基准时钟的延迟时间的最大值而得到的除算结果的值以上且为上述分频时钟的分频数的倍数的值对各上述下位层模块的分频时钟的配线路径进行分割的方式确定第2同步FF的级数,其中,上述第2同步FF在各上述下位层模块的分频时钟的配线路径上串联配置,且与上述基准时钟同步而将上述分频时钟作为数据信号来依次保持;
[0037]将从上述基准时钟和上述分频时钟的分支点至各上述下位层模块的各第2同步FF以及第I同步FF为止的延迟时间的目标值确定为上述第2同步FF之间的基准时钟的延迟时间的最大值以下的延迟时间;
[0038]在分频时钟的配线路径上的位置配置已确定级数的各上述第2同步FF,其中,该分频时钟以从上述基准时钟和上述分频时钟的分支点至各上述下位层模块的已确定级数的各上述第2同步FF以及第I同步FF为止的延迟时间为上述延迟时间的目标值;
[0039]在上述分频时钟的配线路径上的各第2同步FF的后方配置锁存器,其中,上述锁存器在与前级的上述第2同步FF的时钟输入端子连接的基准时钟的低电平期间,使上述前级的第2同步FF的输出信号通过;以及
[0040]将与各上述下位层模块的第I级的第2同步FF的时钟输入端子连接的基准时钟延迟了至各上述第2同步FF为止的延迟时间的目标值份的延迟基准时钟连接于各上述第2同步FF的时钟输入端子,并将与最后一级的上述第2同步FF连接的延迟基准时钟连接于上述基准时钟的时钟树的起点。
[0041 ]发明效果
[0042]在本发明中,通过将第I同步FF配置于下位层模块的分频时钟的时钟树的起点,能够使基准时钟和分频时钟的分支点移至第I同步FF上的基准时钟和分频时钟的分支点,并缩短从分支点至第2终端FF为止的配线距离,因此能够减小时序裕度,使时序设计变得容易O
[0043]另外,根据本发明,通过在第2同步FF的后方增加锁存器,例如在基准时钟的高电平期间由锁存器保持并输出在基准时钟的上升沿使第2同步FF通过了的分频时钟的数据信号。由此,分频时钟开始变化的时刻可靠地被延迟基准时钟的半个周期的时间,因此无需通过缓冲器确保延迟时间,从而时序设计变得容易。
【附图说明】
[0044]图1是表示应用本发明的时钟同步方法而设计的半导体集成电路的结构的一个实施方式的电路图。
[0045]图2是表示本发明的时钟同步方法的各工序的一例的流程图。
[0046]图3是表示图1所示半导体集成电路中单元之间的延迟时间的一例的示意图。
[0047]图4是表示基准时钟及分频时钟从时钟生成电路供给至6个下位层模块时的一例的框图。
[0048]图5A是表示图1所示时钟同步电路的局部结构的一例的电路图,图5B是表示图5A所示电路的动作的一例的时序图。
[0049]图6是表示现有半导体集成电路的结构的一例的示意图。
[0050]图7是表示图6所示半导体集成电路的动作的一例的时序图。
[0051 ]图8是表示现有半导体集成电路的结构的另一例的示意图。
[0052 ]图9是表示图8所示半导体集成电路的动作的一例的时序图。
[0053]图1O是表示现有半导体集成电路的结构的另一例的示意图。
[0054]图11是表示图1O所示半导体集成电路的动作的一例的时序图。
[0055 ]图12是表示图1O所示半导体集成电路中单元之间的延迟时间的一例的示意图。
[0056]图13是表示现有半导体集成电路的结构的另一例的示意图。
[0057]图14是表不图13所不时钟同步电路的局部结构的一例的电路图。
[0058]图15是表不图13所不时钟同步电路的局部结构的另一例的电路图。
[0059 ]图16是表不图13所不时钟同步电路的局部结构的另一例的电路图。
[0060]图17A是表示图16所示时钟同步电路的局部结构的一例的电路图,图17B是表示图17A所示电路的动作的一例的时序图。
【具体实施方式】
[0061]以下,根据附图所示的优选实施方式,详细说明本发明的时钟同步方法。
[0062]图1是表示应用本发明的时钟同步方法而设计的半导体集成电路的结构的一个实施方式的电路图。该图所示的半导体集成电路10是应用本发明的时钟同步方法并通过分层布局设计方法所设计的电路,其具备3个下位层模块A、B、C、以及除了该下位层模块A、B、C以外的顶层模块。
[0063]顶层模块具备时钟生成电路12,时钟生成电路12具备生成恒定周期(频率)的基准时钟15的PLL电路14、以及将通过PLL电路14生成的基准时钟15进行η分频(η为2以上的整数)来生成分频时钟17的分频电路16。
[0064]应予说明,图示例的分频电路16中在将基准时钟15进行分频的分频器的后方设置有锁存器,该锁存器与后述的锁存器42相同,在输入到分频器的基准时钟15的低电平期间使数据通过。该锁存器并非必需,但设置该锁存器也无妨。
[0065]各下位层模块A、B、C具备与基准时钟15同步动作的第I终端FF18、与分频时钟17同步动作的第2终端FF20、以及在各下位层模块A、B、C的内部使用的基准时钟的时钟树19以及分频时钟的时钟树21 (图1中以三角框表示时钟树)。
[0066]接着,时钟同步电路使从时钟生成电路12经由各下位层模块A、B、C所具备的基准时钟的时钟树19以及分频时钟的时钟树21供给至第I终端FF18和第2终端FF20的基准时钟以及分频时钟的相位同步,且具备与各下位层模块A、B、C对应的第I时钟同步电路22、第2时钟同步电路24和第3时钟同步电路26。
[0067]第I时钟同步电路22具备5级的基本同步电路28、30、32、34、36、第I同步FF38、以及将基准时钟15延迟的缓冲器44。第I级?第4级的基本同步电路28、30、32、34以及缓冲器44配置于顶层模块,第5级的基本同步电路36以及第I同步FF38配置于下位层模块A的内部。
[0068]第I级的基本同步电路28具备第2同步FF40及锁存器42。基准时钟15从时钟生成电路12的PLL电路14输入到第2同步FF40的时钟输入端子,分频时钟17从分频电路16输入到第2同步FF40的数据输入端子。输入到第2同步FF40的时钟输入端子的基准时钟15的反转输入到锁存器42的时钟输入端子,第2同步FF40的输出信号输入到锁存器42的数据输入端子。
[0069]第2同步FF40与基准时钟15的上升同步而保持分频时钟17(重新保持)。
[0070]锁存器42在基准时钟为低电平期间,使前级的第2同步FF40的输出信号通过,并在基准时钟为高电平期间,保持已通过的第2同步FF40的输出信号。
[0071]应予说明,在图1的例子中,在锁存器42的后方设置有缓冲器。该缓冲器并非必需,但在锁存器42的后方设置缓冲器也无妨。
[0072]第2级?第5级的基本同步电路30、32、34、36与第I级的基本同步电路28为相同的结构,前级的基本同步电路28、30、32、34的锁存器42的输出信号分别输入到第2同步FF40的数据输入端子,基准时钟15通过缓冲器44依次延迟了恒定延迟时间份的延迟基准时钟及其反转输入到第2同步FF40的时钟输入端子及锁存器42的时钟输入端子。
[0073]在下位层模块A的内部使用的基准时钟从基准时钟15的时钟树19输入到第I同步FF38的时钟输入端子,第5级的基本同步电路36的锁存器42的输出信号输入到第I同步FF38的数据输入端子。
[0074]第I同步FF38与在下位层模块A的内部使用的基准时钟的上升同步而保持第5级的基本同步电路36的锁存器的输出信号。
[0075]另外,输入到第5级的基本同步电路36的第2同步FF40的时钟输入端子的延迟基准时钟作为在下位层模块A的内部使用的基准时钟而输入到基准时钟的时钟树19的起点(输入端子),第I同步FF38的输出信号作为在下位层模块A的内部使用的分频时钟而输入到分频时钟的时钟树21的起点。
[0076]第2及第3时钟同步电路24、26与第I时钟同步电路22为相同的结构。
[0077]在半导体集成电路10中,在顶层模块中,通过时钟生成电路12的PLL电路14生成恒定周期的基准时钟15,通过分频电路16,基准时钟15被η分频而生成分频时钟17。
[0078]接着,通过与各下位层模块A、B、C对应的缓冲器44,生成基准时钟15依次延迟的延迟基准时钟,并经由基准时钟的时钟树19供给到所有的第I终端FF18。
[0079]另外,通过与各下位层模块A、B、C对应的时钟同步电路的第I级的基本同步电路28的第2同步FF40,与基准时钟15的上升同步地,分频时钟17作为数据信号而被保持,接着,通过锁存器42,在输入到第2同步FF40的基准时钟15的高电平期间,第2同步FF40的输出信号被保持,从而第2同步FF40的输出信号被延迟基准时钟15的半个周期的时间。
[0080]同样地,通过第2级的基本同步电路30的第2同步FF40,第I级的基本同步电路28的锁存器42的输出信号会被保持从通过缓冲器44延迟的延迟基准时钟的上升至下降为止的半个周期,接着,在延迟基准时钟的高电平期间,通过锁存器42,第2同步FF40的输出信号被延迟延迟基准时钟的半个周期的时间。第3级?第5级的基本同步电路32、34、36也同样地进行动作。
[0081 ] 并且,通过第I同步FF38,与从基准时钟的时钟树19输入的基准时钟的上升同步地,第5级的基本同步电路36的锁存器42的输出信号作为数据信号而被保持,第I同步FF38的输出信号即经时序调整的分频时钟经由将保持于第I同步FF38的分频时钟的数据信号作为数据输入的分频时钟的时钟树21供给至所有第2终端FF20。
[0082]接着,参考图2的流程图,按照本发明的时钟同步方法,对进行基准时钟以及分频时钟的布局设计时的各工序进行说明。
[0083]在进行半导体集成电路10的布局设计时,首先在各下位层模块A、B、C中使用时钟树综合的方法生成基准时钟的时钟树19以及分频时钟的时钟树21 (步骤SI)。
[0084]由此,生成基准时钟的时钟树19,使从在各下位层模块A、B、C的内部使用的基准时钟的起点至所有第I终端FF18为止的延迟时间相同。同样地,生成分频时钟的时钟树21,使从在各下位层模块A、B、C的内部使用的分频时钟的起点至所有第2终端FF20为止的延迟时间相同。
[0085]在本实施方式的情况下,如图3所示,在下位层模块A中,从在内部使用的基准时钟以及分频时钟的起点至所有第I终端FF18以及所有第2终端FF20为止的延迟时间设为2ns、Ins。同样地,在下位层模块B中,从在内部使用的基准时钟以及分频时钟的起点至所有第I终端FF18以及所有第2终端FF20为止的延迟时间设为7ns、5ns,在下位层模块C中,从在内部使用的基准时钟以及分频时钟的起点至所有第I终端FF18以及第2终端FF20为止的延迟时间设为5ns、3ns。
[0086]接着,在顶层模块中,延续着由各下位层模块A、B、C中的基准时钟的时钟树19及分频时钟的时钟树21引起的延迟时间的结果,生成顶层模块的基准时钟的时钟树以及分频时钟的时钟树,以使从基准时钟15和分频时钟17的分支点13至生成基准时钟的时钟树19以及分频时钟的时钟树21的各下位层模块A、B、C所具备的第I终端FF18及第2终端FF20为止的延迟时间相同(步骤S2)。
[0087]在此,基准时钟15和分频时钟17的分支点13是指为了将基准时钟输入到与基准时钟同步动作的FF,向FF输入的基准时钟从基准时钟的配线被分支的点。
[0088]在图1的例子中,不仅基准时钟从基准时钟的配线向分频电路16的FF分支的点是分支点,向各下位层模块A、B、C的第2同步FF40分支的点、以及向第I同步FF38分支的点也是分支点。
[0089]本实施方式的情况下,如图3所示,从基准时钟15和分频时钟17的分支点13至在下位层模块A的内部使用的基准时钟以及分频时钟的起点(输入端子)为止的延迟时间设为1ns、I Ins。同样地,从基准时钟15和分频时钟17的分支点13至在下位层模块B的内部使用的基准时钟以及分频时钟的起点为止的延迟时间为5ns、7ns,从基准时钟15和分频时钟17的分支点13至在下位层模块C的内部使用的基准时钟以及分频时钟的起点为止的延迟时间设为 7ns、9ns。
[0090]由此,从基准时钟15的分频时钟17的分支点13至各下位层模块A、B、C的第I终端FF18、第2终端FF20为止的延迟时间均统一为12n s,能够使下位层模块A、B、C所具备的所有第I终端FFl 8、第2终端FF20同步动作。
[0091]接着,在各下位层模块A、B、C的分频时钟的时钟树21的起点配置第I同步FF38(步骤S3) 0
[0092]基准时钟从各下位层模块A、B、C的基准时钟的时钟树19输入到第I同步FF38的时钟输入端子,分频时钟17输入到第I同步FF38的数据输入端子。另外,第I同步FF38的数据输出端子连接于基准时钟的时钟树19的起点。
[0093]在此,在分频时钟的时钟树21的起点配置第I同步FF38不仅包含分频时钟的时钟树21的起点的位置,还包含能够满足第I同步FF38和第2终端FF20之间的时序约束的位置。
[0094]如此,通过将第I同步FF38配置于各下位层模块A、B、C内部的分频时钟的时钟树21的起点,分支点从基准时钟15和分频时钟17的分支点13移至第I同步FF38中的基准时钟和分频时钟的分支点39,能够缩短从分支点至第2终端FF20为止的配线距离,因此能够减小时序裕度,使时序设计变得容易。
[0095]应予说明,不限于此,也可以将第I同步FF38配置于顶层模块。此时也将第I同步FF38配置于各下位层模块A、B、C的分频时钟的时钟树21的起点附近位置,例如各下位层模±夬八3、(:的分频时钟的时钟树的起点,而不是配置于基准时钟15和分频时钟17的分支点13,由此能够减小时序裕度。
[0096]接着,求出从基准时钟15和分频时钟17的分支点13至各下位层模块A、B、C的第I同步FF38为止的基准时钟15的延迟时间,并获取基准时钟15的延迟时间的最大值(步骤S4)。
[0097]通过生成基准时钟的时钟树19以及分频时钟的时钟树21,确定从基准时钟15和分频时钟17的分支点13至各下位层模块A、B、C的第I同步FF38为止的物理配线的路径,其结果,确定基准时钟15以及分频时钟17的物理配线距离。另外,因为基准时钟15以及分频时钟17的物理配线的每个单位长度的延迟时间和各单元的延迟时间是已知的,因此根据这些,能够计算出从基准时钟15和分频时钟17的分支点13至各下位层模块A、B、C的第I同步FF38为止的基准时钟15的延迟时间。
[0098]本实施方式的情况下,如图3所示,从基准时钟15和分频时钟17的分支点13至各下位层模块A、B、C的第I同步FF38为止的基准时钟15的延迟时间为llns、7ns、9ns,因此基准时钟15的延迟时间的最大值成为11ns。
[0099]接着,将至各下位层模块A、B、C为止的在分频时钟17的配线路径上串联配置的多个第2同步FF40之间的基准时钟15的延迟时间的最大值确定为不到基准时钟15的半个周期的时间(步骤S5)。
[0?00]本实施方式的情况下,基准时钟15的周期为5ns,即其半个周期为2.5ns,从而将在各下位层模块A、B、C的分频时钟17的配线路径上串联配置的第2同步FF40之间的基准时钟15的延迟时间的最大值设为2ns。例如,能够通过模拟最坏情况,将第2同步FF40之间的基准时钟15的延迟时间的最大值确定为不到基准时钟15的半个周期的时间。
[0101]接着,以用在将基准时钟15的延迟时间的最大值除以第2同步FF40之间的基准时钟15的延迟时间的最大值而得到的除算结果的值以上且为分频时钟17的分频数的倍数的值对各下位层模块A、B、C的分频时钟17的配线路径进行分割的方式确定第2同步FF40的级数(步骤S6),该第2同步FF40串联配置于至各下位层模块A、B、C为止的分频时钟17的配线路径。
[0102]在本实施方式的情况下,通过将基准时钟15的延迟时间的最大值即Ilns除以第2同步FF40之间的基准时钟15的延迟时间的最大值即2ns,得到除算结果的值即I lns/2ns =5.5。当分频时钟17通过将基准时钟15进行2分频而生成时,以用在除算结果的值即5.5以上且为2的倍数的6将各下位层模块A、B、C的分频时钟17的配线路径进行6分割的方式,确定各下位层模块A、B、C的第2同步FF40的级数为5级。
[0103]在此,关于各下位层模块A、B、C的第2同步FF40的级数,若相位一致则无需相同,当分频时钟17通过将基准时钟进行η分频而生成时,可相差η的倍数的级数份。
[0104]另外,为了使时序设计更容易,也可以以用成为在除算结果的值以上的分频时钟17的分频数η的倍数的最小值以上的值将各下位层模块A、B、C的分频时钟17的配线路径进行分割的方式,确定各下位层模块A、B、C的第2同步FF40的级数。
[0105]接着,将从基准时钟15和分频时钟17的分支点13至各下位层模块A、B、C的各第2同步FF40及第I同步FF38为止的延迟时间的目标值确定为第2同步FF40之间的基准时钟15的延迟时间的最大值以下的延迟时间(步骤S7)。
[0106]例如,用已确定级数的第2同步FF40将各下位层模块A、B、C的基准时钟15的延迟时间分割成第2同步FF40之间的基准时钟15的延迟时间的最大值以下的延迟时间,从而确定延迟时间的目标值。
[0107]在本实施方式的情况下,如图3所示,将在下位层模块A中将从基准时钟15和分频时钟17的分支点13至5级的第2同步FF40以及第I同步FF38为止的延迟时间,分别设为2ns、4ns、6ns、8ns、1ns和I Ins,以使延迟时间成为第2同步FF40之间的基准时钟15的延迟时间的最大值即2ns ο同样地,在下位层模块B中,将从基准时钟15和分频时钟17的分支点13至5级的第2同步FF40以及第I同步FF38为止的延迟时间分别设为lns、2ns、3ns、4ns、5ns和7ns。在下位层模块C中,将从基准时钟15和分频时钟17的分支点13至5级的第2同步FF40以及第I同步FF38为止的延迟时间分别设为Ins、2.5ns、4ns、5.5ns、7ns和9ns。
[0108]接着,在分频时钟17的配线路径上的位置配置已确定级数的各第2同步FF40(步骤S8),在该分频时钟17,从基准时钟15和分频时钟17的分支点13至各下位层模块A、B、C的已确定级数的各第2同步FF40以及第I同步FF38为止的延迟时间成为延迟时间的目标值。
[0109]已确定了级数的第2同步FF40在各下位层模块A、B、C的分频时钟17的配线路径上串联配置。另外,分频时钟17连接于第I级的第2同步FF40的数据输入端子,最后一级的第2同步FF40的数据输出端子连接于第I同步FF38的数据输入端子。
[0110]如上所述,基准时钟15及分频时钟17的物理配线的每个单位长度的延迟时间和各单元的延迟时间是已知的,据此,通过计算出从基准时钟15和分频时钟17的分支点13至各下位层模块A、B、C的各第2同步FF40以及第I同步FF38为止的延迟时间,能够获取计算出的各延迟时间成为延迟时间的目标值的在分频时钟17的配线路径上的位置(距离基准时钟15和分频时钟17的分支点13的配线距离)。
[0111]另外,在本实施方式中,已确定的5级的第2同步FF40中,第I级?第4级的第2同步FF40配置于顶层模块,最后一级的第2同步FF40配置于各下位层模块A、B、C的内部。
[0112]如此,当第I同步FF38配置于各下位层模块A、B、C的内部时,可将已确定级数的第2同步FF40中至少一个配置于各下位层模块A、B、C的内部。或者,可将第I同步FF38、以及已确定级数的第2同步FF40配置于顶层模块。
[0113]接着,在分频时钟17的配线路径上的各第2同步FF40的后方配置锁存器42(步骤S9)。
[0114]锁存器42的时钟输入端子连接有与相同的基本同步电路的第2同步FF40的时钟输入端子连接的基准时钟或延迟基准时钟的反转,锁存器42的数据输入端子连接有相同的基本同步电路的第2同步FF40的输出信号。另外,锁存器42的数据输出端子连接于后级的基本同步电路的第2同步FF40的数据输入端子。
[0115]最后,将与各下位层模块A、B、C的第I级的第2同步FF40的时钟输入端子连接的基准时钟通过缓冲器44而依次延迟了至各第2同步FF40为止的延迟时间的目标值份的延迟基准时钟连接于各第2同步FF40的时钟输入端子,并将与最后一级的第2同步FF40连接的延迟基准时钟连接于基准时钟的时钟树19的起点(步骤S1)。
[0116]通过以上工序,完成基准时钟15及分频时钟17的布局设计。
[0117]图4是表示基准时钟以及分频时钟从时钟生成电路供给至6个下位层模块的情况的一例的框图。从顶层模块50所具备的时钟生成电路52延伸至各下位层模块54、56、58、60、6 2、6 4的线6 6表不基准时钟的时钟树以及分频时钟的时钟树的物理配线路径,圆圈记号6 8表示基本同步电路以及第I同步FF的配置位置。
[0118]在该例子中,从时钟生成电路52中基准时钟和分频时钟的分支点至所有下位层模块54、56、58、60、62、64的第I同步FF为止的基本同步电路及第I同步FF的级数相同地为8级。另外,通过将各基本同步电路的第2同步FF配置于满足第2同步FF之间的基准时钟的延迟时间的最大值的一定距离以内,可以不进行复杂的延迟时间的调整而自然地满足建立/保持约束。
[0119]本实施方式的半导体集成电路10中也为了不引起数据的穿透,如图5A所示,需要在后级的FFB的时钟CLK的上升之后使FFB的数据D发生变化,这一点与现有电路的情况相同。
[0120]但是,本实施方式的情况下,如图5B所示,通过在FFA的后方增加锁存器A,将在时钟CLK处于高电平期间由锁存器A保持的数据D作为数据Q输出,该数据D在时钟CLK处于低电平期间通过。由此,数据Q的变化的开始时刻可靠地被延迟了时钟CLK的半个周期的时间,因此无需通过缓冲器确保延迟时间。
[0121]S卩,若为通过该锁存器保持数据Q的期间内,则后级的FFB的时钟CLK迟于前级的FFA的时钟CLK也不成问题。另外,数据Q的流向是单向的,因此若不到时钟CLK的I个周期,则后级的FFB的时钟CLK早于前级的FFA的时钟CLK也不成问题。如此,通过增加锁存器,时钟CLK的到达时间能够留有余地,因此时序设计变得容易。
[0122]例如,当时钟的周期为5ns时,通过在FFA的后方配置锁存器A,在时钟CLK成为高电平之后的时钟CLK的半个周期的2.5ns的期间,由锁存器A保持数据D并输出数据Q。因此,若FFA至后级的FFB的时钟CLK的延迟时间小于2.5ns,则不引起保持违规。利用这种情况,在该例子中,即使将FFA和FFB之间的时钟CLK的延迟时间的最大值设为例如大至2ns,也能够毫无问题地满足时序约束。
[0123]另外,数据路径的单元延迟成为锁存器A的I级份的较小的延迟,即使其随着动作环境而变动,变动幅度与多级的缓冲器相比也会非常小。因此,与现有电路相比,时序设计变得非常容易,不需要如现有电路那样的时序调整的工夫。
[0124]另外,在半导体集成电路10中,在分频时钟17的配线路径中只要满足相邻的第I同步FF38及第2同步FF40之间的建立/保持约束即可,而通过增加锁存器42可轻松地满足该时序约束。因此,即使在时钟同步电路的第I级的第2同步FF40和第I同步FF38的时钟的延迟差超过基准时钟15的周期的情况,或在多个下位层模块A、B、C的第I终端FF18、第2终端FF20的时钟延迟各不相同的情况,也能够毫无问题地进行设计。
[0125]应予说明,可以使第I同步FF38以及第2同步FF40与基准时钟15的下降同步动作。此时,基准时钟15或延迟基准时钟输入到锁存器42的时钟输入端子。即,无关于第I同步FF38及第2同步FF40与基准时钟15的上升同步动作或与下降同步动作,只要以将前级的第2同步FF40的输出保持时钟半个周期量的方式使锁存器42动作即可。
[0126]本发明基本如上。
[0127]以上,对本发明进行了详细地说明,但本发明并不限定于上述实施方式,在不脱离本发明的主旨的范围内,当然也可以进行各种改良和变更。
【主权项】
1.一种时钟同步方法,其从顶层模块所具备的时钟生成电路经由多个下位层模块各自所具备的基准时钟的时钟树以及所述基准时钟被分频的分频时钟的时钟树,使所述基准时钟以及所述分频时钟的相位同步,所述基准时钟以及所述分频时钟供给至与所述基准时钟同步动作的第I终端FF以及与所述分频时钟同步动作的第2终端FF,所述时钟同步方法的特征在于,具备如下步骤: 在各所述下位层模块的分频时钟的时钟树的起点配置第I同步FF,其中,所述第I同步FF与从各所述下位层模块所具备的基准时钟的时钟树输入的基准时钟同步而将所述分频时钟作为数据信号来保持,并以被保持的所述分频时钟的数据信号作为数据输入,且与各所述下位层模块所具备的基准时钟的时钟树的起点连接; 求出从所述基准时钟和所述分频时钟的分支点至各所述下位层模块的第I同步FF为止的基准时钟的延迟时间,并获取所述基准时钟的延迟时间的最大值; 将在各所述下位层模块的分频时钟的配线路径上串联配置的多个第2同步FF之间的基准时钟的延迟时间的最大值确定为不到所述基准时钟的半个周期的时间; 以用在将所述基准时钟的延迟时间的最大值除以所述第2同步FF之间的基准时钟的延迟时间的最大值而得到的除算结果的值以上且为所述分频时钟的分频数的倍数的值对各所述下位层模块的分频时钟的配线路径进行分割的方式确定第2同步FF的级数,其中,所述第2同步FF在各所述下位层模块的分频时钟的配线路径上串联配置,且与所述基准时钟同步而将所述分频时钟作为数据信号来依次保持; 将从所述基准时钟和所述分频时钟的分支点至各所述下位层模块的各第2同步FF以及第I同步FF为止的延迟时间的目标值确定为所述第2同步FF之间的基准时钟的延迟时间的最大值以下的延迟时间; 在分频时钟的配线路径上的位置配置已确定级数的各所述第2同步FF,其中,该分频时钟以从所述基准时钟和所述分频时钟的分支点至各所述下位层模块的已确定级数的各所述第2同步FF以及第I同步FF为止的延迟时间为所述延迟时间的目标值; 在所述分频时钟的配线路径上的各第2同步FF的后方配置锁存器,其中,所述锁存器在与前级的所述第2同步FF的时钟输入端子连接的基准时钟的低电平期间,使前级的所述第2同步FF的输出信号通过;以及 将与各所述下位层模块的第I级的第2同步FF的时钟输入端子连接的基准时钟延迟了至各所述第2同步FF为止的延迟时间的目标值份的延迟基准时钟连接于各所述第2同步FF的时钟输入端子,并将与最后一级的所述第2同步FF连接的延迟基准时钟连接于所述基准时钟的时钟树的起点。2.根据权利要求1所述的时钟同步方法,其中, 将所述第I同步FF配置于各所述下位层模块的内部。3.根据权利要求2所述的时钟同步方法,其中, 将在各所述下位层模块的分频时钟的配线路径上串联配置的多个第2同步FF中的至少一个配置于各所述下位层模块的内部。4.根据权利要求1所述的时钟同步方法,其中, 将所述第I同步FF及在各所述下位层模块的分频时钟的配线路径上串联配置的多个第2同步FF配置于所述顶层模块。5.根据权利要求1?4中任一项所述的时钟同步方法,其中, 根据所述基准时钟的物理配线距离、所述基准时钟的物理配线的每个单位长度的延迟时间、以及各单元的延迟时间,计算从所述基准时钟和所述分频时钟的分支点至各所述下位层模块的第I同步FF为止的基准时钟的延迟时间。6.根据权利要求1?4中任一项所述的时钟同步方法,其中, 通过模拟最坏情况,将所述第2同步FF之间的基准时钟的延迟时间的最大值确定为不到所述基准时钟的半个周期的时间。7.根据权利要求1?4中任一项所述的时钟同步方法,其中, 当所述分频时钟将所述基准时钟进行η分频时,各所述下位层模块的第2同步FF的级数相同,或相差η的倍数的级数份,其中,η为2以上的整数。8.根据权利要求1?4中任一项所述的时钟同步方法,其中, 以用成为所述除算结果的值以上的所述分频时钟的分频数的倍数的最小值以上的值来分割各所述下位层模块的分频时钟的配线路径的方式,确定各所述下位层模块的第2同步FF的级数。9.根据权利要求1?4中任一项所述的时钟同步方法,其中, 用已确定级数的所述第2同步FF将各所述下位层模块的基准时钟的延迟时间分割成所述第2同步FF之间基准时钟的延迟时间的最大值以下的延迟时间,从而确定所述延迟时间的目标值。10.根据权利要求1?4中任一项所述的时钟同步方法,其中, 根据所述基准时钟的物理配线的每个单位长度的延迟时间、以及各单元的延迟时间,计算从所述基准时钟和所述分频时钟的分支点至各所述下位层模块的各第2同步FF以及第I同步FF为止的延迟时间,从而获取以计算出的各所述延迟时间为所述延迟时间的目标值的在所述分频时钟的配线路径上的位置。
【文档编号】H03L7/10GK105897261SQ201610086604
【公开日】2016年8月24日
【申请日】2016年2月16日
【发明人】吉木保
【申请人】株式会社巨晶片
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1