Pengertian modul I/O, fungsi modul I/O dalam menjalankan tugas dikategorikan menjadi beberapa kategori yaitu, fungsi utama modul I/O, struktur modul I/O, teknik masukan / keluaran, implementasi perintah dalam intruksi I/O.
Pada
artikel ini saya akan membahas mengenai modul I/O . Banyak sekali yang belum
memahami antara perangkat I/O dan Modul I/O yang sebenarnya memiliki perbedaan
yang sangat jelas. Pada artikel sebelumnya saya sudah membahas mengenai
perangkat I/O atau perangkat Input/Output.
PENGERTIAN MODUL I/O
Modul
I/O adalah suatu komponen dalam sistem komputer yang bertanggung jawab atas
pengendalian sebuah perangkat luar atau bertanggung jawab dalam pertukaran data
antara perangkat luar dengan memory utama ataupun dengan register-register CPU
atau sebuah konektor mekanik yang berisi fungsi logic untuk komunikasi antara
bus komputer dan peripheral.Modul I/O bertanggung jawab atas pengontrolan
sebuah perangkat luar, bertanggung jawab atas pertukaran data antar perangkat
luar dengan memori utama maupun dengan register-register CPU, Antar muka antara
CPU dengan memori utama, antar muka internal dengan perangkat eksternal untuk
menjalin fungsi-fungsi pengontrolan.
FUNGSI MODUL I/O DALAM MENJALANKAN TUGAS DIKATEGORIKAN MENJADI BEBERAPA KATEGORI YAITU :
Kontrol dan pewaktuan (Control and Timing)
Berfungsi
untuk mensinkronkan kerja masing-masing komponen penyusun komputer. Perangkat
komponen penyusun komputer seperti CPU yang berkomunikasi dengan satu atau
lebih perangkat pola dan kecepatan transfer yang beragam baik dengan perangkat
internal seperti register-register, memori utama, memori sekunder atau
perangkat peripheral.
Contoh kontrol pemindahan data dari peripheral ke CPU melalui sebuah modul I/O meliputi :
- Permintaan dan Pemeriksaan status perangkat dari CPU ke modul I/O.
- Modul I/O memberi jawaban atas permintaan CPU.
- Jika perangkat eksternal sudah siap untuk proses transfer data maka CPU akan mengirim perintah ke Modul I/O.
- Modul I/O akan menerima paket data dengan panjang tertentu dari peripheral.
- Data dikirim ke CPU setelah diadakan sinkronisasi panjang data dan kecepatan transfer oleh modul I/O sehingga paket-paket data dapat diterima CPU dengan baik.
- Pada Transfer data tidak akan lepas dari penggunaan sistem bus maka interaksi CPU dan modul I/O akan melibatkan kontrol dan pewaktu.
Komunikasi CPU
Fungsi Komunikasi dengan modul I/O meliputi proses berikut :
- Command Decoding yaitu modul I/O yang menerima perintah-perintah dari CPU yang dikirimkan sebagai sinyal bagi bus control.
- Data yaitu pertukaran data antara CPU dan modul I/O melalui bus data.
- Status Reporting yaitu pelaporan kondisi status modul I/O maupun perangkat peripheral (kondisi Busy atau Ready)
- Address Recognition yaitu komponen penyusun computer dapat dihubungi atau dipanggil maka harus memiliki alamat yang unik sehingga setiap modul I/O harus mengetahui alamat peripheral yang dikontrolnya.Pada sisi modul I/O ke perangkat peripheral juga terdapat komunikasi yang meliputi komunikasi data, control maupun status.
Komunikasi Perangkat Eksternal
Pem-bufferan
data yaitu mendapatkan penyesuaian data sehubungan perbedaan laju transfer data
dari perangkat peripheral dengan kecepatan pengolahan pada CPU. Laju transfer
data dari perangkat peripheral lebih lambat dari kecepatan CPU maupun media
penyimpanan. Contoh : Sebuah file sedang diterima melalui modem dan ditujukan
ke media penyimpanan harddisk kecepatan modem tersebut kira-kira hanyalah
1/1000 dari pada harddisk. Jadi buffer dibuat didalam memori utama untuk mengumpulkan
jumlah byte yang diterima dari modem.
FUNGSI UTAMA MODUL I/O :
- Sebagai piranti antarmuka ke CPU dan memori ke bus system.
- Sebagai piranti antarmuka dengan peralatan peripheral lainnya dengan menggunakan link data tertentu.
STRUKTUR MODUL I/O
Saluran control
Saluran
yang digunakan untuk mengontrol akses ke salurn alamat, penggunaan data dan
saluran alamat.
Saluran Data
Saluran yang memberikan lintasan bagi perpindahan data antaar dua modul system.
Saluran Alamat
Saluran
yang digunakan untuk menandakan sumber atau tujuan data pada bus data.
TEKNIK MASUKAN / KELUARAN
Terdapat
3 teknik dalam proses kerja I/O yaitu I/O terprogram, Interrupt-driven I/O dan
DMA
I/O TERPROGRAM
Pada
I/O Terprogram data saling dipertukarkan antara CPU dan Modul I/O. CPU
mengeksekusi program 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.
Perintah
Control
Perintah
untuk aktivasi perirheral dan memberikan tugas yang diperintahkan.
Perintah
Test
Perintah
untuk menguji status modul I/o dan peripheral.
Perintah
Read
Perintah
untuk mengambil paket data kemudian menaruh dalam buffer internal selanjutnya
akan dikirim melalui bus data.
Perintah
Write
Perintah
untuk mengambil data dari bus data untuk diberikan pada perangkat peripheral
tujuan data.
INTERRUPT-DRIVEN I/O
Teknik
Interrupt-driven I/O memungkinkan proses tidak membuang-buang waktu. Prosesnya
adalah CPU mengeluarkan perintah I/O pada modul I/O bersamaan perintah I/O
dijalankan maka CPU akan melakukan eksekusi perintah-perintah lainnya dan
setelah perintah I/O dijalankan maka I/O akan melakukan interupsi pada CPU
bahwa tugasnya telah selesai. Pada teknik ini tanggung jawab dipegang oleh CPU.
Kelebihan teknik ini disbanding teknik sebelumnya adalah CPU dapat melakukan
Multitasking beberapa perintah sekaligus sehingga tidak ada waktu tunggu bagi
CPU.
TEKNIK DMA (DIRECT MEMORY ACCESS)
CPU
akan mendelegasikan kerja I/O kepada DMA. CPU hanya akan terlibat pada awal
proses untuk memberikan intruksi lengkap pada DMA dan akhir proses. Dalam
melakukan transfer DMA memerlukan pengambilan control bus dari CPU maka dari
itu DMA akan menggunakan bus ketika CPU tidak menggunakannya atau DMA akan
memaksa CPU berhenti menggunakan untuk sementara.
IMPLEMENTASI PERINTAH DALAM INTRUKSI I/O
Memory-Mapped I/O
Dalam
memory-mapped I/O terdapat ruang tunggal untuk lokasi memori dan perangkat I/O.
CPU menggunakan register status dan register data modul I/O sebagai lokasi
memori dan menggunakan intruksi mesin yang sama untuk mengakses memori maupun
perangkta I/O sehingga diperlukan saluran tunggal untuk pembacaan dan
penulisan. Kelebihan teknik ini adalah efidien dalam pemrograman tetapu memakan
banyak ruang memori alamat.
Isolated I/O
Dalam
teknik ini dilakukan pemisahan ruang pengalamatan bagi I/O/. dengan teknik ini
diperlukan bus yang dilengkapi dengan saluran pembacaan dan penulisan memori
ditambah saluran perintah output. Kelebihan teknik ini adalah sedikitnya
intruksi I/O.
Semoga
dengan artikel yang saya tulis dapat menambah pengetahuan pembaca.