Anda di halaman 1dari 69

Pengantar Sistem Digital

COMBINATIONAL DIGITAL
CIRCUIT
PART 2

Odd semester
2012/2013

Outline
2

Minterm dan maxterm

Canonical Forms

Standard Forms

Optimasi Rangkaian

Karnaugh Map

Penyederhanaan sistematik

Minterm dan maxterm


Minterm
Maxterm
Urutan standar
Indeks

Product term dan Sum term


4

Fungsi Boolean dalam bentuk aljabar dapat ditulis


dalam berbagai macam cara (tidak standar)
dibutuhkan bentuk yang standar
Akan memudahkan dalam menyederhanakan
fungsi Boolean
Hasilnya lebih sesuai dengan keinginan saat
diimplementasikan dalam bentuk sirkuit logika
Bentuk term:
Product terms XYZ AND operation
Sum terms X + Y + Z OR operation

Minterms
5

Minterms bentuk spesial dari product term (AND)


yang seluruh variabelnya muncul membentuk satu
suku, baik dalam bentuk komplemen dan non
komplemen.
Ada 2n minterms untuk n variable.
Contoh: Dua variable (X and Y) akan didapat 22 = 4
kombinasi:
XY (both normal)
X Y (X normal, Y complemented)
XY (X complemented, Y normal)
X Y (both complemented)
Berarti ada empat minterms dari dua variabel.

Maxterms
6

Maxterms bentuk spesial dari sum term (OR)


yang seluruh variabelnya membentuk satu
suku, baik dalam bentuk komplemen dan non
komplemen
Ada 2n maxterms untuk n variable.
Contoh: Dua variable (X and Y) menghasilkan
22 = 4 kombinasi:
X + Y (both normal)
X + Y (x normal, y complemented)
X + Y (x complemented, y normal)
(both
complemented)
+
X Y

Maxterms and Minterms


7

Contoh: Dua variable minterms dan maxterms.


Index

Minterm

Maxterm

xy

x+y

xy

x+y

xy

x+y

xy

x+y

Indeks di atas sangat penting untuk menentukan variabel


yang mana dalam terms tersebut true dan yang mana
komplemen.

Urutan Standar
8

Minterms dan maxterms didisain dengan subscript (angka),


tergantung pada binary pattern-nya
Bit pada pattern menyatakan komplemen atau kondisi normal
untuk masing2 variable yang ditulis dalam urutan standar

Semua variabel akan ada pada minterm atau maxterm dan


harus ditulis secara berurut sesuai abjad (alphabetically)
Contoh: Untuk variabel a, b, c:
Maxterms: (a + b + c), (a + b + c)
Terms: (b + a + c), a c b, dan (c + b + a) TIDAK dalam
urutan standar
Minterms:
a b c, a b c, a b c
Terms:
(a + c), b c, and (a + b) tidak terdiri dari semua
variabel

Index
9

Index untuk minterm atau maxterm, dinyatakan


sesuai bil biner, yang dipakai untuk
menentukan apakah variable yang ada bentuk
true atau bentuk komplemen.
Untuk Minterms:
1 berarti var ini Bukan komplemen dan
0 berarti var ini Komplemen

Untuk Maxterms:
0 berarti var ini Bukan komplemen dan
1 berarti var ini Komplemen.

Contoh Index untuk Tiga Variabel


10

Misalkan Variabel tersebut adalah : X, Y, dan Z.

Urutan standarnya adalah : X,lalu Y, lalu Z.

Index 0 (000 dalam basis 2) ketiga var tersebut adalah


komplemen utk minterm 0 ( X ,Y ,Z ) dan bukan
variabel komplemen untuk Maxterm 0 (X,Y,Z).
Minterm 0, disebut m0 = X Y Z .

Maxterm 0, disebut M0 = (X + Y + Z).


Minterm 6 ?
Maxterm 6 ?

Contoh Indeks Empat Variable.


11

Index
(i)
0
1
3
5
7
10
13
15

Binary
pattern
0000
0001
0011
0101
0111
1010
1101
1111

Minterm
(mi)
abcd
abcd
?
abcd
?
abcd
abcd
?

Maxterm
(Mi)
a+b+c+d
?
a+b+c+d
a+b+c+d
a+b+c+d
?
a+b+c+d
?

Hubungan Minterm and Maxterm


12

DeMorgan's Theorem
x y = x + y and x + y = x y
Contoh Dua Variabel:
M 2 = x + y dan m 2 = xy
Jadi M2 adalah komplemen dari m2 dan sebaliknya.
Bila DeMorgan's Theorem terdiri dari n variabel,
maka term diatas juga terdiri dari n variabel.
Bila :

Mi = mi

dan

mi = M i

Maka Mi adalah komplemen dari mi.

Tabel Fungsi ke-dua2-nya.


13

Minterms dari
2 variabel
x y m0 m1 m2 m3
0 0 1
0 0 0
0 1 0
1 0 0
1 0 0
0 1 0
1 1 0
0 0 1

Maxterms dari
2 variabel
x
0
0
1
1

y
0
1
0
1

M0
0
1
1
1

M1
1
0
1
1

M2
1
1
0
1

M3
1
1
1
0

Masing2 kolom pada tabel fungsi maxterm adalah


komplemen dari kolom tabel fungsi minterm, maka
Mi adalah komplemen dari mi.

Contoh Fungsi Minterm


14

x y z index m1 + m4 + m7 = F1
0 0 0

0 +

= 0

0 0 1

0 +

= 1

0 1 0

0 +

= 0

0 1 1

0 +

= 0

1 0 0

1 +

= 1

1 0 1

0 +

= 0

1 1 0

0 +

= 0

1 1 1

0 +

= 1

F1 = m1 + m4 + m7

F1 = x y z + x y z + x y z

Contoh Fungsi Minterm


15

F(A, B, C, D, E) = m2 + m9 + m17 + m23

F(A, B, C, D, E) = ?

Contoh Fungsi Maxterm


16

Contoh: Implementasikan F1 dalam maxterms:

F1 = M0 M2 M3 M5 M6
F1 = (x+y+z) (x+y+z) (x+y+z) (x+y+z) (x+y+z)

x
0
0
0
0
1
1
1
1

y
0
0
1
1
0
0
1
1

z
0
1
0
1
0
1
0
1

i
0
1
2
3
4
5
6
7

M0 M2 M3 M 5 M6
0 1 1 1 1
1 1 1 1 1
1 0 1 1 1
1 1 0 1 1
1 1 1 1 1
1 1 1 0 1
1 1 1 1 0
1 1 1 1 1

= F1
= 0
= 1
= 0
= 0
= 1
= 0
= 0
= 1

Contoh Fungsi Maxterm


17

F(A,B ,C ,D ) =M 3 M 8 M 11 M 14

F(A, B,C,D) = ?

18

Canonical Forms
Sum of Minterm (SOM)
Product of Maxterm (POM)
Komplemen fungsi
Konversi SOM dan POM

Bentuk Kanonik
19

Sangat berguna untuk menspesifikasikan Fungsi


Boolean dalam 2 bentuk yang:
Bila meng-"OR" kan minterms dengan memasukkan "1"

kedalam tabel fungsi. Ini disebut Fungsi dari minterm.

Bila meng-AND" kan maxterms dengan memasukkan 0"


kedalam tabel fungsi. Ini disebut Fungsi dari maxterm

Bentuk Kanonik yang umum digunakan :


Sum

of Minterms (SOM)
Product of Maxterms (POM)

Sum of Minterm (SOM)


20

Fungsi Boolean dapat ditulis dalam logical sum


dari seluruh minterm yang menghasilkan 1 pada
truth table disebut Sum of Minterm (SOM)
Dapat ditulis dalam jumlah () dari seluruh
indeks minterms
Contoh:
F = XYZ + XYZ + XYZ + XYZ = m0 + m2 +m5 +m7
F(X,Y,Z) = m(0,2,5,7)

F(X,Y,Z) = m(1,3,4,6)

Product of Maxterms (POM)


21

Fungsi Boolean juga dapat ditulis dalam logical


product dari seluruh maxterm yang menghasilkan
0 pada truth table disebut Product of Maxterm
(POM)
Dapat ditulis dalam hasil kali () dari seluruh
indeks maxterm
Contoh untuk fungsi sebelumnya:
F = (X+Y+Z) (X+Y+Z) (X+Y+Z) (X+Y+Z) = M1.M3.M4.M6

F(X,Y,Z) = m(1,3,4,6)

F(X,Y,Z) = m(0,2,5,7)

Menyatakan dalam SOM


22

Setiap fungsi Boolean dapat dinyatakan dalam :


Sum of Minterms.

Dilakukan dengan meng-expand seluruh term dengan


meng-AND-kan tiap term yang kekurangan variabel,
misal v dengan term ( v + v ).

Example: Implement f = x + x y as a sum of


minterms.
First expand terms: f = x( y + y) + x y
Then distribute terms: f = xy + xy + x y
Express as sum of minterms: f = m3 + m2 + m0

Another SOM Example


23

Example:

F=A+BC

There are three variables, A, B, and C which we


take to be the standard order.

Expanding the terms with missing variables:


.
Collect terms (removing all but one of duplicate
terms): .
Express as SOM:

Menyatakan dalam POM


24

Setiap fungsi Boolean juga dapat ditulis sebagai Product


of Maxterms (POM).

Dilakukan dengan meng-expand meng-expand seluruh term


dengan hukum distributif, meng-OR-kan tiap term yang
kekurangan variabel, misal v dengan term
kemudian

mengaplikasikan hukum distributif lagi

v v

Example: Convert to product of maxterms:

f(x,y,z) = x + x y

Apply the distributive law:

x + x y = (x + x)(x + y) = 1 (x + y) = x + y

Add missing variable z:

x + y + z z = (x + y + z) (x+ y + z )

Express as POM: f = M2 M3

Komplemen fungsi
25

Komplemen fungsi SOM dengan cara


menuliskan indeks yang tidak ada
Contoh:
F(X,Y,Z) = m(0,2,5,7)
F(X,Y,Z) = m(1,3,4,6)

Konversi SOM dan POM


26

Untuk mengekspresikan fungsi dlm POM,


bisa didapat dari komplemen SOM
Contoh fungsi dalam bentuk SOM:
F(X,Y,Z) = m(0,2,5,7)
maka fungsi dalam POM:

F(X,Y,Z) = m(1,3,4,6)

27

Standard Forms
Sum of Products (SOP)
Product of Sums (POS)

Standard Forms
28

Standard SOP form: equations are written as an


OR of AND terms (jumlah hasil kali)
Standard (POS) form: equations are written as
an AND of OR terms (hasil kali jumlah)
Examples:
SOP: A B C + A B C + B
POS: (A + B) (A+ B + C )C
These mixed forms are neither SOP nor POS
(A B + C) (A + C)
A B C + A C (A + B)

Standard Sum-of-Products (SOP)


29

A sum of minterms form for n variables can be


written down directly from a truth table.
Implementation

of this form is a two-level


network of gates such that:
The

first level consists of n-input AND gates, and


The second level is a single OR gate (with fewer than
2n inputs).

This form often can be simplified so that the


corresponding circuit is simpler SOP

Standard Sum-of-Products (SOP)


30

A Simplification Example:

Writing the minterm expression (SOM):

F( A, B, C) = m(1,4,5,6,7)

F = A B C + A B C + A B C + ABC + ABC

Simplifying: (bagaimana caranya?)

F = BC + A SOP

Simplified F contains 3 literals compared to 15


in minterm F

31

AND/OR Two-level Implementation of SOP


Expression

The two implementations for F are shown below


it is quite apparent which is simpler!

SOM

A
B
C
A
B
C
A
B
C
A
B
C
A
B
C

A
B
C

SOP

32

Optimasi Rangkaian

Optimasi Rangkaian
33

Tujuan: Membuat implementasi yang paling sederhana


dari fungsi yang diberikan.
Optimasi adalah pendekatan untuk menyederhanakan
fungsi yang ada dengan menggunakan prosedur dan
algoritma yang khusus.
Optimisasi membutuhkan kriteria biaya untuk mengukur
kesederhanaan rangkaian.

Batasan kriteria biaya yang dipakai adalah:

Biaya Literal (L)


Biaya Gate input (G)
Biaya Gate input dengan NOT (GN)

Biaya Literal
34

Literal suatu variabel atau komplemennya

Biaya Literal jumlah literal yang muncul

Contoh:
F

= BD + ABC + ACD
L=8
F = BD + ABC + ABD+ ABC
L=?
F = (A + B)(A + D)(B + C + D)(B+C+ D)
Solusi mana yang terbaik?

L=?

Biaya Input Gerbang


35

Biaya input Gerbang jumlah input ke gerbang pada


implementasi sesuai persamaan yang ada
(G - inverters not counted, GN - inverters counted)

Untuk pers SOP dan POS, dapat dihitung dari pers yg


ada, dengan menghitung jumlah:

Semua literal yang muncul


Jumlah terms, tidak termasuk single literal terms,(G) dan
optionally, jumlah single literals yang dikomplemenkan (GN).

Contoh:
F = BD + ABC + ACD
G=? GN=?
F = BD + ABC + ABD+ ABC
G=? GN=?
F = (A + B)(A + D)(B + C + D)(B+C+ D)
G=? GN=?
Solusi mana yang terbaik?

Contoh Menghitung Kriteria Biaya


36

Contoh 1:

F = A + B C + BC

L = 5
G = L + 2 = 7
GN = G + 2 = 9

B
C

L (literal count) hitung input AND dan input single


literal OR.
G (gate input count) tambahkan sisa input gerbang OR
GN (gate input count with NOTs) Tambahkan input ke
inverter

Kriteria Biaya (continued)


37

Contoh 2:

F = A B C + A B C

L = 6 G = 8 GN = 11

F = (A + C)(B + C)( A+ B)

A
B
C

L = 6 G = 9 GN = 12

Fungsi yang sama dan


biaya literal yang sama
Rangk pertama gate input
count dan gate input count
dengan NOTs lebih baik.
Pilihlah!

A
B
C

38

Karnaugh Map
2 var
3 var
4 var
Penyederhanaan peta

Optimasi Fungsi Boolean


39

Minimisasi biaya gerbang input (atau literal) dari


suatu (atau se-set) set Pers Boolean akan
mengurangi biaya rangkaian.
Kita pilih biaya gerbang input.
Aljabar Boolean dan teknik grafik merupakan alat
untuk meminimalkan nilai kriteria biaya.
Beberapa pertanyaan penting:

Kapan kita berhenti berusaha mengurangi biaya?


Bagaimana diketahui biaya sudah minimum?

Diperkenalkan teknik grafik menggunakan Karnaugh


maps (Singk: K-maps,)

Beberapa kegunaan K-Maps


40

Sangat berarti untuk:


Mencari

optimum atau mendekati optimum

Bentuk

standard SOP dan POS dan


Implementasi rangk AND/OR and OR/AND dalam 2level
Untuk fungsi dengan jumlah variabel sedikit
Konsep

visualisasi untuk memanipulasi ekspresi


Boolean dan
Menunjukkan konsep yang digunakan pada
program computer-aided design untuk
menyederhanakan rangkaian yang besar.

Karnaugh Maps (K-map)


41

K-map adalah suatu himpunan kotak


Masing2 kotak menyatakan minterm
Himpunan Kotak adalah representasi grafik dari Fungsi
Boolean .
Kotak yang berdekatan berbeda nilai satu variabel
Sebagai alternatif ekspresi aljabar untuk fungsi yang
sama, ditunjukkan dengan pola kotak2.

K-map dapat dilihat sebagai :


Versi yang lain dari truth table/tabel kebenaran
Topologikal Venn diagram yang biasanya digunakan
sebagai visualisasi dari algebra of sets

K-Map dan Tabel Kebenaran


42

K-Map hanyalah bentuk yang berbeda dari tabel


kebenaran.
Contoh: Fungsi 2 variabel:
Dipilih, a,b,c dan d dari set {0,1} untuk implementasi
fungsi , F(x,y).
K-Map

Function Table

Input
Values
(x,y)
0 0
0 1
1 0
1 1

Function
Value
F(x,y)
a
b
c
d

y = 0

y = 1

x = 0

x = 1

K-map 2 variabel
43

Hanya indeks minterm yang dituliskan


Tiap minterm yang bersebelahan, hanya
memiliki satu perbedaan nilai variabel
m0

dan m1 hanya berbeda pada y


m0 dan m2 hanya berbeda pada x
Dst

Ket:
0,1,2,3 =
indeks minterm

Cara menyederhanakan dgn K-Map


44

Tulis 1 pada indeks minterm yang ada


Gabungkan kelompok kotak yang berisi angka
1 yang berdekatan disebut rectangles
Jumlah

kotak yang dapat digabungkan harus 2n


Rectangles harus sebesar mungkin
Jumlah rectangles sesedikit mungkin

Tuliskan hasil gabungan dalam bentuk SOP

Contoh K-Map 2 var


45

Diketahui fungsi
seperti tabel
kebenaran berikut

Maka F=m(0,1,3)

Maka K-Map

Maka SOP:
F = A + B

Contoh lain K-Map 2 var


46

Diketahui

G(A,B) = m(1,2)

Maka K-Map:

Maka bentuk SOP


G = AB + AB

Perhatikan bahwa
bentuk yang sudah
disederhanakan
sama dengan
bentuk asli
karena tidak ada
kotak yang bisa
digabung

K-Map 3 variabel
47

Perhatikan urutan penulisan indeks minterm'


Y

Contoh K-Map 3 var


48

Diketahui F(A,B,C) = m(1,2,3,4,5)

K-Map:
Rectangle hitam
bisa dibuat, tapi
tidak dipilih karena
yg dipilih adlh yg
terbesar (biru)

Berdasarkan 2 buah rectangle yang terbesar


(biru) maka: F(A,B,C) = A + B

Contoh lain K-Map 3 var


49

Sederhanakan dengan K-Map:


1. Diketahui G(A,B,C) = m(0,2,4,5,6)
2. Diketahui H(A,B,C) = m(1,3,4,5,6)

Solusi no 1
50

K-Map
Rectangle hitam
tidak dipilih

Maka G(A,B,C) = AB + C

Solusi no 2
51

K-Map
Rectangle BC dan
AB sama2
merepresentasikan
kotak no 5
dipilih salah satu yi
AB

Maka H(A,B,C) = AC + AB + AC

K-Map 4 variabel
52

Perhatikan urutan minterm dalam kotak

4 Variabel Terms
Y

53

Peta dengan 4 Var dapat


mempunyai hubungan
rectangular sbb:
A single 1 = 4 variables,
(i.e. Minterm)

Two 1s = 3 variables

Biru = xzw

12

13

15

14

11

10

Four 1s = 2 variables

Merah = xywz

Hijau = xz

Eight 1s = 1 variable,
Sixteen 1s = zero variables
(i.e. Fungsi Constant "1")

Contoh K-Map 4 var


54

Diketahui F(A,B,C,D) =
m(0,1,2,4,5,6,8,9,10,
12,13)
K-Map

Maka

F = C + AD + BD

Contoh lain K-Map 4 var


55

Sederhanakan Fungsi Boolean:


G(A,B,C,D) = ACD + AD + BC + CD + ABD

K-Map asli:

56

K-Map yang disederhanakan

Maka: G = BD + AC + CD

57

Penyederhanaan Sistematik
Prime Implicants dan Essential Prime
Implicants
Penyederhanaan POS

Dont care condition

Penyederhanaan sistematik
58

Prime implicant bentuk perkalian yang didapat dengan


menggabung sebanyak2nya kotak yang berdekatan pada
peta menjadi rectangle dengan jumlah kotak suatu
pangkat 2
Prime Implicant disebut Essential Prime implicant bila ia
hanya prime implicant yang mencover satu atau lebih
minterm.
Prime Implicants dan Essential Prime Implicants dapat
dicari dengan meneliti K-map.
Suatu set dari prime implicants mengcovers seluruh
minterms" bila, untuk masing2 minterm dari fungsi, paling
tidak satu prime implicant ada pada suatu set prime
implicants termasuk minterm.

Contoh dari Prime Implicants


59

Carilah SELURUH Prime Implicants


CD
C

B D

1
BD
A
A B

ESSENTIAL Prime Implicants


C
B D

1 1

1 1
1

1
D
AD

BD

1
B

D
B C

Minterms covered by single prime implicant

Langkah penyederhanaan sistematis


60

1.

Cari semua prime implicants (PI)

2.

Tentukan yang mana essential prime implicants

3.

Untuk non essential prime implicants, Selection


Rule:
1.

2.

4.

minimalkan overlap antar prime implicants


Pastikan prime implicants yg dipilih
mengikutsertakan paling tidak 1 minterm yg tidak
dicover prime implicants yang lain

Tuliskan fungsi dalam bentuk SOP essential


prime implicants ditambah non essential prime
implicants

Contoh penyederhanaan sistematis


61

F(A,B,C,D) =m(0,1,2,4, 1. PI semua rectangle


2. Essential PI hanya
5,10,11,13,15)
AC

3. Selection Rule:
PI 1 dan 2 dipilih
karena tidak overlap
dgn yg lain
PI 3 dapat dipilih
antara ABD atau
BCD
4. F = AC + ABD + ABC
+ABD

Optimasi POS
62

Contoh: F(A,B,C,D) =
m(0,1,2,5,8,9,10)

Langkah:
Tulis

minterm dengan 1
Isi kotak sisanya dgn 0

Nilai 0 ada K-Map


merupakan komplemen
fungsi
F = AB + CD + BD

Maka POS:
F = (A+B)(C+D)(B+D)

Contoh lain POS


63

Misal fungsi POS F = ( A + B + C ) ( B + D )

Penyederhanaannya:
1.
2.
3.

4.

Komplemenkan fungsi F = ABC + BD


Plot 0 pada K-Map, sisa kotak diisi 1
Gabungkan dan sederhanakan kotak dengan angka
1 didapatkan bentuk SOP
Komplemenkan kembali untuk mendapatkan
bentuk POS

KEADAAN TAK ACUH ( DONT CARE CONDITION)


64

Adalah salah satu hal yang menyebabkan


keadaan redundant disamping keadaan Cant
happen (tidak pernah terjadi).
Redundant adalah suatu keadaan dimana suku
min-suku min yang digambarkan pada segiempat
K-map dapat dianggap 1 atau 0.
Untuk suku min, keadaan redundant diberi
tanda X

X hanya dipergunakan apabila dapat


menyumbang penyederhanaan.

Don't Care Condition


65

Kadang2 tabel fungsi atau peta berisi masukan yang dikenal


sebagai:

Nilai input untuk minterm yang tidak pernah terjadi, atau


Nilai output untuk minterm yang tidak digunakan

Dalam hal ini, nilai output tidak perlu didefinisikan.

Kecuali, nilai output didefinisikan sbg dont care

Dengan menempatkan don't cares (x) pada tabel fungsi


atau peta, kemungkinan biaya rangk logika menjadi lebih
murah.
Contoh 1: Suatu fungsi logik mempunyai kode biner BCD digit
sebagai input. Hanya kode 0-9 yang digunakan. Enam kode
yang lain 1010 sampai 1111 tidak terjadi , maka kode ini
diberi kode x untuk menyatakan dont care.

Contoh: BCD 5 atau lebih


66

Peta dibawah memberikan fungsi F1(w,x,y,z)


dimana didefinisikan sbg "5 atau lebih" pd BCD
inputs. Dengan menggunakan don't cares
untuk 6 non-BCD kombinasi:
y
F1 (w,x,y,z) = w + x z + x y G = 7

00 01 03 02
0 4 1 5 117 1 6
X X
w

12

13

15

14

1 8 1 9 X11 X10
z

Ini mempunyai biaya < F2 dimana


don't cares dianggap sbg "0s."
F2(w,

x, y, z) = w x z + w x y + w x y

G = 12
Untuk fungsi khusus, biaya G untuk
solusi POS untuk F1(w,x,y,z) tidak
berubah dg menggunakan don't cares.

Contoh
67

Sederhanakan fungsi Boolean dibawah ini :


F ( W, X, Y, Z ) = (1, 3, 7, 11, 15 ) dengan
keadaan tak acuh : ( W, X, Y, Z ) = (0, 2, 5 )
y

yz
wx

Jawab :

11

01

10

01

11

10

00

00

(a)

68

K-map (b)

yz

wx

00
00
1

01

11

10

11

10

z
(b)

Tugas:
69

Pelajari tentang :
PENYEDERHANAAN DENGAN ALGORITMA
ESPRESSO

Anda mungkin juga menyukai