Diploma and Master Theses (authored and supervised):
"Integration of Worst-Case Execution Time Analysis and C Code Synthesis";
Supervisor: P. Puschner, R. Lang;
Institut für Technische Informatik,
The knowledge about the maximum execution time of program code is crucial for the design and implementation of hard real-time systems.
For determining the maximum execution time the programming language C has been adapted in a way so that programs written in this language can be analysed statically using a modified compiler and an underlying tool chain. The resulting language is called wcetC.
For the design of real-time applications modelling tools like Matlab/Simulink are used to develop real-time tasks using simulation models that in turn are compiled into source code. Those models are built up from model blocks, each capturing a destinct function. After a model has been simulated and verified the source code is emitted using an appropriate code generator. The code generator produces the code based on the model and a source program. Once the code has been generated it is compiled for a specific platform using an off-the-shelf compiler.
This thesis examines and describes the implementation opportunities for adjusting the code synthesis of Matlab/Simulink simulation models, in particular of the model blocks, in such a way that wcetC compliant code, which is well-suited for the analysis with respect to its runtime behaviour, is generated.
One of the major tasks for enabling this process is the program that is executed by the code generator to modify so that each relevant produced statement is annoteted with enough information so that its maximum execution time bound can be obtained.
As a base for the adaption, the Embedded-C Target Program that is an integral part of Matlab/Simulink is used.
The results of the analysis can be used on the one hand for tuning the model with respect to its runtime behaviour and, on the other hand, for the static sheduling of the generated task.
Electronic version of the publication:
Created from the Publication Database of the Vienna University of Technology.