Cost Estimation for Configurable Model-Driven SoC Designs Using Machine Learning

The complexity of today's System on Chips (SoCs) forces designers to use higher levels of abstractions. Here, early design decisions are conducted on abstract models while different configurations describe how to actually realize the desired SoC. Since those decisions severely affect the final costs of the resulting SoC (in terms of utilized area, power consumption, etc.), a fast and accurate cost estimation is essential at this design stage. Additionally, the resulting costs heavily depend on the adopted logic synthesis algorithms, which optimize the design towards one or more cost objectives. But how to structure a cost estimation method that supports multiple configurations of an SoC, implemented by use of different synthesis strategies, remains an open question. In this work, we address this problem by providing a cost estimation method for a configurable SoC using Machine Learning (ML). A key element of the proposed method is a data representation which describes SoC configurations in a way that is suited for advanced ML algorithms. Experimental evaluations conducted within an industrial environment confirm the accuracy as well as the efficiency of the proposed method.

[1]  Xindong Wu,et al.  Object Detection With Deep Learning: A Review , 2018, IEEE Transactions on Neural Networks and Learning Systems.

[2]  Guigang Zhang,et al.  Deep Learning , 2016, Int. J. Semantic Comput..

[3]  Robert Wille,et al.  Accurate Cost Estimation of Memory Systems Inspired by Machine Learning for Computer Vision , 2019, 2019 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[4]  Rogério Schmidt Feris,et al.  A Unified Multi-scale Deep Convolutional Neural Network for Fast Object Detection , 2016, ECCV.

[5]  Jiajun Zhang,et al.  Deep Neural Networks in Machine Translation: An Overview , 2015, IEEE Intelligent Systems.

[6]  Kevin P. Murphy,et al.  Machine learning - a probabilistic perspective , 2012, Adaptive computation and machine learning series.

[7]  Radford M. Neal Pattern Recognition and Machine Learning , 2007, Technometrics.

[8]  Ivar Jacobson,et al.  The unified modeling language reference manual , 2010 .

[9]  Lorenzo Servadei,et al.  A Machine Learning Approach for Area Prediction of Hardware Designs from Abstract Specifications , 2018, 2018 21st Euromicro Conference on Digital System Design (DSD).

[10]  Wolfgang Ecker,et al.  Metamodeling and Code Generation in the Hardware/Software Interface Domain , 2017, Handbook of Hardware/Software Codesign.

[11]  Xiang Zhang,et al.  Character-level Convolutional Networks for Text Classification , 2015, NIPS.

[12]  Fernando Herrera,et al.  Modeling Hardware/Software Embedded Systems with UML/MARTE: A Single-Source Design Approach , 2016 .

[13]  Ronald L. Rivest,et al.  Introduction to Algorithms , 1990 .

[14]  Padma Dandannavar,et al.  Application of machine learning techniques to sentiment analysis , 2016, 2016 2nd International Conference on Applied and Theoretical Computing and Communication Technology (iCATccT).

[15]  Derek Chiou,et al.  GPGPU performance and power estimation using machine learning , 2015, 2015 IEEE 21st International Symposium on High Performance Computer Architecture (HPCA).

[16]  Krste Asanovic,et al.  The RISC-V Instruction Set Manual Volume 2: Privileged Architecture Version 1.7 , 2015 .

[17]  Shinya Takamaeda-Yamazaki,et al.  Pyverilog: A Python-Based Hardware Design Processing Toolkit for Verilog HDL , 2015, ARC.

[18]  Gabriel H. Loh,et al.  Machine Learning for Performance and Power Modeling of Heterogeneous Systems , 2018, 2018 IEEE/ACM International Conference on Computer-Aided Design (ICCAD).

[19]  Jason Helge Anderson,et al.  Sensei: An area-reduction advisor for FPGA high-level synthesis , 2018, 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[20]  Aaron C. Courville,et al.  FiLM: Visual Reasoning with a General Conditioning Layer , 2017, AAAI.

[21]  Richard Socher,et al.  Learned in Translation: Contextualized Word Vectors , 2017, NIPS.

[22]  C.J.H. Mann,et al.  A Practical Guide to SysML: The Systems Modeling Language , 2009 .

[23]  John Wawrzynek,et al.  Chisel: Constructing hardware in a Scala embedded language , 2012, DAC Design Automation Conference 2012.

[24]  Frank P. Coyle,et al.  From UML to HDL : a Model Driven Architectural Approach to Hardware-Software Co-Design , 2005 .

[25]  Ronald Waxman,et al.  Hardware Description Languages , 1994, Mixed-Signal Embedded Systems Design.

[26]  Yunsup Lee,et al.  The RISC-V Instruction Set Manual , 2014 .

[27]  Robert Wille,et al.  Accurate Cost Estimation of Memory Systems Utilizing Machine Learning and Solutions from Computer Vision for Design Automation , 2020, IEEE Transactions on Computers.