通过比例缩放使电路面积最小化的制作方法

文档序号:6835174阅读:589来源:国知局
专利名称:通过比例缩放使电路面积最小化的制作方法
技术领域
本发明一般涉及电路设计,更具体地说,设计一种用于电路设计的缩放和面积最小化的方法、系统和程序产品。
背景技术
电路紧凑性是使设计最佳化或转移的集成电路(IC)芯片设计方法学的主要方面。在常规的电路紧凑性中,通过构造表示作为结点的形状边缘、基本规则和作为弓形的拓扑关系的约束性图形,电路设计被减小到它的最小的合法尺寸。每个结点值表示边缘的当前位置,每个弓形值表示在通过弓形连接的边缘之间的最小间隔。为了说明,附图1所示为约束图形的实例性电路设计8。在典型的电路压缩器中,电路设计8的减小通过如下方式完成指定图形结点10a-d以表示垂直于压缩的方向(CD)的每个形状边缘12的位置,以及一个图形结点10e-f每个表示该设计的边界的“源点”14和“汇点”16。在附图1所示的实例中,两个矩形18并排设置。因此,如果在“X”方向上压缩,则图形结点10a-f表示每个矩形结点18的每个垂直边缘12。每个图形结点10a-f具有一个值(它的X位置)。
在附图1中,所指定的位置是X1、X2、X3、X4和汇点16。源点14固定在原点。此外,每个图形结点10a-f具有连接到它的相邻结点的弓形20a-f,它表示对位置X1-X4和汇点16的约束条件(基本规则值)。例如,弓形20a和20e可以是在金属层(M1)上的导线的最小间隔的一半,例如可以是0.1微米(因此这些弓形表示边界条件);20c可以是最小的M1的间隔,例如0.2微米;和弓形20b和20d可以是M1导线的最小宽度,例如0.2微米。弓形20f现在可以忽略。
为了压缩该设计到最小尺寸,使用图形的最长路径算法来查找从边界到每个结点的最小距离,受由弓形表示的约束条件的限制。即,传统的压缩使用“最长路径”算法分配位置X1、X2、X3、X4和汇点16。最长路径算法例如如下分配X1源点+20a 0+0.1 0.1X2X1+20b0.1+0.2 0.3X3X2+20c0.3+0.2 0.5X4X3+20d0.5+0.2 0.7汇点 X4+20e0.7+0.1 0.8这个结构在压缩方向(CD)上压缩矩形18到它们的最小合法尺寸。
基于常规的最长路径压缩的一个问题是它不能满足用户对设计的所有的约束条件。完成的电路设计受到基本规则的形式的限制,这通过常规的压缩很好理解。然而,还有许多其它的限制条件,设计者在设计电路时要记住这些限制条件。这些限制条件涉及发布比如性能或产生目标。许多这些约束条件不能在几何上描述,使得它们难以用常规的压缩工具描述。对于可以描述的约束条件,将所有的用户约束条件输入到压缩工具中可能是几乎与从头开始实施电路一样困难的任务。
常规的最长路径压缩算法不能压缩包含“正循环”的设计。如果存在不合法的形状的结构(基本规则不正确开始点)或者存在限制设计面积到小于所要求的尺寸的约束条件,则通常导致正循环。如果存在正循环,则不存在最长路径。消除在典型压缩器中的正循环柄不能校正带来例如破裂的基本规则不可实现的约束条件的非法性。相对于附图1,通过假设固定弓形20f在0.6的边界约束条件可以说明正循环。在这种情况下,每次常规的压缩器穿过路径20a、20b、20c、20d、20e、20f,总的成本增加0.2(即0.1+0.2+0.2+0.2+0.1-0.6)。在最短路径算法中,等效的问题称为“负循环”。在任何情况下,正循环表示不是所有都能够满足的约束条件(弓形20a-20f)的冲突。
传统的压缩方法的另一问题是由这种技术如何对设计产生最大可能的改变带来的。具体地,常规的压缩算法在压缩方向上尽可能地实施每个形状的“开槽(plowing)”或挤压,这可能破坏在原始设计中的对称性或对准。例如,附图2A-2B所示为顶行包含6个元件30a-30f、底行仅包含3个元件32a-32c的两行元件。此外,每个其它的顶行元件30a、30c、30e分别连接到底行元件30a、30b、30c中的一个。附图2A所示为未压缩的设计,附图2B所示为使用包括“榫头插入(joginsertion)”实施的常规压缩技术比如导线可以按要求弯曲的压缩设计。如附图2B所示,设计以合法的方式压缩,但元件30a-30f和32a-32c的相对位置不包含设计者的原始意图。这种设计的开槽阻止了许多设计者使用压缩器,因为布图设计中不可预测且粗糙的结果,它反过来又阻止了压缩技术的广泛使用。
使用最小扰动分析(下文称为“minpert”)来在电路设计方面实施基本规则调节以实现所需的最小数量的改变。具体,在设计采用minpert分析时,任何合法的弓形20a-20f(附图1)都冻结。任何不合法的弓形20a-20f都返回到线性系统解算器,试图将当前没有合法的值的每个弓形固定并使在位置上的总的差值最小,即X2-X1>=0.2。如果X2-X1当前是0.1,则该系统试图改变X2-X1,同时使X2(新的)-X2(旧的)最小,并使X1(新的)-X1(旧的)最小。Heng等人的美国专利US 6,189,132公开了一种实施minipert分析的设计规则校正系统和方法,在此以引用参考的方式并入在本申请中。不幸的是,minpert分析没有解决面积最小化。
使用基本的缩放来实施压缩,但对于普及应用会导致了不可接受的结果。
考虑到前述的问题,本领域中需要一种压缩电路设计的改善压缩的方法、系统和程序产品。

发明内容
本发明提供一种在基本规则和用户意图方面照顾明式和隐式设计约束条件的同时实施电路设计的面积最小化的方法、系统和程序产品。使用最长路径算法来产生缩放系数。使用缩放系数将电路设计的尺寸减小到最小的合法尺寸。缩放之后可以应用minpert分析以校正由缩放带来的任何错误。将所得的设计与收缩(或增长)的所有元件一起收缩(或膨胀)相同的系数,并维持元件的相对关系。此外,本发明在正循环存在时可操作并可以与冻结任何结构或基本规则的尺寸的缩放一起运行,并可应用到技术转移。
本发明的第一方面涉及使电路设计的面积最小化的方法,该方法包括如下的步骤将最长路径算法应用到电路设计以确定最小合法尺寸;基于将最小的合法尺寸除以预压缩尺寸的比率计算缩放系数;以及使用缩放系数缩放电路设计同时维持一目标。
本发明的第二方面涉及使电路设计的面积最小化的系统,该系统包括如下的步骤将最长路径算法应用到电路设计以确定最小合法尺寸的装置;基于将最小的合法尺寸除以预压缩尺寸的比率计算缩放系数的装置;以及使用缩放系数缩放电路设计同时维持一目标的装置。
本发明的第三方面涉及包括其中具有实施使电路设计的面积最小化的计算机可读程序代码的计算机可用媒体的计算机程序产品,该程序产品包括被构造成将最长路径算法应用到电路设计以确定从一个边界到相对的边界的最小合法尺寸的程序代码;被构造成基于将最小的合法尺寸除以从一个边界到相对的边界的预压缩尺寸的比率计算缩放系数的程序代码;被构造成使用缩放系数缩放电路设计的程序代码;以及被构造成将最小扰动分析应用到缩放的电路设计的程序代码。
通过下文结合本发明的实施例的更具体的描述将会清楚本发明的前述和其它特征。


参考下文的附图详细地描述本发明的实施例,其中类似的标记表示类似的元件,其中附图1所示为使用已有技术的压缩算法的实例性的已有技术约束条件路径说明。
附图2A另一实例性的电路设计。
附图2B所示为附图2A的实例性电路设计的已有技术的压缩算法的应用。
附图3所示为根据本发明的最小系统的方块图。
附图4所示为附图3的最小系统的操作方法学的流程图。
具体实施例方式
参考附图,附图3所示为根据本发明的电路设计最小化系统100(下文称为“最小化系统”)的方块图。最小化系统100包括存储器112、中央处理单元(CPU)114、输入/输出装置(I/O)116和总线118。数据库120也可以用于存储与处理任务相关的数据。存储器112包括在通过CPU 114执行时具有在下文将详细描述的各种功能的程序产品122。存储器112(和数据库120)可以包括任何公知的类型的数据存储系统和/或传输媒体,包括磁性媒体、光学媒体、随机存取存储器(RAM)、只读存储器(ROM)、数据对象等。此外,存储器112(和数据库120)可以驻留在包括一种或多种类型的数据存储的单个物理位置上或者分布在多个物理系统上。CPU 114可以类似地包括单个处理单元或分布在一个或多个位置上的多个处理单元。I/O 116可以包括任何公知类型的输入/输出装置,这种装置包括网络系统、调制解调器、键盘、鼠标、扫描器、语音识别系统、CRT、打印机、盘驱动器等。附加的部件比如高速缓存、通信系统、系统软件等也可以并入到系统100中。
如附图3所示,最小化系统100可以交互式或者被构造成作为更大的电路设计系统102的一部分。设计系统102提供要被压缩的电路设计90,并容纳经压缩的电路设计92。程序产品122可以包括具有最长路径算法应用器126和缩放系数计算器128的缩放系数确定器124;包括最小扰动分析器132的缩放器130;和元件固定器134和其它系统部件136。其它的系统部件136可以包括实现在此没有具体描述的最小化系统100的功能所需的任何其它硬件或软件。
回到附图4,结合附图3,现在描述最小化系统100的操作方法。作为可替换的起始步骤S1,元件尺寸固定器136可以实施以指示电路设计90的一个或多个尺寸被固定的元件94。例如,在最长路径算法应用步骤和缩放步骤之前,可以固定门电路或其它器件或导线的尺寸,如下文描述。在一个具体的实施例中,在电路设计90中的门电路在尺寸上被固定。
在第一步骤S2中,通过缩放系数确定器124确定缩放系数。在一个实施例中,步骤S2包括在步骤S2A中应用器126将最长路径算法应用到具有预压缩尺寸(Z1)的电路设计90以从一个边界(即源点)96到相对的边界(即汇点)98确定最小合法尺寸(表示为Z2)。由于各种最长路径算法在本领域中都是十分公知的,因此不提供它们的可操作性的细节。然而,一般地,位置被分配给使从源点96到汇点98的距离最小的顶点,如附图3所示,该距离使在压缩的方向上的设计宽度最小。在一个实施例中,仅通过分配源点96和汇点98应用最长路径算法。此外,由于“正循环”的原因不能实现最长路径算法,因此应用器124忽略或假设所选择的设计约束条件,即反向弓形。
“正循环”是一种设计规则约束条件或错误,它阻碍了传统最长路径算法通过电路查找最长路径。如果存在非法形状构造(例如基本规则不正确开始点)或者存在限制电路设计90的面积小于所要求的尺寸的约束条件,则存在正循环。如果存在正循环,则最长路径将不存在。缩放系数确定器124识别产生正循环的约束条件,并以逼近的方案继续进行。可替换地,本发明可以检测正循环,消除产生该循环的一个或多个约束条件,以及确定新的最小合法尺寸。这种新的最小合法尺寸将比该电路的实际合法最小尺寸更小。然而,如下文所述,最小的扰动分析将校正这些非法性。因此,本发明对正循环现象不敏感。
返回到附图4,基于最小合法尺寸(Z2)除以从边界96到相对边界98的预压缩尺寸(Z1)的比率通过计算器128计算缩放系数。在使用这个步骤计算缩放系数中,本发明消除了常规的缩放系统的可否成功或不成功的近似性。
在步骤S3中,在步骤S2B,电路设计90被缩放。具体地,在步骤S3A中,电路设计90使用缩放系数(Z2/Z1)以通过缩放器130缩放。如在此所使用,“缩放”以采用电路设计90并将每个顶点的坐标乘以缩放系数(Z2/Z1)。例如,80%缩放将涉及将每个顶点的X和Y坐标乘以0.80,它具有统一收缩或扩展设计的效果。如上文所述,元件94的尺寸可以根据需要固定(可选择地,不缩放实际器件或导线)。此外,缩放器130也可以成组地或单个地缩放元件(例如,门电路或其它器件、导线等),由此对不工作的器件调整尺寸。缩放器130也可以运行各种缩放导线法。
上述的缩放可能导致某些非法性。因此,在步骤S3B中,作为一种变型步骤,最小扰动分析器132可以对压缩的电路设计92实施最小扰动(minpert)分析。这个步骤通过形成所需的最小改变数量,校正压缩的电路设计92中的任何基本规则误差。minpert分析的实施方案类似于在Heng等人的美国专利US 6,189,132中公开的方案。由于原始缩放系数(Z2/Z1)是合法的,因此压缩的电路设计92的边界在这个步骤中不应该增大。
如在压缩的电路设计94(附图3)中,上述的本发明能够压缩电路设计90,同时维持如下目标,比如在元件之间的距离、元件的对齐、元件的尺寸、元件的相对位置和未压缩的电路设计的总体图形。设计在一个方向或另一方向上没有被开槽,在以前这可能阻碍设计者使用压缩器,因为布图设计的不可预测或粗糙的结果的缘故。因此,本发明产生了看起来象原来的那样、但更小的压缩的电路设计。本发明的另一优点是它可应用于转移(migration)。
在前文的讨论中,应该理解在此所讨论的方法步骤通过处理器执行,比如系统100的CPU 114,执行存储在存储器中程序产品122的指令。应该理解在此所描述的各种装置、模块、机构和系统可以以硬件、软件或硬件和软件的组合实施,并且可以以除了在此所示的方式之外的方式划分。它们可以通过任何类型的计算机系统或适合于实施在此所描述的方法的其它设备实施。典型的硬件和软件组合可以是带有计算机程序的通用计算机系统,在将计算机程序装入并执行时,控制计算机系统以使它实施在此所描述的方法。可替换地,也可以使用包含实施本发明的一个或多个功能任务的专用的计算机。本发明也可以以计算机程序产品实施,它包括能够实现在此所描述的方法和功能的所有特征,在装入计算机程序中时能够实施这些方法和功能。在本说明书中计算机程序、软件系统、程序、程序产品或软件意味着用于使具有信息处理能力的系统直接或在下面之后执行特定的功能的任何语言、代码或概念的一组指令的任何表示(a)转换到另一语言、代码或概念;和/或(b)以不同的材料形式再现。
虽然结合上文概述的特定的实施例已经描述了本发明,但是对于本领域普通技术人员来说做出各种变型、修改和改变是显然的。因此,上文所阐述的本发明的实施例用于说明目的而不是限制性的。在不脱离如后面的权利要求界定的本发明的精神和范围的前提下可以做出各种改变。
权利要求
1.一种使电路设计的面积最小化的方法,该方法包括如下的步骤将最长路径算法应用到电路设计,以确定最小合法尺寸;基于将最小的合法尺寸除以预压缩尺寸的比率计算缩放系数;以及在维持一目标的同时使用所述缩放系数缩放电路设计。
2.权利要求1所述的方法,其中从一个边界到相对边界测量最小合法尺寸和预压缩尺寸。
3.权利要求1所述的方法,进一步包括在最长路径算法应用步骤和缩放步骤之前固定元件尺寸的步骤。
4.权利要求1所述的方法,其中最长路径算法应用步骤仅包括汇点和原点的分配。
5.权利要求1所述的方法,其中最长路径算法应用步骤包括在由于正循环造成最长路径算法不能实现的情况下忽略所选择的设计约束条件。
6.权利要求1所述的方法,进一步包括在缩放步骤之前固定元件尺寸的步骤,以使元件尺寸在缩放步骤中不变。
7.权利要求6所述的方法,其中所述元件包括器件和导线中的一个。
8.权利要求1所述的方法,其中维持步骤包括将最小扰动分析应用到所缩放的电路设计以校正在缩放电路设计中的基本规则错误。
9.权利要求1所述的方法,其中所述目标包括下述目标中的至少一个在元件之间的距离、元件的对齐、元件的尺寸、元件的相对位置和未压缩的电路设计的总体图形。
10.一种使电路设计的面积最小化的系统,该系统包括如下的步骤将最长路径算法应用到电路设计以确定最小合法尺寸的装置;基于将最小的合法尺寸除以预压缩尺寸的比率计算缩放系数的装置;以及在维持一目标的同时使用所述缩放系数缩放电路设计的装置。
11.权利要求10所述的系统,其中从一个边界到相对边界测量最小合法尺寸和预压缩尺寸。
12.权利要求10所述的系统,其中最长路径算法应用装置包括在由于正循环造成最长路径算法不能实现的情况下忽略所选择的设计约束条件。
13.权利要求10所述的系统,其中缩放装置进一步包括对缩放的电路设计实施最小扰动分析的装置。
14.权利要求10所述的系统,进一步包括用于在缩放之前固定元件尺寸以使元件尺寸在缩放过程中不改变的装置。
15.一种计算机程序产品,包括其中实施使电路设计的面积最小化的计算机可读程序代码的计算机可用媒体,该程序产品包括被构造成将最长路径算法应用到电路设计以确定从一个边界到相对的边界的最小合法尺寸的程序代码;被构造成基于将最小的合法尺寸除以从一个边界到相对的边界的预压缩尺寸的比率以计算缩放系数的程序代码;被构造成使用所述缩放系数缩放电路设计的程序代码;以及被构造成将最小扰动分析应用到缩放的电路设计的程序代码。
16.权利要求15所述的程序代码,其中最长路径算法应用程序代码应用分配汇点和原点的算法。
17.权利要求15所述的程序代码,其中最长路径算法应用程序代码在由于正循环造成最长路径算法不能实现的情况下忽略所选择的设计约束条件。
18.权利要求15所述的程序代码,其中缩放程序代码在缩放之前固定电路设计中的元件尺寸以使元件尺寸在缩放过程中不改变。
19.权利要求15所述的程序代码,其中最长路径算法应用程序代码在应用最长路径算法之前固定电路设计中的门电路的尺寸,其中缩放程序代码在缩放的过程中维持固定的尺寸。
20.权利要求15所述的程序代码,其中最小扰动分析应用程序代码校正在缩放电路设计中的基本规则错误。
全文摘要
本发明提供一种在基本规则的形式和用户意图方面照顾明式和隐式设计约束条件的同时实施电路设计的面积最小化的方法、系统和程序产品。使用最长路径算法来产生缩放系数。使用缩放系数将电路设计的尺寸减小到最小的合法尺寸。缩放之后可以应用最小扰动分析以校正由缩放带来的任何错误。将所得的设计与收缩(或增长)的所有元件一起收缩(或膨胀)相同的系数,并维持元件的相对关系。此外,本发明在正循环存在时可操作并可以与冻结任何结构或基本规则的尺寸的缩放一起运行,并可应用于技术转移。
文档编号H01L21/82GK1670944SQ20041009268
公开日2005年9月21日 申请日期2004年11月16日 优先权日2003年12月3日
发明者凯文·W·迈克库伦, 古斯塔沃·E·泰雷兹, 迈克尔·S·格雷, 罗伯特·F·沃尔克 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1