Sebelum ke pambahasan tentang ALU
dan CU, dimana ada salah satu komponen yang sangat berkaitan dengan keduanya yaitu adalah CPU.
Central Processing Unit (CPU) adalah
bagian dari komputer yang berupa perangkat keras (hardware) yang merupakan
pusat kendali dari sistem komputer dan mengkoordinasi semua kegiatan yang ada.
Agar semua terkoordinir dengan baik,
harus ada interaksi antara peralatan satu dengan yang lain agar kegiatan
berjalan dengan baik.
Fungsi utama dari CPU yaitu
melakukan operasi aritmatika dan logika terhadap data yang
diambil dari memori atau dari informasi yang dimasukkan melalui
beberapa perangkat alat input, seperti keyboard maupun mouse. CPU tentunya
memiliki komponen-komponen yang menyusunnya. ALU dan CU merupakan komponen dari
CPU serta satu lagi yaitu register.
ALU (Arithmetic Logic Unit)
Jika CPU diasumsikan sebagai otaknya
komputer, maka ada suatu alat lain di dalam CPU tersebut yang kenal dengan
nama Arithmetic Logical Unit (ALU), ALU inilah yang berfikir untuk
menjalankan perintah yang diberikan kepada CPU tersebut.
ALU adalah unit yang bertugas untuk melakukan
operasi aritmetika dan operasi logika berdasar instruksi yang ditentukan, di
mana ALU ini sendiri memiliki berbagai
komponen elektronika didalamnya, yaitu berupa sekumpulan transistor yang
dikenal dengan nama logic gate. Logic gate inilah yang berfungsi untuk
melaksanakan operasi aritmatika dan operasi
logika. Contoh operasi aritmatika adalah operasi
penjumlahan (add) dan pengurangan (sub), sedangkan contoh operasi logika adalah
logika AND, OR dan NOT.
ALU sering di sebut mesin
bahasa karena bagian ini ALU terdiri dari dua bagian, yaitu unit
arithmetika dan unit logika boolean yang masing-masing memiliki spesifikasi
tugas tersendiri.
Tugas utama dari ALU adalah
melakukan semua perhitungan aritmatika (matematika) yang terjadi sesuai dengan
instruksi program. ALU melakukan semua operasi aritmatika dengan dasar
penjumlahan sehingga sirkuit elektronik yang digunakan disebut adder.
Tugas lain dari ALU adalah melakukan
keputusan dari suatu operasi logika sesuai dengan instruksi program. Operasi
logika meliputi perbandingan dua operand dengan menggunakan operator logika
tertentu yaitu :
a. sama dengan (=)
b. tidak sama dengan (< >)
c. kurang dari (<)
d. kurang atau sama dengan dari (<=)
e. lebih besar dari (>)
f. lebih besar atau sama dengan dari (>=)
Fungsi-fungsi yang didefinisikan
pada ALU adalah add (penjumlahan), addu (penjumlahan tidak bertanda),
sub (pengurangan), subu (pengurangan tidak bertanda), and, or, xor,
sll (shift left logical), srl (shift right logical), sra (shift right
arithmetic), dan lain-lain.
CU (Control Unit)
Unit kontrol (bahasa
Inggris: Control Unit - CU) 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.
Tanggung jawab dari unit
kontrol adalah mengambil intruksi-intruksi dari memori utama dan menentukan
jenis instruksi tersebut. Bila ada instruksi untuk perhitungan aritmatika atau
perbandingan logika, maka unit kendali akan mengirim instruksi tersebut ke ALU.
Hasil dari pengolahan data dibawa
oleh unit kendali ke memori utama lagi untuk disimpan, dan pada saatnya akan
disajikan ke alat output. Output dari CU ini akan mengatur aktivitas dari
bagian lainnya dari perangkat CPU tersebut.
Pada awal-awal desain komputer, CU
diimplementasikan sebagai ad-hoc logic yang susah untuk didesain. Sekarang, CU
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 diantaranya adalah register, ALU, register instruksi, bus dan
peralatan input dan output di luar chip. Pada komputer modern, setiap subsistem
ini telah memiliki kontrolernya masing-masing, dengan CU sebagai pemantaunya
(supervisor).
@ Tugas dari CU adalah sebagai berikut:
1. Mengatur dan mengendalikan alat-alat input dan output.
2. Mengambil instruksi-instruksi dari memori utama.
3. Mengambil data dari memori utama kalau diperlukan oleh proses.
4. Mengirim instruksi ke ALU bila ada perhitungan aritmatika atau perbandingan
logika serta mengawasi kerja.
5. Menyimpan hasil proses ke memori utama.
@ Proses tiga langkah
karakteristik unit control:
1. Menentukan elemen dasar prosesor
2. Menjelaskan operasi mikro yang akan dilakukan prosesor
3. Menentukan fungsi-fungsi yang harus dilakukan unit control agar menyebabkan
pembentukan operasi mikro
@ Masukan-masukan unit
control:
1. 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.
2. Register instruksi
Opcode instruksi saat itu digunakan
untuk menentukan operasi mikro mana yang akan dilakukan selama siklus eksekusi.
3. Flag
Flag
ini diperlukan oleh unit control untuk menentukan status prosesor dan hasil operasi ALU sebelumnya.
4. Sinyal control untuk
mengontrol bus
Bagian bus control bus system
memberikan sinyal-sinyal ke unit control, seperti sinyal-sinyal interupsi dan
acknowledgement.
@ Keluaran-keluaran unit
control:
• 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.
@ Macam-macam
CU (Control Unit) :
1. Single-Cycle
CU
Proses di 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.
2. Multi-Cycle
CU
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
DAFTAR SUMBER
7.
www.wikipedia.org