Tugas Organisasi dan Arsitektur
ke 4 (#Softskill)
Artikel ke 1
PIPELINING dan RISC
1. PIPELINING.
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 .
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 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 .
3. REDUCE
INSTRUCTION SET COMPUTER (RISC) .
Kata “reduced” berarti pengurangan pada set instruksi.
RISC merupakan rancangan arsitektur CPU yang mengembil dasar filosofi bahwa
prosesor dibuat dengan arsitektur yang tidak rumit dengan membatasi jumlah instruksi
hanya pada instruksi dasar yang diperlukan saja. Dengan kata lain RISC adalah
arsitektur komputer dengan kumpulan perintah (instruksi) yang sederhana, tetapi
dalam kesederhanaan tersebut didapatkan kecepatan operasi setiap siklus
instruksinya. Kebanyakan pada proses RISC , instruksi operasi dasar aritmatik
hanya penjumlahan dan pengurangan, untuk perkalian dan pembagian sudah dianggap
operasi ang 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 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 .
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.
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.
• IBM dengan Intel Inside-nya.
• Prosessor PowerPC, prosessor buatan motorola yang menjadi otak utama komputer Apple Macintosh.
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.
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.
RISC vs CISC
Dari segi kecepatannya, Reduced Instruction Set Computer (RISC) lebih cepat dibandingkan dengan Complex Instruction Set Computer (CISC). Ini dikarenakan selain instruksi-instruksi pada RISC lebih mudah untuk diproses, RISC menyederhanakan instruksi . Jumlah instruksi yang dimiliki oleh prosesor RISC kebanyakan berjumlah puluhan (±30-70), contoh: COP8 buatan National Semiconductor memiliki 58 instruksi; sedangkan untuk prosesor CISC jumlahnya sudah dalam ratusan (±100 atau lebih).
CISC dirancang 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.
Dari segi kecepatannya, Reduced Instruction Set Computer (RISC) lebih cepat dibandingkan dengan Complex Instruction Set Computer (CISC). Ini dikarenakan selain instruksi-instruksi pada RISC lebih mudah untuk diproses, RISC menyederhanakan instruksi . Jumlah instruksi yang dimiliki oleh prosesor RISC kebanyakan berjumlah puluhan (±30-70), contoh: COP8 buatan National Semiconductor memiliki 58 instruksi; sedangkan untuk prosesor CISC jumlahnya sudah dalam ratusan (±100 atau lebih).
CISC dirancang 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.
Eksekusi Instruksi RISC
Waktu eksekusi dapat dirumuskan dengan:
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 (jumlah perintah), 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.
Waktu eksekusi dapat dirumuskan dengan:
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 (jumlah perintah), 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.
Ø KESIMPULAN.
Prosessor dengan arsitektur RISC, yang berkembang dari riset
akademis telah menjadi prosessor komersial yang terbukti mampu beroperasi lebih
cepat dan efisien. Bila teknik rancangan RISC maupun CISC terus dikembangkan
maka pengguna komputer tidak perlu lagi mempedulikan prosessor apa yang ada di
dalam sistem komputernya, selama prosessor tersebut dapat menjalankan sistem
operasi ataupun program aplikasi yang diinginkan secara cepat dan efisien.
Artikel ke 2
PROSESOR PARALEL
Ø Paralel
prosesor.
adalah
suatu prosesor dimana pelaksanaan instruksinya secara bersamaan waktunya.
Sehingga
menyebabkan pelaksanaan suatu kejadian :
1.
dalam interval waktu yang sama
2.
dalam dalam waktu yang bersamaan
3.
dalam waktu yang saling tumpang tindih
Ø Teknik
Pemrosesan Paralel
Pada
prosesor paralel memiliki beberapa teknik pemrosesan :
1.
Pipelining
2. Unit-unit fungsional berganda
3. Tumpang tindih antara operasi CPUdan
I/O
4. Interleaving memori
5.
Multiprograming
6.
Multiprosesing
1.
JARINGAN INTERKONEKSI .
Komunikasi diantara terminal-terminal yang berbeda harus dapat dilakukan dengan
suatu media tertentu. Interkoneksi yang efektif antara prosesor dan modul
memorisangat penting dalam lingkungan komputer. Menggunakan arsitektur
bertopologi busbukan 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 komponenkomponen di dalam modul IC. Selain
itu juga tidak dapat diskalakan, diuji, dan kurang dapat disesuaikan, serta
menghasilkan kinerja toleransi kesalahan yang kecil.
Di sisi lain, sebuah crossbar yang
ditunjukkan pada Gambar 2.2 menyediakan interkoneksi penuh diantara semua
terminal dari suatu sistem
tetapi dianggap sangat kompleks,
mahal untuk membuatnya, dan sulit untuk dikendalikan. Untuk alasan ini jaringan
interkoneksi merupakan solusi media komunikasi yang baik untuk sistem komputer
dan telekomunikasi. Jaringan ini membatasi jalur-jalur diantara terminal komunikasi
yang berbeda untuk mengurangi kerumitan dalam menyusun elemen switching .
2.
Mesin SIMD.
SIMD adalah singkatan
dari Single Instruction, Multiple Data, merupakan sebuah
istilah dalam komputasi yang merujuk kepada sekumpulan operasi yang digunakan untuk menangani jumlah data yang sangat banyak dalam paralel secara efisien,
seperti yang terjadi dalam prosesor vektor atau prosesor larik. SIMD pertama kali dipopulerkan
pada superkomputer skala besar, meski sekarang telah ditemukan pada
komputer pribadi.
Contoh aplikasi yang dapat mengambil keuntungan
dari SIMD adalah aplikasi yang memiliki nilai yang sama yang ditambahkan ke
banyak titik data (data point), yang umum terjadi dalam aplikasi multimedia. Salah satu
contoh operasinya adalah mengubah brightness dari sebuah gambar. Setiap pixel dari sebuah gambar 24-bit berisi tiga buah nilai
berukuran 8-bit brightness dari porsi warna merah (red),
hijau (green), dan biru (blue). Untuk melakukan perubahan brightness, nilai R, G, dan B akan dibaca dari memori, dan sebuah
nilai baru ditambahkan (atau dikurangkan) terhadap nilai-nilai R, G, B tersebut
dan nilai akhirnya akan dikembalikan (ditulis kembali) ke memori.
Prosesor yang memiliki SIMD menawarkan dua
keunggulan, yakni:
·
Data langsung dapat dipahami dalam bentuk blok
data, dibandingkan dengan beberapa data yang terpisah secara sendiri-sendiri.
Dengan menggunakan blok data, prosesor dapat memuat data secara keseluruhan
pada waktu yang sama. Daripada melakukan beberapa instruksi "ambil pixel
ini, lalu ambil pixel itu, dst", sebuah prosesor SIMD akan melakukannya
dalam sebuah instruksi saja, yaitu "ambil semua pixel itu!" (istilah
"semua" adalah nilai yang berbeda dari satu desain ke desain
lainnya). Jelas, hal ini dapat mengurangi banyak waktu pemrosesan (akibat
instruksi yang dikeluarkan hanya satu untuk sekumpulan data), jika dibandingkan
dengan desain prosesor tradisional yang tidak memiliki SIMD (yang memberikan
satu instruksi untuk satu data saja).
·
Sistem SIMD umumnya hanya mencakup
instruksi-instruksi yang dapat diaplikasikan terhadap semua data dalam satu
operasi. Dengan kata lain, sistem SIMD dapat bekerja dengan memuat beberapa
titik data secara sekaligus, dan melakukan operasi terhadap titik data secara
sekaligus.
3.
Mesin MIMD.
MIMD adalah
sebuah singkatan dari,
(Multiple
Instruction stream-Multiple Data stream)
yaitu sebuah komputer
yang memiliki beberapa prosesor yang bersifat otonomus yang mampu melakukan
instruksi yang berbeda pada data yang berbeda. Sistem terdistribusi umumnya
dikenal sebagai MIMD, entah itu menggunakan satu ruangan memori secara
bersama-sama atau sebuah ruangan memori yang terdistribusi.
Pada sistem komputer MIMD murni terdapat
interaksi di antara pemrosesan. Hal ini disebabkan seluruh aliran dari dan
ke memori berasal dari space data yang sama bagi semua
pemroses.
Komputer MIMD bersifat tightly
coupled jika tingkat interaksi antara pemroses tinggi dan
disebut loosely coupled jika tingkat interaksi antara pemroses
rendah.
4.
ARSITEKTUR PENGGANTI.
Dalam bidang teknik komputer, arsitektur
pengganti merupakan konsep perencanaan atau struktur pengoperasian dasar dalam
komputer atau bisa dikatakan rencana cetak biru dan deskripsi fungsional
kebutuhan dari perangkat keras yang didesain. implementasi perencanaan dari
masing-masing bagian seperti CPU, RAM, ROM, Memory Cache, dll.
SUMBER =
- http://gamapermana80.blogspot.com/2012/01/pipelining-dan-risc.html
- http://next-timexxxx.blogspot.com/2012/01/pipelining-dan-risc.html
- http://archpineapple.blogspot.com/2009/12/pengertian-risc.html
- http://id.scribd.com/doc/17220400/Paralel-Prosesor
- http://repository.usu.ac.id/bitstream/123456789/19839/4/Chapter%20II.pdf
- http://id.wikipedia.org/wiki/SIMD
- http://id.wikipedia.org/wiki/Taksonomi_Flynn
- http://soulofmine.wordpress.com/2011/04/01/parallel-processing/