Download - 03_sistem_bus-1.pdf
![Page 1: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/1.jpg)
Organisasi dan Arsitektur Komputer
William Stallings
Edisi 7
Bab 3
Sistem Bus
![Page 2: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/2.jpg)
Konsep Program
• Sistem perangkat keras (hardwired) tidak fleksibel.
• Perangkat keras kegunaan umum dapat melakukan tugas-tugas berbeda, dengan cara memberikan sinyal kontrol yang benar.
• Disamping pengkabelan ulang, juga menyediakan satu kelompok sinyal kontrol yang baru.
![Page 3: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/3.jpg)
Apakah program itu?
• Sebuah deretan langkah-langkah
• Untuk setiap langkah, sebuah operasi aritmetik atau logika dilakukan
• Untuk setiap operasi, sebuah kelompok sinyal kontrol yang berbeda diperlukan
![Page 4: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/4.jpg)
Fungsi Unit Kontrol
• Untuk setiap oprasi sebuah kode unik akan disediakan
—misal ADD, MOVE
ADD A,B
• Sebuah bagian perangkat keras menerima kode tersebut dan mengeluarkan sinyal-sinyal kontrol
• Itulah komputer!
![Page 5: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/5.jpg)
Komponen-komponen
• Unit kontrol dan Unit Aritmetik dan Logika (ALU) The Control Unit berada pada Central Processing Unit (CPU)
• Data dan instruksi-instruksi memerlukan masuk ke dalam sistem dan menghasilkan keluaran (output)
—Input/output
• Diperlukan penyimpanan sementara dari kode dan hasil-hasil.
—Main memory (memory utama)
![Page 6: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/6.jpg)
Komputer Komponen:
Dipandang dari level atas
![Page 7: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/7.jpg)
Siklus Instruksi
• Dua langkah:
—Fetch (dimuat dalam memory)
—Execute (eksekusi)
![Page 8: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/8.jpg)
Siklus Fetch
• Pencacah Program (Program Counter (PC)) menangani alamat dari instruksi berikutnya yang akan di-fetch
• Prosesor menyimpan (fetch) instruksi dari lokasi memory yang ditunjukkan oleh PC
• Penghitung maju (Increment) PC
—Kecuali dikatakan lain
• Instruksi dimuat dalam Register Instruksi (Instruction Register (IR))
• Prosesor menginterpretasikan instruksi dan melakukan aksi-aksi yang diperlukan.
![Page 9: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/9.jpg)
Siklus Eksekusi
• Prosesor-memory
—Transfer data antara CPU dan main memory
• Prosesor I/O
—Transfer data antara CPU dand modul I/O
• Pemrosesan Data
—Beberapa operasi aritmetik dan logika pd data
• Kontrol
—Merubah urutan operasi
—Misal jump
• Kombinasi dari operasi-operasi di atas
![Page 10: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/10.jpg)
Contoh Eksekusi Program
![Page 11: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/11.jpg)
Diagram Status Siklus INstruksi
![Page 12: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/12.jpg)
Interup
• Mekanisme yang digunakan oleh modul-modul lain (e.g. I/O) mungkin mengintrupsi urutan normal dari proses
• Program
—misal overflow, pembagian dengan nol
• Timer
—Dibangkitkan oleh timer prosesor internal
—Digunakan dalam pre-emptive multi-tasking
• I/O
—Dari pengontrol I/O
• Kegagalan perangkat keras
—Misal kesalah paritas memory
![Page 13: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/13.jpg)
Kontrol Aliran Program
![Page 14: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/14.jpg)
Siklus Interup
• Ditambahkan pada siklus instruksi
• Prosesor mengecek interup
—Ditunjukkan oleh sinyal interup
• Jika tidak ada interup, menahan (fetch) instruksi berikut
• Jika interup ditunda (pending):
—Menghentikan eksekusi program yg sdg dijalankan
—Menyimpan konteks
—Mengatur PC ke alamat awal dari routine pemegang interup
—Memproses interup
—Mengeluarkan (restore) konteks dan melanjutkan program yang diinterup.
![Page 15: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/15.jpg)
Transfer KOntrol melalui Interup
![Page 16: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/16.jpg)
Siklus Instruksi dengan Interup
![Page 17: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/17.jpg)
Pewaktuan Program
Menunggu I/O Sebentar (Short I/O Wait)
![Page 18: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/18.jpg)
Pewaktuan Program
Menunggu I/O Lama
![Page 19: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/19.jpg)
Siklus Instruksi (dg Interup) - Diagram
Status
![Page 20: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/20.jpg)
Interup Jamak
• Interup Disable —Prosesor akan mengabaikan interup
selanjutnya dan hanya memproses satu interup saja
—Interup tetap dipending dan dicek setelah interup pertama telah diproses
—Interup ditangani secara berurutan sesuai waktu kejadiannya
• Menentukan prioritas —Interup dg prioritas rendah dapat dihentikan
oleh interup yang lebih tinggi
—Ketika interup dengan prioritas lebih tinggi telah diproses, prosesor kembali ke interup sebelumnya.
![Page 21: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/21.jpg)
Interup Jamak - Sekuensial
![Page 22: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/22.jpg)
Interup – Bersarang (Nested)
![Page 23: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/23.jpg)
Urutan Waktu dari Interup Jamak
![Page 24: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/24.jpg)
Persambungan
• Seluruh unit harus tersambung
• Jenis koneksi berbeda untuk jenis unit yang berbeda
—Memory
—Input/Output
—CPU
![Page 25: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/25.jpg)
Modul-modul Komputer
![Page 26: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/26.jpg)
Koneksi Memory
• Menerima dan mengirim data
• Menerima alamat-alamat (dari lokasi)
• Menerima sinyal-sinyal kontrol
—Membaca (Read)
—Penulisan (Write)
—Pewaktuan (Timing)
![Page 27: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/27.jpg)
Koneksi Input/Output(1)
• Mirip dengan memory dari sudut pandang komputer
• Output
—Menerima data dari komputer
—Mengirim data ke periferal
• Input
—Menerima data dari periferal
—Mengirim data ke komputer
![Page 28: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/28.jpg)
Koneksi Input/Output(2)
• Menerima sinyal kontrol dari komputer
• Mengirim sinyal kontrol ke periferal
—Misal memutar disk
• Menerima alamat dari komputer
—Misal nomor port untuk identifikasi periferal
• Mengirim sinyal-sinyal interup (kontrol)
![Page 29: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/29.jpg)
Sambungan CPU
• Membaca instruksi dan data
• Menulis keluar data (setelah pemrosesan)
• Mengirim sinyal kontrol ke unit-unit lain
• Menerima (& bekerja pada) interup
![Page 30: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/30.jpg)
Bus-bus
• Terdapat sejumlah sistem interkoneksi bus yang mungkin
• Struktur BUS tunggal dan jamak adalah sistem yang paling umum
• misal Kontrol/Alamat/Bus data (PC)
• misal Unibus (DEC-PDP)
![Page 31: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/31.jpg)
Apa Bus?
• Sebuah jalur komunikasi yang menghubungkan dua atau lebih divais
• Biasanya broadcast (menyebarluaskan)
• Seringkali dikelompokkan
—Beberapa kanal dalam satu bus
—Misal bus data 32 bit adalah 32 kanal bit tunggal yang terpisah.
• Jalur daya mungkin tidak ditunjukkan.
![Page 32: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/32.jpg)
Bus Data
• Membawa data
—Ingat bahwa tidak terdapat perbedaan antara “data” dan “instruksi” pada level ini.
• Lebar bus adalah pembeda utama dari kinerja
—8, 16, 32, 64 bit
![Page 33: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/33.jpg)
Bus Alamat
• Identifikasi sumber atau tujuan dari data
• Misal CPU memerlukan membaca sebuah instruksi (data) dari lokasi memory yang diberikan
• Lebar bus menentukan kapasitas memory maksimum dari sistem
—Misal 8080 mempunyai bus alamat 16 bit yang memberikan ruang alamat sebesar 64k
![Page 34: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/34.jpg)
Bus Kontrol
• Kontrol dan informasi pewaktuan
—Sinyal baca/tulis memory
—Permintaan interup
—Sinyal clock
![Page 35: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/35.jpg)
Skema Interkoneksi Bus
![Page 36: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/36.jpg)
Besar dan Kuning?
• Bus itu seperti apa?
—Jalur paralel pada papan rangkaian
—Kabel pita
—Konektor strip pada papan utama
– misal PCI
—Sekelompok kabel
![Page 37: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/37.jpg)
Realisasi fisis dari Arsitektur Bus
![Page 38: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/38.jpg)
Masalah bus tunggal
• Beberapa divais pada satu bus digunakan untuk:
—Delay propagasi
– Jalur data panjang berarti bahwa koordinasi dari penggunaan bus dapat mempengaruhi kinerja
– Jika transfer data keseluruhan mendekati kapasitas bus
• Kebanyakan sistem menggunakan bus jamak untuk mengatasi masalah ini.
![Page 39: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/39.jpg)
Tradisional (ISA)
(dengan cache)
![Page 40: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/40.jpg)
Bus Kinerja Tinggi
![Page 41: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/41.jpg)
Jenis-jenis Bus
• Terdedikasi/khusus (Dedicated)
—Memisahkan data dan jalur data
• Digabungkan
—Berbagaipakai jalur
—Jalur kontrol data benar atau alamat benar
—Kelebihan – lebih sedikit jalur
—Kekurangan
– Kontrol lebih kompleks
– Kinerja ultimate
![Page 42: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/42.jpg)
Arbitrase Bus
• Lebih dari sebuah modul pengontrolan bus
• Misal kontroler CPU dan DMA
• Hanya satu modul yang mengontrol bus pada satu waktu
• Arbitrase mungkin terpusat atau terdistribusi
![Page 43: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/43.jpg)
Arbitrase Terpusat atau Terdistribusi
• Terpusat
—Divais perangkat keras tunggal yang mengontrol akses bus
– Pengontrol bus
– Arbiter
—Sebagai bagian dari CPU atau terpisah
• Terdistribusi
—Masing-masing modul mengklaim bus
—Logika kontrol pada seluruh modul
![Page 44: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/44.jpg)
Pewaktuan
• Koordinasi kejadian-kejadian pada bus
• Sinkronous
—Kejadian-kejadian yang ditentukan oleh sinyal clock
—Bus Kontrol meliputi jalur clock
—Sebuah bit 1-0 tunggal adalah sebuah siklus bus
—Seluruh divais dapat membaca jalur clock
—Biasanya menggunakan sinkronisasi pada sisi yang mendahului
—Biasanya sebuah siklus tunggal untuk sebuah kejadian
![Page 45: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/45.jpg)
Diagram Pewaktuan Sinkron
![Page 46: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/46.jpg)
Diagram Baca – Pewaktuan Asinkron
![Page 47: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/47.jpg)
Diagram Tulis – Pewaktuan Asinkron
![Page 48: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/48.jpg)
Bus PCI
• Interkoneksi komponen periferal
• Intel merilis untuk ranah publik
• 32 atau 64 bit
• 50 jalur
![Page 49: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/49.jpg)
Jalur Bus PCI (dibutuhkan)
• Jalur-jalur sistem
—Meliputi clock dan reset
• Alamat & Data
—32 kali jalur jamak untuk alamat dan data
—Interup dan validasi jalur-jalur
• Kontrol antarmuka
• Arbitrasi
—Tidak di-share (bagi-pakai)
—Koneksi langsung ke arbiter bus PCI
• Jalur-jalur kesalahan
![Page 50: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/50.jpg)
Jalur Bus PCI (Tambahan)
• Jalur interup
—Tidak di-share
• Mendukung cache
• Penambahan Bus 64-bit
—Tambahan 32 jalur
—Multipleks waktu
—2 jalur untuk mengaktifkan divais agar menggunakan transfer 64 bit
• JTAG/Pemindaian batasan
—Untuk prosedur pengujian
![Page 51: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/51.jpg)
Perintah-perintah PCI
• Transaksi antara inisiator (master) dan target
• Master meng-klaim bus
• Menentukan jenis dari transaksi
—Misal baca/tulis I/O
• Fasa alamat
• Satu atau lebih fasa data
![Page 52: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/52.jpg)
Diagram Pewaktuan Baca PCI
![Page 53: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/53.jpg)
Arbiter Bus PCI
![Page 54: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/54.jpg)
Arbitrase Bus PCI
![Page 55: 03_sistem_bus-1.pdf](https://reader033.vdokumen.com/reader033/viewer/2022051401/55cf8fd5550346703ba056ca/html5/thumbnails/55.jpg)
Bahan bacaan
• Stallings, Bab 3 (seluruhnya)
• www.pcguide.com/ref/mbsys/buses/
• www.pcguide.com/