Anda di halaman 1dari 27

SISTEM DIGITAL

Penyederhanaan Fungsi Boolean


(K-Map, Kondisi Don’t Care)
Penyederhanaan diagram logika
• Untuk mendapatkan se-efisien mungkin desain
rangkaian dan jumlah gerbang logika yang digunakan
• Tujuan:
– Proses lebih cepat
– Biaya lebih murah
• Metode:
– Menggunakan aturan aljabar boolean (secara matematis)
– Menggunakan Karnaugh map (K-map)
– Menggunakan tabulasi (Quine McCluskey)

2
Penyederhanaan secara matematis
Contoh:
F1 = (A’+B)A
= AA’ + AB
= 0 + AB
= AB

F2 = (A+B’)(A+B)
= AA + AB + AB’ + BB’
= A + AB + AB’ + 0
= A(1 + B + B’)
= A(1)
=A

3
Penyederhanaan secara matematis
Elemen identitas x+0=x x.1=x
Komplemen x + x’ = 1 x . x’ = 0
Tertutup x+x=x x.x=x
x+1=1 x.0=0
Involusi (x’)’ = x
Komutatif x+y=y+x xy = yx
Asosiatif x + (y + z) = (x + y) + z x(yz) = (xy)z
Distributif x (y + z) = xy + xz x + (yz) = (x + y) (x + z)
DeMorgan (x + y)’ = x’y’ (xy)’ = x’ + y’
Absorpsi x + xy = x x (x + y) = x

4
Penyederhanaan secara matematis
F3 = AB + A’C + BC
= AB + A’C + BC(A+A’)
= AB + A’C + ABC + A’BC
= AB(1+C) + A’C(1+B)
= AB + A’C

F4 = y+xy’
= (y+x)(y+y’)
= y+x
= x+y

5
K-map
• Setiap kombinasi variabel (minterms)
dipetakan ke kotak yang unik
• Setiap 2n kotak bernilai 1 yang berdekatan
(mempunyai beda nomor kotak 1 bit)
digabungkan
• Hasil yang didapatkan dalam bentuk sum of
product (SOP)
• Bisa untuk menyederhanakan fungsi boolean
dengan jumlah variabel 2, 3, 4, dst.
6
K-map 2 variabel
y • Contoh
m0 m1 – F = xy’ + x’y’
y
x m2 m3 1
x 1

y
x'y’ x'y F = y’
x xy’ xy
– F = x + x’y + xy
y
1
x 1 1

F=x+y

7
K-map 3 variabel
y
– F(x,y,z) = Σ(0,2,4,5,6,7)
m0 m1 m3 m2
y
x m4 m5 m7 m6
1 1
z x 1 1 1 1

z
• Contoh F = x + z’
– F = x’y’z’ + x’yz’ + xyz + xy’z
y – F(x,y,z) = Σ(1,3,5,7)
y
1 1 1 1
x 1 1 x 1 1

z z

F = xz + x’z’ F=z

8
K-map 4 variabel
• Jumlah kotak yang digabungkan menentukan jumlah variabel dalam suatu
minterms
– 1 kotak merepresentasikan 4 variabel
– 2 kotak merepresentasikan 3 variabel
– 4 kotak merepresentasikan 2 variabel
– 8 kotak merepresentasikan 1 variabel
– 16 kotak merepresentasikan nilai 1
y

m0 m1 m3 m2

m4 m5 m7 m6
x
m12 m13 m15 m14
w
m8 m9 m11 m10

z
9
K-map 4 variabel
• F(w,x,y,z) = m0+ m2+ m8+ m9+ • F(w,x,y,z) =
m10+ m11+ m12+ m14 Σ(1,3,4,6,9,11,12,14)
y y

1 1 1 1

1 1
x x
1 1 1 1
w w
1 1 1 1 1 1

z z

F(w,x,y,z) = wx’ + wz’ + x’z’


F(w,x,y,z) = xz’ + x’z
10
K-map
• Contoh:
– Menentukan sum of minterms dan menyederhanakan
fungsi boolean:
F = A(B+C)+A’B+BC
= AB + AC + A’B + BC
= AB(C+C’) + AC(B+B’) + A’B(C+C’) + BC(A+A’)
= ABC + ABC’ + ABC + AB’C + A’BC + A’BC’ + ABC +
A’BC
= ABC + ABC’ + AB’C + A’BC + A’BC’

11
K-map
F = ABC + AB’C’ + AB’C + A’BC + A’BC’
B
1 1
A 1 1 1

F = AB’ + BC + A’B

12
K-map
• Penyederhanaan dari bentuk product of sum
– Menggabungkan kotak dengan nilai 0 untuk mendapatkan
F’
– Dengan menggunakan aturan DeMorgan, didapatkan F =
(F’)’
• Contoh:
– Dari tabel kebenaran berikut, fungsi boolean dapat
dinyatakan dalam dua bentuk:
• sum of products dan product of sums;
• kedua bentuk tersebut dapat disederhanakan menggunakan K-
map

