TUGAS KE 4
(ORGANISASI dan
ARSITEKTUR KOMPUTER )
Artikel
ke 1 : PIPELINING dan RISC .
1.
PIPELINING .
Pipelining atau Pipeline adalah suatu cara yang digunakan untuk melakukan
sejumlah kerja secara bersama tetapi dalam tahap yang berbeda yang dialirkan
secara kontinu pada unit pemrosesor. Dengan cara ini, maka unit pemrosesan
selalu bekerja.
Teknik pipeline ini dapat diterapkan pada berbagai
tingkatan dalam sistem komputer. Bisa pada level yang tinggi, misalnya program
aplikasi, sampai pada tingkat yang rendah, seperti pada instruksi yang
dijaankan oleh microprocessor.
Pada microprocessor yang tidak
menggunakan pipeline , satu
instruksi dilakukan sampai selesai, baru instruksi berikutnya dapat
dilaksanakan. Sedangkan dalam microprocessor yang
menggunakan teknik pipeline, ketika satu instruksi sedangkan diproses, maka
instruksi yang berikutnya juga dapat diproses dalam waktu yang bersamaan.
Tetapi, instruksi yang diproses secara bersamaan ini, ada dalam tahap proses
yang berbeda. Jadi, ada sejumlah tahapan yang akan dilewati oleh sebuah
instruksi.
Dengan penerapan pipeline ini pada microprocessor akan didapatkan
peningkatan kinerjamicroprocessor.
Hal ini terjadi karena beberapa instruksi dapat dilakukan secara parallel dalam
waktu yang bersamaan. Secara kasarnya diharapkan akan didapatkan peningkatan
sebesar K kali dibandingkan dengan microprocessor yang
tidak menggunakan pipeline , apabila
tahapan yang ada dalam satu kali pemrosesan instruksi adalah K tahap.
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 dan lancar. Sedangkan ketergantungan
terhadap data bisa muncul, misalnya instruksi yang berurutan memerlukan data
dari instruksi yang sebelumnya. 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.
Teknik pipeline yang diterapkan pada microprocessor, dapat dikatakan
sebuah arsitektur khusus. Ada perbedaan khusus antara model microprocessor yang tidak
menggunakan arsitektur pipeline dengan microprocessor yang menerapkan
teknik ini.
Pada microprocessor yang tidak
menggunakan pipeline , satu
instruksi dilakukan sampai selesai, baru instruksi berikutnya dapat
dilaksanakan. Sedangkan dalam microprocessor yang
menggunakan teknik pipeline
ketika satu instruksi sedangkan diproses, maka instruksi yang berikutnya juga
dapat diproses dalam waktu yang bersamaan. Tetapi, instruksi yang diproses
secara bersamaan ini, ada dalam tahap proses yang berbeda.
2. PROSEDUR VEKTOR PIPELINING .
·
Mengambil instruksi dan membuffferkannya.
·
Ketika tahapan kedua bebas tahapan pertama mengirimkan
instruksi yang dibufferkan tersebut.
·
Pada saat tahapan kedua sedang mengeksekusi instruksi,
tahapan pertama memanfaatkan siklus memori yang tidak dipakai untuk mengambil
dan membuffferkan instruksi berikutnya.
·
Tiga kesulitan yang sering dihadapi ketika menggunakan
teknik pipeline Terjadinya penggunaan resource yang bersamaan
·
Ketergantungan terhadap data
·
Pengaturan Jump ke suatu lokasi memori
3. REDUCE INSTRUCTION SET COMPUTER .
RISC adalah singkatan dari Reduced
Instruction Set Computer, kata “reduced” berarti pengurangan pada set
instruksinya. RISC merupakan rancangan arsitektur CPU yang mengambil 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 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
Ciri-ciri:
• 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.
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.
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.
Artikel
ke 2 : PROSESOR PARALEL .
1.
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 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 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 Bakan
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.
Komputer yang mempunyai beberapa unit prosesor di bawah satu supervisi satu
unit common control. Setiap prosesor menerima instruksi yang sama dari unit
kontrol, tetapi beroperasi pada data yang berbeda.
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 .
Komputer MIMD (Multiple
Instruction stream-Multiple Data stream)
Pada sistem komputer MIMD murni terdapat interaksi di antara n pemroses. 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.
Analisa Algoritma Paralel
Pada saat sebuah algoritma digunakan untuk memecahkan sebuah problem, maka
performance dari algoritma tersebut akan dinilai. Hal ini berlaku untuk
algoritma sekuensial maupun algoritma paralel. Penampilan sebuah algoritma
pengolahan peralel dapat dinilai dari beberapa kriteria, seperti running time
dan banyaknya prosesor yang digunakan.
Running Time
Running time adalah waktu yang digunakan oleh sebuah algoritma untuk
menyelesaikan masalah pada sebuah komputer paralel dihitung mulai dari saat
algoritma mulai hingga saat algoritma berhenti. Jika prosesor-prosesornya tidak
mulai dan selesai pada saat yang bersamaan, maka running time dihitung mulai
saat komputasi pada prosesor pertama dimulai hingga pada saat komputasi pada
prosesor terakhir selesai.
Counting Steps
Untuk menentukan running time, secara teoritis dilakukan analisa untuk
menentukan waktu yang dibutuhkan sebuah algoritma dalam mencari solusi dari
sebuah masalah. Hal ini dilakukan dengan cara menghitung banyaknya operasi
dasar, atau step (langkah), yang dilakukan oleh algoritma untuk keadaan
terburuknya (worst case).
Langkah-langkah yang diambil oleh sebuah algoritma dibedakan ke dalam dua
jenis yaitu :
· Computational step
Sebuah computational step adalah sebuah operasi aritmetika atau operasi
logika yang dilakukan terhadap sebuah data dalam sebuah prosesor.
· Routing step.
Pada routing step, sebuah data akan melakukan perjalanan dari satu prosesor
ke prosesor lain melalui shared memory atau melalui jaringan komunikasi.
Speedup
· Pengukuran speedup sebuah algoritma paralel adalah salah satu cara
untuk mengevaluasi kinerja algoritma tersebut.
· Speedup adalah
perbandingan antara waktu yang diperlukan algoritma sekuensial yang paling
efisien untuk melakukan komputasi dengan waktu yang dibutuhkan untuk melakukan
komputasi yang sama pada sebuah mesin pipeline atau paralel.
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
: