Abstract

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.

Highlights

  • Introduction iationsApproximate computing enables improvement in speed, reductions in area and power, and savings in energy compared to accurate computing at the expense of an acceptable loss in the accuracy of results [1]

  • We describe Approximator, which is a software tool developed to automatically generate Verilog hardware description language (HDL) codes of approximate adders and multipliers of any size, corresponding to the following approximate arithmetic circuit architectures proposed by us: approximate adders (HEAA [20], HOERAA [21], HOAANED [22], and M-HERLOA [23])

  • The images reconstructed using different approximate adders such as LOA [19], LOAWA [29], APPROX5 [30], HEAA, OLOCA [31], HOERAA, HOAANED, HERLOA [32], and M-HERLOA were compared with the original image on the basis of two well-known figures of merit, namely the peak signal to noise ratio (PSNR) [33] and the structural similarity index metric (SSIM) [34]

Read more

Summary

Approximate Adders

The architectures of our approximate adders are first described. The usefulness of the approximate adders for a digital image processing application is demonstrated. The error characteristics of approximate adders are discussed and popular error metrics are provided. The design metrics of accurate and approximate adders corresponding to FPGA- and ASIC-based implementations are given

Approximate Adders—Architectures
Image Processing Application
Image processing result for ‘cameraman’
Error Calculation for Approximate Adders
Design
Approximate Multipliers
Approximate Array Multipliers—Architectures
Error Analysis of Approximate Multipliers
AAMs image with the same resolution and a grayscale resolution
Design Metrics of Accurate and Approximate Multipliers
Automated Generation of Approximate Arithmetic Circuits
GUI Version of Approximator
Developer Perception of Approximator GUI
Verilog Code Generation for Approximate Arithmetic Circuits
Error Analysis of Approximate Arithmetic Circuits
AAM01-V8 shown
Conclusions
Findings
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call