# Patent

## Title
CAD apparatus and check support apparatus

## Abstract

In a computer aided design (CAD) apparatus, an association-data acquiring unit acquires association data that defines an association between pins of a first connector and those of a second connector to be connected to the first connector, and an assignment of signals to the pins. A part-information acquiring unit acquires information including a symbol of the first connector. A layout-condition acquiring unit acquires a layout condition to lay out the symbol of the first connector on a circuit diagram. A circuit diagram creating/updating unit lays out the symbol of the first connector on the circuit diagram based on the layout condition, and adds a net name indicating a signal assigned to each of the pins to the symbol.

## Background
CROSS-REFERENCE TO RELATED APPLICATIONS
This application is a divisional of U.S. application Ser. No. 12/000,098, filed on Dec. 7, 2007, now abandoned which is a continuation-in-part of prior U.S. application Ser. No. 11/902,940, now abandoned filed on Sep. 26, 2007; Ser. No. 11/905,108, filed on Sep. 27, 2007; now U.S. Pat. No. 8,201,136 Ser. No. 11/905,315, filed on Sep. 28, 2007; now abandoned and Ser. No. 11/980,396, filed on Oct. 31, 2007; now abandoned and it being further noted that priority is based upon the prior Japanese Patent Application Nos. 2006-330500, filed on Dec. 7, 2006; 2006-330501, filed on Dec. 7, 2006; 2006-330502, filed on Dec. 7, 2006; 2006-330503, filed on Dec. 7, 2006; 2007-307150, filed on Nov. 28, 2007; 2007-307151, filed on Nov. 28, 2007; 2007-307152, filed on Nov. 28, 2007; and 2007-307153, filed on Nov. 28, 2007.


BACKGROUND
1. Field
The present art relates to a technology for circuit design.
2. Description of the Related Art
An electronic circuit that controls an information processing apparatus, a communication device, or the like generally includes a plurality of printed circuit boards connected to each other via connectors. Design work of such an electronic circuit includes checking of whether signals are correctly assigned to pins of the connectors by comparing pieces of design information of the printed circuit boards.
To easily and reliably perform the checking operation, some conventional technologies have been proposed. For example, Japanese Patent Application Laid-Open No. H8-69486 discloses a connector-information check apparatus. The connector-information check apparatus reads attribute information of a connector pin and a signal from a circuit diagram file of a printed circuit board and that from a circuit diagram file of another printed circuit board to be connected to the former one, and compares the pieces of the attribute information. Japanese Patent Application Laid-Open No. 2001-325315 discloses a multi-PCB-connection design support apparatus. The multi-PCB-connection design support apparatus logically traces a signal line between printed circuit boards connected via a back wiring board to verify that a signal is correctly assigned to a connector pin.
The conventional technologies improve efficiency of the checking operation performed after design of printed circuit boards to be connected via connectors is once completed; however, these technologies do not improve efficiency of designing a printed circuit board itself. Recently, a product is developed in a shorter span, and thus, there is a need of a technology for improving efficiency of designing a printed circuit board.
Besides, conventional technologies require that the same name be assigned to corresponding pins of connectors to be connected to automatically recognize an association between the pins. Specifically, if a pin name A1 is assigned to a driver-side connector pin, the same pin name A1 needs to be assigned to a receiver-side connector pin corresponding to the driver-side connector pin.
However, it is often the case that actual design work is performed using connector information that have already been registered, and names of pins of connectors cannot be freely set. In this case, the conventional technologies are not applicable that require assignment of the same name to corresponding connector pins.
SUMMARY
It is an object of the present art to at least partially solve the problems in the conventional technology.
According to an aspect of an embodiment, a check support apparatus that supports an operation of checking a signal assigned to an electronic terminal of a first electronic connect section and a corresponding electronic terminal of a second electronic connect section to be connected to the first electronic connect section, includes: a design-data acquiring unit that acquires design data including terminal information that indicates association between a terminal name and a net name of each electronic terminal of the first electronic connect section and a terminal name and a net name of each electronic terminal of the second electronic connect section; an information display unit that displays first information of the first electronic connect section and second information of the second electronic connect section included in the design data; and a sorting unit that sorts each of the first information and the second information in a predetermined order.
According to another aspect of an embodiment, a computer-readable recording medium that stores therein a computer program for supporting an operation of checking a signal assigned to an electronic terminal of a first electronic connect section and a corresponding electronic terminal of a second electronic connect section to be connected to the first electronic connect section, the computer program causing a computer to execute: acquiring design data including terminal information that indicates association between a terminal name and a net name of each electronic terminal of the first electronic connect section and a terminal name and a net name of each electronic terminal of the second electronic connect section; displaying first information of the first electronic connect section and second information of the second electronic connect section included in the design data; and sorting each of the first information and the second information in a predetermined order.
According to still another aspect of an embodiment, a computer aided design (CAD) apparatus for designing a circuit diagram, includes: an association-data acquiring unit that acquires association data that defines an association between an electronic terminal of a first electronic connect section and an electronic terminal of a second electronic connect section to be connected to the first electronic connect section, and an assignment of a signal to the electronic terminals; a part-information acquiring unit that acquires information including a symbol of the first electronic connect section; a layout-condition acquiring unit that acquires a layout condition to lay out the symbol on a circuit diagram; and a circuit diagram editing unit that lays out, when the symbol has not yet been laid out on the circuit diagram, the symbol on the circuit diagram based on the layout condition, and adds a net name indicating the signal assigned to the electronic terminals to the symbol.
According to still another aspect of an embodiment, a method of designing a circuit diagram includes: acquiring association data that defines an association between an electronic terminal of a first electronic connect section and an electronic terminal of a second electronic connect section to be connected to the first electronic connect section, and an assignment of a signal to the electronic terminals; acquiring information including a symbol of the first electronic connect section; acquiring a layout condition to lay out the symbol on the circuit diagram; and laying out, when the symbol has not yet been laid out on the circuit diagram, the symbol on the circuit diagram based on the layout condition, and adding a net name indicating the signal assigned to the electronic terminals to the symbol.
According to still another aspect of an embodiment, a computer aided design (CAD) apparatus for designing a circuit diagram, includes: an editing unit that displays an editing screen for editing a circuit diagram; an association-data acquiring unit that acquires association data that defines an association between a first electronic terminal of a first electronic connect section included in the circuit diagram being edited on the editing screen and a second electronic terminal of a second electronic connect section to be connected to the first electronic connect section; and an attribute display unit that acquires, when the first electronic terminal is specified on the editing screen, attribute information of the second electronic terminal associated with the first electronic terminal based on the association data, and displays the attribute information.
According to still another aspect of an embodiment, a method of designing a circuit diagram includes: displaying an editing screen for editing a circuit diagram; first acquiring association data that defines an association between a first electronic terminal of a first electronic connect section included in the circuit diagram being edited on the editing screen and a second electronic terminal of a second electronic connect section to be connected to the first electronic connect section; and second acquiring, when the first electronic terminal is specified on the editing screen, attribute information of the second electronic terminal associated with the first electronic terminal based on the association data, and displaying the attribute information.
According to still another aspect of an embodiment, a check support apparatus that supports an operation of checking a signal assigned to an electronic terminal of a first electronic connect section and a corresponding electronic terminal of a second electronic connect section to be connected to the first electronic connect section, includes: a design-data acquiring unit that acquires design data including terminal information that indicates association between a terminal name and a net name of each electronic terminal of the first electronic connect section and a terminal name and a net name of each electronic terminal of the second electronic connect section; an associating unit that associates a first electronic terminal of the first electronic connect section with a second electronic terminal of the second electronic connect section included in the design data; and a checking unit that checks net names of the first electronic terminal and the second electronic terminal based on the terminal information, and displays an error when the net names do not match.
According to still another aspect of an embodiment, a method of supporting an operation of checking a signal assigned to a pin of a first connector and a corresponding pin of a second connector to be connected to the first connector, includes: acquiring design data including terminal information that indicates association between a terminal name and a net name of each electronic terminal of the first electronic connect section and a terminal name and a net name of each electronic terminal of the second electronic connect section; associating a first electronic terminal of the first electronic connect section with a second electronic terminal of the second electronic connect section included in the design data; checking net names of the first electronic terminal and the second electronic terminal based on the terminal information; and displaying an error when the net names do not match.
According to still another aspect of an embodiment, a computer-readable recording medium stores therein a computer program that implements the above method on a computer.
The above and other objects, features, advantages and technical and industrial significance of this art will be better understood by reading the following detailed description of presently preferred embodiments of the art, when considered in connection with the accompanying drawings.



BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is an example of printed circuit boards to be connected by a connector;
FIG. 2 is a schematic diagram of a design support system according to an embodiment of the present art;
FIG. 3 is a functional block diagram of a check support apparatus shown in FIG. 2;
FIG. 4 is an example of a check screen that displays information on a printed circuit board of level 1;
FIG. 5 is the check screen of FIG. 4 that further displays information on a printed circuit board of level 2;
FIG. 6 is an example of an association screen that displays two sets of associated pins;
FIG. 7 is an example of physical layout of pins;
FIG. 8 is an example of the association screen after pin information is sorted;
FIG. 9 is another example of physical layout of pins;
FIGS. 10 and 11 are other examples of the association screen after pin information is sorted;
FIG. 12 is another example of physical layout of pins;
FIGS. 13 to 16 are other examples of the association screen after pin information is sorted;
FIG. 17 is an example of the check screen after association is defined;
FIG. 18 is an example of the check screen after association is checked;
FIG. 19 is a flowchart of a processing procedure of association check;
FIG. 20 is an example of contents of an association file;
FIG. 21 is an example of the structure of design data;
FIG. 22 is an example of the structure of association data;
FIG. 23 is a functional block diagram of a CAD apparatus shown in FIG. 2;
FIG. 24 is an example of a circuit diagram to be created;
FIG. 25 is an example of a circuit-diagram creation/update screen;
FIG. 26 is an example of layout of parts when the parts are sequentially arranged;
FIG. 27 is an example of layout of parts when identical parts are aligned in a line;
FIG. 28 is a flowchart of a processing procedure of a circuit diagram creation/update;
FIG. 29 is an example of a process selection menu;
FIG. 30 is an example of a display of destination-attribute information;
FIG. 31 is a flowchart of a processing procedure performed on the process selection menu; and
FIG. 32 is a functional block diagram of a computer that executes a check support program.



DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
Exemplary embodiments of the present art are explained in detail below with reference to the accompanying drawings.
An embodiment of the present art is explained with a printed circuit board (PCB) 11 shown in FIG. 1 as an example. The printed circuit board 11 is a back wiring board (BWB) for connecting printed circuit boards 12 and 13 with each other, and includes connectors CN1 and CN2. The connectors CN1 and CN2 each include 10 pins A1 to A10. Among the pins A1 to A10 of the connectors CN1 and CN2, respective sets of pins having the same pin name are connected via signal lines with net names D1 to D10.
The printed circuit board 12 has a predetermined function, and includes a connector CN1 to be connected to the connector CN1 of the printed circuit board 11. The connector CN1 includes 10 pins A1 to A5 and B1 to B5.
The pins A1 to A5 are connected to an integrated circuit (IC) 12a via a part such as a resistor. Signal lines with net names D1 to D5 connects the pins A1 to A5 to resistors or the like, respectively, while signal lines with net names A-DT1 to A-DT5 connects the resistors or the like to the IC 12a, respectively.
Similarly, the pins B1 to B5 are connected to an IC 12b via a part such as a resistor. Signal lines with net names D6 to D10 connects the pins B1 to B5 to resistors or the like, respectively, while signal lines with net names B-DT1 to B-DT5 connects the resistors or the like to the IC 12b, respectively.
The printed circuit board 13 has a predetermined function, and includes a connector CN2 to be connected to the connector CN2 of the printed circuit board 11. The connector CN2 includes 10 pins A1 to A5 and B1 to B5.
The pins A1 to A5 are connected to an IC 13a via a part such as a resistor. Signal lines with net names D1 to D5 connects the pins A1 to A5 to resistors or the like, respectively, while signal lines with net names A-DT1 to A-DT5 connects the resistors or the like to the IC 13a, respectively.
Similarly, the pins B1 to B5 are connected to an IC 13b via a part such as a resistor. Signal lines with net names D6 to D10 connects the pins B1 to B5 to resistors or the like, respectively, while signal lines with net names B-DT1 to B-DT5 connects the resistors or the like to the IC 13b, respectively.
FIG. 2 is a schematic diagram of a design support system according to the embodiment. The design support system is effective for designing a printed circuit board to be connected to another printed circuit board. The design support system includes a design-data server 100, a part-information server 200, check support apparatuses 301 to 303, and computer aided design (CAD) apparatuses 401 to 403, which are connected one another via a network 20 such as a local area network (LAN).
The design-data server 100 manages design data such as a designed circuit diagram and the like, and stores therein association definition data created by the check support apparatuses 301 to 303 as a portion of the design data. The part-information server 200 manages symbols or specification information of various parts necessary for editing a circuit diagram.
The check support apparatuses 301 to 303 provide an assistance to effectively and reliably verify that signals are correctly assigned to connector pins between printed circuit boards to be connected. The CAD apparatuses 401 to 403 are used for electronically designing a printed circuit board and the like.
The configuration of the design support system shown in FIG. 2 is merely one example, and can be modified as required. For example, the design-data server 100 and the part-information server 200 can be integrated into one server, or the check support apparatus 301 and the CAD apparatus 401 can be integrated into one apparatus.
The check support apparatuses 301 to 303 are explained below. The check support apparatuses 301 to 303 are of like configuration and function in the same manner, and thus but one of them, the check support apparatus 301 is explained in detail.
FIG. 3 is a functional block diagram of the check support apparatus 301. The check support apparatus 301 includes a display unit 310, an input unit 320, a network interface 330, a control unit 340, and a memory unit 350.
The display unit 310 displays various types of information, and includes a liquid crystal display or the like. The input unit 320 is used by a user to provide various types of information, commands, and the like. Examples of the input unit 320 include a keyboard, and a mouse. The network interface 330 is an interface for exchanging information with other devices via the network 20.
The control unit 340 controls the check support apparatus 301. The control unit 340 includes a design-data acquiring unit 341, a connector-information display unit 342, a pin-information sorting unit 343, an associating unit 344, a checking unit 345, a design-data updating unit 346, and a data input/output unit 347.
The design-data acquiring unit 341 acquires design data specified by the design-data server 100 or by the CAD apparatuses 401 to 403. The connector-information display unit 342 displays, on the display unit 310, information on a connector included in the design data acquired by the design-data acquiring unit 341. The pin-information sorting unit 343 sorts information on pins displayed by the connector-information display unit 342 in a predetermined order. The associating unit 344 defines an association of pins to be connected.
Concrete examples of processes performed by the connector-information display unit 342, the pin-information sorting unit 343, and the associating unit 344 are explained below. FIG. 4 is an example of a check screen displayed by the connector-information display unit 342 on the display unit 310. The check screen as shown in FIG. 4 is displayed after the check support apparatus 301 reads design data corresponding to the printed circuit board 11 as a printed circuit board of level 1.
The design-data acquiring unit 341 acquires design data from the design-data server 100 in response to an instruction from a user. The design-data acquiring unit 341 exclusively extracts connector information from the design data, and stores the connector information in a design-data memory 351 of the memory unit 350. The connector-information display unit 342 displays the connector information on the check screen. In the example shown in FIG. 4, the check screen indicates that the printed circuit board BWB of level 1 includes the connectors CN1 and CN2.
In FIG. 4, a box in “Pin” column is simply marked with a symbol “+” to avoid complication due to display of all pieces of information on each pin. If the user selects a box (“+”) with a mouse or the like, the connector-information display unit 342 displays a list of information on pins included in a corresponding connector.
Upon receiving an instruction to read design data corresponding to the printed circuit boards 12 and 13 as printed circuit boards of level 2 through the input unit 320, the design-data acquiring unit 341 acquires the design data, and exclusively extracts connector information from the design data. The connector-information display unit 342 acquires the connector information, and updates the check screen as shown in FIG. 5.
Referring to FIG. 5, a printed circuit board PCB1 of level 2 includes the connector CN1, and a printed circuit board PCB2 of level 2 includes the connector CN2 in addition that the printed circuit board BWB of level 1 includes two connectors.
As can be seen in FIG. 5, if the user specifies different levels of printed circuit boards to be connected, the connector-information display unit 342 displays pieces of information on connectors included in the printed circuit boards on different rows in columns of the respective levels.
In this case, for verifying an assignment of signals to the connector CN1 of the printed circuit board BWB and to the connector CN1 of the printed circuit board PCB1, the user selects the connectors CN1 on the check screen, and presses “Select” key. Subsequently, the connector-information display unit 342 displays a list of pin information of the connectors CN1 on an association screen.
An example of the association screen is shown in FIG. 6. As shown in FIG. 6, a list of net names and pin names of pins included in the selected connectors CN1 is displayed on the association screen. With the association screen, the user checks whether signals assigned to the pins are correct based on the list of pin information for the two connectors CN1.
Specifically, the user recognizes an association between pins respectively included in the two connectors CN1 based on the pin names, and checks whether a signal assigned to an associated pair of the pins is correct based on the net names of the pins. If a signal is correctly assigned to the pins, the user selects the associated pair of the pins, and presses “Association” key.
If “Association” key is pressed, the associating unit 344 stores the association of the selected pins in an association memory 352 of the memory unit 350. The connector-information display unit 342 adds an asterisk “*” to the top of the name of each selected pin. Pieces of information on the pins are displayed on the same row.
In this manner, an asterisk “*” is added to the top of the name of the associated pins, and such pins are displayed on the same row. In the example shown in FIG. 6, a pin A1 of the printed circuit board BWB is associated with a pin A1 of the printed circuit board PCB1, and a signal is correctly assigned to them. Besides, a pin A2 of the printed circuit board BWB is associated with a pin A2 of the printed circuit board PCB1, and a signal is correctly assigned to them.
As described above, the association screen is configured to display a list of pin information of connectors to facilitate a user to check the association between pins and to check whether signals are correctly assigned to the pins. Therefore, it is possible to effectively verify that signals are correctly assigned to pins even when the pin names of the associated pins are different from each other. While, in the above example, an asterisk “*” is added to the top of pin names to discriminate an associated pair of pins, a color of a box or indication of the pins can be changed instead.
On the other hand, the connector-information display unit 342 displays pin information on the association screen as a default screen in order as pins have been stored in design data. In the example shown in FIG. 6, the pin information of the printed circuit board BWB and the pin information of the printed circuit board PCB1 are stored in a proper order, and pieces of information on associated pins are displayed on the same row. As a result, the user can easily compare the pieces of the pin information.
However, pin information is not always stored in a preferable order depending on design data. Accordingly, the pin-information sorting unit 343 sorts pin information in a manner previously specified by the user when, for example, the header or the title box of “Pin” column is selected.
The pin-information sorting unit 343 can sort pin information in order as pins have been stored in design data, or sort pin information by using a pin name. The pin-information sorting unit 343 can use a whole pin name as a character string, or divide it into a character portion and a numeral portion to sort pin information on a character basis or a numeral basis. Concrete examples other than sorting in stored order are explained in detail below.
First, it is assumed that a pin name of each pin in the connector CN1 of the printed circuit board BWB has a numeral portion embedded with zero as in a connector 31 shown in FIG. 7, while a pin name of each pin in the connector CN1 of the printed circuit board PCB1 has a one-digit numeral portion as in a connector 41 shown in FIG. 7. In this case, as shown in FIG. 8, associated pins are displayed on the same row by sorting pin information using a whole pin name as a character string.
When pin information is sorted by using a whole pin name as a character string, pin names are simply sorted by American standard code for information interchange (ASCII) code order. This method is effective when the numeral portions of respective pin names have the same number of digits.
Second, it is assumed that a pin name of each pin in the connector CN1 of the printed circuit board BWB has a numeral portion without zero embedded as in a connector 32 shown in FIG. 9, while a pin name of each pin in the connector CN1 of the printed circuit board PCB1 is set as in the connector 41 shown in FIG. 7. In this case, as shown in FIG. 10, if pin information is sorted by using a whole pin name as a character string, associated pins are displayed in different rows.
Thus, pin information is sorted on a character basis by dividing each pin name into a character portion and a numeral portion, whereby associated pins are displayed on the same row as shown in FIG. 11. In this method, after the numeral portions of pin names are sorted by a numeric order, the character portions are sorted by ASCII code order.
Third, it is assumed that pin names of pins in the connector CN1 of the printed circuit board BWB are set as those in a connector 33 shown in FIG. 12, which are set in a different order than those in the connector 41. In this case, as shown in FIG. 13, if pin information is sorted on a character basis by dividing each pin name into a character portion and a numeral portion, associated pins are displayed in different rows.
Thus, pin information is sorted on a numeral basis by dividing each pin name into a character portion and a numeral portion, whereby associated pins are displayed on the same row as shown in FIG. 14. In this method, after the character portions of pin names are sorted by ASCII code order, the numeral portions are sorted by a numeric order.
The association screen is configured such that the pin-information sorting unit 343 sorts pin information based on net names when the header or the title box of “Net” column is selected as shown in FIG. 15. In addition, as shown in FIG. 16, logically-transparent net names can be displayed in “Net” column. In such a case, the pin-information sorting unit 343 sorts pin information based on logically-transparent net names when the header or the title box of “Net” column is selected.
As described above, the association screen is configured to sort pin information of connectors in a predetermined manner, and display associated pins on the same row. Therefore, a user can effectively check whether signals are correctly assigned to pins.
The method of sorting pin information can be selected by a user, or automatically selected by the pin-information sorting unit 343 to achieve an optimal result. In this case, the pin-information sorting unit 343 tries all the methods described above, and selects one of them in which the largest number of net names match.
If it is verified that signals assigned to pins are correct and “OK” key is pressed after the associations of all pins are defined on the association screen, associated connectors are displayed on the same row in the check screen as shown in FIG. 17.
Referring back to FIG. 3, the checking unit 345 checks whether the net names of associated pair of pins defined by the associating unit 344 are correct. The design-data updating unit 346 updates design data and net names set to the pins to the latest version in advance of a check performed by the checking unit 345.
Specifically, when “Check” key is pressed on the check screen, the checking unit 345 sequentially checks associated pin information. If there is a pair with net names that do not match, the checking unit 345 displays detailed pin information of connectors including the pair as shown in FIG. 18, and specifies the pair by a bold-lined frame, a different color, or the like.
According to a setting previously specified by a user, the checking unit 345 can check associated pin information based on either or both net names and logically-transparent net names of associated pins. If there is a pair with logically-transparent net names that do not match, the checking unit 345 specifies the pair by a bold-lined frame, a different color, or the like.
If a user previously specifies a setting to update design data to the latest version in advance of a check performed by the checking unit 345, the design-data updating unit 346 acquires the latest design data from the design-data server 100 or the CAD apparatuses 401 to 403, and updates net names stored in association with pin names.
FIG. 19 is a flowchart of a processing procedure of association check. The processing procedure is performed when a setting has been specified to update design data to the latest version in advance of a check.
If “Check” key is pressed, the design-data updating unit 346 acquires the latest design data (step S101), and updates net names and logically-transparent net names in association data (step S102). The term “association data,” as used herein, refers to data that indicates association or correspondence between pins.
Subsequently, the checking unit 345 acquires an associated pair of pins from the association data (step S103). If all pairs of pins have already been acquired from the association data (YES at step S104), the process ends.
On the other hand, if there is a pair of pins yet to be acquired, the pair is acquired from the association data (NO at step S104), and the net names of the pins are compared. If the net names of the pins match (YES at step S105), the process control returns to step S103 to acquire a next pair of pins. If the net names of the pins do not match (NO at step S105), an error indicating a mismatch between the net names is displayed (step S106), and the process control returns to step S103 to acquire a next pair of pins.
In this manner, by checking a match and a mismatch between net names all at once, it is possible to verify that net names are correctly set to a printed circuit board to be connected and to improve a quality of design data. Furthermore, by updating net names to the latest version in advance of a check, it is possible to detect that a net name has been incorrectly updated or to check whether the net name incorrectly updated has been corrected.
Although, in the above explanation, a pair of pins with net names or logically-transparent net names that do not match is highlighted on the check screen, a list of such pairs can be output as an electric file or a document.
If the check support apparatus 301 and the CAD apparatus 401 are integrally configured, a circuit diagram of a portion corresponding to mismatched pins, i.e., pins with net names or logically-transparent net names that do not match, can be displayed to assist a user to check it. A screen for editing the circuit diagram of the portion corresponding to the mismatched pins can also be automatically displayed to assist the user to correct the net names or the logically-transparent net names.
The data input/output unit 347 exchanges the association data, i.e., data indicating the association of pins, with other devices via the network 20. The data input/output unit 347 outputs the association data in an electric file as an association file.
FIG. 20 is an example of the association file. In FIG. 20, a comment row starts with a number sign “#”. A block start with “@UNIT” contains information on a drawing and a printed circuit board described in the drawing.
A block start with “@CONNECT” contains information on associated pairs of pins. A block start with “@UNCONNECT” contains information on pins yet to be associated. In the block start with “@CONNECT”, information on a pin at a high level specified upon reading of design data is stored as a parent, while information on a pin at a low level is stored as a child.
The association file shown in FIG. 20 stores only associations between the connector CN1 of the printed circuit board BWB and the connector CN1 of the printed circuit board PCB1. However, when an association between the connector CN2 of the printed circuit board BWB and the connector CN2 of the printed circuit board PCB2 is once defined, the association of pins of the connectors CN2 is also stored in the association file. Accordingly, by referring to the association file, it is possible to check associations and connections, via the printed circuit board BWB, between pins of the connector CN1 of the printed circuit board PCB1 and pins of the connector CN2 of the printed circuit board PCB2.
Referring back to FIG. 3, the memory unit 350 stores therein various types of information, and includes the design-data memory 351 and the association memory 352. The design-data memory 351 stores therein connector information extracted from data acquired by the design-data acquiring unit 341. The association memory 352 stores therein information on the association of pins defined by the associating unit 344.
FIG. 21 is an example of the structure of design data. As shown in FIG. 21, design data stored in the design-data memory 351 contains design information 351a that indicates a drawing and a printed circuit board including a connector, connector information 351b that contains library access key and the like for acquiring a part name of the connector or information on the connector from the part-information server 200, and pin information 351c that contains information on pins included in the connector.
FIG. 22 is an example of the structure of association data. As shown in FIG. 22, association data stored in the association memory 352 contains connector association information 352a that indicates an association between connectors, and pin association information 352b that indicates an association between pins.
The CAD apparatuses 401 to 403 shown in FIG. 2 are explained below. The CAD apparatuses 401 to 403 are of like configuration and function in the same manner, and thus but one of them, the CAD apparatus 401 is explained in detail.
FIG. 23 is a functional block diagram of the CAD apparatus 401. The CAD apparatus 401 includes a display unit 410, an input unit 420, a network interface 430, a control unit 440, and a memory unit 450.
The display unit 410 displays various types of information, and includes a liquid crystal display or the like. The input unit 420 is used by a user to provide various types of information, commands or the like. Examples of the input unit 420 include a keyboard, and a mouse. The network interface 430 is an interface for exchanging information with other devices via the network 20.
The control unit 440 controls the CAD apparatus 401. The control unit 440 includes an editing unit 441, an association-data acquiring unit 442, a part-information acquiring unit 443, a layout-condition acquiring unit 444, a circuit diagram creating/updating unit 445, an attribute display unit 446, and a circuit display unit 447.
The editing unit 441 edits a drawing, and is equivalent to that included in a general CAD apparatus. The association-data acquiring unit 442 acquires association data created by the check support apparatuses 301 to 303. The part-information acquiring unit 443 acquires a symbol or the like that indicates a part from the part-information server 200.
The layout-condition acquiring unit 444 acquires a layout condition or rules for creating a circuit diagram of a printed circuit board based on the association data. The circuit diagram creating/updating unit 445 creates and updates the circuit diagram of the printed circuit board based on the association data. The attribute display unit 446 displays attribute information of pins to be associated on an editing screen. The circuit display unit 447 displays an editing screen of the pin to be associated.
With the association-data acquiring unit 442, the part-information acquiring unit 443, the layout-condition acquiring unit 444, and the circuit diagram creating/updating unit 445, a circuit diagram of a printed circuit board can be created or updated based on association data.
An example of a circuit diagram created based on association data is shown in FIG. 24. In the circuit diagram shown in FIG. 24 is arranged a symbol 51 corresponding to a connector including pins whose association is defined. Part names are added to the pins, and signal lines with net names are extended from the pins, respectively. At the end of each signal line is a signal connector 52.
When it is required to create or update a circuit diagram of a printed circuit board based on association data, the layout-condition acquiring unit 444 displays a circuit-diagram creation/update screen on the display unit 410 through which a user can input necessary information.
FIG. 25 is an example of the circuit-diagram creation/update screen. As shown in FIG. 25, the circuit-diagram creation/update screen contains an area for specifying an association file, an area for specifying a shape and a position of a target part, an area for specifying an order of outputting parts, and an area for specifying a layout condition of the parts. Based on the layout condition, symbols of the parts (connectors) are laid out on a circuit diagram.
If “Arrange sequentially” is specified as the layout condition of parts, symbols of connectors are sequentially arranged as shown in FIG. 26. On the other hand, if “Align identical parts” is specified as the layout condition, symbols corresponding to an identical connector are aligned in the same line.
When a connector includes a number of pins, the connector may be divided into a plurality of portions such that the portions can be indicated by different symbols. All the symbols of the connector are registered in the part-information server 200. For example, three symbols CN1-1 to CN1-3 shown in FIGS. 26 and 27 correspond to one connector. If a circuit diagram contains a plurality of symbols for a single connector, it is often difficult to discriminate which symbol corresponds to which connector. However, by arranging symbols corresponding to an identical connector in the same line, the symbols can easily be discriminated.
A processing procedure performed after required information is input on the circuit-diagram creation/update screen is shown in FIG. 28. The association-data acquiring unit 442 acquires and reads an association file specified on the circuit-diagram creation/update screen (step S201). The circuit diagram creating/updating unit 445 selects a parent connector from the association file (step S202).
If all parent connectors have already been selected (YES at step S203), the circuit diagram creating/updating unit 445 ends the process. If there is a parent connector yet to be selected (NO at step S203), the parent connector is selected. When the parent connector is not arranged on the circuit diagram (NO at step S204), the circuit diagram creating/updating unit 445 instructs the part-information acquiring unit 443 to acquire the symbol from the part-information server 200 using a library access key (step S205).
The symbol acquired is arranged on a predetermined position on the circuit diagram according to a specified condition (step S206). After adding a signal line to the symbol (step S207), the part name and the net name are added to the symbol and the signal line, respectively (step S208). On the other hand, if the selected parent connector has already been arranged on the circuit diagram (YES at step S204), the net name is updated so that the net names on the circuit diagram correspond to those in the association file (step S209).
After the above process for a selected connector, the circuit diagram creating/updating unit 445 selects a next connector (step S202). Although creation of a circuit diagram is explained with parent connectors in an association file, a circuit diagram can be created for child connectors in a similar manner.
Referring back to FIG. 23, if a pin of a connector is selected while design data is being edited and a predetermined operation is performed, the attribute display unit 446 displays information on a corresponding pin (destination pin) of a printed circuit board (destination printed circuit board) to be connected to the pin on the display unit 410. The circuit display unit 447 displays design data of a portion corresponding the destination pin of the destination printed circuit board on the display unit 410.
For example, if a mouse is right-clicked in such a state that a pin A3 is selected while design data of the printed circuit board 12 is being edited, the CAD apparatus 401 displays a process selection menu 61 as shown in FIG. 29.
If “Destination-attribute display” is selected in the process selection menu 61, the attribute display unit 446 displays a popup window 62 showing information on the pin A3 of the connector CN1 of the printed circuit board 11 as shown in FIG. 30. The information shown in the popup window 62 includes at least the pin name and the net name of the pin A3. Preferably, the pin name and the net name are acquired from the design data including the printed circuit board 11.
In this manner, with a display of information on destination pins of a destination printed circuit boards, a user can carry out editing work while checking whether signals are correctly assigned to the pins.
If “Destination-circuit display” is selected in the process selection menu 61, the circuit display unit 447 opens an editing screen of the circuit diagram of the printed circuit board 11 to be connected, and zooms in a portion corresponding to the pin A3 of the connector CN1 on the display.
If “Destination-circuit display (BWB transparent)” is selected in the process selection menu 61, the circuit display unit 447 opens an editing screen of the circuit diagram of the printed circuit board 13 to be connected via the printed circuit board 11 that is a BWB, and zooms in a portion corresponding to the pin A3 of the connector CN2 on the display.
In this manner, by displaying an editing screen of a portion corresponding to a destination pin of a destination printed circuit board or a destination printed circuit board to be connected via a BWB, a user can easily change an assignment of a signal to the pin.
FIG. 31 is a flowchart of a processing procedure performed on the process selection menu 61. As shown in FIG. 31, after the process selection menu 61 is displayed (step S301), if “Destination-attribute display” is selected (YES at step S302), the attribute display unit 446 acquires information on a destination pin of a destination printed circuit board (step S303), and displays the information (step S304).
If “Destination-circuit display” is selected in the process selection menu 61 (NO at step S302, YES at step S305), the circuit display unit 447 acquires information on a destination printed circuit board (step S306). If “Destination-circuit display (BWB transparent)” is selected (NO at step S302, NO at step S305), the circuit display unit 447 acquires information on a destination printed circuit board to be connected via a BWB (step S307).
In this manner, after acquiring the information on the printed circuit board, when the editing screen of the circuit diagram of the printed circuit board is not displayed (NO at step S308), the circuit display unit 447 displays the editing screen of the circuit diagram (step S309). Thereafter, on the editing screen displayed, the circuit display unit 447 zooms in a portion corresponding to the destination pin associated with a pin selected (step S310).
Attribute information of a destination printed circuit board is required to be read in advance by the association-data acquiring unit 442 and stored in an association memory 452 of the memory unit 450 such that the attribute display unit 446 and the circuit display unit 447 can realize the above functions. The association-data acquiring unit 442 can automatically read the attribute information upon start of editing work, or read the attribute information in response to an instruction from a user.
Referring back to FIG. 23, the memory unit 450 stores therein various types of information, and includes a design-data memory 451 and the association memory 452. The design-data memory 451 stores therein design data of a printed circuit board to be edited. The association memory 452 stores therein information indicating the association of pins defined by the check support apparatuses 301 to 303.
As described above, the check support apparatuses 301 to 303 and the CAD apparatuses 401 to 403 according to the embodiment include various functions for effectively designing a printed circuit board to be connected to another printed circuit board.
The check support apparatus and the CAD apparatus are explained above as hardware; however, they can be implemented as software. For example, a computer program that realizes the same function as the control unit 340 of the check support apparatus 301 can be executed on a computer to implement the check support apparatus 301. Similarly, a computer program that realizes the same function as the control unit 440 of the CAD apparatus 401 can be executed on a computer to implement the CAD apparatus 401.
The check support apparatus and the CAD apparatus can also be implemented as single software. Specifically, a computer program that realizes the same functions as both the control unit 340 and the control unit 440 can be executed on a computer to implement both the check support apparatus 301 and the CAD apparatus 401.
Such a computer is explained that executes a computer program (hereinafter, “check support program”) to implement the functions of the control unit 340. A computer program that implements the functions of the control unit 440 is executed by a computer having a similar configuration.
FIG. 32 is a functional block diagram of a computer 1000 that executes a check support program 1071. The computer 1000 includes a central processing unit (CPU) 1010, an input device 1020, a display device 1030, a medium reader 1040, a network interface 1050, a random access memory (RAM) 1060, and a hard disk drive (HDD) 1070, which are connected one another via a bus 1080.
The CPU 1010 executes various operation processes. The input device 1020 receives input of data from a user. The display device 1030 displays various types of information thereon. The medium reader 1040 reads a program and the like from a recording medium. The network interface 1050 exchanges data with another computer via a network. The RAM 1060 temporarily stores therein various types of information.
The HDD 1070 stores therein the check support program 1071 having the same function as the control unit 340, and check support data 1072 corresponding to various data stored in the memory unit 350. The check support data 1072 can be distributed as appropriate and stored in another computer connected via the network.
The CPU 1010 loads the check support program 1071 from the HDD 1070 into the RAM 1060, and executes the check support program 1071 to perform a check support process 1061. In the check support process 1061, the check support data 1072 is loaded as appropriate into an area allocated for the check support process 1061 on the RAM 1060, and various data processes are performed based on the check support data 1072.
The check support program 1071 need not necessarily stored in the HDD 1070. The check support program 1071 can be stored in a recording medium such as a compact disc-read only memory (CD-ROM), and read and executed by the computer 1000. The check support program 1071 can also be stored in another computer (or a server) connected to the computer 1000 via a public line, the Internet, a local area network (LAN), a wide area network (WAN), or the like, and downloaded therefrom to be executed.
While the above embodiment describes, by way of example only, a printed circuit board to be connected to another one via pins of connectors thereon, no restriction on scope is intended thereby. The present art is applicable to any of those having an electronic connect section such as a multi-chip package (MCP), a multi-chip module (MCM), and a system-in-package (SiP). The electronic connect section can be a socket and part of a component used for electrical connection through soldering, an inline or insertion mounting type package, an outline or surface mounting type package, and the like. Examples of the insertion mounting type package include a dual inline package (DIP), a single inline package (SIP), a zigzag inline package (ZIP), and a pin grid array (PGA) package. Examples of the surface mounting type package include a small outline package (SOP), a small outline J-leaded (SOJ) package, a quad flat package (QFP), a quad flat J-leaded (QFJ) package, a ball grid array (BGA) package, a chip size package (CSP), a tape carrier package (TCP), a leadless chip carrier (LLCC) package, a land grid array (LGA) package.
As set forth hereinabove, according to an embodiment of the present art, it is possible to effectively design a printed circuit board to be connected to another printed circuit board via electronic connect sections.
Moreover, it is possible to efficiently check whether a signal is correctly assigned to each electronic terminal of a corresponding electronic connect section.
Although the art has been described with respect to a specific embodiment for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art that fairly fall within the basic teaching herein set forth.

## Claims

1. A computer aided design (CAD) apparatus for designing a circuit diagram, comprising:
an association-data acquiring unit that acquires association data that defines an association between an electronic terminal of a first electronic connect section and an electronic terminal of a second electronic connect section to be connected to the first electronic connect section, and an assignment of a signal to the electronic terminals;
a part-information acquiring unit that acquires information including a symbol of the first electronic connect section, the symbol indicating one of the parts in the circuit diagram;
a layout-condition acquiring unit that acquires a layout condition to lay out the symbol on a circuit diagram; and
a circuit diagram editing unit that lays out, when the symbol has not yet been laid out on the circuit diagram, the symbol on the circuit diagram based on the layout condition, and adds a net name indicating the signal assigned to the electronic terminals to the symbol.

2. The CAD apparatus according to claim 1, wherein, when the symbol has already been laid out on the circuit diagram, the circuit diagram editing unit updates an old net name added to the symbol.

3. The CAD apparatus according to claim 1, wherein, when the symbol includes a plurality of symbols, the circuit diagram editing unit lays out the symbols such that the symbols are distinguishable from other symbols.