Bus 3-State Sistem bus dapat dibangun dari gerbang 3-keadaan Gerbang 3-keadaan adalah rangkaian digital yang mempunyai 3-keadaan. 2- keadaan adalah logika ‘0’ dan ‘1’, dan keadaan ke-3 adalah keadaan high impedance Keadaan high impedance seperti rangkaian terbuka, yang berarti output terputus dan tidak dalam keadaan ‘0’ atau ‘1’
Bus 3-State Simbol Buffer 3-state Bagian input: input normal dan input kendali. Input kendali menentukan keadaan output. Input kontrol berlogika ‘1’, output dalam kondisi enable, dan akan berlaku seperti buffer konvensional. Jika input kontrol berlogika ‘0’, maka output akan dalam kondisi disable dan gerbang dalam keadaan high impedance
Bus 3-State Konstruksi sistem bus dengan buffer 3-state
Bus 3-State Untuk membentuk common bus 4-register n-bit menggunakan 3-state buffer, diperlukan n rangkaian dengan empat buffer masing-masing (seperti pada gambar sebelumnya). Masing- masing grup 4 buffer menerima satu significant bit dari empat register
Transfer Menori Transfer informasi dari memori disebut dengan operasi READ Transfer informasi baru dan kemudian disimpan pada memori disebut dengan operasi WRITE Memori disimbolkan dengan M Unit memori menerima alamat dari register yang disebut dengan address register (AR). Data ditransfer ke register, disebut dengan data register (DR). Operasi baca dapat disimbolkan: Read: DR M(AR) Terjadi transfer informasi ke register DR dari memori dengan alamat yang tersimpan dalam register AR
Transfer Memori Operasi write: mentransfer isi data register ke memori M pada alamat yang terpilih Anggap input data adalah register R1 dan alamat tersimpan pada AR. Operasi write dapat disimbolkan sebagai: Write: M(AR) R1 Yang akan menyebabkan transfer informasi dari R1 ke memori dengan alamat yang ditentukan oleh register AR
Mikrooperasi Aritmetik Mikrooperasi merupakan operasi dasar yang terdapat pada data yang tersimpan dalam register Mikrooperasi diklasifikasikan dalam 4 kategori: Mikrooperasi transfer register Mikrooperasi aritmetika Mikrooperasi logika Mikrooperasi penggeseran (Shift)
Mikrooperasi Aritmetik Mikrooperasi aritmetika dasar: penjumlahan, pengurangan, increment, decrement, dan shift Mikrooperasi penjumlahan disimbolkan sebagai: R3 R1 + R2 menyatakan bahwa isi register R1 dijumlahkan dengan isi register R2 dan hasilnya ditransfer di register R3
Mikrooperasi Aritmetik Tabel Mikrooperasi Aritmetika Dasar tidak termasuk operasi perkalian dan pembagian karena lebih kompleks
Binary Adder Untuk mengimplementasikan mikrooperasi penjumlahan dengan hardware, diperlukan register untuk menyimpan data sementara dan komponen digital yang membentuk operasi penjumlahan. Rangkaian digital yang digunakan untuk penjumlahan adalah full-adder. Rangkaian digital yang digunakan untuk menjumlahkan dua bilangan biner disebut dengan binary adder Binary adder dibentuk dari rangkaian full-adder yang di-kaskade-kan. Carry output dari full- adder dihubungkan dengan input carry full- adder berikutnya
Binary Adder Rangkaian Binary Adder 4-bit
Binary Adder-Subtractor Pengurangan bilangan biner dapat dilakukan dengan operasi komplemen Pengurangan A - B dapat dilakukan dengan penjumlahan A dengan 2’s complement dari B Penjumlahan dan pengurangan dapat dikombinasikan menjadi satu rangkaian bersama dengan menggunakan gerbang XOR pada tiap full-adder
Binary Adder-Subtractor Rangkaian Input M sebagai pengendali operasi
Binary Adder-Subtractor M = 0 sebagai adder Saat M = 0, diperoleh B 0 = B. Full adder menerima B dengan carry input 0 sehingga akan mengerjakan A plus B M = 1 sebagai subtractor Saat M = 1, diperoleh B 1 = B’ dan C0 = 1. Karena B’ + 1 merupakan operasi 2’s complement dari B, maka full adder akan mengerjakan operasi A - B
Binary Incrementer Mikrooperasi increment menambah satu ke bilangan yang ada pada register Contoh: nilai 0110 akan menjadi 0111 setelah diincrement Mikrooperasi dapat diimplementasikan dengan counter biner Cara yang lain: dapat diimplementasikan dengan menggunakan half-adder
Binary Incrementer Rangkaian Binary Incrementer
Rangkaian Aritmetik Mikrooperasi aritmetik dapat diimplentasikan dalam sebuah rangkaian aritmetik. Komponen dasar penyusunnya adalah paralel adder. Dengan mengontrol input data ke adder, memungkinkan untuk memperoleh operasi aritmetika yang berbeda
Rangkaian Aritmetik - One Stage of Arithmetic Circuit
Rangkaian Aritmetik Terdiri dari 4 full-adder dan 4 buah multiplekser untuk memilih operasi yang berbeda Terdapat 2 input 4 bit A dan B dan 4-bit output D. Input A terhubung langsung dengan input X pada adder. 4 bit input B terhubung dengan input multiplekser. Multiplekser juga menerima data komplemen B, logika ‘0’ dan ‘1’. Multiplekser dikendalikan oleh input selektor S1 dan S0.
Rangkaian Aritmetik Keluaran binary adder dihitung dari penjumlahan aritmetik berikut D = A + Y + Cin dengan A adalah bilangan biner 4-bit, Y adalah bilangan biner 4 bit. Cin adalah carry input. Dengan mengatur Y dan input seleksi S1 dan S0 dan membuat Cin ‘1’ atau ‘0’, dimungkinkan untuk membuat 8 mikrooperasi aritmetik
Rangkaian Aritmetik
Mikrooperasi Logika Merupakan operasi biner terhadap string atau bit yang disimpan pada register Sebagai contoh, mikrooperasi XOR terhadap register R1 dan R2 disimbolkan dengan pernyataan: P: R1 R1 R2 yang menyatakan bahwa mikrooperasi logika dieksekusi untuk setiap bit individual jika variabel kendali P = 1
Mikrooperasi Logika Contoh: Digunakan simbol spesial untuk mikrooperasi OR, AND, dan komplemen, yaitu ,
Mikrooperasi Logika Contoh: P + Q: R1 R2 + R3, R4 R5 R6 + menunjukkan penjumlahan aritmetik menunjukkan operasi OR
Mikrooperasi Logika
Mikrooperasi Logika Tabel Kebenaran untuk 16 Fungsi
Implementasi Hardware One stage of logic circuit
Aplikasi Mikrooperasi logika berguna untuk memanipulasi bit-bit secara individual atau sebagaian bit yang tersimpan pada register Dapat digunakan untuk memanipulasi nilai bit, men-delete kelompok bit tertentu, atau meng-insert-kan bit tertentu pada register Contoh-contoh berikut menunjukkan bit pada register A akan dimanipulasi dengan menggunakan mikrooperasi. Register A adalah register prosesor
Aplikasi - Selective-set Operasi selective-set membuat nilai bit pada register A bernilai ‘1’ dengan cara membuat bit ‘1’ pada register B Kedua operand dioperasikan OR
Aplikasi - Selective-complement Membalik (mengkomplemenkan) bit-bit register A dengan bit ‘1’ pada register B Kedua operand dioperasikan XOR
Aplikasi - Selective-clear Meng-clear bit-bit register A dengan nilai ‘1’ pada register B Mikrooperasi logika sebagai berikut
Aplikasi - Operasi Mask Meng-clear bit-bit register A dengan nilai bit ‘0’ pada register B Kedua operand dioperasikan AND
Aplikasi - Operasi Insert Memasukkan nilai baru ke dalam kelompok bit Dilakukan dengan cara masking dan kemudian meng-OR-kan dengan nilai yang diinginkan
Aplikasi - Clear Membandingkan dua register A dan B dan menghasilkan 0 jika dua bilangan sama
Mikrooperasi Geser Mikrooperasi geser digunakan untuk transfer data serial Juga digunakan bersama-sama dengan operasi aritmetika, logika dan pengolahan data lain Data pada register dapat digeser kiri atau kanan
Mikrooperasi Geser - Geser Logika Geser logika adalah transfer 0 melalui input serial Simbol: shl dan shr Contoh: R1 shl R1 R2 shr R2 merupakan mikrooperasi yang menggeser 1 langkah ke kiri isi register R1 atau menggeser 1 langkah ke kanan isi register R2
Mikrooperasi Geser - Geser Circular (rotasi) Merotasikan bit register melalui kedua ujungnya tanpa mengalami kehilangan informasi Dilakukan dengan menghubungkan output serial dengan input serialnya Menggunakan simbol: cil dan cir
Mikrooperasi Geser - Tabel
Mikrooperasi Geser - Penggeseran Aritmetik Merupakan mikrooperasi yang menggeser bilangan biner bertanda ke kiri atau ke kanan Arithmetic shift-left: mengalikan dengan 2 Arithmetic shift-right: membagi dengan 2 harus tidak mengubah bit tanda karena tanda bilangan harus sama saat dibagi atau dikalikan dua
Mikrooperasi Geser - Penggeseran Aritmetik Arithmetic Shift-Right Arithmetic Shift-Left: insert bit ‘0’ ke R0, dan geser semua bit ke kiri. Jika terjadi perubahan bit tanda berarti terjadi overflow. Overflow Vs dapat dideteksi dengan: Vs = 0 tidak overflow, Vs =1 overflow
Mikrooperasi Geser - Implementasi Hardware Implementasi dilakukan dengan menggunakan paralel load Informasi dapat ditransfer melalui register secara paralel dan kemudian digeser ke kiri ataupun ke kanan Dalam konfigurasi ini, diperlukan pulsa clock untuk memuat data ke register, dan clock lain untuk menginisiasi pergeseran
Mikrooperasi Geser - Implementasi Hardware
Arithmetic Logic Shift Unit Aritmetik, logika dan rangkaian penggeseran dapat dikombinasikan menjadi sebuah ALU dengan variabel selektor bersama
Arithmetic Logic Shift Unit
Arithmetic Logic Shift Unit
Diskusi Any Questions??