Design characterization is probably the easiest design step even though it may require a significant time. This is mainly because a well defined method applies. Characterization requires the full set of simulation using the test cells to be done for all the possible combinations of external variables. Since external variables are independent from each other and since they can vary continuously, the number of combinations is infinite. So, true characterization is an impossible task. Fortunately, some assumptions that proved to be reasonably true make this task achievable. Variables that can influence the performances of a circuit are mainly of two types:
There are mainly two environment conditions:
Supply voltage can be a vector variable since there might be several supplies for a cell. Then, one supply might be maximal while another one is minimal.
However, since most cells characteristics exhibit a monotonic or sometimes quadratic behavior with environment variables, characterization can be simplified by considering only 3 possible values for the environment variables:
Then, the number of combinations is “only” 3 to the power number of variables. For only temperature and one supply to be considered, the full set of simulation should be done 9 times.
The different components in a process are manufactured step by step along the process. As a result, characteristics of different components are partly independent from each other. As an example, if two different resistor types are used, one for low values, one for high values, sheet resistance of each type resulting from a different process step is independent from the other one. One type might be at maximum while the other one might be at minimum. This explains why all independent component types should be considered independent during characterization. Again, considering only minimal, typical and maximal values can be considered for process parameters. Then, the number of combinations is 3 to the power number of variables. Usually, there are 5 to 7 key parameters in a process, so this results “only” in 243 to 2187 possibilities.
Worst case analysis is performed by combining the process cases number with the environment cases. With the simple example considered above, combining the environment conditions and the process cases results in a respectable 2187 to 19683 number of possible cases. And this has to be done for all specification items. For a cell with only 10 specified items, the number of simulations to be done is 21870 to 196830… Unfortunately, the worst case being potentially different for each item, it is a large amount of results to be scanned to find the worst values.
This is what the so called “corner analysis” available in most tools does. Even though it is fully automated, the simulation time and the result files size can be very large for a significant cell. This is basically why corner analysis is only suitable for small cells.
For larger cells, an assumption can be made:The sign of the partial derivatives of a given circuit characteristics with respect to a particular variable does not depend on the other variables.
In other words if a particular characteristics value is plotted versus a particular parameter, the curve is monotonic. The average slope can be positive or negative. When the other variables are changed and the same characteristics is plotted again, the curves slopes can have different values but the sign does not change. This result has proved to be true most of the time and when it is not true, the slopes are very low. This property can be used to define another characterization method:
The number of characterization is only 3 times the overall number of parameters.
Within the validity of the assumptions this method is based on, it brings absolute worst values that should occur very rarely.
Evaluating the probability of occurrence requires considering separately the random process parameters and the deterministic environment variables.
For any process variable, maximal and minimal values for each cell characteristics can be considered as +3 sigma and -3 sigma values, so sigma on each performance value for each variable can be evaluated.
Then, overall sigma for each cell specified item can be computed as the square root of the sum of squares of all individual sigma values.
It is then possible to find the limits for process dependency at any number of sigma for each cell characteristics.
Then, influence of environment variables should be considered:
A simple method is to assume that performance variation with temperature or supply voltage does not depend on process case. Then, simulating environment variations in a typical process case gives voltage and temperature slopes. Combining these slopes with process worst cases gives a good estimate of the worst values for each cell performance.
A more accurate method is simulating variations with environment variables in the identified worst process cases. This shows how slopes depend on process and can then be used to calculate more accurate worst values.
It must be stated that so far, only structural sensitivities have been considered. Influence of mismatch has not been taken into account. This requires another approach: Monte-Carlo analysis.
Monte-Carlo analysis is another approach that can be used for characterizing a cell if data are available. Usually parameters have process and mismatch variations. If only process variations are considered, results are close to the corner analysis results or monotonic behavior assumption. If mismatch is taken into account, this method brings valuable results that no other method can bring.
This method consists in running a reasonable number of simulations with statistical parameters, for process, mismatch or both. This analysis provides mean and standard deviation for each simulated cell performance.
Influence of environment variables must be considered in a similar way as for the monotonic behavior assumption method, through voltage and temperature slopes.