Pengertian
secara umum pipe lining dan risc
1.
PIPE LINING
Pengertian 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.
Ø Pengenalan
Pipeline.
Prosesor Pipeline yang berputar
adalah prosesor baru untuk arsitektur superscalar komputasi. Ini didasarkan
pada cara yang mudah dan pipeline yang biasa, struktur yang dapat mendukung
beberapa ALU untuk lebih efisien dalam pengiriman dari bagian beberapa
instruksi. Daftar nilai arus yang berputar di sekitar pipa, dibuat oleh
dependensi data lokal. Selama operasi normal, kontrol sirkuit tidak berada pada
jalur yang kritis dan kinerja hanya dibatasi oleh data harga. Operasi mengalir
dengan interval waktu sendiri. Ide utama dari Pipeline Prosesor yang berputar
adalah circular uni-arah mengalir dari memori register oleh pusat waktu logika
dan proses secara parallel dari operasi ALU.
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 .
Ø Instruksi
pipeline
Tahapan pipeline :
1. Mengambil instruksi dan membuffferkannya
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 .
Ø Instuksi 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
pipelining .
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. 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 tahun2000, 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
1. RISC (Reduce Instructions Set
Computer)
Sejarah
RISC
Reduced Instruction Set Computing (RISC) atau “Komputasi set
instruksi yang disederhanakan” pertama kali digagas oleh John Cocke, peneliti
dari IBM di Yorktown, New York pada tahun 1974 saat ia membuktikan bahwa
sekitar 20% instruksi pada sebuah prosesor ternyata menangani sekitar 80% dari
keseluruhan kerjanya. Komputer pertama yang menggunakan konsep RISC ini adalah
IBM PC/XT pada era 1980-an. Istilah RISC sendiri pertama kali dipopulerkan oleh
David Patterson, pengajar pada University of California di Berkely.
2. DEFINISI 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.
Kebanyakan
pada prosesor RISC, instruksi operasi dasar aritmatik hanya penjumlahan dan
pengurangan. Untuk perkalian dan pembagian sudah dianggap operasi yang
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 pada arsitektur RISC, yaitu :
•
Set instruksi yang terbatas dan sederhana.
•
Register general-purpose yang berjumlah banyak, atau penggunaan teknologi
kompiler untuk mengoptimalkan pemakaian registernya.
•
Penekanan pada pengoptimalan pipeline instruksi.
Ciri-ciri
dan 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
aritmetika (misalnya, penambahan dari memori, penambahan ke memori).
Ada
tiga buah elemen yang menentukan karakter arsitektur RISC, yaitu:
- Penggunaan
register dalam jumlah yang besar. Hal ini dimaksudkan untuk mengoptimalkan
pereferensian operand.
- 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.
- 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.
3. 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.
Ø PIPELINING
DAN RISC
Pipelining adalah teknik pemecahan satu pekerjaan/ tugas
menjadi beberapa subtugas,dan mengeksekusi sub-tugas tersebut secara bersamaan/
paralel dalam unit-unit multi hardware atau segmen-segmen.
- Tujuan
yg ingin dicapai dlm pipeline adalah untuk meningkatkan throughput. (the
number of instructions complete per unit of time – but it is not reduce
the execution time of an individual instruction).
- Waktu
yg digunakan untuk eksekusi setiap tugas sama dengan waktu yg digunakan
untuk satu eksekusi nonpipeline.
- Tetapi
karena eksekusi tugas yg berurutan dilakukan secara bersamaan, maka jumlah
tugas yg dapat dieksekusi dlm suatu waktu yg disediakan lebih tinggi.
- Hardware
pipeline menyediakan throughput yang lebih baik dibandingkan dgn hardware
non-pipeline.
Sumber:
Tidak ada komentar:
Posting Komentar