Automated Search-Based Functional Approximation for Digital Circuits

  • Lukas SekaninaEmail author
  • Zdenek Vasicek
  • Vojtech Mrazek


The problem of developing an approximate implementation of a given combinational circuit can be formulated as a multi-objective design problem and solved by means of a search algorithm. This approach usually provides many solutions showing high-quality tradeoffs between key design objectives; however, it is very computationally expensive. This chapter presents a general-purpose method based on genetic programming for an automated functional approximation of combinational circuits at the gate and register-transfer levels. It surveys relevant error metrics and circuit parameters that are typically optimized by genetic programming. A special attention is given to the techniques capable of providing formal guarantees in terms of error bounds and accelerating the search process. Case studies dealing with approximate implementations of arithmetic circuits and image operators are presented to highlight the quality of results obtained by the search-based functional approximation in completely different application domains.



This work was supported by the Czech science foundation project 16-17538S.


  1. 1.
    Ceska M, Matyas J, Mrazek V, Sekanina L, Vasicek Z, Vojnar T (2017) Approximating complex arithmetic circuits with formal error guarantees: 32-bit multipliers accomplished. In: Proceedings of 36th IEEE/ACM international conference on computer aided design. IEEE, Piscataway, pp 416–423Google Scholar
  2. 2.
    Chan WTJ, Kahng AB, Kang S, Kumar R, Sartori J (2013) Statistical analysis and modeling for error composition in approximate computation circuits. In: 31st IEEE international conference on computer design (ICCD), pp 47–53Google Scholar
  3. 3.
    Chandrasekharan A, Soeken M, Große D, Drechsler R (2016) Precise error determination of approximated components in sequential circuits with model checking. In: Proceedings of DAC’16. ACM, New York, pp 129:1–129:6Google Scholar
  4. 4.
    Chen TH, Alaghi A, Hayes JP (2014) Behavior of stochastic circuits under severe error conditions. Inf Technol 56:182–191Google Scholar
  5. 5.
    Deb K, Pratap A, Agarwal S, Meyarivan T (2002) A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Trans Evol Comput 6(2):182–197CrossRefGoogle Scholar
  6. 6.
    Hrbacek R, Mrazek V, Vasicek Z (2016) Automatic design of approximate circuits by means of multi-objective evolutionary algorithms. In: Proceedings of the 11th international conference on design and technology of integrated systems in nanoscale era. IEEE, Piscataway, pp 239–244Google Scholar
  7. 7.
    Huang T, Yang G, Tang G (1979) A fast two-dimensional median filtering algorithm. IEEE Trans Acoust Speech Signal Process 27(1):13–18. CrossRefGoogle Scholar
  8. 8.
    Hwang H, Haddad R (1995) Adaptive median filters: new algorithms and results. IEEE Trans Image Process 4(4):499–502. CrossRefGoogle Scholar
  9. 9.
    Jiang H, Liu C, Maheshwari N, Lombardi F, Han J (2016) A comparative evaluation of approximate multipliers. In: IEEE/ACM international symposium on nanoscale architectures. IEEE, Piscataway, pp 191–196Google Scholar
  10. 10.
    Ko S, Lee Y (1991) Center weighted median filters and their applications to image enhancement. IEEE Trans Circuits Syst 15:984–993. CrossRefGoogle Scholar
  11. 11.
    Kulkarni P, Gupta P, Ercegovac MD (2011) Trading accuracy for power in a multiplier architecture. J Low Power Electron 7(4):490–501. CrossRefGoogle Scholar
  12. 12.
    Lotfi A, Rahimi A, Yazdanbakhsh A, Esmaeilzadeh H, Gupta RK (2016) Grater: an approximation workflow for exploiting data-level parallelism in FPGA acceleration. In: 2016 design, automation and test in Europe conference and exhibition, DATE 2016, pp 1279–1284. CrossRefGoogle Scholar
  13. 13.
    Mahdiani HR, Ahmadi A, Fakhraie SM, Lucas C (2010) Bio-inspired imprecise computational blocks for efficient VLSI implementation of soft-computing applications. IEEE Trans Circuits Syst I Reg Papers 57(4):850–862. MathSciNetCrossRefGoogle Scholar
  14. 14.
    Miller JF (2011) Cartesian genetic programming. Springer, Berlin. zbMATHGoogle Scholar
  15. 15.
    Miller JF, Thomson P, Fogarty T (1998) Designing electronic circuits using evolutionary algorithms. Arithmetic Circuits: A Case Study. Wiley, New York, pp 105–131Google Scholar
  16. 16.
    Monajati M, Fakhraie SM, Kabir E (2015) Approximate arithmetic for low-power image median filtering. Circuits Syst Signal Process 34(10):3191–3219. CrossRefGoogle Scholar
  17. 17.
    Mrazek V, Vasicek Z (2016) Automatic design of arbitrary-size approximate sorting networks with error guarantee. In: 2016 26th international workshop on power and timing modeling, optimization and simulation. IEEE Computer Society, Piscataway, pp 221–228Google Scholar
  18. 18.
    Mrazek V, Sarwar SS, Sekanina L, Vasicek Z, Roy K (2016) Design of power-efficient approximate multipliers for approximate artificial neural networks. In: Proceedings of the IEEE/ACM international conference on computer-aided design. ACM, New York, pp 811–817. Google Scholar
  19. 19.
    Mrazek V, Hrbacek R, Vasicek Z, Sekanina L (2017) Evoapprox8b: library of approximate adders and multipliers for circuit design and benchmarking of approximation methods. In: Design, automation and test in Europe conference and exhibition, DATE 2017, pp 258–261. CrossRefGoogle Scholar
  20. 20.
    Nepal K, Li Y, Bahar RI, Reda S (2014) ABACUS: a technique for automated behavioral synthesis of approximate computing circuits. In: Proceedings of the conference on design, automation and test in Europe, EDA consortium, DATE’14, pp 1–6Google Scholar
  21. 21.
    Nepal K, Hashemi S, Tann H, Bahar RI, Reda S (2017) Automated high-level generation of low-power approximate computing circuits. IEEE Trans Emerg Top Comput.
  22. 22.
    Poli R, Langdon WB, McPhee NF (2008) A field guide to genetic programming. Published via and freely available at
  23. 23.
    Sekanina L, Vasicek Z (2013) Approximate circuits by means of evolvable hardware. In: 2013 IEEE international conference on evolvable systems, IEEE CIS, Proceedings of the 2013 IEEE symposium series on computational intelligence (SSCI), pp 21–28Google Scholar
  24. 24.
    Sekanina L, Vasicek Z, Mrazek V (2017) Approximate circuits in low-power image and video processing: the approximate median filter. Radioengineering 26(3):623–632CrossRefGoogle Scholar
  25. 25.
    Vasicek Z (2017) Relaxed equivalence checking: a new challenge in logic synthesis. In: 2017 IEEE 20th international symposium on design and diagnostics of electronic circuits systems (DDECS), pp 1–6.
  26. 26.
    Vasicek Z, Mrazek V (2017) Trading between quality and non-functional properties of median filter in embedded systems. Genet Program Evolvable Mach 18(1):45–82. CrossRefGoogle Scholar
  27. 27.
    Vasicek Z, Sekanina L (2007) An area-efficient alternative to adaptive median filtering in FPGAs. In: Proceedings of 2007 international conference on field programmable logic and applications. IEEE, Piscataway, pp 216–221CrossRefGoogle Scholar
  28. 28.
    Vasicek Z, Sekanina L (2011) A global postsynthesis optimization method for combinational circuits. In: Proceedings of the design, automation and test in Europe DATE 2011, EDAA, pp 1525–1528Google Scholar
  29. 29.
    Vasicek Z, Sekanina L (2014) Evolutionary design of approximate multipliers under different error metrics. In: IEEE international symposium on design and diagnostics of electronic circuits and systems. IEEE, Piscataway, pp 135–140Google Scholar
  30. 30.
    Vasicek Z, Sekanina L (2015) Evolutionary approach to approximate digital circuits design. IEEE Trans Evol Comput 19(3):432–444. CrossRefGoogle Scholar
  31. 31.
    Vasicek Z, Sekanina L (2016) Evolutionary design of complex approximate combinational circuits. Genet Program Evolvable Mach 17(2):1–24CrossRefGoogle Scholar
  32. 32.
    Vasicek Z, Slany K (2012) Efficient phenotype evaluation in Cartesian genetic programming. In: Proceedings of the 15th European conference on genetic programming. LNCS, vol 7244. Springer, Berlin, pp 266–278Google Scholar
  33. 33.
    Vasicek Z, Bidlo M, Sekanina L (2013) Evolution of efficient real-time non-linear image filters for FPGAs. Soft Comput 17(11):2163–2180. CrossRefGoogle Scholar
  34. 34.
    Vasicek Z, Mrazek V, Sekanina L (2017) Towards low power approximate DCT architecture for HEVC standard. In: Design, automation and test in Europe conference and exhibition, DATE 2017, pp 1576–1581. CrossRefGoogle Scholar
  35. 35.
    Venkataramani S, Roy K, Raghunathan A (2013) Substitute-and-simplify: a unified design paradigm for approximate and quality configurable circuits. In: Design, automation and test in Europe, DATE’13, EDA consortium, pp 1367–1372Google Scholar
  36. 36.
    Venkatesan R, Agarwal A, Roy K, Raghunathan A (2011) MACACO: modeling and analysis of circuits for approximate computing. In: 2011 IEEE/ACM international conference on computer-aided design (ICCAD). IEEE, Piscataway, pp 667–673CrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  • Lukas Sekanina
    • 1
    Email author
  • Zdenek Vasicek
    • 1
  • Vojtech Mrazek
    • 1
  1. 1.Brno University of Technology, Faculty of Information Technology, IT4Innovations Centre of ExcellenceBrnoCzech Republic

Personalised recommendations