Exact Synthesis for Logic Synthesis Applications with Complex Constraints

Exact synthesis is the problem of finding logic networks that represent given Boolean functions and respect given constraints. With exact synthesis it is possible to find optimum networks, e.g., in size or depth; consequently, it primarily finds application in logic optimization. However, exact synthesis is also very helpful in logic synthesis applications necessitating complex constraints that are present in the hardware primitives or the logic representations for which the synthesis has to be performed. Conventional heuristic logic synthesis algorithms are not considering such constraints. They still can be employed to optimize networks, but they cannot guarantee that optimized networks meets all requirements. Being faced with a logic synthesis application that seeks for low-depth majority-based networks with limited fan-out for small functions, we demonstrate how state-of-the-art exact synthesis algorithms can be adapted and used to find logic networks that match these constraints. To emphasize the need for exact synthesis, we also demonstrate how conventional logic synthesis either fails to find constraint-satisfying logic networks or yields networks of inferior quality.

[1]  Giovanni De Micheli,et al.  Busy man's synthesis: Combinational delay optimization with SAT , 2017, Design, Automation & Test in Europe Conference & Exhibition (DATE), 2017.

[2]  Wolfgang Porod,et al.  Quantum cellular automata , 1994 .

[3]  Giovanni De Micheli,et al.  Optimizing Majority-Inverter Graphs with functional hashing , 2016, 2016 Design, Automation & Test in Europe Conference & Exhibition (DATE).

[4]  Grigory Yaroslavtsev,et al.  Finding Efficient Circuits Using SAT-Solvers , 2009, SAT.

[5]  Cody Murray,et al.  On the (Non) NP-Hardness of Computing Circuit Complexity , 2017, Theory Comput..

[6]  Mathias Soeken,et al.  Exact Synthesis of Majority-Inverter Graphs and Its Applications , 2017, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[7]  R. Drechsler,et al.  Exact Circuit Synthesis , 1998 .

[8]  T. Ghani,et al.  Proposal of a Spin Torque Majority Gate Logic , 2010, IEEE Electron Device Letters.

[9]  David Thomas,et al.  The Art in Computer Programming , 2001 .

[10]  Robert K. Brayton,et al.  ABC: An Academic Industrial-Strength Verification Tool , 2010, CAV.

[11]  Olivier Bailleux,et al.  Efficient CNF Encoding of Boolean Cardinality Constraints , 2003, CP.

[12]  Jin-Yi Cai,et al.  Circuit minimization problem , 2000, STOC '00.

[13]  Giovanni De Micheli,et al.  Majority-Inverter Graph: A novel data-structure and algorithms for efficient logic optimization , 2014, 2014 51st ACM/EDAC/IEEE Design Automation Conference (DAC).

[14]  Giovanni De Micheli,et al.  Classifying Functions with Exact Synthesis , 2017, 2017 IEEE 47th International Symposium on Multiple-Valued Logic (ISMVL).

[15]  Kang L. Wang,et al.  Nano-scale computational architectures with spin wave bus , 2005 .

[16]  Giovanni De Micheli,et al.  Majority-Inverter Graph: A New Paradigm for Logic Optimization , 2016, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.