WO2023056642A1 - 用于识别电路系统中的目标电路的方法和电子设备 - Google Patents

用于识别电路系统中的目标电路的方法和电子设备 Download PDF

Info

Publication number
WO2023056642A1
WO2023056642A1 PCT/CN2021/122909 CN2021122909W WO2023056642A1 WO 2023056642 A1 WO2023056642 A1 WO 2023056642A1 CN 2021122909 W CN2021122909 W CN 2021122909W WO 2023056642 A1 WO2023056642 A1 WO 2023056642A1
Authority
WO
WIPO (PCT)
Prior art keywords
circuit
nodes
target
output
representation
Prior art date
Application number
PCT/CN2021/122909
Other languages
English (en)
French (fr)
Inventor
万三平
孙永生
陈默
Original Assignee
华为技术有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Priority to CN202180101672.XA priority Critical patent/CN117940929A/zh
Priority to PCT/CN2021/122909 priority patent/WO2023056642A1/zh
Publication of WO2023056642A1 publication Critical patent/WO2023056642A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design

Definitions

  • the present disclosure relates to the field of integrated circuit simulation, and more particularly to methods and electronic devices for identifying target circuits in a circuit system.
  • circuits with the same function when circuits with the same function are applied in different scenarios, the circuits will also be optimized or modified to meet the needs of specific scenarios.
  • the same circuit function has different requirements for various performance indicators (gain, speed, noise or power consumption, etc.), and the designed circuit structure will have various changes.
  • there are more than 60 types of circuit structures for operational amplifiers such as telescopic structures, folded structures, and Miller compensation structures.
  • different circuit design structures will have different layout design, reliability design and other requirements.
  • the layout of some analog circuits requires symmetrical layout, and the reliability of some circuits will only have long-term reliability problems when the substrate is biased by voltage. How to identify these sub-circuits or target circuits that users care about in complex circuit systems, so as to perform specific layout and reliability verification on the identified circuits, is the key issue that affects the performance and reliability of analog circuits.
  • rule-based text matching usually has a slow matching speed and a low success rate.
  • embodiments of the present disclosure aim to provide a method and an electronic device for identifying a target circuit in a circuit system.
  • a method for identifying a target circuit in a circuit system includes, based on netlist data representing the circuit system, determining graph data representing at least a portion of the circuit system; extracting circuit feature representations from the graph data, the circuit feature representation including device types, device ports of circuit devices in at least a portion of the circuit system or a representation of at least one of the connection relationships; and generating an output about the target circuit based at least on the circuit feature representation.
  • circuit designers do not need to have a deep understanding of the detailed circuit structure of the target circuit, but by a computer Electronic devices automatically perform feature extraction and recognition for circuit features through machine learning models such as convolutional neural networks. Therefore, circuit designers do not need to master complex design rules, but can develop complex circuit systems and accurately identify target circuits that need attention in the circuit system by purchasing and/or establishing and maintaining their own reference circuit feature library.
  • the graph data includes heterogeneous hypergraph data.
  • Extracting circuit feature representations from graph data includes: using convolutional neural network embeddings to extract from heterogeneous hypergraph data, multiple nodes, and multiple node connections associated with multiple nodes; and based on multiple A node is connected to multiple nodes to determine a circuit feature representation.
  • convolutional neural network embeddings By using convolutional neural network embeddings, heterogeneous hypergraphs can be dimensionally reduced, thereby avoiding the potential curse of dimensionality and improving the accuracy and efficiency of recognition.
  • determining the circuit feature representation based on the multiple nodes and node connections includes: using convolutional neural network pooling to cluster the multiple nodes and the multiple nodes to obtain the circuit feature representation.
  • the circuit feature representation may include feature vectors.
  • determining the circuit feature representation based on the multiple nodes and node connections includes: using a convolutional neural network to perform multi-layer perception on the multiple nodes and the multiple nodes to obtain the circuit feature representation.
  • multi-layer perception the circuit feature representation of each node can be effectively extracted, which further improves the accuracy and efficiency of recognition.
  • generating the output about the target circuit based at least on the circuit feature representation includes: determining the output about the target circuit based on the circuit feature representation and multiple reference circuit feature representations in the circuit library.
  • determining the output about the target circuit based on the circuit feature representation and multiple reference circuit feature representations in the circuit library includes: respectively calculating the difference between the circuit feature representation and the multiple reference circuit feature representations a plurality of matching degrees; and based on the plurality of matching degrees, generating an output about the target circuit.
  • generating the output about the target circuit based on the multiple matching degrees includes: determining whether the highest matching degree among the multiple matching degrees reaches a threshold matching degree; and if the highest matching degree reaches the threshold matching degree , generating a first output indicating that the target circuit exists in the circuitry; or generating a second output indicating that the target circuit does not exist in the circuitry if the highest matching degree is lower than the threshold matching degree.
  • the method further includes: determining a first reference circuit signature corresponding to the highest matching degree among multiple reference circuit signatures;
  • the corresponding reference circuit replaces the circuit in the circuit system corresponding to the circuit characteristic representation.
  • the circuit feature representation includes a first circuit feature representation and a second circuit feature representation
  • the first circuit feature representation is used to represent the device type and device port of at least a part of the first circuit device or at least one item of connection relationship
  • the second circuit feature indicates at least one item of device type, device port or connection relationship of at least a part of the second circuit device.
  • Generating the output about the target circuit based on the circuit feature representation includes: calculating the similarity between the first circuit feature representation and the second circuit feature representation; and generating the output about the target circuit based on the similarity.
  • the similarity includes a cosine similarity
  • generating an output about the target circuit based on the similarity includes: determining whether the cosine similarity reaches a threshold similarity; if the cosine similarity reaches a threshold similarity, then generating a first output indicating the presence of the target circuit in the circuitry; and generating a second output indicating the absence of the target circuit in the circuitry if the cosine similarity is below the threshold similarity.
  • the netlist data includes transistor-level netlist data or gate-level netlist data.
  • determining the graph data representing at least a part of the circuit system includes: abstracting each circuit device in the circuit system into a graph structure based on the netlist data Multiple nodes, and the connection relationship between each circuit device in the circuit system is abstracted into multiple edges of the graph structure to generate graph data representing multiple nodes and multiple edges, the graph data represents the above graph structure, the The graph structure represents the topology of at least a portion of the circuitry, and a plurality of nodes and a plurality of edges are used to represent at least a portion of the circuitry.
  • each circuit device in the circuit system is abstracted into multiple nodes of a graph structure based on the netlist data
  • the connection relationship between each circuit device in the circuit system is abstracted as a graph
  • Multiple edges of the structure to generate graph data representing multiple nodes and multiple edges includes: abstracting each circuit device in the circuit system into multiple heterogeneous nodes of the graph structure based on the netlist data, and abstracting the circuit devices in the circuit system
  • the connection relationship between various circuit devices is abstracted into multiple hyperedges of the heterogeneous hypergraph structure, so as to generate heterogeneous hypergraph data representing multiple heterogeneous nodes and multiple hyperedges.
  • a computer-readable storage medium storing a plurality of programs configured to be executed by one or more processors.
  • a plurality of programs includes instructions for the method of the first aspect.
  • a computer program product includes a number of programs configured to be executed by one or more processors.
  • the plurality of programs includes instructions for performing the method of the first aspect.
  • an electronic device comprises: one or more processors; a memory comprising computer instructions which, when executed by the one or more processors of the electronic device, cause the electronic device to perform the method of the first aspect.
  • an electronic device includes: a determining unit configured to determine graph data representing at least a part of the circuit system based on netlist data representing the circuit system; an extracting unit configured to extract a circuit feature representation from the graph data, the circuit feature representation including at least A representation of at least one of device types, device ports, or connection relationships of the circuit devices in the portion; and a generating unit for generating an output about the target circuit based at least on the circuit feature representation.
  • circuit designers do not need to have a deep understanding of the detailed circuit structure of the target circuit, but by a computer Electronic devices automatically perform feature extraction and recognition for circuit features through machine learning models such as convolutional neural networks. Therefore, circuit designers do not need to master complex design rules, but can develop complex circuit systems and accurately identify target circuits that need attention in the circuit system by purchasing and/or establishing and maintaining their own reference circuit feature library.
  • the graph data includes heterogeneous hypergraph data.
  • the extracting unit is further used to: use convolutional neural network embedding to extract from the heterogeneous hypergraph data, a plurality of nodes and a plurality of node connections associated with the plurality of nodes in the heterogeneous hypergraph; Nodes are connected to determine the circuit feature representation.
  • convolutional neural network embeddings heterogeneous hypergraphs can be dimensionally reduced, thereby avoiding the potential curse of dimensionality and improving the accuracy and efficiency of recognition.
  • the determination unit is further configured to: use convolutional neural network pooling to cluster multiple nodes and multiple nodes to obtain circuit feature representations.
  • the circuit feature representation may include feature vectors.
  • the determining unit is further configured to: use a convolutional neural network to perform multi-layer perception on multiple nodes and multiple nodes, so as to obtain circuit feature representations.
  • the circuit feature representation of each node can be effectively extracted, which further improves the accuracy and efficiency of recognition.
  • the generation unit is further configured to: determine an output about the target circuit based on the circuit feature representation and multiple reference circuit feature representations in the circuit library.
  • the generating unit is further configured to: respectively calculate a plurality of matching degrees between the circuit feature representation and multiple reference circuit feature representations; and generate information about the target circuit based on the multiple matching degrees. output.
  • the target circuit can be identified more accurately.
  • the generating unit is further configured to: determine whether the highest matching degree among the multiple matching degrees reaches the threshold matching degree; and if the highest matching degree reaches the threshold matching degree, generate A first output that the target circuit is present; or if the highest match is below the threshold match, a second output indicating that the target circuit is not present in the circuitry is generated.
  • the generating unit is further configured to: determine the first reference circuit characteristic representation corresponding to the highest matching degree among the multiple reference circuit characteristic representations;
  • the corresponding reference circuit replaces the circuit in the circuit system corresponding to the circuit characteristic representation.
  • the circuit characteristic representation includes a first circuit characteristic representation and a second circuit characteristic representation
  • the first circuit characteristic representation is used to represent the device type and device port of at least a part of the first circuit device Or at least one item in the connection relationship
  • the second circuit feature representation is used to represent at least one item of the device type, device port or connection relationship of the second circuit device in at least a part
  • the generating unit is further used to: calculate the first circuit a similarity between the feature representation and the second circuit feature representation; and based on the similarity, generating an output about the target circuit.
  • the similarity includes a cosine similarity
  • the generating unit is further configured to: determine whether the cosine similarity reaches a threshold similarity; if the cosine similarity reaches a threshold similarity, generate a representation a first output indicating that the target circuit is present; and generating a second output indicating that the target circuit is not present in the circuitry if the cosine similarity is below the threshold similarity.
  • the determination unit is further configured to: abstract each circuit device in the circuit system into multiple nodes of the graph structure based on the netlist data, and map the connections between each circuit device in the circuit system The connection relationship of is abstracted as multiple edges of the graph structure to generate graph data representing multiple nodes and multiple edges.
  • the graph data represents the above graph structure. and multiple edges are used to represent at least a portion of the circuitry.
  • the determining unit is further configured to: abstract each circuit device in the circuit system into multiple heterogeneous nodes of a graph structure based on the netlist data, and abstract each circuit device in the circuit system The connection relationship among them is abstracted into multiple hyperedges of the heterogeneous hypergraph structure to generate heterogeneous hypergraph data representing multiple heterogeneous nodes and multiple hyperedges.
  • Figure 1 shows a flow chart of the design and manufacture process of an integrated circuit
  • FIG. 2 shows a schematic flowchart of a method for identifying a target circuit in a circuit system according to some embodiments of the present disclosure
  • Figure 3 shows a schematic circuit diagram of a circuit system according to some embodiments of the present disclosure
  • Fig. 4 shows a schematic diagram of transformation of a heterogeneous hypergraph according to some embodiments of the present disclosure
  • Figure 5 shows a schematic diagram of convolutional neural network graph embedding according to some embodiments of the present disclosure
  • FIG. 6 shows a schematic process diagram of extracting circuit feature representations according to some embodiments of the present disclosure
  • Fig. 7 shows a schematic diagram of transformation of a heterogeneous hypergraph according to another embodiment of the present disclosure
  • Figure 8 shows a schematic block diagram of an example device that may be used to implement embodiments of the present disclosure.
  • FIG. 9 shows a block diagram of an example apparatus for identifying a target circuit according to an embodiment of the disclosure.
  • hypergraph data is a generalization of general graph data. Edges in a hypergraph can connect any number of vertices.
  • X represents the set of all vertex elements
  • E represents a non-empty subset of X.
  • nodes and edges there are only one kind of nodes and edges in the traditional homogeneous graph data, so when building a graph neural network, all nodes share the same model parameters and feature spaces of the same dimension.
  • There can be more than one kind of nodes and edges in a heterogeneous graph so different types of nodes are allowed to have characteristics or attributes of different dimensions. Therefore, a heterogeneous hypergraph can represent a hypergraph in which different types of nodes possess characteristics or attributes of different dimensions.
  • rule-based text matching usually has a slow matching speed and a low success rate.
  • different rules need to be set for circuit matching with similar functions but different circuit structures, which requires a large workload and high requirements for circuit designers. Therefore, rule-based text matching cannot be widely applied, especially it is difficult to apply to complex circuit system design.
  • a method and electronic device for identifying a target circuit in a circuit system converts netlist data representing circuits into graph data, extracts circuit features from the graph data, and identifies target circuits based on the circuit features. Since the circuit is abstracted as graph data and the circuit features are extracted and identified, there is no need to define complex rules and circuit designers do not need to have a deep understanding of the detailed circuit structure of the target circuit, but by a computer Electronic devices automatically perform feature extraction and recognition for circuit features through machine learning models such as convolutional neural networks. Therefore, circuit designers do not need to master complex design rules, but can develop complex circuit systems and accurately identify target circuits that need attention in the circuit system by purchasing and/or establishing and maintaining their own reference circuit feature library.
  • Figure 1 shows a flow chart of the design and manufacture process of an integrated circuit.
  • the design-to-manufacture process 100 begins with specification development 110 .
  • the functional and performance requirements that the integrated circuit needs to meet are determined.
  • circuit design 122 is first performed by means of EDA software.
  • the circuit is floorplanned for layout design 124.
  • mask fabrication 16 may be performed to obtain a mask for forming the designed circuit on the wafer.
  • integrated circuits are formed on the wafer through processes such as photolithography, etching, ion implantation, thin film deposition, and polishing.
  • the wafer is diced to obtain bare chips, and the bare chips are packaged through processes such as bonding, welding, and molding to obtain chips.
  • the resulting chip is tested in a testing 150 stage to ensure that the performance of the finished chip meets the requirements established in specification 110 .
  • the tested chips 160 can be delivered to customers.
  • circuit design 122 In the process of circuit design 122, it is necessary to identify the target circuit that the user cares about, so that a targeted circuit design can be given in the stage of circuit design 122 and/or suitable for a specific target circuit in layout design 124. layout design. For conventional designs, this process may place high demands on circuit designers and relatively low accuracy.
  • FIG. 2 shows a schematic flowchart of a method 200 for identifying a target circuit in a circuit system according to some embodiments of the present disclosure.
  • the method 200 may be executed by an electronic device with computing capabilities, such as a computer. This disclosure is not limited in this regard.
  • the circuit system may include one or more circuit function modules, and each circuit function module may include a plurality of circuit devices, such as transistors, diodes, resistors, etc., connected to each other.
  • FIG. 3 shows a schematic circuit diagram of a circuit system 300 according to some embodiments of the present disclosure.
  • the circuit system 300 may include a plurality of circuit function modules, such as a first circuit function module 310 and a second circuit function module 320 and other circuit function modules not shown.
  • the first circuit module 310 includes a first transistor M1 , a second transistor M2 , a third transistor M3 , a fourth transistor M4 and a resistor R.
  • the sources s of the third transistor M3 and the fourth transistor M4 are respectively coupled to the power supply voltage VDD via the 4th side e4 and the 5th side e5, and the gates g of the third transistor M3 and the fourth transistor M4 are coupled via the 2nd side e2 to the drain d of the first transistor M1.
  • the drains d of the third transistor M3 and the fourth transistor M4 are respectively coupled to the drain d of the first transistor M1 and the second transistor M2 .
  • the gate g of the first transistor M1 is coupled to receive the input voltage VIN and the gate g of the second transistor M1 is coupled to receive the input voltage VIN via the sixth side e6.
  • the sources of the first transistor M1 and the second transistor M2 are coupled to the resistor R via the first side e1, and the resistor R is coupled to the ground GND via the seventh side e7.
  • side means a connection relationship between terminals of a circuit device.
  • Circuit system 300 may have other transistor-level circuit topologies.
  • the functional modules of the circuit system may also have other configurations.
  • Transistor-level netlist data can describe the transistor-level circuit devices, device categories and attributes of the circuit system, and the connection relationship between each port of the device.
  • the circuit structure in FIG. 3 can be described or represented by a transistor-level netlist file.
  • transistor-level circuits are used in some embodiments of the present disclosure to describe, for example, graph structures determined from transistor-level netlist data, this is not intended to limit the scope of the present disclosure.
  • a "graph structure" represents a structure in which some relationship exists between objects and objects.
  • the graph structure refers to the circuit structure expressed in the form of a graph extracted from various components in the circuit and their connection relationship with each other.
  • a graph structure is used to represent the topology of at least a portion of the circuitry.
  • graph data refers to data describing the structure of such graphs.
  • the graph structure may also be determined using gate-level netlist data, and target circuits in the circuitry identified based on the graph structure.
  • the gate-level circuit represented by gate-level netlist data also has circuit nodes and connected edges similar to transistor-level circuits, so it can also be abstracted as a graph. This disclosure is not limited in this regard.
  • a hypergraph is a graph in a general sense, and an edge of it can connect any number of nodes.
  • the main difference between a hypergraph and a graph is the number of edge nodes in the graph.
  • an edge can contain only two nodes.
  • a hypergraph its edges are called hyperedges, and a hyperedge connects multiple nodes. If in a hypergraph, all hyperedges connect only two nodes, then the hypergraph degenerates into a graph.
  • hypergraph data means the data describing the hypergraph.
  • graph representations such as heterogeneous hypergraphs consider that circuits can be naturally expressed as hypergraphs and heterogeneity of devices/ports, and only need to read the circuit netlist file line by line and The circuit can be expressed as a graph form such as a heterogeneous hypergraph by unfolding, which does not require complicated operations and has the advantage of fast conversion speed.
  • heterogeneous hypergraphs are used to describe some embodiments of the disclosure, it should be understood that this is only an example and does not limit the scope of the disclosure. Embodiments of the present disclosure may also be implemented using other graph data representing device heterogeneity.
  • At least a portion of the circuitry may be represented by heterogeneous hypergraph data.
  • Heterogeneous graphs are relative to homogeneous graphs. There are only one type of nodes and edges in a homogeneous graph. Therefore, when constructing a graph neural network, all nodes share the same model parameters and feature spaces of the same dimension. . There can be more than one type of nodes and edges in a heterogeneous graph, so different types of nodes are allowed to have characteristics or attributes of different dimensions.
  • a heterogeneous hypergraph refers to a graph that has properties of both a heterogeneous graph and a hypergraph.
  • heterogeneous hypergraph data refers to data describing heterogeneous hypergraphs.
  • a functional module in a circuit system can be represented by a heterogeneous hypergraph.
  • the circuitry as a whole may be represented by a heterogeneous hypergraph.
  • This disclosure is not limited in this regard.
  • a circuit designer can arbitrarily select at least a part of the circuit system as needed, and represent it using graph data.
  • the circuit design software may also represent different circuit function modules with different diagram data based on the functions of the circuit system.
  • Fig. 4 shows a schematic diagram of transformation of a heterogeneous hypergraph according to some embodiments of the present disclosure.
  • the first circuit function module 310 in FIG. 3 can be transformed into a heterogeneous hypergraph 400 .
  • data such as each circuit device, device type and attribute, and connection relationship of each terminal in the first circuit function module 310 can be converted into and represented by the heterogeneous hypergraph 400 .
  • the electronic device can parse and expand the circuit netlist of the circuit system, and each device in the first circuit function module 310, its adjacent sides, the type of the device, the device type to which the current device belongs, the device Ports and connections between ports and edges are established as heterogeneous hypergraph data As shown in the heterogeneous hypergraph 400, where:
  • V represents a collection of all devices, such as the first transistor M1, the second transistor M2, the third transistor M3, the fourth transistor M4, the resistor R, the power supply voltage VDD and the ground GND).
  • E represents the set of all sides, for example, the first side e1, the second side e2, the third side e3, the fourth side e4, the fifth side e5, the sixth side e6 and the seventh side e7.
  • the element e ⁇ E in the set is a set including a subset of the set V, for example, the set of the second side e2 includes the first transistor M1, the third transistor M3, the third transistor M3 and the fourth transistor M4.
  • O represents all types of devices, such as P-type field-effect metal-oxide-semiconductor (PMOS), N-type field-effect metal-oxide-semiconductor (NMOS), resistor (R), capacitor (C), etc.
  • PMOS P-type field-effect metal-oxide-semiconductor
  • NMOS N-type field-effect metal-oxide-semiconductor
  • R resistor
  • C capacitor
  • Relationship matrix defining device ports where r ⁇ R which can be represented by the following formula (1)
  • represents the number of devices in the circuit
  • represents the number of edges in the circuit
  • w r can be introduced as a trainable parameter.
  • the topology of a heterogeneous hypergraph representing a circuit netlist can be encoded as ⁇ r ⁇ R w r H r and
  • the feature representation of circuit devices can be characterized as
  • a circuit feature representation is extracted from the graph data, the circuit feature representation includes at least one of device type, device port, or connection relationship representing circuit devices in at least a part of the circuit system.
  • the circuit feature representation includes device type, device port or connection relationship.
  • the circuit feature representation includes a device type and a device port.
  • the circuit feature representation includes device ports and connection relationships.
  • the circuit feature representation includes device type and connection relationship.
  • the circuit feature representation includes device type, device port and connection relationship.
  • the circuit characteristic representation may be represented by a characteristic vector.
  • circuit feature representations may be extracted from the graph data accordingly, the extracted feature representations may correspond to circuit feature representations.
  • circuit feature representations can be practically extracted from graph data.
  • a convolutional neural network may be used to extract feature representations in graph data, ie circuit feature representations.
  • FIG. 5 shows a schematic diagram of convolutional neural network graph embedding according to some embodiments of the present disclosure.
  • Graph data such as social networks, word coexistence networks, communication networks, and circuit structure networks, widely exist in various real-world applications.
  • Graph data analysis can include node classification and clustering, for example.
  • graph data analysis can further include link prediction and visualization.
  • heterogeneous hypergraph data representing circuits is represented as high-dimensional data.
  • a hypergraph in a D-dimensional space can be constructed first based on the actual hypergraph data, and then the nodes of the hypergraph can be embedded in a d(d ⁇ D)-dimensional vector space.
  • "Graph embedding" is the reduction of high-dimensional graphs to low-dimensional vectors while keeping connected nodes close to each other in the vector space.
  • the heterogeneous hypergraph 400 may include multiple node characteristics, such as a voltage Vdd, a first transistor M1 , a second transistor M2 , a third transistor M3 , a fourth transistor M4 , a resistor R, and a ground GND.
  • the electronic device can aggregate node features into graph data 510 represented by hyperedges, and the graph data 510 includes multiple hyperedge features, such as the first edge e1, the second edge e2, the third edge e3, the fourth edge e4, and the fifth edge e5 , the sixth side e6 and the seventh side e7.
  • a node may represent a circuit device in a circuit, such as a transistor, a resistor, etc., and an edge represents a connection between nodes.
  • the electronic device may then aggregate the hyperedge features to obtain graph data 520 including multiple reduced dimensionality node features.
  • An implementation of graph embedding is described in detail below.
  • Graph embedding can be represented by the following equations (2) and (3):
  • F (l) represents the feature after aggregation of each node in the embedding layer of layer l Vector matrix
  • CONCAT is the splicing operation
  • ⁇ ( ⁇ ) represents the nonlinear activation function
  • the current node matrix can be obtained through the relationship matrix H r and the port type model parameter w r Adjacent feature matrix of
  • the node matrix F (l-1) the adjacent feature matrix Concatenate and form a fully connected layer matrix F (l) with the weight parameter matrix W (l) and the nonlinear activation function ⁇ ( ⁇ ) .
  • Graph embedding can be performed multiple times in order to characterize each node in the heterogeneous hypergraph and its larger local topology. Each time it is executed, the range of the local topology is extended by one hop.
  • a heterogeneous hypergraph of circuits is determined to perform D embeddings, where D may depend on the number of nodes of circuit devices in a sub-circuit, etc., which may represent a search depth for adjacent devices.
  • the relationship matrix H r of the port and the model parameter w r related to the connection of the port type can be defined, where r ⁇ R, R represents the set of device port types, and X t represents the feature matrix of all device type nodes.
  • the latent space projection matrix U t is used to map the feature matrix X t to the feature matrix F (0) of uniform dimension, which can be expressed as the following formula (4):
  • graph embeddings are used here for dimensionality reduction, this is for illustration only and not to limit the present disclosure.
  • other graph dimensionality reduction methods such as principal component analysis, may also be used to perform dimensionality reduction processing on graph data.
  • dimensionality reduction methods such as convolutional neural network embedding, heterogeneous hypergraphs can be dimensionally reduced, thereby avoiding potential dimensionality disasters and improving recognition accuracy and efficiency.
  • multiple nodes and edges of the circuit can be integrated into one node and edge, so that the sub-circuit can be expressed as a feature vector.
  • multiple clustering methods can be used to cluster multiple nodes and multiple edges.
  • convolutional neural network pooling may be used for clustering.
  • Heterogeneous Hypergraph Convolutional Neural Network Pooling employs a non-linear activation function softmax to adaptively cluster nodes and edges.
  • a clustering formula can be shown in the following formulas (5)-(8):
  • Clustering can aggregate the original edges or nodes into one large edge or node by means of aggregation, that is, several edges or nodes. Their calculation methods are shown in formulas (5) and (6), and their essence is to obtain the relationship between edges or nodes through the graph topology (H), feature matrix (F) and learnable weight coefficients (W). The similarity between points, similar edges or nodes are grouped together. In this way, the original
  • the feature vector dimension of each node is f. Because there are
  • the size of the adjacency matrix H is determined by the number of edges and nodes, so in formula (8) is the adjacency matrix before clustering (The size is
  • FIG. 6 shows a schematic diagram of a process 600 of extracting circuit feature representations according to some embodiments of the present disclosure.
  • the heterogeneous hypergraph undergoes cubic convolutional neural network embedding and convolutional neural network pooling, and then undergoes full connection processing and softmax clustering to obtain the extracted circuit feature representation .
  • full connections the accuracy of feature extraction can be improved.
  • three embeddings and pooling are shown here, this is for illustration only and does not limit the scope of the present disclosure.
  • embedding and pooling can be performed only once or multiple times.
  • full connection processing may not be performed, but the result after pooling is directly input into the softmax function to obtain the circuit feature representation.
  • the electronic device may generate an output regarding the target circuit based at least on the circuit characteristic representation.
  • an electronic device can determine whether the target circuit is present in the circuit system in a number of ways, either by generating a first output that the target circuit is present or by generating a target circuit that is not present the second output of .
  • a first output indicative of the specific structure of the target circuit may be generated.
  • a reference circuit design and/or layout design corresponding to the target circuit can also be provided, or the corresponding circuit and/or layout in the circuit system can be replaced by using the reference circuit design and/or layout . This disclosure is not limited in this regard.
  • the electronic device determines an output about the target circuit based on the circuit signature and a plurality of reference circuit signatures in the circuit library.
  • the circuit library may be a standard circuit cell library purchased from a circuit design intellectual property (intellectual property, IP) provider. Alternatively, it may also be a circuit library accumulated by circuit designers based on previous designs. In some other embodiments, the circuit designer can also purchase a standard circuit cell library and continuously add new reference circuits therein to form a circuit library specific to the circuit designer.
  • a circuit library may include a plurality of verified reference circuit features corresponding to target circuits that require the attention of a particular circuit designer. In some embodiments, the circuit library may also include reference circuit designs and/or layout designs corresponding to these reference circuit features.
  • the circuit signature may be compared to a plurality of reference circuit signatures in a circuit library to determine whether the target circuit is present.
  • the circuit library may have a look-up table, and the circuit feature representation may be searched for a reference circuit feature representation in the look-up table of the circuit library, thereby determining whether the target circuit exists. This disclosure is not limited in this regard.
  • multiple reference circuit signatures similar to the circuit signatures may exist in the circuit library.
  • multiple matching degrees between the circuit feature representation and multiple reference circuit feature representations may be calculated respectively; and based on the multiple matching degrees, an output about the target circuit may be generated.
  • the target circuit can be identified more accurately.
  • the electronic device may determine whether the highest matching degree among the multiple matching degrees reaches the threshold matching degree; and if the highest matching degree reaches the threshold matching degree, generate a first output; or if the highest match degree is below the threshold match degree, generating a second output indicating that the target circuit is not present in the circuit system.
  • whether the target circuit exists in the circuit system may be determined based on a plurality of circuit feature representations, as described below.
  • Fig. 7 shows a schematic diagram of transformation of a heterogeneous hypergraph according to another embodiment of the present disclosure.
  • an analog integrated circuit design such as differential amplifiers.
  • Symmetric pairs of these devices or sub-circuits need to be placed symmetrically in the layout design.
  • a symmetrical layout makes the layout have similar parasitics to improve the common-mode rejection ratio of the differential pair.
  • Conventional symmetric pair recognition is completely dependent on manual implementation. However, when the circuit scale is very large, the efficiency of manual recognition is very low.
  • the second circuit function module 320 of the circuit system 300 includes a first transistor M1, a second transistor M2, a third transistor M3, a fourth transistor M4, a fifth transistor M5, a sixth transistor M6, a seventh transistor M7 and an eighth transistor M8 .
  • the drain d of the first transistor is coupled to the source s of the second transistor M2 and the third transistor M3 via the hyperedge e1
  • the gate g of the second transistor M2 and the third transistor M3 is coupled to the fourth transistor M4 via the hyperedge e2 the drain.
  • the drain d of the fifth transistor M5 is coupled to the drain d of the third transistor M3.
  • the sources s of the fourth transistor M4 and the fifth transistor M5 are coupled with the drains d of the sixth transistor M6 and the seventh transistor M7 via the hyperedge e3.
  • the source s of the sixth transistor M6 is coupled to the drain d of the eighth transistor M8 via the hyperedge e5.
  • the second transistor M2 and the third transistor M3 have a symmetrical structure
  • the fourth transistor M4 and the fifth transistor M5 have another symmetrical structure.
  • the second transistor M2 and the third transistor M3 are a target circuit that needs to be identified
  • the fourth transistor M4 and the fifth transistor M5 are another target circuit that needs to be identified.
  • the electronic device can convert the second circuit function module 320 into the heterogeneous hypergraph 700 by analyzing the transistor-level circuit netlist. This process has no additional time-consuming graph conversion process, so the expression efficiency is higher.
  • the electronic device uses the heterogeneous hypergraph convolutional neural network to encode each node and their local topological connection relationship. Similar to the first circuit function module 310, the convolutional neural network embedding can be used to reduce the dimensionality to reduce the calculation amount and time, and improve the efficiency.
  • a conventional multi-layer perceptron can be used to represent the extracted circuit features.
  • the multilayer perceptron can be represented by the following equation (9).
  • each node After several times of heterogeneous hypergraph embedding and multi-layer perceptron, each node generates a feature vector in Indicates the i-th row of F (l) , and the feature vector of the i-th node. After that, according to the generated eigenvectors of each node, the similarity can be used to judge whether any two nodes are a symmetric pair. In one embodiment, cosine similarity can be used for judgment.
  • Fig. 8 shows a schematic block diagram of an example device 800 that may be used to implement embodiments of the present disclosure.
  • the device 800 may be used to implement the electronic device 900 of FIG. 9 .
  • device 800 includes a computing unit 801 that may be loaded into RAM and/or ROM in accordance with computer program instructions stored in random access memory (RAM) and/or read only memory (ROM) 802 or from storage unit 807 802 to perform various appropriate actions and processes.
  • RAM and/or ROM 802 various programs and data necessary for the operation of device 800 may also be stored.
  • the computing unit 801 and the RAM and/or ROM 802 are connected to each other via a bus 803.
  • An input/output (I/O) interface 804 is also connected to the bus 803 .
  • I/O input/output
  • the I/O interface 804 includes: an input unit 805, such as a keyboard, a mouse, etc.; an output unit 806, such as various types of displays, speakers, etc.; a storage unit 807, such as a magnetic disk, an optical disk, etc. ; and a communication unit 808, such as a network card, a modem, a wireless communication transceiver, and the like.
  • the communication unit 808 allows the device 800 to exchange information/data with other devices over a computer network such as the Internet and/or various telecommunication networks.
  • the computing unit 801 may be various general-purpose and/or special-purpose processing components having processing and computing capabilities. Some examples of computing units 801 include, but are not limited to, central processing units (CPUs), graphics processing units (GPUs), various dedicated artificial intelligence (AI) computing chips, various computing units that run machine learning model algorithms, digital signal processing processor (DSP), and any suitable processor, controller, microcontroller, etc.
  • the computing unit 801 executes various methods and processes described above, such as the method 200 .
  • method 200 may be implemented as a computer software program tangibly embodied on a machine-readable medium, such as storage unit 807 .
  • part or all of the computer program may be loaded and/or installed onto device 800 via RAM and/or ROM and/or communication unit 808 .
  • the computer program When the computer program is loaded into RAM and/or ROM and executed by computing unit 801, one or more steps of method 200 described above may be performed.
  • the computing unit 801 may be configured to execute the method 200 in any other suitable manner (for example, by means of firmware).
  • Program codes for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, a special purpose computer, or other programmable data processing devices, so that the program codes, when executed by the processor or controller, make the functions/functions specified in the flow diagrams and/or block diagrams Action is implemented.
  • the program code may execute entirely on the machine, partly on the machine, as a stand-alone software package partly on the machine and partly on a remote machine or entirely on the remote machine or server.
  • a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device.
  • a machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium.
  • a machine-readable medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing.
  • machine-readable storage media would include one or more wire-based electrical connections, portable computer discs, hard drives, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), optical fiber, compact disk read only memory (CD-ROM), optical storage, magnetic storage, or any suitable combination of the foregoing.
  • RAM random access memory
  • ROM read only memory
  • EPROM or flash memory erasable programmable read only memory
  • CD-ROM compact disk read only memory
  • magnetic storage or any suitable combination of the foregoing.
  • FIG. 9 shows a block diagram of an example apparatus 900 for identifying a target circuit according to an embodiment of the disclosure.
  • the electronic device 900 may include multiple modules for performing corresponding steps in the methods discussed in FIGS. 2-7 .
  • an electronic device 900 includes a determining unit 902 , an extracting unit 904 and a generating unit 906 .
  • the determining unit 902 is configured to determine graph data representing at least a part of the circuit system based on the netlist data representing the circuit system;
  • the extracting unit 904 is configured to extract a circuit feature representation from the graph data, and the circuit feature representation includes representing at least a part of the circuit system.
  • At least one of device type, device port or connection relationship of the circuit device in the circuit device configured to generate an output about the target circuit based at least on the circuit feature representation.
  • the circuit is abstracted as graph data and the circuit features are extracted and identified, there is no need to define complex rules and circuit designers do not need to have a deep understanding of the detailed circuit structure of the target circuit, but by a computer Electronic devices automatically perform feature extraction and recognition for circuit features through machine learning models such as convolutional neural networks. Therefore, circuit designers do not need to master complex design rules, but can develop complex circuit systems and accurately identify target circuits that need attention in the circuit system by purchasing and/or establishing and maintaining their own reference circuit feature library.
  • the graph data includes heterogeneous hypergraph data.
  • the extracting unit 904 is further used to: use convolutional neural network embedding to extract multiple nodes in the heterogeneous hypergraph and multiple node connections associated with the multiple nodes from the heterogeneous hypergraph data; and based on the multiple nodes and multiple The nodes are connected to determine the circuit feature representation.
  • convolutional neural network embeddings heterogeneous hypergraphs can be dimensionally reduced, thereby avoiding the potential curse of dimensionality and improving the accuracy and efficiency of recognition.
  • the determining unit 902 is further configured to: use convolutional neural network pooling to cluster multiple nodes and multiple nodes to obtain a circuit feature representation.
  • the circuit feature representation may include feature vectors.
  • the determining unit 902 is further configured to: use a convolutional neural network to perform multi-layer perception on multiple nodes and multiple nodes, so as to obtain a circuit feature representation.
  • a convolutional neural network to perform multi-layer perception on multiple nodes and multiple nodes, so as to obtain a circuit feature representation.
  • the generating unit 906 is further configured to: determine an output about the target circuit based on the circuit feature representation and multiple reference circuit feature representations in the circuit library. By comparing the circuit signature with multiple reference circuit signatures in the user's circuit library to determine whether the target circuit exists, the target circuit in the circuit system can be quickly and efficiently identified. Compared with extracting the reference circuit feature representation for the reference circuit and comparing it with the circuit feature representation to be recognized, the calculation amount and time can be effectively reduced.
  • the generation unit 906 is further configured to: respectively calculate multiple matching degrees between the circuit feature representation and multiple reference circuit feature representations; and generate an output about the target circuit based on the multiple matching degrees.
  • the target circuit can be identified more accurately.
  • the generating unit 906 is further configured to: determine whether the highest matching degree among the multiple matching degrees reaches the threshold matching degree; an output; or if the highest matching degree is below the threshold matching degree, generating a second output indicating that the target circuit is not present in the circuitry.
  • the generation unit 906 is further configured to: determine the first reference circuit signature corresponding to the highest matching degree among the multiple reference circuit signatures; and use the reference circuit corresponding to the first reference circuit signature Replace the circuit in the circuit system corresponding to the circuit feature representation. By replacing with the corresponding reference circuit, circuit designers can avoid redesign, and improve the efficiency and accuracy of circuit design.
  • the circuit feature representation includes a first circuit feature representation and a second circuit feature representation
  • the first circuit feature represents at least one of the device type, device port or connection relationship of at least a part of the first circuit device
  • the second circuit feature represents at least one of the device type, device port or connection relationship of the second circuit device in at least a part
  • the generating unit 906 is further configured to: calculate the relationship between the first circuit feature representation and the second circuit feature representation a similarity; and based on the similarity, generating an output about the target circuit.
  • the similarity includes cosine similarity.
  • the generating unit 906 is further configured to: determine whether the cosine similarity reaches the threshold similarity; if the cosine similarity reaches the threshold similarity, generate a first output indicating that the target circuit exists in the circuit system; and if the cosine similarity is lower than the threshold similarity , a second output is generated indicating that the target circuit is not present in the circuitry.

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

用于识别电路系统中的目标电路的方法和电子设备 技术领域
本公开涉及集成电路仿真领域,更具体而言涉及用于识别电路系统中的目标电路的方法和电子设备。
背景技术
随着集成电路被应用于各种应用场景,具有同样功能的电路在被应用于不同场景时,也会对电路进行针对性的优化或修改,以满足特定场景的需求。同样的电路功能由于各种性能指标(增益、速度、噪声或功耗等)要求不同,设计出来的电路结构会有各种各样的变化。例如,运算放大器的电路结构就有超过60种的结构,诸如套筒式结构、折叠式结构、密勒补偿式结构等。此外,不同的电路设计结构会有不同的版图设计、可靠性设计等要求。例如,对有些模拟电路的版图需要对称布线,有些电路的可靠性只有在衬底有电压偏置的情况下才会出现长期的可靠性问题。如何在复杂的电路系统中识别出这些用户关心的子电路或目标电路,从而对识别出的电路进行特定的布局布线和可靠性验证等,是影响模拟电路性能和可靠性的关键问题所在。
在一些常规方案中,通过预设的复杂的匹配规则,从用户设计的网表中的满足起始条件的所有电路器件或节点去查找,直至找到满足匹配规则的目标电路。然而,对于复杂电路系统而言,基于规则的文本匹配通常匹配速度较慢并且成功率较低。
发明内容
鉴于上述问题,本公开的实施例旨在提供一种用于识别电路系统中的目标电路的方法和电子设备。
根据本公开的第一方面,提供一种用于识别电路系统中的目标电路的方法。该方法包括基于表示电路系统的网表数据,确定表示电路系统的至少一部分的图数据;从图数据提取电路特征表示,电路特征表示包括电路系统的至少一部分中的电路器件的器件类型、器件端口或连接关系中的至少一项的表示;以及至少基于电路特征表示,生成关于目标电路的输出。由于电路被抽象为图数据并且被提取电路特征并加以识别,因此无需定义复杂的规则并且也不需要电路设计人员对目标电路的详细电路结构有比较深入的了解,而是由诸如计算机之类的电子设备针对电路特征通过诸如卷积神经网络之类的机器学习模型自动进行特征提取和识别。电路设计人员因此无需掌握复杂的设计规则,而只需通过购买和/或建立和维护自己的参考电路特征库,即可开发复杂的电路系统并且准确识别电路系统中需要关注的目标电路。
在第一方面的一种可能实现方式中,图数据包括异构超图数据。从图数据提取电路特征表示包括:使用卷积神经网络嵌入,从异构超图数据提取异构超图中的、多个节点和与多个节点相关联的多个节点连接;以及基于多个节点和多个节点连接,确定电路特征表示。通过使用卷积神经网络嵌入,可以对异构超图进行降维,从而避免潜在的维度灾难并且提高识别的准确性和效率。
在第一方面的一种可能实现方式中,基于多个节点和节点连接确定电路特征表示包括:使用卷积神经网络池化对多个节点和多个节点进行聚类,以获得电路特征表示。通过使用池 化进行聚类,可以有效地提取电路特征表示,从而进一步提高识别的准确性和效率。在第一方面的一种可能实现方式中,电路特征表示可以包括特征向量。
在第一方面的一种可能实现方式中,基于多个节点和节点连接确定电路特征表示包括:使用卷积神经网络对多个节点和多个节点进行多层感知,以获得电路特征表示。通过使用多层感知,可以有效地提取各个节点的电路特征表示,从而进一步提高识别的准确性和效率。
在第一方面的一种可能实现方式中,至少基于电路特征表示生成关于目标电路的输出包括:基于电路特征表示与电路库中的多个参考电路特征表示确定关于目标电路的输出。通过将电路特征表示与用户的电路库中的多个参考电路特征表示进行比较以确定是否存在目标电路,可以快速有效地识别电路系统中的目标电路。相比于针对参考电路提取参考电路特征表示并且将其与待识别的电路特征表示进行比较,可以有效地减少计算量和时间。
在第一方面的一种可能实现方式中,基于电路特征表示与电路库中的多个参考电路特征表示确定关于目标电路的输出包括:分别计算电路特征表示与多个参考电路特征表示之间的多个匹配度;以及基于多个匹配度,生成关于目标电路的输出。通过使用电路特征表示与多个参考电路特征表示,可以使得目标电路的识别更为准确。
在第一方面的一种可能实现方式中,基于多个匹配度生成关于目标电路的输出包括:确定多个匹配度中的最高匹配度是否达到阈值匹配度;以及如果最高匹配度达到阈值匹配度,则生成表示电路系统中存在目标电路的第一输出;或如果最高匹配度低于阈值匹配度,则生成表示电路系统中不存在目标电路的第二输出。
在第一方面的一种可能实现方式中,该方法还包括:确定多个参考电路特征表示中的与最高匹配度相对应的第一参考电路特征表示;以及使用与第一参考电路特征表示相对应的参考电路替换电路系统中与电路特征表示相对应的电路。通过使用对应的参考电路替换,可以避免电路设计人员重新设计,并且提高电路设计的效率和准确率。
在第一方面的一种可能实现方式中,电路特征表示包括第一电路特征表示和第二电路特征表示,第一电路特征表示用于表示至少一部分中的第一电路器件的器件类型、器件端口或连接关系中的至少一项,第二电路特征表示用于表示至少一部分中的第二电路器件的器件类型、器件端口或连接关系中的至少一项。基于电路特征表示生成关于目标电路的输出包括:计算第一电路特征表示和第二电路特征表示之间的相似度;以及基于相似度,生成关于目标电路的输出。通过比较电路系统中的特定电路器件之间的布置相似度,可以确定包括该特定电路器件的电路是否是目标电路,从而提高电路识别的准确率。
在第一方面的一种可能实现方式中,相似度包括余弦相似度,基于相似度生成关于目标电路的输出包括:确定余弦相似度是否达到阈值相似度;如果余弦相似度达到阈值相似度,则生成表示电路系统中存在目标电路的第一输出;以及如果余弦相似度低于阈值相似度,则生成表示电路系统中不存在目标电路的第二输出。通过计算特定电路器件的特征表示之间的余弦相似度,可以快速有效地确认目标电路。
在第一方面的一种可能实现方式中,网表数据包括晶体管级网表数据或门级网表数据。
在第一方面的一种可能实现方式中,基于表示电路系统的网表数据,确定表示电路系统的至少一部分的图数据包括:基于网表数据将电路系统中的各个电路器件抽象为图结构的多个节点,并且将电路系统中的各个电路器件之间的连接关系抽象为图结构的多个边,以生成表示多个节点和多个边的图数据,该图数据表示上述图结构,该图结构表示电路系统的至少一部分的拓扑结构,多个节点和多个边用于表示电路系统的至少一部分。
在第一方面的一种可能实现方式中,基于网表数据将电路系统中的各个电路器件抽象为图结构的多个节点,并且将电路系统中的各个电路器件之间的连接关系抽象为图结构的多个边,以生成表示多个节点和多个边的图数据包括:基于网表数据将电路系统中的各个电路器件抽象为图结构的多个异构节点,并且将电路系统中的各个电路器件之间的连接关系抽象为异构超图结构的多个超边,以生成表示多个异构节点和多个超边的异构超图数据。
根据本公开的第二方面,提供一种计算机可读存储介质,存储多个程序,多个程序被配置为由一个或多个处理器执行。多个程序包括用于第一方面的方法的指令。
根据本公开的第三方面,提供一种计算机程序产品。计算机程序产品包括多个程序,多个程序被配置为由一个或多个处理器执行。多个程序包括用于执行第一方面的方法的指令。
根据本公开的第四方面,提供一种电子设备。电子设备包括:一个或多个处理器;包括计算机指令的存储器,计算机指令在由电子设备的一个或多个处理器执行时使得电子设备执行第一方面的方法。
根据本公开的第五方面,提供一种电子设备。电子设备包括:确定单元,用于基于表示电路系统的网表数据,确定表示电路系统的至少一部分的图数据;提取单元,用于从图数据提取电路特征表示,电路特征表示包括电路系统的至少一部分中的电路器件的器件类型、器件端口或连接关系中的至少一项的表示;以及生成单元,用于至少基于电路特征表示,生成关于目标电路的输出。由于电路被抽象为图数据并且被提取电路特征并加以识别,因此无需定义复杂的规则并且也不需要电路设计人员对目标电路的详细电路结构有比较深入的了解,而是由诸如计算机之类的电子设备针对电路特征通过诸如卷积神经网络之类的机器学习模型自动进行特征提取和识别。电路设计人员因此无需掌握复杂的设计规则,而只需通过购买和/或建立和维护自己的参考电路特征库,即可开发复杂的电路系统并且准确识别电路系统中需要关注的目标电路。
在第五方面的一种可能实现方式中,图数据包括异构超图数据。提取单元进一步用于:使用卷积神经网络嵌入,从异构超图数据提取异构超图中的、多个节点和与多个节点相关联的多个节点连接;以及基于多个节点和多个节点连接,确定电路特征表示。通过使用卷积神经网络嵌入,可以对异构超图进行降维,从而避免潜在的维度灾难并且提高识别的准确性和效率。
在第五方面的一种可能实现方式中,确定单元进一步用于:使用卷积神经网络池化对多个节点和多个节点进行聚类,以获得电路特征表示。通过使用池化进行聚类,可以有效地提取电路特征表示,从而进一步提高识别的准确性和效率。在第一方面的一种可能实现方式中,电路特征表示可以包括特征向量。
在第五方面的一种可能实现方式中,确定单元进一步用于:使用卷积神经网络对多个节点和多个节点进行多层感知,以获得电路特征表示。通过使用多层感知,可以有效地提取各个节点的电路特征表示,从而进一步提高识别的准确性和效率。
在第五方面的一种可能实现方式中,生成单元进一步用于:基于电路特征表示与电路库中的多个参考电路特征表示确定关于目标电路的输出。通过将电路特征表示与用户的电路库中的多个参考电路特征表示进行比较以确定是否存在目标电路,可以快速有效地识别电路系统中的目标电路。相比于针对参考电路提取参考电路特征表示并且将其与待识别的电路特征表示进行比较,可以有效地减少计算量和时间。
在第五方面的一种可能实现方式中,生成单元进一步用于:分别计算电路特征表示与多 个参考电路特征表示之间的多个匹配度;以及基于多个匹配度,生成关于目标电路的输出。通过使用电路特征表示与多个参考电路特征表示,可以使得目标电路的识别更为准确。
在第五方面的一种可能实现方式中,生成单元进一步用于:确定多个匹配度中的最高匹配度是否达到阈值匹配度;以及如果最高匹配度达到阈值匹配度,则生成表示电路系统中存在目标电路的第一输出;或如果最高匹配度低于阈值匹配度,则生成表示电路系统中不存在目标电路的第二输出。
在第五方面的一种可能实现方式中,生成单元进一步用于:确定多个参考电路特征表示中的与最高匹配度相对应的第一参考电路特征表示;以及使用与第一参考电路特征表示相对应的参考电路替换电路系统中与电路特征表示相对应的电路。通过使用对应的参考电路替换,可以避免电路设计人员重新设计,并且提高电路设计的效率和准确率。
在第五方面的一种可能实现方式中,电路特征表示包括第一电路特征表示和第二电路特征表示,第一电路特征表示用于表示至少一部分中的第一电路器件的器件类型、器件端口或连接关系中的至少一项,第二电路特征表示用于表示至少一部分中的第二电路器件的器件类型、器件端口或连接关系中的至少一项,生成单元进一步用于:计算第一电路特征表示和第二电路特征表示之间的相似度;以及基于相似度,生成关于目标电路的输出。通过比较电路系统中的特定电路器件之间的布置相似度,可以确定包括该特定电路器件的电路是否是目标电路,从而提高电路识别的准确率。
在第五方面的一种可能实现方式中,相似度包括余弦相似度,生成单元进一步用于:确定余弦相似度是否达到阈值相似度;如果余弦相似度达到阈值相似度,则生成表示电路系统中存在目标电路的第一输出;以及如果余弦相似度低于阈值相似度,则生成表示电路系统中不存在目标电路的第二输出。通过计算特定电路器件的特征表示之间的余弦相似度,可以快速有效地确认目标电路。
在第五方面的一种可能实现方式中,确定单元进一步用于:基于网表数据将电路系统中的各个电路器件抽象为图结构的多个节点,并且将电路系统中的各个电路器件之间的连接关系抽象为图结构的多个边,以生成表示多个节点和多个边的图数据,该图数据表示上述图结构,该图结构表示电路系统的至少一部分的拓扑结构,多个节点和多个边用于表示电路系统的至少一部分。
在第五方面的一种可能实现方式中,确定单元进一步用于:基于网表数据将电路系统中的各个电路器件抽象为图结构的多个异构节点,并且将电路系统中的各个电路器件之间的连接关系抽象为异构超图结构的多个超边,以生成表示多个异构节点和多个超边的异构超图数据。
应当理解,发明内容部分中所描述的内容并非旨在限定本公开的实施例的关键或重要特征,亦非用于限制本公开的范围。本公开的其它特征将通过以下的描述变得容易理解。
附图说明
结合附图并参考以下详细说明,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了集成电路的设计制造过程的流程图;
图2示出了根据本公开的一些实施例的用于识别电路系统中的目标电路的方法的示意流程图;
图3示出了根据本公开的一些实施例的电路系统的示意电路图;
图4示出了根据本公开的一些实施例的异构超图的转换示意图;
图5示出了根据本公开的一些实施例的卷积神经网络图嵌入的示意图;
图6示出了根据本公开的一些实施例的提取电路特征表示的示意过程图;
图7示出了根据本公开的另一实施例的异构超图的转换示意图;
图8示出了可以用于实施本公开的实施例的示例设备的示意性框图;以及
图9示出了根据本公开实施例的用于识别目标电路的示例装置的框图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
在本公开的实施例的描述中,术语“包括”及其类似用语应当理解为开放性包含,即“包括但不限于”。术语“基于”应当理解为“至少部分地基于”。术语“一个实施例”或“该实施例”应当理解为“至少一个实施例”。术语“第一”、“第二”等等可以指代不同的或相同的对象。术语“和/或”表示由其关联的两项的至少一项。例如“A和/或B”表示A、B、或者A和B。下文还可能包括其他明确的和隐含的定义。在本公开中,超图(hypergraph)数据是一般图数据的泛化。超图里的边可以连接任意数量的顶点。超图H可以表示为顶点-边的对H=(X,E),其中,X表示所有顶点元素的集合,E表示X的非空子集。另一方面,传统同构图(homogeneous graph)数据中只存在一种节点和边,因此在构建图神经网络时所有节点共享同样的模型参数并且拥有同样维度的特征空间。异构图(heterogeneous graph)中可以存在不只一种节点和边,因此允许不同类型的节点拥有不同维度的特征或属性。因此,异构超图可以表示其中不同类型的节点拥有不同维度的特征或属性的超图。
应理解,本申请实施例提供的技术方案,在以下具体实施例的介绍中,某些重复之处可能不再赘述,但应视为这些具体实施例之间已有相互引用,可以相互结合。
如上所述,对于复杂电路系统而言,基于规则的文本匹配通常匹配速度较慢并且成功率较低。此外,针对功能相似但电路结构不同的电路匹配需要设定不同的规则,工作量较大并且对于电路设计人员的要求较高。因此,基于规则的文本匹配不能广泛应用,尤其是难于应用至复杂的电路系统设计。
在本公开中,提供一种识别电路系统中的目标电路的方法和电子设备。该方法将表示电路的网表数据转换为图数据,从图数据中提取电路特征,并且基于电路特征来识别目标电路。由于电路被抽象为图数据并且被提取电路特征并加以识别,因此无需定义复杂的规则并且也不需要电路设计人员对目标电路的详细电路结构有比较深入的了解,而是由诸如计算机之类的电子设备针对电路特征通过诸如卷积神经网络之类的机器学习模型自动进行特征提取和识别。电路设计人员因此无需掌握复杂的设计规则,而只需通过购买和/或建立和维护自己的参考电路特征库,即可开发复杂的电路系统并且准确识别电路系统中需要关注的目标电路。
图1示出了集成电路的设计制造过程的流程图。设计制造过程100开始于规格制定110。在规格制定110的阶段中,确定集成电路需要达到的功能和性能方面的要求。然后,在集成电路设计120的阶段中,首先借助于EDA软件来进行电路设计122。在确定电路 之后,对电路进行布局规划以进行版图设计124。在得到电路版图之后,可以执行光罩制作16以得到用于将所设计的电路形成在晶圆上的光罩。随后,在制造130的阶段中,通过光刻、刻蚀、离子注入、薄膜沉积、抛光等工艺在晶圆上形成集成电路。在封装140的阶段中,对晶圆进行切割得到裸片,并通过黏贴、焊接、模封等工艺对裸片进行封装得到芯片。所得到的芯片在测试150的阶段中被测试,以确保成品芯片的性能满足规格制定110中所确定的要求。最终,测试合格的芯片160可以被交付客户。
在电路设计122的过程中,需要识别出用户关心的目标电路,以便在电路设计122的阶段中就能够给出针对性的电路设计和/或在版图设计124中针对特定的目标电路给出合适的版图设计。对于常规设计而言,这个过程可能对电路设计人员提出较高的要求并且准确率相对较低。
图2示出了根据本公开的一些实施例的用于识别电路系统中的目标电路的方法200的示意流程图。方法200可以由诸如计算机之类的具有计算能力的电子设备执行。本公开对此不进行限制。
在202,基于表示电路系统的网表数据,确定表示电路系统的至少一部分的图数据。电路系统可以包括一个或多个电路功能模块,并且每个电路功能模块可以包括彼此连接的多个电路器件,例如晶体管、二极管、电阻器等。图3示出了根据本公开的一些实施例的电路系统300的示意电路图。电路系统300可以包括多个电路功能模块,例如第一电路功能模块310和第二电路功能模块320以及未图示的其它电路功能模块。第一电路模块310包括第一晶体管M1、第二晶体管M2、第三晶体管M3、第四晶体管M4和电阻器R。第三晶体管M3和第四晶体管M4的源极s分别经由第4边e4和第5边e5耦合至电源电压VDD,并且第三晶体管M3和第四晶体管M4的栅极g经由第2边e2耦合至第一晶体管M1的漏极d。第三晶体管M3和第四晶体管M4的漏极d分别耦合至第一晶体管M1的漏极d和第二晶体管M2的漏极d。第一晶体管M1的栅极g耦合接收输入电压VIN并且第二晶体管的栅极g经由第6边e6耦合接收输入电压VIN。第一晶体管M1和第二晶体管M2的源极经由第1边e1耦合至电阻器R,并且电阻器R经由第7边e7耦合至接地GND。在本文中,“边”表示电路器件的端子之间的连接关系。
虽然在图3中示出了电路系统的一个示例,但是这并非对本公开进行限制。电路系统300可以具有其它的晶体管级的电路拓扑结构。此外,电路系统的功能模块也可以具有其它的配置。晶体管级的网表数据可以描述电路系统的在晶体管级别的电路器件、器件类别和属性、以及器件各个端口之间连接关系等。换言之,图3中的电路结构可以由晶体管级网表文件描述或表示。此外,虽然在本公开的一些实施例中使用晶体管级的电路来描述,例如从晶体管级网表数据确定图结构,但是这并非是对本公开的范围进行限制。在数学中,“图结构”表示物体与物体之间存在某种关系的结构。数学抽象后的“物体”称作节点或顶点,节点间的相关关系则称作边。在本公开中,图结构表示由电路中各个部件及其彼此之间连接关系提取得到的由图的形式表示的电路结构。换言之,在一个实施例中,图结构用于表示电路系统的至少一部分的拓扑结构。相应地,图数据则表示描述这类图结构的数据。在一些实施例中,也可以使用门级网表数据来确定图结构,并且基于该图结构识别电路系统中的目标电路。门级网表数据所表示的门级电路也具有与晶体管级电路相似的电路节点和连接的边,因此也可以被抽象为图。本公开对此不进行限制。
研究发现,电路器件及其连接可以进一步用异构超图表示。在本公开中,超图是一种广义上的图,它的一条边可以连接任意数量的节点。超图与图的主要不同在于图中边上节点的个数。在图中,一条边只能包含两个结点。在超图中,它的边被称为超边,一条超边连接多个结点。如果一个超图中,所有的超边只连接两个结点,那么超图就会退化成图。相应地,超图数据则表示描述超图的数据。
在本发明的一些实施例中,诸如异构超图之类的图表示是考虑到电路可以天然的表示为超图和器件/端口的异构性,只需逐行读取电路网表文件并展开就可将电路表示为诸如异构超图之类的图形式,不需要复杂的操作,具有转换速度快的优点。虽然在本公开中,使用异构超图来描述本公开的一些实施例,但是可以理解这仅是示例而非对本公开的范围进行限制。本公开的实施例也可以使用表示器件的异构性的其它图数据来实施。
更进一步地,在一个实施例中,电路系统的至少一部分可以由异构超图数据表示。异构图是相对于同构图而言的,同构图(homogeneous graph)中只存在一种类型的节点和边,因此在构建图神经网络时所有节点共享同样的模型参数并且拥有同样维度的特征空间。而异构图(heterogeneous graph)中可以存在不只一种类型的节点和边,因此允许不同类型的节点拥有不同维度的特征或属性。在本公开中,异构超图表示一种兼有异构图和超图的性质的图。相应地,异构超图数据则表示描述异构超图的数据。例如,电路系统的中的一个功能模块可以由异构超图表示。备选地,电路系统整体可以由异构超图表示。本公开对此不进行限制。电路设计人员可以根据需要任意选择电路系统的至少一部分,并且使用图数据将其表示。备选地,也可以由电路设计软件基于电路系统的功能,将不同的电路功能模块以不同的图数据表示。
图4示出了根据本公开的一些实施例的异构超图的转换示意图。图3中的第一电路功能模块310可以转换为异构超图400。换言之,第一电路功能模块310中的各个电路器件、器件类型和属性、各个端子的连接关系等数据可以转换为异构超图400并且由其表示。在一个实施例中,电子设备可以解析并且展开电路系统的电路网表,将第一电路功能模块310中的每个器件、其相邻的边、器件的类型、当前器件所属的器件类型、器件端口以及端口和边的连接关系建立成异构超图数据
Figure PCTCN2021122909-appb-000001
如异构超图400所示,其中:
V表示所有器件的集合,例如第一晶体管M1、第二晶体管M2、第三晶体管M3、第四晶体管M4、电阻器R、电源电压VDD和接地GND)。E表示所有边的集合,例如第1边e1、第2边e2、第3边e3、第4边e4、第5边e5、第6边e6和第7边e7。集合中的元素e∈E,是个包含集合V子集的集合,例如第2边e2集合中包含第一晶体管M1、第三晶体管M3、第三晶体管M3和第四晶体管M4。O表示器件的所有类型,例如P型场效应金属氧化物半导体(PMOS)、N型场效应金属氧化物半导体(NMOS)、电阻器(R)、电容器(C)等。
Figure PCTCN2021122909-appb-000002
表示每个V的类型,例如第一晶体管M1的类型是NMOS,即,
Figure PCTCN2021122909-appb-000003
对于
Figure PCTCN2021122909-appb-000004
R表示器件端口类型的集合,例如漏极(d)、栅极(g)、源极(s)、基极(b)、正极(pos)、负极(neg)等。Ψ={v,e,r}表征器件端口和边的连接关系,例如第一晶体管M1的栅极g、漏极s和第1边e1有连接,则定义为1,而第一晶体管M1的漏极d端没有,则被定义为0,其中
Figure PCTCN2021122909-appb-000005
e∈E和r∈R。
定义器件端口的关系矩阵
Figure PCTCN2021122909-appb-000006
其中r∈R,其可以由下式(1)表示
Figure PCTCN2021122909-appb-000007
其中,|V|表示电路中器件数量,|E|表示电路中边的数量,
Figure PCTCN2021122909-appb-000008
表示实数向量集合。当器件端口和边有连接时为1,没有连接时则为0。为了区分不同的器件端口类型连接,可以引入w r作为可训练的参数。表征电路网表的异构超图的拓扑结构可以编码为∑ r∈R w rH r
Figure PCTCN2021122909-appb-000009
电路器件的特征表示可以表征为
Figure PCTCN2021122909-appb-000010
其中
Figure PCTCN2021122909-appb-000011
表示连接类型为r的邻接矩阵的转置运算,U t表示隐空间投影矩阵,用于对不同器件类型的特征向量进行归一化操作,X t表示原始的器件特征向量,t表示器件类型的所有集合中的任一元素,例如PMOS、NMOS、电阻器R、电容器C等。λ表示将不同类型的器件的特征表示(即器件参数)投影到一个维度为λ的一致空间中。虽然在此示出了基于电路建立异构超图数据的一个示例,但这仅是示意而非对本公开的范围进行限制。在另一些实施例中,可以使用上述参数中的至少一些或电路的其它属性来构建图数据。
继续参见图2的方法200,在204,从图数据提取电路特征表示,电路特征表示包括表示电路系统的至少一部分中的电路器件的器件类型、器件端口或连接关系中的至少一项。在一个实施例中,电路特征表示包括器件类型、器件端口或连接关系。在另一个实施例中、电路特征表示包括器件类型和器件端口。在另一个实施例中、电路特征表示包括器件端口和连接关系。在另一个实施例中、电路特征表示包括器件类型和连接关系。在又一个实施例中,电路特征表示包括器件类型、器件端口和连接关系。在一个实施例中,电路特征表示可以由特征向量进行表示。在电路结构由图数据表示的情形下,可以相应地从图数据提取特征表示,所提取的特征表示可以对应于电路特征表示。因此,可以实际上从图数据中提取电路特征表示。在一个实施例中,可以使用卷积神经网络来提取图数据中的特征表示,即,电路特征表示。
图5示出了根据本公开的一些实施例的卷积神经网络图嵌入的示意图。图数据,例如社交网络、单词共存网络、通信网络和电路结构网络,广泛地存在于各种现实应用中。图数据分析例如可以包括节点分类和聚类。在一些情形下,图数据分析还可以进一步包括链接预测和可视化。在一些实施例中,表示电路的异构超图数据被表示为高维数据。为了降低数据的问题,可以首先根据实际超图数据构造一个D维空间中的超图,然后将超图的节点嵌入到d(d<<D)维向量空间中。“图嵌入”是在向量空间中保持连接的节点彼此靠近的情形下将高维图降维至低维向量。
如图5所示,异构超图400可以包括多个节点特征,例如电压电压Vdd、第一晶体管M1、第二晶体管M2、第三晶体管M3、第四晶体管M4、电阻器R和接地GND。电子设备可以聚合节点特征为由超边表示图数据510,图数据510包括多个超边特征,例如第1边e1、第2边e2、第3边e3、第4边e4、第5边e5、第6边e6和第7边e7。在本文中,节点可以表示电路中的电路器件,诸如晶体管、电阻等,而边表示节点之间的连接。电子设备继而可以聚合超边特征以获得包括多个降维节点特征的图数据520。下面具体描述图嵌入的一种实现方式。图嵌入可以由下式(2)和(3)表示:
Figure PCTCN2021122909-appb-000012
Figure PCTCN2021122909-appb-000013
其中
Figure PCTCN2021122909-appb-000014
表示在第l-1层的嵌入层中的每个结点聚合后的邻居结点的特征向量矩 阵,F (l)表示表示在第l层的嵌入层中的每个结点聚合后的特征向量矩阵,CONCAT为拼接操作,σ(·)表示非线性激活函数,其它参数的定义与上面的定义相同。通过使用式子(2)可以通过关系矩阵H r和端口类型模型参数w r得到当前节点矩阵
Figure PCTCN2021122909-appb-000015
的相邻特征矩阵
Figure PCTCN2021122909-appb-000016
通过使用式子(3),可以将节点矩阵F (l-1)、相邻特征矩阵
Figure PCTCN2021122909-appb-000017
进行拼接并且和权重参数矩阵W (l)、非线性激活函数σ(·)构成全连接层矩阵F (l)
为了表征异构超图中的每个结点和它更大的局部拓扑结构,图嵌入可以被执行多次。每执行一次,局部拓扑结构的范围被扩大一跳(one hop)。在一个实施例中,电路的异构超图被确定执行D次嵌入,其中D可以取决于子电路中的电路器件的节点数目等,其可以表示相邻器件搜索深度。在此情形下,可以定义端口的关系矩阵H r和端口类型连接相关的模型参数w r,其中r∈R,R表示器件端口类型的集合,X t表示所有器件类型节点的特征矩阵。表示器件类型相关的隐空间投影矩阵,其中t∈O,O表示器件的所有类型;σ(·)表示非线性激活函数;W (l)表示模型系数矩阵。隐空间投影矩阵U t用来将特征矩阵X t映射到统一维度的特征矩阵F (0),其可以表示为下式(4):
F (0)=∑ t∈OX tU t   (4)
对于l位于1至D之间的情形,可以按照l依次递增方式循环执行上面的式子(2)和(3),直至最终返回嵌入特征向量矩阵F (D)。虽然在此使用特征向量来描述电路特征表示,但是这仅是示意而非对本公开的范围进行限制。也可以使用其它特征表示方式来描述电路特征。
虽然在此使用图嵌入来降维,但是这仅是示意而非对本公开进行限制。在另一些实施例中,也可以使用其它图降维方式,诸如主成分分析等,对图数据进行降维处理。通过使用卷积神经网络嵌入之类的降维处理方式,可以对异构超图进行降维,从而避免潜在的维度灾难并且提高识别的准确性和效率。
在获得诸如特征向量之类的电路特征表示之后,可以把电路的多个节点和边整合为一个节点和边,从而使子电路可以表达成一个特征向量。例如,可以使用多种聚类方式对多个节点和多个边进行聚类。在一个实施例中,可以使用卷积神经网络池化来进行聚类。异构超图卷积神经网络池化采用非线性激活函数softmax来自适应地对节点和边进行聚类。一种聚类的式子可以如下式(5)-(8)所示:
Figure PCTCN2021122909-appb-000018
Figure PCTCN2021122909-appb-000019
Figure PCTCN2021122909-appb-000020
Figure PCTCN2021122909-appb-000021
其中
Figure PCTCN2021122909-appb-000022
表示第l层的边聚类矩阵,
Figure PCTCN2021122909-appb-000023
表示第l层的结点聚类矩阵。
Figure PCTCN2021122909-appb-000024
Figure PCTCN2021122909-appb-000025
表示池化层系数矩阵。聚类可以将原有的边或者结点通过聚合的方式,即几个边或者结点,聚合成一个大的边或者结点。它们的计算方法在式子(5)和(6)所示,其本质是通过图的拓扑结构(H)、特征矩阵(F)和可学习的权重系数(W)来得到边之间或者结点之间的相似度,相似的边或者结点被分在一起。通过这种方法,将原有的|E|条边结合成q条边,将原有|V|个结点结合成p个结点。因此,利用
Figure PCTCN2021122909-appb-000026
Figure PCTCN2021122909-appb-000027
可以对多个节点和边进行聚 类成一个节点和边,并且可以将聚类得到的节点和边作为所提取的电路特征表示。
利用这两个矩阵和softmax计算分别能自适应地通过学习的方式对每个结点和超边进行相似度评价。对应地,在式子(7)中,每个结点的特征向量维度是f。因为聚类前有|V|个节点,聚类前的每个节点所形成的特征矩阵大小是|V|乘以f。聚类后,因为节点数减少,但每个节点的特征向量维度不变,因此聚类后的每个节点所形成的特征矩阵大小是p乘以f。邻接矩阵H的大小是由边和结点数决定的,因此在式子(8)中是将聚类前的邻接矩阵
Figure PCTCN2021122909-appb-000028
(大小为|V|×|E|)转换为聚类后的邻接矩阵
Figure PCTCN2021122909-appb-000029
(大小为p×q)。通过使用池化进行聚类,可以有效地提取电路特征表示,从而进一步提高识别的准确性和效率。虽然在此使用池化的方式来进行特征聚类,但这仅是示意而非对本公开的范围进行限制。在另一些实施例中,可以使用其它聚类方式,例如多层感知。
图6示出了根据本公开的一些实施例的提取电路特征表示的过程600的示意图。如图6所示,在一个实施例中,异构超图经过三次卷积神经网络嵌入和卷积神经网络池化,并且随后经过全连接处理和softmax聚类,可以得到所提取的电路特征表示。通过使用全连接,可以提高特征提取的准确率。虽然在此示出了三次嵌入和池化,但这仅是示意而非对本公开的范围进行限制。基于电路结构的不同,可以仅经过一次或经过多次嵌入和池化。在另一些实施例中,也可以不进行全连接处理,而是将池化后的结果直接输入softmax函数以获得电路特征表示。
返回至图2的方法200,在206,电子设备可以至少基于电路特征表示生成关于目标电路的输出。在电路设计人员输入晶体管级的网表数据并且期望从中识别目标电路时,电子设备可以通过多种方式确定电路系统中是否存在目标电路,即生成存在目标电路的第一输出或生成不存在目标电路的第二输出。在一些实施例中,可以生成指示目标电路的具体结构的第一输出。进一步地,在一些实施例中,还可以给出与目标电路对应的参考电路设计和/或版图设计,或使用参考电路设计和/或版图对其电路系统中的对应电路和/或版图进行替换。本公开对此不进行限制。
在一个实施例中,电子设备基于电路特征表示与电路库中的多个参考电路特征表示确定关于目标电路的输出。电路库可以是从电路设计知识产权(intellectual property,IP)提供商处购买的标准电路单元库。备选地,也可以是电路设计人员基于之前的设计积累的电路库。在另一些实施例中,电路设计人员也可以购买标准电路单元库并且不断向其中添加新的参考电路所形成的特定于该电路设计人员的电路库。电路库中可以包括多个经过验证的参考电路特征,这些参考电路特征对应于需要特别电路设计人员注意的目标电路。在一些实施例中,电路库还可以包括与这些参考电路特征对应的参考电路设计和/或版图设计。
在一些实施例中,可以将电路特征表示与电路库中的多个参考电路特征表示进行比较,以确定是否存在目标电路。在另一些实施例中,电路库中可以具有查找表,可以将电路特征表示查找电路库的查找表中的参考电路特征表示,并且由此确定是否存目标电路。本公开对此不进行限制。通过将电路特征表示与用户的电路库中的多个参考电路特征表示进行比较以确定是否存在目标电路,可以快速有效地识别电路系统中的目标电路。相比于针对参考电路提取参考电路特征表示并且将其与待识别的电路特征表示进行比较,可以有效地减少计算量和时间。
在一些实施例中,电路库中可以存在与电路特征表示相似的多个参考电路特征表示。在此情形下,可以分别计算电路特征表示与多个参考电路特征表示之间的多个匹配度;以及基于多个匹配度,生成关于目标电路的输出。通过使用电路特征表示与多个参考电路特征表示, 可以使得目标电路的识别更为准确。进一步地,在一些实施例中,电子设备可以确定多个匹配度中的最高匹配度是否达到阈值匹配度;以及如果最高匹配度达到阈值匹配度,则生成表示电路系统中存在目标电路的第一输出;或如果最高匹配度低于阈值匹配度,则生成表示电路系统中不存在目标电路的第二输出。虽然在此示出了基于电路特征表示和电路库中的参考电路特征表示来确定目标电路的方式,但是本公开不限于此。在另一些实施例中,可以基于多个电路特征表示来确定电路系统中是否存在目标电路,如下文所述。
图7示出了根据本公开的另一实施例的异构超图的转换示意图。在一些情形下,模拟集成电路设计中存在诸多的器件或者子电路的对称对,诸如差分放大器。在版图设计中需要对这些器件或者子电路的对称对进行对称布局。对称布局使得版图具有相似的寄生从而提高差分对的共模抑制比。常规的对称对识别完全是依赖于人工来实现。然而当电路规模非常大时,人工识别的效率就非常低。
电路系统300的第二电路功能模块320包括第一晶体管M1、第二晶体管M2、第三晶体管M3、第四晶体管M4、第五晶体管M5、第六晶体管M6、第七晶体管M7和第八晶体管M8。第一晶体管的漏极d经由超边e1耦合至第二晶体管M2和第三晶体管M3的源极s,第二晶体管M2和第三晶体管M3的栅极g经由超边e2耦合至第四晶体管M4的漏极。第五晶体管M5的漏极d耦合至第三晶体管M3的漏极d。第四晶体管M4和第五晶体管M5的源极s与第六晶体管M6和第七晶体管M7的漏极d经由超边e3耦合在一起。第六晶体管M6的源极s经由超边e5耦合至第八晶体管M8的漏极d。
在第二电路功能模块320中,第二晶体管M2和第三晶体管M3是一个对称结构,并且第四晶体管M4和第五晶体管M5是另一个对称结构。在布图时,需要对其进行对称布图。因此,在此情形下,第二晶体管M2和第三晶体管M3是一个需要识别出来的目标电路,并且第四晶体管M4和第五晶体管M5是另一个需要识别出来的目标电路。
类似地,电子设备可以通过解析晶体管级的电路网表将第二电路功能模块320转换为异构超图700。这个过程没有额外耗时的图转换过程,因此表达效率较高。根据所得到的异构超图,电子设备采用异构超图卷积神经网络来编码每个节点及他们局部的拓扑连接关系。与第一电路功能模块310相似地,可以使用卷积神经网络嵌入来降低维度以减少计算量和时间,并且提高效率。在此之后,与第一电路功能模块310不同,可以使用常规的多层感知机来将提取电路特征表示。多层感知机可以由下式(9)表示。
F (l)=σ(F (l-1)·W (l))  (9)
经过若干次异构超图嵌入和多层感知机,每个节点都产生一个特征向量
Figure PCTCN2021122909-appb-000030
其中
Figure PCTCN2021122909-appb-000031
表示F (l)的第i行,及第i个节点的特征向量。在此之后,根据所产生的每个节点的特征向量,可以采用相似度来判别任意两个节点是否是对称对。在一个实施例中,可以使用余弦相似度来进行判断。即如果第i个节点的特征向量与第j个节点的特征向量的余弦相似度小于一个阈值,则判断为i与j是对称对,否则i与j不是对称对。通过比较电路系统中的特定电路器件之间的布置相似度,可以确定包括该特定电路器件的电路是否是目标电路,从而提高电路识别的准确率。
图8示出了可以用于实施本公开的实施例的示例设备800的示意性框图。设备800可以用于实现图9的电子设备900。如图所示,设备800包括计算单元801,其可以根据存储在随机存取存储器(RAM)和/或只读存储器(ROM)802的计算机程序指令或者从存储单元807加载到RAM和/或ROM 802中的计算机程序指令,来执行各种适当的动 作和处理。在RAM和/或ROM 802中,还可存储设备800操作所需的各种程序和数据。计算单元801和RAM和/或ROM 802通过总线803彼此相连。输入/输出(I/O)接口804也连接至总线803。
设备800中的多个部件连接至I/O接口804,包括:输入单元805,例如键盘、鼠标等;输出单元806,例如各种类型的显示器、扬声器等;存储单元807,例如磁盘、光盘等;以及通信单元808,例如网卡、调制解调器、无线通信收发机等。通信单元808允许设备800通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元801可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元801的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元801执行上文所描述的各个方法和处理,例如方法200。例如,在一些实施例中,方法200可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元807。在一些实施例中,计算机程序的部分或者全部可以经由RAM和/或ROM和/或通信单元808而被载入和/或安装到设备800上。当计算机程序加载到RAM和/或ROM并由计算单元801执行时,可以执行上文描述的方法200的一个或多个步骤。备选地,在其他实施例中,计算单元801可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行方法200。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
图9示出了根据本公开实施例的用于识别目标电路的示例装置900的框图。电子设备900可以包括多个模块,以用于执行如图2-图7中所讨论的方法中的对应步骤。如图9所示,在一个实施例中,电子设备900包括确定单元902、提取单元904和生成单元906。确定单元902,用于基于表示电路系统的网表数据,确定表示电路系统的至少一部分的图数据;提取单元904,用于从图数据提取电路特征表示,电路特征表示包括表示电路系统的至少一部分中的电路器件的器件类型、器件端口或连接关系中的至少一项;以及生成单元906,用于至少基于电路特征表示,生成关于目标电路的输出。由于电路被抽象为图数据并且被提取电路特征并加以识别,因此无需定义复杂的规则并且也不需要电路设计人员对目标电路的详细电路结构有比较深入的了解,而是由诸如计算机之类的电子设备针对电路特征通过诸如卷积神经网络之类的机器学习模型自动进行特征提取和识别。电路设计人员因此无需掌握复杂 的设计规则,而只需通过购买和/或建立和维护自己的参考电路特征库,即可开发复杂的电路系统并且准确识别电路系统中需要关注的目标电路。
在一个实施例中,图数据包括异构超图数据。提取单元904进一步用于:使用卷积神经网络嵌入从异构超图数据提取异构超图中的多个节点和与多个节点相关联的多个节点连接;以及基于多个节点和多个节点连接,确定电路特征表示。通过使用卷积神经网络嵌入,可以对异构超图进行降维,从而避免潜在的维度灾难并且提高识别的准确性和效率。
在一个实施例中,确定单元902进一步用于:使用卷积神经网络池化对多个节点和多个节点进行聚类,以获得电路特征表示。通过使用池化进行聚类,可以有效地提取电路特征表示,从而进一步提高识别的准确性和效率。在第一方面的一种可能实现方式中,电路特征表示可以包括特征向量。
在一个实施例中,确定单元902进一步用于:使用卷积神经网络对多个节点和多个节点进行多层感知,以获得电路特征表示。通过使用多层感知,可以有效地提取各个节点的电路特征表示,从而进一步提高识别的准确性和效率。
在一个实施例中,生成单元906进一步用于:基于电路特征表示与电路库中的多个参考电路特征表示确定关于目标电路的输出。通过将电路特征表示与用户的电路库中的多个参考电路特征表示进行比较以确定是否存在目标电路,可以快速有效地识别电路系统中的目标电路。相比于针对参考电路提取参考电路特征表示并且将其与待识别的电路特征表示进行比较,可以有效地减少计算量和时间。
在一个实施例中,生成单元906进一步用于:分别计算电路特征表示与多个参考电路特征表示之间的多个匹配度;以及基于多个匹配度,生成关于目标电路的输出。通过使用电路特征表示与多个参考电路特征表示,可以使得目标电路的识别更为准确。
在一个实施例中,生成单元906进一步用于:确定多个匹配度中的最高匹配度是否达到阈值匹配度;以及如果最高匹配度达到阈值匹配度,则生成表示电路系统中存在目标电路的第一输出;或如果最高匹配度低于阈值匹配度,则生成表示电路系统中不存在目标电路的第二输出。
在一个实施例中,生成单元906进一步用于:确定多个参考电路特征表示中的与最高匹配度相对应的第一参考电路特征表示;以及使用与第一参考电路特征表示相对应的参考电路替换电路系统中与电路特征表示相对应的电路。通过使用对应的参考电路替换,可以避免电路设计人员重新设计,并且提高电路设计的效率和准确率。
在一个实施例中,电路特征表示包括第一电路特征表示和第二电路特征表示,第一电路特征表示至少一部分中的第一电路器件的器件类型、器件端口或连接关系中的至少一项,第二电路特征表示至少一部分中的第二电路器件的器件类型、器件端口或连接关系中的至少一项,生成单元906进一步用于:计算第一电路特征表示和第二电路特征表示之间的相似度;以及基于相似度,生成关于目标电路的输出。通过比较电路系统中的特定电路器件之间的布置相似度,可以确定包括该特定电路器件的电路是否是目标电路,从而提高电路识别的准确率。
在一个实施例中,相似度包括余弦相似度。生成单元906进一步用于:确定余弦相似度是否达到阈值相似度;如果余弦相似度达到阈值相似度,则生成表示电路系统中存在目标电路的第一输出;以及如果余弦相似度低于阈值相似度,则生成表示电路系统中不存在目标电路的第二输出。通过计算特定电路器件的特征表示之间的余弦相似度,可以快速有效地确认 目标电路。
此外,虽然采用特定次序描绘了各操作,但是这应当理解为要求这样操作以所示出的特定次序或以顺序次序执行,或者要求所有图示的操作应被执行以取得期望的结果。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实现中。相反地,在单个实现的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实现中。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。

Claims (20)

  1. 一种用于识别电路系统中的目标电路的方法,包括:
    基于表示所述电路系统的网表数据,确定表示所述电路系统的至少一部分的图数据;
    从所述图数据提取电路特征表示,所述电路特征表示包括所述电路系统的所述至少一部分中的电路器件的器件类型、器件端口或连接关系中的至少一项的表示;以及
    至少基于所述电路特征表示,生成关于所述目标电路的输出。
  2. 根据权利要求1所述的方法,其中所述图数据包括异构超图数据,从所述图数据提取所述电路特征表示包括:
    使用卷积神经网络嵌入,从所述异构超图数据提取所述异构超图中的、多个节点和与所述多个节点相关联的多个节点连接;以及
    基于所述多个节点和所述多个节点连接,确定所述电路特征表示。
  3. 根据权利要求2所述的方法,其中基于所述多个节点和所述节点连接确定所述电路特征表示包括:
    使用卷积神经网络池化对所述多个节点和所述多个节点进行聚类,以获得所述电路特征表示。
  4. 根据权利要求2所述的方法,其中基于所述多个节点和所述节点连接确定所述电路特征表示包括:
    使用卷积神经网络对所述多个节点和所述多个节点进行多层感知,以获得所述电路特征表示。
  5. 根据权利要求1-4中任一项所述的方法,其中至少基于所述电路特征表示生成关于所述目标电路的输出包括:
    基于所述电路特征表示与电路库中的多个参考电路特征表示确定关于所述目标电路的输出。
  6. 根据权利要求5所述的方法,其中基于所述电路特征表示与电路库中的多个参考电路特征表示确定关于所述目标电路的输出包括:
    分别计算所述电路特征表示与所述多个参考电路特征表示之间的多个匹配度;以及
    基于所述多个匹配度,生成关于所述目标电路的输出。
  7. 根据权利要求6所述的方法,其中基于所述多个匹配度生成关于所述目标电路的输出包括:
    确定所述多个匹配度中的最高匹配度是否达到阈值匹配度;以及
    如果所述最高匹配度达到阈值匹配度,则生成表示所述电路系统中存在所述目标电路的第一输出;或
    如果所述最高匹配度低于阈值匹配度,则生成表示所述电路系统中不存在所述目标电路的第二输出。
  8. 根据权利要求7所述的方法,还包括:
    确定所述多个参考电路特征表示中的与所述最高匹配度相对应的第一参考电路特征表示;以及
    使用与所述第一参考电路特征表示相对应的参考电路替换所述电路系统中与所述电路特征表示相对应的电路。
  9. 根据权利要求1-4中任一项所述的方法,其中所述电路特征表示包括第一电路特征表示和第二电路特征表示,所述第一电路特征表示用于表示所述至少一部分中的第一电路器件的器件类型、器件端口或连接关系中的至少一项,所述第二电路特征表示用于表示所述至少一部分中的第二电路器件的器件类型、器件端口或连接关系中的至少一项,基于所述电路特征表示生成关于所述目标电路的输出包括:
    计算所述第一电路特征表示和所述第二电路特征表示之间的相似度;以及
    基于所述相似度,生成关于所述目标电路的输出。
  10. 根据权利要求9所述的方法,其中所述相似度包括余弦相似度,基于所述相似度生成关于所述目标电路的输出包括:
    确定所述余弦相似度是否达到阈值相似度;
    如果所述余弦相似度达到阈值相似度,则生成表示所述电路系统中存在所述目标电路的第一输出;以及
    如果所述余弦相似度低于阈值相似度,则生成表示所述电路系统中不存在所述目标电路的第二输出。
  11. 根据权利要求1-10中任一项所述的方法,其中基于表示所述电路系统的网表数据确定表示所述电路系统的至少一部分的图数据包括:
    基于所述网表数据,将所述电路系统中的各个电路器件抽象为图结构的多个节点,并且将所述电路系统中的各个电路器件之间的连接关系抽象为所述图结构的多个边,以生成包括所述多个节点和所述多个边的所述图数据,所述图数据表示所述所述图结构,所述图结构表示所述电路系统的所述至少一部分的拓扑结构,所述多个节点和所述多个边用于表示所述电路系统的所述至少一部分。
  12. 一种计算机可读存储介质,存储多个程序,所述多个程序被配置为由一个或多个处理器执行,所述多个程序包括用于执行权利要求1-11中任一项所述的方法的指令。
  13. 一种计算机程序产品,所述计算机程序产品包括多个程序,所述多个程序被配置为由一个或多个处理器执行,所述多个程序包括用于执行权利要求1-11中任一项所述的方法的指令。
  14. 一种电子设备,包括:
    一个或多个处理器;
    包括计算机指令的存储器,所述计算机指令在由所述电子设备的所述一个或多个处理器执行时使得所述电子设备执行权利要求1-11中任一项所述的方法。
  15. 一种电子设备,包括:
    确定单元,用于基于表示所述电路系统的网表数据,确定表示所述电路系统的至少一部分的图数据;
    提取单元,用于从所述图数据提取电路特征表示,所述电路特征表示包括所述电路系统的至少一部分中的电路器件的器件类型、器件端口或连接关系中的至少一项的表示;以及
    生成单元,用于至少基于所述电路特征表示,生成关于所述目标电路的输出。
  16. 根据权利要求15所述的电子设备,其中所述图数据包括异构超图数据,所述提取单元进一步用于:
    使用卷积神经网络嵌入从所述异构超图数据提取所述异构超图中的多个节点和与所述多个节点相关联的多个节点连接;以及
    基于所述多个节点和所述多个节点连接,确定所述电路特征表示。
  17. 根据权利要求16所述的电子设备,其中所述提取单元进一步用于:
    使用卷积神经网络池化对所述多个节点和所述多个节点进行聚类,以获得所述电路特征表示。
  18. 根据权利要求14-17中任一项所述的电子设备,其中所述生成单元进一步用于:
    基于所述电路特征表示与电路库中的多个参考电路特征表示确定关于所述目标电路的输出。
  19. 根据权利要求18所述的电子设备,其中所述生成单元进一步用于:
    分别计算所述电路特征表示与所述多个参考电路特征表示之间的多个匹配度;以及
    基于所述多个匹配度,生成关于所述目标电路的输出。
  20. 根据权利要求14-17中任一项所述的电子设备,其中所述电路特征表示包括第一电路特征表示和第二电路特征表示,所述第一电路特征表示用于表示所述至少一部分中的第一电路器件的器件类型、器件端口或连接关系中的至少一项,所述第二电路特征表示用于表示所述至少一部分中的第二电路器件的器件类型、器件端口或连接关系中的至少一项,所述生成单元进一步用于:
    计算所述第一电路特征表示和所述第二电路特征表示之间的相似度;以及
    基于所述相似度,生成关于所述目标电路的输出。
PCT/CN2021/122909 2021-10-09 2021-10-09 用于识别电路系统中的目标电路的方法和电子设备 WO2023056642A1 (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202180101672.XA CN117940929A (zh) 2021-10-09 2021-10-09 用于识别电路系统中的目标电路的方法和电子设备
PCT/CN2021/122909 WO2023056642A1 (zh) 2021-10-09 2021-10-09 用于识别电路系统中的目标电路的方法和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2021/122909 WO2023056642A1 (zh) 2021-10-09 2021-10-09 用于识别电路系统中的目标电路的方法和电子设备

Publications (1)

Publication Number Publication Date
WO2023056642A1 true WO2023056642A1 (zh) 2023-04-13

Family

ID=85803866

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/122909 WO2023056642A1 (zh) 2021-10-09 2021-10-09 用于识别电路系统中的目标电路的方法和电子设备

Country Status (2)

Country Link
CN (1) CN117940929A (zh)
WO (1) WO2023056642A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116736075A (zh) * 2023-05-09 2023-09-12 珠海妙存科技有限公司 晶体管的匹配精度检测方法、控制器及存储介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN118194800B (zh) * 2024-05-17 2024-07-12 英诺达(成都)电子科技有限公司 局部电路识别匹配方法、装置、设备、介质及产品

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1595403A (zh) * 2004-06-25 2005-03-16 清华大学 基于图同构的面向模拟电路布局的对称约束提取方法
CN103020346A (zh) * 2012-12-06 2013-04-03 湖南大学 一种电路物理设计相似度的测试方法
US20180150585A1 (en) * 2016-11-28 2018-05-31 Taiwan Semiconductor Manufacturing Co., Ltd. Method for layout generation with constrained hypergraph partitioning
CN110941931A (zh) * 2019-11-26 2020-03-31 青岛理工大学 集成电路性能与其复杂网络特性关联性判定方法及系统
US20200372365A1 (en) * 2019-05-20 2020-11-26 Synopsys, Inc. Classification of patterns in an electronic circuit layout using machine learning based encoding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1595403A (zh) * 2004-06-25 2005-03-16 清华大学 基于图同构的面向模拟电路布局的对称约束提取方法
CN103020346A (zh) * 2012-12-06 2013-04-03 湖南大学 一种电路物理设计相似度的测试方法
US20180150585A1 (en) * 2016-11-28 2018-05-31 Taiwan Semiconductor Manufacturing Co., Ltd. Method for layout generation with constrained hypergraph partitioning
US20200372365A1 (en) * 2019-05-20 2020-11-26 Synopsys, Inc. Classification of patterns in an electronic circuit layout using machine learning based encoding
CN110941931A (zh) * 2019-11-26 2020-03-31 青岛理工大学 集成电路性能与其复杂网络特性关联性判定方法及系统

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116736075A (zh) * 2023-05-09 2023-09-12 珠海妙存科技有限公司 晶体管的匹配精度检测方法、控制器及存储介质
CN116736075B (zh) * 2023-05-09 2024-04-19 珠海妙存科技有限公司 晶体管的匹配精度检测方法、控制器及存储介质

Also Published As

Publication number Publication date
CN117940929A (zh) 2024-04-26

Similar Documents

Publication Publication Date Title
Ren et al. ParaGraph: Layout parasitics and device parameter prediction using graph neural networks
US8201122B2 (en) Computing resistance sensitivities with respect to geometric parameters of conductors with arbitrary shapes
TWI707241B (zh) 開發電子裝置的電子架構設計的方法、將電子裝置的電子架構設計最佳化的電腦系統及非暫時性機器可讀取媒體
Chakraborty et al. Local directional gradient pattern: a local descriptor for face recognition
Wilson et al. A study of graph spectra for comparing graphs and trees
WO2023056642A1 (zh) 用于识别电路系统中的目标电路的方法和电子设备
US7761820B2 (en) Automated migration of analog and mixed-signal VLSI design
JP5246030B2 (ja) 回路自動設計プログラム、方法及び装置
Aziz et al. Backtrackless walks on a graph
Shang et al. Dual space latent representation learning for unsupervised feature selection
Zhang et al. Discriminative sparse flexible manifold embedding with novel graph for robust visual representation and label propagation
Zhang et al. Hypergraph spectral clustering for point cloud segmentation
CN115270705B (zh) 一种设计规则违例预测方法、装置、设备及存储介质
CN111339724B (zh) 用于生成数据处理模型和版图的方法、设备和存储介质
CN110993037A (zh) 一种基于多视图分类模型的蛋白质活性预测装置
CN108470025A (zh) 局部话题概率生成正则化自编码文本嵌入表示方法
CN114065693A (zh) 超大规模集成电路结构布局的优化方法、系统和电子设备
Chen et al. Machine learning in advanced IC design: A methodological survey
CN117807943A (zh) 基于异质图卷积神经网络的子电路识别方法
CN101789000A (zh) 搜索引擎中的模式分类方法
Yang et al. CNN-Cap: Effective convolutional neural network based capacitance models for full-chip parasitic extraction
CN112307914B (zh) 一种基于文本信息指导的开放域图像内容识别方法
CN117056970A (zh) 基于图神经网络的隐私特征保护方法和系统
Lin et al. Achieving analog layout integrity through learning and migration
Islam Early Stage DRC Prediction Using Ensemble Machine Learning Algorithms

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21959732

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202180101672.X

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21959732

Country of ref document: EP

Kind code of ref document: A1