Search Device

By converting circuit diagrams into graphs and using similarity calculation methods, the system automates the search for circuit diagrams, addressing the limitations of manual search and enhancing retrieval accuracy.

JP7625740B2Active Publication Date: 2025-02-03SEMICON ENERGY LAB CO LTD
View PDF 11 Cites 0 Cited by

Patent Information

Application Number
JP2024035515
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2019-05-15
Filing Date
2024-03-08
Publication Date
2025-02-03
Estimated Expiration
2040-04-30

AI Technical Summary

Technical Problem

Current search methods for circuit diagrams on computers fail to recognize connection information, leading to the need for manual visual search rather than automated query-based retrieval.

Method used

A method and system that converts circuit diagram information into graphs, calculates similarity between graphs, and displays the results, utilizing techniques like the Weisfeiler-Lehman kernel method to identify matching circuit diagrams.

Benefits of technology

Enables automated search and retrieval of circuit diagrams based on connection information, improving efficiency and accuracy by recognizing circuit diagrams as similar even when visually different.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007625740000002
    Figure 0007625740000002
  • Figure 0007625740000003
    Figure 0007625740000003
  • Figure 0007625740000004
    Figure 0007625740000004
Patent Text Reader

Abstract

To provide a search system and a search method.SOLUTION: A search system includes means to input first circuit diagram information to a terminal, a database on which second circuit diagram information is registered, means to convert the input first circuit diagram information into a first graph, arithmetic means to calculate similarity between the first graph and a second graph based on the second circuit diagram information, and means to display the similarity on the terminal.SELECTED DRAWING: Figure 7
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] One embodiment of the present invention relates to a search method, a search device, and a search system, and more particularly to a search method, a search device, and a search system for circuit diagrams and text related to the circuit diagrams. [Background technology]

[0002] In the field of information processing, a data structure called a graph has been proposed. A graph is made up of a set of vertices (nodes) and edges, and is used to represent network structures such as connections between people in a community or a transportation network (Patent Document 1).

[0003] Many methods for theoretically analyzing graphs have been proposed. For example, Non-Patent Document 1 discloses a method for calculating the similarity between graphs. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] JP 2016-119082 A [Non-patent literature]

[0005] [Non-Patent Document 1] Nino Shervashidze,et al.,Journal of Machine Learning Research 12,pp.2539-2561,2011 Summary of the Invention [Problem to be solved by the invention]

[0006] There is a high demand for searching for drawings stored on computers or servers, drawings written in documents, or sentences explaining drawings (also called text information). Examples of documents include patent publications and papers. Examples of drawings include circuit diagrams such as electronic circuit diagrams. However, the general methods of searching for drawings currently in use cannot take into account the connection information of circuit elements. As a result, machines cannot find network circuit diagrams using search queries, and humans end up searching visually.

[0007] An object of one embodiment of the present invention is to provide a method for searching for a circuit diagram.Another object of one embodiment of the present invention is to provide a device for searching for a circuit diagram.Another object of one embodiment of the present invention is to provide a system for searching for a circuit diagram.Another object of one embodiment of the present invention is to provide a method for searching for a sentence that describes a circuit diagram.Another object of one embodiment of the present invention is to provide a device for searching for a sentence that describes a circuit diagram.Another object of one embodiment of the present invention is to provide a system for searching for a sentence that describes a circuit diagram. [Means for solving the problem]

[0008] One embodiment of the present invention is a search system having a means for inputting first circuit diagram information into a terminal, a database in which second circuit diagram information is registered, a means for converting the input first circuit diagram information into a first graph, a calculation means for calculating a similarity between the first graph and a second graph based on the second circuit diagram information, and a means for displaying the similarity on the terminal.

[0009] In the above, it is preferable that the search system has a server connected to the terminal via a network, and the database is stored in the server.

[0010] In the above, the first circuit diagram information is preferably a circuit element that constitutes the circuit diagram.

[0011] In the above, the first circuit diagram information is preferably text explaining the circuit diagram.

[0012] Another embodiment of the present invention is a search method including the steps of converting first circuit diagram information input to a terminal into a first graph, calculating a similarity between the first graph and a second graph registered in a database, and displaying the similarity on the terminal.

[0013] In the above, the first circuit diagram information is preferably a circuit element that constitutes the circuit diagram.

[0014] In the above, the first circuit diagram information is preferably text explaining the circuit diagram. Effect of the Invention

[0015] According to one embodiment of the present invention, it is possible to provide a method for searching for a circuit diagram. According to one embodiment of the present invention, it is possible to provide a device for searching for a circuit diagram. According to one embodiment of the present invention, it is possible to provide a system for searching for a circuit diagram. According to one embodiment of the present invention, it is possible to provide a method for searching for a sentence that describes a circuit diagram. According to one embodiment of the present invention, it is possible to provide a device for searching for a sentence that describes a circuit diagram. According to one embodiment of the present invention, it is possible to provide a system for searching for a sentence that describes a circuit diagram. [Brief description of the drawings]

[0016] [Figure 1] 1A1 to 1F2 are diagrams illustrating circuit elements or graphs corresponding to the circuit elements, and are used to explain one embodiment of the present invention. [Diagram 2] 2A1 to 2F2 are diagrams illustrating circuit elements or graphs corresponding to the circuit elements, and are used to explain one embodiment of the present invention. [Diagram 3] 3A1 to 3G2 are diagrams illustrating circuit elements or graphs corresponding to the circuit elements, and are used to explain one embodiment of the present invention. [Figure 4]4A and 4B are circuit diagrams or graphs corresponding to the circuit diagrams, illustrating one embodiment of the present invention. [Diagram 5] 5A and 5B are circuit diagrams or graphs corresponding to the circuit diagrams, illustrating one embodiment of the present invention. [Figure 6] 6A and 6B are circuit diagrams or graphs corresponding to the circuit diagrams, illustrating one embodiment of the present invention. [Figure 7] 7A and 7B are schematic views illustrating a method of operating a terminal used for searching a circuit diagram according to one embodiment of the present invention. [Figure 8] 8A is a schematic diagram illustrating a method of operating a terminal used for searching for a circuit diagram according to one embodiment of the present invention, and FIG. 8B and FIG. 8C are examples of circuit diagrams according to one embodiment of the present invention. [Figure 9] FIG. 9 is a schematic diagram illustrating a terminal according to one embodiment of the present invention. [Figure 10] FIG. 10 is a schematic diagram illustrating a network used for a circuit diagram search according to one embodiment of the present invention. [Figure 11] 11A1 to 11E2 are diagrams for explaining a method for calculating the similarity between graphs according to one embodiment of the present invention. [Figure 12] FIG. 12 is a flowchart illustrating one embodiment of the present invention. [Figure 13] FIG. 13 is a flowchart illustrating one embodiment of the present invention. [Figure 14] 14A and 14B are schematic views illustrating a method of operating a terminal used for searching for a circuit diagram in one embodiment of the present invention. [Figure 15] FIG. 15 is a diagram for explaining an embodiment of the present invention. [Figure 16] 16A to 16D are diagrams illustrating one embodiment of the present invention. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0017] (Embodiment 1) In this embodiment, a search system according to one embodiment of the present invention will be described. The search system according to this embodiment can search for circuit diagrams and texts explaining the circuit diagrams.

[0018] In this specification, a graph is a data structure consisting of vertices (nodes) and edges, and represents the connections between each piece of data. There are directed graphs that take into account the direction of edges, and undirected graphs that do not take into account the direction of edges, but this specification will deal with undirected graphs unless otherwise specified.

[0019] Figure 1A1 shows the circuit symbol of an NMOS transistor, and Figure 1A2 shows the corresponding graph. The graph in Figure 1A2 consists of one node N, two nodes Nsd, and one node Ng. The node Ng represents the gate, and the node Nsd represents the source or drain. The nodes Ng and Nsd are each connected to the node N.

[0020] In this specification, the nodes illustrated with black circles are called "element nodes" and represent the centers of the elements. Also, the nodes illustrated with white circles are called "terminal nodes" and represent the terminals of the elements. For example, in FIG. 1A2, node N is an element node, and nodes Ng and Nsd are terminal nodes. Usually, multiple terminal nodes are connected to one element node.

[0021] Figure 1B1 shows the circuit symbol of a PMOS transistor, and Figure 1B2 shows the corresponding graph. The graph in Figure 1B2 consists of one node P, two nodes Psd, and one node Pg. Node Pg represents the gate, and node Psd represents the source or drain. Node P is an element node, and nodes Pg and Psd are terminal nodes connected to node P.

[0022] FIG. 1C1 shows the circuit symbol of an NMOS transistor, and FIG. 1C2 shows the corresponding graph. The NMOS transistor shown in FIG. 1C1 is used when the source / drain are differentiated (the one with the arrow is the source). The graph in FIG. 1C2 consists of one node N, one node Ng, one node Ns, and one node Nd. The node Ng represents the gate, the node Ns represents the source, and the node Nd represents the drain. The node N is an element node, and the nodes Ng, Ns, and Nd are terminal nodes connected to the node N.

[0023] FIG. 1D1 shows the circuit symbol of a PMOS transistor, and FIG. 1D2 shows the corresponding graph. The PMOS transistor shown in FIG. 1D1 is used when the source / drain are differentiated (the one with the arrow is the source). The graph in FIG. 1D2 consists of one node P, one node Pg, one node Ps, and one node Pd. Node Pg represents the gate, node Ps represents the source, and node Pd represents the drain. Node P is an element node, and nodes Pg, Ps, and Pd are terminal nodes connected to node P.

[0024] FIG. 1E1 shows a circuit symbol of an NMOS transistor with two gate electrodes, and FIG. 1E2 shows the corresponding graph. The graph in FIG. 1E2 is composed of one node N, two nodes Nsd, one node Ng, and one node Nbg. The node Ng represents a first gate (also called a front gate), the node Nbg represents a second gate (also called a back gate), and the node Nsd represents a source or drain. The node N is an element node, and the nodes Ng, Nbg, and Nsd are terminal nodes connected to the node N, respectively.

[0025] Although not shown, a graph for a PMOS transistor having two gate electrodes can also be defined in a similar manner.

[0026] FIG. 1F1 shows the circuit symbol of an NMOS transistor to which a substrate potential can be applied, and FIG. 1F2 shows the corresponding graph. The graph in FIG. 1F2 consists of one node N, two nodes Nsd, one node Ng, and one node Nsub. Node Ng represents the gate, node Nsub represents the substrate to which a potential can be applied, and node Nsd represents the source or drain. Node N is an element node, and nodes Ng, Nsub, and Nsd are terminal nodes connected to node N.

[0027] Although not shown, a graph for a PMOS transistor to which a substrate potential can be applied can also be defined in a similar manner.

[0028] Also, information about the semiconductor material used in the channel of the MOS transistor can be included in the circuit diagram and graph.

[0029] Fig. 2A1 shows a circuit symbol of an NMOS transistor using silicon as a channel, and Fig. 2A2 shows a corresponding graph. The graph in Fig. 2A2 is composed of one node SN, two nodes SNsd, and one node SNg. The node SNg represents a gate, and the node SNsd represents a source or drain. The node SN is an element node, and the nodes SNg and SNsd are terminal nodes connected to the node SN.

[0030] Figure 2B1 shows a circuit symbol of a PMOS transistor using silicon as a channel, and Figure 2B2 shows the corresponding graph. The graph in Figure 2B2 consists of one node SP, two nodes SPsd, and one node SPg. The node SPg represents the gate, and the node SPsd represents the source or drain. The node SP is an element node, and the nodes SPg and SPsd are terminal nodes connected to the node SP.

[0031] An oxide semiconductor (OS) can be used as a semiconductor material of a transistor. In particular, a transistor using an OS in a channel formation region has an extremely small leakage current in a non-conducting state, which is preferable. Such a transistor can be used in semiconductor devices such as display devices, projection devices, lighting devices, electro-optical devices, power storage devices, memory devices, semiconductor circuits, imaging devices, and electronic devices. Specific examples of display devices include liquid crystal display devices and light-emitting display devices. Specific examples of semiconductor circuits include LSIs such as a CPU and a memory, and IC chips equipped with one or more of these. A transistor using an OS in a channel formation region has an extremely small leakage current in a non-conducting state, and therefore a semiconductor device with low power consumption can be provided.

[0032] The OS may be an oxide containing at least one of indium (In), gallium (Ga), and zinc (Zn). For example, the OS may be a metal oxide such as In-M-Zn oxide (wherein element M is one or more selected from aluminum, gallium, yttrium, tin, copper, vanadium, beryllium, boron, titanium, iron, nickel, germanium, zirconium, molybdenum, lanthanum, cerium, neodymium, hafnium, tantalum, tungsten, magnesium, etc.). In particular, it is preferable that the OS contains aluminum, gallium, yttrium, tin, etc. in addition to indium and zinc. Alternatively, the OS may be an In-Ga oxide or an In-Zn oxide.

[0033] The OS preferably has a crystalline structure. Examples of the OS having a crystalline structure include c-axis aligned crystalline oxide semiconductor (CAAC-OS), polycrystalline oxide semiconductor, and nanocrystalline oxide semiconductor (nc-OS).

[0034] CAAC-OS has a c-axis orientation and a distorted crystal structure in which multiple nanocrystals are connected in the ab-plane direction. The distortion refers to a portion where the lattice orientation changes between a region with a uniform lattice arrangement and a region with a different uniform lattice arrangement in the region where multiple nanocrystals are connected.

[0035] Nanocrystals are basically hexagonal, but may be non-regular hexagonal. In addition, the lattice arrangement may be pentagonal or heptagonal due to the distortion. In CAAC-OS, it is difficult to confirm clear grain boundaries even near the distortion. In other words, it is found that the formation of grain boundaries is suppressed by the distortion of the lattice arrangement. This is because CAAC-OS can tolerate distortion due to the lack of dense arrangement of oxygen atoms in the ab-plane direction and the change in the bond distance between atoms due to the substitution of metal elements.

[0036] CAAC-OS also tends to have a layered crystal structure (also referred to as a layered structure) in which a layer containing indium and oxygen (hereinafter, In layer) and a layer containing element M, zinc, and oxygen (hereinafter, (M, Zn) layer) are stacked. Note that indium and element M can be substituted for each other, and when element M in an (M, Zn) layer is substituted for indium, it can also be expressed as an (In, M, Zn) layer. When indium in an In layer is substituted for element M, it can also be expressed as an (In, M) layer.

