Schematic diagram conversion based on machine learning
By analyzing and classifying the design blocks and wire lines in the schematic diagram of the machine learning-based computing system, the problem of data migration between electronic design automation tools is solved, and efficient and accurate design data conversion is achieved.
Patent Information
- Application Number
- CN202280102150.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-28
- Publication Date
- 2025-07-25
AI Technical Summary
Existing electronic design automation tools have difficulty, time-consuming and error-prone problems in the design data migration process, especially when converting between tools supported by different suppliers, the manual conversion schematic shows that the native format of electronic design automation tools is inefficient.
Using a machine learning-based computing system, supervising the machine learning classification algorithm to analyze the design blocks and wire lines in the schematic diagram, generate a system design that is natively compatible with downstream electronic design automation tools, and use analytical systems, positioning systems, machine learning-based classification systems and correction feedback systems to achieve automated conversion.
It improves the efficiency and accuracy of electronic design data conversion, reduces manual intervention, and enhances the transferability and consistency of design data among different tools.
Smart Images

Figure CN120380474A_ABST
Abstract
Description
Technical Field
[0001] This application generally relates to electronic design automation, and more particularly, to the conversion of a schematic diagram based on machine learning. Background Art
[0002] The design of an electronic system (such as a wire harness implemented in a vehicle, an aircraft, a ship, an electrical appliance, or other systems with distributed electronic devices) may include many different design periods or stages at different levels of abstraction. For example, some of these design stages may include a requirements stage, a functional stage, a logic stage, a physical or wiring stage, a component stage, a form board or manufacturing stage, and a documentation stage.
[0003] Designers of these electronic systems often utilize software-based electronic design automation tools to traverse the various design stages during the development and implementation of a wire harness design. When designers switch between electronic design automation tools supported by different vendors, the migration of design data between the electronic design automation tools can be a difficult, time-consuming, and error-prone task. For example, many existing electronic design automation tools export design data as schematic diagrams that typically lack metadata, and these schematic diagrams often have to be manually converted into the native format of the electronic design automation tool for importing the design data. There have been some attempts to alleviate the burden of the manual conversion process, such as by using heuristic-based conversion software. Since heuristic-based conversion software typically corresponds to a specific type of schematic diagram with a certain style, abstraction, and / or drafter preference, it becomes impractical to develop many different heuristic-based conversion software programs that can handle the conversion of a large number of different types of schematic diagrams for importing them into electronic design automation tools. Summary of the Invention
[0004] This application discloses a computing system for parsing a schematic diagram of an illustrated electronic system to identify design blocks in the schematic diagram and wire lines coupled to the design blocks. The computing system implements at least one supervised machine learning classification algorithm that can classify the design blocks and the wire lines. The classification of the design blocks can correspond to one or more symbols representing components of the electronic system. The classification of the wire lines can correspond to one or more links representing the connectivity of at least one of the components of the electronic system. The computing system can generate a system design describing the electronic system based at least in part on the symbols representing the components of the electronic system classified to the design blocks and the links representing the connectivity of at least one of the components of the electronic system classified to the wire lines. Embodiments will be described in more detail below. Brief Description of the Drawings
[0005] Figure 1 and Figure 2Illustrates an example of the type of computer system that can be used to implement various embodiments.
[0006] Figure 3A and Figure 3B Illustrates an example of a platform design system according to various embodiments.
[0007] Figure 4 Illustrates an example design transformation system having a machine learning-based principle transformation system according to various embodiments.
[0008] Figure 5 Illustrates an example flowchart of the principle transformation based on the machine learning-based principle diagram according to various embodiments.
[0009] Figure 6 Illustrates an example principle transformation system having machine learning-based classification according to various embodiments. Detailed Description
[0010] Exemplary Operating Environment
[0011] Various examples of the present invention can be implemented by executing software instructions by a computing device (such as a programmable computer). Thus, Figure 1 An illustrative example of a computing device 101 is shown. As shown in this figure, the computing device 101 includes a computing unit 103 with a processing unit 105 and a system memory 107. The processing unit 105 can be any type of programmable electronic device for executing software instructions, but will typically be a microprocessor. The system memory 107 can include a read-only memory (ROM) 109 and a random access memory (RAM) 111. Those of ordinary skill in the art will understand that both the read-only memory (ROM) 109 and the random access memory (RAM) 111 can store software instructions for execution by the processing unit 105.
[0012] The processing unit 105 and the system memory 107 are directly or indirectly connected to one or more peripheral devices via the bus 113 or an alternative communication structure. For example, the processing unit 105 or the system memory 107 may be directly or indirectly connected to one or more additional memory storage devices, such as a "hard" disk drive 115, a removable disk drive 117, an optical disk drive 119, or a flash memory card 121. The processing unit 105 and the system memory 107 may also be directly or indirectly connected to one or more input devices 123 and one or more output devices 125. The input devices 123 may include, for example, a keyboard, a pointing device (such as a mouse, a touchpad, a stylus, a trackball, or a joystick), a scanner, a camera, and a microphone. The output devices 125 may include, for example, a monitoring display, a printer, and a speaker. In various examples of the computer 101, one or more of the peripheral devices 115-125 may be housed internally with the computing unit 103. Alternatively, one or more of the peripheral devices 115-125 may be external to the housing of the computing unit 103 and connected to the bus 113 through, for example, a Universal Serial Bus (USB) connection.
[0013] In some embodiments, the computing unit 103 may be directly or indirectly connected to one or more network interfaces 127 for communicating with other devices that make up a network. The network interface 127 converts data and control signals from the computing unit 103 into network messages according to one or more communication protocols (such as the Transmission Control Protocol (TCP) and the Internet Protocol (IP)). In addition, the interface 127 may employ any suitable connection agent (or combination of agents) to connect to the network, such as including a wireless transceiver, a modem, or an Ethernet connection. Such network interfaces and protocols are well known in the art and will not be discussed in detail here.
[0014] It should be understood that the computer 101 is illustrated only as an example and is not intended to be limiting. Various embodiments of the present invention may be implemented using one or more computing devices that include Figure 1 the components of the computer 101 illustrated in Figure 1 only a subset of the components illustrated, or include an alternative combination of components (including Figure 1 components not shown in
[0015] In some embodiments of the present invention, the processor unit 105 may have more than one processor core. Thus, Figure 2 FIG. illustrates an example of a multi-core processor unit 105 that can be used with various embodiments of the present invention. As can be seen from this figure, the processor unit 105 includes a plurality of processor cores 201. Each processor core 201 includes a computing engine 203 and a memory cache 205. As is known to those of ordinary skill in the art, a computing engine contains logic devices for performing various computing functions (such as fetching software instructions and then performing the actions specified in the fetched instructions). These actions can include, for example, adding, subtracting, multiplying, and comparing numbers, performing logical operations (such as AND, OR, NOR, and XOR), and retrieving data. Then, each computing engine 203 can use its corresponding memory cache 205 to quickly store and retrieve data and / or instructions for execution.
[0016] Each processor core 201 is connected to an interconnect 207. The specific construction of the interconnect 207 can vary depending on the architecture of the processor unit 201. For some processor cores 201, such as the Cell microprocessor created by Sony Corporation, Toshiba Corporation, and IBM Corporation, the interconnect 207 can be implemented as an interconnect bus. However, for other processor units 201, such as the Opteron TM and Athlon TM dual-core processors that can be purchased from Advanced Micro Devices in Sunnyvale, California, the interconnect 207 can be implemented as a system request interface device. In any case, the processor cores 201 communicate with the input / output interface 209 and the memory controller 211 through the interconnect 207. The input / output interface 209 provides a communication interface between the processor unit 201 and the bus 113. Similarly, the memory controller 211 controls the exchange of information between the processor unit 201 and the system memory 107. In some embodiments of the present invention, the processor unit 201 may include additional components, such as a high-level cache memory shared by the processor cores 201.
[0017] It should also be understood that Figure 1 and Figure 2 the description of the computer network illustrated in is provided only as an example and is not intended to impose any limitations on the scope of use or functionality of alternative embodiments of the present invention.
[0018] Illustrative platform design system
[0019] Figure 3A and Figure 3B FIGS. illustrate examples of a platform design system 300 according to various embodiments. Referring to Figure 3A and Figure 3B, the platform design system 300 may include a set of one or more tools to develop at least a part of an electronic system, such as a wire harness. The development of the electronic system may be carried out using a platform design process that includes multiple design epochs, each design epoch representing the electronic system at a different level of abstraction.
[0020] The platform design process may initially describe the electronic system as a set of requirements 301, such as aspects, goals, high-level operations, etc. of the electronic system. The requirements 301 may be transformed into a functional design 302 that can functionally describe the electronic system. The platform design process continues by generating a logical design 303 for the electronic system. The logical design 303 may describe the connectivity of the electronic system and the devices capable of implementing the functions of the electronic system, such as specified as a netlist, etc. Then, the platform design process may include a physical design 304, which in the wire harness example may describe the wires and components that physically implement the logical design 303. Then, the platform design process may include a manufacturing design 305, which in the wire harness example may describe specific harness components, such as mechanical structures, connectors, wire splices, etc., and manufacturing aids, such as forming plates, manufacturing tools, etc. The platform design process may include documentation 306 for describing manufacturing instructions, service or diagnostic information, outage information, etc. for the electronic system.
[0021] The platform design system 300 may include a logical design tool 310 for generating a logical design 303 of the electronic system, for example, at least in part based on the requirements 301 and the functional design 302 of the electronic system. In some embodiments, the logical design 303 may be a netlist of the electronic system, which may describe the connectivity of the electronic system and the devices capable of implementing its functions. The logical design tool 310 may receive the requirements 301 and the functional design 302 from a device external to the platform design system 300, or in some embodiments, the platform design system 300 may include other tools (not shown) capable of constructing or generating the requirements 301 and the functional design 302 for the electronic system.
[0022] The platform design system 300 may include a physical design tool 320 for generating a physical design 304 at least in part based on the logical design 303. In the wire harness example, the physical design 304 may describe the wires and components that physically implement the logical design 303.
[0023] The platform design system 300 may include a manufacturing design tool 330 for generating a manufacturing design 305 at least in part based on the physical design 304. In the wire harness example, the manufacturing design 305 may describe specific harness components, such as mechanical structures, connectors, wire splices, etc., and manufacturing aids, such as forming plates, manufacturing tools, etc.
[0024] The platform design system 300 may include a document design tool 340 to generate a document 306 based at least in part on a manufacturing design 305. In a wire harness example, the document 306 may describe manufacturing instructions, service or diagnostic information, outage information, etc. of an electronic system. In some embodiments, the document design tool 340 may present the document 306 including interactive technical documents via an interactive electronic technical publication (IETP), and the document 306 may support troubleshooting diagnosis and maintenance of the electronic system.
[0025] The platform design system 300 may receive one or more schematics 307 that describe components as electrical diagrams or electronic diagrams. The schematics 307 may correspond to an abstraction level associated with a logic design 303, a physical design 304, a manufacturing design 305, etc. The platform design system 300 may include a machine learning-based conversion system to convert the schematics 307 into the native format of the platform design system 300 at least in part, such as the native format of a logic design tool 310, a physical design tool 320, a manufacturing design tool 330, a document design tool 340, etc. Embodiments of the machine learning-based conversion system will be described in more detail below.
[0026] Conversion of Schematics Based on Machine Learning
[0027] Figure 4 An example of a design conversion system 400 with a machine learning-based schematic conversion system 600 according to various embodiments is illustrated. Figure 5 An example of a flowchart of machine learning-based schematic conversion according to various embodiments is illustrated. Refer to Figure 4 and Figure 5 , the design conversion system 400 may receive a schematic 401, which schematically illustrates, for example, an electronic system (such as a wire harness, a power system, a controller system, a drive system, a sensor system, etc.), a mechanical system, a software system, etc. The design conversion system 400 may convert the schematic 401 into a system design 404 in a format that is natively compatible with downstream development tools (such as electronic design automation tools). In some embodiments, the schematic 401 may include one or more images providing a graphical description of the electronic system, and may also include text markers. The schematic 401 may be specified in a portable document format (PDF), a scalable vector graphics (SVG) format, a drawing exchange format (DXF), a portable network graphics (PNG) format, etc.
[0028] The design conversion system 400 may include a parsing system 410 that, in block 501 of Figure 5 may parse, for example, a schematic diagram 401 of an illustrated electronic system to identify design blocks in the schematic diagram 401 and wire traces coupled to the design blocks. The parsing system 410 may scan the schematic diagram 401 to identify a plurality of graphical shapes and determine whether the graphical shapes correspond to design blocks in the schematic diagram 401. The parsing system 410 may also scan the schematic diagram 401 to identify traces coupled to at least one of the graphical shapes in the schematic diagram 401 and determine whether these traces correspond to wire traces in the schematic diagram 401. In some embodiments, the parsing system 410 may also identify text located near at least one of the graphical shapes and traces, which may correspond to labels of design blocks or wire traces.
[0029] The design conversion system 400 may include a principle conversion system 600 for converting design blocks parsed from the schematic diagram 401 into symbols representing components of the electronic system and converting wire traces parsed from the schematic diagram 401 into links representing the connectivity of the electronic system. The principle conversion system 600 may utilize the symbols and links to generate a system design 404 in a format that is natively compatible with downstream electronic design automation tools.
[0030] The principle conversion system 600 may include a positioning system 610 for characterizing design blocks and wire trace features parsed from the schematic diagram 401. In some embodiments, the positioning system 610 may utilize the schematic diagram 401 to identify the coordinates of design blocks and wire traces in the schematic diagram 401. The positioning system 610 may also associate text in the schematic diagram 401 with design blocks and / or wire traces as labels, for example, based on the proximity of the text to the design blocks and wire traces.
[0031] The principle conversion system 600 may include a machine learning-based classification system 620 that, in block 502 of Figure 5 may classify design blocks as corresponding to one or more symbols representing components of the electronic system. The machine learning-based classification system 620 may implement at least one machine learning algorithm (e.g., a supervised neural network model trained with design block-symbol pairs) to associate design blocks with a set of one or more symbols. Each associated symbol corresponds to the classification of the design block corresponding to the symbol, e.g., the design block and the symbol represent common components of the electronic system. In some embodiments, the machine learning algorithm may set a confidence level for the classification of the design block to the symbols in the set.
[0032] In Figure 5In block 503, a machine learning-based classification system 620 can classify wire lines into one or more links corresponding to the connectivity of at least one of the components representing the electronic system. The machine learning-based classification system 620 can implement at least one machine learning algorithm (e.g., a supervised neural network model trained with wire line-link pairs) to associate the wire lines with a set of one or more links. Each associated link corresponds to the classification of the wire line corresponding to the line. For example, the wire line and the link represent common connectivity in the electronic system. In some embodiments, the machine learning algorithm can set a confidence level for classifying the wire line into the links in the set.
[0033] The principle transformation system 600 can include a correction feedback system 630, which can generate a display rendering 402 in Figure 5 block 504. The display rendering includes symbols corresponding to the classification of the design blocks and links corresponding to the classification of the wire lines. In some embodiments, the display rendering 402 can also include the display of the design blocks and wire lines used by the machine learning-based classification system 620 to identify the symbols and links respectively. The correction feedback system 630 can include a confidence level associated with the classification of the design blocks and wire lines in the display rendering 402, and / or sort the presentation of the symbols and / or links in the display rendering 402 based on the confidence level associated with the classification of the design blocks and wire lines. In some embodiments, the correction feedback system 630 can output the display rendering 402 for manual review of the classification of the design blocks and wire lines. The correction feedback system 630 can receive user input 403 based on the display rendering 402.
[0034] Figure 5 In block 505, the correction feedback system 630 can select one of the symbols for each design block and one of the links for each wire line based on the user input 403. In some embodiments, the user input 403 can identify which of the classified symbols in the display rendering 402 is recognized by the user as corresponding to the design block, and / or identify which of the classified links in the display rendering 402 is recognized by the user as corresponding to the wire line. The correction feedback system 630 can utilize the user input 403 to finally classify each design block and each wire line in the schematic 401 into the corresponding symbols and links respectively.
[0035] In some embodiments, the calibration feedback system 630 can utilize the user input 403 to generate additional training data for the machine learning-based classification system 620. In some examples, the calibration feedback system 630 can construct additional design block-symbol pairs corresponding to the final classification of design blocks to specific symbols based on the user input 403. The calibration feedback system 630 can also construct additional wire path-link pairs corresponding to the final classification of wire paths to specific links based on the user input 403. The calibration feedback system 630 can provide the design block-symbol pairs and / or the wire path-link pairs to the machine learning-based classification system 620 for retraining one or more machine learning algorithms utilized to classify design blocks and / or wire paths.
[0036] Figure 5 The principle transformation system 600 in block 506 of can transform the schematic diagram into a system design 404 describing the electronic system based on the selected symbols and the selected links. In some embodiments, the principle transformation system 600 can utilize the coordinates of the design blocks identified by the positioning system 610 to set the selected symbols in the system design 404. The principle transformation system 600 can set the connectivity in the system design 404, for example, by applying connections to the selected symbols based on the selected links and the associated couplings of the wire paths in the schematic diagram 401 to the design blocks. Refer to Figure 6 Embodiments of the principle transformation system 600 will be described in more detail.
[0037] Figure 6 Illustrates an example of a principle transformation system with machine learning-based classification according to various embodiments. Refer to Figure 6 , the principle transformation system 600 can receive a parsed schematic diagram 601 similar to Figure 4 the schematic diagram 401 in, which can be specified in Portable Document Format (PDF), Scalable Vector Graphics (SVG) format, Drawing Exchange Format (DXF), Portable Network Graphics (PNG) format, etc. The parsed schematic diagram 601 can include design blocks corresponding to graphic shapes and include wire paths coupled to the design blocks. In some embodiments, the parsed schematic diagram 601 can include text that can correspond to labels of design blocks or wire paths.
[0038] The principle conversion system 600 may include a positioning system 610 for characterizing design blocks and wire traces parsed from the parsed schematic diagram 601. The positioning system 610 may include a symbol locator 611 and a link locator 612 to separately characterize the design blocks and wire traces, and output the characterized blocks 613 and the characterized links 614 respectively. The symbol locator 611 may use the design blocks to identify the coordinates of the design blocks in the parsed schematic diagram 601. The symbol locator 611 may also associate the text in the parsed schematic diagram 601 with the design blocks as labels, for example, based on the proximity of the text to the design blocks. The symbol locator 611 may annotate the design blocks with coordinates and any optional associated text labels to generate the characterized blocks 613.
[0039] The link locator 612 may use the wire traces to identify the coordinates of the wire traces in the parsed schematic diagram 601. The link locator 612 may also associate the text in the parsed schematic diagram 601 with the wire traces as labels, for example, based on the proximity of the text to the wire traces. The link locator 612 may annotate the wire traces with coordinates and any optional associated text labels to generate the characterized traces 614.
[0040] The principle conversion system 600 may include a machine learning-based classification system 620 for classifying the characterized blocks 613 into one or more symbols corresponding to components representing an electronic system, and classifying the characterized traces 614 into one or more links corresponding to the connectivity represented in the electronic system. The machine learning-based classification system 620 may include a symbol classifier 621 and a link classifier 622 to separately classify the characterized blocks 613 and the characterized links 614.
[0041] The symbol classifier 621 may implement a machine learning algorithm (e.g., a supervised neural network model trained with design block-symbol pairs) to associate the characterized blocks 613 with a set of one or more symbols. The symbol classifier 621 may output the classification of the characterized blocks 613, called the classified blocks 623, which may include the aggregation of the symbols associated by the symbol classifier 621 with the characterized blocks 613.
[0042] The link classifier 622 may implement a machine learning algorithm (e.g., a supervised neural network model trained with wire trace-link pairs) to associate the characterized traces 614 with a set of one or more links. The link classifier 622 may output the classification of the characterized traces 614, called the classified traces 624, which may include the aggregation of the links associated by the link classifier 622 with the characterized traces 614.
[0043] The principle conversion system 600 may include a calibration feedback system 630 for receiving the classified blocks 623 and the classified links 624, and verifying or enhancing the classification of the characterized blocks 613 and the characterized lines 614. In some embodiments, the calibration feedback system 630 may include a symbol prediction table 631 to store the received classified blocks 623, and a link prediction table 632 to store the received classified lines 624.
[0044] The calibration feedback system 630 may utilize the classified blocks 623 stored in the symbol prediction table 631 and the classified lines 624 stored in the link prediction table 632 in various ways. In some embodiments, the calibration feedback system 630 may utilize the classified blocks 623 and / or the classified lines 624 as feedback to the machine learning-based classification system 620. For example, the calibration feedback system 630 may provide one or more of the classified blocks 623 to the link classifier 622 as block feedback 633. Since there may be a relationship between the symbols in the electronic design and the links coupled to the symbols, the ability to provide at least a portion of the classified blocks 623 to the link classifier 622 may allow for a more robust classification of the characterized lines 614. The calibration feedback system 630 may also provide one or more of the classified lines 624 to the symbol classifier 621 as link feedback 634. Similar to the block feedback 633 described above, since there may be a relationship between the symbols in the electronic design and the links coupled to the symbols, the ability to provide at least a portion of the classified lines 624 to the symbol classifier 621 may allow for a more robust classification of the characterized blocks 613. The calibration feedback system 630 and the machine learning-based classification system 620 may iteratively classify the characterized blocks 613 and the characterized lines 614 through this feedback loop to determine the classified blocks 623 and the classified lines 624.
[0045] In some embodiments, the calibration feedback system 630 may perform verification operations on the classified blocks 623, for example, by generating a display rendering 635 that includes symbols corresponding to the classified blocks 623 and links corresponding to the classified lines 624. The display rendering 635 may also include a display of design blocks and wire lines used by the machine learning-based classification system 620 to identify symbols and links, respectively. The calibration feedback system 630 may include a confidence level associated with the classification of design blocks and wire lines in the display rendering 635, and / or may rank the rendering of symbols and / or links in the display rendering 635 based on the confidence levels associated with the classified blocks 623 and the classified lines 624. In some embodiments, the calibration feedback system 630 may associate symbols and links from the classified blocks 623 and the classified lines 624, respectively, into symbol and link pairs that can be used together in an electronic system. For example, when a component represented by a particular symbol has the ability to be connected by certain types of links, the calibration feedback system 630 may selectively pair the particular symbol with a link in the classified lines 624 based on the component capabilities.
[0046] In some embodiments, the calibration feedback system 630 may output the display rendering 635 for manual review of the classification of design blocks and wire lines. The calibration feedback system 630 may receive user input 636 based on the display rendering 635. The calibration feedback system 630 may utilize the user input 636 to select one of the symbols for each design block and one of the links for each wire line. In some embodiments, the user input 636 may identify which symbol in the display rendering 635 is recognized by the user as corresponding to a design block, and / or which link in the display rendering 635 is recognized by the user as corresponding to a wire line. The calibration feedback system 630 may utilize the user input 636 to verify or enhance the classification of each design block and each wire line. The calibration feedback system 630 may generate a system design 602 in a format that is natively compatible with downstream development tools (such as electronic design automation tools) using the selected symbols and selected links for the characterized blocks 613 and the characterized lines 614, respectively.
[0047] In some embodiments, the calibration feedback system 630 can retrain the symbol classifier 621 and the link classifier 622 respectively using selected symbols and selected links for the characterized block 613 and the characterized line 614. In some embodiments, the calibration feedback system 630 can generate additional training data for the machine learning-based classification system 620, for example, by constructing design block-symbol pairs corresponding to the selected symbols and by constructing wire line-link pairs corresponding to the selected links. The calibration feedback system 630 can provide the design block-symbol pairs and / or the wire line-link pairs to the machine learning-based classification system 620 for retraining the symbol classifier 621 and the link classifier 622 respectively.
[0048] The calibration feedback system 630 can output the system design 602 as a converted version of the schematic diagram, which can be utilized by downstream development tools. In some embodiments, the downstream development tools can identify one or more errors in the system design 602, which can correspond to the conversion of the schematic diagram to the system design 602, and provide feedback to the schematic conversion system 600. The calibration feedback system 630 can perform a verification operation to detect whether the error corresponds to an error in the schematic diagram or whether the error is introduced during the conversion of the schematic diagram to the system design 602. In some examples, the calibration feedback system 630 can utilize the machine learning-based classification system 620 to determine the correlation between symbol errors or line errors and the characterized block 613 and / or the characterized line 614 respectively. When the calibration feedback system 630 determines that the error is at least partially introduced during the conversion process, the calibration feedback system 630 can generate additional training data for the machine learning-based classification system 620, for example, by constructing design block-symbol pairs corresponding to the corrected symbols and by constructing wire line-link pairs corresponding to the corrected links. The calibration feedback system 630 can provide the design block-symbol pairs and / or the wire line-link pairs to the machine learning-based classification system 620 for retraining the symbol classifier 621 and the link classifier 622 respectively. Although Figure 6 the schematic conversion system 600 is shown as being divided into a separate localization system 610, a machine learning-based classification system 620, and a calibration feedback system 630, in some embodiments, the schematic conversion system 600 can perform the operations of these systems 610-630 in one run by a machine learning-based system.
[0049] The systems and devices described above can use a dedicated processor system, microcontroller, programmable logic device, microprocessor, or any combination thereof to perform some or all of the operations described herein. Some of the operations described above can be implemented in software, while other operations can be implemented in hardware. Any operations, processes, and / or methods described herein can be performed by devices, apparatuses, and / or systems that are substantially similar to the devices, apparatuses, and / or systems described and referenced in the accompanying drawings herein.
[0050] The processing device can execute instructions or "code" stored in a computer-readable memory device. The memory device can also store data. The processing device can include, but is not limited to, an analog processor, a digital processor, a microprocessor, a multi-core processor, a processor array, a network processor, etc. The processing device can be part of an integrated control system or system manager, or can be provided as a portable electronic device configured to interact locally or remotely with a networked system via wireless transmission.
[0051] The processor memory can be integrated with the processing device, such as RAM or FLASH memory disposed within an integrated circuit microprocessor, etc. In other examples, the memory device can include a stand-alone device, such as an external disk drive, a storage array, a portable flash keychain, etc. The memory and the processing device can be operably coupled together or communicate with each other, for example, via an I / O port, a network connection, etc., and the processing device can read files stored on the memory. The associated memory device can be designed as "read-only" (ROM) through permission settings, or can not be "read-only". Other examples of memory devices can include, but are not limited to, WORM, EPROM, EEPROM, FLASH, NVRAM, OTP, etc., which can be implemented as solid-state semiconductor devices. Other memory devices can include moving parts, such as known rotating disk drives. All of these memory devices can be "machine-readable" and can be read by the processing device.
[0052] Operational instructions or commands can be implemented or embodied in a tangible form of stored computer software (also referred to as a "computer program" or "code"). The program or code can be stored in a digital memory device and read by a processing device. A "computer-readable storage medium" (or, alternatively, a "machine-readable storage medium") can include all of the aforementioned types of computer-readable memory devices, as well as future new technologies, provided that the memory device can store at least temporarily a computer program or other digitally encoded information of a data nature, and provided that the stored information can be "read" by a suitable processing device. The term "computer-readable" is not limited to the historical use of the term "computer" meaning a complete mainframe, minicomputer, desktop computer, or even a laptop computer. Instead, "computer-readable" can include storage media readable by a processor, processing device, or any computing system. Such media can be any available media accessible locally and / or remotely by a computer or processor, and can include volatile and non-volatile media, removable and non-removable media, or any combination thereof.
[0053] A program stored in a computer-readable storage medium can include a computer program product. For example, the storage medium can serve as a convenient means for storing or transmitting a computer program. For convenience, operations can be described as various interconnected or coupled functional blocks or diagrams. However, there are cases where these functional blocks or diagrams can be equivalently aggregated into a single logical device, program, or operation with ill-defined boundaries.
[0054] Conclusion
[0055] Although this application describes specific examples of implementing embodiments of the present invention, those skilled in the art should understand that there are various variations and permutations of the above systems and technologies, and all of these variations and permutations fall within the spirit and scope of the present invention as described in the appended claims. For example, although specific terms have been used above to refer to computing processes, it should be understood that various examples of the present invention can be implemented using any desired combination of computing processes.
[0056] Those skilled in the art will also recognize that the concepts taught herein can be adapted to specific applications in many other ways. Specifically, those skilled in the art will recognize that the illustrated examples are merely one of many alternative embodiments that will become apparent after reading this disclosure.
[0057] Although the specification may refer at several places to an example of "a", "one", "another", or "some", this does not necessarily mean that each such reference refers to the same example, or that the feature applies only to a single example.
Claims
1. A method, comprising: Parsing, by a computing system, a schematic diagram of a diagrammatic system to identify design blocks in the schematic diagram and wire lines coupled to the design blocks; Implementing, by the computing system, at least one machine learning classification algorithm to classify the design blocks and the wire lines, wherein the classification of the design blocks corresponds to one or more symbols representing components of the system, and wherein the classification of the wire lines corresponds to one or more links representing the connectivity of at least one of the components of the system; and Generating, by the computing system, a system design describing the system, at least in part based on symbols representing components of the system classified to the design blocks and links representing the connectivity of at least one of the components of the system classified to the wire lines.
2. The method according to claim 1, wherein, Classifying the design blocks and the wire lines further comprises: Classifying, by the computing system, the design blocks to the one or more symbols representing components of the system using a first machine learning classification algorithm; and Classifying, by the computing system, the wire lines to the one or more links representing the connectivity of at least one of the components of the system using a second machine learning classification algorithm.
3. The method according to claim 2, wherein The classification of the design blocks by the first machine learning classification algorithm is at least partially based on the classification of the wire lines by the second machine learning classification algorithm.
4. The method according to claim 2, wherein The classification of the wire lines by the second machine learning classification algorithm is at least partially based on the classification of the design blocks by the first machine learning classification algorithm.
5. The method according to claim 1, wherein, Classifying the design blocks and the wire lines includes identifying a plurality of potential symbols and a plurality of potential links, wherein the classification of the design blocks corresponds to a symbol selected from the plurality of potential symbols, and wherein the classification of the wire lines corresponds to a link selected from the plurality of potential links.
6. The method according to claim 5, further comprising: Generating, by the computing system, a display presentation that includes the potential symbols and the potential links identified by the machine learning classification algorithm implemented by the computing system; And In response to input prompted by the display presentation, selecting, by the computing system, a symbol corresponding to the classification of the design blocks from the plurality of potential symbols and a link corresponding to the classification of the wire lines from the plurality of potential links.
7. The method according to claim 1, wherein At least one machine learning classification algorithm implemented by the computing system corresponds to a supervised neural network trained with training design blocks labeled with identifiers corresponding to training symbols.
8. A system, comprising: A memory device configured to store machine-readable instructions; And A computing system including one or more processing devices configured to, in response to executing the machine-readable instructions: Parse a schematic diagram of a diagrammatic system to identify design blocks in the schematic diagram and wire lines coupled to the design blocks; Classify the design blocks and the wire lines by means of at least one machine learning classification algorithm implemented by the computing system, wherein the classification of the design blocks corresponds to one or more symbols representing components of the system, and wherein the classification of the wire lines corresponds to one or more links representing the connectivity of at least one of the components of the system; Generate a system design of the system at least partially based on the symbols representing the components of the system classified to the design blocks and the links representing the connectivity of at least one of the components of the system classified to the wire lines.
9. The system according to claim 8, wherein, The one or more processing devices, in response to executing the machine-readable instructions, are configured to: Classify the design blocks to the one or more symbols representing the components of the system by using a first machine learning classification algorithm; And Classify the wire lines to the one or more links representing the connectivity of at least one of the components of the system by using a second machine learning classification algorithm.
10. The system according to claim 9, wherein, The classification of the design blocks by the first machine learning classification algorithm is at least partially based on the classification of the wire lines by the second machine learning classification algorithm.
11. The system according to claim 9, wherein, The classification of the wire lines by the second machine learning classification algorithm is at least partially based on the classification of the design blocks by the first machine learning classification algorithm.
12. The system according to claim 8, wherein, The one or more processing devices, in response to executing the machine-readable instructions, are configured to: classify the design blocks and the wire lines by identifying a plurality of potential symbols and a plurality of potential links, wherein the classification of the design blocks corresponds to a symbol selected from the plurality of potential symbols, and wherein the classification of the wire lines corresponds to a link selected from the plurality of potential links.
13. The system according to claim 12, wherein, The one or more processing devices, in response to executing the machine-readable instructions, are configured to: Generate a display presentation that includes the potential symbols and the potential links identified by the machine learning classification algorithm implemented by the computing system; And In response to an input prompted by the display presentation, select a symbol corresponding to the classification of the design blocks from the plurality of potential symbols and select a link corresponding to the classification of the wire lines from the plurality of potential links.
14. An apparatus includes a memory device storing instructions that are configured to cause one or more processing devices to perform operations, the operations including: Parse a schematic diagram of a graphical system to identify design blocks in the schematic diagram and wire lines coupled to the design blocks; Classify the design blocks and the wire lines by means of at least one machine learning classification algorithm, wherein the classification of the design blocks corresponds to one or more symbols representing components of the system, and wherein the classification of the wire lines corresponds to one or more links representing the connectivity of at least one of the components of the system; and Generate a system design describing the system, at least in part, based on symbols representing components of the system classified to the design blocks and links representing the connectivity of at least one of the components of the system classified to the wire lines.
15. The device according to claim 14, wherein, The instructions are configured to cause one or more processing devices to perform operations, the operations further including classifying the design blocks and the wire lines by: Classifying the design blocks to the one or more symbols representing components of the system using a first machine learning classification algorithm; And Classifying the wire lines to the one or more links representing the connectivity of at least one of the components of the system using a second machine learning classification algorithm.
16. The apparatus according to claim 15, wherein, The classification of the design blocks by the first machine learning classification algorithm is at least in part based on the classification of the wire lines by the second machine learning classification algorithm.
17. The device according to claim 15, wherein, The classification of the wire lines by the second machine learning classification algorithm is at least in part based on the classification of the design blocks by the first machine learning classification algorithm.
18. The apparatus according to claim 14, wherein, Classifying the design blocks and the wire lines includes identifying a plurality of potential symbols and a plurality of potential links, wherein the classification of the design blocks corresponds to a symbol selected from the plurality of potential symbols, and wherein the classification of the wire lines corresponds to a link selected from the plurality of potential links.
19. The device according to claim 18, wherein, The instructions are configured to cause one or more processing devices to perform operations, the operations further including: Generating a display rendering that includes the potential symbols and the potential links identified by the machine learning classification algorithm; and In response to input prompted by the display rendering, selecting, by a computing system, a symbol corresponding to the classification of the design blocks from the plurality of potential symbols and a link corresponding to the classification of the wire lines from the plurality of potential links.
20. The apparatus according to claim 14, wherein, At least one machine learning classification algorithm implemented by the computing system corresponds to a supervised neural network trained with training design blocks labeled with identifiers corresponding to training symbols.