Automatic wiring method, system and equipment based on positions and directions of pins and medium

By considering the position and direction of the pin pin in automated wiring technology, optimizing the wiring path and dealing with overlapping problems, the problems of wiring conflicts and overlaps in the prior art are solved, and the automation level and wiring quality of circuit design are improved.

CN119538849APending Publication Date: 2025-02-28XPEEDIC CO LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202411584594.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-07
Publication Date
2025-02-28

AI Technical Summary

Technical Problem

The existing automated wiring technology fails to fully consider the specific position and direction of the pin pin, causing wiring paths to pass through component areas, causing wiring conflicts and overlaps, affecting the reliability and performance of the circuit.

Method used

Automatic wiring method based on pin position and direction is adopted. By obtaining information at both ends of the wiring, calculating unit offsets, optimizing wiring paths, increasing inflection points to bypass component areas, and detecting and optimizing overlapping wiring.

Benefits of technology

It significantly improves the automation level and wiring quality of circuit design, reduces conflicts and overlaps during wiring, and improves the accuracy of wiring and circuit reliability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119538849A_ABST
    Figure CN119538849A_ABST
Patent Text Reader

Abstract

The invention provides an automatic wiring method, system and device based on pin positions and directions and a medium. The method comprises the steps of obtaining information of two ends of wiring, determining a starting point and an ending point, preferentially selecting a point with a large y coordinate as the starting point, and selecting a point with a small x coordinate if the y coordinates are the same. If the connection is the symbol, obtaining the direction, the number and the serial number of the pins and the distance between the two symbols; and if the symbol information does not exist, orthogonal wiring is directly carried out. Thirdly, calculating unit offset according to the symbol spacing and the number of the pins, starting wiring from the starting point, and outgoing lines according to the serial numbers of the pins and the unit offset; in the process, whether the wiring passes through the start point or end point symbol region or not is detected, and if yes, inflection point bypassing is added. Then, whether the wiring overlaps with the existing wiring is detected, and if the overlapping and belonging to the same network, the overlapping portion is removed and nodes are added to optimize the wiring. And finally, wiring is completed, and the symbol is drawn into a schematic diagram to be stored. The wiring efficiency and accuracy can be improved, and human errors are reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of electronic circuit design, and more specifically, to an automatic wiring method, system, device and medium based on pin position and direction. Background Art

[0002] In the field of electronic circuit design, wiring is a key step in connecting circuit components, which directly affects the performance and reliability of the circuit. Traditional wiring methods mainly rely on the designer's experience and manual operation, which is not only inefficient but also prone to errors. With the increasing complexity of electronic equipment, manual wiring can no longer meet the needs of high-density, high-performance circuit design. Automated wiring technology has emerged, which uses computer algorithms to optimize wiring paths, reduce human errors, and improve design efficiency. However, existing automated wiring technology often ignores the influence of the position and direction of the pin on the wiring effect, resulting in unsatisfactory wiring results, and there may be problems such as unreasonable wiring paths, uneven wiring density, and signal interference. These problems not only increase the complexity of circuit design, but may also lead to a decline in circuit performance. In some cases, the circuit needs to be redesigned, resulting in a waste of time and resources.

[0003] In the process of implementing the embodiments of the present invention, the inventors found that there are at least the following problems or defects in the prior art: the existing automated routing method fails to fully consider the specific position and direction of the pins, resulting in the possibility that the routing path passes through the component area, causing routing conflicts and overlaps, and affecting the reliability and performance of the circuit. In addition, the existing methods lack effective optimization strategies when dealing with overlapping routing, and often require manual intervention, which limits the practicality and efficiency of automated routing technology. Summary of the invention

[0004] The invention provides an automatic wiring method, system, equipment and medium based on pin position and direction.

[0005] In a first aspect of the present invention, there is provided an automatic routing method based on pin position and direction, comprising:

[0006] Get the information of both ends of the wiring, including the starting point and the end point. The one with the larger y coordinate is taken as the starting point. When the y coordinates are equal, the one with the smaller x coordinate is taken as the starting point. If the x and y coordinates are equal, then they are directly connected.

[0007] If the connection is a symbol, get the direction of the pin in the symbol, the number of pins in that direction, the sequence number of the current pin in that direction, and the distance between the two symbols;

[0008] If there is no symbol information, it means it is a node and the orthogonal wiring is performed directly;

[0009] Calculate the unit offset based on the symbol spacing and the number of pins;

[0010] Start wiring from the starting point, and route the wires in the direction of the pin by multiplying the serial number by the unit offset;

[0011] Calculate whether the area where the starting symbol is located will be crossed. If so, add an inflection point to bypass the area where the starting symbol belongs.

[0012] Connect to the end point pin to detect whether it crosses the area where the end point symbol belongs. If it does, it will bypass the end point symbol by multiplying the sequence number by the unit offset to increase the turning point.

[0013] Detect whether the wiring overlaps with the existing wiring;

[0014] If the overlapping wiring parts belong to the same network, remove the overlapping wiring parts and add nodes to achieve the optimal wiring;

[0015] After completing the wiring, draw the Symbol into the schematic and save it.

[0016] Furthermore, the unit offset is calculated based on the symbol spacing and the number of pins, including:

[0017] Calculate the relative position of each pin in the symbol direction;

[0018] Determines the unit offset based on relative position and spacing.

[0019] Furthermore, routing is started from the starting point, and the wires are offset in the direction of the pins by the serial number multiplied by the unit, including:

[0020] Determine the outlet direction of the starting pin;

[0021] Determine the routing path based on the pin number and the calculated unit offset;

[0022] Route along the determined path until reaching the next predetermined pin or symbol boundary.

[0023] Furthermore, the area where the inflection point is added to bypass the symbol includes:

[0024] Detect the intersection of routing paths and symbol boundaries;

[0025] Add inflection points at detected intersections;

[0026] Adjust the routing path so that it bypasses the area where the symbol belongs.

[0027] Further, detecting whether the wiring overlaps with the existing wiring includes:

[0028] Detect the spatial relationship between the new wiring path and the existing wiring path;

[0029] Determine whether the new routing path overlaps with the existing routing path;

[0030] If overlap is detected, the process of re-planning the routing path is triggered.

[0031] Further, detecting whether the overlapping wiring parts belong to the same network includes:

[0032] Identify the net to which the overlapping wiring portion belongs;

[0033] Compare the net identifications of the overlapping wiring sections;

[0034] If the overlapping wiring parts belong to the same network, an optimization operation is performed.

[0035] Furthermore, the overlapping wiring parts of the same network are removed and nodes are added to achieve optimal wiring, including:

[0036] Identify and mark overlapping wiring sections;

[0037] Remove the marked overlapping wiring sections;

[0038] Add new nodes at appropriate locations to optimize the wiring structure.

[0039] In a second aspect of the present invention, there is provided an automatic routing device based on pin position and direction, comprising:

[0040] a. An information acquisition unit for acquiring information at both ends of the wiring;

[0041] b. Unit offset calculation unit, used to calculate the unit offset according to the symbol spacing and the number of pins;

[0042] c. Routing unit, used to start routing from the starting point and add turning points to bypass the area to which the symbol belongs when necessary;

[0043] d. An overlap detection unit, used to detect whether the wiring overlaps with the existing wiring;

[0044] e. A network detection unit, used to detect whether the overlapping wiring parts belong to the same network;

[0045] f. The wiring optimization unit is used to remove the overlapping wiring parts of the same network and add nodes to achieve the optimal wiring;

[0046] g. User interaction interface, allowing users to manually adjust the wiring path;

[0047] h. Drawing and saving unit, used to draw the completed wiring into the schematic diagram and save it.

[0048] In a third aspect of the present invention, an electronic device is provided, comprising: at least one processor, a memory and an input-output unit; wherein the memory is used to store a computer program, and the processor is used to call the computer program stored in the memory to execute any one of the methods described in the first aspect.

[0049] In a fourth aspect of the present invention, a computer-readable storage medium is provided, which includes instructions, and when the instructions are executed on a computer, the computer executes any one of the methods in the first aspect.

[0050] According to the above-mentioned embodiment of the present invention, at least the following beneficial effects are achieved: by adopting an automatic wiring method based on the position and direction of the pin, the automation level and wiring quality of the circuit design can be significantly improved. The method can intelligently identify and utilize the position and direction information of the pin, optimize the wiring path, and reduce conflicts and overlaps during the wiring process. It ensures that the wiring will not pass through the component area by accurately calculating the unit offset and the wiring path, thereby avoiding errors and time consumption caused by manual adjustment. In addition, the method also includes detection and optimization of overlapping wiring, which can automatically identify and process overlapping wiring within the same network, remove unnecessary lines, and add necessary nodes to achieve a more optimal wiring structure.

[0051] In addition, the design of the automatic wiring device and electronic device can provide users with an intuitive user interaction interface, allowing users to manually adjust the wiring path as needed, further enhancing the flexibility and adaptability of wiring. This method can not only improve the accuracy and efficiency of wiring, but also reduce the error rate in the design process, shorten the circuit design cycle, and bring important technological progress to the field of electronic circuit design. BRIEF DESCRIPTION OF THE DRAWINGS

[0052] The above and other objects, features and advantages of the exemplary embodiments of the present invention will become readily understood by reading the detailed description below with reference to the accompanying drawings. In the accompanying drawings, several embodiments of the present invention are shown in an exemplary and non-limiting manner, in which:

[0053] Figure 1 A schematic flow chart of an automatic routing method based on pin positions and directions provided in one embodiment of the present invention;

[0054] Figure 2 A schematic diagram of the structure of an automatic routing device based on pin positions and directions provided by an embodiment of the present invention;

[0055] Figure 3The schematic diagram schematically shows the structure of an electronic device according to an embodiment of the present invention. DETAILED DESCRIPTION

[0056] The principles and spirit of the present invention will be described below with reference to several exemplary embodiments. It should be understood that these embodiments are provided only to enable those skilled in the art to better understand and implement the present invention, and are not intended to limit the scope of the present invention in any way. On the contrary, these embodiments are provided to make the present invention more thorough and complete, and to fully convey the scope of the present invention to those skilled in the art.

[0057] Those skilled in the art will appreciate that the embodiments of the present invention may be implemented as a system, device, apparatus, method or computer program product. Therefore, the present invention may be implemented in the following forms, namely: complete hardware, complete software (including firmware, resident software, microcode, etc.), or a combination of hardware and software.

[0058] It should be noted that any number of elements in the drawings is for illustration rather than limitation, and any naming is only for distinction and does not have any limiting meaning.

[0059] Reference below Figure 1 , Figure 1 FIG. 1 is a flow chart of an automatic routing method based on pin position and direction provided by an embodiment of the present invention. Figure 1 As shown, an automatic routing method 100 based on pin position and direction includes:

[0060] Get the information of both ends of the wiring, including the starting point and the end point. The one with the larger y coordinate is taken as the starting point. When the y coordinates are equal, the one with the smaller x coordinate is taken as the starting point. If the x and y coordinates are equal, then they are directly connected.

[0061] If the connection is a symbol, get the direction of the pin in the symbol, the number of pins in that direction, the sequence number of the current pin in that direction, and the distance between the two symbols;

[0062] If there is no symbol information, it means it is a node and the orthogonal wiring is performed directly;

[0063] Calculate the unit offset based on the symbol spacing and the number of pins;

[0064] Start wiring from the starting point, and route the wires in the direction of the pin by multiplying the serial number by the unit offset;

[0065] Calculate whether the area where the starting symbol is located will be crossed. If so, add an inflection point to bypass the area where the starting symbol belongs.

[0066] Connect to the end point pin to detect whether it crosses the area where the end point symbol belongs. If it does, it will bypass the end point symbol by multiplying the sequence number by the unit offset to increase the turning point.

[0067] Detect whether the wiring overlaps with the existing wiring;

[0068] If the overlapping wiring parts belong to the same network, remove the overlapping wiring parts and add nodes to achieve the optimal wiring;

[0069] After completing the wiring, draw the Symbol into the schematic and save it.

[0070] It should be noted that this automatic wiring method first needs to obtain information on both ends of the wiring, including the coordinates of the starting point and the end point. Here, the starting point and the end point refer to the two circuit nodes that need to be connected in the circuit design. The starting point is determined according to the size of the y coordinate. If the y coordinates are the same, it is determined according to the x coordinate, which ensures the orderliness and logic of the wiring. Symbol here refers to the component symbol in the circuit design. If the connection point involves a component symbol, it is necessary to obtain the direction, quantity, serial number of the pin on the component symbol and the distance between the two component symbols.

[0071] Specifically, the process of obtaining wiring information can be implemented by writing a specific algorithm that can identify and read the node coordinate data in the circuit design file. For determining the starting point and the end point, the algorithm will first compare the y coordinate values ​​of the two nodes and select the larger one as the starting point.

[0072] More specifically, if the y coordinates are the same, the x coordinates are compared and the smaller one is selected as the starting point. As for component symbols, the algorithm needs to be able to parse the data in the component library to obtain information about the pins, including their orientation and position number on the component.

[0073] Preferably, in order to improve the accuracy and efficiency of routing, some intelligent judgment mechanisms can be added to the algorithm. For example, when the coordinates of two nodes are very close, a threshold can be set, and routing operations are only required when the coordinate difference exceeds this threshold.

[0074] Furthermore, for the distance between component symbols, the unit offset can be dynamically adjusted according to the size of the circuit board and the wiring density to adapt to different design requirements. During the routing process, if it is detected that the routing may pass through the component symbol area, the algorithm can automatically add inflection points to make the routing path bypass these areas, thereby avoiding adverse effects on circuit performance.

[0075] In some embodiments, the unit offset is calculated based on the symbol spacing and the number of pins, including:

[0076] Calculate the relative position of each pin in the symbol direction;

[0077] Determines the unit offset based on relative position and spacing.

[0078] It should be noted that, according to the original text, this embodiment involves the step of calculating the unit offset according to the symbol spacing and the number of pins. Here, the unit offset refers to the movement distance of each pin relative to the previous pin in the symbol direction during the wiring process. The calculation of this unit offset is to ensure that the wiring is evenly distributed between symbols to avoid being too concentrated or dispersed, thereby affecting the performance and aesthetics of the circuit.

[0079] Specifically, the process of calculating the unit offset can be carried out as follows: First, the relative position of each pin on the symbol needs to be determined, which can be achieved by reading the symbol layout data. Then, based on these positions and the spacing between symbols, the distance that each pin should be moved is calculated.

[0080] More specifically, this calculation can be done with a simple mathematical formula. For example, if the symbol spacing is fixed, then the unit offset can be simply set to the spacing divided by the number of pins. Additionally, if the symbol spacing is uneven, then a more complex algorithm may be required to determine the optimal location for each pin.

[0081] Preferably, in order to make the routing more accurate and adaptable to different design requirements, some additional parameters can be introduced to adjust the calculation of the unit offset. For example, a minimum offset value can be set to ensure that the routing is not too concentrated even when the number of pins is small.

[0082] Furthermore, the size of the unit offset can be adjusted according to the performance requirements of the circuit to avoid signal interference or meet specific wiring density requirements. In addition, it is also possible to consider introducing a dynamic adjustment mechanism to adjust the unit offset in real time according to obstacles or special requirements encountered during the actual wiring process to achieve the best wiring effect.

[0083] In some embodiments, routing is started from a starting point, and routing is performed in a pin direction by multiplying the number by a unit offset, including:

[0084] Determine the outlet direction of the starting pin;

[0085] Determine the routing path based on the pin number and the calculated unit offset;

[0086] Route along the determined path until reaching the next predetermined pin or symbol boundary.

[0087] It should be noted that this embodiment describes in detail the process of routing from the starting point and offsetting the wire in the direction of the pin by multiplying the serial number by a unit. Here, the pin direction refers to the orientation of the pin on the symbol, and the serial number refers to the position order of the pin on the symbol. This process is to ensure that the wiring can follow the predetermined path, starting from the starting pin, along the correct direction, through the predetermined pin, and finally reach the end point.

[0088] Specifically, the implementation of the routing process can be carried out through the following steps: First, determine the direction of the line from the starting pin, which is usually based on the orientation and position of the pin on the symbol. Next, determine the routing path based on the pin number and the pre-calculated unit offset. This involves accurate calculation of the position of each pin to ensure the accuracy of the routing path. Route along the determined path until the next predetermined pin or symbol boundary is reached. This process requires the use of algorithms to automatically calculate and draw the routing path to ensure the accuracy of the path and avoid conflicts with existing routing.

[0089] Preferably, in order to improve the efficiency and accuracy of routing, some intelligent judgment and adjustment mechanisms can be introduced. For example, if it is detected that the routing path may conflict with existing routing or symbol boundaries, the algorithm can automatically adjust the routing path and add necessary turning points to bypass these obstacles.

[0090] Furthermore, some parameters such as maximum offset and minimum inflection point spacing can be set to control the compactness and aesthetics of the routing. In some cases, manual adjustment options can also be provided, allowing designers to fine-tune the automatically generated routing path according to actual needs to meet specific design requirements.

[0091] In some embodiments, adding an inflection point to bypass the region to which the symbol belongs includes:

[0092] Detect the intersection of routing paths and symbol boundaries;

[0093] Add inflection points at detected intersections;

[0094] Adjust the routing path so that it bypasses the area where the symbol belongs.

[0095] It should be noted that this embodiment describes the steps of adding an inflection point to bypass the area to which the symbol belongs. The inflection point here refers to the point where the direction changes in the routing path, and the area to which the symbol belongs refers to the space area occupied by the component symbol in the circuit design. This process is to ensure that the routing does not pass through the component symbol area, thereby avoiding interference with the circuit design.

[0096] Specifically, the steps of adding inflection points to bypass the symbol area can be carried out as follows: First, the intersection points of the routing path and the symbol boundary need to be detected, which can be achieved by calculating the intersection points of the routing path and the symbol boundary. Once the intersection points are detected, inflection points are added at these points, which is achieved by modifying the routing path so that the path changes direction when approaching the symbol boundary. Next, the routing path is adjusted to bypass the area to which the symbol belongs, which may involve replanning and calculating the path to ensure that the new path does not intersect the symbol area.

[0097] Preferably, in order to optimize the routing path and reduce unnecessary complexity, some advanced path planning algorithms can be used. For example, the shortest path algorithm in graph theory can be used to find the best path to bypass the symbol area.

[0098] Furthermore, some heuristic rules can be introduced, such as giving priority to paths parallel or perpendicular to the symbol boundary to reduce the bending and crossing of the wiring. In some cases, if the symbol area is very dense, it is also possible to consider introducing the function of automatically adjusting the symbol position to reduce conflicts during wiring. These methods can further improve the automation of wiring and the overall quality of the design.

[0099] In some embodiments, detecting whether a wiring overlaps with an existing wiring includes:

[0100] Detect the spatial relationship between the new wiring path and the existing wiring path;

[0101] Determine whether the new routing path overlaps with the existing routing path;

[0102] If overlap is detected, the process of re-planning the routing path is triggered.

[0103] It should be noted that this embodiment involves the step of detecting whether the wiring overlaps with the existing wiring. Here, overlap refers to the coincidence of the spatial position of the newly laid line and the existing line. This detection process is to ensure that the path of the new wiring does not conflict with the existing wiring, thereby avoiding circuit short circuits or other potential electrical problems.

[0104] Specifically, the process of detecting overlap can be achieved through the following steps: First, a database or storage structure is needed to save the spatial information of existing routing paths. Then, an algorithm is used to detect the spatial relationship between the new routing path and these existing paths. This usually involves calculating the distance between the two paths and determining whether this distance is less than a preset threshold to determine whether there is an overlap. If an overlap is detected, the algorithm will trigger the process of replanning the routing path, which may include adjusting the path or adding inflection points to avoid the overlapping area.

[0105] Preferably, in order to improve the accuracy and efficiency of detection, a more advanced spatial search and comparison algorithm can be used. For example, a spatial indexing technique, such as an R-tree or a quadtree, can be used to quickly locate and compare new and old wiring paths.

[0106] Furthermore, multiple overlap detection thresholds can be set to accommodate circuit designs of different densities and complexities. During the overlap detection process, machine learning algorithms can also be introduced to predict and avoid potential overlap areas, thereby reducing the number of manual adjustments required. These methods can further improve the intelligence level of wiring automation and reduce manual intervention in the design process.

[0107] In some embodiments, detecting whether the overlapping wiring portions belong to the same net includes:

[0108] Identify the net to which the overlapping wiring portion belongs;

[0109] Compare the net identifications of the overlapping wiring sections;

[0110] If the overlapping wiring parts belong to the same network, an optimization operation is performed.

[0111] It should be noted that this embodiment describes in detail the steps of detecting whether the overlapping wiring parts belong to the same network. Here, a network refers to a collection of electrical connections in a circuit, in which all nodes are connected together by wires or printed circuit board traces. The purpose of this process is to optimize the wiring and ensure that only when the overlapping parts belong to different networks, they are retained. If they are the same network, the overlapping parts can be removed to avoid wasting resources.

[0112] Specifically, the following steps can be used to detect whether the overlapping wiring parts belong to the same network: first, the network identifier of each wiring section needs to be identified, which can be achieved by analyzing the network connection information in the circuit design file. Then, the network identifiers of the overlapping wiring parts are compared to determine whether they belong to the same network.

[0113] More specifically, this process involves parsing the circuit design file and analyzing the relationship between the routing paths and network identifiers. If the overlapping parts belong to the same network, optimization operations are performed, such as removing the overlapping routing parts and adding new nodes at appropriate locations to optimize the routing structure.

[0114] Preferably, in order to improve the accuracy of detection and optimize the efficiency of wiring, some advanced algorithms and technologies can be introduced. For example, graphic recognition technology can be used to quickly identify and compare network identifiers, or artificial intelligence algorithms can be used to predict and identify possible overlapping areas.

[0115] Further, some parameters, such as the size threshold of the overlap area, can be set to determine whether an optimization operation is required. In some cases, if the overlap is very small, optimization may not be required to avoid over-adjusting the routing path.

[0116] Going further, it is also possible to consider introducing user interaction to allow users to manually confirm whether optimization is needed when overlap is detected to adapt to specific design needs and preferences. These methods can further improve the flexibility and adaptability of routing automation.

[0117] In some embodiments, removing overlapping wiring parts of the same network and adding nodes to achieve optimal wiring includes:

[0118] Identify and mark overlapping wiring sections;

[0119] Remove the marked overlapping wiring sections;

[0120] Add new nodes at appropriate locations to optimize the wiring structure.

[0121] It should be noted that this embodiment involves the steps of removing the overlapping wiring parts of the same network and adding nodes to optimize the wiring structure. Here, the overlapping wiring parts refer to the repeated line parts in the same network due to path planning or design changes during the wiring process. The nodes refer to the points where the lines in the circuit intersect or branch. Adding nodes helps to simplify the circuit and reduce material usage.

[0122] Specifically, the steps of removing overlapping wiring and adding nodes can be carried out as follows: First, the overlapping wiring parts are identified and marked by the wiring analysis tool in the circuit design software. This usually involves comparing the path information in the wiring database to determine which parts are repeated. Then, according to the instructions of the software or the input of the designer, these marked overlapping wiring parts are removed. Next, new nodes are added at appropriate locations in the wiring path, which can be determined by analyzing the electrical characteristics and physical layout of the circuit to ensure that the optimized wiring meets both electrical performance requirements and has a good physical layout.

[0123] Preferably, in order to further improve the efficiency and effect of routing optimization, some intelligent strategies can be adopted. For example, machine learning algorithms can be used to predict which routing parts may overlap and make optimization suggestions in the early stages of design.

[0124] Furthermore, you can set automated routing optimization parameters, such as minimizing routing length, reducing the number of inflection points, etc., to guide the software to automatically add nodes and adjust routing paths. In some cases, you can also consider the thermal management and signal integrity of the circuit, and choose to add nodes in areas with concentrated heat or large signal interference to improve the overall performance and reliability of the circuit. These methods can make the routing optimization process more sophisticated and comprehensive.

