Genetic Algorithms for High-Level Synthesis in VLSI Design

Abstract VLSI design involves a number of steps such as system-level design, high-level synthesis (HLS), logic design, test generation, and physical design. All these steps involve combinatorial optimizations that are NP complete. Genetic algorithms (GA) have been used to solve many problems in VLSI design. HLS is the crucial step where the architecture of the system is decided upon. We have worked on several problems relating to high-level synthesis and developed GAs for them. In this article we describe our GAs for the following three problems and describe some general methods that we have used in these GAs to enhance their operation. Minimum node deletion (MND). Allocation and binding for data path synthesis. Scheduling, allocation, and binding for the synthesis of structured architectures. All of the above problems are NP complete. We have used the following techniques to enhance the operation of the GA: Population control to enforce diversity within a relatively small population size. Solution completion using approximate algorithms to generate superior valid solutions. Selection control to reduce crossover between incompatible members. These GAs have been tested on the usual benchmarks and the results have been found to be acceptably good. The enhancing techniques we describe here are of a general nature and may be used with other GAs to produce better results.

[1]  D. E. Goldberg,et al.  Genetic Algorithms in Search , 1989 .

[2]  P.G. Paulin,et al.  Algorithms for high-level synthesis , 1989, IEEE Design & Test of Computers.

[3]  J. P. Neil,et al.  Simulated annealing based synthesis of fast discrete cosine transform blocks , 1992 .

[4]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[5]  Michael D. Vose,et al.  Generalizing the Notion of Schema in Genetic Algorithms , 1991, Artif. Intell..

[7]  Nostrand Reinhold,et al.  the utility of using the genetic algorithm approach on the problem of Davis, L. (1991), Handbook of Genetic Algorithms. Van Nostrand Reinhold, New York. , 1991 .

[8]  Pierre G. Paulin,et al.  Force-directed scheduling for the behavioral synthesis of ASICs , 1989, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[9]  Sujoy Ghose,et al.  Some new results in the complexity of allocation and binding in data path synthesis , 1998 .

[10]  Steven Minton,et al.  Minimizing Conflicts: A Heuristic Repair Method for Constraint Satisfaction and Scheduling Problems , 1992, Artif. Intell..

[11]  Chittaranjan Mandal,et al.  High-level synthesis of structured data paths , 1997 .

[12]  Alan Frieze,et al.  Probabilistic Analysis of Graph Algorithms , 1990 .

[13]  Daniel P. Siewiorek,et al.  Automated Synthesis of Data Paths in Digital Systems , 1986, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[14]  David E. Goldberg,et al.  Genetic Algorithms in Search Optimization and Machine Learning , 1988 .

[15]  Lawrence. Davis,et al.  Handbook Of Genetic Algorithms , 1990 .

[16]  T. Kailath,et al.  VLSI and Modern Signal Processing , 1984 .