Advertisement

Approximate High-Level Synthesis of Custom Hardware

  • Seogoo Lee
  • Andreas Gerstlauer
Chapter

Abstract

Approximate computing exploits trade-offs between quality and energy/performance of computed results for inherently error-tolerant applications. At the hardware level, various components, such as arithmetic and logic units (ALUs), have been proposed to build approximate hardware processors. However, existing work has been mostly ad hoc or using expensive iterative simulation and resynthesis for design space exploration. In this chapter, we present an approximate high-level synthesis (AHLS) approach that utilizes approximate operators in synthesizing an energy- or performance-optimized register-transfer level (RTL) design from its high-level C description under overall quality constraints at design outputs. In effective AHLS, fast and accurate quality and energy models are required together with an optimization technique to efficiently find a Pareto-optimal design. Quality effects of hardware approximations strongly depend on input data. In this work, a statistical formulation is employed to capture input dependency and analytically estimate quality using one-time profiling only. Energy and performance savings due to approximations strongly depend on operation scheduling and binding. We present an approach that estimates the performance, voltage scaling, and energy impact of approximations while taking into account tight interactions with existing synthesis tasks. Quality, performance, and energy estimation methods are further combined with novel AHLS-specific loop optimizations and heuristic solvers that find Pareto-optimized solutions in an efficient manner. Results show that our tool can achieve near-optimal results with low runtimes, demonstrating energy savings of, on average, more than 77.6%, where up to 24.5% higher savings are achieved compared to approaches that only consider switching activity.

References

  1. 1.
    Barbareschi M, Iannucci F, Mazzeo A (2016) Automatic design space exploration of approximate algorithms for big data applications. In: International conference on advanced information networking and applications (AINA), March 2016Google Scholar
  2. 2.
    Barrois B, Sentieys O, Menard, D (2017) The hidden cost of functional approximation against careful data sizing; a case study. In: Design, automation test in Europe conference exhibition (DATE), March 2017Google Scholar
  3. 3.
    Canis A, Choi J, Aldham M, Zhang V, Kammoona A, Anderson JH, Brown S, Czajkowski T (2011) LegUp: high-level synthesis for FPGA-based processor/accelerator systems. In: International symposium on field programmable gate arrays (FPGA), February 2011Google Scholar
  4. 4.
    Chan W-TJ, Kahng AB, Kang S, Kumar R, Sartori J (2013) Statistical analysis and modeling for error composition in approximate computation circuits. In: International conference on computer design (ICCD), October 2013Google Scholar
  5. 5.
    Chippa VK, Mohapatra D, Roy K, Chakradhar ST, Raghunathan A (2014) Scalable effort hardware design. IEEE Trans Very Large Scale Integr Syst 22(9):2004–2016CrossRefGoogle Scholar
  6. 6.
    Chippa VK, Chakradhar ST, Roy K, Raghunathan A (2013) Analysis and characterization of inherent application resilience for approximate computing. In: Design automation conference (DAC), June 2013Google Scholar
  7. 7.
    Constantinides GA, Cheung PYK, Luk W (2003) Wordlength optimization for linear digital signal processing. IEEE Trans Comput Aided Des Integr Circuits Syst 22(10):1432–1442CrossRefGoogle Scholar
  8. 8.
    Coussy P, Morawiec A (2008) High-level synthesis: from algorithm to digital circuit. Springer, BerlinCrossRefGoogle Scholar
  9. 9.
    Han K, Evans BL (2006) Optimum wordlength search using sensitivity information. EURASIP J Adv Signal Process 2006(1):1–14CrossRefGoogle Scholar
  10. 10.
    Han J, Orshansky M (2013) Approximate computing: an emerging paradigm for energy-efficient design. In: European test symposium (ETS), May 2013Google Scholar
  11. 11.
    He K, Gerstlauer A, Orshansky M (2013) Circuit-level timing-error acceptance for design of energy-efficient DCT/IDCT-based systems. IEEE Trans Circuits Syst Video Technol 23(6):961–974CrossRefGoogle Scholar
  12. 12.
    Huang J, Lach J, Robins G (2012) A methodology for energy-quality tradeoff using imprecise hardware. In: Design automation conference (DAC), June 2012Google Scholar
  13. 13.
    Lattner C, Adve V (2004) LLVM: a compilation framework for lifelong program analysis & transformation. In: International symposium on code generation and optimization with special emphasis on feedback-directed and runtime optimization (CGO), March 2004Google Scholar
  14. 14.
    Lee S (2017) Approximate high-level synthesis of quality and energy optimized hardware processors. PhD thesis, The University of Texas at Austin, December 2017Google Scholar
  15. 15.
    Lee S, Gerstlauer A (2013) Fine grain word length optimization for dynamic precision scaling in DSP systems. In: International Conference on Very Large Scale Integration (VLSI-SoC), October 2013Google Scholar
  16. 16.
    Lee S, Gerstlauer A (2017) High-level synthesis of approximate hardware under joint precision and voltage scaling. In: Design, automation test in Europe conference exhibition (DATE), March 2017Google Scholar
  17. 17.
    Lee S, Gerstlauer A (2018) Data-dependent loop approximations for performance-quality driven high-level synthesis. Embed Syst Lett 10(1):18–21CrossRefGoogle Scholar
  18. 18.
    Lee DU, Gaffar AA, Cheung RCC, Mencer O, Luk W, Constantinides GA (2006) Accuracy-guaranteed bit-width optimization. IEEE Trans Comput Aided Des 25(10):1990–2000CrossRefGoogle Scholar
  19. 19.
    Lee S, Lee D, Han K, Shriver E, John LK, Gerstlauer A (2016) Statistical quality modeling of approximate hardware. In: International symposium on quality electronic design (ISQED), March 2016Google Scholar
  20. 20.
    Li C, Luo W, Sapatnekar SS, Hu J (2015) Joint precision optimization and high level synthesis for approximate computing. In: Design automation conference (DAC), June 2015Google Scholar
  21. 21.
    Menard D, Sentieys O (2002) Automatic evaluation of the accuracy of fixed-point algorithms. In: Design, automation and test in Europe conference exhibition (DATE), March 2002Google Scholar
  22. 22.
    Miao J, Gerstlauer A, Orshansky M (2012) Modeling and synthesis of quality-energy optimal approximate adders. In: International conference on computer-aided design (ICCAD), November 2012Google Scholar
  23. 23.
    Misailovic S, Carbin M, Achour S, Qi Z, Rinard M (2014) Chisel: reliability- and accuracy-aware optimization of approximate computational kernels. In: Conference on object-oriented programming systems, languages, and applications (OOPSLA), October 2014Google Scholar
  24. 24.
    Nepal K, Hashemi S, Tann H, Bahar RI, Reda S (2016) Automated high-level generation of low-power approximate computing circuits. IEEE Trans Emerg Top Comput.  https://doi.org/10.1109/TETC.2016.2598283
  25. 25.
    Ranjan A, Raha A, Venkataramani S, Roy K, Raghunathan A (2014) ASLAN: synthesis of approximate sequential circuits. In: Design, automation test in Europe conference exhibition (DATE), March 2014Google Scholar
  26. 26.
    Sampson A, Baixo A, Randsford B, Moreau T, Yip J, Ceze L, Oskin M (2015) ACCEPT: a programmer-guided compiler framework for practical approximate computing. In: University of Washington Technical Report, 2015Google Scholar
  27. 27.
    Sidiroglou-Douskos S, Misailovic S, Hoffmann H, Rinard M (2011) Managing performance vs. accuracy trade-offs with loop perforation. In: European software engineering conference and symposium on the foundations of software engineering (ESEC/FSE), September 2011Google Scholar
  28. 28.
    Venkata SK, Ahn I, Jeon D, Gupta A, Louie C, Garcia S, Belongie S, Taylor MB (2009) SD-VBS: the San Diego vision benchmark suite. In: International symposium on workload characterization (IISWC), October 2009Google Scholar
  29. 29.
    Venkataramani S, Sabne A, Kozhikkottu V, Roy K, Raghunathan A (2012) SALSA: systematic logic synthesis of approximate circuits. In: Design automation conference (DAC), June 2012Google Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  1. 1.Cadence Design SystemsSan JoseUSA
  2. 2.The University of Texas at AustinAustinUSA

Personalised recommendations