Method and device for predicting feature parameters of library
Through multi-task learning model and outlier elimination technology, the problem of high time and cost of obtaining library feature parameters in integrated circuit design is solved, the efficiency and accuracy of library feature parameter modeling is improved, and the time requirements for chip research and development and market launch are met .
Patent Information
- Application Number
- CN202310806212.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-06-30
- Publication Date
- 2024-12-31
AI Technical Summary
In the design of integrated circuits, the time and cost of obtaining library characteristic parameters is too high, especially under different processes, voltages and temperatures, which affects the chip R&D efficiency and market progress.
A multi-task learning model is used to establish a library feature parameter prediction model for circuit modules. By inputting information, multiple library feature parameters are predicted at the same time, outliers in training samples are eliminated, noise interference is reduced, and modeling efficiency and accuracy are improved.
The prediction time is achieved without increasing with the increase of the number of library feature parameters, which improves the efficiency and accuracy of library feature parameter modeling and prediction, and meets industrial time requirements.
Smart Images

Figure CN119226790A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of chip design, and more specifically, to a method and device for predicting library characteristic parameters. Background Art
[0002] In the field of integrated circuit (IC) design, it is necessary to obtain library characteristic parameters that can reflect the timing, noise, power and other information of the circuit module. The acquisition of library characteristic parameters can be achieved through chip simulation testing, but since it is necessary to obtain the library characteristic parameters of the circuit module under different process, voltage and temperature (PVT) states, it takes a lot of time and cost to obtain the library characteristic parameters completely through simulation, which is difficult to meet the time requirements of actual industrial circuit design, production and listing. Therefore, a more efficient method is needed to obtain the value of the library characteristic parameters. With the rapid development of artificial intelligence technology, it is possible to model the library characteristic parameters of the circuit module under some PVT states, thereby predicting the library characteristic parameters under other PVT states.
[0003] However, the modeling prediction time of the existing library feature parameter prediction scheme increases linearly with the number of library feature parameters. The development of integrated circuit manufacturing processes has led to a rapid increase in the number of library feature parameters to be predicted, and there may be a large number of library feature parameters under a single PVT state. When the number of library feature parameters is large, it will lead to a long modeling time, which will affect the chip R&D efficiency and market launch progress. Therefore, how to improve the efficiency of library feature parameter modeling prediction has become a technical problem that needs to be solved urgently. Summary of the invention
[0004] The embodiments of the present application provide a method and device for predicting library characteristic parameters. A library characteristic parameter prediction model of a circuit module is established through a multi-task learning model. Multiple library characteristic parameters can be predicted simultaneously based on input information, so that the time required for prediction does not increase with the increase in the number of library characteristic parameters, thereby improving the efficiency of library characteristic parameter modeling and prediction.
[0005] In a first aspect, a method for predicting library feature parameters is provided, comprising: obtaining a training sample set, the training sample set comprising at least one first state of a circuit module and a plurality of library feature parameters of the circuit module in the at least one first state; training a multi-task learning model according to the training sample set, wherein input information of the multi-task learning model comprises the state of the circuit module, and output information of the multi-task learning model is a plurality of library feature parameters; and determining the plurality of library feature parameters of the circuit module in the at least one second state according to the trained multi-task learning model.
[0006] Optionally, the state of the circuit module includes but is not limited to a process of the circuit module, a voltage of the circuit module, and a temperature of the circuit module.
[0007] Optionally, the input information of the multi-task learning model also includes a transition time (transition index) of a voltage on an input pin of the circuit module and / or a load capacitance (load index) of an output pin of the circuit module.
[0008] According to the technical solution provided in the present application, a library feature parameter prediction model for a circuit module is established through a multi-task learning model, which can simultaneously predict multiple library feature parameters based on input information, so that the time required for prediction does not increase with the increase in the number of library feature parameters, thereby improving the efficiency of library feature parameter modeling and prediction.
[0009] In combination with the first aspect, in some implementations of the first aspect, before training the multi-task learning model according to the training sample set, the method further includes: removing outliers in multiple library feature parameters in the training sample set.
[0010] According to the above technical solution, by eliminating abnormal library feature parameter values in training samples before training, the interference of noise data in training samples can be reduced, thereby improving the accuracy of library feature parameter modeling prediction.
[0011] In combination with the first aspect, in some implementations of the first aspect, outliers in multiple library feature parameters in a training sample set are eliminated, including: obtaining value ranges of multiple library feature parameters; and replacing library feature parameters in the training sample set that exceed the value range with undefined values.
[0012] According to the above technical solution, outliers in the training sample set are eliminated by giving a value range, so that the prior experience of the tester can be used to optimize the training process of the model, thereby improving the accuracy of the library feature parameter modeling prediction.
[0013] In combination with the first aspect, in certain implementations of the first aspect, outliers in multiple library feature parameters in a training sample set are eliminated, including: determining multiple elimination thresholds; determining multiple subsets in the training sample set according to the multiple elimination thresholds, the multiple subsets corresponding one-to-one to the multiple elimination thresholds, and each subset in the multiple subsets is a part of the multiple library feature parameters in the training sample set that meets the corresponding elimination threshold; fitting each subset in the multiple subsets according to the machine learning model to determine multiple fitting results corresponding one-to-one to the multiple subsets; determining the average relative error between each fitting result in the multiple fitting results and the corresponding subset; determining a first elimination threshold from the multiple elimination thresholds, the first elimination threshold being the elimination threshold with the smallest corresponding average relative error among the multiple elimination thresholds; replacing the library feature parameters in the training sample set that exceed the first elimination threshold with undefined values.
[0014] According to the above technical solution, in the absence of an input value range, the prediction model can autonomously select a suitable range to remove outliers in the training sample set based on the fitting accuracy of the machine learning model under different thresholds, thereby improving the flexibility and scope of application of library feature parameter modeling and prediction.
[0015] In combination with the first aspect, in certain implementations of the first aspect, training a multi-task learning model based on a training sample set includes: obtaining a dependency relationship between each library feature parameter in a plurality of library feature parameters and input information of the multi-task learning model; and training the multi-task learning model based on the training sample set and the dependency relationship.
[0016] According to the above technical solution, by modeling based on the dependency relationship between library feature parameters and input information of the multi-task learning model, the complexity of the model can be reduced, thereby improving the efficiency and accuracy of library feature parameter modeling prediction.
[0017] In combination with the first aspect, in certain implementations of the first aspect, before determining multiple library feature parameters of the circuit module in at least one second state according to a trained multi-task learning model, the method also includes: determining multiple library feature parameters of the circuit module in at least one first state according to the multi-task learning model; determining the average relative error between each of the multiple library feature parameters in at least one first state determined by the multi-task learning model and the training sample set; determining at least one library feature parameter among the multiple library feature parameters whose corresponding average relative error is greater than a threshold; re-eliminating outliers in at least one library feature parameter in the training sample set; and retraining the multi-task learning model according to the training sample set after eliminating the outliers.
[0018] According to the above technical solution, after the model is trained, the accuracy of the model prediction can be tested by predicting the known library feature parameters in the training sample set through the model. When the prediction result does not meet the required accuracy, the training sample set can be further retrained after outliers are removed until the model meets the required prediction accuracy, thereby improving the accuracy of library feature parameter modeling prediction.
[0019] In combination with the first aspect, in certain implementations of the first aspect, the multi-task learning model includes multiple embedding modules, the multiple embedding modules are used to extract multiple different types of information from the input information, the multiple embedding modules correspond one-to-one to the multiple different types of information, and the structures of the multiple embedding modules are the same.
[0020] According to the above technical solution, different types of information in the model input information are extracted through the same embedding module, and information that has a predictive effect on multiple library feature parameters is extracted, so that the relationship between the library feature parameters can be commonly characterized, thereby reducing the overfitting problem during individual modeling and improving the accuracy of library feature parameter modeling prediction.
[0021] In a second aspect, a device for predicting library feature parameters is provided, comprising: an acquisition module, used to acquire a training sample set, the training sample set comprising at least one first state of a circuit module and values of multiple library feature parameters in at least one first state of the circuit module; a training module, used to train a multi-task learning model according to the training sample set, wherein input information of the multi-task learning model comprises the state of the circuit module, and output information of the multi-task learning model is the values of multiple library feature parameters; and a prediction module, used to determine the values of multiple library feature parameters in at least one second state of the circuit module according to the trained multi-task learning model.
[0022] In combination with the second aspect, in some implementations of the second aspect, the device also includes a removal module, which is used to remove abnormal values from the values of multiple library feature parameters in the training sample set before training the multi-task learning model based on the training sample set.
[0023] In combination with the second aspect, in some implementations of the second aspect, the elimination module is used to: obtain a value range of multiple library feature parameters; and replace the values of the library feature parameters in the training sample set that exceed the value range with undefined values.
[0024] In combination with the second aspect, in certain implementations of the second aspect, the elimination module is used to: determine multiple elimination thresholds; determine multiple subsets in the training sample set according to the multiple elimination thresholds, the multiple subsets corresponding one-to-one to the multiple elimination thresholds, and each subset in the multiple subsets is the part of the values of multiple library feature parameters in the training sample set that meets the corresponding elimination threshold; fit each subset in the multiple subsets according to the machine learning model to determine multiple fitting results corresponding one-to-one to the multiple subsets; determine the average relative error between each fitting result in the multiple fitting results and the corresponding subset; determine a first elimination threshold from the multiple elimination thresholds, the first elimination threshold is the elimination threshold with the smallest corresponding average relative error among the multiple elimination thresholds; replace the values of the library feature parameters in the training sample set that exceed the first elimination threshold with undefined values.
[0025] In combination with the second aspect, in some implementations of the second aspect, the training module is used to: obtain the dependency relationship between each library feature parameter in multiple library feature parameters and the input information of the multi-task learning model; and train the multi-task learning model based on the training sample set and the dependency relationship.
[0026] In combination with the second aspect, in some implementations of the second aspect, the device also includes an evaluation module, which is used to: determine the value of each of the multiple library feature parameters in at least one first state of the circuit module according to the multi-task learning model before determining the values of multiple library feature parameters in at least one second state of the circuit module according to the trained multi-task learning model; determine the average relative error between the value of each of the multiple library feature parameters in at least one first state determined by the multi-task learning model and the training sample set; determine at least one library feature parameter among the multiple library feature parameters whose corresponding average relative error is greater than a threshold; re-eliminate outliers in the value of at least one library feature parameter in the training sample set; and retrain the multi-task learning model according to the training sample set after eliminating the outliers.
[0027] In combination with the second aspect, in certain implementations of the second aspect, the state of the circuit module includes but is not limited to: a process of the circuit module, a voltage of the circuit module, and a temperature of the circuit module.
[0028] In combination with the second aspect, in certain implementations of the second aspect, the input information of the multi-task learning model also includes: a transition time of a voltage on an input pin of a circuit module and / or a load capacitance of an output pin of the circuit module.
[0029] In combination with the second aspect, in certain implementations of the second aspect, the multi-task learning model includes multiple embedding modules, and the multiple embedding modules are used to extract multiple different types of information from the input information, and the structures of the multiple embedding modules are the same.
[0030] In a third aspect, a computing device is provided, comprising a processor and a memory, wherein the memory is used to store instructions, and the processor is used to call and execute the instructions from the memory, so that the computing device executes the method in the first aspect or any possible implementation of the first aspect.
[0031] Optionally, the processor may be a general-purpose processor, which may be implemented by hardware or software. When implemented by hardware, the processor may be a logic circuit, an integrated circuit, etc.; when implemented by software, the processor may be a general-purpose processor, which is implemented by reading software codes stored in a memory, which may be integrated in the processor or may be located outside the processor and exist independently.
[0032] In a fourth aspect, a chip is provided, which obtains instructions and executes the instructions to implement the method in the above-mentioned first aspect or any possible implementation manner of the first aspect.
[0033] Optionally, as an implementation, the chip includes a processor and a data interface, and the processor reads instructions stored in the memory through the data interface to execute the method in the above-mentioned first aspect or any possible implementation of the first aspect.
[0034] Optionally, as an implementation method, the chip may also include a memory, in which instructions are stored, and the processor is used to execute the instructions stored in the memory. When the instructions are executed, the processor is used to execute the method in the above-mentioned first aspect or any possible implementation method of the first aspect.
[0035] In a fifth aspect, a computer program product comprising instructions is provided. When the instructions are executed by a computing device, the computing device executes the method in the above-mentioned first aspect or any possible implementation manner of the first aspect.
[0036] In a sixth aspect, a computer-readable storage medium is provided, comprising computer program instructions. When the computer program instructions are executed by a computing device, the computing device executes the method in the above-mentioned first aspect or any possible implementation manner of the first aspect.
[0037] By way of example, these computer-readable storage media include, but are not limited to, one or more of the following: read-only memory (ROM), programmable ROM (PROM), erasable PROM (EPROM), Flash memory, electrically EPROM (EEPROM), and hard drive.
[0038] Optionally, as an implementation manner, the above-mentioned storage medium may specifically be a non-volatile storage medium. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] Figure 1 It is a schematic diagram of a multi-task learning model provided in an embodiment of the present application.
[0040] Figure 2 It is a schematic flowchart of a method for predicting library characteristic parameters provided in an embodiment of the present application.
[0041] Figure 3 It is a schematic diagram of a process of removing outliers from a training sample set provided in an embodiment of the present application.
[0042] Figure 4 It is a schematic flowchart of another method for predicting library characteristic parameters provided in an embodiment of the present application.
[0043] Figure 5 It is a schematic structural block diagram of a device for predicting library characteristic parameters provided in an embodiment of the present application.
[0044] Figure 6 It is a schematic structural block diagram of a computing device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0045] The technical solutions in the embodiments of the present application will be described below in conjunction with the accompanying drawings.
[0046] The present application will present various aspects, embodiments or features around a system including multiple devices, components, modules, etc. It should be understood and appreciated that each system may include additional devices, components, modules, etc., and / or may not include all devices, components, modules, etc. discussed in conjunction with the figures. In addition, combinations of these schemes may also be used.
[0047] In addition, in the embodiments of the present application, words such as "exemplary" and "for example" are used to indicate examples, illustrations or explanations. Any embodiment or design described as "exemplary" in the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of the word "exemplary" is intended to present concepts in a concrete way.
[0048] In the embodiments of the present application, "corresponding (corresponding, relevant)" and "corresponding (corresponding)" can sometimes be used interchangeably. It should be pointed out that when the distinction between them is not emphasized, the meanings they intend to express are consistent.
[0049] The network architecture and business scenarios described in the embodiments of the present application are intended to more clearly illustrate the technical solutions of the embodiments of the present application, and do not constitute a limitation on the technical solutions provided in the embodiments of the present application. A person of ordinary skill in the art can appreciate that with the evolution of the network architecture and the emergence of new business scenarios, the technical solutions provided in the embodiments of the present application are equally applicable to similar technical problems.
[0050] References to "one embodiment" or "some embodiments" etc. described in this specification mean that a particular feature, structure or characteristic described in conjunction with the embodiment is included in one or more embodiments of the present application. Thus, the phrases "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear at different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.
[0051] In the present application, "at least one" means one or more, and "plurality" means two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can mean: including the existence of A alone, the existence of A and B at the same time, and the existence of B alone, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b, or c can mean: a, b, c, ab, ac, bc, or abc, where a, b, c can be single or multiple.
[0052] To facilitate understanding, relevant terms and concepts that may be involved in the embodiments of the present application are first introduced below.
[0053] 1. Circuit instance: In an integrated circuit (IC), the circuit is divided into different circuit modules according to the functions to be implemented. Each circuit module is a module used to implement one or more electronic circuit functions. Circuit modules include but are not limited to: standard cells, memory, input / output (I / O), intellectual property (IP) modules, etc. In the field of chip design, each circuit module can also be called a circuit instance.
[0054] 2. Library characteristic parameters: Parameters used to reflect instance timing, noise, power and other information in circuit design are collectively referred to as library characteristic parameters. Library characteristic parameters include but are not limited to leakage current, peak current, power, minimum period, setup time, hold time, time delay, voltage transition time of output pins, etc. of circuit modules.
[0055] 3. Corner: Due to the actual conditions of different processes in the chip manufacturing process, such as doping concentration, diffusion depth, etching degree, etc., the conditions between different batches of wafers, between different wafers in the same batch, and between different chips on the same wafer may be different. And with the difference in voltage, temperature and other conditions, the characteristics such as the average drift velocity of carriers in the chip will also be different. The occurrence of the above randomness can only be evaluated through statistical methods to ensure the rationality of the coverage. Therefore, in the chip design process, it is necessary to obtain the library characteristic parameters of the chip in different states. A state generated by a combination of different process parameters for each instance can be called a corner.
[0056] A commonly used process parameter combination is process, voltage, temperature (PVT). The process angle determined by the PVT combination is called the process, voltage, and temperature corner (PVT corner).
[0057] 4. Machine learning (ML): Machine learning is a multidisciplinary subject that covers knowledge of probability theory, statistics, approximate theory and complex algorithms. It uses computers as tools and is committed to simulating human learning methods in real time, and divides existing content into knowledge structures to effectively improve learning efficiency.
[0058] Statistical machine learning is a strategy of machine learning. Based on the initial understanding of the data and the analysis of the learning purpose, it selects a suitable mathematical model, formulates hyperparameters, and inputs sample data. According to certain strategies, it uses a suitable learning algorithm to train the model, and finally uses the trained model to analyze and predict the data. Through statistical machine learning, it is possible to learn known sample data and fit a model, so that the model can be used to predict all data (including known parts and unknown parts).
[0059] 5. Multi-task learning (MTL) model: Traditional deep learning methods aim to solve only one task using a specific model, while multi-task learning models can simultaneously complete the learning of multiple tasks based on the knowledge contained in multiple tasks. Multi-task learning models use the same or similar feature extraction layers to enable different tasks to share vector expressions. By learning other tasks, the model can bring information gain and effect improvement to the current task, thereby improving the generalization effect of the model on multiple tasks. Multi-task model algorithms include but are not limited to multilayer perceptron (MLP), residual network (ResNet), transformer model, etc.
[0060] Multi-task learning can improve efficiency mainly due to the following reasons:
[0061] (1) Implicit data enhancement: Each task has its own sample. If MTL is used, the sample size of the model will be greatly increased. In addition, the data will have noise. If only task A is learned, the model will also learn the noise of task A. If MTL is used, the model will ignore the noise of task A because it requires task B to be learned well. Similarly, when the model learns task A, it will also ignore the noise of task B. Therefore, multi-task learning can learn a more accurate embedding expression.
[0062] (2) Focused attention: If the data of a task is very noisy, the data is small and very high-dimensional, the model cannot distinguish between relevant and irrelevant features. MTL can help the model focus on useful features because different tasks will reflect the relevance of features to the task.
[0063] (3) Common representation extraction: Some features are easy to learn in task B but difficult to learn in task A. The main reason is that the interaction between task A and these features is more complex, and other features may hinder the learning of some features for task A. Therefore, through MTL, the model can efficiently learn every important feature.
[0064] (4) Representation bias: MTL enables the model to learn vector representations that are preferred by all tasks. This will also help the model generalize to new tasks in the future, because the hypothesis space performs well for enough training tasks and also performs well for learning new tasks.
[0065] (5) Regularization: For a task, the learning of other tasks will have a regularization effect on this task.
[0066] In the field of IC design, each instance needs to obtain its library characteristic parameters before it goes on the market to ensure that its performance meets the requirements. Due to the randomness brought by the process corner, it is necessary to obtain the instance's library characteristic parameters under multiple different PVT corners, resulting in a large number of library characteristic parameter values to be obtained. For example, an instance contains 48 PVT corners, and each corner has 150 library characteristic parameters such as timing and power consumption. There are a total of 48*150=7200 library characteristic parameter values that need to be simulated and extracted.
[0067] The large number of library feature parameter values to be obtained results in huge time and resource costs required to obtain them completely through simulation testing. Assuming that a corner simulation takes 60 hours, it will take several months to complete all corner simulations of the entire instance. Time costs will also lead to corresponding increases in resource costs. Each instance requires a long period of computing resources. In order to ensure the time to market for the product, additional computing resources need to be purchased to simulate multiple instances in parallel, thereby increasing the cost of computing resources.
[0068] Therefore, a solution is proposed that can model the library characteristic parameters of the circuit module under some PVT corners to predict the library characteristic parameters under other PVT corners. The modeling process of this type of solution can be based on traditional mathematical statistical methods, such as geometric scaling, interpolation, polynomial regression, etc., and with the development of artificial intelligence technology, it can also be implemented based on deep learning models. However, no matter which modeling method is used, each library characteristic parameter is modeled separately, so the modeling time will increase linearly with the number of library characteristic parameters. When the number of library characteristic parameters is large, the modeling efficiency will be low, affecting the R&D efficiency and market launch progress of the chip. In addition, modeling each library characteristic parameter separately also ignores the common representation between features, which is prone to the problem of overfitting the model to the noise in the data, resulting in reduced accuracy of modeling predictions.
[0069] In view of this, an embodiment of the present application provides a method for predicting library characteristic parameters, which establishes a library characteristic parameter prediction model for a circuit module through a multi-task learning model. It is capable of simultaneously predicting multiple library characteristic parameters based on input information, so that the time required for prediction does not increase with the increase in the number of library characteristic parameters, thereby improving the efficiency of library characteristic parameter modeling and prediction.
[0070] Figure 1 A schematic diagram of a multi-task learning model provided in an embodiment of the present application is shown.
[0071] like Figure 1As shown, the multi-task learning model includes an embedding layer and a prediction layer. The embedding layer includes multiple embedding modules, which are used to extract features from multiple different types of information included in the input information of the model, and each embedding module is used to extract features from one type of information. The prediction layer includes multiple prediction modules, each prediction module predicts a task based on the features extracted by at least one embedding module among the multiple embedding modules of the embedding layer, and outputs the predicted value of the task, so that the model can output the predicted values of multiple tasks at the same time.
[0072] In the embodiment of the present application, the input information for library feature parameter prediction includes the state of the circuit module, and the state of the circuit module can be the PVT corner of the instance. Figure 1 The input information 1 may be cell information and corner information, which are used to indicate that the circuit module is a standard cell and the corner information of the circuit module, wherein the corner information includes but is not limited to the process, voltage and temperature information of the circuit module.
[0073] Optionally, the input information of the model also includes the transition time (transition index) of the voltage on the input pin of the circuit module and / or the load index (load index) of the output pin of the circuit module. The transition index is used to indicate the time when the voltage waveform input to the circuit module changes from low to high, or from high to low. It should be understood that Figure 1 Different input information in the multi-task learning model shown can represent different types of input information, or different types of input information. For example, Figure 1 The input information 4 in the figure can represent the load index. When the input voltage has multiple transition times, the input information 2 and the input information 3 can simultaneously represent the transition index. For example, the transition index 0 of the input information 2 represents the transition time from low to high voltage, and the transition index 1 of the input information 3 represents the transition time from high to low voltage, etc.
[0074] It should be understood that in a multi-task learning model, since the embedding modules have the same or similar structure, they can provide extracted features for multiple prediction tasks at the same time. Correspondingly, since the features can be reused, each prediction module can obtain any required feature combination from the input information for task prediction. For example, Figure 1In the example, prediction module 1 can use the features extracted by embedding module 1, embedding module 2, and embedding module 3 to perform a prediction task, while prediction module 2 can use the features extracted by embedding module 1, embedding module 2, and embedding module 4 to perform another prediction task, and prediction module 3 can also use the features extracted by embedding module 1 and embedding module 3 to perform a prediction task. In some possible implementations, when the prediction task requires only a single independent feature, the feature extracted by the embedding module can be directly output as a result, such as the feature extracted by embedding module 1 from input information 1 in the figure.
[0075] Optionally, in some possible implementations, multiple embedding modules of the multi-task learning model may have the same structure. Through the above scheme, the relationship between the library feature parameters can be characterized in common, thereby reducing the overfitting problem during separate modeling and improving the accuracy of library feature parameter modeling prediction.
[0076] Combine the following Figures 2 to 4 , describe in detail the method for predicting library characteristic parameters of the present application.
[0077] Figure 2 FIG. 1 is a schematic flow chart of a method for predicting library characteristic parameters provided in an embodiment of the present application. Figure 2 As shown, the method includes the following steps.
[0078] S210: Obtain a training sample set.
[0079] For example, in step S210, the computing device may obtain a training sample set for training the multi-task learning model. Specifically, the training sample set may include at least one first state of the circuit module and values of multiple library feature parameters in at least one first state of the circuit module, wherein at least one first state may be at least one PVTcorner of the instance.
[0080] For example, the model needs to perform prediction tasks on leakage, peak current, power, min period, setup, hold, delay, and transition of the circuit module. Leakage, peak current, power, minperiod, setup, hold, delay, and transition can be called the 8 library feature parameters of the circuit module. The training sample set needs to include the values of the above 8 library feature parameters when the cell is in one or more PVT corners, so that the multi-task learning model can establish a prediction model based on the training sample set to predict the values of the above 8 library feature parameters when the cell is in other PVT corners.
[0081] Optionally, before the training sample set is used to train the multi-task learning model, outliers in the values of multiple library feature parameters included in the training sample set can be removed. In the chip design process, the data in the training sample set is usually obtained through simulation testing. Since the simulation test may also produce errors that do not match the actual situation, the values of the library feature parameters in the training sample set may also have error values. If the model is directly trained using training samples containing error values, the fitted prediction model will deviate from the actual situation, affecting the accuracy of the prediction. Therefore, by removing abnormal library feature parameter values in the training samples before training, the interference of noise data in the training samples can be reduced, thereby improving the accuracy of the library feature parameter modeling prediction.
[0082] Optionally, the computing device may remove abnormal values in the values of the library feature parameters by replacing the abnormal values in the training sample set with undefined values (not aumber, NaN). Figure 3 is a schematic diagram of the process of replacing outliers in the training sample set. Figure 3 As shown, the matrix on the left represents the training sample set before replacement, and each data in the matrix represents a value of a library feature parameter, wherein the data in the same column of the matrix can represent the values of the same library feature parameter in different states, and the data in the same row can represent the values of different library feature parameters in the same state. Figure 3 Medium 24 and v 32 Indicates the value of the abnormal library characteristic parameter. If the abnormal library characteristic parameter value is directly deleted, the number of samples may be reduced. The missing samples may cause some data to fail to fit. For example, the overall data fitting of the second and third rows of the matrix in the figure will be affected. Therefore, if Figure 3 As shown in the matrix on the right, the matrix represents the training sample set after replacement. 24 and v 32 is replaced by NaN. NaN is a type of numeric data that computing devices can recognize, so Figure 3 The data in the left and right matrices are the same, that is, removing outliers will not reduce the number of samples, thus avoiding interference with the model training caused by removing outliers.
[0083] In some possible implementations, the computing device may remove abnormal values in the training sample set according to the determined value range. For example, the computing device may obtain the value ranges of multiple library feature parameters, and replace the values of the library feature parameters that exceed the value range in the training sample set with undefined values. It should be understood that the value ranges of multiple library feature parameters refer to the value ranges of one or more library feature parameters in the multiple library feature parameters to be predicted. That is, the value range may include the value ranges of all library feature parameters in the training sample set, or may only include the values of some library feature parameters in the training sample set. The computing device replaces the values that exceed the range in the corresponding library feature parameters in the training sample set with undefined values according to the range of the library feature parameters included in the value range, thereby removing abnormal values. Specifically, the above-mentioned determined value range may be input by the user or may be pre-stored in the computing device, and the source of the value range is not specifically limited in this application. Through the above scheme, the abnormal values in the training sample set are removed by a given value range, so that the prior experience of the tester can be used to optimize the training process of the model, thereby improving the accuracy of the modeling prediction of the library feature parameters.
[0084] In some other possible implementations, the computing device can autonomously select an appropriate range to remove outliers from the training sample set. For example, the computing device can determine multiple candidate removal thresholds, and then fit a machine learning model to the training sample set after removing outliers corresponding to each removal threshold, and select the removal threshold corresponding to the model with the lowest average relative error with the training sample set after fitting to remove outliers from the training sample set. Specifically, the computing device first determines m removal thresholds δ = {δ1 … δ m}, m is a positive integer greater than 1. Then, m subsets N1 to N m , where m subsets correspond to m elimination thresholds one by one, and each subset in the m subsets is the part of the multiple library feature parameters of the training sample set that meets the corresponding elimination threshold. For example, the elimination threshold δ1 corresponds to the subset N1, that is, N1 is the subset consisting of the remaining elements after deleting the elements exceeding the threshold δ1 in the training sample set N. Then, each subset in the m subsets is fitted according to the machine learning model to determine the m fitting results N′1 to N′ corresponding to the m subsets one by one. m, where the fitting result refers to the value of the library characteristic parameter in the corresponding subset predicted by the fitted model. For example, by fitting the value of the library characteristic parameter included in the subset N1, a model for representing the value of the library characteristic parameter can be obtained. The set of values of the library characteristic parameter in the first state predicted by the model is the fitting result N′1 corresponding to the subset N1. By analogy, each other subset can also obtain the corresponding fitting model and the fitting result predicted by the model. Then determine the average relative error between each fitting result and the corresponding subset in the multiple fitting results. For example, assuming that the subset N1 contains k elements, the corresponding fitting result N′1 also contains k elements, and the k elements in N′1 correspond one-to-one to the k elements in N1. The average value of the absolute value of the difference between the k groups of corresponding elements is the average relative error between N1 and N′1, that is, the average relative error corresponding to the elimination threshold δ1. By analogy, the average relative error corresponding to each elimination threshold can be obtained. Finally, the first elimination threshold is determined from the m elimination thresholds. The first elimination threshold is the elimination threshold with the smallest average relative error among the m elimination thresholds, and the library feature parameters in the training sample set that exceed the first elimination threshold are replaced with undefined values. Through the above scheme, in the absence of an input value range, the prediction model can autonomously select a suitable range to eliminate outliers in the training sample set based on the fitting accuracy of the machine learning model under different thresholds, thereby improving the flexibility and scope of application of library feature parameter modeling and prediction.
[0085] It should be understood that the above two methods of removing outliers from the training sample set can be used in combination. For example, first remove outliers from the training sample set according to the determined value range, and when the removal effect cannot meet the accuracy requirements of the training model, the computing device can autonomously select a smaller range of removal thresholds within the determined value range to remove outliers from the training sample set.
[0086] S220: Train a multi-task learning model according to the training sample set.
[0087] For example, in step S220, the computing device may use the training sample set obtained in S210 to train a multi-task learning model. Specifically, the multi-task learning model may be as follows: Figure 1In the multi-task learning model shown, the input information of the model includes the state of the circuit module, and the output information of the model is the values of multiple library feature parameters to be predicted. The multi-task learning model takes at least one first state included in the training sample set as input, and takes the values of multiple library feature parameters included in the training sample set in at least one first state as output supervision, and performs supervised training on the model. Among them, the state of the circuit module can be the PVT corner of the instance, including but not limited to the process, voltage and temperature information of the circuit module. Optionally, the input information of the model may also include transition index and / or load index information. The multi-task model algorithm includes but is not limited to multilayer perceptron (MLP), residual network (ResNet), transformer neural network model (transformer model), etc.
[0088] Optionally, in some possible implementations, the training of multi-task learning can be performed based on the dependency between the library feature parameters to be predicted and the input information. Specifically, the computing device can obtain the dependency between each of the multiple library feature parameters and the input information of the multi-task learning model, and train the multi-task learning model based on the training sample set and the dependency. The dependency refers to which one or several models' input information each library feature parameter is related to. The dependency can be input by the user or preset in the computing device, so that the multi-task learning model can be trained according to the default dependency when the user does not input the dependency. Table 1 is an example of a default dependency:
[0089] Table 1
[0090] Library feature parameters Dependencies leakage, peak current, power instance, corner min period, setup, hold instance, corner, transition index delay, transition instance, corner, transition index, load index
[0091] As shown in Table 1, in the default dependency, the library feature parameter leakage has a dependency relationship with the instance and corner in the input information, that is, the value of the leakage current is related to the circuit module and the state of the circuit module. Similarly, the library feature parameters peak current and power are also related to the instance and corner in the input information, respectively, the library feature parameters min period, setup and hold are related to the instance, corner and transition index in the input information, and the library feature parameters delay and transition are related to the instance, corner, transition index and load index in the input information. By modeling the dependency relationship between the library feature parameters and the input information of the multi-task learning model, the prediction module corresponding to the library feature parameters in the model only needs to establish a connection with the embedded module corresponding to the input information with the dependency relationship, thereby reducing the complexity of the model and improving the efficiency and accuracy of the library feature parameter modeling prediction.
[0092] Optionally, in some possible implementations, after the model training is completed and before it is used to predict the unknown library feature parameter value, the accuracy of the model can be evaluated according to the training sample set. Specifically, the computing device can determine the value of each of the multiple library feature parameters in at least one first state of the circuit module according to the trained multi-task learning model, that is, use the model to predict the value of the known library feature parameter in the training sample set. Since the value of the known library feature parameter has the training sample set as a comparison, it can be used to evaluate the prediction result of the model. Specifically, the computing device can determine the average relative error between the value of each of the multiple library feature parameters determined by the multi-task learning model in at least one first state and the training sample set. For example, assuming that the training sample set includes N samples, each sample includes the values of k library feature parameters in the corresponding state, N and k are both positive integers greater than 1, and the computing device needs to evaluate the prediction accuracy of the jth library feature parameter among the k library feature parameters, then the model predicts the value of the jth library feature parameter of each of the N samples under the corresponding conditions, and calculates the average relative error between the N predicted values and the N sample values. The average relative error can be calculated according to the following formula:
[0093]
[0094]
[0095] Where l is the average relative error of the j-th library feature parameter, N is the number of samples in the training sample set, i represents the i-th sample in N samples, and j represents the j-th library feature parameter in k library feature parameters. is the value of the jth library feature parameter of the i-th sample in the training sample set. f(cell,corner,idx) represents the value of the library feature parameter under the corresponding conditions predicted by the multi-task learning model. Cell and corner are used to represent the state of the circuit module, and idx is other possible inputs of the model, including but not limited to transition index and load index. It is used to indicate whether the value of the j-th library feature parameter of the i-th sample in the training sample set is replaced by an undefined value due to an abnormality. When it is not an undefined value Therefore, when the value of the library characteristic parameter is replaced by an undefined value, the value of the library characteristic parameter is not used as a reference for prediction accuracy.
[0096] According to the above formula, the computing device can obtain the average relative error of each library feature parameter in the k library feature parameters. After that, the computing device can determine at least one library feature parameter whose corresponding average relative error is greater than the threshold value among the multiple library feature parameters, wherein the threshold value refers to the threshold value of the average relative error of each library feature parameter, and when the average relative error corresponding to the library feature parameter is greater than the corresponding threshold value, it indicates that the library feature parameter does not meet the accuracy range required for prediction, and when the average relative error corresponding to the library feature parameter is less than or equal to the corresponding threshold value, it indicates that the library feature parameter meets the accuracy range required for prediction. It should be understood that the threshold value of the average relative error of each library feature parameter can be input by the user or preset in the computing device, and this application does not make specific restrictions on this. After determining the library feature parameters that do not meet the accuracy range required for prediction among the multiple library feature parameters, the computing device can re-eliminate the outliers in the value of the at least one library feature parameter in the training sample set, and retrain the multi-task learning model according to the training sample set after the outliers are eliminated. The method for eliminating outliers in the training sample set can refer to the relevant description in the aforementioned step S210, which will not be repeated here.
[0097] It should be understood that the above process of evaluating whether the average relative error of each library feature parameter meets the accuracy requirement for prediction can be performed repeatedly, that is, the above method can be repeated for evaluation after each round of retraining, and the values of the library feature parameters that do not meet the threshold are again eliminated and the model is retrained until the average relative errors of all library feature parameters meet the threshold requirements and the model training step is completed. Figure 4 is a schematic diagram of the above process. Figure 4As shown, the input training sample set is first subjected to outlier removal, and outlier removal can be completed based on the value range or machine learning. The multi-task learning model is trained according to the training sample set after the outliers are removed, and the accuracy of the training results is evaluated to see whether they meet the threshold requirements. When the accuracy does not meet the requirements, the outlier removal and the training steps of the multi-task learning model are repeated until the accuracy of the training results meets the threshold requirements; when the accuracy meets the threshold requirements, the training is completed, and the target feature parameters are predicted using the model. Among them, the value range and dependency of the library feature parameters are optional inputs, because when there is no corresponding input, the computing device can also complete the removal of feature values and / or the training of the model according to other methods. The specific implementation method can refer to the corresponding description in the previous embodiment. Through the above scheme, after the model is trained, the known library feature parameters in the training sample set are predicted by the model, and the accuracy of the model prediction can be tested. When the prediction result does not meet the required accuracy, the training sample set can be further outlier removed and retrained until the model meets the required prediction accuracy, thereby improving the accuracy of the library feature parameter modeling prediction.
[0098] S230: Determine values of a plurality of library feature parameters in at least one second state of the circuit module according to the trained multi-task learning model.
[0099] For example, in step S230, the computing device may use the multi-task learning model trained in S220 to predict the values of multiple library feature parameters in unknown states. Specifically, at least one second state refers to a state of the circuit module to be predicted, and the values of the multiple library feature parameters in at least one second state are unknown, so the multi-task learning model can be used to predict the values of the unknown library feature parameters, thereby completing the values of the library feature parameters of the circuit module.
[0100] Through the technical solution of the embodiment of the present application, a library feature parameter prediction model of the circuit module is established through a multi-task learning model, which can predict multiple library feature parameters at the same time based on input information, so that the time required for prediction does not increase with the increase in the number of library feature parameters, thereby improving the efficiency of library feature parameter modeling and prediction.
[0101] Combination of the above Figures 2 to 4 The method embodiment of predicting library characteristic parameters provided by the present application is described below. Figure 5 to Figure 6 , an embodiment of the device for predicting library characteristic parameters provided in this application is described.
[0102] Figure 5 A schematic structural block diagram of an apparatus 500 for predicting library characteristic parameters provided in an embodiment of the present application is shown.
[0103] like Figure 5As shown, the device 500 includes: an acquisition module 510, a training module 530, and a prediction module 550.
[0104] Specifically, the acquisition module 510 is used to acquire a training sample set, where the training sample set includes at least one first state of the circuit module and values of multiple library feature parameters in the at least one first state of the circuit module.
[0105] Specifically, the training module 530 is used to train a multi-task learning model according to a training sample set, wherein the input information of the multi-task learning model includes the state of the circuit module, and the output information of the multi-task learning model is the values of multiple library feature parameters.
[0106] Optionally, the state of the circuit module includes but is not limited to the process of the circuit module, the voltage of the circuit module and the temperature of the circuit module.
[0107] Optionally, the input information of the multi-task learning model also includes a transition time of a voltage on an input pin of the circuit module and / or a load capacitance of an output pin of the circuit module.
[0108] Optionally, the multi-task learning model includes multiple embedding modules, and the multiple embedding modules are used to extract multiple different types of information from the input information, and the structures of the multiple embedding modules are the same.
[0109] Optionally, the training module 530 is specifically used to obtain a dependency relationship between each library feature parameter in a plurality of library feature parameters and input information of the multi-task learning model; and train the multi-task learning model according to the training sample set and the dependency relationship.
[0110] Specifically, the prediction module 550 is used to determine the values of multiple library feature parameters in at least one second state of the circuit module according to the trained multi-task learning model.
[0111] Optionally, the apparatus 500 may further include a removal module 520 for removing abnormal values from the values of multiple library feature parameters in the training sample set before training the multi-task learning model according to the training sample set.
[0112] Optionally, the elimination module 520 is specifically configured to obtain a value range of a plurality of library feature parameters; and replace the values of the library feature parameters in the training sample set that are beyond the value range with undefined values.
[0113] Optionally, the elimination module 520 is specifically used to determine multiple elimination thresholds; determine multiple subsets in the training sample set according to the multiple elimination thresholds, the multiple subsets correspond one-to-one to the multiple elimination thresholds, and each subset in the multiple subsets is the part of the values of multiple library feature parameters in the training sample set that meets the corresponding elimination threshold; fit each subset in the multiple subsets according to the machine learning model to determine multiple fitting results corresponding one-to-one to the multiple subsets; determine the average relative error between each fitting result in the multiple fitting results and the corresponding subset; determine a first elimination threshold from the multiple elimination thresholds, the first elimination threshold is the elimination threshold with the smallest corresponding average relative error among the multiple elimination thresholds; replace the values of the library feature parameters in the training sample set that exceed the first elimination threshold with undefined values.
[0114] Optionally, the device 500 may also include an evaluation module 540, which is used to determine the value of each of the multiple library feature parameters in at least one first state of the circuit module according to the multi-task learning model before determining the values of the multiple library feature parameters in at least one second state of the circuit module according to the trained multi-task learning model; determine the average relative error between the value of each of the multiple library feature parameters in at least one first state determined by the multi-task learning model and the training sample set; determine at least one library feature parameter among the multiple library feature parameters whose corresponding average relative error is greater than a threshold; re-eliminate outliers in the value of at least one library feature parameter in the training sample set; and retrain the multi-task learning model according to the training sample set after eliminating the outliers.
[0115] Among them, the above modules can be implemented by software or hardware. Exemplarily, the implementation of the training module 530 is introduced below by taking the training module 530 as an example. Similarly, the implementation of the acquisition module 510, the elimination module 520, the evaluation module 540 and the prediction module 550 can refer to the implementation of the training module 530.
[0116] As an example of a software functional unit, the training module 530 may include code running on a computing instance. Among them, the computing instance may include at least one of a physical host (computing device), a virtual machine, and a container. Furthermore, the above-mentioned computing instance may be one or more. For example, the training module 530 may include code running on multiple hosts / virtual machines / containers. It should be noted that the multiple hosts / virtual machines / containers used to run the code can be distributed in the same region (region) or in different regions. Furthermore, the multiple hosts / virtual machines / containers used to run the code can be distributed in the same availability zone (AZ) or in different AZs, each AZ including one data center or multiple data centers with close geographical locations. Among them, usually a region can include multiple AZs.
[0117] Similarly, multiple hosts / virtual machines / containers used to run the code can be distributed in the same virtual private cloud (VPC) or in multiple VPCs. Usually, a VPC is set up in a region. For cross-region communication between two VPCs in the same region and between VPCs in different regions, a communication gateway needs to be set up in each VPC to achieve interconnection between VPCs through the communication gateway.
[0118] As an example of a hardware functional unit, the training module 530 may include at least one computing device, such as a server, etc. Alternatively, the training module 530 may also be a device implemented using an application-specific integrated circuit (ASIC) or a programmable logic device (PLD). The PLD may be a complex programmable logical device (CPLD), a field-programmable gate array (FPGA), a generic array logic (GAL), or any combination thereof.
[0119] The multiple computing devices included in the training module 530 can be distributed in the same region or in different regions. The multiple computing devices included in the training module 530 can be distributed in the same AZ or in different AZs. Similarly, the multiple computing devices included in the training module 530 can be distributed in the same VPC or in multiple VPCs. The multiple computing devices can be any combination of computing devices such as servers, ASICs, PLDs, CPLDs, FPGAs, and GALs.
[0120] It should be noted that, in other embodiments, the acquisition module 510, the elimination module 520, the training module 530, the evaluation module 540 and the prediction module 550 can be used to execute any step in the above-mentioned method for predicting library characteristic parameters, and the steps that the acquisition module 510, the elimination module 520, the training module 530, the evaluation module 540 and the prediction module 550 are responsible for implementing can be specified as needed. The full functions of the operation and maintenance channel management cluster can be realized by respectively implementing different steps in the above-mentioned method for predicting library characteristic parameters through the acquisition module 510, the elimination module 520, the training module 530, the evaluation module 540 and the prediction module 550.
[0121] The present application also provides a computing device 100. Figure 6 As shown, the computing device 100 includes: a bus 102, a processor 104, a memory 106, and a communication interface 108. The processor 104, the memory 106, and the communication interface 108 communicate with each other through the bus 102. The computing device 100 can be a server or a terminal device. It should be understood that the present application does not limit the number of processors and memories in the computing device 100.
[0122] The bus 102 may be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 6 The bus 102 is represented by only one line, but it does not mean that there is only one bus or one type of bus. The bus 102 may include a path for transmitting information between various components of the computing device 100 (eg, the memory 106, the processor 104, and the communication interface 108).
[0123] The processor 104 may include any one or more of a central processing unit (CPU), a graphics processing unit (GPU), a microprocessor (MP), or a digital signal processor (DSP).
[0124] The memory 106 may include a volatile memory, such as a random access memory (RAM). The processor 104 may also include a non-volatile memory, such as a read-only memory (ROM), a flash memory, a hard disk drive (HDD), or a solid state drive (SSD).
[0125] The memory 106 stores executable program codes, and the processor 104 executes the executable program codes to respectively implement the functions of the aforementioned acquisition module, elimination module, training module, evaluation module, and prediction module, thereby implementing the aforementioned method for predicting library feature parameters. That is, the memory 106 stores instructions for executing the aforementioned method for predicting library feature parameters.
[0126] The communication interface 108 uses a command distribution module such as, but not limited to, a network interface card, a transceiver, etc. to implement communication between the computing device 100 and other devices or a communication network.
[0127] An embodiment of the present application also provides a chip, which includes a processor and a data interface. The processor reads instructions stored in a memory through the data interface to execute the above-mentioned method for predicting library feature parameters.
[0128] The present application also provides a computer program product comprising instructions. The computer program product may be software or a program product comprising instructions that can be run on a computing device or stored in any available medium. When the computer program product is run on at least one computing device, the at least one computing device is caused to execute the above-mentioned method for predicting library feature parameters.
[0129] The embodiment of the present application also provides a computer-readable storage medium. The computer-readable storage medium can be any available medium that can be stored by the computing device or a data storage device such as a data center containing one or more available media. The available medium can be a magnetic medium (for example, a floppy disk, a hard disk, a tape), an optical medium (for example, a DVD), or a semiconductor medium (for example, a solid-state hard disk), etc. The computer-readable storage medium includes instructions, and the instructions instruct the computing device to perform the above-mentioned management. The various technical features can be combined arbitrarily. In order to make the description concise, all possible combinations of the various technical features in the above embodiments are not described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0130] The above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the protection scope of the technical solutions of the embodiments of the present application.
Claims
1. A method for predicting library characteristic parameters, characterized in that: include: Acquire a training sample set, wherein the training sample set includes at least one first state of a circuit module and values of a plurality of library feature parameters in the at least one first state of the circuit module; According to the training sample set, training a multi-task learning model, wherein input information of the multi-task learning model includes the state of the circuit module, and output information of the multi-task learning model is the values of the plurality of library feature parameters; According to the trained multi-task learning model, values of the plurality of library feature parameters in at least one second state of the circuit module are determined.
2. The method according to claim 1, characterized in that: Before training the multi-task learning model according to the training sample set, the method further includes: Outliers in the values of the plurality of library feature parameters in the training sample set are eliminated.
3. The method according to claim 2, characterized in that The step of removing abnormal values from the values of the plurality of library feature parameters in the training sample set comprises: Obtaining the value ranges of the plurality of library characteristic parameters; The values of the library feature parameters in the training sample set that are beyond the value range are replaced with undefined values.
4. The method according to claim 2 or 3, characterized in that: The step of removing abnormal values from the values of the plurality of library feature parameters in the training sample set comprises: Determine multiple rejection thresholds; Determine a plurality of subsets in the training sample set according to the plurality of rejection thresholds, wherein the plurality of subsets correspond to the plurality of rejection thresholds one by one, and each subset in the plurality of subsets is a portion of the values of the plurality of library feature parameters of the training sample set that meet a corresponding rejection threshold; Fit each subset in the multiple subsets according to the machine learning model to determine multiple fitting results corresponding to the multiple subsets one by one; Determine an average relative error between each fitting result in the plurality of fitting results and the corresponding subset; Determine a first rejection threshold from the multiple rejection thresholds, where the first rejection threshold is a rejection threshold with the smallest corresponding average relative error among the multiple rejection thresholds; The values of the library feature parameters in the training sample set that exceed the first rejection threshold are replaced with undefined values.
5. The method according to any one of claims 1 to 4, characterized in that: The step of training a multi-task learning model according to the training sample set includes: Obtaining a dependency relationship between each of the plurality of library feature parameters and input information of the multi-task learning model; The multi-task learning model is trained according to the training sample set and the dependency relationship.
6. The method according to any one of claims 1 to 5, characterized in that Before determining the values of the plurality of library feature parameters in at least one second state of the circuit module according to the trained multi-task learning model, the method further includes: Determining, according to the multi-task learning model, a value of each of the plurality of library feature parameters in the at least one first state of the circuit module; Determine an average relative error between a value of each of the plurality of library feature parameters determined by the multi-task learning model in the at least one first state and the training sample set; Determine at least one library characteristic parameter among the plurality of library characteristic parameters whose corresponding average relative error is greater than a threshold; Re-eliminating abnormal values in the value of the at least one library characteristic parameter in the training sample set; Retrain the multi-task learning model based on the training sample set after removing outliers.
7. The method according to any one of claims 1 to 6, characterized in that: The state of the circuit module includes, but is not limited to: the process of the circuit module, the voltage of the circuit module and the temperature of the circuit module.
8. The method according to any one of claims 1 to 7, characterized in that The input information of the multi-task learning model also includes: the transition time of the voltage on the input pin of the circuit module and / or the load capacitance of the output pin of the circuit module.
9. The method according to any one of claims 1 to 8, characterized in that The multi-task learning model includes multiple embedding modules, which are used to extract multiple different types of information from the input information, and the multiple embedding modules have the same structure.
10. A device for predicting library characteristic parameters, characterized in that: include: An acquisition module, configured to acquire a training sample set, wherein the training sample set includes at least one first state of a circuit module and values of a plurality of library feature parameters in the at least one first state of the circuit module; A training module, used for training a multi-task learning model according to the training sample set, wherein the input information of the multi-task learning model includes the state of the circuit module, and the output information of the multi-task learning model is the values of the plurality of library feature parameters; The prediction module is used to determine the values of the plurality of library feature parameters in at least one second state of the circuit module according to the trained multi-task learning model.
11. The device according to claim 10, characterized in that The device further comprises a rejection module, which is used, before training the multi-task learning model according to the training sample set, to: Outliers in the values of the plurality of library feature parameters in the training sample set are eliminated.
12. The device according to claim 11, characterized in that The rejection module is used for: Obtaining the value ranges of the plurality of library characteristic parameters; The values of the library feature parameters in the training sample set that are beyond the value range are replaced with undefined values.
13. The device according to claim 11 or 12, characterized in that The rejection module is used for: Determine multiple rejection thresholds; Determine a plurality of subsets in the training sample set according to the plurality of rejection thresholds, wherein the plurality of subsets correspond to the plurality of rejection thresholds one by one, and each subset in the plurality of subsets is a portion of the values of the plurality of library feature parameters of the training sample set that meet a corresponding rejection threshold; Fit each subset in the multiple subsets according to the machine learning model to determine multiple fitting results corresponding to the multiple subsets one by one; Determine an average relative error between each fitting result in the plurality of fitting results and the corresponding subset; Determine a first rejection threshold from the multiple rejection thresholds, where the first rejection threshold is a rejection threshold with the smallest corresponding average relative error among the multiple rejection thresholds; The values of the library feature parameters in the training sample set that exceed the first rejection threshold are replaced with undefined values.
14. The device according to any one of claims 11 to 13, characterized in that The training module is used to: Obtaining a dependency relationship between each of the plurality of library feature parameters and input information of the multi-task learning model; The multi-task learning model is trained according to the training sample set and the dependency relationship.
15. The device according to any one of claims 11 to 14, characterized in that The apparatus further comprises an evaluation module, which is used, before determining the values of the plurality of library feature parameters in at least one second state of the circuit module according to the trained multi-task learning model, to: Determining, according to the multi-task learning model, a value of each of the plurality of library feature parameters in the at least one first state of the circuit module; Determine an average relative error between a value of each of the plurality of library feature parameters determined by the multi-task learning model in the at least one first state and the training sample set; Determine at least one library characteristic parameter among the plurality of library characteristic parameters whose corresponding average relative error is greater than a threshold; Re-eliminating abnormal values in the value of the at least one library characteristic parameter in the training sample set; Retrain the multi-task learning model based on the training sample set after removing outliers.
16. The device according to any one of claims 11 to 15, characterized in that The state of the circuit module includes, but is not limited to: the process of the circuit module, the voltage of the circuit module and the temperature of the circuit module.
17. The device according to any one of claims 11 to 16, characterized in that The input information of the multi-task learning model also includes: the transition time of the voltage on the input pin of the circuit module and / or the load capacitance of the output pin of the circuit module.
18. The device according to any one of claims 11 to 17, characterized in that The multi-task learning model includes multiple embedding modules, which are used to extract multiple different types of information from the input information, and the multiple embedding modules have the same structure.
19. A computing device, characterized in that The computer comprises a processor and a memory, wherein the processor is configured to execute instructions stored in the memory so that the computing device executes the method according to any one of claims 1 to 9.
20. A computer-readable storage medium, characterized in that: The method comprises computer program instructions which, when executed by a computing device, cause the computing device to perform the method according to any one of claims 1 to 9.
