A.
Pipelining
Pipeline adalah suatu cara yang digunakan
untuk melakukan sejumlah kerja secara bersama tetapi dalam tahap yang berbeda
yang dialirkan secara kontinu pada unit pemrosesor. Dengan cara ini, maka unit
pemrosesan selalu bekerja.
Teknik pipeline ini dapat diterapkan pada berbagai tingkatan dalam
sistemkomputer. Bisa pada level yang tinggi, misalnya program aplikasi, sampai
pada tingkat yang rendah, seperti pada instruksi yang dijalankan oleh
microprocessor.
Konsep Pipelining
Konsep pemrosesan pipeline dalam suatu
komputer mirip dengan suatu baris pencucian dalam suatu laundry. Ambil contoh,
suatu proses pencucian pada laundry: anggaplah bahwa langkah-langkah tertentu
di jalur perakitan adalah sub proses 1 adalah pencucian, sub proses 2 adalah
pengeriangan, dan sub proses 3 adalah pelipatan. Sebuah pakaian kotor di
jalur pencucial hanya dapat memiliki salah satu dari tiga tahap yang
dilakukan sekaligus.
- Setelah pakaian A masuk
pada tahap pencucian,
- Setelah selesai pakaian A masuk
ke tahap pengeringan disisi lain pakaian B masuk pada tahap pencucian.
- Setelah selesai pakaian A masuk
ke tahap pelipatan dan pakaian B masuk ke tahap pengeringan disisi lain
pakaian C masuk pada tahap pencucian.
- Dan begitu sampai selesai
Dengan adanya persyaratan bahwa
setiap instuksi yang berdekatan harus tidak saling bergantung, maka ada
kemungkinan terjadinya situasi dimana pipeline gagal dilaksanakan (instruksi
berikutnya tidak bisa dilaksanakan). Situasi ini disebut Hazards. Hazards
mengurangi performansi dari CPU dimana percepatan ideal tidak dapat dicapai.
Ada 3 kelompok Hazards :
- Structural Hazards muncul dari konflik
resource sistem yaitu ketika hardware tidak dapat mensuport semua
kemungkinan kombinasi pelaksanaan instruksi.
- Data Hazards muncul ketika data untuk
suatu instruksi tergantung pada hasil instruksi sebelumnya.
- Control Hazards muncul pada pelaksanaan
instruksi yang mengubah PC (contoh : branch).
Adanya Hazards menyebabkan pipeline
terhambat (stalled). Tidak ada instruksi baru yang dijemput sampai hambatan itu
selesai. Ini berarti instruksi-instruksi selanjutnya akan ditunda pula
penjemputannya.
Keuntungan dari Pipelining :
- Waktu siklus prosesor
berkurang, sehingga meningkatkan tingkat instruksi dalam kebanyakan kasus(
lebih cepat selesai).
- Beberapa combinational sirkuit
seperti penambah atau pengganda dapat dibuat lebih cepat dengan
menambahkan lebih banyak sirkuit. Jika pipelining digunakan sebagai
pengganti, hal itu dapat menghemat sirkuit & combinational yang lebih
kompleks.
- Pemrosesan dapat dilakukan
lebih cepat, dikarenakan beberapa proses dilakukan secara bersamaan dalam
satu waktu.
Kekurangan dari Pipelining :
- Pipelined prosesor menjalankan
beberapa instruksi pada satu waktu. Jika ada beberapa cabang yang
mengalami penundaan cabang (penundaan memproses data) dan akibatnya proses
yang dilakukan cenderung lebih lama.
- Instruksi latency di
non-pipelined prosesor sedikit lebih rendah daripada dalam pipelined
setara. Hal ini disebabkan oleh fakta bahwa intruksi ekstra harus
ditambahkan ke jalur data dari prosesor pipeline.
- Kinerja prosesor di pipeline
jauh lebih sulit untuk meramalkan dan dapat bervariasi lebih luas di
antara program yang berbeda.
- Karena beberapa instruksi
diproses secara bersamaan ada kemungkinan instruksi tersebut sama-sama
memerlukan resource yang sama, sehingga diperlukan adanya pengaturan yang
tepat agar proses tetap berjalan dengan benar.
- Sedangkan ketergantungan
terhadap data, bisa muncul, misalnya instruksi yang berurutan memerlukan
data dari instruksi yang sebelumnya.
- Kasus Jump, juga perlu
perhatian, karena ketika sebuah instruksi meminta untuk melompat ke suatu
lokasi memori tertentu, akan terjadi perubahan program counter, sedangkan
instruksi yang sedang berada dalam salah satu tahap proses yang berikutnya
mungkin tidak mengharapkan terjadinya perubahan program counter.
RISC (Reduce Instruction Set Computer) atau komputasi set instruksi yang
disederhanakan merupakan sebuah arsitektur komputer atau arsitektur komputasi
modern dengan instruksi-instruksi dan jenis eksekusi yang paling sederhana. Proyek
RISC pertama dibuat oleh IBM, stanford dan UC –Berkeley pada akhir tahun 70 dan
awal tahun 80an. IBM 801, Stanford MIPS, dan Barkeley RISC 1 dan 2 dibuat
dengan konsep yang sama sehingga dikenal sebagai RISC.
Arsitektur ini digunakan pada komputer dengan kinerja tinggi, seperti
komputer vector. Desain ini juga diimplementasikan pada prosesor komputer lain,
seperti pada beberapa mikroprosesor intel 960, Itanium (IA64) dari Intel
Coorporatoin. Selain itu RISC juga umum dipakai pada Advanced RUSC Machine
(ARM) dan Strong ARM.
Beberapa elemen penting pada arsitektur RISC :
1.
Set instruksi yang
terbatas dan sederhana
2.
Register general-purpose
yang berjumlah banyak, atau penggunaan teknologi kompiler untuk mengoptimalkan
pemakaian registernya.
3.
Penekanan pada
pengoptimalan pipeline instruksi.
RISC mempunyai karakteristik :
1.
One cycle execution time : satu putaran eksekusi.
Prosessor RISC mempunyai CPI (clock per
instruction) atau waktu per instruksi untuk setiap putaran. Hal ini
dimaksud untuk mengoptimalkan setiap instruksi pada CPU.
2.
Large number of registers: Jumlah register yang sangat banyak.
RISC di Desain dimaksudkan untuk dapat menampung jumlah register yang sangat
banyak untuk mengantisipasi agar tidak terjadi interaksi yang berlebih dengan
memory.
3.
Pipelining : adalah sebuah teknik yang memungkinkan dapat
melakukan eksekusi secara simultan.Sehingga proses instruksi lebih efiisien.
Ciri – ciri RISC :
1.
Instruksi berukuran tunggal
2.
Ukuran yang umum adalah 4 byte
3.
Jumlah pengalamatan data sedikit,
4.
Tidak terdapat pengalamatan tak langsung
5.
Tidak terdapat operasi yang menggabungkan operasi
load/store dengan operasi aritmatika
6.
Tidak terdapat lebih dari satu operand beralamat memori per
instruksi
7.
Tidak mendukung perataan sembarang bagi data untuk operasi load/
store.
8.
Jumlah maksimum pemakaian memori manajemen bagi suatu alamat data
adalah sebuah instruksi .
Ditinjau dari jenis set instruksinya, ada 2 jenis arsitektur komputer,
yaitu:
·
Arsitektur komputer
dengan kumpulan perintah yang rumit (Complex Instruction Set Computer = CISC)
·
Arsitektur komputer
dengan kumpulan perintah yang sederhana (Reduced Instruction Set Computer =
RISC)
Referensi :
·
http://fromengineering4you.blogspot.com/2015/12/pengertian-risc-reducet-instruction-set.html
No comments:
Post a Comment