Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Transfer Register dan Mikrooperasi

Presentasi serupa


Presentasi berjudul: "Transfer Register dan Mikrooperasi"— Transcript presentasi:

1 Transfer Register dan Mikrooperasi

2 Bahasa Transfer Register
Sistem digital merupakan interkoneksi modul-modul perangkat keras digital yang melakukan tugas-tugas khusus. Sistem digital  bervariasi dalam ukuran dan kompleksitas, dari rangkaian dengan sedikit IC sampai rangkaian yang kompleks (komputer digital) Perancangan dilakukan secara modular  modul-modul tersebut terdiri atas register, dekoder, modul-modul aritmetik, rangkaian pengendali, dll)

3 Bahasa Transfer Register
Modul-modul digital dengan baik didefinisikan oleh register yang dimilkinya dan operasi-operasi yang dilakukan pada register tersebut Operasi-operasi yang dilakukan terhadap data yang tersimpan dalam register disebut dengan mikrooperasi Mikrooperasi merupakan operasi dasar yang terjadi pada informasi yang disimpan pada satu atau lebih register

4 Bahasa Transfer Register
Organisasi perangkat keras internal dari suatu komputer digital didefinisikan dengan menentukan Serangkaian register yang ada dan fungsinya Urutan mikrooperasi dilakukan pada informasi biner yang disimpan pada register Pengendali yang menginisiasikan urutan mikrooperasi

5 Transfer Register Register komputer disimbolkan dengan huruf kapital (kadang-kadang diikuti dengan angka indeks) untuk menunjukkan fungsi dari register Contoh: MAR (memory address register) yang digunakan untuk menyimpan alamat memori PC (Program Counter), IR (Instruction Register), R1 (register prosesor), dll

6 Transfer Register Flip-flop dalam register n-bit dinomori dengan 0 hingga n-1. Dengan indeks 0 adalah pada flip-flop yang paling kanan

7 Transfer Register Transfer informasi antara satu register ke register yang lain ditunjukkan dengan simbol  Pernyataan R2  R1 menunjukkan bahwa terjadi transfer isi register R1 ke register R2. Isi register R1 tidak berubah

8 Transfer Register Transfer yang terjadi di bawah kendali sinyal kontrol dapat dinyatakan dengan pernyataan if-then If (P=1) then (R2  R1) dengan P adalah sinyal kendali yang dibangkitkan oleh bagian pengendali Variabel kendali P sering disebut dengan control function Control function berupa variabel Boolean yang bernilai 0 atau 1

9 Transfer Register Operasi transfer register yang melibatkan control function dapat dicontohkan sbb P: R2  R1 Pernyataan di atas menunjukkan bahwa operasi transfer register dieksekusi hanya jika P=1

10 Register Transfer

11 Register Transfer N-output register R1 dihubungkan dengan n-input register R2 Register R2 mempunyai load input yang diaktifkan oleh variabel kendali P Variabel kendali disinkronisasi dengan clock yang masuk ke register  P diaktifkan pada saat terjadi pulsa naik pada saat t. Pada saat transisi berikutnya pada t+1, terjadi transfer data dari R1 ke R2

12 Register Transfer Pernyataan T: R2  R1, R1  R2
menunjukkan operasi penukaran data pada dua register pada clock yang bersamaan hanya terjadi pada saat T=1

13 Transfer Bus dan Memori
Komputer digital mempunyai banyak register  diperlukan jalur yang memungkinkan terjadinya pertukaran data antar register Jumlah jalur akan semakin banyak jika tiap register saling dihubungkan secara fisik Cara yang efisien untuk transfer informasi antar register digunakan sistem common bus (bus bersama)

14 Transfer Bus dan Memori
Struktur bus terdiri atas set jalur bersama, satu untuk tiap bit register, hanya satu transfer bit yang diijinkan pada saat tertentu Sinyal kendali akan menentukan register mana yang dipilih oleh bus pada saat transfer Salah satu cara untuk membentuk sistem common-bus adalah dengan menggunakan multiplekser. Multiplekser akan menyeleksi register sumber dan kemudian meletakkan informasi biner pada bus

15 Transfer Bus dan Memori
Sistem bus untuk 4 register

16 Transfer Bus dan Memori
Masing-masing register terdiri atas 4-bit, dengan indeks Bus terdiri atas empat multiplekser 4x1, masing-masing mempunyai 4 input data dengan indeks , dan 2-bit input selektor S1 dan S0 Jalur seleksi S1S0 akan memilih 4-bit pada salah satu register dan menempatkannya pada common-bis 4 jalur. Saat S1S0 = 00, semua data berindeks 0 akan terpilih dan diletakkan pada sistem bus  sehingga terpilih register A

17 Transfer Bus dan Memori

18 Transfer Bus dan Memori
Sistem bus akan memilih k register dengan masing-masing berukuran n-bit untuk menghasilkan common bus n-jalur Jumlah multiplekser yang diperlukan adalah n (jumlah bit tiap-tiap register) Ukuran multiplekser adalah kx1 Contoh Common bus untuk 8 register 16 bit, memerlukan 16 buah multiplekser dengan ukuran 8x1

19 Transfer Bus dan Memori
Transfer informasi dari bus ke register tujuan dapat dilakukan dengan cara: menghubungkan jalur bus ke input register tujuan mengaktifkan kendali pada register yang terpilih Transfer register dapat disimbolkan sebagai BUS  C, R1  BUS Register C diletakkan di bus, dan isi BUS dimuat ke register R1 dengan cara mengaktifkan input kendalinya. Jika tidak memperhatikan sistem bus, pernyataan diatas dapat ditulis sebagai R1  C

20 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  sepeti rangkaian terbuka, yang berarti output terputus dan tidak dalam keadaan 0 atau 1

21 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

22 Bus 3-State Konstruksi sistem bus dengan buffer 3-state

23 Bus 3-State Untuk membentuk common bus 4-register n-bit menggunakan buffer 3-state, diperlukan n rangkaian dengan empat buffer masing-masing (seperti pada gambar sebelumnya). Masing-masing grup 4 buffer menerima satu significant bit dari empat register

24 Transfer Memori 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

25 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

26 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)

27 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

28 Mikrooperasi Aritmetik
Tabel Mikrooperasi Aritmetika Dasar tidak termasuk operasi perkalian dan pembagian  karena lebih kompleks

29 Binary Adder Untuk mengimplementasikan mikroopersi 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 menjumlahakan dua bilangan biner disebut dengan binary adder Binary adder dibentuk dari rangkaian full-adder yang di-kaskade-kan (disusun secara paralel). Carry output dari full-adder dihubungkan dengan input carry full-adder berikutnya

30 Binary Adder Rangkaian Binary Adder 4-bit

31 Binary Adder-Subtractor
Pengurangan bilangan biner dapat dilakukan dengan 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

32 Binary Adder-Subtractor
Rangkaian Input M sebagai pengendali operasi

33 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

34 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

35 Binary Incrementer Rangkaian Binary Incrementer

36 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

37 Rangkaian Aritmetik

38 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.

39 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

40 Rangkaian Aritmetik

41 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

42 Mikrooperasi Logika Contoh:
Digunakan simbol spesial untuk mikrooperasi OR, AND, dan komplemen, yaitu , 

43 Mikrooperasi Logika Contoh: P + Q: R1  R2 + R3, R4  R5  R6
+ menunjukkan penjumlahan aritmetik  menunjukkan operasi OR

44 Mikrooperasi Logika

45 Mikrooperasi Logika Tabel Kebenaran untuk 16 Fungsi

46 Rangkaian Unit Logika S1 S0 Output (E) A AND B 1 A OR B A EXOR B NOT A

47 Aplikasi Mikrooperasi logika berguna untuk memanipulasi bit-bit secara individual atau sebagaian bit yang tersimpan pada register Dapat digunakan untuk memanipulasi nilai bit, 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

48 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

49 Aplikasi - Selective-complement
Membalik (mengkomplemenkan) bit-bit register A dengan bit ‘1’ pada register B Kedua operand dioperasikan XOR

50 Aplikasi - Selective-clear
Meng-clear bit-bit register A dengan nilai ‘1’ pada register B Mikrooperasi logika sebagai berikut

51 Aplikasi - Operasi Mask
Meng-clear bit-bit register A dengan nilai bit ‘0’ pada register B Kedua operand dioperasikan AND

52 Aplikasi - Operasi Insert
Memasukkan nilai baru ke dalam kelompok bit Dilakukan dengan cara masking dan kemudian meng-OR-kan dengan nilai yang diinginkan

53 Aplikasi - Clear Membandingkan dua register A dan B dan menghasilkan 0 jika dua bilangan sama

54 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

55 Mikrooperasi Geser - Geser Logika
Geser logika adalah transfer 0 melalui input serial Simbol: shl dan shr Contoh: R1  shl R1 R2  shl R2 merupakan mikrooperasi yang menggeser 1 langkah ke kiri isi register R1 atau menggeser 1 langkah ke kanan isi register R2

56 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

57 Mikrooperasi Geser - Tabel

58 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

59 Mikrooperasi Geser - Penggeseran Aritmetik
Arithmetic Shift-Right Arithmetic Shift-Left: insert bit ‘0’ ke R0, dan geser demua bit ke kiri. Jika terjadi perubahan bit tanda berarti terjadi overflow. Overflow Vs dapat dideteksi dengan: Vs = 0  tidak overflow, Vs =1  overflow

60 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

61 Mikrooperasi Geser - Implementasi Hardware

62 Arithmetic Logic Shift Unit
Aritmetik, logika dan rangkaian penggeseran dapat dikombinasikan menjadi sebuah ALU dengan variabel selektor bersama

63 Arithmetic Logic Shift Unit

64 Arithmetic Logic Shift Unit

65 Diskusi Any Questions??


Download ppt "Transfer Register dan Mikrooperasi"

Presentasi serupa


Iklan oleh Google