140 likes | 270 Views
PIPELINING INSTRUKSI. Created by : Rizka Ariyanto (08018094) Dian Utari (08018065) Nuryani Rahmawati (08018071) Dian Sulasih (08018072) Dyah Ayu Devi (08018076). Pipeline.
E N D
PIPELINING INSTRUKSI Created by : • Rizka Ariyanto (08018094) • Dian Utari (08018065) • Nuryani Rahmawati (08018071) • Dian Sulasih (08018072) • Dyah Ayu Devi (08018076)
Pipeline pipeline adalahsuatucara yang digunakanuntukmelakukansejumlahkerjasecarabersamaantetapidalamtahap yang berbeda yang dialirkansecarakontiniupada unit pemrosesan. Dengancaraini, maka unit pemrosesselalubekerja.
pipeline • Teknik pipeline inidapatditerapkanpadaberbagaitingkatandalamsistemkomputer. Bisapada level yang tinggi, misalnya program aplikasi, sampaipadatingkat yang rendah, sepertipadainstruksi yang dijalankanoleh microprocessor.
PerbedaanMicroprocesor yang menggunakan pipeline Pada microprocessor yang tidakmenggunakan pipeline, satuinstruksidilakukansampaiselesai, baruinstruksiberikutnyadapatdilaksanakan. Sedangkandalam microprocessor yang menggunakanteknik pipeline, ketikasatuinstruksisedangkandiproses, makainstruksi yang berikutnyajugadapatdiprosesdalamwaktu yang bersamaan. Tetapi, instruksi yang diprosessecarabersamaanini, adadalamtahapproses yang berbeda. Jadi, adasejumlahtahapan yang akandilewatiolehsebuahinstruksi.
Denganpenerapan pipeline inipada microprocessor akandidapatkanpeningkatandalamunjukkerja microprocessor. Hal initerjadikarenabeberapainstruksidapatdilakukansecara parallel dalamwaktu yang bersamaan. Secarakasarnyadiharapkanakandidapatkanpeningkatansebesar K kali dibandingkandengan microprocessor yang tidakmenggunakan pipeline, apabilatahapan yang adadalamsatu kali pemrosesaninstruksiadalah K tahap.
Tahapan Pipeline • Mengambilinstruksidanmembuffferkannya • Ketikatahapnkeduabebastahapanpertamamengirimkaninstruksi yang dibufferkantersebut • Padasaattahapankeduasedangmengeksekusiinstruksi ,tahapanpertamamemanfaatkansiklusmemori yang tidakdipakaiuntukmengambildanmembuffferkaninstruksiberikutnya
Tigakesulitan yang seringdihadapiketikamenggunakanteknik pipeline • Terjadinyapenggunaan resource yang bersamaan • Ketergantunganterhadap data • Pengaturan Jump kesuatulokasimemori
Keuntungandari Pipelining • Waktusiklusprosesorberkurang, sehinggameningkatkantingkatinstruksi-isudalamkebanyakankasus. • Beberapa combinational sirkuitsepertipenambahataupenggandadapatdibuatlebihcepatdenganmenambahkanlebihbanyaksirkuit. Jika pipelining digunakansebagaipengganti, halitudapatmenghematsirkuitvs combinational yang lebihkompleksirkuit.
Kekurangan Pipelining • Non-pipelined prosesorhanyamenjalankansatuinstruksipadasatuwaktu. Hal iniuntukmencegahpenundaancabang (yang berlaku, setiapcabangtertunda) danmasalahdengan serial instruksidieksekusisecarabersamaan. Akibatnyadesainlebihsederhanadanlebihmurahuntukdiproduksi. • Instruksi latency di non-pipelined prosesorsedikitlebihrendahdaripadadalam pipelined setara. Hal inidisebabkanolehfaktabahwa sandal jepitekstraharusditambahkankejalur data dariprosesor pipelined. • Non-pipelined prosesorakanmemilikiinstruksi yang stabil bandwidth. Kinerjaprosesor yang pipelined jauhlebihsulituntukmeramalkandandapatbervariasilebihluasdiantara program yang berbeda.
Cat dasar, anti karat, cat final Pasangpintu, jendela, kapmesin Press Plat Body Pipelining meniruproses assembly-chain (ban berjalan) diindustri : MisalnyaIndustri Mobil Unit 1 Unit 2 Unit 3 Unit 5 Unit 6 Unit 4 Test engine static, test electric, dll PasangMesin, Jok, kaca,karet , lampu Pasangkabel, roda, ac, dll Ban Berjalan IndustriKaroseri
Setiap unit, menjalankanfungsitertentu yang unik • Setiap “clock” (satuanwaktutertentu), setiap unit secaraserentakmenyelesaikanpekerjaannya • Pekerjaan “bergeser” dari unit ike unit (i + 1), sampaiakhirnyapekerjaanselesai • Padawaktuseluruh unit terisipenuh, padasetiap “clock” akankeluar (selesai) satu unit mobil • Bandingkandenganproses non-assembly, dimanapekerjaandiselesaikansemuadahulu (seluruhpekerjaannyamobilke jselesai), barumobilke (j+1) mulaidikerjakan
Secarainstinktif, dapatdideduksibahwa : Tanpa assembly, makasetiapmobilakanselesaidalamwaktu ( n x waktusetiap unit) • Dengan assembly : padasaatsemua unit penuh, makasetiap “clock” (waktupengolahandisetiap unit), akankeluarsatumobil • Tnon-assembly = ( n x Tunit-assembly), dimana n adalahjumlah unit dalam assembly • Jadi, dalamkondisiassembly penuh, percepatanprosesproduksimobildengan assembly (ban berjalan) adalahn kalilebihcepatdibandingtanpa assembly
Pipelining diProsesor • Untukmenerapkanprinsipmulti-stageataumulaisaatinikitanamakanpipeliningdiprosesor, diperlukanorganisasiprosesorkhusus • Padadasarnya, prosesordipartisimenjadisejumlah unit-unit kecildenganfungsispesifik • Setiap unit berperanmenyelesaikansebagiandarieksekusiinstruksi : Instruction fetch, decode, operand address calculation, operand fetch,execute and storeresult