Abstract

The problem of generating a minimal implementation of a given Boolean function is called exact synthesis. The parameter to be minimized is often the total number of gates used for the implementation. The exact synthesis engine is considered an essential tool for most state-of-the-art logic optimization flows. In this paper, we present an algorithm that, using enumeration over non-isomorphic graph structures, generates minimal circuits implementing specified Boolean functions using a set of pre-defined gate types. In our experiments, we show that our prototype implementation of this technique can be compared to state-of-the-art tools for small functions. Moreover, we show that this technique can be parallelized effectively.

Details