一种版图设计中的对称布局布线方法
文献发布时间:2023-06-19 10:24:22
技术领域
本发明涉及集成电路设计的技术领域,尤其涉及到一种版图设计中的对称布局布线方法。
背景技术
集成电路的模块设计中,会遇到需要严格对称的电路结构设计,例如采用了触发器结构的物理不可克隆模块,要求上下两路触发器的位置和连线必须对称,这样才能利用芯片生产过程中的不均匀性来实现物理不可克隆。
传统的人工做法是手动摆放每一个元器件,人为的验证布局结果是否满足对称性要求。对于一个较高层次的电路模块,例如有多个元器件组成的电路模块,如果还需要和其他模块保持对称性,通常先对该模块布局,然后再进行复制、旋转、镜像等操作,当需要调整电路时,这个过程需要重新进行一遍,十分耗时且效率低下。
为此,急需一种版图设计中的对称布局布线方法显得很有必要。
发明内容
本发明的目的在于克服现有技术的不足,提供一种能大大提高效率的版图设计中的对称布局布线方法。
为实现上述目的,本发明所提供的技术方案为:
一种版图设计中的对称布局布线方法,包括以下步骤:
S1、输入标识电路元器件和元器件之间连接关系的网表数据、标识元器件物理属性和电气属性的器件库数据、标识电路元器件之间对称关系和导线之间对称关系的对称约束文件、标识版图大小、金属层数、电源条带、轨道在内的版图信息;
S2、根据步骤S1的各个输入,自动推导对称关系,并根据对称关系完成对称布局和对称布线;
S3、对布局布线结果进行验证;
S4、将经过验证的对称布局和对称布线的最终结果导出为业界通用的DEF、LEF、GDS等文件格式。
进一步地,所述步骤S2中,对称布局的具体过程如下:
1)分析输入文件信息有没有错误、矛盾以及是否完整;
2)根据输入文件信息构造电路拓扑关系图和对称关系图;
3)根据上一步骤的信息对电路模块进行排序,确定依次摆放的顺序;
4)依次对模块进行摆放;
5)若当前模块没对称关系的约束或有对称关系的约束,但是对称关系中的模块均没有确定对称关系的位置,则计算当前模块和其所连接的其他模块、IO、Pin在内的连接线最短的位置和方向作为当前模块的位置和方向;
若当前模块有对称关系约束,且对称关系中的另外一半有确定的位置,则根据对称关系计算出对称位置和方向,摆放当前模块;
6)判断是否摆放完成,若是,则进入步骤7),否则,返回步骤4);
7)判断是否有人工修改参数,若是,则返回步骤4),若否,则输出对称布局结果。
进一步地,所述步骤S2中,对称布线具体为:
对于平面内不存在冲突的两个需要对称布线的线网,采用轴对称布线方法或中心对称布线方法;
对于平面内存在冲突的两个需要对称布线的线网,采用线网分段对称方法,平面上不冲突的部分,直接在平面内布线,平面上冲突的部分利用多层金属层进行三维空间的对称布线。
进一步地,所述步骤S3对布局布线结果进行验证时,从对称布局布线之后的结果中,抽取寄生参数,如电阻、电容、线长、几何形状、时序参数等,并判断是否满足对称约束,将判断结果显示、保存。
与现有技术相比,本方案原理及优点如下:
1.本方案以输入标识电路元器件和元器件之间连接关系的网表数据、标识元器件物理属性和电气属性的器件库数据以及标识版图大小、金属层数、电源条带、轨道在内的版图信息为基础,根据标识电路元器件之间对称关系和导线之间对称关系的对称约束文件,自动完成对称布局、对称布线,减轻人工劳动,大大提高了设计效率。
2.当人工干预布线过程或者结果时,本方案能够根据人工操作对电路的改变,自动保持电路的对称性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的服务作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种版图设计中的对称布局布线方法中对称布局的原理流程图;
图2为一个电路的结构图;
图3为图2中部分结构的对称关系图。
具体实施方式
在结合具体实施例进行说明之前,先对对称关系进行如下说明:
对称关系:
关于某个点的中心对称,关于某条直线的对称,关于某个元器件的对称关系,所述的点、线、元器件为参考系。
对称分为三个级别的对称,分别是参数(电阻、电容、线长等参数)对称、相对于参考系的位置对称、相对于参考系的位置和形状等的完全对称。参数对称只需要保证对应的参数最终对称即可,即使实际布局中存在一点位置的偏移也可以接受;位置对称是针对两个拓扑关系相同的电路,保证两个元器件中的每一个子元器件满足位置的对称,不要求子元器件的属性;完全对称要求两个元器件的拓扑关系和子元器件的属性均一致,保证两个元器件的布局完全一致且满足对称要求。
下面结合具体实施例对本发明作进一步说明:
本发明实施例所述的一种版图设计中的对称布局布线方法,包括以下步骤:
S1、输入标识电路元器件和元器件之间连接关系的网表数据、标识元器件物理属性和电气属性的器件库数据、标识电路元器件之间对称关系和导线之间对称关系的对称约束文件(对称约束文件中描述的信息为“元器件和元器件关于参考系的哪个级别对称”)、标识版图大小、金属层数、电源条带、轨道在内的版图信息;
S2、根据步骤S1的各个输入,自动推导对称关系,并根据对称关系完成对称布局和对称布线;
S3、对布局布线结果进行验证;从对称布局布线之后的结果中,抽取寄生参数,如电阻、电容、线长、几何形状、时序参数等,并判断是否满足对称约束,将判断结果显示、保存;
S4、将经过验证的对称布局和对称布线的最终结果导出为业界通用的DEF、LEF、GDS等文件格式。
如图1所示,上述步骤S2中,对称布局的具体过程如下:
1)分析输入文件信息有没有错误、矛盾以及是否完整;
2)根据输入文件信息构造电路拓扑关系图和对称关系图;
3)根据上一步骤的信息对电路模块进行排序,确定依次摆放的顺序;
4)依次对模块进行摆放;
5)若当前模块没对称关系的约束或有对称关系的约束,但是对称关系中的模块均没有确定对称关系的位置,则计算当前模块和其所连接的其他模块、IO、Pin在内的连接线最短的位置和方向作为当前模块的位置和方向;
若当前模块有对称关系约束,且对称关系中的另外一半有确定的位置,则根据对称关系计算出对称位置和方向,摆放当前模块;
6)判断是否摆放完成,若是,则进入步骤7),否则,返回步骤4);
7)判断是否有人工修改参数,若是,则返回步骤4),若否,则输出对称布局结果。
而在步骤S3中,对称布线的解析为:
在电路设计中,通常一个线网有一个输出端口,一个或者多个输入端口。在对一个输出端口对应多个输入端口的线网布线时,线网和线网之间、线网内部的端口连线之间内可能也包含对称约束,统称为导线的对称约束。本实施例调用算法完成对称布线,其中算法会根据导线的对称关系,自动完成满足对称约束的布线结果。
具体为:对于平面内不存在冲突的两个需要对称布线的线网,可以采用轴对称布线方法或中心对称布线方法;
对于平面内存在冲突的两个需要对称布线的线网,采用线网分段对称方法,平面上不冲突的部分,直接在平面内布线,平面上冲突的部分利用多层金属层进行三维空间的对称布线。
若将本实施例应用于图2和图3中,MUX_upper_0和MUX_lower_1要求完全对称,而通过Group0和Group1的对称关系,本实施例能够推导出MUX_upper_2和MUX_lower_3完全对称,并自动完成Group1的摆放,而无需手动设置Group1中元器件的对称关系,减少了一半重复性的工作,特别是在后期修改了Group0的内部结构时,本实施例能够自动保持对称,节省工作量的优点更加突出。
以上所述之实施例子只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
- 一种版图设计中的对称布局布线方法
- 一种FPGA布局布线后仿真中异常信号溯源方法