william stallings computer organization and...
TRANSCRIPT
![Page 1: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/1.jpg)
William Stallings
Computer Organization
and Architecture
Chapter 3
Sistem Bus
(sistem dan struktur interkoneksi
komputer)
![Page 2: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/2.jpg)
Konsep Program
Sistem Hardware-nya tidak dapat diubah-ubah
Fungsi kerja hardware dapat melakukan tugas berbeda-beda, memberikan sinyal kontrol yang benar
Daripada melakukan pengawatan baru, lebih baik menyediakan sinyal kontrol yang baru
![Page 3: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/3.jpg)
Apa itu program?
Serangkaian langkah sequensial
Untuk setiap langkah, sebuah operasi aritmetik atau logik
Untuk setiap operasi, diperlukan sinyal kontrol yang berbeda
![Page 4: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/4.jpg)
Fungsi Unit Kontrol
Untuk setiap operasi disediakan kode-kode yang unik
contoh: ADD, MOVE
Bagian hardware akan menerima kode dan mengeluarkan sinyal kontrol
![Page 5: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/5.jpg)
Komponen-komponen (1)
Unit kontrol dan unit aritmetik dan logik merupakan bagian dari CPU
Data dan instruksi memerlukan media untuk masuk ke sistem dan menghasilkan output
Input/output
Tempat penyimpanan sementara kode dan output sangat diperlukan
Main memory
![Page 6: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/6.jpg)
Komponen-komponen (2)
Prosesor: mengontrol operasi komputer dan melakukan fungsi pengolahan data. Jika hanya ada satu prosesor, maka disebut CPU
Memori utama: menyimpan data dan program
Modul I/O: memindahkan data antara komputer dengan lingkungan eksternalnya. Ex. Perangkat memori sekunder, terminal
Interkoneksi sistem: Beberapa struktur dan mekanisme yang melakukan komunikasi antara prosesor, memori utama, dan modul I/O
![Page 7: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/7.jpg)
Komponen Komputer:
Top Level View
![Page 8: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/8.jpg)
Komponen-komponen (3)
PC : Berisi alamat instruksi yang akan diambil
IR : Berisi instruksi terakhir yang digunakan
MAR : Menandakan alamat dalam memori untuk keperluan write/read berikutnya
MBR : Berisi data yang akan dituliskan ke dalam memori atau menerima data yang dibaca dari memori
I/O AR : menandakan perangkat I/O tertentu
I/O BR : Digunakan untuk pertukaran data antara modul I/O dengan memori
![Page 9: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/9.jpg)
Siklus Instruksi
Terdiri dari dua langkah :
Fetch (mengambil)
Execute (eksekusi)
![Page 10: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/10.jpg)
Siklus Fetch
Program Counter (PC) menetapkan address instruksi berikutnya untuk fetch
prosesor mengambil instruksi dari lokasi memori ditunjuk oleh PC
Penambahan PC atau pengurangan PC
Instruksi diisikan ke Instruction Register (IR)
Processor menerjemahkan instruksi and menjalankan tindakan yang diinginkan
![Page 11: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/11.jpg)
Siklus Eksekusi
Processor-memory
transfer data antara CPU dan memory utama
Processor I/O
transfer data antara CPU and bagian I/O
Pengolahan data
Beberapa operasi aritmetik atau logik dari data
Kontrol
Mengubah rangkaian operasi
Contoh: jump
Kombinasi poin-poin diatas
![Page 12: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/12.jpg)
Example of Program Execution
![Page 13: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/13.jpg)
Siklus Instruksi -
State Diagram
![Page 14: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/14.jpg)
Interrupts/interupsi
Mekanisme kerja oleh modul lain (ex. I/O), interupsi pada rangkaian proses
Program
ex. Pembagian oleh bilangan nol
Timer
Dihasilkan oleh timer prosesor internal
Digunakan untuk mencegah multi-tasking
I/O
from I/O controller
Kesalahan Hardware
ex. memory parity error
![Page 15: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/15.jpg)
Program Flow Control
![Page 16: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/16.jpg)
Siklus Interupsi
Ditambahkan ke siklus instruksi
Memeriksa prosesor untuk interupsi
Ditandai dengan sinyal interupsi
Jika tidak ada interupsi, ambil instruksi berikutnya
Jika interupsi dibatalkan :
Menunda eksekusi program yang sedang berjalan
Menyimpan konteks
Set PC ke alamat awal penanganan interupsi
Interupsi proses
Menyimpan konteks dan meneruskan program yang terinterupsi
![Page 17: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/17.jpg)
Siklus Instruksi (dengan
interupsi) - State Diagram
![Page 18: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/18.jpg)
Multiple Interupsi
Interupsi yang dihentikan
Prosesor akan mengabaikan interupsi ketika sedang memproses satu interupsi
Interupsi akan ditunda dan di cek lagi kemudian jika interupsi pertama selesai diproses
Interupsi akan digagalkan jika memang tidak diinginkan
Diprioritaskan jika :
Interupsi dengan prioritas rendah akan diinterupsi oleh priorotas yang lebih tinggi
Saat telah menyelesaikan interupsi priorotas tinggi, akan kembali ke interupsi sebelumnya
![Page 19: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/19.jpg)
Multiple Interrupts - Sequential
![Page 20: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/20.jpg)
Multiple Interrupts - Nested
![Page 21: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/21.jpg)
Hubungan
Semua unit harus saling berhubungan
Setiap unit akan membutuhkan tipe koneksi yang berbeda
Memory
Input/Output
CPU
![Page 22: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/22.jpg)
Struktur interkoneksi
![Page 23: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/23.jpg)
Hubungan Memory
Menerima dan mengirim data
Menerima alamat-alamat (lokasi)
Menerima sinyal kontrol
Read/baca
Write/tulis
Timing/waktu
![Page 24: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/24.jpg)
Hubungan Input/Output (1)
Output
Menerima data dari komputer
Mengirim data ke peripheral
Input
Menerima data dari peripheral
Mengirim data ke komputer
Peripheral adalah perangkat yang memberikan unit pengolahan tertentu dengan kemampuan dapat berkomunikasi dengan dunia luar
![Page 25: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/25.jpg)
Hubungan Input/Output (2)
Menerima sinyal kontrol dari komputer
Mengirim sinyal kontrol dari peripherals
ex. putaran disk
Menerima alamat dari komputer
ex. Nomor port untuk mengidentifikasi peripheral
Mengirim sinyal interupsi (kontrol)
![Page 26: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/26.jpg)
Hubungan CPU
Membaca instruksi dan data
Menulis data (sesudah proses)
Mengirim sinyal kontrol ke unit lain
Menerima (dan melakukan) interupsi
![Page 27: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/27.jpg)
Bus-bus
Sejumlah bilangan dari interkoneksi sistem yang mungkin
Struktur BUS yang Single dan multiple kebanyakan bersatu
e.g. Control/Address/Data bus (PC)
e.g. Unibus (DEC-PDP)
![Page 28: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/28.jpg)
Apa itu Bus?
Jalur komunikasi untuk menghubungkan dua atau lebih perangkat
Biasanya digunakan pada broadcast
Kadang-kadang berkelompok
Jumlah channel pada satu bus
ex. 32 bit data bus adalah 32 single bit channels
![Page 29: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/29.jpg)
Bus Data
Carries data (data)
Ingat, pada level ini tidak ada perbedaan antara “data” dengan “instruksi”
Lebar bit adalah kunci penentu tampilan
8, 16, 32, 64 bit
![Page 30: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/30.jpg)
Address bus (alamat bus)
Mengidentifikasi sumber dan tujuan dataEx. CPU perlu membaca instruksi (data) dari sebuah
lokasi di memori
Lebar bus disesuaikan dengan kapasitas maks memori sistemex. 8080 mempunyai 16 bit address bus memberikan
64k ruang address
![Page 31: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/31.jpg)
Control Bus (bus kontrol)
Informasi kontrol and timing
Memori sinyal read/write
Permintaan interupsi
Sinyal clock
![Page 32: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/32.jpg)
Skema Interkoneksi Bus
![Page 33: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/33.jpg)
Traditional (ISA)
(with cache)
![Page 34: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/34.jpg)
High Performance Bus
![Page 35: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/35.jpg)
Tipe Bus
Single
Memisahkan data dan jalur alamat
Multiplexed
Jalur dipakai bersama
Jalur kontrol, alamat yg benar atau data yg benar
Keuntungan – jalur lebih sedikit
Kekurangan
Kontrol lebih rumit
Kemampuannya terbatas
![Page 36: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/36.jpg)
Bus Arbitration (pemisahan bus)
Jika terdapat lebih dari satu kontrol modul bus
Ex. CPU dan DMA controller
Hanya satu modul yang boleh mengontrol bus dalam satu waktu
Dua metoda pemisahan :
- Dipusatkan : central bus controller menjadi media semua peralatan
- Didistribusikan : semua peralatan bisa akses kontrol ke bus
![Page 37: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/37.jpg)
Pemisahan yang didistribusikan
Masing-masing modul boleh mengklaim bus
Control logic pada semua modul
![Page 38: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/38.jpg)
Bus Timing
Synchronous
Event ditentukan oleh sinyal clock
Control Bus termasuk didalamnya clock line
Semua peralatan bisa membaca clock line
sync pada leading edge
Satu siklus untuk satu event
Ex. PCI bus
Asynchronous
Event yang terjadi mengikuti dan tergantung dari event sebelumnya
Lebih fleksible tapi lebih rumit
Ex. Futurebus+
![Page 39: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/39.jpg)
Synchronous Timing Diagram
![Page 40: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/40.jpg)
Asynchronous Timing Diagram
![Page 41: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/41.jpg)
Foreground Reading
Stallings, chapter 3 (all of it)
www.pcguide.com/ref/mbsys/buses/
In fact, read the whole site!
www.pcguide.com/
![Page 42: William Stallings Computer Organization and Architecturefile.upi.edu/Direktori/FPTK/JUR._PEND._TEKNIK_ELEKTRO/... · merupakan bagian dari CPU Data dan instruksi memerlukan media](https://reader031.vdocuments.mx/reader031/viewer/2022021621/5c84b18c09d3f2bc2b8cbafc/html5/thumbnails/42.jpg)
thread