Scalable Boolean Methods in a Modern Synthesis Flow

With the continuous push to improve Quality of Results (QoR) in EDA, Boolean methods in logic synthesis have been recently drawing the attention of researchers. Boolean methods achieve better QoR than algebraic methods but require higher computational cost. In this paper, we introduce the Scalable Boolean Method (SBM) framework. The SBM consists of 4 optimization engines designed to be scalable in a modern synthesis flow. The first presented engine is a generalized resubstitution framework based on computing, and implementing, the Boolean difference between two nodes. The second consists of a gradient-based AIG optimization, while the third one is based on heterogeneous elimination for kerneling. The last proposed engine is a revisiting of maximum set of permissible functions computation with BDDs. Altogether, the SBM framework enables significant synthesis results. We improve 12 of the best known area results in the EPFL synthesis competition. Embedded in a commercial EDA flow, the new Boolean methods enable -2.20% combinational area savings and -5.99% total negative slack reduction, after physical implementation, at contained runtime cost.

[1]  Rolf Drechsler,et al.  Binary Decision Diagrams - Theory and Implementation , 1998 .

[2]  Robert K. Brayton,et al.  Multilevel logic synthesis , 1990, Proc. IEEE.

[3]  Rajeev Murgai,et al.  SAT-based redundancy removal , 2018, 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[4]  Jordi Cortadella,et al.  Support-Reducing Functional Decomposition for FPGA Technology Mapping , 2018 .

[5]  Robert K. Brayton,et al.  DAG-aware AIG rewriting: a fresh look at combinational logic synthesis , 2006, 2006 43rd ACM/IEEE Design Automation Conference.

[6]  Robert K. Brayton,et al.  An exact minimizer for Boolean relations , 1989, 1989 IEEE International Conference on Computer-Aided Design. Digest of Technical Papers.

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

[8]  Randal E. Bryant,et al.  Efficient implementation of a BDD package , 1991, DAC '90.

[9]  M. Ciesielski,et al.  BDS: a BDD-based logic optimization system , 2000, Proceedings 37th Design Automation Conference.

[10]  Robert K. Brayton,et al.  Scalable don't-care-based logic optimization and resynthesis , 2009, FPGA '09.

[11]  Sofia Cassel,et al.  Graph-Based Algorithms for Boolean Function Manipulation , 2012 .

[12]  Robert K. Brayton,et al.  Improvements to boolean resynthesis , 2018, 2018 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[13]  Yahiko Kambayashi,et al.  The Transduction Method-Design of Logic Networks Based on Permissible Functions , 1989, IEEE Trans. Computers.