Self-Timed Scheduling Analysis for Real-Time Applications
- PDF / 624,321 Bytes
- 14 Pages / 600.03 x 792 pts Page_size
- 56 Downloads / 140 Views
Research Article Self-Timed Scheduling Analysis for Real-Time Applications Orlando M. Moreira and Marco J. G. Bekooij NXP Semiconductors Research, 5656 AE Eindhoven, The Netherlands Received 1 September 2006; Accepted 2 April 2007 Recommended by Roger Woods This paper deals with the scheduling analysis of hard real-time streaming applications. These applications are mapped onto a heterogeneous multiprocessor system-on-chip (MPSoC), where we must jointly meet the timing requirements of several jobs. Each job is independently activated and processes streams at its own rate. The dynamic starting and stopping of jobs necessitates the usage of self-timed schedules (STSs). By modeling job implementations using multirate data flow (MRDF) graph semantics, real-time analysis can be performed. Traditionally, temporal analysis of STSs for MRDF graphs only aims at evaluating the average throughput. It does not cope well with latency, and it does not take into account the temporal behavior during the initial transient phase. In this paper, we establish an important property of STSs: the initiation times of actors in an STS are bounded by the initiation times of the same actors in any static periodic schedule of the same job; based on this property, we show how to guarantee strictly periodic behavior of a task within a self-timed implementation; then, we provide useful bounds on maximum latency for jobs with periodic, sporadic, and bursty sources, as well as a technique to check latency requirements. We present two case studies that exemplify the application of these techniques: a simplified channel equalizer and a wireless LAN receiver. Copyright © 2007 O. M. Moreira and M. J. G. Bekooij. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
1.
INTRODUCTION
1.1. Application domain In order to deliver high-quality output, streaming media applications have tight real-time (RT) requirements. These typically come in several different flavors [1], according to the type of requirements. For instances, in hard real time the deadlines of jobs cannot be missed, while in soft real time the deadlines can be missed, but the rate of misses must be kept below a specified maximum. Because human perception is more tolerant of frame loss in a video signal than sample loss in an audio signal, video applications are often implemented as soft real time, while most radio and audio applications are treated as hard real time. Contrarily to real-time control applications where most temporal requirements are in terms of latency, the temporal requirements of real-time streaming applications are mostly throughput oriented, although latency requirements may still be present. Embedded platforms for streaming are expected to handle several streams at the same time, each with its own rate. Typically, functionality can be divided in minimal groups of interconnected tasks that can be started and stop
Data Loading...