Determining don't-care values in a Karnaugh Map

10k Views Asked by At

I'm having a hard time understanding how to find the don't-care values in a Karnaugh map. What does it even mean? If I have a boolean function, say $f(a,b,c,d)=a'bc+abc'+bc'd+a'bc'd$, how would I determine don't-care values? What would I be looking for?

2

There are 2 best solutions below

4
On BEST ANSWER

You are not looking for anything. Don't-care values in a Karnaugh map relate to output that is generally not reachable under normal circumstances and allow you to simplify the logic more than you would normally be able to. Because of this, don't-care values must be explicitly given, or understood from some statement akin to "the values $a'bcd$ and $ab'c'$ will never be used as input".

For an example, consider the input logic to a seven-segment display (the display you see on digital alarm clocks, microwaves, etc.) The input to a seven-segment display is often a number between $0$ and $9$, represented with 4 bits. Since the numbers $10$ through $15$ are also valid combinations of those 4 bits, the logic would theoretically work and determine output values if that was the input received. But because that input is never expected, it doesn't matter what would happen on the display if the number $12$ were received. The display could show a $4$ or an $8$ or any combination of the segments. Thus, when determining the logic for such things, you can put an X in the Karnaugh map under the values that correspond to $10, \dots, 15$ and they will often simplify the logic. This ultimately results in fewer logic gates necessary in hardware, which is always a good thing.

0
On

To solve the problem, try to write the function in a simplified form. Now draw a $k$-map for both the simplified function and the original function. Compare the the two functions and any $1$'s that are present in one and not in the other will be your don't cares.