Langsung ke konten utama

Kendali Mikroprogrammed (Tugas 2)

KENDALI MIKROPROGRAMMED


Istilah program-mikro pertama kali diungkapkan oleh M.V Wilkes pada awal tahun 1950-an ketika dia mengajukan suatu pendekatan baru untuk mengendalikan perancangan unit. Ide ini menarik perhatian banyak ahli dan insinyur komputer pada saat itu, walaupun hal itu tampak tidak realistis karena adanya persyaratan untuk memori kendali yang sangat cepat dan relatif tidak mahal. Situasi ini berubah secara dramatis dengan adanya pengumuman keluarga komputer IBM System/360 pada bulan April 1964. Seluruh model terbesar menyertakan memori kontrol yang cepat dan tidak mahal dan merupakan microprogrammed. Sejak itu, pemrograman mikro menjadi hal yang umum sejalan dengan peningkatan kecepatan dan penurunan harga memori kontrol.

  

     A. Unit Kendali
Unit kendali (bahasa InggrisControl 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. 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 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 CU sebagai pemantaunya (supervisor).

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.

Macam-macam CU
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-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.

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.

Macam register yang digunakan:
a. Register alamat memori (MAR): dihubungkan dengan saluran alamat bus system. MAR menerapkan alamat didalam memori untuk operasi membaca dan menulis.
b. Register buffer memori (MBR): dihubungkan dengan saluran data bus system. MBR berisi nilai yang akan disimpan di memori atau nilai terakhir yang dibaca dari memori.
c. Program counter (PC); menampung alamat instruksi berikutnya yang akan diambil.
d. Register instruksi (IR); menampung instruksi terakhir yang diambil.

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

Dua tugas dasar unit control:
Pengurutan: unit control menyebabkan prosesor menuju sejumlah operasi mikro dalam urutan yang benar, yang didasarkan pada program yang sedang dieksekusi.
Eksekusi: unit control menyebabkan setiap operasi mikro dilakukan.

Masukan-masukan unit control:
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.

Keluaran-keluaran unit control:
a. 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.
b. Sinyal control bagi bus control; sinyal ini juga terdiri dari dua macam: sinyal control bagi memori dan sinyal control bagi modu-modul I/O

Terdapat tiga macam sinyal control:
· Sinyal-sinyal yang mengaktifasi fungsi ALU
· Sinyal-sinya yang mengaktifasi alur data
· Sinyal-sinyal pada bus system eksternal atau antar muka eksternal lainnya.
Sinyal control yang dhasilkan oleh unit control menyebabkan terbuka dan tertutupnya gerbanga logika, dihasilkan pada perpindahan data dank e register dan operasi ALU.


     B. Organisasi CLU Microprogrammed

          Instruksi di-fetch kedalam IR dan pengendali mikro menjalankan program mikro yang bersesuaian. Address awal program mikro di-load kedalam CAR(Control Address Register) kemudian memori control mentransfer instruksi mikro pertama ke dalam CBR(Control Buffer Register). 
Dengan memfetch sebuah instruksi mikro dari memori kontrol berarti kita menyatakan sebuah siklus mikro,yaitu waktu di mana instruksi mikro didecode untuk menghasilkan sinyal kendali yang diperlukan untuk menjalankannya. CAR secara normal bertambah 1 pada tiap-tiap pulsa sehingga dapat mengalamati instruksi mikro berikutnya secara berurutan. Namun, perhatikan bahwa rangkaian tersebut dapat diubah oleh kondisi-kondisi yang terjadi di dalam atau di luar CLU, yang mungkin menyebabkan pengendali mikro meningkatkan CAR lebih dari 1. Jika ada operand yang diperlukan untuk suatu instruksi tertentu maka informasi address dalam IR di-decode untuk melengkapi lokasi operand.


     C. FORMAT INSTRUKSI MIKRO

Pada dasarnya ada dua jenis format instruksi-mikro: horisontal dan vertikal. Pada format instruksi-mikro horisontal, satu bit diberikan untuk setiap sinyal logika yang dapat dihasilkan oleh instruksi-mikro. Dengan demikian, jika dibutuhkan sejumlah K sinyal kendali yang berbeda maka dibutuhkan instruksi-mikro dengan word sepanjang K bit. Untuk menghasilkan suatu sinyal tertentu, bit yang bersesuaian dalam instruksi mikro diatur menjadi 1, kehadiran suatu sinyal kendali diindikasikan dengan menempatkan sebuah nol pada posisi bit yang semestinya. Pendekatan ini mempunyai keuntungan bahwa kita dapat menghasilkan sebanyak mungkin sinyal kendali yang diperlukan secara beruntun, yang memungkinkan operasi yang sangat cepat.

Namun demikian kebanyakan operasi-mikro adalah mutual ekslusif dan tidak pernah dipanggil secara bersamaan. Karena itu, kita dapat membagi mereka ke dalam kelompok-kelompok dan menggunakan sejumlah bit (field) untuk memberi kode sekumpulan intruksi-mikro yang mutual ekslusif. Kemudian digunakan suatu dekoder untuk memilih operasi mikro tertentu yang akan dipanggil. Jika terbawa ke dalam ekstrem (hanya satu field) maka proses mengode (coding) dan mendekode (decoding) menghasilkan suatu format instruksi-mikro vertikal, dimana hanya ada satu operasi-mikro yang dipanggil pada suatu waktu. Karena itu instruksi-mikro vertikal menyerupai format sebuah interuksi-makro dan terdiri atas suatu kode operasi tunggal, disebut sebagai opecode mikro, satu operand atau lebih, dan berberapa field lain (misalnya untuk percabangan kondisional).


     D. Komponen-Komponen Pokok  Control Unit Microprogrammed

1. Instruction Register                                                                                                                  
Menyimpan instruksi register mesin yang dijalankan.
2. Control Store berisi microprogrammed                                                                                  
a. Untuk semua instruksi mesin                                                                                                
b. Untuk startup mesin.                                                                                                              
c. Untuk memprosesan interupt
3. Address Computing Circuiting                                                                                                  
Menentukan alamat Control Store dari mikroinstruksi berikutnya yang akan dijalankan.
4. Microprogrammed Counter                                                                                                      
Menyimpan alamat dari mikroinstruksi berikutnya.
5. Microinstruction Buffer                                                                                                              
Menyimpan mikroinstruksi tersebut selama dieksekusi.
6. Microinstruction Decoder                                                                                                       Menghasilkan dan mengeluarkan mikroorder yang didasarkan pada mikroinstruksi dan opcode instruksi yang akan dijalankan

Komentar

Postingan populer dari blog ini

Representasi Floating Point & Aritmatika Floating-Point (Tugas 1)

Bilangan Floating Point             Notasi floating-point dapat digunakan untuk merepresentasikan baik bilangan yang sangat besar (|N| » 0), bilangan yang sangat kecil atau dekat dengan nol (|N| « 1), maupun bilangan yang terdiri dari keduanya. Floating-point membuat proses operasi aritmatika menjadi relatif lebih mudah. Floating-point merepresentasi bilangan nyata dalam bentuk persamaan: N = m × R e Dimana: m merupakan bagian bilangan pecahan yang biasa disebut significand atau mantissa e  adalah bagian bilangan bulat yang biasa disebut exponent R merupakan basis dari suatu sistem bilangan Bagian bilangan pecahan m merupakan  p -digit bilangan dengan bentuk (±d.dddd ... dd), dimana semua digit d adalah bilangan bulat antara 0 dan R-1. Jika digit terdepan (sebelak kiri) dari m bukan angka nol, maka bilangan ini dapat dikatakan sebagai  normalized . Format Bilangan Floating-Point Format bilangan floating-point biner telah distandarkan oleh IEEE 754-2008 (at

Enkripsi

Enkripsi A.     Pengertian Enkripsi Enkripsi adalah suatu metode yang digunakan untuk mengkodekan data sedemikian rupa sehingga keamanan informasinya terjaga dan tidak dapat dibaca tanpa di dekripsi (kebalikan dari proses enkripsi) dahulu. Encryption berasal dari bahasa yunani kryptos yang artinya tersembunyi atau rahasia. Enkripsi  dapat digunakan untuk tujuan keamanan, tetapi teknik lain masih diperlukan untuk membuat komunikasi yang aman, terutama untuk memastikan integritas dan autentikasi dari sebuah pesan. Contohnya, Message Authentication Code (MAC) atau digital signature. Penggunaan yang lain yaitu untuk melindungi dari analisis  jaringan komputer B.      Sejarah Singkat Enkripsi Jaman dahulu orang Yunani menggunakan tool yang disebut  Scytale  untuk membantu mengenkripsi pesan yang akan mereka kirimkan. Metode ini lebih cepat dibandingkan dengan menggunakan  . Mereka akan membungkus silinder dengan kertas, menulis pesan dan mengirimkannya. Metode enkripsi i

ADSL, SDSL, HOTSPOT, DAN WIFI

ADSL, SDSL, HOTSPOT, DAN WIFI A.      Pengertian ADSL ADSL merupakan singkatan dari  Asymmetric Digital Subscriber Line,  yaitu suatu bentuk teknologi pada komunikasi data yang dapat mentransmisikan data dengan cepat yang tinggi melalui kabel tembaga telepon dan memiliki sifat asimetrik, sifat asimetrik maksudnya bahwa data ditransferkan dengan kecepatan berbeda dari satu sisi ke sisi lainnya. Teknologi ADSL dapat mengirimkan data dengan kecepatan tinggi, antara 1.5 Mbps s/d 8 Mbps untuk arah dari sentral ke pelanggan atau disebut dengan  Downstream  dan 16 Kbps s/d 640 Kbps untuk arah pelanggan ke sentral atau disebut dengan  Upstream . Dengan ADSL inilah sehingga dapat mengirimkan layanan interaktif multimedia dengan menggunakan jaringan akses kabel tembaga. Jadi dapat disimpulkan  Fungsi dari ADSL  yaitu suatu teknologi dalam komunikasi data yang digunakan untuk mentransfer data dan dapat digunakan untuk keperluan internet, yang secara fisik menggunakan line telepon.   Pe