Automatic matching method for equal-length resistance-capacitance network in PCB layout

Through the use of batch processing and pre -processing procedures in PCB design to automatically extract and match the network name of the component, the problem of low efficiency of resistance and capacitive network names in the existing technology has been solved, and automation matching is achieved, and work efficiency is improved.

CN119377284APending Publication Date: 2025-01-28ZHUHAI EDADOC TECH CO LTD
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202411514898.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-10-28
Publication Date
2025-01-28

AI Technical Summary

Technical Problem

The prior art requires low working efficiency when ensuring that the network names at both ends of the resistor and capacitor on the PCB board match, especially on PCB boards with a large number of pins, which requires a lot of manual operation, which affects efficiency.

Method used

By setting up batch processing procedures and pre -processing execution procedures, automatically extract the component number, pin number and circuit network name in the PCB design file, combine the requirements information to generate data storage set, and automatically match the network name by processing the table to reduce manual labor operate.

Benefits of technology

The automatic matching of the network name of the resistance and the capacitor is achieved, which significantly shortens the operation time and improves the work efficiency, especially when processing complex PCB boards.

✦ Generated by Eureka AI based on patent content.
Patent Text Reader

Abstract

The invention discloses a PCB layout equal-length resistance-capacitance network automatic matching method. The method comprises the following steps: generating an extraction rule according to a PCB design file information extraction mode and format; acquiring and executing a batch processing execution program and a preprocessing execution program; the batch processing execution program obtains an extraction rule and demand information, obtains pin network information from the PCB design file according to the extraction rule, and combines the pin network information with the demand information to generate a data storage set; the preprocessing execution program obtains the data storage set, cleans the data storage set according to the demand information, generates a to-be-processed data set, obtains a processing table and a filling instruction, imports the to-be-processed data set into the processing table according to the content of the filling instruction, obtains a matching rule, and matches to-be-processed data of the processing table according to the matching rule; and obtaining a matching result, and storing the matching result in the processing table.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of PCB layout design, and more specifically, to an automatic matching method for equal-length resistor-capacitor networks in PCB layout. Background Art

[0002] PCB (Printed Circuit Board), also known as printed circuit board, is an important electronic component, a support for electronic components, and a carrier for electrical connection of electronic components. Because it is made by electronic printing, it is called a "printed" circuit board. The package in PCB refers to the circuit pins on the silicon chip connected to the external connector with wires so as to connect with other devices. The PCB layout loop in the schematic diagram is reflected in the PCB board through the package and routing, and one package corresponds to one component.

[0003] A resistor, generally called a resistor, is a current limiting component. After the resistor is connected to the circuit, the resistance of the resistor is fixed, usually with two pins, and it can limit the current passing through the branch it is connected to.

[0004] Capacitor, generally called capacitance, is a component that stores electric charge and electric energy (potential energy). A conductor surrounded by another conductor, or the electric field lines emitted by one conductor all terminate in the conductor system of another conductor, is called a capacitor.

[0005] Equal-length lines are used to reduce relative signal delays and are often used on the address and data lines of high-speed memories. Simply put, the function of equal-length lines is to ensure consistent signal transmission speed and timing.

[0006] In PCB design software, in order to clearly confirm the length of equal-length lines, the networks at both ends of resistors and capacitors generally need to be listed separately. At this time, if the network name is not defined in the PCB schematic, the network names at both ends of the resistors and capacitors will be randomly named. In the subsequent inspection process, in order to ensure that the network names at both ends of the resistors and capacitors are corresponding, the existing technology uses manual operation, manually selects data and copies and pastes to form a table, and finally performs matching confirmation. Such an operation process requires a lot of work to ensure that the network names at both ends of the resistors and capacitors match each other. The larger the number of pins on the PCB board, the more work it takes, which greatly affects work efficiency. Summary of the invention

[0007] In order to overcome the disadvantage of low working efficiency of ensuring network name matching at both ends of resistors and capacitors in the prior art, the present invention provides an automatic matching method for equal-length resistor and capacitor networks in PCB layout.

[0008] The technical solution of the present invention is as follows:

[0009] An automatic matching method for equal-length resistor-capacitor networks in PCB layout.

[0010] Generate extraction rules based on PCB design file information extraction method and format;

[0011] Obtain and execute batch execution programs and pre-processing execution programs;

[0012] The batch execution program obtains the extraction rules and requirement information, obtains the pin network information from the PC B design file according to the extraction rules, and combines the pin network information with the requirement information to generate a data storage set.

[0013] The preprocessing execution program obtains the data storage set and cleans the data storage set according to the required information and generates a data set to be processed.

[0014] Get the processing table and filling instructions, and import the data set to be processed into the processing table according to the content of the filling instructions.

[0015] Obtain matching rules, match the data to be processed in the processing table according to the matching rules, and obtain matching results.

[0016] Store the matching results in a processing table.

[0017] The above-mentioned method for automatically matching equal-length resistor-capacitor networks in a PCB layout extracts rules to obtain component position numbers, component pin numbers, and circuit network names connected to component pins from PCB design files.

[0018] Furthermore, the circuit network name to which the component pin is connected includes information of a power supply or ground network identifier.

[0019] Component designator is the identifier or reference number of each component in the PCB design.

[0020] The pin number of a component, that is, the number of each pin of a component, is used to distinguish different connection points of the same component.

[0021] The name of the circuit network to which the component pins are connected, that is, the name of the circuit network to which each pin of the component is connected (pin network name). These networks represent the electrical connection paths in the circuit.

[0022] The power or ground network identification, that is, the network name specially identified as power (Power) or ground (Ground), is actually part of the circuit network name to which the component pins are connected. The pins of some components are connected to the power or ground network.

[0023] Construct a parameter file and write the extraction rules in the parameter file, including the output format of the output data to be processed. This makes the output data to be processed clear and easy to match later.

[0024] The above-mentioned PCB layout equal-length resistor-capacitor network automatic matching method obtains extraction rules through a batch execution program and obtains demand information through a human-computer interaction interface.

[0025] The batch execution program interacts with the user, and the user specifies the component type to be extracted (such as resistors, capacitors) and whether the power / ground network needs to be ignored, that is, the required information is obtained from the human-computer interaction interface. The batch execution program obtains the corresponding information content from the PCB design file according to the extraction rules, and then imports the required information of the human-computer interaction interface, and finally obtains an initial set of data to be processed from the PCB design file. These data to be processed are saved together with the required information to form a data storage set.

[0026] The batch execution program obtains the current path and the name of the corresponding PCB design file to determine the object of the extraction rules and requirement information. The batch execution program establishes and sets up a human-computer interaction interface, allowing the user to input / import requirement information according to the prompts of the human-computer interaction interface. The batch execution program calls the command line tool of the PCB design software to extract pin information from the PCB design file according to the extraction rules and requirement information, and calls the export tool of the CR5000 platform to store the pin information in the data storage set.

[0027] In the above-mentioned PCB layout equal-length resistor-capacitor network automatic matching method, a preprocessing execution program reads a data storage set and cyclically reads data information in the data storage set, identifies component information in the data storage set, and performs processing according to demand information in the data storage set.

[0028] In the above-mentioned PCB layout equal-length resistor-capacitor network automatic matching method, the file format of the data set to be processed is .csv.

[0029] The content of the data storage set includes the component information and component pin information obtained by the batch execution program from the PCB design file by calling the functional modules and plug-ins of the PCB design software, and also includes the required information obtained by the batch execution program from the human-computer interaction interface. The pre-processing execution program obtains this information from the data storage set, and then reads the information list composed of the information in the data storage set in a loop, identifies the component type, specific pin number, power network, ground network, and classifies and saves these names. Based on these classified and saved information, the information obtained from the PCB design file in the data storage set is processed according to the content of the required information (according to the requirements, the names saved in the classification are compared, and then the information list is circulated again to replace, delete or split the individuals in the information list, etc.), forming a new information list, and saving it to form a new data set (i.e., the data set to be processed).

[0030] The above-mentioned PCB layout equal-length resistor-capacitor network automatic matching method sets an automatic command in a processing table. The processing table automatically reads the data set to be processed after the data set to be processed is generated, represents the content of the data set to be processed in the processing table, and automatically matches the data in the processing table according to the matching formula.

[0031] Furthermore, the processing table performs a cyclic matching on the data in the processing table according to the matching conditions of the automation command.

[0032] Confirm whether the component type in the processing table matches the component type in the required information.

[0033] Get the data content at different locations as the network name according to the component type.

[0034] Furthermore, the contents of the automation commands include

[0035] Open the data set to be processed and read the content data of the data set to be processed.

[0036] Clean the content data of the data set to be processed. The cleaning logic is based on the demand information.

[0037] Call existing commands to find and match the network names at both ends of the component.

[0038] Automatically fill the matching network name into the corresponding column of the processing table,

[0039] Save the processed form.

[0040] Furthermore, the matching formula matches the resistor and capacitor in the component respectively, and the matching keywords of the resistor and the capacitor are different.

[0041] The confirmation process of the Excel table (processing table) excludes those network names that are identified as power or ground lines, ensuring that the network names found in the Excel table actually exist in the data set to avoid matching non-existent networks. At the same time, check whether there are repeated network matches, ensure that each component pin is matched only once, ensure that the data fields of each entry (such as component position number, pin number) are complete and meet the format requirements, and check whether there are any errors or anomalies in the entries in the data set, such as missing values, format errors, etc. On this basis, according to the component type, match the data in different columns respectively, and match the network names of the front and back ends of the components.

[0042] A macro button (automated command) is set in the Excel table. The user uses the macro button to read the content data of the data set to be processed, clean it according to the required information, and fill the component name, component type, network name at both ends, etc. into the corresponding columns in the processing table according to the preset format. After clicking the macro button, the processing table is automatically filled with component data, and finally the network names at both ends of the component are matched through formulas.

[0043] The beneficial effect of the present invention according to the above scheme is that the present invention sets a batch execution program and a preprocessing execution program to automate the extraction of data extraction content such as component name, component type, component network name, etc., and uses the macro button command of the table freedom to automate the matching of the network names at both ends of the corresponding components in the table, thereby ensuring that the network names at both ends of the resistor and capacitor are corresponding. This operation is converted from manual to automatic machine command, without excessive manual operation and inspection operation, thereby shortening a lot of time and greatly improving work efficiency. DETAILED DESCRIPTION

[0044] In order to make the technical problems, technical solutions and beneficial effects to be solved by the present invention more clearly understood, the present invention is further described in detail below in conjunction with the embodiments. It should be understood that the specific embodiments described herein are only used to explain the present invention and are not used to limit the present invention.

[0045] An automatic matching method for equal-length resistor-capacitor networks in PCB layout.

[0046] Generate extraction rules based on PCB design file information extraction method and format;

[0047] Obtain and execute batch execution programs and pre-processing execution programs;

[0048] The batch execution program obtains the extraction rules and requirement information, obtains the pin network information from the PC B design file according to the extraction rules, and combines the pin network information with the requirement information to generate a data storage set.

[0049] The preprocessing execution program obtains the data storage set and cleans the data storage set according to the required information and generates a data set to be processed.

[0050] Get the processing table and filling instructions, and import the data set to be processed into the processing table according to the content of the filling instructions.

[0051] Obtain matching rules, match the data to be processed in the processing table according to the matching rules, and obtain matching results.

[0052] Store the matching results in a processing table.

[0053] The extraction rules obtain the component designation, the component pin number, and the circuit network name to which the component pin is connected from the PCB design file.

[0054] The circuit network name to which the component pin is connected includes information about the power or ground network identification.

[0055] In this embodiment, a parameter file PinNoNetList.blp of CR5000 is constructed, that is, a parameter file with extraction rules is established to extract pin information from PCB design files. The constructed parameter file can be used as an input file by the export tool of the CR5000 platform. The parameter file sets multiple parameter features, which are equivalent to satisfying conditions or the output format of the data to be processed. The subsequent preprocessing program runs and references these features, and intercepts and obtains all pin information that meets these conditions, and saves the data to be processed in the set output format. Among them, the parameter features include

[0056] (1) unit, i.e., the length unit used when specifying the data to be processed. In this embodiment, the length unit of the data to be processed is set to millimeter;

[0057] (2) delimiter, i.e., defining a field delimiter, which is used to separate different data items in the data to be processed. In this embodiment, the delimiters of the data to be processed are set to commas and newlines;

[0058] (3) separator, i.e., defining a field delimiter, which is used to distinguish different fields in the data to be processed. In this embodiment, the field separators of the data to be processed are set to vertical bars and commas;

[0059] (4) precision, which defines the precision of the data to be processed, such as the number of digits after the decimal point. In this embodiment, the precision of the data to be processed is set to 5 decimal places;

[0060] (5) width, which defines the width or spacing of the data to be processed. In this embodiment, the width of the data to be processed is set to 0, which means that the width is not limited or the default width is used;

[0061] (6) continue, indicating whether to include certain continuation fields in the output. In this embodiment, the field is set to be an empty string, which may indicate that no special continue flag is required or that no continue line is used in the output;

[0062] (7) maxAngle, which defines the maximum value of the angle, which is used for subsequent graphics processing or layout. In this embodiment, the maximum value of the angle measurement is set to 360 degrees;

[0063] (8) destinationCompReference, i.e., specifying the target component or pin to be considered when processing the data. In this embodiment, it is set to slave, including all slave components or subcomponents;

[0064] (9) angleMode, i.e., the measurement mode or standard for defining the angle. In this embodiment, the CAD-A mode is set;

[0065] (10) outputPinListFormat, which defines the format of the pin list output in detail, including fields such as component reference (Comp reference), pin number (Pin number), and network name (Net name).

[0066] The batch execution program obtains the extraction rules and obtains the required information through the human-computer interaction interface.

[0067] In this embodiment, a bat file named pinnonetlist.bat is established, which is a batch execution program. The content of the batch execution program includes a series of settings, including batch execution program title setting (i.e., self-command window name setting), delayed variable expansion (used to allow the batch execution program to modify variables using the value of variables), setting the current path (recording the path of the current working directory of the batch execution program), obtaining the file suffix (recording the suffix of the PCB design file of the data to be extracted), obtaining the PCB file name (recording the name of the PCB design file of the data to be extracted, excluding the file suffix), defining the file name of the batch execution program, checking the file type (checking the file type of the PCB design file of the data to be extracted, judging whether it is a PCB design file, if not, outputting an error message and exiting), in addition, the content of the batch execution program also includes obtaining demand information (specifically, setting a human-computer interaction interface, prompting the user to input the type of components to be extracted, such as capacitors, resistors, etc., and further prompting the user whether to ignore the power supply or ground network, thereby obtaining demand information, i.e., the demand for the type of components to be extracted and the demand for whether to ignore the power supply or ground network). In this embodiment, the batch execution program calls the command line tool of the CR5000 software, and uses the parameter file to extract the pin network information by executing the CR5000 command, and finally outputs the pin network information to the CSV file PinNoNetList.csv for storage, and displays a success prompt, and automatically exits the program after completion. The CSV file exported by the batch execution program is the data storage set, and the data in the exported data storage set includes all the pin network information obtained from the PCB design file and the user-entered requirement information.

[0068] The preprocessing execution program reads the data storage set and cyclically reads the data information in the data storage set, identifies the component information in the data storage set, and performs processing according to the demand information in the data storage set.

[0069] The file format of the dataset to be processed is .csv.

[0070] In this embodiment, a vbs file named pinnonetlist.vbs is constructed, i.e., a preprocessing execution program, whose content and function are mainly to process the pin network information exported by the CR5000 software, i.e., the CSV file exported by pinnonetlist.bat, and generate a new CSV file PinNoNetListUser.csv. The content of the preprocessing execution program includes file reading. When the script starts, FileSystemObject is used to open and read the CSV file (data storage set) and network table file (.ccf) exported by the CR5000 software (the network table file is a file generated by the CR5000 software itself when the batch execution program calls the command line tool of the CR5000 software and the network information obtained by the CR5000 software).

[0071] The contents of the pinnonetlist.vbs file include:

[0072] (1) Variable declaration: a series of variables are declared to store information such as file path, read data row, pin network name, etc.

[0073] (2) User parameter acquisition: user parameters (requirement information) passed from the batch execution program are obtained through WScript.Arguments. These parameters may include component types or specific pin numbers that require special processing.

[0074] (3) Loop through the network information, use dountil to loop through the network table file, identify the power and ground networks, and store these network names for subsequent elimination.

[0075] (4) Processing the power and ground network by string operations such as split and replace to process network information and ensure that the power and ground network is not included in the final output.

[0076] (5) Read and filter pin network information. Read the pin network information in the CSV file (CSV file exported by pinnonetlist.bat) and filter it according to user parameters (requirement information) and the power / ground network list.

[0077] (6) Generate a new CSV file. Use the CreateTextFile method to create a new CSV file and write the filtered data into the file.

[0078] (7) Data writing logic, based on the user input and the exclusion rules of the power / ground network, writes the qualified pin network information into a new CSV file (i.e., the data set to be processed).

[0079] (8) File closing and cleaning: After the data is written, close all open files and delete temporary files, such as the original CSV file and network table file.

[0080] (9) The script ends. After the script is executed, the resources are released by setting the object to nothing.

[0081] The processing table sets an automation command. The processing table automatically reads the data set to be processed after it is generated, represents the content of the data set to be processed in the processing table, and automatically matches the data in the processing table according to the matching formula.

[0082] The processing table performs a cyclic matching of the data in the processing table according to the matching conditions of the automation command.

[0083] Confirm whether the component type in the processing table matches the component type in the required information.

[0084] Get the data content at different locations as the network name according to the component type.

[0085] The automation commands include:

[0086] Open the data set to be processed and read the content data of the data set to be processed.

[0087] Clean the content data of the data set to be processed. The cleaning logic is based on the demand information.

[0088] Call existing commands to find and match the network names at both ends of the component.

[0089] Automatically fill the matching network name into the corresponding column of the processing table,

[0090] Save the processed form.

[0091] The matching formula matches the resistance and capacitance in the component respectively, and the matching keywords of the resistance and capacitance are different.

[0092] In this embodiment, an Excel table (i.e., a processing table) is established, and an automatic script of Excel, i.e., a macro script, is written through VBA (Visual Basic for Applications). After running the macro script, a CSV file of a specified path, i.e., the file PinNoNetListUser.csv, is read, and the data in the CSV file is stored in an EXCEL table. Since the arrangement order of the data is fixed in the previous steps, the content imported into the Excel table is also fixed. The macro script runs two matching formulas to match and obtain the network names of the components respectively.

[0093] Among them, for the resistor in the component, its network name is

[0094] =IF(INDEX('NetList(CapRes)'!$B:$B,MATCH(front cell

[0095] &"@R*(*)",'NetList(CapRes)'! $F:$F,0),1)=1,INDEX('NetList(CapRes)'!$C:$C,MATCH(INDEX('NetList(CapRes)'!$A:$A,MATCH(front cell

[0096] &"@R*(*)",'NetList(CapRes)'!$F:$F,0),1)&"(2)",'NetList(CapRes)'!$E:$E,0),1),INDEX('NetList(CapRes)'!$C:$C,MATCH(INDEX('NetList(CapRes)'!$A:$A,MATCH(front cell

[0097] &"@R*(*)",'NetList(CapRes)'! $F:$F,0),1)&"(1)",'NetList(CapRes)'! $E:$E,0),1)).

[0098] For the capacitor in the component, the network name

