• DocumentCode
    1565868
  • Title

    Virtual simple architecture (VISA): exceeding the complexity limit in safe real-time systems

  • Author

    Anantaraman, Aravindh ; Seth, Kiran ; Patil, Kaustubh ; Rotenberg, Eric ; Mueller, Frank

  • Author_Institution
    ECE Dept., North Carolina State Univ., Raleigh, NC, USA
  • fYear
    2003
  • Firstpage
    350
  • Lastpage
    361
  • Abstract
    Meeting deadlines is a key requirement in safe real-time systems. Worst-case execution times (WCET) of tasks are needed for safe planning. Contemporary worst-case timing analysis tools can safely and tightly bound execution time on in-order single-issue pipelines with caches and static branch prediction. However, this simple pipeline appears to be a complexity limit, due to the need for analyzability. This excludes a whole class of high-performance processors from many embedded systems. We reconcile the complexity/safety trade-off by decoupling worst-case timing analysis from the processor implementation, through a virtual simple architecture (VISA). A VISA is the timing specification of a hypothetical simple pipeline and is the basis for worst-case timing analysis. However, the underlying microarchitecture can be arbitrarily complex. A task is divided into multiple subtasks which provide a means to gauge progress on the complex pipeline. Each subtask is assigned an interim deadline, or checkpoint, based on the latest allowable completion time of the subtask on the hypothetical simple pipeline. If no checkpoints are missed, then the complex pipeline is as timely as the safe pipeline. If a checkpoint is missed, the pipeline switches to a simple mode of operation that directly implements the VISA so that execution time of unfinished subtasks is safely bounded. The significance of our approach is that we circumvent worst-case timing analysis of the complex pipeline, by dynamically confirming its behavior is bounded by worst-case timing analysis of a simpler proxy pipeline. The benefit of using a high-performance processor is that tasks finish much sooner than they would have on an explicitly-safe processor. The new slack in the schedule can be exploited for higher throughput or lower power. With the VISA approach, an arbitrarily complex SMTprocessor can safely run nonreal-time tasks at the same time as a real-time task. Alternatively, frequency/voltage can be safely lowered to take up slack. We explore the latter application and show a VISA-compliant complex pipeline consumes 43-61% less power than an explicitly-safe pipeline.
  • Keywords
    computational complexity; parallel architectures; performance evaluation; pipeline processing; real-time systems; SMT processor; VISA; WCET; hypothetical simple pipeline; microarchitecture; safe planning; safe real-time system; static branch prediction; virtual simple architecture; worst-case execution time; Embedded system; Frequency; Microarchitecture; Pipelines; Processor scheduling; Real time systems; Safety; Switches; Throughput; Timing;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Computer Architecture, 2003. Proceedings. 30th Annual International Symposium on
  • ISSN
    1063-6897
  • Print_ISBN
    0-7695-1945-8
  • Type

    conf

  • DOI
    10.1109/ISCA.2003.1207013
  • Filename
    1207013