Next Article in Journal
AMT Starting Control as a Soft Starter for Belt Conveyors Using a Data-Driven Method
Previous Article in Journal
The Relationship between Preseason Common Screening Tests to Identify Inter-Limb Asymmetries in High-Level Senior and Professional Soccer Players
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Fast Dynamic IR-Drop Prediction Using Machine Learning in Bulk FinFET Technologies

Microelectronics and Microprocessor Institute, School of Computer, National University of Defense Technology, Changsha 410073, China
*
Author to whom correspondence should be addressed.
Symmetry 2021, 13(10), 1807; https://doi.org/10.3390/sym13101807
Submission received: 23 August 2021 / Revised: 13 September 2021 / Accepted: 21 September 2021 / Published: 28 September 2021

Abstract

:
IR-drop is a fundamental constraint by almost all integrated circuits (ICs) physical designs, and many iterations of timing engineer change order (ECO), IR-drop ECO, or other ECO are needed before design signoff. However, IR-drop analysis usually takes a long time and wastes so many resources. In this work, we develop a fast dynamic IR-drop predictor based on a machine learning technique, XGBoost, and the prediction method can be applied to vector-based and vectorless IR-drop analysis simultaneously. Correlation coefficient is often used to characterize the symmetry of prediction data and golden data, and our experiments show that the prediction correlation coefficient is more than 0.96 and the average error is no more than 1.3 mV for two industry designs, which are of 2.4 million and 3.7 million instances, respectively, and that the analysis is speeded up over 4.3 times compared with the IR-drop analysis by commercial tool, Redhawk.

1. Introduction

With technologies scaling down continuously, IR-drop, especially dynamic IR-drop, has brought about great concern for very large-scale integration (VLSI) physical designers and testers [1,2,3,4]. Lower voltage supply makes the signal slower [5] and IR-drop makes the cell delay larger [6], then decreasing the circuit performance or leading to timing failure or even increasing yield loss. Therefore, IR-drop signoff has become a significant step of physical design before tapping out. However, IR-drop analysis was often conducted by simulation-based commercial electronic design automation (EDA) tools, which were known to be accurate but very time-consuming. For a concrete industrial design, each iteration takes hours. Because no designer can hardly fix all IR-drop violations during one iteration, there needs to be dozens of ECO iterations to fix IR-drop violations, timing violations as well as design rule violations.
Figure 1 has shown the traditional IR-drop signoff flow for industrial design. The imported design data in one IR-drop analysis were very similar with that in the next IR-drop analysis because one ECO iteration only changes several to dozens of thousands of cells and nets, which is often less than 1% of the total design. Therefore, machine learning is suitable for predicting the IR-drop value of those ECO cells and then accelerates the flow runtime.
Until now, machine learning has been explored in IR-drop analysis. Linear regression is one of the simplest machine learning models. It was used to predict the IR-drop of each instance for at-speed scan test [6], for the power in scan-based testing is of great concern. The support vector machine (SVM) is another important machine learning model which was used to predict IR-drop [7,8]. The two kinds of algorithms were useful in some special designs and test fields, in which the IR-drop behaves in a linear relationship with the input features. Convolutional neural network (CNN) is a widespread machine learning model used in many research fields, especially image and voice recognition, and it was used for IR-drop prediction as well [9,10] because an IR-drop map can be expressed as a figure. Regression tree is another widespread used machine learning model for many industrial application fields and it was also used for IR-drop estimation [10,11,12,13]. XGBoost [14], a gradient boosting regression tree, was proposed in 2016, which is proved to be behaving perfectly in most non-image application fields. In addition, XGBoost has achieved amazing results compared with other decision trees or even with some deep learning algorithms [10,15], and it has been used for IR-drop prediction as well [11,12,13].
A major weakness shared by most of the previous works was that they focused on vector-based analysis but ignored vectorless IR-drop. On one hand, vector-based analysis depends on simulation patterns from value change dump (VCD) files, thus vector-based analysis is also called VCD-based analysis. However, while vectorless analysis does not need VCD files for dynamic IR-drop analysis, the physical designer is often unable to obtain accurate power simulation patterns in the early and middle stage of the design process, therefore vectorless analysis is more desirable for power analysis especially in the early stage of the design process. On another hand, the IR-drop from vectorless analysis and vector-based analysis is not the same, and vector-based analysis cannot cover all application scenarios, thus the physical designer needs to analyze vectorless and vector-based dynamic IR-drop before tapping out.
To overcome this shortcoming, in this paper we have proposed a machine learning method based on the XGBoost framework which can provide a simultaneous prediction of vectorless IR-drop and vector-based IR-drop. We put more emphasis on simultaneous prediction in our experiments, considering industrial demand and its higher difficulty and usability. The proposed method in this work addresses these challenges by its innovative pre-processed features and XGBoost algorithm. In addition, our experiment results also show that there is no need to update the machine learning model after each iteration of timing ECO or other ECO; it would be better to be updated for industrial designs after 10~30 thousands of ECO actions. Therefore, we can accelerate the design process with the proposed technique to cut down iteration time and we just run commercial IR-drop analysis tools when updating the machine learning model and signoff.
The rest of this paper is organized as follows. Section 2 shows the proposed technique. Section 3 presents the experiment setup. Section 4 shows experimental results based on two industry designs. Finally, Section 5 concludes this paper.

2. Proposed Technique

2.1. Proposed Flow

