Integration of Static Worst-Case Execution Time and Stack Usage Analysis for Embedded Systems Software in a Cloud-Based Development Environment

Author(s):  
Jürgen Hausladen ◽  
Florian Gerstmayer ◽  
Thomas Jerabek ◽  
Martin Horauer

New applications relying on embedded systems technologies often come with an increased number of features and functionalities. For instance, improved safety, reliability, usability or reduced power consumption are commonly encountered aspects. Those in turn, however, come usually at the cost of increased complexity. Managing the latter can become challenging, especially when looking at (worst-case) execution times or memory usage of embedded systems. In particular, many applications, e.g., safety-critical or real-time applications, require knowledge about the worst-case execution time and stack usage to make a clear statement on important system parameters such as the overall performance or schedulability with regard to critical deadlines. Assessing these properties require elaborate tool support and profound knowledge and skills of the developers. In this paper, an evaluation of static analysis tools and the required steps to integrate these in a existing development environment is presented. The toolchain is either considered to be offline or deployed within a cloud-based integrated development environment. The cloud-approach enables ubiquitous access to the results and a unique visualization across multiple platforms. Additionally, the results are demonstrated along with a small use case.

2014 ◽  
Vol 651-653 ◽  
pp. 624-629
Author(s):  
Liang Liang Kong ◽  
Lin Xiang Shi ◽  
Lin Chen

Most embedded systems are real-time systems, so real-time is an important performance metric for embedded systems. The worst-case execution time (WCET) estimation for embedded programs could satisfy the requirement of hard real-time evaluation, so it is widely used in embedded systems evaluation. Based on sufficient survey on the progress of WCET estimation around the world, it proposes a new classification of WCET estimation. After introducing the principle of WCET estimation, it mainly demonstrates various types of technologies to estimate WCET and classifies them into two main streams, namely, static and dynamic WCET estimations. Finally, it shows the development of WCET analysis tools.


Author(s):  
Ayman K. Gendy ◽  
Michael J. Pont

As embedded designs become more widespread and complex they tend to use more modern processors. Such processors will often include features (such as pipelines, caches, and branch predictors) which help to improve performance. While such performance improvements are welcome, they come at the price of predictability. More specifically, the use of advanced processor hardware makes it difficult to predict the worst-case execution time (WCET) of tasks. As part of an effort to address these problems, Puschner and Burns (Proc. 7th IEEE International Workshop on Object-Oriented Real-Time Dependable Systems, Jan. 2002) proposed the “single path programming paradigm”. As its name implies program code written according to this paradigm has only one execution path: this helps to ensure a constant execution time. Yet there are two problems with the techniques described by Puschner and Burns: (i) they are applicable only to hardware which supports “conditional move” or similar instructions; (ii) their balancing approach increases power consumption. In the present paper, we begin to address both of these problems with a set of novel code-balancing techniques. The effectiveness of these new techniques is explored by means of an empirical study.


Sign in / Sign up

Export Citation Format

Share Document