Combining Automated Measurement-Based Cost Modeling With Static Worst-Case Execution-Time and Energy-Consumption Analyses
Volkmar Sieh, Robert Burlacu, Timo Hönig, Heiko Janker, Phillip Raffeck, Peter Wägemann, Wolfgang Schröder‐Preikschat · IEEE Embedded Systems Letters · 2018
Predicting the temporal behavior of embedded realtime systems is a crucial but challenging task, as it is with the energetic behavior of energy-constrained systems, such as IoT devices. To carry out static analyses in order to determine the worst-case execution time or the worst-case energy consumption of tasks, cost models are inevitable. However, these models are rarely available on a fine-grained level for commercial-off-theshelf hardware platforms. In this letter, we present NEO, an end-to-end toolchain that automatically generates cost models, which are then integrated into an existing static-analysis tool. NEO exploits automatically generated benchmark programs, which are measured on the target platform and investigated in a virtual machine. Based on the gathered data, we formulate mathematical optimization problems that eventually yield both worst-case execution-time and energy-consumption cost models. In our evaluations with an embedded hardware platform (e.g., ARM Cortex-M0+), we show that the open-source toolchain is able to precisely bound programs' resources while achieving acceptable accuracy.