CN113688587B - 一种电路布图的生成方法、装置、计算机设备及存储介质 - Google Patents
一种电路布图的生成方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN113688587B CN113688587B CN202111012325.8A CN202111012325A CN113688587B CN 113688587 B CN113688587 B CN 113688587B CN 202111012325 A CN202111012325 A CN 202111012325A CN 113688587 B CN113688587 B CN 113688587B
- Authority
- CN
- China
- Prior art keywords
- level
- stage
- functional block
- netlist
- gate
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 107
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 101
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 101
- 230000008569 process Effects 0.000 claims abstract description 49
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 45
- 238000006243 chemical reaction Methods 0.000 claims abstract description 17
- 230000006870 function Effects 0.000 claims description 92
- 238000001514 detection method Methods 0.000 claims description 25
- 230000004044 response Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004891 communication Methods 0.000 claims description 5
- 230000003542 behavioural effect Effects 0.000 abstract description 7
- 230000006399 behavior Effects 0.000 description 12
- 238000013461 design Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 9
- 230000010354 integration Effects 0.000 description 6
- 230000009191 jumping Effects 0.000 description 6
- 238000001308 synthesis method Methods 0.000 description 5
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012938 design process Methods 0.000 description 2
- 238000010501 iterative synthesis reaction Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/327—Logic synthesis; Behaviour synthesis, e.g. mapping logic, HDL to netlist, high-level language to RTL or netlist
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/337—Design optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/04—Constraint-based CAD
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)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
本公开提供了一种电路布图的生成方法、装置、计算机设备及存储介质,包括:获取集成电路的多级功能块分别对应的描述信息;按照级数从低到高的顺序对各级功能块进行下述综合过程:针对各级功能块中的非末级功能块,根据该级功能块对应的下级功能块的网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表;基于级数最高的功能块对应的门级网表,生成目标集成电路的电路布图。本公开通过从低到高的综合方法,提升将行为级描述电路和/或寄存器转换级电路转换为门级电路的效率。
Description
技术领域
本公开涉及集成电路技术领域,具体而言,涉及一种电路布图的生成方法、装置、计算机设备及存储介质。
背景技术
集成电路的设计步骤通常包括:生成行为级描述、生成寄存器转换级电路(Register Transfer Level,RTL)描述、将行为级描述或者RTL级描述转换为门级网表、以及基于门级网表生成物理版图(集成电路布图)。
当前将行为级描述或者RTL级描述转换为门级网表的方式存在效率低的问题。
发明内容
本公开实施例至少提供一种电路布图的生成方法、装置、计算机设备及存储介质。
第一方面,本公开实施例提供了一种电路布图的生成方法,包括:获取集成电路的多级功能块分别对应的描述信息;按照级数从低到高的顺序对各级功能块进行下述综合过程:针对各级功能块中的非末级功能块,根据该级功能块对应的下级功能块的网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表;基于级数最高的功能块对应的门级网表,生成目标集成电路的电路布图。
这样,通过从低到高的综合方法,在得到下级满足时序约束条件的门级网表后,利用该门级网表进行更高级数的综合过程,从而针对每级功能块进行综合时,不需要再对其下级功能块的门级网表进行调整,提升将行为级描述电路和/或寄存器转换级电路转换为门级电路的效率。
一种可选的实施方式中,还包括:针对各级功能块中的末级功能块,根据所述末级功能块对应的描述信息,对所述末级功能块进行综合,得到所述末级功能块对应的满足所述预设时序约束条件的门级网表。
这样,可以得到满足预设时序约束条件的末级功能块对应的门级网表,为后续非末级功能块的综合过程做出准备,以便在对非末级功能块进行综合时,能够直接利用末级功能块对应的门级网表来进行,在保证了末级功能块对应的门级网表的时序的条件下,使得非末级功能块的综合能够更快达到时序要求。
一种可选的实施方式中,所述根据所述末级功能块对应的描述信息,对所述末级功能块进行综合,得到所述末级功能块对应的满足预设时序约束条件的门级网表,包括:基于所述末级功能块对应的描述信息、以及所述末级功能块在当前迭代周期对应的综合参数,对所述末级功能块进行综合,得到所述末级功能块在当前迭代周期的备选门级网表;响应于所述末级功能块对应的备选门级网表满足所述预设时序约束条件,将满足所述预设时序约束条件的备选门级网表,作为所述末级功能块对应的门级网表。
这样,通过迭代综合的过程,可以得到满足预设时序约束条件的末级功能块对应的门级网表,并且当获取到满足预设时序约束条件的末级功能块对应的门级网表时,停止迭代,提高综合效率。
一种可选的实施方式中,还包括:响应于所述末级功能块在当前迭代周期的备选门级网表不满足所述预设时序约束条件,对当前迭代周期对应的综合参数进行调整,得到下一迭代周期对应的综合参数,并进入下一迭代周期。
这样,通过调整综合参数,进而可以得到满足预设时序约束条件的末级功能块对应的门级网表。
一种可选的实施方式中,所述综合参数包括下述至少一种:所述末级功能块对应的输入信号的延迟率、和/或延迟时间;所述末级功能块对应的输出信号的延迟率、和/或延迟时间;前一迭代周期确定的备选门级网表中电路元件的类型、和/或数量。
这样,可以通过调整不同的综合参数,达到获取满足预设时序约束条件的末级功能块对应的门级网表的目的。
一种可选的实施方式中,所述生成方法还包括:在得到所述末级功能块在当前迭代周期的备选门级网表后,对所述当前迭代周期的备选门级网表进行时序检测;基于所述时序检测的结果,确定所述末级功能块在当前迭代周期的备选门级网表是否满足所述预设时序约束条件。
这样,通过时序检测,缩短迭代综合的次数,提高综合效率。
一种可选的实施方式中,所述基于所述时序检测的结果,确定所述末级功能块在当前迭代周期的备选门级网表是否满足所述预设时序约束条件,包括:响应于所述时序结果包括不存在时序违例,确定所述末级功能块在当前迭代周期的备选门级网表满足所述预设时序约束条件;响应于所述时序结果包括存在时序违例,确定所述末级功能块在当前迭代周期的备选门级网表不满足所述预设时序约束条件。
这样,可以通过备选门级网表中的信息检测是否存在时序违例,判断当前迭代周期的备选门级网表是否满足所述预设时序约束条件。
一种可选的实施方式中,所述针对各级功能块中的非末级功能块,根据该级功能块对应的下级功能块的网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表,包括:将该级功能块对应的下级功能块的网表信息转换为预设格式,得到转换网表信息;基于所述转换网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表。
这样,通过网表信息的格式转换,可以得到对应不同级功能块对应的门级网表。
一种可选的实施方式中,所述基于所述转换网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表,包括:
基于所述转换网表信息、该级功能块的描述信息、以及该级功能块的综合参数,对该级功能块进行综合,得到该级功能块的备选门级网表;
检测该级功能块的备选门级网表是否满足该级功能块的时序约束条件;
若该级功能块的备选门级网表不满足该级功能块的时序约束条件,则对该级功能块的综合参数进行调整,得到新的综合参数,并返回至基于所述转换网表信息、该级功能块的描述信息、以及该级功能块的综合参数,对该级功能块进行综合,得到该级功能块的备选门级网表;
若该级功能块的备选门级网表满足该级功能块的时序约束条件,则将该级功能块的备选门级网表作为该级功能块的门级网表。
这样,可以在不调整下级功能块对应的门级网表的前提下,对非末级的功能块进行综合,提升综合效率。
第二方面,本公开实施例提供了一种电路布图的生成装置,包括:获取模块,用于获取集成电路的多级功能块分别对应的描述信息;第一综合模块,用于按照级数从低到高的顺序对各级功能块进行下述综合过程:针对各级功能块中的非末级功能块,根据该级功能块对应的下级功能块的网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表;生成模块,用于基于级数最高的功能块对应的门级网表,生成目标集成电路的电路布图。
一种可选的实施方式中,还包括:第二综合模块;所述第二综合模块,用于响应于该级功能块为末级功能块,根据所述末级功能块对应的描述信息,对所述末级功能块进行综合,得到所述末级功能块对应的满足所述预设时序约束条件的门级网表。
一种可选的实施方式中,所述第二综合模块包括:综合单元,用于基于所述末级功能块对应的描述信息、以及所述末级功能块在当前迭代周期对应的综合参数,对所述末级功能块进行综合,得到所述末级功能块在当前迭代周期的备选门级网表;确定单元,用于响应于所述末级功能块对应的备选门级网表满足所述预设时序约束条件,将满足所述预设时序约束条件的备选门级网表,作为所述末级功能块对应的门级网表。
一种可选的实施方式中,所述第二综合模块还包括:调整单元,用于响应于所述末级功能块在当前迭代周期的备选门级网表不满足所述预设时序约束条件,对当前迭代周期对应的综合参数进行调整,得到下一迭代周期对应的综合参数,并进入下一迭代周期。
一种可选的实施方式中,所述综合参数包括下述至少一种:所述末级功能块对应的输入信号的延迟率、和/或延迟时间;所述末级功能块对应的输出信号的延迟率、和/或延迟时间;前一迭代周期确定的备选门级网表中电路元件的类型、和/或数量。
一种可选的实施方式中,还包括:检测模块;所述检测模块,用于在得到所述末级功能块在当前迭代周期的备选门级网表后,对所述当前迭代周期的备选门级网表进行时序检测;基于所述时序检测的结果,确定所述末级功能块在当前迭代周期的备选门级网表是否满足所述预设时序约束条件。
一种可选的实施方式中,所述检测模块具体用于:响应于所述时序结果包括不存在时序违例,确定所述末级功能块在当前迭代周期的备选门级网表满足所述预设时序约束条件;响应于所述时序结果包括存在时序违例,确定所述末级功能块在当前迭代周期的备选门级网表不满足所述预设时序约束条件。
一种可选的实施方式中,所述第一综合模块具体用于:将该级功能块对应的下级功能块的网表信息转换为预设格式,得到转换网表信息;基于所述转换网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表。
一种可选的实施方式中,所述第一综合模块,在基于所述转换网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表时,用于:
基于所述转换网表信息、该级功能块的描述信息、以及该级功能块的综合参数,对该级功能块进行综合,得到该级功能块的备选门级网表;
检测该级功能块的备选门级网表是否满足该级功能块的时序约束条件;
若该级功能块的备选门级网表不满足该级功能块的时序约束条件,则对该级功能块的综合参数进行调整,得到新的综合参数,并返回至基于所述转换网表信息、该级功能块的描述信息、以及该级功能块的综合参数,对该级功能块进行综合,得到该级功能块的备选门级网表;
若该级功能块的备选门级网表满足该级功能块的时序约束条件,则将该级功能块的备选门级网表作为该级功能块的门级网表。
这样,可以在不调整下级功能块对应的门级网表的前提下,对非末级的功能块进行综合,提升综合效率。
第三方面,本公开实施例还提供一种计算机设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
第四方面,本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述第一方面,或第一方面中任一种可能的实施方式中的步骤。
本公开实施例提供的一种电路布图的生成方法、装置、计算机设备及存储介质,按照从低到高的顺序对各级功能块进行综合,即在得到下级功能块的、满足预设时序约束条件的门级网表后,基于该下级的门级网表,以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的门级网表,直至得到最高级数的功能块对应的门级网表,生成电路布图。这样,通过从低到高的综合方法,在得到下级满足时序约束条件的门级网表后,利用该门级网表进行更高级数的综合过程,从而针对每级功能块进行综合时,不需要再对其下级功能块的门级网表进行调整,提升将行为级描述电路和/或寄存器转换级电路转换为门级电路的效率。
为使本公开的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本公开实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,此处的附图被并入说明书中并构成本说明书中的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。应当理解,以下附图仅示出了本公开的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本公开实施例所提供的一种电路布图的生成方法的流程图;
图2示出了本公开实施例所提供的生成方法中,对多级功能块进行综合的示意图;
图3示出了本公开实施例所提供的一种电路布图的生成装置的示意图;
图4示出了本公开实施例所提供的另一种电路布图的生成装置的示意图;
图5示出了本公开实施例所提供的生成装置中,第二综合模块的具体示意图;
图6示出了本公开实施例所提供的一种计算机设备的示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本公开实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本公开的实施例的详细描述并非旨在限制要求保护的本公开的范围,而是仅仅表示本公开的选定实施例。基于本公开的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本公开保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
本文中术语“和/或”,仅仅是描述一种关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合,例如,包括A、B、C中的至少一种,可以表示包括从A、B和C构成的集合中选择的任意一个或多个元素。
经研究发现,将行为级描述电路和/或寄存器转换级电路(Register TransferLevel,RTL)转换至门级电路的过程称为综合。电子设计自动化工具(Electronic DesignAutomation,EDA)可以方便地将利用硬件描述语言(Hardware Description Language,HDL)描述的电路转换到基于工艺库的门级网表。
目前芯片设计主要是基于由上至下(Top-Down)的综合策略;随着对于芯片的设计工艺越来越复杂,对芯片赋予的功能也愈加繁多,因此对于芯片设计的实现要求也越来越高,其中主要体现在对面积、时序以及功耗要求越来越严格,其中,时序是最容易出现违例并且需要花费大量资源进行处理的部分。但是,目前的芯片设计方法往往涉及的时钟多且频率高,易出现时序违例等情况。为了消除集成电路中的时序违例,就需要花费大量的时间对集成电路的门级网表进行整体优化,造成将行为级描述电路和/或寄存器转换级电路转换为门级电路的效率较低。
基于上述研究,本公开提供了一种电路布图的生成方法,通过从低到高的综合方法,在得到下级满足时序约束条件的门级网表后,利用该门级网表进行更高级数的综合过程,从而针对每级功能块进行综合时,不需要再对其下级功能块的门级网表进行调整,提升将行为级描述电路和/或寄存器转换级电路转换为门级电路的效率。
为便于对本实施例进行理解,首先对本公开实施例所公开的一种电路布图的生成方法进行详细介绍,本公开实施例所提供的电路布图的生成方法的执行主体一般为具有一定计算能力的计算机设备。在一些可能的实现方式中,该电路布图的生成方法可以通过处理器调用存储器中存储的计算机可读指令的方式来实现。
参见图1所示,为本公开实施例提供的一种电路布图的生成方法的流程图,所述生成方法包括步骤S101~S103,其中:
S101:获取集成电路的多级功能块分别对应的描述信息。
其中,集成电路指的是行为级描述电路以及RTL级描述电路。行为级是RTL的上一层,行为级是最符合人类逻辑思维方式的描述角度,一般基于算法,用C/C++来描述;RTL级描述电路指的是用寄存器这一级别的描述方式来描述电路的数据流方式,其中,行为级描述的目标就是实现特定的功能而没有可综合的限制,RTL级描述的目标就是可综合,即可以转换至门级电路。一般来说,从行为级到RTL级的转换过程,是由集成电路板(integratedcircuit,IC)的设计人员进行手工翻译的。
功能块,又可称为子模块,是指在集成电路中能够实现某一具体功能的子电路;该子电路由电路元件构成,电路元件例如包括:寄存器、乘法器、加法器、选择器、门电路(包括与门电路、或门电路、非门电路)等。在同一集成电路中可以包括多级功能块,每一级功能块中也可以包括至少一个功能块。对应的,功能块分别对应的描述信息指的是每个功能块所具备的功能、属性等描述性的特征信息。具体的,可以包括针对电路元件的硬件行为描述、结构描述、数据流描述等。
示例性的,在集成电路,即行为级描述电路以及RTL级描述电路中均会记载有多级功能块分别对应的描述信息,当需要将集成电路的RTL级电路转换为门级电路时,可以获取到多级功能块分别对应的描述信息,并利用描述信息进行综合,得到门级电路。
承接与上述S101,本公开实施例提供的电路布图的生成方法还包括:
S102:按照级数从低到高的顺序对各级功能块进行下述综合过程:
针对各级功能块中的非末级功能块,根据该级功能块对应的下级功能块的网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表。
其中,综合是电路布图生成过程中的重要步骤之一,综合过程是将行为级描述电路、RTL级描述电路转换至门级电路的过程。示例性的,可以利用逻辑综合工具(DesignCompiler)进行综合过程。其中,Design Compiler是用于集成电路综合过程中电子设计自动化(Electronic design automation,EDA)的核心工具,可以方便地将基于硬件描述语言(Hardware Description Language,HDL)的电路转换到基于工艺库的门级网表。
在电路设计中,网表(netlist)是用于描述电路元件相互之间连接关系的,一般来说是一个遵循某种比较简单的标记语法的文本文件。门级(gate-level)指的是网表描述的电路综合级别。顾名思义,门级网表中,描述的电路元件基本是门(gate)或与此同级别的元件。
示例性的,在一些电路布图的生成过程中,例如在线编程芯片(In-SystemProgramming,ISP)的设计过程中,随着对于电路的设计方案越老越复杂,所赋予的功能逐渐繁多,并且在生成过程中的各个工艺节点也越来越先进,由此导致对于电路布图的生成过程的实现要求也越来越高,其中主要体现在对面积、时序以及功耗的要求越来越严格,而时序是最容易出现违例,且需要花费大量资源进行优化收敛的部分,因此如果能在基于RTL级描述电路进行综合阶段就满足时序需求,就将大大减少电路布图在生成过程中的开发及迭代时间,加速电路布图的生成。目前,大多数的综合方式是基于Top-Down的综合策略,即从RTL级描述电路的最高级数功能块综合至最低级数的功能块,在该种方法下,无法获取到每一级功能块对应的门级网表,也无法确定出哪一级功能块导致的时序违例,进而无法确定出需要对哪一块功能块进行优化收敛,并且,由于Top-Down的综合策略是每一次综合,都需要从最高级数一直综合到最低级数,中间不发生间断,因此当功能块数目较多时,其综合时间较长。
由此,在本公开实施例中,提出了一种电路布图的生成方法,其不同于以往的Top-Down的综合策略,而是按照级数从低到高的顺序对各级功能块进行综合的。
具体的,在对级数最低的功能块进行综合时,可以采用下述方式:
针对各级功能块中的末级功能块,根据所述末级功能块对应的描述信息,对所述末级功能块进行综合,得到所述末级功能块对应的满足所述预设时序约束条件的门级网表。
本公开实施例提供一种对末级功能块进行综合,得到门级网表的具体方法,包括:
所述根据所述末级功能块对应的描述信息,对所述末级功能块进行综合,得到所述末级功能块对应的满足预设时序约束条件的门级网表,包括:
基于所述末级功能块对应的描述信息、以及所述末级功能块在当前迭代周期对应的综合参数,对所述末级功能块进行综合,得到所述末级功能块在当前迭代周期的备选门级网表;
响应于所述末级功能块对应的备选门级网表满足所述预设时序约束条件,将满足所述预设时序约束条件的备选门级网表,作为所述末级功能块A对应的门级网表。
其中,所述综合参数包括下述至少一种:
所述末级功能块对应的输入信号的延迟率、和/或延迟时间;
所述末级功能块对应的输出信号的延迟率、和/或延迟时间;
前一迭代周期确定的备选门级网表中电路元件的类型、和/或数量。
示例性的,由于末级功能块会参与到非末级功能块的综合过程中,因此可以先对末级功能块,按照能够优化时序的综合参数进行综合,尤其是针对一些时序违例严重的末级功能块基于综合参数进行综合,这样可以通过改善末级功能块的时序来消除时序违例的情况,从而改善非末级功能块以及整个电路布图的时序。
具体的,以对末级功能块进行综合为例,一方面,可以通过修改输入信号的延迟率(input delay ratio)或者是延迟时间,以及输出信号的延迟率(output delay ratio)或者是延迟时间,来改变对于功能块时序的约束关系,进行对该功能块综合后的时序进行优化收敛。又一方面,可以通过改变功能块对应的电路元件,又称标准单元(cell)的类型、和/或数量,或是不同类型电路元件之间的比例关系,来达到对时序进行约束的目的。另一方面,可以通过设置一些重新优化时序模块(retiming blocks),如易产生时序违例的乘法器,除法器等来解决功能块的时序违例问题,并生成相应的门级网表,具体的,可以设定乘法器,和/或除法器为重新优化时序模块,这样在进行综合的过程中,便可以对乘法器,和/或除法器处理的部分加以时序约束,这样,也可以达到对于时序优化收敛的目的。
在本公开一个实施例中,以对末级功能块进行综合为例,在确定出针对末级功能块的描述参数之后,便可以基于该末级功能块的描述信息,对其进行综合,得到末级功能块在当前迭代周期的门级网表,但是由于描述参数可能无法准确地使得末级功能块满足时序约束条件,因此,可以先将末级功能块在当前迭代周期的门级网表作为备选门级网表。
在本公开另一实施例中,以对末级功能块进行综合为例,在确定出当前迭代周期的备选门级网表之后,还可以对当前迭代周期的备选门级网表进行时序检测,并基于所述时序检测的结果,确定所述末级功能块在当前迭代周期的备选门级网表是否满足所述预设时序约束条件。若当前迭代周期的备选门级网表满足所述预设时序约束条件,则可以直接确定该备选门级网表为该功能块对应的门级网表。若当前迭代周期的备选门级网表不满足所述预设时序约束条件,则可以对当前迭代周期对应的综合参数进行调整,得到下一迭代周期对应的综合参数,并进入下一迭代周期,直至得到满足所述预设时序约束条件的门级网表。
其中,所述预设的时序约束条件可以为生成的门级网表是否存在时序违例,响应于所述时序结果包括不存在时序违例,确定所述末级功能块在当前迭代周期的备选门级网表满足所述预设时序约束条件;响应于所述时序结果包括存在时序违例,确定所述末级功能块在当前迭代周期的备选门级网表不满足所述预设时序约束条件。
示例性的,可以基于备选门级网表中包括的时序信息,确定当前迭代周期的备选门级网表是否满足所述预设时序约束条件,即是否存在时序违例。
在另一可能的实施方式中,为了减少对于综合参数的选取,以对末级功能块进行综合为例,可以首先在未添加综合参数的前提下,对末级功能块进行第一次综合,根据对各个末级功能块进行第一次综合的结果,确定出存在时序违例的功能块,然后为存在时序违例的功能块增加综合参数,并利用本公开实施例提供的方式,对末级功能块进行多个迭代周期的综合过程,从而提高综合效率,减少资源消耗。
在本公开一个实施例中,可以并行地对多个末级功能块进行综合,以提高综合效率。
在本公开实施例中,在获取到末级功能块对应的门级网表之后,针对非末级功能块,可以利用该级功能块对应的下级功能块的网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表。由于下级功能块门级网表是满足时序约束条件的,因此基于下级功能块的门级网表进行综合得到的该级功能块的门级网表也比较容易满足时序约束条件,并且,由于是采用下级功能块的门级网表进行综合,其综合速度要优于以往的方式中从上至下的整体优化方式,提高综合速度。
此处,在对非末级功能块进行综合时,是利用下一级功能块的门级网表来实现的;且综合过程中,不会再对下一级功能块的门级网表进行调整,而是可以以下一级功能块对应的门级网表为调整粒度,得到本级功能块对应的门级网表。而在下一级功能块的门级网表能够保证时序的前提下,可以减少本级功能块在综合时的时序违例情况。
在本公开实施例中,在对非末级功能块进行综合时,包括:将该级功能块对应的下级功能块的网表信息转换为预设格式,得到转换网表信息;基于所述转换网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表。
具体的,由于工具软件的限制,导致只能识别出特定格式的网表信息,因此需要对下级功能块的网表信息进行转换,之后进行综合过程。
示例性的,本公开实施例提供一种基于所述转换网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表的具体方法,包括:
基于所述转换网表信息、该级功能块的描述信息、以及该级功能块的综合参数,对该级功能块进行综合,得到该级功能块的备选门级网表;
检测该级功能块的备选门级网表是否满足该级功能块的时序约束条件;
若该级功能块的备选门级网表不满足该级功能块的时序约束条件,则对该级功能块的综合参数进行调整,得到新的综合参数,并返回至基于所述转换网表信息、该级功能块的描述信息、以及该级功能块的综合参数,对该级功能块进行综合,得到该级功能块的备选门级网表;
若该级功能块的备选门级网表满足该级功能块的时序约束条件,则将该级功能块的备选门级网表作为该级功能块的门级网表。
承接上述S102,本公开实施例提供的电路布图的生成方法还包括:
基于级数最高的功能块对应的门级网表,生成目标集成电路的电路布图。
具体的,可以基于所述级数次高的功能块的门级网表,生成针对所述级数最高的功能块的可读性网表信息;其中,级数最高的功能块的可读性网表信息能够被级数最高的功能块的综合工具识别;然后基于所述可读性网表信息以及所述级数最高的功能块的描述信息,对所述级数最高的功能块进行综合。
示例性的,可以利用格式转换工具,将所述级数次高的功能块的网表信息转换为目标格式,并将目标格式的网标信息作为级数最高的功能块的可读性网表信息,基于该可读性网表信息进行级数最高的功能块的综合,生成目标集成电路的电路布图。具体的,在进行级数最高的功能块的综合过程中,把级数次高的功能块对应的目标格式的门级网表添加到动态链接库(link library)中,在完成解析(elaborate)后,用改变链接(change_link)命令把级数次高的功能块的门级网表链接到对应的目标格式的文件中,之后读入级数最高功能块的综合参数,进行综合步骤。
在另一个实施例中,在完成级数次高的功能块的综合后,通过读入级数最高的功能块的门级网表和综合参数到时序分析工具中,用目标格式的输入/输出(write_lib towrite out.db)相关命令把转换成对应的目标格式的文件。
由此,便可以基于级数最高的功能块对应的门级网表,生成目标集成电路的电路布图。
如图2所示,提供一种集成电路的结构的具体示例,在该示例中,功能块A、功能块C以及功能块E均为末级功能块;功能块B和功能块D均为除最高级功能块外的非末级功能块;功能块F为最高级功能块。针对该示例,可以采用下述方式生成对应的电路布图:
(1):对功能块A进行如下步骤11~步骤15所述的综合过程:
步骤11:基于功能块A对应的描述信息、以及功能块A在当前迭代周期对应的综合参数,对功能块A进行综合,得到所述功能块A在当前迭代周期的备选门级网表a;
步骤12:对当前迭代周期的备选门级网表a进行时序检测。
步骤13:基于时序检测结果,确定功能块A在当前迭代周期的备选门级网表是否满足预设时序结束条件。如果是,则跳转至步骤15;如果否,则跳转至步骤14。
步骤14:对当前迭代周期对应的综合参数进行调整,得到下一迭代周期对应的综合参数,并进入下一迭代周期,跳转至步骤11。
步骤15:将满足所述预设时序约束条件的备选门级网表a,作为所述末级功能块对应的门级网表a’。
(2):对功能块C进行如下步骤21~步骤25所述的综合过程:
步骤21:基于功能块C对应的描述信息、以及功能块C在当前迭代周期对应的综合参数,对功能块C进行综合,得到所述功能块C在当前迭代周期的备选门级网表c;
步骤22:对当前迭代周期的备选门级网表c进行时序检测。
步骤23:基于时序检测结果,确定功能块C在当前迭代周期的备选门级网表是否满足预设时序结束条件。如果是,则跳转至步骤25;如果否,则跳转至步骤24。
步骤24:对当前迭代周期对应的综合参数进行调整,得到下一迭代周期对应的综合参数,并进入下一迭代周期,跳转至步骤21。
步骤25:将满足所述预设时序约束条件的备选门级网表c,作为所述末级功能块对应的门级网表c’。
(3):对功能块E进行如下步骤31~步骤35所述的综合过程:
步骤31:基于功能块E对应的描述信息、以及功能块E在当前迭代周期对应的综合参数,对功能块E进行综合,得到所述功能块E在当前迭代周期的备选门级网表e;
步骤32:对当前迭代周期的备选门级网表e进行时序检测。
步骤33:基于时序检测结果,确定功能块E在当前迭代周期的备选门级网表是否满足预设时序结束条件。如果是,则跳转至步骤35;如果否,则跳转至步骤34。
步骤34:对当前迭代周期对应的综合参数进行调整,得到下一迭代周期对应的综合参数,并进入下一迭代周期,跳转至步骤31。
步骤35:将满足所述预设时序约束条件的备选门级网表e,作为所述末级功能块对应的门级网表e’。
其中,对上述功能块A、功能块C和功能块E的综合过程,可以并行执行,也可以非并行执行。
(4):对功能块B进行如下步骤41~步骤45所述的综合过程:
步骤41:将功能块B对应的下级功能块A的门级网表a’,转换为预设格式,得到转换网表信息a”;
步骤42:基于转换网表信息a”、以及功能块B的描述信息、以及功能块B的综合参数,对功能块B进行综合,得到功能块B的备选门级网表b;
步骤43:检测备选门级网表b是否满足功能块B的时序约束条件。如果满足,则跳转至步骤45;如果不满足,则跳转至步骤44。
步骤44:对功能块B的综合参数进行调整,得到新的综合参数,并跳转至步骤42。
步骤45:将备选门级网表b作为功能块B的门级网表b’。
(5):对功能块D进行如下步骤51~步骤55所述的综合过程:
步骤51:将功能块D对应的下级功能块B的门级网表b’,转换为预设格式,得到转换网表信息b”;以及,将功能块D对应的下级功能块C的门级网表c’转换为预设格式,得到转换网表信息c”。
步骤52:基于转换网表信息b”、以及转换网表信息c”、以及功能块D的描述信息、以及功能块D的综合参数,对功能块D进行综合,得到功能块D的备选门级网表d;
步骤53:检测备选门级网表d是否满足功能块D的时序约束条件。如果满足,则跳转至步骤55;如果不满足,则跳转至步骤54。
步骤54:对功能块D的综合参数进行调整,得到新的综合参数,并跳转至步骤52。
步骤55:将备选门级网表d作为功能块D的门级网表d’。
(5):对功能块F进行如下步骤61~步骤65所述的综合过程:
步骤61:将功能块F对应的下级功能块D的门级网表d’,转换为预设格式,得到转换网表信息d”;以及,将功能块F对应的下级功能块E的门级网表e’转换为预设格式,得到转换网表信息e”。
步骤62:基于转换网表信息d”、以及转换网表信息e”、以及功能块F的描述信息、以及功能块F的综合参数,对功能块F进行综合,得到功能块F的备选门级网表f;
步骤63:检测备选门级网表f是否满足功能块F的时序约束条件。如果满足,则跳转至步骤65;如果不满足,则跳转至步骤64。
步骤64:对功能块F的综合参数进行调整,得到新的综合参数,并跳转至步骤62。
步骤65:将备选门级网表f作为功能块F的门级网表f’。
(6):在得到功能块F的门级网表f’后,利用功能块F的门级网表f’生成目标集成电路的电路布图。
本公开实施例通过从低到高的综合方法,在得到下级满足时序约束条件的门级网表后,利用该门级网表进行更高级数的综合过程,从而针对每级功能块进行综合时,不需要再对其下级功能块的门级网表进行调整,提升将行为级描述电路和/或寄存器转换级电路转换为门级电路的效率。
本领域技术人员可以理解,在具体实施方式的上述方法中,各步骤的撰写顺序并不意味着严格的执行顺序而对实施过程构成任何限定,各步骤的具体执行顺序应当以其功能和可能的内在逻辑确定。
基于同一发明构思,本公开实施例中还提供了与电路布图的生成方法对应的电路布图的生成装置,由于本公开实施例中的装置解决问题的原理与本公开实施例上述电路布图的生成方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参照图3、图4、图5所示,图3为本公开实施例提供的一种电路布图的生成装置的示意图;图4为本公开实施例所提供的另一种电路布图的生成装置的示意图;图5为本公开实施例所提供的生成装置中,第二综合模块的具体示意图。
参见图3所示,所述生成装置包括:获取模块310、第一综合模块320、生成模块330;其中,
获取模块310,用于获取集成电路的多级功能块分别对应的描述信息;
第一综合模块320,用于按照级数从低到高的顺序对各级功能块进行下述综合过程:
针对各级功能块中的非末级功能块,根据该级功能块对应的下级功能块的网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表;
生成模块330,用于基于级数最高的功能块对应的门级网表,生成目标集成电路的电路布图。
一种可选的实施方式中,还包括:第二综合模块340;
所述第二综合模块340,用于针对各级功能块中的末级功能块,根据所述末级功能块对应的描述信息,对所述末级功能块进行综合,得到所述末级功能块对应的满足所述预设时序约束条件的门级网表。
一种可选的实施方式中,所述第二综合模块340包括:
综合单元341,用于基于所述末级功能块对应的描述信息、以及所述末级功能块在当前迭代周期对应的综合参数,对所述末级功能块进行综合,得到所述末级功能块在当前迭代周期的备选门级网表;
确定单元342,用于响应于所述末级功能块对应的备选门级网表满足所述预设时序约束条件,将满足所述预设时序约束条件的备选门级网表,作为所述末级功能块对应的门级网表。
一种可选的实施方式中,所述第二综合模块340还包括:
调整单元343,用于响应于所述末级功能块在当前迭代周期的备选门级网表不满足所述预设时序约束条件,对当前迭代周期对应的综合参数进行调整,得到下一迭代周期对应的综合参数,并进入下一迭代周期。
一种可选的实施方式中,所述综合参数包括下述至少一种:
所述末级功能块对应的输入信号的延迟率、和/或延迟时间;
所述末级功能块对应的输出信号的延迟率、和/或延迟时间;
前一迭代周期确定的备选门级网表中电路元件的类型、和/或数量。
一种可选的实施方式中,还包括:检测模块350;
所述检测模块350,用于在得到所述末级功能块在当前迭代周期的备选门级网表后,对所述当前迭代周期的备选门级网表进行时序检测;
基于所述时序检测的结果,确定所述末级功能块在当前迭代周期的备选门级网表是否满足所述预设时序约束条件。
一种可选的实施方式中,所述检测模块350具体用于:
响应于所述时序结果包括不存在时序违例,确定所述末级功能块在当前迭代周期的备选门级网表满足所述预设时序约束条件;
响应于所述时序结果包括存在时序违例,确定所述末级功能块在当前迭代周期的备选门级网表不满足所述预设时序约束条件。
一种可选的实施方式中,所述第一综合模块320具体用于:
将该级功能块对应的下级功能块的网表信息转换为预设格式,得到转换网表信息;
基于所述转换网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表。
本公开实施例通过从低到高的综合方法,在得到下级满足时序约束条件的门级网表后,利用该门级网表进行更高级数的综合过程,从而针对每级功能块进行综合时,不需要再对其下级功能块的门级网表进行调整,提升将行为级描述电路和/或寄存器转换级电路转换为门级电路的效率。
关于装置中的各模块的处理流程、以及各模块之间的交互流程的描述可以参照上述方法实施例中的相关说明,这里不再详述。
对应于图1中的电路布图的生成方法,本公开实施例还提供了一种计算机设备,参见图6所示,为本公开实施例提供的计算机设备结构示意图,包括:
处理器601、存储器602、和总线603;存储器602用于存储执行指令,包括内存6021和外部存储器6022;这里的内存6021也称内存储器,用于暂时存放处理器601中的运算数据,以及与硬盘等外部存储器6022交换的数据,处理器601通过内存6021与外部存储器6022进行数据交换,当所述计算机设备运行时,所述处理器601与所述存储器602之间通过总线603通信,使得所述处理器601执行以下指令:
获取集成电路的多级功能块分别对应的描述信息;
按照级数从低到高的顺序对各级功能块进行下述综合过程:
针对各级功能块中的非末级功能块,根据该级功能块对应的下级功能块的网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表;
基于级数最高的功能块对应的门级网表,生成目标集成电路的电路布图。
本公开实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行上述方法实施例中所述的电路布图的生成方法的步骤。其中,该存储介质可以是易失性或非易失的计算机可读取存储介质。
本公开实施例还提供一种计算机程序产品,该计算机程序产品承载有程序代码,所述程序代码包括的指令可用于执行上述方法实施例中所述的电路布图的生成方法的步骤,具体可参见上述方法实施例,在此不再赘述。
其中,上述计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(Software Development Kit,SDK)等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本公开的具体实施方式,用以说明本公开的技术方案,而非对其限制,本公开的保护范围并不局限于此,尽管参照前述实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本公开实施例技术方案的精神和范围,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应所述以权利要求的保护范围为准。
Claims (11)
1.一种电路布图的生成方法,其特征在于,包括:
获取集成电路的多级功能块分别对应的描述信息;
按照级数从低到高的顺序对各级功能块进行下述综合过程:
针对各级功能块中的非末级功能块,将该级功能块对应的下级功能块的网表信息转换为预设格式,得到转换网表信息;
基于所述转换网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表;
基于级数最高的功能块对应的门级网表,生成目标集成电路的电路布图。
2.根据权利要求1所述的生成方法,其特征在于,还包括:
针对各级功能块中的末级功能块,根据所述末级功能块对应的描述信息,对所述末级功能块进行综合,得到所述末级功能块对应的满足所述预设时序约束条件的门级网表。
3.根据权利要求2所述的生成方法,其特征在于,所述根据所述末级功能块对应的描述信息,对所述末级功能块进行综合,得到所述末级功能块对应的满足预设时序约束条件的门级网表,包括:
基于所述末级功能块对应的描述信息、以及所述末级功能块在当前迭代周期对应的综合参数,对所述末级功能块进行综合,得到所述末级功能块在当前迭代周期的备选门级网表;
响应于所述末级功能块对应的备选门级网表满足所述预设时序约束条件,将满足所述预设时序约束条件的备选门级网表,作为所述末级功能块对应的门级网表。
4.根据权利要求3所述的生成方法,其特征在于,还包括:
响应于所述末级功能块在当前迭代周期的备选门级网表不满足所述预设时序约束条件,对当前迭代周期对应的综合参数进行调整,得到下一迭代周期对应的综合参数,并进入下一迭代周期。
5.根据权利要求3或4所述的生成方法,其特征在于,所述综合参数包括下述至少一种:
所述末级功能块对应的输入信号的延迟率、和/或延迟时间;
所述末级功能块对应的输出信号的延迟率、和/或延迟时间;
前一迭代周期确定的备选门级网表中电路元件的类型、和/或数量。
6.根据权利要求3所述的生成方法,其特征在于,所述生成方法还包括:
在得到所述末级功能块在当前迭代周期的备选门级网表后,对所述当前迭代周期的备选门级网表进行时序检测;
基于所述时序检测的结果,确定所述末级功能块在当前迭代周期的备选门级网表是否满足所述预设时序约束条件。
7.根据权利要求6所述的生成方法,其特征在于,所述基于所述时序检测的结果,确定所述末级功能块在当前迭代周期的备选门级网表是否满足所述预设时序约束条件,包括:
响应于时序结果包括不存在时序违例,确定所述末级功能块在当前迭代周期的备选门级网表满足所述预设时序约束条件;
响应于所述时序结果包括存在时序违例,确定所述末级功能块在当前迭代周期的备选门级网表不满足所述预设时序约束条件。
8.根据权利要求1所述的生成方法,其特征在于,所述基于所述转换网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表,包括:
基于所述转换网表信息、该级功能块的描述信息、以及该级功能块的综合参数,对该级功能块进行综合,得到该级功能块的备选门级网表;
检测该级功能块的备选门级网表是否满足该级功能块的时序约束条件;
若该级功能块的备选门级网表不满足该级功能块的时序约束条件,则对该级功能块的综合参数进行调整,得到新的综合参数,并返回至基于所述转换网表信息、该级功能块的描述信息、以及该级功能块的综合参数,对该级功能块进行综合,得到该级功能块的备选门级网表;
若该级功能块的备选门级网表满足该级功能块的时序约束条件,则将该级功能块的备选门级网表作为该级功能块的门级网表。
9.一种电路布图的生成装置,其特征在于,包括:
获取模块,用于获取集成电路的多级功能块分别对应的描述信息;
第一综合模块,用于按照级数从低到高的顺序对各级功能块进行下述综合过程:
针对各级功能块中的非末级功能块,将该级功能块对应的下级功能块的网表信息转换为预设格式,得到转换网表信息;基于所述转换网表信息、以及该级功能块的描述信息对该级功能块进行综合,得到该级功能块对应的满足预设时序约束条件的门级网表;
生成模块,用于基于级数最高的功能块对应的门级网表,生成目标集成电路的电路布图。
10.一种计算机设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当计算机设备运行时,所述处理器与所述存储器之间通过总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1至8任一项所述的电路布图的生成方法的步骤。
11.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至8任一项所述的电路布图的生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111012325.8A CN113688587B (zh) | 2021-08-31 | 2021-08-31 | 一种电路布图的生成方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111012325.8A CN113688587B (zh) | 2021-08-31 | 2021-08-31 | 一种电路布图的生成方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113688587A CN113688587A (zh) | 2021-11-23 |
CN113688587B true CN113688587B (zh) | 2024-03-22 |
Family
ID=78584432
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111012325.8A Active CN113688587B (zh) | 2021-08-31 | 2021-08-31 | 一种电路布图的生成方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113688587B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6601024B1 (en) * | 1998-11-12 | 2003-07-29 | Synopsys, Inc. | Code translation between hardware design languages |
CN101539958A (zh) * | 2008-03-18 | 2009-09-23 | 北京芯慧同用微电子技术有限责任公司 | 一种标准单元库和集成电路的设计方法和装置 |
US7739324B1 (en) * | 2006-03-22 | 2010-06-15 | Cadence Design Systems, Inc. | Timing driven synthesis of sum-of-product functional blocks |
CN111581899A (zh) * | 2020-04-30 | 2020-08-25 | 杨家奇 | 良率参数文件和门级网表的生成方法以及芯片的开发流程 |
CN111950214A (zh) * | 2020-08-14 | 2020-11-17 | Oppo广东移动通信有限公司 | 一种时序分析方法、装置、设备以及计算机存储介质 |
CN112270148A (zh) * | 2020-10-16 | 2021-01-26 | 山东云海国创云计算装备产业创新中心有限公司 | 一种门级网表生成方法及相关装置 |
CN112585588A (zh) * | 2019-12-26 | 2021-03-30 | 深圳市大疆创新科技有限公司 | 芯片的形式验证方法、设备和存储介质 |
CN112632884A (zh) * | 2020-12-23 | 2021-04-09 | 海光信息技术股份有限公司 | 门级网表生成方法、装置及电子设备 |
CN113111622A (zh) * | 2021-04-29 | 2021-07-13 | 上海阵量智能科技有限公司 | 一种电路布图生成方法、装置、计算机设备及存储介质 |
CN113255258A (zh) * | 2021-06-23 | 2021-08-13 | 上海国微思尔芯技术股份有限公司 | 逻辑综合方法、装置、电子设备及存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10540462B2 (en) * | 2016-12-14 | 2020-01-21 | Taiwan Semiconductor Manufacturing Co., Ltd. | Method and apparatus for speeding up gate-level simulation |
US11030380B2 (en) * | 2019-08-22 | 2021-06-08 | Taiwan Semiconductor Manufacturing Co., Ltd. | Synergistic design method for fabricating integrated circuit |
-
2021
- 2021-08-31 CN CN202111012325.8A patent/CN113688587B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6601024B1 (en) * | 1998-11-12 | 2003-07-29 | Synopsys, Inc. | Code translation between hardware design languages |
US7739324B1 (en) * | 2006-03-22 | 2010-06-15 | Cadence Design Systems, Inc. | Timing driven synthesis of sum-of-product functional blocks |
CN101539958A (zh) * | 2008-03-18 | 2009-09-23 | 北京芯慧同用微电子技术有限责任公司 | 一种标准单元库和集成电路的设计方法和装置 |
CN112585588A (zh) * | 2019-12-26 | 2021-03-30 | 深圳市大疆创新科技有限公司 | 芯片的形式验证方法、设备和存储介质 |
CN111581899A (zh) * | 2020-04-30 | 2020-08-25 | 杨家奇 | 良率参数文件和门级网表的生成方法以及芯片的开发流程 |
CN111950214A (zh) * | 2020-08-14 | 2020-11-17 | Oppo广东移动通信有限公司 | 一种时序分析方法、装置、设备以及计算机存储介质 |
CN112270148A (zh) * | 2020-10-16 | 2021-01-26 | 山东云海国创云计算装备产业创新中心有限公司 | 一种门级网表生成方法及相关装置 |
CN112632884A (zh) * | 2020-12-23 | 2021-04-09 | 海光信息技术股份有限公司 | 门级网表生成方法、装置及电子设备 |
CN113111622A (zh) * | 2021-04-29 | 2021-07-13 | 上海阵量智能科技有限公司 | 一种电路布图生成方法、装置、计算机设备及存储介质 |
CN113255258A (zh) * | 2021-06-23 | 2021-08-13 | 上海国微思尔芯技术股份有限公司 | 逻辑综合方法、装置、电子设备及存储介质 |
Non-Patent Citations (2)
Title |
---|
Werner, M ; Lippmann, B.Reverse Engineering of Cryptographic Cores by Structural Interpretation through Graph Analysis.2018 IEEE 3RD INTERNATIONAL VERIFICATION AND SECURITY WORKSHOP (IVSW).2018,13-18. * |
集成电路IP核的知识产权保护研究;宋伟;王鑫;电子知识产权(第3期);79-83 * |
Also Published As
Publication number | Publication date |
---|---|
CN113688587A (zh) | 2021-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8719742B2 (en) | Conversion of circuit description to an abstract model of the circuit | |
US7788625B1 (en) | Method and apparatus for precharacterizing systems for use in system level design of integrated circuits | |
US9703921B1 (en) | Naturally connecting mixed-signal power networks in mixed-signal simulations | |
JP4994393B2 (ja) | 単一のマスターモデルから異なる抽象化レベルの複数のモデルを生成するシステムと方法 | |
CN101539958B (zh) | 一种标准单元库和集成电路的设计方法和装置 | |
JP3150122B2 (ja) | 低電力vlsiデザインのための制限付きレジスタ共用方法及びそのシステム | |
US20130179142A1 (en) | Distributed parallel simulation method and recording medium for storing the method | |
US8701059B2 (en) | Method and system for repartitioning a hierarchical circuit design | |
US8713506B2 (en) | System and method for employing signoff-quality timing analysis information concurrently in multiple scenarios to reduce dynamic power in an electronic circuit and an apparatus incorporating the same | |
WO2005119441A2 (en) | Methods and systems for structured asic eletronic design automation | |
Gubbi et al. | Survey of machine learning for electronic design automation | |
US8037443B1 (en) | System, method, and computer program product for optimizing an altered hardware design utilizing power reports | |
US7546560B2 (en) | Optimization of flip flop initialization structures with respect to design size and design closure effort from RTL to netlist | |
JP2001357090A (ja) | 論理合成方法及び論理合成装置 | |
US8281269B2 (en) | Method of semiconductor integrated circuit device and program | |
US10073944B2 (en) | Clock tree synthesis based on computing critical clock latency probabilities | |
CN111046624A (zh) | 芯片模块接口时钟结构的构建方法、装置、设备及介质 | |
Kahng et al. | RosettaStone: connecting the past, present, and future of physical design research | |
CN113688587B (zh) | 一种电路布图的生成方法、装置、计算机设备及存储介质 | |
US20220327269A1 (en) | Computing device and method for detecting clock domain crossing violation in design of memory device | |
CN113536726A (zh) | 用于最大瞬时峰值功率的矢量生成 | |
CN109885850B (zh) | 一种局部寄存器的生成方法及生成系统 | |
Semba et al. | Study on an RTL conversion method from pipelined synchronous RTL models into asynchronous RTL models | |
US11983478B2 (en) | Selection of full or incremental implementation flows in processing circuit designs | |
JP2010257003A (ja) | 論理等価性検証システム、論理等価性検証方法、半導体集積回路の製造方法、制御プログラムおよび可読記憶媒体 |
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 | ||
CP03 | Change of name, title or address | ||
CP03 | Change of name, title or address |
Address after: Floor 1-3, No. 24, Lane 315, Fenggu Road, Xuhui District, Shanghai, 201103 Patentee after: Shanghai Qianshi Technology Co.,Ltd. Country or region after: China Address before: 201103 unit 6-78, building 6, No. 1900, Hongmei Road, Xuhui District, Shanghai Patentee before: Shanghai shangtangqian Technology Co.,Ltd. Country or region before: China |