1. Technical Field
Embodiments of the present disclosure relate to circuit simulating systems and methods, and more particularly, to a computing device and a method for checking distances between transmission lines and anti-pads arranged on a printed circuit board (PCB).
2. Description of Related Art
In PCB design, to ensure integrity of signals transmitted by transmission lines, distances between transmission lines and neighboring anti-pads may be required to satisfy predetermined standards, to avoid or reduce signal crosstalk such as electromagnetic interference and coupling of neighboring transmission lines. Presently, the distances between transmission lines and neighboring anti-pads are often acquired manually. With the large quantity of transmission lines and anti-pads distributed on the PCB, manual checking is not only time-consuming, but also error-prone.
The disclosure, including the accompanying drawings in which like references indicate similar elements, is illustrated by way of examples and not by way of limitation. It should be noted that references to “an” or “one” embodiment in this disclosure are not necessarily to the same embodiment, and such references mean at least one.
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 display 15 displays the file 11 and a user interface allowing selection of transmission lines to be checked and output check results. Depending on the embodiment, the storage device 13 may be a smart media card, a secure digital card, or a compact flash card. The device 10 may be a personal computer, or a server, for example.
The information reading module 121 reads the file 11 from the storage device 13. In one embodiment, the file 11 includes layout information of components, such as the transmission lines, vias, and anti-pads arranged on the PCB 10. The layout information may include types of the transmission lines, the number of the transmission lines arranged on the PCB 10, a length of each transmission line, and sizes of the vias and anti-pads, for example.
The line selection module 122 receives one or more signal transmission lines selected by a user from the file 11. The user may select one transmission line at one time, or select more than one transmission lines having the same design standards at one time. For example, in one embodiment, all transmission lines which have the same design standards as a transmission line “L1” in
The standard distance setting module 123 receives a standard distance between each selected transmission line and each neighboring anti-pad set by the user. For example, the standard distance may be set as 30 mil.
The information reading module 121 reads a transmission line from the one or more selected transmission lines. For example, the transmission line “L1” shown in
The information check module 124 determines neighboring anti-pads of the read transmission line. As shown in
The information check module 124 further determines an actual distance between the read transmission line and each neighboring anti-pad, and determines that the transmission line and a corresponding neighboring anti-pad do not satisfy design requirements if the actual distance is less than the standard distance. For example, the information check module 124 determines a distance “a1” between the transmission line “L1” and the anti-pad “B1”, and if “a1” is less than 30 mil, the information check module 124 determines that the transmission line “L1” and the anti-pad “B1” do not satisfy the design requirements.
The result generation module 125 highlights the transmission lines and anti-pads that do not satisfy the design requirements in the file 11, and generate a report file recording information of the transmission lines and anti-pads that do not satisfy the design requirements, to prompt the user to modify the design of the highlighted transmission lines and anti-pads.
In block S301, the information reading module 121 reads the file 11 from the storage device 13. As mentioned above, the file 11 includes layout information of components, such as the transmission lines, vias, and anti-pads arranged on the PCB 10. The layout information may include types of the transmission lines, the number of the transmission lines arranged on the PCB 10, a length of each transmission line, and sizes of the vias and anti-pads, for example.
In block S302, the line selection module 122 receives one or more signal transmission lines, which have the same design standards, selected by a user from the file 11. For example, in one embodiment, all transmission lines which have the same design standards as a transmission line “L1” in
In block S303, the standard distance setting module 123 receives a standard distance between each selected transmission line and each neighboring anti-pad set by the user. For example, the standard distance may be set as 30 mil.
In block S304, the information reading module 121 reads a transmission line from the one or more selected transmission lines. For example, the information reading module 121 reads the transmission line “L1” shown in
In block S305, the information check module 124 determines neighboring anti-pads of the read transmission line, and determines an actual distance between the read transmission line and each neighboring anti-pad. For example, the information check module 124 determines the anti-pads “B1” and “B2” are neighboring anti-pads of the transmission line “L1” in
In block S306, the information check module 124 determines if the actual distance between the read transmission line and any neighboring anti-pads is less than the standard distance, to determine if the read transmission line and the corresponding neighboring anti-pads satisfy design requirements. If the actual distance between the read transmission line and each neighboring anti-pad is equal to or more than the standard distance, the procedure goes to block S309. Otherwise, if the actual distance is less than the standard distance, the procedure goes to block S307.
In block S307, the information check module 124 determines that the read transmission line and a corresponding neighboring anti-pad do not satisfy the design requirements. For example, if “a1” is less than 30 mil, the information check module 124 determines that the design of the transmission line “L1” and the anti-pad “B1” do not satisfy the design requirements.
In block S308, the result generation module 125 highlights the read transmission line and the anti-pad that do not satisfy the design requirements in the PCB layout file 11, to prompt the user to modify design of the highlighted transmission line and anti-pad.
In block S309, the information check module 124 checks if there is any selected transmission line that has not been read. If there is any selected transmission line that has not been read, the procedure repeats from block S304 until all selected transmission lines have been read, then the procedure goes to block S310.
In block S310, the result generation module 125 generates a report file recording information of all transmission lines and anti-pads that do not satisfy the design requirements, and outputs the report file on the display 15.
Although certain inventive embodiments of the present disclosure have been specifically described, the present disclosure is not to be construed as being limited thereto. Various changes or modifications may be made to the present disclosure without departing from the scope and spirit of the present disclosure.
Number | Date | Country | Kind |
---|---|---|---|
2010 1 0231195 | Jul 2010 | CN | national |
Number | Name | Date | Kind |
---|---|---|---|
5485081 | Whitehead et al. | Jan 1996 | A |
6357036 | Eka et al. | Mar 2002 | B1 |
20020174413 | Tanaka | Nov 2002 | A1 |
20040250222 | Saito et al. | Dec 2004 | A1 |
20060161874 | Harada et al. | Jul 2006 | A1 |
20060288317 | Hamada et al. | Dec 2006 | A1 |
20090001573 | Jirawongsapiwat et al. | Jan 2009 | A1 |
20100181101 | Han et al. | Jul 2010 | A1 |
20100218151 | Nakano | Aug 2010 | A1 |
20110058291 | Kosowsky et al. | Mar 2011 | A1 |
20110132648 | Mutnury et al. | Jun 2011 | A1 |
20120046887 | XiaoPing | Feb 2012 | A1 |
Number | Date | Country | |
---|---|---|---|
20120017191 A1 | Jan 2012 | US |