The proposed IR-drop signoff flow is shown in Figure 2. In the early stage of physical design, dynamic IR-drop analysis should be conducted using commercial EDA tools such as Redhawk [16]. Then, based on the design data and power data from IR-drop analysis, some features should be extracted for each cell to train a machine learning model. Later, as the design is improved gradually, the IR-drop prediction can be carried out with the trained model, and then the designer can use the prediction data to fix IR-drop violations after each iteration of timing ECO or IR-drop ECO.
In the middle stage of physical design, the register transfer level (RTL) netlist and design floorplan are fixed, and then when the design data is also stable, the physical designer is recommended to run IR-drop analysis with commercial tool to update the trained model, leading to improved predicting accuracy in the later stage. Before signoff, if all predicted IR-drop violations by machine learning are fixed, the designer should perform IR-drop analysis with a commercial tool as well to check whether all real IR-drop violations are truly fixed. If there are true violations, the designer should update the trained model and repeat the aforementioned steps.

2.2. Nature Feature Extraction

Excessive IR-drop is caused by either larger resistance or larger current according to Ohm’s Law, therefore an excellent design is of suitable power delivery network (PDN) and suitable local current density. PDN with uniform power grid means uniform resistance distribution in general. However, many designs need a non-uniform power grid, thus the resistance distribution is not uniform anymore and the pull-up resistance and pull-down resistance of each cell should be considered. The pull-up resistance and pull-down resistance are named Rpu and Rpd, respectively, and they can be extracted by a commercial tool such as Redhawk.
Current is a more critical factor related to IR-drop, but the current of each cell or each instance is not a constant value for the equivalent resistance of each cell, or each instance is not constant. The current of each cell is composed of static current and dynamic current; the static current is constant and is also called leakage current (Il), while the dynamic current (Idyn) varies as a signal switches. The scaled dynamic current (SIdyn) is impacted by the signal toggle rate (Tog), and it is calculated by Idyn × Tog, and scaled total current (SIA) is calculated by SIdyn + Il. SIA and Il are both extracted as input features. In addition, the peak current (Ip) has a significant effect on dynamic IR-drop so it must be extracted as a feature as well.
Since cell power consumption is proportional to cell current, cell power is taken into account as an input feature. There are three types of power consumptions, called leakage power (Pl), internal power (Pi), and switching power (Ps), respectively. The leakage power Pl is consumed by unintended leakage, the internal power Pi is the power dissipated by internal parasitic capacitance of each cell, and the switching power Ps is the power dissipated by the output load capacitance of each cell. During dynamic IR-drop analysis, the internal power and switching power is scaled by toggle rate, and the toggle rate should be extracted as a feature as well. Since the toggle rate varies as VCD files vary, the scaled Pi (SPi) and scaled Ps (SPs) are calculated by Pi × Tog and Ps × Tog, and the total scaled power (SPA) is calculated by SPi + SPs + Pl. SPi, SPs, Pl, and SPA are all extracted as input features.
The switching power is related with the output load capacitance and the transitions of all input signals. If a cell is moved to another location during ECO iteration, the drive load of the cell is changed but we cannot obtain an updated switching power based on static timing analysis (STA) data. Thus, the output load capacitance (CL) should be extracted as an input feature. Besides, the number of input pins of each cell is not the same, and then the transitions of input signals are inconvenient as input features, and we do not consider it.
During each timing ECO or other ECO action, the location of some instance may be changed, and the cell type of some instance may be changed, thus some instance may be inserted or removed. Therefore, the x, y coordinate of a cell instance and the cell type of a cell instance should be extracted as input features. The cell type often includes three factors: the function such as AND or OR, the drive strength, and the voltage threshold (VT) type. Because most ECO actions only change the VT type and drive strength with the function keeping the same, the cell type can be split into three features: cell function (CF), drive strength (DS), and VT type (VTT). In total, all nature features extracted are shown in Table 1.

2.3. Neighboring Feature Construction

The IR-drop of an instance is also impacted by its neighbor cells, as shown in Figure 3. The IR-drop of inst_A may be larger than that of inst_B though the total power of inst_A is less than inst_B for the cell density of inst_A is larger. Therefore, the power features of the neighboring cell should be considered. The cell density is not uniform everywhere, so we use 11 × 11 grids to construct the same number of neighboring features for each cell. Figure 3 illustrates smaller version (3 × 7) grids, where the coordinate of the center grid is the coordinate of the target cell. The SPA of the grid is the sum of the product of the SPA of each instance and its occupied area ratio related with this grid. For inst_A in Figure 3, it lies across two grids, 30% area of inst_A is in the left grid and 70% area of inst_A in the right grid, and 10% area of inst_B locates at the same grid with inst_A. Therefore, the SPA of the left grid and the right grid is 0.3 × SPA(inst_A) and 0.7 × SPA(inst_A) + 0.1 × SPA(inst_B) respectively.
In addition, there exist multi-row standard cells in commercial bulk FinFET technology, such as inst_C shown in Figure 3. The power calculation is similar to those single-row cells. The height of each grid is equal to the height of a standard cell row and the width of each grid is several or decades times of one site’s width. In this work, the height of each grid is 0.3 um, and the width of each grid is 1.28 um, which is 20 times of the one site’s width. The selection of grid numbers depends on experience, and it can be varied with the change of technology.
Toggle rate Tog is also used to build neighboring features to improve prediction accuracy and its calculation is the same as that for SPA.
The density of the scaled total current SIA and the peak current Ip should also be considered, and they are extracted using 11 × 11 grids as well. However, the relationship between IRD with current is not the same as that between IRD with power assumption. As shown in Figure 4, the IRD of inst1 is proportional to the sum of I1_up, I1_down, I2_up, and I3_down. For simplicity, we suppose that the effect of I1_up and I1_down is the same and that they are the half of the current of inst1. For Ip and SIA of inst1 in Figure 4, we can achieve Ip′ and SIA′ of inst1, which are Ip1 + (Ip2 + Ip3)/2, and SIA1 + (SIA2 + SIA3)/2, respectively. For neighboring features about peak current and total current, we also use 11 × 11 grids, and the same calculation method is adopted, but the parameters Ip and SIA are replaced by Ip′and SIA′.
Totally, there are 484 (11 × 11 × 4) neighboring features extracted as well as 16 nature features. Totally, there are 500 features in total for each cell.

2.4. Design Matrix Construction

Many designs have large amounts of instances, for example, several million or dozens of millions. If all instances are considered simultaneously, the design matrix is too large. In order to mitigate the training scale, many researchers are inclined to partition the floorplan and then select parts of IRD critical partitions to construct a training model, such as in [10,11,12,13]. This method can really save training time, but the cell IRD in other unselected partitions is not completely considered. Besides, during hold ECO, hold buffers are inserted almost everywhere and there are ECO actions in each partition. Then the partition method will overlook part of IRD prediction of ECO cells or other cells neighboring the ECO cells. Therefore, in this work, we divide the floorplan into several partitions so that there exists 0.4–1 million instances in each partition. For each partition, we combine the top selection with random selection to construct the design matrix.
For vectorless and VCD-based dynamic IRD prediction, the top selection means selecting 120,000 instances of which the IR-drop is the worst in the partition and the random selection means selecting another 180,000 instances randomly in the partition. By this method, we use 40% samples to characterize the worst IR-drop cells and 60% samples to characterize other cells in each partition, and then the IRD value from zero to the worst are all considered. In total, 300,000 samples are selected to construct a design matrix for each partition, 40% samples are from the top selection and 60% samples are from a random selection. The selection number is determined based on experience. Besides, for those blocks or partitions with less than 300,000 instances, all instances can be selected into the design matrix.

2.5. Training Model

We use XGBoost as the machine learning models. A given dataset is of form D = (xi, yi), where |D| = N, xiRm, yiR, N is the total number of cells, m is the feature dimension, xi is just the input features of the ith instance, and yi is just the golden IRD value of ith instance provided by commercial tools such as Redhawk. The XGBoost ensembles K additive functions to achieve the predicted IRD value by Formula (1).
y ˜ i = Φ ( x ) = k = 1 K f k ( x i ) , f k F
where F is the space of regression trees and fk is kth tree function. The goal is to minimize the following objective function shown in Formula (2).
L ( Φ ) = i l ( y i , y ˜ i ) + k Ω ( f k )
where each l ( y i , y ˜ i ) is a differentiable convex loss function that characterizes the difference between the predicted IRD y ˜ i and the golden IRD yi. In our application, it is defined by mean square error (MSE). Ω ( f k ) is a regularization term that penalizes the complexity of the tree structure and prevents overfitting.

3. Experiments Setup

Two industry design blocks, DesignA and DesignB, have been evaluated by our proposed method. The voltage supply for both designs is 0.75 V, and the profiles of these two circuits are shown in Table 2. The second column shows the dynamic analysis mode where one VCD is available for DesignA while two VCDs are available for DesignB. For both designs, the golden IRD values are provided by Redhawk, the mean IRD and the max IRD values are shown in the fourth and fifth column, respectively. The number of IRD violations means an IRD value larger than 8% of the voltage supply in dynamic mode, which is shown in the sixth column.
We use correlation coefficient (CC), Mean Absolute Error (MAE), Max Error (MaxE), Root Mean Square Error (RMSE), and Normalized Root Mean Square Error (NRMSE) to evaluate the performance of our method and which are defined in following equations. CC is defined in Equation (3) and it is a number between 0 and 1, where 1 means completely correlated. MAE and MaxE are defined in Equations (4) and (5), RMSE and NRMSE are defined in Equations (6) and (7).
C C = i = 1 N ( y i m e a n ( y ) ) ( y ˜ i m e a n ( y ˜ ) ) i = 1 N ( y i m e a n ( y ) ) 2 i = 1 N ( y ˜ i m e a n ( y ˜ ) ) 2
M A E = i = 1 N | | y i y ˜ i | | N
M a x E = max i [ 1 , N ] ( y i y ˜ i )
R M S E = i = 1 N ( y i y ˜ i ) 2 N
N R M S E = R M S E m e a n ( y ) × 100 %

4. Results

4.1. IR-Drop Prediction before ECO

The design data can be from any design database in which the routing is finished. In this work, the data are from the database where placement and routing (PR) are finished and no ECO action is carried out. For DesignA and DesignB, there are four partitions shown in Figure 5. The training data are generated by top selection and random selection described in the context, the training data numbers are 300 k, which is about 1/4–2/3 of total cell instances in each partition in DesignA and DesignB, respectively. We also select the total instances in each partition to construct one group of testing data to validate whether our model can successfully predict all IRD values, and the results are shown in Table 3 and Table 4.
As shown in Table 3, the MAE is less than 0.42 mV and the CC is larger than 0.982 for VCD-based dynamic mode in each partition for DesignA. The MAE is less than 0.847 mV and the CC is larger than 0.974 for vectorless dynamic mode in each partition.
As shown in Table 4, the MAE is less than 1116 mV and the CC is larger than 0.961 for VCD1-based dynamic mode in each partition for DesignB. The MAE is less than 1.26 mV and the CC is larger than 0.960 for vectorless dynamic mode in each partition.
Figure 6 shows the correlation between the predicted IRD and the golden IRD for DesignA. Figure 6a–d is the result for VCD-based dynamic mode while Figure 6e–h is for vectorless dynamic mode. The results show high correlation of our prediction in both dynamic modes. For vectorless dynamic mode, as shown in Figure 6e–h, the correlation of the prediction for low IRD cells is smaller than that for high IRD cells. This is due to the selection for low IRD cells being far less than 70%. However, the designer does focus on the prediction of high IRD and IRD violations. The limited loss of prediction accuracy of low IRD has no effect on the prediction of high IRD and we would rather accelerate the training process by this method.
Because the cell numbers in each partition of DesignB are much larger than that of DesignA, the CC and MAE are often larger than DesignA in each partition, that is to say, the prediction accuracy of DesignB is decreased slightly due to the larger design volume. However, as shown in Figure 7, the correlation of high IRD values is high though the correlation of low IRD values is decreased due to the larger design volume, which means the proposed method can be competent at the prediction accuracy of high IRD values and IRD violations.
Figure 8 shows the error distribution of predicted IRD for DesignA and DesignB. The Y-axis is the number of cell instances, and the X-axis of the figure is golden IRD minus predicted IRD. The left part of each figure in Figure 8 shows the overpredicted cell instances while the right part of each figure shows the underpredicted cell instances. Most of the prediction (>99%) errors are smaller than ±5 mV for DesignA and DesignB for all dynamic modes.

4.2. IR-Drop Prediction after ECO

Several iterations of ECO actions have been completed on the design database of DesignA and DesignB, respectively. The ECO actions include sizing-up or sizing-down cells, inserting buffer, removing buffer, VT-swapping and moving cells, aiming to fix timing, and fixing some IR-drop violations. Totally, there are 10,057 and 91,916 ECO actions for DesignA and DesignB, respectively. We used the trained XGBoost model to predict the IR-drop of the cell instances in ECO database and we obtained the golden IR-drop of all cells from Redhawk.
The comparison of the predicted IRD with the golden IRD is shown in Table 5 and Table 6. As shown in Table 5, the CC is larger than 0.901 and 0.971 for VCD-based and vectorless mode, respectively, and the MAE is less than 1189 mV and 0.888 mV for VCD-based and vectorless mode, respectively. As shown in Table 6, the CC is larger than 0.915 and 0.882 for VCD-based and vectorless mode, respectively, and the MAE is less than 1955 mV and 2370 mV for VCD-based and vectorless mode, respectively. Compared with the predicted results shown in Table 3 and Table 4, the CC is decreased slightly, MAE is increased, and MaxE is also increased. That is to say, the prediction accuracy is decreased slightly due to dozens of thousands of ECO actions.
Figure 9 shows the difference between the predicted IRD with the golden IRD after ECO. For DesignA, after 10,057 ECO actions, the difference between the predicted high IRD and the golden high IRD is increased, especially in VCD-based dynamic mode. For DesignB, after more than 90,000 ECO actions, the difference between the predicted high IRD and the golden high IRD is increased as well, especially in dynamic analysis with VCD2. That is to say, the prediction accuracy of high IRD values and IRD violations is decreased after ECO.
However, as shown in Table 5 and Table 6, the CC for most cases is still larger than 0.9 and the MAE is less than 1.2 mV and 2.4 mV for DesignA and DesignB, respectively. In addition, the MaxE is less than 21 mV and 40 mV for DesignA and DesignB, respectively, which means the prediction accuracy is still high.
In order to illustrate the prediction effect more clearly, the IRD maps are shown in Figure 10 and Figure 11. Figure 10a is the predicted IRD map of DesignA in VCD-based dynamic mode, Figure 10b is the corresponding golden IRD map, and they are nearly the same. Figure 10c,d is the predicted IRD map and the golden IRD map of DesignA in vectorless dynamic mode, and they are nearly the same as well. Figure 11a,b is the predicted IRD map and the golden IRD map of DesignB in VCD1-based dynamic mode, which are nearly the same. Figure 11c,d is the predicted IRD map and golden IRD map of DesignB in VCD2-based dynamic mode, which are also nearly the same. Figure 11e,f is the predicted IRD map and golden IRD map of DesignB in vectorless dynamic mode, which are nearly the same as well. Therefore, the prediction by the proposed model is also successful after dozens of thousands of ECO actions.
In order to validate whether the true IR-drop violations are predicted correctly furthermore, two more evaluation metrics, Precision and Recall, are introduced. Predicted IR pass (PP) means those cells of which the predicted IRD is less than 60 mV (=8% × 750 mV), Predicted IR Fail (PF) means those cells of which the predicted IRD is larger than 60 mV. Golden IR pass (GP) means those cells who’s golden IRD is less than 60 mV while Golden IR Fail (GF) means those cells who’s golden IRD is larger than 60 mV. Then, Precision and Recall are defined as follows.
{ T r u e P o s i t i v e   ( T P ) = P F G F T r u e N e g a t i v e   ( T N ) = P P G P F a l s e N e g a t i v e   ( F N ) = P F G P F a l s e N e g a t i v e   ( F N ) = P P G F }
{ P r e c i s i o n = | T P | | T P | + | F P | R e c a l l = | T P | | T P | + | F N | }
For DesignA and DesignB, the Precision and Recall is shown in Table 7. For DesignA, no IRD violation exists in vectorless dynamic mode, and the Precision and Recall is 0.95 and 0.98, respectively, in VCD-based dynamic mode, which means that 95% of the predicted IRD violations are really IRD violations, and that 98% of IRD violations are successfully identified. For DesignB, the Precision is larger than 0.794 for three dynamic modes, which means more than 79.4% of the predicted IRD violations are really IRD violations, and the Recall is over 0.382, which means more than 38.2% of IRD violations can be identified successfully. The Recall of DesignB is small because the ECO actions are more than 90,000, and then the training model should be updated based on the ECO database for DesignB to promote Recall for next ECO actions. From this view, maybe after 10,000 to 20,000 ECO actions, the training model should be updated.

4.3. Runtime Comparison

The experiments are performed on an Intel Xeon Processor W-2245, and the runtime of the work is shown in Table 8. For DesignA, we spend 21–24 min to construct the training matrix, and the training time is about 30–31 min, thus the total training time is about 52~54 min. All instances in the design are taken into account during the predicting matrix construction so that this process cost over 1 h. The predicting time is less than 1 min. If we use Redhawk to run dynamic IRD analysis, we need about 5.5 h and 6.6 h for DesignA and DesignB, respectively. After one or several iterations of ECO, we should reconstruct the predicting matrix, then obtain the predicted IRD values of all instances with the training model, which cost about 1.18 h and 1.5 h, respectively. Therefore, the dynamic IRD analysis is speeded up over 4.3 times for both designs.

5. Conclusions

A machine-learning-based dynamic IRD predictor was proposed to speed up IRD analysis for ECO over 4.3 times. We proposed the construction approach of a design matrix based on partition, top selection, and random selection, which is the trade-off of prediction accuracy and training time. The extracted features take geometry size, power, and physical information of instances into account. The experiments show that the prediction CC is more than 0.96 and MAE is less than 1.3 mV on the 2.4 million-cells and 3.7 million-cells industry designs in all dynamic modes. Precision and Recall for IRD violations after over 10,000 ECO actions in DesignA are 0.95 and 0.98, and Precision for IRD violations after over 90,000 ECO actions in DesignB is still more than 0.79. We think it is suitable for the designer to update the machine learning model after 10~30 thousand ECO actions, and our directions for ongoing work include: (i) improving the speed of our method, (ii) improving the accuracy of the prediction by optimizing feature extraction, and (iii) and extracting feature for power-mesh, allowing the machine learning model to be more suitable for non-uniform PDN.

Author Contributions

Conceptualization, P.H. and C.M.; methodology, P.H.; software, P.H.; validation, C.M. and Z.W.; investigation, P.H.; resources, P.H.; data curation, P.H. and Z.W.; writing—original draft preparation, P.H. and Z.W.; writing—review and editing, P.H.; visualization, P.H. and C.M.; funding acquisition, P.H. All authors have read and agreed to the published version of the manuscript.

Funding

This research was funded by National Science Foundation of China, grant number 61704192.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

The data presented in this study are available on request from the corresponding author. The data are not publicly available due to their storage in private networks.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Shepard, K.L.; Narayanan, V. Noise in deep submicron digital design. In Proceedings of the International Conference on Computer Aided Design, San Jose, CA, USA, 9–13 November 1997; pp. 524–531. [Google Scholar]
  2. Tehranipoor, M.; Butler, K.M. Power supply noise: A survey on effects and research. IEEE Des. Test Comput. 2010, 2, 51–67. [Google Scholar] [CrossRef]
  3. Nithin, S.K.; Shanmugam, G.; Chandrasekar, S. Dynamic voltage (IR) drop analysis and design closure: Issues and challenges. In Proceedings of the IEEE International Symposium on Quality Electronic Design, San Jose, CA, USA, 15 April 2010; pp. 611–617. [Google Scholar]
  4. Holst, S.; Schneider, E.; Wen, X.; Kajihara, S.; Kochte, M.A. Timing-Accurate Estimation of IR-Drop Impact on Logic- and Clock-Paths during At-Speed Scan Test. In Proceedings of the IEEE Asian Test Symposium, Hiroshima, Japan, 21–24 November 2016; pp. 19–24. [Google Scholar]
  5. Pengcheng, H.; Shuming, C.; Jianjun, C. Simulation study of N-hit SET variation in differential cascade voltage switching logical circuits. Sci. China Inf. Sci. 2015, 58, 022401. [Google Scholar]
  6. Yamato, Y.; Yoneda, T.; Hatayama, K.; Inoue, M. A fast and accurate per-cell dynamic IR-drop estimation method for at-speed scan test pattern validation. In Proceedings of the IEEE International Test Conference, Anaheim, CA, USA, 5–8 November 2012; pp. 1–8. [Google Scholar]
  7. Chapelle, O.; Haffner, P.; Vapnik, V. Support vector machines for histogram-based image classification. IEEE Trans. Neural Netw. 1999, 5, 1055–1064. [Google Scholar] [CrossRef] [PubMed]
  8. Ye, F.; Firouzi, F.; Yang, Y.; Chakrabarty, K.; Tahoori, M.B. On-chip droop-induced circuit delay prediction based on support-vector machines. IEEE Trans. Comput. Aided Des. Integr. Circuits Syst. 2016, 4, 665–678. [Google Scholar] [CrossRef]
  9. Xie, Z.; Ren, H.; Khailany, B.; Sheng, Y.; Santosh, S.; Hu, J.; Chen, Y. PowerNet: Transferable dynamic IR drop estimation via maximum convolutional neural network. In Proceedings of the Asia and South Pacific Design Automation Conference, Beijing, China, 13–16 January 2020; pp. 13–18. [Google Scholar]
  10. Fang, Y.; Lin, H.; Su, M.; Li, C.; Fang, E.J. Machine-learning-based dynamic IR drop prediction for ECO. In Proceedings of the IEEE/ACM International Conference on Computer Aided Design, San Diego, CA, USA, 5–8 November 2018; pp. 1–7. [Google Scholar]
  11. Ho, C.; Kahng, A. IncPIRD: Fast learning-based prediction of incremental IR drop. In Proceedings of the IEEE/ACM International Conference on Computer Aided Design, Denver, CO, USA, 4–7 November 2019; pp. 1–8. [Google Scholar]
  12. Lin, H.; Fang, Y.; Liu, S.; Chen, J.X.; Fang, J.W. Automatic IR-drop ECO using machine learning. In Proceedings of the IEEE International Test Conference in Asia, Taipei, Taiwan, 23–25 September 2020; pp. 7–12. [Google Scholar]
  13. Pao, C.; Su, A.; Lee, Y. XGBIR: An XGBoost-based IR drop predictor for power delivery network. In Proceedings of the Design, Automation & Test in Europe Conference & Exhibition (DATE), Grenoble, France, 9–13 March 2020; pp. 1307–1310. [Google Scholar]
  14. Chen, T.; Guestrin, G. Xgboost: A scalable tree boosting system. In Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, San Francisco, CA, USA, 13–17 August 2016; pp. 785–794. [Google Scholar]
  15. Pu, Q.; Li, Y.; Zhang, H.; Yao, H.; Zhang, B.; Hou, B.; Li, L.; Zhao, Y.; Zhao, L. Screen efficiency comparisons of decision tree and neural network algorithms in machine learning assisted drug design. Sci. China Cemet. 2019, 62, 506–514. [Google Scholar] [CrossRef]
  16. Apache RedHawk User Manual. 2019. Available online: https://pdfcoffee.com/redhawk-pdf-free.html (accessed on 21 September 2021).
Figure 1. Traditional IR-drop signoff flow in physical design.
Figure 1. Traditional IR-drop signoff flow in physical design.
Symmetry 13 01807 g001
Figure 2. The proposed IR-drop signoff flow in physical design.
Figure 2. The proposed IR-drop signoff flow in physical design.
Symmetry 13 01807 g002
Figure 3. Power density map of SPA and its transferred power grid map. The SPA of the grid is the sum of the product of the SPA of each instance and its occupied area ratio related with this grid. A total of 30% area of inst_A is in grid1, 10% area of inst_B is in grid2, so the SPA of grid1, grid2, and grid3 is 0.3 × SPA(inst_A), 0.7 × SPA(inst_A)+ 0.1 × SPA(inst_B), 0.9 × SPA(inst_B), respectively.
Figure 3. Power density map of SPA and its transferred power grid map. The SPA of the grid is the sum of the product of the SPA of each instance and its occupied area ratio related with this grid. A total of 30% area of inst_A is in grid1, 10% area of inst_B is in grid2, so the SPA of grid1, grid2, and grid3 is 0.3 × SPA(inst_A), 0.7 × SPA(inst_A)+ 0.1 × SPA(inst_B), 0.9 × SPA(inst_B), respectively.
Symmetry 13 01807 g003
Figure 4. The relationship between IRD of an instance and the current of related instances. IRD of inst1 is composed of IRD_vdd1 and IRD_vss1. IRD_vdd1 is related with the pull-up current of inst1 and inst2, i.e., I1_up and I2_up. IRD_vss1 is related with the pull-down current of inst1 and inst2, i.e., I1_down and I2_down. Therefore, the IRD of inst1 can be supposed to be proportional to (I1_up + I1_down + I2_up + I3_down).
Figure 4. The relationship between IRD of an instance and the current of related instances. IRD of inst1 is composed of IRD_vdd1 and IRD_vss1. IRD_vdd1 is related with the pull-up current of inst1 and inst2, i.e., I1_up and I2_up. IRD_vss1 is related with the pull-down current of inst1 and inst2, i.e., I1_down and I2_down. Therefore, the IRD of inst1 can be supposed to be proportional to (I1_up + I1_down + I2_up + I3_down).
Symmetry 13 01807 g004
Figure 5. The partition for DesignA and DesignB: (a) there are 4 partitions in DesignA, which is recoded as P1–P4; (b) there are 4 partitions in DesignB, which is recoded as P1–P4 as well.
Figure 5. The partition for DesignA and DesignB: (a) there are 4 partitions in DesignA, which is recoded as P1–P4; (b) there are 4 partitions in DesignB, which is recoded as P1–P4 as well.
Symmetry 13 01807 g005
Figure 6. The predicted IR-drop versus golden IR-drop for DesignA before ECO, (a) for Partition 1 with VCD-based dynamic mode, (b) for Partition 2 with VCD-based dynamic mode, (c) for Partition 3 with VCD-based dynamic mode, (d) for Partition 4 with VCD-based dynamic mode, (e) for Partition 1 with vectorless dynamic mode, (f) for Partition 2 with vectorless dynamic mode, (g) for Partition 3 with vectorless dynamic mode, (h) for Partition 4 with vectorless dynamic mode.
Figure 6. The predicted IR-drop versus golden IR-drop for DesignA before ECO, (a) for Partition 1 with VCD-based dynamic mode, (b) for Partition 2 with VCD-based dynamic mode, (c) for Partition 3 with VCD-based dynamic mode, (d) for Partition 4 with VCD-based dynamic mode, (e) for Partition 1 with vectorless dynamic mode, (f) for Partition 2 with vectorless dynamic mode, (g) for Partition 3 with vectorless dynamic mode, (h) for Partition 4 with vectorless dynamic mode.
Symmetry 13 01807 g006
Figure 7. The predicted IR-drop versus golden IR-drop for DesignB before ECO, (a) for Partition 1 with VCD-based dynamic mode, (b) for Partition 2 with VCD-based dynamic mode, (c) for Partition 3 with VCD-based dynamic mode, (d) for Partition 4 with VCD-based dynamic mode, (e) for Partition 1 with vectorless dynamic mode, (f) for Partition 2 with vectorless dynamic mode, (g) for Partition 3 with vectorless dynamic mode, (h) for Partition 4 with vectorless dynamic mode.
Figure 7. The predicted IR-drop versus golden IR-drop for DesignB before ECO, (a) for Partition 1 with VCD-based dynamic mode, (b) for Partition 2 with VCD-based dynamic mode, (c) for Partition 3 with VCD-based dynamic mode, (d) for Partition 4 with VCD-based dynamic mode, (e) for Partition 1 with vectorless dynamic mode, (f) for Partition 2 with vectorless dynamic mode, (g) for Partition 3 with vectorless dynamic mode, (h) for Partition 4 with vectorless dynamic mode.
Symmetry 13 01807 g007
Figure 8. The error distribution of the prediction before ECO, (a) for DesignA with VCD-based dynamic mode, (b) for DesignA with vectorless dynamic mode, (c) for DesignB with dynamic mode with VCD1, (d) for DesignB with dynamic mode with VCD2, (e) DesignB with vectorless dynamic mode.
Figure 8. The error distribution of the prediction before ECO, (a) for DesignA with VCD-based dynamic mode, (b) for DesignA with vectorless dynamic mode, (c) for DesignB with dynamic mode with VCD1, (d) for DesignB with dynamic mode with VCD2, (e) DesignB with vectorless dynamic mode.
Symmetry 13 01807 g008
Figure 9. The predicted IR-drop versus golden IR-drop after ECO, (a) for DesignA with VCD-based dynamic mode, (b) for DesignA with vectorless dynamic mode, (c) for DesignB with dynamic mode with VCD1, (d) for DesignB with dynamic mode with VCD2, (e) for DesignB with vectorless dynamic mode.
Figure 9. The predicted IR-drop versus golden IR-drop after ECO, (a) for DesignA with VCD-based dynamic mode, (b) for DesignA with vectorless dynamic mode, (c) for DesignB with dynamic mode with VCD1, (d) for DesignB with dynamic mode with VCD2, (e) for DesignB with vectorless dynamic mode.
Symmetry 13 01807 g009
Figure 10. (a) The predicted IR-drop map for DesignA after ECO with VCD-based dynamic mode, (b) the golden IR-drop map for DesignA after ECO with VCD-based dynamic mode, (c) the predicted IR-drop map for DesignA after ECO with vectorless dynamic mode, (d) the golden IR-drop map for DesignA after ECO with vectorless dynamic mode.
Figure 10. (a) The predicted IR-drop map for DesignA after ECO with VCD-based dynamic mode, (b) the golden IR-drop map for DesignA after ECO with VCD-based dynamic mode, (c) the predicted IR-drop map for DesignA after ECO with vectorless dynamic mode, (d) the golden IR-drop map for DesignA after ECO with vectorless dynamic mode.
Symmetry 13 01807 g010
Figure 11. (a) The predicted IR-drop map for DesignB after ECO with dynamic mode with VCD1, (b) the golden IR-drop map for DesignB after ECO with dynamic mode with VCD1, (c) the predicted IR-drop map for DesignB after ECO with dynamic mode with VCD2, (d) the golden IR-drop map for DesignB after ECO with dynamic mode with VCD2, (e) the predicted IR-drop map for DesignB after ECO with vectorless dynamic mode, (f) the golden IR-drop map for DesignB after ECO with vectorless dynamic mode.
Figure 11. (a) The predicted IR-drop map for DesignB after ECO with dynamic mode with VCD1, (b) the golden IR-drop map for DesignB after ECO with dynamic mode with VCD1, (c) the predicted IR-drop map for DesignB after ECO with dynamic mode with VCD2, (d) the golden IR-drop map for DesignB after ECO with dynamic mode with VCD2, (e) the predicted IR-drop map for DesignB after ECO with vectorless dynamic mode, (f) the golden IR-drop map for DesignB after ECO with vectorless dynamic mode.
Symmetry 13 01807 g011
Table 1. Specifications of the extracted nature features from each instance itself.
Table 1. Specifications of the extracted nature features from each instance itself.
Nature FeaturesSpecifications
x, yThe x, y coordinate of an instance on layout design
CFThe code that represents the cell function of an instance
DSThe drive strength of an instance
VTTThe voltage threshold type of an instance
RpuThe effective pull-up resistance of an instance
RpdThe effective pull-down resistance of an instance
CLThe output load capacitance of an instance
TogThe signal toggle rate of an instance
IlThe leakage current of an instance
SIAThe total of scaled dynamic current and leakage current of an instance
IpThe peak current of an instance
PlThe leakage power of an instance
SPiThe scaled internal power of an instance
SPsThe scaled switching power of an instance
SPAThe scaled total power of an instance
Table 2. The profiles of evaluated circuit designs, i.e., DesignA and DesignB.
Table 2. The profiles of evaluated circuit designs, i.e., DesignA and DesignB.
Circuit DesignDesignADesignB
Power Analysis ModeVectorlessVCDVectorlessVCD1VCD2
Number of cell instance2.4 million2.4 million3.7 million3.7 million3.7 million
Mean IRD (mV)15.312.1916.843.548.42
Max IRD (mV)55.7165.273.590.991.4
Number of IRD violations0576928173
Table 3. The prediction results of DesignA before ECO.
Table 3. The prediction results of DesignA before ECO.
PartitionsPower Analysis ModeInst NumbersMean IRD (mV)CCMAE (mV)MaxE (mV)RMSE
P1vectorless545,77215.970.9760.84515.491.14
VCD545,7721.690.9820.2677.100.38
P2vectorless444,51114.690.9820.78416.031.07
VCD444,5111.810.9860.2918.950.43
P3vectorless590,38516.030.9740.84716.551.14
VCD590,3852.740.9880.42014.140.59
P4vectorless460,38314.220.9790.80714.891.11
VCD360,3832.430.9920.33310.880.49
Table 4. The prediction results of DesignB before ECO.
Table 4. The prediction results of DesignB before ECO.
PartitionsPower Analysis ModeInst NumbersMean IRD (mV)CCMAE (mV)MaxE (mV)RMSE
P1vectorless1,177,52516.370.960126021.531.67
VCD11,177,5251.700.9760.31214.290.48
VCD21,177,52511.380.972111621.441.57
P2vectorless947,56214.130.960108721.921.47
VCD1947,5622.010.9870.27618.090.45
VCD2947,5624.130.9610.77722.171.17
P3vectorless782,72116.810.963117623.441.58
VCD1782,7216.870.9780.76623.121.12
VCD2782,7219.630.980107726.091.58
P4vectorless807,02920.420.981109219.811.47
VCD1807,0294.870.9740.65223.790.96
VCD2807,0297.840.9650.92325.601.31
Table 5. The prediction results of DesignA after ECO.
Table 5. The prediction results of DesignA after ECO.
PartitionsPower Analysis ModeInst NumbersMean IRD (mV)CCMAE (mV)MaxE (mV)RMSE
P1vectorless545,79516.030.9730.88816.631.19
VCD545,7951.740.9700.32020.530.52
P2vectorless444,54314.750.9800.83518.861.14
VCD444,5431.800.9790.32413.30.53
P3vectorless590,41016.100.9710.88220.971.19
VCD590,4103.980.904118922.451.88
P4vectorless460,40014.120.9750.88716.301.20
VCD460,4002.080.9010.88220.020.98
Table 6. The prediction results of DesignB after ECO.
Table 6. The prediction results of DesignB after ECO.
PartitionsPower Analysis ModeInst NumbersMean IRD (mV)CCMAE (mV)MaxE (mV)RMSE
P1vectorless1,185,52316.250.8822.34732.912.99
VCD11,185,5231.690.9620.37931.040.66
VCD21,185,52311.800.915195535.962.88
P2vectorless959,57714.150.908201028.902.66
VCD1959,5771.790.9640.40430.570.78
VCD2959,5774.460.9450.88734.471.36
P3vectorless812,58216.900.910237036.533.11
VCD1812,5827.120.963109137.701.68
VCD2812,58211.010.970170039.913.08
P4vectorless829,07120.630.929225636.192.95
VCD1829,0715.070.935104930.801.73
VCD2829,0715.480.921148539.501.49
Table 7. The Precision and Recall of two designs after ECO.
Table 7. The Precision and Recall of two designs after ECO.
Circuit DesignMAE (mV)MaxE (mV)CCRMSETPTNFPFNPrecisionRecall
DesignA (vectorlsess)0.87520.970.9751.1810204114800NANNAN
DesignA (VCD)0.64322.450.9251.20924620408841350.9500.980
DesignB (vectorlsess)2.24736.530.9162.9251337867172210.8670.382
DesignB (VCD1)0.73937.700.9541.4102737866787410.7940.397
DesignB (VCD2)1.52639.910.9522.4882137378151114329620.9370.419
Table 8. The runtime comparison of two designs.
Table 8. The runtime comparison of two designs.
Circuit DesignDesignA
(Vectorless)
DesignA
(VCD)
DesignB
(Vectorless)
DesignB
(VCD1)
DesignB
(VCD2)
Constructing training matrix23 min 22 s21 min 49 s24 min 7 s22 min 31 s22 min 43 s
Training30 min 11 s30 min 7 s30 min 12 s30 min 8 s30 min 9 s
Constructing predicting matrix1 h 11 min1 h 9 min1 h 36 min1 h 27 min1 h 27 min
Predicting31 s30 s39 s38 s38 s
IRD analysis by Redhawk5 h 41 min5 h 35 min6 h 57 min6 h 34 min6 h 44 min
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Huang, P.; Ma, C.; Wu, Z. Fast Dynamic IR-Drop Prediction Using Machine Learning in Bulk FinFET Technologies. Symmetry 2021, 13, 1807. https://doi.org/10.3390/sym13101807

AMA Style

Huang P, Ma C, Wu Z. Fast Dynamic IR-Drop Prediction Using Machine Learning in Bulk FinFET Technologies. Symmetry. 2021; 13(10):1807. https://doi.org/10.3390/sym13101807

Chicago/Turabian Style

Huang, Pengcheng, Chiyuan Ma, and Zhenyu Wu. 2021. "Fast Dynamic IR-Drop Prediction Using Machine Learning in Bulk FinFET Technologies" Symmetry 13, no. 10: 1807. https://doi.org/10.3390/sym13101807

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop