SlideShare una empresa de Scribd logo
1 de 29
ORGANISASI KOMPUTER
                          PIPELINING




                      JUMIATI   092901035




UNIVERSITAS NEGERI MAKASSAR
                                            1
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

                                                  2
D. Pengaruh Pada Set Instruksi
    Mode Pengelamatan
    Condition Code




                                 3
A. Konsep Dasar

 Pipelined adalah suatu cara yang digunakan untuk melakukan
 sejumlah kerja secara bersama tetapi dalam tahap yang
 berbeda yang dialirkan secara kontinou pada unit pemrosesor.
 Dengan cara ini, maka unit pemrosesan selalu bekerja.




                                                                4
   Ide pipelining dapat digunakan pada computer.
    Prosesor    mengeksekusi   suatu   program    dengan
    mengambil dan mengeksekusi instruksi, satu demi satu.
   Misalkan Fi dan Ei mengacu ke langkah pengambilan
    dan eksekusi untuk instruksi Ii. Eksekusi program
    terdiri dari rangkaian langkah pengambilan dan
    eksekusi.



                                                            5
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.

                                                            6
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.




                                                             7
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.



                                                             8
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.



                                          9
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

                                                             10
   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.

                                                             11
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.



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




                                           13
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.




                                                                14
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.




                                                       15
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.




                                                               16
   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




                                                                 17
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.




                                                               18
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.




                                                          19
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.




                                                               20
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.




                                                              21
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.




                                                               22
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.



                                                              23
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.



                                                                      24
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.




                                                               25
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 .




                                                                26
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.




                                                                 27
D. KESIMPULAN

 Pipelined adalah suatu cara yang digunakan untuk
 melakukan sejumlah kerja secara bersama tetapi dalam
 tahap yang berbeda yang dialirkan secara kontinou
 pada unit pemrosesor. Dengan cara ini, maka unit
 pemrosesan selalu bekerja.




                                                        28
29

Más contenido relacionado

La actualidad más candente

Ppt sinkronisasi dalam Sistem Operasi
Ppt sinkronisasi dalam Sistem OperasiPpt sinkronisasi dalam Sistem Operasi
Ppt sinkronisasi dalam Sistem Operasijahrataqim
 
Ch 04 (Siklus Instruksi dan Interrupt)
Ch 04 (Siklus Instruksi dan Interrupt)Ch 04 (Siklus Instruksi dan Interrupt)
Ch 04 (Siklus Instruksi dan Interrupt)Tri Sugihartono
 
Proposisi Logika Informatika
Proposisi Logika InformatikaProposisi Logika Informatika
Proposisi Logika InformatikaDeviGayatri
 
Makalah Peranan Semaphore Sistem Operasi - Universitas Widyatama
Makalah Peranan Semaphore Sistem Operasi - Universitas WidyatamaMakalah Peranan Semaphore Sistem Operasi - Universitas Widyatama
Makalah Peranan Semaphore Sistem Operasi - Universitas WidyatamaDEDE IRYAWAN
 
Pertemuan 2 - Organisasi dan Arsitektur Komputer.ppt
Pertemuan 2 - Organisasi dan Arsitektur Komputer.pptPertemuan 2 - Organisasi dan Arsitektur Komputer.ppt
Pertemuan 2 - Organisasi dan Arsitektur Komputer.pptagro6
 
Komputasi Paralel dan terdistribusi (Pengantar sistem terdistribusi)
Komputasi Paralel dan terdistribusi (Pengantar sistem terdistribusi)Komputasi Paralel dan terdistribusi (Pengantar sistem terdistribusi)
Komputasi Paralel dan terdistribusi (Pengantar sistem terdistribusi)Indah Setyorini
 
Monitoring Protokol ICMP (ping) dengan Wireshark
Monitoring Protokol ICMP (ping) dengan WiresharkMonitoring Protokol ICMP (ping) dengan Wireshark
Monitoring Protokol ICMP (ping) dengan WiresharkHanif Yogatama
 
Transport Layer: Protocol UDP dan Protocol TCP
Transport Layer: Protocol UDP dan Protocol TCPTransport Layer: Protocol UDP dan Protocol TCP
Transport Layer: Protocol UDP dan Protocol TCPMateri Kuliah Online
 
Modul 3 pencarian heuristik
Modul 3   pencarian heuristikModul 3   pencarian heuristik
Modul 3 pencarian heuristikahmad haidaroh
 
Organisasi+dan+arsitektur+komputer
Organisasi+dan+arsitektur+komputerOrganisasi+dan+arsitektur+komputer
Organisasi+dan+arsitektur+komputerEkha Noviyanti
 
Makalah Fuzzy Logic Dan Penerapannya
Makalah Fuzzy Logic Dan PenerapannyaMakalah Fuzzy Logic Dan Penerapannya
Makalah Fuzzy Logic Dan Penerapannyaradar radius
 
INTERAKSI MANUSIA DAN KOMPUTER
INTERAKSI MANUSIA DAN KOMPUTERINTERAKSI MANUSIA DAN KOMPUTER
INTERAKSI MANUSIA DAN KOMPUTERAndhi Pratama
 
Pengertian dan Representasi Graph
Pengertian dan Representasi GraphPengertian dan Representasi Graph
Pengertian dan Representasi GraphZaldy Eka Putra
 

La actualidad más candente (20)

tugas kelompok
tugas kelompoktugas kelompok
tugas kelompok
 
Algoritma penjadwalan proses
Algoritma penjadwalan prosesAlgoritma penjadwalan proses
Algoritma penjadwalan proses
 
Modul io
Modul ioModul io
Modul io
 
Ppt sinkronisasi dalam Sistem Operasi
Ppt sinkronisasi dalam Sistem OperasiPpt sinkronisasi dalam Sistem Operasi
Ppt sinkronisasi dalam Sistem Operasi
 
Ch 04 (Siklus Instruksi dan Interrupt)
Ch 04 (Siklus Instruksi dan Interrupt)Ch 04 (Siklus Instruksi dan Interrupt)
Ch 04 (Siklus Instruksi dan Interrupt)
 
Proposisi Logika Informatika
Proposisi Logika InformatikaProposisi Logika Informatika
Proposisi Logika Informatika
 
Komponen sistem komputer ppt
Komponen sistem komputer pptKomponen sistem komputer ppt
Komponen sistem komputer ppt
 
Makalah Peranan Semaphore Sistem Operasi - Universitas Widyatama
Makalah Peranan Semaphore Sistem Operasi - Universitas WidyatamaMakalah Peranan Semaphore Sistem Operasi - Universitas Widyatama
Makalah Peranan Semaphore Sistem Operasi - Universitas Widyatama
 
Sistem bus komputer
Sistem bus komputerSistem bus komputer
Sistem bus komputer
 
Pertemuan 2 - Organisasi dan Arsitektur Komputer.ppt
Pertemuan 2 - Organisasi dan Arsitektur Komputer.pptPertemuan 2 - Organisasi dan Arsitektur Komputer.ppt
Pertemuan 2 - Organisasi dan Arsitektur Komputer.ppt
 
Komputasi Paralel dan terdistribusi (Pengantar sistem terdistribusi)
Komputasi Paralel dan terdistribusi (Pengantar sistem terdistribusi)Komputasi Paralel dan terdistribusi (Pengantar sistem terdistribusi)
Komputasi Paralel dan terdistribusi (Pengantar sistem terdistribusi)
 
Monitoring Protokol ICMP (ping) dengan Wireshark
Monitoring Protokol ICMP (ping) dengan WiresharkMonitoring Protokol ICMP (ping) dengan Wireshark
Monitoring Protokol ICMP (ping) dengan Wireshark
 
Transport Layer: Protocol UDP dan Protocol TCP
Transport Layer: Protocol UDP dan Protocol TCPTransport Layer: Protocol UDP dan Protocol TCP
Transport Layer: Protocol UDP dan Protocol TCP
 
Modul 3 pencarian heuristik
Modul 3   pencarian heuristikModul 3   pencarian heuristik
Modul 3 pencarian heuristik
 
Organisasi+dan+arsitektur+komputer
Organisasi+dan+arsitektur+komputerOrganisasi+dan+arsitektur+komputer
Organisasi+dan+arsitektur+komputer
 
Makalah Fuzzy Logic Dan Penerapannya
Makalah Fuzzy Logic Dan PenerapannyaMakalah Fuzzy Logic Dan Penerapannya
Makalah Fuzzy Logic Dan Penerapannya
 
INTERAKSI MANUSIA DAN KOMPUTER
INTERAKSI MANUSIA DAN KOMPUTERINTERAKSI MANUSIA DAN KOMPUTER
INTERAKSI MANUSIA DAN KOMPUTER
 
Jenis dan proses interupsi
Jenis dan proses interupsiJenis dan proses interupsi
Jenis dan proses interupsi
 
Pengertian dan Representasi Graph
Pengertian dan Representasi GraphPengertian dan Representasi Graph
Pengertian dan Representasi Graph
 
Bab 5 komputer sederhana sap-1
Bab 5   komputer sederhana sap-1Bab 5   komputer sederhana sap-1
Bab 5 komputer sederhana sap-1
 

Similar a Pertemuan 9 pipelining

Pertemuan 12-pipelining1
Pertemuan 12-pipelining1Pertemuan 12-pipelining1
Pertemuan 12-pipelining1France Rhezhek
 
Pertemuan 13-prosessor-super-skalar1
Pertemuan 13-prosessor-super-skalar1Pertemuan 13-prosessor-super-skalar1
Pertemuan 13-prosessor-super-skalar1France Rhezhek
 
Tipe dan format instruksi 1
Tipe dan format instruksi 1Tipe dan format instruksi 1
Tipe dan format instruksi 1Rosyid Ridlo
 
Arsitektur komputer pertemuan 9
Arsitektur komputer pertemuan 9Arsitektur komputer pertemuan 9
Arsitektur komputer pertemuan 9Afrina Ramadhani
 
Pertemuan 3-instruksi-mesin-dan-program-bagian-23
Pertemuan 3-instruksi-mesin-dan-program-bagian-23Pertemuan 3-instruksi-mesin-dan-program-bagian-23
Pertemuan 3-instruksi-mesin-dan-program-bagian-23France Rhezhek
 
Pertemuan 3. Struktur CPU.ppt
Pertemuan 3. Struktur CPU.pptPertemuan 3. Struktur CPU.ppt
Pertemuan 3. Struktur CPU.pptDoniOktaviana2
 
Arsitektur komputer pertemuan 10
Arsitektur komputer pertemuan 10Arsitektur komputer pertemuan 10
Arsitektur komputer pertemuan 10Afrina Ramadhani
 
Pertemuan 8 unit pengolahan dasar
Pertemuan 8 unit pengolahan dasarPertemuan 8 unit pengolahan dasar
Pertemuan 8 unit pengolahan dasarjumiathyasiz
 
Level 1 module 6 wan - updateby mdv1.3
Level 1 module 6   wan - updateby mdv1.3Level 1 module 6   wan - updateby mdv1.3
Level 1 module 6 wan - updateby mdv1.3Yanna Muliana
 
Struktur dan Fungsi CPU
Struktur dan Fungsi CPUStruktur dan Fungsi CPU
Struktur dan Fungsi CPURiky L Hamzah
 
Pertemuan 14-sistem-embedded
Pertemuan 14-sistem-embeddedPertemuan 14-sistem-embedded
Pertemuan 14-sistem-embeddedFrance Rhezhek
 
Pemrosesan paralel untuk kompresi data
Pemrosesan paralel untuk kompresi dataPemrosesan paralel untuk kompresi data
Pemrosesan paralel untuk kompresi dataEmus Kelen
 
7.1 lab-instalasi dan konfigurasi ntp
7.1 lab-instalasi dan konfigurasi ntp7.1 lab-instalasi dan konfigurasi ntp
7.1 lab-instalasi dan konfigurasi ntpwayan abyong
 
Rbj 3.15 description tingkat perusahaan
Rbj 3.15 description tingkat perusahaanRbj 3.15 description tingkat perusahaan
Rbj 3.15 description tingkat perusahaanAli Must Can
 

Similar a Pertemuan 9 pipelining (20)

Pertemuan 12-pipelining1
Pertemuan 12-pipelining1Pertemuan 12-pipelining1
Pertemuan 12-pipelining1
 
Pert.11 pipelining
Pert.11 pipeliningPert.11 pipelining
Pert.11 pipelining
 
Pertemuan 13-prosessor-super-skalar1
Pertemuan 13-prosessor-super-skalar1Pertemuan 13-prosessor-super-skalar1
Pertemuan 13-prosessor-super-skalar1
 
Pert.12 pipelining lanjutan
Pert.12 pipelining lanjutanPert.12 pipelining lanjutan
Pert.12 pipelining lanjutan
 
Tipe dan format instruksi 1
Tipe dan format instruksi 1Tipe dan format instruksi 1
Tipe dan format instruksi 1
 
Arsitektur komputer pertemuan 9
Arsitektur komputer pertemuan 9Arsitektur komputer pertemuan 9
Arsitektur komputer pertemuan 9
 
Pertemuan 3-instruksi-mesin-dan-program-bagian-23
Pertemuan 3-instruksi-mesin-dan-program-bagian-23Pertemuan 3-instruksi-mesin-dan-program-bagian-23
Pertemuan 3-instruksi-mesin-dan-program-bagian-23
 
Pertemuan 3. Struktur CPU.ppt
Pertemuan 3. Struktur CPU.pptPertemuan 3. Struktur CPU.ppt
Pertemuan 3. Struktur CPU.ppt
 
Arsitektur komputer pertemuan 10
Arsitektur komputer pertemuan 10Arsitektur komputer pertemuan 10
Arsitektur komputer pertemuan 10
 
Pertemuan 8 unit pengolahan dasar
Pertemuan 8 unit pengolahan dasarPertemuan 8 unit pengolahan dasar
Pertemuan 8 unit pengolahan dasar
 
Minggu ketiga
Minggu ketigaMinggu ketiga
Minggu ketiga
 
Papeline
PapelinePapeline
Papeline
 
Teknik Optimasi - P8
Teknik Optimasi - P8Teknik Optimasi - P8
Teknik Optimasi - P8
 
Level 1 module 6 wan - updateby mdv1.3
Level 1 module 6   wan - updateby mdv1.3Level 1 module 6   wan - updateby mdv1.3
Level 1 module 6 wan - updateby mdv1.3
 
Pertemuan 13 orkom
Pertemuan 13 orkomPertemuan 13 orkom
Pertemuan 13 orkom
 
Struktur dan Fungsi CPU
Struktur dan Fungsi CPUStruktur dan Fungsi CPU
Struktur dan Fungsi CPU
 
Pertemuan 14-sistem-embedded
Pertemuan 14-sistem-embeddedPertemuan 14-sistem-embedded
Pertemuan 14-sistem-embedded
 
Pemrosesan paralel untuk kompresi data
Pemrosesan paralel untuk kompresi dataPemrosesan paralel untuk kompresi data
Pemrosesan paralel untuk kompresi data
 
7.1 lab-instalasi dan konfigurasi ntp
7.1 lab-instalasi dan konfigurasi ntp7.1 lab-instalasi dan konfigurasi ntp
7.1 lab-instalasi dan konfigurasi ntp
 
Rbj 3.15 description tingkat perusahaan
Rbj 3.15 description tingkat perusahaanRbj 3.15 description tingkat perusahaan
Rbj 3.15 description tingkat perusahaan
 

Más de jumiathyasiz

Pertemuan 16 ipv4 & ipv6
Pertemuan 16 ipv4 & ipv6Pertemuan 16 ipv4 & ipv6
Pertemuan 16 ipv4 & ipv6jumiathyasiz
 
Pertemuan 15 ancaman sistem keamanan komputer
Pertemuan 15 ancaman sistem keamanan komputerPertemuan 15 ancaman sistem keamanan komputer
Pertemuan 15 ancaman sistem keamanan komputerjumiathyasiz
 
Pertemuan 14 cisco
Pertemuan 14 ciscoPertemuan 14 cisco
Pertemuan 14 ciscojumiathyasiz
 
Pertemuan 13 penanganan masalah jaringan
Pertemuan 13 penanganan masalah jaringanPertemuan 13 penanganan masalah jaringan
Pertemuan 13 penanganan masalah jaringanjumiathyasiz
 
