Pipelining & RISC (Reduced
Instruction Set Computer)
1.
Pipelining
Pipelining
yaitu suatu cara yang digunakan untuk melakukan sejumlah kerja secara bersama
tetapi dalam tahap yang berbeda yang dialirkan secara kontinu pada unit
pemrosesan. 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.
Struktur
lain yang menggunakan penyelesaian deteksi atau selain penundaan yang tepat
dari pengaturan waktu pusat tetapi karena masalah waktu yang Syncronization,
Pipelines memaksakan sebuah penurunan kinerja. Misalnya counterflow pipeline
prosesor yang dirancang sekitar dua arah, pipa membawa petunjuk dan argumen
dalam satu arah dan hasil yang lainnya b ini dapat menyebabkan Syncronization
masalah antara prosesor.
Pipeline
yang berputar menghindari masalah yang hanya melewati data dalam satu arah.
Pada prinsipnya, prosesor dari register terus beredar di sekitar cincin yang
berhubungan dengan berbagai fungsi ALU, akses memori dan sebagainya .ada tiap
tahap, nilai-nilai yang memeriksa dan disampaikan, kemungkinan setelah
perubahan, tidak signifikan dengan pengeluaran tambahan untuk sinkronisasi.
Dispatched adalah instruksi dari pusat ke fungsi unit yang memungkinkan
beberapa masalah instruksi .
·
Tahapan
Pipeline
1)
Mengambil
instruksi dan membufferkannya
2) Ketika
tahapan kedua bebas tahapan pertama mengirimkan instruksi yang dibufferkan
tersebut.
3) Pada
saat tahapan kedua sedang mengeksekusi instruksi, tahapan pertama memanfaatkan
siklus memori yang tidak dipakai untuk mengambil dan membuffferkan instruksi
berikutnya.
·
Instruksi
Pipeline
Karena
untuk setiap tahap pengerjaan instruksi, komponen yang bekerja berbeda, maka
dimungkinkan untuk mengisi kekosongan kerja di komponen tersebut.Sebagai contoh
:
Instruksi
1: ADD AX, AX
Instruksi
2: ADD EX, CX
Setelah
CU menjemput instruksi 1 dari memori (IF), CU akan menerjemahkan instruksi
tersebut(ID). Pada menerjemahkan instruksi
1 tersebut, komponen IF tidak bekerja. Adanya teknologi pipeline
menyebabkan IF akan menjemput instruksi 2 pada saat ID menerjemahkan instruksi
1. Demikian seterusnya pada saat CU menjalankan instruksi 1 (EX), instruksi 2
diterjemahkan (ID).
·
Keuntungan
Pipeline
1)
Waktu siklus prosesor berkurang, sehingga meningkatkan
tingkat instruksi dalam kebanyakan kasus( lebih cepat selesai).
2)
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.
3)
Pemrosesan dapat dilakukan lebih cepat, dikarenakan beberapa
proses dilakukan secara bersamaan dalam satu waktu.
·
Kerugian
Pipeline
1)
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.
2)
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.
3)
Kinerja
prosesor di pipeline jauh lebih sulit untuk meramalkan dan dapat bervariasi
lebih luas di antara program yang berbeda.
4)
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.
5)
Sedangkan
ketergantungan terhadap data, bisa muncul, misalnya instruksi yang berurutan
memerlukan data dari instruksi yang sebelumnya.
6)
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.
2.
RISC
(Reduced Instruction Set Computer)
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.
RISC
merupakan komputasi kumpulan instruksi yang disederhanakan. RISC merupakan
sebuah arsitektur komputer atau arsitektur komputasi modern dengan
instruksi-instruksi dan jenis eksekusi yang paling sederhana. Arsitektur ini
digunakan pada komputer dengan kinerja tinggi, seperti komputer vektor. Selain
digunakan dalam komputer vektor, desain ini juga diimplementasikan pada
prosesor komputer lain, seperti pada beberapa mikroprosesor Intel 960, Itanium
(IA64) dari Intel Corporation, Alpha AXP dari DEC, R4x00dari MIPS Corporation,
PowerPC dan Arsitektur POWER dari International Business Machine.Selain itu, RISC
juga umum dipakai pada Advanced RISC Machine (ARM) dan StrongARM (termasuk di
antaranya adalah Intel XScale), SPARC dan UltraSPARC dari Sun Microsystems,
serta PA-RISC dari Hewlett-Packard.
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.
Tidak ada komentar:
Posting Komentar