Sam Siewert

Sam Siewert, Ph.D.

Adjunct Facluty, Dept. of Electrical and Computer Engineering

Real-Time Embedded Systems Research Page


Current Research Interests

Real-Time Systems Group


Recent Publications IEEE Aerospace Conf. 2001 - RT Agent Framework Paper (PDF)

IEEE RTSS 2000 WIP Paper - Multi-Epoch Scheduling (PDF)

Ph.D. Thesis - A Real-Time Execution Performance Agent Interface for Confidence-Based Scheduling (PDF)

IEEE RTAS 1997 WIP Paper - RT EPA Mixed Hard/Soft Admission, Control, and Monitoring (PDF)

Link to All Plublications


Dissertation

"A Real-Time Execution Performance Agent Interface for Confidence-Based Scheduling"

Committee:

Gary Nutt, Chair (CS)
Ken Anderson (CS)
Elizabeth Bradley (EE/CS)
Elaine Hansen (Space Grant College)
Ren Su (EE)

Exam: July 3rd, 9:00 AM, Room 831, Eng. Center

Demo Sessions: Available Upon Request in CU Simlab (ECME 269)

Directions to Simlab: You can park near the CU Engineering Center off of Regent near the parking garage (metered parking) and then come into the Engineering Center past the ITLL and courtyard fountain heading west. Go up the stairs past the Dean's office and then head west like you're going to exit the building out the revolving doors, but instead on your right you'll see elevators -- take the elevator to the 2nd floor and exit right and head north down the hall (you will see Simlab signs at this point) and when the hallway ends, turn left -- the Simlab is down the hall in ECME 269.

Final Exam Presentation

Original Proposal Accepted by Committee


Dissertation Research Abstract

The use of microprocessors and software to build real-time applications is expanding from traditional domains such as digital control, data acquisition, robotics, and digital switching, to include emerging domains like multimedia, virtual reality, optical navigation, and audio processing. These emerging real-time application domains require much more bandwidth and processing capability than the traditional real-time systems applications. Furthermore, at the same time, the potential performance and complexity of microprocessor and I/O architectures is also rapidly evolving to meet these new application demands (e.g. a super-scalar, pipelined architecture with multilevel cache with burst transmission I/O bus). Finally, the complexity of typical real-time system algorithms is increasing given functions such as image processing, rule-based fault protection, and intelligent sensor processing. The foundation of real-time systems theory is the recognition that bandwidth and processing resources will always be constrained (a more demanding application always exists that can make use of increased resources as they become available). Given this reality, the question is how does an engineer formally ensure, given resource constraints, that the system will not only function correctly, but function correctly and meet timing deadlines. Since the introduction of Liu and Layland's rate-monotonic analysis and the development of the formal theory of hard real-time systems, significant progress has been made on extending this theory and developing an engineering process for it. The problem is that the current hard real-time theory and process assumes full reliability and overly constrains systems by requiring either deterministic use of resources or worst-case models of such usage. Real-time systems engineering requires translation of requirements into a system meeting cost, performance, and reliability objectives. If deadline performance was the only consideration in the engineering process, and there were no cost or reliability requirements, then current hard real-time theory is mostly sufficient. In reality though, it is clear that cost and reliability must be considered, especially since emerging application domains may be more cost and reliability sensitive than traditional hard real-time domains. Typically a direct trade can be made between cost and reliability for a given performance level.

There are three main problems that exist with application of current hard real-time theory to systems requiring a balance of cost, reliability and peformance. First, there is no formal approach for the design of systems for less than full reliability. Second, the assumptions and constraints of applying hard real-time theory severely limit performance. Finally, safe mixing of hard and soft real-time execution is not supported. Without a better framework for mixed hard and soft real-time requirements implementation, the engineer must either adapt hard real-time theory on a case by case basis, or risk implementing a best effort system which provides no formal assurance of performance. Soft real-time quality-of-service frameworks are also an option. However, not only are these approaches not fully mature, more fundamentally, they do not address the concept of mixed hard and soft real-time processing, nor is it clear that any of these approaches provide concretely measurable reliability. In this thesis we present an alternative framework for the implementation of real-time systems which accommodates mixed hard and soft real-time processing with measurable reliability by providing a confidence-based scheduling and execution fault handling framework. This framework, called the RT EPA (real-time execution performance agent), provides a more natural and less constraining approach to translating both timing and functional requirements into a working system. The RT EPA framework is based on an extension to deadline monotonic theory. The RT EPA has been evaluated with simulated loading, an optical navigation test-bed, and the RT EPA monitoring module will be flown on an upcoming NASA space telescope in late 2001. The significance of this work is that it directly addresses the shortcomings in the current process for handling reliability and provides measurable reliability and performance feedback during the implementation, systems integration, and maintenance phases of the process.


"More Information on the RT EPA and the RACE Experiment"

Ph.D. Research Overview -- Related Papers

Figure 1: 5 DOF Position Feedback Robot Testbed

Safely scheduling event-released tasks to complete execution by relative real-time deadlines is most challenging when processor loading approaches full utility. Liu and Layland established interesting bounds on this problem with the RMA (Rate-Monotonic Analysis) least upper bound (provable safe utility < 0.7) and the ideal theoretical upper bound of full utility provided by the Earliest Deadline First (EDF) dynamic priority algorithm. The derivation of the RMA least upper bound treats all tasks in the set as having equally hard deadlines and is pessimistic since it requires a worst-case release and a worst-case execution assumption [LiuLay73]. Task sets with process utility loads below the RMA least upper bound can easily be scheduled, and as Liu and Layland point out, the EDF ideal is not achievable given the impracticality of the dynamic priority assignment required.


Figure 2: RACE (Rail-guided, Air-powered Controls Experiment) Optical Navigation Testbed

What is perhaps most interesting about Liu and Layland's work is that it provides the bounds for a marginally safe region of real-time scheduling using the fixed priority preemptive scheduling method - i.e. those task sets with loading between the RMA least upper bound and full utility (provable safe utility < 0.7 < marginally safe utility < full utility). Due to pessimistic execution time and period assumptions, tasks can be scheduled successfully within this region of marginally safe utility - the problem is that the safety of meeting deadlines for such a system can't be mathematically guaranteed, nor can it even be well estimated from a reliability perspective with RMA. Ideally, from an engineering viewpoint, it would be beneficial to be able to schedule a marginal task set such that the reliability in meeting deadlines could be specified for each task and so that the range of reliability includes guaranteed service, soft real-time service (number of missed deadlines over a period is fully predictable), and best effort tasks.


Figure 3: RACE NTSC-PCI Bus Camera System

A formulation and implementation of such a programming framework called the RT EPA (Real-Time Execution Performance Agent) is introduced in this thesis which can be applied to typical real-time applications such as continuous media, digital control, and event processing. A confidence-interval mathematical formulation for task admission is used to provide a range of scheduling reliability within the RT EPA framework which enforces policy and provides an intuitive way to build processing pipelines and to schedule execution of task sets based on desired deadline reliability performance. An evaluation of the RT EPA framework is presented based on both simulated applications, several control systems testbeds including an optical navigation experiment, and a video processing system for the SIRTF/MIPS (Space-based Infrared Telescope Facility / Multi-band Imaging Photometer for SIRTF) instrument.


Figure 4: RACE Rail-guided Ramp

The results show that given minimal programmer specification, the RT EPA applications performed according to expectation for guaranteed performance requirements, within specified tolerances for soft real-time requirements, and also supported best effort performance for a marginal task set. The simulated applications, experimental testbeds, and the SIRTF instrument application prove the viability of the theory, implementation concept, and ability to solve difficult scheduling problems that include a mix of hard, soft and best effort tasks in a single real-time application.

The RACE testbed and the 5 DOF Position Feedback Robot will be demonstrated at the Dissertation review along with performance results included in the thesis. The RACE demonstration includes optical ranging and position hold along with a video compression pipeline so the RACE view can be displayed in real-time. The 5 DOF Position Feeback Robot will perform a simple target pick-and-place sequence.


Figure 5: RACE View of Optical Navigation Target

Overview References

Briand, Loïc and Roy, Daniel, Meeting Deadlines in Hard Real-Time Systems - The Rate Monotonic Approach, IEEE Computer Society Press, 1999.

Liu, C., and Layland, J., "Scheduling Algorithms for Multiprogramming in a Hard-Real-Time Environment", Journal of the Association for Computing Machinery, pp. 46-61, Vol. 20, No. 1, January 1973.

Tom Shanley and Don Anderson, "PCI System Architecture", 4th Edition, 1999, (ISBN 0-201-30974-2) MindShare, Inc. publisher link.


Past/Current Research:

In general, my research interests include real-time operating systems, distributed systems, and "agent" automation. Here's an introductory (reasonably non-technical) overview of my work on real-time remote agent semi-autonomous systems

In the past I worked on a lighter-than-air vehicle called FLOATERS which ultimately became the RACE experiment (Ph.D. research above).

FLOATERS Command Set and Sensors - Control is comprised of three levels of commands including: level-0 "joysticking", level-1 "digital control", and level-2 "agent control". A free flying version of the vehicle is being used in a VR shared-control experiment wi th a user interface to heading and range navigation sensors, propulsion control, and continuous video downlink.


Current/Past Work at Space Grant College:

University of Colorado, Engineering Center, Room 1B72, Campus Box 520, Bould er, CO 80309-0520, voice: (303) 641-3999, fax: (303) 492-5456

Long Past Research Interests: