skip to main content
research-article

A Methodology for Fault-tolerant Pareto-optimal Approximate Designs of FPGA-based Accelerators

Published: 24 July 2023 Publication History

Abstract

Approximate Computing Techniques (ACTs) take advantage of resilience computing applications to trade off among output precision, area, power, and performance. ACTs can lead to significant gains at affordable costs when efficiently implemented on Field Programmable Gate Array– (FPGA) based accelerators. Although several novel ACTs works have been proposed for FPGA accelerators, their applicability to high-assurance systems has not been explored as much. ACTs are becoming necessary in many critical Edge computing systems, such as self-driving cars and Earth observation satellites, to increase computational efficiency. However, an important question comes to mind when targeting critical systems: Does ACT optimization negatively affect the reliability of the system and how can one find optimal design architectures that blend classic mitigation techniques like Triple Modular Redundancy with approximation- and precise-based arithmetic hardware units to achieve the best possible computational efficiency without compromising dependability? This work aims to solve this research problem by introducing a Design Space Exploration (DSE) methodology that employs ACTs in arithmetic units of the design and identifies Pareto-optimal microarchitectures that balance all relevant gains of ACTs, such as area, speed, power, failure rate, and precision, by inserting the correct amount of approximation in the design. In a nutshell, our DSE methodology has formulated the DSE with a Multi-Objective Optimization Problem (MOP). Each Pareto-optimal solution of our tool finds which arithmetic units of the design to implement with precise and approximate circuits and which units to selectively triplicate to remove single points of failure that compromise system reliability below acceptable thresholds. We also suggest another formulation of the DSE into a Single-Objective constraint Optimization Problem (ScOP) producing a single optimal point, and that the user may demand, as a less time-consuming alternative to the MOP if a complete Pareto-front is not needed. Our methodology generates fault-tolerant versions of the Pareto-optimal approximate designs (or simple optimized approximate designs if the ScOP choice is picked) by selectively applying mitigation techniques in a way that the overheads of redundant resources for fault-tolerance do not negate the gains of approximation in comparison to the fault-tolerant versions of the precise design. We evaluate our method on two FPGA-based accelerators: a JPEG encoder and an H.264/Advanced Video Coding decoder. Our experimental results show significant gains in area, frequency, and power consumption without compromising output quality and system reliability compared to classic solutions that replicate all or a part of the resources of the precise design to increase dependability metrics.

References

[1]
Haider A. F. Almurib, Thulasiraman Nandha Kumar, and Fabrizio Lombardi. 2018. Approximate DCT image compression using inexact computing. IEEE Trans. Comput. 67, 2 (2018), 149–159.
[2]
Alexander Aponte-Moreno, Felipe Restrepo-Calle, and Cesar Pedraza. 2021. FTxAC: Leveraging the approximate computing paradigm in the design of fault-tolerant embedded systems to reduce overheads. IEEE Trans. Emerg. Top. Comput. 9, 2 (2021), 797–810.
[3]
Mario Barbareschi, Salvatore Barone, Alberto Bosio, Jie Han, and Marcello Traiola. 2022. A genetic-algorithm-based approach to the design of DCT hardware accelerators. J. Emerg. Technol. Comput. Syst. 18, 3, Article 50 (January2022), 25 pages.
[4]
Mario Barbareschi, Federico Iannucci, and Antonino Mazzeo. 2016. An extendible design exploration tool for supporting approximate computing techniques. In Proceedings of the International Conference on Design and Technology of Integrated Systems in Nanoscale Era (DTIS’16). 1–6.
[5]
Matteo Biasielli, Cristiana Bolchini, Luca Cassano, Andrea Mazzeo, and Antonio Miele. 2022. Approximation-based fault tolerance in image processing applications. IEEE Trans. Emerg. Top. Comput. 10, 2 (2022), 648–661.
[6]
Alberto Bosio, Stefano Di Carlo, Patrick Girard, Ernesto Sanchez, Alessandro Savino, Lukas Sekanina, Marcello Traiola, Zdenek Vasicek, and Arnaud Virazel. 2020. Design, verification, test and in-field implications of approximate computing systems. In Proceedings of the IEEE European Test Symposium (ETS’20). 1–10.
[7]
A. Bosio, W. J. Perez-Holguin, and E. Sanchez. 2019. Exploiting approximate computing to increase system lifetime. In Proceedings of the IFIP/IEEE International Conference on Very Large Scale Integration (VLSI-SoC’19). 311–316.
[8]
Arun Chandrasekharan, Stephan Eggersglüß, Daniel Große, and Rolf Drechsler. 2018. Approximation-aware testing for approximate circuits. In Proceedings of the Asia and South Pacific Design Automation Conference (ASP-DAC’18). 239–244.
[9]
Mathworks Corp.2021. Paretosearch Algorithm–Matlab R2021b.
[10]
Mathworks Corp.2021. Patternsearch Algorithm–Matlab R2021b.
[11]
Gianmarco Dinelli, Gabriele Meoni, Emilio Rapuano, and Luca Fanucci. 2020. Advantages and limitations of fully on-chip CNN FPGA-based hardware accelerator. In Proceedings of the IEEE International Symposium on Circuits and Systems (ISCAS’20). 1–5.
[12]
Gianluca Furano, Gabriele Meoni, Aubrey Dunne, David Moloney, Veronique Ferlet-Cavrois, Antonis Tavoularis, Jonathan Byrne, Leonie Buckley, Mihalis Psarakis, Kay-Obbe Voss, and Luca Fanucci. 2020. Towards the use of artificial intelligence on the edge in space systems: Challenges and opportunities. IEEE Aerosp. Electr. Syst. Mag. 35, 12 (2020), 44–56.
[13]
Weiqiang Liu, Tingting Zhang, Emma McLarnon, Maire O’Neill, Paolo Montuschi, and Fabrizio Lombardi. 2019. Design and analysis of majority logic-based approximate adders and multipliers. IEEE Trans. Emerg. Top. Comput. 9, 3 (2019), 1609–1624.
[14]
Manu Manuel, Arne Kreddig, Simon Conrady, Nguyen Anh Vu Doan, and Walter Stechele. 2020. Model-based design space exploration for approximate image processing on FPGA. In Proceedings of the IEEE Nordic Circuits and Systems Conference (NorCAS’20). 1–7.
[15]
Sparsh Mittal. 2016. A survey of techniques for approximate computing. ACM Comput. Surv. 48, 4, Article 62 (March2016), 33 pages.
[16]
Sparsh Mittal. 2020. A survey of FPGA-based accelerators for convolutional neural networks. Neural Comput. Appl. 32, 4 (2020), 1109–1139.
[17]
Opencores. 2012. JPEG Encoder Verilog. Retrieved from https://opencores.org/projects/jpegencode.
[18]
Opencores. 2016. nova. H.264/AVC Baseline Decoder. Retrieved from https://opencores.org/projects/nova.
[19]
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 Annual ACM/IEEE Design Automation Conference (DAC’20). 1–6. DOI:
[20]
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 Design, Automation Test in Europe Conference Exhibition (DATE’18). 917–920.
[21]
Gennaro Rodrigues, Fernanda Lima Kastensmidt, and Alberto Bosio. 2020. Survey on approximate computing and its intrinsic fault tolerance. Electronics 9, 4 (2020), 557.
[22]
Gennaro S. Rodrigues, Fernanda L. Kastensmidt, Vincent Pouget, and Alberto Bosio. 2018. Performances vs reliability: How to exploit approximate computing for safety-critical applications. In Proceedings of the IEEE International Symposium on On-Line Testing And Robust System Design (IOLTS’18). 291–294.
[23]
Annachiara Ruospo, Alberto Bosio, Alessandro Ianne, and Ernesto Sanchez. 2020. Evaluating convolutional neural networks reliability depending on their data representation. In Proceedings of the Euromicro Conference on Digital System Design (DSD’20). 672–679.
[24]
Hassaan Saadat, Tuo Li, Haris Javaid, and Sri Parameswaran. 2020. A sub-range error characterization based selection methodology for approximate arithmetic units. In Proceedings of the International Conference on VLSI Design and International Conference on Embedded Systems (VLSID’20). 84–89.
[25]
Alessandro Savino, Michele Portolan, Regis Leveugle, and Stefano Di Carlo. 2019. Approximate computing design exploration through data lifetime metrics. In Proceedings of the IEEE European Test Symposium (ETS’19). 1–7.
[26]
Alessandro Savino, Marcello Traiola, Stefano Di Carlo, and Alberto Bosio. 2021. Efficient neural network approximation via bayesian reasoning. In Proceedings of the 24th International Symposium on Design and Diagnostics of Electronic Circuits Systems (DDECS’21). 45–50.
[27]
Shrija. 2016. A Reconfigurable Approximate JPEG Encoder Implemented on FPGA Platform. Master’s thesis.
[28]
The University of Southern California 2022. SIPI Image Database. The University of Southern California.
[29]
Marcello Traiola, Jorge Echavarria, Alberto Bosio, Jürgen Teich, and Ian O’Connor. 2021. Design space exploration of approximation-based quadruple modular redundancy circuits. In Proceedings of the IEEE/ACM International Conference On Computer Aided Design (ICCAD’21). 1–9.
[30]
Marcello Traiola, Alessandro Savino, and Stefano Di Carlo. 2019. Probabilistic estimation of the application-level impact of precision scaling in approximate computing applications. Microelectr. Reliabil. 102 (2019), 113309.
[31]
Marcello Traiola, Arnaud Virazel, Patrick Girard, Mario Barbareschi, and Alberto Bosio. 2019. A test pattern generation technique for approximate circuits based on an ILP-formulated pattern selection procedure. IEEE Trans. Nanotechnol. 18 (2019), 849–857.
[32]
Antonis Tsigkanos, Nektarios Kranitis, George Theodorou, and Antonis Paschalis. 2021. A 3.3 Gbps CCSDS 123.0-B-1 multispectral amp; Hyperspectral image compression hardware accelerator on a space-grade SRAM FPGA. IEEE Trans. Emerg. Top. Comput. 9, 1 (2021), 90–103.
[33]
Ioannis Tsounis, Athanasios Papadimitriou, and Mihalis Psarakis. 2021. Analyzing the impact of approximate adders on the reliability of FPGA accelerators. In Proceedings of the IEEE European Test Symposium (ETS’21). 1–2.
[34]
Ioannis Tsounis, Athanasios Papadimitriou, and Mihalis Psarakis. 2021. Approximation space exploration for FPGA accelerators using fault injection. In AxC21: Workshop on Approximate Computing, in conjunction with ICCAD21. 1–2.
[35]
Michael Wirthlin. 2015. High-reliability FPGA-based systems: Space, high-energy physics, and beyond. Proc. IEEE 103, 3 (2015), 379–389.

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Embedded Computing Systems
ACM Transactions on Embedded Computing Systems  Volume 22, Issue 4
July 2023
551 pages
ISSN:1539-9087
EISSN:1558-3465
DOI:10.1145/3610418
  • Editor:
  • Tulika Mitra
Issue’s Table of Contents

Publisher

Association for Computing Machinery

New York, NY, United States

Journal Family

Publication History

Published: 24 July 2023
Online AM: 14 October 2022
Accepted: 03 October 2022
Revised: 12 August 2022
Received: 21 April 2022
Published in TECS Volume 22, Issue 4

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Approximate Computing Techniques
  2. approximate adders
  3. FPGAs
  4. Pareto-optimal
  5. fault tolerance
  6. JPEG
  7. DCT
  8. selective-TMR

Qualifiers

  • Research-article

Funding Sources

  • Hellenic Foundation for Research and Innovation (HFRI)

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)150
  • Downloads (Last 6 weeks)19
Reflects downloads up to 14 Sep 2024

Other Metrics

Citations

Cited By

View all

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

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media