Percobaan 2 GERBANG KOMBINASIONAL DAN KOMPARATOR Oleh : Sumarna, Jurdik Fisika, FMIPA, UNY E-mail : [email protected] Tujuan : 1. Membiasakan mengenali letak dan fungsi pin (kaki) pada IC gerbang logika. 2. Menyusun unit rangkaian logika kombinasional dari gerbang-gerbang logika dasar sedemikian hingga membentuk suatu sistem rangkaian dengan fungsi tertentu. 3. Memahami cara kerja rangkaian logika kombinasional. Dasar Teori : Peran gerbang logika dalam sistem peralatan digital untuk mengendalikan aliran informasi, untuk menyandi maupun mendeteksi maupun memberikan menerjemahkan sandi data digital, untuk respon terhadap adanya persyaratan dalam sistem kendali, dan yang tidak kalah pentingnya adalah untuk menampilkan berbagai operasi matematik maupun logik terhadap data digital. Rangkaian pembanding dan penjumlah dibahas secara khusus karena kedua rangkaian tersebut sering dijumpai dalam sistem digital dan merupakan rangkaian dasar dalam mesin komputasi maupun sistem pengendali. Untuk mengetahui apakah suatu bilangan A adalah lebih kecil, sama besar, atau lebih besar bila dibandingkan dengan bilangan B digunakan rangkaian pembanding. Pembanding digital merupakan unsur pembuat keputusan yang sangat penting dalam sistem komputer dan sistem pengendalian digital. Secara umum, rangkaian pembanding adalah rangkaian yang digunakan untuk membandingkan suatu besaran masukan dengan besaran masukan lain dan menghasilkan suatu keadaan tertentu pada keluarannya. Ketika besar dua bilangan A dan B dibandingkan, maka paling banyak ada tiga kemungkinan keadaan yang dapat dihasilkan, yaitu A > B, A < B atau A = B. Tetapi kemungkinan keadaan hasil tersebut hanya ada dua, yaitu A = B atau A ≠ B. Sebagai 1 ilustrasi dipilih suatu rangkaian dua masukan A dan B dengan satu keluaran Y yang tabel kebenarannya ditentukan seperti berikut ini. Masukan Keluaran Baris Ke A B Y 0 1 2 3 0 0 1 1 0 1 0 1 0 1 1 0 Dari tabel tersebut tampak bahwa jika A = B maka Y = 0, dan jika A ≠ B maka Y = 1. Berdasarkan bentuk minterm-nya, maka sesuai dengan tabel di atas dapat dituliskan pernyataan Booleannya sebagai Y = f(A,B) = m(1,2) = AB + AB Realisasi rangkaian dari pernyataan Y = A B + A B adalah sebagai berikut : A B Y Gambar : Diagram rangkaian Y = A B + A B. Sebenarnya diagram rangkaian pada gambar di atas telah dikenal dengan baik sebagai gerbang EX-OR (Exclusive OR). Jika diperhatikan dengan seksama, diagram rangkaian tersebut memiliki fungsi membandingkan masukan A terhadap B yang hasil pembandingannya menentukan keadaan keluaran Y. Y = 0 berarti A = B dan bila Y = 1 berarti A ≠ B. Perlu diketahui bahwa rangkaian di atas bukanlah satu-satunya 2 jawaban. Dengan menggunakan persamaan logika lain akan diperoleh rangkaian yang lain pula. Perhatikan langkah-langkah berikut : Y = AB + AB = 0 + AB + 0 + AB = A A + AB + B B + AB = A( A + B ) + B( B + A ) = A ( AB ) + B ( AB ) = (A + B) ( AB ) Diagram rangkaian dari Y = (A + B) ( AB ) seperti tampak pada gambar di bawah ini. A B Y Gambar : Diagram rangkaian Y = (A + B) ( AB ) Dengan cara sebagaimana telah dikemukakan di atas, dapat pula dibuat rangkaian pembanding dua masukan dengan keadaan keluaran yang lain, misalnya jika A = B maka Y = 1, dan jika A ≠ B maka Y = 0. Tabel kebenaran untuk keadaan tersebut tercantum pada tabel berikut. Masukan Keluaran Baris Ke A B Y 0 1 2 3 0 0 1 1 0 1 0 1 1 0 0 1 3 Sesuai dengan bentuk minterm-nya, maka berdasarkan tabel di atas dapat dituliskan pernyataan Booleannya sebagai Y = f(A,B) = m(0,3) = AB + A B Dari persamaan itu dapat direalisasikan diagaram rangkaian gerbang logikamya seperti tampak pada gambar di bawah ini. A B Y Gambar : Diagram rangkaian Y = AB + A B Sebenarnya diagram rangkaian pada gambar tersebut telah dikenal dengan baik sebagai gerbang EX-NOR (Exclusive NOR). Y = 0 berarti A ≠ B dan Y = 1 berarti A = B. Dua rangkaian pembanding yang telah dibahas merupakan pembanding 1 bit dengan satu jalur keluaran, yaitu Y saja. Selanjutnya dicoba untuk merancang rangkaian pembanding 1 bit tetapi dengan tiga jalur keluaran. Jalur pertama X untuk keluaran bila A < B, jalur ke dua Y untuk keluaran A = B, dan jalur ke tiga Z untuk keluaran A>B. Langkah pertama yang kita tempuh adalah membuat tabel kebenaran. Perhatikanlah tabel berikut ini. Masukan Keluaran Baris ke A B X Y Z 0 1 2 3 0 0 1 1 0 1 0 1 0 1 0 0 1 0 0 1 0 0 1 0 4 Berdasarkan tabel tersebut, bentuk fungsi logik untuk setiap jalur keluarannya adalah sebagai berikut : X = AB Y = AB + A B Z = AB Perwujudan rangkaian dari ketiga fungsi di atas tampak pada gambar di bawah ini. X A B Y Z Gambar : Diagram rangkaian pembanding 1 bit dengan tiga jalur keluaran. Pembanding yang memiliki tiga jalur keluaran lebih banyak dijumpai pada pembanding 2 bit atau lebih. Sampai di sini baru dibahas pembanding dua bilangan A dan B masing-masing 1 bit. Artinya A hanya bernilai 1 atau 0, demikian pula B hanya berharga 1 atau 0. Selanjutnya dirancang rangkaian pembanding dua bilangan A dan B yang masing masing terdiri dari 2 bit, di mana A = A1 A2 dan B = B1 B2 . Dengan demikian A atau B masing-masing dapat bernilai 00, 01, 10, 11. Tabel berikut menampilkan tabel kebenaran pembanding 2 bit dengan tiga jalur keluaran berturut turut X untuk A > B, Y untuk A = B, dan Z untuk A < B. 5 Masukan Baris ke 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 A Keluaran B A1 A2 B1 B2 X Y Z 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 0 0 1 0 0 0 1 1 0 0 1 1 1 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 1 1 1 0 0 1 1 0 0 0 1 0 0 0 0 Dari tebel tersebut, fungsi logika untuk masing-masing jalur keluaran X, Y, dan Z adalah sebagai berikut : X = A2 B 2 + A2A1 B 1 + A1 B 2 B 1 Y = A 2 A 1 B 2 B 1 + A 2A1 B 2B1 + A2A1B2B1 + A2 A 1B2B1 Z = A 2 B2 + A 2 A 1 B1 + A 1 B2 B1 Realisasi rangkaian berdasarkan ketiga persamaan di atas adalah seperti tampak pada gambar berikut ini. 6 A2 A1 B2 B1 X Y Z Gambar : Diagram rangkaian pembanding 2 bit dengan tiga jalur keluaran. 7 Gambar di atas bukanlah satu-satunya jawaban untuk rangkaian pembanding 2 bit tiga jalur keluaran. Selanjutnya ketiga persamaan di atas dapat dimodifikasi untuk mendapatkan persamaan logika lain yang setara. Sebagai contoh perhatikan persamaan untuk keluaran Y yang dapat dimodifikasi menjadi : Y = A 2 A 1 B 2 B 1 + A 2A1 B 2B1 + A2A1B2B1 + A2 A 1B2B1 = A 2 B 2 ( A 1 B 1 + A1B1) + A2B2 (A1B1 + A 1 B 1) = ( A 2 B 2 + A2B2 ) (A1B1 + A 1 B 1) Diagram rangkaian gerbang logika dari persamaan untuk keluaran Y tersebut dapat dilihat pada gambar berikut. A1 B1 A1 B1 Y A2 B2 A2 B2 Gambar : Diagram rangkaian dari persamaan keluaran Y. Jika gambar tersebut menggantikan blok keluaran Y pada gambar sebelumnya akan didapatkan satu model diagram rangkaian pembanding 2 bit tiga keluaran yang berbeda dari sebelumnya. Demikian seterusnya Anda dapat merancang model-model rangkaian pembanding 2 bit. Oleh karena Anda telah mengenal langkah-langkah untuk merancang suatu rangkaian pembanding, maka untuk selanjutnya diagram rangkaian pembanding lebih disederhanakan. Suatu contoh penyederhanaan diagram rangkaian pembanding dapat dilihat pada gambar di bawah ini. 8 A B A2 A1 B2 B1 A3 A2 A1 B3 B2 B1 A>B A=B A<B X Y Z Gambar : Diagran rangkaian pembanding 1 bit A>B A=B A<B X Y Z Gambar : Diagran rangkaian pembanding 2 bit A>B A=B A<B X Y Z Gambar : Diagran rangkaian pembanding 3 bit Dengan langkah-langkah sebagaimana telah dikemukakan di atas, dapat dirancang rangkaian-rangkaian pembanding 3 bit, 5 bit, dan seterusnya. Tentu saja semakin besar bit-nya, semakin rumit rangkaiannya. Sebagai tambahan informasi untuk keperluan praktis, dalam membuat rangkaian pembanding dengan jumlah bit yang lebih besar digunakan rangkaian-rangkaian pembanding lain yang pada bagian masukannya dilengkapi dengan tiga terminal masukan tambahan. Ketiga terminal masukan tambahan tersebut adalah A>B, A=B, dan A<B. Sebagai contoh pada gambar berikut adalah pembanding 2 bit tiga keluaran yang dilengkapi dengan tiga terminal masukan tambahan. A2 A1 A B2 B1 B A>B A=B A<B X Y Z Gambar : Diagran rangkaian pembanding 2 bit 3 keluaran yang dilengkapi dengan 3 terminal masukan tambahan. A>B A=B A<B 9 Sifat dari ketiga terminal masukan tambahan tersebut disusun sedemikian hingga memenuhi syarat berikut : 1. Keluaran X pembanding bernilai 1 jika masukan tambahan A>B berharga 1. 2. Keluaran Z pembanding bernilai 1 jika masukan tambahan A<B berharga 1. 3. Jika masukan tambahan A=B berharga 1 maka keluaran (X, Y, dan Z) dari pembanding tergantung pada data masukan. Dengan rangkaian pembanding yang memenuhi sifat-sifat tersebut kita dapat menggabung secara kaskade dua buah pembanding 2 bit untuk membentuk sebuah pembanding 4 bit. Rangkaian hasil penggabungan tersebut diperlihatkan pada gambar berikut. Pembanding 1 A, MSB B, MSB 0 1 0 A2 A1 B2 B1 Pembanding 2 A, LSB X Y Z A2 A1 B, LSB A>B A=B A<B B2 B1 X Y Z A>B A=B A<B Gambar : Pembanding 4 bit yang disusun dari 2 buah pembanding 2 bit. Berdasarkan gambar di atas, pembanding-1 sebagai masukan MSB (most significant byte) dan tiga terminal masukan tambahan harus dibuat sedemikian hingga terminal A>B bernilai 0, terminal A=B bernilai 1, dan terminal A<B bernilai 0. Hal itu didasarkan pada suatu konsekuensi logis bahwa membandingkan dua bilangan lebih efisien apabila lebih dahulu membandingkan MSB-nya. Jika MSB bilangan A lebih besar dari pada MSB bilangan B, dengan sendirinya A > B dan tidak perlu lagi untuk membandingkan LSB dari kedua bilangan. Pembandingan LSB dilakukan hanya apabila MSB kedua bilangan yang dibandingkan berharga sama. Misalkan kita hendak membandingkan bilangan A = 8732, bilangan B = 4299, dan bilangan C = 8751. Untuk bilangan A 10 anggaplah memiliki MSB-A = 87 dan LSB-A = 32. Untuk bilangan B memiliki MSB B = 42 dan LSB-B = 99. Sedangkan untuk bilangan C memiliki MSB-C = 87 dan LSB-C = 51. Bilangan mana yang lebih besar antara A dan B ? Pertama bandingkan MSB-A dan MSB-B yang berturut-turut adalah 87 dan 42. Jelas MSB-A lebih besar dari pada MSB-B dengan demikian A>B, dan tidak perlu membandingkan LSB-A dan LSB-B. Bilangan mana yang lebih besar antara A dan C ? Karena MSB-A = MSB-C = 87, maka perlu untuk membandingkan LSB-A dan LSB-C. Ternyata LSB-C = 51 lebih besar dari pada LSB-A = 32, dengan demikian C > A. Dengan cara seperti yang telah kita pelajari, tentunya dapat menggabungkan dua pembanding 4 bit (IC-7485) menjadi satu pembanding 8 bit, dan diagram rangkaiannya diperlihatkan pada gambar di bawah ini. Pembanding 1 A, MSB Pembanding 2 4 bit B, MSB 0 1 0 4 bit A, LSB X Y Z B, LSB A>B A=B A<B 4 bit 4 bit X Y Z A>B A=B A<B Gambar : Pembanding 8 bit yang disusun dari 2 buah pembanding 4 bit. Dengan susunan seperti gambar di atas, jika 4 bit data MSB-A (A8 A7 A6 A5) lebih besar dari pada 4 bit data MSB-B (B8 B7 B6 B5), yang keduanya dimasukkan pada pembanding-1 (sebelah kiri), maka keluaran X dari pembanding-1 akan bernilai 1. Keadaan ini akan mengakibatkan keluaran X dari pembanding-2 bernilai 1. Sebaliknya jika 4 bit data MSB-A lebih kecil dari pada 4 bit data MSB-B, maka keluaran Z dari pembanding-1 akan bernilai 1, dan akan membuat keluaran Z pada pembanding-2 berharga 1. Sedangkan jika 4 bit MSB-A dan MSB-B bernilai sama, maka keluaran Y dari pembanding-1 akan berharga 1. Pada keadaan ini keluaran Y dari pembanding-2 akan tergantung pada nilai 4 bit data LSB-A (A4 A3 A2 A1) dan LSB-B (B4 B3 B2 B1 ). 11 Alat-alat : Catu daya (5V, 500 mA), multimeter, LED, resistor, beberapa IC dengan seri 7400, 7402, 7404, 7408, 7432, 7485, dan kabel penghubung. Langkah-langkah Percobaan : Dengan memanfaatkan gerbang-gerbang logika dasar yang telah dipelajari pada percobaan sebelumnya, susunlah suatu rangkaian seperti berikut, dan selanjutnya amatilah efek keluarannya (out) berdasarkan variasi pada masukan A, B, C dan D. Hasil pengamatan tersebut segera masukkan ke dalam tabel pengamatan (Format tabel dirancang sendiri). Adapun rangkaian yang harus disusun adalah : A Y A A Y A Y B Y B A Y A B B Y A B Y C A B Y C D 12 Berdasarkan tabel pada masing-masing rangkaian (kombinasi) gerbang dasar di atas, bandingkanlah hasil pengamatan tersebut dengan hasil yang diperoleh secara teoritis. Kesimpulan apa yang dapat diperoleh setelah melakukan perbandingan tadi. Selanjutnya, buatlah suatu rangkaian komparator (pembanding) satu bit dengan menggunakan gerbang logika dasar seperti yang telah dipelajari sebelumnya. Salah satu rangkaian komparator satu bit adalah sebagai berikut : O1 A B O2 O3 Ukurlah tegangan keluaran Oi (dengan i = 1, 2, 3) atau amati gejala yang terjadi pada indikator LED yang terpasang pada setiap Yi berdasarkan variasi nilai masukan pada A atau B. Kemudian data pengamatan itu masukkan ke dalam tabel berikut : O1 A O3 B LED 0 0 1 1 O2 Volt LED Volt LED Volt 0 1 0 1 Rangkaian komparator dengan cacah bit yang lebih besar semakin rumit. Tetapi telah tersedia rangkaian komparator dalam bentuk IC, salah satunya adalah 7485. IC tersebut 13 merupakan komparator 4 bit (A = A3A2A1A0 dan B = B3B2B1B0). Bentuk, posisi dan fungsi pin (kaki) dari IC seri 7485 adalah sebagai berikut : 16 15 14 13 12 11 10 9 Vcc A3 B2 A2 A1 B1 A0 B0 Vcc Gnd 7485 B3 IA<B IA=B IA>B OA>B OA=B OA<B Gnd 1 2 3 4 5 6 7 8 : + 5 volt : tanah Pilihlah 10 pasang nilai untuk A (A3A2A1A0 ) dan B (B3B2B1B0) secara acak, kemudian amati keadaan pada keluaran komparator (pin 5, 6 dan 7). Format tabel pengamatan seperti pada komparator satu bit, hanya masukan A dan B masing-masing 4 bit. Bandingkan hasilnya dengan proses pembandingan A dan B tersebut yang dikerjakan secara manual. 14