A PCB interactive automatic wiring method, system, device and medium
By interactively communicating with PCB routing software, the system obtains and verifies information about the area to be routed, generates routing format files, and checks the results. This solves the problem of low routing reliability on complex PCBs and improves the reliability and efficiency of local automatic routing.
Patent Information
- Application Number
- CN202211162628.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-23
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2042-09-23
AI Technical Summary
Existing PCB routing software struggles to achieve localized automatic routing on complex PCBs and cannot interact with other routing software, resulting in low routing reliability.
By establishing a communication connection with the PCB routing software, the system obtains information on the user-selected area to be routed, performs feasibility verification, generates a routing format file, imports it into the automatic routing tool for routing, and combines the results with preset routing design rules to check and feed them back to the routing software interface.
This improves the reliability of PCB local automatic routing, reduces overall routing failures and the need for manual adjustments, and enhances the routing efficiency and quality for engineers.
Smart Images

Figure CN115510800B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of PCB routing, and in particular to an interactive automatic PCB routing method, system, device, and medium. Background Technology
[0002] Allegro is a software used for PCB (Printed Circuit Board) placement and routing, and it is currently one of the most widely used and powerful PCB placement and routing software. Allegro also has an automatic routing function, but this automatic routing is a global function. When the PCB structure is not too complex, it can perform global automatic routing, but when the number of PCB layers and the number of traces is large, the global automatic routing effect of this software is almost unusable.
[0003] Currently, many related PCB automatic routing algorithms have been proposed in academia. For example, the PCB automatic routing system method with patent number 201910892545.0 proposes an automatic routing process and uses AI technology for automatic routing; the PCB automatic routing method, device and storage medium with patent number 202111451628.X proposes an object-oriented active obstacle avoidance method, which is different from traditional graph theory and machine learning methods. By continuously acquiring the first target obstacle and the obstacle avoidance edge points, the automatic routing of the PCB is finally realized.
[0004] These algorithms are designed for global automatic routing and cannot achieve local routing on the PCB board, nor can they achieve interactive routing with PCB routing software.
[0005] For complex PCBs, if there are many routing areas and a large number of layers, global automatic routing algorithms often fail to achieve satisfactory results. Therefore, it is necessary to design a system that can interact with routing software and automatically select the routing areas to be automatically routed. This can improve both routing efficiency and routing quality. Summary of the Invention
[0006] To address the problems existing in the prior art, this invention innovatively proposes a PCB interactive automatic routing method, system, device, and medium, which effectively solves the problem of low PCB routing reliability caused by the prior art. It can not only realize partial routing of PCB routing, but also realize interactive routing with PCB routing software, thereby improving the reliability of automatic PCB routing.
[0007] The first aspect of this invention provides a PCB interactive automatic routing method, comprising:
[0008] Establish a communication connection with the PCB routing software;
[0009] Obtain information about the area to be routed selected by the user in the PCB routing software;
[0010] Feasibility verification is performed on the acquired information about the area to be wired;
[0011] After the feasibility verification is passed, the wiring information in the area to be wired is obtained;
[0012] The obtained wiring information in the area to be wired is preprocessed to generate a wiring format file;
[0013] Import the wiring format file into the automatic wiring tool for wiring.
[0014] Optionally, the feasibility verification of the acquired information on the area to be wired specifically includes:
[0015] The number of pairs to be wired in the area to be wired and the area of the area to be wired are obtained;
[0016] The wiring density of the area to be wired is calculated based on the number of wiring pairs in the area to be wired and the area of the area to be wired; where the wiring density of the area to be wired is the ratio of the number of wiring pairs in the area to the area of the area to be wired.
[0017] The system determines whether the area selected by the user through the PCB routing software is suitable for automatic routing based on the calculated routing density of the area to be routed.
[0018] Furthermore, based on the calculated routing density of the area to be routed, it is determined whether the area selected by the user through the PCB routing software is suitable for automatic routing. Specifically:
[0019] The system obtains the routing density of the area to be routed selected by the user through the PCB routing software. If the routing density of the area to be routed is not greater than the preset routing density threshold, the area to be routed is suitable for automatic routing, and the feasibility verification passes. If the routing density of the area to be routed is greater than the preset routing density threshold, the area to be routed is not suitable for automatic routing, and the feasibility verification fails.
[0020] Optionally, it also includes:
[0021] The results of the feasibility verification are fed back to the PCB routing software interface.
[0022] Optionally, the routing information in the area to be routed includes: the routing network information contained in the area to be routed, the pin information contained in the routing network contained in the area to be routed, the routing rule information contained in the area to be routed, and the layout information of the PCB board where the area to be routed is located.
[0023] Optionally, it also includes:
[0024] Obtain the routing results from the automatic routing, and check whether the automatic routing results meet the requirements according to the preset routing design rules, and feed the check results back to the PCB routing software.
[0025] Furthermore, based on the preset routing design rules, check whether the automatic routing results meet the requirements, specifically:
[0026] The system counts the number of right angles and the presence of intersecting wires in the automatic routing results. If both the number of right angles and the presence of intersecting wires are 0, the automatic routing result check is passed. If the number of right angles and the presence of intersecting wires are not both 0, the automatic routing result check is failed.
[0027] A second aspect of the present invention provides a PCB interactive automatic routing system, comprising:
[0028] Establish a module to create a communication connection with the PCB routing software;
[0029] The first acquisition module acquires information about the area to be routed selected by the user in the PCB routing software.
[0030] The verification module performs feasibility verification on the acquired information about the area to be wired.
[0031] The second acquisition module, after passing the feasibility verification, acquires the wiring information in the area to be wired;
[0032] The preprocessing module preprocesses the acquired wiring information in the area to be wired and generates a wiring format file.
[0033] The import module imports the wiring format file into the automatic wiring tool for wiring.
[0034] A third aspect of the present invention provides an electronic device, comprising: a memory for storing a computer program; and a processor for executing the computer program to implement the steps of an interactive automatic routing PCB as described in the first aspect of the present invention.
[0035] A fourth aspect of the present invention provides a computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps of an interactive automatic routing PCB as described in the first aspect of the present invention.
[0036] The technical solution adopted in this invention has the following technical effects:
[0037] 1. The technical solution of this invention allows for the automatic selection of areas to be routed, thereby avoiding the situation where automatic routing of the entire PCB is impossible due to the large number of wires. The interactive approach also saves the process of dismantling and rerouting due to unsatisfactory overall routing results. Engineers can select some easier lines for automatic routing, while manual routing can be used for complex lines. This not only ensures the routing effect but also improves the routing efficiency of engineers to a certain extent, thus improving the reliability of automatic PCB routing.
[0038] 2. In the technical solution of this invention, the feasibility of the acquired area to be routed is verified. That is, the routing density of the area to be routed is calculated to determine whether the area to be routed selected by the user through the PCB routing software is suitable for automatic routing. This avoids the problem that the reliability of the automatic routing result is low because the area to be routed is not suitable for automatic routing, and manual adjustment or even rerouting is required. This further improves the reliability of PCB automatic routing.
[0039] 3. In the technical solution of this invention, the feasibility verification results are fed back to the PCB routing software interface, which makes it easy for users to understand in a timely manner whether the area to be routed selected by the PCB routing software is suitable for automatic routing, and to adjust the area to be routed in a timely manner when it is not suitable for automatic routing.
[0040] 4. In the technical solution of this invention, the automatic routing results are obtained, and the automatic routing results are checked according to the preset routing design rules to see if they meet the requirements. The check results are then fed back to the PCB routing software. By checking and verifying the automatic routing results, the reliability of the automatic routing results is further improved, making it easier for users to understand the automatic routing results of the area to be routed selected by the PCB routing software in a timely manner.
[0041] It should be understood that the above general description and the following detailed description are exemplary and explanatory only, and are not intended to limit the invention. Attached Figure Description
[0042] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0043] Figure 1 This is a flowchart (I) of the method in Embodiment 1 of the present invention;
[0044] Figure 2 This is a flowchart illustrating step S5 in the method of Embodiment 1 of the present invention;
[0045] Figure 3 This is a flowchart (II) of the method in Embodiment 1 of the present invention;
[0046] Figure 4 This is a flowchart (III) of the method in Embodiment 1 of the present invention;
[0047] Figure 5 This is a schematic diagram (I) of the device in Embodiment 2 of the present invention;
[0048] Figure 6 This is a schematic diagram of the structure of the verification module 103 in the device of Embodiment 2 of the present invention;
[0049] Figure 7 This is a schematic diagram (II) of the device in Embodiment 2 of the present invention;
[0050] Figure 8 This is a schematic diagram (III) of the device in Embodiment 2 of the present invention;
[0051] Figure 9 This is a schematic diagram of the device in Embodiment 3 of the present invention. Detailed Implementation
[0052] To clearly illustrate the technical features of this solution, the invention will be described in detail below through specific embodiments and in conjunction with the accompanying drawings. The following disclosure provides many different embodiments or examples for implementing different structures of the invention. To simplify the disclosure of the invention, components and arrangements of specific examples are described below. Furthermore, reference numerals and / or letters may be repeated in different examples. This repetition is for simplification and clarity and does not in itself indicate a relationship between the various embodiments and / or arrangements discussed. It should be noted that the components illustrated in the drawings are not necessarily drawn to scale. Descriptions of well-known components, processing techniques, and processes are omitted in this invention to avoid unnecessarily limiting the invention.
[0053] Example 1
[0054] like Figure 1 As shown, the present invention provides an interactive automatic routing method for PCBs, comprising:
[0055] S1, establishes a communication connection with the PCB routing software;
[0056] S3: Obtain information about the area to be routed selected by the user in the PCB routing software;
[0057] S5, perform feasibility verification on the acquired information of the area to be wired;
[0058] S7. After the feasibility verification is passed, obtain the wiring information in the area to be wired.
[0059] S9, preprocess the obtained wiring information in the area to be wired to generate a wiring format file;
[0060] S11, import the wiring format file into the automatic wiring tool for wiring.
[0061] The technical solution of the present invention is implemented by a script. In step S1, a communication connection is established between the script and the PCB routing software, so that the script and the PCB routing software can communicate interactively.
[0062] In step S3, the information of the area to be routed selected by the user in the PCB routing software is obtained. Specifically, based on the flying wires displayed in the Allegro PCB routing software, the user selects the area to be routed in the Allegro software interface by using the mouse or other means.
[0063] like Figure 2 As shown, step S5 specifically involves:
[0064] S51, obtain the number of pairs to be wired in the area to be wired and the area of the area to be wired;
[0065] S52, calculate the wiring density of the area to be wired based on the number of wiring pairs in the area to be wired and the area of the area to be wired; wherein, the wiring density of the area to be wired is the ratio of the number of wiring pairs in the area to be wired to the area of the area to be wired.
[0066] S53 determines whether the area to be routed selected by the user through the PCB routing software is suitable for automatic routing based on the calculated routing density of the area to be routed.
[0067] In steps S51-S53, verifying whether the user-selected area to be wired can be automatically wired specifically involves: a. calculating the number of wire pairs in the user-selected area to be wired, i.e. the number of flying wire pairs, denoted as t; b. calculating the area of the user-selected area to be wired, i.e. the length multiplied by the width of the selected area, with the length or width in mm, denoted as s; c. calculating the wiring density of the user-selected area to be wired, p = t / s.
[0068] Specifically, in step S53, the determination of whether the area to be routed selected by the user through the PCB routing software is suitable for automatic routing is based on the calculated routing density of the area to be routed.
[0069] The system obtains the routing density of the area to be routed selected by the user through PCB routing software. If the routing density of the area to be routed is not greater than a preset routing density threshold, the area to be routed is suitable for automatic routing, and the feasibility check passes. If the routing density of the area to be routed is greater than the preset routing density threshold, the area to be routed is not suitable for automatic routing, and the feasibility check fails. Specifically, the system determines the value of the routing density p of the area to be routed selected by the user. If p < 1 (the preset routing density threshold, which can be 1 or 10, and can be adjusted according to the actual situation, this invention does not impose any restrictions) or p = 1, it indicates that the routing density is acceptable and automatic routing can be used, and the feasibility check passes. If p > 1, it indicates that the routing density of the selected area is too high and automatic routing is not suitable. It is recommended to use manual routing, and the automatic routing feasibility check fails. Through the feasibility check in the technical solution of this invention, the feasibility of the area to be routed selected by the user through PCB routing software can be verified, avoiding the need for manual adjustment or even rerouting due to the user-selected area being unsuitable for automatic routing, thus improving the reliability of automatic routing.
[0070] Furthermore, such as Figure 3 As shown, the PCB interactive automatic routing method in the technical solution of the present invention further includes:
[0071] S6 feeds back the feasibility verification results to the PCB routing software interface.
[0072] In step S6, through interactive communication between the script and the PCB routing software, the feasibility verification result information of the area to be routed selected by the user through the PCB routing software is sent to the PCB routing software interface, so that the user can understand the feasibility verification result of the selected area to be routed in a timely manner.
[0073] In step S7, after the feasibility verification is passed, the wiring information in the area to be wired is obtained; wherein, the wiring information in the area to be wired includes: the wiring network information contained in the area to be wired, the pin information contained in the wiring network contained in the area to be wired, the wiring rule information contained in the area to be wired, and the layout information in the PCB board where the area to be wired is located.
[0074] In step S9, the wiring information in the area to be wired is preprocessed (standardized). The standard format can refer to the format of the .dsn file exported from Allegro to generate a wiring format file (i.e., .dsn file) so as to enable the automatic wiring algorithm software to identify the wiring information in the area to be wired.
[0075] In step S11, the routing format file is imported into the automatic routing tool (an automatic routing tool based on an automatic routing algorithm) for automatic routing.
[0076] Furthermore, such as Figure 4 As shown, the PCB interactive automatic routing method in the technical solution of the present invention further includes:
[0077] S13: Obtain the routing results of the automatic routing, and check whether the automatic routing results meet the requirements according to the preset routing design rules, and feed back the check results to the PCB routing software.
[0078] In step S13, the automatic routing result is checked to see if it meets the requirements according to preset routing design rules (e.g., DRC check, Design Rules Check).
[0079] The system counts the number of right angles and the presence of intersecting wires in the automatic routing results. If both the number of right angles and the presence of intersecting wires are 0, the automatic routing result check is passed. If the number of right angles and the presence of intersecting wires are not both 0, the automatic routing result check is failed.
[0080] Specifically, if the sum of the number of right angles and the statistical results of whether there are intersecting wires in the automatic routing result is less than or equal to 10, the result will be displayed and the violation area will be marked, and the engineer will be advised to make manual modifications. If the sum of the number of right angles and the statistical results of whether there are intersecting wires in the automatic routing result is greater than 10, the routing result is unusable, and it is recommended to re-perform automatic routing or to have the engineer perform manual routing.
[0081] It should be noted that the check of the automatic routing results in the technical solution of this invention can be implemented by the script in the technical solution of this invention, or the automatic routing results can be imported into Allegro software and Allegro software can perform DRC check, count the number of right angles contained in the automatic routing results, check for intersections, etc., and determine whether the automatic routing result check passes. The specific check method is the same as the check method in the script, and will not be described in detail here.
[0082] This invention's technical solution allows for the autonomous selection of areas to be automatically routed, thus avoiding the situation where automatic routing of the entire PCB is impossible due to the large number of wires. The interactive approach also saves the time required for dismantling and rerouting due to unsatisfactory overall routing results. Engineers can select easier-to-route lines for automatic routing, while complex lines can be routed manually. This effectively solves the problem of engineers needing to dismantle and reroute lines when automatically routing complex PCBs, as it allows for the autonomous selection of areas. This avoids situations where automatic routing of the entire complex PCB is ineffective, or even if it is completed, the results are unsatisfactory, requiring engineers to dismantle and rerout lines. To a certain extent, this improves the engineer's routing efficiency and enhances the reliability of automatic PCB routing.
[0083] In this invention, the feasibility of the acquired area to be routed is verified. That is, the routing density of the area to be routed is calculated to determine whether the area to be routed selected by the user through the PCB routing software is suitable for automatic routing. This avoids the problem that the reliability of the automatic routing result is low because the area to be routed is not suitable for automatic routing, and manual adjustment or even rerouting is required. This further improves the reliability of PCB automatic routing.
[0084] In this invention, the feasibility verification results are fed back to the PCB routing software interface, which allows users to understand in a timely manner whether the area to be routed selected by the PCB routing software is suitable for automatic routing, and to adjust the area to be routed in a timely manner if it is not suitable for automatic routing.
[0085] The present invention obtains the routing results of automatic routing and checks whether the automatic routing results meet the requirements according to the preset routing design rules. The check results are then fed back to the PCB routing software. By checking and verifying the automatic routing results, the reliability of the automatic routing results is further improved, making it easier for users to understand the automatic routing results of the area to be routed selected by the PCB routing software in a timely manner.
[0086] Example 2
[0087] like Figure 5 As shown, the present invention also provides a PCB interactive automatic routing system, comprising:
[0088] Establish module 101 to establish a communication connection with the PCB routing software;
[0089] The first acquisition module 102 acquires information about the area to be routed selected by the user in the PCB routing software.
[0090] Verification module 103 performs feasibility verification on the acquired information about the area to be wired;
[0091] The second acquisition module 104, after passing the feasibility verification, acquires the wiring information in the area to be wired;
[0092] The preprocessing module 105 preprocesses the acquired wiring information in the area to be wired and generates a wiring format file.
[0093] Import module 106 to import the wiring format file into the automatic wiring tool for wiring.
[0094] The technical solution of the present invention is implemented through a script. In the establishment module 101, a communication connection is established between the script and the PCB routing software, so that the script and the PCB routing software can communicate interactively.
[0095] In the first acquisition module 102, the information of the area to be routed selected by the user in the PCB routing software is acquired. Specifically, based on the flying wires displayed in the Allegro PCB routing software, the user selects the area to be routed in the Allegro software interface by using the mouse or other means.
[0096] like Figure 6 As shown, the verification module 103 specifically comprises:
[0097] Get submodule 1031, which obtains the number of pairs to be wired in the area to be wired and the area of the area to be wired;
[0098] The calculation submodule 1032 calculates the wiring density of the area to be wired based on the number of wiring pairs in the area to be wired and the area of the area to be wired; wherein, the wiring density of the area to be wired is the ratio of the number of wiring pairs in the area to be wired to the area of the area to be wired.
[0099] The judgment submodule 1033 determines whether the area to be routed selected by the user through the PCB routing software is suitable for automatic routing based on the calculated routing density of the area to be routed.
[0100] Specifically, in the verification module 103, the verification of whether the user-selected area to be wired can be automatically wired is performed as follows: a. Calculate the number of wire pairs to be wired in the user-selected area to be wired, i.e. the number of flying wire pairs, denoted as t; b. Calculate the area of the user-selected area to be wired, i.e. the length multiplied by the width of the selected area, with the length or width in mm, denoted as s; c. Calculate the wiring density of the user-selected area to be wired, p = t / s.
[0101] Specifically, in the judgment submodule 1033, the determination of whether the area to be routed selected by the user through the PCB routing software is suitable for automatic routing is based on the calculated routing density of the area to be routed.
[0102] The system obtains the routing density of the area to be routed selected by the user through PCB routing software. If the routing density of the area to be routed is not greater than a preset routing density threshold, the area to be routed is suitable for automatic routing, and the feasibility check passes. If the routing density of the area to be routed is greater than the preset routing density threshold, the area to be routed is not suitable for automatic routing, and the feasibility check fails. Specifically, the system determines the value of the routing density p of the area to be routed selected by the user. If p < 1 (the preset routing density threshold, which can be adjusted according to the actual situation, and is not limited in this invention), or p = 1, it indicates that the routing density is acceptable and automatic routing can be used, and the feasibility check passes. If p > 1, it indicates that the routing density of the selected area is too high and automatic routing is not suitable. It is recommended to use manual routing, and the automatic routing feasibility check fails. Through the feasibility check in the technical solution of this invention, the feasibility of the area to be routed selected by the user through PCB routing software can be verified, avoiding the need for manual adjustment or even rerouting due to the user-selected area being unsuitable for automatic routing, thus improving the reliability of automatic routing.
[0103] Furthermore, such as Figure 7 As shown, the PCB interactive automatic routing method in the technical solution of the present invention further includes:
[0104] The first feedback module 107 feeds back the feasibility verification results to the PCB routing software interface.
[0105] In the first feedback module 107, through interactive communication between the script and the PCB routing software, the feasibility verification result information of the area to be routed selected by the user through the PCB routing software is sent to the PCB routing software interface, so that the user can understand the feasibility verification result of the selected area to be routed in a timely manner.
[0106] In the second acquisition module 104, after the feasibility verification is passed, the wiring information in the area to be wired is acquired; wherein, the wiring information in the area to be wired includes: the wiring network information contained in the area to be wired, the pin information contained in the wiring network contained in the area to be wired, the wiring rule information contained in the area to be wired, and the layout information in the PCB board where the area to be wired is located.
[0107] In the preprocessing module 105, the wiring information in the area to be wired is preprocessed (standardized). The standard format can refer to the format of the .dsn file exported from Allegro to generate a wiring format file (i.e., .dsn file) so as to enable the automatic wiring algorithm software to identify the wiring information in the area to be wired.
[0108] In import module 106, the wiring format file is imported into the automatic routing tool (an automatic routing tool based on the automatic routing algorithm) for automatic routing.
[0109] Furthermore, such as Figure 8 As shown, the PCB interactive automatic routing method in the technical solution of the present invention further includes:
[0110] The second feedback module 108 obtains the routing results of the automatic routing and checks whether the automatic routing results meet the requirements according to the preset routing design rules, and feeds back the check results to the PCB routing software.
[0111] Specifically, in the second feedback module 108, the automatic routing results are checked to ensure they meet the requirements according to preset routing design rules (e.g., DRC check, DesignRules Check).
[0112] The system counts the number of right angles and the presence of intersecting wires in the automatic routing results. If both the number of right angles and the presence of intersecting wires are 0, the automatic routing result check is passed. If the number of right angles and the presence of intersecting wires are not both 0, the automatic routing result check is failed.
[0113] Specifically, if the sum of the number of right angles and the statistical results of whether there are intersecting wires in the automatic routing result is less than or equal to 10, the result will be displayed and the violation area will be marked, and the engineer will be advised to make manual modifications. If the sum of the number of right angles and the statistical results of whether there are intersecting wires in the automatic routing result is greater than 10, the routing result is unusable, and it is recommended to re-perform automatic routing or to have the engineer perform manual routing.
[0114] It should be noted that the check of the automatic routing results in the technical solution of this invention can be implemented by the script in the technical solution of this invention, or the automatic routing results can be imported into Allegro software and Allegro software can perform DRC check, count the number of right angles contained in the automatic routing results, check for intersections, etc., and determine whether the automatic routing result check passes. The specific check method is the same as the check method in the script, and will not be described in detail here.
[0115] The technical solution of this invention allows for the automatic selection of areas to be routed, thus avoiding the situation where automatic routing of the entire PCB is impossible due to the large number of wires. The interactive approach also saves the process of dismantling and rerouting due to unsatisfactory overall routing results. Engineers can select some easier lines for automatic routing, while manual routing can be used for complex lines. This not only ensures the routing effect but also improves the routing efficiency of engineers to a certain extent, thereby improving the reliability of automatic PCB routing.
[0116] In this invention, the feasibility of the acquired area to be routed is verified. That is, the routing density of the area to be routed is calculated to determine whether the area to be routed selected by the user through the PCB routing software is suitable for automatic routing. This avoids the problem that the reliability of the automatic routing result is low because the area to be routed is not suitable for automatic routing, and manual adjustment or even rerouting is required. This further improves the reliability of PCB automatic routing.
[0117] In this invention, the feasibility verification results are fed back to the PCB routing software interface, which allows users to understand in a timely manner whether the area to be routed selected by the PCB routing software is suitable for automatic routing, and to adjust the area to be routed in a timely manner if it is not suitable for automatic routing.
[0118] The present invention obtains the routing results of automatic routing and checks whether the automatic routing results meet the requirements according to the preset routing design rules. The check results are then fed back to the PCB routing software. By checking and verifying the automatic routing results, the reliability of the automatic routing results is further improved, making it easier for users to understand the automatic routing results of the area to be routed selected by the PCB routing software in a timely manner.
[0119] Example 3
[0120] like Figure 9 As shown, the present invention also provides an electronic device, including: a memory 201 for storing a computer program; and a processor 202 for executing the computer program to implement the steps of interactive automatic PCB routing as described in Embodiment 1.
[0121] The memory 201 in this embodiment is used to store various types of data to support the operation of the electronic device. Examples of such data include any computer program used to operate on the electronic device. It is understood that the memory 201 can be volatile memory or non-volatile memory, or both. Specifically, the non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), magnetic random access memory (FRAM), flash memory, magnetic surface memory, optical disc, or compact disc read-only memory (CD-ROM); the magnetic surface memory can be disk storage or magnetic tape storage. The volatile memory can be random access memory (RAM), which serves as an external cache.By way of example, but not limitation, many forms of RAM are available, such as Static Random Access Memory (SRAM), Synchronous Static Random Access Memory (SSRAM), Dynamic Random Access Memory (DRAM), Synchronous Dynamic Random Access Memory (SDRAM), Double Data Rate Synchronous Dynamic Random Access Memory (DDRSDRAM), Enhanced Synchronous Dynamic Random Access Memory (ESDRAM), SyncLink Dynamic Random Access Memory (SLDRAM), and Direct Rambus Random Access Memory (DRRAM). The memory 201 described in the embodiments of this application is intended to include, but is not limited to, these and any other suitable types of memory.
[0122] The methods disclosed in the embodiments of this application can be applied to processor 202, or implemented by processor 202. Processor 202 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the above method can be completed by the integrated logic circuit of the hardware in processor 202 or by instructions in the form of software. The processor 202 may be a general-purpose processor, a DSP (Digital Signal Processing, i.e., a chip capable of implementing digital signal processing technology), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. Processor 202 can implement or execute the methods, steps, and logic block diagrams disclosed in the embodiments of this application. A general-purpose processor may be a microprocessor or any conventional processor, etc. The steps of the methods disclosed in the embodiments of this application can be directly manifested as being executed by a hardware decoding processor, or being executed by a combination of hardware and software modules in the decoding processor. The software modules may be located in a storage medium, which is located in memory 201. Processor 202 reads the program in memory 201 and combines its hardware to complete the steps of the aforementioned method. When the processor 202 executes the program, it implements the corresponding processes in the various methods of the embodiments of this application. For the sake of brevity, these will not be described in detail here.
[0123] The technical solution of this invention allows for the automatic selection of areas to be routed, thus avoiding the situation where automatic routing of the entire PCB is impossible due to the large number of wires. The interactive approach also saves the process of dismantling and rerouting due to unsatisfactory overall routing results. Engineers can select some easier lines for automatic routing, while manual routing can be used for complex lines. This not only ensures the routing effect but also improves the routing efficiency of engineers to a certain extent, thereby improving the reliability of automatic PCB routing.
[0124] In this invention, the feasibility of the acquired area to be routed is verified. That is, the routing density of the area to be routed is calculated to determine whether the area to be routed selected by the user through the PCB routing software is suitable for automatic routing. This avoids the problem that the reliability of the automatic routing result is low because the area to be routed is not suitable for automatic routing, and manual adjustment or even rerouting is required. This further improves the reliability of PCB automatic routing.
[0125] In this invention, the feasibility verification results are fed back to the PCB routing software interface, which allows users to understand in a timely manner whether the area to be routed selected by the PCB routing software is suitable for automatic routing, and to adjust the area to be routed in a timely manner if it is not suitable for automatic routing.
[0126] The present invention obtains the routing results of automatic routing and checks whether the automatic routing results meet the requirements according to the preset routing design rules. The check results are then fed back to the PCB routing software. By checking and verifying the automatic routing results, the reliability of the automatic routing results is further improved, making it easier for users to understand the automatic routing results of the area to be routed selected by the PCB routing software in a timely manner.
[0127] Example 4
[0128] The present invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of an interactive automatic PCB routing as described in Embodiment 1.
[0129] For example, it may include a memory 201 storing a computer program, which can be executed by a processor 202 to perform the steps described in the aforementioned method. The computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disc, or CD-ROM.
[0130] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks. Alternatively, if the integrated units of this application are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause an electronic device (which may be a personal computer, server, or network device, etc.) to execute all or part of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROM, RAM, magnetic disks, or optical disks.
[0131] The technical solution of this invention allows for the automatic selection of areas to be routed, thus avoiding the situation where automatic routing of the entire PCB is impossible due to the large number of wires. The interactive approach also saves the process of dismantling and rerouting due to unsatisfactory overall routing results. Engineers can select some easier lines for automatic routing, while manual routing can be used for complex lines. This not only ensures the routing effect but also improves the routing efficiency of engineers to a certain extent, thereby improving the reliability of automatic PCB routing.
[0132] In this invention, the feasibility of the acquired area to be routed is verified. That is, the routing density of the area to be routed is calculated to determine whether the area to be routed selected by the user through the PCB routing software is suitable for automatic routing. This avoids the problem that the reliability of the automatic routing result is low because the area to be routed is not suitable for automatic routing, and manual adjustment or even rerouting is required. This further improves the reliability of PCB automatic routing.
[0133] In this invention, the feasibility verification results are fed back to the PCB routing software interface, which allows users to understand in a timely manner whether the area to be routed selected by the PCB routing software is suitable for automatic routing, and to adjust the area to be routed in a timely manner if it is not suitable for automatic routing.
[0134] The present invention obtains the routing results of automatic routing and checks whether the automatic routing results meet the requirements according to the preset routing design rules. The check results are then fed back to the PCB routing software. By checking and verifying the automatic routing results, the reliability of the automatic routing results is further improved, making it easier for users to understand the automatic routing results of the area to be routed selected by the PCB routing software in a timely manner.
[0135] While the specific embodiments of the present invention have been described above in conjunction with the accompanying drawings, this is not intended to limit the scope of protection of the present invention. Those skilled in the art should understand that various modifications or variations that can be made by those skilled in the art without creative effort based on the technical solutions of the present invention are still within the scope of protection of the present invention.
Claims
1. A PCB interactive automatic routing method, characterized in that, include: Establish a communication connection with the PCB routing software; Obtain information about the area to be routed selected by the user in the PCB routing software; Feasibility verification is performed on the acquired information about the areas to be wired; specifically, this feasibility verification involves: The number of pairs to be wired in the area to be wired and the area of the area to be wired are obtained; The wiring density of the area to be wired is calculated based on the number of wiring pairs in the area to be wired and the area of the area to be wired; where the wiring density of the area to be wired is the ratio of the number of wiring pairs in the area to the area of the area to be wired. The determination of whether the area selected by the user through the PCB routing software is suitable for automatic routing is based on the calculated routing density of the area to be routed. Specifically, this determination involves: The system obtains the routing density of the area to be routed selected by the user through the PCB routing software. If the routing density of the area to be routed is not greater than the preset routing density threshold, the area to be routed is suitable for automatic routing and the feasibility check passes. If the routing density of the area to be routed is greater than the preset routing density threshold, the area to be routed is not suitable for automatic routing and the feasibility check fails. After the feasibility verification is passed, the wiring information in the area to be wired is obtained; The obtained wiring information in the area to be wired is preprocessed to generate a wiring format file; Import the wiring format file into the automatic wiring tool for wiring.
2. The PCB interactive automatic routing method according to claim 1, characterized in that, Also includes: The results of the feasibility verification are fed back to the PCB routing software interface.
3. The PCB interactive automatic routing method according to claim 1, characterized in that, The routing information in the area to be routed includes: the routing network information contained in the area to be routed, the pin information contained in the routing network contained in the area to be routed, the routing rule information contained in the area to be routed, and the layout information of the PCB board in which the area to be routed is located.
4. A PCB interactive automatic routing method according to any one of claims 1-3, characterized in that, it further... include: Obtain the routing results from the automatic routing, and check whether the automatic routing results meet the requirements according to the preset routing design rules, and feed the check results back to the PCB routing software.
5. The PCB interactive automatic routing method according to claim 4, characterized in that, According to the preset routing design rules, check whether the automatic routing results meet the requirements. Specifically: The system counts the number of right angles and the presence of intersecting wires in the automatic routing results. If both the number of right angles and the presence of intersecting wires are 0, the automatic routing result check is passed. If the number of right angles and the presence of intersecting wires are not both 0, the automatic routing result check is failed.
6. A PCB interactive automatic routing system, characterized in that, include: Establish a module to create a communication connection with the PCB routing software; The first acquisition module acquires information about the area to be routed selected by the user in the PCB routing software. The verification module performs feasibility verification on the acquired information about the area to be wired; specifically, the verification module includes: Get the submodule, which retrieves the number of wiring pairs in the wiring area and the area of the wiring area; The calculation submodule calculates the wiring density of the area to be wired based on the number of wiring pairs and the area of the area to be wired; whereby the wiring density of the area to be wired is the ratio of the number of wiring pairs to the area of the area to be wired. The judgment submodule determines whether the area to be routed selected by the user through the PCB routing software is suitable for automatic routing based on the calculated routing density of the area to be routed. Specifically, determining whether the area to be routed selected by the user through the PCB routing software is suitable for automatic routing based on the calculated routing density involves: The system obtains the routing density of the area to be routed selected by the user through the PCB routing software. If the routing density of the area to be routed is not greater than the preset routing density threshold, the area to be routed is suitable for automatic routing and the feasibility check passes. If the routing density of the area to be routed is greater than the preset routing density threshold, the area to be routed is not suitable for automatic routing and the feasibility check fails. The second acquisition module, after passing the feasibility verification, acquires the wiring information in the area to be wired; The preprocessing module preprocesses the acquired wiring information in the area to be wired and generates a wiring format file. The import module imports the wiring format file into the automatic wiring tool for wiring.
7. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the steps of the PCB interactive automatic routing method as described in any one of claims 1 to 5 when executing the computer program.
8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the PCB interactive automatic routing method as described in any one of claims 1 to 5.
Citation Information
Patent Citations
PCB automatic wiring system and method
CN110610052A
PCB circuit automatic wiring method and device and storage medium
CN114091400A
Interactive editing method and tool for simulating circuit layout wiring
CN114510900A
Wiring board design system and wiring board design method
US20140250418A1