Logic and Computer Design Fundamental Chapter 3 Combinational Logic Design Part 1 : Implementation Technology and Logic Design M. Mano & Charles R. Kime 2008, Pearson Education, Inc
Overview Bagian 1 – Prosedur Desain Langkah-langkah Spesifikasi Formulasi Optimisasi Teknologi Pemetaan/mapping Dimulai dari Desain Hirarki Teknologi Pemetaan/mapping - AND, OR, dan NOT ke NAND atauNOR Verifikasi Manual Simulasi
Overview (lanjutan) Bagian 2 – Logika kombinasional Fungsi dan blok fungsional Dasar Permulaan fungsi logika Men-decode dengan menggunakan Decoders Implementasi Fungsi Kombinasional dengan Decoders Meng-encode dengan menggunakan Encoders Implementasi Fungsi Kombinasional dengan Encoder. Memilih dengan menggunakan Multiplekser Implementasi Fungsi Kombinasional dengan Multiplekser.
Rangkaian Kombinasional Suatu rangkaian logika kombinasional mempunyai: Suatu set dari m input Boolean, Suatu set dari n output Boolean dan n fungsi switching , masing2 mapping 2m input kombinasi ke output yang mana output tergantung hanya pada nilai input-nya. Blok diagram: m Boolean Inputs n Boolean Outputs Combinatorial Logic Circuit
Prosedur Desain. Spesifikasi Formulasi Optimisasi Tuliskan spesifikasi untuk rangkaian bila salah satu belum memungkinkan. Formulasi Carilah Tabel kebenaran atau awal persamaan Boolean yang mendefinisikan hubungan yang dibutuhkan antara input dan output, bila belum ada dispesifikasi-nya. Aplikasikan desain hirarki yang sesuai Optimisasi Aplikasikan optimisasi 2-level dan multiple-level Gambar diagram logika atau buatlah netlist untuk menyelesaikan rangkaian dengan menggunakan AND, OR, dan inverter
Prosedur Desain. Teknologi Pemetaan/mapping Petakan diagram logika atau netlist ke teknologi implementasi yang dipilih. Verifikasi Verifikasikan kebenaran dari desain yang sudah final secara manual atau dengan simulasi.
Contoh Desain: Spesifikasi Kode Konverter BCD ke Excess-3 Nyatakan kode BCD untuk digit desimal ke kode Excess-3 untuk digit desimal Code word BCD untuk digit 0 sampai 9, dengan 4-bit , masing2: 0000 to 1001, Code word Excess-3 untuk digit 0 sampai 9, dengan 4-bit, merupakan penambahan 3 (binary 0011) ke masing2 code word BCD Implementasin-kan: Rangkaian multiple-level Gerbang NAND (termasuk inverters)
Contoh Desain (lanjutan): Formulasi Konversi-kan kode 4-bit dengan tabel kebenaran. Variabel - BCD: A,B,C,D Variabel - Excess-3 W,X,Y,Z Don’t Cares - BCD 1010 to 1111
Contoh Desain (lanjutan): Optimisasi * Dengan 2-level K-maps W = A + BC + BD X = C + D + B Y = CD + Z = B C D A 1 3 2 4 5 7 6 12 13 15 14 8 9 11 10 X w z y x B B C D C D D
Contoh Desain (lanjutan): Optimisasi (lanjutan) Multiple-level menggunakan transformasi W = A + BC + BD X = C + D + B Y = CD + Z = G = 7 + 10 + 6 + 0 = 23 Dilakukan ekstraksi , pencarian faktor: T1 = C + D W = A + BT1 X = T1 + B Y = CD + Z = G = 2 + 4 + 7 + 6 + 0 = 19 B C D B C D C D D
Contoh Desain (lanjutan): Optimisasi (lanjutan) Multiple-level menggunakan transformasi T1 = C + D W = A + BT1 X = T1 + B Y = CD + Z = G = 19 Tambahan ekstraksi tidak ditunjukkan pada text bila dengan Boolean transformasi : ( = C + D = ): W = A + BT1 X = T1 + B Y = CD + Z = G = 2 + 4 + 6 + 4 + 0 = 16! B C D C D T1 B T1 D
Contoh Desain (lanjutan): Teknologi Pemetaan: Mapping dengan library berisi inverters dan 2-input NAND, 2-input NOR, and 2-2 AOI gates A B C D W X Y Z
Dimulai dari Desain Hirarki Untuk mengontrol kompleksitas dari pemetaan fungsi inputs ke outputs: Ringkaslah fungsi ke bagian2 yang lebih kecil – disebut Blok Ringkaslah masing2 fungsi blok ke blok2 yang lebih kecil – ulangi sampai seluruh blok sudah cukup kecil. Setiap blok yang sudah tidak dapat diringkas disebut: primitive block Kumpulan seluruh blok termasuk peringkasan-nya adalah suatu hierarchy Contoh: 9- pohon input paritas (lihat slide berikut) Level Atas: 9 inputs, 1- output Level ke-2: Empat 3-bit pohon paritas ganjil pada 2-levels Level ke-3: Dua 2-bit fungsi exclusive-OR Primitives: Empat 2-input gerbang NAND Desain membutuhkan 4 X 2 X 4 = 32 dari 2-input gerbang NAND
Contoh Hirarki untuk Pohon Paritas X X X 1 X 2 9-Input X 3 odd Z X 4 O function X 5 X X 6 A 3-Input X 7 X A odd B 8 1 1 O function (a) Symbol for circuit X A 2 2 X A A 3 3-Input 3-Input X 4 A odd 1 B A odd O 1 B Z function function O O X A A 5 2 2 X A 6 3-Input X A odd 7 1 B O function X A 8 2 (b) Circuit as interconnected 3-input odd function blocks A A B 1 O A 2 (c) 3-input odd function circuit as interconnected exclusive-OR blocks (d) Exclusive-OR block as interconnected NANDs
Fungsi Reusable Bila memungkinkan, akan diusahakan meringkas suatu desain yang kompleks kedalam kesatuan, reusable function blocks Blok tersebut adalah Terverifikasi dan didokumentasikan secara baik. Ditempatkan pada library untuk dapat dipakai kedepan.
Top-Down versus Bottom-Up Suatu top-down design diproses dari yang abstrak, spesifikasi level atas ke desain yang lebih detail sekali dengan mengkoposisikan kembali dengan baik dan cermat. Suatu bottom-up design diawali dengan detail blok primitif dan mengkombinasikan nya ke blok fungsi yang lebih besar dan lebih kompleks. Desain umumnya memproses top-down untuk mengetahui building blocks dari CPU yang lengkap ke gerbang logika primitif atau komponen elektronik. Pada bab ini lebih banyak belajar tentang kombinasional blok yang digunakan pada desain top down.
Teknologi Pemetaan Prosedur Pemetaan Ke gerbang NAND Ke gerbang NOR Pemetaan yang meliputi ke berbagai tipe dari blok logika secara utuh, perlu membaca tambahan : Advanced Technology Mapping.
Pemetaan ke gerbang NAND Asumsi: Loading dan delay dari gerbang diabaikan. Cell library berisi inverter dan n-input gerbang NAND, n = 2, 3, … Skema dari AND, OR, inverter untuk rangkaian memungkinkan Pemetaan diselesaikan dengan : Menggantikan simbol AND dan OR, Memasukkan inverter ke rangkaian fan-out points, dan Meng-cancel inverter pairs
Algoritma Pemetaan NAND Gantikan AND dan OR: Ulangi langkah2 berikut –nya sampai ada paling tidak satu inverter antara : Input rangkaian atau pemicu output gerbang NAND dan Gerbang input NAND terkait
Contoh Pemetaan NAND
Pemetaan ke gerbang NOR Asumsi: Loading dan delay dari gerbang diabaikan. Cell library berisi inverter dan n-input gerbang NAND, n = 2, 3, … Skema dari AND, OR, inverter untuk rangkaian memungkinkan Pemetaan diselesaikan dengan : Menggantikan simbol AND dan OR, Memasukkan inverter ke rangkaian fan-out points, dan Meng-cancel inverter pairs
Algoritma Pemetaan NOR Gantikan AND dan OR: Ulangi langkah2 berikut –nya sampai ada paling tidak satu inverter antara : Input rangkaian atau pemicu output gerbang NAND dan Gerbang input NAND terkait
Contoh Pemetaan NOR A A B B 2 X 1 F C C F 3 D D E E (a) (b) B C F D E
Verifikasi Verifikasi- menunjukkan desain rangkaian final mengimplementasikan spesifikasi asli/yang seharusnya’ Spesifikasi yang sederhana: tabel kebenaran/truth tables Persamaan Boolean Kode HDL Bila hasil dari bentuk formulasi diatas seperti bukan spesifikasi asli, ini sangat kritis bahwa proses formulasi kecil kemungkinan untuk verifikasi menjadi valid!
Metode Verifikasi Dasar. Analisa Logika Manual Carilah tabel kebenaran atau persamaan Boolean untuk rangkaian final. Bandingkan tabel kebenaran rangkaian final dengan tabel kebenaran yang dispesifikasikan. atau Tunjukkan bahwa persamaan Boolean untuk rangkaian final adalah sama dengan persamaan Boolean yang dispesifikasikan. Simulasi Simulasikan rangkaian final (atau netlist-nya, kemungkinan dituliskan dalam HDL) dan tabel kebenaran yang dispesifikasi- kan, persamaan atau diskripsi HDL dengan menggunakan test nilai input yang koreksi dan validasinya baik. Test untuk rangkaian kombinasional adalah aplikasi dari semua kemungkinan “care” kombinasi input dari spesifikasinya.
Contoh Verifikasi : Analisa Manual Konversi Kode BCD-ke-Excess 3 Carilah Persamaan Boolean SOP dari rangkaian final Carilah tabel kebenaran dari persamaan ini. Bandingkan dengan tabel kebenaran yang diformulasikan. Carilah Persamaan Boolean: T1 = C + D = C + D W = A (T1 B) = A + B T1 X = (T1 B) (B ) = T1 + B Y = C + D = CD + C D B C D D C C D
Contoh Verifikasi : Analisa Manual Carilah tabel kebenaran rangkaian dari persamaan dan bandingkan dengan tabel kebenaran yang dispesifikasikan. Input BCD A B C D Output Excess - 3 WXYZ 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 Input BCD A B C D Output Excess - 3 WXYZ 0 0 0 0 0 0 1 1 0 0 0 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 Since the outputs are not specified for the don’t cares, no analysis for correctness is needed. Tabel telah sesuai!!
Contoh Verifikasi : Simulasi Prosedur Simulasi: Gunakan schematic editor atau text editor untuk memasukkan representasi level gerbang dari rangkaian final. Gunakan waveform editor atau text editor untuk memasukkan test yang terdiri dari urutan kombinasi input untuk diaplikasikan pada rangkaian. Test ini akan memberikan garansi kebenaran dari rangkaian bila respon simulasinya adalah benar. Penerapan semua kemungkinan “care” kombinasi input, generasi beberapa test akan menjadi sulit.
Contoh Verifikasi : Simulasi Masukkan Rangkaian skema Konverter Kode BCD-to-Excess-3 . AOI symbol not available
Contoh Verifikasi : Simulasi Masukkan waveform yang mengaplikasikan semua kemungkinan kombinasi input. Apakah semua kombinasi input BCD ada? (Low adalah nol dan high adalah satu) Yes, 0000 through 1001 are present.
Contoh Verifikasi : Simulasi Jalankan simulasi dari rangkaian untuk 120 ns Apakah simulasi kombinasi output cocok dengan tabel kebenaran yang asli? Yes, the output combinations 0011 through 1100 occur in response to 0000 through 1001, respectively.
Terms of Use All (or portions) of this material © 2008 by Pearson Education, Inc. Permission is given to incorporate this material or adaptations thereof into classroom presentations and handouts to instructors in courses adopting the latest edition of Logic and Computer Design Fundamentals as the course textbook. These materials or adaptations thereof are not to be sold or otherwise offered for consideration. This Terms of Use slide or page is to be included within the original materials or any adaptations thereof.
PR dan Tugas 3-2 3-3 3-8 3-10 Kerjakan di kelas: Buatlah suatu rangkaian kombinasi jika keluaran =1 bila input variabel (4 bit) mempunyai jumlah ‘1’ lebih besar dari ‘0’