Circuit Carving: A Methodology for the Design of Approximate Hardware

Ilaria Scarabottoloa, Giovanni Ansalonib and Laura Pozzic
Faculty of Informatics Università della Svizzera italiana Lugano, Switzerland
ailaria.scarabottolo@usi.ch
bgiovanni.ansaloni@usi.ch
claura.pozzi@usi.ch

ABSTRACT


Systems‐on‐Chip (SoCs) commonly couple low power processors and dedicated hardware accelerators, which allow the execution of high‐workload and/or timing‐critical applications while relying on constrained resources. The functions performed by accelerators are often robust with respect to approximations that, when implemented in HW, can lead to circuits with tangibly lower area and power consumption. Research in approximate computing aims at developing effective strategies to explore the ensuing correctness/efficiency trade‐off. In this context, we address the challenge of approximate circuit design in an innovative way, called here Circuit Carving, which consists in identifying the maximum portion of an exact circuit that can be discarded from it, or carved out, to derive an inexact version not exceeding an error threshold. We achieve this goal by proposing an algorithm based on binary tree exploration, bounded by conditions extracted from the circuit topology. Our approach can be applied to any combinatorial circuit, without a‐priori knowledge of its functionality. The proposed algorithm allows back‐tracking in order to never be trapped in local minima, and identifies the exact influence of each circuit gate on the output correctness, resulting in inexact circuits with higher efficiency and accuracy with respect to state‐of‐the‐art greedy strategies.



Full Text (PDF)