220 likes | 363 Views
Pertemuan 13 (PIPELINING LANJUTAN). PENDAHULUAN
E N D
Group 4 PTIK 09 Pertemuan 13(PIPELINING LANJUTAN) PENDAHULUAN Kecepataneksekusi program dipengaruhiolehbanyak factor, suaaticarauntukmeningkatkanperformaadalahdenganmenggunakantekhnologisirkuit yang lebihcepatuntukmembangunprosessordanmemoriutama. Kemungkinan lain adalahdenganmengatur hardware sehinggalebihdarisatuoperasidapatdilakukanpadasaat yang sama. Dengancaraini, jumlahoperasi yang dilakukan per detikditingkatkansekalipun elapsed time yang diperlukanuntukmelakukantiapsatuoperasitidakberubah .
Group 4 PTIK 09 9.1 OPERASI SUPERSKALAR ProsesorSuperskalaradalahistilahbagiprosesor yang mampumelakukanbanyakinstruksisetiapsiklusnya, denganmenggunakansebuahteknik yang disebutdenganpipelining.
Group 4 PTIK 09 Penambahanpotensialdalamperformahanyadapatdirealisasikandenganmemperhatikantigaaspek: - Set instruksiprosesor - Desain hardware pipeline - Desainkompiler yang tepat
Group 4 PTIK 09 9.1.1 EKSEKUSI OUT-OF-ORDER • Contohaliraneksekusiinstruksidalamprosesor
Group 4 PTIK 09 • Penyelesaianinstruksisesuaiurutan program.
Group 4 PTIK 09 GambarMenggunakan register temporer
Group 4 PTIK 09 9.1.2 PENYELESAIAN EKSEKUSI Denganmenggunakaneksekusi out-of-order, unit eksekusibebasuntukmengeksekusiinstruksi lain dengansegera. Padasaat yang sama, instruksiharusdiselesaikansesuaidenganurutan program untukmemungkinkan precise exception. Persyaratan yang tampaknyabertentainganinidapatdiselesaikanjikaeksekusidapatdilakukansepertipadaGambar 8.20, tetapihasilnyadituliske register temporer. Isi register tersebutselanjutnyaditransferke register permanendalamurutan program yang tepat.
Group 4 PTIK 09 9.1.3 OPERASI DISPATCH Padasaatkeputusan dispatching dibuat, unit dispatch harusmemastikantersedianyasemua resource yang diperlukanuntukeksekusisuatuinstruksi. Misalnya, karenahasilinstruksimungkinharusditulisdalam register temporer, maka register tersebutharuskosong, dandicadangkanuntukdigunakanolehinstruksitersebutsebagaibagiandarioperasi dispatch. Lokasidalam reorder buffer jugaharustersediauntukinstruksitersebut. Padasaatsemua resource yang diperlukantelahditetapkan, termasuk unit eksekusi yang sesuai, makainstruksitersebutdikirim.
Group 4 PTIK 09 9.2 CONTOH UItraSPARC II Desainprosesortelahsangatmeningkatdalamtahun-tahunterakhir. Klasifikasiprosesorsebagai RISC atau CISC murnitidaklagisesuaikarenaprosesor modern performa-tinggi yang berisielemenkeduagayadesaintersebut. Arsitektur SPARC, yang merupakan basis bagiprosesor yang digunakandalam Sun workstation, adalahcontoh yang sangatbaik. Salahsatuimplementasi Sun denganarsitektur SPARC disebutUItraSPARC II.
Group 4 PTIK 09 9.2.1 Arsitektur SPARC SPARC merupakansingkatandari Scalable Processor ARChitecture. Inimerupakanspesifikasiarsitektur set instruksisuatuprosesor, yaitu, spesifikasi set instruksiprosesordanorganisasi register, tanpamemperhatikanbagaimanaimplementasinyapada hardware. Selanjutnya, SPARC merupakan "open architecture," yang berartiperusahaankomputerselain Sun Microsystems dapatmengembangkan hardware merekasendiriuntukmengimplementasikan set instruksi yang sama.
Group 4 PTIK 09 9.2.2 UltraSPARC II Arsitektur SPARC, yang merupakan basis bagiprosesor yang digunakandalam Sun workstation, adalahcontoh yang sangatbaik. Salahsatuimplementasi Sun denganarsitektur SPARC disebutUItraSPARC II. Mulaidenganpenjelasansingkattentangarsitektur SPARC. Untukdeskripsilengkapnya, pembacasebaiknyamelihatpada SPARC Architecture Manual.
Group 4 PTIK 09 Gambar Blok bangunanutamaprosesorUItraSPARC II.
Group 4 PTIK 09 9.2.3 STRUKTUR PIPELINE UltraSPARC II memiliki pipeline eksekusiinstruksisembilan-stage,. Fungsitiap stage diselesaikandalamsatu clock cycle prosesor. Kita akanmemberikanikhtisaroperasi pipeline, kemudianmembahastiap stage secaradetil.stagepertamapada pipeline adalahumumbagisemuainstruksi. Instruksidiambildari cache instruksipada stage pertama (F) dandi-decode sebagiandalam stage kedua (D). Kemudian, pada stage ketiga (G), suatugrup yang berisisampaidenganempatinstruksidipilihuntukeksekusisecaraparalel. Instruksitersebutkemudiandikirimke unit eksekusi integer dan floating-point.
Group 4 PTIK 09 Gambar 8.24 Organisasi pipeline padaprosesorUltraSPARC
Group 4 PTIK 09 Pengambilandan Decode Instruksi PDU mengambilhinggaempatinstruksidari cache instruksi, men-decode-nyasebagian, danmenyimpanhasilnyadalam buffer instruksi, yang dapatmenyimpansampaidengan 12 instruksi. Decoding yang terjadipada stage inimeng-enable PDU untukmenentukanapakahinstruksitersebutadalahinstruksi branch. Jugamendeteksifiturpenting yang dapatdigunakanuntukmempercepatkeputusan yang harusdibuatselanjutnyadalam pipeline tersebut.
Group 4 PTIK 09 Grouping (Pengelompokan) Pada stage ketiga pipeline, stage G, Grouping Logic memilihgrupsampaidenganempatinstruksiuntukdieksekusisecaraparaleldanmengirimkannyake unit eksekusi integer dan floating-point.
Group 4 PTIK 09 9.3 PERTIMBANGAN PERFORMA Kita menegaskanpadaBagian 1.6 bahwawaktueksekusi, T , pada program yang memiliki count instruksidinamik N dinyatakansebagai dimana S adalahjumlah clock cycle rata-rata yang diperlukannyauntukmengambildanmengeksekusisatuinstruksi, dan R adalah clock rate.
Group 4 PTIK 09 9.3.1 JUMLAH PIPELINE STAGE Faktabahwa n-stage pipeline dapatmeningkatkan throughput instruksisebesarfaktor n menunjukkanbahwakitasebaiknyamenggunakansejumlahbesar stage. Akantetapi, denganmeningkatknyajumlah pipeline stage, meningkat pula kemungkinan pipeline di-stall, karenalebihbanyakinstruksi yang dieksekusisecarakonkuren.
Group 4 PTIK 09 Banyakprosesor pipelined menggunakanempathinggaenam stage. Yang lainnyamembagieksekusiinstruksimenjadilangkah yang lebihkecildanmenggunakanlebihbanyak pipeline stage dan clock yang lebihcepat. Misalnya, UltraSPARC II menggunakan 9-stage pipeline dan Pentium Pro dari Intel menggunakan 12-stage pipeline. Prosesor Intel terbaru, Pentium 4, memiliki 20-stage pipeline danmenggunakan clock speed dalamrentang 1.3 hingga 1.5 GHz. Untukoperasicepat, terdapatdua pipeline stage dalamsatu clock cycle.