Operasi yang berhubungan dengan data yang tersimpan di dalam register atau flip-flop dinamakan mikrooperasi (microoperation) seperti load, clear, shift, dan rotate. Load adalah operasi untuk memuati atau mengisi data ke dalam register, clear merupakan operasi menghapus data dalam register, shift atau geser adalah operasi untuk menggeser posisi data dalam register ke kiri atau ke kanan, dan rotate merupakan operasi untuk memutar data ke kiri atau ke kanan. Selain itu, terdapat pula mikrooperasi aritmetika seperti penambahan, pengurangan, perkalian, pembagian, increment (penambahan dengan 1) dan decrement (pengurangan dengan 1) terhadap isi suatu register, serta operasi mikro logika seperti AND, OR, dan NOT. Andang, Elektronika Komputer Digital 1
Kecuali dapat dioperasikan dengan berbagai mikrooperasi seperti di atas, data yang tersimpan di dalam register juga dapat dipindah dari satu register ke register yang lain melalui operasi transfer. Pada operasi ini, isi suatu register yang dipindah ke register lain, setelah operasi dilakukan keadaannya tetap atau tidak berubah. Dengan kata lain, operasi transfer merupakan proses penyalinan data. Dalam hal ini, register yang isinya disalin dinamakan register sumber (source register) dan register penampung data salinan dinamakan register tujuan (destination register). Mekanisme transfer data dapat dilakukan dengan berbagai cara antara lain transfer paralel, transfer seri, transfer bus, dan transfer memori. Andang, Elektronika Komputer Digital 2
Notasi dan simbol mikrooperasi: Simbol Register: Transfer Register 7 0 REGISTER A A7 A6 A5 A4 A3 A2 A1 A0 11 8 7 0 OPCODE OPERAND Andang, Elektronika Komputer Digital 3
Notasi dan simbol mikrooperasi: Transfer Register Nama Register: huruf kapital (huruf besar), contoh: R0, R1, A, B, C, MBR, MAR, PC, IR, dan lain-lain. Simbol transfer adalah tanda panah ke kiri ( ), contoh: P: A B Artinya: Jika ada sinyal pengontrol P, maka terjadi transfer paralel dari register B ke register A. Simbol sinyal kontrol adalah titik dua (:). Tanda koma digunakan untuk memisahkan dua mikrooperasi, contoh: P: A B, C B Isi Register: MBR[OPERAND]: isi MBR pada bit ke-0 s.d. Ke-7 atau MBR[0-7] Andang, Elektronika Komputer Digital 4
1. Transfer Paralel Pada transfer data paralel, pemindahan atau penyalinan data dari register sumber ke register tujuan dilaksanakan secara serempak. Artinya, semua data yang tersimpan pada setiap flip-flop yang merupakan elemen-elemen register sumber disalin secara serempak ke register tujuan. Mikrooperasi transfer paralel dinyatakan sebagai berikut: P: A B A: register tujuan B: register sumber Transfer Register Andang, Elektronika Komputer Digital 5
Implementasi hardware dan timing diagram dari mikrooperasi transfer paralel: P: A B CLOCK REGISTER A LOAD P KONTROL REGISTER B CLOCK P Transfer terjadi di sini Andang, Elektronika Komputer Digital 6
2. Transfer Seri Transfer Register Pada transfer data seri, pemindahan data dilakukan bit demi bit. Untuk menyelenggarakan proses ini diperlukan register geser atau register seri. Transfer ini juga memerlukan operasi rotate atau putar sehingga output LSB register sumber (B0) selain dihubungkan ke input MSB register tujuan (A3), juga diumpankan ke inputnya sendiri yakni input MSB (B3). Untuk register 4-bit, mikrooperasi transfer seri dapat ditulis: S: A3 B0, B3 B0, Ai Ai+1, Bi Bi+1 i=0,1,2 Andang, Elektronika Komputer Digital 7
Implementasi hardware dan timing diagram dari mikrooperasi transfer seri dengan register 4-bit. S Input Serial LOAD REGISTER B Output Serial LOAD Input Serial REGISTER A CLOCK CLOCK S Transfer terjadi di sini Andang, Elektronika Komputer Digital 8
3. Transfer Bus Transfer Register Transfer bus dilakukan melalui dua tahap, yakni transfer dari register sumber ke bus, dan transfer dari bus ke register tujuan. Untuk dua buah register sumber yakni A dan B serta empat buah register tujuan yakni R0, R1, R2, dan R3, mikrooperasi kedua tahap tersebut adalah sebagai berikut. a) Transfer dari register sumber ke bus: X: BUS A X: BUS B b) Transfer dari bus ke register tujuan: P Q: R0 BUS P Q: R1 BUS P Q: R2 BUS P Q: R3 BUS Andang, Elektronika Komputer Digital 9
Implementasi hardware dari kedua mikrooperasi transfer bus untuk register 4-bit. A 3 A 2 A 1 A 0 B 3 B 2 B 1 B 0 1 0 MUX 1 0 MUX 1 0 MUX 1 0 MUX X BUS DATA BUS DATA LOAD LOAD LOAD LOAD R0 R1 R2 R3 Q P 0 1 0 1 2 3 DEKODER 2 KE 4 Andang, Elektronika Komputer Digital 10
4. Transfer Memori Transfer Register Pada transfer memori terdapat dua operasi yakni operasi baca (read) dan operasi tulis (write). Transfer memori melibatkan dua buah register yakni MAR (Memory Address Register) dan MBR (Memory Buffer Register). MAR merupakan register yang berisi kode alamat/lokasi memori yang akan dibaca/ditulisi, dan MBR merupakan register yang berfungsi menampung data hasil pembacaan pada operasi baca atau data yang akan disimpan ke memori pada operasi tulis. Operasi baca merupakan penyalinan data dari lokasi/alamat memori yang ditunjuk oleh isi register MAR ke register MBR, sedangkan operasi tulis merupakan penyalinan data dari MBR ke lokasi/alamat memori yang ditunjuk oleh isi register MAR. Andang, Elektronika Komputer Digital 11
Mikrooperasi untuk kedua operasi ini dapat ditulis sebagai berikut: a) Mikrooperasi baca memori: Read: MBR M[MAR] Mikrooperasi tersebut dapat diartikan jika ada sinyal kontrol read, maka data yang ada pada alamat memori yang ditunjuk oleh isi register MAR disalin ke register MBR. Jika isi register MAR 03FC heksadesimal, maka mikrooperasi tersebut akan menyebabkan data pada alamat memori 03FC heksadesimal disalin ke register MBR. b) Mikrooperasi tulis memori: Write: M[MAR] MBR Kebalikan dari operasi baca, pada operasi tulis jika ada sinyal kontrol write, maka data yang ada pada MBR disalin ke alamat memori yang lokasinya ditunjuk oleh MAR. Andang, Elektronika Komputer Digital 12
Implementasi hardware dari kedua mikrooperasi transfer memori, menggunakan MAR tunggal dan MAR ganda. MAR Bus Alamat Unit Memori Read Write MAR1 MAR2 MUX Bus Alamat Unit Memori Read Write Bus Data Pemilih Bus Data MBR MBR Andang, Elektronika Komputer Digital 13
Contoh arsitektur mikroprosesor tipe SMS32V50 Andang, Elektronika Komputer Digital 14