13
K-map
• Tabel kebenaran • Dapat dituliskan sebagai:
w x y z F F(w,x,y,z) =
0 0 0 0 1 Σ(0,1,2,3,12,13,14,15) atau
0 0 0 1 1
F(w,x,y,z) = Π(4,5,6,7,8,9,10,11)
0 0 1 0 1
0 0 1 1 1
0 1 0 0 0 y
0 1 0 1 0
1 1 1 1
0 1 1 0 0
0 1 1 1 0
0 0 0 0
1 0 0 0 0
x
1 0 0 1 0
1 1 1 1
1 0 1 0 0 w
1 0 1 1 0 0 0 0 0
1 1 0 0 1
1 1 0 1 1 z
1 1 1 0 1
1 1 1 1 1 14
K-map
• Untuk sum of products, digabungkan kotak yang
bernilai 1, didapatkan:
F= w’x’+wx
• Untuk product of sums, digabungkan kotak yang
bernilai 0, didapatkan komplemen dari F:
F’= w’x+wx’
komplemen dari F’ didapatkan
F=(F’)’= (w’x+wx’)’ = (w+x’)(w’+x)
dimana, (w+x’)(w’+x) = w’x’+wx
15
Kondisi don’t care
• Nilai yang dihasilkan suatu fungsi boolean
yang tidak mempengaruhi hasil output
• Bisa diasumsikan bernilai 0 atau 1
• Bisa digunakan untuk penyederhanaan fungsi
boolean
• Dinotasikan dengan ‘x’
• Contoh:
– F(w,x,y,z) = Σ(0,1,3,5,6,7,11)
– d(w,x,y,z) = Σ(4,15)
16
Kondisi don’t care
• Dengan don’t
y
care • Tanpa don’ty care
1 1 1 1 1 1

x 1 1 1 1 1 1
x x
x
w w
1 1

z z
F=w’x + yz + w’y’
F=x’yz + w’z + w’x’y’ + w’xy
x'
w' F y F
x z
y w'
z
z
w'
w' x'
y'
y' w'
x
y 17
Gerbang NAND - NOR
• Rangkaian digital sering diimplementasikan
menggunakan gerbang NAND atau NOR
• Perlu konversi dari gerbang selain NAND dan
NOR ke gerbang NAND atau NOR

18
Gerbang NAND
• Operasi logika dengan gerbang NAND
x x' = x x’
x xy x
y = ((xy)’)’ = xy
y

x
x x+y = (x’y’)’ = x + y
y
y

• Gerbang NAND dapat dinyatakan sebagai


x
AND-invert (xy)'
y

x x’ + y’ = (xy)’
Invert-OR y
19
Gerbang NAND
• Prosedur untuk mengkonversikan rangkaian logika
yang terdiri dari gerbang AND dan OR ke gerbang
NAND:
– Konversi semua gerbang AND ke NAND dalam bentuk
AND-invert
– Konversi semua gerbang OR ke NAND dalam bentuk
invert-OR
– Periksa semua lingkaran (simbol NOT)
• Jika pada pada garis yang sama tidak ada pasangan lingkaran,
maka tambahkan inverter atau ubah variabel input menjadi
komplemennya

20
Gerbang NAND
• Dari fungsi boolean F = (xy’ + yz) (y + z’)
x F
y‘
y
z
y
z‘
dikonversi menjadi
x F
y‘
y
z
y'
z
21
Gerbang NOR
• Operasi logika dengan gerbang NOR
x x' = x x’
x x+y x
y = ((x + y)’)’ = x + y
y

x
x xy = (x’ + y’)’ = xy
y
y

• Gerbang NOR dapat dinyatakan sebagai


x
OR-invert (x + y)'
y

x (x’y’) = (x + y)’
Invert-AND y

22
Gerbang NOR
• Prosedur untuk mengkonversikan rangkaian logika
yang terdiri dari gerbang AND dan OR ke gerbang
NOR adalah ekivalen dengan konversi ke gerbang
NAND
– Setiap gerbang OR dikonversi ke OR-invert
– Setiap gerbang AND dikonversi ke invert-AND
– Jika pada pada garis yang sama tidak ada pasangan
lingkaran (simbol NOT), maka tambahkan inverter atau
ubah variabel input menjadi komplemennya

23
Gerbang NOR
• Dari fungsi boolean F = (xz’ + xy) (y’ + z)

x F
z‘
x
y
y'
z
dikonversi menjadi
x’ F
z
x’
y’
y'
z 24
Referensi
• Morris Mano, Digital Design 5th Edition,
Pearson Prentice Hall, 2011

25
Latihan
1. Sederhanakan fungsi berikut menggunakan K-map
a) F(w,x,y,z) = Σ(1,4,5,6,12,13,14)
b) F(w,x,y,z) = Σ(1,3,5,7,8,10,12,14)
2. Sederhanakan fungsi berikut
a) F(w,x,y,z) = Π(1,3,5,7,13,15)
b) F = B + AB’
3. Sederhanakan fungsi boolean dengan kondisi don’t
care berikut ini:
a) F(A,B,C,D) = Σ(1,3,8,10,15); d(A,B,C,D) = Σ(0,2,9)
b) F(A,B,C,D) = Σ(5,6,7,12,14,15); d(A,B,C,D) = Σ(3,9,11,15)

26
Latihan
4. Gambarkan rangkaian menggunakan gerbang
NAND dari fungsi berikut:
a) F = (x’yz’ + x’z) (xz’ + xyz) (x + y’)
b) F = abc’ + bc + a’b + ab’c’
5. Sederhanakan fungsi berikut dan implementasikan
menggunakan dua level gerbang NAND
F = w’ + x + z’ + x’y
6. Gambarkan rangkaian NAND untuk
mengimplementasikan komplemen dari fungsi
berikut
F(w,x,y,z) = Σ(0,1,2,3,6,10,11,14)

27

Anda mungkin juga menyukai