Manajemen Unit Masukan dan Keluaran
Sistem Komputer
Tiga komponen utama :
- CPU,
- Memori (primer dan sekunder)
- Peralatan masukan/keluaran (I/O devices) seperti printer, monitor,
keyboard, mouse, dan modem
Modul I/O
vMerupakan peralatan antarmuka (interface) bagi sistem bus atau switch
sentral dan mengontrol satu atau lebih perangkat peripheral.
vTidak hanya sekedar modul penghubung, tetapi sebuah piranti yang berisi logika
dalam melakukan fungsi komunikasi antara peripheral dan bus computer
Piranti tidak tidak langsung dihubungkan dengan bus sistem komputer , Mengapa ?
vBervariasinya metode operasi piranti peripheral, sehingga tidak praktis apabila sistem komputer
harus menangani berbagai macam sisem operasi piranti peripheral tersebut.
vKecepatan transfer data piranti peripheral umumnya lebih lambat dari pada laju transfer
data pada CPU maupun memori.
vFormat data dan panjang data pada piranti peripheral seringkali berbeda dengan CPU,
sehingga perlu modul untuk menselaraskannya.
Dua fungsi utama :
vSebagai piranti antarmuka ke CPU dan memori melalui bus sistem.
vSebagai piranti antarmuka dengan peralatan peripheral lainnya
dengan menggunakan link data tertentu Sistem Masukan & Keluaran Komputer.
vBagaimana modul I/O dapat menjalankan tugasnya ?
vInti mempelajari sistem I/O suatu komputer ?
Menjembatani CPU dan memori dengan vdunia luar merupakan hal yang terpenting
untuk kita ketahui.
vMengetahui fungsi dan struktur modul I/O.
Model generik dari suatu modul I/O
Modul I/O adalah suatu komponen dalam vsistem komputer.
§Bertanggung jawab atas pengontrolan sebuah perangkat
luar atau lebih.
§ Bertanggung jawab pula dalam pertukaran data antara perangkat luar tersebut
dengan memori utama ataupun dengan register –register CPU.
Antarmuka internal dengan komputer v(CPU dan memori utama)
Antarmuka dengan perangkat veksternalnya untuk menjalankan fungsi – fungsi
pengontrolan.
Fungsi Modul I/O
vKontrol dan pewaktuan.
vKomunikasi CPU.
vKomunikasi perangkat eksternal.
vPem-buffer-an data.
vDeteksi kesalahan
Kontrol dan Pewaktuan
v Fungsi kontrol dan pewaktuan (control & timing) merupakan hal yang penting untuk
mensinkronkan kerja masing – masing komponen penyusun komputer.
v Dalam sekali waktu CPU berkomunikasi dengan satu atau lebih
perangkat dengan pola tidak menentu dan kecepatan transfer
komunikasi data yang beragam, baik dengan
perangkat internal seperti register – register, memori utama, memori sekunder,
perangkat peripheral.
v Proses tersebut bisa berjalan apabila ada fungsi kontrol dan
pewaktuan yang mengatur sistem secara keseluruhan.
v Transfer data tidak akan lepas dari penggunaan sistem bus,
maka interaksi CPU dan modul I/O akan melibatkan kontrol dan
pewaktuan sebuah arbitrasi bus atau lebih.
Langkah-langkah pemindahan data dari peripheral ke CPU melalui sebuah modul I/O
vPermintaan dan pemeriksaan status perangkat dari CPU ke modul I/O.
vModul I/O memberi jawaban atas permintaan CPU.
vApabila perangkat eksternal telah siap untuk transfer data,
maka CPU akan mengirimkan perintah ke modul I/O.
vModul I/O akan menerima paket data dengan panjang tertentu dari peripheral.
vSelanjutnya 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.
Buffering
vTujuan utama adalah mendapatkan penyesuaian data sehubungan perbedaan
laju transfer data dari perangkat peripheral dengan kecepatan pengolahan
pada CPU.
vLaju transfer data dari perangkat peripheral lebih lambat dari kecepatan
CPU maupun media penyimpan.
Deteksi Kesalahan
vBila perangkat peripheral terdapat masalah sehingga proses tidak dapat
dijalankan, maka modul I/O akan melaporkan kesalahan tersebut.
§ Misal informasi kesalahan pada peripheral printer seperti:
kertas tergulung, pinta habis, kertas habis.
vTeknik yang umum untuk deteksi kesalahan adalah penggunaan bit paritas.
Struktur Modul I/O
vBerbagai macam modul I/O seiring perkembangan komputer.
§ Intel 8255A yang sering disebut PPI (Programmable Peripheral Interface).
vBagaimanapun kompleksitas suatu modul I/O, terdapat kemiripan struktur.
Antarmuka modul I/O ke CPU melalui bus vsistem komputer terdapat tiga saluran
§ Saluran data
§ Saluran alamat
§ Saluran kontrol.
Bagian terpenting adalah blok logika I/O vyang berhubungan dengan semua
peralatan antarmuka peripheral, terdapat fungsi pengaturan dan switching pada
blok ini.
I/O Terpogram
vData saling dipertukarkan antara CPU dan modul I/O.
vCPU mengeksekusi program yang memberikan operasi I/O kepada CPU
secara langsung.
§ Pemindahan data
§ Pengiriman perintah baca maupun tulis
§ Monitoring perangkat Implementasi perintah dalam instruksi I/O.
v Memory-mapped I/O
v Isolated I/O
Klasifikasi Perintah I/O
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.
Memory-mapped I/O
vTerdapat ruang tunggal untuk lokasi memori dan perangkat I/O.
vCPU 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.
vKonskuensinya adalah diperlukan saluran tunggal untuk pembacaan dan
Saluran tunggal untuk penulisan.
vKeuntungan memory-mapped I/O adalahefisien dalam pemrograman,
Namun memakan banyak ruang memori alamat.
Isolated I/O
vDilakukan pemisahan ruang pengalamatan bagi memori dan ruang
pengalamatan bagi I/O.
vDengan teknik ini diperlukan bus yang dilengkapi dengan saluran
pembacaan dan penulisan memori ditambah saluran perintah output.
vKeuntungan isolated I/O adalah sedikitnya instruksi I/O.
Interrupt – Driven I/O
vProses tidak membuang – buang waktu
§ 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 akan melakukan interupsi pada CPU bahwa tugasnya telah
selesai.
v Kendali perintah masih menjadi tanggung jawab CPU, baik pengambilan
Perintah dari memori maupun pelaksanaan isi perintah tersebut.
v Terdapat selangkah kemajuan dari teknik sebelumnya
§ CPU melakukan multitasking beberapa perintah sekaligus
§ Tidak ada waktu tunggu bagi CPU = Proses Cepat
Cara kerja teknik interupsi di sisi modul vI/O
§ Modul I/O menerima perintah, misal read.
§ Modul I/O melaksanakan perintah pembacaan dari peripheral dan
meletakkan paket data ke register data modul I/O
§ Modul mengeluarkan sinyal interupsi ke CPU melalui saluran kontrol.
§ Modul menunggu datanya diminta CPU Saat permintaan terjadi
§ Modul meletakkan data pada bus data
§ Modul siap menerima perintah selanjutnya
Interrupt
v Pengolahan interupsi saat perangkat I/O telah menyelesaikan sebuah operasi
.I/O
§ Perangkat I/O akan mengirimkan sinyal interupsi ke CPU.
§ CPU menyelesaikan operasi yang sedang dijalankannya kemudian merespon
interupsi.
§ CPU memeriksa interupsi tersebut, kalau valid maka CPU akan mengirimkan
sinyal acknowledgment ke perangkat I/O untuk menghentikan interupsinya.
§ CPU mempersiapkan pengontrolan transfer ke routine 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.
Teknik yang digunakan CPU dalam vmenangani program interupsi
§ Multiple Interrupt Lines.
§ Software poll.
§ Daisy Chain.
§ Arbitrasi bus
Pengolahan interupsi saat perangkat I/O vtelah menyelesaikan sebuah
operasi I/O
§ CPU akan menyimpan PC (program counter) eksekusi sebelum
interupsi ke stack pengontrol bersama informasi PSW.
§ Mempersiapkan PC untuk penanganan interupsi.
§ CPU memproses interupsi sampai selesai
§ Bila pengolahan interupsi selasai, CPU akan memanggil
kembali informasi yang telah disimpan pada stack
pengontrol untuk meneruskan operasi sebelum interupsi .
Multiple Interrupt Lines
v Teknik yang paling sederhana.
v Menggunakan saluran interupsi berjumlah banyak.
v Tidak praktis untuk menggunakan sejumlah saluran bus atau pin CPU
keseluruh saluran interupsi modul – modul I/O.
Software poll
v CPU mengetahui adanya sebuah interupsi, maka CPU akan menuju ke routine
Layanan interupsi yang tugasnya melakukan poll seluruh modul I/O untuk
Menentukan modul yang melakukan interupsi.
v Kerugian software poll.
§ memerlukan waktu yang lama karena harus mengidentifikasi seluruh modul
Untuk mengetahui modul I/O yang melakukan interupsi.
Daisy chain
v Teknik yang lebih efisien
v Menggunakan hardware poll
v Seluruh modul I/O tersambung dalam saluran interupsi CPU secara
melingkar (chain).
v 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
v Modul I/O memperoleh kontrol bus sebelum modul ini menggunakan
saluran permintaan interupsi.
v Hanya akan terdapat sebuah modul I/O yang dapat melakukan
interupsi.
Pengontrol Interrupt Intel 8259A
v Intel mengeluarkan chips 8259A
v Sebagai interrupt arbiter pada mikroprosesor Intel 8086
v Manajemen interupsi modul - modul I/O
v Chips ini dapat diprogram untuk menentukan prioritas modul I/O yang
lebih dulu ditangani CPU apabila ada permintaan interupsi yang
bersamaan.
vMode – mode interupsi.
Mode pada Interrupt Intel 8259A
v Fully Nested.
§ Permintaan interupsi dengan prioritas mulai 0 (IR0) hingga 7(IR7).
v Rotating.
§ Bila sebuah modul telah dilayani interupsinya akan menempati prioritas terendah.
v Special Mask.
§ Prioritas diprogram untuk modul I/O tertentu secara spesial.
Kesimpulan
v Modul I/O merupakan peralatan antarmuka (interface) bagi sistem bus
atau switch sentral dan mengontrol satu atau lebih perangkat peripheral.
v Modul I/O adalah suatu komponen dalam sistem komputer yang
bertanggung jawab atas pengontrolan sebuah perangkat luar atau
lebih dan bertanggung jawab pula dalam pertukaran data
antara perangkat luar tersebut dengan memori utama ataupun
dengan register –register CPU.