1 / 29

Nama kelmpok : maskar nurlailah . r

TUGAS KELOMPOK. Nama kelmpok : maskar nurlailah . r. PIPELINING INSTRUKSI. MATERI. &. FORMAT INSTRUKSI.

cherie
Download Presentation

Nama kelmpok : maskar nurlailah . r

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TUGAS KELOMPOK Namakelmpok :maskarnurlailah. r

  2. PIPELINING INSTRUKSI MATERI & FORMAT INSTRUKSI

  3. Pipeline adalahsuatucara yang digunakanuntukmelakukansejumlahkerjasecarabersamatetapidalamtahap yang berbeda yang dialirkansecarakontinoupada unit pemrosesor. Denganccaraini, maka unit pemrosesanselalubekerja. • Mesin yang melaksanakanbeberapakomputasi yang berbedasecarabersama-sama, namunpadasaatitusetiapkomputasiakanberadadalamtahapaneksekusi yang berbeda • Teknik pipeline inidapatditerapkanpadaberbagaitingkatandalamsistemkomputer. Bisapada level yang tinggi, misalnya program aplikasi, sampaipadatingkat yang rendah, sepertipadainstruksi yang dijaankanoleh microprocessor. Pipelining instruksi

  4. beberapainstruksidiprosessecarabersamaanadakemungkinaninstruksitersebutsama-samamemerlukan resource yang sama, sehinggadiperlukanadanyapengaturan yang tepat agar prosestetapberjalandenganbenar. • Teknik pipeline yang diterapkanpada microprocessor, dapatdikatakansebuaharsitekturkhusus. Adaperbedaankhususantara model microprocessor yang tidakmenggunakanarsitektur pipeline dengan microprocessor yang menerapkanteknikini. • Pada microprocessor yang tidakmenggunakan pipeline, satuinstruksidilakukansampaiselesai, baruinstruksiberikutnyadapatdilaksanakan. Sedangkandalammicroprocessoryangmenggunakanteknik pipeline, ketikasatuinstruksisedangkandiproses, makainstruksi yang berikutnyajugadapatdiprosesdalamwaktu yang bersamaan. Tetapi, instruksi yang diprosessecarabersamaanini, adadalamtahapproses yang berbeda.

  5. Tigakesulitan yang seringdihadapiketikamenggunakanteknik pipeline iniadalah : • Terjadinyapenggunaan resource yang bersamaan, Ketikabeberapainstruksidiprosessecarabersamaan, inimemungkinkanadapenggunaan resource memoripadatempat yang sama. • Ketergantunganterhadap data, Misalnyainstruksi yang berurutan yang membutuhkan data dariinstruksisebelumnya. • Pengaturan Jump kesuatulokasimemori, Ketikasebuahinstruksimemintauntukmelompatkesuatulokasimemoritertentu, akanterjadiperubahan program counter, sedangkaninstruksi yang sedangberadadalamsalahsatutahapproses yang berikutnyamungkintidakmengharapkanterjadinyaperubahan program counter.

  6. Mengambilinstruksidanmembufferkannya • Ketikatahapankeduabebastahapanpertamamengirimkaninstruksi yang dibufferkantersebut • Padasaattahapankeduasedangmengeksekusiinstruksi ,tahapanpertamamemanfaatkansiklusmemori yang tidakdipakaiuntukmengambildanmembufferkaninstruksiberikutnya . Tahapan-tahapan pipelining

  7. Denganadanyapersyaratanbahwasetiapinstuksi yang berdekatanharustidaksalingbergantung, makaadakemungkinanterjadinyasituasidimana pipeline gagaldilaksanakan (instuksiberikutnyatidakbisadilaksanakan). Situasiinidisebut Hazards. Hazards mengurangiperformansidari CPU dimanapercepatan ideal tidakdapatdicapai. Ada 3 kelompok Hazards : 1. Structural Hazards munculdarikonflik resource sistemyaituketika hardware tidakdapatmensuportsemuakemungkinankombinasipelaksanaaninstruksi. 2. Data Hazards munculketika data untuksuatuinstruksitergantungpadahasilinstruksisebelumnya. 3. Control Hazards munculpadapelaksanaaninstruksi yang mengubah PC (contoh : branch). Masalahpada pipelining

  8. Adanya Hazards menyebabkan pipeline terhambat (stalled). Tidakadainstruksibaru yang dijemputsampaihambatanituselesai. Iniberartiinstruksi-instruksiselanjutnyaakanditunda pula penjemputannya. Keuntungandari Pipelining: Waktusiklusprosesorberkurang, sehinggameningkatkantingkatinstruksi-isudalamkebanyakankasus. Beberapa combinational sirkuitsepertipenambahataupenggandadapatdibuatlebihcepatdenganmenambahkanlebihbanyaksirkuit. Jika pipelining digunakansebagaipengganti, halitudapatmenghematsirkuitvs combinational yang lebihkomplekssirkuit.

  9. Kekurangan Pipelining : 1. Non-pipelined prosesorhanyamenjalankansatuinstruksipadasatuwaktu. Hal iniuntukmencegahpenundaancabang (yang berlaku, setiapcabangtertunda) danmasalahdengan serial instruksidieksekusisecarabersamaan. Akibatnyadesainlebihsederhanadanlebihmurahuntukdiproduksi. 2. Instruksi latency di non-pipelined prosesorsedikitlebihrendahdaripadadalam pipelined setara. Hal inidisebabkanolehfaktabahwa sandal jepitekstraharusditambahkankejalur data dariprosesor pipelined.  3. Non-pipelined prosesorakanmemilikiinstruksi yang stabil bandwidth. Kinerjaprosesor yang pipelined jauhlebihsulituntukmeramalkandandapatbervariasilebihluasdiantara program yang berbeda.

  10. Tujuan pipelining : - adalahuntukmemaksimalkankecepatan mengalirnyainstruksi. - Diciptakanjugadengantujuanmempercepatkinerjakomputer. Kategori pipelining: 1. Pipeline Unit Arithmetic Bergunauntukoperasivektor 2. Pipeline Unit Instruction Bergunauntukkomputer yang mempunyai set instruksi yang sederhana

  11. Bedanyaprosesor yang tidakmenggunakantekonologi pipeline adalahdalamsegipengerjaantugasatauoperasi.  Prosesor yang tidakmenggunakanteknologi pipeline harusmenyelesaikansuatuprosessampaidenganselesaidulu, barubisamelanjutkankieprosesselanjutnya. Sedangkanprosesor yang menggunakanteknologi pipeline dapatmelakukanbeberapaprosessecarabersamaantanpaharusmenungguprosessebelumnyadiselesaikan.

  12. Pipelining Instruksi 2 tahap

  13. Untuksetiaptahappengerjaaninstruksi, komponen yang bekerjaberbeda, makadimungkinkanuntukmengisikekosongankerjadikomponentersebut. Sebagaicontoh : Instruksi 1: ADD AX, AX Instruksi 2: ADD EX, CX Setelah CU menjemputinstruksi 1 darimemori (IF), CU akanmenerjemahkaninstruksitersebut(ID). Padamenerjemahkaninstruksi 1 tersebut, komponen IF tidakbekerja. Adanyateknologi pipeline menyebabkan IF akanmenjemputinstruksi 2 padasaat ID menerjemahkaninstruksi 1. Demikianseterusnyapadasaat CU menjalankaninstruksi 1 (EX), instruksi 2 diterjemahkan (ID).

  14. Contohpengerjaaninstruksitanpa pipeline Disiniinstruksibaruakandijemputjikainstruksisebelumnyatelahselesaidilaksanakan.

  15. Contohpengerjaaninstruksidengan pipeline Disiniinstruksibaruakandijemputsetelahtahap IF menganggur (t2).

  16. FORMAT INSTRUKSI

  17. Suatuinstruksiterdiridaribeberapa field yang sesuaidenganelemendalaminstruksitersebut.layout dariinstruksiseringdisebutsebagaiformat instruksi. Program terdiridariurutaninstruksi, setiapinstrusksimemilikiaksitertentu. Setiapinstruksiterdiridari field kodeoperasiatauopcode yang menentukanoperasiapa yang harusdikerjakanoleh CPU. Instruksidapatberupaopcodesaja, tetapisebagianbesarinstrusksimelibatkansatuataulebih operand. Untukmenentukandimana operand beradadisebutaddressing. pENGERTIAN

  18. Instruksitanpa operand disebutdenganzero address instruction. Instruksi yang memerlukansatuataulebih operand disebut one-address instruction, two-address instruction,danseterusnya. PanjangInstruksitergantungjumlah operand yang terlibatdancaramenentukansetiap operand.

  19. CONTOH FORMAT INSTRUKSI • operand source/destination • Opcode : menyatakanoperasinya (mnemonic) • Operands: menyatakan data input (source) dan output (destination) • untukoperasiybs datanya (imediate) atau lokasi/alamat data (eks- lisit atau implisit)

  20. Selamaberlangsungnyaeksekusiinstruksi, instruksidibacakedalam register instruksi (Instruction Register-IR) yang terdapardalam CPU. Opcodedirepresentasikandengansingkatan-singkatan yang disebutmnemonik, yang mengindikasikanoperasi.Misal: • ADD (menambahkan) • SUB (pengurangan) • MPY (multiply) • DIV (pembagian) • LOAD (muatkan data darimemori) • STORE (simpan data kememori)

  21. Operand-operand jugadirepresentasikansecarasimbolik. Misalnyainstruksi: ADD R,Y Berartitambahkannilai yang terdapatpadalokasiY keisi register R dimana Y berkaitandenganalamatlokasi di dalammemori, dan R berkaitandengan register tertentu.

  22. a = b + 5 1 statement level tinggi kompilasi 1 statemen assembly = 1 instruksi mesin M[a], R3 Operand operand Register Memory

  23. Apa yang harus dispesifikasikan oleh sebuah instruksi ? • KodeoperasiOpcode add r0, r1, r3 add, load, branch, dsb. • Dimanaoperand-operand sumbernyaberada ? add r0, r1, r3 didalam register2 CPU, main memory, I/O, atauterdapatdalaminstruksiitusendiri. • Kemanaoperand hasil (hasiloperasi) disimpan ? add r0, r1, r3 ke register2 CPU atau main memory Opcode Operand-operand sumber dan operand hasil (alamat penyimpanannya)

  24. Beberapajenis addressing modes diuraikansebagaiberikut: 1. Immediate Addressing Pada mode ini, operand merupakanbagiandariinstruksi, sehingga operand tersediadengansegera. Operand inidisebut immediate operand karenasecaraotomatis di-fetch darimemoridenganinstruksi. 2. Direct Addressing Pada mode iniinstruksimenyediakanalamat operand secaralangsung. CPU menggunakanalamatiniuntukmelakukan fetch (atau store) oprend. 3. Register Direct Addressing Mode inimiripdengan direct addressing, perbedaannya field operand menentukan register, bukanalamatmemori. Register iniadalahsalahsatudari general purpose register (GPR) CPU. Addressing Mode

  25. 4. Register Indirect Addressing Pada mode ini register ditentukanolehinstruksi yang berisialamat operand, bukan operand itusendiri. Karenamemegangalamat operand, maka register dapatdipandangsebagaipetunjukke operand, sehinggadisebut pointer. 5. Indirect Addressing Pada addressing mode berikutnyainstruksimenentukanalamat operand berkaiatandenganjarakdarialamat yang laian. Pada mode addressing iniinstruksimenyediakandanmenunjukkan register mana yang memegangindek. Indekmenentukanberapajauh operand darialamat yang disediakanolehinstruksi. 6. Based Addressing Mode inidikenaldengan relative addressing. Padatipe addressing inialamat operand berkenaandenganjarak (atau displacement) dengn base address yang disimpandalam register. 7. Relative Addressing Program melibatkaninstruksitipe jump untukmenttansfer control ke program lain ataukebagian lain dari program lain dari program yang sama.

  26. Set instrukidapatberbedatidakhanyapadatipeoperasi, tetapijugatipe data dimanaoperasi-operasitersebutdilakukan. Dipandangdaritipeoperasi, instruksidapatdibagimenjaditigakelasutama, yaitu: 1. Instruksi transfer data Memindahkan data antarlokasitanpamelakukanoperasiapapunpada data yang bersangkutan. Contohinstrusi transfer data adalah MOV. 2. Instruksikendali Tidakmelakukanoperasipada data. Fungsiinstrusksiiniuntukmengendalikan program dankeadaan (state) CPU. Contohinstrusksi transfer kendaliadalah JUMP, CALLSUB, RETSUB, RETINT, LOOPBCK (kendali program) dan SETC, CLRC, ENINT, DISINT, HALT, NOP (kendali CPU). Set Instruksi

  27. 3. Instruksimanipulasi data Melakukanoperasi data yang memberikanhasilmelaluitransformasi data. Yang termasukinstruksimanipulasi data adalah: a). Aritmetik b). Lojik c). Shift/rotate d). Manipulasi bit e). Perosesan string

  28. Instruction cycedan Machine cycle Adalahurutanlangkah yang diperlukandalam fetching daneksekusiinstrusi. Di dalamprosesor, langkahinidibagimenjadiurutanyanglebihkecil yang disebut machine cycle. Tipe machine cycle yang umumadalah: a). Memory Read b). Memory Write c). Internal Operation d). Interupt Acknowledge e). Bus Grant CPU Timing

  29. TERIMAH KASIH

More Related