D = BC+A
Uses Gray code: Only one bit changes between cells Wraparound at edges
Example: 00 01 11 10 First column to last column
Top row to bottom row
A AB A 011 111
AB
00 01 11 10 C 00 01 11 10
A A CD 010
A AB
0 1 00 0 000 010 110 100
B C 00 01 11 10 0 4 12 8
001
0 2 6 4
0 0 01 B C 101
0 2 0 2 6 4 1 5 13 9 C 1
D 001 011 111 101
B 1 1
C 1 11 1 3 7 5
3 1 3 7 5 3 7 15 11 000 A 100
C B
B 10
2 6 14 10
Find the least number of subcubes, each as large as possible, that cover the ON-set
Make sure subcubes contain 1, 2, 4, or 8 items (remember the Boolean cube)
A B Cin Cout
A B F 0 0 0 0
A A
0 0 0 1 B 0 1 0 0 1 0 AB
1 0 1 0 F = B' 0 1 0 0 Cin 00 01 11 10
0 1 1
0 2
0 1 1 1 0 0 0 1 0 Cout = AB + BCin + ACin
2 1 0 1 0 2 6 4
1 0 0 1 0 0 0
3 1 1 0 1 3 1 0 1 1 1
1 0 1 1 1 3 7 5
1 1 0 1 B
1 1 1 1 111
B
Cin
101
000 A
CSE370, Lecture 6 7 CSE370, Lecture 6 8
Find the least number of subcubes, each as large as possible, that cover the ON-set
Make sure subcubes contain 1, 2, 4, or 8 items (remember the Boolean cube)
A B C D
AB A
0 0 0 0 A 00 01 11 10
0 0 1 0 AB C
0 1 0 0 C 00 01 11 10 F(A,B,C) = m(0,4,5,7) 0 1 0 0 1
0 2 6 4
0 1 1 1 0 0 0 1 1 D = A + BC = B'C'+AC
0 2 6 4 1 0 0 1 1
1 0 0 1 1
1 3 7 5
1 0 1 1 1
0 3
1 7
1 5
1
B
1 1 0 1 B 111
1 1 1 1
B 101
Cin
000 A
CSE370, Lecture 6 9 CSE370, Lecture 6 10
A
AB F(A,B,C) = m(0,4,5,7)
C 00 01 11 10 A
= B'C'+AC AB
0 1 0 0 1 CD 00 01 11 10 0111 1111
0 2 6 4
1 0 0 1 1 F'(A,B,C) = m(1,2,3,6) 00 1 0 0 1
0 4 12 8
1 3 7 5
= AC + BC 01 0 1 0 0
B 1 5 13 9 D C D
A
11 1 1 1 1 1000
3 7 15 11 0000 B
C
10 1 1 1 1
2 6 14 10
B
Find the least number of subcubes, each as large as possible, that cover the ON-set
CSE370, Lecture 6 11 CSE370, Lecture 6 12
How about Karnaugh Maps, 6 dimensions?
K-map minimization examples: on whiteboard K-maps become 3D CD
CD
EF 00 01 11 10
for 5 & 6 variables EF 00 01 11 10
00 1 0 0 0
F(A,B,C,D) = m(0,3,7,8,11,15) 00 0 0 0 0
F(A,B,C) = m(0,3,6,7) 01 0 0 1 1
F(A,B,C,D) = 01 0 0 1 1
AB = 00 AB = 01
F(A,B,C) = F(A,B,C,D) = 11 0 0 1 1
11 1 0 1 1
10
F'(A,B,C) = 10 0 0 0 0
1 0 0 0
AB CD CD
CD 00 01 11 10 EF 00 01 11 10 EF 00 01 11 10
00 OUTPUT = 00 0 0 0 0 00 0 0 0 0
AB 01 ABCDF + 01
00 01 11 10 0 0 1 1 01 0 0 1 1
C
AB = 11 AB = 10
0 11 CF + BCDE 11 1 0 1 1 11 0 0 1 1
1 10 10 1 0 0 0 10 0 0 0 0
Incompletely specified functions: Dont cares Truth table for a BCD increment-by-1