掌桥专利:专业的专利平台
掌桥专利
首页

一种数模电路仿真方法、装置、设备及计算机存储介质

文献发布时间:2023-06-19 19:28:50


一种数模电路仿真方法、装置、设备及计算机存储介质

技术领域

本申请属于电路仿真领域,尤其涉及一种数模电路仿真方法、装置、设备及计算机存储介质。

背景技术

为了保证数字电路和模拟电路之间的连接性和协调工作表现,通常需要进行数模电路混合仿真。现有的数模混合电路仿真是基于对基本单元库中的单元模型进行Verilog建模,待仿真电路数据中的各单元实例均引用基本单元库中的单元模型,进而保证所有单元示例都存在对应的Verilog视图,再对待仿真电路数据中的各单元实例进行模拟仿真。

但由于部分模拟单元器件的端口等价,即存在二义性,可能导致仿真失败。现有技术中,当单元实例由于二义性出现数据流向问题时,需要工程师排查并手动修改原始数据,进而导致数模电路混合仿真的效率降低。

发明内容

本申请实施例提供一种数模电路仿真方法、装置、设备及计算机存储介质,能够提高对数模电路进行仿真的效率。

第一方面,本申请实施例提供一种数模电路仿真方法,该方法可以包括:

在获取到数模电路的第一Verilog数据的情况下,对第一Verilog数据进行仿真,得到仿真信息,仿真信息用于指示数模电路中存在数据流向问题的至少一个实例;

对存在数据流向问题的至少一个实例添加标记参数,标记参数用于指示至少一个实例的类型;

对添加有标记参数的至少一个实例创建第二Verilog数据;

利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据和第一Verilog数据,替换第一Verilog数据中有标记参数的实例的引用关系,得到数模电路的第三Verilog数据。

在其中一个实施例中,上述涉及到的第一Verilog数据包括各个实例对应的第一模型和各个实例的引用关系,引用关系包括各个实例与第一模型之间的引用关系,第二Verilog数据包括有标记参数的实例对应的第二模型;

利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据和第一Verilog数据,替换第一Verilog数据中有标记参数的实例的引用关系,得到数模电路的第三Verilog数据,包括:

将有标记参数的实例的第二Verilog数据融合到第一Verilog数据中;

基于有标记参数的实例的第二Verilog数据中的第二模型,替换第一Verilog数据中有标记参数的实例与第一模型之间的引用关系,得到数模电路的第三Verilog数据。

在其中一个实施例中,上述涉及到的利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据和第一Verilog数据,替换第一Verilog数据中有标记参数的实例的引用关系,得到数模电路的第三Verilog数据之后,还包括:

根据数模电路的第三Verilog数据,进行仿真;

在根据数模电路的第三Verilog数据进行仿真失败的情况下,跳转至对第一Verilog数据进行仿真,得到仿真信息的步骤,重新核实数模电路中存在数据流向问题的至少一个实例,直至根据数模电路的第三Verilog数据进行仿真成功。

在其中一个实施例中,上述涉及到的对存在数据流向问题的至少一个实例添加标记参数之后,还包括:

汇总有标记参数的实例和有标记参数的实例对应的标记参数,生成实例标记参数表;

利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据和第一Verilog数据,替换第一Verilog数据中有标记参数的实例的引用关系,得到数模电路的第三Verilog数据,包括:

利用Verilog融合算法,基于实例标记参数表中的有标记参数的实例的第二Verilog数据,批量替换第一Verilog数据中有标记参数的实例的Verilog数据,得到数模电路的第三Verilog数据。

第二方面,本申请实施例提供了一种数模电路仿真装置,装置可以包括:

仿真模块,用于在获取到数模电路的第一Verilog数据的情况下,对第一Verilog数据进行仿真,得到仿真信息,仿真信息用于指示数模电路中存在数据流向问题的至少一个实例;

标记模块,用于对存在数据流向问题的至少一个实例添加标记参数,标记参数用于指示至少一个实例的类型;

创建模块,用于对添加有标记参数的至少一个实例创建第二Verilog数据;

更新模块,用于利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据和第一Verilog数据,替换第一Verilog数据中有标记参数的实例的引用关系,得到数模电路的第三Verilog数据。

第三方面,本申请实施例提供了一种电子设备,设备包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,处理器被配置为执行指令,以实现如第一方面的任一项实施例中所示的数模电路仿真方法。

第四方面,本申请实施例提供了一种计算机存储介质,该计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现如第一方面的任一项实施例中所示的数模电路仿真方法。

第五方面,本申请实施例还提供了一种计算机程序产品,该计算机程序产品包括计算机程序,该计算机程序存储在可读存储介质中,设备的至少一个处理器从存储介质读取并执行计算机程序,使得设备执行第一方面的任一项实施例中所示的数模电路仿真方法。

本申请实施例提供了一种数模电路仿真方法、装置、设备及计算机存储介质,相较于现有技术,本申请具有以下有益效果:

本申请实施例的一种数模电路仿真方法、装置、设备及计算机存储介质,通过对数模电路的第一Verilog数据进行仿真,排查得到存在流向问题的至少一个实例,再对有数据流向问题的实例添加标记参数,对有标记参数的实例创建第二Verilog数据。利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据以及第一Verilog数据,替换有标记参数的实例的引用关系,得到数模电路的第三Verilog数据。

如此,通过对存在数据流向问题的实例添加标记参数,并创建对应的第二Verilog数据,能够避免直接对原始数据进行修改,降低引入新的错误的风险。根据有标记参数的实例的第二Verilog数据对第一Verilog数据进行更新,得到数模电路的第三Verilog数据,能够提高对数模电路进行仿真的效率。

附图说明

为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的一种数模电路仿真方法的流程示意图;

图2是本申请实施例提供的一种放大器模块电路的示意图;

图3是本申请实施例提供的另一种放大器模块电路的示意图;

图4是本申请实施例提供的一种标记参数的示意图;

图5是本申请实施例提供的另一种数模电路仿真方法的流程示意图;

图6是本申请实施例提供的再一种数模电路仿真方法的流程示意图;

图7是本申请实施例提供的再一种数模电路仿真方法的流程示意图;

图8是本申请实施例提供的一种数模电路仿真装置的结构示意图;

图9是本申请实施例提供的一种电子设备的结构示意图。

具体实施方式

下面将详细描述本申请的各个方面的特征和示例性实施例,为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本申请进行进一步详细描述。应理解,此处所描述的具体实施例仅意在解释本申请,而不是限定本申请。对于本领域技术人员来说,本申请可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本申请的示例来提供对本申请更好的理解。

需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。

基于背景技术部分可知,由于现有的数模电路仿真方法中,当单元实例由于二义性出现数据流向问题时,需要工程师排查并手动修改原始数据,会导致数模电路混合仿真的效率降低。

为了解决现有技术中存在的问题,本申请实施例提供了一种数模电路仿真方法、装置、设备及计算机存储介质,通过对数模电路的第一Verilog数据进行仿真,排查得到存在流向问题的至少一个实例,再对有数据流向问题的实例添加标记参数,对有标记参数的实例创建第二Verilog数据。利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据以及第一Verilog数据,替换有标记参数的实例的引用关系,得到数模电路的第三Verilog数据。

如此,通过对存在数据流向问题的实例添加标记参数,并创建对应的第二Verilog数据,能够避免直接对原始数据进行修改,降低引入新的错误的风险。根据有标记参数的实例的第二Verilog数据对第一Verilog数据进行更新,得到数模电路的第三Verilog数据,能够提高对数模电路进行仿真的效率。

下面首先对本申请实施例提供的数模电路仿真方法进行介绍。如图1所示,本申请实施例提供的数模电路仿真方法,包括以下步骤:

S101:在获取到数模电路的第一Verilog数据的情况下,对第一Verilog数据进行仿真,得到仿真信息,仿真信息用于指示数模电路中存在数据流向问题的至少一个实例;

S102:对存在数据流向问题的至少一个实例添加标记参数,标记参数用于指示至少一个实例的类型;

S103:对添加有标记参数的至少一个实例创建第二Verilog数据;

S104:利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据和第一Verilog数据,替换第一Verilog数据中有标记参数的实例的引用关系,得到数模电路的第三Verilog数据。

以上为本申请实施例提供的一种数模电路仿真方法,通过对数模电路的第一Verilog数据进行仿真,排查得到存在流向问题的至少一个实例,再对有数据流向问题的实例添加标记参数,对有标记参数的实例创建第二Verilog数据。利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据以及第一Verilog数据,替换有标记参数的实例的引用关系,得到数模电路的第三Verilog数据。

如此,通过对存在数据流向问题的实例添加标记参数,并创建对应的第二Verilog数据,能够避免直接对原始数据进行修改,降低引入新的错误的风险。根据有标记参数的实例的第二Verilog数据对第一Verilog数据进行更新,得到数模电路的第三Verilog数据,能够提高对数模电路进行仿真的效率。

在S101中,在获取到数模电路的第一Verilog数据的情况下,对第一Verilog数据进行仿真,得到仿真信息。其中,数模电路中包括多个实例,仿真信息包括用于指示数模电路中存在数据流向问题的实例的信息。在一个示例中,以一个放大器电路模块为例,首先按常规流程给基本单元库中的单元模型创建Verilog视图,然后层次化导出放大器模块的Verilog文件(即第一Verilog数据),命名Verilog_old.v,Verilog文件内容具体可以包括:

//Cell Name : RPOLY

module RPOLY(MINUS,PLUS);

inout MINUS;

inout PLUS;

assign MINUS=PLUS;

endmodule //RPOLY

//Cell Name :AMP

module AMP(VP,PVB2,PVB1,VM,VO,VS,GS);

input VP;

inputPVB2;

input PVB1;

input VM;

output VO;

input VS;

input GS;

NMOS4 N1 (.D(NOD2),.B(GS),.G(NOD2),.S(GS));

NMOS4 N2(.D(NOD3),.B(GS),.G(NOD2),.S(GS));

NMOS4 N3 (.D(VO),.B(GS),.G(NOD3),.S(GS));

PMOS4 P1 (.D(NOD4),.B(VS),.G(NOD5),.S(VS));

PMOS4 P2 (.D(NOD2),.B(VS),.G(NOD0),.S(NOD4));

PMOS4 P3 (.D(NOD3),.B(VS),.G(NOD1),.S(NOD4));

PMOS4 P4 (.D(VO),.B(VS),.G(PVB2),.S(VS));

RPOLY R1 (.MINUS (NOD0),.PLUS(VM));

RPOLY R2(.MINUS(VP),.PLUS(NOD1));

RPOLY R3 (.MINUS(NOD5),.PLUS(PVB1));

endmodule // AMP

在一个示例中,数模电路的第一Verilog数据可以包括与实例类型对应的第一模型、各个实例的引用关系以及各个实例之间的连接关系,其中引用关系包括各实例与第一模型之间的引用关系。可以理解的是,同一类型的实例可以引用同一个第一模型。举例说明,当R1、R2和R3电阻都为RPOLY型电阻时,可以引用同一个RPOLY型第一模型。

在一个示例中,对第一Verilog数据进行仿真,得到仿真信息,其中仿真信息包括用于指示数模电路中存在数据流向问题的至少一个实例。举例说明,如图2所示,将放大器模块电路的第一Verilog数据导入仿真软件中进行仿真,其中R1、R2和R3是同种类型,用的第一模型是RPOLY,由Verilog_old.v文件可知,第一模型RPOLY的数据流向是将PLUS端口的数据赋值给MINUS端口。如图3所示,通过仿真数据可知,R2在电路中的数据流向是将MINUS端口的数据赋值给PLUS,这与RPOLY模型不相同,因此,R2为存在数据流向问题的实例。

