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. Dalam teknik ini, modul
I/O tidak dapat melakukan interupsi kepada
CPU terhadap
proses – proses yang diinteruksikan padanya. Seluruh
proses merupakan tanggung jawab
CPU sampai operasi lengkap dilaksanakan. Untuk melaksanakan perintah – perintah
I/O, CPU akan mengeluarkan sebuah alamat bagi modul
I/O dan perangkat peripheralnya sehingga terspesifikasi secara khusus dan sebuah perintah
I/O yang akan dilakukan.
Terdapat
empat
klasifikasi
perintah
I/O, yaitu:
• Perintah
control. Perintah ini digunkan untuk mengaktivasi perangkat
peripheral dan pemberitahukan tugas
yang diperintahkan padanya.
• 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.
• 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.
• 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.
Dalam teknik I/O terprogram, terdapat dua macam inplementasi perintah
I/O yang tertuang dalam instruksi
I/O, yaitu:
memory-mapped I/O dan
isolated I/O. Dalam
memory-mapped I/O, terdapat ruang tunggal untuk lokasi memori dan perangkat
I/O. CPU memperlakukan
register status dan
register data modul
I/O sebagai lokasi memori dan menggunakan instruksi mesin
yang sama untuk mengakses baik memori maupun perangkat
I/O. Konskuensinya adalah diperlukan saluran tunggal untuk pembacaan dan saluran tunggal untuk penulisan. Keuntungan
memory-mapped I/O adalah efisien dalam pemrograman, namun memakan banyak ruang memori alamat.
Dalam teknik
isolated I/O, dilakukan pemisahan ruang pengalamatan bagi memori dan ruang pengalamatan bagi
I/O. Dengan teknik ini diperlukan
bus yang dilengkapi dengan saluran pembacaan dan penulisan memori ditambah saluran perintah
output. Keuntungan
isolated I/O adalah sedikitnya instruksi
I/O.
Tidak ada komentar:
Posting Komentar