The present invention relates to a parameter adjusting device, especially, a parameter adjusting device that can adjust a large number of parameters in a model with a large number of parameters such as a physical model of a semiconductor element such as a transistor and the like, within a short time.
For example, in the case of LSI manufacturing, first, samples of several transistors (MOSFET) with a different shape of a channel length L, a channel width W, and so on of a gate of the transistor (MOSFET) are tested in the manufacturing line. Next, from the measurement result of an electric property of a tested piece, a plurality of parameters of the physical model of the transistor are adjusted so as to conform with the transistor property which is manufactured in the relevant manufacturing line with a high degree of accuracy. Simulation of various types of LSI (transistor) which are manufactured in the relevant manufacturing line by the heretofore known circuit simulator such as SPICE was carried out by using the physical model of the transistor.
The physical model of the transistor represents relationships such as Vg (gate voltage), Vd (drain voltage), and Id (drain current) with equations including variables such as the channel length L, the channel width W, and so on of the gate, and a plurality of parameters, and a large number of models have been proposed. In the above simulations, for example, a typical and well-known BSIM (Berkeley Short Channel IGFET Model) has been used.
The BSIM is formed of a large number of equations, and the number of parameters to be adjusted is from several tens to more than several hundreds. Incidentally, because details of the physical models of transistors and conventional parameter adjusting methods are described, for example, in the following document, their detailed explanations are omitted.
Non-patent document 1: Toru Toyabe, ed., “MOSFET Modeling and BSIM3 Users Guide”, Feb. 28, 2002, published by Maruzen
In the following Patent Document 1 previously filed by the present inventors, a parameter adjusting device which automatically performs adjusting processing of a plurality of parameters of the physical models of the transistors using genetic algorithms has been proposed.
Patent document 1: Japanese Patent Publication (TOKKAI) No. 2005-038216
In the above-mentioned conventional parameter adjusting method, an initial individual population or child individuals generated parameters randomly within a predetermined range. In the case that there are a large number of initial individuals or child individuals to be generated, even if the parameters were generated randomly, distribution of the parameters becomes nearly uniform, and does not become disproportionate. However, in a high-dimensional applicable field wherein the number of parameters becomes between several tens and several hundreds such as the physical model of the transistor, when the number of individuals increases, a large amount of time is required until required accuracy is reached, so that evaluation cannot be performed.
The number of populations being realistically able to perform the evaluation by a current computer is, for example, approximately between a few hundreds and a few thousands. When the parameters of individuals of the above-mentioned range of amount were randomly generated within a predetermined range, distribution of the parameters became disproportionate, and even if the evaluation of a genetic algorithm was repeated, accuracy (evaluated value of the individuals) was hard to be improved.
The present invention is made in order to solve the above-mentioned problems, and provides a parameter adjusting device being able to adjust a large number of parameters in a physical model of a semiconductor element such as a transistor and so on within a short time.
A parameter adjusting device of the invention is mainly characterized in that it defines a chromosome wherein a respective plurality of parameters are genes, and includes a parameter adjusting means which optimizes the parameters by using a genetic algorithm wherein a hyper uniform distribution method is adopted. Also, in the above-mentioned parameter adjusting device, the parameter adjusting means is characterized in that it adopts a Latin hyper square method as the hyper uniform distribution method. Also, in the parameter adjusting device, the parameter adjusting means is characterized in that it includes an initial population generating means of the genetic algorithm which adopts the hyper uniform distribution method.
Also, in the above-mentioned parameter adjusting device, the parameter adjusting means is characterized in that it includes a crossover process means of the genetic algorithm adopting the hyper uniform distribution method. Also, in the parameter adjusting device, the crossover process means is characterized in that it includes a generating range determination means obtaining the center of gravity in a vector space of a parent chromosome group, in crossover processing of the genetic algorithm, and determining a generating range of a child chromosome group inside a hyperpolyhedron in the vector space which is determined by values of the center of gravity and the parent chromosome group; and a parameter generating means adopting the hyper uniform distribution method within the generating range, and determining the parameter value which is the gene.
Also, in the parameter adjusting device, the hyper uniform distribution method is characterized in that it divides at least one dimensional axis in a log scale at even intervals. Also, in the parameter adjusting device, the hyper uniform distribution method is characterized in that it divides at least one dimensional axis at uneven intervals. Also, in the parameter adjusting device, the parameter is a parameter of a physical model of a semiconductor element, and based on property measured data of the tested semiconductor element, an evaluated value computation means which computes the evaluated value of each individual is provided.
The parameter adjusting device of the present invention with characteristics described above has an effect that it becomes possible to determine a high-accuracy parameter group within a short time by applying the genetic algorithm to parameter adjusting of a model with a large number of parameters such as the physical model of the transistor, and further using the hyper uniform distribution method such as the Latin hyper square method.
a), 7(b), 7(c) are explanatory drawings showing examples of parameter generation by a Latin hyper square method.
G Center of gravity
P0-P2 Parent individuals
Hereinafter, as an applied embodiment of the parameter adjusting device of the present invention, an example adjusting parameters of a physical model of a transistor will be disclosed. However, the parameter adjusting device of the present invention can be applied to the physical model of the heretofore known arbitrary semiconductor element, and other heretofore known arbitrary model such as a fluid flow model or a transmission channel model and so on.
The parameter adjusting device of the invention is realized by creating a program performing processing shown by a flowchart described hereinafter, and installing the above-mentioned program in the heretofore known arbitrary computer system which can perform the program. Incidentally, since the hardware of the computer system is heretofore known, detailed explanations are omitted. Hereinafter, an embodiment 1 will be explained.
In S11, an electric property of the tested transistor is measured. Specifically, with respect to an IdVd property (Vb fixation), IdVd property (Vg fixation), and IdVg property (Vd fixation), a respective plurality of sample values (discrete data) are measured for a plurality of times by changing fixed values. Incidentally, as other electric properties, a Gm property (transconductance), Gds property (channel conductance) may be added as the discrete data. In S12, the parameter adjusting processing of a physical model of a transistor is performed by a method described hereinafter using the parameter adjusting device of the present invention, in such a way as to match a property of the transistor which is manufactured in the relevant manufacturing line with a high degree of accuracy.
In S13, operation simulation of a transistor circuit with an arbitrary channel length and channel width which is manufactured in the relevant manufacturing line using the heretofore known circuit simulation program such as SPICE, is performed using the physical model wherein the parameters are adjusted. By using the parameter adjusting device of the invention, parameters of the physical model with a high degree of accuracy can be obtained within a short time, and simulation with a high degree of accuracy can be performed.
In the BSIM, although there are a large number of parameters as previously noted, depending on the contents to be simulated, there are parameters which may be fixed to representative values without adjusting, or ignored. Accordingly, the number n of parameters to be adjusted differs according to the purpose of the simulation, and although there may be 100 or more, it also may be, for example, 10. Therefore, the parameters such as the number of chromosomes (individuals) N or the number of generated children m in the genetic algorithm are changed depending on the number of the parameters n to be adjusted. Accordingly, the processing becomes faster as the number n becomes smaller. In the embodiment, for example, the number of individuals is set to be N=n×15.
Also, in the BSIM, because a recommended range of initial parameter values is established for each parameter, an initial value is determined within the recommended range of initial parameter values for each parameter as the value of the genes by a method as described hereinafter. Incidentally, in the case wherein the recommended range of the initial parameter values is broad, values of the genes corresponding to the parameters may be generated in a log scale.
In S22, chromosomes to become parent individuals are selected from the individual population generated in S21. The number of parent individuals p selected in the processing is less than or equal to N. Child individuals of the number m are generated from the selected parent individuals by the after-mentioned crossover processing. In S23, the evaluation values of the child individuals generated in S22 are computed (the details are described later).
In S24, the parent individuals selected in S22 and p in the order of better evaluation from the generated child individuals are returned to the individual parent population, and the rest are discarded. By this processing, the chromosomes having low evaluation values are eliminated. In addition, a method also may be adopted, in which a portion of the parent individuals is returned as-is to the parent population without being subject to elimination, and a number in the amount of “remaining parent individuals” and the remaining parent individuals in the order of better evaluation from the child individuals are returned.
In S25, it is determined whether an algorithm switching condition is satisfied. If the condition is not satisfied, it returns to S22, but if the condition is satisfied, it moves to S26. As the condition, whether the number of computations exceeds a predetermined value, or a rate of reduction of the evaluation value becomes less a predetermined value can be used. In S26, adjustment of the parameters is performed by, for example, the well-known Powell method as a local search method or other well-known local search method. By switching the search method in this manner, the time of parameter adjustment is shortened.
In S30 in
In S31, random permutations (0, . . . , N−1) of the number n are generated. These random permutations are performed wherein integer numbers from 0 to N−1 are randomly lined, and although a large number of permutation patterns are possible, among those patterns, an arbitrary pattern of the number n of the random permutations is generated. Incidentally, in the general Latin hyper square method, the same pattern of the random permutations is eliminated. However, in this invention, the same pattern of the random permutations is allowed. In the case of the examples in
In S32, N pairs of coordinate values are generated by combining values with the same position of the generated n random permutations. More specifically, according to the above-mentioned examples, by combining the values with the same position of two random permutations (1, 3, 2, 0) and (2, 0, 3,1), N=4 pairs (1, 2) (3, 0) (2, 3) (0, 1) of hypercube (square) coordinate values can be generated. In
In S33, inside the hypercube corresponding to the generated coordinate values, the individual (chromosome) is generated by randomly generating each parameter. In
Next, a crossover processing in the present invention will be explained.
In S40, p parent individuals are randomly selected from the individual population. The value of p is desirably defined as p=n+1 when there are n parameters to be adjusted. In S41, the center of gravity G of the p parent individuals selected in S40 is computed. That is, an average value is sought for each parameter.
In S42, in (p−1) dimensional spaces whose domain are respectively [0, 1], respective coordinate axes are divided into the number m, and m to the power of (p−1) of hypercubes are generated. In S43, the number (p−1) of random permutations (0, . . . , m−1) are generated. In S44, m pairs of the coordinate values are generated by combining values with the same position of the random permutations.
In S45, a vector ui (i=0, . . . , m−1) ∈ [0,1]P−1 which is respectively generated inside the hypercube corresponding to the generated coordinate values is defined. In S46, the values randomly generated inside the hypercube is assigned to each element uki ∈ [0,1] (k=0, . . . , p−2) of the vector ui (i=0, . . . , m−1).
In S47, the value of a variable i is set 0, and in S48, a child individual Ci is generated by the following numeral formula from the center of gravity G and the vector ui which is distributed super-equally.
Here, the reference alphabet p represents the number of the selected parent individuals, the reference alphabet Ci represents a vector showing the chromosomes of the child individuals which will be generated, and the reference alphabet Pk represents a vector showing the chromosomes of the selected parent individuals. The reference alphabet xk is computed from the vector of each parent individual, and represents a vector which determines a generating range of the genes of the child individual. The reference alphabet Cki represents a vector which is generated in sequence by overlapping vector components based on the above-mentioned uki and xk. Incidentally, regarding the parameters wherein the initial value of the genes was generated in the log scale, the computation is performed in the log scale even in the case of generating the child individual.
In S49, 1 is added to the variable i, and in S50, whether or not the variable i is larger than m is determined. If a determined result is negative, the parameters return to the S48, and if the result is positive, the processing is completed. Due to the processing, the child individuals of the number m are generated. The number m is desirable to be approximately 10×n.
Next, the computation of the evaluated value computed in S23 will be explained. The evaluated value of the chromosomes is computed based on a prepared discrete data group and an estimated data group which is computed by a transistor electric property model function wherein the genes of the chromosomes are the model parameters. The evaluated value is a value showing how close to an ideal value with the genes of the chromosomes as a model parameter.
There is a portion showing a substantial change of values in the discrete data group, when the figure is viewed with the log scale, although the values look like approximately 0 when the figure is viewed with a linear scale. The above-mentioned quality is called a sub-threshold property. Since the absolute value of the above-mentioned portion is small compared to the other part, the absolute value of an error is also small, so that it is difficult to optimize this portion by using only a data group of a usual linear scale.
Also, in order to adjust this portion, if only a data group of the log scale is prepared and optimized, the sub-threshold property can be optimized; however, an error in the other part except for the above-mentioned portion becomes large, and a gap is developed.
In the invention, in view of the circumstances in an MOS transistor electric property model parameter wherein parameters which estimate a subthreshold property and parameters which estimate the other part except for the above-mentioned portion are independent from each other, a data group of the log scale and a data group of the linear scale are read simultaneously by the following scaling processing, and all the properties are adjusted simultaneously.
Incidentally, in the case wherein the scaling differs between the discrete data groups, if error of mean square is taken, an effect on the evaluated value becomes small in the data group with a small scale. Therefore, the accuracy of the adjustment may be deteriorated even if the above-mentioned scaling processing is performed. Consequently, in the present invention, the discrete data among each data group is normalized, and the adjustment accuracy can be improved by unifying the scale.
In S63, logarithm data wherein a discrete data group and an estimated data group corresponding to the discrete data group are converted into a log scale, is generated. Incidentally, in general, Id-Vd properties are estimated by only linear, and Id-Vg properties are estimated by both log and linear. Also, as the other electric properties, the Gm property (transconductance), Gds property (channel conductance) may be added as the discrete data. In this case, generally, the Gm property is estimated by the only linear scale, and the Gds property is estimated by the only log scale. As a matter of course, both properties may be estimated by both log and linear scales. In S64, all of the data groups are normalized. More specifically, first, the maximum value fmax and minimum value fmin of the data groups are obtained. Next, all discrete data f(i) of the data groups is converted into normalization data g(i) by the following numerical formula 2.
g(i)=(f(i)−fmin)/(fmax−fmin) [Numeral 2]
Here, g(i) represents the normalization data; f(i) represents the discrete data; fmax represents the maximum value of the data groups; and fmin represents the minimum value of the data groups. Due to the above-mentioned calculation, the discrete data can be normalized within the range of [0, 1].
In S65, evaluated value A=Σ (square error between normalization discrete data and normalization estimated data) of only the data group of the linear scale is computed. In S66, the evaluated value B=Σ [square error between log (normalization discrete data) and log (normalization estimated data)] of only the data group of the log scale is computed.
In S67, A+B is the estimated value. Incidentally, although the square error is used for calculating the estimated value, an error rate may be obtained instead of the square error. In S68, whether or not evaluated. values of all the individuals are completed is determined. If a determined result is negative, the parameters move into the S60, and if the result is positive, the processing is completed.
By the above-mentioned processing, high-accuracy parameter adjustment can be performed within a short time. By adopting the relevant parameters to the physical model, a high-accuracy circuit simulation can be performed without a test, so that efficiency in manufacturing a semiconductor element improves.
Embodiment 1 is explained in the above; however, the following transformational example can be used as the parameter adjusting device of the present invention. In the embodiment, although the Latin hyper square method is cited as an example of the hyper uniform distribution, other hyper uniform distribution such as the heretofore known LSS (Latin Supercube Sampling) and so on may be adopted as the hyper uniform distribution.
Although the BSIM is taken as an example of the physical model, in the present invention, the physical model of the heretofore known arbitrary semiconductor element besides the BSIM can be used. Also, this invention can be applicable to the parameter adjustment of the heretofore known arbitrary physical models and additionally various types of models besides the physical models.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/JP2006/307053 | 4/3/2006 | WO | 00 | 10/2/2007 |