Control Logic Unit
Control Unit merupakan bagian yang berfungsi
sebagai pengatur dan mengatur dan pengendali semua peralatan computer, 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.
Unit kontrol atau yang sering dikenal
dengan control unit, akan menyimpan perintah sekarang yang dilakukan oleh
komputer, memerintahkan ALU untuk melaksanaan dan mendapat kembali informasi
(dari memori) yang diperlukan untuk melaksanakan perintah itu, dan memindahkan
kembali hasil ke lokasi memori yang sesuai. Sekali yang terjadi, unit kontrol
pergi ke perintah berikutnya. Bagian CPU yang menyebabkan fungsi komputer
tercapai ini mengeluarkan sinyal-sinyal kontrol yang bersifat internal bagi CPU
untuk memindahkan data antar Register agar ALU melakukan fungsinya untuk
mengatur operasi-operasi internal lainnya. Register, yang merupakan bagian dari
unit kontrol, adalah tempat penyimpan data sementara dalam CPU selama proses
eksekusi.
1.
Tugas dari CLU adalah
sebagai berikut
·
Mengatur
dan mengendalikan alat-alat input dan output.
·
Mengambil
instruksi-instruksi dari memori utama.
·
Mengambil
data dari memori utama kalau diperlukan oleh proses.
·
Mengirim
instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan logika serta
mengawasi kerja.
·
Menyimpan
hasil proses ke memori utama.
2. Proses tiga langkah karakteristik CLU
·
Menentukan
elemen dasar prosesor.
·
Menjelaskan
operasi mikro yang akan dilakukan prosesor.
·
Menentukan
fungsi-fungsi yang harus dilakukan unit control agar menyebabkan pembentukan
operasi mikro.
3. Masukan-masukan CLU
·
Clock
/ pewaktu
Pewaktu adalah cara unit
control dalam menjaga waktunya. Unit control menyebabkan sebuah operasi mikro
(atau sejumlah operasi mikro yang bersamaan) dibentuk bagi setiap pulsa waktu.
Pulsa ini dikenal sebagai waktu siklus prosesor.
·
Register
instruksi
Opcode instruksi saat itu
digunakan untuk menentukan operasi mikro mana yang akan dilakukan selama siklus
eksekusi.
·
Flag
Flag ini diperlukan oleh
unit control untuk menentukan status prosesor dan hasil operasi ALU
sebelumnya.
·
Sinyal
control untuk mengontrol bus
Bagian bus control bus system memberikan
sinyal-sinyal ke unit control, seperti sinyal-sinyal interupsi dan
acknowledgement.
4.
Cara kerja CLU
Ketika
sebuah komputer pertama kali diaktifkan power-nya, maka computer tersebut
menjalankan operasi bootstrap. Operasi ini akan membaca sebuah instruksi dari
suatu lokasi memory yang telah diketahui sebelumnya dan mentransfer instruksi
tersebut ke control unit untuk dieksekusi. Instruksi-intruksi dibaca dari
memory dan dieksekusi sesuai dengan urutan penyimpanannya. Program counter dari
suatu computer menyediakan suatu cara untuk menyimpan lokasi instruksi
berikutnya. Urutan eksekusi berubah dengan memindah lokasi intruksi baru ke
program counter sebelum pembacaan (fetch) instruksi dikerjakan. Sebuah intruksi
merupakan kalimat imperatif pendek yang sudah dapat menjelaskan makna dari
perintah tersebut. Suatu intruksi terdiri dari :
·
Subjek
(komputernya).
·
Verb
(suatu kode operasi yang mengindikasikan pekerjaan apa yang akan dilaksanakan).
·
Objek
(operands) yang mengidentifikasikan nilai data atau lokasi memory.
Ketika
intruksi-intruksi diterima oleh Control Unit, operation code akan mengaktifkan
urutan logic untuk mengeksekusi intruksi-intruksi tersebut. Satu eksekusi
program terdiri dari beberapa instruction cycle yang menjadi komponen penyusun
dari program tersebut. Sedangkan untuk setiap instruction cycle terdiri dari
beberapa sub cycle lagi seperti ftech cycle, indirect cycle, executecucle, dan
interrupt cycle. Setiap sub cycle ini disusun dari beberapa perintah dasar yang
disebut micro operation.Microinstruction decoder menghasilkan dan mengeluarkan
mikroorder yang di dasarkan pada mikrointruksi dan op code intruksi yang akan
di jalankan .yang terakhir sequncer menyinkronkan aktivitas dari komponen unit
kontrol.squencer adalah bagian inti (jantung) dari
unit control.dia mempunyai dua mode operasi yang berbeda yaitu:
·
Operasi
biasa,Selama operasi biasa (ordinary operation ),squencer menghasilkan signal
kontrol yang mengatur unit control.
·
Start
up mesin,Selama start up mesin ,unit kontrol memunculkan dan menandai berbagai
macam register. Hanya satu operasi mikro yang dipanggil pada suatu waktu.
Control dimana setiap bit control mengatur 1 operasi gate atau mesin.
5.
Keluaran CLU
Berfungsi untuk
menerima hasil pengolahan data dari CPU melalui memori. Seperti halnya pada
unit masukan maka pada unit keluaran dikenal juga istilah peralatan keluaran
(Output device) dan media keluaran.
·
Sinyal control didalam
prosesor terdiri dari dua macam: sinyal-sinyal yang menyebabkan data
dipindahkan dari register yang satu keregister yang lainnya, dan sinyal-sinyal
yang dapat mengaktifasi fungsi-fungsi ALU tertentu.
·
Sinyal control bagi bus
control sinyal ini juga terdiri dari dua macam: sinyal control bagi memori dan
sinyal control bagi modu-modul I/O.
·
Unit kendali logika (
Control Logic Unit ) bertugas untuk mengatur seluruh aktifitas perangkat keras
di dalam komputer.
6.
Macam – Macam CLU
·
Single-Cycle
CLU
Proses di Single-Cycle CU
ini hanya terjadi dalam satu clock cycle, artinya setiap instruksi
ada pada satu cycle, maka dari itu tidak memerlukan state.
Dengan demikian fungsi boolean masing-masing control line hanya
merupakan fungsi dari opcode saja. Clock cycle harus
mempunyai panjang yang sama untuk setiap jenis instruksi. Ada dua bagian pada
unit kontrol ini, yaitu proses men-decode opcode untuk
mengelompokkannya menjadi 4 macam instruksi (yaitu di gerbang AND), dan
pemberian sinyal kontrol berdasarkan jenis instruksinya (yaitu gerbang OR).
Keempat jenis instruksi adalah “R-format” (berhubungan dengan register), “lw”
(membaca memori), “sw” (menulis ke memori), dan “beq” (branching).
Sinyal kontrol yang dihasilkan bergantung pada jenis instruksinya. Misalnya
jika melibatkan memori ”R-format” atau ”lw” maka akan sinyal ”Regwrite” akan
aktif. Hal lain jika melibatkan memori “lw” atau “sw” maka akan diberi sinyal
kontrol ke ALU, yaitu “ALUSrc”. Desain single-cycle ini lebih
dapat bekerja dengan baik dan benar tetapi cycle ini tidak
efisien.
·
Multi-Cycle
CLU
Berbeda dengan unit kontrol
yang single-cycle, unit kontrol yang multi-cycle lebih
memiliki banyak fungsi. Dengan memperhatikan state dan opcode,
fungsi boolean dari masing-masing output control line dapat
ditentukan. Masing-masingnya akan menjadi fungsi dari 10 buah input logic.
Jadi akan terdapat banyak fungsi boolean, dan masing-masingnya tidak sederhana.
Pada cycle ini, sinyal kontrol tidak lagi ditentukan dengan
melihat pada bit-bit instruksinya. Bit-bitopcode memberitahukan
operasi apa yang selanjutnya akan dijalankan CPU.
Register
Register prosesor,
dalam arsitektur komputer, adalah sejumlah kecil memori komputer yang
bekerja dengan kecepatan sangat tinggi yang digunakan untuk melakukan eksekusi
terhadap program-program komputer dengan menyediakan akses yang cepat
terhadap nilai-nilai yang umum digunakan. Umumnya nilai-nilai yang umum
digunakan adalah nilai yang sedang dieksekusi dalam waktu tertentu.
Register
prosesor berdiri pada tingkat tertinggi dalam hierarki memori : ini
berarti bahwa kecepatannya adalah yang paling cepat; kapasitasnya adalah paling
kecil; dan harga tiap bitnya adalah paling tinggi. Register juga digunakan
sebagai cara yang paling cepat dalam sistem komputer untuk melakukan
manipulasi data. Register umumnya diukur dengan satuan bit yang
dapat ditampung olehnya, seperti "register 8-bit", "register
16-bit", "register 32-bit", atau "register 64-bit" dan
lain-lain.
Istilah
register saat ini dapat merujuk kepada kumpulan register yang dapat diindeks
secara langsung untuk melakukan input/output terhadap sebuah instruksi yang
didefinisikan oleh set instruksi. untuk istilah ini, digunakanlah kata
"Register Arsitektur". Sebagai contoh set instruksi Intel
x86 mendefinisikan sekumpulan delapan buah register dengan ukuran 32-bit,
tetapi CPU yang mengimplementasikan set instruksi x86 dapat mengandung lebih
dari delapan register 32-bit.
Jenis Jenis Register
Register
memiliki jenisnya masing – masing, diaintaranya :
- Register data, yang digunakan untuk menyimpan
angka-angka dalam bilangan bulat (integer).
- Register alamat, yang digunakan untuk menyimpan
alamat-alamat memori dan juga untuk mengakses memori.
- Register general purpose, yang dapat digunakan untuk
menyimpan angka dan alamat secara sekaligus.
- Register floating-point, yang digunakan untuk menyimpan
angka-angka bilangan titik mengambang (floating-point).
- Register konstanta (constant register), yang digunakan untuk menyimpan
angka-angka tetap yang hanya dapat dibaca (bersifat read-only), semacam phi, null, true, false dan lainnya.
- Register vektor, yang digunakan untuk menyimpan
hasil pemrosesan vektor yang dilakukan oleh prosesor SIMD.
- Register special purpose yang dapat digunakan untuk
menyimpan data internal prosesor, seperti halnya instruction pointer,
stack pointer, dan status register.
- Register yang spesifik terhadap
model mesin (machine-specific register),
dalam beberapa arsitektur tertentu, digunakan untuk menyimpan data atau
pengaturan yang berkaitan dengan prosesor itu sendiri. Karena arti dari
setiap register langsung dimasukkan ke dalam desain prosesor tertentu
saja, mungkin register jenis ini tidak menjadi standar antara generasi
prosesor.
Fungsi Register
User Visible Register : Register CPU yang dapat digunakan oleh
pemrogram, dengan menggunakan set intsruksi memungkinkan satu buah register
atau lebih untuk dispesifikasian sebagai operand atau alamat operand.
Register CPU
yang dapat digunakan oleh pemrogram, dengan menggunakan set intsruksi
memungkinkan satu buah register atau lebih untuk dispesifikasian sebagai
operand atau alamat operand.
A. General
Purpose Register
·
Digunakan
untuk mode pengalamatan dan data.
·
Akumulator
( aritmatika, Shift, Rotate)
·
Base
Register (Rotate,Shift, aritmatika)
·
Counter
Register ( Looping)
·
Data
Register (menyimpan alamat I/O device).
B. Register
Alamat
·
Digunakan
untuk mode pengalamatan
·
Segment
Register (Code Segment, Data Segment, Stack Segment, Extra Segment)
·
Register
Index (Stack Index, Data Index)
·
Stack
Pointer
C. Register Data
·
Digunakan
untuk menampung data
D. Register Kode
Status Kondisi (Flag)
·
Kode
yang menggambarkan hasil operasi sebelumnya
Control Dan Status Register : Register ini digunakan oleh unit control
untuk mengontrol operasi cpu dan oleh program system operasi untuk mengontrol
eksekusi program.
A. Program
Counter (PC)
Berisi alamat instruksi yang
akan diambil
B. Instruction
Register (IR)
Berisi alamat instruksi
terakhir
C. Memory
Address Register (MAR)
Berisi alamat penyimpanan
dalam memori
D. Memori Buffer
Register (MBR)
Berisi data yang dibaca dari memori atau
yang diyliskan ke memori.
Sumber :
- http://deririyadip.blogspot.com/2014/09/macam-macam-register.html ( Diakses pada 3 januari 2018 )
- https://id.wikipedia.org/wiki/Register_prosesor ( Diakses pada 3 januari 2018 )
- http://dawn-harmony.blogspot.com/2014/11/clu-control-logic-unit.html ( Diakses pada 3 januari 2018 )
- Soepono Soeparlan, Pengantar Organisasi Sistem Komputer, Diktat Gunadarma, 1995
- "Register Pada Komputer.pdf"