CN110046394B - 集成电路网表生成方法、装置、计算机设备及存储介质 - Google Patents
集成电路网表生成方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN110046394B CN110046394B CN201910212246.8A CN201910212246A CN110046394B CN 110046394 B CN110046394 B CN 110046394B CN 201910212246 A CN201910212246 A CN 201910212246A CN 110046394 B CN110046394 B CN 110046394B
- Authority
- CN
- China
- Prior art keywords
- name
- original
- module
- target
- signal
- 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
Classifications
-
- 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]
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
本发明公开了一种集成电路网表生成方法、装置、计算机设备及存储介质。该方法包括获取原始设计文件并对原始设计文件进行识别,获取原始设计文件对应的设计层级模式;采用FPGA综合工具对原始设计文件进行逻辑综合处理,获取原始设计文件对应的输出层级模式和原始集成电路网表中包括的原始模块名称、原始器件名称和原始信号名称;依据设计层级模式和输出层级模式,对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称,以生成目标集成电路网表,使得目标集成电路网表中的目标模块名称、目标器件名称和目标信号名称携带有设计信息,并达到命名唯一性的要求。
Description
技术领域
本发明涉及FPGA综合软件开发领域,尤其涉及一种集成电路网表生成方法、装置、计算机设备及存储介质。
背景技术
FPGA软件设计流程主要包括逻辑综合,布局布线及比特流生成,其中逻辑综合阶段要将用户的硬件描述语言设计综合为集成电路网表,并且输出为符合语法且可验证的网表文件。
为了保证生成的网表文件符合语法且可被验证,网表文件中所有器件及信号的命名在输出时必须保证唯一性;同时要尽量包含原设计信息,以方便用户对综合结果进行分析验证。而目前随着半导体技术的不断发展,FPGA设计的复杂度越来越高,相应的集成电路网表的规模也越来越大。随着集成电路网表规模的增大,既要保持输出的网表文件中各器件和信号的命名具有唯一性,又要确保网表文件中各器件和信号的命名包含设计信息越来越困难。
发明内容
本发明实施例提供一种集成电路网表生成方法、装置、计算机设备及存储介质,以解决随着集成电路网表规模的增大,既要保持输出的网表文件中各器件和信号的命名具有唯一性,又要确保网表文件中各器件和信号的命名包含设计信息越来越困难的问题。
一种集成电路网表生成方法,包括:
获取原始设计文件,所述原始设计文件包括至少一个功能模块;
对所述原始设计文件进行识别,获取所述原始设计文件对应的设计层级模式;
采用FPGA综合工具对所述原始设计文件进行逻辑综合处理,获取所述原始设计文件对应的输出层级模式和原始集成电路网表,所述原始集成电路网表包括原始模块名称、原始器件名称和原始信号名称;
依据所述设计层级模式和所述输出层级模式,对所述原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称;
基于所述目标模块名称、所述目标器件名称和所述目标信号名称更新所述原始集成电路网表,获取目标集成电路网表。
一种集成电路网表生成装置,包括:
原始设计文件获取模块,用于获取原始设计文件,所述原始设计文件包括至少一个功能模块;
原始文件识别模块,用于对所述原始设计文件进行识别,获取所述原始设计文件对应的设计层级模式;
原始文件处理模块,用于采用FPGA综合工具对所述原始设计文件进行逻辑综合处理,获取所述原始设计文件对应的输出层级模式和原始集成电路网表,所述原始集成电路网表包括原始模块名称、原始器件名称和原始信号名称;
名称获取模块,用于依据所述设计层级模式和所述输出层级模式,对所述原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称;
目标集成电路网表获取模块,用于基于所述目标模块名称、所述目标器件名称和所述目标信号名称更新所述原始集成电路网表,获取目标集成电路网表。
一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述集成电路网表生成方法。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述集成电路网表生成方法。
上述集成电路网表生成方法、装置、计算机设备及存储介质,通过对原始设计文件进行识别,获取原始设计文件的设计层级模式,以便确定后续执行步骤,使得执行过程具有针对性和准确性。在确定原始设计文件的设计层级模式后,采用FPGA综合工具对原始设计文件进行逻辑综合处理,获取原始集成电路网表。并根据原始设计文件的输出层级模式和设计层级模式选择对应的命名方式分别对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,使得获取的目标模块名称、目标器件名称和目标信号名称携带有设计信息,并保证命名的唯一性,以便通过目标模块名称、目标器件名称和目标信号名称,准确获知各功能模块、实例器件和信号的设计信息,同时可以达到原始设计文件中每一功能模块、每一实例器件和每一信号的命名唯一性的要求,提高集成电路网表的质量。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例中集成电路网表生成方法的一流程图;
图2是本发明一实施例中集成电路网表生成方法的另一流程图;
图3是本发明一实施例中集成电路网表生成方法的另一流程图;
图4是本发明一实施例中集成电路网表生成方法的另一流程图;
图5是本发明一实施例中集成电路网表生成方法的另一流程图;
图6是本发明一实施例中集成电路网表生成方法的另一流程图;
图7是本发明一实施例中集成电路网表生成装置的一原理框图;
图8是本发明一实施例中计算机设备的一示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请提供的集成电路网表生成方法,应用在集成电路开发系统上,用于进行FPGA软件开发,具体用于实现逻辑综合、布局布线及比特流生成等流程,在逻辑综合处理过程中,可保证生成的网表文件中各器件和信号命名的唯一性,又保证各器件和信号命名包含用户设计信息。该集成电路开发系统包括计算机设备和服务器,其中,计算机设备通过网络与服务器进行通信。计算机设备包括但不限于各种个人计算机和笔记本电脑。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一实施例中,如图1所示,提供一种集成电路网表生成方法,具体包括如下步骤:
S10:获取原始设计文件,原始设计文件包括至少一个功能模块。
其中,原始设计文件指反映用户自主设计的集成电路的硬件描述语言的文件。该硬件描述语言具体是寄存器传输级的结构描述。该功能模块是指用户自主设计的用于反映其所要设计的电路中可实现特定功能的模块。可以理解地,一个原始设计文件中包括至少一个功能模块。具体地,用户可计算机设备上输入原始设计文件,并通过计算机设备发送给对应的服务器,以使服务器获取原始设计文件。
S20:对原始设计文件进行识别,获取原始设计文件对应的设计层级模式。
具体地,服务器获取原始设计文件后,对原始设计文件中的设计层级模式进行识别,获取原始设计文件对应的设计层级模式。本实施例中的设计层级模式包括单层设计模式和多层设计模式。其中,单层设计模式指仅包含一个功能模块的设计模式。多层设计模式包括多个功能模块的设计模式,具体可划分为顶层功能模块(top module)和层级功能模块(sub module,子模块)。顶层功能模块指RTL(Register Transfer Level,寄存器转换级电路)设计中的top module,在实际综合时仅能有一个top module。层级功能模块指RTL设计中的sub module。本实施例中,通过获取原始设计文件对应的设计层级模式,方便服务器选择对应的处理方式执行后续步骤。
S30:采用FPGA综合工具对原始设计文件进行逻辑综合处理,获取原始设计文件对应的输出层级模式和原始集成电路网表,原始集成电路网表包括原始模块名称、原始器件名称和原始信号名称。
其中,FPGA综合工具指对原始设计文件进行逻辑综合的工具。逻辑综合指将原始设计文件中的硬件描述语言设计综合为集成电路网表,并输出为符合语法且可验证的网表文件的过程。
具体地,在识别原始设计文件的设计层级模式后,服务器采用FPGA综合工具对原始设计文件进行逻辑综合处理,获取原始设计文件对应的输出层级模式和原始集成电路网表。其中,输出层级模式指FPGA综合工具对原始设计文件进行逻辑综合处理后得到的一种输出方式。本实施例中的输出层级模式包括单层输出模式和多层输出模式。其中,单层输出模式指原始设计文件对应的输出是单层的模式;多层输出模式指原始设计文件对应的输出是多层的模式。原始集成电路网表指用于描述电路中各实例器件相互之间连接关系的一种文件。本实施例中的原始集成电路网表包括原始模块名称、原始器件名称和原始信号名称。其中,原始模块名称指服务器对功能模块分配的名称;原始器件名称指服务器对实例器件分配的名称;原始信号名称指服务器对信号分配的名称。
S40:依据设计层级模式和输出层级模式,对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称。
本实施例中不同设计层级模式和输出层级模式情况下对应的功能模块、实例器件和信号的命名方式不同。因此,服务器在确定原始设计文件的设计层级模式和输出层级模式后,会按照对应的命名方式对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,使得获取的目标模块名称、目标器件名称和目标信号名称携带有用户设计信息(如功能模块、实例器件和信号的层级位置),以便通过目标模块名称、目标器件名称和目标信号名称,准确获知各功能模块、实例器件和信号的设计信息,同时可以达到原始设计文件中每一功能模块、每一实例器件和每一信号的命名唯一性的要求。其中,目标模块名称指重命名后的功能模块的名称;目标器件名称指重命名后实例器件的名称;目标信号名称指重命名后的信号的名称。
S50:基于目标模块名称、目标器件名称和目标信号名称更新原始集成电路网表,获取目标集成电路网表。
具体地,在获取目标模块名称、目标器件名称和目标信号名称后,将原始集成电路网表中的原始模块名称替换为目标模块名称,原始器件名称替换为目标器件名称,原始信号名称替换为目标信号名称,形成目标集成电路网表,方便后续用户对目标集成电路网表进行分析。其中,目标集成电路网表指最终生成的以目标模块名称、目标器件名称和目标信号名称对功能模块、实例器件和信号进行命名的网表文件。可以理解地,目标集成电路网表中采用目标模块名称、目标器件名称和目标信号名称对功能模块、实例器件和信号进行命名,既保证其命名的唯一性,又可使命名后的功能模块、实例器件和信号包含其设计信息。
步骤S10-步骤S50,通过对原始设计文件进行识别,获取原始设计文件的设计层级模式,以便确定后续执行步骤,使得执行过程具有针对性和准确性。在确定原始设计文件的设计层级模式后,采用FPGA综合工具对原始设计文件进行逻辑综合处理,获取原始集成电路网表。并根据原始设计文件的输出层级模式和设计层级模式选择对应的命名方式分别对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,使得获取的目标模块名称、目标器件名称和目标信号名称携带有设计信息,并保证命名的唯一性,以便通过目标模块名称、目标器件名称和目标信号名称,准确获知各功能模块、实例器件和信号的设计信息,同时可以达到原始设计文件中每一功能模块、每一实例器件和每一信号的命名唯一性的要求,提高集成电路网表的质量。
在一实施例中,由于设计层级模式包括单层设计模式和多层设计模式,输出层级模式包括单层输出模式和多层输出模式,因此,根据设计层级模式和输出层级模式,可以将对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名化分为四种情况。具体包括:(一)单层设计模式和单层输出模式;(二)单层设计模式和多层输出模式;(三)多层设计模式和单层输出模式;(四)多层设计模式和多层输出模式。由于本实施例中在单层设计模式下,原始设计文件中仅包括一个功能模块,因此,不论输出层级模式是单层输出模式还是多层输出模式,对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名的方式均相同。如图2所示,步骤S40,依据设计层级模式和输出层级模式,对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称,包括如下步骤:
S41:若设计层级模式为单层设计模式,则将原始模块名称、原始器件名称和原始信号名称作为目标模块名称、目标器件名称和目标信号名称。
具体地,由于单层设计模式中仅包括一个功能模块,原始模块名称、原始器件名称和原始信号名称可以反映用户的设计信息(如功能模块、实例器件和信号的层级位置),则不用进行对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重新命名,可以直接将原始模块名称、原始器件名称和原始信号名称作为目标模块名称、目标器件名称和目标信号名称。可以理解地,只要设计层级模式为单层设计模式,不论输出层级模式为单层输出模式还是多层输出模式,即针对上述(一)和(二)这两种情况,均无需对原始模块名称、原始器件名称和原始信号名称进行重命名,即只需将原始模块名称、原始器件名称和原始信号名称确定为目标模块名称、目标器件名称和目标信号名称即可。
S42:若设计层级模式为多层设计模式,且输出层级模式为单层输出模式,则采用第一模块命名方式对原始模块名称进行重命名,获取目标模块名称;采用第一器件命名方式对原始器件名称进行重命名,获取目标器件名称;采用信号命名方式对原始信号名称进行重命名,获取目标信号名称。
可以理解地,若原始设计文件中的设计层级模式为多层设计模式,则表示原始设计文件中包括的功能模块不止一个。一般地,若为多层设计模式,则将原始设计文件中的功能模块划分为顶层功能模块和层级功能模块。
其中,第一模块命名方式指用户设计的适用于多层设计模式和单层输出模式下,对原始设计文件中每一层功能模块对应的原始模块名称进行重命名的方式。在设计层级模式为多层设计模式,且输出层级模式为单层输出模式时,采用第一模块命名方式对每一功能模块对应的原始模块名称进行重命名,可使得最终获取的目标模块名称既保证各功能模块对应的目标模块名称的唯一性,又能反映各功能模块的设计信息。
其中,第一器件命名方式指用户设计的适用于多层设计模式和单层输出模式下,对原始设计文件中的每一实例器件对应的原始器件名称进行重命名的方式。在设计层级模式为多层设计模式,且输出层级模式为单层输出模式时,采用第一器件命名方式对每一实例器件对应的原始器件名称进行重命名,可使得最终获取的目标器件名称既保证各实例器件对应的目标器件名称的唯一性,又能反映各实例器件的设计信息。
由于多层设计模式下的单层输出模式和多层输出模式对应的信号命名方式一样,因此,不对信号命名方式进行区分。其中,信号命名方式指用户设计的适用于多层设计模式下(不论其输出层级模式为单层输出模式还是多层输出模式),对原始设计文件中的每一信号对应的原始信号名称进行重命名的方式。该信号命名方式对每一信号对应的原始信号名称进行重命名处理之后,可保证最终生成的目标信号名称具有唯一性,又能反映设计信号。
步骤S42中,在设计层级模式为多层设计模式,且输出层级模式为单层输出模式下,通过第一模块命名方式对每一层功能模块对应的原始模块名称进行重命名,获取目标模块名称;通过第一器件命名方式每一实例器件对应的原始器件名称进行重命名,获取目标器件名称;通过信号命名方式对原始信号名称进行重命名,获取目标信号名称,使得目标模块名称、目标器件名称和目标信号名称携带有用户设计信息,准确反映各功能模块、实例器件和信号所在的层级位置和名称。
S43:若设计层级模式为多层设计模式,且输出层级模式为多层输出模式,则采用第二模块命名方式对原始模块名称进行重命名,获取目标模块名称;采用第二器件命名方式对原始器件名称进行重命名,获取目标器件名称;采用信号命名方式对原始信号名称进行重命名,获取目标信号名称。
其中,第二模块命名方式指用户设计的适用于多层设计模式和多层输出模式下,对原始设计文件中每一层功能模块对应的原始模块名称进行重命名的方式。在设计层级模式为多层设计模式,且输出层级模式为多层输出模式时,采用第二模块命名方式对每一功能模块对应的原始模块名称进行重命名,可使得最终获取的目标模块名称既保证各功能模块对应的目标模块名称的唯一性,又能反映各功能模块的设计信息。
其中,第二器件命名方式指用户设计的适用于多层设计模式和多层输出模式下,对原始设计文件中的每一实例器件对应的原始器件名称进行重命名的方式。在设计层级模式为多层设计模式,且输出层级模式为多层输出模式时,采用第二器件命名方式对每一实例器件对应的原始器件名称进行重命名,可使得最终获取的目标器件名称既保证各实例器件对应的目标器件名称的唯一性,又能反映各实例器件的设计信息。
由于多层设计模式下的单层输出模式和多层输出模式对应的信号命名方式一样,因此,多层设计模式和多层输出模式下的信号命名方法与上述步骤S42相同,为避免重复,在此不一一赘述。
步骤S43,设计层级模式为多层设计模式,且输出层级模式为多层输出模式下,通过第二模块命名方式对每一层功能模块对应的原始模块名称进行重命名,获取目标模块名称;通过第二器件命名方式每一实例器件对应的原始器件名称进行重命名,获取目标器件名称;通过信号命名方式对原始信号名称进行重命名,获取目标信号名称,使得目标模块名称、目标器件名称和目标信号名称携带有用户设计信息,准确反映各功能模块、实例器件和信号所在的层级位置和名称。
步骤S41-步骤S43,通过计层级模式和输出层级模式,对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称,以使最终获取的目标模块名称、目标器件名称和目标信号名称,既保证各功能模块、各实例器件和各信号的命名的唯一性,又能反映功能模块、各实例器件和各信号的设计信息。
在一实施例中,功能模块包括顶层功能模块和层级功能模块;步骤S42中,采用第一模块命名方式对原始模块名称进行重命名,获取目标模块名称,具体包括:将顶层功能模块的原始模块名称作为顶层功能模块的目标模块名称;获取层级功能模块中的实例名,基于顶层功能模块的原始模块名称和层级功能模块中的实例名获取层级功能模块对应的目标模块名称。
其中,实例名指层级功能模块中实例的名称,如顶层功能模块为moduletop,层级功能模块为module a,module a中包括两个实例a0、a1,则a0、a1即为该层级功能模块中的实例名,目标模块名称为moduletop{a0a1}。
在一实施例中,功能模块包括顶层功能模块和层级功能模块;如图3所示,步骤S42中,采用第一器件命名方式对原始器件名称进行重命名,获取目标器件名称,具体包括如下步骤:
S4211:基于原始器件名称,确定原始器件名称对应的实例器件的层级位置。
其中,层级位置指该位置在原始设计文件中属于哪一个层级。具体地,在获取原始器件名称后,服务器会根据原始器件名称确定该原始器件名称对应的实例器件在原始设计文件中的层级位置,为后续对原始器件名称进行重命名提供了数据来源。
S4212:基于实例器件的层级位置,省略顶层功能模块的原始模块名称,将层级功能模块对应的原始模块名称采用分隔符进行分隔,以获取实例器件对应的模块实例名。
S4213:获取实例器件对应的第一个输出信号名,将第一个输出信号名作为实例器件的器件实例名。
其中,器件实例名指实例器件的名称。
S4214:获取实例器件对应的原始ID,采用器件ID命名格式对原始ID进行命名,获取实例器件的器件ID。
其中,原始ID指原始设计文件中实例器件携带的用于唯一标识实例器件的字符。进一步地,器件ID命名格式为“_inst”+原始ID。
S4215:采用实例器件对应的模块实例名、器件实例名和器件ID的组合,对原始器件名称进行重命名,获取目标器件名称。
例如inst in1在module sub中声明,sub在module top中实例化为sub moduleobj0,因此,目标器件名称为obj0/in1_inst0。其中,原始ID则为0。
步骤S4211-步骤S4215,通过获取实例器件对应的模块实例名、器件实例名和器件ID,并对实例器件对应的模块实例名、器件实例名和器件ID进行组合,获取目标器件名称,使得目标器件名称具有唯一性,既反映了该实例器件的名称,又反映了该实例器件所在的层级位置。
在一实施例中,功能模块包括顶层功能模块和层级功能模块。如图4所示,步骤S42中,采用信号命名方式对原始信号名称进行重命名,获取目标信号名称,具体包括如下步骤:
S4221:基于原始信号名称,确定原始信号名称对应的信号驱动管脚的层级位置,以获取信号生成的层级位置。
S4222:基于信号生成的层级位置,省略顶层功能模块的原始模块名称,将层级功能模块对应的原始模块名称采用分隔符进行分隔,获取信号对应的模块实例名。
S4223:判断信号是否为定义信号,若信号为定义信号,则采用定义信号名称对信号进行命名,获取信号名。
其中,定义信号为用户在原始设计文件中定义好的信号。定义信号名称指用户在设计原始设计文件是对信号进行命名的名称。
S4224:若信号为综合产生信号,则采用内部生成名称对信号进行命名,获取信号名。
其中,综合产生信号指对原始设计文件进行逻辑综合处理时产生的信号。内部生成名称指FPGA综合工具在对原始文件进行逻辑综合处理时,对生成的综合产生信号进行命名的名称。
S4225:获取信号名携带的信号ID,采用信号对应的模块实例名、信号名和信号ID的组合,对原始信号名称进行重命名,获取目标信号名称。
由于用户在原始设计文件中的定义信号在逻辑综合处理过程中可能被拆分为多个同名的子定义信号,因此,为了便于区分,FPGA综合工具会对每个子定义信号赋予一个单独的信号ID,以保证每一个子定义信号具有唯一性。其中,信号ID指用于唯一区别子定义信号的标识。
例如wire net1在module sub中声明,sub在module top中实例化为sub moduleobj0,因此,目标信号名称为obj0/net1_0。
步骤S4221-步骤S4225,通过获取模块实例名、信号名和信号ID,并对信号对应的模块实例名、信号名和信号ID进行组合,获取目标信号名称,使得目标信号名称具有唯一性,既反映了该信号的名称,又反映了该信号所在的层级位置。
在一实施例中,如图5所示,步骤S43中,采用第二模块命名方式对原始模块名称进行重命名,获取目标模块名称,具体包括如下步骤:
S4311:基于原始模块名称,确定原始模块名称对应的功能模块的层级位置。
具体地,在获取原始模块名称后,服务器会根据原始模块名称确定该原始模块名称对应的模块在原始设计文件中的层级位置。确定模块在原始设计中的层级位置为后续对原始模块名称进行重命名提供了数据来源。
S4312:基于功能模块的层级位置,省略顶层功能模块的原始模块名称,并获取层级功能模块对应的原始模块声明命名和原始模块实例命名。
其中,原始模块声明命名指层级功能模块sub module在声明和实例化时的名称,如声明sub module时使用的module a{…},a即模块声明命名,在顶层功能模块top module中实例化两个a的实例a0和a1,a0和a1即模块实例命名。
具体地,由于逻辑综合处理过程中,对原始设计文件中同一功能模块的多个实例可能采取不同优化方案,因此每个实例在输出时都将有单独的模块声明。本实施例中的声明命名和实例化命名的确定方式相同,都是省略顶层模块对应的原始模块名称,然后根据实例对象所在层级功能模块获取层级功能模块的原始模块名称,最后对各层级功能模块采用分隔符号(如“/”)符进行分隔,以区分不同层级中可能出现的重名实例。
S4313:采用分隔符对层级功能模块对应的原始模块声明命名和原始模块实例命名进行分隔,获取目标模块声明命名和目标模块实例命名。
S4314:采用目标模块声明命名和目标模块实例命名的组合,对每一层原始模块名称进行重命名,获取目标模块名称。
例如声明sub module时使用的module a{…}和module b{…},a和b即模块声明命名,在top module中有两个a的实例对象a0和a1,module a中有一个b的实例对象b0,a0和a1即module a的模块实例命名,b1即module b的模块实例命名,因此,目标模块名称为modulea0{a0/b0、a1/b0},modulea1{a0/b0、a1/b0},module a0/b0{…},module a1/b0{…}。
步骤S4311-步骤S4314,通过获取目标模块声明命名和目标模块实例命名,并对目标模块声明命名和目标模块实例命名进行组合,获取目标模块名称,使得目标模块名称具有唯一性,既反映了该实例器件的名称,又反映了该实例器件所在的层级位置。
在一实施例中,如图6所示,步骤S432中,采用第二器件命名方式对原始器件名称进行重命名,获取目标器件名称,具体包括如下步骤:
S4321:获取实例器件对应的第一个输出信号名,将第一个输出信号名作为实例器件的器件实例名。
S4322:获取实例器件对应的原始ID,采用器件ID命名格式对原始ID进行命名,获取实例器件的器件ID。
S4323:采用实例器件对应的器件实例名和器件ID的组合,对原始器件名称进行重命名,获取目标器件名称。
例如inst in1在module sub中声明,sub在module top中实例化为sub moduleobj0,因此,目标器件名称为in1_inst0。其中,原始ID则为0。
步骤S4321-步骤S4323,通过获取实例器件的器件实例名和器件ID,并对实例器件对应的器件实例名和器件ID进行组合,获取目标器件名称,使得目标器件名称具有唯一性,既反映了该实例器件的名称,又反映了该实例器件所在的层级位置。
本发明提供的集成电路网表生成方法,通过对原始设计文件进行识别,获取原始设计文件的设计层级模式,以便确定后续执行步骤,使得执行过程具有针对性和准确性。在确定原始设计文件的设计层级模式后,采用FPGA综合工具对原始设计文件进行逻辑综合处理,获取输出层级模式和原始集成电路网表。并根据原始设计文件的输出层级模式和设计层级模式选择对应的命名方式分别对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,使得获取的目标模块名称、目标器件名称和目标信号名称携带有用户设计信息,用户可以通过目标模块名称、目标器件名称和目标信号名称,准确获知各功能模块、实例器件和信号的设计信息,同时可以达到原始设计文件中每一功能模块、每一实例器件和每一信号的命名唯一性的要求,提高集成电路网表的质量。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
在一实施例中,提供一种集成电路网表生成装置,该集成电路网表生成装置与上述实施例中集成电路网表生成方法一一对应。如图7所示,该集成电路网表生成装置包括原始设计文件获取模块10、原始文件识别模块20、原始文件处理模块30、名称命名模块40和目标集成电路网表获取模块50。各功能模块详细说明如下:
原始设计文件获取模块10,用于获取原始设计文件,原始设计文件包括至少一个功能模块。
原始文件识别模块20,用于对原始设计文件进行识别,获取原始设计文件对应的设计层级模式。
原始文件处理模块30,用于采用FPGA综合工具对原始设计文件进行逻辑综合处理,获取原始设计文件对应的输出层级模式和原始集成电路网表,原始集成电路网表包括原始模块名称、原始器件名称和原始信号名称。
名称命名模块40,用于依据设计层级模式和输出层级模式,对原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称。
目标集成电路网表获取模块50,用于基于目标模块名称、目标器件名称和目标信号名称更新原始集成电路网表,获取目标集成电路网表。
进一步地,名称命名模块40包括单层设计命名单元、多层设计第一命名单元和多层设计第二命名单元。
单层设计命名单元,用于若设计层级模式为单层设计模式,则将原始模块名称、原始器件名称和原始信号名称作为目标模块名称、目标器件名称和目标信号名称。
多层设计第一命名单元,用于若设计层级模式为多层设计模式,且输出层级模式为单层输出模式,则采用第一模块命名方式对原始模块名称进行重命名,获取目标模块名称;采用第一器件命名方式对原始器件名称进行重命名,获取目标器件名称;采用信号命名方式对原始信号名称进行重命名,获取目标信号名称。
多层设计第二命名单元,用于若设计层级模式为多层设计模式,且输出层级模式为多层输出模式,则采用第二模块命名方式对原始模块名称进行重命名,获取目标模块名称;采用第二器件命名方式对原始器件名称进行重命名,获取目标器件名称;采用信号命名方式对原始信号名称进行重命名,获取目标信号名称。
进一步地,功能模块包括顶层功能模块和层级功能模块。
进一步地,多层设计第一命名单元包括第一顶层命名单元和第一层级命名单元。
第一顶层命名单元,用于将顶层功能模块的原始模块名称作为顶层功能模块的目标模块名称。
第一层级命名单元,用于获取层级功能模块中的实例名,基于顶层功能模块的原始模块名称和层级功能模块中的实例名获取层级功能模块对应的目标模块名称。
进一步地,多层设计第一命名单元还包括器件位置确定单元、第一模块实例名获取单元、第一器件实例名获取单元、第一器件ID获取单元和第一目标器件名称获取单元。
器件位置确定单元,用于基于原始器件名称,确定原始器件名称对应的实例器件的层级位置。
第一模块实例名获取单元,用于基于实例器件的层级位置,省略顶层功能模块的原始模块名称,将层级功能模块对应的原始模块名称采用分隔符进行分隔,以获取实例器件对应的模块实例名。
第一器件实例名获取单元,用于获取实例器件对应的第一个输出信号名,将第一个输出信号名作为实例器件的器件实例名。
第一器件ID获取单元,用于获取实例器件对应的原始ID,采用器件ID命名格式对原始ID进行命名,获取实例器件的器件ID。
第一目标器件名称获取单元,用于采用实例器件对应的模块实例名、器件实例名和器件ID的组合,对原始器件名称进行重命名,获取目标器件名称。
进一步地,多层设计第二命名单元包括模块层级位置确定单元、第二原始模块名称获取单元、第二原始模块名称处理单元和第二目标模块名称获取单元。
模块层级位置确定单元,用于基于原始模块名称,确定原始模块名称对应的功能模块的层级位置。
第二原始模块名称获取单元,用于基于功能模块的层级位置,省略顶层功能模块的原始模块名称,并获取层级功能模块对应的原始模块声明命名和原始模块实例命名。
第二原始模块名称处理单元,用于采用分隔符对层级功能模块对应的原始模块声明命名和原始模块实例命名进行分隔,获取目标模块声明命名和目标模块实例命名。
第二目标模块名称获取单元,用于采用目标模块声明命名和目标模块实例命名的组合,对每一层原始模块名称进行重命名,获取目标模块名称。
进一步地,多层设计第二命名单元还包括第二器件实例名获取单元、第二器件ID获取单元和第二目标器件名称获取单元。
第二器件实例名获取单元,用于获取实例器件对应的第一个输出信号名,将第一个输出信号名作为实例器件的器件实例名。
第二器件ID获取单元,用于获取实例器件对应的原始ID,采用器件ID命名格式对原始ID进行命名,获取实例器件的器件ID。
第二目标器件名称获取单元,用于采用实例器件对应的器件实例名和器件ID的组合,对原始器件名称进行重命名,获取目标器件名称。
进一步地,多层设计第一命名单元或多层设计第二命名单元还包括信号位置确定单元、信号模块实例名获取单元、第一信号名命名单元、第二信号命名单元和目标信号名称获取单元。
信号位置确定单元,用于基于原始信号名称,确定原始信号名称对应的信号驱动管脚的层级位置,以获取信号生成的层级位置。
信号模块实例名获取单元,用于基于信号生成的层级位置,省略顶层功能模块的原始模块名称,将层级功能模块对应的原始模块名称采用分隔符进行分隔,获取信号对应的模块实例名。
第一信号名命名单元,用于若信号为定义信号,则采用定义信号名称对信号进行命名,获取信号名。
第二信号命名单元,用于若信号为综合产生信号,则采用内部生成名称对信号进行命名,获取信号名。
目标信号名称获取单元,用于获取信号名携带的信号ID,采用信号对应的模块实例名、信号名和信号ID的组合,对原始信号名称进行重命名,获取目标信号名称。
关于集成电路网表生成装置的具体限定可以参见上文中对于集成电路网表生成方法的限定,在此不再赘述。上述集成电路网表生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,集成电路网表生成系统可以为单机设备,即可以为内部结构如图8所示的计算机设备,该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储执行上述集成电路网表生成方法过程中采用或者生成的数据,如参数配置文件。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种集成电路网表生成方法。
在一实施例中,该集成电路网表生成系统可以包括客户终端和与客户终端通过网络通信相连的服务器,该服务器可以为如图8所示的计算机设备。其中,客户终端又称为设计人员端,是指与服务器相对应,为客户提供本地服务的程序。客户端可安装在但不限于各种个人计算机和笔记本电脑上。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。客户终端与服务器通信相连,可使设计人员利用客户终端访问服务器,以实现快速获取目标集成电路网表。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述集成电路网表生成方法对应的步骤例如图1所示步骤S10-步骤S50,或者图2至图6中所示的步骤,为避免重复,这里不再赘述。或者,处理器执行计算机程序时实现集成电路网表生成装置这一实施例中的各模块/单元的功能,例如图7所示的模块10至模块50的功能,为避免重复,这里不再赘述。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述集成电路网表生成方法对应的步骤例如图1所示步骤S10-步骤S50,或者图2至图6中所示的步骤,为避免重复,这里不再赘述。或者,计算机程序被处理器执行时实现集成电路网表生成装置这一实施例中的各模块/单元的功能,例如图7所示的模块10至模块50的功能,为避免重复,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (10)
1.一种集成电路网表生成方法,其特征在于,包括:
获取原始设计文件,所述原始设计文件包括至少一个功能模块;
对所述原始设计文件进行识别,获取所述原始设计文件对应的设计层级模式;
采用FPGA综合工具对所述原始设计文件进行逻辑综合处理,获取所述原始设计文件对应的输出层级模式和原始集成电路网表,所述原始集成电路网表包括原始模块名称、原始器件名称和原始信号名称;
依据所述设计层级模式和所述输出层级模式,对所述原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称;
基于所述目标模块名称、所述目标器件名称和所述目标信号名称更新所述原始集成电路网表,获取目标集成电路网表。
2.如权利要求1所述的集成电路网表生成方法,其特征在于,所述依据所述设计层级模式和所述输出层级模式,对所述原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称,包括:
若所述设计层级模式为单层设计模式,则将所述原始模块名称、所述原始器件名称和所述原始信号名称作为目标模块名称、目标器件名称和目标信号名称。
3.如权利要求1所述的集成电路网表生成方法,其特征在于,所述依据所述设计层级模式和所述输出层级模式,对所述原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称,包括:
若所述设计层级模式为多层设计模式,且所述输出层级模式为单层输出模式,则采用第一模块命名方式对所述原始模块名称进行重命名,获取目标模块名称;采用第一器件命名方式对所述原始器件名称进行重命名,获取目标器件名称;采用信号命名方式对所述原始信号名称进行重命名,获取目标信号名称。
4.如权利要求3所述的集成电路网表生成方法,其特征在于,所述功能模块包括顶层功能模块和层级功能模块;
所述采用第一模块命名方式对所述原始模块名称进行重命名,获取目标模块名称,包括:
将所述顶层功能模块的原始模块名称作为所述顶层功能模块的目标模块名称;获取所述层级功能模块中的实例名,基于所述顶层功能模块的原始模块名称和所述层级功能模块中的实例名获取所述层级功能模块对应的目标模块名称;
所述采用第一器件命名方式对所述原始器件名称进行重命名,获取目标器件名称,包括:
基于所述原始器件名称,确定所述原始器件名称对应的实例器件的层级位置;
基于所述实例器件的层级位置,省略顶层功能模块的原始模块名称,将层级功能模块对应的原始模块名称采用分隔符进行分隔,以获取所述实例器件对应的模块实例名;
获取所述实例器件对应的第一个输出信号名,将所述第一个输出信号名作为所述实例器件的器件实例名;
获取所述实例器件对应的原始ID,采用器件ID命名格式对所述原始ID进行命名,获取所述实例器件的器件ID;
采用所述实例器件对应的模块实例名、器件实例名和器件ID的组合,对所述原始器件名称进行重命名,获取目标器件名称。
5.如权利要求1所述的集成电路网表生成方法,其特征在于,所述依据所述设计层级模式和所述输出层级模式,对所述原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称,包括:
若所述设计层级模式为多层设计模式,且所述输出层级模式为多层输出模式,则采用第二模块命名方式对所述原始模块名称进行重命名,获取目标模块名称;采用第二器件命名方式对所述原始器件名称进行重命名,获取目标器件名称;采用信号命名方式对所述原始信号名称进行重命名,获取目标信号名称。
6.如权利要求5所述的集成电路网表生成方法,其特征在于,所述功能模块包括顶层功能模块和层级功能模块;
所述采用第二模块命名方式对所述原始模块名称进行重命名,获取目标模块名称,包括:
基于所述原始模块名称,确定所述原始模块名称对应的功能模块的层级位置;
基于所述功能模块的层级位置,省略顶层功能模块的原始模块名称,并获取所述层级功能模块对应的原始模块声明命名和原始模块实例命名;
采用分隔符对所述层级功能模块对应的原始模块声明命名和原始模块实例命名进行分隔,获取目标模块声明命名和目标模块实例命名;
采用所述目标模块声明命名和目标模块实例命名的组合,对每一层所述原始模块名称进行重命名,获取目标模块名称;
所述采用第二器件命名方式对所述原始器件名称进行重命名,获取目标器件名称,包括:
获取所述实例器件对应的第一个输出信号名,将所述第一个输出信号名作为所述实例器件的器件实例名;
获取所述实例器件对应的原始ID,采用器件ID命名格式对所述原始ID进行命名,获取所述实例器件的器件ID;
采用所述实例器件对应的器件实例名和器件ID的组合,对所述原始器件名称进行重命名,获取目标器件名称。
7.如权利要求3或5所述的集成电路网表生成方法,其特征在于,所述功能模块包括顶层功能模块和层级功能模块;
所述采用信号命名方式对所述原始信号名称进行重命名,获取目标信号名称,包括:
基于所述原始信号名称,确定所述原始信号名称对应的信号驱动管脚的层级位置,以获取信号生成的层级位置;
基于所述信号生成的层级位置,省略所述顶层功能模块的原始模块名称,将所述层级功能模块对应的原始模块名称采用分隔符进行分隔,获取所述信号对应的模块实例名;
若所述信号为定义信号,则采用定义信号名称对所述信号进行命名,获取信号名;
若所述信号为综合产生信号,则采用内部生成名称对所述信号进行命名,获取信号名;
获取所述信号名携带的信号ID,采用所述信号对应的模块实例名、信号名和信号ID的组合,对所述原始信号名称进行重命名,获取目标信号名称。
8.一种集成电路网表生成装置,其特征在于,包括:
原始设计文件获取模块,用于获取原始设计文件,所述原始设计文件包括至少一个功能模块;
原始文件识别模块,用于对所述原始设计文件进行识别,获取所述原始设计文件对应的设计层级模式;
原始文件处理模块,用于采用FPGA综合工具对所述原始设计文件进行逻辑综合处理,获取所述原始设计文件对应的输出层级模式和原始集成电路网表,所述原始集成电路网表包括原始模块名称、原始器件名称和原始信号名称;
名称获取模块,用于依据所述设计层级模式和所述输出层级模式,对所述原始集成电路网表中的原始模块名称、原始器件名称和原始信号名称进行重命名,获取目标模块名称、目标器件名称和目标信号名称;
目标集成电路网表获取模块,用于基于所述目标模块名称、所述目标器件名称和所述目标信号名称更新所述原始集成电路网表,获取目标集成电路网表。
9.一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述集成电路网表生成方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述集成电路网表生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910212246.8A CN110046394B (zh) | 2019-03-20 | 2019-03-20 | 集成电路网表生成方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910212246.8A CN110046394B (zh) | 2019-03-20 | 2019-03-20 | 集成电路网表生成方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110046394A CN110046394A (zh) | 2019-07-23 |
CN110046394B true CN110046394B (zh) | 2019-12-27 |
Family
ID=67273869
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910212246.8A Active CN110046394B (zh) | 2019-03-20 | 2019-03-20 | 集成电路网表生成方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110046394B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110489812B (zh) * | 2019-07-25 | 2020-08-25 | 广东高云半导体科技股份有限公司 | 多层层级网表处理方法、装置、计算机设备及存储介质 |
CN111143274B (zh) * | 2019-11-13 | 2022-07-12 | 广东高云半导体科技股份有限公司 | 以逻辑综合结果为导向的层级结构优化方法及装置、系统 |
CN113255262B (zh) * | 2021-06-07 | 2021-09-28 | 上海国微思尔芯技术股份有限公司 | 对象分配方法、装置、计算机设备和存储介质 |
CN113255258B (zh) * | 2021-06-23 | 2021-10-01 | 上海国微思尔芯技术股份有限公司 | 逻辑综合方法、装置、电子设备及存储介质 |
CN113919254B (zh) * | 2021-11-13 | 2022-05-31 | 奇捷科技(深圳)有限公司 | 寄存器传输级信号映射构建方法、装置、设备和存储介质 |
CN115859886B (zh) * | 2023-02-16 | 2023-05-09 | 山东启芯软件科技有限公司 | 一种基于多fanout逻辑的高效率低耦合的设计拆分方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105844012A (zh) * | 2016-03-22 | 2016-08-10 | 中国科学院微电子研究所 | 一种分立器件的版图比对原理图验证方法及装置 |
CN108399299A (zh) * | 2018-03-02 | 2018-08-14 | 京东方科技集团股份有限公司 | 一种集成电路物理版图生成方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5586319A (en) * | 1994-07-27 | 1996-12-17 | Vlsi Technology, Inc. | Netlist editor allowing for direct, interactive low-level editing of netlists |
US6848094B2 (en) * | 2002-12-31 | 2005-01-25 | Lsi Logic Corporation | Netlist redundancy detection and global simplification |
CN103123656B (zh) * | 2011-11-21 | 2015-10-14 | 上海华虹宏力半导体制造有限公司 | 对简化电路网表进行负载反标的方法 |
CN105718644A (zh) * | 2016-01-19 | 2016-06-29 | 深圳市同创国芯电子有限公司 | 一种现场可编程门阵列网表生成方法及装置 |
CN106202761B (zh) * | 2016-07-15 | 2019-04-19 | 中国电子科技集团公司第五十八研究所 | 用于大容量fpga电路功能仿真的最优网表的生成方法 |
-
2019
- 2019-03-20 CN CN201910212246.8A patent/CN110046394B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105844012A (zh) * | 2016-03-22 | 2016-08-10 | 中国科学院微电子研究所 | 一种分立器件的版图比对原理图验证方法及装置 |
CN108399299A (zh) * | 2018-03-02 | 2018-08-14 | 京东方科技集团股份有限公司 | 一种集成电路物理版图生成方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110046394A (zh) | 2019-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110046394B (zh) | 集成电路网表生成方法、装置、计算机设备及存储介质 | |
US6606735B1 (en) | Method and system for using error and filter layers in each DRC rule | |
US8726200B2 (en) | Recognition of template patterns with mask information | |
US7865344B2 (en) | Method and system for automatically generating a global simulation model of an architecture | |
US7159202B2 (en) | Methods, apparatus and computer program products for generating selective netlists that include interconnection influences at pre-layout and post-layout design stages | |
US20060064680A1 (en) | Extensible internal representation of systems with parallel and sequential implementations | |
CN113255258B (zh) | 逻辑综合方法、装置、电子设备及存储介质 | |
CN110489812B (zh) | 多层层级网表处理方法、装置、计算机设备及存储介质 | |
US20190042306A1 (en) | Circuitry with adaptive memory assistance capabilities | |
US20220075920A1 (en) | Automated Debug of Falsified Power-Aware Formal Properties using Static Checker Results | |
CN111709215A (zh) | 一种ip管理系统及ip管理方法 | |
CN111352697A (zh) | 灵活的物理功能和虚拟功能映射 | |
CN114239453A (zh) | 仿真验证平台构建方法、仿真验证方法、装置及设备 | |
JP4654203B2 (ja) | デジタルシステムのhdl記述ファイルを作成する方法、および得られるシステム | |
CN114154451B (zh) | 一种原理图自动绘制方法、装置、设备、介质及产品 | |
CN110889257A (zh) | Fpga电路验证生成网表的方法及电路逻辑验证平台 | |
CN112632884B (zh) | 门级网表生成方法、装置及电子设备 | |
US10671788B2 (en) | Method, system, and storage medium of resource planning for designing semiconductor device | |
JPH06274568A (ja) | 階層図形データの展開方法 | |
CN111624475B (zh) | 大规模集成电路的测试方法及系统 | |
CN116069726B (zh) | 一种集成电路设计库的管理方法、设备及介质 | |
CN116976252A (zh) | 一种回归仿真方法、装置、设备、介质及程序产品 | |
CN111400994B (zh) | 网表形式验证方法、装置、计算机设备及存储介质 | |
CN106897504B (zh) | 对ip模块进行开发形成参数化单元的方法 | |
Kourfali et al. | An integrated on-silicon verification method for FPGA overlays |
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 |