Teknik input output
1.2.2.3
Mencoba/ Mengumpulkan informasi
Menurut Stalling
(Stalling, 1997, hal. 70) terdapat tiga buah teknik dalam operasi Input-Output,
yaitu I/O terprogram, interrupt-driven, dan DMA (Direct Memory
Access).Ketiganya memiliki keunggulan maupun kelemahan, yang penggunaanya
disesuaikan sesuai untuk kerja masing-masing teknik. Berikut penjelasannya:
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. Sistem Komputer SMK/MAK Kelas XI Semester I 11
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:
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.
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.
Interrupt-Drivenn
I/O
Teknik interrupdriven I/O
memungkinkan proses tidak membuang-buang waktu. Prosesnya adalah CPU
mengeluarkan perintah I/O pada modul I/O, bersamaan perintah I/O dijalankan
modul I/O maka CPU akan melakukan eksekusi perintah-perintah lainnya. Apabila
modul I/O telah selesai menjalankan instruksi yang diberikan padanya maka akan
melakukan interupsi pada CPU bahwa tugasnya telah selesai.
Dalam teknik ini kedali
perintah masih menjadi tanggung jawab CPU, baik pengambilan perintah dari
memori maupun pelaksanaan isi perintah tersebut.Terdapat selangkah kemajuan
dari teknik sebelumnya, yaitu CPU melakukan multitasking beberapa perintah
sekaligus sehigga tidak ada waktu tunggu bagi CPU.
Cara kerja teknik
interupsi pada modul I/O adalah modul I/O menerima perintah, misal read.
Kemudian modul I/O melaksanakan perintah pembacaan dari peripheral dan
meletakkan paket data ke register data modul I/O, selanjutnya modul
mengeluarkan sinyal interupsi ke CPU melalui saluran kontrol. Kemudian modul
menunggu datanya diminta CPU.Saat permintaan terjadi, modul meletakkan data
pada bus data dan modul siap menerima perintah selanjutnya.
Pengolahan interupsi saat perangkat I/O telah
menyelesaikan sebuah operasi I/O adalah sebagai berikut:
a) Perangkat
I/O akan mengirimkan sinyal interupsi ke CPU.
b) CPU
menyelesaikan interupsi tersebut, kalau valid maka CPU akan mengirimkan sinyal
acknowledgment ke perangkat I/O untuk menghentikan interupsinya.
c) CPU
mempersiapkan pengontrolan transfer ke rountine interupsi. Hal yang dilakukan
adalah menyimpan informasi yang diperlukan untuk melanjutkan operasi yang tadi
dijalankan sebelum adanya interupsi. Informasi yang diperlukan berupa:
·
Status prosesor, berisi register yang
dipanggil PSW (Program Status Word).
·
Lokasi intruksi berikutnya yang akan
dieksekusi. Informasi tersebut kemudian disimpan dalam stack pengontrol sistem.
d. Kemudian CPU akan menyimpan PC (Program
Counter) eksekusi sebelum interupsi ke stack pengontrol bersama informasi PSW.
Selanjutnya mempersiapkan PC untuk penanganan interupsi.
e. Selanjutnya
CPU memproses interupsi sampai selesai.
f. Apabila
pengolahan interupsi selesai, CPU akan memanggil kembali informasi yang telah
disimpan pada stack pengontrol untuk meneruskan operasi sebelum interupsi.
terdapat bermacam teknik yang digunakan CPU dalam menangani program interupsi
ini, diantaranya:
Multiple Interrupt Lines
Multiple Interrupt Lines merupakan teknik penanganan
program interupsi paling sederhana dengan menggunakan saluran interupsi
berjumlah banyak antara CPU dan modul-modul I/O. Namun tidak praktis untuk
menggunakan sejumlah saluran bus atau pin CPU ke seluruh saluran interupsi
modul-modul I/O.
Software Poll
Software Poll merupakan teknik penanganan interupsi
dimana prosesnya apabila CPU mengetahui adanya sebuah interupsi, maka CPU akan
menuju ke rountine layanan interupsi yang tugasnya melakukan poll seluruh modul
I/O untuk menentukan modul yang melakukan interupsi. Kerugian software poll
adalah memerlukan waktu yang lama karena harus mengidentifikasi seluruh modul
untuk mengetahui modul I/O yang akan melakukan interupsi.
Daisy Chain.
Daisy Chain merupakan teknik penanganan interupsi yang
lebih efisien dibandingkan dengan yang menggunakan hardware poll.Seluruh modul
I/O tersambung dalam saluran interupsi CPU secara melingkar (chain). Apabila
ada permintaan interupsi, maka CPU akan menjalankan sinyal acknowledge yang
berjalan pada saluran interupsi sampai menjumpai modul I//O yang mengirimkan
interupsi.
Arbitrasi bus
Arbitrasi bus merupakan teknik penanganan interupsi
dimana pertama-tama modul I/O memperoleh kontrol bus sebelum modul ini
menggunakan saluran permintaan interupsi. Dengan demikian hanya akan terdapat sebuah
modul I/O yang dapat melakukan interupsi.
Direct Memory Access (DMA)
Teknik yang dijelaskan sebelumnya yaitu
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 dan kerja CPU terganggu
karena adanya interupsi secara langsung.
Bertolak dari kelemahan di atas, apalagi untuk
menangani transfer data bervolume besar dikembangkang terknik yang lebih baik,
dikenal dengan Direct Memory Access (DMA). Prinsip kerja DMA adalah CPU akan
mendelegasikan kerja I/O kepada DMA dan akhir proses saja. Dengan demikian CPU
dapat menjalankan proses lainnya tanpa banyak terganggu dengan interupsi. Blok
diagram modul DMA terlihat pada gambar di bawah ini:

