Physically-Adaptive Computing via Introspection and Self-Optimization in Reconfigurable Systems
Add to Google Calendar
Digital electronic systems must compute precise and deterministic results, but how they compute is in principle open to adaptive approaches. Still, the vast majority of such systems in the past 60 years have used fixed architectures and programs due to the low costs involved. The situation is changing rapidly. With nano-scale integrated circuits, physical variation and uncertainty in component behavior are emerging as fundamental hurdles. Systems in the traditional mold have increasingly sub-optimal fault rates, power consumption, chip costs, and lifetimes. This dissertation proposes methods of physically-adaptive computing (PAC), in which reconfigurable electronic systems sense and learn their own physical parameters and adapt with fine granularity in the field. We formulate the PAC problem and provide a conceptual framework built around two major themes. The first is introspection: how can systems efficiently acquire useful information about their physical state and related parameters. The second is self-optimization: how can systems feasibly re-implement their designs on-the-fly using the information learned. We study the role not only of self-adaptation—where the above two tasks are performed by the system itself—but also of assisted adaptation using a remote server or peer. One important phenomenon addressed by PAC is regional variation within a system. We introduce a flexible, ultra-compact sensor that can be embedded in an application and implemented on field-programmable gate arrays (FPGAs). We demonstrate how an array of such sensors, with only 1% total overhead, can be employed to gain useful information about circuit delays, voltage noise, and even leakage variations. We furthermore establish methods of regional self-optimization, such as finding the design alternative that best fits a given region. A second, emerging phenomenon is local, uncorrelated variation. We propose a novel method of self-test for transient fault susceptibility, using on-chip noise emulation to uncover previously hidden variations. We present methods of self-optimization, such as local re-placement, informed by the introspection data. The contributions help to increase the benefits and decrease the costs of physical adaptation. We lay the groundwork for further progress toward an ambitious long-term vision of significantly higher efficiency and reliability in the digital systems so essential to society.