An Overview
|
A hardware-software co-design strategy is being used to create an
environment for real-time embedded systems, comprising a real-time
operating system (RTOS) for microcontrollers, and a set of hardware
mechanisms that enhance a microarchitecture's real-time capabilities. The
project validates this experimental system through extensive testing on a
simulated processor, and measures the cost-effectiveness of the hardware
architecture extensions over a wide range of design choices.
The central contribution on the hardware side is the addition of
multiple "nanoprocessors" and software-managed caches to the main
processor core; each of these is a software-configurable finite state
machine (FSM) with limited processing capabilities, but each has access to
most of the processor state. These hardware mechanisms are orthogonal to
the underlying microarchitecture and can be implemented inexpensively even
in a low-cost microcontroller. The RTOS implements all of its
high-overhead operating system functions as FSMs that are mapped onto the
configurable hardware. Each of the nanoprocessors becomes a personal
assistant to the operating system, performing mundane tasks such as
prioritizing interrupts, filtering input/output, or acting as
high-resolution timers. This leaves the full 100% of CPU processing time
on the main processor core for applications.
|