Branch target buffers: WCET analysis framework and timing predictability

  • Authors:
  • Daniel Grund;Jan Reineke;Gernot Gebhard

  • Affiliations:
  • Saarland University, Campus E1 3, D-66123 Saarbrücken, Germany;Saarland University, Campus E1 3, D-66123 Saarbrücken, Germany;AbsInt GmbH, Science Park 1, D-66123 Saarbrücken, Germany

  • Venue:
  • Journal of Systems Architecture: the EUROMICRO Journal
  • Year:
  • 2011

Quantified Score

Hi-index 0.02

Visualization

Abstract

One step in the verification of hard real-time systems is to determine upper bounds on the worst-case execution times (WCET) of tasks. To obtain tight bounds, a WCET analysis has to consider micro-architectural features like caches, branch prediction, and branch target buffers (BTB). We propose a modular WCET analysis framework for branch target buffers, which allows for easy adaptability to different BTBs. As an example, we investigate the Motorola PowerPC 56x family (MPC56x), which is used in automotive and avionic systems. On a set of avionic and compiler benchmarks, our analysis improves WCET bounds on average by 17% over no BTB analysis. Capitalizing on the modularity of our framework, we explore alternative hardware designs. We propose more predictable designs, which improve obtainable WCET bounds by up to 20%, reduce analysis time considerably, and simplify the analysis. We generalize our findings and give advice concerning hardware used in real-time systems.