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

电路分析方法、装置、设备及存储介质

文献发布时间:2023-06-19 11:29:13


电路分析方法、装置、设备及存储介质

技术领域

本申请涉及电路技术领域,尤其涉及一种电路分析方法、装置、设备及存储介质。

背景技术

对于电路分析来说,电路图中共享的目标元件实例即共享实例会影响电路的分析。例如,在目前的电路分析时,电路图中的共享实例通常被划分至一个模块当中,如此会导致与共享实例相关的其他模块缺乏共享实例,无法完整直观的查看模块,增加了电路整理和分析的难度,降低了电路分析的效率。

发明内容

本申请实施例提供了一种电路分析方法、装置、设备及存储介质,能够提高电路分析的效率。

第一方面,本申请实施例提供一种电路分析方法,该方法包括:

获取电路的电路图,其中,电路图用于描述电路中的多个元件对应的元件实例,以及多个元件实例的连接关系;

从电路图中的多个元件实例中确定共享的目标元件实例,并生成包括目标元件实例的信号盒;

根据目标元件实例的连接关系,调用信号盒。

第二方面,本申请实施例提供一种电路分析装置,该装置包括:

获取模块,用于获取电路的电路图,其中,所述电路图用于描述所述电路中的多个元件对应的元件实例,以及所述多个元件实例的连接关系;

确定模块,用于从所述电路图中的多个元件实例中确定共享的目标元件实例,并生成包括所述目标元件实例的信号盒;

调用模块,用于根据所述目标元件实例的连接关系,调用所述信号盒。

第三方面,本申请实施例提供一种电路分析设备,该设备包括:处理器以及存储有计算机程序指令的存储器;处理器执行计算机程序指令时实现第一方面所述的电路分析方法。

第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现第一方面所述的电路分析方法。

本申请实施例提供的一种电路分析方法、装置、设备及存储介质,可以从电路图中的多个元件实例中确定共享的目标元件实例,并生成包括目标元件实例的信号盒,根据目标元件实例的连接关系,调用信号盒。如此可以通过调用包括共享实例的信号盒,使电路图更加直观,进而降低电路分析的难度,提升电路分析的效率。

附图说明

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

图1是相关技术提供的一种电路分析示意图;

图2是相关技术提供的另一种电路分析示意图;

图3是相关技术提供的另一种电路分析示意图;

图4是本申请实施例提供的一种电路分析系统的架构示意图;

图5是本申请实施例提供的一种电路分析方法的流程示意图;

图6是本申请实施例提供的一种电路分析示意图;

图7是本申请实施例提供的另一种电路分析示意图;

图8是本申请实施例提供的一种电路分析装置的结构示意图;

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

具体实施方式

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

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

目前,电路图中共享的目标元件实例即共享实例会影响电路的分析。例如,传统的电路分析方法通常是先获取电路的电路图,其中,电路图用于描述电路中的多个元件对应的元件实例,以及多个元件实例的连接关系,多个元件实例的连接关系与多个元件的连接关系一一对应。然后利用电子设计自动化(Electronic Design Automation,EDA)软件对电路的电路图中的元件实例进行整理、分析,并将元件实例划分为功能模块。进而进一步分析共享实例所涉及到的模块,调整模块的边界和功能。

示例性地,可以先获取如图1所示的电路图。如图1所示,该电路图包括2个元件实例INV、1个元件实例NOR2和1个元件实例AND2。然后利用EDA软件将图1中的元件实例划分为功能模块。划分后的模块可以如图2所示,包括AOI12B1和NOR2B1的两个模块。进而进一步分析共享实例所涉及到的模块,调整模块的边界和功能。如图3所示,元件实例AND2的信号同时提供给模块AOI12B1和模块NOR2B1,元件实例AND2为模块AOI12B1和模块NOR2B1共享的目标元件实例即共享实例,被划分至模块AOI12B1。可知模块AOI12B1的功能边界完整,功能名称为AOI12B1,而模块NOR2B1由于缺少共享实例,所以功能名称为NOR2B1。但从图3整体电路分析,两个模块的功能应该相同,功能名称应该相同。如此无法完整直观的分析共享实例所涉及但不包括共享实例的模块,增加了电路整理和分析的难度,降低了电路分析的效率。

针对背景技术中出现的问题,本申请实施例提供了一种电路分析方法、装置、设备及存储介质,可以从电路图中的多个元件实例中确定共享的目标元件实例,并生成包括目标元件实例的信号盒,根据目标元件实例的连接关系,调用信号盒。如此可以通过调用包括共享实例的信号盒,使电路图更加直观,进而降低电路分析的难度,提升电路分析的效率。

下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的电路分析方法、装置、设备和存储介质进行详细地说明。

图4是本申请实施例提供的一种电路分析系统的架构示意图,如图4所示,该电路分析系统可以包括电子设备410和服务器420,本申请实施例在此不做限制。

其中,电子设备410可以为移动电子设备,也可以为非移动电子设备。例如,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑或者超级移动个人计算机(Ultra-Mobile Personal Computer,UMPC)等等,非移动电子设备可以为服务器、网络附属存储器(Network Attached Storage,NAS)或者个人计算机(Personal Computer,PC)等等。

服务器420可以为数据服务器,其中存储有电路的电路图。可选地,服务器420可以是单个服务器、服务器集群或者云服务器等等。

如图4所示,电子设备410与服务器420之间存在通信连接。可选地,通信方式可以是有线通信或者无线通信。示例性地,电子设备410与服务器420可以通过网线进行通信。

作为一个示例,该电路分析系统可以应用于各种电路的分析场景。参见图4,电子设备410可以先从服务器420中获取电路的电路图,其中,该电路图用于描述电路中的多个元件对应的元件实例,以及多个元件实例的连接关系。然后从电路图中的多个元件实例中确定共享的目标元件实例即共享实例,并生成包括目标元件实例的信号盒。接着根据目标元件实例的连接关系,调用信号盒。如此可以通过调用包括共享实例的信号盒,使电路图更加直观,进而降低电路分析的难度,提升电路分析的效率。

下面将介绍本申请实施例提供的电路分析方法。其中,该电路分析方法的执行主体可以是图4所示的电路分析系统中的电子设备410,或者电子设备410中的模块。

图5是本申请实施例提供的一种电路分析方法的流程示意图,如图5所示,该电路分析方法可以包括以下步骤:

S510,获取电路的电路图。

其中,电路可以为数字电路或者模拟电路,电路图用于描述电路中的多个元件对应的元件实例,以及多个元件实例的连接关系,任意一个元件实例的连接关系与其对应的元件的连接关系相对应。

例如,电路包括元件1、元件2和元件3,其中,元件1和元件2连接,元件2和元件3连接。电路的电路图包括元件实例1、元件实例2和元件实例3,其中,元件实例1、元件实例2和元件实例3分别与元件1、元件2和元件3对应,且元件实例1和元件实例2连接,元件实例2和元件实例3连接。

S520,从电路图中的多个元件实例中确定共享的目标元件实例,并生成包括目标元件实例的信号盒。

在一个实施例中,可以通过预设的共享实例识别算法识别多个元件实例的连接关系,得到共享的目标元件实例。如此可以实现共享实例的自动识别,提高电路分析效率。

示例性地,可以将多个元件实例的连接关系转换为寄存器传输级(RegisterTransfer Level,RTL)代码。通过预设的共享实例识别算法处理RTL代码,得到共享的目标元件实例。其中,共享实例识别算法可以基于C++或工具命令语言(Tool CommandLanguage,TCL)编写。

此外,也可以将多个元件实例的连接关系转换为拓扑结构,通过预设的共享实例识别算法处理拓扑结构,得到共享的目标元件实例。

在另一个实施例中,也可以显示多个元件实例的连接关系,接收用户选中显示的元件实例的输入,响应于该输入,确定选中的元件实例为至少两个元件实例共享的目标元件实例。如此可以通过人工精确地确定共享实例,提高电路分析的准确性。

示例性地,可以在电子设备的屏幕上显示多个元件实例的连接关系,以使用户查看。从而用户可以根据自身经验确定至少两个元件实例共享的目标元件实例,进而点击该元件实例。电子设备响应于用户的点击输入,可以将点击的元件实例确定为目标元件实例。

S530,根据目标元件实例的连接关系,调用信号盒。

可选地,可以根据目标元件实例的连接关系,将信号盒调用至与目标元件实例相关的元件实例附近。需要注意的是,调用的信号盒是虚拟的,仅用于理解电路结构和功能,并未修改元件实例的连接关系。

也可以对电路图中的多个元件实例进行模块划分,得到至少两个模块。可选地,可以利用预设的模块划分算法,将电路图中的元件实例划分为至少两个模块。与此同时,也可以接收用户输入的模块划分指令,响应于该指令,对电路图中的元件实例进行模块划分,得到至少两个模块。

然后基于指定的引擎和算法调用信号盒至至少两个模块中与目标元件实例相关但不包括目标元件实例的模块,得到第一模块。其中,与目标元件实例相关的模块是共享目标元件实例的模块,目标元件实例可以包括多个。如此可以提高共享实例所涉及的不包括共享实例的模块的完整性,便于分析模块功能。

需要注意的是,调用的信号盒是虚拟的,仅用于理解电路结构和功能,并未修改该模块内的元件实例的连接关系。

也可以生成模块的层次化宏单元数据,具体地,可以对模块中的元件实例进行打包,得到模块的层次化宏单元数据。然后根据目标元件实例的连接关系,将信号盒调用至层次化宏单元数据中。需要注意的是,调用的信号盒是虚拟的,仅用于理解电路结构和功能,并未修改元件实例的连接关系。

在本申请实施例中,可以从电路图中的多个元件实例中确定共享的目标元件实例,并生成包括目标元件实例的信号盒,根据目标元件实例的连接关系,调用信号盒。如此可以通过调用包括共享实例的信号盒,使电路图更加直观,进而降低电路分析的难度,提升电路分析的效率。

在一个实施例中,在调用信号盒至至少两个模块中与目标元件实例相关但不包括目标元件实例的模块,得到第一模块之后,该电路分析方法还可以包括:

生成电路图中的模块的层次化宏单元数据。具体地,可以对模块中的元件实例进行打包,得到模块的层次化宏单元数据。如此可以将模块由平面数据结构转换成层次化的数据结构,便于电路分析。

在另一个实施例中,在调用信号盒至至少两个模块中与目标元件实例相关但不包括目标元件实例的模块,得到第一模块之后,该电路分析方法还可以包括:

根据目标元件实例的连接关系进行映射转换,建立第一模块中的信号盒与第一模块中与目标元件实例相关的元件实例的连接关系,得到目标电路图。也就是说,将调用的虚拟信号盒转换为有实际连接关系的真实信号盒,生成新的电路图。如此可以进一步提高共享实例所涉及的不包括共享实例的模块的完整性,便于后续仿真处理。

进一步地,还可以生成目标电路图中的模块的层次化宏单元数据。

在一个实施例中,在生成目标电路图中的模块的层次化宏单元数据之后,该电路分析方法还可以包括:

对目标电路图进行电路仿真,得到目标电路图的仿真结果。

在目标电路图中的模块对应的功能名称与模块的仿真结果对应的功能名称不同的情况下,也即模块当前的功能名称有误的情况下,将目标电路图中的模块对应的功能名称调整为模块的仿真结果对应的功能名称。如此可以通过仿真来校正模块的功能名称,提高电路分析的准确性。

此外,也可以对目标电路图和之前的电路图进行电路仿真,得到两者的仿真结果,比较两者的仿真结果,验证功能名称与仿真结果是否匹配。

下面以数字电路为例,对本申请实施例提供的电路分析方法进行详细介绍,具体如下:

步骤1,可以先获取如图1所示的数字电路图。如图1所示,该数字电路图包括2个元件实例INV、1个元件实例NOR2和1个元件实例AND2。

步骤2,将图1中的元件实例划分为功能模块。划分后的模块可以如图2所示,包括AOI12B1和NOR2B1的两个模块。

步骤3,通过预设的共享实例识别算法识别模块AOI12B1和模块NOR2B1中共享实例为元件实例AND2。如图3所示,元件实例AND2的信号同时提供给模块AOI12B1和模块NOR2B1。

步骤4,如图6所示,可以生成包括元件实例AND2的信号盒MI0。其中,信号盒MI0可以以预设显示方式显示,例如信号盒MI0具有指定的颜色和命名,以区别于电路图中的其他实例。然后基于指定的引擎和算法调用信号盒MI0至模块NOR2B1,并调整模块NOR2B1的功能名称为AOI12B1'。其中,调用的信号盒是虚拟的,仅用于理解电路结构和功能,并未修改该模块内的元件实例的连接关系。图6中的虚线表示调用的信号盒和模块AOI12B1'内部的其它元件实例无实际的连接关系。

步骤5,如图6所示,通过预设的连接转换算法对元件实例AND2的连接关系进行映射转换,建立模块AOI12B1'中的元件实例AND2与模块AOI12B1'中的元件实例NOR2的连接关系,并调整模块AOI12B1'的功能名称为AOI12B1,得到目标电路图即新的电路图,其中,目标电路图可以如图7所示。对图7中每个模块中的元件实例进行打包,得到每个模块的层次化宏单元数据。

