CN117592428A - 芯片设计优化方法、装置、电子设备及存储介质 - Google Patents

芯片设计优化方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN117592428A
CN117592428A CN202311863485.2A CN202311863485A CN117592428A CN 117592428 A CN117592428 A CN 117592428A CN 202311863485 A CN202311863485 A CN 202311863485A CN 117592428 A CN117592428 A CN 117592428A
Authority
CN
China
Prior art keywords
library
library unit
file
layout
information
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.)
Pending
Application number
CN202311863485.2A
Other languages
English (en)
Inventor
边少鲜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Phytium Technology Co Ltd
Original Assignee
Phytium Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Phytium Technology Co Ltd filed Critical Phytium Technology Co Ltd
Priority to CN202311863485.2A priority Critical patent/CN117592428A/zh
Publication of CN117592428A publication Critical patent/CN117592428A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/394Routing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/396Clock trees
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本申请提供一种芯片设计优化方法、装置、电子设备及存储介质,涉及芯片技术领域。该方法包括:获取门级网表和工艺物理信息文件,门级网表包括:一个库单元,工艺物理信息文件包括:库单元的物理信息文件;根据门级网表和工艺物理信息文件,对库单元优化设计,获取优化后的库单元,其中,优化内容包括:库单元的布局信息、管脚连接信息、电源布局信息。本申请可以基于对库单元的修改实现小延时,且不会增加大量的成本。

Description

芯片设计优化方法、装置、电子设备及存储介质
技术领域
本发明涉及芯片技术领域,具体而言,涉及一种芯片设计优化方法、装置、电子设备及存储介质。
背景技术
数字电路的半定制物理设计是在将完成功能描述的电路转换为门级网表后,将门级网表转换为最低级别的物理布局的过程,物理布局旨在将门级网表中的标准单元摆放在规定区域内,并用金属完成互连,然后进行时序优化。
在时序优化过程,会对互连金属层以及互连轨迹进行调整,由于库单元的输入输出管脚所在的金属层一般都是最底层或者次底层,但是高层金属具有电阻小、单元距离延时小的特点,若需要实现小延时,需要定制专门的特定单元以驱动高层金属。
但是,定制单元需要投入较大的人力和制造成本,且需要进行长时间的校准。
发明内容
本发明的目的在于,针对上述现有技术中的不足,提供一种芯片设计优化方法、装置、电子设备及存储介质,以便基于对库单元的修改实现小延时,且不会增加大量的成本。
为实现上述目的,本申请实施例采用的技术方案如下:
第一方面,本申请实施例提供了一种芯片设计优化方法,所述方法包括:
获取门级网表和工艺物理信息文件,所述门级网表包括:一个库单元,所述工艺物理信息文件包括:所述库单元的物理信息文件;
根据所述门级网表和所述工艺物理信息文件,对所述库单元优化设计,获取优化后的库单元,其中,优化内容包括:所述库单元的布局信息、管脚连接信息、电源布局信息。
可选的,所述根据所述门级网表和所述工艺物理信息文件,对所述库单元优化设计,获取优化后的库单元,包括:
根据所述门级网表和所述工艺物理信息文件,构建所述库单元对应的物理版图;
根据所述物理版图进行调整,扩大所述库单元所在区域、并将所述库单元置于所述区域的中心,其中,所述区域中除所述库单元以外的位置用于摆放其他逻辑单元;
将所述库单元的输入输出管脚引出到次高层金属,确定所述库单元的管脚连接信息;
在所述区域中插入电容单元,所述电容单元位于所述库单元的外围;
对所述库单元进行电源规划,生成所述库单元的电源布局信息;
在所述库单元的输出管脚处插入二极管;
在所述区域的空隙处插入填充单元。
可选的,所述根据所述物理版图进行调整,扩大所述库单元所在区域、并将所述库单元置于所述区域的中心,包括:
根据所述库单元的尺寸信息,横向扩大所述库单元所在区域的宽度、纵向扩大所述库单元所在区域的高度,并将所述库单元置于扩大后所述区域的中心。
可选的,所述将所述库单元的输入输出管脚引出到次高层,确定所述库单元的管脚连接信息,包括:
根据所述门级网表中预设的输入输出管脚,采用所述物理版图的次高层金属进行布放,将所述库单元的输入输出管脚与所述门级网表中预设的输入输出管脚通过金属叠孔形式互连拉出,引出到所述次高层,确定所述库单元的管脚连接信息。
可选的,所述根据所述门级网表中预设的输入输出管脚,采用所述物理版图的次高层金属进行布放,将所述库单元的输入输出管脚与所述门级网表中预设的输入输出管脚通过金属叠孔形式互连拉出,引出到所述次高层,包括:
根据所述门级网表中预设的输入输出管脚和所述库单元的输入输出管脚的金属尺寸,采用所述次高层金属进行布放,将所述库单元的输入输出管脚与所述门级网表中预设的输入输出管脚通过多排金属叠孔形式互连拉出,引出到所述次高层,以使所述库单元的输入输出管脚的金属尺寸与最高层的金属宽度差距小于预设值。
可选的,所述根据所述门级网表和工艺物理信息文件,对所述库单元优化设计,获取优化后的库单元之后,还包括:
运行验证程序,对所述优化后的库单元进行设计验证,获取验证结果,其中,验证内容包括下述至少一项:设计规则、电压降、电迁移、天线效应。
可选的,所述根据所述门级网表和工艺物理信息文件,对所述库单元优化设计,获取优化后的库单元之后,还包括:
根据所述优化后的库单元,抽取特征信息,所述特征信息包括不同类型的多个应用文件;所述应用文件包括下述至少一项:
基础特性文件,包括:所述库单元的管脚连接信息;
布局文件,包括:所述库单元的布局信息;
版图文件,包括:所述库单元的物理版图信息;
网表文件,包括:所述库单元的连接关系信息。
可选的,还包括:
在芯片设计过程中,调用所述应用文件;
将所述应用文件中所述基础特性文件的文件名修改为所述库单元的名称,并运行所述基础特性文件设计芯片;
读取所述库单元的时序信息;
根据所述应用文件中所述布局文件,抽取寄生参数;
根据所述库单元的时序信息、所述寄生参数、以及所述芯片的网表文件,进行时序分析,获取静态时序分析结果;
根据所述静态时序分析结果,优化获取芯片设计结果。
第二方面,本申请实施例还提供一种芯片设计优化装置,所述装置包括:
获取模块,用于获取门级网表和工艺物理信息文件,所述门级网表包括:一个库单元,所述工艺物理信息文件包括:所述库单元的物理信息文件;
设计优化模块,用于根据所述门级网表和所述工艺物理信息文件,对所述库单元优化设计,获取优化后的库单元,其中,优化内容包括:所述库单元的布局信息、管脚连接信息、电源布局信息。
可选的,所述设计优化模块,包括:
版图构建单元,用于根据所述门级网表和所述工艺物理信息文件,构建所述库单元对应的物理版图;
版图区域确定单元,用于根据所述物理版图进行调整,扩大所述库单元所在区域、并将所述库单元置于所述区域的中心,其中,所述区域中除所述库单元以外的位置用于摆放其他逻辑单元;
管脚连接单元,用于将所述库单元的输入输出管脚引出到次高层金属,确定所述库单元的管脚连接信息;
电容插入单元,用于在所述区域中插入电容单元,所述电容单元位于所述库单元的外围;
电源规划单元,用于对所述库单元进行电源规划,生成所述库单元的电源布局信息;
二极管插入单元,用于在所述库单元的输出管脚处插入二极管;
填充插入单元,用于在所述区域的空隙处插入填充单元。
可选的,所述版图区域确定单元,具体用于根据所述库单元的尺寸信息,横向扩大所述库单元所在区域的宽度、纵向扩大所述库单元所在区域的高度,并将所述库单元置于扩大后所述区域的中心。
可选的,所述管脚连接单元,具体用于根据所述门级网表中预设的输入输出管脚,采用所述物理版图的次高层金属进行布放,将所述库单元的输入输出管脚与所述门级网表中预设的输入输出管脚通过金属叠孔形式互连拉出,引出到所述次高层,确定所述库单元的管脚连接信息。
可选的,所述管脚连接单元,具体用于根据所述门级网表中预设的输入输出管脚和所述库单元的输入输出管脚的金属尺寸,采用所述次高层金属进行布放,将所述库单元的输入输出管脚与所述门级网表中预设的输入输出管脚通过多排金属叠孔形式互连拉出,引出到所述次高层,以使所述库单元的输入输出管脚的金属尺寸与最高层的金属宽度差距小于预设值。
可选的,所述设计优化模块之后,还包括:
验证模块,用于运行验证程序,对所述优化后的库单元进行设计验证,获取验证结果,其中,验证内容包括下述至少一项:设计规则、电压降、电迁移、天线效应。
可选的,所述设计优化模块之后,还包括:
特征抽取模块,用于根据所述优化后的库单元,抽取特征信息,所述特征信息包括不同类型的多个应用文件;所述应用文件包括下述至少一项:
基础特性文件,包括:所述库单元的管脚连接信息;
布局文件,包括:所述库单元的布局信息;
版图文件,包括:所述库单元的物理版图信息;
网表文件,包括:所述库单元的连接关系信息。
可选的,还包括:
文件调用模块,用于在芯片设计过程中,调用所述应用文件;
芯片设计模块,用于将所述应用文件中所述基础特性文件的文件名修改为所述库单元的名称,并运行所述基础特性文件设计芯片;
时序获取模块,用于读取所述库单元的时序信息;
参数抽取模块,用于根据所述应用文件中所述布局文件,抽取寄生参数;
时序分析模块,用于根据所述库单元的时序信息、所述寄生参数、以及所述芯片的网表文件,进行时序分析,获取静态时序分析结果;
时序优化模块,用于根据所述静态时序分析结果,优化获取芯片设计结果。
第三方面,本申请实施例还提供一种电子设备,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的程序指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述程序指令,以执行如第一方面任一所述的芯片设计优化方法的步骤。
第四方面,本申请实施例还提供一种计算机可读存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如第一方面任一所述的芯片设计优化方法的步骤。
本申请的有益效果是:
本申请提供的芯片设计优化方法、装置、电子设备及存储介质,通过优化库单元的布局信息和管脚连接信息,使得库单元可以通过驱动高层金属层实现长距离小延时,且通过优化电源布局信息,可以保证在实现长距离小延时的情况下,不会出现静态电压降的问题,相比于定制单元,可以有效节省时间成本、人力成本和制造成本。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的芯片设计优化方法的流程示意图一;
图2为本申请实施例提供的芯片设计优化方法的流程示意图二;
图3为本申请实施例提供的库单元的物理版图的布局设计图;
图4为本申请实施例提供的库单元信号管脚与金属层的连接示意图;
图5为本申请实施例提供的库单元的电源网络的示意图;
图6为本申请实施例提供的插入二极管的示意图;
图7为本申请实施例提供的插入填充单元的示意图;
图8为本申请实施例提供的芯片设计优化方法的流程示意图三;
图9为本申请实施例提供的芯片设计优化装置的结构示意图;
图10为本申请实施例提供的电子设备的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
此外,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本申请的实施例中的特征可以相互结合。
在对本申请所提供的芯片设计优化方法进行说明之前,需要说明本申请的芯片设计优化方法应用于电子设备中所安装并运行的芯片设计软件,一般可以为自动化布局布线软件,例如电子设计自动化(Electronics Design Automation,EDA)工具。
请参考图1,为本申请实施例提供的芯片设计优化方法的流程示意图一,如图1所示,该方法可以包括:
S101:获取门级网表和工艺物理信息文件,门级网表包括:一个库单元,工艺物理信息文件包括:库单元的物理信息文件。
在本实施例中,门级网表是描述库单元的逻辑连接关系的文件,其所实现的功能与库单元等价,库单元的物理信息文件包括:库单元的尺寸信息、端脚等信息以及子单元物理信息文件,子单元物理信息文件为构成库单元的标准单元的物理文件信息,包括标准单元的尺寸信息。
在一些实施例中,工艺物理信息文件中还包括各个金属层的最小宽度、最小间距以及物理设计规则等信息。
S102:根据门级网表和工艺物理信息文件,对库单元优化设计,获取优化后的库单元,其中,优化内容包括:库单元的布局信息、管脚连接信息、电源布局信息等,具体可以是根据需求配置,优化其中部分或全部,在此不作限制。
在本实施例中,根据门级网表和工艺物理信息文件,在布局布线工具生成库单元的物理版图,通过对库单元的物理版图的尺寸进行调整,确定库单元的布局信息,根据物理版图的金属层,调整库单元与金属层之间的管脚连接关系,使库单元的管脚连接至物理版图的高层金属层,确定库单元的管脚连接信息,根据库单元的布局信息和管脚连接信息,在物理版图中根据电源规划规则生成库单元的电源网络,确定库单元的电源布局信息,其中,电源布局信息用于指示库单元所在物理版图的每个金属层上的电源网络。
上述实施例提供的芯片设计优化方法,通过优化库单元的布局信息和管脚连接信息,使得库单元可以通过驱动高层金属层实现长距离小延时,且通过优化电源布局信息,可以保证在实现长距离小延时的情况下,不会出现静态电压降的问题,相比于定制单元,可以有效节省时间成本、人力成本和制造成本。
在一种可能的实现方式中,请参考图2,为本申请实施例提供的芯片设计优化方法的流程示意图二,如图2所示,上述S102根据门级网表和工艺物理信息文件,对库单元优化设计,获取优化后的库单元的过程,可以包括:
S201:根据门级网表和工艺物理信息文件,构建库单元对应的物理版图。
在本实施例中,将门级网表和工艺物理信息文件导入布局布线工具,根据门级网表中所描述的构成库单元的标准单元,在布局布线工具的布局页面上生成多个标准单元,根据工艺物理信息文件中规定的各个标准单元的尺寸信息,确定所生成的各个标准单元的尺寸,根据门级网表中描述的库单元的逻辑连接关系,对各个标准单元进行连接,以工艺物理信息文件中规定的库单元的尺寸信息作为摆放和连接各个标准单元的限制条件,在完成对各个标准单元的摆放和连接后,得到库单元的物理版图。
S202:根据物理版图进行调整,扩大库单元所在区域、并将库单元置于区域的中心,其中,区域中除库单元以外的位置用于摆放其他逻辑单元。
在本实施例中,对上述得到的库单元的物理版图的尺寸进行调整,扩大库单元所在区域的面积,将库单元摆放在该区域的中心位置,得到扩大后的物理版图。
在扩大后的物理版图中,除了库单元所处的中心位置外,其他位置用于摆放其他逻辑单元,以解决在调整库单元与金属层之间的管脚连接关系时可能引起的各种问题。
需要说明的是,在其他位置所摆放的逻辑单元的类型根据可能引起的问题的类型来决定。
S203:将库单元的输入输出管脚引出到次高层,确定库单元的管脚连接信息。
在本实施例中,为了保证库单元可以通过驱动最高层金属实现小延时,可以根据库单元的输入输出管脚在物理版图上的金属层级,通过金属将库单元的输入输出管脚依次往上层金属层引出来,直至到次高层金属,确定库单元的输入输出管脚与各个金属层之间的管脚连接信息。
当库单元需要驱动最高层金属获得小延迟时,只需要从次高层金属和最高层金属之间进行打孔即可,如此,不会因为在多个金属层之间进行堆叠式地打孔造成迂回绕线,从而避免了因为迂回绕线引入的额外电阻电容造成延时增大的问题。
需要说明的是,由于最高层金属需要用于进行电线规划和部分时钟树规划,因此,库单元的管脚不可以直接引出到最高层。
S204:在区域中插入电容单元,电容单元位于库单元的外围。
在本实施例中,根据区域中库单元的位置,在库单元外围的四周包裹电容单元,更进一步地,可以根据库单元的电压降需求,确定在库单元外围所包裹的电容单元的层数。
示例的,可以在库单元外围包裹两层电容单元,以解决库单元的动态电压降的问题,可以根据电容单元动态调整库单元的电压降。
S205:对库单元进行电源规划,生成库单元的电源布局信息。
在本实施例中,库单元的输入输出管脚是库单元的信号管脚,在完成对库单元的信号管脚的布线后,根据电源布局的基本规则,在除了最高层金属之外的各个金属层上完成对库单元的电源规划,确定库单元的电源管脚与所规划的电源之间的布线。
其中,对库单元的电源规划包括对库单元的供电电源和接地电源的规划,在每个金属层上,供电电源线和接地电源线交替平行排列,相邻金属层上的供电电源线和接地电源线相互垂直,对各个金属层上进行电源规划在于确定各个金属层上供电电源和接地电源之间的间距,以保证库单元的电源管脚与所规划的供电电源或接地电源连接后的电压降和电迁移满足需求。
S206:在库单元的输出管脚处插入二极管。
在本实施例中,根据库单元的输出管脚所连接的有效导体和天线比率确定库单元的输出管脚是否存在天线效应违反,其中,有效导体是指输出管脚连接且实际导致输出管脚产生天线效应违反的导体,天线比率等于有效导体的面积与输出管脚的面积之比,在确定库单元的输出管脚存在天线效应违反时,在库单元的输出管脚插入二极管,其中,插入的二极管数量根据天线效应违反的情况确定,所插入的二极管的数量必须保证天线效应违反消除。
S207:在区域的空隙处插入填充单元。
在本实施例中,填充单元是在完成对库单元的设置之后所插入的单元,填充单元用于填充库单元中各个逻辑单元之间的间隙,从而实现通过消除间隙来确定各个逻辑单元之间可以邻接。
具体的,在完成针对库单元的信号管脚的连线、电源网络的布局、电源管脚与电源网络的连线、电容单元和二极管的插入之后,在区域内的所有间隙中插入填充单元,以保证库单元中的各个逻辑单元之间可以邻接。
上述实施例提供的芯片设计优化方法,通过调整库单元所在区域的大小,将库单元的输入输出管脚引出到次高层,保证库单元在驱动最高层金属时具有小延时;在区域内插入电容单元,实现动态电压降的提供;对库单元进行电源规划,保证库单元的静态电压降;在库单元的输出管脚处插入二极管,解决天线效应违反的问题;在区域的空隙处插入填充单元,以保证逻辑单元的邻接。
在一种可能的实现方式中,上述S202根据物理版图进行调整,扩大库单元所在区域、并将库单元置于区域的中心的过程,可以包括:
根据库单元的尺寸信息,横向扩大库单元所在区域的宽度、纵向扩大库单元所在区域的高度,并将库单元置于扩大后区域的中心。
本实施例中,确定库单元所需要扩大的宽度和高度,根据库单元的宽度和高度,以及库单元所需要扩大的宽度和高度,确定扩大后的区域的宽度和高度,将库单元至于扩大后的区域中的中心。
在一些实施例中,可以根据自动化布局布线工具中电容单元的标准宽度,确定所需要扩大的宽度,根据自动化布局布线工具中规定的单元摆放的标准高度,确定所需要扩大的高度。
更进一步地,所需要扩大的宽度为电容单元的标准宽度的多倍,所需要扩大的高度为标准高度的多倍。示例的,所需要扩大的宽度为电容单元的标准宽度的3倍或4倍,所需要扩大的高度为标准高度的3倍。
在一种可能的实现方式中,上述S203将库单元的输入输出管脚引出到次高层,确定库单元的管脚连接信息,可以包括:
根据门级网表中预设的输入输出管脚,采用物理版图的次高层金属进行布放,将库单元的输入输出管脚与门级网表中预设的输入输出管脚通过金属叠孔形式互连拉出,引出到次高层,确定库单元的管脚连接信息。
在本实施例中,门级网表中预设的输入输出管脚为库单元对外的输入输出管脚,库单元的输入管脚与门级网表中定义的输入管脚连接,库单元的输出管脚与门级网表中定义的输出管脚连接,若外部的信号或外部单元需要与库单元的输入输出管脚连接,则与门级网表中定义的输入输出管脚连接即可。
为了使得库单元可以采用小延迟驱动最高层金属,可以将门级网表中定义的预设的输入输出管脚布放在次高层金属上,然后,根据库单元的输入输出管脚所在的金属层,通过金属叠孔将库单元的输入输出管脚从所在的金属层逐层向上引出,直至引出到次高层金属后,与预设的输入输出管脚通过金属叠孔连接,库单元的管脚连接信息,包括各个金属层之间连通的金属叠孔的位置信息。
在一些实施例中,上述根据门级网表中预设的输入输出管脚,采用物理版图的次高层金属进行布放,将库单元的输入输出管脚与门级网表中预设的输入输出管脚通过金属叠孔形式互连拉出,引出到次高层的过程,可以包括:
根据门级网表中预设的输入输出管脚和库单元的输入输出管脚的金属尺寸,采用次高层金属进行布放,将库单元的输入输出管脚与门级网表中预设的输入输出管脚通过多排金属叠孔形式互连拉出,引出到次高层,以使库单元的输入输出管脚的金属尺寸与最高层的金属宽度差距小于预设值。
在本实施例中,库单元的输入输出管脚的金属尺寸为输入输出管脚所在金属层的宽度,为了使得库单元可以采用小延迟驱动最高层金属,可以将门级网表中定义的预设的输入输出管脚布放在次高层金属上,之后,由于金属层的宽度逐层增加,可以通过金属通孔将库单元的输入输出管脚从所在的金属层逐层向上引出,直至引出到次高层金属后,与预设的输入输出管脚通过多排金属叠孔连接,通过金属通孔对各个金属层的连接,使得输入输出管脚所连接的金属层的金属宽度扩大至多倍金属宽度,当通过次高层金属与最高层金属连接时,使得输入输出管脚的宽度与最高层的金属宽度差距小于预设值,且用于连接各个金属层的过孔不会产生设计规则检查(Design Rule Check,DRC)的错误。
示例的,若最高层金属层的金属宽度为0.5微米,通过金属通孔将输入输出管脚引出至次高层金属,当通过次高层金属层与最高层金属层连接时,输入输出管脚的宽度也被扩大至近似于0.5微米。
在一些实施例中,用于连接各个金属层的金属通孔采用多排金属叠孔的形式,可以具有更小的电阻,降低延时。
上述实施例提供的芯片设计优化方法,通过将库单元的输入输出管脚与门级网表中预设的输入输出管脚通过金属叠孔的形式互连拉出,直至将库单元的输入输出管脚引出到次高层,以便在库单元需要驱动最高层时,具有最小的延时,且不需要迂回绕线,减少DRC错误。
示例的,写一个具有一个库单元的门级网表,命名为INV.v,若所选择的库单元为一个缓冲器单元inv,缓冲器单元inv具有输入管脚A和输出管脚Y,门级网表中只包括该缓冲器单元,网表设计包括一个输入管脚A’和一个输出管脚Y’,门级网表中规定了网表设计的输入管脚A’和缓冲器单元inv的输入管脚A相连,网表设计的输出管脚Y’和缓冲器单元inv的输出管脚Y相连。
示例的,请参考图3,为本申请实施例提供的库单元的物理版图的布局设计图,如图3所示,自动化布局布线工具根据门级网表和工艺物理信息文件构造物理版图,确定物理版图的布局大小为库单元尺寸横向扩大4个标准的电容单元的宽度,库单元尺寸纵向扩大3个标准高度,然后将库单元摆放在设计布局的中心位置。
示例的,请参考图4,为本申请实施例提供的库单元信号管脚与金属层的连接示意图一,请参考图4,为本申请实施例提供的库单元信号管脚与金属层的连接示意图二,如图4和图5所示,示例中的库单元的输入输出管脚所在的金属层为M10,将输入输出管脚通过金属层M10和M11之间的过孔L1引至于金属层M11,再通过金属层M11和M12之间的过孔L2引至于金属层M12,直至次高层金属。
示例的,请参考图6,为本申请实施例提供的插入二极管的示意图,如图6所示,在缓冲器单元inv的外围插入二极管,二极管与缓冲器单元inv的输出管脚金属互连。
示例的,请参考图7,为本申请实施例提供的插入填充单元的示意图,如图7所示,在缓冲器单元inv的设计布局区域内的间隙中插入填充单元。
在一种可能的实现方式中,上述S102根据门级网表和工艺物理信息文件,对库单元优化设计,获取优化后的库单元之后,该方法还可以包括:
运行验证程序,对优化后的库单元进行设计验证,获取验证结果,其中,验证内容包括下述至少一项:设计规则、电压降、电迁移、天线效应。
在本实施例中,通过上述对库单元的布局优化后,通过布局布线工具运行验证程序,验证程序用于对库单元的设计规则、电压降、电迁移和天线效应中的一种或多种进行验证,判断库单元的设计规则、电压降、电迁移和天线效应是否正确,若正确,确定库单元的设计优化完成。
在一种可能的实现方式中,上述S102根据门级网表和工艺物理信息文件,对库单元优化设计,获取优化后的库单元之后,该方法还可以包括:
根据优化后的库单元,抽取特征信息,特征信息包括不同类型的多个应用文件;应用文件包括下述至少一项:
基础特性文件,包括:库单元的管脚连接信息;
布局文件,包括:库单元的布局信息;
版图文件,包括:库单元的物理版图信息;
网表文件,包括:库单元的连接关系信息。
在本实施例中,为了后续使用优化后的库单元进行集成电路的布局布线,需要先将优化后的库单元的特征信息抽取并导出为对应的应用文件,以在使用优化后的库单元进行集成电路的布局布线时,直接调用优化后的库单元的特征信息所对应的应用文件。
其中,基础特性文件为lef文件,lef文件中所包括的特征信息是库单元的管脚连接信息,该管脚连接信息是库单元的输入输出管脚与各个金属层通过金属叠孔连接的信息。
布局文件为def文件,def文件中所包括的特征信息是库单元的布局信息,即库单元在设计布局中的物理位置信息,以及设计布局中电容单元、填充单元等的物理位置信息。
版图文件为gds文件,gds文件中所包括的特征信息是库单元的物理版图信息,gds文件是流片厂对集成电路设计进行芯片流片时所使用的文件。
网表文件为netlist文件,netlist文件所包含的特征信息是库单元的逻辑连接关系。
在一种可能的实现方式中,请参考图8,为本申请实施例提供的芯片设计优化方法的流程示意图三,如图8所示,该方法还可以包括:
S301:将应用文件中基础特性文件的文件名修改为库单元的名称,并运行基础特性文件设计芯片。
S302:读取库单元的时序信息。
S303:根据应用文件中布局文件,抽取寄生参数。
S304:根据库单元的时序信息、寄生参数、以及芯片的网表文件,进行时序分析,获取静态时序分析结果。
S305:根据静态时序分析结果,优化获取芯片设计结果。
在本实施例中,将应用文件中基础特性文件的文件名修改为库单元的名称,将应用文件中布局文件的文件名也修改为库单元的名称。
在将优化后的库单元应用于集成电路设计时,在集成电路设计的布局布线阶段自动化摆放库单元时,根据库单元的名称,调用与库单元的名称一致的基础特性文件,以使得自动化布局布线工具根据库单元的基础特征文件确定库单元的输入输出管脚与各个金属层之间的连接关系,并根据库单元的名称,调用与库单元的名称一致的布局文件,修改库单元所对应的设计布局在整个集成电路的版图中的尺寸大小。
在根据库单元的基础特性文件完成对集成电路设计的基本布局布线后,需要对集成电路设计的基本布局布线进行规则检查和电气检查,在完成规则检查和电气检查后,导出集成电路设计的布局文件和网表文件。
将集成电路设计的布局文件中所包括的库单元的名称修改为库单元后的网表设计的名称,根据集成电路设计的布局文件和库单元的布局文件,对连接各个库单元的导线上的寄生参数进行抽取,生成寄生参数文件SPEF寄生参数包括:寄生电容、寄生电阻、寄生电感等;然后,根据集成电路设计的网表文件、寄生参数文件以及库单元的时序信息,对集成电路设计进行静态时序分析,确定集成电路设计所存在的时序违例,通过对时序违例进行修复,得到时序优化后的集成电路设计,即芯片设计结果。其中,库单元的时序信息采用库单元原始的时序文件信息中记载的时序信息。
上述实施例提供的芯片设计优化方法,基于库单元的基础特性文件、布局文件和时序信息,以及芯片的网表文件对芯片设计进行时序分析,确定优化后的芯片设计。基于该库单元所设计的芯片,其时序延时远远小于采用原有的库单元所设计的芯片,即芯片的时序延时得到优化。
示例的,采用原有的库单元所设计的芯片的时序延时在0.61-0.63左右,采用优化的库单元所设计的芯片的时序延时在0.52-0.54左右,可以看出,优化后的库单元相比于原有的库单元,所设计的芯片的时序延时优化达到了12.9%左右。
在上述方法实施例的基础上,本申请实施例还提供一种芯片设计优化装置。请参考图9,为本申请实施例提供的芯片设计优化装置的结构示意图,如图9所示,该装置可以包括:
获取模块10,用于获取门级网表和工艺物理信息文件,门级网表包括:一个库单元,工艺物理信息文件包括:库单元的物理信息文件;
设计优化模块20,用于根据门级网表和工艺物理信息文件,对库单元优化设计,获取优化后的库单元,其中,优化内容包括:库单元的布局信息、管脚连接信息、电源布局信息。
可选的,设计优化模块20,包括:
版图构建单元,用于根据门级网表和工艺物理信息文件,构建库单元对应的物理版图;
版图区域确定单元,用于根据物理版图进行调整,扩大库单元所在区域、并将库单元置于区域的中心,其中,区域中除库单元以外的位置用于摆放其他逻辑单元;
管脚连接单元,用于将库单元的输入输出管脚引出到次高层金属,确定库单元的管脚连接信息;
电容插入单元,用于在区域中插入电容单元,电容单元位于库单元的外围;
电源规划单元,用于对库单元进行电源规划,生成库单元的电源布局信息;
二极管插入单元,用于在库单元的输出管脚处插入二极管;
填充插入单元,用于在区域的空隙处插入填充单元。
可选的,版图区域确定单元,具体用于根据库单元的尺寸信息,横向扩大库单元所在区域的宽度、纵向扩大库单元所在区域的高度,并将库单元置于扩大后区域的中心。
可选的,管脚连接单元,具体用于根据门级网表中预设的输入输出管脚,采用物理版图的次高层金属进行布放,将库单元的输入输出管脚与门级网表中预设的输入输出管脚通过金属叠孔形式互连拉出,引出到次高层,确定库单元的管脚连接信息。
可选的,管脚连接单元,具体用于根据门级网表中预设的输入输出管脚和库单元的输入输出管脚的金属尺寸,采用次高层金属进行布放,将库单元的输入输出管脚与门级网表中预设的输入输出管脚通过多排金属叠孔形式互连拉出,引出到次高层,以使库单元的输入输出管脚的金属尺寸与最高层的金属宽度差距小于预设值。
可选的,设计优化模块20之后,还包括:
验证模块,用于运行验证程序,对优化后的库单元进行设计验证,获取验证结果,其中,验证内容包括下述至少一项:设计规则、电压降、电迁移、天线效应。
可选的,设计优化模块20之后,还包括:
特征抽取模块,用于根据优化后的库单元,抽取特征信息,特征信息包括不同类型的多个应用文件;应用文件包括下述至少一项:
基础特性文件,包括:库单元的管脚连接信息;
布局文件,包括:库单元的布局信息;
版图文件,包括:库单元的物理版图信息;
网表文件,包括:库单元的连接关系信息。
可选的,还包括:
文件调用模块,用于在芯片设计过程中,调用应用文件;
芯片设计模块,用于将应用文件中基础特性文件的文件名修改为库单元的名称,并运行基础特性文件设计芯片;
时序获取模块,用于读取库单元的时序信息;
参数抽取模块,用于根据应用文件中布局文件,抽取寄生参数;
时序分析模块,用于根据库单元的时序信息、寄生参数、以及芯片的网表文件,进行时序分析,获取静态时序分析结果;
时序优化模块,用于根据静态时序分析结果,优化获取芯片设计结果。
上述装置用于执行前述实施例提供的方法,其实现原理和技术效果类似,在此不再赘述。
以上这些模块可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个特定集成电路(Application Specific Integrated Circuit,简称ASIC),或,一个或多个微处理器,或,一个或者多个现场可编程门阵列(Field Programmable Gate Array,简称FPGA)等。再如,当以上某个模块通过处理元件调度程序代码的形式实现时,该处理元件可以是通用处理器,例如中央处理器(Central Processing Unit,简称CPU)或其它可以调用程序代码的处理器。再如,这些模块可以集成在一起,以片上系统(system-on-a-chip,简称SOC)的形式实现。
请参考图10,为本申请实施例提供的电子设备的示意图,如图10所示,该电子设备100包括:处理器101、存储介质102和总线,存储介质102存储有处理器101可执行的程序指令,当电子设备00运行时,处理器101与存储介质102之间通过总线通信,处理器101执行程序指令,以执行上述方法实施例。具体实现方式和技术效果类似,这里不再赘述。
可选地,本发明还提供一种计算机可读存储介质,存储介质上存储有计算机程序,计算机程序被处理器运行时执行上述方法实施例。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取存储器(英文:Random Access Memory,简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
上仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (11)

1.一种芯片设计优化方法,其特征在于,所述方法包括:
获取门级网表和工艺物理信息文件,所述门级网表包括:一个库单元,所述工艺物理信息文件包括:所述库单元的物理信息文件;
根据所述门级网表和所述工艺物理信息文件,对所述库单元优化设计,获取优化后的库单元,其中,优化内容包括:所述库单元的布局信息、管脚连接信息、电源布局信息。
2.根据权利要求1所述的方法,其特征在于,所述根据所述门级网表和所述工艺物理信息文件,对所述库单元优化设计,获取优化后的库单元,包括:
根据所述门级网表和所述工艺物理信息文件,构建所述库单元对应的物理版图;
根据所述物理版图进行调整,扩大所述库单元所在区域、并将所述库单元置于所述区域的中心,其中,所述区域中除所述库单元以外的位置用于摆放其他逻辑单元;
将所述库单元的输入输出管脚引出到次高层金属,确定所述库单元的管脚连接信息;
在所述区域中插入电容单元,所述电容单元位于所述库单元的外围;
对所述库单元进行电源规划,生成所述库单元的电源布局信息;
在所述库单元的输出管脚处插入二极管;
在所述区域的空隙处插入填充单元。
3.根据权利要求2所述的方法,其特征在于,所述根据所述物理版图进行调整,扩大所述库单元所在区域、并将所述库单元置于所述区域的中心,包括:
根据所述库单元的尺寸信息,横向扩大所述库单元所在区域的宽度、纵向扩大所述库单元所在区域的高度,并将所述库单元置于扩大后所述区域的中心。
4.根据权利要求2所述的方法,其特征在于,所述将所述库单元的输入输出管脚引出到次高层,确定所述库单元的管脚连接信息,包括:
根据所述门级网表中预设的输入输出管脚,采用所述物理版图的次高层金属进行布放,将所述库单元的输入输出管脚与所述门级网表中预设的输入输出管脚通过金属叠孔形式互连拉出,引出到所述次高层,确定所述库单元的管脚连接信息。
5.根据权利要求4所述的方法,其特征在于,所述根据所述门级网表中预设的输入输出管脚,采用所述物理版图的次高层金属进行布放,将所述库单元的输入输出管脚与所述门级网表中预设的输入输出管脚通过金属叠孔形式互连拉出,引出到所述次高层,包括:
根据所述门级网表中预设的输入输出管脚和所述库单元的输入输出管脚的金属尺寸,采用所述次高层金属进行布放,将所述库单元的输入输出管脚与所述门级网表中预设的输入输出管脚通过多排金属叠孔形式互连拉出,引出到所述次高层,以使所述库单元的输入输出管脚的金属尺寸与最高层的金属宽度差距小于预设值。
6.根据权利要求1所述的方法,其特征在于,所述根据所述门级网表和工艺物理信息文件,对所述库单元优化设计,获取优化后的库单元之后,还包括:
运行验证程序,对所述优化后的库单元进行设计验证,获取验证结果,其中,验证内容包括下述至少一项:设计规则、电压降、电迁移、天线效应。
7.根据权利要求1所述的方法,其特征在于,所述根据所述门级网表和工艺物理信息文件,对所述库单元优化设计,获取优化后的库单元之后,还包括:
根据所述优化后的库单元,抽取特征信息,所述特征信息包括不同类型的多个应用文件;所述应用文件包括下述至少一项:
基础特性文件,包括:所述库单元的管脚连接信息;
布局文件,包括:所述库单元的布局信息;
版图文件,包括:所述库单元的物理版图信息;
网表文件,包括:所述库单元的连接关系信息。
8.根据权利要求7所述的方法,其特征在于,还包括:
在芯片设计过程中,调用所述应用文件;
将所述应用文件中所述基础特性文件的文件名修改为所述库单元的名称,并运行所述基础特性文件设计芯片;
读取所述库单元的时序信息;
根据所述应用文件中所述布局文件,抽取寄生参数;
根据所述库单元的时序信息、所述寄生参数、以及所述芯片的网表文件,进行时序分析,获取静态时序分析结果;
根据所述静态时序分析结果,优化获取芯片设计结果。
9.一种芯片设计优化装置,其特征在于,所述装置包括:
获取模块,用于获取门级网表和工艺物理信息文件,所述门级网表包括:一个库单元,所述工艺物理信息文件包括:所述库单元的物理信息文件;
设计优化模块,用于根据所述门级网表和所述工艺物理信息文件,对所述库单元优化设计,获取优化后的库单元,其中,优化内容包括:所述库单元的布局信息、管脚连接信息、电源布局信息。
10.一种电子设备,其特征在于,包括:处理器、存储介质和总线,所述存储介质存储有所述处理器可执行的程序指令,当电子设备运行时,所述处理器与所述存储介质之间通过总线通信,所述处理器执行所述程序指令,以执行如权利要求1至8任一所述的芯片设计优化方法的步骤。
11.一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1至8任一所述的芯片设计优化方法的步骤。
CN202311863485.2A 2023-12-29 2023-12-29 芯片设计优化方法、装置、电子设备及存储介质 Pending CN117592428A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311863485.2A CN117592428A (zh) 2023-12-29 2023-12-29 芯片设计优化方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311863485.2A CN117592428A (zh) 2023-12-29 2023-12-29 芯片设计优化方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN117592428A true CN117592428A (zh) 2024-02-23

Family

ID=89911723

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311863485.2A Pending CN117592428A (zh) 2023-12-29 2023-12-29 芯片设计优化方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117592428A (zh)

Similar Documents

Publication Publication Date Title
US6948145B2 (en) Tool suite for the rapid development of advanced standard cell libraries employing the connection properties of nets to identify potential pin placements
US10418354B2 (en) Integrated circuit and computer-implemented method of manufacturing the same
US8015522B2 (en) System for implementing post-silicon IC design changes
US8856710B2 (en) Tool and method for modeling interposer RC couplings
CN111950226A (zh) 芯片后端设计和版图设计方法、工具、芯片及存储介质
US20070266356A1 (en) IC Design Flow Enhancement With CMP Simulation
US7325218B2 (en) Wiring method, program, and apparatus
US6951007B2 (en) Wire layout design apparatus and method for integrated circuits
US7689964B2 (en) System and method for routing connections
US7398499B2 (en) Method of searching paths suffering from the electrostatic discharge in the process of an integrated circuit design
US7032190B2 (en) Integrated circuits, and design and manufacture thereof
CN116108802B (zh) 一种标准单元库确定方法、装置及系统
CN112380809A (zh) 一种标准单元以及标准单元库的物理规则验证方法、装置及电子设备
US8453095B2 (en) Systems and methods for creating frequency-dependent netlist
US8930871B2 (en) Methodology on developing metal fill as library device
US8671374B2 (en) Information processing apparatus
EP1436738A2 (en) Clock skew verification methodology for grid-based design
CN117592428A (zh) 芯片设计优化方法、装置、电子设备及存储介质
CN113515913B (zh) 一种stt-mram相关电路的磁性工艺设计方法
US7284223B2 (en) Wiring method, program, and apparatus
EP1538540A2 (en) Configurable circuit with cells having predefined functionality and configurable subcells
US7076759B2 (en) Methodology for generating a modified view of a circuit layout
US20030074643A1 (en) Unified database system to store, combine, and manipulate clock related data for grid-based clock distribution design
US10423754B1 (en) Electrostatic discharge cell placement using effective resistance
CN117933156B (zh) 基于门级网表的毛刺功耗优化方法、电子设备和介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination