Approximate computing has emerged as a circuit design technique that can reduce system power without significantly sacrificing the output quality in error-resilient applications. However, there exists only a few approaches for systematically and efficiently determining the error introduced by approximate hardware units. This paper focuses on the development of error analysis techniques for approximate circuits consisting of adders and multipliers, which are the key hardware components used in error-resilient applications. A novel algorithm has been presented, using the Fourier and the Mellin transforms, that efficiently determines the probability distribution of the error introduced by approximation in a circuit, abstracted as a directed acyclic graph. The algorithm is generalized for signed operations through two's complement representation, and its accuracy is demonstrated to be within 1% of Monte Carlo simulations, while being over an order of magnitude faster.
|Original language||English (US)|
|Number of pages||14|
|Journal||IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems|
|State||Published - Jan 2019|
Bibliographical noteFunding Information:
Dr. Sengupta was a recipient of the Doctoral Dissertation Fellowship from the University of Minnesota.
Manuscript received March 20, 2017; revised July 28, 2017 and October 25, 2017; accepted December 20, 2017. Date of publication February 7, 2018; date of current version December 19, 2018. This work was supported in part by the NSF under Awards CCF-1162267, CCF-1525925, and CCF-1525749, and in part by the 2016 Doctoral Dissertation Fellowship from University of Minnesota. This paper was recommended by Associate Editor J. Cortadella. (Corresponding author: Deepashree Sengupta.) D. Sengupta, F. S. Snigdha, and S. S. Sapatnekar are with the Department of Electrical and Computer Engineering, University of Minnesota, Minneapolis, MN 55455 USA (e-mail: firstname.lastname@example.org).
- Approximate computing
- Fourier transform
- Mellin transform
- error distribution