tailieunhanh - Model-Based Design for Embedded Systems- Part 7

Model-Based Design for Embedded Systems- P7: This book contains information obtained from authentic and highly regarded sources. Reasonable efforts have been made to publish reliable data and information, but the author and publisher cannot assume responsibility for the validity of all materials or the consequences of their use. | 36 Model-Based Design for Embedded Systems a translation of the binary code into the SystemC code generates a fast code compared to an interpreting ISS as no decoding of instructions is needed and the generated SystemC code can be easily used within a SystemC simulation environment. However this approach has some major disadvantages. One main drawback is that the same problems that have to be solved in the static compilation binary translation have to be solved here . addresses of calculated branch targets have to be determined . Another disadvantage is that the automatically generated code is not very easily read by humans. Back-Annotation of WCET BCET Values In this section we will describe our approach in more detail. Figure shows an overview of the approach. First the C source code has to be taken and translated using an ordinary C cross -compiler into the binary code for the embedded processor source processor . After that our back-annotation tool reads the object file and a description of the used source processor. This description contains both a description of the architecture and a description of the instruction set of the processor. Figure shows an example for the description of the architecture. It contains information about the resources of the processor Figure . This information is used for the modeling of the pipeline. Furthermore it contains a description of the properties of the instruction Figure and data caches Figure . Furthermore such a description can contain information about the branch prediction of the processor. Annotation of C code for a basic block C code corresponding to a basic block delay statically predicted number of cycles C code corresponding to the cache analysis blocks of the basic block delay cycleCalculationICache ta g iStart iEnd delay cycleCalculationForConditionalBranch Function call of consume function if necessary . before I O access consume getTaskTime Architectural model Cache model .