Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

AppAxO: Designing Application-specific Approximate Operators for FPGA-based Embedded Systems

Published: 28 May 2022 Publication History

Abstract

Approximate arithmetic operators, such as adders and multipliers, are increasingly used to satisfy the energy and performance requirements of resource-constrained embedded systems. However, most of the available approximate operators have an application-agnostic design methodology, and the efficacy of these operators can only be evaluated by employing them in the applications. Furthermore, the various available libraries of approximate operators do not share any standard approximation-induction policy to design new operators according to an application’s accuracy and performance constraints. These limitations also hinder the utilization of machine learning models to explore and determine approximate operators according to an application’s requirements. In this work, we present a generic design methodology for implementing FPGA-based application-specific approximate arithmetic operators. Our proposed technique utilizes lookup tables and carry-chains of FPGAs to implement approximate operators according to the input configurations. For instance, for an \(\text{M}\times \text{N}\) accurate multiplier utilizing K lookup tables, our methodology utilizes K-bit configurations to design \(2^K\) approximate multipliers. We then utilize various machine learning models to evaluate and select configurations satisfying application accuracy and performance constraints. We have evaluated our proposed methodology for three benchmark applications, i.e., biomedical signal processing, image processing, and ANNs. We report more non-dominated approximate multipliers with better hypervolume contribution than state-of-the-art designs for these benchmark applications with the proposed design methodology.

References

