operasiunit kontrol - just another wordpress.com weblog · sinyal kontrol yang berlainan dalam...
Post on 08-Mar-2019
234 Views
Preview:
TRANSCRIPT
Micro-Operations
� Fungsi sebuah komputer adalah mengeksekusi program.
� Siklus Fetch/execute selalu terjadi
� Tiap siklus memiliki sejumlah langkah yang terdiri dariregister-register CPU
�Ingat pipelining!
� Tiap langkah disebut operasi mikro (micro-operation)
� Tiap langkah berupa langkah sederhana (Atomic operation of CPU)
Fetch - 4 Registers
�Memory 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 terakhiryang 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 perti halnya apabila
pengalamatan tak langsung tidak pernah digunakan dansiap 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 memperolehalamat 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 instruction
�e.g. ADD R1,X - add the contents of location X to Register 1 , result in R1
�t1: 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)
� Internal Data Path
�memindahkan data antar register dan antara register dan ALU
� External Data Path
�menghubungkan register ke memori dan modul I/O danterkadang dengan bus sistem
� Control Unit
�menyebabkan operasi dalam CPU
Elemen Dasar Prosesor
FUNGSI CONTROL UNIT
� Sequencing (mengurutkan operasi)
� Membuat CPU menuju sejumlah operasi mikro dalamurutanoperasi tertentu yang benar, yang didasarkan pada program yang sedang dieksekusi
� Mengeksekusi
� Membuat kinerja setiap operasi mikro selesai denganmenggunakan sinyal kontrol tertentu
Types of Micro-operation
�Transfer data between registers
�Transfer data from register to external
�Transfer data from external to register
�Perform arithmetic or logical ops
Control Signals – Input (1)
�Clock
Cara 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 untukmenentukan operasi mikro mana yang akandilakukan selama siklus eksekusi
Control Signals – Input (2)
�Flags
�Flag diperlukan untuk menentukan status CPU danhasil sebelumnya yang diperoleh dari operasi-operasiALU.
�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 setiapregister dari dan ke bus
�Control signals mengontrol perpindahan data dari dan ke bus sistem (eksternal) dan operasiALU
�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 unit
�Flag 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 kombinasisinyal-sinyal kontrol) instruksi berlainan
�Input logika unik bagi setiap op-code
�Decoder mengambil input yang didekode danmenghasilkan 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 memungkinkanterjadinya perambatan sinyal di sepanjang lintasandata dan merambat ke rangkaian CPU.
�Sinyal kontrol yang berlainan dalam satuan waktuyang berbeda pada sebuah siklus instruksitunggalnya
�Dibutuhkan penghitung sebagai input bagi unit kontrol dengan input kontrol yang berbeda untuk tiapsatuan waktunya.
top related