CN113792519A - 对电路进行布局规划的方法、电子设备及存储介质 - Google Patents
对电路进行布局规划的方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113792519A CN113792519A CN202111365893.6A CN202111365893A CN113792519A CN 113792519 A CN113792519 A CN 113792519A CN 202111365893 A CN202111365893 A CN 202111365893A CN 113792519 A CN113792519 A CN 113792519A
- Authority
- CN
- China
- Prior art keywords
- circuit
- power supply
- ground grid
- data
- target
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/392—Floor-planning or layout, e.g. partitioning or placement
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Architecture (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本公开提供一种对电路进行布局规划的方法、电子设备及存储介质。该方法包括:接收第一电路布局规划数据;确定第一电路布局规划数据中与初始电路的硬核区域对应的第一电源地网格数据以及与初始电路的非硬核区域对应的第二电源地网格数据;存储第一电源地网格数据和第二电源地网格数据;删除第一电路布局规划数据中的第一电源地网格数据和第二电源地网格数据,得到第二电路布局规划数据;基于第二电路布局规划数据进行电路布局规划,得到第一中间电路;基于第一电源地网格数据和第二电源地网格数据,在第一中间电路中恢复电源地网格,得到第一目标电路;以及基于第一目标电路,输出电路的布局规划结果。
Description
技术领域
本公开实施例涉及集成电路技术领域,尤其涉及一种对电路进行布局规划的方法、电子设备及存储介质。
背景技术
当今电子设计自动化(EDA)技术已经应用于芯片设计的各个环节,显著提高了芯片设计的效率。但是在芯片布局规划(floorplan)环节,主要的工作还严重依赖工程师手工迭代完成,例如,通常的做法是通过混合摆放(mixed-place)的方法来解决布局规划问题。该方法将硬核(hard macros)和标准单元(standard cells)同时摆放,减少了工程师的工作量和布局规划设计时间。
本公开的发明人发现,现有的混合摆放方法由于无法在摆放过程中保留电源、地网格,导致存在以下技术问题至少其一:
1. 混合摆放不带电压降(IR drop)感知,布局规划确定后,有可能会导致后续流程无法彻底解决电压降问题或者因为要解决电压降问题加入更多的电源、地线导致局部绕线拥塞。
2. 要准确地评估布局规划的可绕通性,混合摆放的方法必须要完整重建芯片的电源、地网格,非常耗时。如果出现和硬核相关的绕线拥塞问题,需要迭代更新布局规划和电源、地网格,进一步延长了设计时间。
发明内容
有鉴于此,本公开提出了一种对电路进行布局规划的方法、电子设备及存储介质。
本公开第一方面,提供了一种对电路进行布局规划的方法,包括:
接收第一电路布局规划数据,所述第一电路布局规划数据对应于初始电路;
确定所述第一电路布局规划数据中与所述初始电路的硬核区域对应的第一电源地网格数据以及与所述初始电路的非硬核区域对应的第二电源地网格数据;
存储所述第一电源地网格数据和所述第二电源地网格数据;
删除所述第一电路布局规划数据中的所述第一电源地网格数据和所述第二电源地网格数据,得到第二电路布局规划数据;
基于所述第二电路布局规划数据进行电路布局规划,得到第一中间电路;
基于所述第一电源地网格数据和所述第二电源地网格数据,在所述第一中间电路中恢复电源地网格,得到第一目标电路;以及
基于所述第一目标电路,输出所述电路的布局规划结果。
本公开第二方面,提供了一种电子设备,包括:存储器,用于存储一组指令;以及至少一个处理器,配置为执行该组指令以进行如第一方面所述的方法。
本公开第三方面,提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储电子装置的一组指令,该组指令用于使所述电子装置执行第一方面所述的方法。
本公开实施例提供的对电路进行布局规划的方法、电子设备及存储介质,解决了现有技术在删除电源地网格数据之后不能恢复电源地网格而导致的难以进行后续电路分析的问题。
附图说明
为了更清楚地说明本公开或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本公开实施例的电子设备的示意图。
图2A示出了根据本公开实施例的示例性初始电路的示意图。
图2B示出了图2A的初始电路去掉硬核之后的示意图。
图2C示出了根据本公开实施例的一种示例性电源地网格的示意图。
图2D示出了根据本公开实施例的另一种示例性电源地网格的示意图。
图2E示出了根据本公开实施例的又一种示例性电源地网格的示意图。
图2F示出了根据本公开实施例的一种示例性电路布局的示意图。
图3A示出了根据本公开实施例的一种示例性中间电路的示意图。
图3B示出了根据本公开实施例的示例性目标区域的示意图。
图3C示出了根据本公开实施例的示例性电源地网格的示意图。
图3D示出了根据本公开实施例的另一示例性电源地网格的示意图。
图3E示出了根据本公开实施例的又一示例性电源地网格的示意图。
图4示出了根据本公开实施例的一种示例性目标电路的示意图。
图5A示出了根据本公开实施例的示例性电路的示意图。
图5B示出了根据本公开实施例的示例性第一中间电路的示意图。
图5C示出了根据本公开实施例的示例性第二中间电路的示意图。
图5D示出了根据本公开实施例的一种示例性目标电路的示意图。
图6A示出了根据本公开实施例的示例性电路的示意图。
图6B示出了根据本公开实施例的示例性第一中间电路的示意图。
图6C示出了根据本公开实施例的示例性第三中间电路的示意图。
图6D示出了根据本公开实施例的一种示例性目标电路的示意图。
图7示出了本公开实施例所提供的示例性方法的流程示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。
需要说明的是,除非另外定义,本公开使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本公开中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
图1示出了根据本公开实施例的电子设备100的示意图。电子设备100可以是运行EDA软件的电子设备,并可以对集成电路(例如,芯片设计)进行自动布局规划(floorplan)。如图1所示,电子设备100可以包括:处理器102、存储器104、网络接口106、外围接口108和总线110。其中,处理器102、存储器104、网络接口106和外围接口108通过总线110实现彼此之间在电子设备内部的通信连接。
处理器102可以是中央处理器(Central Processing Unit,CPU)、图像处理器、神经网络处理器(NPU)、微控制器(MCU)、可编程逻辑器件、数字信号处理器(DSP)、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路。处理器102可以用于执行与本公开描述的技术相关的功能。在一些实施例中,处理器102还可以包括集成为单一逻辑组件的多个处理器。如图1所示,处理器102可以包括多个处理器102a、102b和102c。
存储器104可以配置为存储数据(例如,指令集、计算机代码、中间数据等)。在一些实施例中,对电路进行布局规划的方法可以是存储器104中存储的计算机程序。如图1所示,存储器存储的数据可以包括程序指令以及要处理的数据。处理器102也可以访问存储器存储的程序指令和数据,并且执行程序指令以对要处理的数据进行操作。存储器104可以包括易失性存储装置或非易失性存储装置。在一些实施例中,存储器104可以包括随机访问存储器(RAM)、只读存储器(ROM)、光盘、磁盘、硬盘、固态硬盘(SSD)、闪存、存储棒等。
网络接口106可以配置为经由网络向电子设备100提供与其他外部设备的通信。该网络可以是能够传输和接收数据的任何有线或无线的网络。例如,该网络可以是有线网络、本地无线网络(例如,蓝牙、WiFi、近场通信(NFC)等)、蜂窝网络、因特网、或上述的组合。可以理解的是,网络的类型不限于上述具体示例。在一些实施例中,网络接口106可以包括任意数量的网络接口控制器(NIC)、射频模块、接收发器、调制解调器、路由器、网关、适配器、蜂窝网络芯片等的任意组合。
外围接口108可以配置为将电子设备100与一个或多个外围装置连接,以实现信息输入及输出。例如,外围装置可以包括键盘、鼠标、触摸板、触摸屏、麦克风、各类传感器等输入设备以及显示器、扬声器、振动器、指示灯等输出设备。
总线110可以被配置为在电子设备100的各个组件(例如处理器102、存储器104、网络接口106和外围接口108)之间传输信息,诸如内部总线(例如,处理器-存储器总线)、外部总线(USB端口、PCI-E总线)等。
需要说明的是,尽管上述主机架构仅示出了处理器102、存储器104、网络接口106、外围接口108和总线110,但是在具体实施过程中,该电子设备100的架构还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述电子设备100的架构中也可以仅包含实现本公开实施例方案所必需的组件,而不必包含图中所示的全部组件。
在本公开实施例中,布局规划(floorplan)可以是指,把硬核(hard macros)放置到芯片设计当中,并满足后续标准单元(standard cells)布局要求。广义的布局规划还可以包括设计裸片(Die)的高宽比、摆放I/O Pad、纯物理单元(Welltap、Endcap)插入、电源/地网络规划等。其中,硬核(hard macros)可以是指,预先设计好的IP核(例如memory、PLL),在数字芯片物理实现过程中,布局布线工具只能看到硬核的接口部分金属层,其余部分不可见或者用金属障碍层(metal OBS)覆盖。标准单元(standard cells)可以是指,预先设计好的基本的逻辑单元电路(例如,与非门、非门等)、时序单元电路(例如,触发器等)等。
在对电路进行布局规划的一开始,电子设备100可以接收第一电路布局规划数据,该第一电路布局规划数据对应于初始电路,该初始电路中包括电源地网格。该第一电路布局规划数据可以是用户提供的已经对集成电路(例如,芯片设计)进行了初步布局规划的初始电路的数据,其中可以包括与该初始电路的硬核(例如,memory)、电源地网格(亦即,电源网格线和/或地网格线)对应的数据。图2A示出了根据本公开实施例的示例性初始电路200的示意图。图2B示出了图2A的初始电路200去掉硬核之后的示意图。如图2A和图2B所示,该初始电路200,例如,可以包括memory202a和202b以及电源地网格204a、204b、206。
然后,电子设备100可以通过分析该第一电路布局规划数据来确定该第一电路布局规划数据中与初始电路200的硬核区域(例如,memory202a和202b所处区域)对应的第一电源地网格数据(例如,图2D的电源地网格204a和图2E的电源地网格204b对应的数据)以及与初始电路200的非硬核区域(例如,标准单元(图中未示出)所处区域)对应的第二电源地网格数据(例如,图2C的电源地网格206对应的数据)。
在确定电源地网格数据之后,电子设备100可以存储该第一电源地网格数据和该第二电源地网格数据。在一些实施例中,该第一电源地网格数据和该第二电源地网格数据可以分别存储,以便后续调用。在芯片设计中,尤其是低功耗设计中,采用多电源域的设计,方便控制电源电压或关断电源,而同一个电源域内的器件共用电源网格。因此,在另一些实施例中,若该第一电源地网格数据中包括不同电源域的电源地网格数据,则每个电源域对应的电源地网格数据可以分别存储。类似地,若该第二电源地网格数据中包括不同电源域的电源地网格数据,则每个电源域对应的电源地网格数据也可以分别存储。
在将电源地网格数据单独存储之后,电子设备100可以删除该第一电路布局规划数据中的第一电源地网格数据和第二电源地网格数据,得到不包括电源地网格数据的第二电路布局规划数据(对应的电路布局208如图2F所示)。
然后,电子设备100可以基于该第二电路布局规划数据进行电路布局规划,得到第一中间电路。图3A示出了基于不包括电源地网格数据的第二电路布局规划数据进行电路布局规划得到的第一中间电路300的示意图。如图3A所示,该电子设备100中运行的EDA软件可以对不包括电源地网格数据的第二电路布局规划数据进行自动布局规划(floorplan)而得到一个第一中间电路300,该第一中间电路300中除了对硬核(例如,memory202a和202b)进行了重新规划外,还需要加入标准单元210一起进行重新规划,以形成了如图3A所示的电路结构。在一些实施例中,该自动布局规划(floorplan)可以基于混合摆放(mixed-place)的方法来实现,在此不再赘述。在自动布局规划(floorplan)中,例如,还可以同时考虑时序约束、绕通性约束、面积和线长优化等因素进行电路布局规划。
在重新进行布局规划之后,电子设备100可以基于前述的第一电源地网格数据和第二电源地网格数据,在第一中间电路300中恢复电源地网格以得到第一目标电路,进而基于该第一目标电路,输出电路布局规划结果。
在一些实施例中,在第一中间电路300中恢复电源地网格时,电子设备100可以先恢复非硬核区域对应的电源地网格,然后恢复硬核区域对应的电源地网格。
在恢复非硬核区域对应的电源地网格时,例如,电子设备100可以根据前述的第二电源地网格数据,确定网格重复单元。
例如,电子设备100可以根据前述的第二电源地网格数据先确定初始电路200的硬核区域和非硬核区域的交界处的目标区域,例如,图2C的目标区域2062。该目标区域2062的选取方式可以是,例如,在初始电路200的硬核区域的附近,选取边长为500根绕线轨道的正方形区域。其中,绕线轨道(routing track)是指,在布线区域每一层金属层按一定间距画好绕线轨道,能保证绕线器沿着绕线轨道走线不会违反基本的设计规则,其中,绕线轨道的方向分横向和纵向,横向和纵向的绕线轨道交叉点为网格点。可以知道,目标区域2062中可以包括多个网格点。
图3B示出了根据本公开实施例的示例性目标区域2062的示意图。如图3B所示,其中用横纵交叉的虚线代表横向和纵向的绕线轨道,其中的交叉点为网格点。电子设备100可以根据目标区域2062对应的第二电源地网格数据来确定网格点上是否有电源线或地线的覆盖,若有则将该网格点标记为1,反之则标记为0,由此可以得到一个数组。然后,可以在数组中查找得到最小重复字符串。例如,如图3B所示,黑色实线指代该位置处存在电源线或地线的覆盖,可以看出,走线2064对应的3个相邻网格点对应的字符串“111”即为最小重复字符串。然后,电子设备100可以基于该最小重复字符串,生成该网格重复单元。例如,根据该字符串映射回相应的电源/地金属线以形成一个网格填充模板(filler pattern),亦即网格重复单元。
在确定网格重复单元之后,电子设备100可以基于该网格重复单元和前述的第二电源地网格数据,形成初始电源地网格,例如,利用网格重复单元填充第二电源地网格数据对应的电源地网格。图3C示出了利用网格重复单元填充电源地网格206之后得到的初始电源地网格302。在填充电源地网格206时,例如,可以采用从下到上、从左到右的顺序依次填满电源地网格206的空白区域。
接下来,电子设备100可以确定第一中间电路300中的硬核区域(例如,图3A中memory202a和202b所处区域),然后删除该硬核区域对应的电源地网格,得到图3D所示的电源地网格304。
在将与第一中间电路300中的硬核区域对应的电源地网格删除后,电子设备100可以基于前述的第一电源地网格数据对应填充该初始电源地网格302中被删除的电源地网格,形成目标电源地网格306。图3E示出了在电源地网格304中填充电源地网格204a和204b之后得到的目标电源地网格306。
接着,电子设备100可以基于目标电源地网格306和第一中间电路300,形成第一目标电路400,如图4所示。此时,电子设备100可以基于该第一目标电路400,输出电路布局规划结果,例如,展示具有该第一目标电路400的界面(UI)。
到此,就完成了在删除电源地网格之后进行电路布局规划并恢复电源地网格的过程,解决了现有技术在删除电源地网格数据之后不能恢复电源地网格而导致的难以进行后续电路分析的问题。
在得到第一目标电路400之后,电子设备100则可以开始对第一目标电路400进行进一步的分析、优化。
电压降(IR drop)可以是指,芯片的供电网络(power delivery network,简称PDN)由于自身电阻产生的供电电压下降,严重的情况可能会导致芯片的器件无法正常工作在设定电压而引起性能的下降甚至功能错误。
因此,为了优化该第一目标电路400,在一些实施例中,电子设备100还可以对第一目标电路400进行电压降分析。
在一些实施例中,例如,电子设备100可以先对该第一目标电路400进行电压降分析以确定该第一目标电路中是否存在电压降热点区域。图5A示出了根据本公开实施例的示例性电路500的示意图。假设第一目标电路为图5A所示的电路500,例如,通过电压降分析可以确定,区域502为电压降热点区域,因此,电子设备100可以确定该第一目标电路中存在电压降热点区域。
接着,电子设备100可以进一步确定该区域502是否与第一目标电路的硬核区域(例如,memory202a和202b对应的区域)相关(例如,该区域502在两个硬核之间)。若该区域502与电路500的硬核区域不相关,则电子设备100可以完成电压降分析,不对电路500进行进一步处理或者再进行其他优化。若该区域502与电路500的硬核区域相关,则电子设备100可以基于前述的第二电路布局规划数据进行以该电压降热点区域为约束的电路布局规划,得到第二中间电路。在形成第二中间电路时,可以基于第一中间电路来进行重新规划。图5B和图5C分别示出了根据本公开实施例的示例性第一中间电路504和第二中间电路506的示意图。如图5B所示,例如,可以以具有电压降热点的区域502为中心区域,将第一中间电路504与该区域502相邻的硬核区域向远离所述电压降热点区域的方向移动单位距离后形成第二中间电路506,如图5C所示。该单位距离可以根据需要进行设定,具体参数在此不做限制。
然后,可以参考前述的恢复电源地网格的方式,基于前述的第一电源地网格数据和第二电源地网格数据,在第二中间电路506中恢复电源地网格,得到第二目标电路508,如图5D所示。在得到第二目标电路508之后,电子设备100同样可以基于该第二目标电路,输出电路布局规划结果。例如,展示具有该第二目标电路508的界面(UI)。
在一些实施例中,电子设备100可以重复执行上述电压降分析的步骤,直至电压降热点区域全部消除或无法进一步减少为止。
绕线拥塞可以是指,芯片在布线的时候,当可利用的布线资源少于所需要的布线资源时,就会发生绕线拥塞。
因此,为了进一步优化该第一目标电路400或第二目标电路508,在一些实施例中,电子设备100还可以对第一目标电路400或第二目标电路508进行绕线拥塞分析。
在一些实施例中,例如,电子设备100可以先对电路进行绕线拥塞分析以确定该电路中是否存在拥塞热点区域。图6A示出了根据本公开实施例的示例性电路600的示意图。假设第一目标电路或第二目标电路为图6A所示的电路600,例如,通过绕线拥塞分析可以确定,区域602为拥塞热点区域,因此,电子设备100可以确定该第一目标电路中存在拥塞热点区域。
接着,电子设备100可以进一步确定该具有拥塞热点的区域602是否与该电路600的硬核区域(例如,memory202a和202b对应的区域)相关(例如,因为硬核区域的布局导致绕线拥塞)。若该区域602与电路600的硬核区域不相关,则电子设备100可以完成绕线拥塞分析,不对电路600进行进一步处理或者再进行其他优化。若该区域602与电路600的硬核区域相关,则电子设备100可以基于前述的第二电路布局规划数据进行以该具有拥塞热点的区域602为约束的电路布局规划,得到第三中间电路。在形成第三中间电路时,可以基于第一中间电路或第二中间电路来进行重新规划。图6B和图6C分别示出了根据本公开实施例的示例性第一中间电路604和第三中间电路606的示意图。如图6B所示,例如,可以确定第一中间电路604中与该区域602距离最近的硬核区域(例如,memory202a对应的区域),然后将与所述拥塞热点区域距离最近的硬核区域向远离所述拥塞热点区域的方向移动单位距离,并将所述拥塞热点区域内的标准单元进行重新布局规划后形成第三中间电路606,如图6C所示。该单位距离可以根据需要进行设定,具体参数在此不做限制。
然后,可以参考前述的恢复电源地网格的方式,基于所述第一电源地网格数据和所述第二电源地网格数据,在所述第三中间电路606中恢复电源地网格,得到第三目标电路608,如图6D所示。在得到第三目标电路608之后,电子设备100同样可以基于该第三目标电路,输出电路布局规划结果。例如,展示具有该第三目标电路608的界面(UI)。
在一些实施例中,电子设备100可以重复执行上述绕线拥塞分析的步骤,直至拥塞热点区域全部消除或无法进一步减少为止。
图7为根据本公开实施例的对电路进行布局规划的方法700的流程图。该方法700可由电子设备100实施。参照图7所示,该方法700可以包括如下步骤。
在步骤702,电子设备100可以接收第一电路布局规划数据,所述第一电路布局规划数据对应于初始电路。
在步骤704,电子设备100可以确定所述第一电路布局规划数据中与所述初始电路的硬核区域对应的第一电源地网格数据以及与所述初始电路的非硬核区域对应的第二电源地网格数据。
在步骤706,电子设备100可以存储所述第一电源地网格数据和所述第二电源地网格数据。
在步骤708,电子设备100可以删除所述第一电路布局规划数据中的所述第一电源地网格数据和所述第二电源地网格数据,得到第二电路布局规划数据。
在步骤710,电子设备100可以基于所述第二电路布局规划数据进行电路布局规划,得到第一中间电路。
在步骤712,电子设备100可以基于所述第一电源地网格数据和所述第二电源地网格数据,在所述第一中间电路中恢复电源地网格,得到第一目标电路。
在一些实施例中,基于所述第一电源地网格数据和所述第二电源地网格数据,在所述第一中间电路中恢复电源地网格,得到第一目标电路,包括:根据所述第二电源地网格数据,确定网格重复单元;基于所述网格重复单元和所述第二电源地网格数据,形成初始电源地网格;确定所述第一中间电路中的硬核区域;删除所述初始电源地网格中与所述第一中间电路的硬核区域对应的电源地网格;基于所述第一电源地网格数据对应填充所述初始电源地网格中被删除的电源地网格,形成目标电源地网格;以及基于所述目标电源地网格和所述第一中间电路,形成所述第一目标电路。
在一些实施例中,根据所述第二电源地网格数据,确定网格重复单元,包括:确定所述初始电路的硬核区域和非硬核区域的交界处的目标区域,所述目标区域中包括多个网格点;根据与所述目标区域对应的所述第二电源地网格数据,对所述目标区域的所述多个网格点进行标记以生成数组,其中,与电源线或地线对应的网格点标记为1,剩余网格点标记为0;在所述数组中查找得到最小重复字符串;以及基于所述最小重复字符串,生成所述网格重复单元。
在步骤714,电子设备100可以基于所述第一目标电路,输出所述电路的布局规划结果。
在一些实施例中,方法700还包括:对所述第一目标电路进行电压降分析以确定所述第一目标电路中是否存在电压降热点区域;响应于确定所述第一目标电路中存在电压降热点区域,确定所述电压降热点区域是否与所述第一目标电路的硬核区域相关;响应于确定所述电压降热点区域与所述第一目标电路的硬核区域相关,基于所述第二电路布局规划数据进行以所述电压降热点区域为约束的电路布局规划,得到第二中间电路;基于所述第一电源地网格数据和所述第二电源地网格数据,在所述第二中间电路中恢复电源地网格,得到第二目标电路;以及基于所述第二目标电路,输出所述电路的布局规划结果。
在一些实施例中,基于所述第二电路布局规划数据进行以所述电压降热点区域为约束的电路布局规划,得到第二中间电路,包括:
以所述电压降热点区域为中心区域,将所述第一中间电路与所述电压降热点区域相邻的硬核区域向远离所述电压降热点区域的方向移动单位距离。
在一些实施例中,方法700还包括:对所述第一目标电路进行绕线拥塞分析以确定所述第一目标电路中是否存在拥塞热点区域;响应于确定所述第一目标电路中存在拥塞热点区域,确定所述拥塞热点区域是否与所述第一目标电路的硬核区域相关;响应于确定所述拥塞热点区域与所述第一目标电路的硬核区域相关,基于所述第二电路布局规划数据进行以所述拥塞热点区域为约束的电路布局规划,得到第三中间电路;基于所述第一电源地网格数据和所述第二电源地网格数据,在所述第三中间电路中恢复电源地网格,得到第三目标电路;以及基于所述第三目标电路,输出所述电路的布局规划结果。
在一些实施例中,基于所述第二电路布局规划数据进行以所述拥塞热点区域为约束的电路布局规划,得到第三中间电路,包括:确定所述第一中间电路中与所述拥塞热点区域距离最近的硬核区域;以及将所述与所述拥塞热点区域距离最近的硬核区域向远离所述拥塞热点区域的方向移动单位距离,并将所述拥塞热点区域内的标准单元进行重新布局规划。
需要说明的是,本公开的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本公开的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。
本公开实施例还提供了一种电子设备,包括存储器,用于存储一组指令;以及至少一个处理器,配置为执行改组指令以使得所述计算装置执行本公开实施例提供的方法700。
本公开实施例还提供了一种非暂态计算机可读存储介质,非暂态计算机可读存储介质存储计算机的一组指令,该组指令用于在被执行时使所述计算机执行本公开实施例提供的方法700。
上述对本公开的一些实施例进行了描述。其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。 在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开的不同方面的许多其它变化,为了简明它们没有在细节中提供。
尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态RAM(DRAM))可以使用所讨论的实施例。
本公开旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (9)
1.一种对电路进行布局规划的方法,包括:
接收第一电路布局规划数据,所述第一电路布局规划数据对应于初始电路;
确定所述第一电路布局规划数据中与所述初始电路的硬核区域对应的第一电源地网格数据以及与所述初始电路的非硬核区域对应的第二电源地网格数据;
存储所述第一电源地网格数据和所述第二电源地网格数据;
删除所述第一电路布局规划数据中的所述第一电源地网格数据和所述第二电源地网格数据,得到第二电路布局规划数据;
基于所述第二电路布局规划数据进行电路布局规划,得到第一中间电路;
基于所述第一电源地网格数据和所述第二电源地网格数据,在所述第一中间电路中恢复电源地网格,得到第一目标电路;以及
基于所述第一目标电路,输出所述电路的布局规划结果。
2.如权利要求1所述的方法,其中,基于所述第一电源地网格数据和所述第二电源地网格数据,在所述第一中间电路中恢复电源地网格,得到第一目标电路,包括:
根据所述第二电源地网格数据,确定网格重复单元;
基于所述网格重复单元和所述第二电源地网格数据,形成初始电源地网格;
确定所述第一中间电路中的硬核区域;
删除所述初始电源地网格中与所述第一中间电路的硬核区域对应的电源地网格;
基于所述第一电源地网格数据对应填充所述初始电源地网格中被删除的电源地网格,形成目标电源地网格;以及
基于所述目标电源地网格和所述第一中间电路,形成所述第一目标电路。
3.如权利要求2所述的方法,其中,根据所述第二电源地网格数据,确定网格重复单元,包括:
根据所述第二电源地网格数据,确定所述初始电路的硬核区域和非硬核区域的交界处的目标区域,所述目标区域中包括多个网格点;
根据与所述目标区域对应的所述第二电源地网格数据,对所述目标区域的所述多个网格点进行标记以生成数组,其中,与电源线或地线对应的网格点标记为1,剩余网格点标记为0;
在所述数组中查找得到最小重复字符串;以及
基于所述最小重复字符串,生成所述网格重复单元。
4.如权利要求1所述的方法,还包括:
对所述第一目标电路进行电压降分析以确定所述第一目标电路中是否存在电压降热点区域;
响应于确定所述第一目标电路中存在电压降热点区域,确定所述电压降热点区域是否与所述第一目标电路的硬核区域相关;
响应于确定所述电压降热点区域与所述第一目标电路的硬核区域相关,基于所述第二电路布局规划数据进行以所述电压降热点区域为约束的电路布局规划,得到第二中间电路;
基于所述第一电源地网格数据和所述第二电源地网格数据,在所述第二中间电路中恢复电源地网格,得到第二目标电路;以及
基于所述第二目标电路,输出所述电路的布局规划结果。
5.如权利要求4所述的方法,其中,基于所述第二电路布局规划数据进行以所述电压降热点区域为约束的电路布局规划,得到第二中间电路,包括:
以所述电压降热点区域为中心区域,将所述第一中间电路与所述电压降热点区域相邻的硬核区域向远离所述电压降热点区域的方向移动单位距离。
6.如权利要求1所述的方法,还包括:
对所述第一目标电路进行绕线拥塞分析以确定所述第一目标电路中是否存在拥塞热点区域;
响应于确定所述第一目标电路中存在拥塞热点区域,确定所述拥塞热点区域是否与所述第一目标电路的硬核区域相关;
响应于确定所述拥塞热点区域与所述第一目标电路的硬核区域相关,基于所述第二电路布局规划数据进行以所述拥塞热点区域为约束的电路布局规划,得到第三中间电路;
基于所述第一电源地网格数据和所述第二电源地网格数据,在所述第三中间电路中恢复电源地网格,得到第三目标电路;以及
基于所述第三目标电路,输出所述电路的布局规划结果。
7.如权利要求6所述的方法,其中,基于所述第二电路布局规划数据进行以所述拥塞热点区域为约束的电路布局规划,得到第三中间电路,包括:
确定所述第一中间电路中与所述拥塞热点区域距离最近的硬核区域;以及
将所述与所述拥塞热点区域距离最近的硬核区域向远离所述拥塞热点区域的方向移动单位距离,并将所述拥塞热点区域内的标准单元进行重新布局规划。
8.一种电子设备,包括:
存储器,用于存储一组指令;以及
至少一个处理器,配置为执行该组指令以进行如权利要求1至7任意一项所述的方法。
9.一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机的一组指令,该组指令用于在被执行时使所述计算机执行权利要求1至7任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111365893.6A CN113792519B (zh) | 2021-11-18 | 2021-11-18 | 对电路进行布局规划的方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111365893.6A CN113792519B (zh) | 2021-11-18 | 2021-11-18 | 对电路进行布局规划的方法、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113792519A true CN113792519A (zh) | 2021-12-14 |
CN113792519B CN113792519B (zh) | 2022-02-11 |
Family
ID=78877351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111365893.6A Active CN113792519B (zh) | 2021-11-18 | 2021-11-18 | 对电路进行布局规划的方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113792519B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116151179A (zh) * | 2022-10-31 | 2023-05-23 | 芯行纪科技有限公司 | 芯片设计的布局规划方法及相关设备 |
CN116956807A (zh) * | 2023-09-19 | 2023-10-27 | 芯行纪科技有限公司 | 芯片设计的全局布线拥塞图确定方法及相关设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1332534A (zh) * | 2000-09-29 | 2002-01-23 | 深圳市中兴通讯股份有限公司 | 一种网格状电源线的布置方法与电路结构 |
CN1828864A (zh) * | 2005-03-03 | 2006-09-06 | 联华电子股份有限公司 | 实现电路布局的方法 |
US20090132988A1 (en) * | 2007-11-15 | 2009-05-21 | Chia-Lin Chuang | Power mesh arrangement method utilized in an integrated circuit having multiple power domains |
CN101833590A (zh) * | 2009-03-11 | 2010-09-15 | 新思科技有限公司 | 使用简化网表来生成布图规划的方法和设备 |
CN107944186A (zh) * | 2017-12-13 | 2018-04-20 | 嘉兴倚韦电子科技有限公司 | 集成电路半定制后端设计高效布局规划方法 |
-
2021
- 2021-11-18 CN CN202111365893.6A patent/CN113792519B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1332534A (zh) * | 2000-09-29 | 2002-01-23 | 深圳市中兴通讯股份有限公司 | 一种网格状电源线的布置方法与电路结构 |
CN1828864A (zh) * | 2005-03-03 | 2006-09-06 | 联华电子股份有限公司 | 实现电路布局的方法 |
US20090132988A1 (en) * | 2007-11-15 | 2009-05-21 | Chia-Lin Chuang | Power mesh arrangement method utilized in an integrated circuit having multiple power domains |
CN101833590A (zh) * | 2009-03-11 | 2010-09-15 | 新思科技有限公司 | 使用简化网表来生成布图规划的方法和设备 |
CN107944186A (zh) * | 2017-12-13 | 2018-04-20 | 嘉兴倚韦电子科技有限公司 | 集成电路半定制后端设计高效布局规划方法 |
Non-Patent Citations (1)
Title |
---|
叶静: ""银河飞腾"DSP的IP核物理设计与优化", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116151179A (zh) * | 2022-10-31 | 2023-05-23 | 芯行纪科技有限公司 | 芯片设计的布局规划方法及相关设备 |
CN116151179B (zh) * | 2022-10-31 | 2023-11-03 | 芯行纪科技有限公司 | 芯片设计的布局规划方法及相关设备 |
CN116956807A (zh) * | 2023-09-19 | 2023-10-27 | 芯行纪科技有限公司 | 芯片设计的全局布线拥塞图确定方法及相关设备 |
CN116956807B (zh) * | 2023-09-19 | 2023-12-01 | 芯行纪科技有限公司 | 芯片设计的全局布线拥塞图确定方法及相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113792519B (zh) | 2022-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113792519B (zh) | 对电路进行布局规划的方法、电子设备及存储介质 | |
CN111368493B (zh) | 一种基于稀疏网格的自动版图布线生成方法 | |
US8418115B1 (en) | Routability based placement for multi-die integrated circuits | |
US20180261590A1 (en) | Integrated circuit and computer-implemented method of manufacturing the same | |
CN109800534B (zh) | Fpga设计电路图生成方法、装置、计算机设备及存储介质 | |
CN116911246B (zh) | 芯片设计的布线规划方法及相关设备 | |
US9740815B2 (en) | Electromigration-aware integrated circuit design methods and systems | |
US20160267210A1 (en) | Methods, systems, and computer program products providing layout data for integrated circuits | |
CN116151179B (zh) | 芯片设计的布局规划方法及相关设备 | |
CN108416077A (zh) | 用于通过考虑后段制程来设计集成电路的方法和计算系统 | |
US10366191B2 (en) | Layout of large block synthesis blocks in integrated circuits | |
CN116227407B (zh) | 形成物理版图的模块边界的方法及相关设备 | |
CN116822452A (zh) | 芯片布局优化方法及相关设备 | |
CN116362190A (zh) | 芯片设计的交互布局规划方法及相关设备 | |
CN117521586B (zh) | 芯片设计的布局规划方法及相关设备 | |
CN117688895B (zh) | 电路图生成方法、计算机设备及存储介质 | |
CN116956807B (zh) | 芯片设计的全局布线拥塞图确定方法及相关设备 | |
CN112287631A (zh) | 电源金属线规划方法 | |
US7761835B2 (en) | Semiconductor device design method, semiconductor device design system, and computer program for extracting parasitic parameters | |
CN117371382B (zh) | 标准单元的布设处理方法、装置、及存储介质 | |
CN116956804B (zh) | 一种缓冲器的版图构造方法、时钟树生成方法及装置 | |
US11144700B1 (en) | Grouping nets to facilitate repeater insertion | |
US11829698B2 (en) | Guided power grid augmentation system and method | |
CN117291140A (zh) | 自动布线工具的绕线违例减少方法、装置、存储介质及电子终端 | |
US20200201954A1 (en) | Method of designing a layout for a semiconductor integrated circuit |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |