Static timing analysis of embedded software is important for systems with hard real-time constraints. To accurately estimate time bounds, it is essential to model the underlying micro architecture. In this paper, we study static timing analysis of embedded programs for modern processors with speculative execution. Speculation of conditional branch outcomes significantly improves processor performance, and hence program execution time. Although speculation is used in most modern processors, its effect on software timing has not been systematically studied before. The main contribution of our work is a parameterized framework to model different control flow speculation schemes. The accuracy of our framework is illustrated through tight timing estimates obtained for benchmark programs.
Index Terms:
branch prediction, worst case execution time
Citation:
Abhik Roychoudhury, Xianfeng Li, Tulika Mitra, "Timing Analysis of Embedded Software for Speculative Processors," isss, pp.126-131, Proceedings of the 15th international symposium on System Synthesis (ISSS '02), 2002