i/o device and i/o module
DESCRIPTION
I/O Device and I/O Module. I/O devices menjadikan komputer berguna bagi manusia. Perangkat input mungkin lambat dan harus memiliki cara untuk memberitahu komputer apabila siap memberikan data. Perangkat output harus memiliki cara untuk menolak data berikutnya apabila belum siap. Kategori. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/1.jpg)
I/O Device and I/O Module
![Page 2: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/2.jpg)
I/O devices menjadikan komputer berguna bagi manusia
Perangkat input mungkin lambat dan harus memiliki cara untuk memberitahu komputer apabila siap memberikan data.
Perangkat output harus memiliki cara untuk menolak data berikutnya apabila belum siap.
![Page 3: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/3.jpg)
Kategori User interface devices.
Perangkat input mendeteksi adanya perubahan pada lingkungan
Perangkat output memberi perubahan pada lingkungan.
Mass storage devices. Menyimpan data dalam kuantitas yang besar
(disks). Gateways and networks.
Komputer berkomunikasi satu sama lain.
![Page 4: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/4.jpg)
Perbedaan seputar kelas-kelas I/O Complexity of control: Sebuah printer membutuhkan
antar muka kontrol yang relatif sederhana. Sebuah disk jauh lebih kompleks.
Unit of transfer: Data mungkin dikirimkan sebagai suatu aliran byte atau karakter atau dikirimkan dalam blok yang berukuran besar.
Data representation: Perangkat yang berbeda mungkin menggunakan skema pengkodean data (data-encoding) yang berbeda, termasuk di dalamnya perbedaan dalam kode karakter dan parity yang digunakan.
Error conditions: Sifat dari error, bagaimana error tersebut dilaporkan, konsekuensi dari error, dan respons yang diberikan berbeda dari satu perangkat dengan perangkat yang lain.
![Page 5: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/5.jpg)
I/O Module
Adalah interface atau central switch untuk mengendalikan satu atau lebih peripheral atau perangkat input output.
Konektor mekanis berisi fungsi logik untuk komunikasi antara bus dan peripheral.
![Page 6: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/6.jpg)
Mengapa modul I/O diperlukan ?
Periferal yang beragam dengan beragam metode operasi.
Speed periferal yang lebih lambat dibanding CPU.
Format data dan panjang word periferal pun beragam.
![Page 7: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/7.jpg)
Blok diagram I/O ModuleBlok diagram I/O Module
![Page 8: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/8.jpg)
Arus Data I/ODevice Behavior Partner Data rate
(kbytes/sec)
Keyboard Input human 0,01
Mouse Input human 0,02
Voice input Input human 0,02
Scanner Input human 200
Voice output Output human 0,6
Laser printer Output human 100
Graphic display Output human 30.000
CPU to frame buffer Output human 200
Network-termainal Input or output machine 0,05
Network-LAN Input or output machine 200
Optical disk Storage machine 500
Magnetic tape Storage machine 2.000
Magnetic disk Storage machine 2.000
![Page 9: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/9.jpg)
Fungsi modul I/O
Pengendali & pengaturan waktu (control & timing).
Komunikasi dengan CPU. Komunikasi dengan perangkat. Penyimpanan data sementara (data
buffering). Pendeteksi kesalahan.
![Page 10: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/10.jpg)
Control & timing input data
CPU meminta modul memeriksa status perangkat.
Bila perangkat siap mengirim, CPU mengirim perintah pemindahan.
Modul menerima data dari perangkat. Data dipindahkan dari modul ke CPU.
![Page 11: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/11.jpg)
Komunikasi dengan CPU
Command decoding, signal perintah dari CPU ke control bus.
Pertukaran data antara CPU dengan modul melalui data bus.
Status reporting, CPU perlu status modul [busy atau ready].
Address recognition, modul I/O perlu tahu address unik setiap periferal.
![Page 12: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/12.jpg)
Komunikasi dengan perangkat
Perintah dari CPU, status, dan data.
![Page 13: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/13.jpg)
Teknik Input/Output
Programmed (Teknik I/O Terprogram) Interrupt-driven Direct memory access (DMA) IOP/C
![Page 14: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/14.jpg)
Teknik I/O Terprogram
Teknik CPU mengontrol I/O [status, perintah
R/W, transfer data]. CPU menunggu modul I/O aktif. Modul I/O beroperasi, menetapkan status
serta tidak menginterupsi CPU. CPU memeriksa status periodik, sambil
menunggu atau ‘pergi dan kembali nanti’.
![Page 15: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/15.jpg)
Teknik I/O Terprogram
Perintah Control Status condition test Read [data dari periferal] Write [data transmisi ke periferal]
![Page 16: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/16.jpg)
Teknik I/O Terprogram
Pengadresan perangkat IO (CPU viewpoint). Data ditransfer seperti
akses memori Tiap perangkat mendapat unique
identifier. Perintah CPU berisi identifier (adres).
![Page 17: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/17.jpg)
Teknik I/O - interrupt-driven
Dikendalikan interupsi CPU mengirim perintah I/O ke modul,
kemudian mengerjakan proses lainnya. Modul I/O akan menginterupsi CPU minta
layanan bila perintah selesai dikerjakan. CPU melayani interupsi dan setelah
selesai melanjutkan kembali proses yang sedang dikerjakan sebelum diinterupsi.
![Page 18: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/18.jpg)
Teknik I/O - interrupt-driven
CPU view-point Mengirimkan perintah baca/tulis dan
mengerjakan proses lain. Memeriksa interupsi pada akhir tiap
instruction cycle. Jika diinterupsi akan melakukan save
context (registers)dan process interrupt (Fetch data & store).
![Page 19: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/19.jpg)
Teknik I/O - interrupt-driven
Masalah Desain: Bagaimana mengidentifikasi modul
mengirim interupsi ? Bagaimana menangani multiple
interrupts ?
![Page 20: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/20.jpg)
Teknik I/O - interrupt-driven Identifikasi interupsi modul dengan cara:
Satu saluran/modul. Software poll, CPU memeriksa modul bergiliran. Daisy Chain / Hardware poll
Interrupt Acknowledge dikirimkan pada chain. Module yang melakukan interupsi mengirimkan
vector pada bus. CPU menggunakan vector to untuk
mengidentifikasi handler routine.
![Page 21: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/21.jpg)
Teknik I/O - interrupt-driven Contoh PC Bus
80x86 memiliki satu interrupt line, sistem berbasis 8086 memakai 8259A interrupt controller yang memiliki 8 interrupt lines.
![Page 22: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/22.jpg)
Teknik I/O - interrupt-driven
Runtutan events 8259A menerima interupsi. 8259A memeriksa prioritas. 8259A memberi sinyal 8086
(membangkitkan INTR line). CPU mengirimkan pesan Acknowledges. 8259A menyimpan correct vector pada
data bus. CPU memproses interupsi.
![Page 23: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/23.jpg)
Teknik I/O Terprogram
![Page 24: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/24.jpg)
Teknik I/O Terprogram
![Page 25: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/25.jpg)
Teknik I/O - interrupt-driven
![Page 26: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/26.jpg)
Teknik I/O - DMA
Interrupt-driven & programmed I/O membutuhkan intervensi aktif CPU, transfer rate terbatas dan CPU terikat.
![Page 27: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/27.jpg)
Teknik I/O - DMA Modul tambahan (HW) pada bus. DMA controller mengambil alih peran CPU. DMA (bus mastering) ~ teknik
implementasi beberapa komponen untuk transfer data langsung ke dan dari memori tanpa lewat CPU.
DMA mengurangi CPU overhead karena mekanisme transfer data tidak butuh pengawasan CPU.
![Page 28: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/28.jpg)
Teknik I/O - DMA Cara Kerja standar
CPU memerintahkan DMA controller untuk Read/Write. Memeriksa adres perangkat. Mencari adres dan mengambil data untuk
ditransfer. CPU mengerjakan proses-proses lain. DMA controller melakukan transfer data. DMA controller mengirimkan interupsi jika
selesai.
![Page 29: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/29.jpg)
Teknik I/O - DMA
Cara lain, transfer cycle stealing DMA controller mengambil alih siklus
bus, kirim 1 word, dan tidak ada interupsi.
CPU tidak mengubah konteks,dan CPU suspended sebelum mengakses bus (misal sebelum operand / data fetch atau data write).
![Page 30: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/30.jpg)
Teknik I/O – IOP/C Evolusi fungsi I/O
Semula CPU langsung mengendalikan periferal. Kemudian ada penambahan modul I/O
terprogram, sebagai pengendali. Selanjutnya penambahan modul I/O interrupt
driven, sebagai pengendali. Modul I/O akses langsung ke memori melalui
DMA. Kemampuan modul I/O ditingkatkan jadi
prosesor, dan tidak tergantung CPU. Modul I/O memiliki memori lokal.
![Page 31: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/31.jpg)
Teknik I/O – IOP/C IO Processor
Adalah prosesor yang terpisah dari CPU dan dirancang untuk menangani proses input/output
Sinkron dengan clock sistem dan prosesor utama. Akan menerima kontrol awal dari prosesor utama pada saat instruksi input-output dibaca dari memori. Pada saat I/O prosesor mengendalikan proses input output, prosesor utama tetap pada kondisi two-state waiting loop sampai instruksi input-output dikerjakan di mana kemudian kontrol dikembalikan ke prosesor utama.
![Page 32: I/O Device and I/O Module](https://reader036.vdocuments.site/reader036/viewer/2022081505/5681509e550346895dbe999d/html5/thumbnails/32.jpg)
Terima kasih ^^
Bingung kah ?? Setres kah ?? Aku jg gitu kali. .. Nie ajha buat 41 hari 40 malamb. .. Hheehheehhee fennddie