1. Technical Field
Embodiments of the present disclosure relate to wiring design, and more particularly to a computing device and a method for checking wiring diagrams of a printed circuit board (PCB).
2. Description of Related Art
Usually, different designers may collaborate for wiring design of printed circuit boards (PCB). When the wiring design is modified by one designer, the modifications need to be notified to other designers. If there is too many modifications, it is very troublesome for each designer to keep track of all the modifications. Existing PCB design software does not alert designers of any modification in the wiring diagram of a PCB.
In general, the word “module,” as used hereinafter, refers to logic embodied in hardware or firmware, or to a collection of software instructions, written in a programming language, such as, for example, Java, C, or Assembly. One or more software instructions in the modules may be embedded in firmware. It will be appreciated that modules may comprised connected logic units, such as gates and flip-flops, and may comprise programmable units, such as programmable gate arrays or processors. The modules described herein may be implemented as either software and/or hardware modules and may be stored in any type of computer-readable medium or other computer storage device.
The wiring check system 10 includes a number of function modules (depicted in
The database 11 stores printed circuit board (PCB) files. Each of the PCB files includes a wiring diagram of a PCB and data relating to the wiring diagram. The wiring diagram is a simplified conventional pictorial representation of an electrical circuit, in which multiple electrical components are wired together using transmission lines. The data relating to the wiring diagram includes identification information and basic information of the components and the transmission lines. The identification information includes, names, identifiers (ID), and so on. The basic information of the components includes types, coordinates data, pin information, layers, and so on, and the basic information of the transmission lines includes paths, line lengths, line widths, line spaces, and so on.
The storage device 12 may include some type(s) of computer-readable storage medium, such as a hard disk drive, a compact disc, a digital video disc, or a tape drive. The storage device 12 stores the computerized code of the function modules of the wiring check system 10 for execution by the processor 13.
The processor 13 may include a processor, a microprocessor, an application-specific integrated circuit (ASIC), and a field programmable gate array, (FPGA) for example. The processor 13 may execute the computerized code of the function modules of the wiring check system 10 to realize the functions of the wiring check system 10.
In step S01, the data import module 100 imports a first PCB file and a second PCB file from the database 11. Each of the first PCB file and the PCB file includes a wiring diagram, and data relating to the wiring diagram. The data relating to the wiring diagram includes identification information and basic information of components and the transmission lines in the wiring diagram. In one embodiment, the wiring diagrams in the first PCB file and the second PCB file are different versions for a same PCB.
In step S02, the selection module 102 provides a user interface for a user selecting one or more items that need to be checked. The items include, for example, a component item and a transmission line item.
In step S03, the check module 102 checks whether the selected items include a component item. Steps S04 to S11 are implemented when the selected items include a component item. Otherwise, step S12 is implemented when the selected items does not include a component item.
In step S04, the check module 102 selects one element belonging to the component item, namely one component, from the first PCB file, and obtains identification information and basic information of the selected component from the first PCB file. As mentioned above, the identification information includes, for example, a name and/or an ID of the selected component, and the basic information includes, types, coordinates data, pin information, and layers of the selected component, etc.
In step S05, the check module 102 searches a component corresponding to the identification information in the second PCB file. That is, the check module 102 checks the second PCB file to search a component which has the same identification information with the selected component in the first PCB file.
In step S06, the check module 102 checks whether the second PCB file has a corresponding component. Step S07 (see
In step S07, the check module 102 records the identification information and the basic information of the selected component into a different element list of the first PCB file.
In step S08, the check module 102 checks whether the corresponding component in the second PCB file has the same basic information with the selected component in the first PCB file. Step S07 (see
In step S09, the check module 102 records the identification information and basic information of the selected component into a same element list.
In step S10, the check module 102 checks whether the first PCB file have any other component that is not selected. When all the components in the PCB file have been selected, step S11 is implemented. Otherwise, until all the components in the PCB file have been selected, the procedure returns to step S04.
In step S11, the check module 102 compares the second PCB file and the same element list to locate one or more components which are included in the second PCB file but not included in the same element list, and records the identification information and the basic information of the located components into a different element list of the second PCB file.
In step S12 (
In step S13, the check module 102 selects one element belonging to the transmission line item, namely selects one transmission line, from the first PCB file, and obtaining identification information and basic information of the selected transmission line. As mentioned, the identification information includes, a name and/or an ID of the selected transmission line, etc. and the basic information includes paths, line lengths, line widths, and line spaces of the selected transmission line.
In step S14, the check module 102 searches a transmission line corresponding to the identification information in the second PCB file. That is, the check module 102 checks the second PCB file to search a transmission line which has the same identification information with the selected transmission line in the first PCB file.
In step S15, the check module 102 checks whether the second PCB file has a corresponding transmission line. Step S16 (see
In step S16, the check module 102 records the identification information and the basic information of the selected transmission line into the different element list of the first PCB file.
In step S17, the check module 102 checks whether the corresponding transmission line in the second PCB file have the same basic information with the selected transmission line in the first PCB file. Step S16 (see
In step S18, the check module 102 records the identification information and basic information of the selected transmission line in the same element list.
In step S19, the check module 102 checks whether the first PCB file has any other transmission line that is not selected. When all the transmission lines in the PCB file have been selected, step S20 is implemented. Otherwise, until all the transmission lines in the PCB file have been selected, the procedure returns to step S13.
In step S20, the check module 102 compares the second PCB file and the same element list to locate one or more transmission lines which are included in the second PCB file but not included in the same element list, and records the identification information and the basic information of the located transmission lines into the different element list of the second PCB file.
In step S21, the output module 103 outputs a check report which includes the different element list of the first PCB file, the different element list of the second PCB file, and the same element list.
It should be emphasized that the above-described embodiments of the present disclosure, particularly, any embodiments, are merely possible examples of implementations, merely set forth for a clear understanding of the principles of the disclosure. Many variations and modifications may be made to the above-described embodiment(s) of the disclosure without departing substantially from the spirit and principles of the disclosure. All such modifications and variations are intended to be included herein within the scope of this disclosure and the present disclosure and protected by the following claims.
Number | Date | Country | Kind |
---|---|---|---|
2012104906637 | Nov 2012 | CN | national |