20-06-2012, 04:28 PM
AN EVALUATION OF EMBEDDED SYSTEM BEHAVIOR USING FULL-SYSTEM SOFTWARE EMULATION
AN EVALUATION OF EMBEDDED SYSTEM.pdf (Size: 559.13 KB / Downloads: 177)
Introduction
With embedded processor technology moving towards faster and smaller processors
and systems on a chip, it becomes increasingly difficult to accurately evaluate realtime
performance. Probing a piece of silicon, or accurately measuring values approaching
less than one nanosecond becomes more expensive and more difficult, if not impossible.
It becomes necessary to find additional methods to evaluate and debug embedded
systems.
Goal and Motivation
The goal of this research is to provide an additional method for evaluating and
debugging embedded systems. This research presents a method of using full-system
emulation to evaluate the real-time performance of an embedded system. An embedded
architecture emulator was created, using the C programming language, that emulates the
Motorola M-CORE embedded processor down to the register level and is accurate to
within 100 cycles per million as compared to actual hardware. This work touches on
several different aspects of embedded systems design, such as the testing and debugging
of increasingly integrated systems, hardware/software codesign methodologies, and the
evaluation of real-time systems.
Results
In this research, an embedded system emulator was built in C. A study of two
Real-Time Operating Systems was run on that emulator. Echidna [10] is a publicly
available RTOS based on Chimera [48]. NOS is a fixed-priority, multi-rate executive
[27] based on descriptions of bare-bones RTOS given by designers in the industry [13].
This study provides information about both of the RTOSs that might lead to a
decision among them as to which one to use. Predictably, as loads increased, the RTOSs
hit their job deadlines until system loads were reached and missed those deadlines afterwards.
Also predictably, as the system became overloaded in NOS, lower priority tasks
were completely ignored.
Overview of Report
Chapter 2, Background, describes the work that has been done in this field and
areas that relate to this field of research. Chapter 3, The Emulator, gives a detailed
description of the emulator, the steps that went into making it, and the methods used to
verify it. Chapter 4, Real-Time Performance Evaluation, first describes the two different
Real-Time Operating Systems that were run on the M-CORE Emulator, Echidna and
NOS, describes the four benchmarks that were run on each of the real-time operating
systems, describes the two types of background load run on the real-time operating systems,
and describes the experiment. Chapter 5, Results and Analysis, displays the
results from the experiment listed in Chapter 4, and analyzes the different results for the
several benchmarks. Chapter 6, Conclusions, gives the conclusions drawn from the findings
of this paper, and Chapter 7, Future Work, describes possible continuation of this
work.
Development Tools
Embedded development tools have traditionally lagged behind tools for the
development of general systems [46]. Unlike general systems, the design space for
embedded systems is extremely large, so it is difficult to contain all of the facilities to
specify, design, and test embedded systems.