Unit Input/Output (I/O) adalah bagian dari sistem mikroprosesor yang digunakan oleh mikroprosesor itu untuk berhubungan dengan dunia luar.
Unit input adalah unit luar yang digunakan untuk memasukkan data dari luar ke dalam mikroprosesor ini, contohnya data yang berasal dari keyboard atau mouse. Sementara unit output biasanya digunakan untuk menampilkan data, atau dengan kata lain untuk menangkap data yang dikirimkan oleh mikroprosesor, contohnya data yang akan ditampilkan pada layar monitor atau printer.
Penjelasan lebih jelas melalui penjelasan visual, silahkan play video ini :
atau klik ini
Perangkat Input :
Perangkat Output :
Perangkat Eksternal
Secara umum perangkat eksternal diklasifikasikan menjadi 3 katagori :
1. Human Readable
yaitu perangkat yang berhubungan
dengan manusia sebagai pengguna komputer.
Cocok untuk berkomunikasi
dengan pengguna komputer.
Contohnya: monitor, keyboard, mouse,
printer, joystick, disk drive.
2. Machine readable
yaitu perangkat yang berhubungan
dengan peralatan. Biasanya berupa modul sensor
dan tranduser untuk monitoring dan
kontrol suatu peralatan atau sistem.
3. Communication
yatu perangkat yang berhubungan
dengan komunikasi jarak jauh.Misalnya: NIC dan
modem. cocok untuk
berkomunikasi dengan perangkat jarak jauh.
Interface ke modul I/O adalah dalam
bentuk signal-signal control, 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 atau WRITE), report status, atau membentuk fungsi
kontrol tertentu ke perangkat. Signal status menandai status perangkat.
Misalnya READY/NOT READY untuk menunjukan kesiapan perangkat untuk mengirimkan
data.
Control logic berkaitan dengan perangkat yang mengontrol operasi perangkat
dalam memberikan respons yang berasal dari modul I/O. Transducer 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 transducer untuk menampung sementara
data yang ditransfer di antara modul I/O dan dunia luar. Ukuran buffer yang
umum adalah 8 hingga 16 bit.Modul Input dan Output
Modul I/O adalah interface atau central switch untuk mengendalikan satu atau lebih peripheral atau perangkat input output.
Fungsi dalam menjalankan tugas bagi modul I/O dapat dibagi menjadi beberapa katagori, yaitu:
v Kontrol dan pewaktuan.
v Komunikasi CPU.
v Komunikasi perangkat eksternal.
v Pem-buffer-an data.
v Deteksi kesalahan.
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
computer
Modul
I/O adalah suatu komponen dalam sistem komputer yang Bertanggung
jawab atas pengontrolan sebuah perangkat luar atau lebih dan
juga,Bertanggung jawab pula dalam pertukaran data antara perangkat luar
tersebut dengan memori utama ataupun dengan register – register
CPU.termasuk Antarmuka internal dengan komputer (CPU dan memori utama)
dan perangkat eksternalnya untuk menjalankan fungsi – fungsi
pengontrolan
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 diinterupsikan 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.
DMA (Direct Memory Access)
DMA ialah sebuah prosesor khusus (special purpose processor) yang berguna untuk menghindari pembebanan CPU utama oleh program I/O (PIO). Untuk memulai sebuah transfer DMA, host akan menuliskan sebuah DMA command block yang berisi pointer yang menunjuk ke sumber transfer, pointer yang menunjuk ke tujuan transfer, dan jumlah byte yang ditransfer, ke memori. CPU kemudian menuliskan alamat command block ini ke pengendali DMA, sehingga pengendali DMA dapat kemudian mengoperasikan bus memori secara langsung dengan menempatkan alamatalamat pada bus tersebut untuk melakukan transfer tanpa bantuan CPU.
Tiga langkah dalam transfer DMA:
1. Prosesor menyiapkan DMA transfer dengan menyedia kan data-data dari perangkat, operasi yang akan ditampilkan, alamat memori yang menjadi sumber dan tujuan data, dan banyaknya byte yang ditransfer.
2. Pengendali DMA memulai operasi (menyiapkan bus, menyediakan alamat, menulis dan membaca data), sampai seluruh blok sudah di transfer.
3. Pengendali DMA meng-interupsi prosesor, dimana selanjutnya akan ditentukan tindakan berikutnya.
Pada dasarnya, DMA mempunyai dua metode yang berbeda dalam mentransfer data. Metode yang pertama ialah metode yang sangat baku dan sederhana disebut HALT, atau Burst Mode DMA, karena pengendali DMA memegang kontrol dari sistem bus dan mentransfer semua blok data ke atau dari memori pada single burst. Selagi transfer masih
dalam prosres, sistem mikroprosessor diset idle, tidak melakukan instruksi operasi untuk menjaga internal register. Tipe operasi DMA seperti ini ada pada kebanyakan komputer.
Metode yang kedua, mengikutsertakan pengendali DMA untuk memegang kontrol dari sistem bus untuk jangka waktu yang lebih pendek pada periode dimana mikroprosessor sibuk dengan operasi internal dan tidak membutuhkan akses ke sistem bus. Metode DMA ini disebut cycle stealing mode. Cycle stealing DMA lebih kompleks untuk diimplementasikan
dibandingkan HALT DMA, karena pengendali DMA harus mempunyai kepintaran untuk merasakan waktu pada saat sistem bus terbuka.
Saluran I/O dan Processor
Tujuan dari saluran I/O adalah sebagai perantara antara CPU-main memory dengan unit pengontrol penyimpan. CPU berkomunikasi dengan saluran melalui beberapa perintah yang sederhana.
Saluran akan memberi perintah :
Test I/O, untuk menentukan apakah jalur (pathway) yang menuju peralatan sedang sibuk.v
Start I/O, pada peralatan tertentu.v
Halt I/O, pada peralatan tertentu.v
Saluran biasanya berkomunikasi dengan CPU melalui cara interupsi. Interupsi akan terjadi, jika keadaan error terdeteksi, misalnya instruksi CPU yang salah atau jika aktifitas I/O telah diakhiri.
Jika interupsi terjadi, kontrol akan bercabang melalui rutin pengendali interupsi (interrupt-handler routine), dimana kontrol akan menentukan penyebab dari interupsi, melakukan kegiatan yang tepat, kemudian mengembalikan kontrol pada pemanggil (caller).
Macam-Macam Saluran
1. Selector Channel
Dapat mengatur aliran data antara memori utama dengan sebuah peralatan pada saat tersebut. Karena saluran merupakan processor-processor yang cepat maka saluran selektor biasanya hanya menggunakan peralatan I/O dengan kecepatan tinggi, seperti disk. Penggunaan peralatan dengan kecepatan rendah, misal card reader.2. Multiplexor Channel
Dapat mengatur aliran data antara memori utama dengan beberapa peralatan. Saluran Multiplexor lebih efektif bila menggunakan peralatan dengan kecepatan rendah, dibandingkan dengan selector channel. Dengan saluran multiplexor, beberapa peralatan dapat diaktifkan secara serentak, tetapi saluran harus melengkapi saluran program untuk satu peralatan sebelum memulai dengan saluran program lain.
3. Block Multiplexor Channel
Mengatur aliran data ke berbagai peralatan. Block Multiplexor Channel dapat mengeksekusi satu instruksi dari saluran program untuk satu peralatan, kemudian dapat mengalihkan instruksi-instruksi dari saluran program itu ke peralatan yang lain.
Jika sebuah program membutuhkan READ dari berkas file, maka yang terjadi adalah:
1. Program mengeluarkan READ, yang akan menginterupsi I/O
2. Pengontrol I/O membuat sebuah saluran program pada memori utama
3. Saluran program dibaca dan dieksekusi oleh pemanggil saluran
4. Sinyal yang tepat akan ditransmisi ke pemanggil unit control
5. Kemudian sinyal tersebut diterjemahkan oleh unit control dan digunakan untuk mengontrol peralatan operasi untuk membaca data yang diminta
6. Data yang diminta akan mengalir dari peralatan pathway ke file buffer area dalam ruang memori utama
7. Interupsi yang dikeluarkan oleh saluran digunakan untuk meneruskan sinyal pada waktu eksekusi program
8. Kemudian control kembali ke program
Data dibaca ke dalam buffer, dimana buffer merupakan suatu tempat pada memori utama yang disediakan untuk menampung data, bila buffer penuh program akan segera menggunakan data tersebut.
KESIMPULAN
Menurut penjelasan diatas, saya dapat menyimpulkan bahwa komponen-komponen komputer saling terkait satu sama lain. Dari mulai perangkat Input/Output sampai dengan Saluran Input/Output. Sistem komputer bekerja pada saat user mulai masukkan data lewat Input Device yaitu, keyboard, mouse, flashdisk,dll. Lalu disalurkan dengan alat pemrosessan (CPU, motherboard, memory dan processor) agar data dapat diproses. Setelah data diproses kemudian keluarlah hasil output yang ditampilkan kepada user lewat monitor atau juga bisa dicetak lewat printer,plotter ataupun media lainnya. Perangkat eksternal juga membantu jalannya kegiatan input-proses-output.
Sumber terkait :
1. http://id.wikipedia.org/wiki/I/O
2. http://octavianopratama.wordpress.com/2009/09/10/alat-alat-inputoutput-pemproses-beserta-contohnya/
3. http://sweetestplace.wordpress.com/2013/09/18/alat-input-output-dan-proses-komputer/
4. http://nediyansahputra.blogspot.com/2012/12/perangkat-eksternal-dan-interrupt_5.html
5. http://khaeroni.blogspot.com/2011/04/modul-input-output.html
6. http://pio-agus.blogspot.com/2014/08/sistem-input-proses-dan-output.html
7. http://fujhyzhu.wordpress.com/2010/05/22/direct-memory-access-dma/
8. http://riskydwiyanti.wordpress.com/2013/10/20/saluran-io-dan-processor/
9.http://syaharuddins99.wordpress.com/2013/11/07/modul-io-saluran-ioprocessor-struktur-interkoneksi/
visit my another blog!
No comments:
Post a Comment