基于电路信息文件的自动布局布线控制方法与流程
- 国知局
- 2024-10-15 09:20:15
本技术涉及集成电路版图自动化设计领域,具体涉及基于电路信息文件的自动布局布线控制方法。
背景技术:
1、集成电路芯片设计是一个流程很长的工程,从前端的电路设计到后端的版图设计,各个环节都是相互紧密联系,每个环节都会影响最终芯片的实现结果。在版图设计的过程中,若工程师直接使用数字标准单元搭建一种模拟模块(相当于多个数字逻辑门电路构成的模拟器件模块),则该种模拟模块无法实现自动布局布线,为了进行物理实现,工程师一般会在电路原理图的基础上逐个模拟模块地进行手动布局和布线,例如会手动对相关的逻辑单元进行位置摆放(会涉及逻辑单元及其端口需要放置在指定位置等)和布线(会涉及到指定端口之间的互连关系)。随着集成电路规模越来越大,数字系统设计越来越复杂,系统中各种层次的模块数量和模块之间预设的布线资源都增加,通过手动布局布线进行物理实现,会大大延长设计周期,花费大量的人力成本。
技术实现思路
1、本技术针对现有技术的状况,公开基于电路信息文件的自动布局布线控制方法,具体的技术方案如下:
2、基于电路信息文件的自动布局布线控制方法,自动布局布线控制方法包括:步骤s1、从电路信息文件中提取出各个模块的名称;电路信息文件是由预先设计的电路原理图在电子设计自动化工具中转换过来;步骤s2、基于模块的名称,获得模块的端口信息,然后基于各个端口信息生成目标网表;步骤s3、控制目标网表导入到自动布局布线工具中,对各个模块进行自动布局布线,并生成gds文件;其中,电子设计自动化工具包括自动布局布线工具;自动布局布线工具无法识别电路原理图,以使电子设计自动化工具不支持对电路原理图进行自动布局布线;目标网表是允许被自动布局布线工具识别。
3、综合步骤s1至步骤s3可知,本技术设计的自动布局布线控制方法能够将预先设计出来的电路原理图电路文件自动转化为自动布局布线工具所能识别的网表文件,并可批量对多个模块进行自动识别、自动布局和自动布线,加快布局布线的速度,有助于减少后端版图人员的工作量,也方便后端版图人员进行结构分析;因此相对于现有手动版图设计方法,所述自动布局布线控制方法能提高设计效率,缩短设计周期。
4、进一步地,所述电路信息文件用于描述一个顶层模块和至少一个子模块;电路信息文件中所描述的顶层模块和/或子模块是由数字逻辑单元搭建起来的电路功能模块;子模块是配置为允许顶层模块调用的模块;步骤s1是从电路信息文件中区分出顶层模块的名称和子模块的名称,以达到提取出各个模块的名称的目的。
5、进一步地,顶层模块内预留有调用对应的子模块的标识符号,其中一个子模块内也预留有调用其它的子模块的标识符号,顶层模块在电路信息文件中不允许被其它模块调用;一个顶层模块被允许划分为一个或一个以上子模块;顶层模块和各个子模块在电路信息文件中都配置上对应的电路层级。从而提取出最基本的逻辑单元的器件信息,不需要从标准逻辑单元库中搜索,加快后续从器件级别进行布线。
6、进一步地,所述步骤s2包括:基于顶层模块的名称和子模块的名称,获得顶层模块端口信息和子模块端口信息,然后基于各个端口信息生成顶层模块的可例化网表和子模块的可例化网表;然后控制顶层模块的可例化网表和子模块的可例化网表合并为目标网表。从而通过模块外部的端口信息,对网表进行快速建立和合并,实现对顶层模块和各个子模块的网表批量处理。也克服因为同一模块的名称下的多个可例化网表之分而拆分成多个子文件的问题,减少后续在自动布局布线工具中可能产生的检查错误。
7、进一步地,所述基于顶层模块的名称和子模块的名称,获得顶层模块端口信息和子模块端口信息,然后基于各个端口信息生成顶层模块的可例化网表和子模块的可例化网表的方法包括:从电路信息文件中搜索出与顶层模块的名称对应的端口,得到顶层模块端口信息;从电路信息文件中搜索出与子模块的名称对应的端口,得到子模块端口信息;根据顶层模块端口信息和子模块端口信息,判断电路信息文件中搜索的各个端口之间的连接关系是顶层模块端口与子模块端口的连接关系,还是不同子模块之间的子模块端口连接关系;若判断到当前搜索出的不同端口之间的连接关系是顶层模块端口与子模块端口的连接关系,则依据顶层模块端口与子模块端口的连接关系得到顶层模块的可例化网表,其中,顶层模块的名称对应多个可例化网表,以使一个顶层模块对应多个可例化网表;若判断到当前搜索出的不同端口之间的连接关系是不同子模块之间的子模块端口连接关系,则依据不同子模块之间的子模块端口连接关系得到各个子模块的可例化网表,其中,子模块的名称对应多个可例化网表,以使一个子模块对应多个可例化网表;每个可例化网表对应一个实例化名,以使一个顶层模块的名称对应多个实例化名,一个子模块的名称也对应多个实例化名。避免因为各个模块的可例化网表被拆分到多个网表文件内而引起过多的工具验证错误。
8、进一步地,电路信息文件中搜索出的不同端口之间的连接关系的识别方法包括:不同模块的端口被配置的连线名相同时,将该不同模块之间的连线名相同的端口配置为相连接,形成模块的端口连接规则。从而通过各个端口的连线名建立起模块的端口连接规则。
9、进一步地,顶层模块的名称及其对应端口的连线名是以相应的语法形式设置在所述电路信息文件中,子模块的名称及其对应端口的连线名是以相应的语法形式设置在所述电路信息文件中,顶层模块的名称与子模块的名称在所述电路信息文件中是配置为调用与被调用的关系。本技术方案对顶层模块的名称与及其所需调用的子模块的名称进行语法处理,以便于从所述电路信息文件或其转化出的可例化网表中识别出来。
10、进一步地,所述控制顶层模块的可例化网表和子模块的可例化网表合并为目标网表的方法包括:依据一个顶层模块的名称所对应的多个实例化名,按顺序将顶层模块下的每个可例化网表排列在一个待处理网表文件内;依据顶层模块端口与子模块端口的连接关系,选择出与顶层模块存在连接关系的子模块,再依据选择出的子模块的名称所对应的多个实例化名按顺序,将子模块下的每个可例化网表排列在同一个待处理网表文件内;然后从同一个待处理网表文件内得到所述目标网表。实现基于各个端口信息生成目标网表。也克服因为同一模块的名称下的多个可例化网表被拆分到多个网表文件、以及各个子模块的可例化网表被拆分到不同网表文件而容易产生的工具检查错误问题,即减少后续在自动布局布线工具中可能产生的检查错误(例如drc验证错误),加速自动布局布线的流程,降低研发成本,提高项目成功率,缩短上市时间。
11、进一步地,所述控制顶层模块的可例化网表和子模块的可例化网表合并为目标网表的方法还包括:依据不同子模块之间的子模块端口连接关系,选择出与已合并的可例化网表对应的子模块存在连接关系的其它子模块;再依据当前选择出的子模块的名称所对应的多个实例化名按顺序,将子模块下的每个可例化网表排列在所述待处理网表文件内。实现基于多个互连的子模块端口信息为所述目标网表提供更多网表信息。
12、综上,本实施例确定将顶层模块端口与子模块端口的连接关系、以及各个子模块之间的子模块端口连接关系有序集中在一起。其中,所述目标网表支持被调用来进行自动布局布线。但是本实施例通过步骤s2会约束各个端口集成在一起以进行步骤s3中的自动布局布线。
13、进一步地,所述步骤s3包括:控制目标网表导入到自动布局布线工具中,对顶层模块和子模块进行自动布局布线,也对各个子模块进行自动布局布线;自动布局布线工具完成自动布局布线后,生成gds文件,实现从所述电路信息文件转换为gds文件,以产生送交供集成电路制造用的gdsii数据。实现为电子设计自动化工具、计算机和掩膜制造商之间进行半导体物理制板数据传输的一种符合工业标准的格式文件。
14、进一步地,在所述步骤s3中,目标网表导入自动布局布线工具后,自动布局布线工具进行自动布局布线的过程中,自动布局布线所需的程序遍历到一个坐标位置处的端口的连线名时,根据所述模块的端口连接规则进行位置相邻的两个模块之间的连接关系判定并进行布线,自动布局布线所需的程序在识别到前述的连接关系的基础上减少关注模块内部的电路结构信息,加快位置相邻的两个模块之间的自动布局布线。
本文地址:https://www.jishuxx.com/zhuanli/20241015/313799.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表