Module 3:Logic Optimization and Synthesis

Lecture 1,2 & 3 :Two level Boolean Logic Synthesis

4.1 Unate Covering Problem

The Unate Covering Problem (UCP) can be defined in terms of both a constraint matrix and a constraint equation. As we will solve the UCP using constraint matrix, we will define the problem only in that from; for the constraint equation based formulation the reader is refereed to [7].

Definition 10: Let M be a matrix of m rows and n columns, for which is either 0 or 1. The unate covering problem involves finding a minimum cardinality column subset S , such that for all such that for all

In other words, the columns in the set S “cover” M in the sense, that every row of M contains a 1-entry in at least one of the columns of S , and there is no smaller set which also covers M .

To solve the unate covering problem, the constraint matrix can be simplified by considering three factors namely,

•  Columns that have singleton rows are mandatory to be taken in the cover. All rows covered by such columns can be deleted and so do the columns. The unate covering can be then carried out in the reduced matrix. The procedure is called elimination of rows covered by “essential columns”. For example, in the matrix given below, PI4 is an essential column.

PI4 also covers minterm3. The resultant simplified matrix (after elimination of rows covered by essential column PI4) is give below.

•  If a row of the constraint matrix has all the ones of another row , then is covered whenever is covered. We say that dominates . In the example matrix below, minterm1 has all 1s of another row, minterm2. So minterm1 dominates minterm2.

All dominating rows (minterm1, in this example) can be eliminated from the constraint matrix. This is because, if a column is taken which covers the dominated row then by virtue of the “common 1”, the dominating row is also covered. In the example, if we select PI2 to cover minterm2, then by virtue of common 1 (i.e.,) minterm1 is also covered. By applying “eliminating dominating rows”, the reduced matrix is as follows

•  If a column of the constraint matrix has all the ones of another column , then is said to dominate . In such a case we may say that then covers all rows that are covered by . Also, if the cost of prime implicant (in terms of number of literals) corresponding to is not more than that corresponding to , then we can say that is not inferior to , in that it covers all the rows that covers, at a cost that is not larger. This means that we can eliminate and simplify the matrix, without giving up the possibility of finding an optimum solution. The process is called elimination of columns through “column dominance”.