03_sistem_bus-1.pdf
-
Upload
rendra-neutron -
Category
Documents
-
view
12 -
download
2
Transcript of 03_sistem_bus-1.pdf
Organisasi dan Arsitektur Komputer
William Stallings
Edisi 7
Bab 3
Sistem Bus
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.
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
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!
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)
Komputer Komponen:
Dipandang dari level atas
Siklus Instruksi
• Dua langkah:
—Fetch (dimuat dalam memory)
—Execute (eksekusi)
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.
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
Contoh Eksekusi Program
Diagram Status Siklus INstruksi
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
Kontrol Aliran Program
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.
Transfer KOntrol melalui Interup
Siklus Instruksi dengan Interup
Pewaktuan Program
Menunggu I/O Sebentar (Short I/O Wait)
Pewaktuan Program
Menunggu I/O Lama
Siklus Instruksi (dg Interup) - Diagram
Status
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.
Interup Jamak - Sekuensial
Interup – Bersarang (Nested)
Urutan Waktu dari Interup Jamak
Persambungan
• Seluruh unit harus tersambung
• Jenis koneksi berbeda untuk jenis unit yang berbeda
—Memory
—Input/Output
—CPU
Modul-modul Komputer
Koneksi Memory
• Menerima dan mengirim data
• Menerima alamat-alamat (dari lokasi)
• Menerima sinyal-sinyal kontrol
—Membaca (Read)
—Penulisan (Write)
—Pewaktuan (Timing)
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
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)
Sambungan CPU
• Membaca instruksi dan data
• Menulis keluar data (setelah pemrosesan)
• Mengirim sinyal kontrol ke unit-unit lain
• Menerima (& bekerja pada) interup
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)
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.
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
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
Bus Kontrol
• Kontrol dan informasi pewaktuan
—Sinyal baca/tulis memory
—Permintaan interup
—Sinyal clock
Skema Interkoneksi Bus
Besar dan Kuning?
• Bus itu seperti apa?
—Jalur paralel pada papan rangkaian
—Kabel pita
—Konektor strip pada papan utama
– misal PCI
—Sekelompok kabel
Realisasi fisis dari Arsitektur Bus
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.
Tradisional (ISA)
(dengan cache)
Bus Kinerja Tinggi
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
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
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
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
Diagram Pewaktuan Sinkron
Diagram Baca – Pewaktuan Asinkron
Diagram Tulis – Pewaktuan Asinkron
Bus PCI
• Interkoneksi komponen periferal
• Intel merilis untuk ranah publik
• 32 atau 64 bit
• 50 jalur
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
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
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
Diagram Pewaktuan Baca PCI
Arbiter Bus PCI
Arbitrase Bus PCI
Bahan bacaan
• Stallings, Bab 3 (seluruhnya)
• www.pcguide.com/ref/mbsys/buses/
• www.pcguide.com/