·
PIPELINING
Pipelining
adalah suatu teknik implementasi dengan mana berbagai instruksi dapat
dilaksanakan secara tumpang tindih (overlapped; hal ini mengambil keuntungan
paralelisme yang ada di antara tindakan yang diperlukan untuk mengeksekusi
suatu instruksi. Di dalam pipeline suatu komputer, masing-masing langkah di
dalam pipeline melengkapi bagian-bagian dari suatu instruksi. Masing-masing
langkah disebut stage atau segment. Stage dihubungkan satu terhadap lainnya sehingga membentuk
yang pipe-instruction pada bagian akhir stage.
Mirip dengan proses pada suatu
industri manufaktur.
Pipelining
menghasilkan reduksi untuk rata-rata waktu eksekusi per instruksi.
Pipeline
adalah suatu teknik implementasi yang
memanfaatkan paralelisme di antara instruksiinstruksi dalam laju instruksi
sekuensial.
Hambatan utama terhadap Pipelining
Ada situasi yang menyebabkan hambatan dalam
implementasi Pipeline yang disebut hazard
(resiko), yang akan mencegah instruksi yang berikutnya dalam laju instruksi
untuk diekseskusi selama siklus yang ditunjuk. Hazard mereduksi laju kinerja ideal yang dihasilkan suatu
pipelining. Ada tiga kelas hazard:
1.
Structural Hazard muncul
akibat benturan sumberdaya manakala perangkat keras tidak dapat
mendukung semua kombinasi instruksi secara serempak dalam eksekusi secara tumpang
tindih.
2.
Data hazard muncul manakala suatu instruksi tergantung pada hasil
dari suatu instruksi sebelumnya pada
eksekusi instruksi tumpang tindih.
3.
Control hazard muncul pada pipelining dengan instruksi pencabangan dan
instruksi lain yang mengubah nilai program
counter.
Hazard
dalam pipeline dapat mengakibatkan
diperlukannya stall terhadap pipeline. Pencegahan hazard seringkali memerlukan beberapa instruksi ditunda, sementara
lainnya diproses.
·
Prosesor Vektor Pipelining
Sebuah
prosesor vektor atau prosesor array, adalah unit pemrosesan sentral (CPU) yang
mengimplementasikan set
instruksi berisi instruksi yang beroperasi pada satu dimensi array data yang disebut
vektor. Hal ini kontras dengan prosesor
skalar , yang instruksi beroperasi pada item data tunggal. Meskipun prosesor Intel
dan klon mereka desain awalnya sebagai skalar, model baru berisi peningkatan
jumlah vektor instruksi khusus seperti yang disediakan oleh Ekstensi Vector Lanjutan ditetapkan. Prosesor
vektor pertama kali muncul pada 1970-an, dan membentuk dasar dari yang palingsuperkomputer di tahun 1980 dan
1990-an. Perbaikan dalam prosesor skalar, terutamamikroprosesor , mengakibatkan
penurunan prosesor vektor tradisional di superkomputer, dan munculnya teknik
pengolahan vektor di CPU pasar massal sekitar awal 1990-an. Hari ini, CPU
komoditas yang paling mengimplementasikan arsitektur yang menampilkan instruksi
untuk beberapa pemrosesan vektor pada beberapa (vektoralisasi) set data,
biasanya dikenal sebagai SIMD (S Ingle saya
nstruction, M ultiple D ata). Teknik pemrosesan vektor juga ditemukan di konsol video game hardware danakselerator grafis . Pada tahun 2000, IBM , Toshiba dan Sony berkolaborasi untuk
menciptakan prosesor Cell , yang terdiri dari satu
prosesor skalar dan delapan prosesor vektor, yang ditemukan digunakan dalam
Sony PlayStation
3 di antara aplikasi lain.Desain CPU lain
mungkin termasuk beberapa instruksi untuk pemrosesan vektor pada beberapa
(vectorised) set data, biasanya dikenal sebagai MIMD (M ultiple saya nstruction, M ultiple D ata). Desain seperti biasanya
didedikasikan untuk aplikasi tertentu dan tidak umum dipasarkan untuk komputasi
tujuan umum.
RISC
RISC singkatan dari Reduced Instruction
Set Computer. Merupakan bagian dari arsitektur mikroprosessor, berbentuk kecil
dan berfungsi untuk negeset istruksi dalam komunikasi diantara arsitektur yang
lainnya.
Arsitektur RISC memiliki beberapa
karakteristik diantaranya :
a. Siklus mesin ditentukan oleh waktu yang digunakan
untuk mengambil dua buah operand dari register, melakukan operasi ALU, dan
menyimpan hasil operasinya kedalam register, dengan demikian instruksi mesin
RISC tidak boleh lebih kompleks dan harus dapat mengeksekusi secepat
mikroinstruksi pada mesin-mesin CISC. Dengan menggunakan instruksi sederhana
atau instruksi satu siklus hanya dibutuhkan satu mikrokode atau tidak sama
sekali, instruksi mesin dapat dihardwired. Instruksi seperti itu akan
dieksekusi lebih cepat dibanding yang sejenis pada yang lain karena tidak perlu
mengakses penyimapanan kontrol mikroprogram saat eksekusi instruksi
berlangsung.
b. Operasi berbentuk dari register-ke register yang hanya terdiri dari operasiload dan store yang mengakses memori . Fitur
rancangan ini menyederhanakan set instruksi sehingga menyederhanakan pula unit
control. Keuntungan lainnya memungkinkan optimasi pemakaian register sehingga
operand yang sering diakses akan tetap ada di penyimpan berkecepatan tinggi.
Penekanan pada operasi register ke register merupakan hal yang unik bagi
perancangan RISC.
c. Penggunaan mode pengalamatan sederhana, hampir sama dengan instruksi
menggunakan pengalamatan register,. Beberapa mode tambahan seperti pergeseran
dan pe-relatif dapat dimasukkan selain itu banyak mode kompleks dapat
disintesis pada perangkat lunak dibanding yang sederhana, selain dapat
menyederhanakan sel instruksi dan unit kontrol.
d. Penggunaan format-format instruksi sederhana, panjang instruksinya tetap
dan disesuaikan dengan panjang word. Fitur ini memiliki beberapa kelebihan
karena dengan menggunakan field yang tetap pendekodean opcode dan pengaksesan operand register
dapat dilakukan secara bersama-sama
a. Instruksi berukuran tunggal
b. Ukuran yang umum adalah 4 byte
c. Jumlah pengalamatan data sedikit, biasanya kurang dari 5 buah.
d. Tidak terdapat pengalamatan tak langsung yang mengharuskan melakukan sebuah
akses memori agar memperoleh alamat operand lainnya dalam memori.
e. Tidak terdapat operasi yang menggabungkan operasi load/store dengan operasi
aritmatika, seperti penambahan ke memori dan penambahan dari memori.
f. Tidak terdapat lebih dari satu operand beralamat memori per instruksi
g. Tidak mendukung perataan sembarang bagi data untuk operasi load/ store.
h. Jumlah maksimum pemakaian memori manajemen bagi suatu alamat data adalah
sebuah instruksi .
i. Jumlah bit bagi integer register spesifier sama dengan 5 atau lebih,
artinya sedikitnya 32 buah register integer dapat direferensikan sekaligus
secara eksplisit.
j. Jumlah bit floating point register spesifier sama dengan 4 atau lebih,
artinya sedikitnya 16 register floating point dapat direferensikan sekaligus
secara eksplisit.
Referensi :
http://www.scribd.com/doc/71858269/CISC-Complex-Instruction-Set-Computers-Dan-RISC-Reduced-Instruction-Set-Computers
·
RISC ( Reduce Instruction Set Computer )
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.
Ditinjau dari jenis set instruksinya, ada 2 jenis arsitektur komputer, yaitu:
1. Arsitektur komputer dengan kumpulan perintah yang rumit (Complex Instruction
Set Computer = CISC)
2. Arsitektur komputer dengan kumpulan perintah yang sederhana (Reduced
Instruction Set Computer = RISC)
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. RISC menyederhanakan rumusan
perintah sehingga lebih efisien dalam penyusunan kompiler yang pada akhirnya
dapat memaksimumkan kinerja program yang ditulis dalam bahasa tingkat tinggi.
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.
Mesin RISC memerlukan memori yang lebih besar untuk mengakomodasi program yang
lebih besar. IBM 801 adalah prosesor komersial pertama yang menggunakan
pendekatan RISC.
Lebih lanjut untuk memahami RISC, diawali dengan tinjauan singkat tentang
karakteristik eksekusi instruksi.
Eksekusi Instruksi
Waktu
eksekusi dapat dirumuskan sbb.:
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, 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.
·
Jaringan
Interkoneksi
Komunikasi diantara
terminal-terminal yang berbeda harus dapat dilakukan dengan suatu media
tertentu. Interkoneksi yang efektif antara prosesor dan modul memori sangat
penting dalam lingkungan komputer. Menggunakan arsitektur bertopologi bus bukan
merupakan solusi yang praktis karena bus hanya sebuah pilihan yang baik
ketika digunakan untuk menghubungkan komponen-komponen dengan jumlah yang
sedikit. Jumlah komponen dalam sebuah modul IC bertambah seiring waktu. Oleh
karena itu, topologi bus bukan topologi yang cocok untuk kebutuhan interkoneksi
komponen-komponen di dalam modul IC. Selain itu juga tidak dapat diskalakan,
diuji, dan kurang dapat disesuaikan, serta menghasilkan kinerja toleransi
kesalahan yang kecil.