ECE 275: Quine McCluskey method

Website: https://vikasdhiman.info/ECE275-Sequential-Logic/

\[ \newcommand{\bx}{\bar{x}} \newcommand{\by}{\bar{y}} \newcommand{\bz}{\bar{z}} \]

Quine McCluskey method

\[ f (x 1 , \dots , x 4 ) = \sum m(0, 2, 5, 6, 7, 8, 9, 13) + D(1, 12, 15) \]
\[ f (x 1 , \dots , x 4 ) = \sum m(0, 2, 5, 6, 7, 8, 9, 13) + D(1, 12, 15) \] \[ P = \{ p_1 = 00*0, p_2 = 0*10, p_3 = 011*, p_4 = *00*, p_5 = **01, p_6 = 1*0*, p_7 = *1*1\} \]

Finding PIs

\[ P = \{ 00*0, 0*10, 011*, *00*, **01, 1*0*, *1*1\} \]

Minimum Cover

\[ P = \{ 00*0, 0*10, 011*, *00*, **01, 1*0*, *1*1\} \] \[ f = \bx_1 x_3 \bx_4 + \bx_2 \bx_3 + x_2 x_4\]

Quine McCluskey algorithm

Find PIs

  1. Start with a list of cubes (products) that represent the minterms where f = 1 or a don’t-care condition.
  2. Arrange the minterms in groups of increasing number of ones in the binary representation.
  3. Generate the prime implicants by successive pairwise comparisons of the cubes.

Find minimum cover

  1. Derive a cover table which indicates the minterms where f = 1 that are covered by each prime implicant.
  2. Include the essential prime implicants (if any) in the final cover and reduce the table by removing both these prime implicants and the covered minterms.
  3. Use the concept of row and column dominance to reduce the cover table further. A dominated row is removed only if the cost of its prime implicant is greater than or equal to the cost of the dominating row’s prime implicant.
  4. Repeat steps 3 and 4 until the cover table is either empty or no further reduction of the table is possible.
  5. If the reduced cover table is not empty, then use the branching approach to determine the remaining prime implicants that should be included in a minimum cost cover.

Petricks method

\[ P = \{ p_1 = 00*0, p_2 = 0*10, p_3 = 011*, p_4 = *00*, p_5 = **01, p_6 = 1*0*, p_7 = *1*1\} \]

Petricks method

\[ P = \{ p_1 = 00*0, p_2 = 0*10, p_3 = 011*, p_4 = *00*, p_5 = **01, p_6 = 1*0*, p_7 = *1*1\} \]
\begin{align} &(p_1 + p_4)(p_1 + p_2)(p_5 + p_7)(p_2 + p_3)(p_3 + p_7)\underbrace{(p_4 + p_6)(p_4 + p_5 + p_6)}_{(p_4 + p_6)}(p_5 + p_6 + p_7) \\ &= (p_1 + p_4)(p_1 + p_2)(p_2 + p_3)(p_3 + p_7)(p_4 + p_6)\underbrace{(p_5 + p_7)(p_5 + p_6 + p_7)}_{(p_5 + p_7)} \\ &= (p_1 + p_4)(p_1 + p_2)(p_2 + p_3)(p_3 + p_7)(p_4 + p_6)(p_5 + p_7) \\ &= (p_1 + p_4p_2 + p_1 p_2)(p_2 p_7 +p_2 p_3 + p_3 p_7 + p_3)(p_4 p_5 + p_4 p_7 + p_6p_5 + p_6 p_7) \\ &= (p_1 + p_4p_2 + p_1 p_2)(p_2 p_7 +p_2 p_3 + p_3 p_7 + p_3)(p_4 p_5 + p_4 p_7 + p_6p_5 + p_6 p_7) \\ &= (p_1 + p_4p_2)(p_2 p_7 + p_3)(p_4 p_5 + p_4 p_7 + p_6p_5 + p_6 p_7) \\ &= (p_1 p_2 p_7 + p_1 p_3 + p_2 p_4 p_7 + p_2 p_3 p_4)(p_4 p_5 + p_4 p_7 + p_5 p_6 + p_6 p_7) \\ &= p_1 p_2 p_4 p_5 p_7 + p_1 p_2 p_4 p_7 + p_1 p_2 p_5 p_6 p_7 + p_1 p_2 p_6 p_7 \\&\qquad + p_1 p_3 p_4 p_5 + p_1 p_3 p_4 p_7 + p_1 p_3 p_5 p_6 + p_1 p_3 p_6 p_7 \\&\qquad + p_2 p_4 p_5 p_7 + \color{red}{p_2 p_4 p_7} + p_2 p_4 p_5 p_6 p_7 + p_2 p_4 p_6 p_7 \\&\qquad + p_2 p_3 p_4 p_5 + p_2 p_3 p_4 p_7 + p_2 p_3 p_4 p_5 p_6 + p_2 p_3 p_4 p_6 p_7 \end{align} \[ f = p_2 + p_4 + p_7 = \bx_1 x_2 \bx_4 + \bx_2 \bx_3 + x_2 x_4 \]

Thanks, Questions, Feedback?

https://vikasdhiman.info/ECE275-Sequential-Logic/