9/13/2016
DCH1B3 Konfigurasi Perangkat Keras Komputer
1
9/13/2016
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Input/Output
Masalah Input/Output Berbagai macam periferal yang begitu luas – Mengirimkan sejumlah data yang berbeda – Pada kecepatan berbeda-beda – Dalam format yang berbeda
Semua periferal lebih lambat dibandingkan CPU dan RAM
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Memerlukan modul I/O
1
9/13/2016
Modul Input/Output Antarmuka ke CPU dan Memori.
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Antarmuka ke satu atau lebih periferal.
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Model Modul I/O yang umum
2
9/13/2016
Devais Eksternal Human readable – Layar, printer, keyboard
Machine readable – Monitoring dan control
Komunikasi – Modem
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
– Network Interface Card (NIC)
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Diagram Blok Devais Eksternal
3
9/13/2016
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Data Rate I/O berbagai devais
Fungsi Modul I/O Control & Timing CPU Communication Device Communication Data Buffering
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Error Detection
4
9/13/2016
Langkah-langkah I/O CPU memeriksa status devais modul I/O Modul I/O mengirimkan status devais
Jika siap, CPU meminta transfer data Modul I/O mendapatkan data dari devais Modul I/O mentransfer data ke CPU
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Variasi untuk output, DMA, dll.
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Diagram Modul I/O
5
9/13/2016
Keputusan Modul I/O Menyimpan atau menampilkan properti devais ke CPU. Mendukung banyak devais atau tunggal.
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Mengontrol fungsi-fungsi devais atau meninggalkan CPU.
Teknik Input Output Programmed Interrupt driven
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Direct Memory Access (DMA)
6
9/13/2016
Programmed I/O CPU memiliki kontrol secara langsung terhadap I/O – Status penginderaan – Perintah Read/write – Mentransfer data
CPU menunggu modul I/O untuk menyelesaikan operasinya.
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Membuang waktu CPU
Programmed I/O - detail CPU meminta operasi I/O Modul I/O melakukan operasi Modul I/O mengeset status bit CPU memeriksa status bit secara periodik Modul I/O tidak menginformasikan ke CPU secara langsung
CPU bisa menunggu atau kembali nanti
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Modul I/O tidak menginterupsi CPU
7
9/13/2016
I/O Command CPU mengirimkan alamat – Mengidentifikasi modul(& devais jika >1 per modul)
CPU mengirimkan command – Control – memberitahu modul apa yang harus dilakukan Misal:memutar disk
– Test - cek status Misal : power? Error?
– Read/Write
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Modul mentransfer data via buffer dari/ke devais
Pengalamatan Devais I/O Pada programmed I/O, transfer data mirip dengan akses memori. Tiap devais memiliki identifier yang unik
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
CPU command berisi identifier (alamat)
8
9/13/2016
I/O Mapping Memory mapped I/O – Devais dan memori berbagi sebuah ruang alamat
– I/O mirip dengan operasi read/write memori – Tidak ada command khusus untuk I/O
Isolated I/O – Ruang alamat terpisah antara memori dan I/O – Memerlukan saluran-saluran pemilih I/O atau memori – Ada perintah khusus untuk I/O
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Perintah terbatas
Interrupt Driven I/O Tidak ada waktu CPU menunggu Tidak ada pemeriksaan devais oleh CPU secara berulang-ulang
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Modul I/O menginterupsi ketika siap
9
9/13/2016
Operasi Dasar Interrupt Driven I/O CPU mengeluarkan read command Modul I/O mendapatkan data dari periferal pada saat CPU melakukan kerja lainnya. Modul I/O menginterupsi CPU CPU meminta data
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Modul I/O mentransfer data
Sudut Pandang CPU Mengeluarkan read command Melakukan kerja yang lainnya Memeriksa interupsi pada akhir tiap siklus intruksi Jika diinterupsi:– Simpan konteks (registers) – Memproses interupsi
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Fetch data & store
10
9/13/2016
Isu-isu Desain Bagaimana mengidentifikasi modul yang meminta interupsi?
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Bagaimana menangani banyak interupsi?
Mengidentifikasi
Modul menginterupsi (1) Saluran berbeda untuk tiap devais – PC – Membatasi sejumlah devais
Software poll – CPU meminta tiap modul yang berada dalam antrian
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
– Lambat
11
9/13/2016
Mengidentifikasi Modul yang menginterupsi(2) Daisy Chain atau Hardware poll – Interrupt Acknowledge dikirimkan ke sebuah chain
– Modul bertannggungjawab menempatkan vector dalam bus – CPU menggunakan vector untuk menangani handler routine
Bus Master – Modul harus mengklaim sebelum memberikan interupsi
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
– Misal : PCI & SCSI
Multiple Interrupt Tiap saluran interupt memiliki sebuah prioritas
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Saluran prioritas yang lebih tinggi dapat menginterupsi saluran prioritas yang lebih rendah
12
9/13/2016
Contoh - PC Bus 80x86 memiliki satu saluran interrupt Sistem berbasis 8086 menggunakan satu 8259A interrupt controller
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
8259A memiliki 8 saluran interrupt
Direct Memory Access Interrupt driven dan programmed I/O memerlukan campur tangan CPU secara aktif – Laju transfer terbatas – CPU capek
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
DMA adalah jawabannya
13
9/13/2016
Fungsi DMA Modul tambahan (hardware) dalam bus
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
DMA controller mengambil alih tugas CPU untuk I/O
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Diagram Modul DMA
14
9/13/2016
Operasi DMA CPU memberitahu DMA controller:– Read/Write
– Device address – Alamat awal blok data memori – Jumlah data yang harus ditransfer
CPU mengerjakannya dengan kerja lainnya
DMA controller mengirim interupsi ke CPU jika sudah selesai
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
DMA controller berhubungan dengan transder
DMA Transfer Cycle Stealing DMA controller mengambil alih bus untuk sebuah siklus Transfer 1 word data Bukan sebuah interrupt CPU berhenti sejenak sebelum CPU mengakses bus.
Menurunkan kerja CPU tapi tidak sebanyak CPU melakukan transfer DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
– Misal:. Sebelum sebuah operand atau data fetch atau data write
15
9/13/2016
Konfigurasi DMA (1)
Bus tunggal, Detached DMA controller Tiap transfer menggunakan bus 2x – I/O ke DMA kemudian DMA ke memori
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
CPU berhenti sejenak 2x
Konfigurasi DMA (2)
Bus tunggal, Integrated DMA controller Controller bisa mendukung >1 devais – DMA ke memori
CPU berhenti sejenak 1x DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Tiap transfer menggunakan bus 1x
16
9/13/2016
Konfigurasi DMA (3)
Bus I/O terpisah
Tiap transfer menggunakan bus 1x – DMA ke memor
CPU berhenti sejenak 1x DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Bus mendukung semua DMA enabled devices
I/O Channels I/O devices semakin rumit Misal. Kartu grafik 3D CPU menginstrukskan I/O controller untuk melakukan transfer I/O controller melakukan transfer seluruhnya – beban CPU tinggi
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
– Dedicated processor lebih cepat
17
9/13/2016
Baca tentang Universal Serial Bus (USB)
THANK YOU DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
DCH1B3 – Konfigurasi Perangkat Keras Komputer
12-CRS-0106 REVISED 8 FEB 2013
Bandingkan dengan standar komunikasi yang lain misal Ethernet
18