CN1801160A - 用于具有基本设计限制的集成电路的技术迁移的方法和系统 - Google Patents

用于具有基本设计限制的集成电路的技术迁移的方法和系统 Download PDF

Info

Publication number
CN1801160A
CN1801160A CNA2005101170369A CN200510117036A CN1801160A CN 1801160 A CN1801160 A CN 1801160A CN A2005101170369 A CNA2005101170369 A CN A2005101170369A CN 200510117036 A CN200510117036 A CN 200510117036A CN 1801160 A CN1801160 A CN 1801160A
Authority
CN
China
Prior art keywords
shape
critical shape
grid
critical
butut
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CNA2005101170369A
Other languages
English (en)
Other versions
CN100442297C (zh
Inventor
袁昕
K·W·麦卡伦
邢福仑
R·F·沃克
J·希伯勒
R·J·爱伦
R·R·纳拉扬
C·V·恩迪科特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN1801160A publication Critical patent/CN1801160A/zh
Application granted granted Critical
Publication of CN100442297C publication Critical patent/CN100442297C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing

Abstract

本发明公开了一种用于使集成电路(IC)设计从没有基本设计限制(RDR)的源技术迁移至具有RDR的目标技术的系统、方法和程序产品。本发明实现满足RDR需求的最小布图扰动方法。本发明还解决了插入需要的虚拟形状并延伸关键形状和/或虚拟形状的长度以满足“边缘覆盖度”需求的问题。

Description

用于具有基本设计限制的集成电路 的技术迁移的方法和系统
技术领域
本发明通常涉及用于集成电路(IC)的技术迁移(migration),更具体地说,涉及用于具有基本设计限制的IC的技术迁移的方法、系统和程序产品。
背景技术
设计迁移是在超大规模集成(VLSI)电路设计中实现最大布图生产率所必需的工艺。为了根据基于简单边缘的基本规则将符号布图转移为物理布图,研发了基于常规图形的压缩技术。这些技术也曾用于解决设计迁移问题。最近,设计迁移问题的最小布图扰动(perturbation)公式化产生一种保持源布图的完整性的方法。当现有设计迁移软件继续被精细调整,其功能变得比较成熟。但是,因为技术发展到亚波长范围,所以以基本设计限制的分组形式出现新的布图挑战,在技术中有时被称为“基本设计限制”(下面,称为“RDR”)。提出RDR,以很好地更迭相移掩模设计和控制超深亚微米技术中的多晶硅-导体级的线宽。RDR需要,例如,有限数目的窄线宽,单个取向的窄特征,在均匀和大间距上布置的窄特征,所有关键栅极的均匀近似环境以及关键栅极的有限数目的间距。该规则的设计风格对设计迁移方法提出新的挑战,以及在现有设计迁移软件中需要新的功能。
鉴于上文,需要一种解决相关技术的问题的技术。
发明内容
本发明包括用于使集成电路设计从不具有RDR的源技术迁移至具有RDR的目标技术的方法、系统和程序产品。本发明实现满足RDR的最小布图扰动方法。本发明也解决插入一个或多个需要的虚拟形状并延伸关键形状和/或虚拟形状的长度以满足“边缘覆盖度(coverage)”要求的问题。
本发明的第一方面涉及一种用于使集成电路(IC)设计布图从没有基本设计限制(RDR)的源技术迁移至具有RDR的目标技术的方法,该方法包括以下步骤:认证(legalizing)设计布图,以满足RDR栅格约束并在第一方向上固定任意基本规则违规(violation);插入需要的虚拟形状;以及运行最小扰动分析,以便解决至少一个关键形状的边缘覆盖度需求并在第二方向上固定任意基本规则违规。
本发明的第二方面涉及一种用于使集成电路(IC)设计布图从没有基本设计限制(RDR)的源技术迁移至具有RDR的目标技术的系统,该系统包括:用于认证布图,以满足RDR栅格约束并在第一方向上固定任意基本规则违规的装置;用于插入需要的虚拟形状的装置;以及用于运行最小扰动分析,以便解决至少一个关键形状的边缘覆盖度需求并在第二方向上固定任意基本规则违规的装置。
本发明的第三方面涉及一种计算机程序产品,包括具有嵌入其中的计算机可读程序代码的计算机可用介质,用于将集成电路(IC)设计从没有基本设计限制(RDR)的源技术迁移至具有RDR的目标技术,该程序产品包括:配置为认证设计布图,以满足RDR栅格约束并在第一方向上固定任意基本规则违规的程序代码;配置为插入需要的虚拟形状的程序代码;以及配置为运行最小扰动分析,以便解决至少一个关键形状的边缘覆盖度需求并在第二方向上固定任意基本规则违规的程序代码。
本发明的第四方面涉及一种用于利用原始设计的最小布图扰动认证受基本规则和基本设计限制(RDR)栅格约束影响的集成电路设计布图的方法,该方法包括以下步骤:利用最小布图扰动,同时满足所述RDR栅格约束,计算多个关键形状的每一个的目标间距上(on-pitch)位置;以及通过将关键形状的目标间距上位置作为多个关键形状和设计布图边界之间的一组基本规则间隔约束,认证所述设计布图作为线性规划问题。
本发明的第五方面涉及一种用于利用原始设计的最小布图扰动认证受基本规则和基本设计限制(RDR)栅格约束影响的集成电路设计布图的系统,该系统包括:用于利用最小布图扰动,同时满足所述RDR栅格约束,计算多个关键形状的每一个的目标间距上位置的装置;以及用于通过将关键形状的目标间距上位置作为多个关键形状和设计布图边界之间的一组基本规则间隔约束,认证所述设计布图作为线性规划问题的装置。
本发明的第六方面涉及一种计算机程序产品,包括具有嵌入其中的计算机可读程序代码的计算机可用介质,用于利用原始设计的最小布图扰动认证受基本规则和基本设计限制(RDR)栅格约束影响的集成电路设计布图,该程序产品包括:配置为利用最小布图扰动,同时满足所述RDR栅格约束,计算多个关键形状的每一个的目标间距上位置的程序代码;以及配置为通过将关键形状的目标间距上位置作为多个关键形状和设计布图边界之间的一组基本规则间隔约束,认证所述设计布图作为线性规划问题的程序代码。
从下面本发明的实施例的更具体描述,本发明的上述及其它特征将显而易见。
附图说明
下面将参考以下附图详细描述本发明的实施例,其中相同的标识表示相同的部分,以及其中:
图1示出了认证之前关键栅极的说明性初始布图。
图2示出了在插入虚拟形状以满足RDR的认证之后图1的布图。
图3A-B示出了包括关键形状和虚拟形状以及栅极延伸部分的示例布图。
图4示出了根据本发明的一个实施例的迁移系统。
图5示出图4的系统的操作方法的流程图。
图6示出了在初始阶段的说明性集成电路设计布图。
图7示出了在扩散区重配置(resizing)之后图6的IC设计布图。图8示出了在虚拟形状插入之后图7的IC设计布图。
图9示出了在形状延伸之后图8的IC设计布图。
图10-16示出了根据图5的方法与产生形状延伸部分有关的各种形状的细节。
图17示出图5的操作方法细节的一个实施例的流程图。
图18示出了说明性IC设计布图,以说明用于根据图5的方法模拟(modeling)边缘加权(edge-weighted)图形的形状的相邻性。
图19A-D示出了各种形状布置,以说明在RDR环境下的关键形状。
图20示出了说明性的边缘加权图形。
图21A-E示出了根据图17的方法用于确定目标位置的一个实施例的各个步骤。
具体实施方式
本发明包括用于使集成电路(IC)设计从没有RDR的源技术迁移至具有RDR的目标技术的系统、方法和程序产品。尽管目前仅仅关键栅极需要RDR,但是本发明可应用于认证具有类似约束的形状,例如金属布线形状。因此,在此将使用术语“关键形状”指需要满足栅格约束的栅极、PC形状或金属布线形状。关键形状将不同于“虚拟形状”,本发明可以插入“虚拟形状”,以进行IC设计认证和满足设计规则需求。
在评估RDR时,通过多晶硅-导体(PC)形状和扩散区(RX)之间的交叉点形成栅极。“间距”被定义为两个相邻栅极的中心线之间的间隔。“关键栅极”是必须遵守RDR,以便在制造工艺中被正确地印刷的栅极。通常,关键栅极在扩散区上具有最小PC宽度。下面,在图1-2中示出了在认证处理中关键栅极的间隔约束的示例情况。(间隔约束也称为“栅格约束”,因为它们需要在大的栅格上布置关键栅极)。图1示出了在认证之前,关键栅极12的初始布图10。如图2所示,对于在扩散区上具有60nm PC宽度的关键栅极,给定一组固定的间距,例如,250nm或500nm,在认证之后,所有关键栅极必须被置于在190nm或440nm的相邻关键栅极之间具有250nm间隔的栅格上。图2示出了已插入虚拟PC形状14以便提供由RDR要求的均匀近似环境的认证之后的布图10。为了说明下面的栅格约束,在图2中,绘制了栅格线,以匹配每个关键栅极的左边缘。当关键栅极在RX上具有均匀的PC宽度时,栅格线是否匹配关键栅极的中心线或边缘线并不重要,只要满足间隔限制。为了描述,假定关键栅极在RX上具有最小PC宽度,且因此该间距是最小栅极间隔和RX上的最小PC宽度的总和。
图3A-B示出了“边缘覆盖度”需求的示例情况,即,由RDR要求的PC形状端部延伸部分。这些图包括关键栅极b、c和d,虚拟PC形状a和e以及扩散区18。在图3A-B中,栅格线匹配PC形状的中心线。虚拟PC形状a和e被要求插入设计中,以便每个关键栅极b,c,d的左右被PC形状围绕,以便提供均匀近似环境。此外,参考图3B,水平线16A,16B,16C表示周围的PC形状必须延伸以便相邻的PC形状被正确地印刷的高度。在该例子中,关键栅极b上的边缘3需要虚拟形状a上的边缘2具有相同的长度,以便被正确地印刷。同样地,关键栅极b上的边缘4需要关键栅极c上的边缘5长达边缘4,以便边缘4可以被正确地印刷。在此情况下,关键栅极b需要较短的关键栅极c,以向上延伸超出水平线16B至水平线16A。因此在关键栅极c上需要“栅极延伸部分”20,以满足RDR,如图3B所示。在此使用的“栅极延伸部分”是相邻栅极的正确印刷所需要的栅极的任意延伸部分。但是,关键栅极d上的边缘7,仅仅需要关键栅极c上的长达边缘7的部分边缘6。在该例子中,基本规则手册要求所有的关键栅极边缘(扩散区上的关键栅极边缘加上超出扩散区的延伸值)使另一PC形状边缘离开一个或两个间距,用于关键部分(实际栅极加上每个端部的延伸部分)的整个长度。该规则需要延伸部分和附加的虚拟形状。图3B的边缘/栅极关系的细节如下:
  栅极/虚拟形状   需要(为了正确地印刷)
  a   没有,它是虚拟形状;它不需要被正确地印刷。
  b   a和c,具体需要边缘1/2和5/6以印刷边缘3和4。
  c   b和d,具体需要边缘3/4和7/8。对于栅极c的长度仅仅需要延伸边缘3/4。
  d   a和e,具体需要边缘5/6和9/10以印刷边缘7和8。
  e   没有,它是虚拟形状;它不需要被正确地印刷。
上面两个例子说明当设计从没有RDR的源技术迁移至具有RDR的目标技术时技术迁移工艺的新需要。
布图压缩是用于将设计迁移至不同技术的一种技术,其基于最长路径算法技术。压缩技术已应用于如上所述的栅格约束,如在IEEE Transactionof Computer-Aided Design 1987中Lee和Tang的″VLSI layout compactionwith grid and mixed constraints″所述。在操作中,布图压缩技术尽可能地压缩布图,同时满足栅格约束。最小布图扰动是另一技术,该技术使用用于迁移处理中的布图改进的新标准,以利用布图的最小总扰动固定设计规则违规。与布图压缩技术相比较,基于最小布图干扰的认证技术固定规则违规并尽可能地保持给定的布图。最小布图扰动技术也是有益的,因为它解决引起正循环并不能被基于常规最长路径的压缩技术处理的冲突规则的情况。在Heng等人的″A VLSI artwork legalization technique based on anew criterion of minimum layout perturbation″in InternationalSymposiumon Physical Design 1997中首先引入并在美国专利号6,189,132中公开了最小布图扰动技术,因此将其引入作为参考。不幸地,初始最小布图扰动技术不考虑由RDR要求的栅格约束。
仅仅为了清楚,以下描述包括小标题:
I.系统综述
II.操作方法
A.认证以满足关键形状的栅格约束并在方向1上固定基本规则违规的细节-步骤S6
1.MPRDR问题
a)解决MPRDR问题的背景
b)公式化与解决MPRDR问题有关的混合整数线性规划(MILP)问题
2.解决MPRDR问题的试探两阶段方法的综述
a)阶段1:计算目标间距上位置
b)阶段2:利用最小布图扰动认证布图
III.结论
I.系统综述
参考附图,图4是根据本发明的集成电路(IC)设计迁移系统100的框图,该系统能使集成电路(IC)设计从没有RDR的源技术迁移至具有RDR的目标技术。系统100包括存储器112、处理单元(PU)114、输入/输出装置(I/O)116和总线118。也可以提供数据库120,用于存储与处理任务有关的数据。存储器112包括程序产品122,当通过PU 114执行时,该程序产品122包括下面进一步详细描述的各种功能性能。存储器112(和数据库120)可以包括任意公知类型的数据存储系统和/或传输介质,包括磁介质、光学介质、随机存取存储器(RAM)、只读存储器(ROM)、数据目标等。此外,存储器112(和数据库120)可以驻留在包括一种或多种类型的数据存储的单个物理位置,或分布在多个物理系统之间。PU 114同样可以包括单个处理单元或分布在一个或多个位置之间的多个处理单元。I/O 116可以包括任意公知类型的输入/输出装置,包括网络系统、调制解调器、键盘、鼠标、扫描仪、语音识别系统、CRT、打印机、磁盘驱动器等。附加组件如高速缓冲存储器、通信系统、系统软件等也可以被引入系统100中。系统100接收待认证的IC设计200并输出认证的IC设计202。应该认识到系统100可以被引入作为较大IC设计系统的一部分或被设为独立的系统。
如图4所示,程序产品122可以包括形状分析器124、图形产生器125、目标位置测定器126、最小扰动(下面称为“minpert”)分析器128、形状插入器130、线性规划解算器160及其它系统部件140。目标位置测定器126可以包括位置估算器142、分析器144、宽度估算器146、形状布置器148和更新器150。其它系统部件140可以包括在此未清楚地描述的任意其它必需的功能。
应该认识到尽管系统100已被图示为独立系统,但是它可以被包括作为较大IC设计系统的一部分或其外围设备。
II.操作方法
转向图5的流程图,结合图4和6-16,现在将更详细地描述系统100的操作。如图6所示,在初始状态中,设计布图210包括统一取向的关键形状212。在关键形状212下面示出了扩散区214。
在没有RDR的源技术中,该方法开始于设计布图210(图6)。在按比例缩小布图210(图6)至目标技术,以便关键栅极在由目标技术要求的扩散区上具有正确的PC宽度之后,通过形状分析器124(图4)进行初步确定,确定在设计布图中是否有统一取向的关键形状。应该认识到由设计布图可以简单地知道步骤S1的确定。另外,必要时,可以进行确定是否存在关键形状212的某些分析,例如,确定在布图中在扩散区214上是否放置PC形状。如果该设计不具有关键形状212,即,在步骤S1是NO,那么,在迁移处理中没有特殊处理。在此情况下,在步骤S2,通过最小扰动(minpert)分析器128进行基于常规最小布图扰动(下面称为“minpert”)的认证处理,以固定任意基本规则违规。
当有关键形状212,即在步骤S1是YES时,系统100根据关键形状的取向解决该情况。在此情况下,在步骤S3,形状分析器124确定关键形状212的取向。对于垂直关键形状(如图6所示),在步骤S4,“方向1”被指定为X-方向(水平)和“方向2”被指定为Y-方向(垂直)。相反,对于水平关键形状,在步骤S5,方向1被指定为Y-方向(垂直)和方向2被指定为X方向(水平)。无论如何,系统100通过下面的五个步骤继续进行以认证用于RDR及其它基本规则约束的布图。为了描述,关键形状取向被假定为在Y方向(垂直页面)延伸,如图6所示。亦即,多个关键形状的纵轴在Y轴方向中延伸。
在步骤S6中,通过图形产生器125、目标位置测定器126以及线性规划解算器160,认证布图以满足RDR栅格约束并在方向1上固定任意基本规则违规。输入是改变比例的布图210(图6),其中关键形状具有统一的取向,以及由RDR需要的大(栅格)间距P。在该认证步骤中,关键形状上的RDR栅格约束可以是,例如,当关键形状是栅极时,如下:a)所有关键形状应该被布置在间距P的大栅格上;b)公共扩散区上的两个相邻关键形状的左边缘之间的间距应该是P或2P;c)不在公共扩散区上的两个相邻关键形状的左边缘之间的间距应该是kP,其中k是正整数,以便可以插入虚拟形状,以模仿(mimic)最小间距。该步骤的目的是利用原始设计的最小布图扰动,认证受基本规则和上述三个RDR栅格约束影响的布图。下面,该问题应该被称为具有RDR栅格约束(MPRDR)的最小扰动认证。下面将分部分描述与图形产生器125和目标位置测定器126有关的解决该问题的处理细节。
步骤S7-S9共同表示插入需要的虚拟形状216(图8)的步骤。应该认识到如果不需要虚拟形状216(图8),那么步骤S7、S8和S9可以被省略。也应该认识到步骤S7、S8和S9可以被不引入新的基本规则违规插入需要的虚拟形状的任意方法代替。例如,可以仅仅单独进行类似于步骤S8的插入步骤。
在第七步骤S7中,在方向1中认证布图,以为虚拟形状插入做准备。该输入是在方向1中认证的布图,具有从步骤S6在间距上放置的关键形状。如图7所示,为了便于在任意两个相邻关键形状212之间断开扩散区214处的虚拟形状插入,使重叠过去(past)关键形状的扩散区214最小至由基本规则限定的最小值。在该步骤中,在方向1中,通过最小扰动分析器128运行最小扰动分析,固定关键形状212的栅格位置,但是允许移动其它形状。具体,在方向1中通过最小扰动分析器128运行最小扰动分析,以通过将用于重叠过去关键形状212的扩散区214的基本规则改变为正好等于原始设计规则允许的最小值,使扩散区214尽可能地接近关键形状212。用这种方式,减小关键形状周围的扩散区。
接下来,在步骤S8,如图8所示,可以通过形状插入器130插入至少一个虚拟形状216,以满足最小间隔需求。在一个实施例中,在不超过关键形状212的两个栅格位置并不被扩散区214或其它形状覆盖的任意区域中的间距上布置虚拟形状216。
在步骤S9,在方向1中认证布图,以消除由于虚拟形状216插入的规则违规。该输入是布图,如图8所示,具有插入的虚拟形状。由于新插入的虚拟形状216,可能引入某些基本规则违规,且因此在方向1中通过最小扰动分析器128运行最小扰动认证,以清除那些基本规则违规。在该步骤中的认证过程中,所有关键形状212和虚拟形状216不被移动。仅仅接触、扩散区214和PC布线形状被移动,以固定基本规则违规。
接下来,在步骤S10,布图被认证,以满足至少一个关键形状和虚拟形状的“边缘覆盖度”要求,以及在方向2上固定任意基本规则违规。“边缘覆盖度”需求是保证相邻关键形状的正确印刷需要的形状延伸。在所示的栅极取向中,方向2平行于多个有源区的纵轴,即,Y方向。在此情况下,输入是具有插入的虚拟形状和在方向1中正确的基本规则的认证布图。在方向2中通过最小扰动分析器128运行最小扰动认证,以:a)清除方向2中的基本规则违规;b)根据需要延伸关键形状212(图9)和虚拟形状216,以包括形状延伸部分219,从而满足来自RDR的“边缘覆盖度”约束,如图9所示;c)使所有水平PC布线非关键,以便使相移掩模布图的问题最小(或消除)。如果水平PC形状是非关键的,那么仅仅关键形状和虚拟形状需要相移。相掩模和阻挡掩模形状将被限于电路行,以及将被强制以平行条布局(由于RDR栅格约束)。
与步骤S10有关的形状延伸问题:进一步注意步骤S10,下面详细描述如何构造关键形状的约束和来自RDR的虚拟形状延伸约束。转向图10-16,现在将描述如何通过最小扰动分析器128施加最小扰动构架(framework)中的形状延伸。概括地,为了延伸关键或虚拟形状,在相邻形状之间产生约束。对于每个虚拟形状和关键形状,产生标记形状。在此使用的“标记形状”意指添加到设计的辅助形状,当需要系统100将约束或规则应用到特定级的某些但不是全部形状时使用。在那种情况下,标记形状被布置在将被修改的形状上。在此情况下,规则被应用于某些PC形状和某些栅极,而不是它们的全部。此外,每个标记形状比它覆盖的栅极的任何一侧宽一特定距离(例如,一个单元),以及标记形状的端部正好与栅极端部对准。标记形状代表设计中的不同“级”。然后为每个标记形状级赋予具有PC形状和栅极不同组基本规则和约束。用这种方式,如果标记形状生长(或延伸),随着它生长,它将推动它覆盖的形状的最小宽度部分在它之前。这称为“犁耕(plowing)”。
图10和11图示了上述处理的例子。在图10中,示出了垂直栅极A和相邻栅极B。设置用于栅极A的标记形状A_M和用于栅极B的标记形状B_M。标记形状A_M和B_M具有赋予其上的基本规则,如果标记形状A_M和B_M生长,所述规则将使栅极A和B的最小宽度块生长。例如,最小扰动分析器128可以被指示或确定标记形状B_M的每个端部必须超过栅极A的端部距离X(基本规则值),如图10所示。在此情况下,如图11所示,标记形状B_M的下端222必须比栅极A的下端220低值X,以及标记形状A_M的上端226必须超过栅极A的上端224值X。结果,如图11所示,因为该基本规则,标记形状B_M将伸展,并将连同它一起拖拉(pull)(或犁耕)栅极B的最小宽度块。
产生栅极延伸约束:通过运行平面扫描(sweep)算法可以标识基本规则约束。算法穿过构成布图的单个边缘扫描虚拟线,称作扫描线。当处理栅极延伸时,标记形状和栅极之间的拐角(corner)关系被标识,并仅仅考虑钝角。当位于一个形状上的拐角时,进行前一拐角的列表的向后(对于X方向,至左侧)回顾。参考图12,限定向后观察的拐角的两种类型:类型A:在扫描线上,当一个穿过(across)该边缘时,一个移出该形状;以及,类型B:在扫描线上,当一个穿过该边缘时,一个移入该形状。如图13所示,当后向观察时,可辨别两种类型的钝角:类型C:当一个从拐角下面移至该拐角上面时,一个移出该形状;以及类型D:当一个从拐角下面移至该拐角上面时,一个移入该形状。为了说明,如图14所示,当在类型A的拐角时,考虑以下因素:类型C的拐角必须在视线内,以及类型D的拐角暗示正在考虑栅极的错误端部。此外,如图15所示,从扫描线位置至拐角位置的间隔必须正好是一个或两个间距,减去超过RX的最小PC宽度,减去一个单元(记住,一个覆盖形状是比超过RX的最小PC宽度更宽的一个单元)。此外,包括的边缘必须在它们的Y范围重叠。此外,如图16所示,在满足上述标准的Y-坐标中它必须是最靠近的拐角。
如果满足上述所有条件,那么可以产生约束,其告诉类型A的拐角停留在类型C的拐角上延伸值的距离。这将拖拉A拐角直至穿过(延伸穿过)C拐角。类型B的拐角是类似的,除了它们与类型D的拐角匹配之外。
A.认证以满足关键形状的栅格约束并在方向1上固定基本规则违规的细节-步骤S6
在图5的步骤S6中,通过图形产生器125、目标位置测定器126以及线性规划解算器160,认证布图以满足关键形状的RDR栅格约束并在方向1上固定规则违规。如上所述,该认证步骤中的关键形状的RDR栅格约束可以是,例如,当关键形状是栅极时,如下:a)所有关键形状应该被布置在间距P的大栅格上;b)公共扩散区上的两个相邻关键形状的左边缘之间的间距应该是P或2P;c)不在公共扩散区上的两个相邻关键形状的左边缘之间的间距应该是kP,其中k是正整数,以便可以插入虚拟形状,以模仿最小间距。在认证过程中假定关键形状的宽度是均匀的和不变的。该步骤的目的是利用原始设计的最小布图扰动,认证受基本规则和上述三个RDR栅格约束影响的布图,即,发现每个关键形状的合规(legal)间距上位置。因此,该问题应该被称为具有RDR栅格约束(MPRDR)的最小扰动认证。下面描述该问题和本发明的方法的细节。
1.MPRDR问题
a)解决MPRDR问题的背景
在Heng等的″A VLSI artwork legalization technique based on a newcriterion of minimum layout perturbation″,in International Symposiumon Physical Design 1997中首次提出以及在美国专利号6,189,132中公开了最低限度地修改具有基本规则违规的初始布图以便所得的布图被基本规则校正的问题。与主要考虑面积最小化的先前布图压缩技术不同,基于最小扰动的技术试图通过校正基本规则违规,同时尽可能少地改变初始布图,改进给定的布图。下面将描述本发明的这部分,通过仅仅考虑一维(1D)最小布图扰动问题简化最小扰动问题。通过连续应用一维(1D)最小布图扰动问题的结果,获得二维(2D)最小布图扰动问题的结果。
类似于基于约束的压缩技术,基于最小扰动的认证技术将边缘位置约束转移到约束图形中。在约束图形中,节点Vi表示布图元素Ei,通常是多边形的边缘,或目标如晶体管或过孔的情况。在此使用的Vi(X),表示布图元素Ei的X坐标。由两个布图元素Ei和Ej之间的设计规则要求的最短距离由公式Vj(X)-Vi(X)≥dij的线性约束表示。该约束对应于定向的弧形Aij,在约束图形中从节点Vi至节点Vj具有权重dij。表示所有相互作用的元素的约束组形成布图的约束图形,G=(V,A)。为了描述,
Vi old(X)
表示布图元素Ei的初始X坐标。对于校正布图的初始基本规则,满足所有约束,即,
V j old ( X ) - V i old ( X ) ≥ d ij
对于约束图形中的所有弧形Aij
布图的扰动被测量作为从给定布图至较早(初始)布图的距离函数。1D最小扰动问题被公式化为:
min: Σ V i ∈ V | | V i ( X ) - V i old ( X ) | |
s.t.:Vj(X)-Vi(X)≥dij,Aij∈A
L-1 metric: | | V i ( X ) - V i old ( X ) | | = W i · | V i ( X ) - V i old ( X ) |
L-2 metric: | | V i ( X ) - V i old ( X ) | | = W i · ( V i ( X ) - V i old ( X ) ) 2 - - - ( 1 )
然后通过为每个边缘Ei引入两个变量Li,Ri,线性化目标函数,以便:
L i ≤ V i ( X ) , L i ≤ V i old ( X ) , R i ≥ V i ( X ) , R i ≥ V i old ( X ) .
然后,问题(1)变为L1度量下的线性1D最小扰动问题:
min: Σ v i ∈ V W i · ( R i - L i )
s.t.:Vj(X)-Vi(X)≥dij,Aij∈A
L i ≤ V i ( X ) , L i ≤ V i old ( X ) , ∀ V i ∈ V
R i ≥ V i ( X ) , R i ≥ V i old ( X ) , ∀ V i ∈ V - - - ( 2 )
为了处理没有可行方法的情况,通过放松初始布图中不满足的约束并将它们置于目标函数中进一步转变公式。使Ae是与初始不满足的约束相关的A中的弧形组,即
V j old ( X ) - V i old ( X ) = D ij < d ij .
为每个弧形Aij∈Ae定义新的变量Mi。问题被缓和为:
min: &Sigma; v i &Element; V W i &CenterDot; ( R i - L i ) + &lambda; &CenterDot; &Sigma; A ij &Element; A e ( M i - V j ( X ) + d ij )
s.t.:Vj(X)-Vi(X)≥dij,Aij∈A-Ae
      dij≥Vj(X)-Mi≥Dij,Mi-Vi(X)≥0,Aij∈Ae
