Setelah sebelumnya sudah saya bahas
tentang komponen-komponen CPU, kali ini saya akan coba membahas tentang salah
satu komponen dari CPU ( Central Processing Unit ) tersebut. Materi bahasan
kita kali ini adalah Control Unit, seperti yang sudah kita ketahui sebelumnya control
unit merupakan salah satu komponen CPU, namun kita perlu ketahui lebih dalam
definisi lebih detail tentang Control Unit.
Apa
sebenarnya control unit itu ? Control Unit adalah salah 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. Output
dari Control Unit ini akan mengatur aktivitas dari bagian lainnya dari
perangkat CPU tersebut.
Pada
awal-awal desain komputer, Control Unit
diimplementasikan sebagai ad-hoc logic yang susah untuk didesain.
Sekarang, Control Unit diimplementasikan sebagai sebuah microprogram
yang disimpan di dalam tempat penyimpanan kontrol (control store).
Beberapa word dari microprogram
dipilih oleh microsequencer
dan bit yang datang dari word-word tersebut akan secara
langsung mengontrol bagian-bagian berbeda dari perangkat tersebut, termasuk di antaranya
adalah register, ALU, register instruksi, bus dan peralatan input/output di luar chip.
Pada komputer modern, setiap subsistem ini telah memiliki kontrolernya
masing-masing, dengan Control Unit
sebagai
pemantaunya (supervisor).
Tugas Contol Unit
Tugas dari Control Unit
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.
Macam-macam Control Unit
a. Single-Cycle Control Unit
Proses di
Control Unit 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.
b. Multi-Cycle Control Unit
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-bit opcode memberitahukan operasi
apa yang selanjutnya akan dijalankan CPU; bukan instruksi cycle selanjutnya.
Itulah definisi detai dari control
unit, untuk melihat artikel-artikel saya selanjutnya, tetap kunjungi blog ini. J
0 Response to "Control Unit"
Posting Komentar