Tugas softskill ke 4
Artikel ke 1
PIPELINING DAN RISC
1. PIPELINING
.
Pipeline
adalah 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 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 dalam
unjuk kerja microprocessor. Hal ini terjadi karena beberapa instruksi dapat
dilakukan secara parallel dalam waktu yang bersamaan. Secara kasarnya
diharapkan akan didapatkan peningkatan sebesar X kali dibandingkan dengan
microprocessor yang tidak menggunakan pipeline, apabila tahapan yang ada dalam
satu kali pemrosesan instruksi adalah X 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. 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 microprocessoryang 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.
Pada microprocessor yang tidak menggunakan pipeline, satu instruksi dilakukan sampai selesai, baru instruksi berikutnya dapat dilaksanakan. Sedangkan dalam microprocessoryang 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.
Misalnya sebuah microprocessor menyelesaikan sebuah instruksi dalam 4 langkah. Ketika instruksi pertama masuk ke langkah 2, maka instruksi berikutnya diambil untuk diproses pada langkah 1 instruksi tersebut. Begitu seterusnya, ketika instruksi pertama masuk ke langkah 3, instruksi kedua masuk ke langkah 2 dan instruksi ketiga masuk ke langkah 1.
Misalnya sebuah microprocessor menyelesaikan sebuah instruksi dalam 4 langkah. Ketika instruksi pertama masuk ke langkah 2, maka instruksi berikutnya diambil untuk diproses pada langkah 1 instruksi tersebut. Begitu seterusnya, ketika instruksi pertama masuk ke langkah 3, instruksi kedua masuk ke langkah 2 dan instruksi ketiga masuk ke langkah 1.
2. PROSEDUR
VEKTOR PIPELINING.
Prosedur Vektor Pepilining, yaitu :
·
Mengambil
instruksi dan membuffferkannya
·
Ketika
tahapn 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 .
·
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).
Contoh
pengerjaan instruksi tanpa pipeline
t =
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
ADD AX,AX
|
IF
|
DE
|
IF
|
DE
|
EX
|
|||||
ADD BX,CX
|
IF
|
DE
|
IF
|
DE
|
EX
|
Disini instruksi baru akan dijemput
jika instruksi sebelumnya telah selesai dilaksanakan.
t =
|
1
|
2
|
3
|
4
|
5
|
6
|
7
|
8
|
9
|
10
|
ADD AX,AX
|
IF
|
DE
|
IF
|
DE
|
EX
|
|||||
ADD BX,CX
|
IF
|
DE
|
IF
|
DE
|
EX
|
|||||
ADD DX,DX
|
IF
|
DE
|
IF
|
DE
|
EX
|
Contoh pengerjaan instruksi dengan
pipeline
Disini instruksi baru akan dipanggil
setelah tahap IF menganggur (t2).
Dengan adanya pipeline dua instruksi
selesai dilaksanakan pada detik keenam (sedangkan pada kasus tanpa pipeline
baru selesai pada detik kesepuluh). Dengan demikian telah terjadi percepatan
sebanyak 1,67x dari 10T menjadi hanya 6T. Sedangkan untuk pengerjaan 3 buah
instruksi terjadi percepatan sebanyak 2, 14 dari 15T menjadi hanya 7T.
Untuk kasus pipeline sendiri, 2
instruksi dapat dikerjakan dalam 6T(CPI = 3) dan instruksi dapat dikerjakan
dalam 7T (CPT = 2,3) dan untuk 4 instruksi dapat dikerjakan dalam 8T (CPI
=2). Ini berarti utnuk 100 instruksi akan dapat dikerjakan dalam 104T (CPI =
1,04). Pada kondisi ideal CPI akan harga 1.
3. REDUCE INSTRUCTION SET COMPUTER
(RISC) .
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, R4x00dari 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 KumpulanInstruksi yang kompleks atau rumit.
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 merupakan salah satu
bentuk dari paralel sinkron yang memproses satu instruksi dengan banyak
prosesor elemen pada waktu yang sama.
Di dalam paradigma SIMD
yang paling penting bukanlah kontrol prosesor melainkan data. Data diproses
oleh masing-masing elemen pemroses yang berbeda dari satu prosesor ke prosesor
lainnya. Sehingga satu program dan satu kontrol unit bekerja secara bersamaan
pada kumpulan data yang berbeda. Untuk memproses data secara efisien, SIMD
membuat pengaturan proses menjadi dua phase, yaitu : pertama memilah dan
mendistribusikan data (data partitioning and distribution) dan yang kedua
memproses data secara paralel (data paralel prosesing). Jadi efisiensi akan
tergantung kepada banyaknya permasalahan yang harus diselesaikan secara paralel.
Cara terbaik dalam
menggunakan SIMD adalah dengan mencocokan banyaknya permasalahan dengan
banyaknya prosesor paralel. Banyaknya permasalahan berarti seberapa banyak
jumlah data yang akan di perbaharui dan banyaknya prosesor paralel berarti
jumlah prosesor yang tersedia. Jadi jika permasalahanya sebanding dengan
prosesor paralel maka kecepatan tertinggi dapat terjadi, sebaliknya apabila
permasalahan hanya satu dengan prosesor paralel yang banyak menyebabkan sistem
SIMD menjadi tidak efektif.
SIMD sering diidentikan
sebagai permasalahan paralel yang sederhana, padahal tidaklah benar karena
paradigma SIMD sangat berguna dalam menyelesaikan permasalahan yang memiliki
beberapa data yang perlu diperbaharui secara serempak. Khususnya sangat berguna
untuk perhitungan numerik biasa seperti perhitungan matrix dan vektor.
3.Mesin MIMD.
MIMD berarti
banyak prosesor yang dapat mengeksekusi instruksi dan data yang berbeda-beda
secara bersamaan. Lebih lanjut sebagai bagian dari komputer, prosesor memiliki
otonom yang besar dalam melakukan operasinya.
Secara umum
MIMD digunakan ketika banyak permasalahan heterogen yang harus diselesaikan
pada waktu yang sama. MIMD sangat baik digunkan untuk meneyelesaikan
permasalahan yang besar, sebab melebihi data dan kontrol yang harus dilewatkan
dari task ke task. Sebagai contoh dalam analogi sebuah Bank, MIMD akan
menampilkan kerja terbaiknya ketika masing-masing teller memiliki beberapa
transaksi yang harus diselesaikan satu persatu tanpa ada pembuangan waktu dan
penghentian dari beberapa bagian transaksi. Tetapi pada sistem MIMD akan
dibingungkan oleh aliran data (dataflow) paralel, karena aliran data tersebut
harus dikerjakan oleh mesin MIMD secara terus menerus. Lalu mengapa digunakan
sistem MIMD ?.
Pertama
bahwa tiap-tiap prosesor bekerja secara independen kecuali untuk sistem
sinkoron tertentu harus menunggu. Prosesor menjalankan task yang pendek sebagai
contoh selesainya mengevaluasi vektor satu elemen sebelum prosesor memproses
task lebih jauh. Tentu saja prosesor dalam waktu yang singkat dapat melakukan
beberapa pekerjaan yang berbeda, seperti waiting, comparing dan sending data.
Kedua, bahwa
pada program paralel untuk menyelesaikan suatu task baik jumlahnya diketahui
ataupun tidak, menggunakan prosesor yang jumlahnya tidak diketahui pula. Hal
tersebut menggambarkan dua ciri mendasar dari sistem MIMD, yaitu :1. Kelamahan
pada sentralisasi dan mekanisme sistem sinkron secara umum, dan 2.
Penggeneralisasian task yang heterogen yang dioperasikan secara bersamaan,
contohnya dalam memproses operasi yang berbeda dengan data berbeda dan dalam
jangka waktu yang berbeda pula.
Secara umum
MIMD meliputi paradigma reduksi/dataflow. Pada kenyataannya juga secara umum
meliputi SIMD, sebab kita dapat menemui sifat SIMD pada sebagian sifat MIMD.
Sehingga menghasilkan Kinerja akhir dari simulasi satu bentuk mesin dengan
bentuk lainnya. Untuk menggabungkannya, mesin MIMD mengubah SIMD prosesor
dimana masing-masing prosesornya mampu mengerjakan banyak task dari aplikasi
yang berbeda pada waktu yang sama.
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 :