Skip to main content
Log in

Test and Reliability in Approximate Computing

  • Published:
Journal of Electronic Testing Aims and scope Submit manuscript

Abstract

This paper presents an overview of test and reliability approaches for approximate computing architectures. We focus on how specific methods for test and reliability can be used to improve the characteristics of approximate computing in terms of power consumption, area, life expectancy and precision. This paper does not address specification and design of approximate hardware/software/algorithms, but provides an in-depth knowledge on how the reliability and test related techniques can be efficiently used to maximize the benefits of approximate computing.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

References

  1. (2016) Pulpino. [Online]. Available: http://www.pulp-platform.org/

  2. (2017) Tetramax. [Online]. Available: https://www.synopsys.com/

  3. Anghel L, Benabdenbi M, Bosio A, Vatajelu EI (2017) Test and reliability in approximate computing. In Proc. International Mixed Signals Testing Workshop (IMSTW), Thessaloniki, pp. 1–6

  4. Austin T et al (2005) Opportunities and challenges for better than worst-case design. In Proc. Asia and South Pacific Design Automation Conference (ASP-DAC), pages 2–7

  5. Borkar S, Karnik T, De V(2004) Design and reliability challenges in nanometer technologies. In Proc IEEE/ACM Design Automation Conference (DAC), pp 7–11

  6. Chakradhar ST, Raghunathan A (2010) Best-effort computing: re-thinking parallel software and hardware. In Proc. Design Automation Conference, Anaheim, CA, pp. 865–870

  7. Chen Y-K et al (2008) Convergence of recognition, mining, synthesis workloads and its implications. Proc IEEE 96(5):790–807

    Article  Google Scholar 

  8. Chippa VK, Chakradhar ST, Roy K, Raghunathan A (2013)Analysis and characterization of inherent application resilience for approximate computing. In Proc. IEEE/ACM Design Automation Conference

  9. Chippa VK et al (2015) Scalable effort hardware design. IEEE Trans Very Large Scale Integr VLSI Syst 22(9):2004–2016

  10. Esmaeilzadeh H, Sampson A, Ceze L, Burger D (2012) Neural acceleration for general-purpose approximate programs. In Proc. International Symposium on Microarchitecture (MICRO), pp. 449–460

  11. Esmaeilzadeh H, Sampson A, Ceze L, Burger D (2012) Architecture support for disciplined approximate programming. Isn Proc. Int. Conf. Architect. Support Programm. Lang. Oper. Syst., pp. 301–312

  12. Ganapathy S, Karakonstantis G, Teman A, Burg A (2015) Mitigating the impact of faults in unreliable memories for error-resilient applications. Proceedings of the 52nd Annual Design Automation Conference, 2015

  13. Gilani SZ, Kim NS, Schulte M (2013) Scratchpad memory optimization for digital signal processing applications. In Proc. IEEE/ACM Design Automation and Test in Europe

  14. Gupta V, et al (2011) IMPACT: IMPrecise adders for low-power approximate computing. In Proc. ACM/IEEE International Symposium on Low Power Electronics and Design (ISPLED), pp. 409–414

  15. Han J, Orshansky M, (2013) Approximate computing: an emerging paradigm for energy-efficient design. In Proc. IEEE European Test Symposium (ETS), pp. 1–6

  16. Hoffmann H, Misailovic S, Sidiroglou S, Agarwal A, Rinard M (2009) Using code perforation to improve performance, reduce energy consumption, respond to failures. MIT Technical Report: MIT-CSAIL-TR 2009-042

  17. Jaina SVS, Raghunathan A (2016) Approximation through logic isolation for the design of quality configurable circuits. In Proc. of the Design, Automation & Test in Europe Conference

  18. Jiang Z, Gupta SK (2002) An ATPG for threshold testing: obtaining acceptable yield in future processes. In Proc. International Test Conference, pp. 824–833

  19. Jiang H, et al (2015) A comparative review and evaluation of approximate adders. Proc. ACM Great Lakes Symposium on VLSI (GLSVLSI), pp. 343–348

  20. Kahng AB, Kang S, (2012) Accuracy-configurable adder for approximate arithmetic designs. In Proc. IEEE/ACM Design Automation Conference (DAC), pp. 820–825

  21. Kahng AB, Kang S, Kumar R, Sartori J (2010) Slack redistribution for graceful degradation under voltage overscaling. In Proc. 15th Asia and South Pacific Design Automation Conference (ASP-DAC). IEEE, pp. 825–831

  22. Keramidas G, et al (2015) Clumsy value cache: an approximate memoization technique for mobile GPU fragment shaders. Proc. Workshop on Approximate Computing (WAPCO)

  23. Kim Y, Venkataramani S, Roy K, Raghunathan A (2016) Designing approximate circuits using clock overgating. In Proc. of the Design Automation Conference

  24. Kulkarni P, Gupta P, Ercegovac MD (2011) Trading accuracy for power in a multiplier architecture. J Low Power Electron 7(4):490–501

  25. Kulkarni P, Gupta P, Ercegovac M (2011) Trading accuracy for power with an underdesigned multiplier architecture. In Proc. 2011 24th Internatioal Conference on VLSI Design, pp. 346–351

  26. Lee KJ, Hsieh TY, Breuer MA (May 2012) Efficient overdetection elimination of acceptable faults for yield improvement. IEEE Trans Comput Aided Des Integr Circuits Syst 31(5):754–764

    Article  Google Scholar 

  27. Lee I, Kwon J, Park J, Park J (2013) Priority based error correction code (ECC) for the embedded SRAM memories in H.264 system. J Signal Process Syst 73(2):123–136

    Article  Google Scholar 

  28. Maricau E, Gielen G (2013) Analog IC reliability in nanometer CMOS, Analog Circuits and Signal Processing, Springer Science+Business Media New York

  29. Mittal S (2016) A survey of techniques for approximate computing. ACM Comput Surv (CSUR) 48(4):1–33

  30. Palomino D, Shafique M, Susin A, Henkel J (2016) Thermal optimization using adaptive approximate computing for video coding. In Proc IEEE/ACM Design, Automation & Test in Europe Conference & Exhibition (DATE)

  31. Ragavan R, Killian C, Sentieys O (2016) Adaptive overclocking and error correction based on dynamic speculation window. In Proc IEEE Computer Society Annual Symp on VLSI (ISVLSI)

  32. Ragavan R, Barrois B, Killian C, Sentieys O (2017) Pushing the limits of voltage over-scaling for error resilient applications. In Proc. Design, Automation & Test in Europe Conference & Exhibition

  33. Ramasubramanian SG, Venkataramani S, Parandhaman A, Raghunathan A (2013) Relax-and-retime: a methodology for energy-efficient recovery based design. In Proc. 50th ACM/EDAC/IEEE Design Automation Conference (DAC). IEEE, pp. 1–6

  34. Ringenburg M, et al (2015) “Monitoring and debugging the quality of results in approximate programs”, Proc ACM Architectural Support for Programming Languages and Operating Systems (ASPLOS), pp. 399–411

  35. Shafique M, Hafiz R, Rehman S, ElHAroun W, Henkel J (2016) Cross-layer approximate computing: from logic to architectures, invited talk, June 05–09. In Proc. IEEE/ACM Design Automation Conference (DAC), Austin, TX

  36. Shi Q, Hoffmann H, Khan O (2015) A HW-SW multicore architecture to tradeoff program accuracy and resilience overheads. IEEE Comput Archit Lett 14:85–89

    Article  Google Scholar 

  37. Sidiroglou S, Misailovic S, Hoffmann H, Rinard M (2011) Managing performance vs. accuracy trade-offs with loop perforation. In Proc. ACM SIGSOFT Symposium and the 13th European Conference on Foundations of Software Engineering (ESEC/FSE), pp. 124–134

  38. Sindia S, Agrawal VD, (2012) Tailoring tests for functional binning of integrated circuits. In Proc. 2012 IEEE 21st Asian Test Symposium, pp. 95–100

  39. Teman A, Karakonstantis G, Giterman R, Meinerzhagen P, Burg A (2015) Energy versus data integrity tradeoffs in embedded high-density logic compatible dynamic memories. In Proc. of the Design, Automation & Test in Europe Conference & Exhibition

  40. Vassiliadis V, et al. (2015) A programming model and runtime system for significance-aware energy-efficient computing. Proc. Workshop on Approximate Computing (WAPCO)

  41. Venkataramani S, et al (2012) SALSA: systematic logic synthesis of approximate circuits. In Proc. IEEE/ACM Design Automation Conference (DAC), pp. 796–801

  42. Venkataramani S, Roy K, Raghunathan A (2013) Substitute-and simplify: a unified design paradigm for approximate and quality configurable circuits. In Proc. Design, Automation and Test in Europe, DATE’13. EDA Consortium San Jose, CA, USA, pp. 1367–1372

  43. Wali I, Traiola M, Virazel A, Girard P, Barbareschi M, Bosio A (2017) Towards approximation during test of integrated circuits. In Proc. IEEE 20th International Symposium on Design and Diagnostics of Electronic Circuits Systems

  44. Wan L Chen D (2012) Ccp: common case promotion for improved timing error resilience with energy efficiency. In Proc. the 2012 ACM/IEEE International Symposium on Low Power Electronics and Design, ser. ISLPED ‘12. ACM, pp. 135–140

  45. Xu Q, Mytkowicz T, Sung Kim N (2016) Approximate Computing: a survey. IEEE Des Test Comput 33(1):8–22

Download references

Acknowledgements

The authors of the paper would like to acknowledge the European Union’s H2020 research and innovation program under the Marie Skłodowska-Curie grant agreement No 691178, NANOxCOMP RISE project for partially supporting this work.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Elena Ioana Vatajelu.

Additional information

Responsible Editor: S. T. Chakradhar

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Anghel, L., Benabdenbi, M., Bosio, A. et al. Test and Reliability in Approximate Computing. J Electron Test 34, 375–387 (2018). https://doi.org/10.1007/s10836-018-5734-9

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10836-018-5734-9

Keywords

Navigation