Docstoc

INPUT OUTPUT INPUT

Document Sample
INPUT OUTPUT INPUT Powered By Docstoc
					                                                INPUT / OUTPUT


         Di samping CPU dan sejumlah modul memori, elemen penting ketiga sistem komputer
adalah sejumlah modul I/O. Modul tersebut merupakan interface bagi bus sistem atau switch
sentral dan mengontrol satu atau lebih perangkat peripheral. Modul I/O bukan hanya merupakan
konektor mekanis sederhana yang menghubungkan suatu perangkat dengan bus sistem. Akan
tetapi modul I/O berisi sesuatu yang “cerdas”, yaitu berisi logik untuk melakukan fungsi
komunikasi antara peripheral dengan bus.
         Beberapa alasan tidak dihubungkannya peripheral dengan bus sistem secara langsung
adalah :
 Terdapat beraneka ragam peripheral yang memiliki bermacam-macam metode operasi.
    Maka akan tidak sangat praktis untuk menggabungkan logik tertentu ke dalam CPU dengan
    maksud untuk mengontrol sejumlah perangkat
 Laju transfer data peripheral sering kali jauh lebih lambat dibandingkan dengan laju transfer
    data memori atau CPU. Jadi, tidaklah praktis menggunakan bus sistem berkecepatan tinggi
    untuk melakukan komunikasi langsung dengan peripheral
 Peripheral sering kali menggunakan format data dan panjang word yang berlainan
    dibandingkan dengan komputer yang disambungkan dengannya

Jadi, diperluakan modul I/O. Modul ini memiliki dua buah fungsi utama :
 Sebagai interface ke CPU dan memori via bus sistem atau switch sentral
 Sebagai interface ke sebuah perangkat peripheral atau lebih dengan menggunakan link data
    tertentu


A.     PERANGKAT EKSTERNAL

Sistem komputer tidak akan berguna tanpa adanya peralatan input dan output. Operasi-operasi
I/O diperoleh melalui sejumlah perangkat eksternal yang menyediakan alat untuk pertukaran data
di antara lingkungan luar dengan komputer. Perangkat eksternal dihubungkan dengan komputer
oleh suatu link dengan modul I/O ( Gambar 6.1 ).



                        Saluran - saluran Alamat

                                                                         Bus
              Saluran – saluran Data                                     Sistem


                                Saluran – saluran Kontrol



                              MODUL I / O



                                                            Link ke
                                                            Perangkat
                                                            Peripheral

     Gambar 6.1. Model generik dari suatu modul I / O
Link digunakan untuk pertukaran kontrol, status, dan data antara modul I/O sering kali disebut
sebagai perangkat peripheral, atau untuk mudahnya disebut peripheral.
Secara luas perangkat eksternal dibagi menjadi tiga tingkatan :
     Human-Readable :          Digunakan untuk berkomunikasi dengan pengguna komputer
     Machine-Readable :        Digunakan untuk berkomunikasi dengan peralatan / machine
     Communication :           Digunakan untuk berkomunikasi dengan perangkat jarak jauh

    Contoh perngkat human-readable adalah video display terminal (VDT) dan printer. Contoh
perangkat machine-readable adalah sistem disk dan pita magnetik, sensor , dan aktuatur seperti
yang dipakai pada aplikasi robotik.
    Perangkat-perangkat komunikasi memungkinkan komputer untuk saling bertukar data
dengan perangkat jarak jauh, yang mungkin berupa perangkat human-readable, serperti terminal,
perangkat mesin readable, atau bahkan komputer lainnya.
    Secara umum, perangkat ekseternal dijelaskan pada Gb. 6.2.



   Kontrol                Status             Data ( bit )
   Dari                   ke                 Dari dan ke
   Modul I/ O             Modul I / O        Modul I / O



                Control                  Buffer
                Logic
                                       Transducer




                                             Data ( Unik Perangkat )
                                             Ke dan dari Luar

     Gambar 6.2. Perangkat eksternal



Interface ke modul I/O adalah dalam bentuk signal-signal kontrol, status, dan data. Data
berbentuk sekumpulan bit untuk dikirimkan ke modul I/O atau diterima dari modukl 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 / WRITE ), report
status, atau membentuk fungsi kontrol tertentu ke perangkat ( misalnya, posisi head disk ). Signal
status menandai status perangkat. Misalnya READY / NOT READY untuk menunjukkan 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 selamat berlangsungnya input. Umumnya, suatu buffer dikaitkan dengan transducer untuk
menampung sementara data yang ditransfer di antara modul I/O dan dunia luar. Ukuran bufer
yang umum adalah 8 hingga 16 bit.

