BAB 7
Pipeline dan RISC
7.1 Pipeline
Dalam komputer, pipeline adalah satu set
dari elemen pemrosesan data dihubungkan secara seri, sehingga hasil keluaran
dari satu elemen adalah masukkan bagi elemen berikutnya. Elemen – elemen dari
sebuah pipeline sering dijalankan secara paralel.
Contoh
pipeline dalam komputer adalah:
- pipeline instruksi. Biasanya digunakan di unit
pemroses sentral agar instruksi – instruksi dapat dijalankan dalam satu
waktu dalam satu sirkuit digital. Biasanya sirkuitnya dibagi dalam beberapa
tahap, termasuk decode instruksi, aritmetika dan tahap – tahap penjemputan
data dari register, dimana setiap tahap melakukan satu instruksi dalam
satu waktu.
- pipeline grafis, sering ditemukan dalam
sebagian besar unit pemrosesan grafis, yang terdiri dari berbagai unit
aritmatik atau unit pemroses sentral lengkap, yang menerapkan berbagai
macam tahap dari operasi render yang umum (seperti proyeksi perspektif,
kalkulasi warna dan pencahayaan, primitif gambar, dan sebagainya).
- pipeline perangkat lunak. Dimana keluaran dari suatu
program langsung dipakai oleh program lain sebagai masukkan sehingga dapat
langsung diproses.
Teknik pipeline yang diterapkan
pada microprocessor, dapat dikatakan sebuah arsitektur khusus. Ada
perbedaan khusus antara model microprocessor yang tidak
menggunakan arsitektur pipeline dengan microprocessor yang
menerapkan teknik ini.
Pada microprocessor yang
tidak menggunakan pipeline , satu instruksi dilakukan sampai
selesai, baru instruksi berikutnya dapat dilaksanakan. Sedangkan dalam microprocessor yang
menggunakan teknik pipeline ketika satu instruksi sedangkan
diproses, maka instruksi yang berikutnya juga dapat diproses dalam waktu yang
bersamaan. Tetapi, instruksi yang diproses secara bersamaan ini, ada dalam
tahap proses yang berbeda.
Jadi, ada sejumlah tahapan yang akan
dilewati oleh sebuah instruksi. 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 pun seterusnya, ketika instruksi pertama masuk ke langkah 3,
instruksi kedua masuk ke langkah 2 dan instruksi ketiga masuk ke langkah 1.
Keuntungan
dari Pipeline
- Waktu siklus prosesor
berkurang, sehingga meningkatkan tingkat instruksi-isu dalam kebanyakan
kasus.
- Beberapa combinational sirkuit
seperti penambah atau pengganda dapat dibuat lebih cepat dengan
menambahkan lebih banyak sirkuit.
Jika
pipeline digunakan sebagai pengganti, hal itu dapat menghemat
sirkuit vs combinational yang lebih kompleks sirkuit.
Kerugian
dari Pipeline
3. Prossesor non-pipeline hanya
menjalankan satu instruksi pada satu waktu. Hal ini untuk mencegah penundaan
cabang (yang berlaku, setiap cabang tertunda) dan masalah dengan serial
instruksi dieksekusi secara bersamaan. Akibatnya desain lebih sederhana dan
lebih murah untuk diproduksi. Pipeline lebih mahal dalam produksi karena
sirkuit lebih rumit.
4. Prossesor non-pipeline akan memiliki
instruksi bandwidth yang stabil. Kinerja prossesor yang pipeline jauh lebih
sulit untuk meramalkan dan dapat bervariasi lebih luas di antara program yang
berbeda.
7.2 REDUCE INSTRUCTION SET COMPUTER (RISC) .
Kata “reduced” berarti pengurangan pada set instruksi. RISC
merupakan rancangan arsitektur CPU yang mengembil dasar filosofi bahwa prosesor
dibuat dengan arsitektur yang tidak rumit dengan membatasi jumlah instruksi
hanya pada instruksi dasar yang diperlukan saja. Dengan kata lain RISC adalah
arsitektur komputer dengan kumpulan perintah (instruksi) yang sederhana, tetapi
dalam kesederhanaan tersebut didapatkan kecepatan operasi setiap siklus
instruksinya. Kebanyakan pada proses RISC , instruksi operasi dasar aritmatik
hanya penjumlahan dan pengurangan, untuk perkalian dan pembagian sudah dianggap
operasi ang kompleks. RISC menyederhanakan rumusan perintah sehingga lebih
efisien dalam penyusunan kompiler yang pada akhirnya dapat memaksimumkan
kinerja program yang ditulis dalam bahasa tingkat tinggi.
Ada beberapa elemen
penting dalam arsitektur RISC, yaitu :
Ø Set
instruksi yang terbatas dan sederhana
Ø Register
general-purpose yang berjumlah banyak, atau pengguanaan teknologi kompiler
untuk mengoptimalkan pemakaian regsiternya.
Ø Penekanan
pada pengoptimalan pipeline instruksi.
Ciri-ciri karakteristik
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
aritmatika .
Ada tiga buah elemen
yang menentukan karakter arsitektur RISC, yaitu:
1. Penggunaan register
dalam jumlah yang besar. Hal ini dimaksudkan untuk mengoptimalkan pereferensian
2. 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
3. Terdapat set instruksi
yang disederhanakan (dikurangi).
Perkembangan RISC
Pada tahun 1980, John Cocke di IBM menghasilkan minikomputer
eksperimental, yaitu IBM 801 dengan prosesor komersial pertama yang menggunakan
RISC. Pada tahun itu juga, Kelompok Barkeley yang dipimpin David Patterson
mulai meneliti rancangan RISC dengan menghasilkan RISC-1 dan RISC-2
Pemakai Teknik RISC
·
IBM dengan Intel
Inside-nya.
·
Prosessor PowerPC,
prosessor buatan motorola yang menjadi otak utama komputer Apple Macintosh
Konsep Arsitektur 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. RISC memerlukan memori yang lebih besar untuk mengakomodasi program yang
lebih besar. Dengan mengoptimalkan penggunaan memori register diharapkan siklus
operasi semakin cepat.
7.3 RISC vs CISC
Dari segi
kecepatannya, Reduced Instruction Set Computer (RISC) lebih cepat dibandingkan
dengan Complex Instruction Set Computer (CISC). Ini dikarenakan selain
instruksi-instruksi pada RISC lebih mudah untuk diproses, RISC menyederhanakan
instruksi . Jumlah instruksi yang dimiliki oleh prosesor RISC kebanyakan
berjumlah puluhan (±30-70), contoh: COP8 buatan NationalSemiconductor memiliki
58 instruksi; sedangkan untuk prosesor CISC jumlahnya sudah dalam ratusan (±100
atau lebih)
CISC dirancang 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.
Eksekusi Instruksi
RISC
Waktu eksekusi dapat dirumuskan dengan:
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 (jumlah perintah),
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.
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
Arsitektur RISC berusaha menurunkan nilai S dan T.
Tidak ada komentar:
Posting Komentar