Scheduling for Embedded Real-Time Systems - PowerPoint PPT Presentation

About This Presentation
Title:

Scheduling for Embedded Real-Time Systems

Description:

... the time when the tasks become enabled are known well in ... Two types of dataflow models. SDF. static compile time scheduling possible. DDF or control DF ... – PowerPoint PPT presentation

Number of Views:164
Avg rating:3.0/5.0
Slides: 19
Provided by: embeddedE
Category:

less

Transcript and Presenter's Notes

Title: Scheduling for Embedded Real-Time Systems


1
Scheduling for Embedded Real-Time Systems
  • Amit Mahajan and Haibo

2
Overview
  • Real-Time Systems
  • Scheduling problem in Real-Time Systems
  • Control Dominated Systems
  • Dataflow Systems
  • Conclusions

3
Real-Time Systems
  • Are composed of several distinct cooperating
    tasks
  • Are usually non-terminating
  • React faster than the rate of the environment
    i.e. the composing tasks have tight timing
    constraints

4
Scheduling problem in Real-Time Systems
  • Given
  • A set processing units with known processing
    capabilities
  • A set of tasks with known characteristics and
    constraints on the completion time
  • Derive an order of execution of these tasks

5
Overview
  • Real-Time Systems
  • Scheduling problem in Real-Time Systems
  • Control Dominated Systems
  • Dataflow Systems
  • Conclusions

6
Static Scheduling Policies
  • Tasks execute in a fixed order determined offline
  • Suited best to the cases where the time when the
    tasks become enabled are known well in advance
  • Easy to debug but usually give low processor usage

7
Static Scheduling Policies (contd.)
  • Round Robin
  • Tasks checked for readiness in a predetermined
    order and executed immediately if they are ready
  • Easy to give bounds on the time between a request
    for an execution and the corresponding execution
  • Cyclic Scheduling
  • Like round robin except that tasks may appear
    more than once in one cycle
  • Used in dataflow systems

8
Dynamic Scheduling Policies
  • Order of task execution decided at runtime
  • Usually based on some sort of priority of tasks
  • May or may not be pre-emptive
  • Suited for systems with irregular task
    activations
  • High processor usage but difficult to debug

9
Dynamic Scheduling Policies (contd.)
  • Work by Liu and Layland. Under strict assumptions
  • RMS
  • Static priorities
  • Priority of a task is proportional to its rate
  • EDF
  • Dynamic priorities
  • Priority of a task is inversely proportional to
    the time remaining to its deadline
  • Under a set of relaxed conditions, Audsley et al.
    proposed an optimal priority assignment algorithm
    for static priority scheduling

10
Schedulability Analysis
  • To determine if a set of tasks meets its timing
    constraints
  • Common approach worst case response time (WCRT)
    analysis
  • Once WCRT is computed, checking whether a task
    meets its deadline is trivial in many cases
  • With Liu and Layland assumptions of preemptive
    static priority scheduling and independent
    periodic tasks with fixed runtimes, WCRT analysis
    is easy

11
WCRT analysis for realistic real-time embedded
systems
  • Real-time embedded systems frequently flout the
    Liu layland assumptions
  • state- dependent run-times, dependency between
    tasks and non-periodic events in the environment
  • Balarin and Sangiovanni proposed a conservative
    extension to WCRT analysis for systems in which
  • Scheduling is either preemptive or nonpreemptive
    static priority
  • The environment only needs to respect the timing
    between successive occurrences of events
  • FOR MOST SYSTEMS WITH STATE AND INPUT DEPENDENT
    RUNTIMES, TRACTABLE WCRT ANALYSIS IS A MYSTERY!

12
Synchronous Scheduling
  • E.g Esterel
  • Synchronous assumption
  • Given a set of communicating tasks, each
    represented by a FSM, the computation of the
    output as well as the communication among the
    FSMs takes place in zero time
  • The synchronicity hypothesis reduces the set of
    FSMs to a single product machine
  • For synchronous systems, the structure of the
    product machine is equivalent to the static
    scheduling of the component FSMs

13
Synchronous Scheduling (contd.)
  • Advantages
  • Deterministic response
  • Ease of debugging and verification
  • Problems
  • May lead to inefficient execution time as
    compared to task-based scheduling
  • Some tasks in a system may not be representable
    as FSM
  • Undelayed feedback loops are a cause of great
    trouble

14
Overview
  • Real-Time Systems
  • Scheduling problem in Real-Time Systems
  • Control Dominated Systems
  • Dataflow Systems
  • Conclusions

15
Dataflow Systems
  • Dataflow graphs used for scheduling purposes in
    DSP systems
  • Explicit representation of interaction between
    tasks
  • More emphasis on the throughput of the system
  • Two types of dataflow models
  • SDF
  • static compile time scheduling possible
  • DDF or control DF
  • more powerful than SDF but require some dynamic
    scheduling
  • Most DSP algorithms dont require much decision
    making SDF is a good enough model

16
SDF
  • Used in many block-diagram based rapid
    prototyping and code generation for programmable
    DSPs
  • For uniprocessor scheduling
  • Code generator steps through the schedule and
    generates a sequence of actor invocations
  • In-line code used instead of sub-routine calls
  • Loops used to prevent explosion in code size due
    to multiple appearances of an actor in a schedule

17
Research Issues in SDF scheduling
  • Minimize code and buffer size used for actors.
    Approaches are
  • Minimizing for one of the criterions. Among the
    existing solutions, choosing the solution that
    minimizes the second criterion
  • Exploring solutions that optimize based on a
    tradeoff between the two constraints i.e.
    avoiding the extremes
  • Minimizing activation schedules

18
Conclusions
  • Dataflow systems
  • Regularity of inputs and control lends itself
    well to static scheduling
  • Good techniques exist scheduling on one or
    several processors with tradeoff between
    code-size, buffer size, execution time etc
  • Control-dominated systems
  • Efficient scheduling schemes known for a very
    small class of systems
  • Lack of a good model to capture inter-task
    dependencies
  • Lack of good techniques to determine the WCRT on
    complex processors without making unrealistic
    assumptions
Write a Comment
User Comments (0)
About PowerShow.com