在S102中,对数据流向有问题的实例添加标记参数。在一个示例中,标记参数可以通过人工进行添加,也可以自动批量进行添加,添加完成后可以形成标记参数实例列表。通过图3实施例可知,R2是一个存在数据流向问题的实例,因此可以对实例R2添加参数INST,如图4所示。如果电路中存在多种类型的实例流向相反的情况,可以用不同参数值进行区分,例如电阻参数值为1、电容参数值2等,其中同一参数值的实例可以引用同一个Verilog,并且可以生成标记信息表。举例说明,如表1所示,电阻标记参数值为1、电容标记参数值为2、二极管标记参数值为3,R1、R2和R3是相同标记参数的实例,因此可以引用同一个Verilog文件。

表1:标记参数值列表

在S103中,对添加有标记参数的实例创建相对应的Verilog文件,即第二Verilog数据。在一个示例中,有标记参数的实例相对应的第二Verilog数据包括与实例对应的第二模型。举例说明,仍然用图2图3进行说明,步骤S102中,对数据流向有问题的实例R2添加标记参数,根据R2对应的标记参数,创建实例R2相对应的Verilog文件INST.v,即R2对应的第二模型的Verilog数据。

在一个示例中,对存在数据流向问题的至少一个实例添加标记参数之后,还包括:

汇总有标记参数的实例和有标记参数的实例对应的标记参数,生成实例标记参数表;

利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据和第一Verilog数据,替换第一Verilog数据中有标记参数的实例的引用关系,得到数模电路的第三Verilog数据,包括:

利用Verilog融合算法,基于实例标记参数表中的有标记参数的实例的第二Verilog数据,批量替换第一Verilog数据中有标记参数的实例的Verilog数据,得到数模电路的第三Verilog数据。

在一个具体的实施例中,如果电路中存在多种类型的电子元件实例流向相反的情况,汇总至少一个实例的标记参数,生成实例标记参数表,并对所有存在数据流向问题的实例批量创建对应的第二Verilog数据。当存在多种类型的实例时,自动按照数字后缀方式对第二Verilog数据进行命名。举例说明,例如INST1.v、INST2.v。

在S104中,利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据以及第一Verilog数据,替换第一Verilog数据中有标记参数的实例的引用关系,得到数模电路的第三Verilog数据。在一个示例中,将S103中生成的有标记参数的实例的第二Verilog数据,融合到第一Verilog数据中,并替换第一Verilog数据中有标记参数的实例与第一模型之间的引用关系。

为了提高对数模电路仿真的效率,如图5所示,作为一种示例,第一Verilog数据包括各个实例对应的第一模型和各个实例的引用关系,引用关系包括各个实例与第一模型之间的引用关系,第二Verilog数据包括有标记参数的实例对应的第二模型;相应地,S104可以包括:

S1041:将有标记参数的实例的第二Verilog数据融合到第一Verilog数据中;

S1042:基于有标记参数的实例的第二Verilog数据中的第二模型,替换第一Verilog数据中有标记参数的实例与第一模型之间的引用关系,得到数模电路的第三Verilog数据。

通过Verilog融合算法,基于标记参数实例列表和重新创建的第二Verilog数据,替换有流向问题实例的引用关系,生成新的Verilog文件,即第三Verilog数据,能够提高对数模电路进行仿真的效率。在S1041中,将有标记参数的实例的第二Verilog数据融合到第一Verilog数据中。举例说明,将S103中创建的R2对应的INST.v文件,即第二模型的Verilog数据,融合到第一Verilog数据中。

在一个具体的实施例中,第一模型RPOLY对应的Verilog数据具体包括:

module RPOLY (MINUS,PLUS);

inout MINUS;

inout PLUS;

assignMINUS = PLUS;

endmodule // RPOLY

而生成有流向问题实例R2对应的Verilog文件INST.v,即第二模型的Verilog数据具体包括:

module INST(MINUS,PLUS);

inout MINUS;

inout PLUS;

assign PLUS = MINUS;

endmodule // INST

将创建的R2对应的Verilog文件INST.v,第二模型的Verilog数据,加入放大器模块的Verilog文件(即第一Verilog数据)中。得到:

// Cell Name : RPOLY

module INST(MINUS,PLUS);

inout MINUS;

inout PLUS;

assign PLUS = MINUS;

endmodule // INST

//Cell Name : RPOLY

module RPOLY(MINUS,PLUS);

inout MINUS;

inout PLUS;

assign MINUS=PLUS;

endmodule //RPOLY

//Cell Name : AMP

module AMP(VP,PVB2,PVB1,VM,VO,VS,GS);

input VP;

input PVB2;

input PVB1;

input VM;

output VO;

input VS;

input GS;

NMOS4 N1 (.D(NOD2),.B(GS),.G(NOD2),.S(GS));

NMOS4 N2 (.D(NOD3),.B(GS),.G(NOD2),.S(GS));

NMOS4 N3 (.D(VO),.B(GS),.G(NOD3),.S(GS));

PMOS4 P1 (.D(NOD4),.B(VS),.G(NOD5),.S(VS));

PMOS4 P2 (.D(NOD2),.B(VS),.G(NOD0),.S(NOD4));

PMOS4 P3 (.D(NOD3),.B(VS),.G(NOD1),.S(NOD4));

PMOS4 P4 (.D(VO),.B(VS),.G(PVB2),.S(VS));

RPOLY R1 (.MINUS (NOD0),.PLUS(VM));

RPOLY R2(.MINUS(VP),.PLUS(NOD1));

RPOLY R3 (.MINUS(NOD5),.PLUS(PVB1));

endmodule // AMP

在S1042中,基于有标记参数的实例的第二Verilog数据中的第二模型,替换第一Verilog数据中有标记参数的实例与第一模型的引用关系,得到数模电路的第三Verilog数据。举例说明,将第一Verilog数据中,将R2与RPOLY型第一模型之间的引用关系,替换成与INST型第二模型之间的引用关系,得到数模电路的第二Verilog数据。在一个具体的实施例中,将放大器模块的Verilog_old.v文件(即第一Verilog数据)中的RPOLY R2替换为INSTR2,得到放大器模块的Verilog_new.v文件(即第三Verilog数据)

// Cell Name : RPOLY

module INST(MINUS,PLUS);

inout MINUS;

inout PLUS;

assign PLUS = MINUS;

endmodule // INST

//Cell Name : RPOLY

module RPOLY(MINUS,PLUS);

inout MINUS;

inout PLUS;

assign MINUS=PLUS;

endmodule //RPOLY

//Cell Name : AMP

module AMP(VP,PVB2,PVB1,VM,VO,VS,GS);

input VP;

input PVB2;

input PVB1;

input VM;

output VO;

input VS;

input GS;

NMOS4 N1 (.D(NOD2),.B(GS),.G(NOD2),.S(GS));

NMOS4 N2 (.D(NOD3),.B(GS),.G(NOD2),.S(GS));

NMOS4 N3 (.D(VO),.B(GS),.G(NOD3),.S(GS));

PMOS4 P1 (.D(NOD4),.B(VS),.G(NOD5),.S(VS));

PMOS4 P2 (.D(NOD2),.B(VS),.G(NOD0),.S(NOD4));

PMOS4 P3 (.D(NOD3),.B(VS),.G(NOD1),.S(NOD4));

PMOS4 P4 (.D(VO),.B(VS),.G(PVB2),.S(VS));

