This research has been supported by the National Science Foundation, grant CNS-1060337.
Effective response and adaptation to the physical world, and rigorous management of such behaviors, are mandatory features of cyber-physical systems (CPS). However, achieving such capabilities across diverse application requirements surpasses the current state of the art in system platforms and tools. Existing systems do not support the expression, integration, and enforcement of such properties that span cyber and physical domains. In this work, we are examining mechanisms to enable conjoining of cyber-physical properties within a system through: 1) plastic data structures, 2) tightly coupling SW/HW resources, and 3) integrating system implementation artifacts with control theory.
Plastic data structures. While traditional systems often need data structures optimized for fastest average times for find, insert, and other operations, the more diverse semantics of CPS call for data structures whose optimization criteria can be adapted on the fly at run-time. Our plans call for investigating how standard collections objects can adapt dynamically to various modes of execution (e.g. high performance, real time, small footprint). The work presented here compares “Real Time” and “Best Avg Case” modes in terms of the ratio of the average to worst case performance of hash table operations. Our results show that the “Real-Time” implementation ratio is close to 5 and stays constant with increasing hash table size, while the “Best Avg Case” implementation ratio is orders of magnitude large and increases with hash table size. Our larger goal is to formulate collection objects that can move with guarantees between different modes of operation. These “plastic” data structures will switch between optimization modes depending on the nature of the work being done.
Tight hardware/software resource coupling. In support of plastic data structures, approaches for developing hybrid HW/SW collection objects are being explored. Data structures that can span hardware and software in a seamless manner will provide greater flexible for plastic data structures to meet application requirements. In addition, hardware mechanisms can be used to help guarantee behavioral properties. For example, hardware isolation can be employed for critical operations to insure timing determinism. To date we have developed a SW/HW hybrid priority queue that combines the scalability of a software implementation, with improved timing determinism by dividing the execution of operations across software and hardware. Our experiments quantify trade-offs between scalability and determinism. For queue sizes that fit in hardware, we show a 50 times improvement in timing variability as compared to software, while for queues sizes of up to 2048 a 2 times improvement in timing variability is observed.
Integrating system implementation artifacts with control theory. The design of high performance CPS must take into account implementation artifacts. Our work aims to build upon existing tools such as JitterBug and TrueTime to incorporate artifacts from implementing scheduler and control algorithms (e.g. delay variation) into system stability and performance analysis. We are developing Matlab-based and System on Chip-based (with a Plant-on-Chip (PoC)) evaluation environments. In addition, we have performed preliminary characterizations of delay variation impact on system stability and performance. These characterizations have been performed on 1) Matlab models, and 2) actual systems that dedicate a processor to the application, and shared Operating System setups.
All of our evaluations have been performed on an FPGA-based platform that enables implementing System on Chip (SoC) architectures composed of both a standard 32-bit processor to execute software, and any custom digital circuits we wish to evaluate.
The broader impact of this work will be through dissemination of academic papers, and open platforms and tools that afford unprecedented integration of cyber-physical properties.
Phillip Jones, Assistant Professor of Electrical Computer and Engineering, PI for this research at Iowa State University.
Joseph Zambreno, Associate Professor of Electrical Computer and Engineering, co-PI for this research at Iowa State University.
Ron Cytron, Professor of Computer Science and Engineering, PI for this research at Washington University in St. Louis.
Christopher Gill, Professor of Computer Science and Engineering, is co-PI for this research at Washington University in St. Louis.
Sudhanshu Vyas, Chetan Kumar N G, Jonathan Shidal, Yuan Zhang have contributed to this research as graduate Research Assistants
Josh Levin has contributed as an Undergraduate Research Assistant