[0037] CAAC-OS is a metal oxide with high crystallinity. On the other hand, it is difficult to confirm clear crystal boundaries in CAAC-OS, so it is said that the decrease in electron mobility caused by crystal boundaries is unlikely to occur. In addition, since the crystallinity of metal oxides can be decreased by the inclusion of impurities or the generation of defects, CAAC-OS is unlikely to have impurities or defects (oxygen vacancies (V O: It is also called oxygen vacancy. ) Therefore, metal oxides with CAAC-OS have stable physical properties. Therefore, metal oxides with CAAC-OS are resistant to heat and highly reliable.

[0038] The nc-OS has periodic atomic arrangement in a microscopic region (for example, a region of 1 nm to 10 nm, particularly a region of 1 nm to 3 nm). In addition, the nc-OS does not show regularity in the crystal orientation between different nanocrystals. Therefore, no orientation is seen throughout the film. Therefore, depending on the analysis method, the nc-OS may be indistinguishable from an a-like OS or an amorphous oxide semiconductor.

[0039] Indium-gallium-zinc oxide (hereinafter referred to as IGZO), a type of metal oxide containing indium, gallium, and zinc, may have a stable structure when made into the above-mentioned nanocrystals. In particular, since IGZO tends to have difficulty in crystal growth in the atmosphere, it may be structurally more stable when made into small crystals (for example, the above-mentioned nanocrystals) rather than large crystals (here, crystals of several mm or several cm).

[0040] The OS may be an amorphous-like oxide semiconductor (a-like OS) or an amorphous oxide semiconductor.

[0041] The a-like OS is a metal oxide having a structure between the nc-OS and an amorphous oxide semiconductor. The a-like OS has a pore or low-density region. That is, the a-like OS has lower crystallinity than the nc-OS and CAAC-OS.

[0042] The OS has various structures and has different characteristics. The OS of one embodiment of the present invention may include two or more of an amorphous oxide semiconductor, a polycrystalline oxide semiconductor, an a-like OS, an nc-OS, and a CAAC-OS.

[0043] Figure 2C1 shows the circuit symbol of an NMOS transistor using OS as the channel, and Figure 2C2 shows the corresponding graph. The graph in Figure 2C2 consists of one node ON, two nodes ONsd, and one node ONg. Node ONg represents the gate, and node ONsd represents the source or drain. Node ON is an element node, and nodes ONg and ONsd are terminal nodes connected to node ON.

[0044] Fig. 2D1 shows a circuit symbol of a PMOS transistor using OS as a channel, and Fig. 2D2 shows the corresponding graph. The graph in Fig. 2D2 consists of one node OP, two nodes OPsd, and one node OPg. The node OPg represents a gate, and the node OPsd represents a source or drain. The node OP is an element node, and the nodes OPg and OPsd are terminal nodes connected to the node OP.

[0045] FIG. 2E1 shows a circuit symbol of an NMOS transistor with two gate electrodes using OS as a channel, and FIG. 2E2 shows the corresponding graph. The graph in FIG. 2E2 is composed of one node ON, two nodes ONsd, one node ONg, and one node ONbg. The node ONg represents the first gate (also called the front gate), the node ONbg represents the second gate (also called the back gate), and the node ONsd represents the source or drain. The node ON is an element node, and the nodes ONg, ONbg, and ONsd are terminal nodes connected to the node ON.

[0046] FIG. 2F1 shows the circuit symbol of an NMOS transistor that uses silicon as a channel and can apply a substrate potential, and FIG. 2F2 shows the corresponding graph. The graph in FIG. 2F2 consists of one node SN, two nodes SNsd, one node SNg, and one node SNsub. Node SNg represents the gate, node SNsub represents the substrate to which a potential can be applied, and node SNsd represents the source or drain. Node SN is an element node, and nodes SNg, SNsub, and SNsd are terminal nodes connected to node SN.

[0047] Fig. 3A1 shows a circuit symbol of an NPN bipolar transistor, and Fig. 3A2 shows a corresponding graph. The graph in Fig. 3A2 is composed of one node NB, one node NBb, one node NBe, and one node NBc. The node NBb represents the base, the node NBe represents the emitter, and the node NBc represents the collector. The node NB is an element node, and the nodes NBb, NBe, and NBc are terminal nodes connected to the node NB.

[0048] Figure 3B1 shows the circuit symbol of a PNP bipolar transistor, and Figure 3B2 shows the corresponding graph. The graph in Figure 3B2 is composed of one node PB, one node PBb, one node PBe, and one node PBc. The node PBb represents the base, the node PBe represents the emitter, and the node PBc represents the collector. The node PB is an element node, and the nodes PBb, PBe, and PBc are terminal nodes connected to the node PB.

[0049] Fig. 3C1 shows a circuit symbol of a capacitance, and Fig. 3C2 shows the corresponding graph. The graph in Fig. 3C2 consists of one node C and two nodes Ct. Node C is an element node, and node Ct is a terminal node connected to node C.

[0050] Figure 3D1 shows the circuit symbol for a resistor, and Figure 3D2 shows the corresponding graph. The graph in Figure 3D2 consists of one node R and two nodes Rt. Node R is an element node, and node Rt is a terminal node connected to node R.

[0051] Fig. 3E1 shows the circuit symbol of an inductor, and Fig. 3E2 shows the corresponding graph. The graph in Fig. 3E2 consists of one node L and two nodes Lt. Node L is an element node, and node Lt is a terminal node connected to node L.

[0052] Fig. 3F1 shows the circuit symbol of a diode, and Fig. 3F2 shows the corresponding graph. The graph in Fig. 3F2 consists of one node D, one node Da, and one node Dc. Node Da represents the anode, and node Dc represents the cathode. Node D is an element node, and nodes Da and Dc are terminal nodes connected to node D.

[0053] FIG. 3G1 shows a circuit symbol for a light-emitting diode, and FIG. 3G2 shows the corresponding graph. The graph in FIG. 3G2 consists of one node LE, one node LEa, and one node LEc. Node LEa represents the anode, and node LEc represents the cathode. Node LE is an element node, and nodes LEa and LEc are terminal nodes connected to node LE.

[0054] As described above, a graph representing a circuit element can be defined by "element nodes" and "terminal nodes." There is one element node, and there are as many terminal nodes as there are terminals that the element has. Graphs for other circuit symbols not shown in Figures 1A1 to 3G2 can be defined in a similar way.

[0055] Fig. 4A shows a circuit diagram of a static random access memory (SRAM) composed of CMOS transistors, and Fig. 4B shows the corresponding graph. Note that in Fig. 4B, some edges are shown as curved lines for ease of viewing.

[0056] The SRAM in Fig. 4A is composed of four NMOS transistors, two PMOS transistors, a line WL, two lines BL, a power supply line (Vdd), and GND. Note that an inverted signal of the other line is input to one of the two lines BL.

[0057] The graph in Figure 4B is composed of the graphs shown in Figures 1A2 and 1B2, and terminal nodes representing each wiring, such as wiring WL and wiring BL. Each terminal node shares edges with all terminal nodes with the same potential. In the graph in Figure 4B, wiring such as wiring WL and wiring BL may be provided as necessary, and may be omitted if unnecessary.

[0058] Fig. 5A shows a pixel circuit of an organic EL display, and Fig. 5B shows a corresponding graph. Note that in the graph of Fig. 5B, some edges are expressed as curved lines for ease of viewing.

[0059] The pixel circuit in Fig. 5A includes three NMOS transistors, one capacitor, one light-emitting diode (OLED), a scan line GL, a signal line SL, a monitor line ML, an anode ANL, and a cathode CTL. Each of the three NMOS transistors has a first gate and a second gate.

[0060] The graph in Fig. 5B is composed of the graphs shown in Fig. 1E2, Fig. 3C2, and Fig. 3G2, and terminal nodes representing each wiring, such as the scanning line GL and the signal line SL. Also, similar to Fig. 4B, each terminal node shares an edge with all terminal nodes at the same potential. Note that in the graph in Fig. 5B, wiring such as the scanning line GL, the signal line SL, and the monitor line ML may be provided as necessary, and may be omitted if unnecessary.

[0061] 6A is a circuit diagram of a memory cell using an OS transistor. The memory cell is a nonvolatile memory that utilizes the low off-state current of the OS transistor and is called NOSRAM (Nonvolatile Oxide Semiconductor RAM, registered trademark).

[0062] The NOSRAM in FIG. 6A is composed of an OS transistor having a back gate, two Si-PMOS transistors, a capacitance C, a wiring BL, a wiring SL, a wiring WWL, a wiring RWL, a wiring WCL, and a wiring BG.

[0063] The graph in Fig. 6B is composed of the graphs shown in Fig. 2B2, Fig. 2E2, and Fig. 3C2, and terminal nodes representing each wiring, such as wiring BL and wiring SL. Also, similar to Fig. 4B and Fig. 5B, each terminal node shares edges with all terminal nodes at the same potential. Note that in the graph in Fig. 6B, wirings such as wiring BL, wiring SL, wiring WWL, wiring RWL, wiring WCL, and wiring BG may be provided as necessary, and may be omitted if unnecessary.

[0064] In this way, even when OS transistors and Si transistors are mixed in the same circuit, the characteristics of the circuit can be represented by a graph by distinguishing each transistor on a graph.

[0065] When a circuit diagram is represented by a graph, it is not necessary to graph all the wiring. For example, only wiring showing the characteristics of the circuit may be graphed. In FIG. 4B, it is not necessary to graph all of the wiring WL, wiring BL, power supply line Vdd, and GND. Only some of these may be graphed, or they may not be graphed. In FIG. 5B, it is not necessary to graph all of the scanning line GL, signal line SL, monitor line ML, anode ANL, and cathode CTL. Only some of these may be graphed, or they may not be graphed. In FIG. 6B, it is not necessary to graph all of the wiring BL, wiring SL, wiring WWL, wiring RWL, wiring WCL, and wiring BG. Only some of these may be graphed, or they may not be graphed.

[0066] The method of expressing a circuit diagram in a graph has been described above. Next, a search device and a search system that use the above-described graph, which are one embodiment of the present invention, will be described.

[0067] The terminal 10 shown in Figs. 7A, 7B, and 8A is an example of a search device having a function of searching for a circuit diagram similar to a circuit diagram input by a user from among circuit diagrams registered in a database, and displaying the result. Fig. 9 is a block diagram showing an example of the configuration of the terminal 10. As shown in Fig. 9, the terminal 10 has a display unit 101, an input unit 103, a processing unit 105, a calculation unit 107, a storage unit 109, and an external connection circuit 111. The display unit 101 is preferably a touch panel display. The calculation unit 107 may also function as the processing unit 105. Figs. 8B and 8C show examples of circuit diagrams displayed on the display unit 101 of the terminal 10.

[0068] In the database, a plurality of circuit diagrams and graphs corresponding to each circuit diagram are registered in advance as circuit diagram information. In addition, text explaining the circuit diagram may be registered in the database. The database may be stored in a storage unit 109 built into the terminal 10, or in an external storage device connected to the terminal 10. In addition, the database may be stored in a server 50 connected to the terminal 10 via a network, as shown in FIG. 10. The terminal 10 can be connected to the network using an external connection circuit 111.

[0069] Here, the network includes a local area network (LAN) and the Internet. The network can use either one or both of wired and wireless communication. When wireless communication is used in the network, various communication means can be used, such as short-range communication means such as Wi-Fi (registered trademark) and Bluetooth (registered trademark), communication means conforming to the third generation mobile communication system (3G), communication means conforming to LTE (sometimes called 3.9G), communication means conforming to the fourth generation mobile communication system (4G), or communication means conforming to the fifth generation mobile communication system (5G).

[0070] Although an example of a tablet computer is shown as the terminal 10, the present embodiment is not limited to this. FIG. 10 shows an example in which a desktop computer is used as the terminal 30 and a laptop computer is used as the terminal 40. The terminal 30 has a main body 301, a display unit 302, and an input unit 303. The terminal 40 has a main body 401, a display unit 402, and an input unit 403. It is preferable that the terminal 30 and the terminal 40 have a processing unit, a processing unit, a storage unit, and an external connection circuit corresponding to the processing unit 105, the processing unit 107, the storage unit 109, and the external connection circuit 111 of the terminal 10, respectively. The server 50 has a rack 501 and a plurality of rack-mounted computers 502. A database is stored in a storage device provided in the computer 502. The terminal 30 and the terminal 40 have the same functions as the terminal 10, and are connected to the server 50 via a network. The terminal 10 , the terminal 30 , and the terminal 40 can access a database stored in the computer 502 of the server 50 .

[0071] 7A and 7B show an example in which a user inputs a circuit diagram to be searched for into terminal 10. Areas 11 and 12 are displayed on display unit 101 of terminal 10, and the user creates the circuit diagram to be searched for in area 11. Areas 13 and 14 are placed above and below areas 11 and 12, respectively. Circuit elements that make up the circuit diagram are placed in areas 13 and 14. Terminal 10 is provided with input means such as a touch panel display, keyboard, and mouse, and the user can create the desired circuit diagram by dragging and dropping each circuit element into area 11 (FIG. 7A).

[0072] When the user finishes entering the circuit diagram in area 11, a graph corresponding to the circuit diagram entered in area 11 is created by the processing unit 105 built into the terminal 10 or the server 50 connected to the terminal 10 via the network. Note that the graph may be created by the arithmetic unit 107. The created graph is displayed in area 12. Also, when the user touches any one of the circuit elements in area 11, in area 12, the colors of the nodes and edges of the graph corresponding to the element touched by the user change (Fig. 7B). Thus, the user can confirm the correspondence between the circuit diagram created by himself / herself and the graph generated by the terminal 10.

[0073] Note that the terminal 10 can handle a netlist as input data instead of the circuit diagram. A netlist is a text file in which the connection information of circuit elements is described. The terminal 10 can convert the netlist into a graph.

[0074] Also, the terminal 10 can directly handle the graph as input data.

[0075] Also, the terminal 10 can handle the image data on which the circuit diagram is drawn as input data. The terminal 10 can read the connection information of the circuit elements from the image data and generate a graph.

[0076] Next, the similarity between the graph displayed in area 12 and the graph registered in the database is calculated. For calculating the similarity between graphs, the label histogram kernel method, the random walk kernel method, the WL (Weisfeiler-Lehman) kernel method, the GNN (Graph Neural Network), etc. may be used. In particular, the method using the WL kernel method is preferable because of its high accuracy and short calculation time.

[0077] <Explanation of WL kernel> Here, the method of the WL kernel, which is one of the methods for calculating the similarity between graphs, will be explained using a simple circuit.

[0078] A circuit G shown in Fig. 11A1 is a circuit in which an NMOS transistor and a PMOS transistor are connected in series. A circuit G' shown in Fig. 11A2 is a circuit in which an NMOS transistor and a PMOS transistor are connected in parallel. A method for calculating the similarity between these two circuits will be described below.

[0079] First, the circuits G and G' are represented as graphs using the method described above. FIG. 11B1 is a graph representation of the circuit G, and FIG. 11B2 is a graph representation of the circuit G'. The nodes that make up these graphs are assigned labels (numbers) according to the type of node. In FIG. 11B1 and FIG. 11B2, the numbers in parentheses correspond to the labels.

[0080] Next, we count the number of labels in each circuit and generate a feature vector for each circuit. φ(G) in Equation 1 represents the feature vector of circuit G, and φ(G′) ​​in Equation 2 represents the feature vector of circuit G′.

[0081] φ(G )=(1, 1, 2, 1, 1, 2) (Equation 1)

[0082] φ(G′)=(1, 1, 2, 1, 1, 2) (Equation 2)

[0083] For example, the right side of formula 1 means, from the left, one label "1", one label "2", two labels "3", one label "4", one label "5", and two labels "6". The same is true for formula 2.

[0084] Next, count the labels of adjacent nodes (Fig. 11C1, Fig. 11C2). For example, "1.233" in Fig. 11C1 means that the adjacent nodes of label "1" have one label "2" and two labels "3". The same applies to other nodes.

[0085] Next, new labels are assigned to the numerical values ​​given in FIGS. 11C1 and 11C2 (see FIGS. 11D1 and 11D2).

[0086] Next, the labels assigned in Figures 11D1 and 11D2 are reassigned to the circuits G and G' (see Figures 11E1 and 11E2). Note that the series of operations shown in Figures 11C1, 11D1, and 11E1 (or Figures 11C2, 11D2, and 11E2) is called relabeling.

[0087] Next, we count the number of labels in the relabeled circuits G and G', and recalculate the feature vectors of each circuit. Equation 3 represents the feature vector of circuit G, and Equation 4 represents the feature vector of circuit G'.

[0088] φ(G )=(1, 1, 2, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1) (Equation 3)

[0089] φ(G′)=(1, 1, 2, 1, 1, 2, 1, 1, 0, 2, 1, 1, 0, 2) (Equation 4)

[0090] For example, on the right side of Equation 3, the first six terms from the left are the same as Equation (1), but the following eight terms are added by relabeling. Equation 4 is similar.

[0091] By repeating the above relabeling process a certain number of times, we can obtain feature vectors φ(G) and φ(G′) ​​that more accurately represent the characteristics of the graph. Finally, we use the following equation 5 to obtain K WL (called the Gaussian kernel, or RBF kernel) is used to calculate the similarity between circuit G and circuit G'.

[0092]

number

[0093] The above is the method for calculating the similarity between graphs using the WL kernel method.

[0094] The calculation of the similarity may be performed by a calculation unit 107 such as a CPU or GPU built into the terminal 10, or may be performed by a calculation means such as a CPU or GPU built into a server 50 connected to the terminal 10 via a network.

[0095] 8A shows an example of search results displayed on display unit 101 of terminal 10. Area 16 on display unit 101 displays a circuit diagram of the search query entered by the user, and area 18 displays a list of search results. Numerical values ​​19 in area 18 indicate the degree of similarity. When the user touches one of the circuit diagrams displayed in area 18, an enlarged view of that circuit diagram is displayed in area 17. In this way, the user can check the search results.

[0096] For example, the two circuit diagrams shown in Figures 8B and 8C both represent SRAMs and are equivalent as circuits. However, if the search system cannot understand the circuit connection information, it will recognize these two circuits as different drawings. On the other hand, if the above method is used, Figures 8B and 8C can be replaced with the same graph, so the search system of the present invention can recognize these two as the same circuit diagram.

[0097] Additionally, text explaining the displayed circuit diagram can be displayed together in the area 18. The user can compare the input text information with the circuit diagram and text displayed on the terminal 10 while referring to the obtained similarity.

[0098] FIG. 12 is a flowchart illustrating one embodiment of a method for searching circuit diagrams and text explaining the circuit diagrams of the present invention.

[0099] First, circuit diagram information is input to the terminal 10 (S101). The user inputs circuit elements to the terminal 10 using the input unit 103. In addition, a circuit diagram can be created using a plurality of circuit elements. Here, the input circuit elements and the created circuit diagram are referred to as circuit diagram information.

[0100] Next, processing unit 105 generates a graph from the input circuit diagram information (S102). Here, the generated graph is referred to as a first graph for convenience. Processing unit 105 preferably has a second storage unit that temporarily stores the input circuit diagram information, and a second calculation unit for generating the first graph. Meanwhile, the input circuit diagram information may be temporarily stored in storage unit 109. Also, the first graph may be generated by calculation unit 107.

[0101] Next, the calculation unit 107 calculates the similarity between the first graph and multiple graphs registered in the database (S103). Here, the graph registered in the database is referred to as the second graph for convenience. The calculation unit 107 calculates the similarity between the first graph stored in the processing unit 105 or the storage unit 109 and the second graph using a label histogram kernel method, a random walk kernel method, a WL kernel method, a GNN, or the like. The similarity is calculated for each of the multiple second graphs. The larger the similarity, the more similar the second graph is to the first graph.

[0102] If the database is stored in a server 50 that is connected to the terminal 10 via a network, the terminal 10 can connect to the network using the external connection circuit 111 and access the database.

[0103] The above calculation may also be performed by the server 50. In this case, data of the first graph is transmitted to the server 50 via the external connection circuit 111 and the network, and the server 50 calculates the similarity between the first graph and the second graph. The calculation result is transmitted to the terminal 10 via the network and the external connection circuit 111.

[0104] Next, the calculation results, i.e., the search results, are displayed on the display unit 101 (S104). As the calculation results, the similarities can be displayed in descending order. In addition, one or more of a graph, a circuit diagram, and a description of the circuit diagram, which correspond to the similarity, may be displayed at the same time as the similarity is displayed. Furthermore, within a certain range of similarity, the calculation results may be displayed in ascending or descending order of the creation date of the circuit diagram and the description of the circuit diagram.

[0105] Based on the calculation results, the user can search for the desired circuit diagram or a circuit diagram similar to the desired circuit diagram from multiple circuit diagrams registered in the database.

[0106] As described above, one embodiment of the present invention can provide a search method capable of searching for a circuit diagram and a sentence describing the circuit diagram. Another embodiment of the present invention can provide a search device capable of searching for a circuit diagram and a sentence describing the circuit diagram. Another embodiment of the present invention can provide a search system capable of searching for a circuit diagram and a sentence describing the circuit diagram.

[0107] The configurations, structures, methods, and the like described in this embodiment mode can be used in appropriate combination with the configurations, structures, methods, and the like described in other embodiment modes and examples.

[0108] (Embodiment 2) In this embodiment, a search system according to one embodiment of the present invention, which is different from the above embodiment, will be described with reference to Fig. 13 and Fig. 14. The search system according to this embodiment can search for text explaining a circuit diagram or the circuit diagram.

[0109] In this embodiment, the text information is graphed, and compared with the graph information registered in the database to calculate the similarity. The text information includes circuit diagram information, i.e., circuit elements and information expressing their connection relationships in text. Specific examples of text information include documents such as papers and patent specifications. In particular, in patent specifications, the form for carrying out the invention, examples, claims described in the claims, etc., are text information.

[0110] Text information is input to the terminal 10 as a search query (FIG. 13, S201). For example, as shown in FIG. 14A, a keyboard or the like can be displayed in area 15 of the display unit 101 of the terminal 10, and the text information can be input. The input text information is displayed in area 11. Alternatively, the text information may be input by copying and pasting electronic data of a sentence prepared by the user.

[0111] The terminal 10, or the server 50 connected to the terminal 10 via a network, extracts circuit elements from the text information input to the terminal 10. Next, an element node is identified from the name of the circuit element (S202). When the extraction of the circuit elements and the identification of the element nodes are performed by the terminal 10, these processes can be performed by the processing unit 105.

[0112] Here, the circuit elements include transistors, capacitors, resistors, inductors, diodes, and light-emitting diodes.

[0113] Next, the terminal 10 or the server 50 identifies the terminal nodes of the circuit element (S203). The terminal nodes can be identified based on text information input to the terminal 10 or information registered in a database of the terminal 10 or the server 50.

[0114] Next, the connection relationship of the terminal nodes is identified from the text information input to the terminal 10 (S204).

[0115] An example sentence is shown below. When the text information "has a transistor and a capacitor, and the gate of the transistor is connected to a first terminal of the capacitor" is input to the terminal 10, the terminal 10 or the server 50 identifies the transistor and the capacitor as element nodes. The database held by the terminal 10 or the server 50 registers information that the transistor has terminals corresponding to the gate, source, and drain, respectively, and information that the capacitor has two terminals. Therefore, the terminal 10 or the server 50 identifies at least three terminal nodes for the element node of the transistor and two terminal nodes for the element node of the capacitor.

[0116] Next, from the text information that the gate of the transistor is connected to the first terminal of the capacitance, a connection relationship can be specified in which the terminal node corresponding to the gate of the transistor is connected to one of the terminal nodes of the capacitance.

[0117] By the above method, the terminal 10 or the server 50 identifies the element nodes, terminal nodes, and the connection relationships between the terminal nodes from the text information.

[0118] Next, the circuit diagram information is graphed based on the obtained element nodes, terminal nodes, and the connection relationships of each terminal node, to generate a first graph (S205). The obtained first graph can be displayed in area 12 of display unit 101, as shown in FIG. 14B.

[0119] Once the circuit diagram information has been graphed, the similarity between the first graph and the second graph stored in the database can be calculated (S206) as in the previous embodiment, and the calculation result can be displayed on the terminal 10 (S207).

[0120] The database may also store graph data, text corresponding to the graph data, and a circuit diagram corresponding to the graph data. When the graph similarity is calculated as described above and displayed on the terminal 10, text corresponding to the similarity and / or a circuit diagram may also be displayed. The user may appropriately select a method for displaying the graph similarity, text, and circuit diagram.

[0121] In other words, a user can input text information and search for similar sentences or circuit diagrams.

[0122] The user can compare the input text information with the sentences and circuit diagrams displayed on the terminal 10 while referring to the obtained similarity.

[0123] As described above, one embodiment of the present invention can provide a search method capable of searching for a circuit diagram and a sentence describing the circuit diagram. Another embodiment of the present invention can provide a search device capable of searching for a circuit diagram and a sentence describing the circuit diagram. Another embodiment of the present invention can provide a search system capable of searching for a circuit diagram and a sentence describing the circuit diagram.

[0124] The configurations, structures, methods, and the like described in this embodiment mode can be used in appropriate combination with the configurations, structures, methods, and the like described in other embodiment modes and examples. EXAMPLES

[0125] In this example, an example will be described in which the similarity between circuit diagrams is actually calculated using the method described in embodiment 1. Specifically, the circuit diagrams are represented as graphs, and the similarity between the graphs is calculated using the WL (Weisfeiler-Lehman) kernel method.

[0126] <Example of similarity calculation> Figure 15 shows the similarity (K WL15 is an example of a circuit diagram 1101 compared with a circuit diagram 1102, a circuit diagram 1103, and a circuit diagram 1104.

[0127] Circuit diagram 1101 is a circuit diagram in which CMOS inverters are connected in a loop. Circuit diagram 1102 is a circuit diagram in which two CMOS inverters are connected in series. Circuit diagram 1103 is a circuit diagram of an SRAM. Circuit diagram 1104 is a circuit diagram of a NAND gate.

[0128] Figures 16A to 16D are graphs showing the circuit diagrams shown in Figure 15. Figure 16A shows a graph of circuit diagram 1101, Figure 16B shows a graph of circuit diagram 1102, Figure 16C shows a graph of circuit diagram 1103, and Figure 16D shows a graph of circuit diagram 1104.

[0129] Let us return to the explanation of FIG. 15. WL is the Gaussian kernel expressed by Equation 5, which represents the similarity between two circuit diagrams. K WL The closer the value of K is to 1, the more similar the two circuit diagrams are. WL In the calculation, γ in Equation 5 was set to 0.001, and the number of iterations (number of relabelings) was set to 3.

[0130] The above relabeling calculation, and K WL The calculation of may be performed on the terminal 10 or on the server.

[0131] 15, it can be seen that the similarity to circuit diagram 1101 is highest for circuit diagram 1102, followed by circuit diagram 1104 and circuit diagram 1103. In this way, it was confirmed that it is possible to calculate the similarity between circuit diagrams by representing the circuit diagrams as graphs.

[0132] The configurations, structures, methods, and the like shown in this embodiment can be used in appropriate combination with the configurations, structures, methods, and the like shown in other embodiment modes and embodiments. [Explanation of symbols]

[0133] 10: terminal, 11: area, 12: area, 13: area, 14: area, 15: area, 16: area, 17: area, 18: area, 19: numerical value, 30: terminal, 40: terminal, 50: server, 101: display unit, 103: input unit, 105: processing unit, 107: calculation unit, 109: storage unit, 111: external connection circuit, 301: main body, 302: display unit, 303: input unit, 401: main body, 402: display unit, 403: input unit, 501: rack, 502: calculator, 1101: circuit diagram, 1102: circuit diagram, 1103: circuit diagram, 1104: circuit diagram

Claims

[Claim 1] A display unit; a processing unit having a function of converting the first circuit diagram information into a first graph; a calculation means for calculating a similarity between the first graph and a second graph based on second circuit diagram information registered in a database; having The display unit has a function as a touch panel display, the display unit has a function of allowing a user to create a circuit diagram corresponding to the first circuit diagram information by touching and moving a plurality of elements displayed on the display unit; the display unit has a function of displaying the circuit diagram and the first graph corresponding to the circuit diagram side by side, The display unit is a search device having a function that allows the user to visually confirm, when the user touches any one of the multiple elements of the circuit diagram displayed on the display unit, the nodes and edges of the first graph displayed on the display unit that correspond to the one element.

Citation Information

Patent Citations

  • Connection verifying device for electronic circuit

    JP1992060872A

  • Circuit diagram editor

    JP1992239973A

  • Graph representation transforming method and its device, and automatic rearranging method and its device

    JP2000200298A

  • Drawing retrieval support device and method for retrieving drawing

    JP2004030122A

  • Similar circuit retrieval device and its method

    JP2007128383A