PD Automation
PD Automation
1
physical design outlines the transformation of a cir-
cuit description (which is the result of the preced- 1 4
height
Due to its complexity, the physical design is usually
divided into various, consecutive sub-steps: The cir-
cuit has to be partitioned to get a number of modules
(macro cells) which have to be placed on the chip width
2
The structure of the tree xes the relative placement to create building-blocks which de ne high quality
of the single blocks (modules) which are represented partial layouts. For that, a complete graph is con-
by its leaves. Each inner node represents a meta- structed: the nodes represent the blocks, and each
block, which de nes the arrangement for the set of edge is weighted with a value which de nes the qual-
blocks characterized by the leaves of the correspond- ity of a meta-block consisting of the two blocks char-
ing sub-tree and information about the routing in- acterized by the adjacent nodes. A matching in this
side this partial layout. All possible implementations graph is a set of disjunct node pairs and the max-
for exible blocks are taken into account by storing imum weighted matching is the matching with the
shape-functions for all nodes in the tree so that a maximal sum of edge weights (cf. g. 4). The qual-
single individual represents di erent layouts, if some ity of a meta-block is marked out by the number of
blocks are exible. When combining two blocks to common nets of the combined blocks.
a meta-block, the arrangement and the rotation of
the composed blocks are xed. Hence, the shape-
functions of both blocks can be added which results
in a shape-function for the meta-block. The number
of implementations for the meta-blocks in the higher 100
3
90 Figure 6: Fixing a global route by a top-
down traversal (left) for the
pseudo-optimal way (right)
4
THE OPTIMIZATION PROCESS genes from the parents) is smaller than for problems
where crossing-over directly leads to a correct indi-
After the construction of the initial individuals, vidual. During the adding of the missing blocks into
which already contain a lot of good components, the tree of the o spring, the iterated matching is
the genetic algorithm starts the optimization by used once more to construct new (good) building-
modifying individuals (mutation), and by combining blocks. It has turned out to be not helpful to do
building-blocks (crossover). Beside a mutation op- some `intelligent' crossover, i. e. looking for large dis-
erator for changing the arrangement of two blocks junct subtrees, for example. Research is carried out
inside a meta-block, the main mutation operators to include a recombination operator for gene pool
modify the slicing tree (cf. g. 7). One operator recombination. Here an o spring is constructed by
exchanges blocks or meta-blocks, which corresponds combining building-blocks out of a pool of good par-
to exchanging cells or partial layouts on the lay- tial solutions.
out surface. The other important mutation opera-
tor changes the structure of the tree by randomly When designing a genetic algorithm for a speci c
picking out a subtree and inserting it into the tree problem, it is very important that a global optimum
at a di erent position, which corresponds to moving can be reached starting from any set of individuals by
cells or partial layouts on the layout surface. Here the application of the genetic operators. For an al-
storing all important implementations for the meta- gorithm with tree-structured genotype encoding this
blocks once more enhances the performance of the means, if recombination only combines real subtrees
genetic algorithm, because for a moved partial lay- with at least two leaves, then each pair of leaves con-
out a di erent implementation might be better in its tained in the encoding of an optimal solution must
new environment. already exist in one of the initial individuals, or must
be able to be constructed by mutation. Otherwise
the genetic algorithm will never reach the optimum.
5
RESULTS combine both steps.
The algorithm has been tested on real-world circuits The described application is a good example for the
with 10 to 49 modules and up to 500 nets. Fig- tasks which research on genetic algorithms should
ure 8 presents a layout for a circuit with 33 xed deal with: Because of the nondeterministic be-
modules and 123 nets. For a direct comparison to haviour and the long runtimes, genetic algorithms
commercial placement and routing tools, an ecient will never succeed against other optimization meth-
channel routing algorithm has to be implemented. ods for low complexity problems that allow fast
In the current version, a very simple routing strat- greedy solutions. But for high complexity prob-
egy is applied when combining two blocks: for each lems without any known sophisticated solution tech-
net in the channel, one special track is added which niques, a genetic approach is well suited. By solving
results in an excessive routing space. Apart from such a hard and complex problem, critics can eas-
the quantitative comparison it can be said that this ily be convinced of the power and the advantages
is the only known approach to the layout generation of genetic algorithms. When designing a genetic al-
process, which concurrently optimizes the placement gorithm for such a special application, it is impor-
together with the detailed routing. tant to withdraw from usual solution methods in one
part, but using hybrid approaches and problem spe-
ci c knowledge for hill-climbing in another. By do-
FUTURE RESEARCH ing so, there always is the trade-o between directed
A parallelization of the genetic algorithm is planned search and random search. The designer has to nd
and along with this the implementation of a strat- out, which part of the optimization can be done `by
egy adaptation 6]. There are many mutation opera- hand', how the genetic algorithm can be supported
tors, which are applied with di erent frequencies. It during the search process, and which tasks must be
might be ingenious to exchange or move large parts left for the genetic algorithm to work on.
of the layout during the early stage of optimization,
and doing only minor changes when the population REFERENCES
converges to an optimum. This can become possible 1. A. E. Eiben, P.-E. Raue, Z. Ruttkay, Genetic algo-
by adapting the frequencies of the di erent mutation rithms with multi-parent recombination, 3rd Conf. on
operators during the optimization. Parallel Problem Solving from Nature, Springer Lec-
ture Notes in Computer Science 866, 1994, 78{87
Further a gene-pool recombination operator 1, 4] 2. A. Fritsch, O. Vornberger, Cutting Stock by Iterated
will be implemented which might replace the current Matching, Operations Research Proceedings, Selected
crossover operator. For a combinatorial optimiza- Papers of the Int. Conf. on OR 94, U. Derigs, A.
tion problem like the layout generation, the biologi- Bachem, A. Drexl (eds), Springer Verlag, 1995, 92{
cally motivated crossing of two parent chromosomes 97
is likely to be less ecient. The construction of an 3. T. Lengauer, Combinatorial Algorithms for Integrated
o spring out of a pool of good building-blocks seems Circuit Layout, John Wiley & Sons, 1990
to be more suitable. 4. H. Muhlenbein, H.-M. Voigt, Gene Pool Recombina-
tion in Genetic Algorithms, Procs. of the Metaheuris-
CONCLUSIONS tics Int. Conf., I. H. Osman, J. P. Kelly (eds.), Kluwer
Academic Publishers, Norwell, 1995
For the application of genetic algorithms to optimize 5. S. M. Sait, H. Youssef, VLSI Physical Design Automa-
combinatorial problems, the focal point is to nd a tion: Theory and Practice, McGraw-Hill (1995)
proper genotype encoding and all genetic operators, 6. D. Schlierkamp-Voosen, H. Muhlenbein, Strategy
which are necessary to enable the algorithm to reach Adaptation by Competing Subpopulations, 3rd Conf.
a global optimum. Solutions to real-world optimiza- on Parallel Problem Solving from Nature, Springer
tion problems are too complex for being represented Lecture Notes in Computer Science 866, 1994, 199{
as a simple gene-string. In the layout optimization 208
process, due to the problem speci c genotype encod- 7. V. Schnecke, O. Vornberger, Genetic Design of VLSI-
ing as a binary tree, the genetic algorithm is able to Layouts, Procs. First IEE/IEEE Int. Conf. on GAs in
compute and optimize the routing on a chip concur- Engineering Systems: Innovations and Applications,
rently with the placement of the modules. Usually GALESIA '95, IEE Conference Publication No. 414,
in VLSI-CAD tools this is done in consecutive steps 1995, 430{435
because of the complexity of the single optimization 8. N. Sherwani, Algorithms for VLSI Physical Design
problems. But according to the strong interdepen- Automation, Kluwer Academic Publishers, 1993
dencies between the arrangement of the modules and
the routing of the interconnection nets, it is wise to