CN102043884A - 一种减小版图文件大小的方法 - Google Patents
一种减小版图文件大小的方法 Download PDFInfo
- Publication number
- CN102043884A CN102043884A CN 201010613039 CN201010613039A CN102043884A CN 102043884 A CN102043884 A CN 102043884A CN 201010613039 CN201010613039 CN 201010613039 CN 201010613039 A CN201010613039 A CN 201010613039A CN 102043884 A CN102043884 A CN 102043884A
- Authority
- CN
- China
- Prior art keywords
- polygon
- layer
- layout file
- polygons
- polygonal
- 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
Links
Images
Landscapes
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本发明公开了一种减小版图文件大小的方法,基于对大规模版图文件中的相同多边形的筛选和匹配,提出了一种用参考单元的引用替换版图中存在的多个相同多边形,以减少版图文件所需存储的坐标数目,从而减小超大规模集成电路设计版图文件大小的方法,该方法能够极大地减少版图文件占有的存储资源以及版图设计工具在读入版图文件时占有的计算机内存,提高计算机运行速度和版图设计工具的使用效率,特别适合用于超大规模集成电路设计中。
Description
技术领域
本发明涉及集成电路计算机辅助设计领域,尤其涉及一种减小用于超大规模集成电路设计的版图文件大小的方法。
背景技术
版图文件(也叫GDSII文件,GDS=Graphic Database System)是用来描述掩模几何图形的事实标准,是二进制格式,内容包括层和几何图形的基本组成。GDSII是一种时序提供格式,对分布于每一个制作层的电路单元进行全面描述。用于设计工具、计算机和掩膜制造商之间进行半导体物理制板的数据传输。
随着集成电路设计和制造工艺的发展,集成电路的复杂度越来越高,芯片上能够集成的晶体管的数目甚至达到了千万门级。芯片的复杂度和集成度越高,半导体物理制板所要求的版图文件的大小也在不断增大,有的版图文件到达了GB甚至十GB的级别。
由于版图文件存储的内容包括层和几何图形的基本组成,而几何图形中绝大多数是多边形,几何图形的基本组成记录的是点的坐标。版图文件对于每一个多边形都必须记录其所有顶点的坐标,多边形越多,多边形的顶点数(或者边数)越多,版图文件必须记录的顶点坐标就越多,文件大小就越大。通常,在大规模的版图文件中,许多同层的多边形形状和大小都完全一致,只是在版图中的相对位置不同;同时,在超大规模集成电路的版图设计中,由于电路规模非常大,复杂度非常高,通常需要多个部门分工协作,部门人员之间分模块设计,这种设计方式缺乏沟通,有效组织和规划,容易产生更多的这种同层的形状和大小完全相同,只是相对位置不同的多边形。这些相同的多边形将耗费很多的存储空间,极大地增大了版图文件的大小。版图文件变大将占有更多的存储资源,同时使得版图设计工具在读入版图文件时占有更多的计算机内存,影响计算机运行速度和设计工具的使用效率。
发明内容
本发明提供了一种减小用于超大规模集成电路设计的版图文件大小的方法,能够极大地减少版图文件占有的存储资源以及版图设计工具在读入版图文件时占有的计算机内存,提高计算机运行速度和版图设计工具的使用效率。
一种减少版图文件大小的方法,包括以下步骤:
(1)读入原始版图文件;
(2)遍历版图层次,根据版图的层次进行分组归类,将相同层的所有多边形归为同一个同层多边形组;如对于原始版图中的M层,将所有层属性是M的多边形归为M层多边形组;
(3)遍历同层多边形组,并根据同层多边形的边数归类,将所有具有相同边数的同层多边形归为同一个同层相似多边形组;如步骤(2)所述的M层多边形组中,所有边数为n的多边形都归为M层相似n边形组;n=3,4,...,9,10,...,n为自然数;
(4)在同层相似多边形组中匹配形状完全相同的多边形,并归为相同多边形组;以作向量的方式来判断两个相似多边形是否是相同多边形,并划分相同多边形组,具体方法如下:
①以同层相似多边形组的每一个多边形的方形边框左下角顶点作为向量起点;
②按逆时针方向遍历每一个多边形的顶点,将其作为向量的终点;
③逐一比较两个多边形的各个向量,如果两个多边形的所有向量都分别相等,则认为两个多边形完全相同,将其归为相同多边形组;
④完全遍历同层相似多边形组中的所有多边形,对每两个多边形重复①,②和③步骤,直至将同层相似多边形组完全划分为多个相同多边形组为止。
(5)为每一个相同多边形组创建一个参考单元,并将相同多边形组中的每一个多边形替换成该参考单元的引用;创建参考单元并将相同多边形组中的多边形替换成参考单元的引用的步骤如下:
①以相同多边形组的一个多边形为基准,创建一个和该多边形形状完全一致的单元作为参考单元;
②遍历相同多边形组的每一个多边形,将其替换成该参考单元的引用;
(6)在对原始版图文件中所有层次的所有多边形都完成步骤(3),(4)和(5)之后,存储新的版图文件。
本发明中,以作向量的方式来判断两个相似多边形是否是相同多边形,向量的起点是多边形方形边框的左下角顶点,多边形的方形边框是指能够包围多边形的最小的矩形方框;向量的终点是按逆时针方向遍历多边形的顶点,遍历顶点的起始点是位于多边形最下方且距离多边形方形边框左下角顶点最近的顶点,并设定为第一个向量终点。按照此种作向量的方式,一个n边形共有n个向量,自向量起点到第一向量终点作出的向量为第1个向量,按逆时针方向,依次作出第2个向量、第3个向量.....第n个向量。当且仅当两个多边形的任意第m(m=1,2,...n)个向量都相等的情况下,才判定两个多边形为相同多边形。
本发明中,为每一个相同多边形组创建一个参考单元,参考单元内的图形跟该相同多边形组内的多边形形状和大小完全一致,参考单元内将该多边形的方形边框左下角设定坐标原点。遍历参考单元对应的相同多边形组中的每一个多边形,将其替换为参考单元的引用,偏移坐标设定为被替换多边形的方形边框左下角坐标。由于每一个n边形都必须记录n个顶点的坐标,而参考单元的引用只需要记录一个坐标(偏移坐标),每一个n边形被替换之后,版图文件可以减少(n-1)个坐标点的存储空间。
本发明基于对大规模版图文件中的相同多边形的筛选和匹配,提出了一种用参考单元的引用替换版图中存在的多个相同多边形,以减少版图文件所需存储的坐标数目,从而减小超大规模集成电路设计版图文件大小的方法,该方法能够极大地减少版图文件占有的存储资源以及版图设计工具在读入版图文件时占有的计算机内存,提高计算机运行速度和版图设计工具的使用效率。
附图说明
图1是本发明的减小版图文件大小的方法的流程图;
图2是原始版图中典型不同层次和多边形的示意图;
图3是版图中Poly层多边形组的示意图;
图4是版图中Poly层相似多边形组的示意图;
图5是版图中Poly层相同多边形组的示意图;
图6是版图中多边形方形边框示意图;
图7是本发明对多边形作向量的示意图;
图8是对两个相似六边形作向量的示意图;
图9是用参考单元的引用替换版图中相同多边形的结果示意图;
图10是用本发明处理后新版图文件跟原始版图文件大小比例示意图。
具体实施方式
下面结合实施例和附图来详细说明本发明,但本发明并不仅限于此。
如图1所示,一种减少版图文件大小的方法,包括如下步骤:
(1)读入原始版图文件;
原始的版图文件中存储着该版图所有相关的几何图形的层和几何图形的基本组成,读入版图文件将获取所有几何图形的层次和基本组成信息。通常情况下,原始版图文件中存储有若干层,每个层上均有若干个多边形,每个多边形包括该多边形所属的层以及多边形所有顶点的坐标。
为了简便起见,在图2中给出了原始版图文件中的典型的两个不同层次以及层次上的若干个多边形的示意图,以下的各步骤也将以此为基础进行说明。
如图2所示,在版图中包含有L1(层属性为Active)和L2(层属性为Poly)两个层次,在L1层次上的几何图形包括有四个四边形和两个六边形,在L2层次上的几何图形包括有四个六边形和两个四边形,每一个多边形的顶点坐标都不相同。
(2)遍历版图层次,将所有相同层的多边形归为同一个同层多边形组;
根据版图的层次进行分组归类,如图3所示,将所有层属性都是Poly的多边形归类为Poly层多边形组,包括四个六边形和两个四边形;
同理,也将所有层属性都是Active的多边形归类为Active层多边形组。
(3)遍历同层多边形组,并根据同层多边形的边数归类,将所有具有相同边数的同层多边形归为同一个同层相似多边形组;
根据同层多边形的边数归类,如图4所示,Poly层的边数为6的多边形归类为Poly层相似六边形组,包括4个六边形A、B、C和D。而Poly层的边数为4的多边形归类为Poly层相似四边形组,包括2个四边形;
按照同样的方法将Active层多边形组归类为Active层相似六边形组和Active层相似四边形组;
(4)在同层相似多边形组中匹配形状完全相同的多边形,并归为相同多边形组;
以Poly层相似六边形组为例,对图4所示的Poly层相似六边形组中的每两个六边形,以作向量的方式来判断它们是否是相同多边形,并划分Poly层相同六边形组。
以下将以如图8所示的Poly层相似六边形组中的六边形A和六边形B为例来进行详细说明。
如图8(a)和图8(b)所示,Poly层相似六边形组中的六边形A和六边形B的顶点及顶点坐标分别为A1(Xa1,Ya1),A2(Xa2,Ya2),A3(Xa3,Ya3),A4(Xa4,Ya4),A5(Xa5,Ya5),A6(Xa6,Ya6),和B1(Xb1,Yb1),B2(Xb2,Yb2),B3(Xb3,Yb3),B4(Xb4,Yb4),B5(Xb5,Yb5),B6(Xb6,Yb6)。
首先,确定六边形A和六边形B的方形边框。如图6(a)和图6(b)所示,多边形的方形边框是指能够包围多边形的最小的矩形方框,图8中,六边形A和六边形B的方形边框左下角坐标分别为A0(Xa0,Ya0)和B0(Xb0,Yb0)。
然后,以六边形A的方形边框左下角顶点A0作为六边形A的向量起点,图中A0和A1点重合,按逆时针方向遍历六边形A每一个顶点,将其作为向量的终点,按照图7所示的方式分别作出向量 以六边形B的方形边框左下角顶点B0作为六边形B的向量起点,图中B0和B1点重合;按逆时针方向遍历六边形B每一个顶点,将其作为向量的终点,按照图7所示的方式分别作出向量 和
接下来,逐一比较两个六边形A和六边形B的六个向量,如果这六个向量分别相等,则认为这两个六边形完全相同,将其归为Poly层的一个相同六边形组。判断向量和向量相等的方法为:分别判断两个向量顶点的X坐标和Y坐标差值是否相等,即如果Xa1-Xa0=Xb1-Xb0,并且Ya1-Ya0=Yb1-Yb0,那么向量和向量相等。以此类推,分别判断向量和 是否分别相等。
最后,完全遍历Poly层相似六边形组中的所有六边形,对每两个六边形重复以上的步骤,直至将Poly层相似六边形组的完全划分为多个Poly层的相同六边形组为止,每个Poly层相同六边形组至少含有两个相同六边形。
(5)为每一个Poly层的相同六边形组创建一个参考单元,并将该相同六边形组的每一个六边形替换成该参考单元的引用;
根据步骤(4)中的判断,图4所示的Poly层相似六边形组中三个六边形A、B和C完全相同,这三个六边形A、B和C组成了Poly层的一个相同六边形组,如图5所示。按照以下步骤创建参考单元并将该相同六边形组中的多边形A、B和C替换成参考单元的引用:
①以该相同六边形组的一个六边形为基准,如六边形A,创建一个和六边形A形状完全一致的单元作为参考单元,命名为L2NewCell,将参考单元的方形边框左下角的顶点设为坐标原点;
②遍历该相同六边形组的每一个六边形,将其替换成该参考单元L2NewCell的引用。多边形A、B和C都被替换为L2NewCell,偏移坐标分别为(Xa0,Ya0)、(Xb0,Yb0)和(Xc0,Yc0),对于每个被替换为参考单元的引用的多边形,均只需要记录一个偏移坐标,版图文件可以减少5个坐标点的存储空间。偏移坐标是指:相对于①中的坐标原点,替换了多边形A、B和C的参考单元L2NewCell的方形边框左下角的顶点坐标。
(6)在对版图文件中所有层次的所有多边形都完成步骤(3),(4)和(5)之后,存储新的版图文件,如图9所示。在新的版图文件中,参考单元L2NewCell的引用只需要记录一个坐标(偏移坐标),每一个n边形被替换之后,版图文件可以减少(n-1)个坐标点的存储空间,从而能大大减小版图文件大小,新的版图文件与原始版图文件的大小比例如图10所示,当原始版图文件大小为2.3GB时,压缩比例高达30%。上述方法能够极大地减少版图文件占有的存储资源以及版图设计工具在读入版图文件时占有的计算机内存,提高计算机运行速度和版图设计工具的使用效率。
Claims (3)
1.一种减少版图文件大小的方法,其特征在于,包括以下步骤:
(1)读入原始版图文件;
(2)遍历版图层次,根据版图的层次进行分组归类,将相同层的所有多边形归为同一个同层多边形组;
(3)遍历同层多边形组,并根据同层多边形的边数归类,将所有具有相同边数的同层多边形归为同一个同层相似多边形组;
(4)在同层相似多边形组中匹配形状完全相同的多边形,并归为相同多边形组;
(5)为每一个相同多边形组创建一个参考单元,并将相同多边形组中的每一个多边形替换成该参考单元的引用;
(6)在对原始版图文件中所有层次的所有多边形都完成步骤(3),(4)和(5)之后,存储新的版图文件。
2.如权利要求1所述的减少版图文件大小的方法,其特征在于,所述的步骤(4)包括:
①以同层相似多边形组的每一个多边形的方形边框左下角顶点作为向量起点;
②按逆时针方向遍历每一个多边形的顶点,将其作为向量的终点;
③逐一比较两个多边形的各个向量,如果两个多边形的所有向量都分别相等,则认为两个多边形完全相同,将其归为相同多边形组;
④完全遍历同层相似多边形组中的所有多边形,对每两个多边形重复①,②和③步骤,直至将同层相似多边形组完全划分为多个相同多边形组为止。
3.如权利要求1所述的减少版图文件大小的方法,其特征在于,所述的步骤(5)包括:
①以相同多边形组的一个多边形为基准,创建一个和该多边形形状完全一致的单元作为参考单元;
②遍历相同多边形组的每一个多边形,将其替换成该参考单元的引用。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106130392A CN102043884B (zh) | 2010-12-29 | 2010-12-29 | 一种减小版图文件大小的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010106130392A CN102043884B (zh) | 2010-12-29 | 2010-12-29 | 一种减小版图文件大小的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102043884A true CN102043884A (zh) | 2011-05-04 |
CN102043884B CN102043884B (zh) | 2012-07-04 |
Family
ID=43910020
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010106130392A Active CN102043884B (zh) | 2010-12-29 | 2010-12-29 | 一种减小版图文件大小的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102043884B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102364480A (zh) * | 2011-10-24 | 2012-02-29 | 中国科学院微电子研究所 | 提取寄生参数的方法及系统 |
CN103366055A (zh) * | 2013-06-28 | 2013-10-23 | 杭州广立微电子有限公司 | 一种可寻址测试芯片版图的生成方法 |
CN104572682A (zh) * | 2013-10-17 | 2015-04-29 | 上海华虹宏力半导体制造有限公司 | 对集成电路版图数据进行区域索引的方法 |
CN105095594A (zh) * | 2015-08-19 | 2015-11-25 | 杭州广立微电子有限公司 | 基于不同测试目的而生成测试单元版图的方法 |
CN113361226A (zh) * | 2021-06-25 | 2021-09-07 | 青岛信芯微电子科技股份有限公司 | 一种减小版图文件大小的方法及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5524202A (en) * | 1991-03-01 | 1996-06-04 | Fuji Xerox Co., Ltd. | Method for forming graphic database and system utilizing the method |
CN101789048A (zh) * | 2010-02-08 | 2010-07-28 | 浙江大学 | 一种快速提取版图关键面积的方法 |
CN101847165A (zh) * | 2009-03-25 | 2010-09-29 | 北京芯技佳易微电子科技有限公司 | 一种存储器器件的版图绘制方法及装置 |
-
2010
- 2010-12-29 CN CN2010106130392A patent/CN102043884B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5524202A (en) * | 1991-03-01 | 1996-06-04 | Fuji Xerox Co., Ltd. | Method for forming graphic database and system utilizing the method |
CN101847165A (zh) * | 2009-03-25 | 2010-09-29 | 北京芯技佳易微电子科技有限公司 | 一种存储器器件的版图绘制方法及装置 |
CN101789048A (zh) * | 2010-02-08 | 2010-07-28 | 浙江大学 | 一种快速提取版图关键面积的方法 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102364480A (zh) * | 2011-10-24 | 2012-02-29 | 中国科学院微电子研究所 | 提取寄生参数的方法及系统 |
CN102364480B (zh) * | 2011-10-24 | 2013-04-10 | 中国科学院微电子研究所 | 提取寄生参数的方法及系统 |
CN103366055A (zh) * | 2013-06-28 | 2013-10-23 | 杭州广立微电子有限公司 | 一种可寻址测试芯片版图的生成方法 |
CN104572682A (zh) * | 2013-10-17 | 2015-04-29 | 上海华虹宏力半导体制造有限公司 | 对集成电路版图数据进行区域索引的方法 |
CN104572682B (zh) * | 2013-10-17 | 2017-12-05 | 上海华虹宏力半导体制造有限公司 | 对集成电路版图数据进行区域索引的方法 |
CN105095594A (zh) * | 2015-08-19 | 2015-11-25 | 杭州广立微电子有限公司 | 基于不同测试目的而生成测试单元版图的方法 |
CN105095594B (zh) * | 2015-08-19 | 2018-06-26 | 杭州广立微电子有限公司 | 基于不同测试目的而生成测试单元版图的方法 |
CN113361226A (zh) * | 2021-06-25 | 2021-09-07 | 青岛信芯微电子科技股份有限公司 | 一种减小版图文件大小的方法及电子设备 |
CN113361226B (zh) * | 2021-06-25 | 2022-11-11 | 青岛信芯微电子科技股份有限公司 | 一种减小版图文件大小的方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN102043884B (zh) | 2012-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102043884B (zh) | 一种减小版图文件大小的方法 | |
CN109087914B (zh) | 集成电路及产生集成电路的布局的计算机实施方法 | |
US7934188B2 (en) | Legalization of VLSI circuit placement with blockages using hierarchical row slicing | |
CN105787213B (zh) | 一种保持时间违反的修复方法 | |
CN103218174A (zh) | 一种用于遥感图像的io双缓存交互多核处理方法 | |
KR20160126664A (ko) | 레이아웃 분리 방법 및 레이아웃 분리 시스템 | |
CN109408767A (zh) | 一种面向电网缺失数据的填补方法 | |
Tian et al. | Triple patterning aware detailed placement with constrained pattern assignment | |
CN104125582A (zh) | 一种规划通信网络的方法 | |
Emmert et al. | A methodology for fast FPGA floorplanning | |
CN106874543B (zh) | 版图的lef图形处理方法 | |
US11552067B2 (en) | Semiconductor cell blocks having non-integer multiple of cell heights | |
CN112861466A (zh) | 一种布线轨道分配方法、电子设备及计算机可读存储介质 | |
CN103124279B (zh) | 资源信息的输出方法和系统 | |
CN107068195A (zh) | 带有故障修复装置的三维芯片及故障修复和数据读取方法 | |
CN108256637A (zh) | 一种细胞阵列三维通信传输方法 | |
Li | Arrangement of machines under spatial constraint by using a novel algorithm | |
CN105512435A (zh) | 基于边表示短路关键面积网络的集成电路版图优化方法 | |
CN103093060A (zh) | 基于短路关键面积约束的版图冗余通孔插入方法 | |
CN102693525A (zh) | 一种解决种子填充算法中像素多次出入栈问题的方法 | |
KR102372891B1 (ko) | 상호 중첩되는 표준 셀들을 포함하는 집적 회로 및 그것의 레이아웃을 생성하는 방법 | |
CN101750881A (zh) | 用于确定光刻掩模的可制造性的方法和系统 | |
CN118072805B (zh) | 一种存储器测试分组与调度的方法及系统 | |
Wu et al. | Slotting optimization algorithm of the stereo warehouse | |
Nelson et al. | The resilience of domestic transport networks in the context of food security–A multi-country analysis: Background paper for The State of Food and Agriculture 2021 |
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 | ||
CP03 | Change of name, title or address |
Address after: 310012 building F1, 15 / F, building a, Paradise Software Park, 3 xidoumen Road, Xihu District, Hangzhou City, Zhejiang Province Patentee after: Hangzhou Guangli Microelectronics Co.,Ltd. Address before: B412, Chuangye building, 99 Huaxing Road, Xihu District, Hangzhou City, Zhejiang Province, 310027 Patentee before: Semitronix Corp. |
|
CP03 | Change of name, title or address |