Patmos: a time-predictable microprocessor

Martin Schoeberl,Wolfgang Puffitsch,Stefan Hepp,Benedikt Huber,Daniel Prokesch
DOI: https://doi.org/10.1007/s11241-018-9300-4
2018-02-23
Abstract:Current processors provide high average-case performance, as they are optimized for general purpose computing. However, those optimizations often lead to a high worst-case execution time (WCET). WCET analysis tools model the architectural features that increase average-case performance. To keep analysis complexity manageable, those models need to abstract from implementation details. This abstraction further increases the WCET bound. This paper presents a way out of this dilemma: a processor designed for real-time systems. We design and optimize a processor, called Patmos, for low WCET bounds rather than for high average-case performance. Patmos is a dual-issue, statically scheduled RISC processor. A method cache serves as the cache for the instructions and a split cache organization simplifies the WCET analysis of the data cache. To fill the dual-issue pipeline with enough useful instructions, Patmos relies on a customized compiler. The compiler also plays a central role in optimizing the application for the WCET instead of average-case performance.
computer science, theory & methods
What problem does this paper attempt to address?