Pertemuan 12 perawatan & pemeliharaan jaringan
Pertemuan 12 perawatan & pemeliharaan jaringanPertemuan 12 perawatan & pemeliharaan jaringan
Pertemuan 12 perawatan & pemeliharaan jaringanjumiathyasiz
 
Pertemuan 11 keamanan teknologi informasi
Pertemuan 11 keamanan teknologi informasiPertemuan 11 keamanan teknologi informasi
Pertemuan 11 keamanan teknologi informasijumiathyasiz
 
Pertemuan 10 keamanan jaringan dgn firewall
Pertemuan 10 keamanan jaringan dgn firewallPertemuan 10 keamanan jaringan dgn firewall
Pertemuan 10 keamanan jaringan dgn firewalljumiathyasiz
 
Pertemuan 9 keamanan jaringan
Pertemuan 9 keamanan jaringanPertemuan 9 keamanan jaringan
Pertemuan 9 keamanan jaringanjumiathyasiz
 
Pertemuan 8 mail server
Pertemuan 8 mail serverPertemuan 8 mail server
Pertemuan 8 mail serverjumiathyasiz
 
Pertemuan 6 domain name server
Pertemuan 6 domain name serverPertemuan 6 domain name server
Pertemuan 6 domain name serverjumiathyasiz
 
Pertemuan 4 jaringan nirkabel & serat optik
Pertemuan 4 jaringan nirkabel & serat optikPertemuan 4 jaringan nirkabel & serat optik
Pertemuan 4 jaringan nirkabel & serat optikjumiathyasiz
 
Pertemuan 3 wide are network
Pertemuan 3 wide are networkPertemuan 3 wide are network
Pertemuan 3 wide are networkjumiathyasiz
 
Pertemuan 2 instalasi jaringan
Pertemuan 2 instalasi jaringanPertemuan 2 instalasi jaringan
Pertemuan 2 instalasi jaringanjumiathyasiz
 
Pertemuan 1 jaringan komputer
Pertemuan 1 jaringan komputerPertemuan 1 jaringan komputer
Pertemuan 1 jaringan komputerjumiathyasiz
 
Pertemuan 13 famili power pc
Pertemuan 13 famili power pcPertemuan 13 famili power pc
Pertemuan 13 famili power pcjumiathyasiz
 
Pertemuan 12 famili arm
Pertemuan 12 famili armPertemuan 12 famili arm
Pertemuan 12 famili armjumiathyasiz
 
Pertemuan 11 periferal komputer
Pertemuan 11 periferal komputerPertemuan 11 periferal komputer
Pertemuan 11 periferal komputerjumiathyasiz
 
Pertemuan 7 sistem memory
Pertemuan 7 sistem memoryPertemuan 7 sistem memory
Pertemuan 7 sistem memoryjumiathyasiz
 

Más de jumiathyasiz (20)

Pertemuan 16 ipv4 & ipv6
Pertemuan 16 ipv4 & ipv6Pertemuan 16 ipv4 & ipv6
Pertemuan 16 ipv4 & ipv6
 
Pertemuan 15 ancaman sistem keamanan komputer
Pertemuan 15 ancaman sistem keamanan komputerPertemuan 15 ancaman sistem keamanan komputer
Pertemuan 15 ancaman sistem keamanan komputer
 
Pertemuan 14 cisco
Pertemuan 14 ciscoPertemuan 14 cisco
Pertemuan 14 cisco
 
Pertemuan 13 penanganan masalah jaringan
Pertemuan 13 penanganan masalah jaringanPertemuan 13 penanganan masalah jaringan
Pertemuan 13 penanganan masalah jaringan
 
Pertemuan 12 perawatan & pemeliharaan jaringan
Pertemuan 12 perawatan & pemeliharaan jaringanPertemuan 12 perawatan & pemeliharaan jaringan
Pertemuan 12 perawatan & pemeliharaan jaringan
 
Pertemuan 11 keamanan teknologi informasi
Pertemuan 11 keamanan teknologi informasiPertemuan 11 keamanan teknologi informasi
Pertemuan 11 keamanan teknologi informasi
 
Pertemuan 10 keamanan jaringan dgn firewall
Pertemuan 10 keamanan jaringan dgn firewallPertemuan 10 keamanan jaringan dgn firewall
Pertemuan 10 keamanan jaringan dgn firewall
 
Pertemuan 9 keamanan jaringan
Pertemuan 9 keamanan jaringanPertemuan 9 keamanan jaringan
Pertemuan 9 keamanan jaringan
 
Pertemuan 8 mail server
Pertemuan 8 mail serverPertemuan 8 mail server
Pertemuan 8 mail server
 
Pertemuan 7 dhcp
Pertemuan 7 dhcpPertemuan 7 dhcp
Pertemuan 7 dhcp
 
Pertemuan 6 domain name server
Pertemuan 6 domain name serverPertemuan 6 domain name server
Pertemuan 6 domain name server
 
Pertemuan 5 tcp
Pertemuan 5 tcpPertemuan 5 tcp
Pertemuan 5 tcp
 
Pertemuan 4 jaringan nirkabel & serat optik
Pertemuan 4 jaringan nirkabel & serat optikPertemuan 4 jaringan nirkabel & serat optik
Pertemuan 4 jaringan nirkabel & serat optik
 
Pertemuan 3 wide are network
Pertemuan 3 wide are networkPertemuan 3 wide are network
Pertemuan 3 wide are network
 
Pertemuan 2 instalasi jaringan
Pertemuan 2 instalasi jaringanPertemuan 2 instalasi jaringan
Pertemuan 2 instalasi jaringan
 
Pertemuan 1 jaringan komputer
Pertemuan 1 jaringan komputerPertemuan 1 jaringan komputer
Pertemuan 1 jaringan komputer
 
Pertemuan 13 famili power pc
Pertemuan 13 famili power pcPertemuan 13 famili power pc
Pertemuan 13 famili power pc
 
Pertemuan 12 famili arm
Pertemuan 12 famili armPertemuan 12 famili arm
Pertemuan 12 famili arm
 
Pertemuan 11 periferal komputer
Pertemuan 11 periferal komputerPertemuan 11 periferal komputer
Pertemuan 11 periferal komputer
 
Pertemuan 7 sistem memory
Pertemuan 7 sistem memoryPertemuan 7 sistem memory
Pertemuan 7 sistem memory
 

Pertemuan 9 pipelining

  • 1. ORGANISASI KOMPUTER PIPELINING JUMIATI 092901035 UNIVERSITAS NEGERI MAKASSAR 1
  • 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 2
  • 3. D. Pengaruh Pada Set Instruksi  Mode Pengelamatan  Condition Code 3
  • 4. A. Konsep Dasar Pipelined adalah suatu cara yang digunakan untuk melakukan sejumlah kerja secara bersama tetapi dalam tahap yang berbeda yang dialirkan secara kontinou pada unit pemrosesor. Dengan cara ini, maka unit pemrosesan selalu bekerja. 4
  • 5. Ide pipelining dapat digunakan pada computer. Prosesor mengeksekusi suatu program dengan mengambil dan mengeksekusi instruksi, satu demi satu.  Misalkan Fi dan Ei mengacu ke langkah pengambilan dan eksekusi untuk instruksi Ii. Eksekusi program terdiri dari rangkaian langkah pengambilan dan eksekusi. 5
  • 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. 6
  • 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. 7
  • 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. 8
  • 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. 9
  • 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 10
  • 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. 11
  • 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. 12
  • 13. NOP (No – operation ), sebagai berikut :  I1 : Mul R2,R3,R4  NOP  NOP  I2: Add R5,R4,R6 13
  • 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. 14
  • 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. 15
  • 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. 16
  • 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 17
  • 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. 18
  • 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. 19
  • 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. 20
  • 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. 21
  • 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. 22
  • 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. 23
  • 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. 24
  • 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. 25
  • 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 . 26
  • 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. 27
  • 28. D. KESIMPULAN Pipelined adalah suatu cara yang digunakan untuk melakukan sejumlah kerja secara bersama tetapi dalam tahap yang berbeda yang dialirkan secara kontinou pada unit pemrosesor. Dengan cara ini, maka unit pemrosesan selalu bekerja. 28
  • 29. 29