Anda di halaman 1dari 32

Kuliah 11

11
RISC & Pipelining
Organisasi dan Arsitektur Komputer

Program Studi Teknik Informatika


Fakultas Teknik
Universitas Mataram
Apa yang dipelajari?
• Konsep dasar CISC
• Konsep dasar RISC
• Konsep dasar Pipelining

2
Jenis Arsitektur CPU
Ditinjau dari perancangan perangkat instruksinya (set
instruksinya), terdapat dua jenis arsitektur prosesor,
yaitu:
1. CISC (Complex Instruction Set Computer)
– Arsitektur dengan kumpulan perintah yang rumit.

2. RISC (Reduced Instruction Set Computer)


– Arsitektur dengan kumpulan perintah yang sederhana.

3
CISC
• Jenis prosesor yang memiliki set instruksi yang kompleks.
• CISC merupakan salah satu bentuk arsitektur yang menjalani
beberapa instruksi dengan tingkat yang rendah.
• Misalnya instruksi tingkat rendah tersebut adalah seperti
pengambilan dari memori (load), operasi aritmatika, dan
penyimpanan ke dalam memori (store) yang saling bekerja
sama.
• CISC dimaksudkan untuk meminimumkan jumlah perintah yang
diperlukan untuk mengerjakan pekerjaan yang diberikan
(Jumlah perintah sedikit tetapi rumit).

4
CISC
• CISC memiliki instruksi yang kompleks dan
berpengaruh pada kinerjanya yang lebih lambat.
• Contoh prosesor yang menggunakan arsitektur
CISC:
– Intel x86, IBM Z-Series Mainframes, dan beberapa
arsitektur CPU model terdahulu
• Karakteristik CISC :
– Memiliki sedikit register serbaguna
– Memiliki mode pengalamatan yang banyak
– Memiliki instruksi yang kompleks
– Ukuran instruksi bervariasi
5
Keterbatasan Arsitektur CISC
• Menjadikan mesin mudah untuk diprogram dalam
bahasa rakitan, tetapi menyulitkan dalam penyusunan
kompiler bahasa pemrograman tingkat tinggi (HLL).
• Dalam CISC banyak terdapat perintah bahasa mesin.
• Instruksi yang kompleks jarang digunakan oleh
programmer dan compiler.
• Semua operasi instruksinya berbasis pada Memory,
sehingga proses load dan store menjadi lambat.

6
RISC
• RISC lahir pada pertengahan 1980
• Dilatarbelakangi oleh CISC
• Perbedaan mencolok dari kelahiran RISC ini adalah tidak
ditemui pada dirinya instruksi assembly atau yang
dikenal dengan bahasa mesin sedangkan itu banyak
sekali dijumpai di CISC.

7
Alasan menggunakan RISC
• RISC menyederhanakan rumusan perintah sehingga
lebih efisien dalam penyusunan kompiler  dapat
memaksimumkan kinerja program yang ditulis dalam
bahasa tingkat tinggi (HLL).
• RISC menerapkan proses eksekusi pipeline.
– Eksekusi secara pipeline memerlukan waktu yang lebih
singkat daripada waktu untuk melakukan pekerjaan yang
sama dengan menggunakan perintah yang lebih rumit.

8
Fitur yang dimiliki RISC
• Instruksinya sederhana
• Ukuran instruksi tetap, format instruksinya tetap
– Digunakan untuk proses pipelining, “ambil dan eksekusi”
secara parallel
• Mode pengalamatan terbatas
– Untuk mengurangi kompleksitas dari rancangan hardware
• Instruksinya berorientasi pada register
– Mengurangi akses ke memori
• Ukuran register yang besar
– Mengurangi akses ke memori
– Membuat pemanggilan procedure menjadi lebih efisien
9
Perbedaan CISC dan RISC
• RISC
 Instruksinya sederhana
 Jumlah instruksi sedikit
 Sedikit mengakses memori

• CISC
Lalu lintas instruksi dan data di dalam bus sangat padat
Banyak mengakses memori dan meningkatkan
kesalahan cache memory
Hanya sedikit register yang tersedia
10
Karakteristik RISC
1. Siklus instruksi
2. Operasi pertukaran data
3. Mode pengalamatan
4. Format instruksi

11
Karakteristik RISC:
1. Siklus Instruksi RISC
• Satu instruksi per siklus mesin.
• Siklus mesin ditentukan oleh waktu yang digunakan
untuk mengambil dua buah operand dari register,
melakukan operasi ALU, dan menyimpan hasil
operasinya ke dalam register.
• RISC adalah rancangan prosesor yang sederhana, tetapi
dalam kesederhanaan tersebut didapatkan kecepatan
operasi tiap-tiap siklus instruksinya.

12
Karakteristik RISC:
2. Operasi Pertukaran Data RISC
• Berbentuk pertukaran data dari register ke register.
• Dengan mengoptimalkan penggunaan register
diharapkan siklus operasi semakin cepat.
– Ingat! Register adalah memori yang paling cepat dibandingkan
cache maupun memori utama.
• Dengan penyederhanaan instruksi maka operasi unit
kontrol juga akan sederhana dan cepat.

13
Karakteristik RISC:
3. Mode Pengalamatan RISC

• Fitur rancangan ini juga dapat menyederhanakan set


instruksi dan unit kontrol.
• Dengan mode pengalamatan yang sederhana akan
didapatkan operasi pengambilan data yang semakin
cepat.

14
Karakteristik RISC:
4. Format Instruksi RISC
• Digunakan sebuah format untuk menyederhanakan
implementasi perangkat kerasnya.
• Panjang instruksi tetap dan disamakan dengan panjang word
yang digunakan.
• Panjang field dibuat sama dan tetap.
• Kelebihan  dengan menggunakan field yang tetap maka
pengkodean opcode dan pengaksesan operand register dapat
dilakukan secara bersamaan.
• Format yang sederhana juga akan memudahkan unit kontrol.

15
Eksekusi Instruksi
• Waktu eksekusi = N x S x T
– 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 variabel di atas.
• Arsitektur CISC berusaha menurunkan nilai N
• 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.
16
Kelebihan Rancangan RISC
1. Meningkatkan kinerja sistem CPU.
2. Optimalisasi dan peng-efektif-an komputer.
3. Dengan menggunakan instruksi yang sederhana
terdapat kemungkinan untuk:
– Melakukan reorganisasi kode untuk efisiensi
– Memaksimalkan pemakaian register
– Melakukan perhitungan bagian instruksi kompleks pada saat
kompilasi
– Memudahkan kerja unit kontrol
– Memudahkan implementasi pipelining
17
Kelebihan Rancangan RISC
4. Implementasi Perangkat Keras
– Kesederhanaan instruksi dan unit kontrol menghasilkan
hardware sederhana.
– Hardware sederhana dapat diletakkan dalam satu keping
tunggal.
– Hardware sederhana menghasilkan proses hardware dengan
dimensi yang lebih kecil, konsumsi daya rendah dan lebih
ekonomis.

18
Pipeline
• Teknologi pipeline yang digunakan pada komputer
bertujuan untuk meningkatkan kinerja dari komputer.

• Pipeline adalah suatu cara yang digunakan untuk


melakukan sejumlah kerja secara bersamaan, tetapi
dalam tahap yang berbeda serta dialirkan secara kontinu
pada unit pemrosesan (prosesor).

• Dengan cara ini, maka prosesor akan selalu bekerja.


19
Konsep Dasar Pipeline
• Laundry
– A, B, C, D masing – masing memiliki
satu kantong pakaian untuk dicuci, A B C D
dikeringkan, dan disetrika
– Mencuci membutuhkan waktu 30 menit
– Mengeringkan membutuhkan waktu 40
menit
– Menyetrika membutuhkan waktu 20
menit

20
Konsep Dasar Pipeline
6 sore 7 8 9 10 11 Tengah Malam

Waktu

30 40 20 30 40 20 30 40 20 30 40 20
 Secara berurutan 4 kantong
A laundry membutuhkan waktu 6
jam
 Jika menggunakan konsep
B pipelining, berapa waktu yang
dibutuhkan?
C

D
21
Konsep Dasar Pipeline
6 sore 7 8 9 10 11 Tengah Malam
U
Waktu
r
u 30 40 40 40 40 20
t
a A
n  4 kantong laundry dengan
pipeline membutuhkan
B waktu 3.5 jam
P
r
o C
s
e D
s 22
Konsep Dasar Pipelining

23
Perbedaan antara model microprocessor yang tidak
menggunakan arsitektur Pipeline dengan
microprocessor yang menerapkan teknik Pipeline

• Microprocessor yang tidak menggunakan pipeline :


– Satu instruksi dilakukan sampai selesai, baru instruksi
berikutnya dapat dilaksanakan.

time

I-1 I-2 I-3

24
Perbedaan antara model microprocessor yang tidak
menggunakan arsitektur Pipeline dengan
microprocessor yang menerapkan teknik Pipeline

• Microprocessor yang menggunakan teknik pipeline :


– Ketika satu instruksi sedang diproses, maka instruksi yang
berikutnya juga dapat diproses dalam satu waktu yang
bersamaan.
– Instruksi yang diproses secara bersamaan ini ada dalam tahap
proses yang berbeda.
– Ada sejumlah tahapan yang akan dilewati oleh sebuah
instruksi.

25
Perbedaan antara model microprocessor yang tidak
menggunakan arsitektur Pipeline dengan
microprocessor yang menerapkan teknik Pipeline

• Microprocessor yang menggunakan teknik pipeline

26
Penerapan Pipeline
• Misalnya sebuah microprocessor menyelesaikan sebuah
instruksi dalam 4 langkah.

• Ketika instruksi pertama masuk ke langkah 2, maka instruksi


berikutnya diambil untuk diproses pada langkah 1 instruksi
tersebut.

• Begitu seterusnya, ketika instruksi pertama masuk ke langkah 3,


instruksi kedua masuk ke langkah 2 dan instruksi ketiga masuk ke
langkah 1.

27
Contoh Pengerjaan Instruksi
Tanpa Pipeline dan Dengan Pipeline
• Misalkan terdapat dua instruksi:
– Instruksi 1 : ADD AX, AX
– Instruksi 2 : ADD EX, CX

• Setelah CU menjemput Instruksi 1 dari memory (IF), CU akan menerjemahkan


instruksi tersebut (ID).
• Pada saat menterjemahkan Instruksi 1 tersebut, komponen IF tidak bekerja.
• Adanya teknologi pipeline menyebabkan IF akan menjemput Instruksi 2 pada
saat ID menterjemahkan Instruksi 1.
• Demikian seterusnya pada saat CU menjalankan Instruksi 1 (EX), Instruksi 2
diterjemahkan (ID).
28
Contoh Pengerjaan Instruksi Tanpa Pipeline

• Pada ilustrasi di bawah, dijelaskan bahwa instruksi baru


akan dijemput jika instruksi sebelumnya telah selesai
dilaksanakan.

Instruksi 1 

Instruksi 2 

29
Contoh Pengerjaan Instruksi Dengan Pipeline

• Pada ilustrasi di bawah, dijelaskan bahwa instruksi baru akan


dijemput/dipanggil setelah tahap IF menganggur.

• Misalkan ada tiga buah instruksi yang dieksekusi:

Instruksi 1 
Instruksi 2 
Instruksi 3 

30
Pengerjaan Instruksi Dengan Pipeline

• Dengan adanya pipeline, dua instruksi selesai dilaksanakan pada


detik keenam, sedangkan kasus tanpa pipeline baru selesai pada
detik kesepuluh.

• Dengan demikian telah terjadi percepatan sebanyak 1,67 x dari


10T menjadi hanya 6T.

• Sedangkan untuk pengerjaan 3 buah instruksi terjadi percepatan


sebanyak 2,14 dari 15T menjadi hanya 7T.

31
Terima Kasih

32

Anda mungkin juga menyukai