此外,如图6所示,也可以通过预设的连接转换算法对元件实例AND2的连接关系进行映射转换,建立模块AOI12B1'中的元件实例AND2与模块AOI12B1'中的元件实例NOR2的连接关系,并调整模块AOI12B1'的功能名称为AOI12B1,得到目标电路图,其中,目标电路图可以是图7中的下半部分,不包括图7中的上半部分。

步骤6,对目标电路图进行电路仿真,得到目标电路图的仿真结果。在目标电路图中的模块对应的功能名称与模块的仿真结果对应的功能名称不同的情况下,也即模块当前的功能名称有误的情况下,将目标电路图中的模块对应的功能名称调整为模块的仿真结果对应的功能名称。

此外,也可以对目标电路图和之前的电路图进行电路仿真,得到两者的仿真结果,比较两者的仿真结果,验证功能名称与仿真结果是否匹配。

可选地,步骤2-步骤6可以利用EDA软件实现,本申请实施例在此不做限制。

基于本申请实施例的提供的电路分析方法,本申请实施例还提供了一种电路分析装置,如图8所示,电路分析装置800可以包括:

获取模块810,用于获取电路的电路图,其中,所述电路图用于描述所述电路中的多个元件对应的元件实例,以及所述多个元件实例的连接关系。

确定模块820,用于从所述电路图中的多个元件实例中确定共享的目标元件实例,并生成包括目标元件实例的信号盒。

调用模块830,用于根据所述目标元件实例的连接关系,调用所述信号盒。

在一个实施例中,确定模块820包括:

识别单元,用于通过预设的共享实例识别算法识别多个元件实例的连接关系,得到目标元件实例。

在一个实施例中,确定模块820包括:

显示单元,用于显示多个元件实例的连接关系。

接收单元,用于接收用户选中显示的元件实例的输入。

确定单元,用于响应于输入,确定选中的元件实例为目标元件实例。

在一个实施例中,调用模块830包括:

划分单元,用于对电路图中的多个元件实例进行模块划分,得到至少两个模块。

调用单元,用于调用信号盒至至少两个模块中与目标元件实例相关但不包括目标元件实例的模块,得到第一模块。

在一个实施例中,该电路分析装置800还包括:

生成模块,用于在调用信号盒至至少两个模块中与目标元件实例相关但不包括目标元件实例的模块,得到第一模块之后,生成电路图中的模块的层次化宏单元数据。

在一个实施例中,该电路分析装置800还包括:

转换模块,用于在调用信号盒至至少两个模块中与目标元件实例相关但不包括目标元件实例的模块,得到第一模块之后,根据目标元件实例的连接关系进行映射转换,建立第一模块中的信号盒与第一模块中与目标元件实例相关的元件实例的连接关系,得到目标电路图。

在一个实施例中,该电路分析装置800还包括:

第二生成模块,用于在根据目标元件实例的连接关系进行映射转换,建立第一模块中的信号盒与第一模块中与目标元件实例相关的元件实例的连接关系,得到目标电路图之后,生成目标电路图中的模块的层次化宏单元数据。

在一个实施例中,该电路分析装置800还包括:

仿真模块,用于在生成目标电路图中的模块的层次化宏单元数据之后,对目标电路图进行电路仿真,得到目标电路图中的仿真结果。

可以理解的是,图8所示电路分析装置800中的各个模块/单元具有实现本申请实施例提供的电路分析方法中的各个步骤的功能,并能达到其相应的技术效果,为了简洁,在此不再赘述。

图9是本申请实施例提供的一种电路分析设备的结构示意图。如图9所示,本实施例中的电路分析设备900包括输入设备901、输入接口902、中央处理器903、存储器904、输出接口905、以及输出设备906。其中,输入接口902、中央处理器903、存储器904、以及输出接口905通过总线910相互连接,输入设备901和输出设备906分别通过输入接口902和输出接口905与总线910连接,进而与电路分析设备900的其他组件连接。

具体地,输入设备901接收来自外部的输入信息,并通过输入接口902将输入信息传送到中央处理器903;中央处理器903基于存储器904中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器904中,然后通过输出接口905将输出信息传送到输出设备906;输出设备906将输出信息输出到电路分析设备900的外部供用户使用。

在一些实施例中,图9所示的电路分析设备900包括:存储器904,用于存储程序;处理器903,用于运行存储器中存储的程序,以实现本申请实施例提供的电路分析方法。

本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现本申请实施例提供的电路分析方法。

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

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

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

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

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

相关技术
  • 电路分析方法、装置、设备及存储介质
  • 集成电路绕线质量分析方法、装置、电子设备和存储介质
技术分类

06120112940816