Operasi Unit Kendali
Materi yang Akan dibahas:
• Apa Pengertian Operasi Unit Kendali?
• Apa Fungsi Operasi Unit Kendali?
• Apa Jenis-Jenis Unit Kendali?
• Apa itu Operasi Mikro?
• Apa itu Kendali Prosesor?
• Apa itu Kendali Mikroprogrammed?
Definisi
Operasi Unit Kendali
Adalah bagian
dari sebuah komputer yang berfungsi sebagai pengatur dan pengendali semua
peralatan komputer. Control Unit juga mengatur kapan alat
input menerima data, mengolah, dan menampilkan proses serta hasil pengolahan
data. Dengan demikian semua perintah dapat dilakukan secara berurutan tanpa
adanya tumpang tindih antara satu perintah dengan perintah lainnya.
Diagram Dasar
Unit Kendali
Fungsi Operasi
Unit Kendali
Tugas Dasar Operasi Unit Kendali:
1. Pengurutan (Sequencing)
Unit Kontrol menyebabkan prosesor menuju sejumlah operasi mikro dalam urutan yang benar, yang didasarkan pada program yang sedang dieksekusi.
Unit Kontrol menyebabkan prosesor menuju sejumlah operasi mikro dalam urutan yang benar, yang didasarkan pada program yang sedang dieksekusi.
2. Eksekusi (Execution)
Unit Kontrol menyebabkan setiap operasi mikro
dilakukan.
Tugas-Tugas
Unit Kendali
1. Mengatur dan Mengendalikan alat-alat Input dan Output (I/O).
2. Mengambil instruksi-instruksi dari Memori Utama.
3. Mengambil data dari Memori Utama kalau diperlukan oleh proses.
4. Mengirim instruksi ke ALU (Arithmetic Logical Unit) bila ada perhitungan
Aritmatika.
5. Menyimpan hasil proses ke Memori Utama.
Jenis Jenis
Unit Kendali
1. Single-Cycle CU
Proses di Control Unit ini hanya terjadi dalam satu
Clock-Cycle, artinya setiap instruksi ada pada satu cycle. Maka dari itu tidak
memerlukan state.
2. Multi-Cycle CU
Berbeda dengan Control Unit yang Single—cycle,
Control Unit yang Multi-cycle lebih memiliki banyak fungsi, yaitu Dengan
memerhatikan state dan opcode.
Jenis I/O Unit
Kendali
A. Masukkan (Input)
a. Clock
Berfungsi untuk sinkronisasi operasi antar
komponen-komponen komputer, termasuk juga Unit Kontrol.
b. Instruction Register
Opcode instruksi saat itu digunakan untuk mentukan
operasi mikro yang akan dilakukan selama siklus eksekusi.
c. Flag
Flag-flag ini digunakan unit kontrol untuk mengetahui
status dari CPU
d. Control Signal to Control Bus
Memberi jalur ke unit kontrol untuk sinyal-sinyal
seperti sinyal interupt dab acknowledgement.
B. Keluaran (Output)
1. Sinyal Kontrol
dalam CPU (Control Signal in CPU)
Output ini terdiri dari dua (2) macam sinyal, yaitu:
Ø Sinyal-sinyal yang menyebabkan perpindahan data antar register, dan
Ø Sinyal-sinyal yang dapat mengaktifkan ALU (Arithmetic Logic Unit) yang
spesifik.
2. Control Signal to Control Bus
Output sinyal ini juga memiliki 2 (dua) macam
sinyal, yaitu:
Ø Sinyal kontrol bagi memori, dan
Ø Sinyal kontrol bagi modul-modul Input-Output (I/O).
Operasi Mikro
- Operasi
Mikro adalah suatu operasi dimana suatu komputer menjalankan suatu program
dan melakukan siklus proses memasukkan dan mengambil data, atau melakukan
eksekusi (Fetch/Execute Cycle).
- Operasi
Mikro merupakan operasi atomik dari CPU(Central Processing Unit).
Cara Kerja Operasi Mikro
1.
Mem-fetch suatu instruksi dari memori,
2.
Memberi kode instruksi untuk menentukan operasi
yang dilaksanakan,
3.
Menentukan sumber dan tujuan data dalam perpindahan
data, dan
4.
Mengeksekusi operasi yang dilakukan.
Kelebihan Operasi Mikro
- Rancangan
mikroprogrammed relatif mudah diubah-ubah dan dibetulkan.
- Menyediakan
kemampuan diagnostik yang lebih baik dan lebih dapat diandalkan daripada
rancangan hard-wired.
- Utilisasi
memori utama dalam komputer mikroprogrammed biasanya lebih baik karena
perangkat lunak yang seharusnya menggunakan ruang memori utama justru
ditempatkan pada memori kendali.
- Pengembangan
ROM lebih lanjut (dalam kaitan dengan harga dan waktu akses) secara lebih
jauh justru menguatkan posisi dominan pemrograman mikro, salah satunya
dengan menyertakan unit memori ketiga disebut sebagai nano-memory
(tambahan bagi memori utama dan memori kendali). Dalam mengerjakan hal
ini, mungkin terjadi pertukaran (trade-off) yang menarik antara
pemrograman mikro horisontal dan vertikal).
Kekurangan Operasi Mikro
- Karena
waktu akses memori kendali ROM menentukan kecepatan operasi Control Logic
Unit (CLU), maka kendali mikroprogrammed mungkin menghasilkan CLU yang
lebih lambat dibandingkan dengan kendali hard-wired.
- Alasannya
bahwa waktu yang diperlukan untuk menjalankan suatu instruksi mikro juga
mencakup waktu akses ROM, sedangkan suatu keterlambatan dalam CLU
hard-wired hanya mungkin disebabkan oleh keterlambatan waktu penyebaran
melalui perangkat keras yang relatif sangat kecil (hard-wired digunakan
hanya jika sistem itu tidak terlalu kompleks dan hanya memerlukan beberapa
operasi kendali).
**
Instruction Cycle (Siklus Instruksi)
Karena set instruksi dari suatu CPU memiliki
bermacam mode pengalamatan dan format operand, maka unit control bertanggung
jawab untuk menjaga semua kemungkinan pada setiang tingkat dalam siklus
instruksi.
- Setiap
fase siklus instruksi dapat diuraikan menjadi operasi mikro elementer.
- Ada
empat buah kode siklus instruksi (ICC).
- ICC
menandai status CPU dalam hal berbagai tempat siklus tersebut berada.
Berikut adalah 4 (empat) kode siklus instruksi
atau Instruction Code Cycle (ICC):
00 :
FetchØ
01 :IndirectØ
10 :ExecuteØ
11 :InterruptØ
Ada 4 (Empat)
Register dalam Fetch Cycle, antara lain:
1. Memory Address
Register (MAR)
Terkoneksi dengan bus alamat (Address Bus).
MAR melakukan spesifikasi alamat untuk operasi baca
(read) dan tulis (write).
2. Memory Buffer
Register (MBR)
Terkoneksi dengan bus data (Data Bus).
Menyimpan data untuk ditulis atau menyimpan data
terakhir yang dibaca (Holds data to write or last data read).
3. Program Counter
(PC)
Menyimpan alamat instruksi berikut yang akan
diakses (Holds address of next instruction to be fetches).
4. Instruction
Register (IR)
Menyimpan alamat instruksi terakhir yang diakses
(Holds last instruction fetched).
Jenis-Jenis Siklus dalam Siklus Instruksi
(Instruction-Cycle):
1. Fetch-Cycle (Siklus Pengambilan)
2. Indirect-Cycle (Siklus Tak Langsung)
3. Interrupt-Cycle (Siklus Interupsi)
4. Execution-Cycle (Siklus Eksekusi)
1. Fetch-Cycle (Siklus Pengambilan)
Fetch Cycle
adalah siklus pengambilan data ke memori atau register. Berikut adalah contoh
aliran data siklus pengambilan(Fetch Cycle):
- Urutan kejadian
selama siklus interuksi tergantung pada rangan CPU.
- Asumsi: Sebuah
CPU yang menggunakan register memori alamat (MAR), Register memori buffer
(MBR), pencacah program (PC)m dan register instruksi(IR).
Prosesnya:
1. Pada siklus
pengambilan (Fetch Cycle), instruksi dibaca dari memori.
2. PC berisi
alamat instruksi berikutnya yang akan diambil.
3. Alamat ini
dipindahkan di MAR(Memory Address Register) dan ditaruh di bus alamat.
4. Control Unit
meminta pembacaan memori dan hasilnya disimpan di bus data dan disalin ke MBR
(Memory Buffer Register), kemudian dipindahkan ke IR (Instruction Regiter).
5. PC (Program
Counter) naik nilainya 1, sebagai persiapan untuk pengambilan selanjutnya.
6. Siklus selesai,
CU memeriksa isi IR (Instruction Register) untuk menentukan apakah
IR (Instruction Register) berisi Operand Specifier yang menggunakan
pengalamatan tak langsung (Indirect).
Dengan demikian siklus Fetch sederhana sebenarnya
terdiri atas 3 langkah dan 4 operasi mikro. Secara simbolik dapat ditulis
sebagai berikut:
T1 : MAR ← (PC)
T2 :
MBR ← (MEMORY)
PC ← (PC)+1
T3 :
IR ← (MBR)
Dimana T1, T2, dan T3 merupakan unit waktu yang
berdurasi sama dan berurutan.
2. Indirect-Cycle (Siklus Tak Langsung)
Siklus tidak langsung (Indirect Cycle) adalah
eksekusi sebuah instruksi yang melibatkan sebuah operand atau lebih di dalam
memori, yang masing-masing operand memerlukan akses memori. Pengambilan
alamat-alamat tak langsung dapat dianggap sebagai sebuah subsiklus instruksi
atau lebih.
Penjelasan:
· N bit
paling kanan pada MBR, yang berisi referensi alamat, dipindahkan ke MAR.
· Unit Kontrol
meminta pembacaan memori, agar mendapatkan alamat operand yang diinginkan ke
dalam MBR.
· Siklus
pengambilan dan siklus tak langsung cukup sederhana dan dapat diramalkan.
Berikut adalah penulisan siklus tidak langsung
secara simbolik:
T1 :
MAR ← (IR (Alamat))
T2 :
MBR ← Memory
T3 : IR
(Alamat) ← (MBR (Alamat))
3. Interrupt-Cycle (Siklus Interupsi)
Interrupt
adalah suatu permintaan khusus kepada mikroprosesor untuk melakukan sesuatu.
Bila terjadi interupsi, maka komputer akan menghentikan dahulu apa yang sedang
dikerjakannya dan melakukan apa yang diminta oleh yang meninterupsi.
Pada IBM PC
(Personal Computer) dan kompatibelnya disediakan 256 buah interupsi yang diberi
nomor 0 sampai 255. Nomor interupsi 0 sampai 1 Fh disediakan oleh ROM BIOS,
yaitu suatu IC (Integrated Circuit) didalam komputer yang mengatur
operasi dasar komputer. Jadi bila terjadi interupsi dengan nomor 0 sampai 1 Fh,
maka secara default komputer akan beralih menuju ROM BIOS dan melaksanakan
program yang terdapat disana. Program yang melayani suatu interupsi dinamakan
Interrupt Handler.
Aliran Data Siklus Interupsi:
Isi PC, saat itu harus disimpan sehingga CPU dapat
melanjutkan aktivitas normal terjadinya interupsi.
1. Isi PC dipindahkan ke MBR untuk kemudian dituliskan
ke dalam memori.
2. Lokasi memori khusus yang dicadangkan untuk
keperluan ini dimuatkan ke MAR dari unit kontrol (Control Unit).
3. Lokasi ini berupa stack pointer.
4. PC dimuatkan dengan alamat rutin interupsi.
5. Akibatnya siklus interuksi berikutnya akan mulai
mengambil interuksi yang sesuai.
Berikut adalah penulisan siklus Interupsi secara
simbolik:
T1 : MBR ← (PC)
T2 :
MAR ← Save_Address
PC ← Routine_Address
T3 :
Memory ← MBR
4. Execution-Cycle (Siklus Eksekusi)
Execution adalah proses dari CPU untuk mengerjakan
instruksi yang sudah dijemput dari main memory dan sudah
berada di IR register, Control Unit di CPU mengartikan instruksi tersebut,
melaksanakan operasi yang harus dilakukan, seperti penjemputan/pengambilan data
dari main memory, mengirim instruksi ke ALU untuk melakukan operasi aritmatika
atau logika dan menyimpan hasil pengolahan kembali ke main memory. Sedangkan
Execution sequence adalah proses atau langkah sebuah eksekusi program yang
terjadi dan berlangsung pada sebuah sistem mikroprosesor. Sebuah mikroprosesor
harus dapat melakukan proses:
- Fetch
Data atau mengambil data baik dari memori maupun I/O dengan proses baca
(read) data.
- Proses
Data atau mengolah data dalam salah satu operasi aritmatika atau logika.
- Write
Data atau menulis data ke memori atau I/O.
- Fetch
Instruction atau mengambil instruksi yaitu membaca instruksi dari
memori.
- Interpret
Instruction, yaitu proses menginterpretasikan/menerjemahkan instruksi.
Instruksi hari didekode untuk menentukan aksi dari suatu instruksi yang
harus dilakukan. Instruksi dalam bahasa mesin berbentuk kode-kode biner
dalam heksadesimal. Setiap perintah dikodekan dan disusun dalam sebuah set
instruksi. Untuk mendapatkan gambaran yang jelas, bagaimana bagian-bagian
dari sebuah komputer atau sistem mikroprosesor bekerja.
Berikut adalah
beberapa perintah dalam Execution Cycle:
1. Penambahan
(ADD)
ADD R1, X =
Menambahkan isi lokasi X ke register R1
T1 :
MAR (IR(Alamat))
T2 :
MBR Memory
T3 :IR
(R1) + (MBR)
2. ISZ
Isi lokasi X ditambah dengan 1. Apabila hasilnya
sama dengan Nol (0), maka instruksi berikutnya dilompati.
T1 :MAR
(IR(Alamat))
T2 :MBR Memory
T3 :IR (MBR) + 1
T4 : Memory(MBR)
If (MBR=0) then (PC+1)
3. BSA X
Merupakan alamat instruksi yang berada setelah
instruksi BSA disimpan di lokasi X dan eksekusi dilanjutkan pada lokasi X + 1.
Alamat yang disimpan akan digunakan kemudian untuk keperluan return.
T1 :
MAR (IR(Alamat))
MBR (PC)
T2 :
PC(IR (Alamat))
Memory (MBR)
T3 :
PC(PC) + 1
Kendali
Prosesor (Hard-wired)
Processor sering di sebut sebagai otak sentral dari
komputer. Artinya unit
pemroses utama dari perintah-perintah program yang harus dijalankan oleh
komputer yang mengontrol keseluruhan jalannya sebuah sistem komputer dan
digunakan sebagai pusat atau otak dari kompuer yang berfungsi untuk melakukan
perhitungan dan menjalankan tugas.
Cara Kerja CPU
1.
CPU Menerima Masukkan dari Input dan diletakkan di
RAM
2.
Apabila berbentuk instruksi ditampung oleh Control
Unit di Program-storage, Apabila berbentuk data ditampung di Working-storage.
3.
Jika Register siap untuk menerima eksekusi, maka CU
akan mengambil instruksi dari Program-storage untuk ditampungkan ke
Instruction Register. Alamat memori yang berisikan instruksi tersebut ditampung
di Program Counter. Sedangkan data diambil oleh Control Unit dari
Working-storage untuk ditampung di General-purpose register (dalam hal ini di
Operand-register).
4.
Jika berdasar instruksi pengerjaan yang dilakukan
adalah aritmatika dan logika, maka ALU akan mengambil alih
operasi untuk mengerjakan berdasar instruksi
yang ditetapkan dan hasilnya ditampung di Accumulator. Apabila
hasil pengolahan telah selesai, maka Control Unit akan mengambil hasil
pengolahan di Accumulator untuk ditampung kembali ke Working-storage.
Jika pengerjaan keseluruhan telah selesai, maka Control Unit akan
menjemput hasil pengolahan dari Working-storage untuk ditampung ke
Output-storage. Lalu selanjutnya dari Output-storage, hasil pengolahan akan
ditampilkan ke output-devices.
Fungsi CPU
Ø Untuk menggenerasi sinyal kontrol.
Ø Digunakan pada komputer berkinerja tinggi (super komputer) dan RISC
sederhana dan instruksi akses memori.
Ø Control Unit konvensional menghasilkan suatu rangkaian mikro-instruksi.
Ø Perbedaannya dengan Control Unit Microprogrammed terletak pada gerbang logikanya
menggenerasi semua mikro-order, sehingga eksekusinya lebih cepat.
Kendali
Microprogrammed
Kendali microprogrammed menawarkan suatu pendekatan
yang lebih terstruktur untuk merancang unit kendali logika (CLU) dibandingkan
dengan kendali hard-wired. Rancangan microprogrammed relatif mudah diubah-ubah
dan dibetulkan,menawarkan kemampuan. Karena waktu akses memori kendali ROM
menentukan kecepatan operasi CLU maka kendali microprogrammed mungkin
menghasilkan CLU yang lebih lambat dibandingkan dengan kendali hard-wired.
Instruksi Microprogrammed
1. Horizontal
Satu bit diberikan untuk setiap sinyal logika yang
dihasilkan oleh instruksi micro. Jenis implementasi diaman signal kontrol di
kode ke dalam pada bit, kemudian digunakan setelah di kode.
2. Vertikal
Hanya satu operasi mikro yang dipanggil pada suatu
waktu.
Control dimana setiap bit control mengatur satu
operasi gate atau mesin.
Komponen Microprogrammed
1. Komponen-komponen
pokok control unit microprogrammed
a.
Instruction Register
b.
Control Store berisi microprogrammed
c.
Address Computing Circuiting
d.
Microprogrammed Counter
e.
Microinstruction Buffer
f.
Microinstruction Decoder
2.
Peralatan pendukung microprogrammmed control
a.
Assembler Mikro
b.
Formatter
c.
Sistem Pengembangan
d.
Simulator Perangkat Keras
Kesimpulan
Control Unit atau biasa disebut Unit Kontrol adalah satu
bagian dari CPU yang bertugas untuk memberikan arahan/kendali/kontrol terhadap
operasi yang dilakukan di bagian ALU (Arithmetic Logical Unit) di dalam CPU
tersebut. Control Unit dari sebuh prosesor memiliki 2 (dua) peran penting.
Pertama, Control Unit mengatur prosesor agar melakukan semua mikro-operasi
dalam urutan yang benar. Kedua, Control Unit menghasilkan sinyal kontrol yang
memastikan supaya semua mikro-operasi dieksekusi. Terdiri dari 2 (dua) jenis,
yaitu Single dan Multi Control. Siklus instruksi terdiri dari micro operation,
fetch, indirect, interrupt, dan execution cycle. Unit
Kontrol merupakan otak atau pusat syaraf hardware pada komputer yang mengawasi
pelaksanaan siklus instruksi dan membangkitkan sinyal-sinyal kontrol yang
relevan pada saat yang tepat supaya mikro-operasi yang tepat dapat dikerjakan
pada CPU dan unit-unit eksternal lainnya seperti memori dan pengontrol perangkat
I/O.
Daftar Pustaka :
Arief, Miftah. 2012.
“Pengertian Control Unit”. Dalam http://miftahari3f.blogspot.com/2012/10/pengertian-control-unit.html.
Farhat. Tanpa Tahun.
”Operasi Unit Kendali”. Laporan. Tempat:Universitas Gunadarma.
Nurlitasari, Ega. 2016.
“Operasi Unit Kendali”. Dalam http://pienotseka3.blogspot.com/2016/11/operasi-unit-kendali.html.
Purwanto, Imam, Ega
Hegarini, Rifki amalia, Arie Kusumawati. 2013. Laporan. Tempat:Universitas
Gunadarma.
Rahman. 2014. “Operasi Unit
Kendali CU (Control Unit)”. Dalam http://berbagiilmuindahnya.blogspot.com/2014/04/operasi-unit-kendali-cu-control-unit.html.
Roqi, Baidowi. 2016.
“Operasi Unit Kendali/CU (Control Unit)”. Dalam https://belajar-bersama-bdw.blogspot.com/2016/01/operasi-unit-kendalicu-control-unit.html.
Saputra, Bayu. 2012.
“Operasi Unit Kendali”. Dalam http://bayserf.blogspot.com/2012/11/operasi-unit-kendali.html.
Sharma, Nirmala.
2009. Computer Architecture. New Delhi:University Science
Press.
Suryadi. 2011. “CPU
(Central Processing Unit)”. Dalam https://mangantar.wordpress.com/2011/02/09/cpu-central-prosessor-unit/.
Syahrul. 2010. Organisasi
dan Arsitektur Komputer. Yogyakarta: Andi.
Wikipedia. 2018. “Unit
Kendali”. Dalam https://id.wikipedia.org/wiki/Unit_Kendali.
Ditulis Oleh : Fadly Muhammad Irvan
Komentar
Posting Komentar