集成专业版图设计经验的集成电路(IC)版图迁移的方法和系统与流程

文档序号:26008764发布日期:2021-07-23 21:28阅读:808来源:国知局
集成专业版图设计经验的集成电路(IC)版图迁移的方法和系统与流程

【技术领域】

本发明涉及计算机辅助设计(cad),特别涉及版图工艺迁移工具(layoutprocess-migrationtool)。



背景技术:

一个电路或一个较大系统的示意图,可以通过创建一个由该示意图规定的物理器件的版图(layout),而被转换为物理器件。该版图包括矩形和其他形状,其确定光掩模上透明和不透明区域。光掩模用于将版图转移到一个要制成物理器件的基板(substrate)上。在半导体器件制作期间,对于需要添加和蚀刻的多个层,都会创建多个光掩模。

过去,版图是由版图工程师或技术人员在计算机辅助设计(cad)终端上手工绘制。为了减少版图时间,先手工绘制一些标准单元或宏,然后使用布局布线软件将它们放置在相应位置并进行互连。手绘单元被复制多次。标准版图流格式如gdsii(由calma公司原创的图形设计系统2),允许二进制流格式的分层版图。

有时需要不同尺寸的手绘单元(cell)。设计了参数单元或p单元,其中手绘单元的大小可以通过参数(例如晶体管沟道宽度w或长度l)进行缩放。

这种标准单元版图对于具有较大容差的数字电路非常有用。然而,模拟电路具有非常严格的容差,经常需要版图工程师手绘单元和专业知识。p单元有时也用于模拟设计,以允许有不同w/l的模拟晶体管。

每个半导体制程都有一套设计规则。设计规则规定对版图的限制。这些限制可以包括诸如金属、多晶硅栅极、触点和通孔的层的最小宽度,层内相邻线之间以及不同层之间的最小间隔。由于集成电路(ic)的成本与尺寸成正比,因此版图工程师倾向于使用最小间距来产生尽可能小的单元版图。

随着半导体制程技术的发展,对于较新的制程,设计规则中的最小宽度和间距趋向于减小或缩小。当器件缩小,当这些器件迁移到更先进的、更小功能尺寸的制程中时,则可以降低每个器件的制造成本。因此,有时会针对使用较旧制程的设计规则创建的版图进行调整,以适应较新制程的一套新的设计规则。

可以将原始版图缩小或缩放到一个较小的尺寸,以用于较新的制程。但是,将版图中的所有多边形均匀缩放一个固定数量(例如0.8,即缩小20%),可能会违反新制程中的某些设计规则。发生这些违规是因为设计规则不是均匀缩放的。例如,多晶硅栅极的长度和宽度可以按0.8缩放,但是金属线的宽度和间距仅能按0.9缩放,从而导致在原始设计均匀按0.8因子缩小时违背了金属设计规则。

在版图迁移情况下,通常需要版图工程师的专业知识。对于较小的制程,设计规则往往变得越来越多和复杂,需要版图工程师更多的技能、专业知识和精力。在版图迁移工艺中,单元布局或原始设计的平面图通常要通过版图工程师进行大量手动调整才能重复使用。

自动版图迁移软件可能需要使用p单元,或者可能要引入顾及原始设计规则和新设计规则的约束。这些约束即是确定为一套特定的目标设计规则。期望能够将版图迁移到几套目标设计规则,用于若干半导体制程。具有多个目标制程可以使电路有替代供应商(second-sourced),或由多个芯片厂(foundry)制造,通过在多个芯片厂之间引入价格竞争来降低成本。

期望将版图迁移到有多组设计规则的多个制程。期望有一种可重用的版图,该版图可针对不同的设计规则自动转换版图。期望有一对多的版图迁移。期望有一种软件工具包,允许版图工程师添加其专业知识以创建可重复使用的版图。期望能从标准的分层版图数据库如gdsii进行版图迁移,没有p单元和约束。

【附图说明】

图1是使用可重用版图数据库(整合有版图工程师专业知识)的一对多版图迁移的流程图。

图2更详细地显示了gdsii版图解析器。

图3是由版图解析器创建的版图数据库文件中文本条目的一个示例。

图4是模拟版图设计工具包示意图。

图5a-5b显示版图工程师正在修改版图数据库文件中的文本行,以生成可重用版图数据库。

图6a-6c显示单元在可重用版图数据库中的放置。

图7显示可重用版图数据库中的布线。

图8a-8c显示从可重用版图数据库到两套目标设计规则的两个目标版图的版图迁移。

图9a-9c显示模拟版图生成器使用由版图工程师嵌入到可重用版图数据库中的放置功能来创建单元版图。

图10a-10d显示模拟版图生成器使用由版图工程师嵌入到可重用版图数据库中的布线功能来创建单元版图。

图11显示一部分可重用代码,其生成图10d的3输入nand版图。

图12显示使用由模拟版图生成器从可重用版图数据库生成目标版图文件,通过写入光掩模来控制ic的制造。

【具体实施方式】

本发明涉及版图迁移工具的改进。以下描述以使本领域普通技术人员能够制造和使用在特定应用及其要求的上下文中所提供的本发明。对本领域技术人员而言,对优选实施例的各种修改将是显而易见的,本发明定义的一般原理可以应用于其他实施例。因此,本发明并不限于所示和所述的特定实施例,而是应被赋予与本发明披露的原理和新颖特征一致的最宽范围。

图1是使用可重用版图数据库(整合有版图工程师专业知识)的一对多版图迁移的流程图。现有版图是由半导体制程芯片厂常用的二进制gdsii格式规定的。现有版图设计gdsii文件502流入,由版图解析器504进行转换和解析。版图解析器504读取二进制流的gdsii文件502的本地转换副本,并提取不同层上的多边形以在版图数据库文件506中创建指定这些多边形的文本条目(textentries),其为基于文本的格式。版图解析器504在生成版图数据库文件506时保留gdsii文件502中指定的层次结构。因此,可重复使用的标准单元只需在gdsii文件502和版图数据库文件506中指定一次即可。

模拟版图设计工具包510允许版图工程师获得这些多边形在版图数据库文件506中的x、y位置。然后,版图工程师可以编写代码以更好地指定由这些多边形形成的器件并更好地允许迁移到不同的设计规则集。版图工程师使用键盘或其他输入512覆盖版图数据库文件506中的文本行,使用描述这些多边形的可重用代码来指定多边形。

模拟版图专业知识集成器508使用来自输入512的可重用代码替换或覆盖版图数据库文件506中的文本条目,以整合版图工程师的专业知识。模拟版图专业知识集成器508使用版图工程师输入的可重用代码修改版图数据库文件506,以形成可重用版图数据库514。

可重用版图数据库514包含来自输入512的可重用代码和来自版图数据库文件506的余下的文本条目。来自版图工程师的专业知识的可重用代码激活模拟版图生成器516或器件生成器518中的功能。工程师可以使用设计工具包510自定义任何几何形状的自己的p单元。此类定制的p单元可以是单个器件,例如测试键(testkey),也可以嵌入电路中,生成可重用代码指定的器件版图。

在编译版图时,模拟版图生成器516将由器件生成器518创建的器件版图与由可重用的版图数据库514中的文本条目指定的多边形组合在一起,所述多边形最初位于版图数据库文件506中。然后,使用用于多个半导体制程的设计规则520,将编译的版图转换为目标工艺1、2、3、…、n。然后,由模拟版图生成器516将多个转换的版图输出为目标版图1、2、3、…n。这些目标版图从文本格式转换为gdsii的二进制格式,以生成目标版图gdsii文件522。

图2更详细地显示了gdsii版图解析器。版图解析器504接收gdsii文件502(图1),该文件使用原始设计规则指定原始版图。二进制流由gdsii解析器120解析为gdsii格式的记录的标识符。这些记录类型标识符描述了4种gdsii数据项。sref解析器102搜索sref记录类型标识符以用于对分层版图中的标准单元或其他单元的引用。这些sref标识符指定在其他位置的单元的x、y位置。sref还可以镜像或旋转单元。

边界解析器104搜索多边形边界的记录。边界(b)记录类型具有封闭多边形的顶点的x,y坐标列表。这些多边形可以有一个指定的处理层。

路径解析器106在流gdsii文件502的副本中搜索路径数据项。路径记录类型适用于可以扩展宽度的一条线或一系列线段。路径对于形成金属互连特别有用。

文本解析器108搜索文本数据项的记录。文本通常被添加到版图中以标记晶体管、逻辑门、单元和金属线。文本可以帮助版图工程师理解版图及其与原理图的对应关系。在制造工艺中创建光掩模之前,文本将被删除,以使文本不会出现在最终的物理器件上。

可以使用开始结构(begstr)和结束结构(endstr)gdsii记录类型,将多个多边形或其他结构组合在一起以形成一个容器结构或单元。该结构或单元的名称可以通过结构名称(strname)记录类型在该容器结构中定义。

版图数据集成器110重新布置由sref解析器102、边界解析器104、路径解析器106和文本解析器108解析的记录,以反映该结构或单元的层次。版图数据集成器110为gdsii解析器120找到的每个数据项创建文本行。这些文本行由版图解析器504输出作为版图数据库文件506(图1)。

图3是由版图解析器创建的版图数据库文件中文本条目的一个示例。第2行是文本解析器108定位一个文本记录并且版图解析器504创建版图数据库文件506时来自gdsii文件502的文本数据项的一个示例。

路径是以“p”开头的行,例如行3、4和9-15。这些路径行有2个路径端点的x、y坐标、以及路径属性如宽度(180)和图层如第二金属(102,1)。

边界是以“b”开头的行,例如行5-7和16-18。在此示例中,每个边界都有5个x、y坐标,对于一个封闭的矩形多边形,第一个和最后一个坐标是相同的。边界可能会超过5个点。

sref解析器102(图2)识别标准单元或其他块的实例引用(instancereferences)。这些实例引用被转换为版图数据库文件506中以“i”开头的文本行,例如行19-25。每条实例(instance)行都有一个x、y坐标,单元实例放置在该坐标上,并调用该单元的名称。

图4是模拟版图设计工具包示意图。模拟版图设计工具包510允许版图工程师将其专业知识集成到可重用的版图数据库514(图1)中。版图工程师使用模拟版图设计工具包510中的功能来重写版图数据库文件506中的文本行,以包括可重用代码,该代码便于将可重用版图数据库514迁移到具有不同套设计规则的多个工艺。

模拟版图设计工具包510包括位置功能130、放置功能132和布线(routing)功能134。版图工程师可以使用位置功能130在各个层上找到器件和多边形的位置或x、y坐标位置。原始设计规则用于建立可重用版图数据库并复制现有版图。然后,通过可重用数据库,将目标设计规则用于生成新的gdsii结构。位置功能130可以使用一个系统算法来描述元素之间的相对位置,例如上、下、左、右。有了这样的定义,当工程师在可重用数据库中指定元素编号时,可以进行详细评估,稍后在图5b中解释。元素可以是工程师定义的任何多边形、器件或实例。例如,i3[t,(commonsd,i1,r)]指定元素i3将位于元素i1的右侧。在此,右侧由位置功能“r”定义。i1和i3被指定为mosfet单元的实例。

版图工程师使用放置功能132将单元和多边形放置在可重复使用的版图数据库514中的位置处。这些位置可以被指定为绝对x、y坐标,或者指定为相对于其他单元或多边形的相对位置。相对位置可以被指定为一个设计规则的函数,如最小间距设计规则的1.5倍,而设计规则的值尚未指定。放置功能132还可以包括对称的放置功能,例如沿着一条共同的线放置多边形,或者在一维或二维中排列单元。

布线功能134使用两层或多层互连金属、通孔和触点将单元连接起来。gdsii文件502中的路径数据项通常用于指定互连。在为不同的设计规则调整了晶体管和单元的位置之后,可以在路径端点之间重新布线互连。版图工程师可以指定各种布线方法,如直接布线、迷宫布线、星形搜索布线、使用强化学习算法的布线、或使用人工智能(ai)的布线。版图工程师可以认识到,使用某种布线方法而不是其他布线方法可以更好地布线某些路径,可以基于工程师的过去经验和专业知识,使用布线功能134为某个路径指定最佳布线方法。

使用模拟版图设计工具包510,版图工程师可以将其专业知识集成到可重用版图数据库514中,从而允许将可重用版图数据库514重新用于不同套目标设计规则的多个目标版图。

图5a-5b显示版图工程师正在修改版图数据库文件中的文本行,以生成可重用版图数据库。在图5a,一部分版图数据库文件506(图1)显示了6个实例行。第一、第三和第四行分别要求(callfor)一个实例p25,该实例可以是互补金属氧化物半导体(cmos)p沟道晶体管(pmos),其最大信号电压限制为2.5伏。第二、第五和第六行要求实例n25,它可以是最大电压为2.5伏的n沟道晶体管(nmos)。版图工程师可以使用其他属性指定这些p25、n25晶体管的沟道宽度。

在每一行上还提供了每个实例的x、y坐标。p25器件全部为y=6290,而n25器件全部为y=290。第一对p和n器件在x=335,第二对在x=875,第三对在x=1415。因此,这6个晶体管排列成:pmos器件在nmos器件上方,中心间隔6000个单位,左右相邻晶体管中心对中心相隔540个单位。

版图工程师可以查看版图数据库文件506中的行,如图5a所示。图5a中的这六行要求六个独立的晶体管,3个pmos和3个nmos晶体管。

工程师可能会认识到,相邻晶体管可以共享其源/漏区,而不是具有单独的源/漏。工程师可以使用放置功能132,使用公共源极/漏极放置功能commonsd重写第三行。这是一种相对放置功能,可使晶体管放置在非常靠近相邻晶体管的位置,从而共享源/漏区及其触点。版图数据库文件506中的第三行:

i[(875,6290)][p25,0,0]

被替换为可重用布局数据库514的重写部分中的行(使用commonsd函数指定实例i3):

i3[t,(commonsd,i1,r)][p25,0,0]

删除版图数据库文件506中的绝对坐标(875,6290),使用没有x、y坐标的相对放置函数commonsd代替,指定源/漏极与实例i1共享。

同样,删除第4行中的p25晶体管以及第5行和第6行中的n25晶体管的绝对坐标,使用commonsd函数代替。实例i4与i3共享源/漏,n25实例i5与n25实例i2共享源/漏,实例i6与i5共享源/漏。参数r表示共享右侧的源极/漏极,而不是左侧的源极/漏极。

版图工程师可以手动编辑版图数据库文件506并键入commonsd函数及其参数,以生成可重用版图数据库514。模拟版图设计工具包510可以定义功能、参数和语法,从而允许版图工程师执行以下操作:选择诸如commonsd之类的放置功能132以用于定义其他n25和p25晶体管单元实例的相对放置。

图6a-6c显示单元在可重用版图数据库中的放置。在图6a,块170被放置在版图的平面图中的绝对x、y位置处。块170可以是在多层上具有多个多边形的一个单元,或者可以是单个多边形,或者可以是一个参数化的单元。块170的中心(0,0)通过绝对放置功能被放置在绝对x、y位置,如图5b的前2行所示。

在图6b,一系列3个块170、171、172以水平顺序放置。通过绝对放置功能将第一块170放置在绝对位置x0、y0。但是,块171、172相对于第一块170放置,而不是放置在绝对位置。块171的中心与第一块170的中心的距离为s1,块172的中心与第二块171的中心的距离为s2。因此,第一块170位于x0、y0,第二块171位于x1、y0,其中x1=x0+s1,第三块172位于x2、y0,其中x2=x1+s2。

间距值s1、s2可以是设计规则的一个函数,允许针对不同的设计规则来调节间距。例如,当块170、171、172都是具有最小间距的最小宽度的金属线时,s1和s2可以是目标设计规则的最小间距。当块170、171、172是更复杂的单元时,s1可以是单元宽度加上单元之间的最小间距,这可以通过金属间距设计规则来设置。或者,版图工程师可以在单元之间使用较大的间距,以实现更多的互连和更容易的布线。

在图6c,单元沿着垂直轴对准。块171、173的中心对齐,使得它们中心有相同的x坐标,x3=x1。由于块173的宽度l大于块171的宽度,所以可以将块173的下角计算为x3l=x1-l2和x3r=x1+l2。

块171、173的中心在垂直方向上间隔开距离s3,使得当块171以x1、y1为中心时,则块173以x1、y1-s3为中心。同样,间距s3可以是目标设计规则的一个函数加上版图工程师增加的一个额外量,例如用于更好的布线或用于电路性能,如用于闩锁电阻。设计规则的值保留为一个参数,而不是指定为一个数值,从而允许从各种目标设计规则集中选择一个设计规则。这允许可重用版图数据库514中的单元放置对于多个工艺是可重用的。

模拟版图设计工具包510在放置功能132中包括commoncentre函数。该commoncentre函数将一个块(如块173)放置在另一块的沿着公共中心的一个相对位置上。间距s3可以在函数调用中指定,例如设计规则允许的最小间距。同样,commoncentre函数也可以指定为水平(图6b)或垂直(图6c)对齐和对称。

图7显示可重用版图数据库中的布线。块171-176是排列成两行的六个单元,每行三个。单元内部可能会有所不同,其中一行也可能是另一行的镜像。

通过单元边界上的连接点建立单元的连接。在该示例中,为第一金属层和第二层都定义了连接点。例如,块171在其下边界上有连接点x1l、y1d和x1r、y1d。块174在其上边界上有连接点x4l、y4u和x4r、y4u。

可以使用布线功能134或通过版图数据库文件506中的路径数据项来定义块171、174之间的连接。布线例程通过在块171的连接点x1l、y1d和x1r、y1d,以及块174的连接点x4l、y4u和x4r、y4u之间创建一个矩形,使用层-1金属182来实现连接。在此示例中,x1l=x4l,x1r=x4r。

可重用版图数据库514还包含一行调用布线功能134中的z形布线功能。布线功能通过在块173的连接点x3l、y3d和x3r、y3d,以及块175的连接点x5l、y5u和x5r、y5u之间创建一个层-2金属多边形,使用层-2金属184生成一个z形多边形以实现连接。

图8a-8c显示从可重用版图数据库到两套目标设计规则的两个目标版图的版图迁移。在图8a,使用原始设计规则创建原始版图190,并将其转换为可重用版图数据库514,指定块177相对放置在块171、172之间空间的中心下方。块171、172水平地间隔开,块边缘之间的间隔是sh,而块177位于块171、172下方,块边缘之间有间隔sv。

一旦已经使用模拟版图设计工具包510将版图工程师的专业知识集成到可重用版图数据库514中,则可重用版图数据库514可用于将原始版图190转换为两个目标版图192、194,其使用设计规则dr1和dr2。

在图8b,模拟版图生成器516(图1)将用于原始版图190的可重用版图数据库514转换为使用第一设计规则dr1的第一目标版图192。模拟版图生成器516或工程师可以比较原始设计规则与第一设计规则以获得水平和垂直缩放因子sf_h和sf_v以及块缩放因子bsf。块缩放因子bsf可以由用于典型单元中多个多边形层的两套设计规则之间有最小收缩量的那个设计规则限制。间距缩放因子可能取决于确定块之间间隔的金属层设计规则的比率。

块缩放因子bsf用于缩放块或单元的大小。对于第一目标版图192,bsf为1.0,因此块171、172、177的大小未缩小。但是,间距缩放因子sf_h和sf_v均为0.5,因此,当原始版图190迁移到第一目标版图192时,单元之间的间距减小了50%。尽管块的尺寸没有减小,但是减小的块间距允许第一目标版图192要比原始版图190稍小。

还可使用第二设计规则dr2将可重用版图数据库514转换为第二目标版图。第二设计规则dr2好过第一设计规则dr1,因为块缩放因子bsf为0.5,并且垂直缩放因子sf_v甚至进一步减小到0.25,尽管水平缩放因子sf_h对于两个设计规则dr1、dr2都保持在0.5。

对于第二目标版图194,bsf为0.5,因此在放置之前,块171、172、177分别在水平和垂直方向上按比例缩小50%。间距缩放因子sf_h为0.5,因此缩小后的块171、172的边缘之间的水平间距减小为sh*sf_v,其中sh是距原始版图190的原始水平间距。

垂直间隔sf_v被进一步缩小至0.25,因此块171和177之间的垂直间隔减小了75%。减小了块171、172、177的大小,并且减小了块之间的间隔,因此第二目标版图194比原始版图190小得多。

图9a-9c显示模拟版图生成器使用由版图工程师嵌入到可重用版图数据库中的放置功能来创建单元版图。当在可重用版图数据库514中处理图5b的代码时,第二行调用模拟版图生成器516来生成n25单元的一个实例,该实例是nmos晶体管:

i2[(335,290)][n25,0,0]

该行通过创建多晶硅层矩形栅极30、包括源/漏区20、22、源触点10和漏触点12的扩散矩形,使模拟版图生成器516生成n沟道晶体管。多晶硅和扩散矩形的相交部分是晶体管的主动栅极区域。该晶体管的中心位于绝对位置335、290。该第一晶体管在图9a中示出。

可重用代码的第五行,

i5[t,(commonsd,i2,r)][n25,0,0]

要求生成另一个n25单元,但是没有给出绝对x、y位置。而是使用i2和r作为函数调用参数来调用commonsd函数。该函数使模拟版图生成器516生成新晶体管,其源极/漏极区域与由实例i2创建的晶体管的右侧源极/漏极区域共享。

在图9b,i2晶体管栅极30仍然有源极/漏极区域20中的源极触点10,但是漏极触点12和源极/漏极区域20与i5晶体管栅极32共享。模拟版图生成器516还生成共享触点14和源/漏区24到i5晶体管栅极32的右侧。扩散矩形已向右扩展,以包括i5晶体管栅极32和源/漏区24。

接下来,模拟版图生成器516处理第六行可重用代码:

i6[t,(commonsd,i5,r)][n25,0,0]

其要求生成第三个n25单元,没有给出绝对x、y位置。而是使用i5和r作为函数调用参数来调用commonsd函数。该函数使模拟版图生成器516生成新晶体管,其源极/漏极区域与由实例i5创建的晶体管的右侧源极/漏极区域共享。

在图9b,与i5晶体管栅极32右侧共享的触点14和源极/漏极区域24现在与i6晶体管栅极34共享。模拟版图生成器516生成触点16和源极/漏极区域26到i6晶体管栅极34右侧。扩散矩形再次向右延伸,以包括i6晶体管栅极36和源/漏区26。

对于图5b中的其他行,可以以与图9a-9b中描述的类似方式来生成pmos晶体管:

i1[(335,6290)][p25,0,0]

i3[t,(commonsd,i1,r)][p25,0,0]

i4[t,(commonsd,i3,r)][p25,0,0]

在图9c,模拟版图生成器516向上延伸栅极30,以足够的间隔添加金属触点40以满足目标设计规则。该间隔距离由设计规则参数化。第一层金属50被添加覆盖(over)到金属触点40上方并且在单元上垂直延伸。

类似地,模拟版图生成器516向上延伸多晶硅栅极32、34,并添加金属触点42、44和第一层金属52、54。

由于源极/漏极区22、24均与两个晶体管共享,因此与单独晶体管(各自有自己的未共享的源极/漏极区)相比,实例i2、i5、i6的三个晶体管的整体尺寸减小了。使用模拟版图设计工具包510的commonsd函数,将版图工程师认为可以为这些晶体管共享源/漏区的这些专业知识添加到可重用版图数据库514中。向多个目标工艺的版图迁移得到改进。

图10a-10d显示模拟版图生成器使用由版图工程师嵌入到可重用版图数据库中的布线功能来创建单元版图。在图10a,在底部显示晶体管栅极30、32、34共享源极/漏极区域22、24和金属触点40、42、44。这些是图9c所示的i2、i5、i6nmos晶体管。

顶部显示的是晶体管栅极31、33、35,其有共享的源极/漏极区域23、25,在两端的非共享的源极/漏极区域21、27,以及触点11、13、15、17。这些可以是为实例i1、i3、i4而生成,如图5b所示的可重用版图数据库514的代码段。

还产生金属触点41、43、45以连接到多晶硅栅极31、33、35。这些金属触点41、43、45在pmos晶体管栅极31、33、35的底部产生。而不是像nmos晶体管栅极30、32、34那样位于顶部。

可以使用放置功能132中的commoncenter功能来创建这些金属触点。commoncenter功能使金属触点43与其多晶硅栅极对齐。例如,稍后图11显示的可重用版图数据库514代码段的第13行:

13i11[t,(commoncentre,i3,d)][m1_po,0]

使模拟版图生成器516在实例i3(i3,d)的底部生成金属-1-到-多晶硅接触(m1_po),并且与i3具有一个共同的中心。

因为实例i1、i2具有相同的绝对x坐标,所以pmos栅极31与nmos栅极30对齐。

在图10b,版图工程师已经使用一个布线功能134来生成互连。矩形(rect)布线功能用于生成一个简单的矩形,以使用第一层金属(101)连接i1和i2。这在图11的第20行中显示,其中列出了边界b6:

20b6[t,(rect,i1.po_down._l,i1.po_down._r,i1.po_down._d,i2.po_up._u)][101,1]

通过此可重用代码行生成第一层金属60,将金属触点40、41连接到晶体管栅极30、31。rect函数中的前两个点相对于i2多晶硅左下方(i1.po_down_l)和右下方(i1.po_down_r)的。rect函数中的其他两个点i1.po_down._d和i2.po_up._u是金属60的上下边缘。i1.po_down._d是po触点41的下边缘,i2.po_up._u是po触点40的上边缘。

类似地,其他行可重用代码使用rect布线功能来生成,将金属触点42、43连接到晶体管栅极32、33的第一层金属62,以及将金属触点44、45连接到晶体管栅极34、35的第一层金属64。

在图10c,其他rect布线功能134用于在第一金属层上生成vdd金属66和vss金属68。vdd金属66连接到源极/漏极区21、25中的触点11、15,其用作连接到电源的pmos源极。vss金属68连接到源极/漏极区域26中的触点16,后者充当接地的nmos源极。

在图10d,第二层金属70由模拟版图生成器516产生。第二层金属70连接到单元输出(未示出)并连接到源极-漏极区20中的触点10,连接到源极/漏极区域23中的触点13,连接到源极/漏极区域27中的触点17。形成一个3输入nand门。

第二层金属70是由模拟版图生成器516处理图11所示的可重用版图数据库514的可重用代码部分中的行23而生成的。该行使用z形布线功能,使用第二种金属(参数102)产生z字形金属线。

23p1[t,(zshape,i4.aa_right._r+90,i4.aa_right._u,i2.aa_left._l-90,i2.aa_left._d,4000,180)][102,1]

该行可重用代码定义了z形多边形第二金属(102,1),其中心为y=4000,宽180nm。右边缘延伸90nm,超过非共享源/漏区27(i4.aa_right._r+90)。左边缘延伸90nm,超过非共享源极/漏极区域20(i2.aa_left._l-90)。上边缘为非共享源极/漏极区域27(i4.aa_right._u),下边缘为非共享源/漏区20(i2.aa_left._d)。

图11显示一部分可重用代码,其生成图10d的3输入nand版图。图11的部分可重用代码是可重用版图数据库514的一部分,其中第5-23行由版图工程师编写,第1、2行几乎未更改,除了添加实例名称(i1,i2)用于进一步引用。

第5-8行使用commonsd放置功能生成具有共享源/漏区的晶体管。第4、7、8行产生nmos晶体管栅极30、32、34以及触点和源极/漏极,如图9b所示。图9c所示的金属触点40、42、44是通过第9-11行使用commoncenter放置功能添加金属1-到-多晶硅触点(m1_po)的,而图10a所示的金属触点41、43、45是通过第12-14行使用commoncenter放置功能添加的。

复杂形状vdd金属66是通过第15、17、18行使用矩形布线功能产生的,产生了3个矩形。vss金属68是由第16、19行使用矩形布线功能产生,产生了2个矩形。

第一层金属60、62、64分别由第20、21、22行使用矩形布线功能产生。最后,第二层金属70由图11中第23行使用z形布线功能而生成。

图12显示使用由模拟版图生成器从可重用版图数据库生成目标版图文件,通过写入光掩模来控制ic的制造。模拟版图生成器516通过处理来自模拟版图设计工具包510的可重用命令,从可重用布局数据库514生成目标版图文件522,可重用命令由版图工程师插入可重用版图数据库514中。目标版图文件522为gdsii格式,或者被转换为gdsii格式,以供光掩模制造厂商用于物理版图76。

物理版图76指定每个裸片上的物理x、y位置,各种组件将位于成品集成电路(ic)裸片上。物理版图76转换为多个图像层,其指定了栅极的位置,金属线、通孔的位置,各层之间的连接,以及基板上氧化物和扩散区域的位置。掩模图像78通常包括一个图像用于每个图案化层。

掩模制造机读取掩模图像78或另一个设计文件,然后将这些图像物理写入或烧录到光掩模82上。光掩模82是有形产品,是版图迁移软件或例程产生目标版图文件522的一个结果,其最终通过软件转换为实际晶体管栅极和布线的掩模图像78。虽然可以在通用计算机上执行版图迁移软件,但是创建光掩模82需要使用专门的机器,例如通过光或电子束,将版图数据写在各个掩模上,该光或电子束通过版图数据打开和关闭,同时在未曝光的光致抗蚀剂聚合物层上以光栅化图案进行扫描,该聚合物层放置在空白光掩模玻璃板上。光刻胶在某些位置被光束或电子束曝光,而在其他区域则未曝光。然后可以在化学显影剂浴中洗涤曝光板,以去除曝光或未曝光的区域,以形成光掩模82。

在光掩模制造80期间,光掩模机器产生了多块光掩模82,每块光掩模用于每个半导体工艺层。然后,将光掩模82发送到半导体工厂(晶圆厂或芯片厂),并装入光掩模机中,在ic制造工艺84中,其中通过光掩模82的光使半导体晶片上的光刻胶树脂曝光。在经过光掩模82的多层曝光处理以及其他处理(例如离子注入、扩散、氧化物生长、多晶硅和金属沉积、通孔和触点蚀刻、以及金属和多晶硅蚀刻)之后,ic制造工艺84制作出晶圆86。晶圆86是硅、gaas或其他半导体衬底,在其表面上形成有图案层。每个晶圆86上都会生产出多个芯片。在最初的晶圆分类测试之后,将晶圆86切割成小片,将其放入封装中以生产ic88。

因此,从可重用版图数据库514生成的目标版图文件522控制制造工艺中的一系列步骤,最终导致光掩模82和ic88。非常专业的机器和控制这些机器的计算机本身最终受到目标版图文件522中的数据控制或引导以产生特定的ic88芯片。

ic88可以是装配到终端用户设备如智能电话90中的asic或模块。智能电话90可以包括相机92,相机拍摄图像,由智能电话90使用ic88处理。ic88可以由两个或多个芯片厂制造并实施现有设计,但要使用两套不同的设计规则。每套设计规则创建一个不同的目标版图文件522,其生成不同组光掩模82,用于特定半导体工艺制造ic88。

【替代实施例】

发明人设计了几个其他实施例。例如,可以调整或缩放原始版图中的绝对坐标。例如,原始版图190(图8a)中的绝对x、y位置可以按0.5缩放至x/2、y/2,以在第一目标版图194(图8b)中产生对应的绝对位置。可以使用原始的平面图,但可以根据新的设计规则进行缩放。路径宽度、接触通孔面积等可以更改以生成缩放的单个器件。

版图工程师可以手动编辑层次结构中的最低级别单元,以包括设计规则中的参数,例如间距和宽度。设计规则可以存储在独立文件中,该文件可以由模拟版图设计工具包510加载。版图工程师可以直接更改设计规则文件中的值。还可以开发图形界面供用户输入此类参数。设计规则的这种改变使模拟版图生成器516自动调整模拟版图生成器516输出的转换后的版图,因为可重用版图数据库514是相对于参数化设计规则而言的。例如,如果仅更改接触通孔面积的设计规则,则将在目标版图中更改所有触点,而不会更改扩散间隔的相对位置。

一些设计规则可以包括特殊规则,例如扩大尺寸和间距的高压晶体管的。可以使用特殊版图如甜甜圈形或环形晶体管栅极。可以将保护环或其他结构添加到标记有高压或其他特殊用途的单元。可重用代码可以包括激活某些单元的这些特殊版图和设计规则的功能。即使在同一ic上,模拟运行的晶体管也可能与数字电路中使用的晶体管具有不同的版图要求。

已经描述了可重用代码是由版图工程师输入到可重用布局数据库514中,由模拟版图生成器516和器件生成器518两者处理,由器件生成器518处理排列功能,由模拟版图生成器处理其他功能。可以调整功能的划分,使得器件生成器518或模拟版图生成器516可以处理来自模拟版图设计工具包510的所有功能。器件生成器518和模拟版图生成器516也可以组合在一起。

尽管在图5b和图11显示了可重用代码的语法,但是可以替换对语法和参数的多种修改。所示代码只是一种可能的代码语法的示例。同样,版图解析器504可以使用与图3所示不同的语法来创建版图数据库文件506。可以为p单元和其他结构支持扩展。

版图工程师对版图数据库文件506的覆盖不必是1∶1。版图数据库文件506中的一行可以被版图工程师使用可重用版图数据库514中的多行可重用代码替换,或者版图数据库文件506中的多行可以被版图工程师使用可重用版图数据库514中的单行可重用代码替换。一些行可能是1:1,其他行可能是1:n或n:1,取决于功能和版图。

相对于数字版图设计,本发明更有益于模拟版图设计。对于数字电路版图,版图工程师不需要自己设计模块。芯片厂会提供一个标准单元库作为基本的门级模块,从中可以构建版图。此外,由于数字电路性能对布局和布线不敏感,因此有成熟的cad工具可以执行自动布局和布线。但是,对于模拟电路版图设计,工程师通常没有芯片厂提供的标准单元以供使用,因此版图工程师比数字版图设计要花费更多的精力。此外,与数字电路相比,模拟电路的性能对版图平面图要敏感得多,因此模拟版图需要大量的设计者的专业知识来处理意外的影响。这种意外的影响包括不对称引起的信号失配,较大的寄生电容和电阻。因此,模拟版图设计可以比数字版图设计更多地受益于本发明。

版图工程师或其他工程师或程序员可以编写搜索和替换例程或其他宏,以在版图数据库文件506中搜索某些数据项,并使用可重用代码重写这些数据项,而不是用可重用代码手动覆盖每个数据项。例如,可以在版图数据库文件506中搜索单元之间的互连,将这些互连替换为布线功能134中的一个布线功能,从而允许模拟版图生成器516重新布线版图而不使用现有的互连。

可以开发图形用户界面以将模拟版图设计工具包510呈现给版图工程师,从而允许版图工程师选择版图数据库文件506中的数据项,然后粘贴可重用代码以生成可重用版图数据库514。现有的版图可以以图形方式显示给版图工程师,以供参考,并且可以允许工程师在显示的版图上选择目标的x、y坐标以粘贴到可重用代码。

可以有其他程序用于进一步处理,例如设计规则检查器或示意图验证器。这些程序可以标记错误以供版图工程师手动修复,或者可以更改版图数据库文件以修复错误。

可能有多种ic半导体制造工艺。可以用各种专用机器和工艺来制造光掩模82,包括直接写入以烧掉金属化层而不是光刻胶。多种组合的扩散、氧化物生长、蚀刻、沉积、离子注入和其他制造步骤可以使它们产生的图案产生在由光掩模82控制的ic上。

可以使用软件、硬件、固件、例程、模块、功能等的各种组合,以各种技术来实施模拟版图生成器516、模拟版图设计工具包510、器件生成器518以及其他组件。模块、块、组件、例程、子例程、工艺、功能等可能有多种划分,并且可以被替换。可重用代码的语法、函数和文件可能有多种变体。可以使用多种文件格式和变体。一些实施例可能未使用所有组件。可以添加其他组件。

版图解析器还可以解析gdsii文件502的本地副本,用于单元定义或单元定界符,其确定单元内容,单元定义可以包括多边形的边界、路径、文本和其他单元实例。版图工程师可以使用单元定义来创建自定义的p单元。实例可以调用芯片厂提供的p单元或自定义的p单元。sref是gdsii流格式的固有元素,它描述一种结构相对于另一种结构的位置。

上、下、左、右、在…上、在…下等字眼是相对的,取决于观看者的位置或视点。平面图、版图、单元和数据项可以旋转、翻转、镜像和进行其他转换。多种变化是可能的。

本发明的背景部分可以包含关于本发明的问题或环境的背景信息,而不是由其他人描述现有技术。因此,在背景技术部分中包含的材料并不是申请人对现有技术的承认。

本文描述的任何方法或工艺是机器实现的或计算机实现的,旨在由机器、计算机或其他设备执行,不旨在没有机器辅助的情况下仅由人执行。产生的有形结果可以包括在诸如计算机监视器、投影设备、音频生成设备和相关媒体设备之类的显示设备上的报告或其他机器生成的显示,可以包括也是机器生成的硬拷贝打印输出。其他机器的计算机控制是另一个有形的结果。

所述的任何优点和益处可能不适用于本发明的所有实施例。当权利要求元素前出现了单词“手段(means)”时,申请人旨在使该权利要求元素落入35usc第112节第6段的规定。通常,一个或多个单词的标签在单词“手段(means)”之前。单词“手段(means)”前面的单词是旨在便于参考权利要求元素的标签,并不意图表达结构上的限制。这种装置加功能的权利要求旨在不仅覆盖在此所述的用于执行该功能及其结构等同物的结构,而且覆盖等同的结构。例如,虽然钉子和螺钉具有不同的构造,但它们都具有等同的结构,因为它们都具有紧固功能。信号通常是电子信号,但也可以是光信号,例如可以通过光纤线传送。

为了说明和描述的目的,前面已经呈现了本发明实施例的描述。这并不意味着穷举或将本发明限制到所披露的确切形式。鉴于上述教导,可能有多种修改和变型。本发明范围不受限于该详述,而是受限于所附加的权利要求。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1