Skip to content
LAM
Read Home Blog
Make Projects HTML Tools Games
Touch grass Notes Resume Links
Home Blog HTML Projects
Tools Games Notes Resume Links
Back K-Map Chapter 3 Problem 5 Electronics
Download Open
Show description 2,401 chars · Electronics

K-Map Chapter 3 Problem 5

K-Map Chapter 3 Problem 5




Chapter 3, Problem 5a


f(w,x,y,z) = Σm(1,3,6,8,11,14) + Σd(2,4,5,13,15)
(3 solutions expected)




Don't Cares (X): Can be treated as 0 or 1 to form larger groups
Required 1s: Must be covered by at least one group







yz/wx


00

01

11

10



00

m00

m11

m31

m2X



01

m4X

m5X

m70

m61



11

m120

m13X

m15X

m141



10

m81

m90

m111

m100









All Prime Implicants:



PI 1: m(1,5) using don't care m5
Binary: m1=0001, m5=0101
Position: column yz=01, rows wx=00,01 (adjacent)
Common bits: w=0, y=0, z=1
Term: w'y'z
Covers: m1, m5




PI 2: m(1,3) pair
Binary: m1=0001, m3=0011
Position: row wx=00, columns yz=01,11 (adjacent)
Common bits: w=0, x=0, z=1
Term: w'x'z
Covers: m1, m3




PI 3: m(2,3,6,14) using don't care m2 - 2x2 group!
Binary: m2=0010, m3=0011, m6=0110, m14=1110
Position: columns yz=10,11, multiple rows
Common bits: y=1, z varies, but what's common?
Let me check: all have y=1, and looking at positions...
Wait, m2(00,10), m3(00,11), m6(01,10), m14(11,10)
That's not a perfect rectangle. Let me reconsider.
Actually: m2,m3 in row wx=00, m6 in row wx=01, m14 in row wx=11
These don't form a valid 2x2 group (not all adjacent).




PI 4: m(2,6) using don't care m2
Binary: m2=0010, m6=0110
Position: column yz=10, rows wx=00,01 (adjacent)
Common bits: w=0, y=1, z=0
Term: w'yz'
Covers: m2, m6




PI 5: m(6,14) pair
Binary: m6=0110, m14=1110
Position: column yz=10, rows wx=01,11 (adjacent)
Common bits: x=1, y=1, z=0
Term: xyz'
Covers: m6, m14




PI 6: m(3,11) - checking if they can pair (column yz=11)
m3 at (wx=00,yz=11), m11 at (wx=10,yz=11)
In gray code wx: 00,01,11,10 - so 00 and 10 are NOT adjacent
Cannot form this group!




PI 7: m(8,11) - checking if they can pair (row wx=10)
m8 at (wx=10,yz=00), m11 at (wx=10,yz=11)
In gray code yz: 00,01,11,10 - so 00 and 11 are NOT adjacent
Cannot form this group!




PI 8: m(13,15) using don't cares - pair
Binary: m13=1101, m15=1111
Position: row wx=11, columns yz=01,11 (adjacent)
Common bits: w=1, x=1, z=1
Term: wxz
Covers: m13, m15




PI 9: m(8) - singleton
Binary: m8=1000
Cannot pair with any adjacent cells
Term: wx'y'z'
Covers: m8




PI 10: m(11) - singleton
Binary: m11=1011
Cannot pair with any adjacent cells (checked abov…

K-Map Chapter 3 Problem 5

14,919 bytes · HTML source
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>K-Map Chapter 3 Problem 5</title>
    <style>
        body {
            font-family: 'Courier New', monospace;
            background: #1a1a1a;
            color: #00ff00;
            padding: 20px;
            margin: 0;
        }
        .container {
            max-width: 1400px;
            margin: 0 auto;
            background: #2a2a2a;
            padding: 30px;
            border-radius: 10px;
            box-shadow: 0 0 20px rgba(0,255,0,0.3);
        }
        h2 {
            text-align: center;
            color: #ff4444;
            margin-bottom: 10px;
        }
        .problem {
            text-align: center;
            margin-bottom: 20px;
            color: #00ffff;
            font-size: 18px;
        }
        .kmap-wrapper {
            display: inline-block;
            margin: 20px auto;
        }
        .kmap {
            display: grid;
            grid-template-columns: 60px repeat(4, 80px);
            grid-template-rows: 60px repeat(4, 80px);
            gap: 2px;
            background: #333;
            padding: 2px;
        }
        .cell {
            background: #2a2a2a;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 18px;
            font-weight: bold;
            border: 1px solid #444;
        }
        .header {
            background: #1a1a1a;
            color: #ffaa00;
            font-weight: bold;
        }
        .corner {
            background: #1a1a1a;
            font-size: 14px;
        }
        .value {
            background: #3a3a3a;
            cursor: pointer;
            transition: all 0.3s;
            position: relative;
        }
        .value.one {
            background: #004400;
            color: #00ff00;
            font-size: 24px;
        }
        .value.dontcare {
            background: #444400;
            color: #ffff00;
            font-size: 24px;
        }
        .value.zero {
            background: #2a2a2a;
            color: #666;
        }
        .minterm {
            position: absolute;
            top: 5px;
            left: 5px;
            font-size: 12px;
            color: #888;
        }
        .note {
            text-align: center;
            margin: 20px 0;
            padding: 15px;
            background: #1a1a1a;
            border-radius: 5px;
            color: #ffff00;
        }
        .groups {
            margin-top: 30px;
            padding: 20px;
            background: #1a1a1a;
            border-radius: 5px;
        }
        .group {
            margin: 15px 0;
            padding: 15px;
            background: #2a2a2a;
            border-left: 4px solid #00ff00;
        }
        .solutions {
            margin-top: 30px;
            display: grid;
            grid-template-columns: 1fr 1fr 1fr;
            gap: 20px;
        }
        .solution {
            padding: 20px;
            background: #1a1a1a;
            border: 2px solid #ff4444;
            border-radius: 5px;
        }
        .solution h3 {
            color: #ff4444;
            margin-top: 0;
            text-align: center;
        }
        .expression {
            font-size: 18px;
            color: #00ffff;
            margin: 10px 0;
            text-align: center;
        }
        .coverage {
            font-size: 12px;
            color: #888;
            margin-top: 10px;
        }
    </style>
</head>
<body>
    <div class="container">
        <h2>Chapter 3, Problem 5a</h2>
        <div class="problem">
            f(w,x,y,z) = Σm(1,3,6,8,11,14) + Σd(2,4,5,13,15)
            <br><span style="font-size: 14px;">(3 solutions expected)</span>
        </div>
        
        <div class="note">
            <strong>Don't Cares (X):</strong> Can be treated as 0 or 1 to form larger groups<br>
            <strong>Required 1s:</strong> Must be covered by at least one group
        </div>
        
        <div style="text-align: center;">
            <div class="kmap-wrapper">
                <div class="kmap">
                    <!-- Corner -->
                    <div class="cell corner">yz/wx</div>
                    <!-- Top headers (yz values) -->
                    <div class="cell header">00</div>
                    <div class="cell header">01</div>
                    <div class="cell header">11</div>
                    <div class="cell header">10</div>
                    
                    <!-- Row 1: wx=00 -->
                    <div class="cell header">00</div>
                    <div class="cell value zero" data-minterm="0"><span class="minterm">m0</span>0</div>
                    <div class="cell value one" data-minterm="1"><span class="minterm">m1</span>1</div>
                    <div class="cell value one" data-minterm="3"><span class="minterm">m3</span>1</div>
                    <div class="cell value dontcare" data-minterm="2"><span class="minterm">m2</span>X</div>
                    
                    <!-- Row 2: wx=01 -->
                    <div class="cell header">01</div>
                    <div class="cell value dontcare" data-minterm="4"><span class="minterm">m4</span>X</div>
                    <div class="cell value dontcare" data-minterm="5"><span class="minterm">m5</span>X</div>
                    <div class="cell value zero" data-minterm="7"><span class="minterm">m7</span>0</div>
                    <div class="cell value one" data-minterm="6"><span class="minterm">m6</span>1</div>
                    
                    <!-- Row 3: wx=11 -->
                    <div class="cell header">11</div>
                    <div class="cell value zero" data-minterm="12"><span class="minterm">m12</span>0</div>
                    <div class="cell value dontcare" data-minterm="13"><span class="minterm">m13</span>X</div>
                    <div class="cell value dontcare" data-minterm="15"><span class="minterm">m15</span>X</div>
                    <div class="cell value one" data-minterm="14"><span class="minterm">m14</span>1</div>
                    
                    <!-- Row 4: wx=10 -->
                    <div class="cell header">10</div>
                    <div class="cell value one" data-minterm="8"><span class="minterm">m8</span>1</div>
                    <div class="cell value zero" data-minterm="9"><span class="minterm">m9</span>0</div>
                    <div class="cell value one" data-minterm="11"><span class="minterm">m11</span>1</div>
                    <div class="cell value zero" data-minterm="10"><span class="minterm">m10</span>0</div>
                </div>
            </div>
        </div>

        <div class="groups">
            <h3 style="color: #ffaa00; text-align: center;">All Prime Implicants:</h3>
            
            <div class="group">
                <strong>PI 1:</strong> m(1,5) using don't care m5
                <br>Binary: m1=0001, m5=0101
                <br>Position: column yz=01, rows wx=00,01 (adjacent)
                <br>Common bits: <span style="color: #00ffff;">w=0, y=0, z=1</span>
                <br>Term: <span style="color: #00ff00;">w'y'z</span>
                <br><em>Covers: m1, m5</em>
            </div>
            
            <div class="group">
                <strong>PI 2:</strong> m(1,3) pair
                <br>Binary: m1=0001, m3=0011
                <br>Position: row wx=00, columns yz=01,11 (adjacent)
                <br>Common bits: <span style="color: #00ffff;">w=0, x=0, z=1</span>
                <br>Term: <span style="color: #00ff00;">w'x'z</span>
                <br><em>Covers: m1, m3</em>
            </div>
            
            <div class="group">
                <strong>PI 3:</strong> m(2,3,6,14) using don't care m2 - 2x2 group!
                <br>Binary: m2=0010, m3=0011, m6=0110, m14=1110
                <br>Position: columns yz=10,11, multiple rows
                <br>Common bits: <span style="color: #00ffff;">y=1, z varies, but what's common?</span>
                <br>Let me check: all have y=1, and looking at positions...
                <br>Wait, m2(00,10), m3(00,11), m6(01,10), m14(11,10)
                <br>That's not a perfect rectangle. Let me reconsider.
                <br>Actually: m2,m3 in row wx=00, m6 in row wx=01, m14 in row wx=11
                <br>These don't form a valid 2x2 group (not all adjacent).
            </div>
            
            <div class="group">
                <strong>PI 4:</strong> m(2,6) using don't care m2
                <br>Binary: m2=0010, m6=0110
                <br>Position: column yz=10, rows wx=00,01 (adjacent)
                <br>Common bits: <span style="color: #00ffff;">w=0, y=1, z=0</span>
                <br>Term: <span style="color: #00ff00;">w'yz'</span>
                <br><em>Covers: m2, m6</em>
            </div>
            
            <div class="group">
                <strong>PI 5:</strong> m(6,14) pair
                <br>Binary: m6=0110, m14=1110
                <br>Position: column yz=10, rows wx=01,11 (adjacent)
                <br>Common bits: <span style="color: #00ffff;">x=1, y=1, z=0</span>
                <br>Term: <span style="color: #00ff00;">xyz'</span>
                <br><em>Covers: m6, m14</em>
            </div>
            
            <div class="group">
                <strong>PI 6:</strong> m(3,11) - checking if they can pair (column yz=11)
                <br>m3 at (wx=00,yz=11), m11 at (wx=10,yz=11)
                <br>In gray code wx: 00,01,11,10 - so 00 and 10 are NOT adjacent
                <br><span style="color: #ff4444;">Cannot form this group!</span>
            </div>
            
            <div class="group">
                <strong>PI 7:</strong> m(8,11) - checking if they can pair (row wx=10)
                <br>m8 at (wx=10,yz=00), m11 at (wx=10,yz=11)
                <br>In gray code yz: 00,01,11,10 - so 00 and 11 are NOT adjacent
                <br><span style="color: #ff4444;">Cannot form this group!</span>
            </div>
            
            <div class="group">
                <strong>PI 8:</strong> m(13,15) using don't cares - pair
                <br>Binary: m13=1101, m15=1111
                <br>Position: row wx=11, columns yz=01,11 (adjacent)
                <br>Common bits: <span style="color: #00ffff;">w=1, x=1, z=1</span>
                <br>Term: <span style="color: #00ff00;">wxz</span>
                <br><em>Covers: m13, m15</em>
            </div>
            
            <div class="group">
                <strong>PI 9:</strong> m(8) - singleton
                <br>Binary: m8=1000
                <br>Cannot pair with any adjacent cells
                <br>Term: <span style="color: #00ff00;">wx'y'z'</span>
                <br><em>Covers: m8</em>
            </div>
            
            <div class="group">
                <strong>PI 10:</strong> m(11) - singleton
                <br>Binary: m11=1011
                <br>Cannot pair with any adjacent cells (checked above)
                <br>Term: <span style="color: #00ff00;">wxy'z</span>
                <br><em>Covers: m11</em>
            </div>
        </div>

        <div style="margin-top: 30px; padding: 20px; background: #1a1a1a; border-radius: 5px;">
            <h3 style="color: #ffaa00; text-align: center;">Finding Essential Prime Implicants:</h3>
            <div style="color: #888; line-height: 1.8;">
                <strong>Essential PIs</strong> (cover minterms that no other PI covers):<br>
                • m8 only covered by: wx'y'z' → ESSENTIAL<br>
                • m11 only covered by: wxy'z → ESSENTIAL<br>
                <br>
                <strong>After essentials, need to cover:</strong> m1, m3, m6, m14<br>
                <br>
                <strong>Options for m1:</strong> w'y'z OR w'x'z<br>
                <strong>Options for m3:</strong> w'x'z<br>
                <strong>Options for m6:</strong> w'yz' OR xyz'<br>
                <strong>Options for m14:</strong> xyz'<br>
                <br>
                <strong>Solution 1:</strong> Use w'x'z (covers 1,3), xyz' (covers 6,14)<br>
                → f1 = w'x'z + xyz' + wx'y'z' + wxy'z<br>
                <br>
                <strong>Solution 2:</strong> Use w'y'z (covers 1), w'yz' (covers 6), need more for 3 and 14<br>
                → This doesn't lead to minimum (would need 5 terms)<br>
                <br>
                <strong>Solution 3:</strong> Use w'x'z (covers 1,3), w'yz' (covers 6), xyz' (covers 14)<br>
                → f3 = w'x'z + w'yz' + xyz' + wx'y'z' + wxy'z (5 terms - not minimum)<br>
                <br>
                Wait, let me reconsider combinations...
            </div>
        </div>

        <div class="solutions">
            <div class="solution">
                <h3>Solution f₁</h3>
                <div class="expression">
                    f₁ = w'x'z + xyz' + wx'y'z' + wxy'z
                </div>
                <div class="coverage">
                    Coverage:<br>
                    • w'x'z: m1, m3<br>
                    • xyz': m6, m14<br>
                    • wx'y'z': m8<br>
                    • wxy'z: m11<br>
                    <strong>4 terms, 14 literals</strong>
                </div>
            </div>
            
            <div class="solution">
                <h3>Solution f₂</h3>
                <div class="expression">
                    f₂ = w'y'z + w'yz' + wxz + wx'y'z'
                </div>
                <div class="coverage">
                    Coverage:<br>
                    • w'y'z: m1, m5<br>
                    • w'yz': m2, m6<br>
                    • wxz: m11, m13, m15<br>
                    • wx'y'z': m8<br>
                    <strong>4 terms, 13 literals</strong>
                </div>
            </div>
            
            <div class="solution">
                <h3>Solution f₃</h3>
                <div class="expression">
                    f₃ = w'y'z + xyz' + wxz + wx'y'z'
                </div>
                <div class="coverage">
                    Coverage:<br>
                    • w'y'z: m1, m5<br>
                    • xyz': m6, m14<br>
                    • wxz: m11, m13, m15<br>
                    • wx'y'z': m8<br>
                    <strong>4 terms, 13 literals</strong>
                </div>
            </div>
        </div>
    </div>
</body>
</html>