Anda di halaman 1dari 36

CISC RISC

SUPERSCALAR
Herry wahyono
A. CISC
◦ CISC adalah singkatan dari Complex Intruction Set
Computer dimana prosesor tersebut memiliki set instruksi
yang kompleks dan lengkap. 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.
A. CISC
◦ CISC (Complex Instruction Set Computer) adalah
salah satu bentuk arsitektur yang menjalankan set
instruksi dan tiap instruksi dapat menjalankan
beberapa instruksi tingkat rendah. Misalnya instruksi
tingkat rendah tersebut adalah operasi aritmatika,
penyimpanan – pengambilan dari memori dll.
Prosesor CISC memiliki kapasitas instruksi yang cukup
besar yang memberikan fleksibilitas untuk menulis
sebuah program menjadi lebih pendek dan lebih
efektif.
A. CISC
◦ CISC banyak digunakan di AMD CPU dan Intel. CISC
memang memiliki instruksi yang kompleks dan memang
dirasa berpengaruh pada kinerjanya yang lebih
lambat. Mungkin sudah jadi takdir bagi CISC yang
selalu ingin hardware berkembang jauh lebih cepat
ketimbang software maka CISC menawarkan set
instruksi yang powerful, kuat, tangguh, maka tak heran
jika CISC memang hanya mengenal bahasa assembly
yang sebenarnya ia tujukan bagi para programmer.
Karena instruksi yang ia usung bersifat komplek, maka ia
hanya memerlukan sedikit instruksi untuk berjalan.
A. CISC
◦Tujuan utama dari arsitektur CISC adalah
melaksanakan suatu perintah cukup dengan
beberapa baris bahasa mesin sedikit mungkin.
Hal ini bisa tercapai dengan cara membuat
perangkat keras prosesor mampu memahami
dan menjalankan beberapa rangkaian operasi.
A. CISC
◦Hal ini sangat mungkin karena pembangunan
perangkat prosesor CISC dapat memahami
dan mengeksekusi operasi yang banyak.
Sebagai contoh pada MCS-51, instruksi
pengkalian (MUL) merupakan instruksi yang
kompleks yang mana hanya operand yang
akan ditentukan dalam instruksi, dan operasi
pengkalian diselesaikan oleh hardware.
A. CISC
◦Dalam tipe instruksi yang demikian,
pembentukan inkstruksi kompleks ke dalam
hardware yang dilakukan secara langsung,
membantu dalam dua cara yang
berbeda. Tidak hanya
pengimplementasian hardware menjadi
lebih cepat,
A. CISC
◦tetapi juga menghemat ruang memori
program mengingat kode instruksi
sangatlah pendek jika dibandingkan
dengan yang diperlukan untuk operasi
pengalian dengan instruksi ADD. Hal
tersebut mengharuskan programer bekerja
dalam level yang lebih tinggi.
A. CISC
◦Untuk tujuan contoh kita kali ini, sebuah
prosesor CISC sudah dilengkapi dengan
sebuah instruksi khusus, yang kita beri nama
MULT. Saat dijalankan, instruksi akan
membaca dua nilai dan menyimpannya ke 2
register yag berbeda, melakukan perkalian
operan di unit eksekusi dan kemudian
mengambalikan lagi hasilnya ke register yang
benar. Jadi instruksi-nya cukup satu saja.
A. CISC
◦ MULT 2:3, 5:2. MULT dalam hal ini lebih dikenal
sebagai “complex instruction”, atau instruksi yang
kompleks. Bekerja secara langsung melalui
memori komputer dan tidak memerlukan instruksi
lain seperti fungsi baca maupun menyimpan. Satu
kelebihan dari sistem ini adalah kompailer hanya
menerjemahkan instruksi-instruksi bahasa tingkat-
tinggi ke dalam sebuah bahasa mesin. Karena
panjang kode instruksi relatif pendek, hanya
sedikit saja dari RAM yang digunakan untuk
menyimpan instruksi-instruksi tersebut.
B. RISC
◦RISC adalah singkatan dari Reduced
Instruction Set Computer yang artinya
prosesor tersebut memiliki set instruksi program
yang lebih sedikit. RISC menyederhanakan
rumusan perintah sehingga lebih efisien
CISC?

dalam penyusunan kompiler yang pada


akhirnya dapat memaksimumkan kinerja
program yang ditulis dalam bahasa tingkat
tinggi.
B. RISC
◦Konsep arsitektur RISC banyak menerapkan
proses eksekusi pipeline. Meskipun jumlah
perintah tunggal yang diperlukan untuk
melakukan pekerjaan yang diberikan
mungkin lebih besar, eksekusi secara
pipeline memerlukan waktu yang lebih
singkat daripada waktu untuk melakukan
pekerjaan yang sama dengan
menggunakan perintah yang lebih rumit.
B. RISC
◦Mesin RISC memerlukan memori yang lebih
besar untuk mengakomodasi program
yang lebih besar. IBM 801 adalah prosesor
komersial pertama yang menggunakan
pendekatan RISC.
B. 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.
B. RISC
◦ 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.
B. RISC
◦ Ciri-ciri RISC:
. Instruksi berukuran tunggal.
. Ukuran yang umum adalah 4 byte.
. Jumlah mode pengalamatan data yang sedikit, biasanya
kurang dari lima buah.
· Tidak terdapat pengalamatan tak langsung.
· Tidak terdapat operasi yang menggabungkan operasi
load/store dengan operasi aritmetika (misalnya, penambahan
dari memori, penambahan ke memori).
B. RISC
◦KELEBIHAN DAN KEKURANGAN TEKNOLOGI RISC
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.
B. RISC
◦KEUNGGULAN
• 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.
B. RISC
◦KEUNGGULAN
• 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.
• 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.
B. RISC
◦KEUNGGULAN
• 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.
• Penggunaan mode pengalamatan dan format
instruksi yang lebih sederhana.
B. RISC
◦KEKURANGAN
• Program yang dihasilkan dalam bahasa
simbolik akan lebih panjang (instruksinya
lebih banyak).
• Program berukuran lebih besar sehingga
membutuhkan memori yang lebih banyak,
ini tentunya kurang menghemat sumber
daya.
B. RISC
◦KEKURANGAN
• Program yang berukuran lebih besar akan
menyebabkan menurunnya kinerja, yaitu
instruksi yang lebih banyak artinya akan lebih
banyak byte-byte instruksi yang harus diambil.
Selain itu, Pada lingkungan paging akan
menyebabkan kemungkinan terjadinya page
fault lebih besar.
B. RISC
◦Karakteristik CISC versus RISC
· Rancangan RISC dapat memperoleh keuntungan
dengan mengambil sejumlah feature CISC dan
Rancangan CISC dapat memperoleh keuntungan
dengan mengambil sejumlah feature RISC.
· Hasilnya adalah bahwa sejumlah rancangan RISC
yang terbaru, yang dikenal sebagai PowerPC, tidak lagi
“murni” RISC dan rancangan CISC yang terbaru, yang
dikenal sebagai Pentium, memiliki beberapa karakteristik
RISC.
B. RISC
CISC RISC
1. Lebih menekankan pada 1. Menekankan pada perangkat
perangkat keras, sesuai dengan lunak, dengan sedikit transistor.
takdirnya untuk programer.
2. Memiliki instruksi komplek. 2. Instruksi sederhana bahkan single.
3. Load/store atau memori ke 3. Load/store atau memori ke memori
memori bekerja sama. bekerja terpisah.
4. Memiliki ukuran kode yang kecil 4. Ukuran kode besar dan kecepatan
dan kecepatannya rendah.
lebih tinggi.
5. Transistor di dalamnya
digunakan untuk menyimpan 5. Transistor di dalamnya lebih untuk
instruksi - instruksi bersifat register memori.
komplek.
C. SUPERSCALAR
Salah satu jenis dari arsitektur, dimana superscalar
adalah sebuah uniprocessor yang dapat mengeksekusi
dua atau lebih operasi scalar dalm bentuk paralel.
Merupakan salah satu rancangan untuk meningkatkan
kecepatan CPU.
Kebanyakan dari komputer saat ini menggunakan
mekanisme superscalar ini. Standar pipeline yang
digunakan adalah untuk pengolahan bilangan
matematika integer (bilangan bulat, bilangan yang
tidak memiliki pecahan).
C. SUPERSCALAR
Kebanyakan CPU juga memiliki kemampuan untuk
pengolahan untuk data floating point (bilangan
berkoma).
Pipeline yang mengolah integer dapat juga digunakan
untuk mengolah data bertipe floating point ini, namun
untuk aplikasi tertentu, terutama untuk aplikasi
keperluan ilmiah CPU yang memiliki kemampuan
pengolahan floating point dapat meningkatkan
kecepatan prosesnya secara dramatis.
C. SUPERSCALAR
Peristiwa menarik yang bisa dilakukan dengan
metoda superscalar ini adalah dalam hal
memperkirakan pencabangan instruksi (brach
prediction) serta perkiraan eksekusi perintah
(speculative execution).
Peristiwa ini sangat menguntungkan buat
program yang membutuhkan pencabangan dari
kelompok intruksi yang dijalankankannya
C. SUPERSCALAR
Program yang terdiri dari kelompok perintah bercabang
ini sering digunakan dalam pemrograman. Contohnya
dalam menentukan aktifitas yang dilakukan oleh suatu
sistem berdasarkan umur seseorang yang sedang
diolahnya, katakanlah jika umur yang bersangkutan
lebih dari 18 tahun, maka akan diberlakukan instruksi
yang berhubungan dengan umur tersebut, anggaplah
seseorang tersebut dianggap telah dewasa, sedangkan
untuk kondisi lainnya dianggap belum dewasa. Tentu
perlakuannya akan dibedakan sesuai dengan sistem
yang sedang dijalankan.
C. SUPERSCALAR
Kemudian yang dilakukan oleh CPU untuk hal ini
adalah Komputer akan membandingkan nilai
umur data yang diperolehnya dengan 18 tahun
sehingga komputer dapat menentukan langkah
dan sikap yang harus diambilnya berdasarkan
hasil perbandingan tersebut. Sikap yang diambil
tentu akan diambil berdasarkan pencabangan
yang ada.
C. SUPERSCALAR

Pada CPU yang mendukung perintah pencabangan ini,


CPU membutuhkan lumayan banyak clock cycle,
mengingat CPU menempatkan semuanya pada
pipeline dan menemukan perintah berikutnya yang
akan dieksekusinya. Sirkuit untuk branch prediction
melakukan pekerjaan ini bekerja sama dengan pipeline,
yang dilakukan sebelum proses di ALU dilaksanakan,
dan memperkirakan hasil dari pencabangan tersebut.
C. SUPERSCALAR

Jika CPU berfikir bahwa branch akan menuju suatu


cabang, biasanya berdasarkan pekerjaan sebelumnya,
maka perintah berikutnya sudah dipersiapkan untuk
dieksekusi berikut data-datanya, bahkan dengan
adanya pipeline ini, bila tidak diperlukan suatu referensi
dari instruksi terakhir, maka bisa dilaksanakan dengan
segera, karena data dan instruksi yang dibutuhkan telah
dipersiapkan sebelumnya.
C. SUPERSCALAR

Dalam hal speculative execution, artinya CPU akan


menggunakan melakukan perhitungan pada pipeline
yang berbeda berdasarkan kemungkinan yang
diperkirakan oleh komputer. Jika kemungkinan yang
dilakukan oleh komputer tepat, maka hasilnya sudah
bisa diambil langsung dan tinggal melanjutkan perintah
berikutnya, sedangkan jika kemungkinan yang
diperkirakan oleh komputer tidak tepat, maka akan
dilaksanakan kemungkinan lain sesuai dengan logika
instruksi tersebut.
C. SUPERSCALAR
Teknik yang digunakan untuk pipeline dan superscalar ini bisa
melaksanakan branch prediction dan speculative execution
tentunya membutuhkan ekstra transistor yang tidak sedikit untuk hal
tersebut.
Sebagai perbandingan, komputer yang membangkitkan pemrosesan
pada PC pertama yang dikeluarkan oleh IBM pada mesin 8088
memiliki sekitar 29.000 transistor. Sedangkan pada mesin Pentium III,
dengan teknologi superscalar dan superpipeline, mendukung branch
prediction, speculative execution serta berbagai kemampuan
lainnya memiliki sekitar 7,5 juta transistor. Beberapa CPU terkini lainnya
seperti HP 8500 memiliki sekitar 140 juta transistor.
C. SUPERSCALAR
Superscalar adalah arsitektur prosessor yang
memungkinkan eksekusi yang bersamaan (parallel) dari
instruksi yang banyak pada tahap pipeline yang sama
sebaik tahap pipeline yang lain. Prosesor superscalar
mampu menjalankan 2 atau lebih operasi scalar dalam
bentuk paralel. Superscalar mampu menjalankan
Instruction Level Parallelism (berupa: arithmetic,
pembacaan/penyimpanan, conditional branch)
dengan satu prosesor. Superscalar dapat diaplikasikan
di RISC dan CISC, tapi pada umumnya RISC.
C. SUPERSCALAR

Seperti pada gambar di bawah ini, prosesor


superscalar mampu menjalankan 2 operasi
secara bersama - sama. Sebagai perbandingan,
kita bandingkan dengan base machine.
Dimana base machine hanya mampu
menjalankan satu operasi dalam waktu yang
sama. Sehingga dapat kita lihat bahwa dengan
superscalar, proses mampu berjalan lebih cepat.
Tabel Karakteristik dari beberapa Prosesor CISC, RISC, dan Superskalar

Anda mungkin juga menyukai