Efficient computation of canonical form for Boolean matching in large libraries

This paper presents an efficient technique for solving a Boolean matching problem in cell-library binding, where the number of cells in the library is large. As a basis of the Boolean matching, we use the notion NP-representative (NPR); two functions have the same NPR if one can be obtained from the other by a permutation and/or complementation(s) of the variables. By using a table look-up and a tree-based breadth-first search strategy, our method quickly computes NPR for a given function. Boolean matching of the given function against the whole library is determined by checking the presence of its NPR in a hash table, which stores NPRs for all the library functions and their complements. The effectiveness of our method is demonstrated through experimental results, which shows that it is more than two orders of magnitude faster than the Hinsberger-Kolla's algorithm---the fastest Boolean matching algorithm for large libraries.

[1]  C. Y. Roger Chen,et al.  Efficient Boolean matching algorithm for cell libraries , 1994, Proceedings 1994 IEEE International Conference on Computer Design: VLSI in Computers and Processors.

[2]  Reiner Kolla,et al.  Boolean matching for large libraries , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[3]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[4]  Yusuke Matsunaga A New Algorithm for Boolean Matching Utilizing Structural Information , 1995, IEICE Trans. Inf. Syst..

[5]  Tsutomu Sasao,et al.  A heuristic algorithm to design AND-OR-EXOR three-level networks , 1998, Proceedings of 1998 Asia and South Pacific Design Automation Conference.

[6]  Cheng Chen,et al.  Exploiting communication complexity for Boolean matching , 1996, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[7]  Massoud Pedram,et al.  Boolean matching using binary decision diagrams with applications to logic synthesis and verification , 1992, Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computers & Processors.

[8]  Masahiro Fujita,et al.  Spectral Transforms for Large Boolean Functions with Applications to Technology Mapping , 1993, 30th ACM/IEEE Design Automation Conference.

[9]  D. E. Long,et al.  Efficient Boolean function matching , 1992, 1992 IEEE/ACM International Conference on Computer-Aided Design.

[10]  Giovanni De Micheli,et al.  Technology mapping for electrically programmable gate arrays , 1991, 28th ACM/IEEE Design Automation Conference.

[11]  Saburo Muroga,et al.  Logic design and switching theory , 1979 .

[12]  Stanley L. Hurst,et al.  Spectral techniques in digital logic , 1985 .

[13]  Carl Sechen,et al.  Efficient canonical form for Boolean matching of complex functions in large libraries , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[14]  Giovanni De Micheli,et al.  Algorithms for technology mapping based on binary decision diagrams and on Boolean operations , 1993, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[15]  Sharad Malik,et al.  Permutation and phase independent Boolean comparison , 1993, 1993 European Conference on Design Automation with the European Event in ASIC Design.

[16]  Masahiro Fujita,et al.  Spectral Transforms for Large Boolean Functions with Applications to Technology Mapping , 1997, Formal Methods Syst. Des..

[17]  Michael A. Harrison,et al.  Introduction to switching and automata theory , 1965 .

[18]  Luca Benini,et al.  A survey of Boolean matching techniques for library binding , 1997, TODE.

[19]  Wolfgang Rosenstiel,et al.  Combined Spectral Techniques for Boolean Matching , 1996, Fourth International ACM Symposium on Field-Programmable Gate Arrays.

[20]  Malgorzata Marek-Sadowska,et al.  Boolean Functions Classification via Fixed Polarity Reed-Muller Forms , 1997, IEEE Trans. Computers.

[21]  Tsutomu Sasao,et al.  Fast Boolean matching under permutation using representative , 1999, Proceedings of the ASP-DAC '99 Asia and South Pacific Design Automation Conference 1999 (Cat. No.99EX198).

[22]  Ulf Schlichtmann,et al.  Characterization of Boolean functions for rapid matching in EPGA technology mapping , 1992, [1992] Proceedings 29th ACM/IEEE Design Automation Conference.