DEFINISI MODUL I/O :
Modul I/O 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. Tidak hanya sekedar modul penghubung,
tetapi sebuah piranti yang berisi logika dalam melakukan fungsi komunikasi
antara peripheral dan bus komputer.
Tugas-Tugas Modul I/O :
1) Bertanggung jawab
atas pengontrolan sebuah perangkat luar
2) Bertanggung jawab atas
pertukaran data antar perangkat luar tersebut dengaan memori utama ataupun
dengan register-register CPU
3) Antarmuka internal
dengan computer (CPU dengan memori utama)
4) Antarmuka internal dengan
perangkat eksternal untuk menjalankan fungsi-fungsi pengontrolan
Fungsi Utama Modul I/O:
1) Sebagai piranti antarmuka
ke CPU dan memori ke bus system
2) Sebagai piranti antarmuka
dengan peraalatan periperaal lainnyaa dengaan menggunakan link data tertentu
Untuk lebih jelasnya dapat dilihat
gambar dibawah ini :
Fungsi Modul I/O:
1) Control dan Timing
2) Komunikasi CPU
- Sebagai media
komunikasi dari CPU menuju device eksternal
3) Komunikasi Perangkat
- Sebagai media
komunikasi dari device eksternal menuju CPU
4) Data Buffering
- Berfungsi sebagai
penampung data sementara baik dari CPU/memori maupun dari peripheral peripheral
5) Deteksi error
- Berfungsi sebagai
pendeteksi kesalahan yang ditimbulkan oleh device
Skema perangkat peripheral
Interface
ke modul I/O adalah dalam bentuk signal-signal kontrol,status,dan data. Data
berbentuk sekumpulan bit untuk dikirimkan ke modul I/O atau diterima dari modul
I/O. control signal menentukan fungsi-fungsi yang akan dilakukan perangkat,
seperti mengirimkan data ke modul I/O ( input atau read), menerima data dari
modul I/O ( output / write), report status, atau membentuk fungsi kontrol
tertentu ke perangkat ( misalnya, posisi head disk). Signal status menandai
status perangkat untuk mengirimkan data.
Control logic berkaitan dengan perangkat yang mengontrol operasi perangkat
dalam memberikan respons yang berasal dari modul I/O. Transduser mengubah data
dari energi listrik menjadi energi lain selama berlangsungnya output dan dari
bentuk energi tertentu menjadi energi listrik selama berlangsungnya input.
Umumnya, suatu buffer dikaitkan dengan transduser untuk menampung sementara
data yang ditansfer diantara modul I/O dan dunia luar. Ukuran buffer yang umum
adalah 8 hingga 16 bit.
Buffering
Tujuan utama buffering adalah mendapatkan penyesuaian data sehubungaan
perbedaaan laaju transfer data dari perangkat periperaal dengan kecepatan
pengolahan data CPU.
Umumnya buffering memiliki laju tranfer data dari perangkat peripheral lebih
lambat dari kecepatan CPU maupun media penyimpanan. contoh nya sebuah file
sedang diterima melalui modem dan ditujukan ke media penyimpanan di hard disk
kecepatan modem tersebut kira-kira hanyalah 1/1000 dari pada hard disk. jadi
buffer dibuat di dalam memori utama untuk mengumpulkan jumlah byte yang
diterima dari modem.
Struktur Bus I/O
1) Saluran data
Saluran yang memberikan lintasan bagi perpindahan data antara dua modul system.
Umumnya bus data terdiri dari 8,16,32 saluran, jumlah saluran dikaitkan dengan
lebar bus data. Karena pada saat tertentu masing-masing saluran hanya dapat
membawa 1 bit, maka jumlah saluran menentukan jumlah bit yang dapat dipindahkan
pada saat tertentu. Lebar bus data merupakan factor penting dalam mentukan
kinerja system secara keseluruhan. Bila bus data lebarnya 8 bit, dan setiap
intruksinya dengan panjang 16 bit, maka CPU harus 2kali mengakses modul memori
dalam setiap siklus intruksinya.
2) Saluran
control
Bus control digunakan untuk mengontrol akses ke saluran alamat, penggunaan data
dan saluran alamat. Karena data dan saluran alamat digunakan bersama oleh
seluruh komponen, maka harus ada alat untuk mengontrol penggunaanya.
Signal-signal control melakukan trasmisi baik perintah maupun informasi
perwaktuan diantara modul-modul system.
3) Saluran alamat
Digunakan untuk menandakan sumber atau tujuan data pada bus data, misalnya CPU
akan membaca sebuah word (8,16,32 bit ) data memori, maka CPU akan menaruh
alamat word yang dimaksud pada saluran alamat. Lebar bus menentukan kapasitas
memori maksimum system. Selain itu umumnya saluran alamat ini digunakan untuk
memilih lokasi memori atau port I/O pada modul.
Terdapat berbagai macam modul I/O
seiring perkembangan komputer itu sendiri, contoh yang sederhana dan fleksibel
adalah Intel 8255A yang sering disebut PPI (Programmable Peripheral Interface).
Bagaimanapun kompleksitas suatu modul I/O, terdapat kemiripan struktur, seperti
terlihat pada gambar dibawah ini:
Gambar
Modul I/O Intel 8255A
Modul
dihubungkan dengan bagian-bagian computer lainnya melalui saluran signal
(misalnya, saluran bus system). Data yang dipindahkan ke modul dan dari modul
di-buffer-kan dalam sebuah register data atau lebih. Mungkin juga terdapat
sebuah register status atau lebih yang memberikan informasi status saat itu.
Register status dapat juga berfungsi sebagai register control, untuk menerima
informasi control secara detail dari CPU. Logic pada modul berinteraksi dengan
CPU melalui sejumlah saluran control.
Saluran-saluran ini digunakan oleh CPU untuk memberikan perintah ke modul
I/O. beberapa saluran control dapat digunakan oleh modul I/O. Modul juga dapat
mengetahui dan menghasilkan alamat-alamat yang berkaitan dengan perangkat yang
dikontrolnya. Setiap modul I/O memiliki alamat yang unik, atau apabila modul
I/O mengontrol lebih dari sebuah perangkat eksternal, maka terdapat sekumpulan
alamat yang unik. Terakhir, modul I/O terdiri dari logic yang bersifat khusus
bagi interface dengan setiap perangkat yang dikontrolnya.
Langkah-langkah Penanganan I/O
1. CPU mengecek status modul I/O
Device
2. I/O module
mengirimkan statusnya
3. Jika ready, CPU meminta
transfer data
4. I/O modul mengambil data dari
device
5. I/O modul transfer data keCPU
dalam variasi output yang diinginkan
I/O Terprogram
Klasifikasi I/O terprogram
1. Perintah control.
Perintah ini
digunkan untuk mengaktivasi perangkat peripheral dan memberitahukan tugas yang
diperintahkan padanya.
2. Perintah test.
Perintah ini
digunakan CPU untuk menguji berbagai kondisi status modul I/O dan
peripheralnya. CPU perlu mengetahui perangkat peripheralnya dalam keadaan aktif
dan siap digunakan, juga untuk mengetahui operasi – operasi I/O yang dijalankan
serta mendeteksi kesalahannya.
3. Perintah read.
Perintah pada
modul I/O untuk mengambil suatu paket data kemudian menaruh dalam buffer
internal. Proses selanjutnya paket data dikirim melalui bus data setelah
terjadi sinkronisasi data maupun kecepatan transfernya.
4. Perintah write.
Perintah ini
kebalikan dari read. CPU memerintahkan modul I/O untuk mengambil data dari bus
data untuk diberikan pada perangkat peripheral tujuan data tersebut.
Implementasai perintah dalam
intruksi I/O :
1) Memory-Mapped I/O
• Terdapat ruang tunggal untuk lokasi
memori daan perangkat I/O
• CPU memperlakukan register
status dan register data modul I/O sebagai lokasi memori dan menggunakan
intruksi mesin yang samauntuk mengakses baik memori ataupun perangkat I/O
• Konsekuensinya adalah diperlukan perangkat
tunggaluntuk pembacaan dan saaluran tunggal untuk penulisan
• Keuntungan dari memory-mapped I/O adalah
efisien daam pemrograman, namun memakan banyak ruang memory alamat
2) Isolated I/O
• Dilakukan pemisahan ruang pengalamatan
bagi memory dan ruang pengalamatan bagi I/O
• Dengan teknik ini diperlukan bus yang
dilengkapi dengan saluran pembacaan dan penulisan memory ditambah saluran
perintah output
• Kesulitan isolated I/O adalah
sedikitnya intruksi I/O
Metode Operasi Sistem I/O
1.
I/O Terprogram
Pada I/O
terprogram, data saling dipertukarkan antara CPU dan modul I/O. CPU
mengeksekusi program yang memberikan operasi I/O kepada CPU secara
langsung,seperti pemindahan data, pengiriman perintah baca maupun tulis, dan
monitoring perangkat. Kelemahan teknik ini adalah CPU akan menunggu sampai
operasi I/O selesai dilakukan modul I/O sehingga akan membuang waktu, apalagi
CPU lebih cepat proses operasinya.
2. I/O Instruksi (Demand Driven)
Driven
I/O memungkinkan proses tidak membuang – buang waktu. Prosesnya adalah CPU
mengeluarkan perintah I/O pada modul I/O, bersamaan perintah I/Odijalankan
modul I/O maka CPU akan melakukan eksekusi perintah – perintah lainnya.Apabila
modul I/O telah selesai menjalankan instruksi yang diberikan padanya akan
melakukan interupsi pada CPU bahwa tugasnya telah selesai.
3. Direct Memory Access (DMA)
Teknik yang
dijelaskan sebelumnya yaitu I/O terprogram dan Interrupt-Driven I/O memiliki
kelemahan, yaitu proses yang terjadi pada modul I/O masih melibatkan CPU secara
langsung. Hal ini berimplikasi pada :
• Kelajuan transfer I/O yang
tergantung pada kecepatan operasi CPU.
• Kerja CPU terganggu karena adanya
interupsi secara langsung.
Bertolak dari kelemahan di atas, apalagi untuk menangani transfer data
bervolume besar dikembangkan teknik yang lebih baik, dikenal dengan Direct
Memory Access (DMA). Prinsip kerja DMA adalah CPU akan mendelegasikan
kerja I/O kepada DMA, CPU hanya akan terlibat pada awal proses untuk memberikan
instruksi lengkap pada DMA dan Akhir proses saja. Dengan demikian CPU dapat
menjalankan proses lainnya tanpa banyak terganggu dengan interupsi.
Transfer Data
1. Format Transfer
Paralel : Semua
bit pada karakter dikirim secara bersamaan dalam batas
waktu tranmisi tertentu.
Serial :
Data dikirm secara berurutan dalam satu baris komnikasi
tunggal, sehingga antara pengirim dan penerima harus membagi batas
waktu pengiriman karakter menjadi beberapa sub interval pengiriman.
Transfer paralel
lebih cepat karena memiliki saluran tranmisi yang banyak, tapi tidak
bias diterapkan pada jarak yang terlalu panjang, karena dapat terjadi
interfensi antar saluran.
2. Mode Transfer
a. Synchronous
Kecepatan
piranti I/0 yang bervariasi sedang data yang dikirim secar serial dan
bergantian dalam periode yang sudah diterapkan, maka kecepatan transfer di set
pada piranti I/O dengan kecepatan rendah.
b. Asynchronous
Proses back and
forth dalam meneruskan sinyal kendali dari pengirim ke penerima.
Interfacing Piranti I/O
Suatu alat yang
digunakan untuk menghubungkan suatu piranati dengan CPU melalui BUS.
Fungsi Umum:
Mensinkronkan data
transfer antara CPU dan piranti I/O.
Fungsi Detail :
1. Penyedia status piranti I/O
bagi CPU
2. Memiliki kemampuan interupsi /
DMA
3. Mampu mentransfer instruksi CPU
ke piranti
4. Mampu berfungsi sebagai buffer
storage data transfer
5. Mampu melakukan pengujian
kesamaan data
6. Mampu mendecode dan
mengencode data
7. Memiliki fasilitas khusus:
Konversi data paralel ke serial, Encoding karakter F1,F2
BACKSPACE,
DELETE dan lain-lain
8. Menyediakan sinyal status
operasi
Struktur Interface :
1. Register
Kendali (CR) : Mencatat
instruksi dan informasi dalam piranti.
Status
(SR) : Mencatat status piranti dan mengeluarkan pesan kesalahan.
Data Input
(IDR) dan Data Ouput : sebagai buffer data untuk operasi input
dan output.
2. BUS
Receiver : Menangani
data input.
Transciever
: Sirkuit bidirectional data menangani input maupun output.
Driver /
Buffer Bus : Sirkuit tri state yang menyimpan informasi bus.
Sistem Prosessor I/O
General Purpose komputer yang berisi
sejumlah saluran DMA, CPU tersendiri dan menjalankannya secara paralel.
Fungsi :
Sebagai piranti
front end yang menangani setiap aspek I/O dan menyediakan pengendali I/O khusus
yang disebut I/O Channel.
Instruksi IOP :
1. Instruksi Transfer Data
Input (Pembacaan),
Output (Penulisan) dan membaca informasi status.
2. Instruksi General Purpose
Instruksi Aritmatika,
Logika, Percabangan (Konversi, Prioritas Operasi, Evaluasi Alamat, Jump
Instruksi).
3. Instruksi Kendali
Instruksi untuk
menangani fungsi piranti I/O khusus yang tidak terlibat dalam transfer data,
contoh : Memindahkan head R/W untuk menentukan lokasi track dan record pada
disk.
Format Instruksi IOP :
1. Field Opcode : Representasi
Jenis Operasi.
2. Field Alamat Memori : Aalamt awal
blok memori yang digunakan untuk transfer.
3. Field Word Count : Jumlah word yang
harus ditransfer.
4. Field Kendali : Untuk
fungsi-fungsi piranti I/O khusus.
5. Field Status : Untuk tujuan
komunikasi dan pencatatan.
Sumber Referensi :
Hatur Nuhun ^_^
Tidak ada komentar:
Posting Komentar