Jumat, 28 November 2008

Reduced Instruction Set Computer (RISC)

Reduced Instruction Set Computer (RISC)
Beberapa elemen penting pada arsitektur RISC :
􀂙 Set instruksi yang terbatas dan sederhana
􀂙 Register general-purpose yang berjumlah banyak, atau penggunaan teknologi kompiler untuk mengoptimalkan pemakaian registernya.
􀂙 Penekanan pada pengoptimalan pipeline instruksi.
Ditinjau dari jenis set instruksinya, ada 2 jenis arsitektur komputer, yaitu:
1. Arsitektur komputer dengan kumpulan perintah yang rumit
(Complex Instruction Set Computer = CISC)
2. Arsitektur komputer dengan kumpulan perintah yang sederhana
(Reduced Instruction Set Computer = RISC)
􀂙 CISC dimaksudkan untuk meminimumkan jumlah perintah yang diperlukan untuk mengerjakan pekerjaan yang diberikan. (Jumlah perintah sedikit tetapi rumit)
Konsep CISC menjadikan mesin mudah untuk diprogram dalam bahasa
rakitan, tetapi konsep ini menyulitkan dalam penyusunan kompiler bahasa pemrograman tingkat tinggi.
Dalam CISC banyak terdapat perintah bahasa mesin.
􀂙 RISC menyederhanakan rumusan perintah sehingga lebih efisien dalam penyusunan kompiler yang pada akhirnya dapat memaksimumkan kinerja program yang ditulis dalam bahasa tingkat tinggi.
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.
Mesin RISC memerlukan memori yang lebih besar untuk mengakomodasi program yang lebih besar.
IBM 801 adalah prosesor komersial pertama yang menggunakan pendekatan RISC.
Lebih lanjut untuk memahami RISC, diawali dengan tinjauan singkat tentang karakteristik eksekusi instruksi.
Aspek komputasi yang ditinjau dalam merancang mesin RISC adalah sbb.:
􀃆 Operasi-operasi yang dilakukan:
Hal ini menentukan fungsi-fungsi yang akan dilakukan oleh CPU dan interaksinya dengan memori.
􀃆 Operand-operand yang digunakan:
Jenis-jenis operand dan frekuensi pemakaiannya akan menentukan organisasi memori untuk menyimpannya dan mode pengalamatan untuk mengaksesnya.
􀃆 Pengurutan eksekusi:
Hal ini akan menentukan kontrol dan organisasi pipeline.

Operasi dengan High Level Language (HLL)

Hasil-hasil penelitian yang dilakukan untuk menganalisis tingkah laku program-program HLL menunjukkan:
􀃆 Assignment Statement sangat menonjol diikuti statement bersyarat (IF, LOOP) lihat tabel dibawah ini.
Hasil-hasil penelitian ini merupakan hal yang sangat penting bagi perancangan set instruksi mesin.

Eksekusi Instruksi

Waktu eksekusi dapat dirumuskan sbb.:
Waktu eksekusi = N x S x T
Dengan
N adalah jumlah perintah
S adalah jumlah rata-rata langkah per perintah
T adalah waktu yang diperlukan untuk melaksanakan satu langkah
Kecepatan eksekusi dapat ditingkatkan dengan menurunkan nilai dari ketiga varisbel di atas.
Arsitektur CISC berusaha menurunkan nilai N, sedangkan
Arsitektur RISC berusaha menurunkan nilai S dan T.

o Proses pipeline dapat digunakan untuk membuat nilai efektif S mendekati 1 (satu) artinya komputer menyelesaikan satu perintah dalam satu siklus waktu CPU.
o Nilai T dapat diturunkan dengan merancang perintah yang sederhana.
Operand

􀃆 Penelitian yang dilakukan Patterson terhadap frekuensi dinamik terjadinya kelas-kelas variabel dalam program pascal dan C menunjukkan bahwa mayoritas referensi menuju ke variable-variable skalar.
􀃆 Lebih dari 80% skalar bersifat variabel lokal.
􀃆 Penelitian tersebut menyatakan bahwa jenis arsitektur berpengaruh pada kecepatan pengaksesan operand.

Procedure Calls

􀃆 Prosedur call dan return merupakan aspek yang penting dalam program-program HLL.
􀃆 Tabel 4.2 menunjukkan bahwa prosedur call dan return merupakan operasi yang paling banyak membutuhkan waktu dalam program-program yang dikompilasi.
􀃆 Dua aspek yang lain adalah jumlah parameter dan variabel yang berkaitan dengan prosedur, dan kedalaman pensarangan (nesting).
Implikasi
􀂙 Hasil-hasil penelitian secara umum dapat dinyatakan bahwa terdapat tiga buah elemen yang menentukan karakter arsitektur RISC.
􀂃 Pertama, penggunaan register dalam jumlah yang besar. Hal ini dimaksudkan untuk mengoptimalkan pereferensian operand.
􀂃 Kedua, 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.
􀂃 Ketiga, terdapat set instruksi yang disederhanakan (dikurangi).
􀂙 Keinginan untuk mengimplementasikan keseluruhan CPU dalam keping tunggal akan merupakan solusi Reduced Instruction Set.

Tidak ada komentar: