organisasi & arsitektur komputer 2 unit control ibp widja, mt
DESCRIPTION
ORGANISASI & ARSITEKTUR KOMPUTER 2 UNIT CONTROL 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: - PowerPoint PPT PresentationTRANSCRIPT
ORGANISASI & ARSITEKTUR KOMPUTER 2
UNIT CONTROL
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 (Fetch–execute 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.
Elemen2 Eksekusi Program
op. Siklus Fetch
Contoh Siklus Fetch: Saat awal PC berisi 1100100 Memindahkan alamat ke
MAR Bus Alamat mengandung
alamat yg disimpan di MAR Unit kontrol mengeluarkan
perintah READ pada kontrol bus. Hasilnya muncul di bus data dan disalin ke MBR
Untuk menyiapkan instruksi berikutnya PC dinaikkan 1
Lankah terakhir adalah memindahkan isi MBR ke IR
Dengan demikian siklus Fetch sederhana sebenarnya terdiri atas 3 langkah dan 4 operasi mikro
Secara simbolik dapat ditulis sbb:
t1: MAR <-- (PC) t2: MBR <-- Memory PC <-- (PC) + I t3: IR <-- (MBR) t1,t2 dan t3 mrpk unit waktu
yg berdurasi sama & berurutan
Urutan Event op.Siklus Fetch
op.Siklus Fetch tak langsung
Operasi mikro sederhana untuk siklus fetch tidak langsung:
t1: MAR <-- (IR (alamat))t2: MBR <-- Memoryt3: 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_rutint3: Memory <-- (MBR)
Isi PC ditransfer ke MBR MAR kemudian dimuati oleh
alamat isi PC yg akan disimpan. PC akan dimuati awal rutin pengolahan interupsi.
Menyimpan MBR yg berisi isi PC yg lama ke dalam memori
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
Contoh lain eksekusi branch and save address pd instruksi:
BSA X Alamat instruksi yg berada
setelah instruksi BSA disimpan di lokasi X. Dan eksekusi dilanjutkan pada lokasi X+1
op. nya: t1: MAR<--(IR (Alamat))
MBR<--(PC) t2: PC<--(IR (Alamat))
memory<--(MBR) t3: PC<--(PC) + I
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):
00: Fetch01: Indirect Fetch10: Eksekusi11: Interupsi 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):
00: Fetch01: Indirect Fetch10: Eksekusi11: Interupsi 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
Opcode?
Interupsi?
Eksekusi Instruksi
ICC=11 ICC=00
Baca Alamat
ICC=10
ICC ?
MengambilInstruksi
Pengalamatan tak langsung ?
ICC=10 ICC=01
InterupsiSetup
ICC=00
11 (interupsi) 00 (fetch)
ya tidak tidak ya
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
Cara unit kontrol beroperasi yaitu dengan menggunakan sinyal-sinyal kontrol
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
Model Unit Kontrol
UnitKontrol
Flag
Clock
Register Instruksi
Sinyal Kontrol dalam CPU
Bus Kontrol
Sinyal Kontrolpd bus sistem
Sinyal Kontroldari bus sistem
Input Unit Kontrol
Unit kontrol mempunyai beberapa input, diantaranya: Clock: berfungsi untuk sinkronisasi operasi antar
komponen Flag: flag-flag ini diperlukan unit kontrol untuk
mengetahui status CPU. Flag diset ALU sebagai hasil dari suatu operasi, misalnya: overflow flag, diset 1 bila hasil komputasi melampaui panjang register tempat flag disimpan.
Instruction register: menggunakan opcode untuk menentukan operasi mikro yang akan dilakukan selama siklus eksekusi
Sinyal kontrol dari ”bus control”: memberi jalur ke unit kontrol untuk sinyal-sinyal tertentu, seperti sinyal interrupt dan sinyal acknowledgment
Output Sinyal Kontrol
1. Sinyal kontrol di dalam CPU (control signals within CPU): output unit kontrol terdiri dari dua macam sinyal, yaitu: Sinyal-sinyal yang dapat mengaktifkan fungsi ALU
yang spesifik sinyal-sinyal yang menyebabkan perpindahan data
antar register2. Sinyal kontrol ke ”bus control” juga terdiri atas 2 sinyal,
yaitu. sinyal kontrol ke memori sinyal kontrol ke modul-modul I/O
Implementasi Unit Kontrol
Implementasi Hardwired Implementasi Microprogrammed
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...
Masalah dalam Merancang Implementasi Hardwired: Memiliki kompleksitas dalam pengurutan dan
operasi mikronya Sulit didesain dan dilakukan pengetesan Tidak fleksibel Sulit untuk menambahkan instruksi baru
Control Signal: IP LP EP LM R W LD ED LI EI LA EA A S EU LB
Instruction:
-----------------------------------------------------------------------------
"Fetch" T2 T0 T0 T1 T2 T2
LDA T3 T4 T5 T3 T5
STA T3 T5 T4 T3 T4
MBA T3 T3
ADD T4 T3 T4
SUB T4 T3 T4
JMP T3 T3
JN T3*NF T3*NF
A Matrix of Times at which Each Control Signal Must Be Active in Order toExecute the Hard-wired Basic Computer's Instructions
Implementasi Microprogrammed
Implementasi yang paling reliabel saat ini adalah implementasi microprogrammed. Unit kontrol memerlukan sebuah memori untuk menyimpan program kontrolnya.
Fungsi–fungsi pengontrolan dilakukan berdasarkan program kontrol yang tersimpan pada unit kontrol. Selain itu, fungsi–fungsi pengontrolan tidak berdasarkan dekode dari input unit kontrol lagi.
Teknik ini dapat menjawab kesulitan–kesulitan yang ditemui dalam implementasi hardwired.
Unit Kontrol Termikroprogram Set instruksi mikro
disimpan didalam memori kontrol
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
Unit Kontrol Termikroprogram ...
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 dan Kekurangan pada unit Kontrol Termikroprogram
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 .
Kekurangan Unit Termikroprogram akan lebih lambat daripada unit
hardwired
Teknik ini banyak pada CISC dan unit kontrol hardwired lebih digunakan pada RISC
Eksekusi Instruksi Mikro
Pada dasarnya eksekusi ini adalah untuk menghasilkan sinyal-sinyal kontrol
Sebagian sinyal-sinyal tersebut menuju ke dalam CPU dan sebagian lagi ke bus kontrol eksternal atau antarmuka eksternal lainnya
Aplikasi Pemrograman Mikro
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