PhD Course: Approximate Computing for low-energy, high-speed and area-efficient digital circuits and systems: when “good enough” is better than “good”
The design optimization of digital circuits and systems typically consists in a three- dimensional trade-off among energy dissipation, area occupancy and computational speed.
In the last decade, breaking such a trade-off has become very challenging since the breakdown of Dennard’s scaling, and as Moore’s and Koomey’s laws approaching their end.
Therefore, newer devices, architectures, and design techniques have become extremely urgent, also due to the strict energy, speed and area- efficiency requirements dictated by the emerging Internet-of- Things applications.
Approximate Computing (AC) is a recent design paradigm aiming to fill the gap between requirements and capabilities of current platforms.
It consists in introducing a new dimension in the optimization space, accuracy, to significantly reduce the hardware complexity, energy consumption and computational time. AC can be applied in several application areas that are intrinsically resilient to computational errors, e.g., machine learning, sensor signal processing, data mining and multimedia.
The degree of accuracy can span across all the vertical computing stack, starting from the algorithm level and going down to the circuit and device levels. Preferably, a cross layer interaction should be enabled to optimize the energy-area-speed-accuracy trade-off.
In this course, we will describe the most recent techniques based on AC, focusing in particular on arithmetic circuits at transistor and logic level and on memory architectures. Moreover, we will present a general overview about how approximation can be leveraged at software and device levels. Finally, we will discuss about several application examples and computing platforms where AC can be applied, thus underlining the interdisciplinarity of such a design paradigm.
seminar room - 5th floor, cube 42C
8h - 2 CFU