Abstract:
A method for designing stacked pattern of PCB utilizing genetic algorithm and the system thereof are disclosed. The method comprises the following steps: First of all, information data of stacked pattern is inputted into operational interface of the software; Next, initial solution sets of stacked pattern are generated; Then, duplications of the initial solution sets of stacked pattern are generated according to a fitness function; Afterward, crossover of the duplications of stacked pattern are performed at random; Then, mutations are executed by a probability at random; Finally, identification is performed to check if the solution approaches the standard of demand and the result of stacked pattern is shown; otherwise, operational step jumps to duplicate step and repeats above steps until satisfying solution is obtained. The most suitable way for package can be arranged out through making especially mathematical calculations by the system efficiently.

Description:
BACKGROUND OF THE INVENTION 
       [0001]    (1) Field of the Invention 
         [0002]    The present invention relates to a method for stacked pattern design of printed circuit board. More particularly, the present invention relates to a method utilizing genetic algorithm for stacked pattern design of printed circuit board. 
         [0003]    (2) Prior Art 
         [0004]    Printed circuit board (PCB) is a circuit board made by using machining and surface treatment to make a layout of routing traces of a circuit design on an insulator. The circuit could be formed by connecting specific electric devices to the PCB. Then, the functions of specific electric devices could be used to process electric signals. The quality of PCB design would affect directly the reliability of electric product, and performance and competitiveness of systemic product. Besides, an accurate layout of PCB is manufactured by several techniques such as printing, photography, etching, and electroplating. Thus, the techniques which manufacture the high density and multilayer PCB are the mainstream of manufacturing industry of PCB. 
         [0005]    However, when the electronic equipments are more complicated and the number of required devices is increased, the density and integration of the routing traces on the PCB would be also increased. Therefore, an important issue is how to efficiently integrate several parameters of PCB design such as types of stacked pattern, thickness of each layer, control of impedance, symmetry and line-width in order to meet the requirements of PCB design. 
         [0006]    In tradition, the way of stacked pattern and thickness of each layer of PCB are calculated manually by engineers who design PCB. However, the traditional stacked pattern method not only spends time but also lacks efficiency. Moreover, when numbers of layer of PCB increase, it&#39;s more difficult to find a suitable way to design stacked pattern of PCB. 
         [0007]    Therefore, it is necessary to find a method for designing stacked pattern of PCB which could save manpower and shorten time of designing. 
       SUMMARY OF THE INVENTION 
       [0008]    An object of the present invention is to provide a method for designing stacked pattern of PCB and system thereof. The method and system thereof could save manpower and shorten time of designing. 
         [0009]    To achieve the object mentioned above, the present invention provides a system for designing stacked pattern of PCB, which comprises: an input unit used to receive information data of stacked pattern; a processing unit connecting to the input unit wherein a stacked pattern of PCB is calculated by the processing unit using genetic algorithm; a storage unit connecting to the processing unit wherein a plurality of current parameters of PCB are stored in the storage unit; and an output unit connecting to the processing unit wherein the result of the stacked pattern of PCB is displayed by the output unit. 
         [0010]    Besides, the present invention further provides a method utilizing genetic algorithm for designing stacked pattern of PCB, and the method has the following steps. First of all, information data of stacked pattern are inputted into operational interface of software; Next, initial solution sets of stacked pattern are generated; Then, duplications of the initial solution sets of stacked pattern are generated according to a fitness function; Afterward, crossover of the duplications of stacked pattern are performed at random; Then, mutations are executed by a probability at random; Finally, identification is performed to check if the solution approaches the standard of demand and the result of stacked pattern is shown; Otherwise, operational step jumps to duplicate step and repeats above steps until satisfying solution is obtained. This method of designing stacked pattern of PCB comprises automatic stack mode and assigned stack mode. Users could quickly get the most suitable method of designing stacked pattern PCB for reference in time after they provide several information data of PCB to this system, such as the type of PCB types of top layer, thickness of copper foil, numbers of signal layer, numbers of power layer, and total thickness and line-width of PCB. 
         [0011]    In the following description of the preferred embodiment, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration a specific embodiment in which the invention may be practiced. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0012]      FIG. 1  is a schematic diagram of system of the present invention. 
           [0013]      FIG. 2  is a flowchart of one embodiment of method of the present invention. 
           [0014]      FIG. 3  is an user interface diagram of automatic stack mode of one embodiment of the present invention. 
           [0015]      FIG. 4  is an user interface diagram of assigned stack mode of one embodiment of the present invention. 
           [0016]      FIG. 5  is a schematic diagram of generation of the initial stacked pattern of one embodiment of the present invention. 
           [0017]      FIG. 6  is a schematic diagram of duplication process of one embodiment of the present invention. 
           [0018]      FIG. 7  is a schematic diagram of crossover process of one embodiment of the present invention. 
           [0019]      FIG. 8  is a schematic diagram of calculation result of one embodiment of the present invention. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0020]      FIG. 1  shows one embodiment of the system of the present invention. The system comprises an input unit  101 , a processing unit  102 , a storage unit  103 , and an output unit  104 . A user could enter several information data to the processing unit  102  for calculating by the input unit  101 . The information data are some parameters of PCB, such as type of PCB, types of top layer, thickness of copper foil, numbers of signal layer, numbers of power layer, and total thickness and line-width of PCB etc. The input unit  101  comprises an input user interface of software comprising programs written by JAVA programmable language. The processing unit  102  includes at least one processor and one memory to load and execute program code. All current parameters of PCB are stored in the storage unit  103  which connects the processing unit  102 . Therefore, the current parameters related to the input parameters in the storage unit  103  are selected to processing unit  102  for calculation after the input parameters information data of the PCB are inputted. After data are calculated by the processing unit  102 , the result of stacked pattern of PCB would be outputted by the output unit  104  and be displayed. Moreover, the result could be outputted and displayed on the same user interface of input interface of software by the output unit  104 . 
         [0021]      FIG. 2  shows a flowchart of one embodiment of the method of designing stacked pattern of PCB of the present invention. An embodiment accompanying  FIG. 37  is used to describe the method in  FIG. 2 . The method comprises the following steps. First of all, in step S 201 , information data of stacked pattern are inputted into user interface of software. Nest, in step S 202 , initial solution sets of stacked pattern are generated. Then, in step S 203 , duplications of the initial solution sets of stacked pattern are generated according to a fitness function. Afterward, in step S 204 , crossover of the duplications of stacked pattern is performed at random. Then, in step S 205 , mutations are executed by a probability at random. Finally, in step S 206 , identification is performed to check if the solution approaches the standard of demand, and in step S 207 , the result of stacked pattern is shown. Otherwise, operational step jumps to duplicate step and repeats above steps until satisfying solution is obtained. Moreover, the processes mentioned above could be executed in a computer-readable medium. 
         [0022]    In step S 201 , information data of stacked pattern are inputted into user interface of software. In this embodiment, the user interfaces of software are shown in  FIG. 3  and  FIG. 4 .  FIG. 3  shows the input user interface of automatic stack mode, wherein the automatic stack mode means that the type of stacked pattern is not needed to be assigned.  FIG. 4  shows the input interface of assigned stack mode. The information data of stacked pattern of PCB include some parameters, such as automatic modifying setting of line-width, PCB manufacturer, material of top layer, type of PCB, type of top layer, thickness of copper foil, numbers of signal layer, numbers of power layer, line-width, and total thickness of stacked pattern etc. These information data are provided to the processing system for calculation by using the user interface of software as shown in  FIG. 3 . The result of stacked pattern is obtained and displayed after calculation. Moreover, the result of stacked pattern is displayed by a form, such as SGPPGS, wherein the symbol S means signal layer, the symbol G means ground layer, and the symbol P means power layer. 
         [0023]    Moreover, the user interface of software could be a graphic user interface, which comprises a display device and a selection device. The display device is used to display the information data of stacked pattern of demanded PCB entered by user and the result of stacked pattern of PCB. The selection device could provide a drop-down menu for user to select. 
         [0024]    Here,  FIG. 3  shows the user interface of the automatic stack mode of this embodiment of the present invention. The automatic modifying setting of line-width could be selected by selecting symbols Yes or No, and the PCB manufacturers also could be selected. The purpose of selection of PCB manufacturers is to choose the current specifications of PCBs of the selected PCB manufacturer from database by this system. Material of top layer also could be selected by selecting symbols of Yes or No in this embodiment, wherein the selected material is polypropylene (PP) if the symbol Yes is selected. Otherwise, if the symbol No is selected, the material of top layer would be epoxy-glass composite (FR4) automatically. Moreover, the type of PCB could be selected by selecting probe card (P/C), load board (L/C), or DUT board (D/B). The type of top layer could be selected by selecting signal layer S, power layer P, or ground layer G. Moreover, user need to enter some parameters, such as thickness of copper foil, numbers of signal layer, numbers of power layer, line-width, and total thickness of stacked pattern. For example, in  FIG. 3 , the value of the thickness of copper foil is 1 oz, the number of signal layer is 2, the number of power layer is 2, the value of line-width is 8 mils (1 mil=0.0254 mm), and the value of total thickness of stacked pattern is 122 mils. After all parameters are entered, the input process is done. 
         [0025]    In step S 202 , initial solution sets of stacked pattern are generated according to the information data. If the thicknesses of PP types of PCB provided by a PCB manufacturer has n types, such as {P 1 , P 2 , . . . , Pn}, and the thicknesses of FR4 also has n types, such as {F 1 , F 2 , . . . , Fn}. The result of stacked pattern would be SGPPGS, which is constructed with several different polypropylene P layers and several different epoxy-glass composite F layers. As the numbers of demand stacked pattern is m, the initial solution sets of stacked pattern generated would be m sets, as shown in  FIG. 5 . The stacked pattern of STACK  1  is P 1 F 3 P 3 F 2 P 1 , and the stacked pattern of STACK  2  is P 4 F 1 P 7 F 2 P 3  and there are m sets of stacked pattern generated by the system selecting several different PP layers and FR4 layers from PCB manufacturer to construct the stacked pattern of PCB. In this step, the generated initial solution sets of stacked pattern are only conformed for the limitation of forms of stacked pattern and PCB manufacturer. Other parameters still are not considered, such as type of PCB, thickness of copper foil, line-width, and total thickness of stacked pattern. 
         [0026]    In step S 203 , the duplications of the initial solution sets of stacked pattern are reproduced according to a fitness function. In this step, a calculating process is used to determine the numbers of offsprings, which need to be eliminated or which need to be reproduced all according to the fitness of species in genetic algorithm. In this embodiment, the fitness function may be f(x)=1/[(thickness of demand minus total thickness of stacked pattern)+1]. If the thickness of demand equals to the thickness of stacked pattern, the highest value of the fitness function would be 1. The fitness functions of m sets of stacked pattern can be calculated to obtain the fitness functions f 1 , f 2 , . . . , fm, and the expected value of the offspring is fi/(f 1 +f 2 + . . . +fm). Therefore, the number of reproduced STACK could be determined by that the expected value of the offspring multiplying by m, as shown in  FIG. 6 . For example, the fitness function of reproduced STACK 1  is calculated by f(1)=1/[thickness of demand minus thickness of STACK 1 ] and expressed by symbol f 1 . The value of the thickness of STACK 1  is got by summing P 1 , F 3 , P 3 , F 2 , and P 1 . Then, the numbers of reproduced STACK 1  is calculated by the expected value of the STACK 1 , f 1 /(f 1 +f 2 + . . . +fm), multiplying by m. In  FIG. 6 , the number of the reproduced STACK 1  is a solution sets. The total numbers of reproduction of STACK still are m, which are calculated by summing all numbers of each STACK, and the expression is shown as [f 1 /(f 1 +f 2 + . . . +fm)]m+[f 2 /(f 1 +f 2 + . . . +fm)]m+ . . . +[fm/(f 1 +f 2 + . . . +fm)]m=m. Then, the reproduction process is finished. However, the numbers of STACK still are the same after the reproduction process, but the rate of matched STACK is raise. Therefore, even if the first offspring doesn&#39;t reach the standard of demand, the second offspring could more approach to the standard of demand. 
         [0027]    In step S 204 , crossover of the duplications of stacked pattern is performed at random. This step is crossover process. The crossover point is found from the duplications of the initial solution sets of stacked pattern at random, and crossover of the duplications of stacked pattern is performed for generating offspring. For example, the selected parent stacked patterns are STACK 1  and STACK 2 , as shown in  FIG. 7 . The stacked pattern of STACK 1  is P 1 F 3 P 3 F 2 P 1  and STACK 2  is P 1 F 3 P 7 F 2 P 3 . If the crossover point is 2 selected at random, the stacked pattern of offspring would be P 1 F 3 P 7 F 2 P 3 . It is kept P 1 F 3  of STACK 1  and P 7 F 2 P 3  of STACK 2  in the stacked pattern of offspring. Even crossover process is performed m times, as long as only one offspring is generated by crossover process each time, the number of stacked pattern of offspring still is m. The offspring of stacked pattern has different characteristics from the parent stacked pattern after crossover process. Therefore, the stacked pattern after crossover process could more match the stacked pattern of demand. 
         [0028]    In step S 205 , mutations are executed by a probability at random and the result of stacked pattern is obtained. This step is mutation process. The purpose of mutation process is to avoid that some useful parameters of PCB would be lost during the reproduction process or crossover process. The lost useful parameters of PCB could be restored by the mutation process. One layer of the stacked pattern could be changed at random by mutation process. For example, the stacked pattern P 2 F 3 P 7 F 2 P 3  is more conformed for the demand stacked pattern than the stacked pattern P 1 F 3 P 7 F 2 P 3 , but the parameter P 2  is lost during the reproduction process or crossover process. If the mutation process is happened, the first layer of stacked pattern P 1 F 3 P 7 F 2 P 3  is changed into P 2 . The stacked pattern P 1 F 3 P 7 F 2 P 3  is mutated to being stacked pattern P 2 F 3 P 7 F 2 P 2 , which is more similar to the demand stacked pattern. However, the mutation process is happened at random, in the other word, the mutation process would happen uncertainly. 
         [0029]    In step S 206 , identification is performed to check if the solution approaches the standard of demand. If the result of stacked pattern is reached the standard of demand, the step S 207  would be happened that the result of stacked pattern is displayed. Otherwise, the result of stacked pattern is not reached the standard of demand, the steps S 203 ˜S 206  would be repeated by system for generating offspring. In this embodiment, the standard of demand is determined by the information data of demand stacked pattern of PCB, such as automatic modifying setting of line-width, material of top layer, type of PCB, type of top layer, thickness of copper foil, numbers of signal layer S, numbers of power layer P, line-width, and total thickness of stacked pattern etc. In  FIG. 3 , the information data is entered as line-width could be modified automatic, material of top layer is selected as PP, type of PCB is selected as probe card, type of top layer is selected as signal layer S, the value of the thickness of copper foil is entered as 1 oz, the number of signal layer is entered as 2, the number of power layer is entered as 2, the value of line-width is entered as 8 mils, and the value of total thickness of stacked pattern is entered as 122 mils. Then, the calculated result of stacked pattern would be displayed on the below area of the same user interface of software. In  FIG. 3 , the total thickness of stacked pattern after calculating is 124.1 mils, which has 4.1% error to 122 mils, the total thickness of demand. However, if the error of the result is smaller than 5% which is the required ranges of standard of demand, the standard of demand is reached and the result would be displayed. Therefore, the percentage of error of the result is 4.1% which still reach the standard of demand, and the result of stacked pattern is displayed on the same interface of software for reference. 
         [0030]    The result of stacked pattern is that the total thickness of stacked pattern is 124.1 mils, difference (thickness of demand minus thickness of stacked pattern) is 4.9 mils, the error is −4.11%, the line-width of stacked pattern is 8 mils, material of top layer is PP, thickness of top layer is 4.8 mils, material of second layer is FR4, thickness of second layer is 47.9 mils, material of third layer is PP, thickness of third layer is 5.5 mils, material of forth layer is FR4, thickness of forth layer is 62.0 mils, material of fifth layer is PP, and thickness of fifth layer is 4.8 mils etc. Moreover, the illustration of result of stacked pattern would be displayed on the up right area of the interface of software for reference. In the area, the correct value of thickness is shown. But, the size of illustration is not the real size of the thickness of stacked pattern. 
         [0031]    The process of the method of the present invention could be described more clearly after combining all steps mentioned above. First of all, user could enter the information data such as type of PCB, material of top layer, thickness of copper coil, numbers of signal layer, numbers of power layer, line-width, and total thickness of stacked pattern to the system. Because the system is stored all parameters of PCB that PCB manufacturers provided, a plurality of arrangement combination are generated by the system selecting the parameters of the database which depend on the information data from the user. These are initial solution sets of stacked pattern in step S 202 . Then, numbers of duplications of the initial solution sets of stacked pattern are determined by this system depending on the fitness of solution sets of stacked pattern, and the required parameter is thickness of stacked pattern in this embodiment. After the reproduction process S 203  finished, crossover of the duplications of stacked pattern is performed at random, wherein the crossover points are also selected at random by system. This is crossover process S 204 . Next, the mutation process S 205  happens at random. This means whether the mutation process happens or not is determined at random by system. The mutation process is that one layer of stacked pattern is changed at random by system. The advantage of the mutation process is that the stacked pattern of PCB after mutation process would be generated which more approaches to the stacked pattern of demand than the original stacked pattern. Even the results of stacked pattern are not reached the standard of demand at first time, but the results of stacked pattern could be the initial populations of the second time. Therefore, the results of stacked pattern generated at second time would more approach to the fitness function than the stacked pattern at first time. This is the advantage of the system using genetic algorithm of the present invention. The step S 206  is that identification is performed to check if the solution approaches the standard of demand. If the result is reached the standard of demand, the final step S 207  that the result of stacked pattern is displayed would be performed for reference, as shown in  FIG. 7 . Otherwise, the results of stacked pattern don&#39;t reach the standard of demand, the results of stacked pattern would be the initial solution sets of stacked pattern in reproduction process S 203 . Then, the processes would be repeated by system for generating the offspring, until the results of stacked pattern reach the standard of demand. 
         [0032]      FIG. 4  shows assigned stack mode of the embodiment of the present invention. This mode is that a specify form of stacked pattern such as SGGS is assigned by user. If a user uses the automatic stack mode to calculate, the result of stacked pattern is probably not SGGS even all the information data are matched. In this condition, the user could choose the assigned stack mode and assign the form of stacked pattern to be SGGS, therefore, the result of stacked pattern must be the form of SGGS and match the information data. 
         [0033]      FIG. 8  shows the calculated result using the stacked pattern design system of the present invention. In  FIG. 8 , the result of stacked pattern is got by entering the information data for calculating, which the information data comprise that the demand number of signal layer is 7, the demand number of power layer is 2, the thickness of stacked pattern is 143 mils, the value of line-width is 8 mils, the type of PCB is load board, the type of top layer is signal layer and thickness of copper foil is 1 oz. It&#39;s easy to see the result of stacked pattern in  FIG. 8  which has seven signal layer and two power layer that match the information data. The total thickness of stacked pattern is 142.9 mils and error is 0.07%. Because the error is smaller than 5%, the result of stacked pattern reaches the standard of demand and outputted to display for reference. 
         [0034]    Thus, the most suitable stacked pattern of PCB could be found quickly by using the system of the present invention. Only the user enters information data of stacked pattern of PCB, the best stacked pattern mode which match the information data would be displayed after a very short time. Using the system to replace manual operation not only saves time and manpower, but also reduces time of designing PCB. Moreover, when the structure of stacked pattern is complicated, using this system to find the suitable stacked pattern of PCB is more efficiency. 
         [0035]    The specific arrangements and methods herein are merely illustrative of the principles of this invention. Numerous modifications in form and detail may be made by those skilled in the art without departing from the true spirit and scope of the invention.