RISC dan PIPELINING
1.
REDUCE INSTRUCTION SET COMPUTER (RISC) .
Kata “reduced” berarti pengurangan pada set instruksi.
RISC merupakan rancangan arsitektur CPU yang mengembil dasar filosofi bahwa
prosesor dibuat dengan arsitektur yang tidak rumit dengan membatasi jumlah
instruksi hanya pada instruksi dasar yang diperlukan saja. Dengan kata lain
RISC adalah arsitektur komputer dengan kumpulan perintah (instruksi) yang
sederhana, tetapi dalam kesederhanaan tersebut didapatkan kecepatan operasi
setiap siklus instruksinya. Kebanyakan pada proses RISC , instruksi operasi dasar
aritmatik hanya penjumlahan dan pengurangan, untuk perkalian dan pembagian
sudah dianggap operasi ang kompleks. RISC menyederhanakan rumusan perintah
sehingga lebih efisien dalam penyusunan kompiler yang pada akhirnya dapat
memaksimumkan kinerja program yang ditulis dalam bahasa tingkat tinggi.
Ada beberapa elemen penting dalam arsitektur RISC, yaitu :
·
Set instruksi yang terbatas dan sederhana
·
Register general-purpose yang berjumlah banyak, atau pengguanaan teknologi
kompiler untuk mengoptimalkan pemakaian regsiternya.
·
Penekanan pada pengoptimalan pipeline instruksi.
Ciri-ciri karakteristik RISC :
·
Instruksi berukuran tunggal.
·
Ukuran yang umum adalah 4 byte.
·
Jumlah mode pengalamatan data yang sedikit, biasanya kurang dari lima buah.
·
Tidak terdapat pengalamatan tak langsung.
·
Tidak terdapat operasi yang menggabungkan operasi load/store dengan operasi
aritmatika .
Ada tiga buah elemen yang menentukan karakter arsitektur RISC, yaitu :
·
Penggunaan register dalam jumlah yang besar. Hal ini dimaksudkan untuk
mengoptimalkan pereferensian operand.
·
Diperlukan perhatian bagi perancangan pipeline instruksi. Karena tingginya
proporsi instruksi pencabangan bersyarat dan prosedur call, pipeline instruksi
yang bersifat langsung dan ringkas akan menjadi tidak efisien.
·
Terdapat set instruksi yang disederhanakan (dikurangi).
1. Konsep Arsitektur RISC
Konsep arsitektur RISC banyak menerapkan proses eksekusi
pipeline. Meskipun jumlah perintah tunggal yang diperlukan untuk melakukan
pekerjaan yang diberikan mungkin lebih besar, eksekusi secara pipeline
memerlukan waktu yang lebih singkat daripada waktu untuk melakukan pekerjaan
yang sama dengan menggunakan perintah yang lebih rumit. RISC memerlukan memori
yang lebih besar untuk mengakomodasi program yang lebih besar. Dengan
mengoptimalkan penggunaan memori register diharapkan siklus operasi semakin
cepat.
2. Pipelining
Pengertian pipelining, pipelining yaitu suatu cara yang
digunakan untuk melakukan sejumlah kerja secara bersama tetapi dalam tahap yang
berbeda yang dialirkan secara kontinu pada unit pemrosesan. Dengan cara ini,
maka unit pemrosesan selalu bekerja. Teknik pipeline ini dapat diterapkan pada
berbagai tingkatan dalam sistemkomputer. Bisa pada level yang tinggi, misalnya
program aplikasi, sampai pada tingkat yang rendah, seperti pada instruksi yang
dijalankan oleh microprocessor.
Prosesor Pipeline yang berputar
adalah prosesor baru untuk arsitektur superscalar komputasi. Ini didasarkan
pada cara yang mudah dan pipeline yang biasa, struktur yang dapat mendukung
beberapa ALU untuk lebih efisien dalam pengiriman dari bagian beberapa
instruksi. Daftar nilai arus yang berputar di sekitar pipa, dibuat oleh
dependensi data lokal. Selama operasi normal, kontrol sirkuit tidak berada pada
jalur yang kritis dan kinerja hanya dibatasi oleh data harga. Operasi mengalir
dengan interval waktu sendiri. Ide utama dari Pipeline Prosesor yang berputar
adalah circular uni-arah mengalir dari memori register oleh pusat waktu logika
dan proses secara parallel dari operasi ALU.
Keuntungan pipelining
·
Waktu siklus prosesor berkurang, sehingga meningkatkan tingkat instruksi
dalam kebanyakan kasus( lebih cepat selesai).
·
Beberapa combinational sirkuit seperti penambah atau pengganda dapat dibuat
lebih cepat dengan menambahkan lebih banyak sirkuit. Jika pipelining digunakan
sebagai pengganti, hal itu dapat menghemat sirkuit & combinational yang
lebih kompleks.
·
Pemrosesan dapat dilakukan lebih cepat, dikarenakan beberapa proses
dilakukan secara bersamaan dalam satu waktu.
Kerugian pipeline
·
Pipelined prosesor menjalankan beberapa instruksi pada satu waktu. Jika ada
beberapa cabang yang mengalami penundaan cabang (penundaan memproses data) dan
akibatnya proses yang dilakukan cenderung lebih lama.
·
Instruksi latency di non-pipelined prosesor sedikit lebih rendah daripada
dalam pipelined setara. Hal ini disebabkan oleh fakta bahwa intruksi ekstra
harus ditambahkan ke jalur data dari prosesor pipeline.
·
Kinerja prosesor di pipeline jauh lebih sulit untuk meramalkan dan dapat
bervariasi lebih luas di antara program yang berbeda.
·
Karena beberapa instruksi diproses secara bersamaan ada kemungkinan
instruksi tersebut sama-sama memerlukan resource yang sama, sehingga diperlukan
adanya pengaturan yang tepat agar proses tetap berjalan dengan benar.
·
Sedangkan ketergantungan terhadap data, bisa muncul, misalnya instruksi
yang berurutan memerlukan data dari instruksi yang sebelumnya.
·
Kasus Jump, juga perlu perhatian, karena ketika sebuah instruksi meminta
untuk melompat ke suatu lokasi memori tertentu, akan terjadi perubahan program
counter, sedangkan instruksi yang sedang berada dalam salah satu tahap proses
yang berikutnya mungkin tidak mengharapkan terjadinya perubahan program
counter.
Referensi :
Komentar
Posting Komentar