Explorations in Application of Machine Learning in Pre-Synthesis Power Estimation of Digital Systems
DOI:
https://doi.org/10.47611/jsr.v11i2.1627Keywords:
Power Estimation, Machine Learning, Logic Synthesis, High-level Synthesis, Leakage Power, Switching Power, Internal PowerAbstract
This paper presents an approach to exploit Machine Learning (ML) to accurately and efficiently predict power consumption in digital systems at the higher-levels of abstraction prior to synthesis. As valuable resources and much time are invested when developing new products, designers can greatly benefit to know early in the design process if the final design's power consumption is within the reasonable margins of the given constraints. This is done by analyzing the high-level models of the design (behavioral or register transfer level) and without investing resources for synthesizing the design. We have used machine learning models trained on tallies of cell groups that were parsed from gate-level netlists in order to estimate the design’s “internal”, “switching”, “leakage”, and “total” powers. Four supervised learning models, Multi-Layer Perceptron (MLP), Ridge Regression, Elastic Net, and K-Nearest Neighbors, were evaluated across three different technologies: 90 nm, 45 nm, and 15 nm cell libraries. Our experiments provide a meaningful comparison of these models for the 3 technology nodes. The most successful model in the 15 nm library was MLP, which had the smallest error in predicting total power. Additionally, MLP models improved the average error when predicting a single power component (internal, switching, or leakage), compared to simultaneously predicting all three power components in a single model.
Downloads
Metrics
References or Bibliography
P. Landman, "Low-power architectural design methodologies," Ph.D. Thesis, UC Berkeley, 2019.
J. Carloni, M. Kwon and L. Ziegler, "A learning-based recommender system for autotuning design flows of industrial high-performance processors," in Proceedings of the 56th Design Automation Conference (DAC), 2019.
E. Barboza, N. Shukla, Y. Chen and J. Hu, "Machine learning-based pre-routing timing prediction with reduced pessimism," in Proceedings of the 56th Design Automation Conference (DAC), 2019.
J. Twigg, E. Torkelson and N. Mansouri, "Predicting Formal Verification Resource Needs," Journal of Student Research (JSR)}, vol. 10, no. 4, November 2021.
G. Singh, J. Gómez-Luna, G. Mariani, G. Oliveira, S. Corda, S. Stuijk, O. Mutlu and H. Corporaal, "NAPEL: Near-memory computing application performance prediction via ensemble learning," in Proceedings of the 56th Design Automation Conference.
Synopsys, "PrimeTime," 2019. [Online]. Available: https://www.synopsys.com/implementation-and-signoff/signoff/primetime.html.
"Synopsys," July 2019. [Online]. Available: https://www.synopsys.com.
K. Buyuksahin and F. Najm, "Early power estimation for VLSI circuits," IEEE Transactions on Computer-Aided Design of Integred Circuits and Systems, vol. 24, no. 7, pp. 1076-1088, 2005.
J. Yang, L. Ma, K. Zhao, Y. Cai and T. Ngai, "Early stage real-time SoC power estimation using RTL instrumentation," in Proceedings of the 20th Asia and South Pacific Design Automation Conference (ASPDAC), 2015 .
Y. Zhou, R. Haoxing, Y. Zhang, B. Keller, B. Khailany and Z. Zhang, "PRIMAL: Power inference using machine learning," in In Proceedeings of the 56th Design Automation Conference (DAC), 2019.
F. Brglez and H. Fujiwara, "A Neutral Netlist of 10 Combinational Benchmark Circuits and a Target Translator in Fortan," in Proceedings of the International Symposium of Circuits and Systems, 1985.
F. Brglez, D. Bryan and K. Kozminski, "Combinational Profiles of Sequential Benchmark Circuits," in Proceedings of the International Symposium of Circuits and Systems, 1989.
S. Davidson, "ITC'99 Benchmark Circuits - Preliminary Results," in Preceedings of International Test Conference, 1999.
S. Yang, "Logic Synthesis and Optimization Benchmarks User Guide Version 3.0," Microelectronics Center of North Carolina, 1991.
K. McElvain, "IWLS’93 Benchmark Set: Version 4.0," in International Workshop on Logic & Synthesis, 1993.
C. Albrecht, "IWLS 2005 Benchmarks," in International Workshop on Logic Synthesis, 2005.
Synopsys, "Design Compiler," July 2019. [Online]. Available: https://www.synopsys.com/implementation-and-signoff/rtl-synthesis-test/dc-ultra.html.
"MLP Regressor," Scikit Learn, [Online]. Available: https://scikit-learn.org/stable/modules/generated/sklearn.neural_network.MLPRegressor.html.
"Ridge," Scikit Learn, [Online]. Available: https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.Ridge.html.
"Elastic Net," Scikit Learn, [Online]. Available: https://scikit-learn.org/stable/modules/generated/sklearn.linear_model.ElasticNet.html.
"K Neighbors Regressor," Scikit Learn, [Online]. Available: https://scikit-learn.org/stable/modules/generated/sklearn.neighbors.KNeighborsRegressor.html.
"SciKit learn: Machine Learning in Python," 2019. [Online]. Available: https://scikit-learn.org/stable/index.html.
Published
How to Cite
Issue
Section
Copyright (c) 2022 Kevin Hoser, Addison Raak; Nazanin Mansouri
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Copyright holder(s) granted JSR a perpetual, non-exclusive license to distriute & display this article.