首页> 中国专利> 设计时钟域中锁存器的布图的方法和计算机系统

设计时钟域中锁存器的布图的方法和计算机系统

摘要

一种设计时钟域中锁存器的布图的方法和计算机系统,其中通过增加吸引力逐步牵引锁存器直到其最终与时钟分布结构例如局部时钟缓冲器(LCB)相邻。在迭代时,调用时序优化,例如栅极尺寸调整和再缓冲,以保持时间估计准确。通过施加迭代时钟网络加权调整,本发明使逻辑布局和时钟布局之间的相互作用更强,这一点可产生更高质量的时序并且大大节省功率。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-11-24

    专利权的转移 IPC(主分类):G06F17/50 登记生效日:20171106 变更前: 变更后: 申请日:20071108

    专利申请权、专利权的转移

  • 2012-07-04

    授权

    授权

  • 2008-08-20

    实质审查的生效

    实质审查的生效

  • 2008-06-25

    公开

    公开

说明书

技术领域

本发明总体涉及半导体芯片和集成电路的制造与设计,更特别是涉及一种设计锁存器和其它逻辑单元的物理布图(布局)的方法,该锁存器和逻辑单元从时钟分布结构例如局部时钟缓冲器接收时钟信号。

背景技术

集成电路广泛用于各种电子应用,从简单装置例如手表到非常复杂的计算机系统。通常认为微电子集成电路(IC)芯片是在半导体基底(例如硅)上形成的具有单元间电互联的逻辑单元的集合。IC可包括大量单元并需要单元间的复杂连接。单元是一个或多个电路元件组,例如晶体管、电容器、电阻器、电感器、以及其它组合在一起执行逻辑功能的基本电路。单元类型包括例如芯单元、扫描单元和输入/输出(I/O)单元。每个IC单元可具有一个或多个引脚,每个引脚又通过连线连至IC的一个或多个其它引脚。还在芯片表面上形成连接IC引脚的连线。对于更复杂的设计,通常有至少四个不同的用于布线的导电介质层,例如多晶硅层和三个金属层(金属-1、金属-2、和金属-3)。多晶硅层、金属-1、金属-2、和金属-3都用于垂直和/或水平布线。

通过首先构思逻辑电路描述、然后将逻辑描述转换为物理描述或者几何布图,而制造IC芯片。通常采用记录所有网络或单元引脚之间的互联的“连线表”执行该过程。布图通常由多层中的一组平面几何形状组成。然后检验该布图以保证其满足所有的设计要求,特别是时序要求。结果是一组作为描述该布图的中间形式的设计文档。然后将该设计文档转换为图形产生器文档,其用于通过光束或者电子束图形产生器产生称为掩模的图形。制造时,这些掩模用于采用一系列光刻步骤形成硅晶片的图形。将电路说明转换为布图的过程称为物理设计。

半导体制造中的单元布局包括确定特定单元应当最佳(或者接近于最佳)地放置在集成电路器件表面上的位置。因为超大规模集成(VLSI)器件制造过程需要大量元件和细节,所以物理设计如果没有计算机辅助则不可实现。所以,大多数物理设计阶段大量采用计算机辅助设计(CAD)工具,并且许多阶段已经部分或者全部自动化。物理设计过程的自动化提高了集成水平、减少了换向时间以及增强了芯片性能。对于电子设计自动化(EDA)已经产生了几种不同的程序语言,包括Verilog、VHDL和TDML。典型的EDA系统接收一种或多种IC器件的高级行为描述,并将该高级设计语言描述转换为各抽象级的连线表。

布局算法通常基于模拟退火、基于自顶向下切割的分区、或者分析范例(或者其组合)。近年来,特别是在基于自顶向下分割的分区和分析领域出现了几种新的理论布局工具。作为用于微分割分区的快速而极有效的算法的多级分区帮助产生了新一代基于自顶向下分割的布局器。该类布局器将单元分为两个(两分)或者四个(四分)芯片区,然后递归地划分每个区直到获得总体(粗略)布局。分析布局器允许单元在设计上临时重叠。通过由划分或者引入附加力和/或限制以产生新的优化问题来消除重叠而得到合法化。著名的分析布局器PROUD和GORDIAN都重复采用等分技术以去除重叠。基于Eisenmann力的布局器除了采用熟知的依赖线长的力以外还采用附加力以减小单元重叠并考虑布局区域。分析布局器最优地解决弛豫布局组成,例如尽量降低整体二次线长。二次布局器通常采用各种数值优化技术以求解线性系统。两种普遍技术为共轭梯度(CG)和逐次超弛豫(SOR)。PROUD布局器采用SOR技术,而GORDIAN布局器采用CG算法。

尽管这些技术提供单元的关于其数据互联的足够的布局,但是设计者在构造单元时钟网络时还有另外一个挑战,采用最新的技术例如低功率、65纳米集成电路使得该挑战更加困难。因为能耗问题,低功率电路(例如对于微处理芯片为20瓦或者更低)更加普遍。特别是,能耗已经成为采用深亚微细技术产生高性能电路设计(在大约1千兆赫或更高的频率下工作)的限制因素。时钟网络在数GHz设计中占总有效功率的50%。优选低功率设计还因为其显示出更低的电源噪声并提供更好的制造偏差的容差。

存在几种尽量降低功率同时获得高性能、低功率系统的时序目标的技术。一种方法包括采用局部时钟缓冲器(LCB)分布时钟信号。典型的时钟控制系统具有产生主时钟信号的时钟产生电路(例如锁相环),将主时钟信号馈送至在LCB产生同步整体时钟信号的时钟分布网络。每个LCB调整整体时钟工作循环以及边沿,以满足相应电路元件的要求,例如局部逻辑电路或者锁存器(这里所用的术语“锁存器”代表任何通常为时钟分布网络汇点的计时元件)。因为该时钟网络是所有互联设备中的一个最大功率消耗装置,所以其还有利于控制LCB的电容负载,每个LCB驱动一组多个时钟汇点。一种减小电容负载的方法为锁存器集群,即置于其时钟域的相应LCB附近的锁存器集群。结合LCB的锁存器集群可大大减小总时钟线电容,其又减小总的时钟功率消耗。因为将大多数锁存器置于LCB附近,所以还减小了时钟偏差,这有助于改进电路时序。

在图1的流程图中描述了具有LCB和锁存器集群的常规布局。该过程从基于电路(1)的输入布图的初始布局开始。可通过EDA工具提供该输入布图,或者该布图可以简单地为电路元件的随机布图。初始布局采用例如二次布局在集成电路区域中定位所有的电路元件包括时钟汇点。可采用其它布局技术,但是二次布局常常产生比例如基于微分割的布局的可选技术更好的结果。该过程的二次布局部分求解线性系统Ax=b,这里A为优化矩阵,x和b为向量。在二次布局中,可递归地将单元分为更小的面元(bin),直到达到每个面元的对象目标数,例如五个对象/面元。对于初始布局,所有的线(边沿)具有相同的网络权重。然后在早期优化(2)中分析和调整电路时序。该优化可包括栅极尺寸重新调整和采用栅格系统例如50×50栅格的缓冲器插入,其中将缓冲器分配给具有较低逻辑密度的栅格单元。接下来是和步骤1相似的加权布局(3),但是在该加权布局中输入布图为早期优化步骤2的输出,并且将不同的权重施加至基于时序约束的不同边沿。该划分对于加权布局还可更精细,例如递归地划分直到每个面元上有大约两个对象。在加权布局之后是后期优化,其提供不同的逻辑优化,例如缓冲器插入,但是处于更精细(或者有时相同)的程度,例如在100×100栅格(4)中。后期优化可以和早期优化相同,概念上的不同在于早期优化是在从未通过布图驱动优化步骤进行处理的电路上工作。

图1的步骤1和3不在锁存器和其它(非计时)逻辑单元之间区分,因此首先允许锁存器根据由数据路径时序驱动的布局工具自由移动。在接下来的步骤中,该过程仅仅集中于锁存器本身,即作为一个或多个时钟域的部分的锁存器。将锁存器分组为基于位置和时钟域(5)的给定集群。给定时钟域的LCB位于锁存器集群的质心,并将锁存器拉至LCB(6)。对于该锁存器-LCB驱动布局,LCB的尺寸临时缩减为和锁存器相同的宽度。将例如最重要数据路径的网络权重的10倍因子的较高权重(吸引)施加至锁存器和LCB之间的互联设备以进行该布局步骤。以该方式将所有的锁存器置于和相应LCB相邻,然后将其重新调整回其初始尺寸。最后的步骤为详细布局,其采用例如微分割布局或者启发式技术(7)细化布图。

所产生的LCB-锁存器结构相对于该布局过程所包括的其它电路元件非常大,并且大大影响电路时序。LCB本身占据特别大的区域,并且将锁存器限制为与LCB非常接近。虽然该过程相对于时钟网络具有一些优点,但是这样的限制严重影响布局器的灵活性,并且常常产生较差的逻辑布局。因此,期望的是设计一种改进的布局方法,其可减小对通过围绕LCB聚集锁存器而引入的对布局过程的干扰。如果该方法可平衡逻辑布局以及锁存器布局约束,以获得较高质量的时序,则其更为有利。

发明内容

因此本发明的一个目标在于提供一种设计集成电路布图的改进布局方法,其考虑时钟网络,并将属于不同时钟域的锁存器置于和其相应局部时钟缓冲器更近的地方但不牺牲时序要求。

本发明的另一个目标在于提供一种改进时序同时降低时钟能耗的方法。

而本发明的另一个目标在于提供一种高性能、低功率电路的改进锁存器布局技术。

上述目标在设计集成电路的时钟域中的锁存器布图的方法实现,所述方法包括:基于时序约束优化锁存器和其它电路元件的输入布图,以产生中间优化的布图;基于中间优化布图限定时钟域的时钟分布结构例如局部时钟缓冲器(LCB)的位置;基于吸引值将锁存器布局在时钟分布结构周围,同时布局其它电路元件以产生新的输入布图;以及迭代地重复优化、限定、并布局,同时逐次地增加吸引值。基于时钟域和集群分值将锁存器划分为集群,所述分数根据给定对象对与该对象尺寸的连接权重而变化。在锁存器集群的质心建立给定时钟域的LCB目标位置,然后通过提高吸引力将锁存器集群拉引至LCB。在示例性应用中,重复该优化、限定、和布局全部四次迭代,其相对吸引值为9、18、36和300。将该吸引值用作锁存器和LCB之间线长的乘法因子。还可在LCB本身和其相应目标位置之间采用增加的吸引值。

本发明的上述及其它目标、特征以及优点将在下文的详细描述中清楚。

附图说明

本领域技术人员通过参考附图可更好地理解本发明,及其多个目标、特征、和优点。

图1是描述具有时钟优化以及随后的锁存器-LCB驱动布局的常规锁存器布局技术逻辑流程的示图;

图2是根据本发明一个实施例编程用于执行集成电路的计算机辅助设计的计算机系统的框图;

图3A-3F为在三个时钟域中具有锁存器的集成电路的布图的俯视图,根据本发明一个实施例对该三个时钟域迭代优化并布局;以及

图4是描述本发明一个实施例的逻辑流程的示意图,其中以增加的锁存器-LCB吸引值迭代重复时钟优化和锁存器-LCB驱动布局。

不同附图中相同的参考标记表示相似或者相同的项目。

具体实施方式

现在参考附图,并特别参考附图2,描述了根据本发明一个应用编程进行集成电路的计算机辅助设计的计算机系统的一个实施例10。系统10包括执行程序指令的中央处理单元(CPU)12、存储系统的基本输入/输出逻辑的固件或者只读存储器(ROM)14、以及临时存储程序指令以及CPU12所采用的操作数数据的动态随机访问存储器(DRAM)16。CPU 12、ROM 14和DRAM 16均连至系统总线18。存储器层次中还有其它没有描述的结构,例如电路板上(L1)和二级(L2)高速缓冲存储器。在高性能应用中,系统10可包括多个CPU和分布系统存储器。

还采用PCI主桥22将CPU12、ROM14和DRAM16耦合至外围元件互联(PCI)局部总线10。PCI主桥22提供低时延路径,通过其处理器12可访问与总线存储器或者I/O地址空间内任意位置映射的PCI器件。PCI主桥22还提供高带宽路径以允许PCI器件访问DRAM16。连至PCI局部总线20的是局域网(LAN)适配器24、小型计算机系统接口(SCSI)适配器26、扩展总线桥28、音频适配器30、和图形适配器32。LAN适配器24可用于将计算机系统10连至外部计算机网络34,例如因特网。小型计算机系统接口(SCSI)适配器26用于控制高速SCSI盘驱动器36。盘驱动器36以更持久的状态存储程序指令和数据,包括如下所述体现本发明的程序。扩展总线桥28用于将工业标准结构(ISA)扩展总线38耦合至PCI局部总线20。如所示出,将数个用户输入设备连至ISA总线38,包括键盘40、麦克风42、和图形指点设备(鼠标)44。其它设备还可连至ISA总线38,例如CD-ROM驱动器46。音频适配器30控制扬声器48的音频输出,而图像适配器32控制至显示监视器50的视频输出,以允许用户如这里所述地执行集成电路设计。

尽管描述性的应用在盘驱动器36上提供了实施本发明的程序指令,但是本领域技术人员将理解,本发明可实施在采用其它计算机可读介质(包括传输介质)的程序产品中。

计算机系统10执行采用新型技术将时钟汇点布局在集成电路设计中的程序指令,其中优选通过常规方法将该汇点初始地布局和优化,其后如下文所述增加锁存器-LCB吸引值而迭代布局和优化该汇点。因此,实施本发明的程序可包括各种二次优化器、基于分割的分区装置和缓冲器插入工具的常规方面,而本领域技术人员在参考该公开内容时将会清楚这些细节。尽管这里将这些时钟汇点称作锁存器,但是该术语包括如触发器、动态逻辑电路、或者这些及其它计时电路元件任意组合的器件。

在一个应用中,计算机系统10如结合图1所述采用初始布局、早期优化、加权布局、后期优化以及锁存器聚集步骤(1-5)开始设计过程。输入数据(连线表)包括时钟域信息,并且在初始布局前该设计为跟踪时钟以将锁存器分配至其相应域组。这里,术语“时钟域”指用于选通汇点集合的任何非数据信号。该输入数据还可包括选通该域组的源信息。

可采用各种已知的聚集测量执行锁存器聚集。本发明优选将对象(锁存器或者逻辑单元)划分为基于时钟域和集群分值的集群,如2004年11月22日申请的美国专利申请10/996,293更详细地描述(其在此引入作为参考),所述集群分值根据给定对象对及该对象尺寸的连接权重变化。图3A中示出了所形成布图60的一个实例。在该简化实例中,有54个锁存器集群(实体块),每个集群位于三个不同时钟域62a、62b、62c的其中一个中。本领域技术人员将理解,本发明的实际应用可包括成百上千或者成千上万个具有大量锁存器集群和时钟域的时钟汇点。

该过程然后迭代地基于逐次增加的吸引值将锁存器置于相关的局部时钟缓冲器(LCB)、或者其它可用于时钟分布网络中的结构上。在该迭代期间,调用时序优化(例如栅极尺寸调整和重新缓冲)以保持时序估计准确。图3B中示出了锁存器-LCB驱动布局的第一次迭代。在图3A中间布图中,在相应时钟域62a、62b、62c的锁存器集群的质心建立LCB目标位置。对于第一次迭代,将锁存器-LCB吸引值(W1)设置为与先前加权布局中非关键网络的权重近以相同,以稍高的吸引值将LCB本身设置在其相应的目标位置。锁存器-LCB吸引值和LCB-目标位置吸引值用作确定布局有效连线长度的乘数。从集群中心至相应LCB中心测量实际线长。如和图3A相比,从图3B的总体更紧密布图66可以看出,该锁存器-LCB驱动布局将给定时钟域的锁存器集群围绕LCB拉引得更近。执行该锁存器-LCB驱动布局的专用算法可以是任何类型的布局器,优选为分析布局器例如尽量降低锁存器和LCB之间以及LCB和其目标位置之间总体加权线长的二次布局工具。

即使采用该更紧密的锁存器-LCB布局,也仍然存在几个和LCB稍远的锁存器集群,例如作为时钟域62a的部分并连至LCB64a的集群68、70和72。可使这些偏远的集群与LCB更近,同时通过在随后的迭代重新优化布图并逐渐增加锁存器-LCB吸引值以及LCB-目标位置吸引值而维持时序要求。图3C示出了通过另外的后期优化和重新聚集布图66产生的布图74。在该第二(中间)优化的布图74中,许多锁存器集群未变,但是将一些锁存器划分为不同的集群,并稍微移动一些集群。集群68、70、72距离时钟域62a中锁存器质心仍较远。该锁存器集群然后经历第二锁存器-LCB布局以形成图3D的布图76。对该第二次迭代,锁存器-LCB吸引值(W2)稍高于在第一次迭代中采用的前面的值,并且类似地增加LCB-目标位置吸引值。可以看出,布图76将集群牵引得距离LCB更近,特别是尽管集群72稍远但是集群68和70要近得多。

根据设计者的判断迭代地重复重新优化、重新聚集和锁存器-LCB驱动布局,设计者可例如基于计算约束设置迭代次数。还可在满足某些时序目标或者逐次迭代之间的时序改进低于阈值时终止迭代。在图3E和图3F中示出了第三次迭代。图3E中的布图78通过以布图76为输入而进行的另外的后期优化和重新聚集形成。可再次不同地划分该锁存器,并且某些锁存器集群的位置沿给定时钟域的锁存器质心改变。布图78然后用于重新定位LCB64a、64b和64c,接下来进行锁存器-LCB驱动布局以实现图3F的布图80。对于最终迭代,和LCB-目标位置吸引值一样,锁存器-LCB吸引值(W3)高得多。在该最终的布图80中,所有的锁存器集群,包括集群68、70和72,与相应的LCB较近。

可由设计者基于正在设计的电路的特定细微差别选择不同迭代中锁存器-LCB吸引值的特定值。在示例性实施中,存在四次优化迭代,接下来是逐次增加锁存器-LCB吸引值9、18、36和300以及逐次增加LCB-目标位置吸引值37、111、333和1000的锁存器聚集和锁存器-LCB驱动布局。这些权重仅仅应用于从LCB至锁存器的时钟信号布线。比较而言,数据信号布线的相对权重从10-100,这里10为正弛豫的最小值,而对最关键的数据连接给定权重100。

还可参考图4的流程进一步理解本发明,其描述了根据一个应用的逻辑流程。该过程从初始二次布局汇点开始,其中将汇点递归地划分为更小的面元,直到获得每个面元中五个对象(90)。对于初始布局,所有的线(边沿)具有相等的权重。然后在早期优化中分析和调整电路时序,包括采用10×10栅格进行栅极尺寸重新调整和缓冲器插入,其中将缓冲器分配给具有较低逻辑密度的栅格单元(92)。接下来是与初始布局类似的网络权重驱动布局,但是在网络权重驱动布局中,根据不同的边沿在满足时序约束中的临界性将不同的权重应用至不同的边沿,并且递归地划分电路元件直到每个面元中有两个对象(94)。

此时该过程进入以后期优化开始的迭代循环,该优化以100×100的栅格(96)执行栅极尺寸重新调整和缓冲器插入。然后聚集锁存器(98),并基于特别迭代设置锁存器-LCB吸引值(100)。接下来是采用当前锁存器-LCB吸引值的锁存器-LCB驱动布局(102)。以指定的迭代数重复后期优化、锁存器聚集、锁存器-LCB吸引值设置和锁存器-LCB驱动布局,而锁存器-LCB驱动布局的输出成为下次迭代的新输入布图(104)。该步骤通过插入时序优化平稳地将锁存器移至LCB,从而可避免可能以别的方式从极大锁存器-LCB结构产生的对时序的不利影响。最后步骤为详细布局,其采用例如以布局器如TIMBERWOLF(7)进行微分割布局或者启发式技术细化该布图。

在现有技术中,分别从逻辑布局过程总体处理时钟树合成。通过应用迭代时钟网络加权调整,本发明可使逻辑布局和时钟布局之间的相互作用更强,这一点产生更高的质量结果(时序)。局部时钟缓冲器上的总电容还减小25%,大大节省功率。试验结果表明本发明不仅改进时序同时降低时钟功率,而且改进最差情况弛豫。

尽管参考特别实施例描述了本发明,但是该描述不应理解为限制意义。本领域技术人员在参考本发明的描述时将清楚所公开实施例的各种更改以及本发明的可选实施例。例如,本发明不限于仅仅采用二次布局,并且布局步骤可利用其它布局算法例如非线性优化、力引导、微分割或者模拟退火。因此可认为,可不偏离所附权利要求所限定的本发明实质或者范围而进行这样的更改。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号