MATA KULIAH: PIPELINING PERTEMUAN 12

dokumen-dokumen yang mirip
PIPELINE PERANAN MEMORI CACHE

ORGANISASI KOMPUTER MATA KULIAH: Prosesor Superskalar PERTEMUAN 13

ARSITEKTUR DAN ORGANISASI KOMPUTER

Struktur Dasar Komputer

CHAPTER 16 INSTRUCTION-LEVEL PARALLELISM AND SUPERSCALAR PROCESSORS

Hal-hal yang perlu dilakukan CPU adalah : 1. Fetch Instruction = mengambil instruksi 2. Interpret Instruction = Menterjemahkan instruksi 3.

>> CISC BANDING RISC

ORGANISASI KOMPUTER INSTRUKSI MESIN DAN PROGRAM MATA KULIAH:

PRODI PENDIDIKAN TEKNIK INFORMATIKA DAN KOMPUTER JURUSAN PENDIDIKAN TEKNIK ELEKTRO FAKULTAS TEKNIK

Organisasi Komputer II STMIK AUB SURAKARTA

ORGANISASI KOMPUTER MOTOROLA MATA KULIAH:

ORGANISASI KOMPUTER INSTRUKSI MESIN DAN PROGRAM MATA KULIAH:

Organisasi Sistem Komputer

Hanif Fakhrurroja, MT

MATA KULIAH: PENGANTAR ILMU KOMPUTER ALAT PROSES AYU ANGGRIANI H PTIK A 2009 CREATED BY:

Instruction Execution Phases

ORGANISASI KOMPUTER ORGANISASI INPUT/OUTPUT MATA KULIAH:

Pipelining. EdyWin 1

DASKOM & PEMROGRAMAN. Dani Usman

From M.R Zargham s book (Chapter 3.1)

PERTEMUAN. 1. Organisasi Processor. 2. Organisasi Register

Meningkatkan Kinerja dengan Pipelining

Dua komponen yang menjalankan proses dalam komputer, yaitu : Central Processing Unit (CPU) Memory Kedua komponen tersebut terletak pada Motherboard.

Cara Kerja Processor. Primo riveral. Abstrak. Pendahuluan.

ORGANISASI KOMPUTER SISTEM MEMORI MATA KULIAH: MEMORI CHACE, MEMORI VIRTUAL, PENYIMPANAN SEKUNDER

PAPER PIPELINE INSTRUKSI

STRUKTUR CPU. Arsitektur Komputer

Pertemuan ke 6 Set Instruksi. Computer Organization Dosen : Eko Budi Setiawan

Diktat Kuliah - Pipeline

SATUAN ACARA PERKULIAHAN

SOAL UAS SISTEM KOMPUTER Kelas XI RPL & TKJ

Pertemuan Ke-12 RISC dan CISC

Organisasi & Arsitektur Komputer

Struktur dan Fungsi Processor

Abstrak. Pendahuluan

TEKNIK PIPELINE & SUPERSCALAR. Team Dosen Telkom University 2016

BAB I PENDAHULUAN 1.1 LATAR BELAKANG

Teknologi Scalar untuk meningkatkan Kinerja Prosesor

CENTRAL PROCESSING UNIT CPU

10. Konsep Operasional Prosessor dan Memori

Unit Kendali (2) CONTROL UNIT. RegDst Branch. MemRead. MemToReg. Instruction (31-26) ALUOp MemWrite. ALUSrc. RegWrite

Arsitektur Set Instruksi. Abdul Syukur

Arsitektur dan Organisasi Komputer. Set instruksi dan Pengalamatan

Pipeline pada x86. Sebagai contoh : Instruksi 1 : ADD AX,AX Instruksi 2 : ADD BX,CX

MAKALAH MODE DAN FORMAT PENGALAMATAN SET INSTRUKSI. Nama : Annisa Christyanti Kelas : XI TJA 3 NIS :

SATUAN ACARA PERKULIAHAN MATA KULIAH ORGANISASI DAN ARSITEKTUR KOMPUTER KODE MK: TE055217

ORGANISASI KOMPUTER SISTEM BUS MATA KULIAH:

ARITMATIKA PRODI PENDIDIKAN TEKNIK INFORMATIKA DAN KOMPUTER JURUSAN PENDIDIKAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS NEGERI MAKASSAR 2011

PENGENALAN ARSITEKTUR KOMPUTER

Organisasi Komputer II STMIK-AUB SURAKARTA

Tahun Akademik 2015/2016 Semester I DIG1B3 Konfigurasi Perangkat Keras Komputer

Pertemuan 2 Organisasi Komputer II. Struktur & Fungsi CPU (I)

SET INSTRUKSI. Organisasi dan Arsitektur Komputer

Karakteristik Instruksi Mesin

2009/2010 Course Plan. SK-208 Arsitektur Komputer Ir. Syahrul, MT.

ORGANISASI KOMPUTER MATA KULIAH: SISTEM EMBEDDED PERTEMUAN 14

TUGAS MAKALAH STRUKTUR dan FUNGSI CPU GURU PEMBIMBING: IVAN ARIVANDI. Oleh: NOVY PUSPITA WARDANY

Arsitektur RISC merupakan kemajuan yang sangat dramatis dalam frase sejarah arsitektur CPU. Dan merupakan tantangan bagi arsitektur konvensional

Pertemuan Ke-9 PIPELINING

Struktur CPU 3/23/2011

SATUAN ACARA PERKULIAHAN MATA KULIAH : Arsitektur Komputer Strata / Jurusan : Diploma Tiga / Teknik Komputer

ORGANISASI KOMPUTER DASAR

SATUAN ACARA PENGAJARAN

Table Pipelining and replication in parallel computer architecture

ARSITEKTUR KOMPUTER SET INSTRUKSI

7.1 Pendahuluan. 7.2 Central Processing Unit (CPU)

RISC,CISC, DAN PROSESOR SUPERSCALAR

CPU PERKEMBANGAN ARSITEKTUR CPU. ( Central Processing Unit )

SATUAN ACARA PERKULIAHAN MATA KULIAH : Pengantar Organisasi dan Arsitektur Komputer Strata / Jurusan : Strata Satu / Sistem Informasi

CENTRAL PROCESSING UNIT (CPU) Sebuah mesin tipe von neumann

PROSESOR: CONTROL DAN DATAPATH. Oky Dwi Nurhayati, ST, MT

MEMORI VIRTUAL. Kelompok Franky Sadar Baskoro S. Yemima Aprilia

Eksekusi instruksi Tipe R, LW-SW, Beq, Jump, dan Model Pengalamatan (Pertemuan ke-24)

Eksekusi instruksi Tipe R, LW-SW, Beq, dan Jump (Pertemuan ke-24)

Hanif Fakhrurroja, MT

GARIS-GARIS BESAR PROGRAM PENGAJARAN PROGRAM STUDI : S1 SISTEM KOMPUTER Semester : 2

PROGRAM STUDI S1 SISTEM KOMPUTER UNIVERSITAS DIPONEGORO. Oky Dwi Nurhayati, ST, MT

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktifitas Pembelajaran

Operasi Unit Kontrol. Arsitektur Komputer II. STMIK AUB Surakarta

STRUKTUR FUNGSI CPU. Menjelaskan tentang komponen utama CPU. Membahas struktur dan fungsi internal prosesor, organisasi ALU, control unit dan register

IKI20210 Pengantar Organisasi Komputer Kuliah Minggu ke-3: Bahasa Rakitan AVR

Mikrokontroller Berbasiskan RISC 8 bits

3. ALU. Tugas utama adalah melakukan semua perhitungan aritmatika dan melakukan keputusan dari suatu operasi logika.

JAWABAN ORGANISASI KOMPUTER 7 Agustus 2004

Organisasi Komputer. Candra Ahmadi, MT

ORGANISASI KOMPUTER SISTEM MEMORI MATA KULIAH:

Struktur dan Fungsi CPU. Ptputraastawa.wordpress.com

Struktur Fungsi CPU. Mata Kuliah Arsitektur Komputer Program Studi Sistem Informasi 2013/2014 STMIK Dumai -- Materi 03 --

Disusun Oleh: Agenda. Terminologi Klasifikasi Flynn Komputer MIMD. Time Sharing Kesimpulan

Perangkat dan format Instruksi, Immediate, Direct, & Indirect Addressing

Struktur Sistem Komputer

Organisasi & Arsitektur. Komputer. Org & Ars komp Klasifikasi Ars Komp Repr Data

William Stallings Computer Organization and Architecture

Pertemuan ke - 5 Struktur CPU

Arsitektur Dasar Mikroprosesor. Mikroprosesor 80186/80188

Kumpulan instruksi lengkap yang dimengerti

PENGANTAR ORGANISASI DAN ARSITEKTUR KOMPUTER CENTRAL PROCESSING UNIT

MATA KULIAH : LOGIKA DAN ALGORITMA

Central Processing Unit

1 Tinjau Ulang Sistem Komputer

Transkripsi:

MATA KULIAH: 1 PERTEMUAN 12 PIPELINING PRODI PENDIDIKAN TEKNIK INFORMATIKA DAN KOMPUTER JURUSAN PENDIDIKAN TEKNIK ELEKTRO FAKULTAS TEKNIK UNIVERSITAS NEGERI MAKASSAR 2011 BY AYU ANGGRIANI H

BY AYU ANGGRIANI H CREATED BY: AYU ANGGRIANI H 092904010 PTIK A 2009 2

PIPELINING A. Konsep Dasar Peranan memori cache Performa pipeline B. Data Hazard Operand Forwarding Menangani data hazard dalam software Efek samping C. Instruction Hazard Unconditional Branch Queue dan Prefetching Instruksi Conditional Branch dan Branch Prediction Delayed Branch Prediksi Branch Prediksi Branch Dinamik 3

D. Pengaruh Pada Set Instruksi Mode Pengelamatan Condition Code 4

A. Konsep Dasar Kecepatan eksekusi program dipengaruhi oleh banyak factor. Suatu cara untuk meningkatkan performa adalah dengan menggunakan teknologi sirkuit yang lebihcepat untuk membangun prosesor dan memori utama. Kemingkinan lain adalah dengan mengatur hardware sehingga lebih dari satu operasi dapat dilakukan pada saat yang sama. Dengan cara ini, jumlah operasi yang dilakukan perdetik ditingkatkan sekalipun elapsed time yang diperlukan untuk melakukan tiap satu operasi tidak di ubah. 5

Pipelining merupakan cara efektif untuk mengatur aktifitas konkuren dalam system computer. Ide dasarnya sangat sederhana. Hal ini sering ditemui di dalam pabrik, dimana pipelining umumnya dikenal sebagai operasi assembly-line. Tidak diragukan lagi bahwa pembaca telah mengenal assembly line yang digunakan dalam pembuatan mobil 6

a. Peranan Memori Cache Yaitu tiap stage dalam pipeline diharapkan menyelesaikan operasinya dalam suatu clock cycle. Karenanya, periode clock harus cukup lama untuk menyelesaikannya tugas yang sedang dilakukaan pada tiap stage. Jika unit yang berbeda memerlukan jumlah waktu yang berbeda, maka periode clock harus memungkinkan tugas terlama dapat diselesaikan. 7

Suatu unit yang menyelesaikan tugasnya lebih awal akan idle selama sisa periode clock. Karenanya, pipeline paling efektif dalam meningkatkan performa jika tugas yang sedang dilakukan dalam stage yan ber bedaa memerlukan jumlah waktu yang sama. 8

b. Performa Pipeline Prosesor pipeline menyesaikan pengolahan satu instruksi pada tiap clock cycle,yang berarti kecepatan pegolahan instruksi tersabut empat kali lebih besar dari oparesi berurutan. Peningkatan potensi dalam performa yang dihasilkan dari pipelining proporsional dengan jumlah pipeline stage. Akan tetapi, peningkatan ini hanya akan dicapai jika operasi pipelined dapat di pertahankan tanpa interupsi melalui eksekusi program. 9

Sangat penting untuk memahami bahwa pipelining tidak memyebabkan instruksi individu dieksekusi lebih cepat, sebaliknya pipeling meningkatkan throughput, dimana throughput diukur dari kecepatan penyelesaian eksekusi instruksi. 10

B. Data Hazard Data hazard adalah situasi dimana pipeline di-stall karena data yang akan dikenai opersi di tunda dengan beberapa alasan, seperti yang diilustrasikan. kita sekarang akan menganalisa persoalan ketersediaan data dalam beberapa detil. Clock cycle 1 2 3 4 5 6 7 8 9 11

Contoh ini mengilustrasikan batasan dasar yang harus dilakukan untuk menjamin hasil yang tepat. Pada saat dua operasi saling tergantung satu sama lain, maka keduanya harus dilakukan secara berurutan dalam urutan yang benar. Kondisi ini jelas memiliki konsekuensi yang mendalam. Memahami implikasinya adalah kunci untuk memahami berbagai alternative desaian dan pertukaran yang dihadapi dalam computer pipelined. 12

a. Operand Forwarding Data hazard yang baru saja di deskripsikan muncul karena satu instruksi. instruksi I2 menunggu data dituliskan dalam register file. Akan tetapi, data tersebut tersedia pada output ALU pada saat Execute stage menyelesaikan langkah E1 di-forwading stage menyelesaikan langkah E1 karenanya jeda dapat dikurangi,atau mungkin dihilangkan, jika kita mengatur agar hasil instruksi I1 di forward langsung untuk digunakan pada langkah E2. 13

NOP (No operation ), sebagai berikut : I1 : Mul R2,R3,R4 NOP NOP I2: Add R5,R4,R6 14

b. Menangani Data Hazard dalam Software Jika tanggung jawab untuk mendeteksi dependency tersebut sepenuhnya diserahkan pada software,maka compiler harus menyisipkan instruksi NOP untuk mendapatkan hasil yang tepat,kemungkinan ini mengilustrasikan link tertutup antara compiler dan hardwere. 15

Penyerahan tugas seperti penyisipan instruksi NOP ke compiler menghasilkan hardwere yang lebih sederhana.dengan menyadari kebutuhan terhadap jeda,maka compiler dapat mencoba menyusun ulang instruksi untuk melakukan tugas yang berguna dalam slot NOP menghasilkan ukuran kode yang lebih besar. 16

b. Efek Samping Data depedenci yang ada pada contoh sebelumnya eksplisitan dan mudah dideteksi karena register yang terlibat dinamai sebagai destinasi dalam instruksi I1 dan source dalam I2 kadang kadang suatu instruksi mengubah isi register selain yang disebut sebagai destinasi. Contohnya adalah instruksi yang menggunakan mode pengalamatan autoincrement autodecrement. 17

Adapun efek samping lain yang melibatkan condition code flag, adalah yang digunakan oleh instruksi seperti conditional branch dan add-with carry. Misalkan register R1 dan R2 menyimpan bilangan integer double precision yang akan kita tambahkan ke bilangan double precision yang lain dalam register R3 dan R4 18

C. INSTRUCTION HAZARD Tujuan unit pengambilan instruksi fetch adalah untuk menyediakan arus instruksi tetap bagi unit eksekusi.kapanpun arus ini diinterupsi,maka pipeline stall, Sekarang kita akan menganalisa efek instruksi branch dan teknik yang dapat digunakan untuk mengurangi pengaruhnya. Kita mulai dengan unconditional branch. 19

A. Unconditional Branch Pengurangan Bench penalty dilakukan dengan, menghitung alamat branch lebih awal dalam pipeline. Biasanya unit pengambilan instruksi memiliki dedicated hardwere untuk mengidentifikasi instruksi brench dan menghitung alamt branch target secepat mungkin setelah suatu instruksi diambil. 20

b. Queue dan Prefetching Instruksi Cache miss atau instruksi branch men-stall pipeline selama satu clock cycle atau lebih untuk mengurangi efek interupsi tersebut, bayak processor menggunakan unit pengambilan canggih yang dapat mengambil instruksi sebelum diperlukan dan meletakkannya dalam Queue. 21

c. Conditional Branch dan Branch Prediction Instruksi conditional branch menimbulkan hazard tambahan yabg disebabkan oleh ketergantungan kondisi branch pada hasil instruksi sebelumnya. Keputusan untuk branch tidak dapat dibuat hingga eksekusi instruksi tersebut telah selesai. 22

d. Delayed Branch Keefektifan pendekatan delayed branch tergantung pada seberapa sering pengaturan ulang instruksi dimungkinkan. Data eksperiment yang dikumpulkan dari banyak program mengindikasikan bahwa teknik kompilasi yang rumit dapat menggunakan satu branch delay slot pada maksimal 85 persen kasus. Untuk prosessor dengan dua branch delay slot, compiler mencoba menemukan dua instruksi sebelum instruksi branch yang dapat dipindahkannya ke delay slot tanpa menimbulkan eror logika. 23

e. Prediksi Branch Jika keluaran branch random, maka setengah branch akan dilakukan. Jadi pendekatan sederhana dengan mengasumsikan bahwa branch branch tidak akan dilakukan akan menghemat 50 persen waktu yang dibuang untuk melakukan conditional branch. Akan tetapi, performa lebih baik dapat dicapai jika kita mengatur beberapa instruksi branch yang akan diprediksikan untuk dilakukan dan yang lain untuk tidak dilakukan, tergantung pada kelakuan program yang diharapkan. 24

f. Prediksi Branch Dinamik Tujuan algoritma prediksi branch adalah untuk mengurangi kemungkinan membuat keputusan yang salah, untuk menghindari mengambil instruksi yang pada akhirnya harus dibuang. Dalam skema predisk branch, hardware prosessor memperkirakan kemiripan suatu branch yang dilakukan dengan mencatat keputusan branchsetiap kali instruksi tersebut dieksekusi. 25

D. PENGARUH PADA SET INSTRUKSI Kita telah melihat bahwa beberapa instruksi lebih sesuai untuk eksekusi pipelined dari pada yang lain. Misalnya, efek samping instruksi dapat menyebabkan data dependency yang tidak diinginkan. Dalam bagian ini, kita menganalisis hubungan antara fitur eksekusi pipelined dan instruksi mesin. Kita membahas dua aspek utama instruksi mesin-mode pengalaman dan conditioan code flag. 26

a. Mode Pengelamatan Dalam memilih mode pengelamatan untuk diimplementasikan dalam prosessor pipelined, kita harus memperhatikan efek tiap mode pengelamatan pada aliran instruksi dalam pipelined. Dua pertimbangan penting yang berkaitan dengan hal ini adalah efek samping mode seperti autoincrement dan autodecrement dan tingkat dimana mode pengelamatan complex menyebabkan pipeline menjadi stall. Factor penting lain adalah apakah suatu mode akan lebih dipilih oleh suatu compiler. 27

b. Condition Code condition code flag disimpan dalam processor status register. Flag tersebut diset atau dikosongkan oleh banyak intruksi,sehingga dapat diuji oleh instruksi conditional branch yang berurutan untuk mengubah aliran eksekusi program. Optimizing compiler untuk prosesor pipelined mencoba menyusun ulang instruksi untuk menghindari stalling pipeline pada saat terjadi branch atau data dependency antara instruksi yang berurutan. 28

SEMOGA BERMANFAAT 29