RISC DAN PIPELINING
Reduced Instruction Set Computers
(RISC)
RISC, yang jika diterjemahkan berarti "Komputasi
Kumpulan Instruksi yang Disederhanakan", 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, R4x00 dari 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.
Selain RISC, desain Central Processing Unit yang lain adalah
CISC (Complex Instruction Set Computing), yang jika diterjemahkan ke dalam
Bahasa Indonesia berarti Komputasi Kumpulan Instruksi yang kompleks atau rumit.
Pengertian
Pipeline
Pemrosesan pipeline dalam suatu komputer diperoleh dengan
membagi suatu fungsi yang akan dijalankan menjadi beberapa subfungsi yang lebih
kecil dan merancang perangkat keras yang terpisah, disebut sebagai tingkatan
(stage), untuk setiap subfungsi. Stage-stage itu kemudian dihubungkan
bersama-sama dan membentuk sebuah pipeline tunggal (atau pipe) untuk
menjalankan fungsi asli tersebut.
1.
Sejajarkan
mantissa-mantissa yang ada
2.
tambahkan
mantissa-mantissa tersebut
3.
Normalisasikan
hasilnya
Keuntungan proses penambahan secara pipeline ini adalah
bahwa dua input yang baru dapat dimulai melalui pipa tersebut segera sesudah
dua input sebelumnya melewati stage 2. Hal ini berarti bahwa jumlah penambahan
akan tersedia dengan kecepatan yang sama dengan kecapatan input. Secara
sistematis sekumpulan angka floating-point akan bergerak melalui penambah
(adder) pipeline yang sederhana pada saat pasangan pertama angka-angka itu
dihasilkan oleh stage 3 maka pasangan kedua telah disejajarkan dan ditambahkan
dan hanya perlu dinormalisir pada stage 3. Dengan menggunakan pipeline, jumlah
selisih waktu antara hasil pertama dan kedua merupakan jumlah waktu yang
diperlukan untuk menormalisir sebuah angka.Tanpa suatu pipeline, waktu antara
hasil-hasil tersebut merupakan waktu kumulatif yang diperlukan untuk semua
ketiga subfungsi tersebut.
Sinkronisasi Pada Pipeline Meskipun kita dapat memisahkan
suatu fungsi menjadi beberapa subfungsi dengan waktu proses yang relatif sama,
perbedaan logika dari stiap stage akan menyukarkan kita untuk menghasilkan
waktu proses yang sama pada setiap stage. Untuk menyamakan waktu yang diperlukan
pada setiap stage maka stage-stage tersebut harus disinkronisasikan. Hal ini
bisa dilakukan dengan menyisipkan kunci-kunci (latch) sederhana (register
cepat), antara stage-stage tersebut.latch, masing-masing pada bagian pipe
paling awal dan satu lagi pada bagian paling akhir untuk memaksa input yang
sinkron dan memastikan output yang sinkron.
Waktu yang diperlukan untuk lewat dari suatu latch melalui stage ke latch berikutnya disebut sebagaipenangguhan clock (clock delay) dan diperlihatkan pada gambar dibawah ini. Karena hanya ada satu keseragaman penangguhan clock untuk seluruh pipeline maka latch disinkronkan sesuai dengan waktu proses maksimum pada masing-masing stage individual dalam pipeline tersebut. Klasifikasi Pipeline
Pipeline dapat dikelompokkan menrut fungsi dan konfigurasinya. Secara fungsional, mereka diklasifikasikan menjadi tiga kelompok pokok yaitu: pipelineing aritmatika, instruksi dan prosesor. Pipeline menurut konfigurasi dan strtegi kendalinya: unifungsi atau multifungsi; statis atau dinamis; skalar atau vektor.
Waktu yang diperlukan untuk lewat dari suatu latch melalui stage ke latch berikutnya disebut sebagaipenangguhan clock (clock delay) dan diperlihatkan pada gambar dibawah ini. Karena hanya ada satu keseragaman penangguhan clock untuk seluruh pipeline maka latch disinkronkan sesuai dengan waktu proses maksimum pada masing-masing stage individual dalam pipeline tersebut. Klasifikasi Pipeline
Pipeline dapat dikelompokkan menrut fungsi dan konfigurasinya. Secara fungsional, mereka diklasifikasikan menjadi tiga kelompok pokok yaitu: pipelineing aritmatika, instruksi dan prosesor. Pipeline menurut konfigurasi dan strtegi kendalinya: unifungsi atau multifungsi; statis atau dinamis; skalar atau vektor.
Klasifikasi Berdasarkan Fungsi Pipelining aritmatika. Proses
segmentasi dari ALU dari sistem yang muncul dalam kategori ini. Suatu contoh
daari fungsi pipeline aritmatika diberikan dalam bagian contoh pipeline
multifungsi. Pipelining instruksi. Dalam suatu komputer nonpipeline, CPU
bekerja melalui suatu siklus yang berkesinambungan dari fetch-decode-eksekusi
untuk semua instruksinya. Proses fetch suatu instruksi tidak akan dimulai
sampai eksekusi instruksi sebelumnya selesai. Untuk mem-pipeline fungsi ini,
instruksi-instruksi yang berdampingan di fetch dari memori ketika instruksi
yang sebelumnya di-decode dan dijalankan. Proses pipelining instruksi, disebut
juga instruction lihat-ke-muka (look-ahead), mem-fetch instruksi secara
berurutan. Dengan demikian, jika suatu instruksi menyebabkan percabganan keluar
dari urutan itu maka pipe akan dikosongkan dari seluruh instruksi yang telah
di-fetch sebelumnya dan instruksi percabangan (branched-to instruction)
tersebut di-fetch. Pipelining prosesor. Sewaktu stage dari suatu pipeline
merupakan prosesor aktual dan latch-latch saling berbagi memori antara
prosesor-prosesor tersebut maka pipeline itu disebut sebagai pipeline prosesor.
Sumber Bacaan
Sumber Bacaan
Komentar
Posting Komentar