RPOLY R1 (.MINUS (NOD0),.PLUS(VM));

INSTR2(.MINUS(VP),.PLUS(NOD1));

RPOLY R3 (.MINUS(NOD5),.PLUS(PVB1));

endmodule // AMP

为了提高数模电路仿真的准确性,如图6所示,作为一种示例,在S104之后,还可以包括:

S601:根据数模电路的第三Verilog数据,进行仿真;

S602:在根据数模电路的第三Verilog数据进行仿真失败的情况下,跳转至S101的步骤,重新核实数模电路中存在数据流向问题的至少一个实例,直至根据数模电路的第三Verilog数据进行仿真成功。

在根据数模电路的第三Verilog数据进行仿真失败的情况下,通过跳转至对第一Verilog数据进行仿真,得到仿真信息的步骤,能够对数模电路的Verilog数据进行二次仿真,并检查其中存在数据流向问题的实例,进而提高数模电路仿真的准确性。

下面以一个实施例对上述技术方案中的数模电路仿真过程,进行具体说明,如图7所示,图中各个步骤具体如下:

S701、基本单元库建模;

S702、层次化导出模拟模块Verilog文件(即第一Verilog数据);

S703、导入仿真软件分析;

S704、在电路图中核实数据流向问题实例(即目标实例);

S705、对问题实例(即目标实例)添加标记参数INST,形成标记实例列表;

S706、对标记参数的实例创建实例Verilog文件(即第二Verilog数据);

S707、利用Verilog融合算法,生成新的模块Verilog文件(即第三Verilog数据);

S708、进行仿真。

以上为本申请实施例提供的一种数模电路仿真方法的具体实施方式。基于上述实施例提供的一种数模电路仿真方法,相应地,本申请还提供一种数模电路仿真装置的具体实现方式,请参见以下实施例。

如图8所示,本申请实施例提供的一种数模电路仿真装置800,该装置包括:

仿真模块801,用于在获取到数模电路的第一Verilog数据的情况下,对第一Verilog数据进行仿真,得到仿真信息,仿真信息用于指示数模电路中存在数据流向问题的至少一个实例;

标记模块802,用于对存在数据流向问题的至少一个实例添加标记参数,标记参数用于指示至少一个实例的类型;

创建模块803,用于对添加有标记参数的至少一个实例创建第二Verilog数据;

更新模块804,用于利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据和第一Verilog数据,替换第一Verilog数据中有标记参数的实例的引用关系,得到数模电路的第三Verilog数据。

本申请实施例提供的数模电路仿真装置800中,通过仿真模块801对数模电路的第一Verilog数据进行仿真,排查得到存在数据流向问题的至少一个实例,标记模块802再对有数据流向问题的实例添加标记参数,创建模块803对有标记参数的实例创建第二Verilog文件。更新模块804利用Verilog融合算法,基于有标记参数的实例的第二Verilog数据以及第一Verilog数据,替换有标记参数的实例的引用关系,得到数模电路的第三Verilog数据。

如此,通过对存在数据流向问题的实例添加标记参数,再对有标记参数的实例创建第二Verilog数据,能够避免直接对原始数据进行修改,降低引入新的错误的风险。根据有标记参数的实例的第二Verilog数据对第一Verilog数据进行更新,得到数模电路的第三Verilog数据,能够提高对数模电路进行仿真的效率。

作为本申请的另一种实施例,为了提高对数模电路仿真的效率,上述更新模块804可以包括:

添加单元,用于将有标记参数的实例的第二Verilog数据融合到第一Verilog数据中;

更新单元,用于基于有标记参数的实例的第二Verilog数据中的第二模型,替换第一Verilog数据中有标记参数的实例与第一模型之间的引用关系,得到数模电路的第三Verilog数据。

作为本申请的另一种实施例,为了提高数模电路仿真的准确性,上述数模电路仿真装置800还可以包括:

第二仿真模块,用于根据数模电路的第三Verilog数据,进行仿真;

跳转模块,用于在根据数模电路的第三Verilog数据进行仿真失败的情况下,跳转至对第一Verilog数据进行仿真,得到仿真信息的步骤,重新核实数模电路中存在数据流向问题的至少一个实例,直至根据数模电路的第三Verilog数据进行仿真成功。

作为本申请的另一种实施例,为了提高数模电路仿真的准确性,上述数模电路仿真装置800还可以包括:

汇总模块,用于汇总有标记参数的实例和有标记参数的实例对应的标记参数,生成实例标记参数表;

相应地,上述更新模块804可以具体用于:

利用Verilog融合算法,基于实例标记参数表中的有标记参数的实例的第二Verilog数据,批量替换第一Verilog数据中有标记参数的实例的Verilog数据,得到数模电路的第三Verilog数据。

基于上述实施例提供的数模电路仿真方法和装置,本申请实施例还提供一种电子设备900,如图9所示:

包括处理器901,存储器902,存储在存储器902上并可在处理器901上运行的计算机程序,该计算机程序被处理器901执行时实现上述数模电路仿真方法实施例的各个过程,且能达到相同的技术效果。

具体地,上述处理器901可以包括中央处理器(CPU),或者特定集成电路(ASIC ,Application Specific Integrated Circuit),或者可以被配置成实施本申请实施例的一个或多个集成电路。

存储器902可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器902可包括硬盘驱动器(HDD ,Hard Disk Drive)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(USB ,Universal Serial Bus)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器902可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器902可在综合网关容灾设备的内部或外部。在特定实施例中,存储器902是非易失性固态存储器。

在特定实施例中,存储器可包括只读存储器(ROM),随机存取存储器(RAM),磁盘存储介质设备,光存储介质设备,闪存设备,电气、光学或其他物理/有形的存储器存储设备。因此,通常,存储器包括一个或多个编码有包括计算机可执行指令的软件的有形(非暂态)计算机可读存储介质(例如,存储器设备),并且当该软件被执行(例如,由一个或多个处理器)时,其可操作来执行参考根据本申请的一方面的方法所描述的操作。

处理器901通过读取并执行存储器902中存储的计算机程序指令,以实现上述实施例中的任意一种数模电路仿真方法。

在一个示例中,电子设备还可包括通信接口903和总线910。作为一种示例,如图9所示,处理器901、存储器902、通信接口903通过总线910连接并完成相互间的通信。

通信接口903,主要用于实现本申请实施例中各模块、装置、单元和/或设备之间的通信。

总线910包括硬件、软件或两者,将在线数据流量计费设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线910可包括一个或多个总线。尽管本申请实施例描述和示出了特定的总线,但本申请考虑任何合适的总线或互连。

本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述数模电路仿真方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,的计算机可读存储介质,如只读存储器(ROM ,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等。

需要明确的是,本申请并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本申请的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本申请的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。

以上的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本申请的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。

还需要说明的是,本申请中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本申请不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。

上面参考根据本申请的实施例的方法、装置和计算机程序产品的流程图和/或框图描述了本申请的各方面。应当理解,流程图和/或框图中的每个方框以及流程图和/或框图中各方框的组合可以由计算机程序指令实现。这些计算机程序指令可被提供给通用计算机、专用计算机、或其它可编程数据处理装置的处理器,以产生一种机器,使得经由计算机或其它可编程数据处理装置的处理器执行的这些指令使能对流程图和/或框图的一个或多个方框中指定的功能/动作的实现。这种处理器可以是但不限于是通用处理器、专用处理器、特殊应用处理器或者现场可编程逻辑电路。还可理解,框图和/或流程图中的每个方框以及框图和/或流程图中的方框的组合,也可以由执行指定的功能或动作的专用硬件来实现,或可由专用硬件和计算机指令的组合来实现。

以上,仅为本申请的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。

技术分类

06120115919133