用于集成电路芯片流片的GDS图层越界检查方法与流程

您所在的位置:网站首页 芯片的gds文件是什么 用于集成电路芯片流片的GDS图层越界检查方法与流程

用于集成电路芯片流片的GDS图层越界检查方法与流程

2024-05-01 04:11| 来源: 网络整理| 查看: 265

用于集成电路芯片流片的GDS图层越界检查方法与流程

本申请涉及集成电路领域,尤其涉及对用于集成电路芯片流片的gds文件进行图层越界检查的方法。

背景技术:

集成电路设计产生gds(graphicdatasystem,图形数据系统)文件。gds文件是用于集成电路芯片(下文中,简称“芯片”)流片的工业标准数据文件,其中记录了芯片的各图层、图层内的平面几何形状、文本标签等用于流片的信息。

随着半导体技术的快速发展,芯片的系统集成度、复杂度越来越高,芯片的面积越来越大,芯片图层数量也变得更多。

在诸如soc(systemonchip,片上系统)的复杂芯片中,除数字逻辑电路之外还有一些自定义的ip核(集成电路单元)和一些只有物理信息的设计(集成电路单元),这些自定义的ip核或设计被拼接到soc上。在拼接整合的过程中,很容易出现部分图层超出了芯片所能容纳电路的指定区域的边界之外。这种越界往往具有微小的形状而很难发现。现有的物理验证(pv,physicalverification)工具缺乏对gds的图形进行越界检查的有效手段,只能靠设计人员肉眼观察,这样很难找到或者找全问题并进行修复。而图层越界造成的流片失败,将产生高昂的时间与费用损失。

技术实现要素:

根据本申请的实施例,利用pv工具实现芯片图层越界检查的方法,用软件快速准确找出超出芯片指定区域的gds图层,并提示设计人员及时修改,以达到成功流片的目的。

根据本申请的第一方面,提供了根据本申请第一方面的第一用于集成电路芯片流片的gds图层越界检查方法,包括:将gds文件提供给pv工具;操作pv工具从gds文件中提取多个图层;从所述多个图层中选择一个图层作为边界层;操作pv工具将所述多个图层中除所述边界层之外的一个或多个图层同所述边界层做非运算;从所述非运算的结果中识别存在图层越界的位置。

根据本申请第一方面的第一用于集成电路芯片流片的gds图层越界检查方法,提供了根据本申请第一方面的第二用于集成电路芯片流片的gds图层越界检查方法,其中所述从gds文件中提取的多个图层是gds文件中包括的所有图层。

根据本申请第一方面的第一或第二用于集成电路芯片流片的gds图层越界检查方法,提供了根据本申请第一方面的第三用于集成电路芯片流片的gds图层越界检查方法,其中选择从gds文件获取的多个图层中代表所述集成电路芯片的几何形状的层作为所述边界层。

根据本申请第一方面的第三用于集成电路芯片流片的gds图层越界检查方法,提供了根据本申请第一方面的第si用于集成电路芯片流片的gds图层越界检查方法,其中选择gds文件中的prboundary层作为边界层。

根据本申请第一方面的第一至第四用于集成电路芯片流片的gds图层越界检查方法之一,提供了根据本申请第一方面的第五用于集成电路芯片流片的gds图层越界检查方法,其中将所述多个图层中除所述边界层之外的第一图层同所述边界层做非运算后,若所述第一图层依然有部分区域存在,则记录该部分区域在所述第一图层中的位置,并向用户高亮地展示所述第一图层的该位置。

根据本申请第一方面的第五用于集成电路芯片流片的gds图层越界检查方法,提供了根据本申请第一方面的第六用于集成电路芯片流片的gds图层越界检查方法,其中所述第一图层的所述部分内容是所述第一图层相对于所述边界层存在越界的位置。

根据本申请第一方面的第一至第六用于集成电路芯片流片的gds图层越界检查方法之一,提供了根据本申请第一方面的第七用于集成电路芯片流片的gds图层越界检查方法,其中将所述多个图层中除所述边界层之外的第一图层同所述边界层做非运算,包括从所述第一图层中去除所述第一图层所覆盖的区域中为所述边层所占据的区域。

根据本申请第一方面的第五或第六用于集成电路芯片流片的gds图层越界检查方法,提供了根据本申请第一方面的第八用于集成电路芯片流片的gds图层越界检查方法,其中将所述多个图层中除所述边界层之外的第一图层同所述边界层做非运算后,若所述第一图层为空,则记录所述第一图层相对于所述边界层不存在越界区域。

根据本申请第一方面的第一至第八用于集成电路芯片流片的gds图层越界检查方法之一,提供了根据本申请第一方面的第九用于集成电路芯片流片的gds图层越界检查方法,其中为所述多个图层中除所述边界层之外的每个图层设置drc规则,在每个drc规则中指示对该drc规则所对应的图层所述边界层做“非运算”;以及还指示pv工具根据所设置的drc规则而执行对该drc规则所对应的图层同所述边界层的“非运算”的检查,并记录检查结果。

根据本申请第一方面的第一至第九用于集成电路芯片流片的gds图层越界检查方法之一,提供了根据本申请第一方面的第十用于集成电路芯片流片的gds图层越界检查方法,还包括:根据从gds文件获取的多个图层的每个图层及其子图层创建在pv工具中使用的对应pv工具图层;从多个pv工具图层中选择一个pv工具图层作为pv工具边界层;操作pv工具将所述多个pv工具图层中除所述pv工具边界层之外的一个或多个pv工具图层同所述pv工具边界层做非运算;从所述非运算的结果中识别存在图层越界的位置。

根据本申请的第二方面,提供了根据本申请第二方面的第一计算机,包括存储器、处理器及存储在存储器上并可在处理器上运行的程序,其特征在于,所述处理器执行所述程序时实现执行根据本申请第一方面的第一至第十用于集成电路芯片流片的gds图层越界检查方法之一。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为根据本申请实施例的芯片布图的示意图;

图2展示了根据本申请实施例的流程图;

图3a-3c展示了根据本申请实施例对两个图层做“非运算”的示意图;以及

图4a与图4b展示了根据本申请实施例识别出的图层越界的示意图。

具体实施方式

下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

图1为根据本申请实施例的芯片布图的示意图。

图1展示了完成后端设计的芯片的俯视图。芯片表面的法线同视线平行。完成后端设计的芯片由生成的gds文件承载。芯片也被eda(electronicsdesignautomation,电子设计自动化)工具展示为包含多个图层的图。

作为举例,展示的图层为m8层。所展示的m8层有部分区域(110、120)超出了芯片用于容纳电路的指定区域的边界(简称为“越界”)。根据本申请的实施例,芯片区域的边长约几毫米,从而区域110或120的尺寸可能不足1微米。在此情况下,设计人员通过观察图1,很难识别到m8层的区域110与区域120存在越界。

根据本申请的实施例,通过由计算机软件实现的方式,对gds文件中的各个图层进行检查,以识别其中是否存在越界的情况。从而提早发现gds文件中存在的缺陷,从而有利于及早修复,以提高流片成功率。

在一个例子中,用eda工具中的pv工具从gds文件中获取各图层,并各图层是否存在越界进行检查。所使用的pv工具是例如mentor公司的caliber工具。可以从https://www.mentor.com/products/ic_nanometer_design/verification-signoff/physical-verification/获得caliber工具。作为一个例子,通过编写计算机程序操作pv工具,或者在pv工具提供的软件运行环境中执行所编写的计算机程序来实施根据本申请的实施例。

图2展示了根据本申请实施例的流程图。

为了检查gds文件中存在的图层越界,将代表了所设计的芯片的gds文件提供给pv工具(210),并操作pv工具从gds文件中提取所设计的芯片的集成电路布图的所有图层的信息(220)。

从gds文件给出的多个图层中,选择之一作为边界层(230)。一般地,选择从gds文件获取的多个图层中代表芯片几何形状的层作为边界层。作为举例,选择prboundary层作为边界层。

可选地,还为从gds文件中提取的各图层命名,以有利于识别需要进行越界检查的各图层,且有利于识别越界检查的结果。

依然可选地,为gds文件中的各图层(称为gds图层),创建在pv工具中使用的对应图层(称为pv工具图层)。例如,为gds文件中提取的要进行越界检查的一个或多个图层(包括边界层),创建对应的pv工具图层。可选地,一个或多个gds图形可选地包括由数据类型(datatype)区分的子图层,以及将子图层映射为pv工具图层。为了简单的目的,下文中在描述对图层所做的操作中,所操作的可以是gds图层,也可以是pv工具图层。

将从gds文件中提取的一个或多个图层,分别同所选择的边界层做“非运算”(240),以识别所选择的图层是否超出边界层(250)。对于超出了边界层的图层,记录和/或展示所存在的越界信息。作为举例,在对所选择的图层同边界层做“非运算”后,若所选的图层依然有部分内容存在,则意味着该所选择的图层层存在越界,以及记录该部分内容在图层中的位置,并向用户高亮地展示图层中存在越界的该位置。

例如,设置drc(designrulecheck)规则,来对所选择的图层同边界层做“非运算”。为每个待检查的图层设置对应的drc规则,以对该图层同边界层做“非运算”。以及还指示pv工具根据所设置的drc规则而执行对待检查的图层同边界层的“非运算”,并记录检查结果。

可选地,对从gds文件中提取的多个或每个图层执行步骤240到步骤250。

依然可选地,用户根据所展示的存在越界的位置,对芯片设计进行调整,并生成修改后的gds文件。以及对修改后的gds文件实施步骤210-步骤250,以再次检查是否存在图层越界。直到识别出gds文件中不存在任何越界情况,则代表通过了越界检查。

图3a-3c展示了根据本申请实施例对两个图层做“非运算”的示意图。

图3a展示了作为举例的两个图层,图层310与图层320。为了清楚的目的,用不带阴影的空白框展示层310所占据的区域,而用带阴影的框320展示层320所占据的部分。

形状340是图层310与图层320叠加的结果。图层310与图层320的部分区域相重叠,而部分区域不重叠。形状340中,图层310提供了单一的矩形(由矩形框中的无阴影部分展示),而图层320提供了两个彼此不联通的矩形(由阴影部分所示)。

区域350与区域352是图层310与图层320相重叠的部分。

图3b展示了一个例子中两个图层做非运算的示意图。

图3b的例子中,将图层310与图层320做“非运算”。“非运算”的含义在于,从参与运算的第一个图层中去除其所覆盖的区域中为参与运算的第二个图层所占据的部分。

图层310与图层320做“非运算”的结果,是从图层310所覆盖的区域中,去除了两个图层相重叠的部分(区域350与区域352)后得到的“工”字形状,由实线框所围绕。

图3c是又一个例子中两个图层做非运算的示意图。。

图3c的例子中,将图层320与图层310做“非运算”。图层320与图层310做“非运算”的结果,是从图层320所覆盖的区域中,去除了两个图层相重叠的部分(区域350与区域352)后得到的两个“一”字形状,由实线框所围绕。

根据本申请的实施例,将从gds文件中提取的一个或多个图层,同所选择的边界层做“非运算”。所选择边界层代表了芯片基地能容纳电路的区域,而“非运算”的结果,则指示了gds文件中的一个或多个图层,超出了所选择的边界层之外的部分。

可以理解地,若将从gds文件中提取的一个或多个图层,同所选择的边界层做“非运算”的结果为空,则意味着该从gds文件提取的图层不包含越界的部分。若“非运算”的结果非空,则结果所指示的区域,即为该从gds文件提取的图层相对于边界层而越界的部分。记录识别出的越界部分,并向用户展示。

图4a与图4b展示了根据本申请实施例识别出的图层越界的示意图。

参看图4a,从gds文件中获取的m8图层所覆盖的区域,用斜线阴影所展示,而白色横线代表了边界层的边界,白色横线下方是边界层覆盖的区域,白色横线上方是边界层之外。

从图4a中看到,m8层的部分区域越过了白色横线,在白色横线上方的斜线阴影所占据的部分是m8层在边界层之外的部分(越界)。通过将gds文件中提取的m8层同边界层与“非运算”,得到的结果指示了m8层越界的部分。

图4b展示了m7层的越界部分。图4b中,用斜线阴影展示m7层所覆盖的区域,而白色横线代表了边界层的边界,白色横线上方是边界层覆盖的区域,而白色横线下方是边界层之外。

图4b中,m7层的部分区域越过了白色横线,在白色横线下方的斜线阴影所占据的部分是m7层在边界层之外的部分(越界)。通过将gds文件中提取的m7层同边界层与“非运算”,得到的结果指示了m7层越界的部分。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3