TY - JOUR T1 - Task Transition Scheduling for Data-Adaptable Systems JF - ACM Transactions on Embedded Computing Systems (TECS) Y1 - 2017 A1 - Nathan Sandoval A1 - Casey Mackin A1 - Sean Whitsitt A1 - Gopinath, Vijay Shankar A1 - Sachidanand Mahadevan A1 - Milakovich, Andrew A1 - Merry, Kyle A1 - Jonathan Sprinkle A1 - Roman Lysecky KW - Data adaptability KW - hardware/software codesign KW - model-based design KW - runtime transition scheduling AB -

Data-adaptable embedded systems operate on a variety of data streams, which requires a large degree of configurability and adaptability to support runtime changes in data stream inputs. Data-adaptable reconfigurable embedded systems, when decomposed into a series of tasks, enable a flexible runtime implementation in which a system can transition the execution of certain tasks between hardware and software while simultaneously continuing to process data during the transition. Efficient runtime scheduling of task transitions is needed to optimize system throughput and latency of the reconfiguration and transition periods. In this article, we provide an overview of a runtime framework enabling the efficient transition of tasks between software and hardware in response to changes in system inputs. We further present and analyze several runtime transition scheduling algorithms and highlight the latency and throughput tradeoffs for two data-adaptable systems. To evaluate the task transition selection algorithms, a case study was performed on an adaptable JPEG2000 implementation as well as three other synchronous dataflow systems characterized by transition latency and communication load.

VL - 16 UR - http://doi.acm.org/10.1145/3047498 ER - TY - CONF T1 - How You Can Learn to Stop Worrying and Love Reconfigurable Embedded Systems: A Tutorial T2 - Engineering of Computer Based Systems (ECBS), 2013 20th IEEE International Conference and Workshops on the Y1 - 2013 A1 - Nathan Sandoval A1 - Casey Mackin A1 - Roman Lysecky A1 - Jonathan Sprinkle KW - C++ language KW - C/C++ code KW - codesign KW - Computers KW - Conferences KW - data streams KW - embedded hardware KW - embedded systems KW - Hardware KW - hardware tasks KW - hardware-software codesign KW - image processing algorithms KW - JPEG2000 standards KW - middleware KW - middleware framework KW - modeling infrastructure KW - reconfigurable embedded systems KW - runtime behaviors KW - software tasks KW - software tool KW - software tools KW - Transform coding KW - Tutorials JF - Engineering of Computer Based Systems (ECBS), 2013 20th IEEE International Conference and Workshops on the ER - TY - CONF T1 - System Throughput Optimization and Runtime Communication Middleware Supporting Dynamic Software-Hardware Task Migration in Data Adaptable Embedded Systems T2 - Engineering of Computer Based Systems (ECBS), 2013 20th IEEE International Conference and Workshops on the Y1 - 2013 A1 - Nathan Sandoval A1 - Casey Mackin A1 - Sean Whitsitt A1 - Roman Lysecky A1 - Jonathan Sprinkle KW - combinatorial explosion KW - Data adaptability KW - data adaptable design methodology KW - data adaptable embedded systems KW - data configurations KW - data handling KW - Data models KW - data profile correlation KW - design time optimization KW - dynamic software-hardware task migration KW - embedded systems KW - Field programmable gate arrays KW - FIFO queues KW - Firing KW - Hardware KW - hardware accelerators KW - hardware-software codesign KW - hardware-software communication wrapper KW - hardware/software codesign KW - hardware/software communication middleware KW - heuristic programming KW - heuristic search methodology KW - middleware KW - model-based design KW - Pareto optimal configurations KW - Pareto optimisation KW - Runtime KW - runtime communication middleware KW - search problems KW - simulation-based methodology KW - system throughput optimization JF - Engineering of Computer Based Systems (ECBS), 2013 20th IEEE International Conference and Workshops on the ER -