ULASAN MENGENAI UNIT CONTROL
1. Pengertian Control Unit
Control Unit merupakan bagian dari microprosesor dimana fungsi dari CU adalah untuk memberikan arahan maupun pengawasan serta kontrol terhadap operasi yang dilakukan di bagian ALU (Arithmetic Logical Unit) yang terdapat di dalam CPU. Output dari CU ini akan mengatur aktivitas dari bagian lainnya dari perangkat CPU tersebut. Jika dilihat dari desain computer sebelumnya, CU diimplementasikan sebagai ad-hoc logic yang susah untuk didesain. Namun sekarang, CU diimplementasikan sebagai sebuah microprogram yang disimpan di dalam tempat penyimpanan kontrol (control store). Control unit dari sebuah prosesor memiliki 2 peran penting. Pertama, control unit mengatur processor agar melakukan semua micro-operation dalam urutan yang benar. Kedua, control unit menghasilkan control signal yang memastikan supaya semua micro-operation dieksekusi.
Control signal tersebut secara umum menyebabkan salah satu dari hal berikut: pembukaan atau penutupan dari gerbang-gerbang logika, transfer data antara register-register, dan pengoperasian ALU.
2. Tugas CU
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.
3. Macam-Macam CU
Sampai detik ini terdapat 2 macam jenis CU dimana tiap tiap CU memiliki desain maupun fungsi yang berbeda berikut macam macam dari CU :
1. Single-Cycle CU
Proses di CUl 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-decodeopcode 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 outputcontrol 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.
4. Operasi Control Unit
Pada Control Unit terdapat operasi yaitu Siklus Intruksi. Instruksi merupakan bentuk dari pengeksekusian langkah langkah kecil yang biasa disebut dengan Siklus fetch, Siklus Eksekusi, Siklus Pengambilan Tak Langsung, dan Siklus Interrupt.
Masing-masing Siklus masih dapat diuraikan kembali menjadi langkah – langkah yang lebih kecil lagi, yaitu micro-operation. Suatu micro-operation biasanya berupa transfer antar register, transfer antara register dan interface eksternal (seperti system bus), atau suatu operasi ALU biasa ( aritmetik dan logika).
5. Pengertian Operasi Mikro
Di dalam CU terdapat Operasi yang disebut Operasi Mikro dimana operasi tingkat rendah yang dapat dilakukan oleh komputer atau CPU sehingga fungsi-fungsi operasi akan dihasilkan untuk memindahkan data antar register. Salah satu cara dalam melakukan operasi mikro tersebut dengan menggunakan bahasa transfer register / Register Transfer Language (RTL). RTL adalah sebuah bahasa yang digunakan untuk menjabarkan atau melaksanakan operasi mikro. Untuk mengungkapkan bahasa RTL ini dapat digunakan notasi RTL yang merupakan aturan penulisan pemberian instruksi RTL.
Operasi Mikro mengatur fungsi-fungsi sebagai berikut :
1. Membuka/menutup suatu gerbang ( gate ) dari sebuah register ke sebuah bus
2. Mentransfer data sepanjang bus
3. Memberi inisial sinyal-sinyal kendali seperti READ, WRITE, SHIFT, CLEAR dan SET
4. Mengirimkan sinyal-sinyal waktu
5. Menunggu sejumlah periode waktu tertentu
6. Menguji bit-bit tertentu dalam sebuah register
6. Siklus Pengambilan/Fetch
Tahap Tahap dari Siklus Pengambilan yaitu:
1. Pada saat siklus pengambilan (fetch cycle), instruksi dibaca dari memori.
2. PC berisi alamat instruksi berikutnya yang akan diambil.
3. Alamat ini akan dipindahkan ke MAR dan ditaruh di bus alamat.
4. Unit kontrol meminta pembacaan memori dan hasilnya disimpan di bus data dan disalin ke MBR dan kemudian dipindahkan ke IR.
5. PC naik nilainya 1, sebagai persiapan untuk pengambilan selanjutnya.
6. Siklus selesai, unit kontrol memeriksa isi IR untuk menentukan apakah IR berisi operand specifier yang menggunakan pengalamatan tak langsung.
Siklus Fetch dalam Operasi Mikro
T1 : MAR (PC)
T2 : MBR Memori PC (PC) + 1
T3 : IR (MBR)
7. Siklus Pengambilan Tak Langsung
Proses/ Tahap Tahap Siklus Pengambilan Tak Langsung yaitu:
1. N bit paling kanan pada MBR, yang berisi referensi alamat, dipindahkan ke MAR.
2. Unit kontrol meminta pembacaan memori, agar mendapatkan alamat operand yang diinginkan ke dalam MBR.
3. Siklus meliputi pemindahan data di antara register-register, pembacaan atau penulisan dari memori atau I/O, atau penggunaan ALU.
Siklus Tak Langsung dalam Operasi Mikro
T1 : MAR (IR(Alamat))
T2 : MBR Memori
T3 : IR (Alamat) (MBR(Alamat))
8. Siklus Interrupt
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 control.
3. Lokasi ini berupa stack pointer.
4. PC dimuatkan dengan alamat rutin interrupt.
5. Akibatnya siklus intruksi berikutnya akan mulai mengambil instruksi yang sesuai.
Siklus Interrupt dalam Operasi Mikro
T1 : MAR (PC)
T2 : MBR Alamat-simpan PC Alamat-rutin
T3 : IR (MBR)
9. Siklus Eksekusi
Siklus Eksekusi 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/penambilan data dari main memory, mengirim instruksi ke ALU untuk melakukan operasi aritmatika atau logika dan menyimpan hasil pengolahan kembali ke main memory.
Siklus Eksekusi dalam Operasi Mikro
1. Penambahan (ADD)
ADD R1,X=Menambahkan isi lokasi X ke register R1
T1 : MAR (IR(Alamat))
T2 : MBR Memori
T3 : IR (R1)+(MBR)
2. ISZ = Isi lokasi X ditambahkan dengan 1. Apabila hasilnya sama dengan nol, maka instruksi berikutnya dilompati.
T1 : MAR (IR(Alamat))
T2 : MBR Memori
T3 : IR (MBR) + 1
T4 : Memori (MBR)
10. Jenis Jenis Sinyal Kontrol
1. Clock (satu instruksi operasi mikro persiklus clock)
2. Instruction Register (Opcode setiap instruksi dan menentukan instuksi mikro yang akan dilakukan)
3. Tags (Menunjukkan status CPU dan hasil dari operasi sebelumnya)
4. Pada BUS Kendali (Interupsi dan Sinyal Acknowledgment) Pada Ouput dalam CPU (Pergerakan Data dan Mengaktifkan fungsi Tertentu)
5. Melalui BUS Kendali (Ke memori dan Ke I/O)
11. Input Pada Unit Control:
1. Clock
Clock yaitu cara unit control dalam menjaga waktunya. Unit control menyebabkan sebuah operasi mikro ( atau sejumslah operasi mikro yang bersamaan) dibentuk bagi setiap pulsa waktu. Pulsa ini dikenal sebagai waktu siklus prosesor.
2. Register instruksi
Register instruksi merupakan 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.
12. Output Pada Unit Control
1. Sinyal control didalam prosesor, terdiri dari dua macam yaitu :
a) Sinyal-sinyal yang menyebabkan data dipindahkan dari register yang satu keregister yang lainnya dan,
b) Sinyal-sinyal yang dapat mengaktifasi fungsi-fungsi ALU tertentu
2. Sinyal control bagi Bus Control , sinyal ini terdiri dari dua macam yaitu :
a) Sinyal control bagi memori dan,
b) Sinyal control bagi modul-modul I/O.
13. Implementasi Hardwired
Unit kontrol merupakan rangkaian kombinatorial. Sinyal-sinyal logika inputnya akan didekodekan menjadi sinyal-sinyal logika output, yang merupakan sinyal-sinyal kontrol ke sistem komputer. Sinyal-sinyal input tersebut, seperti clock, flag, register instruction, dan sinyal kontrol merupakan input bagi unit kontrol untuk mengetahui status komputer. Sinyal keluaran yang dihasilkan akan mengendalikan sistem kerja komputer.
N buah input biner akan menghasilkan 2N output biner. Setiap instruksi memiliki opcode yang yang berbeda-beda. Opcode yang berbeda dalam instruksi akan menghasilkan sinyal kontrol yang berbeda pula. Pewaktu unit kontrol mengeluarkan rangkaian pulsa yang periodik.
Pulsa waktu ini digunakan untuk mengukur durasi setiap operasi mikro yang dijalankan CPU, intinya digunakan untuk sinkronisasi kerja masing-masing bagian. Masalah dalam Merancang Implementasi Hardwired:
1. Memiliki kompleksitas dalam pengurutan dan operasi mikronya
2. Sulit didesain dan dilakukan pengetesan
3. Tidak fleksibel
4. Sulit untuk menambahkan instruksi baru
Jadi secara garis besar:
1. Intinya unit control merupakan rangkaian kombinatorial
2. Sinyal-sinyal logika inputnya akan dikodekan menjadi sekumpulan sinyal-sinyal logika output yang merupakan sinyal-sinyal kontrol ke system computer
3. Input unit control meliputi sinyal-sinyal register instruksi, pewaktu, flag dan sinyal bus control
4. Sinyal-sinyal tersebut sebagai masukkan bagi unit control dalam mengetahui status computer
5. Selanjutnya dikodekan manghasilkan sinyal keluaran untuk mengendalikan system kerja computer
6. n buah input biner akan menghasilkan 2n output biner
7. setiap instruksi memiliki opcode yang berbeda – beda
8. opcode yang berbeda dalam setiap instruksi akan menghasilkan sinyal control yang berbeda pula
9. pewaktu unit control mengeluarkan rangkaian pulsa yang periodic
10. pulsa waktu ini digunakan untuk mengukur durasi setiap operasi mikro yang dijalankan CPU, intinya digunakan untuk sinkronisasi kerja masing – masing bagian\
14. Implementasi Microprogrammed
Implementasi yang paling sering digunakan saat ini adalah implementasi microprogrammed. Unit kontrol memerlukan sebuah memori untuk menyimpan program kontrolnya. Fungsi–fungsi pengontrolan dilakukan berdasarkan program kontrol yang tersimpan pada unit kontrol. Selain itu, fungsi–fungsi pengontrolan tidak berdasarkan dekode dari input unit kontrol lagi. Teknik ini dapat menjawab kesulitan–kesulitan yang ditemui dalam implementasi hardwired.
Jadi secara garis besar:
1. Unit control memerlukan sebuah memori untuk menyimpan program controlnya
2. Fungsi-fungsi pengontrolan dilakukan berdasarkan program control yang tersimpan pada unit control
3. Fungsi-fungsi pengontrolan tidak berdasarkan decode dari input unit control lagi
4. Teknik ini dapat menjawab kesulitan-kesulitan yang ditemui dalam implementasi hardwired
RANGKUMAN
Control Unit merupakan bagian dari microprossesor yang terdapat di dalam CPU yang berfungsi sebagai pengarah, pengontrol serta sebagai pengawas jalannya proses ALU (Arithmetic Logical Unit) pada CPU. Control Unit mempunyai peran yang sangat penting pada prosesor karena ia memiliki tugas untuk mengatur processor agar melakukan semua micro-operation dalam urutan yang benar dan Control Unit yang menghasilkan Control Signal yang memastikan supaya semua micro-operation dieksekusi dengan benar. Terdapat 2 jenis Control Unit yaitu Single Cycle dan Multi Cycle CU Serta terdapat beberapa Micro Operasi di dalam Siklus instruksi : Fetch, Fetch tidak langsung, siklus interrupt, serta siklus eksekusi. Pengimplementasian Control Unit dapat dibagi dua yaitu Pengimplementasian Hardwired Unit Control serta Pengimplementasian Microprogrammed Unit Control
siap min
BalasHapuspemotong sim cut
Top
BalasHapus