DIKTAT RANGKAIAN
DIGITAL
DISUSUN OLEH NARDI , ST
BADAN METEOROLOGI KLIMATOLOGI DAN GEOFISIKA AKADEMI METEOROLOGI DAN GEOFISIKA JAKARTA 2010
Daftar isi
BAB I . SISTEM BILANGAN (Numbering System). . . . . . . . . . . . .
1
1. Konversi Bilangan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2
2. Sistem Code Bilangan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
3. Operasi Bilangan (Numbering Operation). . . . . . . . . . . . . . . . .
13
4. Komplement… ., . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
20
BAB II. PENGENALAN LOGIC. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
24
1. Sinyal analog. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . .
24
2. Sinyal digital. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . .
24
3. Logic Level. . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . .
24
BAB III. LOGIC GATE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
1. Dasar logic gate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
25
2. NOR dan NAND Gate. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
26
3. XOR dan XNOR Gate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
BAB IV. TEORI IDENTITAS ALJABAR BOOLEAN DAN HUKUM DE-MORGAN. . . . . . . . . . . . . . . . . . . . . . .. . . . . .
29
1. Identitas dari teori Aljabar Boolean. . . . . . . . . . . . . . . . . . . . . .
29
2. 4 hukum dasar dari Aljabar Boolean. . . . . . . . . . . . . . . . . . . . .
29
3. Teori De-Morgan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
30
BAB V. MEMBENTUK GERBANG LOGIKA DASAR DARI GERBANG NAND DAN GERBANG NOR. . . . . . . . . . . . . .
31
1. Membuat gerbang NOT, AND dan OR dari gerbang NAND. . .
31
2. Membuat gerbang NOT, AND dan OR dari gerbang NOR. . . .
32
BAB VI. RANGKAIAN DIGITAL LOGIC DARI EXPRESI BOOLEAN. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
34
1. Menguraikan Rangkaian Logika Secara Aljabar Boolean. . . . .
34
2. Mengevaluasi Output Rangkaian Logika. . . . . . . . . . . . . . . . . . .
35
3. Implementasi untuk Rangkaian-rangkaian Expresi Boolean . .
35
4. Menyederhanakan Rangkaian-rangkaian Logika. . . . . . . . . . . .
36
BAB VII. MAP KARNAUGH. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 1. Map Karnaugh untuk 3 input. . . . . . . . . . . . . . . . . . . . . . . . . . . .
37
2. Map Karnaugh untuk 4 input. . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
3. Sum Of Product (S of P) & Product Of Sum (P of S). . . . . .
40
Sum Of Product (S of P). . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
Product Of Sum (S of P). . . . . . . . . . . . . . . . . . . . . . . . . . . .
41
RANGKAIAN EXCLUSIVE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
EXCLUSIVE OR. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . .
44
EXCLUSIVE NOR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
RANGKAIAN LOGIKA. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
MULTIVIBRATOR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
45
BAB VIII. FLIP-FLOP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
1. S-R Flip-flop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
47
2. J-K Flip-flop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
50
3. D Flip-flop ( Delay / Data Latch Flip-flop). . . . . . . . . . . . . . . .
51
4. Flip-Flop Input Sinkron dan Asinkron. . . . . . . . . . . . . . . . . . .
53
5. D Flip-flop Edge Trigered. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
54
6. Counter Asinkron dari J-K Flip-flop. . . . . . . . . . . . . . . . .. . . . .
55
ii
BAB 1X. MASTER SLAVE (M/S). . . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
1. Master / Slave D Flip-Flop. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
2. Master / Slave J-K Flip-Flop. . .. . . . . . . . . . . . . . . . . . . . . . . . . .
56
3. Master / Slave S-C Flip-Flop. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
57
BAB X. OPERASI-OPERASI FLIP-FLOP. . . . . . . . . . . . . . . . . . . . .
61
1. Operasi-operasi Transfer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
61
BAB X1. RANGKAIAN ARITMATIK. . . . . . . . . . . . . . . . . . . . . . . .
63
1. Half Adder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
63
2. Full Adder. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
64
3. Penjumlahan Secara Jajar (Paralel Adder). . . . . . . . . . . . . . . . . . .
65
4. Penjumlahan Secara Deret (Serial Adder). . . . . . . . . . . . . . . . . . .
67
5. Rangkaian Pengurang / Penjumlah komplemens-1. . . . . . . . . . .
67
6. Rangkaian Pengurang / Penjumlah komplemens-2. . . . . . . . . . .
68
7. Rangkaian Pengontrol Penjumlah dan Pengurang True Complement Unit (TCU). . . . . . . . . . . . . . . . . . . . . . . . . . .
69
8. Rangkaian Penambah BCD. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71
iii
BAB I SISTEM BILANGAN Macam-macam sistem bilangan : Decimal Binary Oktadecimal Hexadecimal
a Bilangan Decimal Adalah bilangan berbasis (10) dan yang biasa kita gunakan sehari-hari Bilangan decimal terdiri dari : 0,1, 2, 3, 4, 5, 6, 7, 8, dan 9 b Bilangan Binary Adalah bilangan berbasis (2) dan yang hanya terdiri dari 0 dan 1. Umumnya dipakai dalam Digital Logic. c
Bilangan Octadecimal Adalah bilangan berbasis (8) dan yang hanya terdiri dari : 0, 1, 2, 3, 4, 5, 6, dan 7.
d Bilangan Hexadecimal Adalah bilangan berbasis (16) yang terdiri dari : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, dan F. Tabel Konversi bilangan Desimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Biner 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Oktal 0 1 2 3 4 5 6 7 10 11 12 13 14 15 16 17
Hexadesimal 0 1 2 3 4 5 6 7 8 9 A B C D E F
1
1. Konversi Bilangan a. Decimal ke Binary Contoh 1 : 145 (dec) = ……(bin) 145 : 2 = 72 sisa 1 (LSB) 72 : 2 = 36 sisa 0 36 : 2 = 18 sisa 0 18 : 2 = 9 sisa 0 9:2 =4 sisa 1 4:2 =2 sisa 0 2:2 =1 sisa 0 1:2 =0 sisa 1 (MSB) Maka diperoleh 145 (dec) = 10010001 (bin) Contoh 2 : 27,1875 (dec) = ……(bin) 27 : 2 = 13 sisa 1 (LSB) 13 : 2 = 6 sisa 1 6:2 =3 sisa 0 3:2 =1 sisa 1 1:2 =0 sisa 1 (MSB) __________________________ untuk nilai di belakang koma : 0,1875 * 2 = 0,375 0,375 * 2 = 0,75 0,75 * 2 = 1,5 0,5 * 2 = 1,0
ambil 0 (MSB) ambil 0 ambil 1 ambil 1 (LSB)
Maka diperoleh 27,1875 (dec) = 11011,0011 (bin) b. Decimal ke Octal Contoh : 145 (dec) = ……(oct) 145 : 8 = 18 sisa 18 : 8 = 2 sisa 2:8 =0 sisa
1 (LSB) 2 2 (MSB)
Maka diperoleh 145 (dec) = 221 (oct) c. Decimal ke Hexa Contoh : 145 (dec) = ……(hex) 145 : 16 = 9 sisa 9 : 16 = 0 sisa
1 (LSB) 9 (MSB)
Maka diperoleh 145 (dec) = 91 (hex)
2
d. Binary ke Decimal Contoh : 10110101 (bin) = ……(dec) 10110101 = 1.27 + 0.26 + 1.25 + 1.24 + 0.23 + 1.22 + 0.21 + 1.20 = 128 + 0 + 32 + 16 + 0 + 4 + 0 + 1 = 181 (dec) Maka diperoleh 10110101 (bin) = 181 (dec) e. Binary ke Octal Contoh : 10110101 (bin) = ……(oct) 10110101 = 010 | 110 | 101 = 265 (oct) Maka diperoleh 10110101 (bin) = 265 (oct)
f. Binary ke Hex Contoh : 10110101 (bin) = ……(hex) 10110101 = 1011 | 0101 = B5 (hex) Maka diperoleh 10110101 (bin) = B5 (hex) g. Octal ke Decimal Contoh : 107 (oct) = ……(dec) 107= 1.82 + 0.81 + 7.80 = 1.64 + 0.8 + 7.1 = 64 + 0 + 7 = 71 (dec) Maka diperoleh 107 (oct) = 71 (dec) h. Octa ke Binner Contoh : 107 (oct) = ……(bin) 107 = 001 | 000 | 111 = 1000111 (bin) Maka diperoleh 107 (oct) = 1000111 (bin) i. Octa ke Hexa Contoh : 107 (oct) = ……(hex) 107 = (lihat hasil konversi ke binner) = 1000111 = 0100 | 0111 = 47 (hex) Maka diperoleh 107 (oct) = 47 (hex)
3
j. Hexa ke Decimal : Contoh : 1AD (hex) = ……(dec) 1AD = 1.162 + 10.161 + 13.160 = 1.256 + 10.16 + 13.1 = 256 + 160 + 13 = 429 (dec) Maka diperoleh 1AD (hex) = 429 (dec) k. Hexa ke Binner Contoh : 1AD (hex) = ……(bin) 1AD = 0001 | 1010 | 1101 = 110101101 (bin) Maka diperoleh 1AD (hex) = 110101101 (bin) l. Hexa ke Octa Contoh : 1AD (hex) = ……(oct) 1AD = (lihat hasil konversi ke binner) = 110101101 = 110 | 101 | 101 = 655 (oct) Maka diperoleh 1AD (hex) = 655 (oct) 2. Sistem Code Bilangan Selain sistem bilangan tersebut di atas, juga dikenal beberapa sistem code bilangan lainnya, yaitu : a
BCD (Binary Code Decimal) Merupakan bilangan Decimal yang telah dikonversikan ke binary 4 bit.
b Gray Code Merupakan code binary yang telah dikonversikan sedemikian rupa sehingga perubahan bertahap antar binary hanya akan menimbulkan satu perubahan bit saja. Hal ini berguna untuk meminimalkan kesalahan pembacaan binary bit. c
Excess-3 Merupakan nilai BCD + 3 (binary), berfungsi untuk membedakan pembacaan sistem antara 0 (0011 x-3) dengan Reset (0000)
d
ASCII Code 7-bit ASCII (baca aski) singkatan dari American Standard Code for Information Interchange atau ada yang menyebut dengan American Standard Comitte on 4
Information Interchang dikembangkan oleh ANSI (American National Standards Institute) untuk tujuan membuat kode biner yang standar. Kode ASCII yang standar menggunakan kombinasi 7 bit, dengan kombinasi kode sebanyak 127 dari 128 (2^7=128) kemungkinan kombinasi yaitu : 26
buah huruf kapital (upper case) dari A s/d Z
26
buah huruf kapital (lower case) dari a s/d z
10
digit desimal 0 s/d 9
34
karakter kontrol yang tidak dapat dicetak hanya digunakan untuk informasi status operasi komputer.
32
karakter khusus (spesial characters) Tabel ASCII 7-bit
LSB MSB 0 1 2 3 4 5 6 7 8 9 10 11 12
0
1
2
3
4
5
6
7
8
9
Null NI Dc4 Rs ( 2 < F P Z d n x
Soh Vt Nak Us ) 3 = G Q [ e o y
Stx Ff Syn Sp * 4 > H R \ f p z
Etx Cr Eth ! + 5 ? I S ] g q {
Eot So Can “ , 6 @ J T ^ h r |
Enq Si Em # 7 A K U _ i s }
Ack Dle Sub $ . 8 B L V ` j t ~
Bel Dc1 Esc % / 9 C M W a k u Del
Bs Dc2 Fs & 0 : D N X b l v
Ht Dc3 Gs ‘ 1 ; E O Y c m w
Kode ASCII 7-bit ini terdiri dari dua bagian yaitu control characters dan information characters. Control characters merupakan karakter-karakter yang digunakan untuk mengontrol pengiriman atau transmisi dari data. Sedang information character merupakan karakter-karakter yang mewakili data. Control character dapat dikelompokkan dalam 4 klasifikasi, yaitu : 1. Transmission control : digunakan untuk mengontrol arus dari data yang dikirimkan lewat jalur transmisi. Karakter-karakter kontrol ini diantaranya adalah : SOH (Start Of Heading), digunakan sebagai karakter pertama dari suatu judul informasi data yang ditransmisikan.
5
STX
(Start Of TeXt), digunakan sebagai pemberitahuan awal dari text yang ditransmisikan.
EOT
(End Of Text), digunakan sebagai pemberitahuan akhir dari text yang ditransmisikan.
ENQ (ENQuiry), digunakan untuk suatu tanggapan terhadap identifikasi dan status dari penerima data. ACK (ACKnowledge), digunakan oleh penerima data yang dikirimkan ke pengirim data sebagai tanggapan setuju atau siap menerima transmisi data. DLE
(Data Link Escape), digunakan untuk mengganti arti dari karakter sebelumnya
NAK (Negative AcKnowledge), digunakan oleh penerima data yang dikirimkan ke pengirim data sebagai tanggapan negatip belum siap menerima data. SYN (SYNchronous idle), digunakan untuk sistem transmisi data secara synchronous transmission. ETB
(End of Transmission Block), digunakan untuk menunjukkan akhir dari suatu block data yang ditransmisikan, bila data dibagi-bagi dalam beberapa block.
2. Format Effector, digunakan untuk mengatur susunan secara phisik dari informasi yang yang ditransmisikan pada alat cetak atau layar dari terminal. Ada 6 macam karakter kontrol untuk format effector, yaitu : BS
(BackSpace), yang menyebabkan head pencetak di alat cetak mundur 1 posisi cetakan atau bila ditampilkan di layar terminal akan menyebabkan cursor bergeser satu posisi ke kiri.
HT (Horizontal Tabulation), menyebabkan head pencetak atau cursor bergeser ke posisi kolom tertentu kearah horizontal. LF
(Line Feed), menyebabkan head pencetak atau cursor bergeser ke baris berikutnya pada posisi kolom yang sama dengan posisi kolom sebelumnya.
VT (Vertical Tabulation), menyebabkan head pencetak atau cursor bergeser ke baris berikutnya vertical pada posisi kolom yang sama dengan posisi kolom sebelumnya. FF
(Form Feed), menyebabkan head pencetak atau cursor bergeser ke halaman baru atau ke ujung kiri atas layar.
CR (Carriage Return), menyebabkan head pencetak atau cursor kembali ke posisi kolom pertama pada baris yang sama. 6
3. Device Controls, digunakan terutama untuk pengontrolan alat-alat phisik yang ada di terminal. Ada 4 macam karakter kontrol untuk device controls, yaitu : DC1 (Device Control 1), dapat digunakan untuk menyebabkan cassete recorder yang dihubungkan dengan terminal menjadi on. DC2 (Device Control 2), dapat digunakan untuk menyebabkan cassete recorder yang dihubungkan dengan terminal menjadi off. DC1 (Device Control 3), dapat digunakan untuk mencetak apa yang tampak dilayar terminal ke alat cetak DC1 (Device Control 1), dapat digunakan untuk mengunci keyboard yang ada di terminal, sehingga tidak dapat digunakan untuk memasukkan data. 4. Information
separator,
digunakan
sebagai
elemen
pembatas
data
yang
ditransmisikan. Ada 4 macam karakter kontrol untuk information separator, yaitu : US (Unit Separator), sebagai pembatas dari unit data yang satu dengan unit data yang lainnya. RS
(Record Separator), sebagai pembatas dari record data yang lainnya. Record terdiri dari beberapa unit.
GS (Group Separator), sebagai pembatas dari group data yang satu dengan group data yang lainnya, group terdiri dari beberapa record. FS
(File Separator), sebagai pembatas dari file data yang satu dengan file data yang lainnya. File terdiri dari beberapa record.
e ASCII Code 8-bit ASCII 8-bit yang terdiri dari kombinasi 8-bit banyak digunakan, karena lebih banyak memberikan kombinasi karakter. Dengan ASCII 8-bit, karakter-karakter graphik yang tidak dapat diwakili oleh ASCII 7-bit, seperti misalnya karakter
░ ▒ ▓▲ ► ▼
◄◊○●◘◙◦◚◛◜◝◞◟◠◡◢◣◤
dan sebagainya dapat
diwakili. Komputer IBM PC menggunakan ASCII 8-bit.
7
CONVERTION Conversi BCD ke Binner : Contoh 1 : 0001 0111 BCD = 17 (dec) = 10001 (bin) Contoh 2: 0011 0010, 0111 0101 BCD
= 32,75 (dec) = 100000,11 (bin)
Tabel Conversi BCD to Binner DECIMAL 0 1 2 3 4 5 6 7 8 9 16 0.25
BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 0001 0110 0000,0010 0101
BINNER 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 10000 0.01
Conversi Binner ke Gray Code : Contoh 1: 1101 (bin) = 1011 (gray) Caranya : Dimulai dari MSB, kemudian ditambahkan ke bit berikutnya, berurutan hingga mencapai LSB, dengan mengabaikan carry. Dari contoh di atas 1101 (bin), berarti (1) (1+1) (1+0) (0+1) hingga diperoleh hasil 1011 (gray). Contoh 2: 10100101 (bin) = (1) (1+0) (0+1) (1+0) (0+0) (0+1) (1+0) (0+1) = 11110111 (gray)
atau
10100101 (bin) = 1_+_0_+_1_+_0_+_0_+_1_+_0_+_1
= 1 1
1
1
0
1
1
1 (gray) 8
= 11110111 (gray) Tabel Conversi Binner to Gray Code DECIMAL 0 1 2 3 4 5 6 7 8 9 25 76
BINNER 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 11001 1001100
GRAY CODE 0000 0001 0011 0010 0110 0111 0101 0100 1100 1101 10101 1101010
Conversi Gray Code to Binner : Contoh 1: 1011 (gray) = 1101 (bin) Caranya : Dimulai dari MSB, kemudian ditambahkan ke bit berikutnya. Hasil dari penjumlahan tersebut ditambahkan lagi ke bit berikutnya, dengan mengabaikan carry. Demikian seterusnya hingga mencapai LSB. Dari contoh 1011 (gray) = (1) (1+0) (1+1) (0+1) hingga diperoleh hasil 1101 (bin)
Contoh 2: 11110111 (gray) = (1) (1+1) (0+1) (1+1) (0+0) (0+1) (1+1) (0+1) = 10100101 (bin) atau
11110111 (gray) = 1
1
1
1
0
1
1
1
= 1
0
1
0
0
1
0
1 (bin)
= 10100101 (bin)
9
Tabel Conversi Gray Code to Binner GRAY CODE 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011
BINNER 0000 0001 0011 0010 0111 0110 0100 0101 1111 1110 1100 1101
DECIMAL 0 1 3 2 7 6 4 5 15 14 12 13
Conversi BCD to Excess-3 contoh : 0011 0100 (BCD)
= (0011+0011) (0100+0011) = 0110 0111 (x3)
Tabel Conversi BCD to Excess-3 DECIMAL 0 1 2 3 4 5 6 7 8 9 10 14
BCD 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 0001 0000 0001 0100
EXCESS-3 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 0100 0011 0100 0111
Aturan Penjumlahan pada Excess-3 Penjumlahan pada Excess-3 dilakukan seperti pada bilangan Binner. Jika hasil penjumlahan tidak menghasilkan carry out (No Carry), maka hasil penjumlahan tersebut dikurangi 0011 (bin).
10
Jika hasil penjumlahan menghasilkan Carry Out, maka hasil penjumlahan tersebut, termasuk Carry Out-nya ditambahkan dengan 0011 (bin). Operasi Penjumlahan Excess-3 contoh 1: 5 + 2 = 7 (dec) 0101 (bin) + 0010 (bin) = 0111 (bin) 1000 (x-3) + 0101 (x-3) = 1101 (No Carry) = 1101 – 0011 = 1010 (x-3) contoh 2: 9 + 4 = 13 (dec) 1001 (bin) + 0100 (bin) = 1101 (bin) 1100 (x-3) + 0111 (x-3) = 0011 (with Carry Out) = (0001 + 0011) (0011 + 0011) = 0100 0110 (x-3)
KESIMPULAN Dari System Bilangan dan Conversi yang telah dipelajari, maka dapat dibuat rangkuman sebagai berikut : OPERATION Decimal Octal Heksa Binary Gray Code BCD Excess-3 ASCII
CONVERTION 347 533 15B 101011011 111110110 0011 0100 0111 0110 0111 1010 0110011 0110100 0110111
11
3. Operasi Bilangan (Numbering Operation) a. Operasi Penjumlahan 1. Bilangan Desimal. Contoh : 478 365 ______+ 843
478 365 _____+ 011 110 _____+ 843
0 + 8 + 5 = 13 Kolom I 1 + 7 + 6 = 14 Kolom II 1+4+3= 8 Komlom III Bila disusun 011 sebagai pindahan keluar
pindahan = 1 pindahan = 1 pindahan = 0
Pindahan Keluar (Carry Out) Pindahan masuk (Carry In)
Pindahan keluar yang disusun digeser kekiri 1 digit menjadi Pindahan Masuk. 2. Bilangan Oktal. Contoh : 436 252 ____+ 011 110 ____+ 710
Carry Out Carry In
3. Bilangan Hexa Contoh : 789 949 ____+ 101 1010 ______+ 10D2
Carry Out Carry In
12
4. Bilangan Biner. Ada 4 kemungkinan -0+0=0
pindahan keluar 0
-0+1=1
pindahan keluar 0
-1+0=1
pindahan keluar 0
-1+1=0
pindahan keluar 1
Contoh 1: 13 9 __+ 22
Contoh 2 : 1101 1111 _____+ 1111 11110 _______+ 11100
1101 1001 _____+ 1001 10010 _______+ 10110
Kolom I pindahan = 1 (LSB) Kolom II pindahan = 0 Kolom III pindahan = 0 Kolom IV pindahan = 1 (MSB) Bila disusun 1001 sebagai pindahan keluar
0+1+1=10 Kolom I pindahan = 1 1+0+1=10 Kolom II pindahan = 1 1+1+1=11 Kolom III pindahan = 1 1+1+1=11 Kolom IV pindahan = 1 Bila disusun 1111 sebagai pindahan keluar
b. Operasi Pengurangan Bila digit pengurangan lebih besar yang dikurangi maka harus pinjam dari sebelah kiri yang lebih besar. 1. Bilangan Desimal Contoh : 567 279 ____288 Keterangan -
Pinjaman diambil dari sebelah kiri dinamakan Borrow in (110) pinjaman masukan
-
Pinjaman kekurangan tersebut ditambahkan pada digit yang akan dikurangi disebut Borrow out dari (011) pinjaman masukan.
13
Dari contoh diatas : 567 279 ____288
Kolom I Kolom II Kolom III
(10 + 7) – (9 + 0) = 8 (10 + 6) – (7 + 1) = 8 5 – (2 + 1) = 2
Kolom I Kolom II Kolom III
(8 + 4) – (7 + 0) = 5 5 – (2 + 1) = 2 1 – (1 + 0) = 0
Kolom I Kolom II Kolom III
(16 + 1) – (7 + 0) = 10 (A) 14 – (2 + 1) = 11 (B) (16 + 2) – (6 + 0) = 12 (C )
2. Bilangan Oktal. Contoh : 154 127 ____25 3. Bilangan Hexa Contoh : 12E1 627 ______CBA 4. Bilangan Biner Kemungkinan yang ada
A - B
=
DIFF
BORROW
0
- 0
=
0
0
0
- 1
=
1
1
1
- 0
=
1
0
1
- 1
=
0
0
Kolom I Kolom II Kolom III Kolom IV
(0 + 1) – (1 + 0) = 0 (LSB) (0 + 1) – (1 + 0) = 0 (1 + 1) – (1 + 0) = 1 (0 + 1) – (0 + 1) = 0 (MSB)
Contoh : 1011 0111 ----------- 0100
Maka kalau disusun ( 0 1 0 0 ) sebagai borrow in dan ( 1 0 0 0 ) sebagai borrow out
14
Cara untuk menyatakan bilangan negative dalam besaran listrik : Bilangan negative adalah bilangan yang mempunyai bobot dibawah “ 0 “. Misalkan :
-5 -1 - 2 dsb
Untuk teknik digital bilangan negative dinyatakan dengan 2 cara yaitu : 1. Dengan Sign Modulus Notation (Tanda Modulus).
Sign Modulus Notation adalah merupakan satu digit yang diletakan dipaling kiri dari bilangan MSB
Untuk bilangan decimal : ( 9 ) untuk tanda negatif dan ( 0 ) untuk tanda positif
Contoh :
a. - 5 ( 10 )
=
(9) 5 (10)
b.
- 7 (10 )
=
(9) 7(10)
c.
4 (10)
=
(0) 4(10)
d.
3 (10)
=
(0) 3(10)
Untuk bilangan BINER : (1 ) untuk tanda negatif dan (0) untuk tanda positif
Contoh : a. - 1 0 1 (2)
=
(1) 1 0 1 (2)
b. - 1 1 1 (2)
=
(1) 1 1 1 (2)
c.
1 0 0 (2)
=
(0) 1 0 0 (2)
d.
0 1 1 (2) =
(0) 0 1 1 (2)
15
c. Operasi Perkalian. 1. Bilangan Desimal. Contoh : 23 34 ___x 92 69 ____+ 161 2. Bilangan Oktal. Perkalian bilangan octal dapat dilakukan secara sama dengan perkalian bilangan decimal, dengan langkah-langkah sebagai berikut : a. Kalikan masing-masing kolom secara decimal b. Rubah dari hasil decimal ke octal (konversi) c. Tuliskan hasil dari digit paling kanan dari hasil octal. d. Kalau hasil perkalian tiap-tiap kolom terdiri dari 2 digit, maka digit paling kiri merupakan carry of untuk ditambahkan pada hasil perkalian kolom selanjutnya. Contoh : 16 14 ___x 70 16 _____+ 250 Langkah-langkah operasinya : 16 14 ___x 70 6 x 4 = 24(10)
Ubah 3 0(8)
1 x 4 = 4(10)
Ubah 4(8) Maka 4 + 3 = 7
16
16 14 ___x 70 16 6 x 1 = 6(10) 1 x 1 = 1(10)
Ubah 6(8) Ubah 1(8)
Tabel perkalian bilangan oktal X 0 1 2 3 4 5 6 7
0 0
1 0 1
2 0 2 4
3 0 3 6 11
4 0 4 10 14 20
5 0 5 12 17 24 31
6 0 6 14 22 30 36 44
7 0 7 16 25 34 43 52 61
3. Bilangan Hexa. Perkalian bilangan hexa dapat dilakukan secara sama dengan perkalian bilangan decimal maupun okta, dengan langkah-langkah sebagai berikut : a. Kalikan masing-masing kolom secara decimal b. Rubah dari hasil decimal ke hexa (konversi) c. Tuliskan hasil dari digit paling kanan dari hasil hexa. d. Kalau hasil perkalian tiap-tiap kolom terdiri dari 2 digit, maka digit paling kiri merupakan carry of untuk ditambahkan pada hasil perkalian kolom selanjutnya.
Contoh : AC 1B ___x 84 6E C A _____+ 1224
C x B = 84 A x B = 6E Cx1=C Ax1=A
17
Tabel perkalian bilangan hexa X 0 1 2 3 4 5 6 7 8 9 A B C D E F
0 0
1 0 1
2 0 2 4
3 0 3 6 9
4 0 4 8 C 10
5 0 5 A F 14 19
6 0 6 C 12 18 1E 24
7 0 7 E 15 1C 23 2A 31
8 0 8 10 18 20 28 30 38 40
9 0 9 12 1B 24 2D 36 3F 48 51
A 0 A 14 1E 28 32 3C 46 50 5A 64
B 0 B 16 21 2C 37 42 4D 58 63 6E 79
C 0 C 18 24 30 3C 48 54 60 6C 78 84 90
D 0 D 1A 27 34 41 4E 5B 68 75 82 8F 9C A9
E 0 E 1C 2A 38 46 54 62 70 7E 8C 9A A8 B6 C4
F 0 F 1E 2D 3C 4B 5A 69 78 87 96 A5 B4 C3 D2 E1
4. Bilangan Biner Perkalian bilangan biner dapat dilakukan secara sama dengan perkalian bilangan decimal dengan kemungkinan yang ada sebagai berikut : -
0x0=0
-
0x1=0
-
1x0=0
-
1x1=1
Contoh : 1110 1100 ______x 0000 0000 1110 1110 ____________+ 10101000
18
d. Operasi Pembagian. 1. Bilangan Desimal Contoh : 5
1 2 5 25 10 ____25 25 ___0
2. Bilangan Oktal. Pembagian octal dapat dilakukan dengan cara seperti pembagian decimal. 14
250 14 ____110 110 ____0
16 14(8) x 1(8) = 14(8)
14(8) x 6(8) =
4(8) x 6(8) = 3 0(8) 1(8) x 6(8) = 6(8) _____+ 1 1 0(8)
3. Bilangan Hexa Pembagian hexa dapat dilakukan dengan cara seperti pembagian decimal. Contoh 1B
1224 AC 10E 1B(16) x A(16) = 27(10) x 10(10) = 270(10) = 10E(16) ______144 144 1B(16) x C(16) = 27(10) x 12(10) = 324(10) = 144(16) ______0
4. Bilangan Biner Syarat pembagian bilangan biner. -
Kurangkan bilangan pembagi dari MSB bilangan pembagi
-
Bila hasil pengurang 0 atau positif hasil pembagi = 1
-
Bila hasil pengurang negative hasil pembagi = 0
-
Pengurangan dilakukan dengan penjumlah komponen
-
Bila ada carry diabaikan. 19
Contoh : 101
1111101 101 _____101 101 _______0101 101 _______0
11001
4. Komplement. a. Komplement-1
Komplement-1 pada bilangan Binner adalah : Mengubah bit 0 menjadi 1 dan sebaliknya bit 1 menjadi 0 Contoh : Komplement-1 dari 1001 adalah 0110
Komplement-1 pada bilangan Decimal adalah : Mengubah bilangan Decimal (1, 2 … 9) menjadi nilai yang jika dijumlahkan dengan nilai aslinya akan selalu menghasilkan nilai 9. Contoh : Komplement-1 dari 296 adalah 703
Komplement-1 pada bilangan Octal adalah : Mengubah bilangan Octal (1, 2 … 7) menjadi nilai yang jika dijumlahkan dengan nilai aslinya akan selalu menghasilkan nilai 7. Contoh : Komplement-1 dari 157 adalah 620
Komplement-1 pada bilangan Heksa adalah : Mengubah bilangan Heksa (1, 2 … F) menjadi nilai yang jika dijumlahkan dengan nilai aslinya akan selalu menghasilkan nilai F (15). Contoh : Komplement-1 dari 3A8 adalah C47
20
Fungsi Komplement : Membantu dalam operasi pengurangan 1. Syarat Operasi pengurangan dengan komplement-1 : a
Pengurang kita ubah menjadi Komplement-1
b
Setelah itu, jumlahkan dengan nilai yang sebelumnya akan dikurangkan.
c
Jika hasil penjumlahan menghasilkan carry 1, maka carry tersebut dijumlahkan lagi dengan dengan hasil penjumlahan sebelumnya untuk memperoleh hasil akhir.
d
Jika hasil penjumlahan tidak menghasilkan
carry 1, maka hasil akhirnya
bernilai negative (-) komplement-1.
2. Operasi pengurangan Binner dengan komplement-1: Contoh 1 : 10010110 00110010 ________-
10010110 11001101 ________+ (1) 01100011 1 ________+ 01100100
Contoh 2 : 10010110 11010010 ________(No Carry) Hasil akhir
10010110 00101101 ________+ 11000011 00111100
3. Operasi pengurangan Decimal dengan komplement-1 : Contoh 1: 2043 0546 ____1497
2043 9453 ____+ Carry 1 1496 1 ____+ hasil akhir 1497
21
Contoh 2: 1040 8760 ____- 7720 No Carry hasil akhir -
1040 1239 ____+ 2279 7720
b. Komplement-2 : Merupakan komplement-1 + 1 Contoh :
1011
komplement-1 = 0100 Komplement-2 = 0101
1. Syarat Operasi pengurangan dengan komplement-2 : b
Pengurang kita ubah menjadi Komplement-2
b. Setelah itu, jumlahkan dengan nilai yang sebelumnya akan dikurangkan. c. Jika hasil penjumlahan menghasilkan carry 1, maka carry tersebut dapat diabaikan d. Jika hasil penjumlahan tidak menghasilkan
carry 1, maka hasil akhirnya
bernilai negative (-) komplement-2.
2. Operasi pengurangan Binner dengan komplement-2: Contoh 1 : 10010110 00110010 ________hasil akhir
10010110 11001110 ________+ carry 1 01100100 01100100 (carry diabaikan)
Contoh 2 : 10010110 11010010 ________(No Carry)
10010110 00101110 ________+ 11000100
Hasil akhir 00111100 (komplemen-2 dari 11000100)
22
3. Operasi pengurangan Decimal dengan komplement-2 : Contoh 1: 2044 0546 ____1497
2043 9454 ____+ Carry 1 1497 hasil akhir 1497 (carry diabaikan)
Contoh 2: 1040 8761 ____- 7720
1040 1240 ____+ No Carry 2280
hasil akhir
- 7720 (komplemen-2 dari 2280)
TUGAS : 1. Bila diketahui bilanganan biner : 1111011001(2) Konversikan ke bilangan Desimal, Oktadesimal dan Hexadesimal 2. Bila diketahui bilangan Hexadesimal : 2DAE(16) Konversikan kebilangan Desimal, Biner, dan Oktadesimal. 3. Konversikan Sandi Gray, ke Biner dari : 1 1 0 0 0 1 1 0 1 1 1 4. Konversikan Biner ke Sandi Gray : 1 0 0 1 1 1 0 1 0 0 1 1 1 1 5. Buatkan table sandi ASCII 7-bit diatas mulai dari NULL sampai DEL secara urut contoh : Desimal 0 . . 33 . . 42
Biner 0000000 . . 0100001 . . 0101010
Hexa 0 . . 21 . . 2A
Karakter NULL . . ! . . *
Keterangan Null . . Exlamation . . Asterik
dll
dll
dll
dll
dll
23
BAB II PENGENALAN LOGIC
LOGIC
:Cara berpikir ( nalar ).
Elektronika :suatu nilai dari sinyal yang mempunyai batasan-batasan atau level tertentu dalam rangkaian digital. Sistem Analog : Sistem dimana input dan outputnya merupakan himpunan besaran yang kontinyu Sistem Digital : Sistem dimana input dan outputnya merupakan jumlahan diskrit. Sinyal : suatu kumpulan informasi yang dikemas dalam gelombang elektromagnetik. Data : Kumpulan dari beberapa sinyal yang membentuk suatu informasi. Sinyal terbagi dua yaitu : 1. Sinyal analog sinyal yang dipengaruhi oleh perubahan bentuk dan waktu.
2. Sinyal digital sinyal yang terbentuk dengan suatu perbedaan waktu yang kritis.
3. Logic Level Adalah nilai tegangan yang ditandai dengan binary 0 dan 1 yang beroperasi pada rangkaian digital. Level (1) : suatu level sinyal digital yang mempunyai nilai maximal dari referensi. Level (0) : suatu level sinyal digital yang mempunyai nilai minimal dari referensi.
24
BAB III LOGIC GATE
Adalah merupakn dasar pembentuk rangkaian system digital, dimana dalam operasinya berdasarkan bilangan biner yang terdiri dari 2 kondisi saja yaitu, high 1 dan low 0. 1. Dasar logic gate
AND GATE Suatu gerbang AND mempunyai dua masukan atau lebih dan suatu keluaran tunggal, dan operasinya sesuai dengan definisi berikut : Keluaran dari suatu AND dimisalkan dalam kedudukan ‘1’ , kalau dan hanya kalau semua masukan dalam keadaan ‘1’. N masukan ke suatu rangkaian logika akan diberi tanda A, B, …. , N dan keluarannya diberi tanda Y.
True Table : A B 0 0 0 1 1 0 1 1
Y 0 0 0 1
OR GATE Suatu gerbang OR mempunyai dua masukan atau lebih dan suatu keluaran tunggal, dan bekerja sesuai dengan definisi berikut : Keluaran dari suatu OR dimisalkan dalam keadaan ‘1’ , kalau satu atau lebih masukan dalam keadaan ‘1’. N masukan ke suatu rangkaian logika akan diberi tanda A, B, …. , N dan keluarannya diberi tanda Y.
25
True Table : A B 0 0 0 1 1 0 1 1
Y 0 1 1 1
NOT GATE Rangkaian NOT mempunyai satu masukan dan satu keluaran dan membentuk operasi penolakan logika sehubungan dengan devinisi berikut : Keluaran dari suatu rangkaian NOT mempunyai kedudukan ‘1’, kalau dan hanya kalau masukannya tidak berada dalam keadaan ‘1’, tetapi mempunyai kedudukan ‘0’, kalau dan hanya kalau masukannya berada dalam keadaan ‘0’.
True Table : A Y 0 1 1 0
2. NOR dan NAND Gate NOR GATE Rangkaian NOR gate atau NOT OR gate
26
Rangkaian NOR merupakan kebalikan dari rangkaian OR, dan dalam operasinya merupakan rangkaian OR yang di NOT kan. Simbol Rangkaian NOR
A 0 0 1 1
B 0 1 0 1
Y 1 0 0 0
NAND GATE Rangkaian NAND gate atau NOT AND gate Rangkaian NAND merupakan kebalikan dari rangkaian AND, dan dalam operasinya merupakan rangkaian AND yang di NOT kan. Simbol Rangkaian NAND A 0 0 1 1
B 0 1 0 1
Y 1 1 1 0
3. XOR dan XNOR Gate
XOR GATE Rangkaian Exclusive OR atau XOR Gerbang Exclusive OR mengikuti definisi berikut : Keluaran dari Exclusive OR duamasukan mempunyai keadaan ‘1’ kalau satu dan hanya satu masukan mempunyai kedudukan ‘1’. A 0 0 1 1
B 0 1 0 1
Y 0 1 1 0
+
27
X NOR GATE Rangkaian Exclusive NOR atau X-NOR Gerbang Exclusive NOR mengikuti definisi berikut : Keluaran dari Exclusive NOR dua-masukan mempunyai keadaan ‘1’ kalau kedua masukan mempunyai kedudukan sama
+
A 0 0 1 1
B 0 1 0 1
Y 1 0 0 1
28
BAB IV TEORI IDENTITAS ALJABAR BOOLEAN DAN HUKUM DE-MORGAN
Dalam setiap rangkaian logika selalu menggunakan operasi-operasi Boolean dimana rangkaian-rangkaian tersebut berupa gerbang OR, AND dan NOT yang merupakan blok-blok bangun dari digital dasar. 1. Identitas dari teori Aljabar Boolean. Pada identitas dari teori Aljabar Boole OR A+0=A A+1=1 A+A=A A+A=1
AND A.0=0 A.1=A A.A=A A.A=0
NOT A+A=1 A.A=0 A=A
berlaku sifat dual yaitu pada gerbang OR dan AND dengan merubah (+) menjadi (./*) dan merubah ‘1’ menjadi ‘0’ atau sebaliknya.
2. 4 hukum dasar dari Aljabar Boolean
a. Hukum Asosiatif (A + B) + C = A + (B + C) b. Hukum Komutatif A+B=B+A A.B=B.A c. Hukum Distributif A(B + C) = AB + AC (A + B)(A + C) = A + (B . C) d. Hukum Absortif A + A.B = A A + A.B = A (1+ B) =A.1 =A A + A.B = A + B A + A.B = (A + A) (A + B) = 1 (A + B) = (A + B) A ( A + B) = A ( A + B) = = =
A.B A.A + A.B 1 + A.B A.B
29
3. Teori De-Morgan F = A . B . , …. = A + B + ,……. F = A + B + ….= A . B . ……..
Tugas : Buktikan 1. A + A B = A + B 2. A ( A + B ) = A B
30
BAB V MEMBENTUK GERBANG LOGIKA DASAR DARI GERBANG NAND DAN GERBANG NOR.
1. Membuat gerbang NOT, AND dan OR dari gerbang NAND.
Dengan menggunakan dua variable A dan B, F = AB Dan untuk 3 variable input, outputnya menjadi F = ABC Berdasarkan teori De-Morgan kedua pernyataan tersebut dapat diuraikan sebagai berikut : F = AB
= A +
B
F = ABC = A +
B
+
C
Dari uraian diatas dapat dilihat bahwa bila variable input hanya 1 yaitu A maka output gerbang NAND adalah F = A , sehingga output tersebut merupakan gerbang NOT. Jadi gerbang NOT dapat dibuat gerbang NAND dengan hanya menggunakan 1 variable input.
Gambar NOT dari NAND
Dari gambar diatas terlihat bahwa gerbang NAND mempunyai beberapa input. Bila hanya satu yang digunakan maka input lainnya harus diberi logika 1.
Output gerbang NAND yaitu F = AB
adalah merupakan output gerbang AND yang
diberi Inverter pada ujungnya. (Gerbang NAND = Gerbang AND + NOT) oleh karena itu bila output gerbang NAND disambungkan ke gerbang NOT hasilnya akan merupakan output gerbang AND lagi.
Gambar AND dari NAND
Selanjutnya perhatikan Aljabar Boolean ini F = A+B Bila akan diuraikan menurut Van De Morgan akan didapat sebagai berikut :
31
F = A+B = A . B F = A+B = A . B Karena F = A + B adalah Fungsi output dari gerbang OR maka dengan menggambarkan gerbang logika pernyataan F=A.B Memakai gerbang NAND berarti membuat gerbang OR dari gerbang NAND.
Gambar OR dari NAND
2. Membuat gerbang NOT, AND dan OR dari gerbang NOR Seperti pada waktu membuat gerbang NOT dari gerbang NAND, membuat gerbang NOT dari gerbang NOR juga dilakukan dengan hanya ‘1’ input saja. Untuk lebih memudahkan cara membuat gerbang NOT dari gerbang NOR kita akan membandingkan output gerbang NOR bila menggunakan dua atau tiga input seperti yang ditunjukkan pada persamaan berikut . F=A+B+C=A.B.C F=A+B=A.B F=A Seperti gambar dibawah
Gambar NOT dari NOR Gerbang NOR mempunyai beberapa input bila digunakan ‘1’ input maka input lainnya harus disambungkan dengan logika ‘0’. Gerbang NOR = gerbang OR + gerbang NOT atau dapat dikatakan bahwa : NOR dibuat dari OR disambung inverter outputnya. Oleh karena itu untuk membuat gerbang OR dari gerbang NOR adalah dengan menghubungkan output gerbang NOT tersebut dengan gerbang NOT lagi.
32
Gambar OR dari NOR Untuk membuat gerbang AND dari gerbang NOR diterapkan teori De Morgan dari pernyataan Aljabar Boolean dibawah ini. A.B = A+B A.B = A+B Karena F = A . B adalah fungsi gerbang output AND maka dengan menggambarkan gerbang logika F = A+B
memakai gerbang NOT berarti membuat gerbang AND dari
gerbang NOT. Diagram logikanya :
Gambar AND dari NOR Tugas : Buat Rangkaian masing-masing dengan menggunakan gerbang NOR gate dua input dan NAND gate dua input dari persamaan berikut : 1.
F = ABC + ABC
2.
F = (A+B+C)(A+B+C)
33
BAB VI RANGKAIAN DIGITAL LOGIC DARI EXPRESI BOOLEAN
1. Menguraikan Rangkaian Logika Secara Aljabar Boolean
Dalam setiap rangkaian logika selalu menggunakan operasi-operasi Boolean dimana rangkaian-rangkaian tersebut berupa gerbang OR, AND dan NOT yang merupakan blokblok bangun dari digital dasar dari sistem-sistem digital. Expresi Boolean digunakan untuk memudahkan dalam menentukan expresi outputnya.
Contoh :
Untuk menghindari interprestasi yang berbeda antara dua fungsi AB+C dan A+BC maka sebaiknya apabila kita menjumpai suatu expresi yang mengandung operasi AND dan OR sebaiknya operasi AND yang dikerjakan lebih dulu, kecuali bila ada tanda kurung dalam expresi tersebut dalam hal ini operasi yang berada dalam kurung harus dikerjakan terlebih dahulu. Contoh
Rangkaian-rangkaian yang menggunakan inverter dan persamaan diagram logika Contoh : 1.
2.
34
3.
4.
2. Mengevaluasi Output Rangkaian Logika
Expresi Boolean untuk suatu output rangkaian diperoleh dengan melihat level logika dari setiap output yang ditentukan untuk setiap harga-harga dari input-input rangkaian. Contohnya jika kita ingin mengetahui level logika dari output X untuk rangkaian : X = ABC(C+D) Dimana A= 0, B=1, C=1 dan D=0 seperti pada Aljabar biasa harga X dapat ditentukan dengan memasukkan harga-harga dari variable-variable tersebut ke dalam expresi. X = ABC(C+D) = 1 1 1 (1+0) = 1 ( 0 ) = 0 3. Implementasi untuk Rangkaian-rangkaian Expresi Boolean.
Apabila operasi dalam suatu rangkaian didevinisikan dalam expresi Boolean maka suatu rangkaian diagram logika dapat dibuat langsung berdasarkan expresi tersebut. Contoh : Susunlah suatu rangkaian yang outputnya adalah : Y = AC +BC + ABC Expresi Boolean ini mengandung 3 Teem yaitu :
AC ,BC, ABC
yang di Outkan
menjadi 1 hal ini bias kita sebut rangkaian OR gate dengan 3 Input.
35
4. Menyederhanakan Rangkaian-rangkaian Logika. Contoh-contoh berikut ini adalah merupakan suatu procedure dalam menyelesaikan suatu rangkaian. 1.
Z = ABC + AB (AC)
2.
Z = XY[(XY)+Y]
= ABC + AB(A + C)
= XYXY + XY Y
= ABC + AB + ABC
= (XX)(YY) + X(Y Y)
= AC (B + B) + AB
= X (0) + XY
= AC + AB
= 0 + XY
= A(B + C)
= XY
3. Z = XY + [X (Y + X)]
4. Z = ABC +ABC +ABC
= XY + XY + XX
= (ABC + ABC)+(ABC + ABC)
= (XY + XY) + 0
= AC(B+B) + AB(C +C)
= Y (X + X)
= AC ( 1) + AB ( 1 )
= Y( 1 )
= AC + AB
= Y
= A (C + B)
Soal-soal latihan : Buktikanlah persamaan-persamaan berikut : 1. AC (ABD) + ABCD + ABC = BC + ACD + ABD 2. XY [(X+Y) Y ] =XY 3. X + XY + YX = 1 4. X(X +Y)(Y + X) = 0 5. W(Y + W)(X + Y + W) = W 6. (X + Y)W + XY = X + Y 7. (XW + Y)(X + W) = XYW
36
BAB VII MAP KARNAUGH
Jika hanya diketahui table kebenarannya saja maka untuk mendesain suatu rangkaian logika secara sederhana/minimum, digunakan map/peta karnaugh
1. Map Karnaugh untuk 3 input Table Product dan Mainterm Desimal Biner Product Mainterm Terminal Desingation 0 000 ABC M0 1 001 ABC M1 2 010 ABC M2 3 011 ABC M3 4 100 ABC M4 5 6 7
101 110 111
ABC ABC ABC
M5 M6 M7
Format Table AB C C C
AB
AB
AB
AB
0 1
2 3
6 7
4 5
Contoh Penggunaan A 0 0 0 0 1
B 0 0 1 1 0
C 0 1 0 1 0
Y 1 0 1 0 1
1 1 1
0 1 1
1 0 1
0 1 0
Dari table kebenaran disamping dapat dibuat persamaan dengan mengambil output Y yang bernilai ‘1’, dari persamaan tersebut dapat disederhanakan dengan metode identitas Boole dan hukum De-Morgan. Y = A B C +A B C + A B C + A B C Y=AC+AC Y =(A + A) C Y=( 1 ) C Y=C 37
Dari Penyederhanaan tersebut dapat juga digunakan metode Map Karnaugh. Yaitu sebagai berikut :
Tandailah setiap suku Minterm yang bernilai ‘1’ AB AB AB AB C C 1 1 1 C
0
0
0
AB 1
C
0
Sederhanakan dengan menggabungkan minterm yang berdekatan sehingga mencakup minterm yang bernilai ‘1’ secara 2 / 4 / 8 / 16 dan seterusnya . Dari penggabungan diatas didapat Y = C
2. Map Karnaugh untuk 4 input
Table Product dan Mainterm Desimal
Biner
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Product Terminal ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD ABCD
Mainterm Desingation M0 M1 M2 M3 M4 M5 M6 M7 M8 M9 M10 M11 M12 M13 M14 M15
38
Format Table AB AB CD CD 0 1 CD CD 3 CD 2
AB
AB
AB
4 5 7 6
12 13 15 14
8 9 11 10
Contoh-contoh penggunaan : 1. Buatlah persamaan dari Map Karnaugh dibawah dan buatlah rangkaiannya AB AB AB AB AB CD I CD 1 1 1 1 1 II CD 1 1 0 1 III CD 0 0 1 1 CD
1 I
=AB
II = A C
1
0
1
IV
III = A C D IV = A D
Maka hasil persamaannya adalah : Y=AB+AC+ACD+AD Setelah persamaannya didapat maka rangkaiannya dapat di buat:
39
Latihan. Buatlah persamaan dari Map Karnaugh dibawah dan buatlah rangkaiannya 1.
2.
AB CD
AB
AB
AB
AB
CD
0
0
0
0
CD
0
1
0
1
I 1 II
CD
1
0
0
1
III
CD
0
0
1
0
IV
AB CD
AB
AB
AB
AB
CD
1
1
1
1
CD
0
0
0
1
CD
1
0
0
1
CD
1
1
1
1
I 1 II III
3. SUM OF PRODUCT (S of P) & PRODUCT OF SUM (P of S)
SUM OF PRODUCT (S of P) Adalah jumlah dari suatu hasil perkalian (disingkat (S of P)
Contoh
1. A B C + A B C 2. A B C + A B C + A B C
Prosedur untuk mendapatkan expresi output dari suatu True Table adalah dalam bentuk Sum Of Product dapat diiktisarkan sebagai berikut : 1. Tulislah suatu N (Gerbang N) untuk setiap khasus didalam table dimana outputnya adalah ‘1’
40
2. Setiap gerbang N mengandung variable input, salah satu dalam bentuk inversi atau tak diinversi. Apabila variable tersebut ‘0’ untuk khasus tertentu itu didalam table, ia diinversikan didalam gerbang N. 3. Semua gerbang N kemudian di OR kan menjadi ‘1’ untuk mendapatkan expresi output akhir.
PRODUCT OF SUM (S of P) Adalah hasil kali dari suatu penjumlahan disingkat ( P of S ) Contoh : 1.
(A+B+C ).(A+B+C )
2.
(A+B).(A+B+C).(C+D).D
P of S terdiri dari perkalian dua buah term atau lebih didalam term merupakan penjumlahan dari satu variable atau lebih. A, B,
C
------- disebut variable
Contoh Diketahui : Suatu True Table sebagai berikut INPUT A B 0 0 0 1 1 0 1 1
OUT F 0 1 1 0
F1 = A + B F2 = A + B 1. Damental Product adalah output ( F ) yang mempunyai logic ‘1’ 2. Variable input pada fundamental product yang mempunyai logic ‘1’ harus dikomplemenkan. 3. Variable input dari fundamental product di OR kan 4. Bentuk OR ini kemudian di AND kan 5. Hasil output (F) merupakan suatu term yang paling sederhana. F = (A +
B ) + ( A + B )
41
Cara tersebut diatas kurang banyak dipergunakan karena agak membingungkan terutama pada input yang mempunyai variable lebih dari dua maka dipakai cara sebagai berikut : INPUT
F1 = A
.
OUT
A
B
F
F
0 0 1 1
0 1 0 1
0 1 1 0
1 0 0 1
B
F2 = A . B 1. Output true table yang sama dengan ‘0’ diinversikan menjadi logic ‘1’ 2. Tentukan ekspresi untuk S OF P 3. Sederhanakan persamaan output (F) 4. Iinversikan persamaan tersebut, untuk mendapatkan persamaan (F) dengan teori Morgan sehingga menjadi P of S F1 = A
.
B
+
A . B
F1 = A
.
B
+
A . B
F1 = ( A
+
B)
. ( A + B)
Contoh-contoh INPUT
OUT
A
B
C
F
F
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
00 0 1 0 1 0 1 0 1
0 0 1 0 1 1 1
1 1 1 0 1 0 0 0
42
F1 = A . B . C
F1 = A . B . C
F1 = A . B . C
F1 = A . B . C
F = A.B.C + A.B.C + A.B.C + A.B.C = A.B( C + C ) + A.C ( B + B) + B.C ( A + A ) = A.B+B.C+A.C Bentuk tersebut diatas merupakan S of P , sehingga penyelesaian P of S adalah :
berikut
F = A.B+B.C+A.C F = A.B+B.C+A.C F = (A+B).(B+C).(A+C) Maka bentuk rangkaiannya adalah :
43
RANGKAIAN EXCLUSIVE
EXCLUSIVE OR Untuk table kebenaran yang menunjukkan bahwa X=1, ada suatu khasus yaitu A=0, B=1 (term AB) dan A=1, B=0 (term AB) dengan kata lain rangkaian ini menghasilkan output tinggi apabila kedua input levelnya berlawanan dan ini disebut Exclusive OR (EX-OR). Kombinasi dalam gate-gate ini sangat sering terjadi dan sangat berhubungan dalam pemakaian-pemakaian tertentu, dalam kenyataannya rangkaian EX-OR diberi symbol :
+
X = A+ B =AB+AB
Simbol ini dianggap mengandung semua logika yang terdapat dalam rangkaian EX-OR nya dan oleh karena itu mempunyai Expresi logika dan table kebenaran yang sama. Suatu EX-OR gate hanya mempunyai dua input, tidak ada EX-OR gate mempunyai tiga atau empat input. Untuk symbol EX-OR dapat diexpresikan dengan suatu rangkaian logika sebagai berikut : EX-OR A 0 0 1 1
B A B 0 1 1 1 1 0 0 0 1 1 0 0
AB 0 1 0 0
AB 0 0 1 0
AB +AB 0 1 1 0
EXCLUSIVE NOR EX-NOR bekerjanya berlawanan dengan EX-OR. Bentuk persamaannya adalah X = A B + A B yang bersama-sama dengan true tabelnya menunjukkan X=1 untuk dua khasus A=B (term AB) menghasilkan output tinggi apabila kedua inputnya sama, jelas dalam rangkaian EX-NOR adalah kebalikan dari output rangkaian rangkaian EX-OR. Simbolnya yaitu menambah lingkaran kecil pada hasil EX-OR
44
X = A+B =AB+AB
+
EX-NOR gate juga mempunyai dua input dan menggabungkan kedua input tersebut sedemikian rupa sehingga output X = A B + A B suatu cara singkat untuk menunjukkan persamaan output dari EX-NOR adalah A=B (term AB). Bukti bahwa EX-NOR merupakan kebalikan dari EX-OR adalah sebagai berikut AB+AB=AB.AB =(A+B)(A+B) =AA+AB+AB+BB =AB+AB
EX-NOR
A 0 0 1 1
B A B 0 1 1 1 1 0 0 0 1 1 0 0
AB 1 0 0 0
AB 0 0 0 1
AB +AB 1 0 0 1
RANGKAIAN LOGIKA
Kombinatorial / Kombinasi. Rangkaian yang harga outputnya pada suatu saat hanya tergantung pada har harga input pada saat itu. Sekwensial Rangkaian yang harga outputnya selain tergantung pada input pada saat ini, juga tergantung harga output pada saat-saat sebelumnya. Rangkaian ini memerlukan ingatan/ memori (flip-flop). Rangkaian Logika Kombinatorial. (Pembanding / Comparator)
45
Digunakan untuk membandingkan 2 informasi / data misalnya A dan B yang masingmasing terdiri dari 1 bit atau lebih . Pembandingan bit biasanya mempunyai output yang harganya = 1, kalau inputnya berbeda dan harganya = 0 kalau inputnya sama (gerbang EX-OR)
MULTIVIBRATOR
Rangkaian ini memiliki 2 piranti aktif sehingga terdapat 2 keadaan yang berbeda, dimana jika piranti yang satu menghantar piranti lainnya akan terpancung (tidak menghantar). Multivibrator dapat menyimpan bilangan biner (register), mencacah pulsa, menyerempakan operasi-operasi aritmatik, di Multivibrator dalam bentuk IC pada umumnya mempunyai output yang mempunyai harga logika selalu berlawanan dan biasanya diberi tanda Q dan Q.
Jika
Q = 1 maka Q = 0
keadaan ini disebut SET (1)
Q = 0 maka Q = 1
keadaan ini disebut RESET (0)
46
BAB VIII FLIP-FLOP
Flip-flop adalah suatu rangkaian logika dengan dua output dimana satu kebalikan dari yang lain. Output-output yang kita gunakan disini disimbulkan dengan Q. Output normal = Q, dan output flip-flop inverter = Q’. Flip-flop juga merupakan rangkaian logic yang dapat menyimpan sebuah data biner (sbg memory). Pewaktu, penghitung dan pengurutan. Simbol Flip-flop secara umum : Inputinput
Q FF Q
Dua keadaan kerja yang dimungkinkan adalah Q = 0 maka Q=1 dan Q=1 maka Q=0. Flip-flop dikenal : R-S Flip flop(Set Reset Flip-flop) J-K Flip flop D Flip flop( Delay / Data Latch Flip-flop) Selain Flip-flop tersebut,Multivibrator Bistabil juga dikenal sebagai flip-flop.
1. S-R Flip-flop
S-R Flip-Flop dari NOR Gate Flip-flop.
input S R 0 0 0 1 1 0 1 1
output Q Q’ 0 1 0 1 1 0 0 0
state Tak berubah Reset Set Tak menentu
Analisa : Output akan Set pada saat input S diberi Logika 1 dan R diberi Logika 0 Output akan Reset pada saat input S diberi Logika 0 dan R diberi Logika 1 . Bila S= 0 dan R=0 maka tidak mempunyai keadaan Flip-flop. Bila S=1 dan R=1 maka keadaan tidak menentu dan tidak seharusnya digunakan. 47
S-R Flip-flop dari NAND Gate Flip-flop
S 0 0 1 1
input R 0 1 0 1
output Q Q’ 1 1 1 0 0 1 1 0
state Tak menentu Set Reset Tak berubah
S-R Flip-flop (Set Reset Flip-flop) Simbol jenis yang memberikan respon terhadap input-input tinggi
S 0 1 0 1
input R 0 0 1 1
Q 0 1 0 0
output Q’ 1 0 1 0
state Tak berubah 1 0 Tak menentu
Simbol jenis yang memberikan respon terhadap input-input rendah
S 1 0 1 0
input R 1 1 0 0
output Q Q’ 0 1 0 1 1 0 0 0
state Tak berubah 1 0 Tak menentu
Sinyal Jam (Clock) Sinyal jam adalah suatu sinyal yang memberikan
agar outputnya berubah secara
bersamaan dan pada saat-saat tertentu yang dikehendaki, sinyal jam ini biasa disebut juga sebagai pengontrol. Dengan adanya sinyal pengontrol ini maka outputnya akan berubah pada saat sinyal diberikan (clock=1) jika sinyal clock dihentikan atau (clock=0) maka output tidak mengalami perubahan. Sinyal jam melakukan transisi dari 0 ke 1 atau dari 1 ke 0. Sisi Naik (menuju +) Sisi Turun (menuju -)
48
Set Up Time (TS) dan Holt Time (TH)
TS
TH
Set Up Time (TS) Didevinisikan sebagai jumlah waktu yang dibutuhkan untuk tetap mempertahankan kestabilan level-level S input atau R input mendahului terjadinya sisi trigger dari clock input. Dengan tujuan terlaksananya triggering sesuai dengan yang diinginkan.
Holt Time (TH) Didevinisikan sebagai jumlah waktu yang dibutuhkan untuk mempertahankan kestabilan level-level S input atau R input setelah terjadinya sisi trigger dari clock input.
Clock S-R Flip-flop Sebuah S-R flip-flop tyang dikomando atau dikontrol oleh sisi menuju (+) oleh sinyal jam akan dapat diartikan bahwa flip-flop akan mengubah keadaan hanya apabila sinyal clock melakukan transisi dari 0 ke 1.
49
2. J-K Flip-flop Simbol JK Flip-flop J CL K
Q
J CL K
Q
Triger clock tinggi
cl
J
K
Q Q
Triger clock rendah
Q
cl
J
K
Q
0
0
Tak berubah
0
0
Tak berubah
0 1
1 0
0 1
0 1
1 0
0 1
1
1
Togle
1
1
Togle
Timing Diagram
Penjelasan Clocked J-K FF yang ditriger oleh sisi menuju (+) dari sinyal jam, input-input J dan K mengontrol keadaan FF dengan cara yang sama seperti input-input S dan C mengontrol clocked S-C FF kecuali satu perbedaan utama yaitu keadaan J=K=1, tidak menghasilkan suatu output yang tak menentu untuk keadaan ‘1’ , ‘1’ ini FF akan selalu masuk ke dalam keadaan yang berlawanan dari transisi (+) dari sinyal jam ini disebut model operasi Togle.
50
Keterangan Timing Diagram Mula-mula semua input adalah ‘0’ dan Q output = ‘1’. Apabila terjadi sisi menuju (+) dari pulsa jam pertama (titik a) berlangsunglah keadaan J=0, K=1. Jadi FF akan clear menuju keadaan keadaan Q=0. Pulsa Jam kedua mendapatkan J=K=1 pada saat melakukan transisi (+) (titik i).Ini menyebabkan FF di Togle menuju keadaan yang berlawanan Q=1. Pada (titik e) dari bentuk gelombang jam, J dan K keduanya = 0 sehingga pada transisi ini FF tidak mengubah keadaan. Pada (titik g), J=1 dan K=0, ini adalah keadaan yang mengeset Q menuju ‘1’. Tapi karena Q sudah berada pada keadaan ‘1’ maka Q akan tetap berada keadaan itu Pada (titik i), J=K=1 sehingga FF men-togle kearah keadaan berlawanan. Hal ini juga pada (titik k) dan (titik m)
3. D Flip-flop ( Delay / Data Latch Flip-flop) Simbol D Flip-flop
cl
D
Q
0
0
1
1
Timing Diagram
Panjang satu pulsa clock D sebagai pengecek kalau ada data ‘1’ atau ‘0’. D FF pada prinsipnya digunakan pada transfer data biner.
51
Contohnya adalah sebagai berikut : D
Q
cl
Q
D
Q
cl
Q
D
Q
cl
Q
Q1 = X*
X Rangkaian Logic Combinat
Y Z
Q2 = Y*
Q3 = Z*
D FF dari S-C FF dan J-K FF D
S
clk
cl C
Q
D
J
clk
cl
Q
K
S-C Flip-flop
Q Q
J-K Flip-flop
Contoh : D FF sebagai transfer data biner Q1 D
D cl
Q
Q2 D cl
Q
Q3 D
Q
cl
cl
clk D Q1 Q2 Q3
52
4. Flip-Flop Input Sinkron dan Asinkron
Input-input pengontrol sinkron harus bersama-sama dengan sinyal jam untuk mentriger FF nya, hamper semua clocked FF nya juga mempunyai satu atau lebih input-input asinkron dan input jam . Input-input asinkron ini digunakan untuk mengeset FF menuju keadaan satu. Atau mengeclear menuju nol. Pada setiap saat tanpa memperdulikan keadaankeadaan input yang lain. Dengan kata lain input-input asinkron merupakan input-input override (berkuasa) yang dapat digunakan untuk melanggar atau melampaui input-input lain dengan maksud untuk menempatkan FF pada satu keadaan atau keadaan yang lain. Gambar dibawah menunjukkan sebuah clocked J-K FF dengan DC Set dan DC Clear input. Input-input asinkron ini diaktifkan oleh level nol seperti yang ditunjukkan pada lingkaran-lingkaran kecil, pada symbol FF.
Symbol Flip-flop asinkron :
J
DC Q Set Clock DC K Clear Q
DC Set
DC Clear
FF Response
0
0
Tak menentu
0
1
Q=1 Mengeset
1
0
Q=0 Mengeclear
1
1
Tak ada Pengaruh pada FF
Gambar Clocked J-K Flip-flop dengan input-input asinkron
Penjelasan Tabel. 1.
Dengan harga rendah (0) pada DC Set input dengan segera Q=1 dan harga rendah pada DC Clear dengan segera mengeclear Q=0.
2.
Level-level rendah (0) yang serempak pada DC set atau DC clear tidak diijinkan karena dapat mengakibatkan keadaan tak menentu.
3.
Apabila tidak satupun dari input-input ini rendah FF tersebut bebas memberikan respon kepada input-input J-K dan clock.
53
Perlu diperhatikan bahwa input-input asinkron ini memberikan respons terhadap levellevel DC ini berarti bahwa apabila suatu harga konstan nol tetap diperhatikan pada DC Set input, FF akan tetap tinggal pada keadaan Q=1 tanpa memperdulikan apa yang sedang terjadi pada input-input lainnya. Demikian juga halnya suatu harga konstan rendah pada DC clear input yang dipertahankan FF pada keadaan Q=0 jadi input asinkron dapat digunakan untuk mempertahankan FF pada suatu keadaan tertentu untuk setiap interval yang diinginkan. 5.
D Flip-flop Edge Trigered
Q clock Q
D
clk D Q
Gambar diatas diagram logika dari D-FF Tipe Edge Trigered inputnya hanya satu yaitu D, dengan disertai sinyal pengontrol (clock) sedang outputnya Q atau Q. Bekerjanya rangkaian D-FF Edge Trigered hamper sama dengan D Latch bedanya adalah pada waktu clock dalam keadaan normal ‘1’ bila input D berubah maka output Q tidak mengikutinya dengan kata lain output Q akan sama dengan D hanya pada saat clk mulai naik (leading Edge) sampai clock mulai naik ke taraf berikutnya. 54
-
Output Q mengikuti output D pada saat clock leading Edge.
-
Pada waktu clock normal = 1 biar D berubah Q tidak mengikuti sampai clock = 0, kondisi Q sama dengan tetap dan akan berubah sesuai D hanya pada saat clock mulai naik.
6. Counter Asinkron dari J-K Flip-flop. 1
2
3
4
J
Q
J
Q
J
Q
J
Q
K
Q
K
Q
K
Q
K
Q
Clk
J=K=1
clk
Q4 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Q3 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
Q2 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
Q1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
J-K Flip-flop adalah pembagi 2 frekwensi untuk setiap counter.
55
BAB 1X MASTER SLAVE (M/S) 1. Master / Slave D Flip-Flop. 3
D
Q1
5
7
6
8
Q2
1
2 2
4
Q1
Q2
Clk Master
Slave
Pada saat clock hight gerbang 1 dan 2 terbuka (dapat dilalui enable) mengakibatkan output FF Master (gerbang 3 dan 4 sama dengan D) M = D,
M’ = D’ gerbang 5 dan 6
terhalang (Disable) sehingga output D FF Slave (gerbang 7 dan 8 tetap). Ketika FF berubah ke low (0) gerbang 1 dan 2 terhalang ( Output Master tetap) gerbang 5 dan 6 terbuka sehingga seolah-olah terjadi pemindahan keadaan dari output dari master slave. Pada saat pulsa clock berikutnya dating ( menjadi Hight ) urutan kejadian diatas akan terulang kembali (Output master mengikuti input D sedang output Slave tetap ‘1’. (Output master mengikuti input D sedang Slave tetap).
Table Kebenaran D
Clk
Clk’
Q1
0 1 0 1 1
0 1 0 1 0
1 0 1 0 1
0 1 0 1 1
Q1’ Q2 Q2’ 1 0 1 0 0
0 1 0 1 0
1 0 1 0 1
2. Master / Slave J-K Flip-Flop.
J
Q
J
Q
K
Q
K
Q
Clk 56
Pulsa jam Race Condition yang mungkin
Gambar ilustrasi Race Condition yang terdapat pada sistem-sistem digital
Gambar diatas adalah hubungan FF input secara langsung atau melalui gate-gate logika, dimana output FF Q1 bekerja sebagai J input FF Q2 dan kedua FF di Triger oleh pulsa jam yang sama oleh clock inputnya. Misal : Q1 = 1, Q2 = 0 Karena J dan K input keduanya tinggi ‘1’ ia akan toggle ke keadaan nol atas transisi (-) dari pulsa jam apabila pulsa jam menuju rendah, Q1 juga akan menuju rendah, sehingga J input dari Q2 akan berubah dari 1 ke 0 , sementara Q2 sedang diclocked dan ini disebut Race Condition dan kadang-kadang mendatangkan Trigger yang tak teramalkan race condition. Pada gambar diatas tidak menimbulkan masalah karena Q1 sesungguhnya akan menuju rendah sesaat setelah pulsa jam menuju rendah, disebabkan oleh penundaan yang tidak terjaga pada FF Q1, (pada saat memberikan respon terhadap pulsa jam). Jadi Q2 akan memberikan respon menurut yang diinginkan dengan menuju kearah keadaan ‘1’ atas komando sisi jatuh pada pulsa jam. 3. Master / Slave S-C Flip-Flop.
Set
S
SET
Q
S
Q
R
SET
Q
Clk Reset
R
CLR
CLR
Q
57
Pulsa Jam Gate 1 dan 2 maka master memberikan respon pada set clear input, Gate 3 dan 4 disable sehingga Slave tidak dapat berubah keadaan - Gate 3 dan 4 memungkinkan output Master transver ke Slave
Timing Diagram clk Set Clear Master Qm Slave Qs t1
t2
t3
t4 t5
t6
t7
Gambar diatas meliputi 2 FF jenis S-C (unclocked) yang satu disebut master dan yang lain disebut slave dan kedua-duanya ditriger oleh level-level positif pada S input dan C input.
Bekerjanya susunan Master Slave (MS) SC FF adalah sebagai berikut : 1. Sementara clock input tinggi , gate 3 dan 4 disable sehingga slave tidak bias merubah keadaan, karena output-output slave merupakan output sebenarnya Q dan Q’. FF tidak dapat berubah keadaan sementara clock tinggi. 2. Sementara clock tinggi gate 1 dan 2 enable yang berarti bahwa kedua gate tersebut akan membiarkan set input, clear input lewat menuju S dan C dari master, jadi master dapat mengubah keadaan sesuai dengan level-level dari set dan clear input selama clock tetap tinggi. 3. Apabila clock menuju rendah gate 1 dan 2 disable oleh karena itu mencegah master mengubah keadaan tanpa memperdulikan apa yang terjadi pada set dan clear input. Pada saat yang sama gate 3 dan 4 enable sehingga Qm dan Q’m dari master dibiarkan lewat menuju nol input dari slave. Apabila Qm=1 Slave diset keadaan 1, apabila Qm=0 slave diclear ke 0. Jadi output slave (output FF keseluruhan) agar pada keadaan
58
master yang sekarang dan tetap tinggal begitu karena master tidak dapat mengubah keadaan pada saat clock rendah. 4. Apabila clock kembali menuju tinggi master bebas memberikan respon kepada set input dan clear input slave tetap tinggal pada keadaan yang sebelumnya, karena gate 3 dan 4 disable.
And gate dirancang sedemikian rupa sehingga apabila clock bergerak dari 1 menuju 0 and gate 1 dan 2 disable sebelum gate 2 dan 4 enable, ini dilakukan untuk menjamin agar master dan slave tidak akan terpengaruh oleh setiap perubahan pada set input dan clear yang terjadi pada saat bersamaan dengan transisi clock dan ini penting untuk menghindari race condition. Set FF mengubah keadaan hanya apabila clock pindah dari 1 menuju 0 jadi output FF secara keseluruhan Q dan Q’ mengubah keadaan hanya pada saat transisi clock dari satu ke nol. Master dapat mengubah pada setiap saat sementara clock=1, tergantung kepada apa yang terjadi pada set input dan clear input. Apabila clock menuju rendah, keadaan arus dari master kemudian ditransfer menuju output slave.
Perbedaan Antara Edge Trigered dengan Master / Slave Flip-Flop. Perbedaan antara Edge Trigered dan Master/Slave FF Set Clear clk tak teramalkan
O/P dari Edge Trigered O/P dari M/S FF t1
t2
t3
Gambar bentuk pulsa diatas menunjukkan perbedaan utama antara Edge Trigered FF dan MS FF. MS FF ditunjukkan oleh S, C dan Clock input yang sama yaitu 0, kedua FF
59
memberikan respon yang sama pada T1 dan T2 pada saat clk melakukan transisi menuju (-) T1 dan T2 sama dengan 1. Pada T3 diset input dan clock input keduanya rendah dari tinggi menuju rendah dan Edge Trigered FF akan memberikan respon secara tak teramalkan, kecuali apabila jatuhnya set input ditunda diluar sisi jatuh, clock clock paling sedikit sejumlah T4 tetapi bagaimanapun juga MS FF akan menuju 1 pada T3, karena 1 pada set input tersimpan pada master, sementara clock tinggi. Dan apabila clock menuju rendah, satu tersebut ditransfer menjadi slave. Dengan kata lain MS FF memberikan terhadap set=1 yang sudah terjadi sebelum sisi jatuh clock. Pada T3 menunjukkan keuntungan utama MS FF dibandingkan dengan edge triggered. MS FF akan memberikan trigger yang dapat dipercayai meskipun apabila input-input pengontrolnya berubah bersamaan dengan terjadinya FF. Oleh karena itu MS FF harus digunakan apabila keadaan-keadaan race condition.
Clock SR-FF dan D-FF Output akan berubah saat naik (leading edge), dan pada saat normal=1. Bila input berubah maka outputnya akan berubah.
D-FF Edge Trigered Output berubahnya pada saat clock mulai naik (agreding) saat clock normal=1. Bila inputnya berubah outputnya tidak berubah.
JK-FF Output berubah hanya pada saat clock mulai turun (tryling Edge) dan saat itu output ‘mengingat’ inputnya pada saat clock mulai naik bleding egde).
60
BAB X OPERASI-OPERASI FLIP-FLOP 1. Operasi-operasi Transfer
Operasi yang sangat sering terjadi dalam system-sistem digital adalah transfer informasi dari satu FF atau group FF menuju FF atau group FF yang lain. Gambar dibawah ini menunjukkan operasi transfer dengan menggunakan JK-FF, D-FF dan SR-FF. S
SET
Q
S
A R
CLR
SET
Q
J
B Q
R
CLR
SET
Q
J
A Q
K
TRANSFER SR-FF
CLR
SET
Q
D
B Q
TRANSFER JK-FF
K
CLR
SET
Q
A Q
CLR
D
SET
Q
A Q
CLR
Q
TRANSFER D-FF
Contoh-contoh gambar transfer sinkron. Dalam setiap kasus harga logika yang disimpan di FF A di transfer ke FF B atas komando dari transisi (-) pulsa transfer. Yaitu output B setelah terjadinya pulsa akan sama dengan apa yang terdapat pada output A sebelum pulsa. Contoh-contoh dari transfer sinkron dan clock digunakan untuk transfer. Operasi-operasi transfer juga dapat diperoleh dengan menggunakan input-input Asinkron, seperti gambar dibawah ini bagaimana suatu transfer asinkron dapat diperoleh dengan menggunakan input-input DC Set dan DC Clear dari sembarang jenis FF.
J
Q
J
A K
SET
Q
B Q
K
CLR
Q
Input-input asinkron memberikan respon kepada level-level rendah (lingkaran-lingkaran kecil). Apabila pada jalur enable dijaga tetap rendah, buat output NAND bertambah tinggi dengan tanpa pengaruh input-input FF
61
Apabila jalur transfer enable dibuat tinggi, salah satu dari output NAND akan menjadi rendah, tergantung kepada keadaan dari output A dan A’. Harga rendah ini akan memberikan salah satu pengaruh, mengeset atau mengeclear FF B menjadi sama keadaannya dengan FF A Transfer asinkron ini dilakukan secara bebas oleh inputinput sinkron dan clock dari FF.
62
BAB X1 RANGKAIAN ARITMATIK
1. HALF ADDER
Rangkaian logika dari half adder (penjumlah tak lengkap) merupakan dasar penjumlah biner yang masing-masing terdiri dari 1 bit oleh karena itu dinamakan rangkaian penjumlah tak lengkap. Bentuk rangkaian dan simbol dari rangkaian half adder tersebut dapat dilihat pada gambar dibawah.: Block Skema
Rangkaian Half Adder
A
A
S atau
HA B
B
C
S C
Misalnya biner A=1 akan dijumlahkan dengan biner B=1, penjumlahannya dapat dituliskan sebagai berikut :
A = 1 B = 1+ 10 C Out
S (Sum)
S=0 pada penjumlah diatas adalah hasil penjumlahannya (sum) sedang Cout (Carry Out) merupakan nilai pindahan keluarannya. Cout keduanya merupakan fungsi dari pada rangkaian half adder, dengan demikian hald adder mempunyai dua jalan masukan (input) A dan B, dan dua keluaran (output). Dan karena mempunyai 2 variable ini, maka fungsi outputnya akan memiliki 2n . 2 n = 22 = 4 Ada 4 kemungkinan hal itu ditunjukkan pada tabel kebenarannya. Tabel kebenaran half adder. A 0 0 1 1
B 0 1 0 1
S 0 1 1 0
C 0 0 0 1 63
2. FULL ADDER
Rangkaian Full Adder merupakan dasar penjumlahan bil biner dengan jumlah bit yang tidak terbatas oleh karena itu dinamakan rangkaian penjumlahan lengkap. Dan rangkaian ini dibangun dari dua buah half adder dan sebuah or gate. A
Cout
HA B
HA Cin
Sum
Atau A B
Cout
Sum Cin
Block Skemanya : A B Cin
S FA C
Pada gambar diatas dapat dilihat bahwa rangkaian Full Adder mempunyai jalan masukan yaitu A,B dan Cin . Variable A dan B dipakai untuk bilangan biner yang dijumlahkan sedang Cin adalah nilai pindahan dari penjumlahan code sebelumnya / Cin=Cout. Karena mempunyai input variable sebanyak 3 buah maka fungsi outputnya akan mempunyai . 2 n = 2 3 = 8 kemungkinan.
64
Tabel kebenaran. 2 n = 2 3 = 8 A 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1
C 0 1 0 1 0 1 0 1
dari Full Adder adalah :
CARRY OUT 0 1 1 0 1 0 0 1
SUM 0 0 0 1 0 1 1 1
Dengan berpedoman pada tabel kebenaran diatas dibawah ini diberikan contoh penjumlahan bilangan biner yang masing-masing terdiri dari 4 bit.
A4 A3 A2 A1 = 1 0 0 1 A4 A3 A2 A1 = 0 1 0 1 S4 S3 S2 S1 = 1 1 1 0
+
Bilangan yang ditambah Bilangan yang menambah Hasil penjumlahan
Cout = 0001 = Pindahan keluaran Cin = 0010 = Pindahan masukan
Nilai Cout =1 hanya pada penjumlahan kolom pertama (LSB). Sedang pada kolom Cin nya, Coutput=0. Nilai Cout menjadi Cin untuk penjumlah kedua demikian seterusnya. Ada nilai pindahan keluaran akan menjadi pindahan masukan pada penjumlahanhan kolom berikutnya. Penjumlahan bilangan pada contoh diatas dapat dilakukan dengan 2 cara yaitu : 1.
Penjumlahan secara jajar (paralel adder), pada cara ini semua kolom penjumlahan dijumlahkan secara serentak atau pada saat yang bersamaan sehingga hasilnya dapat dibaca sesaat itu juga.
2.
Penjumlahan secara deret (serial Adder). Pada cara ini penjumlahan dilakukan secara berderet.
3. Penjumlahan Secara Jajar (Paralel Adder)
Untuk menjumlahkan bilangan biner secara jajar (paralel Adder) dibutuhkan beberapa Full adder sejumlah banyaknya bit yang akan dijumlahkan. Untuk menjalankan 4 bit
65
bilangan biner dilakukan dengan 4 buah full adder yang dirangkai sedemikian rupa sehingga penjumlahan akan berlangsung pada saat yang bersamaan.
A B Cin
Over Flow
FA (MSB)
S4 C out
A B Cin
FA S3 C out
A B Cin
FA
A B Cin
FA (LSB)
1001 1011
+
10100 Over Flow
S2 C out S1
Pada gambar diatas dapat dilihat bahwa masing-masing bit dijumlahkan dalam satu full adder. Misalnya yang pertama (LSB) : A1 + 1 = A1 menggunakan full adder yang diberi LSB, demikian berturut-turut, bit yang terakhir diberi, untuk yang pertama Cin digroundkan (0) sebenarnya full adder untuk LSB dapat digantikan dengan half adder dimana hanya mempunyai 2 jalan masukan A dan B. Dan kalau diganti dengan half adder nantinya apabila digunakan untuk rangkaian model-model 4 bit menjadi rangkaian penjumlah 8 bit, 16 bit dan seterusnya, dan kurang praktis. Cout penjumlahan LSB dimasukkan sebagai Cin kolom berikutnya demikian seterusnya. Cout pada full adder MSB diberi tanda over flow maksudnya adalah sebagai jalan keluaran logika ± yang tidak tertampung dalam rangkaian penjumlah. Contoh : 1001 1011 10100
+
Over Flow mempunyai logika 1 Dan nilai ‘1’ yang tidak tertampung dapat dimasukkan pada Cin berikutnya (modal berikutnya), 4 bit, 8 bit, 16 bit dan seterusnya.
66
4. Penjumlahan Secara Deret (Serial Adder)
Pada penjumlahan cara ini bilangan yang akan ditambah dan bilangan yang menambah untuk pertama kali disimpan didalam register A dan B. Masing-masing jalan keluar serial output register geser tersebut dihubungkan ke jalan masuk (dua input) full adder sedangkan output full adder ke jalan masuk serial input register S yang berfungsi sebagai penyimpannan hasil penjumlahan. Untuk Cout full adder dihubungkan sedemikian rupa pada D-FF, sehingga nantinya mengalami penundaan waktu. Ketiga register A,B dan S adalah shift register geser, bersama D-FF, ketiga register tersebut bekerjanya dikontrol oleh sinyal Clock yang dihubungkan menjadi satu. Dengan demikian output D-FF akan respon meluruskan Cout (untuk menjadi Cin pada full adder). Sesaat setelah kedua input full adder yang lain (A dan B) siap dijalankan. Pada saat yang sama pada full adder sesaat itu juga register S bekerja menampung hasil penjumlahan tsb. A
B
4
4
3
3
2
2
1
1
Sum
Serial Out
4
3
2
1
F.A
Serial Out
C Out
Cin
D
Q D-FF
Clk
Clock
Gambar Penjumlahan Serial Adder 5. Rangkaian Pengurang / Penjumlah komplemens-1. Contoh pengurang / penjumlah komplemen-1 dari : 10 4 ----- 6
(0) 1010 ( 1 ) 1 0 1 1 --- > Comp dari 0 1 0 0 ---------------- + 1 ( 0) 0 1 0 1 1 ---------------- + (0)0110 67
Dari hasil pengurang / penjumlah komplemen-1 tersebut dapat dibuatkan rangkaiannya yaitu sebagai berikut :
Penjelasn pada gambar, untuk komplemen-1, pada bit pengurang diberikan inverter untuk membalikkan hasil pengurang, dan pada Cout pada C4 dihubungkan ke C0 bertujuan untuk menambahkan bila posisi C4 bilangan tanda (-) yaitu ‘1’ maka akan ditambahkan ke C0.
6. Rangkaian Pengurang / Penjumlah komplemens-2. Contoh pengurang / penjumlah komplemen-2 dari : 7 5 --- 2
(0) 1 1 1 (1) 0 1 1 Komplemen-2 dari (0) 1 0 1 ------------- + 1 (0) 0 1 0 --- Carry diabaikan
Dari hasil pengurang / penjumlah komplemen-2 pada pengurang setelah diinverter maka ditambah ‘1’ dan setelah hasil penjumlahan bila ada carry akan diabaikan.dari keterangan tersebut maka dapat dibuatkan rangkaiannya yaitu sebagai berikut :
68
Penjelasn pada gambar, untuk komplemen-2, pada bit pengurang diberikan inverter untuk membalikkan hasil pengurang, dan pada Pengurang (MSB) dihubungkan ke OR dengan ditambah ‘1’ bertujuan untuk menambahkan ‘1’ pada hasil inverter pengurang bila posisi Carry bilangan tanda (-) yaitu ‘1’ maka akan diabaikan.
7. Rangkaian Pengontrol Penjumlah dan Pengurang True Complement Unit (TCU) Rangkaian pengontrol penjumlah dan pengurang dibangun dari 3 buah gate yang terdiri dari : NAND, NOT, dan EX-OR. Selain dapat meluruskan data yang benar dan complemennya rangkaian dapat pula dikontrol agar menghasilkan data yang semuanya merupakan logic 1 dan 0. Untuk itu pada TCU terdapat 3 jalan masukan dan satu jalan keluaran. Dari 3 jalan masukan 2 diantaranya adalah input control dan 1 sebagai jalan masukan untuk 1 bit data yang akan dioperasikan. Dari rangkaian dasarnya yang hanya mempunyai 1 jalan masuk bit data, dapat dibangun suatu modul IC TCU yang memiliki sejumlah jalan masukan sesuai banyaknya bit data
69
yang diinginkan, dalam hal ini disesuaikan dengan full Adder yang digunakan dan modul tersebut tetap dikontrol oleh kedua input control yang bekerja sebagai jajar didalamnya.
L dan M sebagai Input Kontrol A sebagai input (satu jalan masukan untuk bit data)
Karena mempunyai 3 variable input, fungsi output F dari rangkaian diatas akan memiliki 8 kemungkinan, hal ini dapat dilihat pada table kebenaran dibawah.
Tabel kebenaran TCU No 1 2 3 4 5 6 7 8
A 0 0 0 0 1 1 1 1
L 0 0 1 1 0 0 1 1
M 0 1 0 1 0 1 0 1
F 1 0 1 0 0 1 1 0
Tabel diatas dapat dijelaskan sebagai berikut : a. Kolom no 1 dan no 5. Bila input kontrol L dan M=0, maka : Input A=0 output akan bernilai F=1 Input A=1 output akan bernilai F=0 Kesimpulan : Data input A max output F=A’ b. Kolom no 2 dan no 6. Bila input kontrol L=0 dan M=1, maka : Input A=0 output akan bernilai F=0 Input A=1 output akan bernilai F=1 Kesimpulan : Data input A, maka output F=A
70
c. Kolom no 3 dan no 7. Bila input kontrol L=1 dan M=0, maka : Input A=0 output akan bernilai F=1 Input A=1 output akan bernilai F=1 Kesimpulan : Pada kondisi ini data input tidak terpengaruh sama sekali, karena output F =1 d. Kolom no 4 dan no 8. Bila input kontrol L dan M=1, maka : Input A=0 output akan bernilai F=0 Input A=1 output akan bernilai F=0 Kesimpulan : Pada kondisi ini data input juga tidak mempengaruhinya.
Dengan penjelasan diatas dapat diringkas untuk kemungkinan nilai output kontrol tersebut
Data input A A A A
L 0 0 1 1
M 0 1 0 1
F A’ A 1 0
Keterangan Meneruskan komplemen data input Meneruskan data inputnya Data input tidak berpengaruh output akan selalu 1 Sama (idem) output akan selalu 0
8. Rangkaian Penambah BCD.
Sandi BCD hanya menggunakan 10 diantara 16 kemungkinan (0000-1001). Bila jumlah desimal lebih dari 9, maka harus diubah ke bentuk BCD dengan menambah 6 (0110) ke jumlah tersebut. Contoh : 9 3 + 12
1001 0011+ 1100 0110+ 1 0010 1
2
71
Dari hasil penjumlah BCD karena lebih besar dari 9 maka ditambah dengan 6,
Dari rangkaian diatas , jumlah > 9 terdeteksi oleh gerbang AND . Jika S5=1 atau S4=S3=1 atau S4=S2=1 maka keluaran gerbang OR=1.
72