Part 3 – Use K-maps to determine both POS and SOP minimizations,
then compare the two
Sometimes, we see more than one simplification of a function and
need to determine which one requires the fewest number of gates to
implement. This comparison may be done by counting the number of
inputs required by each simplification. The one with the fewest
inputs requires fewer gates and, therefore, is the minimized
solution.
Going back to our example again, we can see that the POS solution
for the function is: F = (b+d’)(b’+d)(a+c’+d)
SOP solution – 10 gate inputs:
Recall that the SOP simplification was: F = b’c’d’ + bd
Which solution is the minimized one (i.e. requires fewer gates to
implement?
We can draw the circuit required for each implementation and count
the number of inputs:
POS solution – 13 gate inputs:
The SOP requires fewer gate inputs so it is the better
solution.
However, drawing a circuit every time we want to determine the
number of gate inputs is time consuming. Happily, we can count gate
inputs by looking at the equations:
SOP solution: F = b’c’d’ + bd
First, count the number of inverters needed – b, c and d require
inverters, so that’s 3 inputs.
Next, observe we will need 2 AND gates followed by 1 OR gate. The
AND gates will require 3 inputs (b’, c’ and d’) and 2 inputs (b and
d), respectively. The OR gate will require 2 inputs (b’c’d’ +
bd).
That’s a total of 3 + 3 + 2 + 2 = 10 inputs. POS solution: F =
(b+d’)(b’+d)(a+c’+d)
This solution requires inverters for b, c and d?3 inputs.
Implementation will require 3 OR gates followed by an AND gate. The
OR gates require 2, 2 and
3 inputs, respectively. The AND gate requires 3 inputs.
The total is 3 + 2 + 2 + 3 + 3 = 13 inputs.
Exercises: Find the POS solution for F1, F2 and F3 from Part 1.
Compare the number of gates for the SOP and the POS solutions for
each function. Note that a given variable needs to be inverted only
once per function (i.e. G = a’c + a’d needs only 1 inverter, not
2). (25 points)