340 likes | 354 Views
Combinational Logic Part 2:. Karnaugh maps (quick). Sum of Minterms Implementation. OR all of the minterms of truth table for which the function value is 1 F = m 0 + m 2 + m 5 + m 7 F = X’Y’Z’ + X’YZ’+ XY’Z + XYZ. F = Y’ + X’YZ’ + XY. Sum of Products Implementation.
E N D
Combinational LogicPart 2: Karnaugh maps (quick)
Sum of Minterms Implementation • OR all of the minterms of truth table for which the function value is 1 F = m0 + m2 + m5 + m7 F = X’Y’Z’ + X’YZ’+ XY’Z + XYZ
F = Y’ + X’YZ’ + XY Sum of Products Implementation • Simplifying sum-of-minterms can yield a sum of products • Difference is that each term need not have all variables • Resulting gates • ANDs and one OR
Two-Level Implementation • Sum of products has 2 levels of gates Fig 2-6
More Levels of Gates? • What’s best? • Hard to answer • More gate delays (more on this later) • But maybe we only have 2-input gates
Product of Maxterms Implementation • Can express F as AND of Maxterms for all rows that should evaluate to 0 • or This makes one Maxterm fail each time F should be 0
Product of Sums Implementation • ORs followed by AND
Karnaugh Map • Graphical depiction of truth table • A box for each minterm • So 2 variables, 4 boxes • 3 variable, 8 boxes • And so on • Useful for simplification • by inspection • Algebraic manipulation harder
K-Map from Truth TableExamples • There are implied 0s in empty boxes
Function from K-Map • Can generate function from K-map Simplifies to X + Y (in a moment)
In Practice: • Karnaugh maps were mildly useful when people did simplification • Computers now do it! • We’ll cover Karnaugh maps as a way for you to gain insight, • not as real tool
Three-Variable Map • Eight minterms • Look at encoding of columns and rows
Simplification • Adjacent squares (horizontally or vertically) are minterms that vary by single variable • Draw rectangles on map to simplify function • Illustration next
Example instead of
Adjacency is cylindrical • Note that wraps from left edge to right edge.
Another Example • Help me solve this one
In General • One box -> 3 literals • Rectangle of 2 boxes -> 2 literals • Rectangle of 4 boxes -> 1 literal • Rectangle of 8 boxes -> Logic 1 (on 3-variable map) • Covers all minterms
Slight Variation • Overlap is OK. • No need to use full m5-- waste of input
4-variable map • At limit of K-map
Systematic Simplification • A Prime Implicant is a product term obtained by combining the maximum possible number of adjacent squares in the map into a rectangle with the number of squares a power of 2. • A prime implicant is called an Essential Prime Implicant if it is the only prime implicant that covers (includes) one or more minterms. • Prime Implicants and Essential Prime Implicants can be determined by inspection of a K-Map. • A set of prime implicants "covers all minterms" if, for each minterm of the function, at least one prime implicant in the set of prime implicants includes the minterm.
Example of Prime Implicants CD C B B D D B C 1 1 1 1 1 1 1 1 BD BD 1 1 B B 1 1 1 1 A A 1 1 1 1 1 1 1 1 A B D D AD Minterms covered by single prime implicant • Find ALL Prime Implicants B’D’ and BD are ESSENTIAL Prime Implicants C
Prime Implicant Practice • Find all prime implicants for:
Prime Implicant Practice B D B C C 1 1 1 B 1 1 A 1 1 1 1 1 1 D A • Find all prime implicants for:
Algorithm to Find An Optimal Expression for A Function • Find all prime implicants. • Include all essential prime implicants in the solution • Select a minimum cost set of non-essential prime implicants to cover all minterms not yet covered. • The solution consists of all essential prime and the selected minimum cost set of non-essential prime implicants minimum cost selected minimum cost
The Selection Rule • Obtaining a good simplified solution: Use the Selection Rule
Prime Implicant Selection Rule • Minimize the overlap among prime implicants as much as possible. • In the solution, make sure that each prime implicant selected includes at least one minterm not included in any other prime implicant selected.
Selection Rule Example Essential Selected C C 1 1 1 1 1 1 1 1 1 1 1 1 B B 1 1 A A 1 1 1 1 D D Minterms covered by essential prime implicants • Simplify F(A, B, C, D) given on the K-map.
Don’t Care • So far have dealt with functions that were always either 0 or 1 • Sometimes we have some conditions where we don’t care what result is • Example: dealing with BCD • Only care about first 10
Mark With an X • In a K-map, mark don’t care with X • Simpler implementations • Can select an X either as 1 or 0
Example or What would we have if Xs were 0?
Selection Rule Example with Don't Cares Essential C C 1 1 x x x x 1 1 x x 1 1 B B x x A A x x 1 1 1 1 D D Minterms covered by essential prime implicants • Simplify F(A, B, C, D) given on the K-map. Selected
Product of Sums Example F • Find the optimum POS solution: • Hint: Use and complement it to get the result.