Abstract
In this study, we propose a module-level three-stage approach (TSA) to optimize the evolutionary design for synchronous sequential circuits. TSA has a three stages process, involving a genetic algorithm (GA), a pre-evolution, and a re-evolution. In the first stage, the GA simplifies the number of states and automatically searches the state assignment that can produce the circuit with small complexity. Then, the second stage evolves a set of high-performing circuits to acquire frequently evolved blocks, which will be re-used for more compact and simple solutions in the next stage. In this stage, a genetic programming (GP) is proposed for evolving the high-performing circuits and data mining is used as a finder of frequently evolved blocks in these circuits. In the final stage, the acquired blocks are encapsulated into the function and terminal set to produce a new population in the re-evolution. The blocks are expected to make the convergence faster and hence efficiently reduce the complexity of the evolved circuits. Seven problems of three types—sequence detectors, modulo-n counters and ISCAS89 circuits—are used to test our three-stage approach. The simulation results for these experiments are promising, and our approach is shown to be better than the other methods for sequential logic circuits design in terms of convergence time, success rate, and maximum fitness improvement across generations.
Similar content being viewed by others
References
C.H. Roth Jr., Fundamentals of Logic Design, 5th edn. Thomson-Engineering (Cengage Learning India, 2004)
C.C.A. Coello, A.D. Christiansen, A.H. Aguirre, Towards automated evolutionary design of combinational circuits. Comput. Elect. Eng. 27, 1–28 (2000)
X. Yao, T. Higuch, Promises and challenges of evolvable hardware, in International Conference on Evolvable Systems: From Biology to Hardware (ICES96) (Tsukuba, 1996), pp. 55–78
C.C. Santini, J.F.M. Amaral, M.A.C. Pacheco, Evolvability and reconfigurability, in IEEE International Conference on Field-Programmable Technology 2004, (Brisbane, 2004), pp. 105–122
J.F. Miller, D. Job, V.K. Vassilev, Principles in the evolutionary design of digital circuits—part I. J. Genet. Program. Evol. Mach. 1, 8–35 (2000)
J.F. Miller, D. Job, V.K. Vassilev, Principles in the evolutionary design of digital circuits—part II. J. Genet. Program. Evol. Mach. 3, 259–288 (2000)
M. Garvie, A. Thompson, Evolution of self-diagnosing hardware, in International Conference on Evolvable Systems: From Biology to Hardware(ICES) 2003, (Trondheim, Norway, 2003), pp. 238–248
A.P. Shanthi, R. Parthasarathi, Practical and scalable evolution of digital circuits. Appl. Soft Comput. 9, 618–624 (2009)
J.F. Miller, P.A. Thomson, The developmental method for growing graphs and circuits, in The Fifth International Conference on Evolvable Systems: From Biology to Hardware (Trondheim, Norway, 2003), pp. 93–104
T.G.W. Gordon, P.J. Bentley, Development brings scalability to hardware evolution, In 2005 NASA/DoD Conference of Evolution Hardware (Washington DC, USA .2005), pp. 272–279
J. Huang, M. Momenzadeh, F. Lombardi, Design of sequential circuits by quantum-dot cellular automata. Microelectron. J. 38, 525–537 (2007)
M. Trefzer, T. Kuyucu, A. Greensted, The input pattern order problem: evolution of combinatorial and sequential circuits in hardware, In ICES 2008: Proceeding International Conference on Evolvable Systems: From Biology to Hardware (Prague, 2008), vol. 5216, Lecture Notes in Computer Science, (Springer 2008), pp. 382–391
A. Joglekar, M. Tungare, Genetic algorithms and their use in the design of evolvable hardware. in IEEE Region 10 Conference for Student Papers (first runner-up prize) (2001)
J.R. Koza, Genetic Programming: On the Programming of Computers by the Means of Natural Selection (MIT Press, Cambridge, 1992)
Z. Wu, D. Jiang, M. Wei, Dynamical evolution in function finding, in International Conference on Natural Computation (Haikou, China, 2007), pp. 614–618
J.F. Miller, P.A. Thomson, Cartesian genetic programming. In Europe Genetic Programming (Edinburgh, Scotland, 2000), pp. 121–132
L. Sekanina, Evolvable Components: From Theory to Hardware Implementations (Springer, Berlin, 2000)
C. Manovit, C. Aporntewan, P. Chongstitvatana, Synthesis of synchronous sequential logic circuits from partial input/output sequences, in International Conference on Evolvable Systems: From Biology to Hardware (ICES) (Lausanne, Switzerland, 1998), pp. 98–105
B. Ali, A.E.A. Almaini, T. Kalganova, Evolutionary algorithms and their use in the design of sequential logic circuits. Genet. Program. Evol. Mach. 5, 11–29 (2004)
A.P. Shanthi, L.K. Singaram, R. Parthasarathi, Evolution of Asynchronous Sequential Circuits, in NASA/DoD Conference of Evolution Hardware (Washington, DC, 2005), pp. 238–248
A.T. Soliman, H.M. Abbas, Combinational circuit design using evolutionary algorithms, in IEEE Canadian Conference on Electrical and Computer Engineering (CCECE) (Montreal, 2003) pp. 251–254
A.T. Soliman, H.M. Abbas, Syncrounous sequential circuits design using evolutionary algorithms, in IEEE Canadian Conference on Electrical and Computer Engineering (CCECE) (Ontario, 2004), pp. 2013–2016
P. Soleimani, R. Sabbaghi-Nadooshan, S. Mirzakuchaki, Using genetic algorithm in the evolutionary design of sequential logic circuits. Int. J. Comput. Sci. Issues 8, 1–7 (2011)
P.J. Angeline, J. Pollack, Evolutionary module acquisition, in The 2nd Annual Conference on Evolutionary Programming (San Diego, 1993) pp. 154–163
J.R. Koza, Genetic Programming II: Automatic Discovery of Reusable Subprograms (MIT Press, Cambridge, 1994)
J.A. Walker, J.F. Miller, Investigating the performance of module acquisition in cartesian genetic programming, in Genetic and Evolutionary Computation Conference (Washington, 2005) pp. 1649–1656
J.A. Walker, J.F. Miller, The automatic acquisition, evolution and re-use of modules in cartesian genetic programming. IEEE Trans. Evol. Comput. 12(4), 397–417 (2008)
T. Kalganova, Bidirectional incremental evolution in extrinsic evolvable hardware, in NASA/DoD Workshop on Evolvable Hardware (Palo Alto, 2000), pp. 65–74
J.P. Rosca, Towards automatic discovery of building blocks in genetic programming. Working Notes for the AAAI Symposium on Genetic Programming (MIT/AAAI press, Cambridge, 1995), pp. 78–85
A. Dessi, A. Giani, A. Starita, An analysis of automatic subroutine discovery in genetic programming, in GECCO-99: Proceedings of the Genetic and Evolutionary Computation Conference, ed. by W. Banzhaf, J. Daida, A.E. Eiben, M.H. Garzon, (Morgan-Kaufmann, Orlando, 1999) pp. 996–1001
Y.Y. Tao, J. Cao, Y.Z. Zhang, Using module-level evolvable hardware approach in design of sequential logic circuits. In CEC 2012: Advances in Computational Intelligence: IEEE World Congress on Evolutionary Computation (Brisbane, Australia), ed. by J. Liu, C. Alippi, B. Bouchon-Meunier, (Springer, 2012), pp. 1604–1611
B. Sendhoff, M. Kreutz, W.V. Seelen, A condition for the genotype-phenotype mapping: Causality., in ICGA-97: Proceedings of the International Conference on Genetic Algorithm, ed. by T. B¨ack (Morgan Kaufmann, San Francisco, 1997), pp. 73–80
Z. Vasicek, L. Sekanina, Formal verification of candidate solutions for post-synthesis evolutionary optimization in evolvable hardware. Genet. Program. Evol. Mach., Spec. Issue on Evolvable Hardware Challenges, 12(3), 305–327 (2011)
Z. Vasicek, L. Sekanina, A Global post-synthesis optimization method for combinational circuits, in DATE 2011: Proceeding of the Design, Automation and Test in Europe Conference, ed. by M. Lukasiewycz, S. Chakraborty, P. Milbredt, (Grenoble, March 14–18, 2011), (IEEE Press 2011) pp. 1525–1528
J. Amaral, K. Tumer, J. Ghosh, Design genetic algorithm for the state assignment problem. IEEE Trans. Syst. Man Cybern. 25(4), 689–694 (1995)
F. Candida, Gene expression programming: a new adaptive algorithm for solving problems. Complex Syst. 13(2), 87–129 (2001)
Acknowledgments
I wish to thank some students of Soochow University for doing part of experiments and thank the language writing instructor Sandy Harris in Shanghai Jiaotong University for reading and commenting on the manuscript. This work was supported in part by grants from Shanghai key scientific and technological projects (0951150603) and (10DZ1200200).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Tao, Y., Zhang, Y., Cao, J. et al. A module-level three-stage approach to the evolutionary design of sequential logic circuits. Genet Program Evolvable Mach 14, 191–219 (2013). https://doi.org/10.1007/s10710-012-9178-1
Received:
Revised:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10710-012-9178-1