[0099] =IF(INDEX('NetList(CapRes)'!$B:$B,MATCH(front cell

[0100] &"@C*(*)",'NetList(CapRes)'! $F:$F,0),1)=1,INDEX('NetList(CapRes)'!$C:$C,MATCH(INDEX('NetList(CapRes)'!$A:$A,MATCH(front cell

[0101] &"@C*(*)",'NetList(CapRes)'!$F:$F,0),1)&"(2)",'NetList(CapRes)'!$E:$E,0),1),INDEX('NetList(CapRes)'!$C:$C,MATCH(INDEX('NetList(CapRes)'!$A:$A,MATCH(front cell

[0102] &"@C*(*)",'NetList(CapRes)'! $F:$F,0),1)&"(1)",'NetList(CapRes)'! $E:$E,0),1)).

[0103] The meaning of the above formula is to automatically search for a network identifier that matches the front cell content (component name) plus a specific identifier (@R or @C, @R means resistor, @C means capacitor) in the worksheet (in this embodiment, the worksheet name is NetList (CapRes)). According to the matching results, the network names at both ends of the component are extracted and filled from the corresponding columns. Use an IF statement to decide whether to extract the network name of the first end or the second end.

[0104] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions and improvements made within the spirit and principles of the present invention should be included in the protection scope of the present invention.

Claims

1. A method for automatically matching equal-length resistor-capacitor networks in PCB layout, characterized in that: Generate extraction rules based on PCB design file information extraction method and format; Obtain and execute batch execution programs and pre-processing execution programs; The batch execution program obtains the extraction rules and requirement information, obtains the pin network information from the PCB design file according to the extraction rules, and combines the pin network information with the requirement information to generate a data storage set. The preprocessing execution program obtains the data storage set and cleans the data storage set according to the required information and generates a data set to be processed. Get the processing table and filling instructions, and import the data set to be processed into the processing table according to the content of the filling instructions. Obtain matching rules, match the data to be processed in the processing table according to the matching rules, and obtain matching results. Store the matching results in a processing table.

2. According to the method for automatically matching RC networks of equal length in PCB layout described in claim 1, it is characterized in that: The extraction rules obtain the component designation, the component pin number, and the circuit network name to which the component pin is connected from the PCB design file.

3. According to the method for automatically matching RC networks of equal length in PCB layout described in claim 2, it is characterized in that: The circuit network name to which the component pin is connected includes information about the power or ground network identification.

4. According to the method for automatically matching RC networks of equal length in PCB layout described in claim 1, it is characterized in that: The batch execution program obtains the extraction rules and obtains the required information through the human-computer interaction interface.

5. According to the method for automatically matching RC networks of equal length in PCB layout described in claim 1, it is characterized in that: The preprocessing execution program reads the data storage set and cyclically reads the data information in the data storage set, identifies the component information in the data storage set, and performs processing according to the demand information in the data storage set.

6. According to the method for automatically matching RC networks of equal length in PCB layout described in claim 1, it is characterized in that: The file format of the dataset to be processed is .csv.

7. According to the method for automatically matching RC networks of equal length in PCB layout as described in claim 1, it is characterized in that: The processing table sets an automation command. The processing table automatically reads the data set to be processed after it is generated, represents the content of the data set to be processed in the processing table, and automatically matches the data in the processing table according to the matching formula.

8. According to the method for automatically matching RC networks of equal length in PCB layout as described in claim 7, it is characterized in that: The processing table performs a cyclic matching of the data in the processing table according to the matching conditions of the automation command. Confirm whether the component type in the processing table matches the component type in the required information. Get the data content at different locations as the network name according to the component type.

9. According to the method for automatically matching RC networks of equal length in PCB layout as described in claim 7, it is characterized in that: The automation commands include: Open the data set to be processed and read the content data of the data set to be processed. Clean the content data of the data set to be processed. The cleaning logic is based on the demand information. Call existing commands to find and match the network names at both ends of the component. Automatically fill the matching network name into the corresponding column of the processing table, Save the processed form.

10. The method for automatically matching RC networks of equal length in PCB layout according to claim 7, characterized in that: The matching formula matches the resistance and capacitance in the component respectively, and the matching keywords of the resistance and capacitance are different.

Citation Information

Cited By

  • Method, system and device for intelligently creating differential pairs in batches and medium

    CN120822466A

  • A method, system, device, and medium for intelligently batch creating differential pairs

    CN120822466B