On Evolutionary Approximation of Logic Circuits

  • Lukas SekaninaEmail author
  • Zdenek Vasicek
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8808)


The concept of approximation has intensively been studied, developed and applied not only in computer science, but also in mathematics and engineering disciplines. The never ending requirement for low power consumption led to making approximate circuits and computer systems even in the areas in which only accurately working solutions have traditionally been accepted. Approximate circuits are the circuits relaxing the requirement on the functional equivalence between the specification and implementation in order to reduce the area on a chip, delay or energy consumption. Approximate computing machines further exploit and apply this idea at all system levels. This paper introduces the field of approximate computing and shows how evolutionary design methods can automate the design process of approximate computing systems, in particular, approximate logic circuits.


Multiobjective Optimization Circuit Design Logic Circuit Arithmetic Circuit Multiobjective Evolutionary Algorithm 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Gruska, J.: Foundations of Computing. Int. Thomson Publishing Computer Press (1997)Google Scholar
  2. 2.
    Vazirani, V.V.: Approximation Algorithms. Springer Verlag (2001)Google Scholar
  3. 3.
    Cybenko, G.: Approximation by superpositions of a sigmoidal function. Mathematics of Control, Signals and Systems 2(4), 303–314 (1989)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Volder, J.E.: The birth of cordic. Journal of VLSI Signal Processing Systems for Signal, Image and Video Technology 25(2), 101–105 (2000)CrossRefGoogle Scholar
  5. 5.
    Han, J., Orshansky, M.: Approximate computing: An emerging paradigm for energy-efficient design. In: Proc. of the 18th IEEE European Test Symposium, pp. 1–6. IEEE (2013)Google Scholar
  6. 6.
    Chippa, V.K., Chakradhar, S.T., Roy, K., Raghunathan, A.: Analysis and characterization of inherent application resilience for approximate computing. In: The 50th Annual Design Automation Conference, DAC 2013, pp. 1–9. ACM (2013)Google Scholar
  7. 7.
    Mishchenko, A.: ABC: A system for sequential synthesis and verification, Berkley logic synthesis and verification group (2012)Google Scholar
  8. 8.
    Kahng, A.B., Lienig, J., Markov, I.L., Hu, J.: VLSI Physical Design: From Graph Partitioning to Timing Closure. Springer-Verlag (2011)Google Scholar
  9. 9.
    Shanbhag, N.R., Abdallah, R.A., Kumar, R., Jones, D.L.: Stochastic computation. In: The 47th Annual Design Automation Conference, DAC 2010, pp. 859–867. ACM (2010)Google Scholar
  10. 10.
    Gupta, V., Mohapatra, D., Raghunathan, A., Roy, K.: Low-power digital signal processing using approximate adders. IEEE Trans. on CAD of Integrated Circuits and Systems 32(1), 124–137 (2013)CrossRefGoogle Scholar
  11. 11.
    Kulkarni, P., Gupta, P., Ercegovac, M.D.: Trading accuracy for power in a multiplier architecture. J. Low Power Electronics 7(4), 490–501 (2011)CrossRefGoogle Scholar
  12. 12.
    Venkataramani, S., Sabne, A., Kozhikkottu, V.J., Roy, K., Raghunathan, A.: Salsa: systematic logic synthesis of approximate circuits. In: The 49th Annual Design Automation Conference, DAC 2012, pp. 796–801. ACM (2012)Google Scholar
  13. 13.
    Lu, S.L.: Speeding up processing with approximation circuits. IEEE Computer 37(3), 67–73 (2004)CrossRefGoogle Scholar
  14. 14.
    Esmaeilzadeh, H., Sampson, A., Ceze, L., Burger, D.: Neural acceleration for general-purpose approximate programs. In: Proc. of the 2012 45th Annual IEEE/ACM International Symposium on Microarchitecture, pp. 449–460. IEEE Computer Society (2012)Google Scholar
  15. 15.
    Sampson, A., Dietl, W., Fortuna, E., Gnanapragasam, D., Ceze, L., Grossman, D.: Enerj: Approximate data types for safe and general low-power computation. In: Proc. of the 32nd ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 164–174. ACM (2011)Google Scholar
  16. 16.
    Gupta, P., Agarwal, Y., Dolecek, L., Dutt, N., Gupta, R.K., Kumar, R., Mitra, S., Nicolau, A., Rosing, T.S., Srivastava, M.B., Swanson, S., Sylvester, D.: Underdesigned and opportunistic computing in presence of hardware variability. IEEE Trans. on CAD of Integrated Circuits and Systems 32(1), 8–23 (2013)CrossRefGoogle Scholar
  17. 17.
    Venkatachalam, V., Franz, M.: Power reduction techniques for microprocessor systems. ACM Computing Surveys 37(3), 195–237 (2005)CrossRefGoogle Scholar
  18. 18.
    Venkataramani, S., Roy, K., Raghunathan, A.: Substitute-and-simplify: A unified design paradigm for approximate and quality configurable circuits. In: Design, Automation and Test in Europe, DATE 2013, EDA Consortium San Jose, CA, USA, pp. 1–6 (2013)Google Scholar
  19. 19.
    Lohn, J.D., Hornby, G.S.: Evolvable hardware: Using evolutionary computation to design and optimize hardware systems. IEEE Computational Intelligence Magazine 1(1), 19–27 (2006)CrossRefGoogle Scholar
  20. 20.
    Koza, J.R.: Human-competitive results produced by genetic programming. Genetic Programming and Evolvable Machines 11(3–4), 251–284 (2010)CrossRefGoogle Scholar
  21. 21.
    Miller, J.F.: Cartesian Genetic Programming. Springer-Verlag (2011)Google Scholar
  22. 22.
    Sekanina, L., Vasicek, Z.: Approximate circuits by means of evolvable hardware. In: 2013 IEEE International Conference on Evolvable Systems, Proceedings of the 2013 IEEE Symposium Series on Computational Intelligence (SSCI), pp. 21–28. IEEE CIS (2013)Google Scholar
  23. 23.
    Vasicek, Z., Sekanina, L.: Evolutionary design of approximate multipliers under different error metrics. In: IEEE International Symposium on Design and Diagnostics of Electronic Circuits and Systems 2013, pp. 135–140. IEEE (2014)Google Scholar
  24. 24.
    Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast and elitist multiobjective genetic algorithm: NSGA-II. IEEE Transactions on Evolutionary Computation 6(2), 182–197 (2002)CrossRefGoogle Scholar
  25. 25.
    Buhrman, H., de Wolf, R.: Complexity measures and decision tree complexity: A survey. Theoretical Computer Science 288(1), 21–43 (2002)MathSciNetCrossRefzbMATHGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  1. 1.IT4Innovations Centre of Excellence, Faculty of Information TechnologyBrno University of TechnologyBrnoCzech Republic

Personalised recommendations