Approximator : a software tool for automatic generation of approximate arithmetic circuits

Approximate arithmetic circuits are an attractive alternative to accurate arithmetic circuits because they have significantly reduced delay, area, and power, albeit at the cost of some loss in accuracy. By keeping errors due to approximate computation within acceptable limits, approximate arithmetic...

Full description

Bibliographic Details
Main Authors: Balasubramanian, Padmanabhan, Nayar, Raunaq, Min, Okkar, Maskell, Douglas Leslie
Other Authors: School of Computer Science and Engineering
Format: Journal Article
Language:English
Published: 2022
Subjects:
Online Access:https://hdl.handle.net/10356/155010
_version_ 1811696769490223104
author Balasubramanian, Padmanabhan
Nayar, Raunaq
Min, Okkar
Maskell, Douglas Leslie
author2 School of Computer Science and Engineering
author_facet School of Computer Science and Engineering
Balasubramanian, Padmanabhan
Nayar, Raunaq
Min, Okkar
Maskell, Douglas Leslie
author_sort Balasubramanian, Padmanabhan
collection NTU
description Approximate arithmetic circuits are an attractive alternative to accurate arithmetic circuits because they have significantly reduced delay, area, and power, albeit at the cost of some loss in accuracy. By keeping errors due to approximate computation within acceptable limits, approximate arithmetic circuits can be used for various practical applications such as digital signal processing, digital filtering, low power graphics processing, neuromorphic computing, hardware realization of neural networks for artificial intelligence and machine learning etc. The degree of approximation that can be incorporated into an approximate arithmetic circuit tends to vary depending on the error resiliency of the target application. Given this, the manual coding of approximate arithmetic circuits corresponding to different degrees of approximation in a hardware description language (HDL) may be a cumbersome and a time-consuming process—more so when the circuit is big. Therefore, a software tool that can automatically generate approximate arithmetic circuits of any size corresponding to a desired accuracy would not only aid the design flow but also help to improve a designer’s productivity by speeding up the circuit/system development. In this context, this paper presents ‘Approximator’, which is a software tool developed to automatically generate approximate arithmetic circuits based on a user’s specification. Approximator can automatically generate Verilog HDL codes of approximate adders and multipliers of any size based on the novel approximate arithmetic circuit architectures proposed by us. The Verilog HDL codes output by Approximator can be used for synthesis in an FPGA or ASIC (standard cell based) design environment. Additionally, the tool can perform error and accuracy analyses of approximate arithmetic circuits. The salient features of the tool are illustrated through some example screenshots captured during different stages of the tool use. Approximator has been made open-access on GitHub for the benefit of the research community, and the tool documentation is provided for the user’s reference.
first_indexed 2024-10-01T07:44:38Z
format Journal Article
id ntu-10356/155010
institution Nanyang Technological University
language English
last_indexed 2024-10-01T07:44:38Z
publishDate 2022
record_format dspace
spelling ntu-10356/1550102022-01-28T06:38:40Z Approximator : a software tool for automatic generation of approximate arithmetic circuits Balasubramanian, Padmanabhan Nayar, Raunaq Min, Okkar Maskell, Douglas Leslie School of Computer Science and Engineering Engineering::Computer science and engineering Approximate Computing Computer Arithmetic Approximate arithmetic circuits are an attractive alternative to accurate arithmetic circuits because they have significantly reduced delay, area, and power, albeit at the cost of some loss in accuracy. By keeping errors due to approximate computation within acceptable limits, approximate arithmetic circuits can be used for various practical applications such as digital signal processing, digital filtering, low power graphics processing, neuromorphic computing, hardware realization of neural networks for artificial intelligence and machine learning etc. The degree of approximation that can be incorporated into an approximate arithmetic circuit tends to vary depending on the error resiliency of the target application. Given this, the manual coding of approximate arithmetic circuits corresponding to different degrees of approximation in a hardware description language (HDL) may be a cumbersome and a time-consuming process—more so when the circuit is big. Therefore, a software tool that can automatically generate approximate arithmetic circuits of any size corresponding to a desired accuracy would not only aid the design flow but also help to improve a designer’s productivity by speeding up the circuit/system development. In this context, this paper presents ‘Approximator’, which is a software tool developed to automatically generate approximate arithmetic circuits based on a user’s specification. Approximator can automatically generate Verilog HDL codes of approximate adders and multipliers of any size based on the novel approximate arithmetic circuit architectures proposed by us. The Verilog HDL codes output by Approximator can be used for synthesis in an FPGA or ASIC (standard cell based) design environment. Additionally, the tool can perform error and accuracy analyses of approximate arithmetic circuits. The salient features of the tool are illustrated through some example screenshots captured during different stages of the tool use. Approximator has been made open-access on GitHub for the benefit of the research community, and the tool documentation is provided for the user’s reference. Ministry of Education (MOE) Published version This research was funded by the Ministry of Education (MOE), Singapore under an academic research fund Tier-2 grant MOE2018-T2-2-024. 2022-01-26T08:18:41Z 2022-01-26T08:18:41Z 2022 Journal Article Balasubramanian, P., Nayar, R., Min, O. & Maskell, D. L. (2022). Approximator : a software tool for automatic generation of approximate arithmetic circuits. Computers, 11(1), 11-. https://dx.doi.org/10.3390/computers11010011 2073-431X https://hdl.handle.net/10356/155010 10.3390/computers11010011 1 11 11 en MOE2018-T2-2-024 Computers © 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https:// creativecommons.org/licenses/by/ 4.0/). application/pdf
spellingShingle Engineering::Computer science and engineering
Approximate Computing
Computer Arithmetic
Balasubramanian, Padmanabhan
Nayar, Raunaq
Min, Okkar
Maskell, Douglas Leslie
Approximator : a software tool for automatic generation of approximate arithmetic circuits
title Approximator : a software tool for automatic generation of approximate arithmetic circuits
title_full Approximator : a software tool for automatic generation of approximate arithmetic circuits
title_fullStr Approximator : a software tool for automatic generation of approximate arithmetic circuits
title_full_unstemmed Approximator : a software tool for automatic generation of approximate arithmetic circuits
title_short Approximator : a software tool for automatic generation of approximate arithmetic circuits
title_sort approximator a software tool for automatic generation of approximate arithmetic circuits
topic Engineering::Computer science and engineering
Approximate Computing
Computer Arithmetic
url https://hdl.handle.net/10356/155010
work_keys_str_mv AT balasubramanianpadmanabhan approximatorasoftwaretoolforautomaticgenerationofapproximatearithmeticcircuits
AT nayarraunaq approximatorasoftwaretoolforautomaticgenerationofapproximatearithmeticcircuits
AT minokkar approximatorasoftwaretoolforautomaticgenerationofapproximatearithmeticcircuits
AT maskelldouglasleslie approximatorasoftwaretoolforautomaticgenerationofapproximatearithmeticcircuits