Scaling energy per operation via an asynchronous pipeline
Real time io management system with cots peripherals
1. REAL-TIME IO MANAGEMENT SYSTEM WITH COTS
PERIPHERALS
ABSTRACT:
Real-time embedded systems are increasingly being built using commercial-off-theshelf (COTS) components such as mass-produced peripherals and buses to reduce costs,
time-to-market, and increase performance. Unfortunately, COTS-interconnect systems do not
usually guarantee timeliness, and might experience severe timing degradation in the presence
of high-bandwidth I/O peripherals. Moreover, peripherals do not implement any internal
priority-based scheduling mechanism; hence, sharing a device can result in data of high
priority tasks being delayed by data of low priority tasks. To address these problems, we
designed a real-time I/O management system comprised of 1) real-time bridges with I/O
virtualization capabilities, and 2) a peripheral scheduler. The proposed framework is used to
transparently put the I/O subsystem of a COTS-based embedded system under the discipline
of real-time scheduling, minimizing the timing unpredictability due to the peripherals sharing
the bus. We also discuss computing the maximum delay due to buffered I/O data transactions
as well as determining the buffer size needed to avoid data loss. Finally, we demonstrate
experimentally that our prototype real-time I/O management system successfully exports
multiple virtual devices for a single physical device and prioritizes I/O traffic, guaranteeing
its timeliness.