[1]
Martín Abadi, Paul Barham, Jianmin Chen, Zhifeng Chen, Andy Davis, Jeffrey Dean, Matthieu Devin, Sanjay Ghemawat, Geoffrey Irving, Michael Isard, et al. 2016. Tensorflow: A system for large-scale machine learning. In Proceedings of the 12th \(\lbrace\) USENIX \(\rbrace\) Symposium on Operating Systems Design and Implementation. 265–283.
[2]
Anonymous. 2021. MNIST-cnn. Retrieved February 2, 2021 from https://github.com/integeruser/MNIST-cnn.
[3]
Chidanand Apté and Sholom Weiss. 1997. Data mining with decision trees and decision rules. Future Generation Computer Systems 13, 2–3 (1997), 197–210.
[4]
Charles R. Baugh and Bruce A. Wooley. 1973. A two’s complement parallel array multiplication algorithm. IEEE Transactions on Computers 100, 12 (1973), 1045–1047.
[5]
Francesco Biscani and Dario Izzo. 2020. A parallel global multiobjective framework for optimization: pagmo. Journal of Open Source Software 5, 53 (2020), 2338. DOI:
[6]
Léon Bottou. 2010. Large-scale machine learning with stochastic gradient descent. In Proceedings of COMPSTAT’2010. Springer, 177–186.
[7]
Vinay K. Chippa, Srimat T. Chakradhar, Kaushik Roy, and Anand Raghunathan. 2013. Analysis and characterization of inherent application resilience for approximate computing. In Proceedings of the 50th Annual Design Automation Conference. Association for Computing Machinery, New York, NY, Article 113, 9 pages.
[8]
Gari D. Clifford, Chengyu Liu, Benjamin Moody, Li-wei H. Lehman, Ikaro Silva, Qiao Li, A. E. Johnson, and Roger G. Mark. 2017. AF classification from a short single lead ECG recording: The PhysioNet/computing in cardiology challenge 2017. In Proceedings of the 2017 Computing in Cardiology. 1–4. DOI:
[9]
Li Deng. 2012. The MNIST database of handwritten digit images for machine learning research [best of the web]. IEEE Signal Processing Magazine 29, 6 (2012), 141–142.
[10]
Zahra Ebrahimi, Salim Ullah, and Akash Kumar. 2020. SIMDive: Approximate SIMD soft multiplier-divider for FPGAs with tunable accuracy. In Proceedings of the 2020 on Great Lakes Symposium on VLSI. Association for Computing Machinery, New York, NY, 151–156. DOI:
[11]
Jerome H. Friedman. 2002. Stochastic gradient boosting. Computational Statistics and Data Analysis 38, 4 (2002), 367–378.
[12]
Vaibhav Gupta, Debabrata Mohapatra, Anand Raghunathan, and Kaushik Roy. 2013. Low-power digital signal processing using approximate adders. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 32, 1 (2013), 124–137. DOI:
[13]
Soheil Hashemi, R. Iris Bahar, and Sherief Reda. 2015. DRUM: A dynamic range unbiased multiplier for approximate applications. In Proceedings of the 2015 IEEE/ACM International Conference on Computer-Aided Design. IEEE, 418–425.
[14]
Hou-Jen Ko and Shen-Fu Hsiao. 2011. Design and application of faithfully rounded and truncated multipliers with combined deletion, reduction, truncation, and rounding. IEEE Transactions on Circuits and Systems II: Express Briefs 58, 5 (2011), 304–308. DOI:
[15]
Parag Kulkarni, Puneet Gupta, and Milos Ercegovac. 2011. Trading accuracy for power with an underdesigned multiplier architecture. In Proceedings of the 2011 24th Internatioal Conference on VLSI Design. 346–351. DOI:
[16]
Khaing Yin Kyaw, Wang Ling Goh, and Kiat Seng Yeo. 2010. Low-power high-speed multiplier for error-tolerant application. In Proceedings of the 2010 IEEE International Conference of Electron Devices and Solid-state Circuits. IEEE, 1–4.
[17]
Yann LeCun, Léon Bottou, Yoshua Bengio, and Patrick Haffner. 1998. Gradient-based learning applied to document recognition. Proceedings of the IEEE 86, 11 (1998), 2278–2324. DOI:
[18]
Andy Liaw, Matthew Wiener, et al. 2002. Classification and regression by randomForest. R News 2, 3 (2002), 18–22.
[19]
Sparsh Mittal. 2016. A survey of techniques for approximate computing. ACM Computing Surveys 48, 4, Article 62 (March 2016), 33 pages. DOI:
[20]
Vojtech Mrazek, Muhammad Abdullah Hanif, Zdenek Vasicek, Lukas Sekanina, and Muhammad Shafique. 2019. AutoAx: An automatic design space exploration and circuit building methodology utilizing libraries of approximate components. In Proceedings of the 56th Annual Design Automation Conference 2019 . Association for Computing Machinery, New York, NY, Article 123, 6 pages. DOI:
[21]
Vojtech Mrazek, Radek Hrbacek, Zdenek Vasicek, and Lukas Sekanina. 2017. EvoApprox8b: Library of approximate adders and multipliers for circuit design and benchmarking of approximation methods. In Proceedings of the Design, Automation Test in Europe Conference Exhibition. 258–261. DOI:
[22]
Vojtech Mrazek, Syed Shakib Sarwar, Lukas Sekanina, Zdenek Vasicek, and Kaushik Roy. 2016. Design of power-efficient approximate multipliers for approximate artificial neural networks. In Proceedings of the 35th International Conference on Computer-Aided Design . Association for Computing Machinery, New York, NY, Article 81, 7 pages. DOI:
[23]
Vojtech Mrazek, Lukas Sekanina, and Zdenek Vasicek. 2020. Libraries of approximate circuits: automated design and application in CNN accelerators. IEEE Journal on Emerging and Selected Topics in Circuits and Systems 10, 4 (2020), 406–418. DOI:
[24]
Fionn Murtagh. 1991. Multilayer perceptrons for classification and regression. Neurocomputing 2, 5–6 (1991), 183–197.
[25]
Jiapu Pan and Willis J. Tompkins. 1985. A real-time QRS detection algorithm. IEEE Transactions on Biomedical Engineering BME-32, 3 (1985), 230–236. DOI:
[26]
Nicola Petra, Davide De Caro, Valeria Garofalo, Ettore Napoli, and Antonio G. M. Strollo. 2010. Truncated binary multipliers with variable correction and minimum mean square error. IEEE Transactions on Circuits and Systems I: Regular Papers 57, 6 (2010), 1312–1325. DOI:
[27]
Bharath Srinivas Prabakaran, Vojtech Mrazek, Zdenek Vasicek, Lukas Sekanina, and Muhammad Shafique. 2020. ApproxFPGAs: Embracing ASIC-based approximate arithmetic components for FPGA-based systems. In Proceedings of the 2020 57th ACM/IEEE Design Automation Conference. DOI:
[28]
Bharath Srinivas Prabakaran, Semeen Rehman, Muhammad Abdullah Hanif, Salim Ullah, Ghazal Mazaheri, Akash Kumar, and Muhammad Shafique. 2018. DeMAS: An efficient design methodology for building approximate adders for FPGA-based systems. In Proceedings of the 2018 Design, Automation Test in Europe Conference Exhibition. 917–920. DOI:
[29]
Semeen Rehman, Walaa El-Harouni, Muhammad Shafique, Akash Kumar, Jorg Henkel, and Jörg Henkel. 2016. Architectural-space exploration of approximate multipliers. In Proceedings of the 2016 IEEE/ACM International Conference on Computer-Aided Design. 1–8. DOI:
[30]
Muhammad Shafique, Waqas Ahmad, Rehan Hafiz, and Jörg Henkel. 2015. A low latency generic accuracy configurable adder. In Proceedings of the 52nd Annual Design Automation Conference. Association for Computing Machinery, New York, NY, Article 86, 6 pages. DOI:
[31]
Alex J. Smola and Bernhard Schölkopf. 2004. A tutorial on support vector regression. Statistics and Computing 14, 3 (2004), 199–222.
[32]
Salim Ullah, Sanjeev Sripadraj Murthy, and Akash Kumar. 2018. SMApproxlib: Library of FPGA-based approximate multipliers. In Proceedings of the 55th Annual Design Automation Conference . Association for Computing Machinery, New York, NY, Article Article 157, 6 pages. DOI:
[33]
Salim Ullah, Tuan Duy Anh Nguyen, and Akash Kumar. 2021. Energy-efficient low-latency signed multiplier for FPGA-based hardware accelerators. IEEE Embedded Systems Letters 13, 2 (jun 2021), 41–44. DOI:
[34]
Salim Ullah, Semeen Rehman, Bharath Srinivas Prabakaran, Florian Kriebel, Muhammad Abdullah Hanif, Muhammad Shafique, and Akash Kumar. 2018. Area-optimized low-latency approximate multipliers for FPGA-based hardware accelerators. In Proceedings of the 55th Annual Design Automation Conference. Association for Computing Machinery, New York, NY, Article Article 159, 6 pages. DOI:
[35]
Salim Ullah, Semeen Rehman, Muhammad Shafique, and Akash Kumar. 2021. High-performance accurate and approximate multipliers for FPGA-based hardware accelerators. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems 41, 2 (2021), 1–1. DOI:
[36]
Salim Ullah, Hendrik Schmidl, Siva Satyendra Sahoo, Semeen Rehman, and Akash Kumar. 2021. Area-optimized accurate and approximate softcore signed multiplier architectures. IEEE Transactions on Computers 70, 3 (2021), 384–392. DOI:
[37]
Xilinx. 2017. UltraScale Architecture Configurable Logic Block. https://docs.xilinx.com/v/u/en-US/ug574-ultrascale-clb.
[38]
Amir Yazdanbakhsh, Divya Mahajan, Hadi Esmaeilzadeh, and Pejman Lotfi-Kamran. 2017. AxBench: A multiplatform benchmark suite for approximate computing. IEEE Design Test 34, 2 (2017), 60–68. DOI:

Cited By

View all
  • (2024)AxOMaP: Designing FPGA-based Approximate Arithmetic Operators using Mathematical ProgrammingACM Transactions on Reconfigurable Technology and Systems10.1145/364869417:2(1-28)Online publication date: 30-Apr-2024
  • (2024)A Survey on Approximate Multiplier Designs for Energy Efficiency: From Algorithms to CircuitsACM Transactions on Design Automation of Electronic Systems10.1145/361029129:1(1-37)Online publication date: 13-Jan-2024
  • (2024) AxOCS : Scaling FPGA-Based Approximate Operators Using Configuration Supersampling IEEE Transactions on Circuits and Systems I: Regular Papers10.1109/TCSI.2024.338533371:6(2646-2659)Online publication date: Jun-2024
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Embedded Computing Systems
ACM Transactions on Embedded Computing Systems  Volume 21, Issue 3
May 2022
365 pages
ISSN:1539-9087
EISSN:1558-3465
DOI:10.1145/3530307
  • Editor:
  • Tulika Mitra
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 28 May 2022
Online AM: 11 February 2022
Accepted: 01 January 2022
Revised: 01 October 2021
Received: 01 August 2021
Published in TECS Volume 21, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Approximate computing
  2. arithmetic circuits
  3. multipliers
  4. machine learning models
  5. energy efficient computing
  6. FPGA
  7. high-level synthesis

Qualifiers

  • Research-article
  • Refereed

Funding Sources

  • German Research Foundation (DFG)

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)176
  • Downloads (Last 6 weeks)19
Reflects downloads up to 04 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2024)AxOMaP: Designing FPGA-based Approximate Arithmetic Operators using Mathematical ProgrammingACM Transactions on Reconfigurable Technology and Systems10.1145/364869417:2(1-28)Online publication date: 30-Apr-2024
  • (2024)A Survey on Approximate Multiplier Designs for Energy Efficiency: From Algorithms to CircuitsACM Transactions on Design Automation of Electronic Systems10.1145/361029129:1(1-37)Online publication date: 13-Jan-2024
  • (2024) AxOCS : Scaling FPGA-Based Approximate Operators Using Configuration Supersampling IEEE Transactions on Circuits and Systems I: Regular Papers10.1109/TCSI.2024.338533371:6(2646-2659)Online publication date: Jun-2024
  • (2024)FPGA approximate logic synthesis through catalog-based AIG-rewriting techniqueJournal of Systems Architecture: the EUROMICRO Journal10.1016/j.sysarc.2024.103112150:COnline publication date: 1-May-2024
  • (2023)AxOTreeS: A Tree Search Approach to Synthesizing FPGA-based Approximate OperatorsACM Transactions on Embedded Computing Systems10.1145/360909622:5s(1-26)Online publication date: 9-Sep-2023
  • (2023)FPGA based CNN accelerator for high-speed biomedical applicationHigh-Speed Biomedical Imaging and Spectroscopy VIII10.1117/12.2650101(56)Online publication date: 16-Mar-2023
  • (2023)Experimental analysis of the symmetry of approximate adder designs in FPGA and ASIC2023 XIII Brazilian Symposium on Computing Systems Engineering (SBESC)10.1109/SBESC60926.2023.10324275(1-6)Online publication date: 21-Nov-2023
  • (2023)Efficient Accelerator Design in High-Level Synthesis Using Approximate Logic Components2023 IEEE Computer Society Annual Symposium on VLSI (ISVLSI)10.1109/ISVLSI59464.2023.10238558(1-6)Online publication date: 20-Jun-2023
  • (2023)Xel-FPGAs: An End-to-End Automated Exploration Framework for Approximate Accelerators in FPGA-Based Systems2023 IEEE/ACM International Conference on Computer Aided Design (ICCAD)10.1109/ICCAD57390.2023.10323678(1-9)Online publication date: 28-Oct-2023
  • (2023)Approximation of Hardware Accelerators driven by Machine-Learning Models : (Embedded Tutorial)2023 26th International Symposium on Design and Diagnostics of Electronic Circuits and Systems (DDECS)10.1109/DDECS57882.2023.10139484(91-92)Online publication date: 3-May-2023
  • Show More Cited By

View Options

Get Access

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Full Text

View this article in Full Text.

Full Text

HTML Format

View this article in HTML Format.

HTML Format

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media