L i &le; V i ( X ) , L i &le; V i old ( X ) , &ForAll; V i &Element; V
R i &GreaterEqual; V i ( X ) , R i &GreaterEqual; V i old ( X ) , &ForAll; V i &Element; V - - - ( 3 )
通过为入选择非常大的值,当目标函数中的第二项被最小至零时尽可能多地满足初始布图中的不满足的约束。
由于工业布图数据库的结构和制造考虑所施加的实际约束,所有布图坐标必须是整数。如果所有dij
Vi old(X)
是整数,在布图迁移问题中是正确的,那么问题(2)和问题(3)的结果也由整数构成。因此,它们可以被解决为线性规划(LP)问题。此外,由于问题的特殊结构,可以使用基于图形的单一算法或线性规划解算器有效地解决它们。
问题(3)的线性规划(LP)公式为VLSI布线图(artwork)认证提供非常灵活的优化构架。但是,该公式不能处理RDR栅格约束,因为在约束组中没有考虑它们。本发明对于MPRDR问题的下述方法,基于并延伸LP公式,以解决该情况。
b)公式化与解决MPRDR问题有关的混合整数线性规划(MILP)问题
解决MPRDR问题的主要目标是发现每个关键形状的合规间距上位置。如前所述,假定关键形状垂直取向,以及在水平方向(在布图中栅极被赋予X坐标)解决认证问题。对于在水平取向中具有关键形状的布图,该方法同样地起作用。
作为基本规则的一部分,关键形状上的RDR栅格约束在线性规划公式化中形成特殊约束组。这里,Ecs表示关键形状的布图边缘组。因为关键形状的宽度在认证过程中是均匀的和不变的,所以使用关键形状的一个边缘(或中心线或左边缘)表示形状位置。为了描述,使用左边缘。
假定没有布图的RDR栅格约束G=(V,A)的约束图形,
Vi g
是表示布图边缘的图形节点
E i g &Element; E cs , V i g &Element; V ,
以及
Vi g(X)
表示边缘的X坐标。VRDR是表示由RDR的栅格约束所约束的关键形状的布图边缘的图形节点组,
VRDRV.
ARDR s
是表示共享扩散区的相邻关键形状的RDR间隔约束的弧形组,以及
ARDR ns
是表示不共享扩散区的相邻关键形状的RDR间隔约束的弧形组。然后,增加的约束图形
G &prime; = ( V , A &cup; A RDR s &cup; A RSR ns )
表示包括RDR的所有约束。
假定用于关键形状的RDR约束的大间距P,MPRDR可以被公式化为:
min: &Sigma; v i &Element; V W i &CenterDot; ( R i - L i )
s.t.:Vj(X)-Vi(X)≥dij,Aij∈A
L i &le; V i ( X ) , L i &le; V i old ( X ) , &ForAll; V i &Element; V
R i &GreaterEqual; V i ( X ) , R i &GreaterEqual; V i old ( X ) , &ForAll; V i &Element; V
V j g ( X ) - V i g ( X ) = { P , 2 P } , &ForAll; A ij &Element; A RDR s
V j g ( X ) - V i g ( X ) = { P , 2 P&Lambda;kP } , &ForAll; A ij &Element; A RDR s - - - ( 4 )
所有变量必须是整数。此外,
Vi g(X)
必须是一组整数,因为RDR间隔约束,其将一组非常严格的约束引入整数线性规划问题中。如果相对于P标准化约束值,即,dij变为dij/P,以及
Vi old(X)
变为
Vi old(X)/P,
问题(4)可以通过混合整数线性规划(MILP)问题近似为:
min: &Sigma; v i &Element; V W i &CenterDot; ( R i - L i )
s.t.:Vj(X)-Vi(X)≥dij,Aij∈A
L i &le; V i ( X ) , L i &le; V i old ( X ) , &ForAll; V i &Element; V
R i &GreaterEqual; V i ( X ) , R i &GreaterEqual; V i old ( X ) , &ForAll; V i &Element; V
V j g ( X ) - V i g ( X ) = { 1,2 } , &ForAll; A ij &Element; A RDR s
V j g ( X ) - V i g ( X ) &GreaterEqual; 1 , &ForAll; A ij &Element; A RDR s
V i g ( X ) is integer , &ForAll; V i g &Element; V RDR - - - ( 5 )
在获得问题(5)的结果之后,非整数变量被转变回整数值,其可能产生某些舍入问题。一般,解决M1LP是昂贵的,因为它是计算上困难的问题。因此,当问题的规模大时使用常规MILP解算器来执行,该方法是很复杂的和昂贵的。
2.解决MPRDR问题的试探两阶段方法的综述
参考图4和17,为了解决上述问题,系统100(图4)实现两阶段试探方法。如综述:在第一阶段,利用最小扰动,同时满足RDR栅格约束,计算关键形状的目标间距上位置。在第二阶段,通过将关键形状的目标间距上位置作为它和设计布图边界之间的基本规则间隔约束,解决认证问题作为线性规划问题,来认证布图。换句话说,问题(4)中的RDR相关的约束被放松,并基于第一阶段中计算的目标间距上位置,被转变为关键形状和设计布图边界之间的间隔约束,以便该问题被转变回线性规划问题,即,问题(3)。
a)阶段1:计算目标间距上位置
第一阶段是利用最小布图扰动,同时满足RDR栅格约束,计算每个关键形状的目标间距上位置。如下所述,通过图形产生器125和目标位置测定器126进行这些步骤。输入是间距单元中的间距P、RDR的栅格约束、以及关键形状的初始位置。输出是必须是整数的间距单元中的关键形状的目标间距上位置。
该问题可以被公式化为整数线性规划(ILP)问题:
min: &Sigma; v i &Element; V RDR W i &CenterDot; ( R i - L i )
s.t.: L i &le; V i ( X ) , L i &le; V i old ( X ) , &ForAll; V i &Element; V RDR
R i &GreaterEqual; V i ( X ) , R i &GreaterEqual; V i old ( X ) , &ForAll; V i &Element; V RDR
V j ( X ) - V i ( X ) = { 1 , 2 } , &ForAll; A ij &Element; A RDR s
V j ( X ) - V i ( X ) &GreaterEqual; 1 , &ForAll; A ij &Element; A RDR s
         Vi(X)is integer,Vi∈VRDR          (6)
与问题(2)不同,其中约束的数字是整数,间距单元中的关键形状的初始位置不能是整数。因此,问题(6)不能被处理为线性规划问题。尽管该问题可以被公式化为ILP问题,但是本发明不使用ILP解算器,因为它解决ILP问题是昂贵的,以及当该问题没有可行方法时,ILP解算器不能返回结果。但是,为了本发明的目的,改进的结果好于没有结果。
为了解决该情况,本发明执行解决问题(6)的试探算法。该算法包括两个阶段。
阶段1,第一步骤:首先,如图17所示,在步骤S101中,通过图形产生器125产生定向边缘加权图形,在此称为“关键形状相邻图形”(下面,称为“CSN-图形”)。步骤S101包括两个子步骤:模拟形状(S101A)和赋予权重(S101B),将描述如下。
阶段1,第一步骤,第一子步骤:在第一子步骤中,步骤S101A,通过图形产生器125在关键形状上模拟RDR栅格约束,作为定向边缘加权图形。具体地说,关键形状和其邻近关系被捕捉到CSN图形中。CSN-图形包括表示关键形状的节点,以及表示两个关键形状之间的相邻性以及用整个布图和设计规则的环境中它们之间的最小或优选的栅格间隔加权的弧形。
在此情况下,“关键形状”被定义为要求遵守RDR栅格约束,例如用于关键栅极的RDR中的栅格约束的矩形形状。在X方向中当且仅当如下时具有垂直取向a和b的关键形状被认为“相邻”:1)a和b在Y轴上的投影重叠;2)x(a)<x(b),其中x(a)和x(b)分别是形状a和b的X坐标;以及3)没有形状c,其中x(a)<x(c)<x(b),以及c在Y轴上的投影与a和b在Y轴上的投影重叠。在图18中示出了例子,其中下面的配对是相邻的:u-w,u-v,w-x和v-x,下面的配对是不相邻的:u-y和u-x。
CSN-图形是定向图形
GCSN=(V,A).
顶点表示在布图中需要满足RDR栅格约束的关键形状以及弧形表示X或Y方向中它们之间的相邻性。顶点Vi对应于布图中标记为csi的关键形状。如果关键形状csi和csj是相邻的,以及csi在csj的左边,那么弧形Aij将顶点Vi连接至顶点Vj。弧形的两种类型:实线弧形Aij,其中对应的关键形状csi和csj之间的间隔约束的形式如下:
Vj(X)-Vi(X)={P,2P}
其中P是间距;以及虚线弧形Aij,其中对应的关键形状csi和csj之间的间隔约束的形式如下:
Vj(X)-Vi(X)≥kP,k≥1
以及是整数。对于连接顶点Vi和Vj的弧形Aij,Vi被称作Vj的扇入(fanin)顶点,Vj被称作Vi的扇出(fanout)顶点,Aij被称作Vj的扇入弧形和Vi的扇出弧形。
此外,在图形中具有源顶点s和汇(sink)顶点t,其中s对应于布图的左边界,以及t对应于布图的右边界。虚线弧形从源s至顶点,没有扇入顶点,并添加从没有扇出顶点的顶点至汇点t的虚线弧形,以便CSN-图形被连接,即,可从源s到达任意顶点,以及可以到达汇点t。使用非负整数w(Aij)加权每个弧形Aij,其表示由大间距P的单元中的CSN图形中的连接顶点表示的两个相邻关键形状之间的最小或优选间隔。
CSN图形是定向的非循环图形(DAG),可以由如下的矛盾证明。假定在CSN-图形GCSN=(V,A)中有回路V1→V2→…→Vn→V1,以及在初始布图中顶点Vi的相应关键形状的X坐标表示为Vi(X)。通过定义CSN-图形,V1(X)<V2(X)<…<Vn(X)<V1(X),即V1(X)<V1(X),这不成立。因此,由于该假定不成立,在CSN-图形中没有回路,以及该图形是定向的非循环图形。
参考图19,在RDR的环境下,在RX上具有最小PC宽度的栅极被处理为关键形状。有时几个栅极被具有/没有PC接合(jog)的PC“干线(trunk)”连接,例如,在图19C中栅极g1和g2共享PC“干线”和PC接合。对于共享PC“干线”的那些栅极,当确定它们的目标间距上位置时它们被整体或分开处理。如果它们被分开处理,即,它们不被约束具有相同的目标间距上位置,如果在初始布图中没有接合,那么以插入附加PC接合为代价,它可以带来更多灵活性。如果它们被整体处理,即,它们被约束具有相同的目标间距上位置,那么在认证之后以增加可能区域为代价,可以保持初始布图的拓扑(topology)。为了区分形成栅极的PC形状与连接栅极的PC布线,“栅极-PC形状”被定义为PC形状,其可以表示关键栅极的位置或一组对准的关键栅极。栅极PC形状是关键形状。
图19示出了如何标识栅极-PC形状。当在共享相同PC“干线”的栅极之间没有PC接合时,一个栅极-PC形状被标识,以表示栅极(图19A)。当栅极通过“T”形状PC干线连接时,一个栅极-PC形状用于表示栅极(图19B)。当栅极通过PC接合连接时,每个栅极由栅极-PC形状表示(图19C)。对于超过两个栅极共享PC干线,应用相同的模拟。例如,在图19D中,栅极g2和g3通过“T”形状PC干线连接,因此它们由一个栅极-PC形状表示。另一栅极-PC形状表示通过PC接合连接到g2的栅极g1。在没有栅极通过PC干线连接的情况下,或在每个PC干线上有PC接合,每个栅极由栅极-PC形状表示。如果需要PC接合用于灵活性,可以将预处理器添加到布图中。
在用于由RDR间隔约束约束的栅极-PC形状(关键栅极)的CSN图形中,实线弧形Aij表示垂直栅极ga和gb共享扩散区(RX岛)的情况,ga由栅极-PC形状csi表示,gb由栅极-PC形状csj表示,以及csi和csj在X方向上相邻。虚线弧形Aij表示垂直栅极ga和gb不共享扩散区(RX岛)的情况,ga由栅极-PC形状csi表示,以及gb由栅极-PC形状csj表示,以及csi和csj在X方向上相邻。因此,在关键栅极的RDR的环境下,栅格约束由CSN-图形表示。
图20中示出了布图302上的PCN-图形300的例子。
如果它们是在类似的栅格约束下的关键形状,类似的模拟可以应用于金属布线形状。一般,假定CSN-图形G=(V,A),Vi(P)表示顶点Vi的目标间距上位置,
Vi old(X)
表示相应关键形状csi的初始位置(没有必要在间距上)。给出布图的边界位置,亦即,Vs(X)=0,Vt(X)=W,其中W是间距单元中的目标设计宽度。CSN-图形表示RDR约束如下:a)对于从顶点Vi至顶点Vj的实线弧形Aij,具有w(Aij)的权重,
2≥Vj(P)-Vi(P)≥w(Aij);
以及b)对于从顶点Vi至顶点Vj的虚线弧形Aij,具有w(Aij)的权重,Vj(P)-Vi(P)≥w(Aij)。该目的是使每个栅极的给定位置和目标位置之间的扰动最小,即,
|Vi(P)-Vi old(X)|.
关键形状和它们的左/右邻近关系可以使用平面扫描算法标识,平面扫描算法通常用于从VLSI布图提取电路器件,并基于VLSI设计规则产生几何约束。
阶段1,第一步骤,第二子步骤:第二子步骤S101B(图17)包括图形产生器125,赋予CSN-图形弧形权重。具体,使用非负整数w(Aij)加权每个弧形Aij,非负整数w(Aij)表示由间距单元中的CSN图形中的连接顶点表示的两个相邻关键形状之间的最小或优选间隔。
对于估算,弧形权重必须是相当准确的,因为它有助于目标关键形状位置上的约束。在第二阶段的末尾,过度乐观的估算(小值)可能导致不可实现的方法,而过度悲观的估算(大值)可能导致不必要的区域耗费。
权重赋予的基本思想是首先基于没有栅格约束的约束图形在压缩布图中估算关键形状csi的最左和最右X坐标,分别表示为lx(csi)、rx(csi)。不失一般性,假定在约束图形G中没有正循环。但是,如果存在正循环,可以使用各种已知的技术除去它们。给定在CSN-图形GCSN中连接顶点Vi和Vj的弧形Aij,P的大间距,以及布图中它们的相应关键形状csi和csj,如果csi的估算的最左位置等于其最右位置和csj的估算的最左位置等于其最右位置,即,csi和csj是确定压缩布图的宽度的“关键”,那么赋予弧形Aij的权重为大于(lx(csj)-lx(csi))/P的最小整数。否则,在约束图形G中从cs1至csj估算最长路径L(csi,csj),以及弧形权重被设为大于L(csi,csj)/P的最小整数。
阶段1,第二步骤:如图17所示,在步骤S102中,通过目标位置测定器126执行基于图形的关键形状布置算法,以基于CSN-图形确定目标间距上栅极位置。
以下定义应用于GCSN中的顶点Vi(以及其相应的关键形状)。所有位置(位置)位于大间距单元中:
Vi old(X):
与单元左边界相关的初始布图中Vi的初始X位置;
Vi left(P):
Vi的最左有效间距上位置;
Vi right(P):
Vi的最右有效间距上位置;
Vi larget(P):
Vi的目标间距上位置;松弛(slack)(Vi):Vi的候选间距上位置的松弛并被计算为
Vi right(P)-Vi left(P);
FI(Vi):顶点Vi的扇入弧形组;以及FO(Vi):顶点Vi的扇出弧形组。至目标位置测定器126的输入包括:初始布图GCSN=(V,A)的CSN-图形,初始位置
Vi old(X)
每个顶点Vi的,在认证We之后预期的布图宽度,初始布图Wold的宽度。输出包括目标间距上位置
Vi target(P)of Vi.
该执行的目的是获得利用最小位置扰动的有效方法。即使当没有可行方法时,算法将返回在间隔约束上具有某些违规的整数方法。
在第一子步骤S102A中,通过位置估算器142进行每个关键形状(CSN-图形中的顶点)的可能有效栅格位置的范围的估算。具体,为了保持最小布图扰动的目标,通过位置估算器142在步骤S102A估算与有效间距上位置相关的每个关键形状的位置的松弛。因为CSN-图形是DAG,可以确定用于顶点的拓扑次序。该步骤可以包括估算Vi的最左有效间距上位置,即,
Vi left(P),
以及,Vi的最右有效间距上位置,即,
Vi right(P)
通过:拓扑地挑选CSN-图形GCSN=(V,A)中的顶点;通过设置
Vs left(P)
对于源节点s至0进行松弛分析,以拓扑次序访问每个顶点Vj,以及设置
Vj left(P)
至其扇入顶点的最左位置和扇入弧形的权重的和中的最大值,即,
V j left ( P ) &LeftArrow; max { V i left ( P ) + w ( A ij ) } , &ForAll; A ij &Element; FI ( V j ) ;
设置
Vt right(P)
Vs left(P)
和对于汇点t的We之间的最大值;以及以反向拓扑次序访问每个顶点Vi,以及设置
Vj right(P)
至其扇出顶点的最右位置和扇出弧形的权重的差值中的最小值,即,
V j right ( P ) &LeftArrow; min { V i right ( P ) - w ( A ij ) } , &ForAll; A ij &Element; FO ( V i ) .
接下来,在子步骤S102B,通过分析器144进行基于CSN-图形可能有效栅格位置的松弛值的分析。关键形状具有的松弛越多,在布置它接近其初始位置的过程中存在越多的自由,且因此对初始布图引起更少扰动。但是,一旦确定关键形状的目标位置,它将约束其它关键形状的松弛。因此,为它们确定目标间距上位置的次序很重要。如下描述,形状布置器148以增加松弛的次序布置关键形状,从而在处理中最早布置最多约束的关键形状和较迟布置具有较多灵活性的关键形状。步骤S02B包括:为每个顶点Vi,将松弛(Vi)设为其最右位置和最左位置之间的差值,即,
slack ( V i ) &LeftArrow; V i right ( P ) - V i left ( P ) ;
然后以非递减次序挑选松弛值(非负整数)组
Sslack←{sk0,sk1,Λ,skm},
以及标记除源点s和汇点之外的所有顶点“非锚定(unanchored)”,初始化顶点组Na为{s,t},以及Nua为V-Na
接下来,在子步骤S102C中,通过宽度估算器146进行根据栅格的布图的最小宽度的估算。步骤S102C包括:赋予
W min &LeftArrow; V i left ( P ) , W t arg et &LeftArrow; max { W e , W min } ,
以及必要时,将初始位置从较早布图尺寸按比例缩放为目标尺寸,即
K &LeftArrow; W t arg et / W old , V i lod ( X ) &LeftArrow; K &times; V i old ( X ) , &ForAll; A i &Element; V .
在子步骤S102D中,在相应的有效位置范围内以拓扑次序通过具有最小松弛的布置器148布置关键形状,同时关键形状尽可能地接近初始位置。亦即,首先通过布置器148布置具有较少松弛的关键形状,以便对于具有更多松弛的其它形状留下更多自由度。以非递减次序基于它们的松弛值分批布置顶点。在每个反复过程中,拾取未布置的顶点,用最小松弛布置。具有相同松弛的顶点以它们的拓扑次序布置。当确定顶点的目标间距上位置
Vi时,
Vi left(P)
Vi right(P)
之间的最靠近其初始位置的位置
Vi old(X)
被选作其目标间距上位置。布置可以包括:设置skmin为松弛组Sslack中的最小松弛,初始化顶点组Ncrit为具有skmin的松弛的“非锚定”顶点的顶点组,从松弛组Sslack获得skmin值,即,
skmin←min{ski,|ski∈Sslack},Ncrit←{Vi|Vi∈Nua,slack(Vi)=skmin},Sslack←Sslack-{skmin};
以及以拓扑次序访问顶点组Ncrit中的每个顶点Vj。如果顶点的松弛值是零,设置
Vj target(P)
Vj left(P);
另外更新其最左有效间距上位置
V j left ( P ) &LeftArrow; max { V i left ( P ) + w ( A ij ) } , &ForAll; A ij &Element; FI ( V j ) .
如果有实线扇入弧形Aij和Vi在顶点组Na中,那么更新其最右有效间距上位置
V j right ( P ) &LeftArrow; max ( V j left ( P ) , min ( V j right ( P ) , V i t arg et ( P ) + 2 ) ) .
如果有实线扇出弧形Aij和Vi在顶点组Na中,那么更新其最左有效间距上位置
V j left ( P ) &LeftArrow; min { ( V i right ( P ) , max ( V j left ( P ) , V i t arg et ( P ) - 2 ) ) .
接下来,赋予
Vj target(P)
为最接近的值至
Vj left(P)
Vj right(P).
之间的
Vi old(X)
标记Vj“锚定”和更新顶点组Na←Na+{Vj},Nua←Nua-{Vj)。
在每次布置之后,在子步骤S102E,对于“非锚定”顶点,需要更新未布置顶点的最左和最右间距上位置以及它们的松弛。该步骤可以包括:以拓扑次序访问每个“非锚定”顶点Vj,以及更新
V j left ( P ) &LeftArrow; max { V i left ( P ) + w ( A ij ) } , &ForAll; A ij &Element; FI ( V j ) ;
然后以反向拓扑次序访问每个“非锚定”顶点Vj,以及更新
V i right ( P ) &LeftArrow; max { V j right ( P ) - w ( A ij ) } , &ForAll; A ij &Element; FO ( V i ) .
一旦完成那些功能,为每个影响的顶点更新松弛值以及更新挑选的松弛组Sslack
重复子步骤S102D和102E,直至所有顶点被布置。
在图21A-E中示出了示例布置。在图21A中示出了布图的CSN-图形。在松弛分析之后,用以下形式标记顶点的松弛和较早位置
[Vi left(P),Vi right(P)],Vi old(X),
接近图21B中的每个顶点。在第一迭代中,顶点V1、V2、V3、V4、V5被布置(“锚定”)为它们具有最小的松弛。更新“非锚定”顶点的松弛,如图21C所示。在第二迭代中,基于它们的松弛和较早位置布置顶点V6、V7、V8、V9以及更新V10的松弛,如图21D所示。最后,如图21E所示布置顶点V10
b)阶段2:认证布图
继续参考图17,第二阶段包括步骤S103,通过将关键形状的目标间距上位置作为它和设计布图边界之间的一组基本规则间隔约束,使用线性规划解算器160(图4),解决认证问题作为线性规划问题。如下所述,系统100(图4)采用问题(3)的LP公式和使用基于图形的简单或标准LP解算器160解决它。
在步骤102中计算目标间距上位置之后,即,对于栅极的每个布图边缘
Ei g
目标间距上位置称为
T(Ei g)
相对于布图的左边界位置,指定为lf(X),然后在问题(4)中将栅格约束转变为左边界和栅极之间的一组简单间隔约束。因此,问题(4)的约束被放松为:
min: &Sigma; v i &Element; V W i &CenterDot; ( R i - L i )
s.t.:Vj(X)-Vi(X)≥dij,Aij∈A
L i &le; V i ( X ) , L i &le; V i old ( X ) , &ForAll; A i &Element; V
R i &GreaterEqual; V i ( X ) , R i &GreaterEqual; V i old ( X ) , &ForAll; V i &Element; V
V i g ( X ) - V if ( X ) &GreaterEqual; T ( E i g ) , &ForAll; V i g &Element; V RDR
V if ( X ) - V i g ( X ) &GreaterEqual; - T ( E i g ) , &ForAll; V i g &Element; V RDR - - - ( 6 )
因为问题(6)具有与问题(2)相同的形式,如下类似地放松不满足的约束。使Ae是与最初不满足的约束相关的A中的弧形组,即
V j old ( X ) - V i old ( X ) = D ij < d ij ,
包括设计布图的栅极和左边界之间新增加的间隔约束。为每个弧形Aij∈Ae定义新的变量Mi
该问题被放松为:
min: &Sigma; v i &Element; V - V RDR W i &CenterDot; ( R i - L i ) + &lambda; &CenterDot; &Sigma; A ij &Element; A m ( M i - V j ( X ) + d ij )
s.t.:Vj(X)-Vi(X)≥dij,Aij∈A-Ae
      dij≥Vj(X)-Mi≥Dij,Mi-Vi(X)≥0,Aij∈Ae
L i &le; V i ( X ) , L i &le; V i old ( X ) , &ForAll; A i &Element; V
R i &GreaterEqual; V i ( X ) , R i &GreaterEqual; V i old ( X ) , &ForAll; V i &Element; V - - - ( 3 )
通过为入选择非常大的值,当使目标函数中的第二项最小为零时,尽可能多地满足初始布局中的不满足的约束。为了允许栅自由地移动,位置扰动目标不应用于关键形状边缘。基于图形的简单或标准LP解算器160可用于解决该问题。因为计算目标间距上栅极位置需要考虑栅极之间的必需最小间隔,所以通常在第二阶段中可得到它们的结果,换言之,在第二阶段的结果中,满足问题(6)中
Vi g(X)
的约束,以及
Vi g(X)
的值与其目标间距上位置相同。
III.结论
在先前的论述中,应当理解通过处理器,如系统100的PU 114执行论述的方法步骤,执行在存储器中存储的程序产品122的指令。应当理解在此描述的各种器件、模块、机构和系统可以用硬件、软件或硬件和软件的组合来实现,以及除如图所示之外可以被划分。可以通过适于进行在此描述的方法的任意类型的计算机系统或其它设备来执行它们。硬件和软件的典型组合可以是具有计算机程序的通用计算机系统,当加载和执行计算机程序时,控制计算机系统,以便它进行在此描述的方法。另外,可以利用包含用于进行发明的一种或多种功能任务的专门化硬件的专用计算机。本发明也可以被嵌入计算机程序产品中,该计算机程序产品包括能够实施在此描述的方法和功能的所有特征,并当加载在计算机系统中时,能够进行这些方法和功能。本文中的计算机程序、软件程序、程序、程序产品或软件意味着一组指令的用任意语言、代码或符号的任意表达,旨在使具有信息处理能力的系统直接或在如下之后执行特定功能:(a)转换为另一语言、代码或符合;和/或(b)以不同的材料形式再现。此外,应该认识到可以提供上述发明作为第三方服务。
尽管结合上面所述的特定实施例描述了本发明,但是对所属领域的技术人员来说许多选择性方案、改进和变化是显而易见的。由此,上面所述的发明的实施例旨在说明,而不是限制。在不脱离下列权利要求限定的本发明的精神和范围的条件下,可以进行各种变化。

Claims (48)

1.一种用于使集成电路(IC)设计布图从没有基本设计限制(RDR)的源技术迁移至具有RDR的目标技术的方法,该方法包括以下步骤:
认证设计布图,以满足RDR栅格约束并在第一方向上固定任意基本规则违规;
插入需要的虚拟形状;以及
运行最小扰动分析,以便满足至少一个关键形状的边缘覆盖度需求并在第二方向上固定任意基本规则违规。
2.根据权利要求1的方法,其中所述认证步骤包括:
利用最小布图扰动,同时满足所述RDR栅格约束,计算多个关键形状的每一个的目标间距上位置;以及
通过将关键形状的目标间距上位置作为多个关键形状和设计布图边界之间的一组基本规则间隔约束,认证所述设计布图作为线性规划问题。
3.根据权利要求2的方法,其中所述计算步骤包括:
产生模拟多个关键形状和其邻近关系的边缘加权图形;以及
通过首先布置具有较少松弛的关键形状,使用所述边缘加权图形,在第一方向上确定所述多个关键形状的目标栅格位置。
4.根据权利要求3的方法,其中所述产生步骤包括:
模拟所述多个关键形状和其邻近关系,作为边缘加权图形;以及
将权重赋予所述边缘加权图形的每个弧形。
5.根据权利要求3的方法,其中所述确定步骤包括:
估算每个关键形状的可能有效栅格位置的范围;
分析所述边缘加权图形上的可能有效栅格位置的松弛值;
依据栅格估算所述布图的最小宽度;
在相应的有效位置范围内以及尽可能地接近初始位置,以拓扑次序布置具有最小松弛的关键形状;以及
更新未布置的关键形状的可能有效栅格位置和松弛。
6.根据权利要求3的方法,其中所述边缘加权图形包括表示关键形状的节点,以及表示两个关键形状之间的相邻性并加权有它们之间的最小和优选栅格间隔之一的弧形。
7.根据权利要求1的方法,其中插入需要的虚拟形状的所述步骤包括:
在所述第一方向上运行第一最小扰动分析,其中固定所述设计布图的多个关键形状的栅格位置并设计基本规则,以减小所述关键形状周围的扩散区;
插入至少一个虚拟形状;以及
运行第二最小扰动分析,其中固定所述多个关键形状和每个虚拟形状的栅格位置,以解决由第一方向上的每个虚拟形状产生的任意基本规则违规。
8.根据权利要求7的方法,其中所述至少一个虚拟形状插入步骤包括在不超过关键形状的两个栅格位置的范围内并不被扩散区或其它形状覆盖的任意区域中的间距上布置虚拟形状。
9.根据权利要求7的方法,其中在所述第一方向上在所述第二最小扰动分析过程中,所述关键形状和每个虚拟形状不移动。
10.根据权利要求1的方法,其中在所述第二方向上的所述最小扰动分析还包括校正第二方向上的任意基本规则违规,以及使所有水平布线非关键,以便使相移掩模布图问题最小。
11.根据权利要求1的方法,其中所述第一方向是垂直于所述多个关键形状的纵轴的方向,以及所述第二方向平行于所述多个关键形状的纵轴。
12.一种用于使集成电路(IC)设计布图从没有基本设计限制(RDR)的源技术迁移至具有RDR的目标技术的系统,该系统包括:
用于认证设计布图,以满足RDR栅格约束并在第一方向上固定任意基本规则违规的装置;
用于插入需要的虚拟形状的装置;以及
用于运行最小扰动分析,以便解决至少一个关键形状的边缘覆盖度需求并在第二方向上固定任意基本规则违规的装置。
13.根据权利要求12的系统,其中所述认证装置包括:
用于利用最小布图扰动,同时满足所述RDR栅格约束,计算多个关键形状的每一个的目标间距上位置的装置;以及
用于通过将关键形状的目标间距上位置作为多个关键形状和设计布图边界之间的一组基本规则间隔约束,认证所述设计布图作为线性规划问题的装置。
14.根据权利要求13的系统,其中所述计算装置包括:
用于产生模拟多个关键形状和其邻近关系的边缘加权图形的装置;以及
用于通过首先布置具有较少松弛的关键形状,使用所述边缘加权图形,在第一方向上确定所述多个关键形状的目标栅格位置的装置。
15.根据权利要求14的系统,其中所述产生装置包括:
用于模拟所述多个关键形状和其邻近关系,作为边缘加权图形的装置;以及
用于将权重赋予所述边缘加权图形的每个弧形的装置。
16.根据权利要求14的系统,其中所述确定装置包括:
用于估算每个关键形状的可能有效栅格位置的范围的装置;
用于分析所述边缘加权图形上的可能有效栅格位置的松弛值的装置;
用于依据栅格估算所述布图的最小宽度的装置;
用于在相应的有效位置范围内以及尽可能地接近初始位置,以拓扑次序布置具有最小松弛的关键形状的装置;以及
用于更新未布置的关键形状的可能有效栅格位置和松弛的装置。
17.根据权利要求14的系统,其中所述边缘加权图形包括表示关键形状的节点,以及表示两个关键形状之间的相邻性并加权有它们之间的最小和优选栅格间隔之一的弧形。
18.根据权利要求12的系统,其中所述需要的虚拟形状插入装置包括:
用于在所述第一方向上运行第一最小扰动分析,其中固定所述设计布图的多个关键形状的栅格位置并设计基本规则,以减小所述关键形状周围的扩散区的装置;
用于插入至少一个虚拟形状的装置;以及
用于运行第二最小扰动分析,其中固定所述关键形状和每个虚拟形状的栅格位置,以解决由第一方向上的每个虚拟形状产生的任意基本规则违规的装置。
19.根据权利要求18的系统,其中所述至少一个虚拟形状插入装置在不超过关键形状的两个栅格位置的范围内并不被扩散区或其它形状覆盖的任意区域中的间距上布置虚拟形状。
20.根据权利要求18的系统,其中在所述第二运行装置的操作过程中每个虚拟形状被固定。
21.根据权利要求12的系统,其中所述最小扰动分析运行装置还包括校正第二方向上的任意基本规则违规,以及使所有水平布线非关键,以便使相移掩模布图问题最小。
22.根据权利要求12的系统,其中所述第一方向是垂直于所述多个关键形状的纵轴的方向,以及所述第二方向平行于所述多个关键形状的纵轴。
23.一种计算机程序产品,包括具有嵌入其中的计算机可读程序代码的计算机可用介质,用于将集成电路(IC)设计从没有基本设计限制(RDR)的源技术迁移至具有RDR的目标技术,该程序产品包括:
配置为认证设计布图,以满足RDR栅格约束并在第一方向上固定任意基本规则违规的程序代码;
配置为插入需要的虚拟形状的程序代码;以及
配置为运行最小扰动分析,以便解决至少一个关键形状的边缘覆盖度需求并在第二方向上固定任意基本规则违规的程序代码。
24.根据权利要求23的程序产品,其中所述认证代码包括:
配置为利用最小布图扰动,同时满足所述RDR栅格约束,计算多个关键形状的每一个的目标间距上位置的程序代码;以及
配置为通过将关键形状的目标间距上位置作为多个关键形状和设计布图边界之间的一组基本规则间隔约束,认证所述设计布图作为线性规划问题的程序代码。
25.根据权利要求24的程序产品,其中所述计算代码包括:
配置为产生模拟多个关键形状和其邻近关系的边缘加权图形的程序代码;以及
配置为通过首先布置具有较少松弛的关键形状,使用所述边缘加权图形,在第一方向上确定所述多个关键形状的目标栅格位置的程序代码。
26.根据权利要求25的程序产品,其中所述产生代码包括:
配置为模拟所述多个关键形状和其邻近关系,作为边缘加权图形的程序代码;以及
配置为将权重赋予所述边缘加权图形的每个弧形的程序代码。
27.根据权利要求25的程序产品,其中所述确定代码包括:
配置为估算每个关键形状的可能有效栅格位置的范围的程序代码;
配置为分析所述边缘加权图形上的可能有效栅格位置的松弛值的程序代码;
配置为依据栅格估算所述布图的最小宽度的程序代码;
配置为在相应的有效位置范围内以及尽可能地接近初始位置,以拓扑次序布置具有最小松弛的关键形状的程序代码;以及
配置为更新未布置的关键形状的可能有效栅格位置和松弛的程序代码。
28.根据权利要求25的程序产品,其中所述边缘加权图形包括表示关键形状的节点,以及表示两个关键形状之间的相邻性并加权有它们之间的最小和优选栅格间隔之一的弧形。
29.根据权利要求23的程序产品,其中所述需要的虚拟形状插入代码包括:
配置为在所述第一方向上运行第一最小扰动分析,其中固定所述设计布图的多个关键形状的栅格位置并设计基本规则,以减小所述关键形状周围的扩散区的程序代码;
配置为插入至少一个虚拟形状的程序代码;以及
配置为运行第二最小扰动分析,其中固定所述多个关键形状和每个虚拟形状的栅格位置,以解决由第一方向上的每个虚拟形状产生的任意基本规则违规的程序代码。
30.根据权利要求29的程序产品,其中所述至少一个虚拟形状插入程序代码在不超过关键形状的两个栅格位置的范围内并不被扩散区或其它形状覆盖的任意区域中布置虚拟形状。
31.根据权利要求29的程序产品,其中在所述第二运行装置的操作过程中每个虚拟形状被固定。
32.根据权利要求23的程序产品,其中所述最小扰动分析运行程序代码还校正第二方向上的任意基本规则违规,以及使所有水平布线非关键,以便使相移掩模布图问题最小。
33.根据权利要求23的程序产品,其中所述第一方向是垂直于所述多个关键形状的纵轴的方向,以及所述第二方向平行于所述多个关键形状的纵轴。
34.一种用于利用原始设计的最小布图扰动认证受基本规则和基本设计限制(RDR)栅格约束影响的集成电路设计布图的方法,该方法包括以下步骤:
利用最小布图扰动,同时满足所述RDR栅格约束,计算多个关键形状的每一个的目标间距上位置;以及
通过将关键形状的目标间距上位置作为多个关键形状和设计布图边界之间的一组基本规则间隔约束,认证所述设计布图作为线性规划问题。
35.根据权利要求34的方法,其中所述计算步骤包括:
产生模拟多个关键形状和其邻近关系的边缘加权图形;以及
通过首先布置具有较少松弛的关键形状,使用所述边缘加权图形,在第一方向上确定所述多个关键形状的目标栅格位置。
36.根据权利要求35的方法,其中所述产生步骤包括:
模拟所述多个关键形状和其邻近关系,作为边缘加权图形;以及
将权重赋予所述边缘加权图形的每个弧形。
37.根据权利要求35的方法,其中所述确定步骤包括:
估算每个关键形状的可能有效栅格位置的范围;
分析所述边缘加权图形上的可能有效栅格位置的松弛值;
依据栅格估算所述布图的最小宽度;
在相应的有效位置范围内以及尽可能地接近初始位置,以拓扑次序布置具有最小松弛的关键形状;以及
更新未布置的关键形状的可能有效栅格位置和松弛。
38.根据权利要求35的方法,其中所述边缘加权图形包括表示关键形状的节点,以及表示两个关键形状之间的相邻性并加权有它们之间的最小和优选栅格间隔之一的弧形。
39.一种利用原始设计的最小布图扰动认证受基本规则和基本设计限制(RDR)栅格约束影响的集成电路设计布图的系统,该系统包括:
用于利用最小布图扰动,同时满足所述RDR栅格约束,计算多个关键形状的每一个的目标间距上位置的装置;以及
用于通过将关键形状的目标间距上位置作为多个关键形状和设计布图边界之间的一组基本规则间隔约束,认证所述设计布图作为线性规划问题的装置。
40.根据权利要求39的系统,其中所述计算装置包括:
用于产生模拟多个关键形状和其邻近关系的边缘加权图形的装置;以及
用于通过首先布置具有较少松弛的关键形状,使用所述边缘加权图形,在第一方向上确定所述多个关键形状的目标栅格位置的装置。
41.根据权利要求40的系统,其中所述产生装置包括:
用于模拟所述多个关键形状和其邻近关系,作为边缘加权图形的装置;以及
用于将权重赋予所述边缘加权图形的每个弧形的装置。
42.根据权利要求40的系统,其中所述确定装置包括:
用于估算每个关键形状的可能有效栅格位置的范围的装置;
用于分析所述边缘加权图形上的可能有效栅格位置的松弛值的装置;
用于依据栅格估算所述布图的最小宽度的装置;
用于在相应的有效位置范围内以及尽可能地接近初始位置,以拓扑次序布置具有最小松弛的关键形状的装置;以及
用于更新未布置的关键形状的可能有效栅格位置和松弛的装置。
43.根据权利要求40的系统,其中所述边缘加权图形包括表示关键形状的节点,以及表示两个关键形状之间的相邻性并加权有它们之间的最小和优选栅格间隔之一的弧形。
44.一种计算机程序产品,包括具有嵌入其中的计算机可读程序代码的计算机可用介质,用于利用原始设计的最小布图扰动认证受基本规则和基本设计限制(RDR)栅格约束影响的集成电路设计布图,该程序产品包括:
配置为利用最小布图扰动,同时满足所述RDR栅格约束,计算多个关键形状的每一个的目标间距上位置的程序代码;以及
配置为通过将关键形状的目标间距上位置作为多个关键形状和设计布图边界之间的一组基本规则间隔约束,认证所述设计布图作为线性规划问题的程序代码。
45.根据权利要求44的程序产品,其中所述计算代码包括:
配置为产生模拟多个关键形状和其邻近关系的边缘加权图形的程序代码;以及
配置为通过首先布置具有较少松弛的关键形状,使用所述边缘加权图形,在第一方向上确定所述多个关键形状的目标栅格位置的程序代码。
46.根据权利要求45的程序产品,其中所述产生代码包括:
配置为模拟所述多个关键形状和其邻近关系,作为边缘加权图形的程序代码;以及
配置为将权重赋予所述边缘加权图形的每个弧形的程序代码。
47.根据权利要求45的程序产品,其中所述确定代码包括:
配置为估算每个关键形状的可能有效栅格位置的范围的程序代码;
配置为分析所述边缘加权图形上的可能有效栅格位置的松弛值的程序代码;
配置为依据栅格估算所述布图的最小宽度的程序代码;配置为在相应的有效位置范围内以及尽可能地接近初始位置,以拓扑次序布置具有最小松弛的关键形状的程序代码;以及
配置为更新未布置的关键形状的可能有效栅格位置和松弛的程序代码。
48.根据权利要求45的程序产品,其中所述边缘加权图形包括表示关键形状的节点,以及表示两个关键形状之间的相邻性并加权有它们之间的最小和优选栅格间隔之一的弧形。
CNB2005101170369A 2004-10-29 2005-10-28 用于具有基本设计限制的集成电路的技术迁移的方法和系统 Expired - Fee Related CN100442297C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/904,225 US7302651B2 (en) 2004-10-29 2004-10-29 Technology migration for integrated circuits with radical design restrictions
US10/904,225 2004-10-29

Publications (2)

Publication Number Publication Date
CN1801160A true CN1801160A (zh) 2006-07-12
CN100442297C CN100442297C (zh) 2008-12-10

Family

ID=36317782

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005101170369A Expired - Fee Related CN100442297C (zh) 2004-10-29 2005-10-28 用于具有基本设计限制的集成电路的技术迁移的方法和系统

Country Status (2)

Country Link
US (5) US7302651B2 (zh)
CN (1) CN100442297C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101770536B (zh) * 2008-12-30 2014-07-02 国际商业机器公司 将以电流模式运行的电子器件迁移到目标技术的方法

Families Citing this family (65)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7448012B1 (en) 2004-04-21 2008-11-04 Qi-De Qian Methods and system for improving integrated circuit layout
US7302651B2 (en) * 2004-10-29 2007-11-27 International Business Machines Corporation Technology migration for integrated circuits with radical design restrictions
KR100718216B1 (ko) * 2004-12-13 2007-05-15 가부시끼가이샤 도시바 반도체 장치, 패턴 레이아웃 작성 방법, 노광 마스크
US7340697B2 (en) * 2004-12-22 2008-03-04 Agere Systems Inc. Integrated computer-aided circuit design kit facilitating verification of designs across different process technologies
US7409651B2 (en) * 2005-08-05 2008-08-05 International Business Machines Corporation Automated migration of analog and mixed-signal VLSI design
US7730433B2 (en) * 2005-09-29 2010-06-01 Sherif Ahmed Abdel-Wahab Hammouda Analog design retargeting
US7640522B2 (en) * 2006-01-14 2009-12-29 Tela Innovations, Inc. Method and system for placing layout objects in a standard-cell layout
US7454721B2 (en) * 2006-02-27 2008-11-18 International Business Machines Corporation Method, apparatus and computer program product for optimizing an integrated circuit layout
US8225261B2 (en) 2006-03-09 2012-07-17 Tela Innovations, Inc. Methods for defining contact grid in dynamic array architecture
US7446352B2 (en) 2006-03-09 2008-11-04 Tela Innovations, Inc. Dynamic array architecture
US8247846B2 (en) 2006-03-09 2012-08-21 Tela Innovations, Inc. Oversized contacts and vias in semiconductor chip defined by linearly constrained topology
US9563733B2 (en) 2009-05-06 2017-02-07 Tela Innovations, Inc. Cell circuit and layout with linear finfet structures
US7943967B2 (en) 2006-03-09 2011-05-17 Tela Innovations, Inc. Semiconductor device and associated layouts including diffusion contact placement restriction based on relation to linear conductive segments
US8839175B2 (en) 2006-03-09 2014-09-16 Tela Innovations, Inc. Scalable meta-data objects
US8245180B2 (en) 2006-03-09 2012-08-14 Tela Innovations, Inc. Methods for defining and using co-optimized nanopatterns for integrated circuit design and apparatus implementing same
US8658542B2 (en) 2006-03-09 2014-02-25 Tela Innovations, Inc. Coarse grid design methods and structures
US7763534B2 (en) 2007-10-26 2010-07-27 Tela Innovations, Inc. Methods, structures and designs for self-aligning local interconnects used in integrated circuits
US9230910B2 (en) 2006-03-09 2016-01-05 Tela Innovations, Inc. Oversized contacts and vias in layout defined by linearly constrained topology
US8225239B2 (en) 2006-03-09 2012-07-17 Tela Innovations, Inc. Methods for defining and utilizing sub-resolution features in linear topology
US8541879B2 (en) 2007-12-13 2013-09-24 Tela Innovations, Inc. Super-self-aligned contacts and method for making the same
US9035359B2 (en) 2006-03-09 2015-05-19 Tela Innovations, Inc. Semiconductor chip including region including linear-shaped conductive structures forming gate electrodes and having electrical connection areas arranged relative to inner region between transistors of different types and associated methods
US7932545B2 (en) 2006-03-09 2011-04-26 Tela Innovations, Inc. Semiconductor device and associated layouts including gate electrode level region having arrangement of six linear conductive segments with side-to-side spacing less than 360 nanometers
US7956421B2 (en) 2008-03-13 2011-06-07 Tela Innovations, Inc. Cross-coupled transistor layouts in restricted gate level layout architecture
US8448102B2 (en) 2006-03-09 2013-05-21 Tela Innovations, Inc. Optimizing layout of irregular structures in regular layout context
US8653857B2 (en) 2006-03-09 2014-02-18 Tela Innovations, Inc. Circuitry and layouts for XOR and XNOR logic
US9009641B2 (en) 2006-03-09 2015-04-14 Tela Innovations, Inc. Circuits with linear finfet structures
US7437691B2 (en) * 2006-04-11 2008-10-14 International Business Machines Corporation VLSI artwork legalization for hierarchical designs with multiple grid constraints
US7484197B2 (en) * 2006-04-14 2009-01-27 International Business Machines Corporation Minimum layout perturbation-based artwork legalization with grid constraints for hierarchical designs
GB2439759A (en) * 2006-06-30 2008-01-09 X Fab Uk Ltd RF-CMOS transistor array
US7761819B2 (en) * 2006-07-05 2010-07-20 Yue Yang System and method of modification of integrated circuit mask layout
US7487479B1 (en) * 2006-07-06 2009-02-03 Sun Microsystems, Inc. Systematic approach for applying recommended rules on a circuit layout
US8572523B2 (en) * 2006-07-21 2013-10-29 Synopsys, Inc. Lithography aware leakage analysis
WO2008015111A2 (en) * 2006-08-04 2008-02-07 Sagantec Israel Ltd Method and system for adapting a circuit layout to a predefined grid
US7584440B2 (en) * 2006-10-12 2009-09-01 Cadence Design Systems, Inc. Method and system for tuning a circuit
US7979829B2 (en) 2007-02-20 2011-07-12 Tela Innovations, Inc. Integrated circuit cell library with cell-level process compensation technique (PCT) application and associated methods
US8286107B2 (en) 2007-02-20 2012-10-09 Tela Innovations, Inc. Methods and systems for process compensation technique acceleration
US8667443B2 (en) 2007-03-05 2014-03-04 Tela Innovations, Inc. Integrated circuit cell library for multiple patterning
US7888705B2 (en) 2007-08-02 2011-02-15 Tela Innovations, Inc. Methods for defining dynamic array section with manufacturing assurance halo and apparatus implementing the same
US7783995B2 (en) * 2007-03-08 2010-08-24 International Business Machines Corporation System and method for circuit design scaling
US7543252B2 (en) * 2007-03-28 2009-06-02 International Business Machines Corporation Migration of integrated circuit layout for alternating phase shift masks
JP2008270276A (ja) * 2007-04-16 2008-11-06 Nec Electronics Corp ダミーパターン配置装置、ダミーパターンの配置方法、及び半導体装置
JP4946655B2 (ja) * 2007-06-19 2012-06-06 富士通株式会社 設計支援プログラム、該プログラムを記録した記録媒体、設計支援装置および設計支援方法
US7761818B2 (en) * 2007-07-25 2010-07-20 International Business Machines Corporation Obtaining a feasible integer solution in a hierarchical circuit layout optimization
US8302062B2 (en) * 2007-07-25 2012-10-30 International Business Machines Corporation Methods to obtain a feasible integer solution in a hierarchical circuit layout optimization
JP2010003712A (ja) * 2007-08-09 2010-01-07 Renesas Technology Corp 半導体装置、半導体装置の配置配線方法、及びデータ処理システム
US8453094B2 (en) 2008-01-31 2013-05-28 Tela Innovations, Inc. Enforcement of semiconductor structure regularity for localized transistors and interconnect
US7939443B2 (en) 2008-03-27 2011-05-10 Tela Innovations, Inc. Methods for multi-wire routing and apparatus implementing same
US20090254814A1 (en) * 2008-04-08 2009-10-08 Microsoft Corporation Per-edge rules and constraints-based layout mechanism
KR101749351B1 (ko) 2008-07-16 2017-06-20 텔라 이노베이션스, 인코포레이티드 동적 어레이 아키텍쳐에서의 셀 페이징과 배치를 위한 방법 및 그 구현
US9122832B2 (en) 2008-08-01 2015-09-01 Tela Innovations, Inc. Methods for controlling microloading variation in semiconductor wafer layout and fabrication
US8051391B2 (en) * 2008-08-04 2011-11-01 Texas Instruments Incorporated Method for layout of random via arrays in the presence of strong pitch restrictions
US7512911B1 (en) 2008-09-04 2009-03-31 International Business Machines Corporation Method for creating a parameterized cell library dual-layered rule system for rapid technology migration
JP2010062475A (ja) * 2008-09-05 2010-03-18 Nec Electronics Corp レイアウトパターン生成方法、半導体装置の製造方法、プログラム、レイアウトパターン生成装置
US8984424B2 (en) * 2009-02-03 2015-03-17 Microsoft Technology Licensing, Llc Layout of user interface elements
US8661392B2 (en) 2009-10-13 2014-02-25 Tela Innovations, Inc. Methods for cell boundary encroachment and layouts implementing the Same
US8519444B2 (en) * 2010-09-10 2013-08-27 Taiwan Semiconductor Manufacturing Company, Ltd. Modified design rules to improve device performance
US9159627B2 (en) 2010-11-12 2015-10-13 Tela Innovations, Inc. Methods for linewidth modification and apparatus implementing the same
US8423941B2 (en) * 2011-08-08 2013-04-16 International Business Machines Corporation Structural migration of integrated circuit layout
US9508181B2 (en) * 2011-08-31 2016-11-29 Adobe Systems Incorporated Ordering and rendering buffers for complex scenes with cyclic dependency
US9026958B1 (en) * 2013-03-11 2015-05-05 Cadence Design Systems, Inc. Method and system for double patterning technology (DPT) odd loop visualization for an integrated circuit layout
US9740814B1 (en) * 2013-03-11 2017-08-22 Cadence Design Systems, Inc. Method and system for triple patterning technology (TPT) violation detection and visualization
US8839177B1 (en) 2013-08-22 2014-09-16 International Business Machines Corporation Method and system allowing for semiconductor design rule optimization
US10628544B2 (en) * 2017-09-25 2020-04-21 International Business Machines Corporation Optimizing integrated circuit designs based on interactions between multiple integration design rules
US10984164B1 (en) * 2019-10-23 2021-04-20 Cadence Design Systems, Inc. Method, system, and product for generating and maintaining a physical design for an electronic circuit having sync group constraints for design rule checking
KR20220134325A (ko) 2021-03-26 2022-10-05 삼성전자주식회사 표준 셀 및 필러 셀을 포함하는 집적 회로

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3139896B2 (ja) * 1993-11-05 2001-03-05 株式会社東芝 半導体レイアウト方法
US5535134A (en) 1994-06-03 1996-07-09 International Business Machines Corporation Object placement aid
JP3202490B2 (ja) * 1994-07-22 2001-08-27 株式会社東芝 集積回路のレイアウト方法及び集積回路のレイアウト装置
US6209123B1 (en) * 1996-11-01 2001-03-27 Motorola, Inc. Methods of placing transistors in a circuit layout and semiconductor device with automatically placed transistors
JP4058127B2 (ja) * 1997-02-24 2008-03-05 富士通株式会社 半導体装置のレイアウト変更方法
US6449757B1 (en) * 1998-02-26 2002-09-10 Micron Technology, Inc. Hierarchical semiconductor design
GB9914380D0 (en) * 1999-06-21 1999-08-18 Regan Timothy J Method of scaling an integrated circuit
US6378113B1 (en) * 1999-10-27 2002-04-23 Synopsys, Inc. Black box transparency in a circuit timing model
GB9929084D0 (en) * 1999-12-08 2000-02-02 Regan Timothy J Modification of integrated circuits
US6787271B2 (en) * 2000-07-05 2004-09-07 Numerical Technologies, Inc. Design and layout of phase shifting photolithographic masks
US6567967B2 (en) * 2000-09-06 2003-05-20 Monterey Design Systems, Inc. Method for designing large standard-cell base integrated circuits
AU2001290937A1 (en) * 2000-09-13 2002-04-02 Massachusetts Institute Of Technology Method of design and fabrication of integrated circuits using regular arrays and gratings
JP2002110808A (ja) * 2000-09-29 2002-04-12 Toshiba Microelectronics Corp Lsiレイアウト設計装置、レイアウト設計方法、レイアウト設計プログラム、及び半導体集積回路装置
US6759282B2 (en) * 2001-06-12 2004-07-06 International Business Machines Corporation Method and structure for buried circuits and devices
JP2003017390A (ja) * 2001-06-29 2003-01-17 Toshiba Corp パターン形成方法及びパターン形成に用いるマスク
US6832364B2 (en) * 2002-10-03 2004-12-14 International Business Machines Corporation Integrated lithographic layout optimization
JP2004165572A (ja) * 2002-11-15 2004-06-10 Sanyo Electric Co Ltd 半導体集積回路のレイアウト設計装置、レイアウト設計方法及びレイアウト設計プログラム
US6925627B1 (en) * 2002-12-20 2005-08-02 Conexant Systems, Inc. Method and apparatus for power routing in an integrated circuit
US7001693B2 (en) * 2003-02-28 2006-02-21 International Business Machines Corporation Binary OPC for assist feature layout optimization
US6986109B2 (en) * 2003-05-15 2006-01-10 International Business Machines Corporation Practical method for hierarchical-preserving layout optimization of integrated circuit layout
US7007258B2 (en) * 2003-06-13 2006-02-28 Sun Microsystems, Inc. Method, apparatus, and computer program product for generation of a via array within a fill area of a design layout
JP4620942B2 (ja) * 2003-08-21 2011-01-26 川崎マイクロエレクトロニクス株式会社 半導体集積回路のレイアウト方法、そのレイアウト構造、およびフォトマスク
US6941528B2 (en) * 2003-08-28 2005-09-06 International Business Machines Corporation Use of a layout-optimization tool to increase the yield and reliability of VLSI designs
US7155689B2 (en) * 2003-10-07 2006-12-26 Magma Design Automation, Inc. Design-manufacturing interface via a unified model
US6973636B2 (en) * 2003-10-17 2005-12-06 Taiwan Semiconductor Manufacturing Company, Ltd. Method of defining forbidden pitches for a lithography exposure tool
US7117456B2 (en) * 2003-12-03 2006-10-03 International Business Machines Corporation Circuit area minimization using scaling
TW200532768A (en) * 2004-02-24 2005-10-01 Univ Hong Kong Rectangular contact lithography for circuit performance improvement
US7448012B1 (en) * 2004-04-21 2008-11-04 Qi-De Qian Methods and system for improving integrated circuit layout
EP1747520B1 (en) * 2004-05-07 2018-10-24 Mentor Graphics Corporation Integrated circuit layout design methodology with process variation bands
US7536664B2 (en) * 2004-08-12 2009-05-19 International Business Machines Corporation Physical design system and method
US7908572B2 (en) * 2004-10-15 2011-03-15 Takumi Technology Corporation Creating and applying variable bias rules in rule-based optical proximity correction for reduced complexity
US7302651B2 (en) * 2004-10-29 2007-11-27 International Business Machines Corporation Technology migration for integrated circuits with radical design restrictions
US7465973B2 (en) * 2004-12-03 2008-12-16 International Business Machines Corporation Integrated circuit having gates and active regions forming a regular grating
US7743349B2 (en) * 2004-12-31 2010-06-22 Tela Innovations, Inc. Method and system for finding an equivalent circuit representation for one or more elements in an integrated circuit
US7188322B2 (en) * 2005-02-25 2007-03-06 International Business Machines Corporation Circuit layout methodology using a shape processing application
US7437691B2 (en) * 2006-04-11 2008-10-14 International Business Machines Corporation VLSI artwork legalization for hierarchical designs with multiple grid constraints
US7873929B2 (en) * 2006-08-14 2011-01-18 The Regents Of The University Of California Method, apparatus and system for designing an integrated circuit including generating at least one auxiliary pattern for cell-based optical proximity correction
US8443322B2 (en) * 2009-03-19 2013-05-14 International Business Machines Corporation Using layout enumeration to facilitate integrated circuit development

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101770536B (zh) * 2008-12-30 2014-07-02 国际商业机器公司 将以电流模式运行的电子器件迁移到目标技术的方法

Also Published As

Publication number Publication date
US8464189B2 (en) 2013-06-11
US20060101356A1 (en) 2006-05-11
US7761821B2 (en) 2010-07-20
CN100442297C (zh) 2008-12-10
US7257783B2 (en) 2007-08-14
US20070198961A1 (en) 2007-08-23
US7302651B2 (en) 2007-11-27
US20070277129A1 (en) 2007-11-29
US20100185997A1 (en) 2010-07-22
US7610565B2 (en) 2009-10-27
US20060101357A1 (en) 2006-05-11

Similar Documents

Publication Publication Date Title
CN1801160A (zh) 用于具有基本设计限制的集成电路的技术迁移的方法和系统
CN1176426A (zh) 在数据处理系统中对计算机指令执行排序的方法和装置
CN1254994C (zh) 网络拓扑
CN1098515C (zh) 字符发生装置及其实现方法
CN1295686A (zh) 分析基于状态的系统模型的方法和设备
CN1529864A (zh) 在布局中考虑到斜布线的方法和装置
CN1324526C (zh) 视频信号的自适应缩放
CN1940912A (zh) 文件作成系统、文件作成方法、程序以及存储介质
CN1790338A (zh) 布局处理方法、装置以及程序
CN1482540A (zh) 编译程序、编译程序装置和编译方法
CN1802632A (zh) 用于在程序代码转换期间执行解释器优化的方法和装置
CN1258729C (zh) 基于虚拟模块的大规模混合模式布图方法
CN1664779A (zh) 软件开发基础架构
CN1435031A (zh) 最长匹配地址查询的方法和装置
CN1485735A (zh) 指令调度方法、指令调度设备和指令调度程序
CN1503150A (zh) 多处理器系统中的任务分配方法和多处理器系统
CN1319210A (zh) 可配置的硬件块的配置方法
CN1851399A (zh) 使用目标图案感知二维绝对位置的系统
CN1228558A (zh) 程序变换方法和程序变换系统
CN1801183A (zh) 信息处理装置和方法以及程序
CN1578955A (zh) 关联规则数据挖掘所用的采样方法
CN1145900C (zh) 一种Web挖掘系统的构造方法
CN1423772A (zh) 信息处理系统
CN1624698A (zh) 高阶合成方法和高阶合成装置
CN1745384A (zh) 估计元素畸变与分析误差之间关系的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081210

Termination date: 20161028