Abstract:
A printed circuit board layout system and a method thereof are provided. The method includes the following steps: obtaining the outline information, the boundary information, and the auxiliary line information, when a command for recording position information of points within each of the boundaries is input; obtaining position information of the points within each of the boundaries; setting corresponding height values as height limit of height restriction areas corresponding to the points within each of the boundaries.

Description:
BACKGROUND 
       [0001]    1. Technical Field 
         [0002]    The present disclosure relates to the printed circuit board (PCB) layout field and, particularly, to a PCB layout system and a method thereof. 
         [0003]    2. Description of Related Art 
         [0004]    When designing PCBs using a software, heights of electronical components should be considered. In order to have the software automatically warn designers when a component they select will not fit on an area of the PCB because of certain design parameters, a plurality of height and clearance limits should be input to the software, which is troublesome and time consuming. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0005]    Many aspects of the embodiments can be better understood with reference to the following drawings. The components in the drawings are not necessarily drawn to scale, the emphasis instead being placed upon clearly illustrating the principles of the PCB layout system and method thereof. Moreover, in the drawings, like reference numerals designate corresponding parts throughout the several views. 
           [0006]      FIG. 1  is a block diagram of a PCB layout system, in accordance with an exemplary embodiment. 
           [0007]      FIG. 2  is a schematic diagram showing an outline and a plurality of boundaries displayed in a user interface of the PCB layout system of  FIG. 1 . 
           [0008]      FIG. 3  is a schematic diagram showing auxiliary lines added to connect the outline and the boundaries. 
           [0009]      FIG. 4  is a schematic diagram showing a plurality of height restriction areas. 
           [0010]      FIG. 5  is a flowchart of a method for generating height restriction areas, in accordance with an exemplary embodiment. 
       
    
    
     DETAILED DESCRIPTION 
       [0011]    The disclosure, including the accompanying drawings, is illustrated by way of example 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. 
         [0012]    Referring to  FIG. 1 , a PCB layout system  100  includes a storage unit  200  and a processing unit  300 . 
         [0013]    The storage unit  200  stores a plurality of PCB layout files and height attribute files. Each PCB layout file is created based on a schematic circuit diagram, similar to the process of converting schematic circuit diagrams to PCB layouts by any conventional PCB layout software. Outline information is also created together with each PCB layout file, defining an outline of the layout diagram for each PCB layout file. The outline information can be recorded in the corresponding PCB layout file. The outline information may include a plurality of coordinates defining a plurality of points joined together to form the outline. 
         [0014]    Each height attribute file is associated with one PCB layout file. Each height attribute file records boundary information and height information. The height information defines height values and positions where the height values are arranged. The boundary information defines a plurality of areas. When the area is associated with one height value, then components to be mounted within the area should not be taller than the associated height value. 
         [0015]    The processing unit  300  includes a layout module  10 , a loading module  20 , a recording module  30 , and a detecting module  40 . 
         [0016]    The layout module  10  is configured to generate PCB layout files according to schematic circuit diagrams and display the files on a user interface  11 , such as a computer monitor, for displaying an outline  12  of a PCB layout diagram (see  FIG. 2 ). 
         [0017]    The loading module  20  is configured to load the height attribute file to obtain the boundary information and height information to display corresponding areas and height values on the corresponding PCB layout diagram. For example, as shown in  FIG. 2 , after the loading module  20  loads the height attribute file, the height values and a plurality of boundaries  123  are displayed within the outline  12 . 
         [0018]    The recording module  30  is configured to record auxiliary line information of auxiliary lines drawn by the designer. The auxiliary line information is stored in the storage unit  200 . As shown in  FIG. 3 , the auxiliary lines  124  are added to combine the boundaries  123  and the outline  12  into a whole. 
         [0019]    The detecting module  40  is configured to detect whether a command for recording position information of the points within each of the boundaries  123  is input. In the embodiment, the position information of the points within each boundary  123  includes a plurality of coordinates defining a height restriction area. 
         [0020]    The processing unit  300  further includes an obtaining module  50 , a first computing module  60 , and a second computing module  70 . 
         [0021]    The obtaining module  50  is configured to obtain the outline information of one PCB layout file, the boundary information of the height attribute file corresponding to the PCB layout file, and the auxiliary line information recorded by the recording module  30 , after an input is detected by the detecting module  40 . 
         [0022]    The first computing module  60  is configured to perform a logical operation according to the outline information, the boundary information and the auxiliary line information obtained by the obtaining module  50  to obtain the position information of the points within each of the boundaries  123 . To be specific, the first computing module  60  performs a logical NAND according to the outline information, the boundary information and the auxiliary line information, and the logical NAND is similar to the process of logical NAND in computer science. 
         [0023]    The second computing module  70  is configured to determine whether one height limit is associated with one boundary  123 . In detail, the second computing module  70  performs intersection operation according to the position information of the points within one boundary  123  and the positions of all the height information of the height attribute file corresponding to the PCB layout file to determine whether one height limit is associated with the boundary  123 . If the intersection is null, the second computing module  70  determines the height limit in the boundary  123  is 0 and will not be displayed in the boundary  123 , and further indicates that no component should be placed in that area. 
         [0024]    If one height limit is associated with one boundary  123 , the layout module  10  sets the height value as the height limit of the points within the boundary  123  and adds sectional lines in the boundary  123 , thus a height restriction area  128  (see  FIG. 4 ) having one height limit is formed. Therefore, if a component, the height of which is greater than the height of the height restriction area  128 , is placed in the height restriction area  128 , the layout module  10  outputs a warning that the component will not fit and that another component should be selected. If no height is associated with one boundary  123 , the layout module  10  sets a default height value, for example 0 mil, as a height limit of the height restriction area  128  corresponding to the boundary  123  and adds sectional lines in the boundary  123 , thus a height restriction area  128  having the default height value is formed. It should be noted that in the embodiment only the displayed heights greater than 0 are displayed. 
         [0025]    Referring to  FIG. 5 , a flowchart of a method for generating height restriction areas  128  is illustrated. 
         [0026]    In step S 500 , the loading module  20  loads the corresponding height attribute file into one opened PCB layout file in response to the designer input. 
         [0027]    In step S 502 , the recording module  30  records auxiliary line information of auxiliary lines  124  drawn by the designer. 
         [0028]    In step S 504 , the detecting module  40  detects whether a command for recording position information of the points within each of the boundaries  123  is input. The process goes to step S 505  when yes, and the process repeats the step S 504  when no. 
         [0029]    In step S 506 , the obtaining module  50  obtains the outline information of the opened PCB layout file, the boundary information of the height attribute file corresponding to the opened PCB layout file, and the auxiliary line information recorded by the recording module  30 . 
         [0030]    In step S 508 , the first computing module  60  performs a logical operation according to the outline information, the boundary information and the auxiliary line information obtained by the obtaining module  50  to obtain the position information of the points within each of the boundaries  123 . 
         [0031]    In step S 510 , the second computing module  70  performs intersection operation according to the position information of the points within one boundary  123  and the position information of all the height information of the height attribute file corresponding to the opened PCB layout file to determine whether one height limit is associated with one boundary  123 . If the intersection is null, the second computing module  70  determines the height limit in the boundary  123  is 0 and will not be displayed in the boundary  123 ; otherwise, the height limit is associated with one boundary  123 . 
         [0032]    In step S 512 , if one height limit is associated with one boundary  123 , the layout module  10  sets the height value as a height limit of the height restriction area  128  corresponding to the boundary  123  and adds sectional lines in the boundary  123 , thus a height restriction area  128  having one height limit is formed. 
         [0033]    In step S 514 , If no height is associated with one boundary, the layout module  10  sets a default value, for example 0 mil, as a height limit of the height restriction area  128  corresponding to the boundary  123  and adds sectional lines in the boundary  123 , thus a height restriction area  128  having the default height value is formed. 
         [0034]    In step S 516 , the layout module  10  displays each of the height restriction areas  128 . 
         [0035]    By the application of the PCB layout system  100 , when the PCB layout system  100  detects that a command for recording position information of the points within each of the boundaries  123  is input, the PCB layout system  100  automatically obtains the outline information of one opened PCB layout file, the boundary information of the height attribute file corresponding to the opened PCB layout file, and the recorded auxiliary line information. The PCB layout system  100  forms several height restriction areas  128  according to the outline information, the boundary information, and the auxiliary line information, and sets height limits of the height restriction areas  128 . Thereby, the designer does not need to draw different height restriction areas for each new PCB that conserves time. 
         [0036]    It is to be understood, however, that even though numerous characteristics and advantages of the embodiments have been set forth in the foregoing description, together with details of the structure and function of the embodiments, the disclosure is illustrative only, and changes may be made in detail, especially in matters of shape, size, and arrangement of parts within the principles of the invention to the full extent indicated by the broad general meaning of the terms in which the appended claims are expressed.