K-map simplifying

Thread Starter

tonyz

Joined Jan 22, 2013
23
From the truth table the minterms is Ʃm(1,2,3,5,6,8,9,10,11,12,13)

So I came up with this K-map, not to sure if I'm correct. I've read Chapter 4 for Karnaugh mapping from the website and my textbook but I'm still confused.



Not sure if I'm missing another square that would consist of (1011,1010,0011,0010) but other then that I've simplified it to

A'B'C + AB'D' + C'D + AC' + AB'

Any help would be greatly appreciated, thanks :)
 

MrChips

Joined Oct 2, 2009
35,176
You have a number of mistakes.
You must label your A, B, C, D.
Three of your terms don't make sense.
You have omitted minterm 6.
You do not need the two cells grouped in blue. This is already included in the bottom four.
The four cells on the right side can be grouped into one term.
 
Last edited:

Thread Starter

tonyz

Joined Jan 22, 2013
23
The grouped numbers that are in black, I'm assuming you meant by the right side



So I ended up with
A'C'D' + A'B'C + C'D + AC' + AB'
 

MrChips

Joined Oct 2, 2009
35,176
Still not quite right.
There are four groups of four terms and one of two terms. This should be reflected in your answer.

A'C'D' and A'B'C don't make sense.
 

DerStrom8

Joined Feb 20, 2011
2,390
That one looks better. Before, you kept re-grouping 1s that were already in groups. Once they're put in a group, they do not need to be grouped again. This last one looks okay.

EDIT: Oops, you do not need the loop along the bottom four. Take that out and you're good.
 

thatoneguy

Joined Feb 19, 2009
6,359
The grouped numbers that are in black, I'm assuming you meant by the right side



So I ended up with
A'C'D' + A'B'C + C'D + AC' + AB'
Map is right, I have something different:
A'CD'+C'D+B'C+AC'

Mapped to your original function, the terms, function output, parts of Kmap [ABCD] for each term, location.

13 is redundant, I might not have done this right, either.

A'CD' -> 2,6 -> [01|00]10 (upper right corner)
C'D -> 1,5,9,13 -> xx01 (second column)
B'C -> 2,3,10,11 -> [00|10][11|10] (box that wraps from bottom right to top right, 2 bits wide)
AC' -> 8,9,12,13 -> [11|10][10|01] (lower left corner)
 
Last edited:

WBahn

Joined Mar 31, 2012
33,186
Map is right, I have something different:
A'CD'+C'D+B'C+AC'

Mapped to your original function, the terms, function output, parts of Kmap [ABCD] for each term, location.

13 is redundant, I might not have done this right, either.

A'CD' -> 2,6 -> [01|00]10 (upper right corner)
C'D -> 1,5,9,13 -> xx01 (second column)
B'C -> 2,3,10,11 -> [00|10][11|10] (box that wraps from bottom right to top right, 2 bits wide)
AC' -> 8,9,12,13 -> [11|10][10|01] (lower left corner)
This is correct. But it does have two static-1 timing hazards that can be eliminated by including the consensus term B'D (which is what MrChips was referring to about redundancies eliminating glitches).

There are so many 1's in this table that it might be easier to deal with the 0's.

We want the output, F, to be zero when

F' = A'C'D' + ABC + BCD

F = (A'C'D' + ABC + BCD)'
 

mikez

Joined Jan 21, 2013
47
Sometimes when solving these it may be easier to look at the Product of Sums - looking at the zeros. When doing kmaps for the same function you may end up with a smaller circuit needing less literals and gates than the other form of the function.

For example doing the sum of products may yield an answer requiring the use of 11 literals and 4 gates, but when doing the product of sums may only need 8 literals and 4 gates.
 

Thread Starter

tonyz

Joined Jan 22, 2013
23
I'm stuck on a homework question that says optimize the expression for (1)sum-of-products and (2)product-of-sums

AC'+B'D+A'CD+ABCD
I tried to figure out the sum of minterms for this equation but not to sure if I'm right

Ʃm(3,7,9,12,15)
A'B'CD+BCD+ABC'D'+AB'C'D
=CD(A'B'+B) + AC'(BD'+B'D) <- stuck here, I even tried making truth table to simplify the equations inside the parentheses

Another way I tried to do it,
AC' + B'D + CD(A'+AB) <- stuck at parentheses again

So far I've only tried to get the sum-of-products for the equation

The answer should be CD + AC' + BC (s.o.p)
(C'+D)(A+D)(A+B'+C) (p.o.s)
 

thatoneguy

Joined Feb 19, 2009
6,359
Have you drawn the Map for that function you need to find the miniterms for?

[table="head";]AB\CD|00|01|11|10
00|0|1|1|0
01|0|0|1|0
11|1|1|1|0
10|1|1|1|0
[/table]

Sum of Product - CD+AC'+B'D (Mapped Ones)
Product of Sums - ? (Mapped Zeros) (A+B'+C)(C'+D)(A+D)

Follow the tips and methods shown above by WBahn and others, it is not much different from the question in the OP.

Second Question, slightly more extensive:
[table="head";]AB\CD|00|01|11|10
00|0|0|1|0
01|0|0|1|0
11|1|0|1|0
10|0|1|0|0
[/table]

SoP - ?A'CD+ABC'D'+BCD+AB'C'D
PoS - ? (A'+B+C')(B'+C+D')(A+D)(C'+D)(B+D)(A+C)
 
Last edited:

WBahn

Joined Mar 31, 2012
33,186
I'm stuck on a homework question that says optimize the expression for (1)sum-of-products and (2)product-of-sums
As TOG said, this is really not much different than the original post, at least conceptually.

AC'+B'D+A'CD+ABCD
I tried to figure out the sum of minterms for this equation but not to sure if I'm right
While you may not have the minimal solution, you can always verify that you have a valid solution by simply generating the two truth tables and comparing them for equality. You need to learn how to check your own work -- not only in school but once you are in the "real world" even more so.

Ʃm(3,7,9,12,15)
A'B'CD+BCD+ABC'D'+AB'C'D
=CD(A'B'+B) + AC'(BD'+B'D) <- stuck here, I even tried making truth table to simplify the equations inside the parentheses

Another way I tried to do it,
AC' + B'D + CD(A'+AB) <- stuck at parentheses again
You should recognize (XY'+X'Y) as an XOR. Unless you are allowed to use XOR gates, the SOP form shown is as simple as it gets using Boolean operators (if all Boolean operators are considered equal).

As for (X' + XY), that's one that you should recognize as an identity that you, hopefully, proved at some point. It can be simplified further.

So far I've only tried to get the sum-of-products for the equation

The answer should be CD + AC' + BC (s.o.p)
(C'+D)(A+D)(A+B'+C) (p.o.s)
So you got CD(A'B'+B) + AC'(BD'+B'D). Before spending a bunch of time trying to reshape it into the given answer, determine if they are equivalent to begin with. You can either do a truth table or try to construct boundry cases that push things. For instance, let's assume that C is False. If that is the case, then the given answer will be True if and only if A is True. What about your answer? If C is False, the first term is killed off and you are left with A(BD'+B'D). While this requires that A be True in order for the output to be True, it also requires the B and D be opposite of each other, which the given answer does not require. Hence, your answer is not equivalent to the given answer. Now, it's possible that yours is right and the given answer is wrong, so check the given answer against the original problem to see if they are truly equivalent.
 

Thread Starter

tonyz

Joined Jan 22, 2013
23
Sorry thatoneguy, that was all suppose to be one question.
So the original question was a.) A'C+B'D+A'CD+ABCD

From that expression I came up with Ʃm(3,7,9,12,15) but it doesn't seem right because when I make up the map, which is the last one you made and try to simplify it, it doesn't equal to the (s.o.p) answer which should be like the first k-map you made.

But for the 1st map, I mapped the 0's and took it's complement and came up with (A+D)(C'+D)(A+B'+C)
 

thatoneguy

Joined Feb 19, 2009
6,359
Sorry thatoneguy, that was all suppose to be one question.
So the original question was a.) A'C+B'D+A'CD+ABCD

From that expression I came up with Ʃm(3,7,9,12,15) but it doesn't seem right because when I make up the map, which is the last one you made and try to simplify it, it doesn't equal to the (s.o.p) answer which should be like the first k-map you made.

But for the 1st map, I mapped the 0's and took it's complement and came up with (A+D)(C'+D)(A+B'+C)
I was wondering how you got that. Did you draw the map from the original statement, and do a truth table from that, then everything from there by assuming no errors were made in making the K-Map or truth table?

i thought it was two different questions, since your function values didn't match the statement you originally posted.
 
Top