Method, device and storage medium for automatic selection of differential impedance lines
Through the method of automated selection and calculation of trace spacing, the problem of manual selection of differential impedance lines in the prior art is solved, and more efficient and accurate selection and adjustment of differential impedance lines is achieved.
Patent Information
- Application Number
- CN202210068939.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-01-21
- Publication Date
- 2025-02-11
- Estimated Expiration
- 2042-01-21
AI Technical Summary
In the prior art, selecting and adjusting differential impedance lines requires manual operation, which takes a long time and is poor in accuracy.
Through an automated method, it includes selecting traces with a line width as a set value, calculating and marking trace spacing, determining traces that meet spacing requirements, and determining the differential impedance line by calculating spacing ratios.
The time spent on manual operation is greatly reduced, efficiency and accuracy are improved, and the time for selecting and adjusting differential impedance lines can be shortened by more than half on the basis of the prior art.
Smart Images

Figure CN114444431B_ABST
Abstract
Description
Technical Field
[0001] The invention relates to the field of PCB design, and in particular to a method, a device and a storage medium for automatically selecting a differential impedance line. Background Art
[0002] In order to make the differential impedance lines in the PCB design data meet the production requirements, CAM engineers generally need to compensate according to the impedance simulation calculation to achieve the impedance value within the range required by the customer. The selection of differential impedance lines generally needs to meet two conditions: one is that the original design line width is equal to the set value, and the other is that the spacing between the two lines is equal to the set value and the ratio reaches 90% or more. The current working mode is that someone selects the line width of the specified width, and then measures and analyzes the spacing one by one, and finally determines the line that meets the requirements and compensates. This mode takes a long time and has relatively poor accuracy. Summary of the invention
[0003] In view of the deficiencies in the prior art, the present invention discloses a method, a device and a storage medium for automatically selecting a differential impedance line.
[0004] The technical solution adopted by the present invention is as follows:
[0005] A method for automatically selecting a differential impedance line comprises the following steps:
[0006] Select the trace with the set line width value;
[0007] Calculate the spacing between traces;
[0008] Determine the routing lines that meet the spacing requirements; and mark a plurality of line segments for indicating the spacing distance at different positions of the spacing between the routing lines; compare the spacing values indicated by the line segments with the set spacing values, and the line segments whose spacing values are equal to the set spacing values are selected line segments, and the line segments whose spacing values are not equal to the set spacing values are non-selected line segments; delete the non-selected line segments; the continuous routing lines that can be touched by both ends of the selected line segments at any position are the first part of the routing lines, and the remaining routing lines are the second part of the routing lines; the first part of the routing lines are the routing lines that meet the spacing requirements;
[0009] Determine the differential impedance line; confirm the length L1 between the start and end points of the first portion of the routing, and calculate the length L2 between the start and end points of the entire routing where the first portion of the routing is located, and then calculate the spacing ratio, spacing ratio = L1 / L2. When the spacing ratio is greater than the set spacing ratio value, determine that the entire routing is a differential impedance line.
[0010] Its further technical solution comprises the following steps:
[0011] Select the impedance line specification you need to select on the working layer;
[0012] Select the trace with the set line width in the working layer and copy it to the auxiliary layer;
[0013] Calculate the spacing between the traces on the auxiliary layer;
[0014] Determine the traces in the auxiliary layer that meet the spacing requirements:
[0015] Generate a temporary graphic layer, in which a plurality of line segments for indicating spacing distances are marked at different positions of the spacing between the routing lines in the temporary graphic layer; compare the spacing values indicated by the line segments of the temporary graphic layer with the set spacing values, and the line segments whose spacing values are equal to the set spacing values are selected line segments, and the line segments whose spacing values are not equal to the set spacing values are non-selected line segments; delete the non-selected line segments in the temporary graphic layer; then overlap and compare the temporary graphic layer with the auxiliary layer, and in the auxiliary layer, the continuous routing lines that can be touched by both ends of the projection of the selected line segments at any position in the auxiliary layer are the first part of routing lines, and the remaining routing lines are the second part of routing lines; the first part of routing lines are routing lines that meet the spacing requirements;
[0016] Determine the differential impedance line in the working layer; calculate the length L1 between the start point and the end point of the first part of the routing in the working layer, and calculate the length L2 between the start point and the end point of the entire routing where the first part of the routing is located, and then calculate the spacing ratio, the spacing ratio = L1 / L2, when the spacing ratio> the set spacing ratio value, determine that the entire routing is a differential impedance line.
[0017] A further technical solution is that the specific method for determining the spacing ratio is:
[0018] Calculate the length L1 between the start and end points of the first portion of the trace:
[0019]
[0020] n is a natural number; N is the total number of all small segments in the first part of the routing; (x ns ,y ns ) is the coordinate value of the end point of the nth segment, (x ne ,y ne ) is the starting point coordinate value of the nth segment of the line;
[0021] Calculate the length L2 between the start and end points of the entire route where the first part of the route is located:
[0022]
[0023] m is a natural number; M is the total number of all small segments in the entire route; (x ms ,y ms) is the coordinate value of the end point of the mth segment, (x me ,y me ) is the starting point coordinate value of the mth segment of the line;
[0024] Spacing ratio = L1 / L2. When the spacing ratio is greater than the set spacing ratio value, the entire trace is determined to be a differential impedance line.
[0025] A further technical solution is to enlarge the end edge of the selected line segment outward to a set width to ensure that both ends of the selected line segment contact the first portion of the routing.
[0026] A differential impedance line automatic selection device, comprising:
[0027] The routing selection module is used to select routing lines with a set width;
[0028] A routing spacing calculation module calculates the spacing between routings and marks a plurality of line segments representing the spacing distance at different positions of the spacing between routings;
[0029] The routing confirmation module compares the spacing value represented by the line segment with the set spacing value. The line segment whose spacing value is equal to the set spacing value is the selected line segment, and the line segment whose spacing value is not equal to the set spacing value is the non-selected line segment; the non-selected line segment is deleted; the continuous routing that can be touched by both ends of the selected line segment at any position is the first part of the routing, and the remaining routing is the second part of the routing; the first part of the routing is confirmed to meet the spacing requirements.
[0030] The differential impedance line determination module is used to confirm the length L1 between the starting point and the end point of the first part of the routing, and calculate the length L2 between the starting point and the end point of the entire routing where the first part of the routing is located, and then calculate the spacing ratio; spacing ratio = L1 / L2; when the spacing ratio is greater than the set spacing ratio value, the entire routing is determined to be a differential impedance line.
[0031] A further technical solution is that the module further includes a working layer, an auxiliary layer and a temporary graphic layer; the working layer includes PCB elements; the PCB elements include routing; the module further includes:
[0032] The routing selection module is used to select routing lines with a set width in the working layer and copy them to the auxiliary layer;
[0033] A routing spacing calculation module is used to calculate the spacing between the routings of the auxiliary layer and transmit the spacing distance value to the temporary graphics layer;
[0034] Routing confirmation module: used to mark multiple line segments for indicating spacing distances at different positions of the spacing between routings in the temporary graphic layer; compare the spacing values indicated by the line segments in the temporary graphic layer with the set spacing values, and the line segments whose spacing values are equal to the set spacing values are selected line segments, and the line segments whose spacing values are not equal to the set spacing values are non-selected line segments; delete the non-selected line segments in the temporary image layer; then overlap and compare the temporary graphic layer with the auxiliary layer, and the continuous routing that can be touched by both ends of the projection of the selected line segments at any position in the auxiliary layer is the first part of the routing, and the remaining routing is the second part of the routing; confirm that the first part of the routing is the routing that meets the spacing requirements; delete the second part of the routing;
[0035] The differential impedance line determination module is used to calculate the length L1 between the start point and the end point of the first part of the routing in the working layer, and calculate the length L2 between the start point and the end point of the entire routing where the first part of the routing is located, and then calculate the spacing ratio; the spacing ratio = L1 / L2; when the spacing ratio is greater than the set spacing ratio value, the entire routing is determined to be a differential impedance line.
[0036] A further technical solution is that, in the differential impedance line determination module, the spacing ratio of the routing is calculated by a spacing ratio calculation module, and the spacing ratio calculation module performs calculation according to the following formula:
[0037] Calculate the length L1 between the start and end points of the first portion of the trace:
[0038]
[0039] n is a natural number; N is the total number of all small segments in the first part of the routing; (x ns ,y ns ) is the coordinate value of the end point of the nth segment, (x ne ,y ne ) is the starting point coordinate value of the nth segment of the line;
[0040] Calculate the length L2 between the start and end points of the entire route where the first part of the route is located:
[0041]
[0042] m is a natural number; M is the total number of all small segments in the entire route; (x ms ,y ms ) is the coordinate value of the end point of the mth segment, (x me ,y me ) is the starting point coordinate value of the mth segment of the line;
[0043] Spacing ratio = L1 / L2. When the spacing ratio is greater than the set spacing ratio value, the entire trace is determined to be a differential impedance line.
[0044] A device for automatically selecting a differential impedance line comprises a memory, a processor and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the steps of any of the above methods are implemented.
[0045] A computer-readable storage medium stores a computer program, wherein the computer program implements the steps of any of the above methods when executed by a processor.
[0046] The beneficial effects of the present invention are as follows:
[0047] The present invention improves the current situation in which differential impedance lines and impedance lines need to be manually selected and adjusted in the prior art, greatly reducing the time consumed by manual operation. The method and module disclosed in the present invention can be implemented through an automated program, shortening the time for selecting differential impedance lines and adjusting impedance lines by more than half, greatly improving efficiency and accuracy compared to the prior art.
[0048] The method and module described in the present invention can be implemented using Genesis software or other software with similar functions. Genesis is a computer-aided manufacturing software used in circuit board manufacturing companies. Based on the existing functions, it allows users to implement secondary development on it to meet the needs of customers. Therefore, the present invention is easy to implement and has feasibility. BRIEF DESCRIPTION OF THE DRAWINGS
[0049] Figure 1 This is a schematic diagram of the process of Example 1 of the present invention.
[0050] Figure 2 This is a schematic diagram of the process of Example 2 of the present invention.
[0051] Figure 3 Schematic diagram of the routing selected in the embodiment.
[0052] Figure 4 It is a schematic diagram for calculating and marking the spacing between traces in an embodiment.
[0053] Figure 5 for Figure 4 An enlarged schematic diagram of a portion of .
[0054] Figure 6 FIG. 1 is a schematic diagram of the wiring of the first part in the embodiment.
[0055] Figure 7 This is a schematic diagram of the process of Example 3 of the present invention.
[0056] Figure 8 This is a schematic diagram of the module structure of Example 4 of the present invention.
[0057] Fig. 9 This is a schematic diagram of the module structure of Example 5 of the present invention. DETAILED DESCRIPTION
[0058] The specific implementation of the present invention will be described below in conjunction with the accompanying drawings.
[0059] Example 1.
[0060] Figure 1 1 is a flow chart of Embodiment 1 of the present invention. Embodiment 1 is a method for automatically selecting a differential impedance line. Figure 1 As shown, Example 1 includes the following steps:
[0061] S11. Select a routing line with a line width of a set value. Specifically, S11 includes two steps. First, a routing element needs to be selected from all elements of the PCB board. Second, a routing line with a line width of a set value needs to be selected from the routing elements.
[0062] S12. Calculate the spacing between the traces, and mark a plurality of line segments for indicating the spacing distance at different positions of the spacing between the traces.
[0063] S13. Determine the routing that meets the spacing requirements.
[0064] Compare the spacing value represented by the line segment with the set spacing value. The line segment whose spacing value is equal to the set spacing value is selected, and the line segment whose spacing value is not equal to the set spacing value is unselected. Delete the unselected line segment.
[0065] The continuous routing lines that can be touched at both ends of the selected line segment at any position are the first part of routing lines, and the remaining routing lines are the second part of routing lines; the first part of routing lines are routing lines that meet the spacing requirements.
[0066] Preferably, the end edge of the selected line segment is widened, so that when marking the distance between two lines at the turning point of the line, the two ends of the selected line segment can still ensure contact with the first part of the line that meets the requirements.
[0067] S14. Determine the differential impedance line. Confirm the length L1 between the start and end of the first part of the routing, and calculate the length L2 between the start and end of the entire routing where the first part of the routing is located, and then calculate the spacing ratio. The entire routing where the first part of the routing is located may include the continuous first part of the routing and the second part of the routing outside the first part of the routing. In the entire routing, the first part of the routing is continuous.
[0068] First calculate the length L1 between the start and end points of the first part of the trace:
[0069]
[0070] The first part of the routing is composed of multiple small segments connected to each other. Each small segment is a straight line, and there is an angle between adjacent small segments. In the above formula, n is a natural number. N is the total number of all small segments in the first part of the routing. (x ns ,y ns ) is the coordinate value of the end point of the nth segment, (x ne ,y ne ) is the starting point coordinate value of the nth segment of routing.
[0071] Next, calculate the length L2 between the start and end points of the entire route where the first part of the route is located:
[0072]
[0073] The entire route is also composed of multiple small segments connected to each other. Each small segment is a straight line, and there is an angle between adjacent small segments. In the above formula, m is a natural number. M is the total number of all small segments in the entire route. (x ms ,y ms ) is the coordinate value of the end point of the mth segment, (x me ,y me ) is the starting point coordinate value of the mth segment of the routing.
[0074] Spacing ratio = L1 / L2. The differential impedance line is determined according to the spacing ratio. Specifically, when the spacing ratio is greater than the set spacing ratio value, the entire trace is determined to be a differential impedance line.
[0075] Embodiment 1 provides a method flow for determining a differential impedance line. In Embodiment 1, there is no need to manually select a differential impedance line. Instead, the above method can be executed through programming, which is more efficient and accurate.
[0076] Example 2.
[0077] Figure 2 Schematic diagram of the process of Example 2 of the present invention. Compared with Example 1, Example 2 is a more specific and complete implementation method. Figure 2 As shown, embodiment 2 includes the following steps:
[0078] S21. Select the impedance line specification to be selected in the working layer. You can design a UI interface in the working layer to facilitate the selection process. The impedance line specification is determined by the parameters of the impedance line. The parameters are impedance specifications, specifically, including three parameters: impedance value, set line width value, and set spacing value.
[0079] S22. Select the routing with the set width in the working layer and copy it to the auxiliary layer. Specifically, S22 includes two steps. First, it is necessary to select routing elements from all elements in the working layer. This is because the working layer includes a variety of elements required for PCB design, such as holes, routing and components. Secondly, select the routing with the set width in the routing elements.
[0080] Figure 3 Schematic diagram of the selected routing in the embodiment. The line width of routing 1 and routing 2 is the set line width value.
[0081] S23. Calculate the spacing between the traces of the auxiliary layer. The spacing between the traces can be calculated using existing technology, for example, Genesis software has a function for analyzing the spacing between objects. Figure 4 It is a schematic diagram for calculating and marking the spacing between traces in an embodiment. Figure 5 for Figure 4 An enlarged schematic diagram of a portion of Figure 4 , Figure 5 As shown in FIG. 1 , a plurality of line segments 3 are marked between the trace 1 and the trace 2. The length of the line segment 3 is the spacing distance between the traces.
[0082] S24. Determine the routing lines in the auxiliary layer that meet the spacing requirements. The specific step S24 includes:
[0083] Generate a temporary graphic layer, which shows the result report of the routing spacing. In the temporary graphic layer, multiple line segments used to represent the spacing distance are marked at different positions of the spacing between the routings. Compare the spacing value represented by the line segments of the temporary graphic layer with the set spacing value. The line segments whose spacing values are equal to the set spacing value are selected line segments, and the line segments whose spacing values are not equal to the set spacing value are non-selected line segments; delete the non-selected line segments; specifically, a tolerance can be set. When the difference between the spacing value and the set spacing value is greater than the tolerance setting value, such as 0.1mil, the line segment is a non-selected line segment and is deleted.
[0084] Then, the temporary graphic layer is overlapped and compared with the auxiliary layer. In the auxiliary layer, the continuous routing that can be touched by both ends of the projection of the selected line segment at any position in the auxiliary layer is the first part of the routing, and the remaining routing is the second part of the routing; the first part of the routing is the routing that meets the spacing requirements.
[0085] The first part of the routing is a continuous routing, that is, in a specific embodiment, there is a continuous section between the two routings, in which both ends of the selected segment marked at any position can touch the two routings at the same time, and this section is the first part of the routing. Outside this section, there is a part between the two routings that cannot be touched by both ends of the selected segment at the same time. Once there is a routing part that is not touched by the selected segment, the part from the point that is not touched by the selected segment to the end of the routing is the second part of the routing and needs to be deleted. Figure 6 FIG. 1 is a schematic diagram of the wiring of the first part of the embodiment. Figure 6 As shown, in Figure 6 The routing in the box selected part 4 is the first part of the routing. Figure 6 At the edge of the selected box, the spacing between route 1 and route 2 is obviously widened. At the widened portion, the two ends of the selected line segment cannot touch the two routes. Therefore, the two ends of the selected line segment marked at any position of the continuous route in the box selection part 4 can touch the two routes at the same time. This part is the first part of the route. The routes outside the box selection part, which start from the point not touched by the selected line segment to the end of the route, are all the second part of the route.
[0086] Preferably, the end edge of the selected line segment in the temporary graphic layer is widened, so that when marking the spacing between two lines at the turning point of the line, the two ends of the selected line segment can still ensure contact with the first part of the line that meets the requirements. Generally, it can be widened by 1 mil.
[0087] S25. Determine the differential impedance line in the working layer. Compare the first part of the routing in the auxiliary layer, confirm the length L1 between the start and end of the first part of the routing in the working layer, and calculate the length L2 between the start and end of the entire routing where the first part of the routing is located, and then calculate the spacing ratio. The entire routing where the first part of the routing is located may include the continuous first part of the routing and the second part of the routing outside the first part of the routing. In the entire routing, the first part of the routing is continuous.
[0088] First calculate the length L1 between the start and end points of the first part of the trace:
[0089]
[0090] The first part of the routing is composed of multiple small segments connected to each other. Each small segment is a straight line, and there is an angle between adjacent small segments. In the above formula, n is a natural number. N is the total number of all small segments in the first part of the routing. (x ns ,y ns ) is the coordinate value of the end point of the nth segment, (x ne ,yne ) is the starting point coordinate value of the nth segment of routing.
[0091] Next, calculate the length L2 between the start and end points of the entire route where the first part of the route is located:
[0092]
[0093] The entire route is also composed of multiple small segments connected to each other. Each small segment is a straight line, and there is an angle between adjacent small segments. In the above formula, m is a natural number. M is the total number of all small segments in the entire route. (x ms ,y ms ) is the coordinate value of the end point of the mth segment, (x me ,y me ) is the starting point coordinate value of the mth segment of the routing.
[0094] Spacing ratio = L1 / L2. The differential impedance line is determined according to the spacing ratio. Specifically, when the spacing ratio is greater than the set spacing ratio value, the entire trace is determined to be a differential impedance line.
[0095] Embodiment 2 provides a better technical solution than Embodiment 1, that is, during work, the workspace is divided into three operation layers: a working layer, an auxiliary layer and a temporary graphic layer. In this way, when determining the selected line segments whose spacing values are equal to the set spacing values, the non-selected line segments can be deleted in the temporary graphic layer without affecting the elements in the working layer. When determining the routing that meets the spacing requirements, the second part of the routing can also be deleted in the auxiliary layer without affecting the elements in the working layer. After deleting the non-selected line segments and the second part of the routing, the calculation is clearer and less prone to errors, which is conducive to streamlining the system's calculation process and improving calculation efficiency.
[0096] Example 3.
[0097] Figure 7 Schematic diagram of the process of Example 3 of the present invention. Figure 7 As shown, the process of selecting the differential impedance part of embodiment 3 is the same as that of embodiment 1 or embodiment 2, and embodiment 3 also adds the calculation process of compensation adjustment of the differential impedance line. After the differential impedance line is efficiently selected, the impedance line can be recalculated through the compensation adjustment process. The tedious manual adjustment and calculation are avoided, and the design process of the entire PCB board is integrated.
[0098] The compensation adjustment of the differential impedance line includes:
[0099] S31. Setting impedance line specifications, including impedance value, set line width value and set spacing value before adjustment, and set line width value and set spacing value after adjustment.
[0100] S32. Back up the impedance line before adjustment, that is, back up the impedance line of the working layer and the specifications of the impedance line.
[0101] S33. Analyze impedance line specifications and make adjustments for differential impedance lines.
[0102] S34. Obtain the adjusted impedance line specifications and redraw the impedance line.
[0103] S35. Confirm the adjusted impedance line.
[0104] Example 4.
[0105] Figure 8 FIG. 4 is a schematic diagram of the module structure of Embodiment 4 of the present invention. Figure 8 As shown, embodiment 4 discloses a differential impedance line automatic selection module, including:
[0106] The routing selection module is used to select routing lines with a set width.
[0107] The trace spacing calculation module calculates the spacing between traces.
[0108] The routing confirmation module marks multiple line segments for indicating the spacing distance at different positions of the spacing between the routings, and compares the spacing value indicated by the line segment with the set spacing value. The line segment whose spacing value is equal to the set spacing value is the selected line segment, and the line segment whose spacing value is not equal to the set spacing value is the non-selected line segment. Delete the non-selected line segments. The continuous routing that can be touched at both ends of the selected line segment at any position is the first part of the routing, and the remaining routing is the second part of the routing; confirm that the first part of the routing is the routing that meets the spacing requirements;
[0109] The differential impedance line determination module is used to calculate the length L1 between the start point and the end point of the first part of the line, and calculate the length L2 between the start point and the end point of the entire line where the first part of the line is located, and then calculate the spacing ratio. Spacing ratio = L1 / L2, the differential impedance line is determined according to the spacing ratio, specifically, when the spacing ratio> the set spacing ratio value, the entire line is determined to be a differential impedance line.
[0110] The module disclosed in Example 4 can be used to run the selection process of the differential impedance line in Example 1.
[0111] Example 5.
[0112] Fig. 9 FIG. 5 is a schematic diagram of the module structure of Embodiment 5 of the present invention. Fig. 9 As shown, in Example 5, the entire module is divided into three operation layers: a working layer, an auxiliary layer, and a temporary graphic layer;
[0113] The working layer includes PCB elements; PCB elements include traces;
[0114] The routing selection module is used in the working layer to select routing lines with a set width and copy them to the auxiliary layer. The routing selection module can be designed as a UI interface for easy operation and selection.
[0115] A routing spacing calculation module, which calculates the spacing between the routings of the auxiliary layer;
[0116] Routing confirmation module, in the temporary graphic layer, marks multiple line segments for indicating spacing distances at different positions of the spacing between the routings; compares the spacing values indicated by the line segments in the temporary graphic layer with the set spacing values, the line segments whose spacing values are equal to the set spacing values are selected line segments, and the line segments whose spacing values are greater than the set spacing values are non-selected line segments. Delete the non-selected line segments in the temporary graphic layer. Overlap and compare the temporary graphic layer with the auxiliary layer, in the auxiliary layer, the continuous routing that can be touched by both ends of the projection of the selected line segments at any position in the auxiliary layer is the first part of the routing, and the remaining routing is the second part of the routing; confirm that the first part of the routing is the routing that meets the spacing requirements.
[0117] The differential impedance line determination module determines the differential impedance line in the working layer. By comparing the first part of the routing in the auxiliary layer, the length L1 between the start point and the end point of the first part of the routing in the working layer is calculated, and the length L2 between the start point and the end point of the entire routing where the first part of the routing in the working layer is located is calculated, and then the spacing ratio is calculated. Spacing ratio = L1 / L2. The differential impedance line is determined according to the spacing ratio. Specifically, when the spacing ratio> the set spacing ratio value, the entire routing is determined to be a differential impedance line.
[0118] In Example 5, the working space of the module is divided into three operation layers: a working layer, an auxiliary layer, and a temporary graphic layer, so that the objects operated by each module are distributed in different operation layers according to the steps of the process, the objects operated are clearer, the calculations are clearer, and it is not easy to make mistakes, which is conducive to streamlining the calculation process of the system and improving the calculation efficiency. The module disclosed in Example 5 can be used to run the selection process of the differential impedance line in Example 2.
[0119] Example 6.
[0120] Embodiment 6 provides a differential impedance line automatic selection device. The embodiment device includes a processor, a memory, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, the steps in Embodiment 1, Embodiment 2, and Embodiment 3 are implemented. Alternatively, when the processor executes the computer program, the functions of each module in Embodiment 4 and Embodiment 5 are implemented.
[0121] The computer program may be divided into multiple modules, which are stored in a memory and executed by a processor to complete the present embodiment. Specifically, the multiple modules are a series of computer program instruction segments that can complete specific functions, and the instruction segments are used to describe the execution process of the computer program in the recognition and operation device of the interactive interface combination object. For example, the computer program may be divided into:
[0122] The routing selection module is used to select routing lines with a set width.
[0123] The trace spacing calculation module is used to calculate the spacing between traces.
[0124] The routing confirmation module confirms that the first part of the routing meets the spacing requirements.
[0125] The differential impedance line determination module is used to confirm the length L1 between the start point and the end point of the first part of the line, and calculate the length L2 between the start point and the end point of the entire line where the first part of the line is located, and then calculate the spacing ratio. Spacing ratio = L1 / L2, the differential impedance line is determined according to the spacing ratio, specifically, when the spacing ratio> the set spacing ratio value, the entire line is determined to be a differential impedance line.
[0126] The device in Example 6 can be a computing device such as a desktop computer, a notebook, a PDA, and a cloud server. The device may include but is not limited to a processor and a memory. Those skilled in the art can understand that Example 6 can also include more or fewer components, or a combination of certain components, or different components, for example, it can also include input and output devices, network access devices, buses, etc.
[0127] The processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc. The processor is the control center of the recognition and operation device of the interactive interface combination object, and uses various interfaces and lines to connect various parts of the recognition and operation device of the entire interactive interface combination object.
[0128] The memory can be used to store computer programs. The processor realizes various functions of the recognition and operation device of the combined object of the interactive interface by running or executing the computer program stored in the memory and calling the data stored in the memory. The memory can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, an application required for at least one function, etc.; the data storage area can store data created according to the use of the mobile phone, etc. In addition, the memory can include a high-speed random access memory and can also include a non-volatile memory, such as a hard disk, a memory, a plug-in hard disk, etc.
[0129] Example 7.
[0130] Embodiment 7 provides a storage medium.
[0131] If the differential impedance line automatic selection device is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. When the computer program is executed by the processor, the steps in Embodiment 1 to Embodiment 3 can be implemented. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer readable medium may include: any entity or device that can carry computer program code, recording medium, U disk, mobile hard disk, disk, optical disk, computer memory, read-only memory, random access memory, etc.
[0132] The above description is an explanation of the present invention, not a limitation of the present invention. The scope of the present invention is defined in the claims. The present invention may be modified in any form without violating the basic structure of the present invention.
Claims
1. A method for automatically selecting a differential impedance line, characterized in that: The following steps are involved: Select the trace with the set line width value; Calculate the spacing between traces; Determine the routing that meets the spacing requirements; and marking a plurality of line segments for indicating spacing distances at different positions of the spacing between the traces; Comparing the spacing value represented by the line segment with the set spacing value, the line segment whose spacing value represented is equal to the set spacing value is the selected line segment, and the line segment whose spacing value represented is not equal to the set spacing value is the non-selected line segment; Delete non-selected line segments; The continuous routing lines that can be touched at both ends of the selected line segment at any position are the first part of routing lines, and the remaining routing lines are the second part of routing lines; the first part of routing lines are the routing lines that meet the spacing requirements; Determine the differential impedance line; confirm the length L1 between the start and end points of the first portion of the routing, and calculate the length L2 between the start and end points of the entire routing where the first portion of the routing is located, and then calculate the spacing ratio, spacing ratio = L1 / L2. When the spacing ratio is greater than the set spacing ratio value, determine that the entire routing is a differential impedance line.
2. The method for automatically selecting a differential impedance line according to claim 1, characterized in that: The following steps are involved: Select the impedance line specification you need to select on the working layer; Select the trace with the set line width in the working layer and copy it to the auxiliary layer; Calculate the spacing between the traces on the auxiliary layer; Determine the traces in the auxiliary layer that meet the spacing requirements: Generate a temporary graphic layer, in which a plurality of line segments for indicating the spacing distance are marked at different positions of the spacing between the traces in the temporary graphic layer; compare the spacing values indicated by the line segments of the temporary graphic layer with the set spacing values, and the line segments whose spacing values are equal to the set spacing values are selected line segments, and the line segments whose spacing values are not equal to the set spacing values are non-selected line segments; Delete non-selected line segments in the temporary graphics layer; Then, the temporary graphic layer is overlapped and compared with the auxiliary layer. In the auxiliary layer, the continuous routing lines that can be touched by both ends of the projection of the selected line segment at any position in the auxiliary layer are the first part of routing lines, and the remaining routing lines are the second part of routing lines. The first part of routing lines are the routing lines that meet the spacing requirements. Determine the differential impedance line in the working layer; calculate the length L1 between the start point and the end point of the first part of the routing in the working layer, and calculate the length L2 between the start point and the end point of the entire routing where the first part of the routing is located, and then calculate the spacing ratio, the spacing ratio = L1 / L2, when the spacing ratio> the set spacing ratio value, determine that the entire routing is a differential impedance line.
3. The method for automatically selecting a differential impedance line according to claim 2, characterized in that: The specific method for determining the spacing ratio is: Calculate the length L1 between the start and end points of the first portion of the trace: n is a natural number; N is the total number of all small segments in the first part of the routing; (x ns ,y ns ) is the coordinate value of the end point of the nth segment, (x ne ,y ne ) is the starting point coordinate value of the nth segment of the line; Calculate the length L2 between the start and end points of the entire route where the first part of the route is located: m is a natural number; M is the total number of all small segments in the entire route; (x ms ,y ms ) is the coordinate value of the end point of the mth segment, (x me ,y me ) is the starting point coordinate value of the mth segment of the line; Spacing ratio = L1 / L2. When the spacing ratio > the set spacing ratio value, the entire trace is determined to be a differential impedance line.
4. The method for automatically selecting a differential impedance line according to claim 1, characterized in that: The end edge of the selected line segment is enlarged outward to the set width to ensure that both ends of the selected line segment touch the first part of the trace.
5. A differential impedance line automatic selection device, characterized in that: include: The routing selection module is used to select routing lines with a set width; A routing spacing calculation module calculates the spacing between routings and marks a plurality of line segments representing the spacing distance at different positions of the spacing between routings; The routing confirmation module compares the spacing value represented by the line segment with the set spacing value. The line segment whose spacing value is equal to the set spacing value is the selected line segment, and the line segment whose spacing value is not equal to the set spacing value is the non-selected line segment. Delete non-selected line segments; The continuous routing lines that can be touched at both ends of the selected line segment at any position are the first part of the routing lines, and the remaining routing lines are the second part of the routing lines; confirm that the first part of the routing lines are the routing lines that meet the spacing requirements; The differential impedance line determination module is used to confirm the length L1 between the starting point and the end point of the first part of the routing, and calculate the length L2 between the starting point and the end point of the entire routing where the first part of the routing is located, and then calculate the spacing ratio; spacing ratio = L1 / L2; when the spacing ratio> the set spacing ratio value, the entire routing is determined to be a differential impedance line.
6. The automatic differential impedance line selection device according to claim 5, characterized in that: The module also includes a working layer, an auxiliary layer and a temporary graphic layer; the working layer includes PCB elements; The PCB elements include traces; the module also includes: The routing selection module is used to select routing lines with a set width in the working layer and copy them to the auxiliary layer; A routing spacing calculation module is used to calculate the spacing between the routings of the auxiliary layer and transmit the spacing distance value to the temporary graphics layer; Routing confirmation module: used to mark multiple line segments for indicating spacing distances at different positions of the spacing between routings in the temporary graphic layer; compare the spacing values indicated by the line segments in the temporary graphic layer with the set spacing values, and the line segments whose spacing values are equal to the set spacing values are selected line segments, and the line segments whose spacing values are not equal to the set spacing values are non-selected line segments; delete the non-selected line segments in the temporary image layer; then overlap and compare the temporary graphic layer with the auxiliary layer, and the continuous routing that can be touched by both ends of the projection of the selected line segments at any position in the auxiliary layer is the first part of the routing, and the remaining routing is the second part of the routing; confirm that the first part of the routing is the routing that meets the spacing requirements; delete the second part of the routing; The differential impedance line determination module is used to calculate the length L1 between the starting point and the end point of the first part of the routing in the working layer, and calculate the length L2 between the starting point and the end point of the entire routing where the first part of the routing is located, and then calculate the spacing ratio; spacing ratio = L1 / L2; when the spacing ratio> the set spacing ratio value, the entire routing is determined to be a differential impedance line.
7. The automatic differential impedance line selection device according to claim 6, characterized in that: In the differential impedance line determination module, the spacing ratio of the routing is calculated by the spacing ratio calculation module, and the spacing ratio calculation module performs calculation according to the following formula: Calculate the length L1 between the start and end points of the first portion of the trace: n is a natural number; N is the total number of all small segments in the first part of the routing; (x ns ,y ns ) is the coordinate value of the end point of the nth segment, (x ne ,y ne ) is the starting point coordinate value of the nth segment of the line; Calculate the length L2 between the start and end points of the entire route where the first part of the route is located: m is a natural number; M is the total number of all small segments in the entire route; (x ms ,y ms ) is the coordinate value of the end point of the mth segment, (x me ,y me ) is the starting point coordinate value of the mth segment of the line; Spacing ratio = L1 / L2. When the spacing ratio > the set spacing ratio value, the entire trace is determined to be a differential impedance line.
8. A device for automatically selecting a differential impedance line, the device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 4 are implemented.
9. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 4 are implemented.
Citation Information
Patent Citations
Impedance matching method for PCB differential pair wiring
CN111447732A
Wiring detection method and device of printed circuit board and computer readable storage medium
CN111859847A