operasi unit kontrol
DESCRIPTION
Operasi Unit Kontrol. Organisasi Komputer II STMIK – AUB Surakarta. Micro-Operations. Fungsi sebuah komputer adalah mengeksekusi program. Siklus Fetch/execute selalu terjadi Tiap siklus memiliki sejumlah langkah yang terdiri dari register-register CPU Ingat pipelining! - PowerPoint PPT PresentationTRANSCRIPT
Operasi Unit Kontrol
Organisasi Komputer II
STMIK – AUB Surakarta
Micro-Operations
Fungsi sebuah komputer adalah mengeksekusi program.
Siklus Fetch/execute selalu terjadi Tiap siklus memiliki sejumlah langkah yang
terdiri dari register-register CPU Ingat pipelining!
Tiap langkah disebut operasi mikro (micro-operation)
Tiap langkah berupa langkah sederhana (Atomic operation of CPU)
Constituent Elements of Program Execution
Fetch - 4 RegistersMemory Address Register (MAR)
Connected to address bus Specifies address for read or write op
Memory Buffer Register (MBR) Connected to data bus Berisi data yang akan disimpan atau nilai terakhir yang
dibaca
Program Counter (PC) Holds address of next instruction to be fetched
Instruction Register (IR) Holds last instruction fetched
Fetch Sequence
Address of next instruction is in PC Address (MAR) is placed on address bus Control unit issues READ command Result (data from memory) appears on data bus Data from data bus copied into MBR PC incremented by 1 (in parallel with data fetch
from memory) Data (instruction) moved from MBR to IR MBR is now free for further data fetches
Fetch Sequence (symbolic)
t1: MAR <- (PC) t2: MBR <- (memory) PC <- (PC) +1 t3: IR <- (MBR) (tx = time unit/clock cycle) or t1: MAR <- (PC) t2: MBR <- (memory) t3: PC <- (PC) +1 IR <- (MBR)
Aturan Pengelompokan Operasi Mikro per Clock Cycle
Rangkaian kejadian yang benar harus dipenuhi MAR <- (PC) harus mendahului MBR<- (memory)
Konflik harus dihindari Tidak diperbolehkan membaca dan menulis ke register
yang sama pada saat yang bersamaan MBR <- (memory) & IR <- (MBR) must not be in same
cycle
Perlu diperhatikan juga operasi penambahan : PC <- (PC) +1 Use ALU May need additional micro-operations
Indirect Cycle
MAR <- (IRaddress) - address field of IR MBR <- (memory) IRaddress <- (MBRaddress)
Field alamat instruksi dipindahkan ke MAR MBR contains an address (alamat yang
dipindahkan digunakan untuk mengambil alamat operand)
Alamat field IR diupdate dari MBR (IR berisi alamat langsung)
IR berada dalam status yang sama seperti halnya apabila pengalamatan tak langsung tidak pernah digunakan dan siap untuk siklus eksekusi
Interrupt Cycle
t1: MBR <-(PC) t2: MAR <- save-address PC <- routine-address t3: memory <- (MBR)
Isi PC dipindahkan ke MBR MAR dimuati alamat dimana isi PC akan disimpandan
PC dimuati dengan alamat awal rutin pengolahan interrupt. This is a minimum
CPU membutuhkan operasi mikro tambahan untuk memperoleh alamat simpan dan alamat rutin
N.B. saving context is done by interrupt handler routine, not micro-ops
Menyimpan MBR, yang berisi nilai PC lama ke memori
Execute Cycle (ADD)
Different for each instructione.g. ADD R1,X - add the contents of
location X to Register 1 , result in R1t1: MAR <- (IRaddress)t2: MBR <- (memory)t3: R1 <- R1 + (MBR)Note no overlap of micro-operations
Execute Cycle (ISZ)
ISZ X - increment and skip if zero t1: MAR <- (IRaddress) t2: MBR <- (memory) t3: MBR <- (MBR) + 1 t4: memory <- (MBR) if (MBR) == 0 then PC <- (PC) + 1
Notes: if is a single micro-operation Micro-operations done during t4
Persyaratan Fungsional
Menentukan elemen dasar CPU Mendiskripsikan operasi mikro yang harus
dilakukan CPU Menentukan fungsi-fungsi yang harus dilakukan
Control Unit agar menyebabkan operasi-operasi mikro.
ALU elemen komputer paling dasar
Register menyimpan data (informasi status program, memori, register
dan modul I/O)
System Interconnection Internal Data Path
memindahkan data antar register dan antara register dan ALU External Data Path
menghubungkan register ke memori dan modul I/O dan terkadang dengan bus sistem
Control Unit menyebabkan operasi dalam CPU
Elemen Dasar Prosesor
FUNGSI CONTROL UNIT
Sequencing (mengurutkan operasi) Membuat CPU menuju sejumlah operasi mikro
dalamurutan operasi tertentu yang benar, yang didasarkan pada program yang sedang dieksekusi
Mengeksekusi Membuat kinerja setiap operasi mikro selesai dengan
menggunakan sinyal kontrol tertentu
Types of Micro-operation
Transfer data between registersTransfer data from register to externalTransfer data from external to registerPerform arithmetic or logical ops
Control Signals – Input (1)
ClockCara unit kontrol dalam “menjaga waktu”nya. One micro-instruction (or set of parallel micro-
instructions) per clock cycle Disebut clock cycle time atau processor cycle time
Instruction register Op-code instruksi saat itu digunakan untuk
menentukan operasi mikro mana yang akan dilakukan selama siklus eksekusi
Control Signals – Input (2)
Flags Flag diperlukan untuk menentukan status CPU
dan hasil sebelumnya yang diperoleh dari operasi-operasi ALU.
From control bus Interrupts Acknowledgements
Control Signals - output
Within CPU (Sinyal Kontrol dalam CPU) Cause data movement (dari satu register ke
register lainya) Activate specific ALU functions
Via control bus (Sinyal Kontrol bagi Bus Kendali) To memory To I/O modules
Example Control Signal Sequence - Fetch
MAR <- (PC) Control unit activates signal to open gates
between PC and MAR
MBR <- (memory) Open gates between MAR and address bus Memory read control signal Open gates between data bus and MBR
Organisasi Internal CPU
Biasanya menggunakan susunan bus single internal
Gates mengontrol perpindahan data dari setiap register dari dan ke bus
Control signals mengontrol perpindahan data dari dan ke bus sistem (eksternal) dan operasi ALU
Temporary registers needed for proper operation of ALU
Organisasi Internal CPU
Penggunaan lintasan data memudahkan layout interkoneksi dan kontrol CPU
Pemakaian bus internal menghemat ruang (secara fisik)
Hardwired Implementation (1)
Mengontrol input-input unitFlag dan sinyal-sinyal kontrol bus
Umumnya, tiap bit memiliki arti tertentu.
Instruction register Unit control menggunakan op-code dan tiap op-code akan
melakukan aksi yang berbeda (sejumlah kombinasi sinyal-sinyal kontrol) instruksi berlainan
Input logika unik bagi setiap op-code Decoder mengambil input yang didekode dan menghasilkan
sebuah output Umumnya, dekoder memiliki n input biner and 2n outputs
biner
Hardwired Implementation (2)
Clock Mengeluarkan rangkaian pulsa yang berulang-
ulang Berguna untuk mengukur durasi operasi mikro Harus cukup panjang untuk memungkinkan
terjadinya perambatan sinyal di sepanjang lintasan data dan merambat ke rangkaian CPU.
Sinyal kontrol yang berlainan dalam satuan waktu yang berbeda pada sebuah siklus instruksi tunggalnya
Dibutuhkan penghitung sebagai input bagi unit kontrol dengan input kontrol yang berbeda untuk tiap satuan waktunya.
Problems With Hard Wired Designs
Complex sequencing & micro-operation logic
Difficult to design and testInflexible designDifficult to add new instructions