SISTEM INPUT OUTPUT
FUNGSI MODUL I/O
Merupakan peralatan antarmuka (interface) bagi
sistem bus atau switch sentral danmengontrol satu atau lebih perangkat
peripheral. Tidak hanya sekedar modul penghubung, tetapi sebuah piranti
yang berisi logikadalam melakukan fungsi komunikasi antara peripheral dan bus
computer.
Modul I / O merupakan suatu entiti di dalam komputer
yang bertanggung jawab atas pengontrol sebuah perangkat eksternal atau
lebih dan untuk pertukarandata antara perangkat-perangkat tersebut dengan
memori utama dan atau register-register CPU. Jadi, modul I / O harus memiliki
interface internal dengan komputer (CPU dan main memori ) dan interface
eksternal dengan komputer ( perangkateksternal ).
Fungsi atau persyaratan utama bagi modul I / O dapat
dibagi menjadi beberapa kategori seperti di bawah ini :
· Kontrol dan timing
· Komunikasi CPU
· Komunikasi perangkat
· Data buffering
· Deteksi Error
LANGKAH-LANGKAH PENANGANAN I/O
1. CPU meminta modul I / O untuk memeriksa status
perangkat yang terhubung.
2. Modul I / O memberikan jawabannya tentang
status perangkat.
3. Bila perangkat sedang beroperasi dan berada
dalam keadaan siap untuk mengirimkan, maka CPU meminta pemindahan data, dengan
menggunakan perintah tertentu ke modul I / O.
4. Modul I / O akan memperoleh unit data (
misalnya, 8 atau 16 bit ) dari perangkateksternal.
5. Data akan dipindahkan dari modul I / O ke CPU.
METODE PENGAKSESAN I/O
Pengaksesan I/O terdiri dari 2 cara :
1. MEMORY MAPPED I/O
Piranti I/O dihubungkan sebagai lokasi memori virtual
dimana port I/O tergantung memori utama.
Karakteristik:
- Port I/O dihubungkan ke bus alamat.
- Piranti input sebagai bagian memori yang memberikan data ke bus data. Piranti output sebagai bagian memori yang memiliki data yang tersimpan di dalamnya.
- Port I/O menempati lokasi tertentu pada ruang alamat
dan diakses seolah-olah adalah lokasi memori.
Karakteristik:
- Port I/O dihubungkan ke bus alamat.
- Piranti input sebagai bagian memori yang memberikan data ke bus data. Piranti output sebagai bagian memori yang memiliki data yang tersimpan di dalamnya.
- Port I/O menempati lokasi tertentu pada ruang alamat
dan diakses seolah-olah adalah lokasi memori.
2. I/O MAPPED I/O (I/O ISOLATED)
Piranti I/O dihubungkan sebagai lokasi terpisah
dengan lokasi memori, dimana port I/O tidak tergantung pada memori utama.
Karakteristik:
- Port I/O tidak tergantung memori utama.
- Transfer informasi dilakukan di bawah kendali sinyal kontrol yang menggunakan instruksi INPUT dan OUTPUT
- Operasi I/O tergantung sinyal kendali dari CPU.
- lnstruksi I/O mengaktifkan baris kendali read/write pada port I/O, sedangkan instruksi memori
akan mengaktifkan baris kendali read/write pada memori.
- Ruang memori dan ruang alamat I/O menyatu, sehingga dapat memiliki alamat yang sama.
Kelebihan dan kekurangan:
- I/O mapped I/O Iebih cepat dan efisien, karena lokasi I/O terpisah dengan lokasi memori.
- I/O mapped I/O mempunyai keterbatasan jumlah instruksi yang dapat digunakan untuk operasi I/O.
Karakteristik:
- Port I/O tidak tergantung memori utama.
- Transfer informasi dilakukan di bawah kendali sinyal kontrol yang menggunakan instruksi INPUT dan OUTPUT
- Operasi I/O tergantung sinyal kendali dari CPU.
- lnstruksi I/O mengaktifkan baris kendali read/write pada port I/O, sedangkan instruksi memori
akan mengaktifkan baris kendali read/write pada memori.
- Ruang memori dan ruang alamat I/O menyatu, sehingga dapat memiliki alamat yang sama.
Kelebihan dan kekurangan:
- I/O mapped I/O Iebih cepat dan efisien, karena lokasi I/O terpisah dengan lokasi memori.
- I/O mapped I/O mempunyai keterbatasan jumlah instruksi yang dapat digunakan untuk operasi I/O.
METODE OPERASI I/O
I. I/O TERPROGRAM
Metode di mana CPU mengendalikan operasi I/O secara keseluruhan
dengan menjalankan serangkaian instruksi
I/O dengan sebuah program.
Karakteristik:
- Program tersebut digunakan untuk memulai, mengarahkan dan menghentikan operasi-operasi I/O.
- Membutuhkan sejumlah perangkat keras (register)
yaitu:
I/O dengan sebuah program.
Karakteristik:
- Program tersebut digunakan untuk memulai, mengarahkan dan menghentikan operasi-operasi I/O.
- Membutuhkan sejumlah perangkat keras (register)
yaitu:
§ Register status, berisi status piranti I/O dan
data yang akan dikirimkan.
§ Register buffer, menyimpan data sementara sampai
CPU siap menerimanya
§ Pointer buffer, menunjuk ke lokasi memori di mana
sebuah karakter harus ditulis atau dan mana karakter tersebut harus dibaca.
§ Counter data, tempat penyimpanan jumlah karakter
dan akan berkurang nilainya jika karakter ditransfer.
- Membutuhan waktu proses yang lama dan tidak
efesien dalarn pemanfaatan CPU.
II. I/O INTERUPSI
Metode di mana CPU akan bereaksi ketika suatu
piranti mengeluarkan permintaan untuk pelayanan.
Karakteristik:
- Lebih efisien dalam pemanfaatan CPU, karena tidak harus menguji status dari piranti.
- Interupsi dapat berasal dari piranti I/O, interupsi perangkat keras misalnya : timer, memori, power supply, dan Interupsi perangkat lunak misalnya :
Karakteristik:
- Lebih efisien dalam pemanfaatan CPU, karena tidak harus menguji status dari piranti.
- Interupsi dapat berasal dari piranti I/O, interupsi perangkat keras misalnya : timer, memori, power supply, dan Interupsi perangkat lunak misalnya :
§ overflow, opcode/data yang ilegal, pembagian
dengan nol.
Ada 2 jenis interupsi:
1. lnterupsi maskable
Interupsi yang dapat didisable (dimatikan) untuk
sementara dengan sebuah instruksi disable interupsi khusus.
2. Interupsi nonmaskable
Interupsi yang tidak dapat didisable dengan instruksi perangkat lunak.
Metode Interupsi:
- Polling/polled interupt
Berdasarkan urutan prioritas yang telah ditentukan sebelum piranti memerlukan interupsi.
Misal: piranti A dan B mempunyai urutan prioritas A lebih Iebih dulu dari B, maka jika A dan B secara bersamaan memerlukan pelayanan interupsi, maka piranti A akan didahulukan.
- Vector Interupt
Peralatan yang berinterupsi diidentifikasikan secara Iangsung dan dihubungkan routine pelayanan vector interupt.
INTR = Sinyal yang dikeluarkan oleh peralatan.
INTA = Sinyal kendali yang digunakan CPU untuk menyiapkan pelayanan interrupt. Cara yang biasa digunakan dengan metode daisy chain dan encoder prioritas.
Interupsi yang tidak dapat didisable dengan instruksi perangkat lunak.
Metode Interupsi:
- Polling/polled interupt
Berdasarkan urutan prioritas yang telah ditentukan sebelum piranti memerlukan interupsi.
Misal: piranti A dan B mempunyai urutan prioritas A lebih Iebih dulu dari B, maka jika A dan B secara bersamaan memerlukan pelayanan interupsi, maka piranti A akan didahulukan.
- Vector Interupt
Peralatan yang berinterupsi diidentifikasikan secara Iangsung dan dihubungkan routine pelayanan vector interupt.
INTR = Sinyal yang dikeluarkan oleh peralatan.
INTA = Sinyal kendali yang digunakan CPU untuk menyiapkan pelayanan interrupt. Cara yang biasa digunakan dengan metode daisy chain dan encoder prioritas.
III. Direct Memory Access (DMA)
Metode transfer data secara langsung antara memori
dengan piranti tanpa pengawasan dan pengendalian CPU.
• Skema transfer blok DMA dual port CPU dan DMA controller mengakses memori
utama melalui MAR dan MBR dengan menggunakan sebuah memori utama dual port (2
port).
Port I —-> melayani CPU
Port II —-> melayani DMA controller
Port I —-> melayani CPU
Port II —-> melayani DMA controller
• Skema transfer blok DMA cycle stealing (pencurian siklus)
Hanya memerlukan sebuah memori port tunggal dimana CPU dan piranti I/O beradu cepat pada basis asinkron, prioritas utama akan diberikan pada piranti I/O.
Hanya memerlukan sebuah memori port tunggal dimana CPU dan piranti I/O beradu cepat pada basis asinkron, prioritas utama akan diberikan pada piranti I/O.
TRANSFER DATA
1. Format
transfer:
- Paralel : semua bit pada karakter (word dengan
panjang tertentu) dikirim secara bersamaan dalam batas waktu yang diberikan.
- Serial : Data dikirim secara berurutan dalam satu saluran.
Transfer data secara paralel lebih cepat daripada secara serial karena saluran transmisinya banyak, kelemahannya kalau terlalu panjang akan terjadi interferensi antar saluran.
- Serial : Data dikirim secara berurutan dalam satu saluran.
Transfer data secara paralel lebih cepat daripada secara serial karena saluran transmisinya banyak, kelemahannya kalau terlalu panjang akan terjadi interferensi antar saluran.
2. Mode
transfer data:
1. Synchronous mode
Baris kendali digunakan untuk mengsinkronkan waktu pada semua kejadian yang terjadi selama periode waktu tertentu.
Kelemahan:
Baris kendali digunakan untuk mengsinkronkan waktu pada semua kejadian yang terjadi selama periode waktu tertentu.
Kelemahan:
• Tiap piranti I/O berbeda-beda kecepatan operasinya, sehingga harus diturunkan
pada kecepatan yang
paling rendah.
2. Asynchronous mode
Menggunakan teknik jabat tangan (hand shaking) untuk menyakinkan transfer data
antara pengirim dan penerima tidak ada kesalahan (data valid)
Kelemahan :
- memerlukan lebih banyak kendali
- kecepatan transfer lebih rendah dari yang sebenarnya.
Kelemahan :
- memerlukan lebih banyak kendali
- kecepatan transfer lebih rendah dari yang sebenarnya.
Kelebihan :
- memungkinkan penggunaan piranti I/O yang memiliki berbagai varasi kecepatan dalama system yang sama.
- memungkinkan penggunaan piranti I/O yang memiliki berbagai varasi kecepatan dalama system yang sama.
INTERFACING PIRANTI I/O
Defenisi :
Suatu alat yang digunakan untukmenghubungkan suatu
piranti dengan CPU melalui BUS.
Fungsi Umum :
Mensinkronkan data transfer antara CPUdan piranti
I/O
Fungsi Detail :
· Penyedia status piranti I/O bagi CPU
· Memiliki kemampuan interupsi / DMA
· Mampu me-transfer instruksi CPU ke piranti
· Mampu berfungsi sebagai buufer storage data
transfer.
· Mampu melakukan pengujian kesamaan data.
· Mampu men-decode dan mgng-encode data
· Memiliki fasilitas khusus :
· Konversi data paralel-ke-serial dan
sebaliknya.
· Encoding karakter ketik ke VDU.
· Encoding karakter ketik tertentu : F1,
F2,BACKSPC, DELETE dan sebagainya.
· Menyediakan sinyal status operasi.
Komponen Utama Interface Piranti I/O :
1. Device dependent
bagian yang melayani piranti
2. Device independent
bagian yang menghubungkan unit interface ke bus
sistem.
· Struktur Interface Piranti I/O :
1. Register
Ø kendali (CR) mencatat instruksi dan informasi
dalam piranti.
Ø Status (SR)mencatat status piranti dan
mengeluarkan pesan kesalahan
Ø Data input (IDR) dan data output (ODR)
sebagai buffer data untuk operasi input dan output.
2. Bus
Ø Receiver : menangani data input
Ø Transciever : sirkuit bi-directional data
menangani input maupun output
Ø driver/buffer bus : sirkuit tri-state yang
menyimpan informasi bus.
Sistem Prosesor I/O
General Purpose komputer yang berisi sejumlahsaluran
DMA, CPU tersendiri, kumpulan intruksi danmenjalankannya secara paralel pada
CPU utama.
Fungsi :
sebagai piranti front end yang menangani setiapaspek
I/O, dan menyediakan pengendali I/O khusus yangdisebut I/O Channel.
Instruksi IOP :
1. Instruksi transfer data : untuk Input
(pembacaan),output (penulisan) dan untuk membaca informasi status.
2. Instruksi general purpose : instruksi
aritmatika, logika,percabangan (konversi, prioritas operasi, evaluasialamat,
jump instruksi)
3. Instrusksi kendali : instruksi untuk
menangani fungsipiranti I/O khusus yang tidak terlibat dalam transferdata.
Contoh : pmemindahkan head R/W untukmenentukan lokasi track dan record pada
disk,mencetak pindah baris pada printer, dan-lain-lain.
Format Instruksi IOP :
1. Field opcode : representasi jenis
operasi
2. field alamat memori : alamat awal blok
memori yangdigunakan untuk transfer.
3. field word count : jumlah word yang
harus ditransfer(panjang blok memori).
4. field kendali: untuk fungsi-fungsi piranti
I/O khusus.
5. Field status : untuk tujuan komunikasi
dan pencatatan.
sumber :
http://gamapermana80.blogspot.com/2012/01/sistem-input-output.html
Tidak ada komentar:
Posting Komentar