IBP WIDJA, MT
Pendahuluan
Eksekusi instruksi melibatkan rangkaian sub-langkah yg disebut siklus. Setiap siklus terdiri atas rangkaian operasi fundamental yg disebut operasi mikro. Unit Kontrol memiliki 2 tugas:
Membuat processor melakukan operasi mikro pada urutan yg sesuai yg ditentukan oleh program Menghasilkan sinyal kontrol yg menyebabkan setiap operasi mikro bisa dieksekusi
Sinyal kontrol yg dihasilkan oleh unit kontrol akan mempengaruhi logic gate shg data dapat berpindah. Teknik untuk menerapkan unit kontrol dapat dilakukan sebagai implementasi Hardwire atau implementasi Termikroprogram
Operasi Mikro
Setiap satu instruksi dapat dianggap sbg susunan sejumlah satuan siklus yg lebih kecil, misal (Fetchexecute di pipeline). Setiap satuan siklus kecil tersebut terdiri dari langkah2 operasi mikro Kata mikro mengacu pada fakta bahwa tiap langkah adalah sederhana dan akan menyelesaikan operasi terkecil Operasi mikro merupakan operasi prosessor yang fungsional dan atomic.
t1: MAR <-- (IR (alamat)) t2: MBR <-- Memory t3: IR (alamat) <--( MBR (alamat))
Bidang alamat instruksi dipindahkan ke MAR Bidang alamat tersebut digunakan untuk mengambil alamat operand Alamat IR diperbaharui oleh MBR sedemikian shg berisi alamat langsung bukannya alamat tak langsung
op.Siklus Interupsi
Diakhir siklus eksekusi akan terjadi pengujian apakah ada interupsi, bila ada interupsi maka terjadilah siklus interupsi
Conoth Operasi mikro siklus interupsi serdernaha: t1: MBR <-- (PC) t2: MAR <-- Alamat_simpan PC <--- Alamat_rutin t3: Memory <-- (MBR)
op.Siklus Eksekusi
Siklus Eksekusi merupakan siklus yg tidak mudah untuk diprediksi dng demikian diambil contoh: ADD R1, X operasi mikro yg terjadi: t1: MAR<--IR(alamat) t2: MBR<--Memory t3: R1<--R1+MBR operasi diatas mrpk op. yg sangat sederhana, masih dibutuhkan beberapa op.lagi untuk menyimpan result ke memory
op.Siklus Instruksi
Jadi setiap fase siklus instruksi akan diuraikan menjadi rangkaian op.elementer. Seluruh rangkaian op.dapat digambarkan secara utuh dgn mengandaikan register 2-bit yg berisi ICC (Instruction Code Cycle):
Siklus tidak langsung selalu diikuti siklus eksekusi. Siklus Interupsi selalu diikuti siklus fetch Diagram dibawah menggambarkan rangkaian op.lengkap yg hanya tergantung rangkain instruksi dan pola interupsi
op.Siklus Instruksi
Jadi setiap fase siklus instruksi akan diuraikan menjadi rangkaian op.elementer. Seluruh rangkaian op.dapat digambarkan secara utuh dgn mengandaikan register 2-bit yg berisi ICC (Instruction Code Cycle):
Siklus tidak langsung selalu diikuti siklus eksekusi. Siklus Interupsi selalu diikuti siklus fetch Diagram dibawah menggambarkan rangkaian op.lengkap yg hanya tergantung rangkain instruksi dan pola interupsi
11 (interupsi)
ICC ?
00 (fetch)
Interupsi Setup
Opcode?
ICC=00
Eksekusi Instruksi
ya Interupsi ? tidak
ya
ICC=11
ICC=00
ICC=10
ICC=01
Kontrol Prosessor
Definisi fungsional dari tentang apa yang dilakukan oleh unit kontrol adalah:
Pengurutan: unit kontrol menyebabkan prosessor menuju sejumlah operasi mikro dalam urutan yg benar berdasarkan pada program yang sedang dieksekusi Eksekusi: Unit kontrol menyebabkan setiap operasi mikro dilakukan
Sinyal Kontrol
Spesifikasi eksternal: Dalam melaksanakan fungsinya, Unit Kontrol harus memiliki input yg memungkinkan untuk mengetahui status sistem dan memiliki output yg dapat mengatur prilaku sistem Spesifikasi internal: Unit kontrol harus memiliki logika yg diperlukan untuk membentuk fungsi pengurutan dan fungsi eksekusinya
Elemen2 sinyal kontrol: Sinyal yg mengaktivasi fungsi-fungsi ALU Sinyal yg mengaktivasi alur-alur data Sinyal pd bus sistem eksternal atau interface lainnya
Sinyal Kontrol dalam CPU Flag Unit Kontrol Clock Sinyal Kontrol dari bus sistem
Implementasi Hardwired
Unit kontrol merupakan rangkaian kombinatorial. Sinyal-sinyal logika inputnya akan didekodekan menjadi sinyal-sinyal logika output, yang merupakan sinyal-sinyal kontrol ke sistem komputer. Sinyal-sinyal input tersebut, seperti clock, flag, register instruction, dan sinyal kontrol merupakan input bagi unit kontrol untuk mengetahui status komputer. Sinyal keluaran yang dihasilkan akan mengendalikan sistem kerja komputer. N buah input biner akan menghasilkan 2N output biner. Setiap instruksi memiliki opcode yang berbeda beda. Opcode yang berbeda dalam instruksi akan menghasilkan sinyal kontrol yang berbeda pula. Pewaktu unit kontrol mengeluarkan rangkaian pulsa yang periodik. Pulsa waktu ini digunakan untuk mengukur durasi setiap operasi mikro yang dijalankan CPU, intinya digunakan untuk sinkronisasi kerja masing-masing bagian.
Implementasi Hardwired...
Memiliki kompleksitas dalam pengurutan dan operasi mikronya Sulit didesain dan dilakukan pengetesan Tidak fleksibel Sulit untuk menambahkan instruksi baru
A Matrix of Times at which Each Control Signal Must Be Active in Order to Execute the Hard-wired Basic Computer's Instructions
Control Signal: IP LP EP LM R W LD ED LI EI LA EA A S EU LB
Instruction:
----------------------------------------------------------------------------"Fetch" LDA STA MBA ADD SUB JMP JN T3 T3*NF T4 T4 T3 T3*NF T2 T0 T0 T1 T3 T4 T3 T5 T4 T5 T2 T2 T3 T5 T3 T3 T3 T4 T3 T4
T3 T4
Implementasi Microprogrammed
Implementasi yang paling reliabel saat ini adalah implementasi microprogrammed. Unit kontrol memerlukan sebuah memori untuk menyimpan program kontrolnya. Fungsifungsi pengontrolan dilakukan berdasarkan program kontrol yang tersimpan pada unit kontrol. Selain itu, fungsifungsi pengontrolan tidak berdasarkan dekode dari input unit kontrol lagi. Teknik ini dapat menjawab kesulitankesulitan yang ditemui dalam implementasi hardwired.
Register alamat kontrol berisi alamat instruksi mikro berikut yg akan dibaca
Ketika instruksi mikro dibaca dari memori kontrol, instruksi tersebut dipindahkan ke register buffer kontrol
Sequence logic memuatkan register alamat kontrol dan mengelarkan instruksi read
Untuk mengeksekusi instruksi SL mengeluarkan read ke CM Word yg terbaca dng alamat dari CAR akan ditransfer dari CM ke CBR Isi dari CBR menghasilkan sinyal kontrol & informasi alamat berikutnya untuk menuntun SL SL akan memuat sebuah alamat baru ke CAR berdasarkan informasi dari CBR dan ALU flag Semua kejadian diatas terjadi selama 1 pulsa clock
Kelebihan:
Dapat menyederhanakan perancangan unit kontrol Lebih murah dan lebih sedikit kesalahan yg bisa terjadi pada saat implementasi Penerapan Sequence Logic dan Dekoder merupakan bagian logika yg mudah daripada unit kontrol hardwire yg merupakan circuit logic yg sangat kompleks . Unit Termikroprogram akan lebih lambat daripada unit hardwired
Kekurangan
Teknik ini banyak pada CISC dan unit kontrol hardwired lebih digunakan pada RISC
Pada dasarnya eksekusi ini adalah untuk menghasilkan sinyal-sinyal kontrol Sebagian sinyalsinyal tersebut menuju ke dalam CPU dan sebagian lagi ke bus kontrol eksternal atau antarmuka eksternal lainnya
Semenjak pemrograman mikro populer di th 1960 maka terdapat banyak variasi implementasi. Aplikasi tsb meliputi:
Realisasi Komputer Emulasi : mengemulasi mesin lain Dukungan sistem operasi: peningkatan kinerja dng implementasi bentuk2 primitif untuk menggantikan bagian penting software SO Realisasi spesial equipment: Card modem, dsg Dukungan bahasa tingkat tinggi: Jenis yg dapat langsung diterapkan pada firmware Cobol, Foltran Dianostic mikro: firmware untuk mendukung pengawasan, pendeteksian, isolasi dan perbaikan kesalahan sistem Penyesuaian pemakai: memori kontrol pd RAM bukan ROM shg user dapat melakukan program mikro sesuai dengan keperluan user tsb.
end of slide