A. 1. KEYBOARD / MONITOR

Alat interaksi komputer / pengguna yang umum digunakan adalah keyboard / monitor. Pengguna
memberikan input melalui keyboard. Kemudian input akan dikirimkan ke komputer dan dapat juga
ditampilkan pada monitor. Selain itu, monitor dapat menampilkan data yang diberikan oleh
komputer.
          Unit dasar pertukaran datanya adalah karakter. Setiap karakter berkaitan dengan suatu
kode, yang umumnya mempunyai panjang 7 atau 8 bit. Kode yang paling umum digunakan
adalah kode tujuh bit yang dikenal sebagai ASCII ( American Standard Code For Information
Interchange ) di Amerika Serikat dan CCITT alphabet number 5 secara internasional. Setiap
karakter dalam kode ini diwakili oleh kode biner tujuh bit yang unik ; sehingga, akan terdapat 128
                          1
karakter yang berbeda. Table 6.1 memberikan nilai daftar kode tersebut. Pada tabel tersebut,
bit-bit karakter diberi label dari b7, yang merupakan bit yang paling berarti, hingga b1, yaitu bit
yang paling kurang berarti. Karakter-karakter tersebut terdiri dari dua macam :
Karakter yang dapat dicetak dan karakter kontrol. Karakter yang dapat dicetak merupakan
karakter-karakter aplhabetis, numeric, dan karakter khusus yang dapat dicetak pada kertas atau
ditampilkan di layar. Misalnya, representasi bit karakter “K” adalah 1001011. Beberapa karakter
kontrol berkaitan dengan pengontrolan, pencetakan, atau penampilan karakter-karakter ; sebagai
contoh misalnya carried return. Sedangkan karakter-karakter kontrol lainnya berkaitan dengan
prosedur komunikasi.
          Bagi input keyboard, ketika sebuah tombol ditekan oleh pengguna, maka hal ini akan
menghasilkan signal listrik yang di interpretasikan oleh transducer pada keyboard dan
diterjemahkan ke dalam pola bit kode ASCII tertentu. Pola bit ini kemudian di transmisikan ke
modul I / O pada komputer. Di dalam komputer, teks akan disimpan dalam kode ASCII yang
sama. Pada output, karakter-karakter kode ASCII akan ditransmisikan dari modul I / O ke
perangkat eksternal. Transducer pada perangkat akan menginterpretasikan kode ini dan
mengirimkan signal elektronik yang diperlukan ke perangkat output untuk menampilkan karakter
tersebut atau untuk membentuk fungsi kontrol yang diinginkan.


DISK DRIVE

Sebuah disk drive terdiri dari perangkat elektronik untuk pertukaran signal-signal data, kontrol,
dan status dengan modul I / O dan perangkat elektronik untuk mengontrol mekanism
pembacaan / penulisan disk. Pada fixed head disk, transducer mampu melakukan konversi dari
pola-pola magnetik pada permukaan disk yang bergerak menjadi bit-bit pada buffer perangkat
( Gambar 6.2 ). Disk yang headnya bergerak juga harus dapat memindahkan lengan disk secara
radial menjauhi dan mendekati permukaan disk.


MODUL – MODUL I / O

Fungsi Modul

Modul I / O merupakan suatu entiti di dalam komputer yang bertanggung jawab atas pengontrol
sebuah perangkat eksternal atau lebih dan untuk pertukaran data antara perangkat-perangkat
tersebut dengan memori utama dan atau register-register CPU. Jadi, modul I / O harus memiliki
interface internal dengan komputer ( CPU dan main memori ) dan interface eksternal dengan
komputer ( perangkat eksternal ).
         Fungsi atau persyaratan utama bagi modul I / O dapat dibagi menjadi beberapa kategori
seperti di bawah ini :

       Kontrol dan timing
       Komunikasi CPU
       Komunikasi perangkat
       Data buffering
       Deteksi Error

    Dalam periode waktu tertentu, CPU dapat berkomunikasi dengan satu buah atau
lebihperangkat dengan pola yang tidak menentu, tergantung pada kebutuhan program I / O.
Sumber daya internal, seperti memori utama, dan sistem bus, harus dipakai bersama-sama oleh
sejumlah aktifitas termasuk di antaranya I / O data. Dengan demikian, untuk mengkoordinasikan
arus lalu lintas antara sumber daya internal dan perangkat eksternal, fungsi I / O meliputi
persyaratan kontrol dan timing. Misalnya, kontrol pemindahan data dari sebuah perangkat
eksternal ke CPU dapat meliputi langkah-langkah berikut ini :
         1. CPU meminta modul I / O untuk memeriksa status perangkat yang terhubung.
         2. Modul I / O memberikan jawabannya tentang status perangkat
         3. Bila perangkat sedang beroperasi dan berada dalam keadaan siap untuk
              mengirimkan, maka CPU meminta pemindahan data, dengan menggunakan perintah
              tertentu ke modul I / O.
         4. Modul I / O akan memperoleh unit data ( misalnya, 8 atau 16 bit ) dari perangkat
              eksternal.
         5. Data akan dipindahkan dari modul I / O ke CPU.

        Apabila sistem menggunakan bus, maka setiap interaksi antara CPU dengan modul I / O
akan melibatkan sebuah atau lebih arbitrasi bus. Skenario yang telah disederhanakan seperti
tersebut di atas menjelaskan juga, bahwa modul I / O harus memiliki kemampuan untuk
melaksanakan komunikasi dengan CPU dan perangkat eksternal. Komunikasi CPU meliputi :
                   Command Decoding : Modul I / O menerima perintah-perintah dari CPU.
                      Umumnya perintah-perintah ini dikirimkan sebagai sinyal bagi bus kontrol.
                      Misalnya, sebuah moduil I / O untuk disk dapat menerima perintah-perintah
                      berikut : read sector, write sector, seek nomor track ,dan scan record id.
                      Kedua perintah terakhir meliputi parameter yang dikirimkan pada bus data.
                   Data : data di pertukarkan antara CPU dengan modul I / O melalui bus data
                   Status reporting : karena peripheral sangat lambat, maka status modul I / O
                      perlu diketahui. Misalnya, bila sebuah modul I / O diminta untuk mengirimkan
                      data ke CPU ( read ), maka mungkin modul tersebut berada dalam keadaan
                      belum siap karena sedang melaksanakan perintah I / O lain. Kenyataan
                      seperti ini perlu dilaporkan dengan menggunakan signal status. Signal status
                      yang umum adalah busy dan ready terdapat pula signal-signal status untuk
                      melaporkan bermacam-macam kondiris error.
                   Address recognition : seperti halnya word memori memiliki alamat, demikian
                      pula dengan perangkat I / O. Dengan demikian, modul I / O harus
                      mengetahui address unik seluruh peripheral yang dikontrolnya.
        Di sisi lain, modul I / O harus mampu membentuk komunikasi perangkat ( device
        communication ). Komunikasi ini meliputi perintah, informasi status, dan data ( Gambar
        6.2. )
        Tugas utama modul I / O adalah data buffering. Kebutuhan akan fungsi ini dapat dilihat
        pada table 6.2. Sementara kelajuan transfer data ke main memori dan dari main memori
        atau CPU cukup tinggi, kelajuan untuk perangkat peripheral lambat. Data yang berasal
        dari main memori dikirimkan ke modul I / O dengan burst sangat cepat. Data di bufferkan
        dan kemudian dikirimkan ke perangkat peripheral dengan kelajuan datanya. Pada Arah
        kebalikannya, pembufferan data tidak secepat seperti sebelumnya. Dengan demikian,
        modul I / O harus mampu beroperasi dengan kecepatan perangkat dan memori.
        Terakhir, modul I / O seringkali harus bertanggung jawab atas error detection dan
        pelaporan tentang terjadinya error terhadap CPU. Sebuah kelas error meliputi kesalah
        mekanis dan elektris yang dilaporkan oleh perangkat ( misalnya, kertas menggulung,
        track disk yang buruk ). Kelas error lainnya terdiri dari perubahan pola bit yang tiba-tiba
        pada saat dikirimkan dari perangkat ke modul I / O. Beberapa kode error detecting sering
        digunakan untuk mendeteksi error transmisi. Contohnya yang umum adalah penggunaan
        parity bit karakter data. Misalnya, kode karakter ASCII memakai tujuh bit dari suatu byte.
        Bit ke delapan disetel sehingga jumlah total “bilangan 1”nya dalam byte selalu genap (
        even parity ) atau ganjil ( odd parity ). Ketika bit diterima, maka modul I / O memeriksa
        parity untuk menentukan apakah suatu error telah terjadi atau tidak.
        Struktus Modul I / O

         Modul I / O sangat berbeda dalam hal kompleksitas dan jumlah perangkat eksternal yang
         dikontrolnya. Disini kita hanya akan membahas masalah umumnya saja. Gambar 6.3
         adalah diagram blok secara umum sebuah modul I / O. Modul dihubungkan dengan
         bagian-bagian komputer lainnya melalui saluran signal ( misalnya, saluran bus sistem ).
         Data yang dipindahkan ke modul dan dari modul dibufferkan dalam sebuah register data
         atau lebih. Mungkin juga terdapat sebuah register status atau lebih yang memberikan
         informasi status saat itu. Register status dapat juga berfungsi sebagai register kontrol
         untuk menerima informasi kontrol secara detail dari CPU. Logic pada modul berinteraksi
         dengan CPU melalui sejumlah saluran kontrol. Saluran-saluran ini digunakan oleh CPU
         untuk memberika perintah ke modul I / O. Beberapa saluran kontrol dapat digunakan
         oleh modul I / O ( misalnya untuk signal arbitrasi atau signal status ). Modul juga dapat
         mengetahui dan menghasilkan alamat-alamat yang berkaitan dengan perangkat yang
         dikontrolnya. Setiap modul I / O memiliki alamat yang unik, atau apabila modul I / O
         mengontrol lebih dari sebuah perangkat eksternal, maka terdapar sekumpulan alamat
         yang unik. Terakhir, modul I / O terdiri dari logic yang bersifat khusus bagi interface
         dengan setiap perangkat yang di kontrolnya.
Modul I / O berfungsi untuk memungkinkan CPU dapat mengetahui perangkat yang jumlahnya
banyak dengan cara yang sederhana. Terdapat spektrum kemampuan yang dapat terjadi. Modul
I / O dapat menyembunyikan detail pewaktuan, format, dan elektro mekanis perangkat eksternal
sehingga CPU dapat memberikan perintah pembacaan dan penulisan dengan mudah, dan juga
memungkinkan perintah-perintah membuka dan menutup file. Pada bentuk yang paling
sederhananya, modul I / O masih dapat memberikan tugas pengontrolan perangkat dalam jumlah
besar ( misalnya, menggulung pita ) yang dapat diketahui oleh CPU.
Modul I / O yang seringkali mendapatkan beban pengolahan yang detail, yang memberikan
interface tingkat tingi kepada CPU, dikenal sebagai I / O channel atau I / O processr. Modul I / O
yang agak primitif dan membutuhkan kontrol detail seringkali disebut sebagai I / O kontroler dan
device kontroler. Secara umum I / O kontroler, dapat dilihat pada mikro komputer,
sedangkan I / O channel digunakan pada mainframem, sedangkan mini komputer menggunakan
campuran keduanya.
Sejauh ini, kita akan menggunakan istilah generik modul I / O bila tidak terdapat hasil yang rancu
dan akan menggunakan istilah yang lebih spesifik bila memang diperlukan.

I / O TERPROGRAM

Terdapat tiga buat teknik yang dapat digunakan dalam operasi I / O. Pada I / O terprogram, data
saling dipertukarkan antara CPU dengan modul I / O. CPU mengeksekusi program yang
memberikan operasi I / O kepada CPU secara langsung, termasuk status perangkat pengindra,
pengiriman perintah pembacaan atau penulisan, dan pemindahan data. Ketika CPU
mengeluarkan perintah ke modul I / O, maka CPU harus menunggu sampai operasi I / O selesai.
Apabila CPU lebih cepat dibandingkan modul I / O, maka hal ini akan membuang-buang waktu
CPU. Dengan menggunakan interupt driven I / O, CPU mengeluarkan perintah I / O, dilanjutkan
dengan mengeksekusi intstruksi-instruksi lainnya, dan diinterupsi oleh modul I / O apabila
instruksi-instruksi tersebut telah selesai dilaksanakan. Dengan menggunakan I / O terprogram
dan I / O interupt, maka CPU bertanggung jawab atas pengeluaran data dan memori utama untuk
keperluan output dan penyimpanan data di dalam memori utama untuk keperluan input.
Alternatifnya dikenal sebagai Direct Memory Access ( DMA ). Dalam mode ini, modul I / O dan
main memory saling bertukar data secara langsung, tanpa melibatkan CPU.
Tabel 6.3 menjelaskan hubungan teknik di atas. Dalam bagian ini kita akan membahas I/O
Terprogram.
PERINTAH-PERINTAH I/O

Untuk mengeksekusi perintah yang berkaitan dengan I/O. CPU menerbitkan sebuah alamat,
yang memspesifikasi mosul I/O dan perangkat eksternal tertentu dan sebuah perintah I/O.
Terdapat empat jenis perintah I/O yang akan di terima modul I/O ketika modul tersebut dialamati
oleh CPU. Perintah-perintah tersebut dapat diklasifikasikan sebagai control,test, read dan write.
       Perintah control digunakan untuk mengaktifasi pheripheral dan memberitahunya tugas
yang harus dilaksanakan.
       Perintah test digunakan untuk menguji bermacam-macam kondisi status yang berkaitan
dengan moduk I/O dan perangkat peripheralnya.
       Perintah read mengakibatkan modul I/O akan mendapat sebuah butir data dari peripheral
dan menaruhnya ke dalam buffer internal.

INSTRUKSI-INSTRUKSI I/O

        Dengan menggunakan I/O terprogram, terdapat hubungan yang erat antara instruksi I/O
yang di ambil CPU dari memori dengan perintah I/O yang di keluarkan CPU ke mdul I/O untuk
mengeksekusi instruksi. Dengan kata lain instruksi dengan mudah di petakan kedalam perintah-
perintah I/O.
        Umumnya, akan banyak terdapat perangkat I/O yang terhubung melalui modul I/O ke
sistem. Setiap perangkat diberi pengenal atau alamat yang unik. Pada saat CPU mengelurakan
perintah I/O, perintah akan berisi alamat perangkat yang diinginkan.

INTERRUPT-DRIVEN I/O

Masalah yang di jumpai pada I/O terprogram adalah bahwa CPU harus menunggu modul I/O
yang diinginkan agar siap baik untuk menerima maupun mengirimkan data dalam waktu yang
relatif lam. Pada saat menunggu,CPU harus berulang-ulang menanyakan status modul I/O.
Akibatnya tingkat kerja keseluruhan sistem mengalami penurunan sistem.
          Alternatifnya adalah CPU mengeluarkan perintah I/O ke modul dan kemudian
megerjakan pekerjaan yang lain. Kemudian modil I/O akan menginterupsi CPU untuk meminta
layanan ketika modul telah siap untuk salaing bertukar data dengan CPU.

PENGOLAHAN INTERUPT

Gambar 6.6

Pada perangkat I/O telah menyelesaikan sebuah operasi I/O, maka urutan kejadian hardware di
bawah akan terjadi :

    1. Perangkat angkat mngeluarkan signal interrupt ke CPU.
    2. Prosesor menyelesaikan eksekui intruksi yang sedang dilakukan sebelum memberikan
       respon terhadap interrupt.
    3. Prosesor memerikasa interrupt, menetapkan bahwa memang ada, dan mengirim signal
       acknowledgment ke parangkat yang mengeluarkan interrupt, acknowledgment
       memungkinakan meghapus dignal interrupt.
    4. Sekarang prosesor perlu menyiapkan pengontrolan transfer routine interrupt, prosesor
       perlu menyimpan informasi yang diperlukan untuk melanjutkan program yang dikerjakan
       saat itu pada posisi interrupt. Informasi minimum yang diperlukan adalah a.status
       prosesor, yang berisi register yang dipanggil program status word (PSW), dan b. lokasi
       instruksi berikutnya yang akan dieksekusi.
    5. Setelah prosesor dapat memuat menghitung program dengan lokasi entri dan program
       penanganan interrupt yang akan emberikan respon ke interrupt ini. Tergantung pada
       arsitektur computer dan rancangan sistem operasinya. Kemungkinan ada sebuah
       program , satu program untuk setiap interrupt, atau setiap untuk setiap perangkat dan
       setiap jenis interrupt.
6. Kemudian interrupt handle akan mendapat proses interrupt. Proses ini akan melibatkan
   pengujian informasi status yang berkaitan dengan operasi I/O atau kejadian-kejadian
   yang lain yang menyebabkan terjadinya interrupt.
7. Apabila pengolahan interuot telah selesai, nilai-nilai register yang tersimpan akan diambil
   ke stack dan selanjutnya disimpan ke register.
8. Kegiatan terakhir adalah menyimpan kembali PSW dan nilai penghitung program dari
   stack. Akibatnya, interupsi berikutnya yang akan dieksekusi akan berasal dari program
   sebelumnya yang telah diinterupsi.

				
DOCUMENT INFO
Shared By:
Categories:
Stats:
views:403
posted:9/11/2010
language:Indonesian
pages:7
Jun Wang Jun Wang Dr
About Some of Those documents come from internet for research purpose,if you have the copyrights of one of them,tell me by mail vixychina@gmail.com.Thank you!