CN113255258B - 逻辑综合方法、装置、电子设备及存储介质 - Google Patents
逻辑综合方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113255258B CN113255258B CN202110695130.1A CN202110695130A CN113255258B CN 113255258 B CN113255258 B CN 113255258B CN 202110695130 A CN202110695130 A CN 202110695130A CN 113255258 B CN113255258 B CN 113255258B
- Authority
- CN
- China
- Prior art keywords
- module
- logic
- design file
- instance
- modules
- 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
- 238000001308 synthesis method Methods 0.000 title claims abstract description 28
- 238000013461 design Methods 0.000 claims abstract description 247
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 96
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 93
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 16
- 238000000034 method Methods 0.000 claims description 20
- 238000004458 analytical method Methods 0.000 claims description 13
- 238000013515 script Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 abstract description 31
- 230000008569 process Effects 0.000 description 10
- 238000010586 diagram Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 230000010354 integration Effects 0.000 description 7
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/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/34—Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
- G06F30/343—Logical level
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
技术领域
本发明涉及电子设计自动化技术领域,具体涉及一种逻辑综合方法、装置、电子设备及存储介质。
背景技术
随着芯片的集成度与复杂度的不断提升,主流数字芯片通常由大量的ip(intellectual property,内核)网表模块和/或RTL(Register Transfer Level,寄存器转换级电路)描述模块组成,这些模块经由专用综合工具进行逻辑综合处理后,转换为反映具体逻辑电路单元相互连接关系的网表文件。
目前,芯片设计的规模动辄含有几百万乃至上亿个逻辑模块,比如业界的逻辑阵列(如FPGA,Field Programmable Gate Array,现场可编程逻辑门阵列)设计中,虽然FPGA的逻辑资源也不断增长,但其逻辑规模的增长速度远远不能满足用户的电路设计、功能验证等需求。
而且,业界中多逻辑阵列(如FPGA)原型系统设计中,通常受限于单颗FPGA物理资源,目前综合工具均是采用自上而下方式对芯片逻辑设计进行综合处理,虽然保持了一定的优化效果(比如面积和功耗考虑),但是整个综合处理非常漫长,即使设计中只有很少一部分逻辑模块功能发生变化,也需要自上而下地对整个设计重新综合处理,并且综合处理所需时间也很长。
因此,亟需一种新的逻辑综合处理方案。
发明内容
有鉴于此,本说明书实施例提供一种逻辑综合方法、装置、电子设备及存储介质,提高综合处理速度,缩短综合处理所需时间。
本说明书实施例提供以下技术方案:
本说明书实施例提供一种逻辑综合方法,包括:获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表;根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
本说明书实施例还提供一种逻辑综合装置,包括:获取模块,获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;确定模块,根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表;综合模块,根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;合并模块,根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
本说明书实施例还提供一种逻辑综合工具,所述逻辑综合工具用于对芯片设计中的设计文件进行逻辑综合,其中逻辑综合的步骤包括:获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表;根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
本说明书实施例还提供一种用于逻辑综合的电子设备,包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表;根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
本说明书实施例还提供一种用于逻辑综合的计算机存储介质,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令设置为:
获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表;根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
与现有技术相比,本说明书实施例采用的上述至少一个技术方案能够达到的有益效果至少包括:
通过对芯片设计的设计文件进行实例化解析和处理,形成设计文件对应的唯一化实例模块列表,并自下而上地快速对每个唯一化的实例模块进行综合处理,将综合所得的网表合并为一个完整的设计网表,不仅逻辑综合中不再受到单颗FPGA的物理资源限制,可以支持任意的芯片设计逻辑规模,还可对大规模设计的逻辑模块进行高效、合理的综合处理,大大提升芯片设计的性能、效率。
另外,还可在部分设计内容发生修改时,可基于唯一化实例模块的逻辑综合处理,支持快速的模块级的设计递归,加速芯片设计功能开发验证的进程,加快集成电路产品的面世。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本说明书实施例提供的一种逻辑综合方案的结构示意图;
图2是本说明书实施例提供的一种逻辑综合方法的流程图;
图3是本说明书实施例提供的一种逻辑综合方法中设计文件的示意图;
图4是本说明书实施例提供的一种逻辑综合方法中唯一化实例模块列表的示意图;
图5是本说明书实施例提供的一种逻辑综合方法中解析树的示意图;
图6是本说明书实施例提供的一种逻辑综合方法的流程图;
图7是本说明书实施例提供的一种逻辑综合装置的结构示意图;
图8是本说明书实施例提供的一种用于逻辑综合电子设备的结构示意图。
具体实施方式
下面结合附图对本申请实施例进行详细描述。
以下通过特定的具体实例说明本申请的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本申请的其他优点与功效。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。本申请还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本申请的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
要说明的是,下文描述在所附权利要求书的范围内的实施例的各种方面。应显而易见,本文中所描述的方面可体现于广泛多种形式中,且本文中所描述的任何特定结构及/或功能仅为说明性的。基于本申请,所属领域的技术人员应了解,本文中所描述的一个方面可与任何其它方面独立地实施,且可以各种方式组合这些方面中的两者或两者以上。举例来说,可使用本文中所阐述的任何数目和方面来实施设备及/或实践方法。另外,可使用除了本文中所阐述的方面中的一或多者之外的其它结构及/或功能性实施此设备及/或实践此方法。
还需要说明的是,以下实施例中所提供的图示仅以示意方式说明本申请的基本构想,图式中仅显示与本申请中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
另外,在以下描述中,提供具体细节是为了便于透彻理解实例。然而,所属领域的技术人员将理解,可在没有这些特定细节的情况下实践所述方面。术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”等描述的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。
目前,在芯片设计中,专用综合工具在将设计文件转换为网表文件时,这些综合工具均是采用自上而下的方式进行逻辑综合,造成整个综合处理过程非常漫长,而且即使在芯片设计中仅对一个逻辑模块进行少量修改,也需要重新对整个芯片设计进行综合。
还有,当用户设计的逻辑规模超出单个FPGA的物理资源时,综合工具也无法进行处理。
因此,发明人在针对综合方法进行改进时,提出了一种新的综合方案。
如图1所示,逻辑综合的思路是:针对芯片设计的设计文件,采用自下而上的综合方式进行逻辑综合。
在芯片设计中,设计文件中通常包括大量的逻辑模块(比如RTL模块和/或IP模块),这时可通过语法分析和语义拆解等解析手段,获得所有逻辑模块的实例化信息,进而确定出需要进行逻辑综合的唯一非重复的模块实例,这些模块实例构成唯一化实例模块列表,便于根据设计文件中所有逻辑模块之间关系,采用自下而上方式快速遍历唯一化模块实例列表,快速对每个唯一化实例模块进行综合得到相应的网表文件,最后根据设计文件中所有逻辑模块实例连接关系,将各个网表进行合并,形成设计文件对应的完整的设计综合网表。
例如,图中top module中包括有submodule1、submodule3等RTL模块,以及IP模块,子模块submodule1中还包含submodule10子模块,其中submodule1模块实例化为child1功能单元,submodule3模块分别实例化为child3和child4功能单元,ip模块实例化为child2功能单元,submodule10模块又实例化为child11、child12和child13等功能单元,这时唯一化实例模块可包括:top module对应a0节点,child1对应a1节点,child2对应a2节点,child3和child4为非唯一、重复的实例,解析中可将节点a3和a4记为a34节点(其中a34节点为与a3或者a4节点相似的节点,作为唯一化实例模块节点,当然也可将a3或者a4记录为唯一化实例模块节点),child11对应a11节点,而child12和child13属于非唯一、重复的实例模块,解析中可将节点a12和a13记为a123节点(其中a123节点为与a12或者a13节点相似的节点,作为唯一化实例模块节点,当然也可将a12或者a13记录为唯一化实例模块节点)。在得到唯一化实例模块节点后,可自下而上地对每个唯一化实例模块节点进行逻辑综合获得各自对应的网表结果,最后根据设计文件中各个逻辑模块之间的端口连接关系,进行网表合并,即根据设计文件中各个逻辑模块的端口信息将设计文件中每个模块实例的端口连接起来,构成整个设计文件对应的网表文件。
需要说明的是,图中的信号列表、参数列表等仅作示意说明,这些信号列表中的信号、参数列表中的信号可相互关联,也可相互无关联,具体情况可根据实际应用中确定,这里不作展开说明。
实施中,当设计内容只有部分变化而需要再次综合处理时,可通过扫描当前实例模块的逻辑内容,结合上一次的唯一化实例模块信息,可以快速找出存在差异的实例模块,并对该实例模块单独进行综合处理,得到对应的新模块网表,并根据芯片设计中模块之间的关系,将新模块网表合并到未改动的设计网表中,得到一个新的完整的设计综合网表。
通过自下而上的综合思路,可以快速地对每个唯一化的实例模块进行综合处理,最后合并为一个完整的设计网表,不仅在对每个唯一化实例模块进行综合中可不受单个FPGA物理资源的限制,而且当只是部分设计内容发生修改时,可仅对修改的模块进行重新综合处理,从而支持快速的模块级递归综合处理,加速芯片设计功能开发验证的进程,加快集成电路产品的面世。
以下结合附图,说明本申请各实施例提供的技术方案。
如图2所示,本说明书实施例提供一种逻辑综合方法,以对芯片设计中的设计文件进行逻辑综合,其中逻辑综合方法可包括下述步骤。
步骤S202、获取设计文件中所有逻辑模块的实例化信息。
其中,设计文件可为芯片设计所对应的设计文件,比如采用Verilog语言抽象描述得硬件电路对应的代码文件。
需要说明的是,实例化是指在设计文件中,将抽象描述的模块(即module)创建为对应的具体逻辑模块的过程,比如采用Verilog语言描述了一个抽象的触发器模块,这时可根据实际芯片设计中将该抽象得触发器实例化为某个电路中的触发器单元电路,因而实例化是将抽象描述的module,例化为具体硬件电路单元的实例化过程,这里不再展开说明。
实施中,设计文件可含有若干逻辑模块(即module)来构成复杂的逻辑电路,比如设计文件中包含有采用Verilog语言、System Verilog语言描述的RTL描述模块,比如设计文件中包含有IP网表模块,以及通过在设计文件中将这些逻辑模块通过实例化来构建出具体功能的逻辑电路以及逻辑电路之间连接,从而形成设计文件对应的完整电路。
因此,可通过对设计文件进行解析,比如语法分析、语义拆解等,获得关于设计文件中所有逻辑模块的实例化信息,即获得这些逻辑模块在设计文件中各个模块实例之间的实例信息,比如获得模块之间的层级关系、模块的端口连接关系等描述硬件电路的信息作为实例化信息。
步骤S204、根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表。
其中,唯一化实例模块可指抽象模块对应的唯一非重复的实例。
例如,如图2所示,在dut模块中,submodule1模块只实例化为child1,ip模块只实例化为child2,submodule3模块实例化为child3和child4,在submodule1模块内部,submodule10模块实例化为child11、child12和child13。
因此,submodule1模块只有唯一实例child1,ip模块只有唯一实例child2,submodule3模块有非唯一的重复实例child3和child4,因而实例child3和child4只算为一个,这时可将child3或者child4作为submodule3模块的唯一化实例模块,同理submodule10模块对应的三个实例child11、child12和child13中,child11为唯一化实例模块,而child12和child13只能算一个,即可将child12或者child13作为唯一化实例模块。
将前述得到的唯一化实例模块构成dut模块对应的唯一化实例模块列表,结果可如图3所示。
步骤S206、根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果。
实施中,可根据实例化信息,即根据所有逻辑模块在设计文件中的层级关系,自下而上地对唯一化实例模块列表中的每个唯一化实例模块进行遍历,并在遍历中分别对每个唯一化实例模块进行综合,获得该唯一化实例模块对应的网表信息。
需要说明的是,在电子设计自动化中,网表(netlist,或称连线表)是指用基础的逻辑门来描述数字电路连接情况的描述方式,即通过网表可以反映电路连接信息,例如模块的实例、实例内部/外部的信号连接以及信号属性;还有,逻辑综合可以把抽象语言(如Verilog、System Verilog等硬件描述语言)描述的唯一化实例模块,转换为底层(如逻辑门级)描述的电路的连线即网表。
因此,采用自下而上的遍历方式对唯一化实例模块进行逻辑综合,可获得各个抽象语言描述的逻辑模块对应的唯一非重复的实例模块的网表结果,比如前述示例中的submodule1模块、ip模块、submodule3模块、submodule10模块等,不仅可快速地进行综合以获得综合结果,还能在后续处理中,可根据各个模块实例在设计文件中的层级关系、连接关系等信息,快速地将通过网表合并来获得整个设计文件对应的网表。
步骤S208、根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
实施中,根据前述实例化信息,比如模块实例的端口连接信息,可快速地将设计文件中抽象描述的模块实例对应的网表结果,合并生成整个设计文件对应的综合网表,这样基于综合网表,所设计的芯片可以正常工作。
通过步骤S202至步骤S208,可以对芯片设计的设计文件进行实例化解析和处理,可快速地对每个唯一化的实例模块进行综合处理,以及快速合并出一个芯片设计的综合网表,提高综合处理速度,缩短综合处理所需时间,而且综合可针对每个唯一化实例模块进行,并不受到单颗FPGA的物理资源限制,可以支持任意逻辑规模的芯片设计。
在一些实施方式中,可通过将设计文件中的各个逻辑模块之间的层级关系以树形式进行表达,进而基于树可快速地对各个逻辑模块(即树中节点)进行处理。
实施中,可在将设计文件读入内存后,在内存中生成该设计文件中每个逻辑模块对应的模块对象,采用抽象的模块对象来标记各个模块,进而根据设计文件中每个逻辑模块的层级关系,将各个逻辑模块之间的层级关系通过树的形式进行反映,即把这些模块对象作为树中的节点,建立出设计文件对应的一棵树,而且树中包含所述设计文件中所有逻辑模块对应的模块对象和所有模块对象之间的连接关系。
实施中,可采用解析树,其中解析树是语法分析结果的一种表现形式,通常以树状表示语言的语法结构,这里不对解析树作具体限定。
例如,前述示例中的dut模块设计文件,可采用如图4所示的解析树进行表达,即在读入设计文件后,依次将各个模块标记为对应的模块对象,比如将dut模块标记为dut对象,将实例child1标记为child1对象,以此类推,进而将这些模块对象根据它们在设计文件中的连接关系构建一棵解析树。
在一些实施方式中,构建解析树后,通过扫描解析树,可快速、准确地获取设计文件中所有逻辑模块的实例化信息。
在一些实施方式中,构建解析树后,在合并各所述网表结果时,可根据解析树中所有模块对象之间的连接关系,快速、准确地将各网表结果进行合并,从而获得设计文件对应的综合网表。
在一些实施方式中,可根据实例化信息进行精确匹配来确定唯一化实例模块列表。
实施中,所述实例化信息可包括模块名称、端口信号、信号位宽和例化参数,这样可通过所述模块名称、所述端口信号、所述信号位宽和所述例化参数的一致性进行精确匹配,从而确定唯一非重复的实例模块,并将这些唯一非重复的实例模块构成唯一化实例模块列表。
例如,前述实例中,submodule10模块对应有实例child11、child12和child13,通过精确匹配,可快速确定出实例child12和child13为重复的实例。
在一些实施方式中,可采用单独文件记录实例模块的逻辑内容,以便在对唯一化实例模块综合后,可以准确地根据设计文件中逻辑模块的逻辑内容,对网表进行合并连接。
实施中,若设计文件中ip模块已为网表模块,则可仅针对设计文件中的RTL描述模块进行记录。
因此,在自下而上地遍历所述唯一化实例模块列表中,所述逻辑综合方法还可包括以下处理步骤:当所述唯一化实例模块为RTL描述逻辑的实例模块时,将所述唯一化实例模块的逻辑内容输出到一个外部文件,并在父模块中保留所述唯一化实例模块的端口连接信息以将所述唯一化实例模块作为黑盒模块进行处理。
在一些实施方式中,在对唯一化实例模块进行综合中,可直接调用综合工具,对唯一化实例模块进行综合处理。
实施中,可根据综合工具进行综合处理的特性,根据预先编制的处理程序,生成该综合工具对应的运行脚本和参数,进而在对每个唯一化实例模块进行综合时,直接调用所述运行脚本和所述参数,通过执行该脚本和参数,实现对每个唯一化实例模块进行综合来获得网表结果。
需要说明的是,脚本和参数可根据所采用的综合工具进行编写,这里不展开说明。
在一些实施方式中,可针对每个唯一化实例模块进行状态标记,比如记录该唯一化实例模块进行综合的次数,便于后续对设计文件进行综合时,快速地仅针对需要重新综合的唯一化实例模块进行综合,提高综合处理效率。
实施中,所述逻辑综合方法还可包括:记录所述唯一化实例模块在综合中的状态,所述状态包括用于反映所述唯一化实例模块已综合的次数。
在一些实施方式中,通过对唯一化实例模块的记录状态,可快速确定出当前需要进行综合的该唯一化实例模块是否为可以直接进行综合。
实施中,针对第一次进行综合的唯一化实例模块,可直接进行综合,而确定出非第一次综合时,可先从唯一化实例模块列表中,在最近一次(即上一次)已综合的唯一化实例模块中,寻找到当前需要进行综合的当前唯一化实例模块对应的原唯一化实例模块,进而扫描当前唯一化实例模块和原唯一化实例模块,结合上一次的模块实例信息,计算出一个少量需要重做综合的模块实例列表(即需要重新综合的模块实例存放入该列表中,形成新的唯一化实例模块列表),最后只需针对新的唯一化实例模块列表中各个唯一化实例模块进行重新综合。
通过在综合前对唯一化实例模块的状态进行判断,可在修改设计文件后,快速、准确地确定出修改内容对应的唯一化实例模块,而且仅需对该唯一化实例模块进行重新综合,提高了综合效率。
在一些实施方式中,逻辑综合后获得的网表文件,其格式可为EDIF格式,其中EDIF格式是电子设计交换格式(Electronic Design Interchange Format)。
实施中,通过将网表文件格式进行统一,可在合并网表时,按照EDIF格式把每个模块实例的端口连接起来,形成一个完整的设计综合网表,可快速完成网表结果的合并。
在一些实施方式中,当设计文件发生修改而需要重新综合时,可通过前述示例的逻辑综合方法,在快速获得修改内容对应的唯一化实例模块的网表结果后,可根据设计文件中模块的层级关系,快速地按照EDIF格式合并修改内容对应的少量模块网表结果到未改动的设计网表中,从而得到一个新的完整的设计综合网表。
为便于理解,下面以一个芯片设计的过程为例进行示意说明。
如图6所示,首先将设计文件读入到内存中。通常设计文件中可包含有RTL描述模块和ip网表模块,比如采用Verilog语言、System Verilog语言描述的module,比如EDIF格式的ip网表(即内核模块的网表)。
然后,在内存中对RTL描述模块和ip网表模块内容分别按照RTL语言和EDIF格式进行解析,比如进行语法分析和语义拆解, 构建出一个个相应的模块对象。
再然后,可建立一个带层级的完整的模块对象解析树,其中解析树中可包含有设计文件(即用户设计模块)里面的所有模块对象和连接关系。
接着,在层级解析树里面扫描出所有的模块的实例化信息,具体可通过精确匹配名称、端口、位宽和例化参数一致性等扫描匹配过程,找出唯一非重复的模块实例。
再接着,可对解析树进行自下而上处理,比如遍历出唯一化的模块实例列表,若模块实例为RTL描述逻辑,输出模块实例的逻辑内容到一个外部文件,同时在父模块中对此实例模块做黑盒模块处理,只保留端口连接信息。以此循环,直达设计的顶层模块。
之后,根据综合工具在综合处理中的特性要求和预先编写的综合处理程序,生成综合工具对应的运行脚本和参数,调用后得到每一个实例模块综合后的网表文件,比如网表文件的格式保持为EDIF格式。
最后,根据设计文件中所有逻辑模块的层级关系,按照EDIF格式把每个模块实例的端口连接起来,形成一个完整的设计综合网表。
另外,为便于芯片设计中发生修改后需要重新综合处理,比如当用户因设计需求发生变化而对设计文件的内容进行了修改,这时需要进行再次综合处理(即非第一次处理),再对唯一化实例模块进行综合前,可先判断是否为第一次综合处理,若否则可对用户设计内容进行唯一化实例模块扫描,并结合上次的模块实例信息,通过与上一次综合处理的唯一化模块实例进行比较,找出变化的唯一化模块实例,从而可根据修改后的设计文件,快速计算出一个少量需要重做综合的模块实例列表。
在修改后获得新的需要重做综合的模块实例列表后,仍可采用前述综合步骤对需要重新综合的模块实例进行重新综合处理,得到新的模块网表,然后可根据设计的层级关系,按照EDIF格式合并少量的模块网表到未改动的设计网表中,得到一个新的完整的设计综合网表。
基于相同发明构思,本说明书实施例还提供与前述逻辑综合方法对应的逻辑综合装置、电子设备以及计算机存储介质。
如图7所示,本说明书实施例提供的一种逻辑综合装置,包括:获取模块401,获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;确定模块403,根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表;综合模块405,根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;合并模块407,根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
可选地,所述逻辑综合装置还可包括:树模块(图中未示出),其中树模块用于:生成所述设计文件中每个逻辑模块对应的模块对象,并根据所述设计文件中每个逻辑模块的层级关系,将各个所述模块对象建立所述设计文件对应的解析树,所述解析树中包含所述设计文件中所有逻辑模块对应的模块对象和所有模块对象之间的连接关系。
可选地,获取设计文件中所有逻辑模块的实例化信息,包括:扫描所述解析树,获取设计文件中所有逻辑模块的实例化信息。
可选地,根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果,包括:根据所述解析树中所有模块对象之间的连接关系合并各所述网表结果。
可选地,所述实例化信息包括模块名称、端口信号、信号位宽和例化参数;
根据所述实例化信息确定所述设计文件对应的唯一化实例模块列表,包括:通过所述模块名称、所述端口信号、所述信号位宽和所述例化参数进行匹配,确定唯一非重复的实例模块;将若干所述唯一非重复的实例模块构成唯一化实例模块列表。
可选地,所述逻辑综合装置还可包括:黑盒模块(图中未示出),其中黑盒模块用于:在自下而上地遍历所述唯一化实例模块列表中,当所述唯一化实例模块为RTL描述逻辑的实例模块时,将所述唯一化实例模块的逻辑内容输出到一个外部文件,并在父模块中保留所述唯一化实例模块的端口连接信息以将所述唯一化实例模块作为黑盒模块进行处理。
可选地,所述逻辑综合装置还可包括:调用模块(图中未示出),其中调用模块用于生成目标综合工具对应的运行脚本和参数;
对每个唯一化实例模块进行综合,包括:调用所述运行脚本和所述参数,对每个唯一化实例模块进行综合。
可选地,所述逻辑综合装置还可包括:记录模块(图中未示出),其中记录模块用于记录所述唯一化实例模块在综合中的状态,所述状态包括用于反映所述唯一化实例模块已综合的次数。
可选地,所述逻辑综合装置还可包括:判断模块(图中未示出),其中判断模块用于:在对唯一化实例模块进行综合前,根据所述状态确定当前综合中的唯一化实例模块是否为进行第一次综合,若否,则对当前唯一化实例模块和上一次综合中的唯一化实例模块进行扫描,并结合上一次的模块实例信息,获得新的唯一化实例模块列表。
可选地,所述网表结果的文件格式包括EDIF格式,所述逻辑综合装置还可包括:更改模块(图中未示出),其中更改模块用于按照EDIF格式合并少量的模块网表到未改动的设计网表中。
可选地,所述网表结果的格式为EDIF格式;
根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果,包括:根据所述设计文件中各逻辑模块的端口连接信息,按EDIF格式把每个模块实例的端口连接起来以合并各所述网表结果。
基于相同发明构思,本说明书实施例提供一种用于逻辑综合的电子设备。
如图8所示,本发明还提供的电子设备的结构示意图,图中示出了电子设备500的结构,以用于实现前述的逻辑综合方案,这里电子设备500仅仅是一个示例,不应对本发明实施例的功能和使用范围带来限定。
如图8所示,在电子设备500中,可包括:至少一个处理器510;以及,
与所述至少一个处理器通信连接的存储器520;其中,
所述存储器存储520有可被所述至少一个处理器510执行的指令,所述指令被所述至少一个处理器510执行,以使所述至少一个处理器510能够:
获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;
根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表;
根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;
根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
需要说明的是,电子设备500可以以通用计算设备的形式表现,例如其可以为服务器设备。
实施中,电子设备500的组件可以包括但不限于:上述至少一个处理器510、上述至少一个存储器520、连接不同系统组件(包括存储器520和处理器510)的总线530,其中总线530可包括数据总线、地址总线和控制总线。
实施中,存储器520可以包括易失性存储器,例如随机存取存储器(RAM)5201和/或高速缓存存储器5202,还可以进一步包括只读存储器(ROM)5203。
存储器520还可以包括具有一组(至少一个)程序模块5204的程序工具5205,这样的程序模块5204包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
处理器510通过运行存储在存储器520中的计算机程序,从而执行各种功能应用以及数据处理。
电子设备500也可以与一个或多个外部设备540(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口550进行。并且,电子设备500还可以通过网络适配器560与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信,网络适配器560通过总线530与电子设备500中的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备500使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
基于相同发明构思,本说明书实施例提供一种用于逻辑综合的计算机存储介质,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令设置为:
获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;
根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表;
根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;
根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
需要说明的是,所述计算机存储介质可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
在可能的实施方式中,本发明还可以提供将数据处理实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行前述任意一个实施例所述方法中的若干步骤。
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明中的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
基于相同发明构思,本说明书实施例提供一种逻辑综合工具,所述逻辑综合工具用于对芯片设计中的设计文件进行逻辑综合,其中逻辑综合步骤包括:
获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;
根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表;
根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;
根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例侧重说明的都是与其他实施例的不同之处。尤其,对于后面说明的产品实施例而言,由于其与方法是对应的,描述比较简单,相关之处参见方法实施例的部分说明即可。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (14)
1.一种逻辑综合方法,其特征在于,包括:
获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;
根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表,其中唯一化实例模块为抽象模块对应的唯一非重复的实例;
根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;
根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
2.根据权利要求1所述的逻辑综合方法,其特征在于,所述逻辑综合方法还包括:
生成所述设计文件中每个逻辑模块对应的模块对象;
根据所述设计文件中每个逻辑模块的层级关系,将各个所述模块对象建立所述设计文件对应的解析树,所述解析树中包含所述设计文件中所有逻辑模块对应的模块对象和所有模块对象之间的连接关系。
3.根据权利要求2所述的逻辑综合方法,其特征在于,获取设计文件中所有逻辑模块的实例化信息,包括:扫描所述解析树,获取设计文件中所有逻辑模块的实例化信息。
4.根据权利要求2所述的逻辑综合方法,其特征在于,根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果,包括:根据所述解析树中所有模块对象之间的连接关系合并各所述网表结果。
5.根据权利要求1所述的逻辑综合方法,其特征在于,所述实例化信息包括模块名称、端口信号、信号位宽和例化参数;
根据所述实例化信息确定所述设计文件对应的唯一化实例模块列表,包括:
通过所述模块名称、所述端口信号、所述信号位宽和所述例化参数进行匹配,确定唯一非重复的实例模块;
将若干所述唯一非重复的实例模块构成唯一化实例模块列表。
6.根据权利要求1所述的逻辑综合方法,其特征在于,在自下而上地遍历所述唯一化实例模块列表中,所述逻辑综合方法还包括:
当所述唯一化实例模块为RTL描述逻辑的实例模块时,将所述唯一化实例模块的逻辑内容输出到一个外部文件,并在父模块中保留所述唯一化实例模块的端口连接信息以将所述唯一化实例模块作为黑盒模块进行处理。
7.根据权利要求1所述的逻辑综合方法,其特征在于,所述逻辑综合方法还包括:生成目标综合工具对应的运行脚本和参数;
对每个唯一化实例模块进行综合,包括:调用所述运行脚本和所述参数,对每个唯一化实例模块进行综合。
8.根据权利要求1所述的逻辑综合方法,其特征在于,所述逻辑综合方法还包括:
记录所述唯一化实例模块在综合中的状态,所述状态包括用于反映所述唯一化实例模块已综合的次数。
9.根据权利要求8所述的逻辑综合方法,其特征在于,在对唯一化实例模块进行综合前,所述逻辑综合方法还包括:
根据所述状态确定当前综合中的唯一化实例模块是否为进行第一次综合;
若否,则对当前唯一化实例模块和上一次综合中的唯一化实例模块进行扫描,并结合上一次的模块实例化信息,获得新的唯一化实例模块列表。
10.根据权利要求9所述的逻辑综合方法,其特征在于,所述网表结果的文件格式包括EDIF格式,所述逻辑综合方法还包括:
按照EDIF格式合并少量的模块网表到未改动的设计网表中。
11.根据权利要求1所述的逻辑综合方法,其特征在于,所述网表结果的格式为EDIF格式;
根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果,包括:根据所述设计文件中各逻辑模块的端口连接信息,按EDIF格式把每个模块实例的端口连接起来以合并各所述网表结果。
12.一种逻辑综合装置,其特征在于,包括:
获取模块,获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;
确定模块,根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表,其中唯一化实例模块为抽象模块对应的唯一非重复的实例;
综合模块,根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;
合并模块,根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
13.一种用于逻辑综合的电子设备,其特征在于,包括:
至少一个处理器;以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够:
获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;
根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表,其中唯一化实例模块为抽象模块对应的唯一非重复的实例;
根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;
根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
14.一种用于逻辑综合的计算机存储介质,其特征在于,所述计算机存储介质存储有计算机可执行指令,所述计算机可执行指令设置为:
获取设计文件中所有逻辑模块的实例化信息,所述设计文件为芯片设计的设计文件;
根据所述实例化信息确定所述设计文件中各个逻辑模块对应的唯一化实例模块,以将确定的若干唯一化实例模块作为所述设计文件对应的唯一化实例模块列表,其中唯一化实例模块为抽象模块对应的唯一非重复的实例;
根据所述实例化信息,自下而上地遍历所述唯一化实例模块列表,并对每个唯一化实例模块分别进行综合,以分别获得每个所述唯一化实例模块各自对应的网表结果;
根据所述设计文件中各逻辑模块的端口连接信息合并各所述网表结果以生成所述设计文件对应的综合网表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110695130.1A CN113255258B (zh) | 2021-06-23 | 2021-06-23 | 逻辑综合方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110695130.1A CN113255258B (zh) | 2021-06-23 | 2021-06-23 | 逻辑综合方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113255258A CN113255258A (zh) | 2021-08-13 |
CN113255258B true CN113255258B (zh) | 2021-10-01 |
Family
ID=77189249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110695130.1A Active CN113255258B (zh) | 2021-06-23 | 2021-06-23 | 逻辑综合方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113255258B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113688587B (zh) * | 2021-08-31 | 2024-03-22 | 上海商汤阡誓科技有限公司 | 一种电路布图的生成方法、装置、计算机设备及存储介质 |
CN114117981B (zh) * | 2022-01-26 | 2022-04-22 | 湖南泛联新安信息科技有限公司 | 一种基于先验信息的rtl级逻辑划分方法 |
CN114861574B (zh) * | 2022-04-24 | 2024-01-12 | 东科半导体(安徽)股份有限公司 | 一种应用于层次化物理设计的逻辑简化方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106383938A (zh) * | 2016-09-07 | 2017-02-08 | 北京深维科技有限公司 | 一种fpga存储器推断方法及装置 |
CN109284578A (zh) * | 2018-02-27 | 2019-01-29 | 上海安路信息科技有限公司 | 逻辑电路布局布线方法、图形化显示方法及其系统 |
US20200151582A1 (en) * | 2018-11-13 | 2020-05-14 | Gregory Evan Sharp | Ascriptive and descriptive entities for process and translation: a limited iterative ontological notation |
CN112257369A (zh) * | 2020-12-21 | 2021-01-22 | 上海国微思尔芯技术股份有限公司 | 一种逻辑设计分割方法及系统 |
CN112541310A (zh) * | 2020-12-18 | 2021-03-23 | 广东高云半导体科技股份有限公司 | 逻辑综合控制方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8151235B2 (en) * | 2009-02-24 | 2012-04-03 | Syphermedia International, Inc. | Camouflaging a standard cell based integrated circuit |
CN108829903B (zh) * | 2017-11-09 | 2021-11-05 | 北京广利核系统工程有限公司 | 判定fpga冗余设计的代码与综合后电路一致性的方法和系统 |
US10803224B2 (en) * | 2018-11-18 | 2020-10-13 | International Business Machines Corporation | Propagating constants of structured soft blocks while preserving the relative placement structure |
CN110046394B (zh) * | 2019-03-20 | 2019-12-27 | 广东高云半导体科技股份有限公司 | 集成电路网表生成方法、装置、计算机设备及存储介质 |
-
2021
- 2021-06-23 CN CN202110695130.1A patent/CN113255258B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106383938A (zh) * | 2016-09-07 | 2017-02-08 | 北京深维科技有限公司 | 一种fpga存储器推断方法及装置 |
CN109284578A (zh) * | 2018-02-27 | 2019-01-29 | 上海安路信息科技有限公司 | 逻辑电路布局布线方法、图形化显示方法及其系统 |
US20200151582A1 (en) * | 2018-11-13 | 2020-05-14 | Gregory Evan Sharp | Ascriptive and descriptive entities for process and translation: a limited iterative ontological notation |
CN112541310A (zh) * | 2020-12-18 | 2021-03-23 | 广东高云半导体科技股份有限公司 | 逻辑综合控制方法及装置 |
CN112257369A (zh) * | 2020-12-21 | 2021-01-22 | 上海国微思尔芯技术股份有限公司 | 一种逻辑设计分割方法及系统 |
Non-Patent Citations (2)
Title |
---|
Instant Access Memory Design based on an FPGA;S. Aggarwal 等;《2020 4th International Conference on Intelligent Computing and Control Systems (ICICCS)》;20200619;第74-79页 * |
基于IP-XACT标准的SoC集成方法;黄凯杰 等;《浙江大学学报(工学版)》;20131031;第47卷(第10期);第1770-1776页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113255258A (zh) | 2021-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113255258B (zh) | 逻辑综合方法、装置、电子设备及存储介质 | |
US7162706B2 (en) | Method for analyzing and validating clock integration properties in circuit systems | |
US6378123B1 (en) | Method of handling macro components in circuit design synthesis | |
US20070276644A1 (en) | Conversion of circuit description to a transaction model | |
US9665674B2 (en) | Automating a microarchitecture design exploration environment | |
CN113255272B (zh) | 语句块封装方法、装置、电子设备及存储介质 | |
CN110046394B (zh) | 集成电路网表生成方法、装置、计算机设备及存储介质 | |
CN110489812B (zh) | 多层层级网表处理方法、装置、计算机设备及存储介质 | |
US9798844B2 (en) | Phase algebra for analysis of hierarchical designs | |
CN111709215B (zh) | 一种ip管理系统及ip管理方法 | |
WO2007032767A2 (en) | Extensible internal representation of systems with parallel and sequential implementations | |
CN115113927A (zh) | 寄存器模型处理方法、装置、计算机设备和存储介质 | |
Goli et al. | Automated analysis of virtual prototypes at electronic system level | |
CN112733478B (zh) | 用于对设计进行形式验证的装置 | |
CN117907812B (zh) | 电路检测方法及装置、电子设备、存储介质、程序产品 | |
US20220012392A1 (en) | Systems and Methods for Generating Synthesizable Netlists From Register Transfer Level Designs | |
US20200387654A1 (en) | Behavioral design recovery from flattened netlist | |
Huggi et al. | Design and verification of memory elements using python | |
CN115687108A (zh) | 基于uvm与fpv相结合的验证方法、平台、终端及存储介质 | |
CN108334313A (zh) | 用于大型soc研发的持续集成方法、装置及代码管理系统 | |
CN117131824A (zh) | 自动生成芯片设计rtl代码的方法、电子设备和介质 | |
US6279143B1 (en) | Method and apparatus for generating a database which is used for determining the design quality of network nodes | |
CN117391002B (zh) | 一种ip核扩展描述方法及ip核生成方法 | |
CN116861829B (zh) | 用于定位逻辑系统设计中错误的方法、电子设备 | |
CN116431582B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: Room 27, 6th floor, No. 29 and 30, Lane 1775, Qiushan Road, Lingang New District, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai, 201306 Patentee after: Shanghai Sierxin Technology Co.,Ltd. Address before: Room 27, 6th floor, No. 29 and 30, Lane 1775, Qiushan Road, Lingang New District, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai, 201306 Patentee before: Shanghai Guowei silcore Technology Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |