Integrated circuit worst performance processing method
By using a modified normal distribution CDF and building a global local linear model, combining importance sampling and local search, the computational cost and accuracy control problems in the worst performance processing of integrated circuits are solved, and efficient worst performance point estimation and circuit performance prediction are achieved.
Patent Information
- Application Number
- CN202510198642.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-24
- Publication Date
- 2025-03-21
- Estimated Expiration
- 2045-02-24
AI Technical Summary
When the prior art deals with the worst performance of integrated circuits, it is difficult to take into account both computational cost and accuracy control, especially in the high-dimensional process deviation space. Traditional methods are difficult to effectively capture the nonlinear relationship between circuit performance and failure efficiency, resulting in large estimation errors.
The corrected normal distribution cumulative distribution function (CDF) is used to describe the nonlinear relationship between failure efficiency and circuit performance, and a global linear model and local linear model are constructed as constraints. Through the idea of importance sampling and local search, the sampling efficiency and model fitting effect are improved.
It effectively balances the estimation accuracy and computing efficiency, improves the estimation accuracy of the worst performance points and the reliability of circuit performance prediction, and reduces the calculation cost and iterations.
Smart Images

Figure CN119670661A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of integrated circuits, and in particular to a method for processing the worst performance of integrated circuits. Background Art
[0002] As integrated circuit process nodes continue to enter the nanometer scale, the impact of manufacturing process deviations on circuit performance and reliability is becoming increasingly significant. Process deviation refers to the changes and inconsistencies in component parameters caused by factors such as material properties, equipment accuracy, and environmental conditions in large-scale production. This deviation may cause a circuit design that performs well under laboratory conditions to fail to achieve the expected results in actual applications, affecting the quality and competitiveness of the product. In order to meet this challenge, the worst-case analysis technology has been introduced in integrated circuit design. By predicting the potential impact of process deviations on circuit functions, circuits that are more robust to process changes can be designed to ensure that the product maintains consistent high performance in mass production and long-term use.
[0003] Traditional worst-case analysis mainly uses the Monte Carlo method to search for the worst performance point of the circuit design through a large amount of sampling and simulation. However, with the continuous increase in the scale and complexity of integrated circuits, this method faces the problem of a sharp increase in computational cost and time cost. In order to improve efficiency, researchers have proposed new methods such as importance sampling and probability distribution analytical modeling, but when dealing with high-dimensional process deviation space, these technologies still find it difficult to balance computational cost and precision control. In addition, although the response surface model can speed up the analysis in some cases, simple linear or low-order models often cannot capture the key performance changes in nanoscale circuits, and the use of high-order nonlinear models is prone to falling into local optimality during the solution process.
[0004] For example, the related patent CN119203917B discloses a method and device for processing the worst performance of integrated circuits, electronic equipment, and medium, which are applied to the field of integrated circuit design and reliability assessment technology. By further narrowing the sampling range based on the importance sampling principle near the initially obtained failure boundary, and determining the circuit performance prediction value of the circuit performance normally distributed at the 6-sigma position, and then combining the prediction value with the linear model of the circuit performance to form an optimization problem, the process deviation vector close to the actual situation is solved, and finally the actual circuit performance value at the 6-sigma position is obtained through circuit simulation based on the process deviation vector close to the actual situation, and the boundary value of the circuit performance space is quickly and accurately solved to the worst performance close to the actual situation at limited simulation points. However, when determining the circuit performance prediction value at the 6-sigma position, this scheme only considers the situation where the circuit performance obeys the normal distribution. However, in actual integrated circuits, there is often a complex nonlinear relationship between circuit performance and failure rate, especially when approaching the failure boundary, this nonlinearity is more significant. Summary of the invention
[0005] In order to solve the problem in the prior art that the nonlinear relationship between failure rate and circuit performance is ignored, resulting in large estimation errors, the present application provides a method for processing the worst performance of integrated circuits, which uses a modified normal distribution cumulative distribution function (CDF) to describe the nonlinearity between failure rate and circuit performance, and constructs a global linear model and a local linear model as constraints, respectively, effectively balancing the estimation accuracy and computational efficiency.
[0006] The purpose of this application is achieved through the following technical solutions.
[0007] The present application provides a method for processing the worst performance of an integrated circuit, comprising: S1, obtaining process parameters and device parameters of the integrated circuit, and constructing a data set D; S2, calculating each sampling point in the data set D Weight , and calculate the sampling points Circuit performance simulation results The corresponding failure rate ; S3, according to and , construct the circuit performance vector y and the failure rate vector ρ, sort the elements in y from small to large, and obtain the sorted circuit performance vector .
[0008] In the actual circuit design and manufacturing process, the distribution of circuit performance values may be uneven due to process fluctuations and parameter changes. Some performance values may appear more concentrated, while other performance values are relatively sparse. If the unsorted circuit performance vector y is used directly for subsequent modeling and prediction, it may cause the model to have low accuracy in the sparse performance value area and too high accuracy in the dense performance value area, thus affecting the overall modeling effect. In addition, in circuit performance analysis, we usually pay more attention to extreme cases that are close to or exceed the performance threshold, because these cases may cause circuit failure or performance degradation. If the circuit performance vector is not sorted, extreme values may be scattered in different positions of the vector, making it difficult to quickly identify and locate. After sorting, the distribution of circuit performance values becomes more uniform, and the performance values of both sparse and dense areas are reasonably represented. This helps subsequent modeling and prediction to maintain high accuracy over the entire performance range.
[0009] S4, determine the failure boundary according to the optimal worst performance point x* obtained in the previous iteration, resample within the range determined by the failure boundary, and obtain the sampling matrix X.
[0010] S5, logarithmically transform the target variable in X to obtain the transformed sampling matrix ; Perform logarithmic transformation on the target variable in the sampling matrix X to obtain the transformed sampling matrix . The introduction of this nonlinear transformation overcomes the limitations of directly using linear models in traditional methods. In the actual integrated circuit design and manufacturing process, there is often a complex nonlinear relationship between circuit performance and key parameters. It is difficult for linear models to accurately characterize this relationship, resulting in a large deviation in the worst performance point estimate. By performing a nonlinear transformation on the target variable, the present application can convert the nonlinear relationship into an approximately linear relationship, making subsequent linear modeling more accurate and effective.
[0011] S6, according to and ρ, calculated using the Gaussian function Failure rate The corresponding circuit performance prediction value ; S7, with As the independent variable and y as the dependent variable, a local linear model is constructed using the weighted least squares regression method in the local area of the failure boundary. ; S8, with As the independent variable, y as the dependent variable, a global linear model is constructed using the cross-validated orthogonal basis pursuit algorithm. ; S9, circuit performance prediction value As the target, when the worst performance point x is located in the local area of the failure boundary, use is a constraint; otherwise, use As the constraint condition, the optimal worst performance point x* is solved; local linear models of the local area of the failure boundary are constructed respectively. and a global linear model for the global region In the worst performance processing of integrated circuits, it is necessary to search for the worst performance point in the high-dimensional parameter space and estimate its corresponding failure rate and circuit performance prediction value.
[0012] The existing technology usually adopts global sampling methods such as Monte Carlo method or grid search, but these methods have low computational efficiency in high-dimensional space and are difficult to meet the needs of practical applications. This application introduces the ideas of importance sampling and local search when sampling data and determining failure boundaries. By constructing a weight vector that considers global distribution and local characteristics, important samples near the failure boundary are highlighted to improve sampling efficiency. When determining the failure boundary, the local search area is adaptively adjusted according to the relationship between the worst performance point and the preset threshold to avoid blind search in the entire parameter space and accelerate convergence. In practical applications, the combination of importance sampling and local search can greatly reduce the required sample size and number of calculations.
[0013] S10, use x* to update the data set D; add the obtained optimal worst performance point x* to the data set D, and repeat the iteration in step S11 until the preset convergence condition is met. In the traditional worst performance point search method, each iteration needs to regenerate a large number of random sample points, resulting in high computational cost and low iteration efficiency. By adding the obtained worst performance point to the data set, the present application can continuously enrich and optimize the data set during the iteration process, so that subsequent iterations can be based on a higher quality and more informative data set. This dynamic update mechanism of the data set effectively overcomes the problem of low iteration efficiency of the traditional method and accelerates the convergence speed of the algorithm.
[0014] S11, repeat the above iterations until the preset convergence condition is met.
[0015] Furthermore, the process parameters include process angle, channel length and gate oxide thickness; the device parameters include threshold voltage, saturation current and subthreshold slope;
[0016] Furthermore, the failure rate Indicates the circuit performance simulation results the probability of exceeding a preset performance threshold;
[0017] Furthermore, the weight The calculation formula is: ,in, Indicates sampling point The probability density under the original distribution is, Indicates sampling point The probability density of the distribution near the failure boundary, n is the total number of sampling points in the data set D. Weight The calculation takes into account the sampling point The ratio of the probability density under the original distribution and the distribution near the failure boundary, and the simulation results This weight calculation method can take into account both global distribution and local characteristics, and highlight important samples near the failure boundary.
[0018] Furthermore, the failure rate The calculation formula is: ,in, represents the preset performance threshold, CDF represents the cumulative distribution function of the modified normal distribution, and Respectively represent sampling points Circuit performance simulation results The mean and standard deviation of and Two new parameters are introduced to describe Non-normal characteristics of the distribution. represents the skewness parameter, which indicates The degree of asymmetry of the distribution. hour, The distribution shows a right-skewed characteristic; when hour, The distribution shows a left-skewed characteristic; when hour, The distribution degenerates to the standard normal distribution. represents the kurtosis parameter, which means The tail weight or extreme value characteristics of a distribution. hour, The distribution shows a heavy-tailed characteristic, and the probability of extreme value events is high; when hour, The distribution shows a light-tail characteristic, and the probability of extreme events occurring is low; hour, The distribution degenerates to the standard normal distribution.
[0019] Sampling point in the prior art Circuit performance simulation results However, in reality, due to process fluctuations, device parameter changes, and the complexity of circuit structure, The distribution of the failure rate may deviate from the normal distribution and show non-normal characteristics such as skewness, peaks or heavy tails. In this case, using the cumulative distribution function of the normal distribution to calculate the failure rate may lead to estimation errors.
[0020] Furthermore, the calculation formula of the cumulative distribution function CDF of the modified normal distribution is: , where Φ represents the cumulative distribution function of the standard normal distribution.
[0021] Skewness parameter and kurtosis parameter The sampling points can be Perform multiple simulations and use methods such as moment estimation or maximum likelihood estimation to estimate the sample statistics based on the simulation results. The estimation steps are as follows: Perform n circuit performance simulations and obtain n simulation results . Calculate the sample mean of the simulation results , sample standard deviation , sample skewness and sample kurtosis . Use the sample statistic as an estimate of the parameter of the modified normal distribution, namely , , , By introducing the skewness parameter and kurtosis parameter , the modified normal distribution can better describe The non-normal characteristics of the distribution improve the accuracy of failure rate estimation.
[0022] Further, S5, logarithmically transforms the target variable in X to obtain the transformed sampling matrix ,include: ,in, represents the jth feature of the i-th sample in the sampling matrix X, n is the number of samples, and m is the number of features. The logarithmic transformation can transform the distribution of features from nonlinear to approximately linear, which helps to improve the fitting effect and prediction accuracy of the model. By performing a logarithmic transformation on the sampling matrix, the feature distribution is transformed from nonlinear to approximately linear, and an orthogonal matching pursuit algorithm is used to construct a sparse global linear model. This method can effectively reduce the complexity of global modeling and improve the generalization ability of the model. Sparse representation can not only reduce the risk of overfitting, but also has better interpretability.
[0023] Further, S6, according to and ρ, calculated using the Gaussian function Failure rate The corresponding circuit performance prediction value ,include: , ;in, and They represent the mean and standard deviation of the failure rate vector ρ, and Represent the sorted circuit performance vectors The mean and standard deviation of .
[0024] The traditional Gaussian function failure rate and circuit performance satisfy the normal distribution. However, in reality, due to process fluctuations, device parameter changes, and the complexity of circuit structure, the relationship between failure rate and circuit performance may deviate from the normal distribution and show non-normal characteristics such as skewness, peaks, or heavy tails. In this case, using a Gaussian function to describe the relationship between them may lead to estimation errors.
[0025] Furthermore, S7, As the independent variable and y as the dependent variable, a local linear model is constructed using the weighted least squares regression method in the local area of the failure boundary. ,include: , ,in, Represents the eigenvector obtained after transforming the sampling point x. Perform a logarithmic transformation on the target variable in the sampling matrix X to obtain the transformed sampling matrix ,in, . Represents the weight vector of the local linear model, which is an m-dimensional column vector, where m is the number of features after the transformation. Each element of represents the weight coefficient of the corresponding feature. Represents the bias term of the local linear model, which is a scalar used to adjust the intercept of the model. Represents the transformed sampling matrix in the local area of the failure boundary, which is a The matrix of is the number of samples in the local area, and m is the number of features after transformation. Each row of corresponds to the transformed feature vector of a sample in a local area. Represents the weight matrix of samples in the local area, which is a The diagonal matrix of . The diagonal elements of are the weights of the corresponding samples. , and the off-diagonal elements are 0. Weight The ratio of the probability density of the sampling points under the original distribution and the distribution near the failure boundary is considered. The circuit performance vector representing the samples in the local area is a dimensional column vector. Each element of represents the circuit performance simulation result of the corresponding sample. (*)^T represents the transpose operation of the matrix or vector. (*)^(-1) represents the inverse operation of the matrix. Weighted least squares regression can highlight the important samples near the failure boundary by assigning different weights to different samples, thereby improving the fitting effect of the local linear model. Weight matrix The diagonal elements of are the weights of the corresponding samples. , and the off-diagonal elements are 0.
[0026] Further, S8, with As the independent variable, y as the dependent variable, a global linear model is constructed using the cross-validated orthogonal basis pursuit algorithm. ,include: , ,in, Represents the weight vector of the global linear model, which is an m-dimensional column vector, where m is the number of features after the transformation. Each element of represents the weight coefficient of the corresponding feature. Represents the bias term of the global linear model, which is a scalar used to adjust the intercept of the model. Represents the complete sampling matrix after transformation, which is an n × m matrix, where n is the total number of samples and m is the number of features after transformation. Each row of corresponds to the transformed feature vector of a sample. y represents the circuit performance vector of the complete sample, which is an n-dimensional column vector. Each element of y represents the circuit performance simulation result of the corresponding sample. represents the regularization parameter, which is a non-negative real number used to control the sparsity of the global linear model. This results in a sparser weight vector , the smaller This results in a denser weight vector . Represents the number of iterations of the orthogonal matching pursuit algorithm, which is a positive integer. Determines the number of features selected by the algorithm when building a global linear model. OMP (*) stands for the orthogonal matching pursuit algorithm, which is used to solve the linear regression problem with L0 norm regularization.
[0027] OMP stands for Orthogonal Matching Pursuit algorithm, which is a greedy algorithm for sparse representation and is used to solve the linear regression problem with L0 norm regularization: ,in, represents the L2 norm squared of the fitted residuals of the global linear model, Represents the L0 norm regularization term, which is used to control the sparsity of the model. By introducing L0 norm regularization, the orthogonal matching pursuit algorithm can obtain a sparse global linear model, select the most relevant features, and improve the generalization ability and interpretability of the model.
[0028] Compared with the prior art, the advantages of this application are:
[0029] In traditional failure rate estimation methods, circuit performance simulation results are usually This is derived from the central limit theorem, which states that the sum of independent and identically distributed random variables tends to be normally distributed. However, in the actual integrated circuit design and manufacturing process, due to process fluctuations, device parameter changes, and the complexity of circuit structure, The distribution of often presents non-normal characteristics such as skewness, peak or heavy tail. At this time, blindly using the cumulative distribution function of the normal distribution to calculate the failure rate may lead to a large deviation between the estimated result and the actual situation, affecting the reliability of the worst performance point search.
[0030] This application constructs a more generalized probability distribution model by introducing the skewness parameter α and the kurtosis parameter β. The modified CDF is similar to the Edgeworth series expansion in form. It modifies the normal distribution by higher-order moments (skewness and kurtosis) to better approximate the non-normal distribution. When α=0 and β=0, the modified CDF degenerates into a standard normal distribution, so it has good compatibility. By adjusting the values of α and β, the modified CDF can approximate various non-normal distributions, such as skewed normal distribution, Laplace distribution, t distribution, etc., with greater adaptability and flexibility.
[0031] (2) The failure rate of the traditional Gaussian function and the circuit performance satisfy the normal distribution. In this application, in the modified Gaussian function, the skewness parameter is introduced into the denominator of the exponential term, through The kurtosis parameter is used to characterize the asymmetry of the relationship between failure rate and circuit performance. is introduced into the denominator of the exponential term, through The term is used to characterize the tail characteristics of the relationship between failure rate and circuit performance. Different from the traditional inverse probability function, this application The skewness parameter is also considered and kurtosis parameter By and By passing in the inverse probability function, the revised calculation formula can dynamically adjust the circuit performance prediction value according to the asymmetry and tail characteristics of the relationship between the failure rate and the circuit performance, thereby improving the accuracy and reliability of the prediction.
[0032] (3) Different from the traditional global fitting method, the local linear model focuses on the key area near the failure boundary. By using weighted least squares regression, the sample points near the failure boundary are given higher weights, making the fitting results more accurate in the key area. This local modeling method can better capture the nonlinear relationship between circuit performance and key parameters near the failure boundary and improve the model's fitting ability in the key area.
[0033] Unlike local linear models, global linear models attempt to establish a linear relationship between circuit performance and key parameters in the entire parameter space. By adopting cross-validation and orthogonal basis pursuit algorithms, global linear models can extract the main change direction of key parameters while avoiding overfitting, thereby enhancing the generalization and robustness of the model. Although the fitting accuracy of the global linear model near the failure boundary may not be as good as that of the local linear model, it can provide a global trend estimate, which is of great significance for guiding circuit design and optimization. BRIEF DESCRIPTION OF THE DRAWINGS
[0034] The present application will be further described in the form of exemplary embodiments, which will be described in detail by the accompanying drawings. These embodiments are not restrictive, and in these embodiments, the same number represents the same structure, wherein:
[0035] Figure 1 It is an exemplary flow chart of a method for processing the worst performance of an integrated circuit according to some embodiments of the present application. DETAILED DESCRIPTION
[0036] The method and system provided in the embodiments of the present application are described in detail below with reference to the accompanying drawings.
[0037] like Figure 1 As shown, the process parameters and device parameters of the integrated circuit are obtained to construct a data set D; each sampling point in the data set D is calculated Weight , and calculate the sampling points Circuit performance simulation results The corresponding failure rate ;according to and , construct the circuit performance vector y and the failure rate vector ρ, sort the elements in y from small to large, and obtain the sorted circuit performance vector ; Determine the failure boundary based on the optimal worst performance point x* obtained in the previous iteration, resample within the range determined by the failure boundary to obtain the sampling matrix X; perform logarithmic transformation on the target variable in X to obtain the transformed sampling matrix ;according to and ρ, calculated using the Gaussian function Failure rate The corresponding circuit performance prediction value ;by As the independent variable and y as the dependent variable, a local linear model is constructed using the weighted least squares regression method in the local area of the failure boundary. ;by As the independent variable, y as the dependent variable, a global linear model is constructed using the cross-validated orthogonal basis pursuit algorithm. ; Based on the circuit performance prediction value Construct an optimization problem for the target. When the worst performance point x is located in the local area of the failure boundary, use is a constraint; otherwise, use As the constraint condition, solve the optimization problem to obtain the optimal worst performance point x*; use x* to update the data set D; repeat the above iterations until the preset convergence condition is met.
[0038] Specifically, S1 obtains the process parameters and device parameters of the integrated circuit and constructs a data set D; the process parameters include process angle: representing the typical conditions of the integrated circuit manufacturing process, such as the typical process angle (TT), the fast process angle (FF), the slow process angle (SS), etc. Different process angles correspond to different device parameters and circuit performance. Channel length: represents the physical length of the transistor channel, which is one of the key geometric parameters affecting the performance of the transistor. Gate oxide thickness: represents the thickness of the insulating layer between the transistor gate and the channel, affecting the transistor's threshold voltage and leakage current and other characteristics. The device parameters include threshold voltage: represents the minimum gate voltage required to turn on the transistor, affecting the noise tolerance and power consumption of the circuit. Saturation current: represents the drain current of the transistor in the saturation region, affecting the driving capability and speed performance of the circuit. Subthreshold slope: represents the sensitivity of the drain current in the subthreshold region of the transistor to the gate voltage change, affecting the low power consumption characteristics of the circuit.
[0039] By sampling these process parameters and device parameters, a series of sampling points can be obtained , each sampling point represents a specific set of parameter combinations. And its corresponding circuit performance simulation results The dataset D is constructed to provide data support for subsequent modeling and optimization. The dataset D can be constructed in the following ways: determine the distribution type (such as normal distribution, uniform distribution, etc.) and distribution parameters (such as mean, standard deviation, upper and lower bounds, etc.) of each parameter. Use Monte Carlo method or Latin hypercube sampling method to randomly sample from the distribution of each parameter to generate a series of sampling points. For each sampling point , use SPICE and other circuit simulation tools to simulate circuit performance and obtain the corresponding simulation results . Set the sampling point And its corresponding simulation results Composition data pair , construct dataset D.
[0040] S2, calculate each sampling point in the data set D Weight , and calculate the sampling points Circuit performance simulation results The corresponding failure rate The failure rate Indicates the circuit performance simulation results the probability of exceeding a preset performance threshold;
[0041] First, we need to calculate each sampling point Weight . Weight The calculation takes into account the sampling point The ratio of the probability density under the original distribution and the distribution near the failure boundary, and the simulation results Whether it is invalid. The specific calculation formula is: ,in, Indicates sampling point The probability density under the original distribution is, Indicates sampling point The probability density of the distribution near the failure boundary, n is the total number of sampling points in the data set D. This weight calculation method can take into account both global distribution and local characteristics, and highlight important samples near the failure boundary.
[0042] Weight The calculation of can be achieved by the following steps: According to the parameter distribution type and distribution parameters determined in S1, calculate each sampling point Probability density under the original distribution According to the circuit performance simulation results , estimate the location of the failure boundary. You can use classification algorithms such as support vector machine (SVM) and decision tree to classify the sampling points The failure points are divided into failure points and non-failure points, thereby determining the failure boundary. , calculate its probability density under the distribution near the failure boundary . Kernel density estimation (KDE) and other methods can be used to estimate the distribution of failure points. . Calculate each sampling point according to the formula Weight , and normalize them to ensure that the sum of the weights is 1.
[0043] Next, we need to calculate each sampling point Circuit performance simulation results The corresponding failure rate Failure rate Indicates the circuit performance simulation results The probability of exceeding the preset performance threshold y_th. Considering The distribution of may show non-normal characteristics such as skewness, peak or heavy tail. In this embodiment, the cumulative distribution function CDF of the modified normal distribution is used to calculate the failure rate. Failure rate The calculation formula is: , where CDF represents the cumulative distribution function of the modified normal distribution, and Respectively represent the circuit performance simulation results of sampling point xi The mean and standard deviation of and Two new parameters are introduced to describe Non-normal characteristics of the distribution. Skewness parameter, which indicates The degree of asymmetry of the distribution. hour, The distribution shows a right-skewed characteristic; when hour, The distribution shows a left-skewed characteristic; when hour, The distribution degenerates to the standard normal distribution. The kurtosis parameter indicates The tail weight or extreme value characteristics of a distribution. hour, The distribution shows a heavy-tailed characteristic, and the probability of extreme value events is high; when hour, The distribution shows a light-tail characteristic, and the probability of extreme events occurring is low; hour, The distribution degenerates to the standard normal distribution.
[0044] The calculation formula of the cumulative distribution function CDF of the modified normal distribution is: , where Φ represents the cumulative distribution function of the standard normal distribution. The skewness parameter and kurtosis parameter The estimation of can be achieved by the following steps: Perform n circuit performance simulations and obtain n simulation results . Calculate the sample mean of the simulation results , sample standard deviation , sample skewness and sample kurtosis . Use the sample statistic as an estimate of the parameter of the modified normal distribution, namely , , , By introducing the skewness parameter and kurtosis parameter , the modified normal distribution can better describe The non-normal characteristics of the distribution improve the accuracy of failure rate estimation.
[0045] S3, according to and , construct the circuit performance vector y and the failure rate vector ρ, sort the elements in y from small to large, and obtain the sorted circuit performance vector Specifically, the circuit performance vector y is composed of the circuit performance simulation results of all sampling points xi in the data set D There are n sampling points in the data set D, so the circuit performance vector y can be expressed as: ,in, Indicates sampling point The circuit performance simulation results are shown in Figure 2. In actual implementation, data structures such as lists and arrays can be used to store the circuit performance vector y.
[0046] The failure rate vector ρ is composed of all sampling points in the data set D Failure rate There are n sampling points in the data set D, and the failure rate vector ρ can be expressed as: ,in, Indicates sampling point Circuit performance simulation results Corresponding failure rate. In actual implementation, data structures such as lists and arrays can be used to store the failure rate vector ρ.
[0047] Sort the elements in the circuit performance vector y in ascending order to obtain the sorted circuit performance vector After sorting, The elements in satisfy the following relations: Various sorting algorithms, such as quick sort, merge sort, heap sort, etc., can be used to sort the circuit performance vector y. When sorting the circuit performance vector y, the relative positions of the elements in the failure rate vector ρ should be kept unchanged. That is, after sorting the circuit performance vector y, the order of the elements in the failure rate vector ρ should also be adjusted accordingly, so that Always corresponds to .
[0048] S4, determining the failure boundary according to the optimal worst performance point x* obtained by the previous iteration. Specifically, in this embodiment, the circuit performance value y of the optimal worst performance point x is compared with the preset circuit performance threshold By comparing y and , we can determine whether the worst performance point x is on the failure boundary. , then the worst performance point x* is considered to be on the failure boundary. , it is considered that the worst performance point x* has not reached the failure boundary. The area near the failure boundary can be determined in one of two ways:
[0049] (1) When When the worst performance point x is located on the failure boundary, a local area is selected near x as the center as the area near the failure boundary. The size of the local area can be adaptively adjusted according to factors such as the distance between x* and other sampling points and the distribution density of the sampling points. Calculate the Euclidean distance or Mahalanobis distance between x* and other sampling points. According to the distance, select the k sampling points closest to x to form the k nearest neighbors of x. With x as the center and the distance from the point with the largest distance to x among the k nearest neighbors as the radius, determine a spherical or ellipsoidal local area.
[0050] (2) When When , the worst performance point x* has not yet reached the failure boundary. In this case, the area near the failure boundary can be determined in one of the following two ways:
[0051] 1) In the current sampling matrix X, select the circuit performance value Closest to the preset threshold Sampling point , which is considered as a point on the failure boundary. As the center, a local area is selected near it as the area near the failure boundary. Calculate each sampling point in the sampling matrix X Circuit performance value With preset threshold The difference between . Select the sampling point with the smallest difference , which is considered as a point on the failure boundary. With centered at point A, a method similar to that in method (1) is used to determine a local area as the area near the failure boundary.
[0052] 2) At the worst performance point x* and the sampling point with the maximum circuit performance value Interpolate between them to get a series of interpolation points. Perform circuit performance simulation on these interpolation points to find the first circuit performance value greater than or equal to the preset threshold The interpolation point is regarded as a point on the failure boundary. With this point as the center, a local area near it is selected as the area near the failure boundary. In the sampling matrix X, find the sampling point with the largest circuit performance value . In x and Linear or nonlinear interpolation is performed between x and y to generate a series of interpolation points. The number of interpolation points can be determined based on the The distance between the two points, the required accuracy, and other factors are used to determine the circuit performance. Perform circuit performance simulation on each interpolation point to obtain its circuit performance value. Find the first circuit performance value greater than or equal to the preset threshold. The interpolation point is regarded as a point on the failure boundary. With this point as the center, a local area is determined as the area near the failure boundary using a method similar to method (1).
[0053] After determining the area near the failure boundary, it is necessary to resample in the area to obtain more sampling points and improve the accuracy of subsequent modeling and optimization. Specifically, the resampling boundary is determined according to the range of the area near the failure boundary. Within the resampling boundary, new sampling points are generated using Monte Carlo method, Latin hypercube sampling, orthogonal table sampling and other methods. The circuit performance of the newly generated sampling points is simulated to obtain its circuit performance value. The new sampling points and their circuit performance values are added to the original data set D to form an updated sampling matrix X.
[0054] S5, logarithmically transform the target variable in X to obtain the transformed sampling matrix ; ,in, represents the jth feature of the i-th sample in the sampling matrix X, n is the number of samples, and m is the number of features. When performing logarithmic transformation, the following special cases should be noted: When it is 0, the logarithmic function The result is negative infinity. To avoid this, you can Add a small constant ε to The value of the constant ε can be adjusted according to the range and accuracy requirements of the data, and is usually a small value close to 0, such as 1e-8. The logarithmic transformation can transform the distribution of features from nonlinear to approximately linear, which helps to improve the model fitting effect and prediction accuracy.
[0055] S6, based on the sorted circuit performance vector and failure rate vector ρ, and use the Gaussian function to calculate the failure rate at 6σ The corresponding circuit performance prediction value , , ,in, and They represent the mean and standard deviation of the failure rate vector ρ, and Represent the sorted circuit performance vectors The mean and standard deviation of .
[0056] The traditional Gaussian function failure rate and circuit performance satisfy the normal distribution, but in fact, due to process fluctuations, device parameter changes and the complexity of circuit structure, the relationship between failure rate and circuit performance may deviate from the normal distribution and show non-normal characteristics such as skewness, peak or heavy tail. In this case, using Gaussian function to describe the relationship between them may lead to estimation errors. This application, represents the skewness parameter, which describes the asymmetry of the distribution. When , the distribution is right-skewed; when When , the distribution is left-skewed; when When , the distribution degenerates into a symmetric distribution. represents the kurtosis parameter, which describes the tail weight of the distribution. When , the distribution shows a heavy-tail characteristic, and the probability of extreme events is high; when When , the distribution shows a light-tail characteristic, and the probability of extreme events is low; when When , the distribution degenerates into a normal distribution. The modified Gaussian function introduces a skewness parameter in the exponential part and kurtosis parameter , the asymmetry and tail characteristics of the distribution are captured through the third and fourth order moments, making it able to better fit non-normal distributions.
[0057] Correspondingly, the inverse function of the standard normal distribution is We also need to consider the skewness parameter and kurtosis parameter Correction is made to reflect the corresponding relationship between quantile and failure rate under non-normal distribution. Corrected inverse function The solution can be obtained by numerical integration or approximate algorithm. This embodiment adopts an approximate solution method based on binary search and Simpson integral: set the initial search interval [a, b], where a and b are the lower and upper limits of the standard normal distribution (such as a=-5, b=5). Calculate the midpoint of the interval m=(a+b) / 2, and use the Simpson integral formula to calculate , where X is a modified standard normal distribution random variable. With the target probability p (i.e. ) for comparison: If , then the search interval is narrowed to [a, m]; if , then the search interval is narrowed to [m, b]. Repeat until the interval length is less than the preset precision threshold (such as 1e-6), and the midpoint of the interval is used as Approximate value of .
[0058] By introducing the skewness parameter and kurtosis parameter The modified Gaussian function can more flexibly and accurately describe the nonlinear and non-normal relationship between failure rate and circuit performance, and improve the circuit performance prediction value at 6σ. The estimation quality of , provides a more reliable target for the optimization of the worst performance point. At the same time, the skewness parameter and kurtosis parameter The value of can be set according to historical data or expert experience, or it can be learned from sample data through data fitting or parameter estimation methods to adapt to the specific distribution characteristics of different circuit designs.
[0059] S7, with With y as the independent variable and y as the dependent variable, a local linear model is constructed in the local area of the failure boundary. The form is: ,in, is the weight vector of the local linear model, is the bias term of the local linear model. According to the local area near the failure boundary determined in step S4, samples falling in the area are selected to form a sample set in the local area. Assume that there are samples, the corresponding transformed feature matrix is , the circuit performance vector is . is a where m is the number of features after transformation. Each row corresponds to the transformed feature vector of a sample in a local area . is a dimensional column vector, each element of which represents the circuit performance simulation result of the corresponding sample.
[0060] According to the aforementioned weight The calculation formula is used to calculate the weight of each sample in the local area. : ,in, Representation sample The probability density under the original distribution is, Representation sample The probability density of the distribution near the failure boundary is, is the number of samples in the local area. Construct the sample weight matrix , which is a The diagonal matrix of . The diagonal elements of are the weights of the corresponding samples. , and the off-diagonal elements are 0. Using the weighted least squares regression method, the weight vector of the local linear model is estimated and the bias term : , , where mean(*) represents the mean of the vector. In actual implementation, the weighted least squares regression function provided by the numerical optimization library or machine learning framework can be used to directly solve and .
[0061] Using the estimated weight vector and the bias term , construct a local linear model : For any sample x in the local area, transform it into a feature vector , substitute into the local linear model , you can get the circuit performance prediction value of the sample. During the iterative optimization process, if the local area changes (such as the failure boundary position is updated), you need to reselect the samples in the local area and update the sample weight matrix , and re-estimate the parameters of the local linear model and The local linear model can capture the local features near the failure boundary and highlight the important samples near the failure boundary by assigning different weights to different samples, thus improving the fitting effect of the model.
[0062] S8, As the independent variable, y as the dependent variable, a global linear model is constructed using the cross-validated orthogonal basis pursuit algorithm: Global linear model The form is: ,in, is the weight vector of the global linear model, is the bias term of the global linear model. The transformed feature vectors of all samples are combined into a complete sampling matrix Φ, and the corresponding circuit performance values are combined into a circuit performance vector y. Φ is an n×m matrix, where n is the total number of samples and m is the number of transformed features. Each row of Φ corresponds to the transformed feature vector of a sample y is an n-dimensional column vector, each element of which represents the circuit performance simulation result of the corresponding sample. Set the regularization parameter and the number of iterations . Controls the sparsity of the global linear model, larger This results in a sparser weight vector , the smaller This results in a denser weight vector . Determines the number of features selected by the orthogonal matching pursuit algorithm when building a global linear model. The complete training data set is randomly divided into K mutually exclusive subsets, each of which is of similar size.
[0063] For each cross-validation: select K-1 subsets as training sets and the remaining 1 subset as validation set. Perform the orthogonal matching pursuit algorithm on the training set to obtain the weight vector and the bias term . Evaluate the performance of the current model on the validation set and calculate the mean square error (MSE) or other performance indicators. Repeat the above steps K times, selecting a different subset as the validation set each time, to obtain K models and corresponding performance indicators. Select the model with the best performance among the K models as the final global linear model and determine the optimal weight vector and the bias term .
[0064] The execution process of the orthogonal matching pursuit algorithm is as follows: Input: sampling matrix Φ, circuit performance vector y, regularization parameter λg, number of iterations , output: sparse weight vector . Initialization: residual vector r=y, weight vector , active set ; Calculate the correlation coefficient between the residual r and each column in the sampling matrix Φ, and select the column index with the largest absolute value ,Will Add active set A and calculate the weight vector using the least squares method on the column corresponding to active set A , update the residual vector , if the stopping condition is met (such as the L2 norm of the residual is less than the threshold or the maximum number of iterations is reached), the loop is exited and The corresponding element of active set A is assigned to The corresponding position of the other positions is 0, and the sparse weight vector is output. .
[0065] Using the optimal weight vector and the bias term , build a global linear model: For any sample x, transform it into a feature vector , substitute into the global linear model , the circuit performance prediction value of the sample can be obtained. During the iterative optimization process, when the sampling matrix X changes (such as adding new samples or removing samples), the orthogonal matching pursuit algorithm needs to be re-executed to update the weight vector of the global linear model and the bias term The global linear model can capture the global trend of the entire parameter space, control the sparsity of the model through L0 norm regularization, select the most relevant features, and improve the generalization ability and interpretability of the model.
[0066] S9, based on circuit performance prediction value As the target, based on the worst performance point x obtained in the current iteration, determine whether it is located in the local area of the failure boundary. The location of x can be determined by calculating the distance between x and the center point of the local area, or by checking whether x meets the boundary conditions of the local area. If the worst performance point x is located in the local area of the failure boundary, the local linear model is used. as constraints; otherwise, the global linear model is used as a constraint.
[0067] Circuit performance prediction value As the goal, with the selected constraints as constraints, construct an optimization problem: minimize: ; Constraints: When located in a local area, use , otherwise ,satisfy, ,in, and are the lower and upper bounds of the design parameter x, respectively. The above optimization problem is solved using optimization algorithms, such as sequential quadratic programming (SQP) and interior point method, to obtain the optimal worst performance point x*. The optimization algorithm uses iterative search to find the design parameter x* that minimizes the objective function y6σ while satisfying the constraints.
[0068] S10, update the dataset D using x*; add x as a new sample point to the existing dataset D to expand the size and diversity of the dataset. Update the statistics of the dataset D, such as the mean, variance, and covariance matrix, based on the newly added sample point x*. After adding the new sample point x, evaluate the quality of the dataset D, such as the distribution and coverage of the sample points. If the quality of the dataset D does not meet the requirements, further optimization of the data sampling strategy can be considered, such as generating more sample points near x, or removing some redundant or abnormal sample points.
[0069] S11, repeat the above iterations until the preset convergence conditions are met. Some convergence conditions are preset, such as the number of iterations reaches the upper limit, the change of the worst performance point x* is less than the threshold, and the circuit performance prediction value The change in is less than the threshold, etc. After each iteration, check whether the current solution meets the preset convergence conditions. If the convergence conditions are met, the iteration is terminated and the final optimal solution x* is output; otherwise, continue to the next round of iterations. Before entering the next round of iterations, update some iteration parameters, such as learning rate, regularization coefficient, etc., to adapt to the convergence state of the algorithm. A reasonable parameter update strategy can speed up the convergence speed of the algorithm and improve the optimization efficiency.
[0070] Example 2
[0071] Perform worst-case performance analysis and optimization on a high-speed analog front-end (AFE) chip built in 28nm CMOS technology and containing a differential amplifier, an ADC, and an equalizer.
[0072] The process parameters and device parameters of the integrated circuit are obtained to construct the data set D. The process parameters include process angle (SS, TT, FF), channel length (L=28nm±10%), gate oxide thickness (Tox=1.5nm±5%); device parameters include threshold voltage (Vth=0.4V±20mV), saturation current (Isat=500μA±10%), and subthreshold slope (SS=80mV / dec±10%). The LatinHypercube Sampling (LHS) method is used to generate 1000 random samples within the above parameter range to form the initial data set D.
[0073] Calculate each sampling point in the data set D Weight , and calculate the sampling points Circuit performance simulation results The corresponding failure rate . Calculate each sampling point according to the above formula Weight :The original distribution and the distribution near the failure boundary both obey normal distribution; the means and variances of the two distributions are obtained by maximum likelihood estimation; calculate and , and then normalize to get ; Calculate each sampling point Failure rate : Performance threshold Gain <60dB, bandwidth <1GHz, offset voltage >5mV; fitting The distribution parameters of ( ); Calculate using the modified CDF function .
[0074] according to and , construct the circuit performance vector y and the failure rate vector ρ, sort the elements in y from small to large, and obtain the sorted circuit performance vector . The failure boundary is determined according to the optimal worst performance point x* obtained in the previous iteration, and the sampling matrix X is obtained by resampling within the range determined by the failure boundary. The worst performance point obtained in the previous step is: x*=(SS, L=30nm, Tox=1.6nm, Vth=480mV, Isat=450μA, SS=88mV / dec). Within the range of ±10% around x*, 500 samples are resampled using the LHS method to form the sampling matrix X.
[0075] Perform a logarithmic transformation on the target variable in X to obtain the transformed sampling matrix Perform logarithmic transformation on L, Tox, Vth, Isat in X (such as log(L), log(Tox), etc.) to obtain .according to and ρ, and use the Gaussian function to calculate the failure rate at 6σ The corresponding circuit performance prediction value .calculate The mean and standard deviation , the mean value of ρ and standard deviation ; , substituting into the formula, we get , .by As the independent variable and y as the dependent variable, a local linear model is constructed using the weighted least squares regression method in the local area of the failure boundary. .by is the independent variable, y is the dependent variable, and the weighted least squares solution is calculated to obtain .
[0076] by As the independent variable, y as the dependent variable, a global linear model is constructed using the cross-validated orthogonal basis pursuit algorithm. .by is the independent variable, y is the dependent variable, and we set , , using the OMP algorithm to obtain . Based on the circuit performance prediction value Construct an optimization problem for the target. When the worst performance point x is located in the local area of the failure boundary, use is a constraint; otherwise, use As constraints, solve the optimization problem to get the best worst performance point x*. Construct the optimization problem: Objective: Minimize ,constraint: (when x is near the failure boundary) or (When x is in other regions). Variable range: SS / TT / FF, 27nm≤L≤30nm, 1.4nm≤Tox≤1.6nm, 400mV≤Vth≤480mV, 450μA≤Isat≤550μA, 70mV / dec≤SS≤90mV / dec. Solve using the Sequential Quadratic Programming (SQP) algorithm to obtain the new worst performance point x*
[0077] Use x* to update the data set D. Add x* to the data set D and update the statistics of D. Repeat the above iterations until the preset convergence condition is met. Set the convergence condition as: 5 consecutive iterations, The change is less than 1%. Repeat S4-S10 until the convergence condition is met and output the final worst performance point x*. After 50 iterations, the design team obtained the worst performance point of the differential amplifier: x*= (SS, L=28.5nm, Tox=1.55nm, Vth=430mV, Isat=480μA, SS=84mV / dec), and the corresponding worst performance prediction values are: gain=58.2dB, bandwidth=0.95GHz, offset voltage=5.8mV.
[0078] The design team optimized the circuit structure and device size of the differential amplifier based on x*, and improved the worst performance to: gain = 62.5dB, bandwidth = 1.15GHz, offset voltage = 4.1mV while meeting power consumption and area constraints. After silicon verification, the measured performance of the optimized differential amplifier under the worst process conditions has an error of less than 5% from the predicted value, meeting the design index requirements.
Claims
1. A method for processing the worst performance of an integrated circuit, characterized in that: include: S1, obtain the process parameters and device parameters of the integrated circuit and construct the data set D; S2, calculate each sampling point in the data set D Weight , and calculate the sampling points Circuit performance simulation results The corresponding failure rate ; S3, according to and , construct the circuit performance vector y and the failure rate vector ρ, sort the elements in y from small to large, and obtain the sorted circuit performance vector ; S4, determine the failure boundary according to the optimal worst performance point x* obtained in the previous iteration, resample within the range determined by the failure boundary, and obtain the sampling matrix X; S5, logarithmically transform the target variable in X to obtain the transformed sampling matrix ; S6, according to and ρ, calculated using the Gaussian function Failure rate The corresponding circuit performance prediction value ; S7, with As the independent variable and y as the dependent variable, a local linear model is constructed using the weighted least squares regression method in the local area of the failure boundary. ; S8, As the independent variable, y as the dependent variable, a global linear model is constructed using the cross-validated orthogonal basis pursuit algorithm. ; S9, based on circuit performance prediction value Construct an optimization problem for the target. When the worst performance point x is located in the local area of the failure boundary, use is a constraint; otherwise, use As constraints, solve the optimization problem to obtain the best worst performance point x*; S10, update the data set D using x*; S11, repeat the above iterations until the preset convergence condition is met.
2. The method for processing the worst performance of an integrated circuit according to claim 1, characterized in that: The process parameters include process angle, channel length and gate oxide layer thickness; The device parameters include threshold voltage, saturation current and subthreshold slope.
3. The method for processing the worst performance of an integrated circuit according to claim 1, wherein: The failure rate Indicates the circuit performance simulation results The probability of exceeding a preset performance threshold.
4. The method for processing the worst performance of an integrated circuit according to claim 1, wherein: Weight The calculation formula is: ; in, Indicates sampling point The probability density under the original distribution is, Indicates sampling point The probability density of the distribution near the failure boundary, n is the total number of sampling points in the data set D.
5. The method for processing the worst performance of an integrated circuit according to claim 1, characterized in that: Failure rate The calculation formula is: ; in, represents the preset performance threshold, CDF represents the cumulative distribution function of the modified normal distribution, and Respectively represent sampling points Circuit performance simulation results The mean and standard deviation of and These are the two parameters introduced to describe Non-normal characteristics of the distribution.
6. The method for processing the worst performance of an integrated circuit according to claim 5, characterized in that: The calculation formula of the cumulative distribution function CDF of the modified normal distribution is: ; Here, Φ represents the cumulative distribution function of the standard normal distribution.
7. The method for processing the worst performance of an integrated circuit according to claim 1, characterized in that: S5, logarithmically transform the target variable in X to obtain the transformed sampling matrix ,include: ; in, represents the jth feature of the i-th sample in the sampling matrix X, and m is the number of features.
8. The method for processing the worst performance of an integrated circuit according to claim 6, characterized in that: S6, according to and ρ, calculated using the Gaussian function Failure rate The corresponding circuit performance prediction value ,include: ; ; in, and They represent the mean and standard deviation of the failure rate vector ρ, and Represent the sorted circuit performance vectors The mean and standard deviation of .
9. The method for processing the worst performance of an integrated circuit according to claim 1, characterized in that: S7, with As the independent variable and y as the dependent variable, a local linear model is constructed using the weighted least squares regression method in the local area of the failure boundary. ,include: ; ; in, Represents the feature vector obtained after transforming the sampling point x.
10. The method for processing the worst performance of an integrated circuit according to claim 1, characterized in that: S8, As the independent variable, y as the dependent variable, a global linear model is constructed using the cross-validated orthogonal basis pursuit algorithm. ,include: ; ; in, represents the weight vector of the global linear model; represents the bias term of the global linear model; y represents the circuit performance vector of the complete sample; represents the regularization parameter; Represents the number of iterations of the orthogonal matching pursuit algorithm.
Citation Information
Patent Citations
A method and device for processing the worst performance of integrated circuit, electronic equipment, and medium
CN119203917B
High-efficiency yield analysis method for post-simulation of large-scale SRAM (Static Random Access Memory) array circuit
CN114792084A
Knowledge and data dual-driven multitask circuit parameter evolution method
CN117688888A
Integrated circuit failure boundary processing method and device, electronic equipment and medium
CN118468772A
Integrated circuit failure boundary solving method and device, electronic equipment and medium
CN118468787A
Cited By
Big data-based AI agent design platform decision optimization method
CN120295859A