Summary: | 碩士 === 國立臺灣大學 === 電子工程學研究所 === 101 === In high-level designs, variables are often naturally represented in a symbolic multi-valued form. Binary encoding is an essential step in realizing these designs in Boolean circuits. Since binary encoding of a multi-valued function and network may not be unique, there exists room for exploiting various ways of encoding with respect to different optimization criteria. It is well known that a multi-value encoding may have drastic effects on its final circuit implementation and should be carefully selected.
Nevertheless most prior encoding efforts focused on minimizing area in term of the numbers of literals and cubes in the resultant encoded Boolean expressions. Unfortunately the numbers of literals and cubes can be affected not only by encoding, but also by further circuit transformation. It is thus hard to predict the net effect of encoding on final circuit realization. In this thesis we explore a different encoding strategy of encoding for maximizing the degree of symmetry, rather than minimizing area. Since symmetry is a functional property, it is an invariant under circuit transformation. The effect of encoding with the new optimization objective can be well preserved throughout any function-equivalent circuit transformation. It was observed that symmetric functions have various unique benefits, and can be useful in timing engineering change order (ECO); they have good variable ordering for BDD representation; they may achieve better functional decomposition, and so on. We propose an algorithm based on subset-sum constraint solving for encoding a multi-valued function for symmetry. We further extend our method to encode multi-valued networks as well as incompletely specified multi-valued functions. Experiments show that our method achieves higher degrees in final circuit realization with comparable circuit sizes.
|