CN114861593B - 基于电路拓扑检查原理图网络的方法、装置、设备、介质 - Google Patents
基于电路拓扑检查原理图网络的方法、装置、设备、介质 Download PDFInfo
- Publication number
- CN114861593B CN114861593B CN202210607684.6A CN202210607684A CN114861593B CN 114861593 B CN114861593 B CN 114861593B CN 202210607684 A CN202210607684 A CN 202210607684A CN 114861593 B CN114861593 B CN 114861593B
- Authority
- CN
- China
- Prior art keywords
- line segment
- network
- sequence
- starting point
- array
- 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
- 238000010586 diagram Methods 0.000 title claims abstract description 45
- 238000000034 method Methods 0.000 title claims abstract description 30
- 238000007689 inspection Methods 0.000 claims abstract description 16
- 238000001514 detection method Methods 0.000 claims abstract description 10
- 238000012216 screening Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 2
- 230000006870 function Effects 0.000 description 4
- 101100520142 Caenorhabditis elegans pin-2 gene Proteins 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 101150037009 pin1 gene Proteins 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012546 transfer 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/39—Circuit design at the physical level
- G06F30/398—Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/394—Routing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2115/00—Details relating to the type of the circuit
- G06F2115/12—Printed circuit boards [PCB] or multi-chip modules [MCM]
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)
- Computer Networks & Wireless Communication (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明属于电路原理图检测技术领域,具体提供一种基于电路拓扑检查原理图网络的方法、装置、设备、介质,包括如下步骤:获取原理图信号名并将获取的信号名放入信号名数列中;提取原理图上的所有线段并将提取的线段放入线段数列;遍历信号名数列,在线段数列查找带有该信号名的基准线段;查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列;线段数列遍历完成,将起始点数列中对应的起始点的线段生成同网络线段数列;遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成网络拓扑关系;根据网络拓扑关系找出同名信号网络并判断与信号连接的引脚是否一样,输出判断结果。能够快速准确的找到不符合要求的网络。
Description
技术领域
本发明涉及电路原理图检测技术领域,具体涉及一种基于电路拓扑检查原理图网络的方法、装置、设备、介质。
背景技术
目前在市场上有多款原理图设计软件,Cadence作为业界应用最广泛的软件,不仅是它拥有强大的功能和多款相关软件做支撑,还因为它提供了开放式的二次开发接口和较为完善的开发语言库,用户可根据自身的需要进行二次开发。skill语言是Cadence软件内置的一种基于C语言和LISP语言的高级编程语言,Cadence为skill语言提供了丰富的交互式函数,研究skill语言继而编写工具,投入应用可以大大提高工作效率。
原理图设计完成后,为了保证后期PCB布线的准确性,需要将原理图导出网络列表进行检查,检查过程费时费力,效率低下。如何快速提取网络拓扑,用于检查不同页码同名网络属性是本申请要解决的问题。
发明内容
原理图设计完成后,为了保证后期PCB布线的准确性,需要将原理图导出网络列表进行检查,检查过程费时费力,效率低下。如何快速提取网络拓扑,用于检查不同页码同名网络属性是本申请要解决的问题。本发明提供一种基于电路拓扑检查原理图网络的方法、装置、设备、介质。
本发明的技术方案是:
第一方面,本发明技术方案提供一种基于电路拓扑检查原理图网络的方法,包括如下步骤:
获取原理图信号名并将获取的信号名放入信号名数列中;
提取原理图上的所有线段并将提取的线段放入线段数列;
遍历信号名数列,在线段数列查找带有该信号名的基准线段;
查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列;
线段数列遍历完成,将起始点数列中对应的起始点的线段生成同网络线段数列,信号名数列遍历完成即生成多个同网络线段数列;
遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成一个网络拓扑关系;
根据网络拓扑关系找出同名信号网络并判断与信号连接的引脚是否一样,输出判断结果。
进一步的,遍历信号名数列,在线段数列查找带有该信号名的基准线段的步骤包括:
遍历信号名数列,获取信号名的父级身份放入父级身份数列;
获取线段数列中线段的身份放入线段身份数列;
遍历父级身份数列,筛选线段身份数列元素中第一个与该父级身份相同的线段为基准线段。
进一步的,查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列的步骤包括
获取基准线段的起始点放入起始点数列;
遍历线段数列查找与起始点数列中任意元素一致的线段,并将查找到的线段的起始点放入起始点数列。
进一步的,遍历线段数列查找与起始点数列中任意元素一致的线段,并将查找到的线段的起始点放入起始点数列的步骤包括:
A:遍历线段数列中的线段获取该线段的起始点;
B:判断该起始点是否在起始点数列中;
若是,执行步骤C,执行步骤D;
C:将该起始点合并到起始数列;执行步骤D;
D:判断线段数列是否遍历完成,若是,执行步骤E,若否,执行步骤A,遍历下一个线段;
E:判断信号名数列是否遍历完成;
若否,遍历信号名数列,遍历下一个信号名;
若是,执行步骤:将起始点数列中对应的起始点的线段生成同网络线段数列,信号名数列遍历完成生成多个同网络线段数列。
进一步的,遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成一个网络拓扑关系的步骤包括:
遍历同网络线段数列中的元素获取起始点;
获取与起始点相连的引脚放入线段引脚数列;
根据获取的起始点和线段引脚数列生成与信号名对应的网络拓扑关系。
进一步的,根据网络拓扑关系找出同信号网络并判断与信号连接的引脚是否一样,输出判断结果的步骤包括:
判断同信号名的网络拓扑关系的引脚数列的元素是否相同;
若是,原理图正确;
若否,输出错误提示信息。
第二方面,本发明技术方案还提供一种基于电路拓扑检查原理图网络的装置,包括信号名获取模块、线段获取模块、基准线查找模块、关联线段查找模块、同网络数列生成模块、网络拓扑生成模块、检测判断模块;
信号名获取模块,用于获取原理图信号名并将获取的信号名放入信号名数列中;
线段获取模块,用于提取原理图上的所有线段并将提取的线段放入线段数列;
基准线查找模块,用于遍历信号名数列,在线段数列查找带有该信号名的基准线段;
关联线段查找模块,用于查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列;
同网络数列生成模块,用于线段数列遍历完成,将起始点数列中对应的起始点的线段生成同网络线段数列,信号名数列遍历完成即生成多个同网络线段数列;
网络拓扑生成模块,用于遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成一个网络拓扑关系;
检测判断模块,用于根据网络拓扑关系找出同名信号网络并判断与信号连接的引脚是否一样,输出判断结果。
进一步的,基准线查找模块包括父级身份获取单元、线段身份获取单元、筛选单元;
父级身份获取单元,用于遍历信号名数列,获取信号名的父级身份放入父级身份数列;
线段身份获取单元,用于获取线段数列中线段的身份放入线段身份数列;
筛选单元,用于遍历父级身份数列,筛选线段身份数列元素中第一个与该父级身份相同的线段为基准线段。
进一步的,关联线段查找模块包括第一获取单元、关联点查找单元;
第一获取单元,用于获取基准线段的起始点放入起始点数列;
关联点查找单元,用于遍历线段数列查找与起始点数列中任意元素一致的线段,并将查找到的线段的起始点放入起始点数列。
进一步的,关联点查找单元包括第一获取子模块、第一判断子模块、合并子模块、第二判断模块;
第一获取子模块,用于遍历线段数列中的线段获取该线段的起始点;
第一判断子模块,用于判断该起始点是否在起始点数列中;
合并子模块,用于将该起始点合并到起始数列;
第二判断模块,用于判断线段数列是否遍历完成,还用于判断信号名数列是否遍历完成。
进一步的,网络拓扑生成模块包括第二获取单元、引脚获取单元、网络拓扑生成单元;
第二获取单元,用于遍历同网络线段数列中的元素获取起始点;
引脚获取单元,用于获取与起始点相连的引脚放入线段引脚数列;
网络拓扑生成单元,用于根据获取的起始点和线段引脚数列生成与信号名对应的网络拓扑关系。
进一步的,检测判断模块,具体用于判断同信号名的网络拓扑关系的引脚数列的元素是否相同;若是,原理图正确;若否,输出错误提示信息。
第三方面,本发明技术方案还提供一种电子设备,所述电子设备包括:
至少一个处理器;以及,
与所述至少一个处理器通信连接的存储器;其中,
存储器存储有可被至少一个处理器执行的计算机程序指令,所述计算机程序指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如第一方面所述的基于电路拓扑检查原理图网络的方法。
第四方面,本发明技术方案还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如第一方面所述的基于电路拓扑检查原理图网络的方法。
从以上技术方案可以看出,本发明具有以下优点:通过本发明能够快速准确的找到不符合要求的网络。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的方法的示意性流程图。
图2是本发明另一个实施例的方法的示意性流程图。
图3是本发明一个实施例的装置的示意性框图。
具体实施方式
原理图设计完成后,为了保证后期PCB布线的准确性,需要将原理图导出网络列表进行检查,检查过程费时费力,效率低下。如何快速提取网络拓扑,用于检查不同页码同名网络属性是本申请要解决的问题。实现自动提取拓扑检查网络,获取任意网路的一条线段,根据算法求出与之关联的线段,假设已知线段g算法实现:获取所有的线段,包括所有网络的线段,获取g线段的起始点,放在一个数列中,遍历所有的线段查找与g起始点任意一点一致的,说明与之连接,并把这条线的起始点放在上一个数列中,重复以上过程,查找到所有线段。为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
如图1所示,本发明实施例提供一种基于电路拓扑检查原理图网络的方法,包括如下步骤:
步骤1:获取原理图信号名并将获取的信号名放入信号名数列中;
步骤2:提取原理图上的所有线段并将提取的线段放入线段数列;
步骤3:遍历信号名数列,在线段数列查找带有该信号名的基准线段;
步骤4:查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列;
步骤5:线段数列遍历完成,将起始点数列中对应的起始点的线段生成同网络线段数列,信号名数列遍历完成即生成多个同网络线段数列;
步骤6:遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成网络拓扑关系;
步骤7:根据网络拓扑关系找出同名信号网络并判断与信号连接的引脚是否一样,输出判断结果。
在有些实施例中,步骤3中,遍历信号名数列,在线段数列查找带有该信号名的基准线段的步骤包括:
步骤31:遍历信号名数列,获取信号名的父级身份放入父级身份数列;
步骤32:获取线段数列中线段的身份放入线段身份数列;
步骤33:遍历父级身份数列,筛选线段身份数列元素中第一个与该父级身份相同的线段为基准线段。
在有些实施例中,步骤4中,查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列的步骤包括:
步骤41:获取基准线段的起始点放入起始点数列;
步骤42:遍历线段数列查找与起始点数列中任意元素一致的线段,并将查找到的线段的起始点放入起始点数列。
如图2所示,需要说明的是,步骤42中,遍历线段数列查找与起始点数列中任意元素一致的线段,并将查找到的线段的起始点放入起始点数列的步骤包括:
A:遍历线段数列中的线段获取该线段的起始点;
B:判断该起始点是否在起始点数列中;
若是,执行步骤C,执行步骤D;
C:将该起始点合并到起始数列;执行步骤D;
D:判断线段数列是否遍历完成,若是,执行步骤E,若否,执行步骤A,遍历下一个线段;
E:判断信号名数列是否遍历完成;
若否,遍历信号名数列,遍历下一个信号名;
若是,执行步骤:将起始点数列中对应的起始点的线段生成同网络线段数列,信号名数列遍历完成生成多个同网络线段数列。
在有些实施例中,步骤6中,遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成一个网络拓扑关系的步骤包括:
步骤61:遍历同网络线段数列中的元素获取起始点;
步骤62:获取与起始点相连的引脚放入线段引脚数列;
步骤63:根据获取的起始点和线段引脚数列生成与信号名对应的网络拓扑关系。
在有些实施例中,步骤7中,根据网络拓扑关系找出同信号网络并判断与信号连接的引脚是否一样,输出判断结果的步骤包括:
判断同信号名的网络拓扑关系的引脚数列的元素是否相同;
若是,原理图正确;
若否,输出错误提示信息。
具体过程如下:根据sig_name对应找到同名的线段wire,并放在线段数列l_wire中。(同网络的只有一条wire对应一个sig_name,其他的需要根据算法查找,分类出来);包括如下步骤:
a)获取sig_name属性,放在数列l_signame中,l_signame=list(prop1prop2prop3……);
b)获取wire,放在数列l_wire中,l_wire=list(w1 w2 w3……);
c)查找出带有sig_name的wire:
通过cnGetPropOwnerDbId函数获取属性(a步骤中的l_signame)的父级身份owerDBID,放在l_signame_ower中;
通过cnGetWireDbId函数获取wire(b步骤中的l_wire)的DBID身份,创建数据结构list(wDBID wire)并放在l_wire_DBID中;
筛选l_wire_DBID元素中的第一个值与l_signame_ower元素相同的,放在数列l_wire_DBID;数列l_wire_DBID中的元素包括不同网络名对应的基准线段;
d)相同sig_name属性的放在一起,例如c线段是已知找出的线段(l_wire_DBID),需要找出与c关联的所有线段,认为是带有相同sig_name属性的。
获取c线段的起始点,放在数列l_starend中;
遍历所有的wire(l_wire中元素),获取wire的起始点starEnd;
判断starEnd是否在l_starend中,如果在则说明是首位相连的wire是属于同一个网络,starEnd合并到l_starend;如果不相连说明不是同一个网络;
重复以上步骤,直到所有的wire全部都筛选完,则相同网络的“SPI_PCH_IO3_TPCM_R”的所有wire,如a,b,c,d,e,f,g,h并放在数列l_same_net;
e)遍历l_same_net元素,获取起始点,通过“select A WIRES location”(location为wire的起始点)命令,获取与零件相连的pin,并记录到数列l_wire_pin中;
原理图所有的页码都重复以上过程,会找出所有的同网络信号和与信号相连的pin,也就是网络拓扑关系:
SPI_PCH_IO3_TPCM_R:pin1、pin2、pin3……;
Net1:pin1、pin2、pin3……;
Net2:pin1、pin2、pin3……;
……;
f)根据网络拓扑关系找出同名的网络,在判断pin是否一样,不一样说明是重名的不符合规范的网络。
如图3所示,本发明实施例还提供一种基于电路拓扑检查原理图网络的装置,包括信号名获取模块、线段获取模块、基准线查找模块、关联线段查找模块、同网络数列生成模块、网络拓扑生成模块、检测判断模块;
信号名获取模块,用于获取原理图信号名并将获取的信号名放入信号名数列中;
线段获取模块,用于提取原理图上的所有线段并将提取的线段放入线段数列;
基准线查找模块,用于遍历信号名数列,在线段数列查找带有该信号名的基准线段;
关联线段查找模块,用于查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列;
同网络数列生成模块,用于线段数列遍历完成,将起始点数列中对应的起始点的线段生成同网络线段数列,信号名数列遍历完成即生成多个同网络线段数列;
网络拓扑生成模块,用于遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成网络拓扑关系;
检测判断模块,用于根据网络拓扑关系找出同名信号网络并判断与信号连接的引脚是否一样,输出判断结果。
在有些实施例中,基准线查找模块包括父级身份获取单元、线段身份获取单元、筛选单元;
父级身份获取单元,用于遍历信号名数列,获取信号名的父级身份放入父级身份数列;
线段身份获取单元,用于获取线段数列中线段的身份放入线段身份数列;
筛选单元,用于遍历父级身份数列,筛选线段身份数列元素中第一个与该父级身份相同的线段为基准线段。
在有些实施例中,关联线段查找模块包括第一获取单元、关联点查找单元;
第一获取单元,用于获取基准线段的起始点放入起始点数列;
关联点查找单元,用于遍历线段数列查找与起始点数列中任意元素一致的线段,并将查找到的线段的起始点放入起始点数列。
在有些实施例中,关联点查找单元包括第一获取子模块、第一判断子模块、合并子模块、第二判断模块;
第一获取子模块,用于遍历线段数列中的线段获取该线段的起始点;
第一判断子模块,用于判断该起始点是否在起始点数列中;
合并子模块,用于将该起始点合并到起始数列;
第二判断模块,用于判断线段数列是否遍历完成,还用于判断信号名数列是否遍历完成。
在有些实施例中,网络拓扑生成模块包括第二获取单元、引脚获取单元、网络拓扑生成单元;
第二获取单元,用于遍历同网络线段数列中的元素获取起始点;
引脚获取单元,用于获取与起始点相连的引脚放入线段引脚数列;
网络拓扑生成单元,用于根据获取的起始点和线段引脚数列生成与信号名对应的网络拓扑关系。
在有些实施例中,检测判断模块,具体用于判断同信号名的网络拓扑关系的引脚数列的元素是否相同;若是,原理图正确;若否,输出错误提示信息。
本发明实施例还提供一种电子设备,所述电子设备包括:处理器、通信接口、存储器和总线,其中,处理器,通信接口,存储器通过总线完成相互间的通信。总线可以用于电子设备与传感器之间的信息传输。处理器可以调用存储器中的逻辑指令,以执行如下方法:步骤1:获取原理图信号名并将获取的信号名放入信号名数列中;步骤2:提取原理图上的所有线段并将提取的线段放入线段数列;步骤3:遍历信号名数列,在线段数列查找带有该信号名的基准线段;步骤4:查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列;步骤5:线段数列遍历完成,将起始点数列中对应的起始点的线段生成同网络线段数列,信号名数列遍历完成即生成多个同网络线段数列;步骤6:遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成网络拓扑关系;步骤7:根据网络拓扑关系找出同名信号网络并判断与信号连接的引脚是否一样,输出判断结果。
在一些具体的实施例中,处理器可以调用存储器中的逻辑指令,以执行如下方法:步骤31:遍历信号名数列,获取信号名的父级身份放入父级身份数列;步骤32:获取线段数列中线段的身份放入线段身份数列;步骤33:遍历父级身份数列,筛选线段身份数列元素中第一个与该父级身份相同的线段为基准线段。
在一些具体的实施例中,处理器可以调用存储器中的逻辑指令,以执行如下方法:步骤41:获取基准线段的起始点放入起始点数列;步骤42:遍历线段数列查找与起始点数列中任意元素一致的线段,并将查找到的线段的起始点放入起始点数列。
此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例提供一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令使计算机执行上述方法实施例所提供的方法,例如包括:步骤1:获取原理图信号名并将获取的信号名放入信号名数列中;步骤2:提取原理图上的所有线段并将提取的线段放入线段数列;步骤3:遍历信号名数列,在线段数列查找带有该信号名的基准线段;步骤4:查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列;步骤5:线段数列遍历完成,将起始点数列中对应的起始点的线段生成同网络线段数列,信号名数列遍历完成即生成多个同网络线段数列;步骤6:遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成一个网络拓扑关系;步骤7:根据网络拓扑关系找出同名信号网络并判断与信号连接的引脚是否一样,输出判断结果。
在一些具体的实施例中,所述可读存储介质中被处理器执行的程序指令,具体可以实现以下步骤:步骤31:遍历信号名数列,获取信号名的父级身份放入父级身份数列;步骤32:获取线段数列中线段的身份放入线段身份数列;步骤33:遍历父级身份数列,筛选线段身份数列元素中第一个与该父级身份相同的线段为基准线段。
在一些具体的实施例中,所述可读存储介质中被处理器执行的程序指令,具体可以实现以下步骤:步骤41:获取基准线段的起始点放入起始点数列;步骤42:遍历线段数列查找与起始点数列中任意元素一致的线段,并将查找到的线段的起始点放入起始点数列。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (6)
1.一种基于电路拓扑检查原理图网络的方法,其特征在于,包括如下步骤:
获取原理图信号名并将获取的信号名放入信号名数列中;
提取原理图上的所有线段并将提取的线段放入线段数列;
遍历信号名数列,在线段数列查找带有该信号名的基准线段;
查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列;
线段数列遍历完成,将起始点数列中对应的起始点的线段生成同网络线段数列,信号名数列遍历完成即生成多个同网络线段数列;
遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成网络拓扑关系;
根据网络拓扑关系找出同名信号网络并判断与信号连接的引脚是否一样,输出判断结果;
遍历信号名数列,在线段数列查找带有该信号名的基准线段的步骤包括:
遍历信号名数列,获取信号名的父级身份放入父级身份数列;
获取线段数列中线段的身份放入线段身份数列;
遍历父级身份数列,筛选线段身份数列元素中第一个与该父级身份相同的线段为基准线段;
查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列的步骤包括:
获取基准线段的起始点放入起始点数列;
遍历线段数列查找与起始点数列中任意元素一致的线段,并将查找到的线段的起始点放入起始点数列;
遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成一个网络拓扑关系的步骤包括:
遍历同网络线段数列中的元素获取起始点;
获取与起始点相连的引脚放入线段引脚数列;
根据获取的起始点和线段引脚数列生成与信号名对应的网络拓扑关系。
2.根据权利要求1所述的基于电路拓扑检查原理图网络的方法,其特征在于,遍历线段数列查找与起始点数列中任意元素一致的线段,并将查找到的线段的起始点放入起始点数列的步骤包括:
A:遍历线段数列中的线段获取该线段的起始点;
B:判断该起始点是否在起始点数列中;
若是,执行步骤C,执行步骤D;
C:将该起始点合并到起始数列;执行步骤D;
D:判断线段数列是否遍历完成,若是,执行步骤E,若否,执行步骤A,遍历下一个线段;
E:判断信号名数列是否遍历完成;
若否,遍历信号名数列,遍历下一个信号名;
若是,执行步骤:将起始点数列中对应的起始点的线段生成同网络线段数列,信号名数列遍历完成生成多个同网络线段数列。
3.根据权利要求2所述的基于电路拓扑检查原理图网络的方法,其特征在于,根据网络拓扑关系找出同信号网络并判断与信号连接的引脚是否一样,输出判断结果的步骤包括:
判断同信号名的网络拓扑关系的引脚数列的元素是否相同;
若是,原理图正确;
若否,输出错误提示信息。
4.一种基于电路拓扑检查原理图网络的装置,其特征在于,包括信号名获取模块、线段获取模块、基准线查找模块、关联线段查找模块、同网络数列生成模块、网络拓扑生成模块、检测判断模块;
信号名获取模块,用于获取原理图信号名并将获取的信号名放入信号名数列中;
线段获取模块,用于提取原理图上的所有线段并将提取的线段放入线段数列;
基准线查找模块,用于遍历信号名数列,在线段数列查找带有该信号名的基准线段;
关联线段查找模块,用于查找与基准线段连接的所有线段,并将查找到的线段的起始点放入起始点数列;
同网络数列生成模块,用于线段数列遍历完成,将起始点数列中对应的起始点的线段生成同网络线段数列,信号名数列遍历完成即生成多个同网络线段数列;
网络拓扑生成模块,用于遍历每个同网络线段数列中的元素,获取与零件相连的引脚生成网络拓扑关系;
检测判断模块,用于根据网络拓扑关系找出同名信号网络并判断与信号连接的引脚是否一样,输出判断结果;
基准线查找模块包括父级身份获取单元、线段身份获取单元、筛选单元;
父级身份获取单元,用于遍历信号名数列,获取信号名的父级身份放入父级身份数列;
线段身份获取单元,用于获取线段数列中线段的身份放入线段身份数列;
筛选单元,用于遍历父级身份数列,筛选线段身份数列元素中第一个与该父级身份相同的线段为基准线段;
关联线段查找模块包括第一获取单元、关联点查找单元;
第一获取单元,用于获取基准线段的起始点放入起始点数列;
关联点查找单元,用于遍历线段数列查找与起始点数列中任意元素一致的线段,并将查找到的线段的起始点放入起始点数列;
网络拓扑生成模块包括第二获取单元、引脚获取单元、网络拓扑生成单元;
第二获取单元,用于遍历同网络线段数列中的元素获取起始点;
引脚获取单元,用于获取与起始点相连的引脚放入线段引脚数列;
网络拓扑生成单元,用于根据获取的起始点和线段引脚数列生成与信号名对应的网络拓扑关系。
5.一种电子设备,其特征在于,所述电子设备包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的计算机程序指令,所述计算机程序指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如权利要求1至3中任一项所述的基于电路拓扑检查原理图网络的方法。
6.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至3任一项所述的基于电路拓扑检查原理图网络的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210607684.6A CN114861593B (zh) | 2022-05-31 | 2022-05-31 | 基于电路拓扑检查原理图网络的方法、装置、设备、介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210607684.6A CN114861593B (zh) | 2022-05-31 | 2022-05-31 | 基于电路拓扑检查原理图网络的方法、装置、设备、介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114861593A CN114861593A (zh) | 2022-08-05 |
CN114861593B true CN114861593B (zh) | 2023-11-07 |
Family
ID=82641442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210607684.6A Active CN114861593B (zh) | 2022-05-31 | 2022-05-31 | 基于电路拓扑检查原理图网络的方法、装置、设备、介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114861593B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116629199B (zh) * | 2023-06-13 | 2023-11-24 | 合芯科技有限公司 | 一种电路原理图的自动修改方法、装置、设备及存储介质 |
CN117910423B (zh) * | 2024-03-19 | 2024-06-07 | 上海合见工业软件集团有限公司 | Pcb自动布线方法、装置、设备及介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102571495A (zh) * | 2012-01-17 | 2012-07-11 | 深圳市汉普电子技术开发有限公司 | 印刷电路板布线的网络拓扑结构检查方法及检查装置 |
CN103020357A (zh) * | 2012-12-13 | 2013-04-03 | 迈普通信技术股份有限公司 | 电路网络拓扑匹配检查方法及装置 |
CN112052643A (zh) * | 2020-08-27 | 2020-12-08 | 烽火通信科技股份有限公司 | 一种电路原理图检查方法及系统 |
CN114282491A (zh) * | 2021-12-29 | 2022-04-05 | 芯和半导体科技(上海)有限公司 | 一种大规模原理图检查方法及系统 |
-
2022
- 2022-05-31 CN CN202210607684.6A patent/CN114861593B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102571495A (zh) * | 2012-01-17 | 2012-07-11 | 深圳市汉普电子技术开发有限公司 | 印刷电路板布线的网络拓扑结构检查方法及检查装置 |
CN103020357A (zh) * | 2012-12-13 | 2013-04-03 | 迈普通信技术股份有限公司 | 电路网络拓扑匹配检查方法及装置 |
CN112052643A (zh) * | 2020-08-27 | 2020-12-08 | 烽火通信科技股份有限公司 | 一种电路原理图检查方法及系统 |
CN114282491A (zh) * | 2021-12-29 | 2022-04-05 | 芯和半导体科技(上海)有限公司 | 一种大规模原理图检查方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114861593A (zh) | 2022-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114861593B (zh) | 基于电路拓扑检查原理图网络的方法、装置、设备、介质 | |
CN107609217B (zh) | 碰撞校核数据的处理方法及装置 | |
CN112560401B (zh) | Verilog文件转换方法、装置、存储介质及设备 | |
CN114328276B (zh) | 测试用例生成方法和装置,显示测试用例的方法和装置 | |
CN112328499A (zh) | 一种测试数据生成方法、装置、设备及介质 | |
CN110019067A (zh) | 一种日志分析方法及系统 | |
CN109710224A (zh) | 页面处理方法、装置、设备及存储介质 | |
CN115729817A (zh) | 测试用例库的生成及优化方法、装置、电子设备和存储介质 | |
CN116522830B (zh) | 可测试设计及布局布线阶段的逻辑功能更正方法及装置 | |
CN116682130A (zh) | 图签信息的提取方法、装置、设备及可读存储介质 | |
US6678739B1 (en) | System, method, and computer program product for compressing test pattern set | |
CN104598473A (zh) | 一种信息处理方法及电子设备 | |
CN112231459A (zh) | 一种基于知识图谱实现软件测试智能问答的方法及系统 | |
CN112463913A (zh) | 一种异常事件发现方法及系统 | |
CN105740260A (zh) | 提取模板文件数据结构的方法和装置 | |
CN115640155A (zh) | 基于语句依赖和补丁相似性的程序自动修复方法与系统 | |
CN109828764A (zh) | 烧录文件的生成、烧录方法及其设备 | |
CN112380116A (zh) | 浏览器对比测试方法、装置和浏览器数据转发方法 | |
CN109948018B (zh) | 一种Web结构化数据快速提取方法及系统 | |
CN111950257A (zh) | 一种文件解析方法和装置 | |
CN114282586A (zh) | 一种数据标注方法、系统和电子设备 | |
CN112446188B (zh) | 一种不同差分线中间距检查方法、装置、设备及存储介质 | |
CN115186622B (zh) | Pcb设计中快速查找测试点的方法、装置、终端及存储介质 | |
CN112347723B (zh) | 基于版图的rom代码提取验证方法及装置 | |
CN115310407B (zh) | 一种Excel模型的解析方法及系统 |
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 |