ARSITEKTUR KOMPUTER Taxonomy Komputer : RISC & CISC Instruksi Set RISC
OLEH: Michael Santoso (535079203) Yusten (535080009) Rendy Wijaya (535080024) Andi Agustono (535080028) Andrew Sugandhi (535080037) Adi Gunawan (535080040) Andry Pratama C (535080056) Sakti Sarjono (535080061) Ayu Windy (535080084) Keyza Novianti (835082001)
PROGRAM STUDI SISTEM KOMPUTER FAKULTAS TEKNOLOGI INFORMASI
2
UNIVERSITAS TARUMANAGARA
3
BAB I PENDAHULUAN
Perkembangan inovasi komputer sejak 1960 menambah satu daftar penemuan yang sangat menarik dan paling penting, yaitu Arsitektur Reduced Instruction Set
computers (RISC). Ditinjau dari perancangan perangkat instruksinya, ada dua arsitektur prosesor yang
menonjol, yakni arsitektur RISC (Reduce Instruction Set Computer) dan CISC (Complex Instruction Set Computer). Prosesor untuk CISC memiliki instruksi-instruksi program bahasa kompleks assembly,
memudahkan
penulisan RISC
sedangkan sederhana
prosesor yang
memiliki
instruksi-instruksi dengan cepat untuk
dapat
dieksekusi
menyederhanakan implementasi rangkaian kontrol internal prosesor. Karenanya, prosesor RISC dapat dibuat dalam luasan keping semikonduktor yang relatif lebih sempit dengan jumlah CISC. komponen yang lebih sedikit di dibanding kedua
prosesor
Perbedaan
orientasi
antara
4
prosesor ini menyebabkan adanya perbedaan sistem secara keseluruhan, termasuk juga perancangan kompilatornya. Walaupun sistem RISC telah ditentukan dan dirancang dengan berbagai cara berdasarkan komunitasnya, elemen penting yang digunakan sebagian rancangan umumnya
adalah sebagai berikut : 1. Set instruksi yang terbatas dan sederhana2. Register
general purpose berjumlah banyak atau teknologi kompiler untuk
penggunaaan
mengoptimalkan penggunaan register.3. Penekanan pada pengoptimalan pipeline instruksi.
5
BAB II DASAR TEORI
2.1. Fase RISC John Cocke (1975)
Ide dasar prosesor RISC sebenarnya bisa dilacak dari apa yang disarankan oleh Von Neumann pada
tahun 1946. Von Neumann menyarankan agar rangkaian elektronik hanya sistem bila agar untuk konsep logika diimplementasikan untuk karena melengkapi frekuensi
memang
diperlukan atau
berfungsi
penggunaannya cukup tinggi. Jadi ide tentang RISC, yang pada dasarnya perangkat adalah untuk menyederhanakan dengan
realisasi
keras
prosesor
melimpahkan sebagian besar tugas kepada perangkat lunaknya, pertama. telah Seperti ada pada komputer elektronik komputer eksekusi dan
halnya
prosesor
RISC,
elektronik langsung
pertama yang
merupakan
komputer
memiliki
instruksi
sederhana
mudah didekode.
6
Hal
yang
sama
dipercayai
juga
oleh
Seymour
Cray, spesialis pembuat super komputer. Pada tahun 1975, berdasarkan kajian yang dilakukannya,
Seymour Cray menyimpulkan bahwa penggunaan register sebagai rancangan Ketika itu tempat manipulasi menjadi data sangat menyebabkan sederhana.
instruksi
perancang prosesor lain lebih banyak
membuat instruksi-instruksi yang merujuk ke memori daripada ke register seperti rancangan Seymour
Cray. Sampai akhir tahun 1980-an komputer-komputer rancangan Seymour Cray, dalam bentuk super komputer seri Cray, merupakan komputer-komputer dengan
kinerja sangat tinggi. Pada tahun 1975, kelompok peneliti di IBM di bawah pimpinan George Radin, memulai merancang
komputer berdasar konsep John Cocke. Berdasarkan saran John Cocke, setelah hasil meneliti frekuensi suatu
pemanfaatan program,
instruksi
kompilasi
untuk
memperoleh
prosesor
berkinerja
7
tinggi
tidak
perlu
diimplementasikan
instruksi
kompleks ke dalam prosesor bila instruksi tersebut dapat yang dibuat telah dari instruksi-instruksi Kelompok yang sederhana IBM ini
dimilikinya. komputer 801
menghasilkan
menggunakan
instruksi format-tetap dan dapat dieksekusi dalam satu siklus detak (Robinson, 1987 : 143). Komputer 801 yang dibuat dengan teknologi ECL (emitter-
coupled logic) , 32 buah register, chace terpisah untuk memori dan instruksi ini diselesaikan pada tahun 1979. Karena sifatnya yang eksperimental,
komputer ini tidak dijual di pasaran.
2.2. Fase RISC Barkeley (1980)
Kelompok California
David memulai
Patterson proyek RISC
dari pada
Universitas tahun 1980
dengan tujuan menghindari kecenderungan perancangan prosesor yang perangkat instruksinya semakin
8
kompleks sehingga memerlukan perancangan rangkaian kontrol yang semakin rumit dari waktu ke waktu. Hipotesis yang diajukan adalah bahwa implementasi instruksi instruksi pemakaian program kompleks yang kompleks justru tersebut ke dalam berdampak dalam Apalagi, dapat perangkat negatif kebanyakan instruksi dari
prosesor instruksi hasil itu
komplikasi. pada dasarnya
disusun
instruksi-instruksi sederhana yang telah dimiliki. Rancangan mendukung prosesor bahasa dan C, RISC-1 yang ditujukan dipilih pengguna. kelompok untuk karena Realisasi Patterson
popularitasnya rancangan
banyaknya oleh
diselesaikan
dalam waktu 6 bulan. Fabrikasi dilakukan oleh MOVIS dan XEROX dengan menggunakan teknologi silikon NMOS (N-channel Hasilnya Metal-oxide adalah sebuah Semiconductor) chip 2 mikron. terpadu
rangkaian
dengan 44.500 buah transistor. Chip RISC-1 selesai dibuat pada musim panas dengan kecepatan eksekusi 2
9
s per instruksi (pada frekuensi detak 1,5 MHz), 4
kali lebih lambat dari kecepatan yang ditargetkan. Tidak tercapainya target itu disebabkan terjadinya sedikit dapat kesalahan diatasi perancangan, dengan meskipun kemudian rancangan
memodifikasi
assemblernya. Berdasarkan hasil evaluasi, meskipun hanya
bekerja pada frekuensi detak 1,5 MHz dan mengandung kesalahan perancangan, program RISC-1 C terbukti lebih cepat mampu dari
mengeksekusi
bahasa
beberapa prosesor CISC, yakni MC68000, Z8002, VAX11/780, dan PDP-11/70. Hampir bersamaan dengan proses fabrikasi RISC-1, tim Berkeley lain mulai bekerja untuk merancang
RISC-2. Chip yang dihasilkan tidak lagi mengandung kesalahan sehingga mencapai kecepatan operasi yang ditargetkan, 330 ns tiap instruksi. RISC-2 hanya memerlukan luas chip 25% dari yang dibutuhkan RISC-1 dengan 75% lebih banyak register.
10
Meskipun perangkat instruksi yang ditanamkan sama dengan perangkat instruksi yang dimiliki RISC-1,
tetapi di antara keduanya terdapat perbedaan mikro arsitektur perangkat kerasnya. RISC-2 memiliki 138 buah register yang disusun sebagai 8 jendela
register, dibandingkan dengan 78 buah register yang disusun juga sebagai 6 jendela register. dalam hal Selain itu,
terdapat
perbedaan memiliki
organisasi dua tingkat
pipeline.
RISC-1
pipeline
sederhana dengan penjemputan (fetch) dan eksekusi instruksi yang dibuat tumpang-tindih, sedangkan
RISC-2 memiliki 3 buah pipeline 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
11
bekerja baik dengan bahasa pemrograman Smalltalk. Jadi proyek SOAR ini merupakan RISC upaya pertama
menggunakan simbolik. Versi
pendekatan
untuk
pemrosesan
pertama
mikroprosesor
SOAR
diimplementasikan dengan menggunakan teknologi NMOS 4 mikron. Chip yang dihasilkan memiliki 35.700 buah transistor dan bekerja dengan kecepatan 300 ns tiap instruksi. Versi kedua yang dirancang pada 19841985 menggunakan teknologi CMOS (Complementary prosesor oleh
Metal-oxide berarsitektur rancangan mikroprosesor dan KIM20
Semiconductor). RISC banyak
Beberapa
yang
dipengaruhi SOAR,
mikroprosesor SPARC (dari Sun
misalnya Inc.)
Microsystems
yang
dirancang
Departemen
Pertahanan
Perancis. Mengikuti kemudian Processing proyek SOAR, proyek yang kelompok SPUR Berkeley (Symbolic tahun 1985.
mengerjakan Using RISC)
dimulai
12
Proyek SPUR bertujuan untuk merancang stasiun kerja (workstation) riset proyek tentang SPUR multiprosesor pemrosesan juga sebagai paralel. bagian Selain dari itu,
melakukan arsitektur
penelitian komputer, Sistem
tentang sistem prosesor
rangkaian operasi, SPUR tinggi
terpadu, dan bahasa
pemrograman. 6-12
dibangun yang
dengan
prosesor sama
berkinerja lain, serta
dihubungkan
satu
dihubungkan dengan memori dan peranti masukan atau keluaran Untuk melalui Nubus yang telah dimodifikasi. menambahkan
kerja
sistem
diperbaiki
dengan
chace sebesar 128 kilobyte pada tiap prosesor untuk mengurangi kepadatan lalu lintas data pada bus dan mengefektifkan pengaksesan memori.
2.3. Fase RISC Stanford (1981)
Sementara
proyek
RISC-1
dan
RISC-2
dilakukan
kelompok Patterson di Universitas California, pada
13
tahun 1981 itu juga John Hennessy dari Universitas Stanford without riset dengan mengerjakan Interlocked tentang teknologi proyek Pipeline MIPS (Microprocessor Pengalaman digabungkan merupakan
Stages).
optimasi
kompilator keras
perangkat
RISC
kunci utama proyek MIPS ini. Tujuan utamanya adalah menghasilkan chip mikroprosesor serbaguna 32-bit
yang dirancang untuk mengeksekusi secara efisien kode-kode hasil kompilasi. 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 lainlain. MIPS menggunakan keras sehingga 5 tingkat pipeline antar tanpa
perangkat tersebut,
saling-kunci kode yang
pipeline harus
dieksekusi
benar-benar bebas dari konflik antar pipeline.
14
Direalisasi
dengan
teknologi
NMOS
2
mikron,
prosesor MIPS yang memiliki 24.000 transistor ini memiliki setiap kemampuan 500 ns. mengeksekusi satu 5 instruksi tingkat
Karena
menggunakan
pipeline 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
15
mahasiswa, dan dimulai pada musim panas tahun 1984. Rancangan MIPS-X banyak diperbaruhi oleh MIPS dan RISC-2 dengan beberapa perbedaan utama : 1. Semua instruksi MIPS-X merupakan operasi
tunggal dan dieksekusi dalam satu siklus detak. 2. Semua instruksi MIPS-X memiliki format tetap
dengan panjang instruksi 32-bit. 3. MIPS-X dilengkapi pendukung koprosesor yang
efisien dan sederhana. 4. MIPS-X sebagai dilengkapi prosesor pendukung dasar untuk dalam digunakan sistem
multiprosesor memori bersama (shared memory). 5. MIPS-X dilengkapi chace instruksi dalam chip
yang cukup besar (2 kilobyte). 6. MIPS-X mikron. difabrikasi dengan teknologi CMOS 2
Sama dengan
seperti pipeline
MIPS, tanpa
MIPS-X
merupakan
prosesor
saling-kunci
(interlock)
perangkat keras. Perangkat lunaknya dirancang untuk
16
mengikuti pewaktuan instruksi agar tidak terjadi konflik antar pipeline.
Chip
pertama
yang
dihasilkan
bekerja
baik
dengan detak 16 MHz, lebih rendah dari target yang dicanangkan sempurnanya dibuat setinggi instruksi 20 MHz, akibat Versi tidak 25 MHz 1,6
percabangan.
dengan
menggunakan
teknologi
CMOS
mikron. Ditambah dengan chace yang diintregrasikan pada chip prosesor, MIPS-X berisi hampir 150.000 transistor di atas keping seluas 8 x 8,5 mm.
17
Gambar 1 RISC 8-bit
18
BAB III PEMBAHASAN
3.1. Pengertian RISC RISC singkatan dari Reduced Instruction Set Computer . Merupakan bagian dari arsitektur mikroprosessor, berbentuk kecil dan berfungsi untuk mengeset istruksi dalam
komunikasi diantara arsitektur yang lainnya.
3.2. Karakteristik RISC
3.2.1 Instruksi per Siklus Mesin Siklus mesin ditentukan oleh waktu yang
digunakan untuk mengambil dua buah operator dari register, melakukan operasi ALU, dan menyimpan
hasil operasinya kedalam register, dengan demikian instruksi mesin RISC tidak boleh lebih kompleks dan harus dapat mengeksekusi secepat mikro instruksi pada mesin-mesin CISC. Dengan menggunakan instruksi
19
sederhana
atau
instruksi
satu
siklus
hanya
dibutuhkan satu mikrokode atau tidak sama sekali, instruksi mesin dapat di hardwired. Instruksi
seperti itu akan dieksekusi lebih cepat dibanding yang sejenis pada yang lain kontrol karena tidak perlu saat
mengakses
penyimapanan
mikroprogram
eksekusi instruksi berlangsung.
3.2.2
Set Instruksi (Operasi) Pertukaran Data yang Sederhana Operasi berbentuk dari register ke register
yang hanya terdiri dari operasi load dan store yang mengakses memori . set pula unit optimasi Fitur rancangan ini
menyederhanakan menyederhanakan lainnya
instruksi control.
sehingga Keuntungan register
memungkinkan
pemakaian
sehingga operator yang sering diakses akan tetap ada di penyimpan berkecepatan tinggi. Penekanan
20
pada
operasi
register
ke
register
merupakan hal
yang unik bagi perancangan RISC.
21
3.2.3 Mode Pengalamatan yang Sederhana Penggunaan mode pengalamatan sederhana, hampir sama dengan instruksi menggunakan pengalamatan
register. Beberapa mode tambahan seperti pergeseran dan pe-relatif dapat dimasukkan selain itu banyak mode kompleks dapat disintesis pada perangkat lunak dibanding yang sederhana, selain dapat
menyederhanakan sel instruksi dan unit kontrol.
3.2.4
Format Instruksi yang Tetap Penggunaan format-format instruksi sederhana,
panjang instruksinya tetap dan disesuaikan dengan panjang kata. Fitur ini memiliki beberapa kelebihan karena dengan menggunakan dan field yang tetap
pendekodean
opcode
pengaksesan
operator
register dapat dilakukan secara bersama-sama.
22
3.3. Ciri-ciri RISC
RISC memiliki cirri-ciri sebagai berikut1.
Instruksi berukuran tunggal. Ukuran yang umum adalah 4 byte.
2.
3. Jumlah pengalamatan data sedikit, biasanya kurang dari 5 buah.4.
Tidak
terdapat
pengalamatan sebuah
tak
langsung memori
yang agar
mengharuskan
melakukan
akses
memperoleh alamat operand lainnya dalam memori.5.
Tidak terdapat operasi yang menggabungkan operasi load atau store dengan operasi aritmatika, seperti penambahan ke memori dan penambahan dari memori.
6.
Tidak terdapat lebih dari satu operator beralamat memori per instruksi.
7.
Tidak mendukung perataan sembarang bagi data untuk operasi load atau store.
23
8. Jumlah
maksimum
pemakaian
memori
manajemen
bagi
suatu alamat data adalah sebuah instruksi .
24
9.
Jumlah dengan
bit 5
bagi
integer
register
spesifier 32
sama buah
atau
lebih,
artinya
sedikitnya
register
integer
dapat
direferensikan
sekaligus
secara eksplisit. 10. Jumlah bit floating point register spesifier sama dengan 4 atau lebih, artinya sedikitnya 16 register floating point dapat direferensikan sekaligus
secara eksplisit. Beberapa prosesor implementasi dari arsiteketur
RISC adalah AMD 29000, MIPS R2000, SPARC, MC 88000, HP PA, IBM RT/TC, IBM RS/6000, intel i860, Motorola 88000 (keluarga Motorola), PowerPC G5.
3.4. Implementasi RISC (PowerPC)
Proyek mini komputer 801 di IBM pada tahun 1975 mengawali banyak konsep arsitektur yang digunakan
dalam sistem RISC. 801 bersama dengan prosessor RISC I Berkeley, meluncurkan gerakan RISC, namun 801 hanya merupakan prototipe yang ditujukan untuk mengenalkan
25
konsep
desain. IBM yaitu
Keberhasilan membangun PC RT
memperkenalkan workstation 1986,
801 RISC dengan
menyebabkan komersial
produk pada
tahun
mengadaptasi konsep arsitektural 801 kedalam kinerja yang sebanding atau yang mesin lebih RISC baik. IBM RISC yang
System/6000
merupakan
superscalar
dipasarkan sebagai workstation berunjuk kerja tinggi, tidak lama kemudian IBM mengkaitkan mesin ini sebagai arsitektur POWER. IBM kemudian menjalin kerjasama
dengan Motorola, pembuat mikroprosessor seri 6800, dan Apple, yang menggunakan keping Motorola dalam komputer Macintoshnya dan hasilnya adalah seri mesin yang
mengimplementasikan arsitektur PowerPC yang diturunkan dari arsitektur POWER dan merupakan sistem RISC
superscalar.
3.4.1
Jenis Data RISC Pada PowerPC Byte, halfword, word, doubleword merupakan
jenis data umum. Prosesor mengiterpretasikan isi
26
item
data
tertentu
tergantung
pada
instruksi.
Prosesor fixed point mengenal jenis data berikut :1. Unsigned
Byte : dapat digunakan bagi operasi
logika atau aritmetika integer. Data ini dimuat dari memori ke register kiri umum dengan zeropenuh
extending register.
dsebelah
keukuran
2. Unsigned Halfword : seperti diatas namun dengan
kuantitas 16-bit.3. Signed
Halfword
:
digunakan kedalam
untuk memori
operasi dengan
aritmatika,
dimuatkan
sign-extending pada sebelah kiri keukuran penuh register (yaitu bit tanda posisi yang kosong).4. Unsigned Word : digunakan untuk operasi logika
disalinkan keposisi-
dan berfungsi sebagai pointer lokal.5. Signed
Word
:
digunakan
untuk
operasi
aritmatika.
27
6. Unsigned Doubleword : digunakan sebagai pointer
alamat.
28
7. Byte
String
:
panjangnya
mulai
0
hingga
128
byte. Selain point itu PowerPC tunggal mendukung dan data floating yang
presisi
presisi
ganda
ditetapkan pada IEEE 754.
3.4.2
Operasi RISC Pada PowerPC PowerPC banyak memiliki jenis operasi , berikut
disajikan berbagai jenis operasi pada PowerPC :1.
Berorientasi Pencabangan PowerPC memiliki orientasi pencabangan tidak
bersyarat dan pencabangan bersyarat. Instruksiinstruksi pencabangan bersyarat menguji suatu
bit tunggal dari register kondisi apakah benar, salah, atau tidak peduli dan isi dari counter register apakah nol, bukan nol, atau tidak
peduli. Dengan demikian terdapat sembilan macam kondisi instruksi pencabangan bersyarat yang
29
terpisah. Apabila counter register diuji apakah nol atau bukan nol, maka 1. loop sesudah Hal ini pengujian tentunya Instruksi dari link
register memudahkan dapat juga
berkurang penyiapan
iterasi. bahwa
mengindikasikan itu
alamat dalam
pencabangan
ditempatkan
register, hal ini memungkinkan pengolahan call atau return. Instruksi Uraian b bl : Pencabangan tidak bersyarat. : Bercabang alamat setelah register. bc : Pencabangan bersyarat pada Count Register dan/atau Register. sc : System Call untuk membangkitkan layanan pada bit dalkam Condition kealamat sasaran dan yang menaruh berada link
efektif
instruksi
pencabangan
kedalam
30
sistem operasi trap : Memebandingkan membangkitkan dua sistem buah trap operator handler dan bila
persyaratan tertentu dipenuhi.
31
2. Load/Store Dalam arsitektur PowerPC hanya instruksi
load/store yang dapat mengakses lokasi memori, instruksi logika dan aritmetika hanya dilakukan terhadap register. Terdapat dua fitur yang
membedakan instruksi-instruksi load/store :a.
Ukuran data, dimana data dapat dipindahkan dalam satu byte, halfword, word, juga atau dapat
doubleword.
Instruksi-instruksi
digunakan untuk memuat atau menyimpan suatu byte ke dalam sejumlah register atau dari sejumlahb.
register
Ekstensi Tanda, dimana pada pembuatan word dan halfword, bit-bit sebelah kiri register 64-bit tujuan yag tidak dipakai dapat diisi dengan bilangan-bilangan nol atau dengan bit tanda dari kuantitas yang dimuatkan.
32
Instruksi Uraian Lwzu : Memuatkan word dan nol kesebelah kiri; meng-update register sumber. ld lmw : : Memuatkan dobleword. Memuatkan word ganda berurutan ke
register yang berdekatan dari register sasaran melalui General Purpose
Register 31. lswx : Memuatkan register sasaran. suatu yang untaian byte kedalam register
dimulai byte
dengan
Empat
per-register.
Diambil semua dari register 31 hingga register 0. 3. Arimatika Integer Instruksi Uraian add : Menjumlahkan isi dari dua buah integer dan menyimpannya dalam register ketiga
33
subf
: Mengurangkan isi dua buah register dan menyimpannya dalam register ketiga.
mullw : Mengalikan isi dua buah register orde rendah 32-bit dan dalam menyimpan register hasil 64-bit
perkaliannya ketiga. divd : Membagi isi
dua
buah
register
64-bit
dan menyimpan hasil nya dalam register ketiga.4.
Logika dan Shift
Instruksi Uraian cmp : Membandingkan dua buah operand dan
menyetel empat buah bit kondisi dalam field register kondisi tertentu. crand (Condition Condition hasilnya Register Register disimpan AND) : dua bit dan satu
di-AND-kan dalam salah
dari kedua posisi tersebut.
34
and
: Meng-AND-kan isi dua buah register dan menyimpannya dalam register ketiga
sld
: Menggeser kekiri dalam register sumber dan menyimpannya dalam register
tujuan.
35
cntlzd
: Mencacah jumlah bit 0 berturutan yang berawal sumber pada dan bit nol dalam register hasil
menempatkan
perhitungan dalam register tujuan. rldic : Merotasikan doubleword, ke kiri register dengan
meng-AND-kannya
mask, dan menyimpannya dalam register tujuan. 5. Floating Point Instruksi Uraian lfs : Memuatkan bit dari bilangan memori, floating point 32-
mengubahnya
kedalam
format 64 bit, dan menyimpannya dalam register floating point. fadd : Menjumlahkan dua buah register floating point dan menyimpannya dalam register
ketiga.
36
fmadd : Mengalikan menambahkan menyimpan keempat.
isi isi
dua
buah
register, dan
register
ketiga,
hasilnya
dalam
register
fcmpu : Membandingkan dua buah operand floating point dan menyetel bit-bit kondisi. 6. Manajemen Cache Instruksi Uraian dcbf : Membersihkan Melakukan terdapat (flush) blok data cache cache. yang
lookup pada
dalam
alamat
sasaran
tertentu
dan melakukan operasi pembersihan. icbi : Menginvalidasikan instruksi blok cache.
3.4.3
Mode dan Format Pengalamatan RISC Pada PowerPC Seperti umumnya mesin-mesin RISC, PowerPC
menggunakan mode pengalamatan yang sederhana dan
37
relatif
pendek.
Mode-mode
ini
sangat
cocok
diklasifikasikan menurut jenis instruksinya 1. Load/Store Adressing a. Indirrect Adressing Instruksinya meliputi displacement 16-bit yang akan ditambahkan ke register basis,
yang kemudian akan meng-update isi register itu. Option update sangat berguna di untuk dalam
pengindeksan loop.
progresif
aray-aray
b. Indirect Indexed Adressing Instruksinya mereferensi dan indeks register, yang register disini basis kedua
register
tersebut
dapat
berupa
sembarang
General Purpose Register. Effective Address merupakan tersebut. jumlah Seperti isi mode kedua register option
sebelumnya,
38
update menyebabkan register basis di-update menjadi effective address yang baru 2. Branch Addressing a. Absolute Addressing Digunakan pada instruksi pencabangan
tanpa syarat, maka alamat efektif berikutnya diperoleh dari immediate value 24-bit yang terdapat dalam instruksi. menjadi Nilai 24-bit dengan
dikembangkan
32-bit
menambahkan dua angka nol kesisi yang kurang signifikan harus (hal ini pada tanda. bersyarat, diijinkan batas Untuk effective instruksi dan
terjadi
32-bit)
pengembangan pencabangan
instruksi address
dari instruksi berikutnya diturunkankan dari suatu immediate value 16-bit dalam instruksi tersebut. Nilai 16-bit ini dikembangkan
menjadi nilai 32-bit dengan menambahkan dua
39
angka
nol
kesisi
yang
paling
kurang
signifikan
dan pengembangan data.
b. Relative Addressing Immediate pencabangan value value tanpa 24-bit atau (instruksi immadiate
syarat), (instruksi
14-bit
pencabangan diatas.
bersyarat)
dikembangkan
seperti
Kemudian nilai yang diperoleh ditambahkan ke program Counter untuk menentukan lokasi
relatif keinstruksi saat itu.
40
c. Indirrect Adressing Mode instruksi atau count ini memperoleh effetive link hal address register ini count alamat dapat
berikutnya register.
dari Dalam
register instruksi juga
digunakan
untuk
menampung ini
pencabangan. untuk
Register menampung
digunakan
hitungan
looping. 3. Arithmetic Instructions Pada aritmetika integer seluruh operator
diisikan ke dalam register atau sebagai bagian instruksi, point sdangkan pada aritmatika merupakan hanya floating register register
seluruh
operator artinya
floating
point,
addressing yang digunakan a. Register Addressing Pada register addressing sebuah operand simbol atau operand tujuan ditentukan
41
sebagai Register.
salah
satu
General
Purpose
42
b. Immediate Addressing Pada immediate addressing operand sumber berbentuk kuantitas bertanda 16-bit di dalam instruksi.
3.4.4
Format Instruksi RISC Pada PowerPC Semua instruksi PowerPC panjangnya 32 bit dan
berbentuk seperti format instruksi yang umum. Enam bit pertama sebuah instruksi mensfesifikasikan
operasi yang akan dilakukan. Pada kasus tertentu terdapat pada pengembangan pada opcode yang yang terdapat
instruksi-instruksi khusus format suatu biasa
mensfesifikasikan Perlu diingat pekerjaan instruksilogika,
subkasus sruktur
operasi. yang
memudahkan Bagi
unit-unit instruksi
eksekusi
instruksi.
load/store,
aritmetik,
dan
opcode diikuti oleh dua buah referensi register 5
43
bit
yang
memungkinkan
32
buah
General
Purpose
Register dapat digunakan. Instruksi pencabangan mencakup suatu bit link (L) yang menandakan alamat efektif instruksi yang berada setelah instruksi pencabangan akan disimpan dalam register link. Dua bentuk instruksi juga
juga mencakup bit (A) yang menandakan apakah mode pengalamatan bersifat absolut atau relatif
terhadap PC. Pada instruksi pencabangan bersyarat, field bit CR mensfesifikasikan bit yang akan diuji dalam register kondisi. Field option
mensfesifikasikan persyaratan tentang pencabangan mana yang akan diambil. Tabel 1. Tabel Kondisi Percabangan Selalu Bercabang Bercabang apabila tidak bersyarat count = 0 Bercabang apabila count = 0 syarat tidak terpenuhi syarat terpenuhi tidak bersyarat syarat tidak terpenuhi
syarat terpenuhi Bercabang apabila syarat tidak terpenuhi
44
Bercabang apabila syarat terpenuhi Instruksi floating point memiliki field-field pada tiga buah register sumber. Umumnya hanya dua bua register sumber saja yang dipakai. Beberapa
instruksi mencakup perkalian dan register sumber dan kemudian penambahan atau pengurangan register sumber ketiga, penggabungan instruksi seperti ini digunakan karena sering diperlukan.
3.5. Pipelining RISC Pipelining adalah suatu teknik implementasi dengan mana berbagai tindih instruksi dapat dilaksanakan hal di ini antara secara
tumpang
(overlapped), yang ada
mengambil tindakan
keuntungan
paralelisme
yang diperlukan untuk mengeksekusi suatu instruksi. Di dalam pipeline suatu komputer, masing-masing langkah di dalam pipeline melengkapi bagian-bagian dari suatu instruksi. segment. Masing-masing langkah disebut Stage dihubungkan satu stage atau
terhadap
lainnya
45
sehingga membentuk yang akhir stage.
pipe-instruction pada bagian
Pipelining pada RISC terdapat 2 model yaitu : 1. Siklus Instruksi (Operasi Register-Register),
terdiri dari 2 fase yaitu : a. I : Instruction Fetch (Pengambilan Instruksi). b. E : Execute (Melakukan operasi ALU dengan
register input dan output).
Gambar 3. Pipeline RISC Reg-to-Reg
2. Operasi Load-Store, terdiri dari 3 fase yaitu : a. I : Instruction Fetch (Pengambilan Instruksi). b. E : Execute (Menghitung Alamat Memory). c. D : Memory sebaliknya). (Operasi Register ke memori dan
46
Dalam pipelining
pengembangan yang umum
pipelining digunakan dalam
RISC, RISC
model dengan
pipelining 5 fase yang disebut Clasic 5 Stage RISC Pipeline. Model pipelining tersebut terdiri dari 5
fase yaitu : a. IF : Instruction Fetch (Pengambilan dari memori). b. ID : Instruction Decode (Menterjemahkan ke dalam sinyal kontrol dan opcode membaca instruksi
register). c. EX :Execute (Menjalankan operasi ALU,
menghitung jump dan percabangan target). d. MEM : Memori (Mengakses memori jika perlu). e. WB : Write Back (Meng-update file register).
47
Gambar 3. Clasic RISC 5 Stage Pipeline
48
3.6. Kelebihan dan Kekurangan RISC
Teknologi RISC relatif masih baru oleh karena itu tidak ada perdebatan dalam menggunakan RISC ataupun CISC, karena teknologi 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. 3.6.1 Kelebihan1.
Berkaitan dimana
dengan tugas
penyederhanaan pembuat kompiler
kompiler, untuk bagi yang karena yang
menghasilkan semua
rangkaian HLL.
instruksi Instruksi
mesin mesin
pernyataan
kompleks kompiler sesuai
seringkali harus dengan kode
sulit
digunakan kasus-kasus
menemukan
konsepnya. yang
Pekerjaan untuk
mengoptimalkan
dihasilkan
meminimalkan ukuran kode, mengurangi hitungan eksekusi instruksi, dan meningkatkan pipelining
49
jauh
lebih
mudah
apabila
menggunakan
RISC
dibanding menggunakan CISC.2.
Arsitektur RISC yang mendasari PowerPC memiliki kecenderungan lebih menekankan pada referensi register referensi sedikit dibanding register sehingga referensi memerlukan memiliki memori, bit akses yang dan lebih
eksekusi
instruksi lebih cepat.3.
Kecenderungan operasi register ke register akan lebih menyederhanakan unit register set instruksi kontrol akan dan serta
menyederhanakan pengoptimasian
menyebabkan
operand-operand yang sering diakses akan tetap berada dipenyimpan berkecepatan tinggi.4.
Penggunaan
mode
pengalamatan
dan
format
instruksi yang lebih sederhana.
3.6.2 Kekurangan
50
1.
Program yang dihasilkan dalam bahasa simbolik akan lebih panjang (instruksinya lebih banyak).
51
2.
Program
berukuran memori
lebih yang
besar lebih
sehingga ini
membutuhkan
banyak,
tentunya kurang menghemat sumber daya. 3. Program yang berukuran lebih besar akan
menyebabkan a. Menurunnya kinerja, yaitu instruksi yang
lebih banyak artinya akan lebih banyak bytebyte instruksi yang harus diambil. b. Pada lingkungan paging akan page menyebabkan fault lebih
kemungkinan besar.
terjadinya
3.7. Perbedaan RISC dan CISC
3.7.1
Pada Karakteristik Arsitektur
Tabel 2. Perbedaan Karakteristik Arsitektur RISC dan CISC Karakteristik Ukuran Satu Instruksi Format Instruksi Cache RISC ukuran CISC (32 Bervariasi (16-64 field
bits) Penempatan
bits) field Penempatan bervariasi Satu cache
yang tetap Cache terpisah
52
Tabel 2. Lanjutan Karakteristik RISC Addressing 12-24 Mode Tingkat Kerumitan Instruksi Hampir operasi mudah CISC 3-5
semuanya Bervariasi, mulai satu dari yang sederhana sehingga kemungkinan menggunakan banyak operasi pada 1 instruksi Digabungkan dengan dalam macam instruksi berbeda Menggunakan implementasi 1 mikrocode dan operasi berbagai tipe yang yang hingga ada
merupakan
ke yang kompleks
Referensi Memori
Tidak digabungkan dengan operasi
Design Hardware
Menggunakan implementasi dengan pipeline tanpa microcode
3.7.2 Pada Fitur Table 3. Perbedaan Fitur RISC dan CISC Fitur Daya Kecepatan RISC Sedikit (miliwatt) 200-520 MHz CISC Banyak (watt) 2-5 GHz
53
Komputasi CPI Manajemen Memory I/O Environment Struktur Instruksi Port
CPI < 1.5 Direct, 32 bit Costum High Temp,
CPI 2-15 Mapped PC berbasis
pilihan via BIOS Low Need Fans, FCC/CE approval an issue Seperti PC dan Load and Go BSP
EM Emissions Costum, efisien,
sangat cepat Sistem Sulit, membutuhkan level rendah
Operasi
54
3.7.3
Pada Instruksi Perbedaan antara CISC dengan RISC menjadi jelas
melalui persamaan kinerja komputer dasar, yaitu :
Contoh : RISC instruksi: Siklus total clock untuk RISC : (3movs x 1 cycle) = 3 cycles Mov ax, 0 (5adds x 1 cycles) = 5 cycles (5loops x 1 cycles )= 5 cycles Mov bx, 10 + Mov cs, 5 Total = 13 cycles
Begin Add ax, bx Loop begin CISC instruksi: Mov ax, 10 Mov bx, 5 Mul bx, ax Siklus total clock untuk CISC : (2movs x 1 cycle) = 2 cycles (1mul x 30 cycles) = 30 cycles + Total = 32 cycles
3.7.4 Pada Langkah Kerja
55
Gambar 4. Perbedaan RISC dan CISC pada langkah kerja3.7.5
Pada Pipeline
GGambar 5. Alur Pipeline CISC dan RISC
3.7.6 Secara Keseluruhan Table 4. Perbedaan RISC dan CISC RISC Penekanan pada CISC perangkat Penekanan pada
lunak Single-clock,
perangkat keras hanya Termasuk instruksi
sejumlah kecil instruksi kompleks multi-clock Register ke register : Memori ke memori : LOAD dan STORE adalah LOAD dan STORE
56
instruksi-instruksi terpisah Urutan kode
saling bekerja sama besar, Urutan kode kecil,
kecepatan (relatif) tinggi kecepatan rendah Transistor banyak dipakai Transistor digunakan untuk register memori untuk kompleks menyimpan instruksi-instruksi
57
BAB IV KESIMPULAN
1.
Prosesor RISC, yang berkembang dari riset akademis telah menjadi prosesor komersial yang terbukti
mampu beroperasi lebih cepat dengan penggunaan luas chip yang efisien.2.
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.3.
Perkembangan kontroversi RISC dan CISC disebabkan karena terjadinya semakin konvergensinya teknologi.
4.
Dengan semakin bertambahnya kerapatan keeping dan semakin cepatnya perangkat keras,maka system RISC menjadi semakin kompleks.
58
5.
Bersamaan dengan hal itu, untuk mencapai kinerja yang maksimum, rancangan CISC telah difokuskan yang
terhadap
masalah-masalah
tradisional
berkaitan dengan RISC, seperti misalnya pertambahan jumlah register general purpose dan penekanan pada rancangan pipeline instruksi.6.
Kelebihan arsitektur RISC yang berkaitan dengan kinerja dapat ditunjukan dengan sejumlah Sircumstansial Evidence(Lampiran 1).
7. Implementasi pertama arsitektur power PC yaitu 601
memiliki rancangan
rancangan RS 6000,
yang model
sangat
mirip
dengan
PowerPC
berikutnya
mempunyai konsep superscalar.
59
DAFTAR PUSTAKA
Anonymous. Program Diploma Teknik Elektro FT Undip. PROSESOR RISC : Perkembangan dan Prospeknya..
http://www.d3elektro.undip.ac.id/index.php/infofull/16-prosesor-risc-perkembangan-danprospeknya.html, 10 September 2011
Stalling, Komputer:
Williams,
Organisasi Kinerja.
Dan Jilid
Arsitektur 1, Terj.
Perancangan
Gurnita Priatna, Jakarta : Prenhallindo,1998. Stalling, Komputer: Williams, Organisasi Kinerja. Dan Jilid Arsitektur 2, Terj.
Perancangan
Gurnita Priatna, Jakarta : Prenhallindo,1998. PowerPC Siap Masuki 2-GHz, Komputek, Juni 2001, edisi 219 minggu II, hal 3. Tanggal akses: 5 September 2011. http://www.lib.usm.my/Moro/GPI/bab10.html William Stallings , Computer Organization and
Architecture, 1996
60
LAMPIRAN 1Sircumstansial Evidence Optimasi kompiler yang lebih efektif dan dapat dikembangkan Sebagian besar instruksi yang dihasilkan oleh kompiler relatif sederhana.
Berkaitan
dengan
penggunaan
pipelining
instruksi yang diterapkan secara lebih efektif terhadap RISC.
Program-program
RISC
harus
lebih
responsife
terhadap interrupt. Berkaitan dengan implementasi VLSI Apabila CPU akan digunakan berubah, rancangan artinya dan implementasi untuk
dimungkinkan
menaruh CPU keseluruhan pada keeping tunggal. Waktu yang dibutuhkan untuk implementasi dan
perancangan karena prosessor VLSI cukup sulit dibuat sehingga para perancang harus membuat
61
rancangan rangkaian, tata letak dan pemodelan pada tingkat perangkat, dengan menggunakan
pemodelan RISC proses tersebut akan lebih mudah selain dengan setara apabila kinerja keping CISC RISC ekuivalen yang
mikroprosessor maka
(Pentium) dengan
keuntungan
memakai
pendekatan RISC akan terasa sekali.