[0125] The above-mentioned embodiments of the present invention have the following beneficial effects: The automatic wiring method described in the present invention can effectively handle complex circuit design problems. By accurately obtaining information at both ends of the wiring and considering the direction and position of the pins, the method can optimize the selection of the starting point and the end point and reduce conflicts in the wiring process. It can intelligently add turning points to bypass components by calculating unit offsets and detecting the intersection of the wiring path and the component area, avoiding the wiring passing through the component area, thereby improving the accuracy of the wiring and the reliability of the circuit. In addition, the method also includes the detection and optimization of overlapping wiring, which can identify and process overlapping wiring within the same network, remove unnecessary lines, and add necessary nodes to achieve a more optimal wiring structure.

[0126] The technical features described in these claims can significantly improve the automation level of circuit design, reduce human errors, and shorten the design cycle. Through the automated wiring optimization unit, the overlapping wiring parts of the same network can be automatically removed, and new nodes can be added at appropriate locations, which can not only reduce the use of wiring materials and reduce costs, but also improve the performance and stability of the circuit. At the same time, the method also provides a user interaction interface, allowing the user to manually adjust the wiring path according to specific needs, which can enhance the flexibility and adaptability of the design.

[0127] like Figure 2 As shown, in some embodiments, an automatic routing device 200 based on pin position and direction includes:

[0128] a. An information acquisition unit for acquiring information at both ends of the wiring;

[0129] b. Unit offset calculation unit, used to calculate the unit offset according to the symbol spacing and the number of pins;

[0130] c. Routing unit, used to start routing from the starting point and add turning points to bypass the area to which the symbol belongs when necessary;

[0131] d. An overlap detection unit, used to detect whether the wiring overlaps with the existing wiring;

[0132] e. A network detection unit, used to detect whether the overlapping wiring parts belong to the same network;

[0133] f. The wiring optimization unit is used to remove the overlapping wiring parts of the same network and add nodes to achieve the optimal wiring;

[0134] g. User interaction interface, allowing users to manually adjust the wiring path;

[0135] h. Drawing and saving unit, used to draw the completed wiring into the schematic diagram and save it.

[0136] It can be understood that the modules described in the automatic routing device 200 based on pin position and direction are similar to those described in the reference Figure 1 Therefore, the operations, features and beneficial effects described above for the automatic wiring method based on pin position and direction are also applicable to the automatic wiring device 200 based on pin position and direction and the modules contained therein, and will not be described in detail here.

[0137] Reference below Figure 3 , which shows a schematic diagram of a structure 300 of an electronic device suitable for implementing some embodiments of the present invention. The electronic devices in some embodiments of the present invention may include, but are not limited to, mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), vehicle-mounted terminals (such as vehicle-mounted navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 3 The terminal device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present invention.

[0138] like Figure 3 As shown, the electronic device 300 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 301, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 302 or a program loaded from a storage device 308 into a random access memory (RAM) 303. In the RAM 303, various programs and data required for the operation of the electronic device 300 are also stored. The processing device 301, the ROM 302, and the RAM 303 are connected to each other via a bus 304. An input / output (I / O) interface 305 is also connected to the bus 304.

[0139] Typically, the following devices may be connected to the I / O interface 305: input devices 306 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; output devices 307 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; storage devices 308 including, for example, a magnetic tape, a hard disk, etc.; and communication devices 309. The communication devices 309 may allow the electronic device 300 to communicate with other devices wirelessly or by wire to exchange data. Although Figure 3 The electronic device 300 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead. Figure 3 Each block shown in the figure may represent one device, or may represent multiple devices as required.

[0140] Furthermore, the storage medium of the embodiment of the present application stores program instructions that can implement all the above methods, wherein the program instructions can be stored in the above storage medium in the form of a software product, including several instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) or a processor to execute all or part of the steps of the methods described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, or terminal devices such as a computer, a server, a mobile phone, and a tablet.

[0141] The above descriptions are only some preferred embodiments of the present invention and an explanation of the technical principles used. Those skilled in the art should understand that the scope of the invention involved in the embodiments of the present invention is not limited to the technical solutions formed by a specific combination of the above technical features, but should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the above inventive concept. For example, the above features are replaced with (but not limited to) technical features with similar functions disclosed in the embodiments of the present invention to form a technical solution.

Claims

1. An automatic routing method based on pin position and direction, characterized in that: The following steps are involved: Get the information of both ends of the wiring, including the starting point and the end point. The one with the larger y coordinate is taken as the starting point. When the y coordinates are equal, the one with the smaller x coordinate is taken as the starting point. If the x and y coordinates are equal, then they are directly connected. If the connection is a symbol, get the direction of the pin in the symbol, the number of pins in that direction, the sequence number of the current pin in that direction, and the distance between the two symbols; If there is no symbol information, it means it is a node and the orthogonal wiring is performed directly; Calculate the unit offset based on the symbol spacing and the number of pins; Start wiring from the starting point, and route the wires in the direction of the pin by multiplying the serial number by the unit offset; Calculate whether the area where the starting symbol is located will be crossed. If so, add an inflection point to bypass the area where the starting symbol belongs. Connect to the end point pin to detect whether it crosses the area where the end point symbol belongs. If it does, it will bypass the end point symbol by multiplying the sequence number by the unit offset to increase the turning point. Detect whether the wiring overlaps with the existing wiring; If the overlapping wiring parts belong to the same network, remove the overlapping wiring parts and add nodes to achieve the optimal wiring; After completing the wiring, draw the Symbol into the schematic and save it.

2. The method according to claim 1, characterized in that Calculate the unit offset based on the symbol spacing and the number of pins, including: Calculate the relative position of each pin in the symbol direction; Determines the unit offset based on relative position and spacing.

3. The method according to claim 1, characterized in that: Start routing from the starting point, and route the wires in the direction of the pins by multiplying the serial number by the unit offset, including: Determine the outlet direction of the starting point pin; Determine the routing path based on the pin number and the calculated unit offset; Route along the determined path until reaching the next predetermined pin or symbol boundary.

4. The method according to claim 1, characterized in that: Add inflection points to bypass the symbol area including: Detect the intersection of the routing path and the symbol boundary; Add inflection points at detected intersections; Adjust the routing path so that it bypasses the area where the symbol belongs.

5. The method according to claim 1, characterized in that Detecting whether a wiring overlaps with an existing wiring includes: Detect the spatial relationship between the new wiring path and the existing wiring path; Determine whether the new routing path overlaps with the existing routing path; If overlap is detected, the process of re-planning the routing path is triggered.

6. The method according to claim 1, characterized in that Detecting whether overlapping wiring parts belong to the same network includes: Identify the net to which the overlapping wiring portion belongs; Compare the net identifications of the overlapping wiring sections; If the overlapping wiring parts belong to the same network, an optimization operation is performed.

7. The method according to claim 1, characterized in that Remove overlapping routing parts of the same network and add nodes to achieve optimal routing, including: Identify and mark overlapping wiring sections; Remove the marked overlapping wiring sections; Add new nodes at appropriate locations to optimize the wiring structure.

8. An automatic routing device based on pin position and direction, comprising: a. An information acquisition unit for acquiring information at both ends of the wiring; b. Unit offset calculation unit, used to calculate the unit offset according to the symbol spacing and the number of pins; c. Routing unit, used to start routing from the starting point and add turning points to bypass the area to which the symbol belongs when necessary; d. An overlap detection unit, used to detect whether the wiring overlaps with the existing wiring; e. A network detection unit, used to detect whether the overlapping wiring parts belong to the same network; f. The wiring optimization unit is used to remove the overlapping wiring parts of the same network and add nodes to achieve the optimal wiring; g. User interaction interface, allowing users to manually adjust the wiring path; h. Drawing and saving unit, used to draw the completed wiring into the schematic diagram and save it.

9. An electronic device, comprising: at least one processor; as well as A memory communicatively connected to the at least one processor; wherein the memory stores instructions executable by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute an automatic routing method based on pin position and direction as described in any one of claims 1-7.

10. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to enable the computer to execute an automatic routing method based on pin positions and directions according to any one of claims 1-7.

Citation Information

Cited By

  • Geometric constraint based two-dimensional continuous space routing path planning method

    CN122735621A

  • Automatic routing method and system based on pin positions and directions, device, and medium

    WO2026098010A1