Gambar 1.2.Blok diagram DMA (Sumber : Stalling, 1997)
14 Sistem Komputer SMK/MAK Kelas XI Semester I
Gambar 1.3.Konfigurasi modul DMA (Sumber : Stalling,
1997)
Dalam melaksanakan transfer data secara mandiri, DMA
memerlukan pengambilalihan kontrol bus dari CPU. Untuk itu DMA akan menggunakan
bus bila CPU tidak menggunakannya atau DMA memaksa CPU untuk menghentikan
sementara penggunaan bus. Teknik terakhir lebih umum digunakan sering disebut
cycle-stealing, karena modul DMA mengambil alih siklus bus. Penghentian
sementara penggunaan bus bukanlah bentuk interupsi, melainkan hanyalah
penghentian proses sesaat yang berimplikasi hanya pada kelambatan eksekusi CPU
saja. Terdapat tiga buah konfigurasi modul DMA seperti yang terlihat pada
gambar di atas.
1.2.2.4 Mengasosiasi/ menalar
Teknik Operasi I/O
|
Kelebihan
|
Kekurangan
|
I/O terstruktur
|
||
Interrupt-deviden I/O
|
||
DMA (Dirrect Memory Acces
|
Lengkapilah tabel diatas dan
Buatlah kesimpulan mengenai :
1.
Teknik Input dan Output komputer
2.
Kelemahan teknik Input dan Output computer
3. Kelebihan Input dan Output
komputer
Sistem Komputer SMK/MAK Kelas XI Semester I 15
1.2.2.5 Mengkomunikasikan
Presentasikanlah
hasil kerja kelompokmu didepan kelas dengan penuh rasa percaya diri mengenai :
1. Teknik Input dan Output komputer
2. Kelemahan teknik Input dan Output computer
3. Kelebihan Input
dan Output komputer
1.2.3.
Rangkuman
Menurut
Stalling (Stalling, 1997, hal. 70) terdapat tiga buah teknik dalam operasi Input-Output,
yaitu:
1.
I/O
terprogram
Pada I/O
terprogram, data (pemindahan data, pengiriman perintah baca maupun tulis, dan
monitoring perangkat) saling dipertukarkan antara CPU dan modul I/O.
Kelemahan
teknik ini adalah CPU akan menunggu sampai operasi I/O selesai dilakukan modul
I/O sehingga akan membuang waktu. Terdapat empat klasifikasi perintah I/O,
yaitu: (a) Perintah control, (b) Perintah test, (c) Perintah read, (d) Perintah
write. 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.
2.
Interrupt-Drivenn
I/O
Teknik
interrupt driven I/O memungkinkan proses tidak membuang-buang waktu. Dalam
teknik ini kendali perintah masih menjadi tanggung jawab CPU, baik pengambilan
perintah dari memori maupun pelaksanaan isi perintah tersebut.
Cara kerja
teknik interupsi pada modul I/O adalah modul I/O menerima perintah, kemudian
melaksanakan perintah dari peripheral dan meletakkan paket data ke register
data modul I/O, selanjutnya modul mengeluarkan sinyal interupsi ke CPU
melalui saluran kontrol.Kemudian modul menunggu datanya diminta CPU.
Pengolahan
interupsi saat perangkat I/O telah menyelesaikan sebuah operasi I/O adalah
sebagai berikut:
a.
Perangkat
I/O akan mengirimkan sinyal interupsi ke CPU.
b.
CPU
menyelesaikan interupsi tersebut.
c.
CPU
mempersiapkan pengontrolan transfer ke rountine interupsi dengan menyimpan
informasi berupa: (1) Status prosesor, (2) Lokasi intruksi berikutnya.
d.
Kemudian
CPU akan menyimpan PC (Program Counter) eksekusi sebelum interupsi ke stack
pengontrol bersama informasi PSW.
e.
Selanjutnya
CPU memproses interupsi sampai selesai.
f.
Apabila
pengolahan interupsi selesai, CPU akan memanggil kembali informasi yang telah
disimpan pada stack pengontrol. Terdapat bermacam teknik yang digunakan CPU
dalam menangani program interupsi ini,
diantaranya: (1) Multiple Interrupt Lines, (2)
Software Poll, (3) Daisy Chain, (4) Arbitrasi bus.
3. Direct
Memory Access (DMA)
Prinsip kerja DMA adalah CPU akan mendelegasikan kerja
I/O kepada DMA dan akhir proses saja. Dengan demikian CPU dapat menjalankan
proses lainnya tanpa banyak terganggu dengan interupsi.
Dalam melaksanakan transfer data secara mandiri, DMA
memerlukan pengambilalihan kontrol bus dari CPU. Teknik terakhir lebih umum
digunakan sering disebut cycle-stealing, karena modul DMA mengambil alih siklus
bus.

Komentar
Posting Komentar