Turunan
Processor Risc Berkeley
Rancangan prosesor RISC-1 ditujukan untuk mendukung
bahasa C, yang dipilih karena popularitasnya dan banyaknya pengguna. Realisasi
rancangan diselesaikan oleh kelompok Patterson dalam waktu 6 bulan. Fabrikasi
dilakukan oleh MOVIS dan XEROX dengan menggunakan teknologi silikon NMOS
(N-channel Metal-oxide Semiconductor) 2 mikron. Hasilnya adalah sebuah cip
rangkaian terpadu dengan 44.500 buah transistor (Heudin, 1992 : 230). Cip
RISC-1 selesai dibuat pada musim panas dengan kecepatan eksekusi 2 mikrosekon
per instruksi (pada frekuensi detak 1,5 MHz), 4 kali lebih lambat dari
kecepatan yang ditargetkan. Tidak tercapainya target itu disebabkan terjadinya
sedikit kesalahan perancangan, meskipun kemudian dapat diatasi dengan
memodifikasi rancangan assemblernya.
Berdasarkan hasil evaluasi, meskipun hanya bekerja pada
frekuensi detak 1,5 MHz dan mengandung kesalahan perancangan, RISC-1 terbukti
mampu mengeksekusi program bahasa C lebih cepat dari beberapa prosesor CISC,
yakni MC68000, Z8002, VAX-11/780, dan PDP-11/70.
Hampir bersamaan dengan proses fabrikasi RISC-1, tim
Berkeley lain mulai bekerja untuk merancang RISC-2. Cip yang dihasilkan tidak
lagi mengandung kesalahan sehingga mencapai kecepatan operasi yang ditargetkan,
330 nanosekon tiap instruksi (Heudin, 1992 : 27-28).
RISC-2 hanya memerlukan luas cip 25% dari yang dibutuhkan
RISC-1 dengan 75% lebih banyak register. Meskipun perangkat instruksi yang
ditanamkan sama dengan perangkat instruksi yang dimiliki RISC-1, tetapi di
antara keduanya terdapat perbedaan mikroarsitektur perangkat kerasnya. RISC-2 memiliki
138 buah register yang disusun sebagai 8 jendela register, dibandingkan dengan
78 buah register yang disusun sebagai 6 jendela register. Selain itu, juga
terdapat perbedaan dalam hal organisasi alur-pipa (pipeline) . RISC-1 memiliki
alur-pipa dua tingkat sederhana dengan penjeputan (fetch) dan eksekusi
instruksi yang dibuat tumpang-tindih, sedangkan RISC-2 memiliki 3 buah
alur-pipa yang masing-masing untuk penjemputan instruksi, pembacaan operan dan
eksekusinya, dan penulisan kembali hasilnya ke dalam register.
Sukses kedua proyek memacu tim Berkeley untuk mengerjakan
proyek SOAR (Smalltalk on RISC) yang dimulai pada tahun 1983. Tujuan proyek ini
adalah untuk menjawab pertanyaan apakah arsitektur RISC bekerja baik dengan
bahasa pemrograman Smalltalk? Jadi proyek SOAR ini merupakan upaya pertama
menggunakan pendekatan RISC untuk pemrosesan simbolik.
Versi pertama mikroprosesor SOAR diimplementasikan dengan
menggunakan teknologi NMOS 4 mikron. Cip yang dihasilkan memiliki 35.700 buah
transistor dan bekerja dengan kecepatan 300 nanosekon tiap instruksi. Versi
kedua yang dirancang pada 1984-1985 menggunakan teknologi CMOS (Complementary
Metal-oxide Semiconductor). Beberapa prosesor berarsitektur RISC banyak yang
dipengaruhi oleh rancangan mikroprosesor SOAR, misalnya mikroprosesor SPARC
(dari Sun Microsystems Inc.) dan KIM20 yang dirancang Departemen Pertahanan
Perancis.
Mikroprosesor
SPARC
Mengikuti proyek SOAR, kelompok Berkeley kemudian
mengerjakan proyek SPUR (Symbolic Processing Using RISC) yang dimulai tahun
1985. Proyek SPUR bertujuan untuk merancang stasiun-kerja(workstation)
multiprosesor sebagai bagian dari riset tentang pemrosesan paralel (Robinson,
1987 : 145). Selain itu, proyek SPUR juga melakukan penelitian tentang
rangkaian terpadu, arsitektur komputer, sistem operasi, dan bahasa pemrograman.
Sistem prosesor SPUR dibangun dengan 6-12 prosesor berkinerja tinggi yang
dihubungkan satu sama lain, serta dihubungkan dengan memori dan peranti
masukan/keluaran melalui Nubus yang telah dimodifikasi. Unjuk kerja sistem
diperbaiki dengan menambahkan chace sebesar 128 kilobyte pada tiap prosesor
untuk mengurangi kepadatan lalu lintas data pada bus dan mengefektifkan
pengaksesan memori (Heudin, 1992 : 31).
Prosesor RISC Stanford
Sementara proyek RISC-1 dan RISC-2 dilakukan kelompok
Patterson di Universitas California, pada tahun 1981 itu juga John Hennessy
dari Universitas Stanford mengerjakan proyek MIPS (Microprocessor without
Interlocked Pipeline Stages) . Pengalaman riset tentang optimasi kompilator
digabungkan dengan teknologi perangkat keras RISC merupakan kunci utama proyek
MIPS ini. Tujuan utamanya adalah menghasilkan cip mikroprosesor serbaguna
32-bit yang dirancang untuk mengeksekusi secara efisien kode-kode hasil
kompilasi (Heudin, 1992: 34).
Perangkat instruksi prosesor MIPS terdiri atas 31 buah
instruksi yang dibagi menjadi 4 kelompok, yakni kelompok instruksi isi dan
simpan, kelompok instruksi operasi aritmetika dan logika, kelompok instruksi
pengontrol, dan kelompok instruksi lain-lain. MIPS menggunakan lima tingkat
alur-pipa tanpa perangkat keras saling-kunci antar alur-pipa tersebut, sehingga
kode yang dieksekusi harus benar-benar bebas dari konflik antar alur-pipa.
Direalisasi dengan teknologi NMOS 2 mikron, prosesor MIPS
yang memiliki 24.000 transistor ini memiliki kemampuan mengeksekusi satu
instruksi setiap 500 nanodetik. Karena menggunakan lima tingkat alur-pipa
bagian kontrol prosesor MIPS ini menyita luas cip dua kali lipat dibanding
dengan bagian kontrol pada prosesor RISC. MIPS memiliki 16 register
dibandingkan dengan 138 buah register pada RISC-2. Hal ini bukan masalah
penting karena MIPS memang dirancang untuk mebebankan kerumitan perangkat keras
ke dalam perangkat lunak sehingga menghasilkan perangkat keras yang jauh lebih
sederhana dan lebih efisien. Perangkat keras yang sederhana akan mempersingkat
waktu perancangan, implementasi, dan perbaikan bila terjadi kesalahan.
Sukses perancangan MIPS dilanjutkan oleh tim Stanford
dengan merancang mikroprosesor yang lebih canggih, yakni MIPS-X. Perancangan
dilakukan oleh tim riset MIPS sebelumnya ditambah 6 orang mahasiswa, dan
dimulai pada musim panas tahun 1984. Rancangan MIPS-X banyak diperbaruhi oleh
MIPS dan RISC-2 dengan beberapa perbedaan utama :
• Semua
instruksi MIPS-X merupakan operasi tunggal dan dieksekusi dalam satu siklus
detak
• Semua
instruksi MIPS-X memiliki format tetap dengan panjang instruksi 32-bit
• MIPS-X
dilengkapi pendukung koprosesor yang efisien dan sederhana
• MIPS-X
dilengkapi pendukung untuk digunakan sebagai prosesor dasar dalam sistem
multiprosesor memori-bersama (shared memory)
• MIPS-X
dilengkapi chace instruksi dalam-cip yang cukup besar (2 kilobyte)
• MIPS-X
difabrikasi dengan teknologi CMOS 2 mikron.
Sama seperti MIPS, MIPS-X merupakan prosesor dengan
alur-pipa tanpa saling-kunci (interlock) perangkat keras. Perangkat lunaknya
dirancang untuk mengikuti pewaktuan instruksi agar tidak terjadi konflik antar
alur-pipa (Heudin, 1992 : 36-37).
Cip pertama
yang dihasilkan bekerja baik dengan detak 16 MHz, lebih rendah dari target yang
dicanangkan setinggi 20 MHz, akibat tidak sempurnanya instruksi percabangan.
Versi 25 MHz dibuat dengan menggunakan teknologi CMOS 1,6 mikron. Ditambah
dengan chace yang diintregrasikan pada cip prosesor, MIPS-X berisi hampir
150.000 transistor di atas keping seluas 8 x 8,5 mm (Heudin, 1992 : 38).
MIPS X
Motherboard Block
Arah
Perkembangan Prosesor RISC
Kebanyakan riset tentang prosesor RISC
ditujukan untuk memperbaiki kinerja sistem komputer secara keseluruhan.
Analisis yang mendalam menunjukkan bahwa ada dua arah perlembangan penting
prosesor RISC yaitu upaya ke arah pemanfaatan teknologi proses yang mampu
menghasilkan prosesor cepat, misalnya teknologi bipolar ECL (emitter-coupled
logic) serta pemanfaatan bahan semikonduktor GaAs(galium arsenida). Arah lain
adalah upaya untuk merancang arsitektur multiprosesor dan mengintegrasikan
unit-unit fungsional pendukung pemrosesan paralel dalam satu cip.
Cip-cip
RISC galium Arsenida
Chip Galium
Arsenida
Galium Arsenida dapat digunakan untuk
menggantikan silikon dalam beberapa rangkaian terpadu untuk pemakaian khusus.
Keunggulan bahan GaAs dibandingkan silikon adalah ketahanannya terhadap
radiasi, dan ketahanannya terhadap panas, serta kecepatan mobilitas
elektronnya. Karena elektron dapat bergerak lebih cepat dalam bahan GaAs, maka
cip yang dibuat dengan bahan ini berpotensi untuk bekerja lebih cepat (Jonhsen,
1984 : 46; Robinson, 1990 : 251-254). Salah satu kendala pengembangan cip
berbahan GaAs adalah sulitnya penanganan bahan ini dibanding dengan bahan
silikon karena perancang belum banyak pengalaman dengan bahan GaAs. Meskipun
demikian, teknologi yang dikuasai saat ini telah memungkinkan untuk membuat
rangkaian terintegrasi dengan tingkat kerapatan cukup tinggi untuk merancang
prosesor RISC.
Didorong oleh kebutuhan untuk merancang
prosesor berkecepatan tinggi dan tahan terhadap radiasi sesuai dengan
spesifikasi yang dibutuhkan Departemen Pertahanan Amerika Serikat, maka DARPA (Defense
Advanced Research Projects Agency) memberikan dana kepada Texas Instruments
(TI), RCA, dan McDonnell-Douglas, untuk mengembangkan dan merancang prosesor
RISC dari bahan GaAs. Agar memiliki kinerja yang tinggi, DARPA menghendaki unit
prosesor sentral (central processing unit, CPU) dirancang dalam cip tunggal,
seperti prosesor MIPS yang pengembangannya juga dibiayai DARPA. Ditargetkan
prosesor tersebut akan dapat dijalankan dengan detak berfrekuensi 200 MHz. Ini
berarti target kecepatan kerjanya adalah 200 MIPS (million instructions per
second, juta instruksi per detik), karena pada prosesor RISC satu instruksi
dieksekusi dalam satu siklus detak.
Sistem yang dipilih terdiri dari
seperangkat cip, yakni, CPU, FCOP (floating point coprocessor) , MMU(memory
management unit) dan chace. Agar bisa merealisasi CPU dalam satu cip, TI
berupaya mengurangi rangkaian pengontrol sebanyak mungkin untuk memberi lebih
banyak tempat bagi register-register. Perangkat instruksi dikembangkan
berdasarkan simulasi statistik dan evaluasi atas prosesor RISC Berkeley maupun
MIPS Stanford. Seperti halnya MIPS, sekali program telah dikomplikasi ke dalam
perangkat instruksi inti (yakni level tengah antara perangkat-intruksi
bergantung perangkat-keras dengan bahasa pemrograman tingkat tinggi), suatu
penerjemah bergantung perangkat-keras akan mengubah kode ke dalam perangkat
instruksi bahasa mesin dan melakukan langkah-langkah optimasi. Perangkat
instruksi yang dimiliki prosesor ini dibagi menjadi tiga bagian yakni 29 buah
instruksi CPU, 31 buah instruksi FCOP, serta 6 buah instruksi MMU.
Prosesor yang dihasilkan memiliki unjuk
kerja nominal 200 MIPS, tetapi angka faktualnya harus dikurangi dengan 32%
akibat penyisipan instruksi NOP (no operation) dan dikurangi 32% lagi karena
keterbatasan lebar ban memori. Angka faktual kinerja prosesor RISC GaAs ini
kira-kira 91 MIPS (million instruction per second).
Pada waktu yang sama dengan
pengembangan mikroprosesor RISC GaAs, McDonnell-Douglas juga mulai
mengembangkan mikroprosesor RISC berdasarkan teknologi JFET tipe-penyambungan
(enhancement-type junction field-effect transistor) DCFL (direct coupled FET
logic) dengan bahan GaAs. Cip yang diberi nama MD484 sangat dipengaruhi oleh
hasil rancangan MIPS dari Universitas Stanford.
Karena saat itu teknologi GaAs hanya mampu
mengintegrasikan transistor dalam jumlah yang terbatas, maka hanya ditargetkan
sejumlah 25.000 buah transistor dalam satu cip. Di dalam mikroprosesor
ditanamkan 32 buah register masing-masing 32-bit dengan perangkat instruksi
sangat mirip dengan yang dimiliki MIPS.
Salah satu keputusan sulit dalam
perancangan adalah masalah memilih jumlah dan tipe alur-pipa eksekusi.
Penambahan jumlah alur-pipa menjadi lima atau enam dengan penambahan tingkat
alur-pipa untuk akses memori, akan memberi lebih banyak waktu pengaksesan
memori sehingga memudahkan perancangan sistem memori. Akan tetapi, alur-pipa
yang panjang akan menambah tundaan pencabangan sehingga memperlambat waktu
eksekusi. Kerugian kinerja akibat penyisipan instruksi NOP adalah 20-30% untuk
alur-pipa enam tingkat dan kira-kira setengahnya untuk alur-pipa lima tingkat
relatif terhadap alur-pipa empat tingkat. Akhirnya, kelompok McDonnell-Douglas
memutuskan untuk menggunakan empat tingkat alur-pipa. Untuk mengeksekusi operasi
aritmetika floating point, McDonnell Douglas juga merancang cip koprosesor
floating point. Cip CPU yang selesai dibuat dan diuji pada tahun 1987, mampu
mengeksekusi instruksi dalam 16,5 nanosekon dan memberikan kecepatan operasi 60
MIPS (million instructions per second).
Proyek perancangan prosesor RISC GaAs
lain dilakukan oleh RCA pada tahun 1989. Prosesor 32-bit rancangan RCA ini
direncanakan diimplementasikan dengan GaAs VLSI (very large scale integration)
. RCA mengatasi masalah yang dihadapi dalam perancangan cip GaAs ini dengan
cara yang berbeda dari yang dilakukan McDonnell Douglas maupun Texas
Instruments. Berbeda dengan kebanyakan prosesor RISC, format instruksinya tidak
tunggal melainkan menggunakan format satu dan dua kata. Rancangan RCA ini menggunakan
9 tingkat alur-pipa dengan dua periode tak-aktif masing-masing 2 siklus tunggu,
pertama berkaitan dengan penjemputan instruksi dan kedua berkaitan dengan
penjemputan operan untuk operasiload.
Kelompok riset di Universitas Michigan
juga dilaporkan berhasil membuat prosesor RISC dari bahan galium arsenida
berkecepatan tinggi di atas cip berukuran 32-bit yang dihasilkan
diimplementasikan di atas cip berukuran 13,9 x 7,8 mm dengan 160.000
transistor. Di dalam cip diintegrasikan bagian ALU (arithmetic and logic unit)
, 32 buah register, dan 32 byte chace instruksi. Karena kecilnya chace yang
dimiliki, pemakai prosesor ini dapat menambahkan chace eksternal melalui
kecepatan tinggi misalnya dengan SRAM (static random access memory)
berteknologi ECL. Cip ini bekerja baik dengan frekuensi detak 200 MHz.
Ada beberapa permasalahan dalam
perancangan komputer cepat dengan GaAs. Pertama, adalah terbatasnya tingkat
integrasi fungsi logika yang bisa diimplementasikan. Kedua, adalah tingginya
perbandingan antara waktu pengaksesan memori di luar cip dengan akses data di
dalam cip. SODIMA S.A. mengusulkan arsitektur 4-tingkat 32-bit untuk
diintegrasikan dengan menggunakan teknologi sel standar. Tim SODIMA juga
merancang arsitektur chacechace kecil berkecepatan tinggi (4-kilobyte dengan
waktu akses 3 nanosekon) dikombinasikan dengan chacebesar tetapi lebih lambat
(128 kilobyte dengan waktu akses 25 nanosekon) untuk mendapatkan kinerja 100
MIPS. dua tingkat berdasarkan pada
Cip RISC
lain
Advanced Micro Devices (AMD) memperkenalkan
produk RISC-nya pada tahun 1987, yang diberi nama Am29000. Dengan eksekusi
siklus tunggal, prosesor yang memiliki detak berfrekuensi 25MHz ini memiliki
kecepatan proses 17 MIPS untuk program bahasa C. Ada dua tingkat optimasi
kinerja yang dilakukan dalam perancangan Am29000. Pertama, prosesor ini
memiliki jumlah register cukup banyak (192 buah) yang dapat difungsikan sebagai
chace(stack) instruksi saat suatu prosedur dipanggil atau sebagai kelompok
register, masing-masing terdiri atas 16 buah register. Rancangan khusus dalam
Am29000 adalah chaceuntuk target pencabangan yang mampu menyimpan 128
instruksi. Cara ini memungkinkan alur-pipa tetap terisi tanpa adanya penundaan
sebagai akibat dari operasi percabangan yang berturutan (Heudin, 1992 : 104).
untuk menetapkan tumpukan
Selain AMD, Intel yang dikenal sebagai
pemasok mikroprosesor CISC keluarga-86, juga memproduksi cip mikroprosesor RISC
yang diberi nama 80860 pada tahun 1989. Dengan mengintegrasikan lebih dari
sejuta transistor, 80860 berisi teras RISC (RISC core) , koprosesor atau unit
floating point, MMU (memory management unit) , unit grafik, dan chace terpisah
untuk data dan instruksi. Keberadaan MMU dan teras RISC memungkinkan 80860
menjalankan sistem operasi multitasking. Koprosesornya mendukung aplikasi
pemodelan, pengolahan suara, simulasi, dan perancangan berbantuan komputer
(Margulis, 1989 : 333). Teras RISC memiliki empat tingkat alur-pipa yang
meliputi tingkat penjemputan, dekode, eksekusi, dan penulisan instruksi.
MMU dengan 8
bit CPU
Keistimewaannya, prosesor ini dirancang
agar pemrogram dapat memilih sendiri mode eksekusi yang diperlukan, yakni
instruksi-tunggal dan instruksi-ganda. Instruksi tunggal merupakan mode
eksekusi tradisional, dengan penjemputan instruksi berturutan. Pemberian
alur-pipa memungkinkan instruksi berturutan tersebut saling tumpang-tindih
sehingga beberapa instruksi berada di beberapa tingkat alur-pipa untuk
dieksekusi kapan saja. Dengan mode instruksi-ganda, mikroprosesor 80860
menerapkan lebih dari sekedar strategi alur-pipa. Mode ini memungkinkan
dijalankannya dua instruksi sekaligus, satu untuk teras RISC dan satu untuk
koprosesor. Koprosesor atau unit floating point menampilkan hasil operasi
setiap satu siklus detak dan memungkinkan diselesaikannya dua operasi
sekaligus, misalnya operasi penjumlahan dan perkalian. Dengan mengkombinasikan
mode instruksi-ganda dan mode operasi-ganda, pemrogram dapat melakukan tiga
operasi sekaligus setiap satu siklus detak.
Cip RISC dengan detak berfrekuensi lebih
dari 300 MHz dilaporkan telah dibuat oleh Digital Equipment Corp. (DEC). Cip
yang dirancang dengan teknologi bipolar ECL itu mengimplementasikan 468.000
buah transistor dan 206.000 resistor di atas keping berukuran 15,4 x 12,6 mm.
Pada kondisi terburuk, yakni dengan tegangan catu daya -5,2 volt, prosesor ini
mampu dijalankan dengan detak internal berfrekuensi 275 MHz sedangkan dalam
kondisi puncaknya (dengan tegangan catu daya -3,9 volt) dapat beroperasi pada
frekuensi detak 335 MHz. Pembangkit detak eksternal memiliki frekuensi 80 MHz
yang kemudian dilipatkan oleh rangkaian PLL (phase-locked loop) menjadi 1X -
8X. Masalah besar yang timbul dengan teknologi bipolar ECL ini adalah kebutuhan
daya yang cukup besar, yakni mencapai 115 watt. Hal ini menyebabkan timbulnya
panas berlebihan dalam cip. Untuk mengatasinya, DEC menambahkan termosifon
(penghambur panas berbentuk silinder bersirip dari tembaga) di atas kemasan cip
agar suhu dalam cip terjaga tidak lebih dari 100o C (Bursky, 1993 : 48-50).
Prospek Arsitektur RISC di Masa Mendatang
Perkembangan menarik terjadi pada tahun
1993 ketika aliansi tiga perusahaan terkemuka, IBM, Apple, dan Motorola
memperkenalkan produk baru mereka yakni PowerPC 601, suatu mikroprosesor RISC
64-bit yang dirancang untuk stasiun kerja (workstation) atau komputer personal
(Thompson, 1993 : 56-74). Menarik, karena kemunculan PowerPC 601 dimaksudkan
untuk memberikan alternatif bagi dominasi prosesor CISC keluarga-86 Intel dalam
komputer rumahan. Popularitas prosesor keluarga-86 didukung oleh harganya yang
murah dan banyaknya program aplikasi yang dapat dijalankan dengan prosesor ini.
Untuk itu, prosesor PowerPC dijual dengan harga yang cukup bersaing
dibandingkan dengan pentium, yakni prosesor buatan Intel mutakhir saat itu
(Thompson, 1993 : 64). Perkembangan teknologi emulasi yang memungkinkan
prosesor RISC menjalankan sistem operasi yang sama dengan prosesor CISC
keluarga-86 diperkirakan akan membuat prosesor RISC, terutama PowerPC 601,
banyak digunakan di dalam komputer-komputer personal (Halfhill, 1994 :
119-130).
PowerPC 601 memiliki 32 buah register
serbaguna 32-bit dan 32 buah 64-bit register floating-point. Untuk menyimpan
sementara data dan instruksi sebelum dieksekusi, PowerPC 601 memiliki
32-kilobyte chaceuntuk data dan instruksi bersama-sama. Teras PowerPC 601
terdiri dari tiga unit eksekusi dengan alur-pipa yang independen, yakni unit
pemroses bilangan bulat (IU, integer unit), unit floating-point (FPU, floating
processing unit), dan unit pemroses operasi percabangan (BPU, branch processing
unit) yang mampu mengeksekusi tiga instruksi sekaligus (Ryan, 1993 : 79-80).
IBM Power PC 601
Perkembangan menarik juga nampak dengan
diadopsinya sebagian arsitektur RISC ke dalam prosesor CISC yang dikenal dengan
sebutan arsitektur hibrid CISC/RISC. Intel Corporation mengimplementasikan
arsitektur CISC/RISC ini ke dalam prosesor keluarga-86 dimulai dengan prosesor
Pentium, kemudian prosesor P6 atau Pentium Pro (Ryan, 1993 : 84 ; Halfhill,
1995:42 ; Yokota, 1993 : 18-25). Beberapa produsen lain, dengan cara berbeda
juga mulai mengadopsi arsitektur campuran CISC/RISC ini misalnya Matsushita
Corp dengan prosesor V810, Advanced RISC Machines dengan ARM610, dan Hitachi
dengan prosesor SH7032 (Miyazaki, 1993 : 20-27).
Prosesor RISC, yang berkembang dari
riset akademis telah menjadi prosesor komersial yang terbukti mampu beroperasi
lebih cepat dengan penggunaan luas cip yang efisien. Kemajuan mutakhir yang
ditunjukkan oleh mikroprosesor PowerPC 601 dan teknologi emulasi yang antara
lain dikembangkan oleh IBM memungkinkan bergesernya dominasi cip-cip
keluarga-86 dan kompatibelnya. Bila teknik emulasi terus dikembangkan maka
pemakai tidak perlu lagi mempedulikan prosesor apa yang ada di dalam sistem
komputernya, selama prosesor tersebut dapat menjalankan sistem operasi ataupun
program aplikasi yang diinginkan.
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.:
1.
Operasi-operasi
yang dilakukan:
Hal ini
menentukan fungsi-fungsi yang akan dilakukan oleh CPU dan interaksinya dengan
memori.
2.
Operand-operand
yang digunakan:
Jenis-jenis
operand dan frekuensi pemakaiannya akan menentukan organisasi memori untuk menyimpannya
dan mode pengalamatan untuk mengaksesnya.
3.
Pengurutan
eksekusi:
Hal ini akan
menentukan kontrol dan organisasi pipeline.
Komputer yang
Menggunakan Teknologi RISC
- IBM PC/XT
IBM PC/TXT
Slot ekspansi di dalam IBM PC XT mempunyai 8 buah slot,
dari slot tersebut beberapa slot telah digunakan untuk keperluan komputer itu
sendiri sedangkan yang tidak digunakan dapat dimanfaatkan untuk sistem
interface.
Semua slot mempunyai konfigurasi pin yang sama dan dapat
mengakses memory dan I/O map yang sama, sehingga suatu interface dapat
berkomunikasi dengan komputer IBM PC XT. Slot IBM PC XT merupakan konektor 62 pin, dari 62 pin tersebut ini
hanya digunakan beberapa pin saja untuk perencanaan sistem interface.
- Digital Equipment Corporation (DEC) - Alpha.
DEC
Alpha Microprocessor developed in 1995
Alpha adalah nama famili dari mikroprosesor buatan
Digital Equipment Corporation (DEC). Arsitektur itu mulai dikembangkan oleh DEC
pada tahun 1989 dan dirilis pada tahun 1992, sebagai pengganti famili VAX
32-bit. DEC Alpha digunakan pada jajaran komputer workstation dan server buatan DEC sendiri. Jika famili prosesor Intel disebut sebagai x86 karena memiliki anggota yang berakhiran -86, maka
famili ini memiliki nomor kode prosesor 21x64, sebab prosesor-prosesor anggota
keluarga ini adalah 21064, 21164, 21264, dan 21364 (dengan berbagai
variasinya), dengan angka x sebagai generasi prosesor tersebut. Alpha juga
kadang disebut sebagai Alpha AXP.
Alpha didukung
oleh beberapa sistem operasi, mulai dari DEC VMS, versi UNIX dari DEC, GNU/Linux, beberapa BSD UNIX, dan Windows NT (dari
versi 3.1 hingga versi 4.0 Service Pack 6).
Arsitektur Alpha
merupakan sebuah desain RISC dengan 64-bit alamat dan ukuran data. Di dalamnya
terdapat 32 buah register general purpose dan 32 buah register floating-point.
Prosesor ini juga termasuk sebagai sebuah prosesor superskalar, karena memiliki
beberapa pipeline di dalamnya. Arsitektur ini juga memiliki cache level-1 yang
dipisah menjadi data cache dan instruction cache.
- Advanced Micro Devices (AMD) 29000.
Advanced
Micro Devices (AMD) Microprocessor 29000 Series
Tahun 1975 AMD mulai membuat chip memory
dalam bentuk Random Access Memory (RAM) – Am9102. Pada tahun yang sama, dengan
lisensi dari Intel, AMD berhasil mengembangkan microprocessor dengan melakukan reverse
engineering terhadap processor 8080A yang dibuat oleh Intel. Keberhasilan
ini menjadi awal bagi AMD memasuki pasar microprocessor. Pada tahun yang sama
AMD juga memperkenalkan keluarga produk Am2900 sebuah seri processor
menggunakan teknologi bit-slice, yang memungkinkan pengguna memperoleh
keuntungan dari kemampuan komputer untuk mengolah data dengan jalur yang lebih
lebar, dengan disipasi panas rendah, dan kecepatan pengolahan data lebih
tinggi. Am2900 juga menyediakan fleksibilitas bagi perancang software untuk
mengembangkan instruksi pemrograman menggunakan bahasa mereka sendiri,
independen dari set instruksi microprocessor.
- Advanced RISC Machine (ARM).
Advanced
RISC Machine (ARM) Microprocessor developed by
Conexant
Computers
ARM singkatan dari Advanced
RISC Machine adalah arsitektur processor 32-bit yang
dikembangkan oleh ARM Limited, dan banyak digunakan oleh perangkat
genggam. Berkat fitur hemat energinya, CPU ARM sangat
dominan di pasar perangkat elektronik genggam. Saat ini, processor ARM menguasai sekitar
75 persen pasar elektronik genggam.
- Atmel AVR
Atmel AVR
ATmega8 Microprocessor
Atmel AVR adalah jenis mikrokontroler yang paling sering dipakai dalam bidang elektronika dan instrumentasi. Mikrokontroler AVR ini memiliki arsitektur RISC(Reduce Instruction Set Computing) delapan bit, di
mana semua instruksi dikemas dalam kode 16-bit (16 bits word) dan sebagian
besar instruksi dieksekusi dalam 1 (satu ) siklus clock.
Secara umum, AVR
dapat dikelompokkan dalam 4 kelas, yaitu keluarga ATTiny, keluarga AT90Sxx,
keluarga ATMega dan AT86RFxx. Pada dasarnya yang membedakan masing-masing kelas
adalah memori, peripheral dan fungsinya. Salah satu mikrokontroler AVR yang sering dipakai adalah ATMega8 dan
ATMega 8535
- Microprocessor without Interlocked Pipeline Stages (MIPS).
MIPS
Microprocessor
MIPS (Microprocessor without Interlocked Pipeline
Stages) merupakan salah satu contoh prosesor yang dibangung dengan arsitektur RISC. Desain
prosesor MIPS saat ini banyak digunakan pada beberapa embedded system (seperti the Series2
TiVo, Windows CE devices, Cisco Routers, residential gateways, Foneras, Avaya) dan video games
console (seperti Nintendo 64 and Sony PlayStation, PlayStation 2, PlayStation Portable)
- Precision Architecture – Reduced Instruction Set Computer (PA-RISC).
HP 9000
PA-RISC Microprocessor
PA-RISC adalah arsitektur processor yang
dikembangkan oleh HP. PA-RISC adalah
singkatan dari Precision Architecture – Reduced
Instruction Set Computing. Beberapa
kalangan juga menggunakan istilah HP/PA
atau hppa. Arsitektur ini didesain 32-bit pada awalnya,
namun pada arsitektur PA-RISC 2.0
(tahun 1996), PA-RISC sepenuhnya 64-bit.
- Performance Optimization with Enhanced RISC – Performance Computing (POWER-PC)
PowerPC 600
Series developed by IBM Computer
Power PC adalah arsitektur microprocessor RISC yang
diciptakan oleh aliansi Apple-IBM-Motorola pada tahun 1991. Pada awalnya Power
PC dirancang untuk workstation saja, akan tetapi kemudian menjadi populer dan
mulai dipergunakan pada Power Mac sejak tahun 1995.
- SuperH
SuperH
Microprocessor
SuperH secara fundamental adalah RISC 32-bit load/store yang umum ditemukan
pada berbagai sistem embedded. Awalnya
dikembangkan oleh Hitachi pada awal 90-an. SuperH sering
disebut juga sebagai SH. Salah satu contoh penggunaan SuperH
adalah pada Sega Dreamcast (SH4).
- Scalable Processor Architecture (SPARC).
SPARC II
Microprocessor developed by Sun
SPARC (Scalable Processor Architecture) adalah
microprocessor berarsitektur RISC (Reduced Instruction Set Computer)
yang didesain oleh Sun Microsystems sejak tahun 1985.
Sun-4 Workstation yang kali pertama ditenagai prosesor
SPARC itu, tidak lain adalah sebuah stasiun kerja tipikal Unix yang pada
jamannya mendominisasi pasar TI. Pengembangan SPARC didahului dengan tekad Sun
yang memusatkan bisnisnya dibidang workstation dan tidak ingin terlalu
bergantung pada pemasok prosesor Motorola yang saat itu mensuplai seri prosesor
680x0 kepada Sun, disamping juga terhadap dominasi Intel dengan arsitektur
i386-nya.
Sejatinya, keistimewaan dari arsitektur SPARC adalah spesifikasi
dari beberapa prosesornya yang menganut kaidah Open Source. Sun mengawalinya pada tahun 2005 yang
membuka spesifikasi UltraSPARC T1 dibawah lisensi bebas GPL. Spesifikasi yang dibebaskan, juga
untuk T2 dapat ditemukan di situs opensparc.net. Prosesor 32-bit dengan
arsitektur V8 dari generasi awal ternyata masih aktual dan produknya masih
diperoleh sampai sekarang dari beberapa pembuat prosesor, termasuk yang telah
diintegrasikan dalam sistem embedded.
Analisis
Perbedaan Karakteristik RISC dan CISC
CISC dan RISC
perbedaannya tidak signifikan jika hanya dilihat dari terminologi set
instruksinya yang kompleks atau tidak (reduced). Lebih dari itu, RISC
dan CISC berbeda dalam filosofi arsitekturnya. Filosofi arsitektur CISC adalah
memindahkan kerumitan software ke dalam hardware. Teknologi
pembuatan IC saat ini memungkinkan untuk menamam ribuan bahkan jutaan transistor
di dalam satu dice. Bermacam-macam instruksi yang mendekati bahasa
pemrogram tingkat tinggi dapat dibuat dengan tujuan untuk memudahkan programmer
membuat programnya.
Beberapa prosesor
CISC umumnya memiliki microcode berupa firmware internal di dalam
chip-nya yang berguna untuk menterjemahkan instruksi makro. Mekanisme
ini bisa memperlambat eksekusi instruksi, namun efektif untuk membuat
instruksi-instruksi yang kompleks. Untuk aplikasi-aplikasi tertentu yang
membutuhkan singlechip komputer, prosesor CISC bisa menjadi pilihan.
Filosofi arsitektur
RISC adalah arsitektur prosesor yang tidak rumit dengan membatasi jumlah
instruksi hanya pada instruksi dasar yang diperlukan saja. Kerumitan membuat
program dalam bahasa mesin diatasi dengan membuat bahasa program tingkat tinggi
dan compiler yang sesuai. Karena tidak rumit, teorinya mikroprosesor
RISC adalah mikroprosesor yang low-cost dalam arti yang sebenarnya.
Namun demikian, kelebihan ruang pada prosesor RISC dimanfaatkan untuk membuat
sistem-sistem tambahan yang ada pada prosesor modern saat ini. Banyak prosesor
RISC yang di dalam chip-nya dilengkapi dengan sistem superscalar,
pipelining, caches memory, register-register dan sebagainya, yang
tujuannya untuk membuat prosesor itu menjadi semakin cepat.
Sudah sering kita
mendengar debat yang cukup menarik antara komputer personal IBM dan
kompatibelnya yang berlabel Intel Inside dengan komputer Apple yang berlabel
PowerPC. Perbedaan utama antara kedua komputer itu ada pada tipe prosesor yang
digunakannya. Prosesor PowerPC dari Motorola yang menjadi otak utama komputer
Apple Macintosh dipercaya sebagai prosesor RISC, sedangkan Pentium buatan Intel
diyakini sebagai prosesor CISC. Kenyataannya komputer personal yang berbasis
Intel Pentium saat ini adalah komputer personal yang paling banyak populasinya.
Tetapi tidak bisa pungkiri juga bahwa komputer yang berbasis RISC seperti
Macintosh, SUN adalah komputer yang handal dengan sistem pipelining, superscalar,
operasi floating point dan sebagainya.
Sebenarnya,
prosesor RISC tidak sekedar memiliki instruksi-instruksi yang sedikit dan
sederhana seperti namanya tetapi juga mencakup banyak ciri-ciri lain yang tidak
semuanya disepakati oleh kalangan perancang sendiri. Meskipun demikian, banyak
yang telah bersepakat bahwa prosesor memiliki ciri-ciri tertentu untuk
membedakannya dengan prosesor RISC dan CISC.
Pertama,
prosesor RISC mengeksekusi instruksi pada setiap satu siklus detak (Robinson,
1987 : 144; Johnson, 1987 : 153). Hasil penelitian IBM (International Business
Machine) menunjukkan bahwa frekuensi penggunaan instruksi-instruksi kompleks
hasil kompilasinya sangat kecil dibanding dengan instruksi-instruksi sederhana.
Dengan perancangan yang baik instruksi sederhana dapat dibuat agar bisa
dieksekusi dalam satu siklus detak. Ini tidak berarti bahwa dengan
sendirinya prosesor RISC mengeksekusi program secara lebih cepat dibanding
prosesor CISC. Analogi sederhananya adalah bahwa kecepatan putar motor (putaran
per menit) yang makin tinggi pada kendaraan tidaklah berarti bahwa jarak yang
ditempuh kendaraan (meter per menit) tersebut menjadi lebih jauh, karena jarak
tempuh masih bergantung pada perbandingan roda gigi yang dipakai.
Kedua,
instruksi pada prosesor RISC memiliki format-tetap, sehingga rangkaian
pengontrol instruksi menjadi lebih sederhana dan ini berarti menghemat
penggunaan luasan keping semikonduktor. Bila prosesor CISC (misalnya Motorola
68000 atau Zilog Z8000) memanfaatkan 50% – 60% dari luas keping semikonduktor
untuk rangkaian pengontrolnya, prosesor RISC hanya memerlukan 6%-10%. Eksekusi
instruksi menjadi lebih cepat karena rangkaian menjadi lebih sederhana
(Robinson, 1987 : 144; Jonhson 1987 : 153).
Ketiga,
instruksi yang berhubungan dengan memori hanya instruksi isi (load) dan
instruksi simpan (store) , instruksi lain dilakukan dalam register internal
prosesor. Cara ini menyederhanakan mode pengalamatan (addressing) dan
memudahkan pengulangan kembali instruksi untuk kondisi-kondisi khusus yang
dikehendaki (Robinson,1987 : 144; Johnson, 1987: 153). Dengan ini pula
perancang lebih menitikberatkan implementasi banyak register dalam chip
prosesor. Dalam prosesor RISC, 100 buah register atau lebih adalah hal yang
biasa. Manipulasi data yang terjadi pada register yang umumnya lebih cepat
daripada dalam memori menyebabkan prosesor RISC berpotensi beroperasi lebih
cepat.
Keempat,
prosesor RISC memerlukan waktu kompilasi yang lebih lama daripada prosesor
CISC. Karena sedikitnya pilihan instruksi dan mode pengalamatan yang dimiliki
prosesor RISC, maka diperlukan optimalisasi perancangan kompilator agar mampu
menyusun urutan instruksi-instruksi sederhana secara efisien dan sesuai dengan
bahasa pemrograman yang dipilih. Keterkaitan desain prosesor RISC dengan bahasa
pemrograman memungkinkan dirancangnya kompilator yang dioptimasi untuk bahasa target
tersebut.
Kelima,
penggunaan prosesor CISC hanya menghemat sedikit atau sama sekali tidak
menghemat memori jika dibandingkan RISC. Kemudian compiler-kompiler pada mesin
CISC cenderung menggunakan instruksi-instruksi yang lebih sederhana, karena itu
keringkasan instruksi kompleks jarang sekali memegang peranan. Selain itu,
karena pada CISC terdapat instruksi yang lebih banyak, maka diperlukan code
yang lebih panjang, yang akan menghasilkan instruksi yang lebih panjang pula.
RISC cenderung menekankan pada referensi register dibandingkan pada referensi
memori, dan referensi register memerlukan bit yang jumlahnnya lebih sedikit.
Tabel 1. Karakteristik dari beberapa Prosesor CISC, RISC, dan Superskalar
karakteristik
|
RISC
|
CISC
|
Superskalar
|
||||
|
IBM 370/168
|
VAC 11/780
|
Intel 80486
|
Motorola 88000
|
MIPS R4000
|
IBM RS/system 6000
|
Intel 80960
|
Tahun dibuat
|
1973
|
1978
|
1989
|
1988
|
1991
|
1989
|
1989
|
Jumlah intruksi
|
208
|
303
|
235
|
51
|
94
|
194
|
62
|
Intruksi (byte)
|
2-6
|
2-57
|
1-11
|
4
|
32
|
4
|
4.8
|
Metode pengalamatan
|
4
|
22
|
11
|
3
|
1
|
2
|
11
|
Jumlah register general
porpose
|
16
|
16
|
8
|
32
|
32
|
32
|
32-256
|
Ukuran memori control (kbit)
|
420
|
480
|
246
|
-
|
-
|
-
|
-
|
Ukuran cache (Kbytes)
|
64
|
64
|
8
|
16
|
128
|
32-64
|
0.5
|
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.
Tabel
2. Frekuensi Dinamik Relatif Berbobot dari Operasi-operasi HLL
|
Kejadian
Dinamik
|
Instruksi-Mesin
Berbobot
|
Referensi
Memori
Berbobot
|
|||
|
Pascal
|
C
|
Pascal
|
C
|
Pascal
|
C
|
ASSIGN
LOOP
|
45
5
|
38
3
|
13
42
|
13
|
14
33
|
15
26
|
CALL
|
15
|
12
|
31
|
33
|
44
|
45
|
IF
|
29
|
43
|
11
|
21
|
7
|
13
|
GOTO
|
-
|
3
|
-
|
-
|
-
|
-
|
OTHER
|
6
|
1
|
3
|
1
|
2
|
1
|
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.
·
Proses pipeline dapat digunakan untuk membuat nilai
efektif S mendekati 1 (satu) artinya komputer menyelesaikan satu perintah dalam
satu siklus waktu CPU.
·
Nilai T dapat diturunkan dengan merancang perintah yang
sederhana.
Operasi
Beberapa penelitian telah dilakukan untuk menganalisa
tingkah laku program-program HLL . terdapat kecocokan dalam hasil campuran
dalam bahasa dan aplikasi tersebut.
Hasilnya menyatakan bahwa prosedur call /return merupakan
operasi yang paling banyak memakan waktu dan program-program HLL tertentu namun
penelitian ini menghasilkan sesuatu yang resresentatif bagi
arsitektur-arsitektur compleks intruksi set computer (cisc) yang kontemporer.
Sehingga penelitian-penelitian tersebut dapat memberikan tuntunan bagi yang
memerlukan cara yang efisien untuk mendukung HLL.
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 3.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.
Penggunaan File Register Besar
Terdapat statement assignment yang jumlahnya banyak dalam
program-program HLL, dan banyak diantaranya berupa statement assignment
sederhana seperti A = B. Di samping itu, terdapat pula akses operand per statement
HLL dalam jumlah yang cukup besar.
Apabila kita menghubungkan kedua di atas dengan kenyataan
bahwa sebagian besar akses adalah menuju ke skalar-skalar lokal, maka sangat
mungkin kita memerlukan penyimpanan register yang besar. Alasan diperlukannya
penyimpanan register adalah register merupakan perangkat penyimpanan yang
paling cepat, yang lebih cepat dibandingkan dengan memori utama dan memori
cache.
Dimungkinkan untuk menerapkan dua buah pendekatan dasar,
yaitu berdasarkan perangkat lunak dan perangkat keras.
Pendekatan perangkat lunak mengandalkan kompiler untuk
Memaksimalkan pemakaian register. Pendakatan ini membutuhkan algoritma analisis
program yang canggih.
Pendekatan perangkat keras dilakukan hanya dengan
memperbanyak jumlah register sehingga akan lebih banyak variabel yang dapat
ditampung di dalam register dalam periode waktu yang lebih lama.
Register
Windows
a. Jendela
register dibagi menjadi tiga buah daerah yang berukuran tetap.
▪ Register-register parameter : Menampung parameter-parameter yang dilewatkan dari
prosedur.
▪ Register-register lokal : Digunakan untuk variable lokal, setelah di-assign oleh
kompiler.
▪ Register-register temporer : Digunakan untuk pertukaran parameter.
b.
Overlap ini memungkinkan parameter-parameter dapat
dilewatkan tanpa perpindahan aktual data.
Pada suatu saat tertentu, hanya
sebuah jendela register yang visible yang dapat dialamati, seolah-olah jendela
itu hanya satu-satunya kumpulan register( misalnya alamat 0 haingga n-1).
Jendela itu menjadi tiga buah daerah yang berukuran tetap. Register parameter
menamping parameter daerah yang berukuran tetap, register local digunakan untuk
variabel local , register temporer digunakan
untuk pertukaran parameter dan hasilnya dengan tingkatan yang lebih
rendah berikutnya. (prosedur panggil oleh prosedur saat ini)
Variabel-variabel Global
Teknik Register Windows memberikan organisasi yang
efisien untuk penyimpanan variable skalar lokal di dalam register. Akan tetapi
teknik ini tidak dapat memenuhi kebutuhan penyimpanan variabel global, yang
diakses oleh lebih dari sebuah prosedur (misalnya, variabel COMMON dalam
FORTRAN).
Terdapat
dua pilihan untuk memenuhi hal tersebut.
•
Pertama, Variabel-variabel yang dideklarasikan sebagai
global pada HLL dapat disediakan
lokasi-lokasi oleh kompiler. Namun, bagi yang sering mengakses
variabel-variabel global, teknik tersebut tidaklah efisien.
•
Alternatifnya adalah melibatkan kumpulan register global
di dalam CPU Register-register ini harus memiliki jumlah yang tetap dan dapat
dipakai oleh semua prosedur.
KELEBIHAN dan KEKURANGAN RISC dan CISC
Teknologi RISC relatif masih baru oleh karena itu tidak ada perdebatan dalam
menggunakan RISC ataupun CISC, karena tekhnologi
terus berkembang dan arsitektur
berada dalam sebuah spektrum, bukannya berada dalam dua kategori yang jelas maka penilaian yang tegas akan sangat kecil
kemungkinan untuk terjadi.
Kelebihan
:
1. Berkaitan dengan penyederhanaan
kompiler, dimana tugas pembuat kompiler untuk menghasilkan rangkaian instruksi
mesin bagi semua pernyataan HLL. Instruksi mesin yang kompleks seringkali sulit digunakan karena kompiler harus
menemukan kasus-kasus yang
sesuai dengan konsepnya. Pekerjaan mengoptimalkan kode yang dihasilkan untuk meminimalkan ukuran kode, mengurangi
hitungan eksekusi instruksi, dan meningkatkan pipelining jauh lebih mudah
apabila menggunakan RISC dibanding menggunakan CISC.
2. Arsitektur RISC yang mendasari PowerPC memiliki kecenderungan lebih menekankan
pada referensi register dibanding referensi memori, dan referensi register
memerlukan bit yang lebih
sedikit sehingga memiliki akses eksekusi instruksi lebih cepat.
3. Kecenderungan operasi register ke
register akan lebih menyederhanakan set instruksi dan menyederhanakan unit
kontrol serta pengoptimasian register akan menyebabkan operand-operand yang sering diakses akan tetap berada
dipenyimpan berkecepatan tinggi.
4. Penggunaan mode pengalamatan dan format
instruksi yang lebih sederhana.
Kekurangan
:
1. Program yang dihasilkan dalam bahasa simbolik akan lebih panjang
(instruksinya lebih banyak).
2. Program berukuran lebih besar sehingga
membutuhkan memori yang lebih
banyak, ini tentunya kurang menghemat sumber daya.
3. Program yang berukuran lebih besar akan menyebabkan menurunnya kinerja,
yaitu instruksi yang lebih
banyak artinya akan lebih banyak byte-byte instruksi yang harus diambil.
4. Pada lingkungan paging akan menyebabkan
kemungkinan terjadinya page fault lebih besar.
harap diperiksa kembali tulisannya, seharusnya CISC tapi ditulis RISC bisa membingungkan pembaca.
ReplyDelete