ArticlePublisher preview available

A Timed-Value Stream Based ESL Timing and Power Estimation and Simulation Framework for Heterogeneous MPSoCs

Authors:
To read the full-text of this research, you can request a copy directly from the authors.

Abstract and Figures

Consideration of an embedded system’s timing behavior and power consumption at system-level is an ambitious task. Sophisticated tools and techniques exist for power and timing estimations of individual components such as custom hard- and software as well as IP components. In this article we present an ESL framework for timing and power aware virtual system prototyping of heterogeneous MPSoCs consisting of software, custom hardware and 3rd party IP components. In virtual platform, previously only used for functional software verification, our proposed timed value streams enable a hierarchical and composable power model. Our proposed ESL framework supports the integration of a broad range of system-level timing and power models into virtual platform. Power and timing models can either be generated from a functional C/C++ description or include state-machine based power models to existing functional and timed virtual platform (black-box) components. Our timed value stream based power model supports the run-time analysis of different platform power management strategies with configurable temporal abstraction, supporting simulation speed and accuracy trade-offs. This work evaluates timing and power back-annotation and power state machine based approaches with timed value streams in two use-cases: An MP3 decoder, compared to a power-aware ISS and gate-level simulation, and an FPGA based many-core architecture against measurements. Finally, the simulation time overhead of the proposed stream based power model is analyzed and discussed.
This content is subject to copyright. Terms and conditions apply.
Vol.:(0123456789)
International Journal of Parallel Programming (2020) 48:957–1007
https://doi.org/10.1007/s10766-020-00656-0
1 3
A Timed‑Value Stream Based ESL Timing andPower
Estimation andSimulation Framework forHeterogeneous
MPSoCs
KimGrüttner1· PhilippA.Hartmann1· TiemoFandrey1· KaiHylla1·
DanielLorenz1· StefanHauck‑Stattelmann2· BjörnSander3·
OliverBringmann4· WolfgangNebel1,5· WolfgangRosenstiel4
Received: 28 May 2015 / Accepted: 14 February 2020 / Published online: 5 March 2020
© Springer Science+Business Media, LLC, part of Springer Nature 2020
Abstract
Consideration of an embedded system’s timing behavior and power consumption
at system-level is an ambitious task. Sophisticated tools and techniques exist for
power and timing estimations of individual components such as custom hard- and
software as well as IP components. In this article we present an ESL framework for
timing and power aware virtual system prototyping of heterogeneous MPSoCs con-
sisting of software, custom hardware and 3rd party IP components. In virtual plat-
form, previously only used for functional software verification, our proposed timed
value streams enable a hierarchical and composable power model. Our proposed
ESL framework supports the integration of a broad range of system-level timing and
power models into virtual platform. Power and timing models can either be gen-
erated from a functional C/C++ description or include state-machine based power
models to existing functional and timed virtual platform (black-box) components.
Our timed value stream based power model supports the run-time analysis of differ-
ent platform power management strategies with configurable temporal abstraction,
supporting simulation speed and accuracy trade-offs. This work evaluates timing
and power back-annotation and power state machine based approaches with timed
value streams in two use-cases: An MP3 decoder, compared to a power-aware ISS
and gate-level simulation, and an FPGA based many-core architecture against meas-
urements. Finally, the simulation time overhead of the proposed stream based power
model is analyzed and discussed.
Keywords ESL timing and power instrumentation· Power state machine· Timed
value stream power model
* Kim Grüttner
kim.gruettner@offis.de
Extended author information available on the last page of the article
Content courtesy of Springer Nature, terms of use apply. Rights reserved.
Chapter
Although SystemC is considered the most promising language for SoC functional modeling, it does not come with built-in power modeling capabilities. This chapter presents PowerSC, a power estimation framework which instruments SystemC for power characterization, modeling and estimation. Since it is entirely based on SystemC, PowerSC allows consistent power modeling from ESL to lower abstraction levels. Section 8.1 shows how SystemC is extended to handle power, Sect. 8.2 describes how to instrument SystemC descriptions for power estimation, Sect. 8.3 illustrates how PowerSC allows the user to perform estimations either at RTL or gate-level with the same instrumentation. Finally, Sect. 8.4 explains how to put PowerSC to work.
Conference Paper
Due to the ever-increasing complexity of embedded system design and the need for rapid system evaluations in early design stages, the use of simulation models known as Virtual Platforms (VPs) has been of utmost importance as they enable system modeling at higher abstraction levels. Since a typical VP features multiple interdependent components, VP libraries have been utilized in order to provide off-the-shelf models of commonly-used hardware components, such as CPUs. However, CPU power estimation is not adequately supported by existing VP libraries. In addition, existing power characterization techniques require architectural details which are not always available in early design stages. To address this issue, this paper proposes a technique for power annotation of CPU models targeting SystemC/TLM libraries in order to enable the accurate power estimation at higher abstraction levels. By using a set of benchmarks on a power-annotated SystemC/TLM model of Xilinx Microblaze soft-processor, it is shown that the proposed approach can achieve accurate power estimation in comparison to the real-system power measurements as the estimation error ranges from 0.47% up to 6.11% with an average of 2%.
Conference Paper
Due to the increasing algorithmic complexity of todays embedded systems, the consideration of extra-functional properties becomes even more important. Extra-functional properties such as timing, power consumption, and temperature need to be validated against given requirements on all abstraction levels. For timing and power consumption at RT- and gate-level, several techniques are available, but there is still a lack of methods and tools for power estimation and analyses at electronic system level (ESL) and above. Existing ESL methods in most cases use state-based methods for power simulation. This may lead to inaccurate results, especially for data-dependent designs. In this paper, we extend the Power State Machine (PSM) model for black-box RTL IP components with a mechanism that employs data-dependent switching activity using the Hamming distance (HD). In pipelined designs, we do not only consider the input HD but also the HDs of the internal pipeline stage registers. Since these registers of black-box IP are not observable from the outside, our model derives the internal HDs from previous input data. The results show that our extension achieves up to 38% better results than the previous PSM approach and up to 35% better results compared to a model considering only the input HD.
Conference Paper
System-level simulations are an important part in the design flow for today's complex systems-on-a-chip. Trade-off analysis during architectural exploration as well as run-time reconfiguration of applications and their mapping require detailed introspection of the dynamic effects on the target platform. Additionally, extra-functional properties like power consumption and performance characteristics are important metrics to assess the quality of a design. In this paper, we present an advanced framework for instrumentation, pre-processing and recording of functional and extra-functional properties in SystemC-based virtual prototyping simulations. The framework is based on a hierarchy of so-called timed value streams, allowing to address the requirements for highly configurable, dynamic architectures while allowing tailored introspection of the required system characteristics under analysis.
Conference Paper
Using low-power symmetric multi-cores on FPGAs are becoming ubiquitous in embedded computing. This is due to the emergence of power and energy as key design metrics, as important as performance. This leads to the requirement of powerful and reliable tools, which will be used for the Design Space Exploration (DSE) based on power and energy at an early stage of the design flow. In this paper, we propose a simulation based virtual platform power and energy estimation tool for heterogeneous Multiprocessor System-on-Chip (MPSoC) based platforms. There are two steps involved in this tool development. The first step is power model generation. For the power model development, we used functional parameters to set up generic power models for different parts of the system. This is a one-time activity. In the second step, a simulation based virtual platform framework is developed to accurately grab the activities used in the related power models generated in the first step. The combination of the two steps leads to a hybrid power estimation, which gives a better trade-off between accuracy and speed. The proposed tool is automated and also scalable for exploring complex embedded multi-core architectures. The efficiency of the proposed tool is validated through multi-cores/processors designed around the FPGAs and extended to accommodate futuristic multi-processors/cores for a reliable energy based DSE. The obtained power/energy estimation results provide less than 4% of error for single core processor, 8% for dual-core processor and 9% for heterogeneous MPSoC based systems when compared to real board measurements.
Conference Paper
Transaction-level models (TLMs) address the problems of designing increasingly complex systems by raising the level of design abstraction above RTL. However, TLM terminology is presently a subject of contentious debate and a coherent set of TLM use-models have not been proposed. In this paper we propose a variety of TLM use-models that reveal paths through the TLM abstraction levels for various types of system. We begin by stating the abstraction levels that comprise 'transaction-level' and identify roles and responsibilities that apply within the use-models. We then take each use-model and discuss the type of system it applies to, the TLM abstraction levels it supports, and the design activites applied at those levels. We also consider the distribution of modeling effort between the various design rôles and apply that to descriptions of various use-model design flows.
Chapter
This chapter covers the area of early system-level power analysis and algorithmic-level power estimation. The techniques presented here shall enable the reader to understand the underlying concepts as well as the chances and limitations of tools, which shall guide the designers in optimizing the global system architecture for low power and help them selecting and further optimizing the algorithms to be implemented at lower levels. The figure of merit in reducing the power consumption by making the right decisions during this early phase covers several orders of magnitude. Just to illustrate the potential: there exist dozens of known and well-understood sorting algorithms. They all perform exactly the same task: take a set of objects and put them in an order according to the chosen sorting criterion. Despite the exactly same functional behavior, however, they all perform differently with respect to the computation time, memory usage, and the power consumption. Similarly, different algorithms with equivalent functionality are known for Fourier transform, compression, and many other functions, which are copiously used in mobile multimedia applications. Selecting the most power efficient one can be a product-differentiating factor.