Minggu, 29 Juni 2014

Input dan Output

PERANGKAT EKSTERNAL
Mesin komputer akan memiliki nilai apabila bisa berinteraksi dengan dunia luar. Lebih dari itu, komputer tidak akan berfungsi apabila tidak dapat berinteraksi dengan dunia luar. Ambil contoh saja, bagaimana kita bisa menginstruksikan CPU untuk melakukan suatu operasi apabila tidak ada keyboard. Bagaimana kita melihat hasil kerja sistem komputer bila tidak adamonitor.Keyboard dan monitor tergolong dalam perangkat eksternal komputer.
Perangkat eksternal yang dihubungkan modul I/O seringkali disebut perangkat peripheral, atau untuk mudahnya disebut peripheral.
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
Link digunakan untuk pertukaran kontrol, status, dan data antara modul I/O sering kali disebut sebagai perangkat peripheral, atau untuk mudahnya disebut peripheral.
Klasifikasi
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 atausistem.
    cocok untuk berkomunikasi dengan peralatan.
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.
Cara Kerja Secara Umum
Perangkat eksternal dihubungkan dengan komputer oleh suatu link dengan modul I/O. Link digunakan untuk pertukaran control, status dan data antara modul I/O dengan perangkat eksternal.
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 control 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.
Prinsip kerja yang dilakukan perangkat input adalah merubah perintah yang dapat dipahami oleh manusia kepada bentuk yang dipahami oleh komputer (machine readable form), ini berarti mengubahkan perintah dalam bentuk yang dipahami oleh manusia kepada data yang dimengerti oleh komputer yaitu dengan kode-kode binary (binary encoded information). Perangkat input dapat digolongkan menjadi dua golongan, yaitu perangkat input langsung dan perangkat input tidak langsung. Perangkat input langsung yaitu input yang digunakan langsung diproses di CPU, tanpa melalui media lain. Sedangkan perangkat input tidak langsung adalah input yang dimasukkan tidak langsung dip roses di CPU.
Koneksi
Perangkat eksternal dapat dipasang melalui saluran, port, atau colokan tertentu. Pada komputer PC, saluran ini biasanya adalah saluran serial, saluran paralel, saluran USB, dan saluran PCMCIA. Dalam beberapa aplikasi, misalnya untuk menggabungkan dengan telepon seluler, dapat juga digunakan saluran inframerah (IrDA).
Tujuan  Communication Synchronization adalah agar data yang dikirimkan dapat ditafsirkan (dimengerti) oleh penerima dengan tepat dan benar.
Fungsi sinkronisasi:
• Agar penerima mengetahui dengan tepat dan benar apakah sinyal yang diterima merupakan bit dari suatu data (sinkronisasi bit).
• Agar penerima mengetahui dengan tepat bit data (data bit) yang membentuk sebuah karakter (sinkronisasi karakter).
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.
Port Komputer
Port komputer hardware berfungsi sebagai antarmuka sebuah komputer dengan komputer atau device lain.
Port serial
jenis ini mengirim dan menerima data 1 bit pada saat melalui kabel tunggal.
Digunakan antara lain : LCD
Port Paralel
Dapat mengirim dan menerima sejumlah bit data pada satu saat melalui satu setkabel.
Universal Serial BUS
Pengembangan dari port serial. Sejumlah vendor dari devais standar seperti mouse dan printer telah beralih ke USB. USB lebih memudahkan berkoneksi, plug and play, dirancang tidak bergantung kepada expansion slot, bila dipasang copot, tidak perlu me-reboot komputer.
USB hub
Sebuah USB hub selain dapat menampung sejumlah device, juga dapat menampung sejumlah USB hub.
PCMCIA

Alat yang digunakan untuk menghubungkan komputer laptop (note book) dengan jaringan kabel , contohnya: 3 com.pcmcia ini sangat berguna sekali bagi pengguna note book agar terhubung dengan jaringan komputer.
Hub\Switch

Alat yang digunakan untuk menghubungkan kabel-kabel pada sebuah jaringan komputer. jadi hub ini berfungsi sebagaikonsentrator dari sebuah jaringan selain itu, hub juga berfungsi untuk mengatur arus data yang masuk dan keluar server, bisa di ibaratkan hub ini seperti lampu lalulintas, bila tidak ada lampu lalulintas, dapat dipastikan banyak terjadi kemacetan atau tabrakan, ini pula dapat terjadi pada jaringan. 
Nir Kabel
Bluetooth, Infra merah, wireless, dll.
MODUL-MODUL I/O
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. Dalam mewujudkan hal ini, diperlukan antarmuka internal dengan komputer (CPU dan memori utama) dan antarmuka dengan perangkat eksternalnya untuk menjalankan fungsi – fungsi pengontrolan.
Fungsi Modul I/O
o    Control & Timing
Fungsi kontrol dan pewaktuan (control & timing) merupakan hal yang penting untuk
mensinkronkan kerja masing – masing komponen penyusun komputer. 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. Proses tersebut bisa berjalan apabila ada fungsi  kontrol  dan  pewaktuan  yang  mengatur  sistem  secara  keseluruhan.
Contoh kontrol pemindahan data dari peripheral ke CPU melalui sebuah modul I/O dapat meliputi langkah-langkah penanganan I/O sbb :
1.     Permintaan dan pemeriksaan status perangkat dari CPU ke modul I/O.
2.    Modul I/O memberi jawaban atas permintaan CPU.
3.    Apabila  perangkat  eksternal  telah  siap  untuk  transfer  data,  maka  CPU  akan mengirimkan perintah ke modul I/O.
4.    Modul I/O akan menerima paket data dengan panjang tertentu dari peripheral.
5.    Selanjutnya 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.
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.
o    Komunikasi CPU
Adapun fungsi komunikasi antara CPU dan modul I/O meliputi proses – proses berikut :
1.     Command Decoding, yaitu modul I/O menerima perintah – perintah dari CPU yang dikirimkan sebagai sinyal bagi bus kontrol. Misalnya, sebuah modul I/O untuk disk dapat menerima perintah: Read sector, Scan record ID, Format disk.
2.    Data, pertukaran data antara CPU dan modul I/O melalui bus data.
3.    Status  Reporting,  yaitu  pelaporan  kondisi  status  modul  I/O  maupun  perangkat peripheral, umumnya berupa status kondisi Busy atau Ready. Juga status bermacam macam kondisi kesalahan (error).
4.    Address  Recognition,  bahwa  peralatan  atau  komponen  penyusun  komputer  dapat dihubungi atau dipanggil maka harus memiliki alamat yang unik, begitu pula pada perangkat peripheral, sehingga setiap modul I/O harus mengetahui alamat peripheral yang dikontrolnya.
o     Komunikasi Perangkat (device communication)
Meliputi perintah, informasi status dan data.
o    Data Buffering
Tujuan  utama  buffering  adalah  mendapatkan penyesuaian data sehubungan perbedaan laju transfer data dari perangkat peripheral dengan kecepatan pengolahan pada CPU. Umumnya laju transfer data dari perangkat peripheral lebih lambat dari kecepatan CPU maupun media penyimpan.
o    Deteksi Error
Apabila pada 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, dan lain – lain. Teknik yang umum untuk deteksi kesalahan adalah penggunaan bit paritas.

Memory - Mapped I/O
Memory-mapped file I/O membolehkan file I/O diperlakukan sebagai rutin akses memori yang dipetakan sebagai blok disk ke dalam page memori.
Suatu file diinisialisasikan menggunakan demand pagin. Suatu bagian page file dibaca dari file sistem ke page fisik. Subsequent membaca/menulis ke/dari file yang diperlakukan dalam urutan memori akses. Secara sederhana file akses memperlakukan file I/O melalui memori melalui read() write() system calls.
Beberapa proses juga dapat dipetakan pada fiel yang sama pada memori yang di-share.
Kelebihan
·         Dapat diakses dari bahasa tingkat tinggi(C/C++)
·         Proteksi dapat dilakukan dengan mengatur address space user process
·         Lebih mudah memeriksa status sebuah device
Masalah Dengan Memory-Mapped I/O
·         Problem dengan caching memory
·         Mekanisme ekstra untuk arsitektur computer dengan multi-bus
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.
Isolated I/O Module
Isolated I/O Module merupakan sebuah modul I/O yang berfungsi untuk melakukan isolasi terhadap tegangan input atau output. Modul ini biasanya digunakan untuk aplikasi seperti pengendali motor, pengaturan relay, dll.
Spesifikasi Teknis
·         Tegangan kerja +5 VDC (VCC).
·         Memiliki 8 channel I/O. Dimana tiap channel hanya bias dikonfigurasikan sebagai 1 fungsi saja (Input atau Output).
·         Jika dikonfigurasi sebagai output, maka konfigurasi pada Isolated I/O Port adalah active low dimana logika 0 akan mengaktifkan optoisolator.
Isolated I/O Port dapat dihubungkan dengan port mikrokontroler:
MCS-51, AVR, PIC, dll. Atau dapat juga dihubungkan dengan rangkaian TTL/CMOS. Lihat contoh aplikasi di bagian akhir sebagai acuan dalam penggunaan Isolated I/O Module.
Sumber : teknowacana.blogspot.com
DMA (Direct Memory Access)
Definisi
DMA adalah sebuah prosesor khusus (special purpose processor) yang berguna untuk menghindari pembebanan CPU utama oleh program I/O (PIO).
Transfer DMA
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/ destinasi transfer, dan jumlah byte yang ditransfer, ke memori. CPU kemudian menuliskan alamat command block ini ke DMA controller, sehingga DMA controller dapat kemudian mengoperasikan bus memori secara langsung dengan menempatkan alamat-alamat 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 device, operasi yang akan ditampilkan, alamat memori yang menjadi sumber dan tujuan data, dan banyaknya byte yang di transfer.
2.     DMA controller memulai operasi (menyiapkan bus, menyediakan alamat, menulis dan membaca data), sampai seluruh blok sudah di transfer.
3.     DMA controller meng-interupsi prosesor, dimana selanjutnya akan ditentukan tindakan berikutnya.
Pada dasarnya, DMA mempunyai dua metode yang berbeda dalam mentransfer data. Metode yang pertama adalah metode yang sangat baku dan simple disebut HALT, atau Burst Mode DMA, karena DMA controller memegang kontrol dari sistem bus dan mentransfer semua blok data ke atau dari memori pada single burst. Selagi transfer masih dalam progres, sistem mikroprosessor di-set idle, tidak melakukan instruksi operasi untuk menjaga internal register. Tipe operasi DMA seperti ini ada pada kebanyakan komputer.
Metode yang kedua, mengikut-sertakan DMA controller 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 DMA controller harus mempunyai kepintaran untuk merasakan waktu pada saat sistem bus terbuka.
Handshaking
Proses handshaking antara DMA controller dan device controller dilakukan melalui sepasang kabel yang disebut DMA-request dan DMA-acknowledge. Device controller mengirimkan sinyal melalui DMA-request ketika akan mentransfer data sebanyak satu word. Hal ini kemudian akan mengakibatkan DMA controller memasukkan alamat-alamat yang dinginkan ke kabel alamat memori, dan mengirimkan sinyal melalui kabel DMA-acknowledge. Setelah sinyal melalui kabel DMA-acknowledge diterima, device controller mengirimkan data yang dimaksud dan mematikan sinyal pada DMA-request.
Hal ini berlangsung berulang-ulang sehingga disebut handshaking. Pada saat DMA controller mengambil alih memori, CPU sementara tidak dapat mengakses memori (dihalangi), walau pun masih dapat mengaksees data pada cache primer dan sekunder. Hal ini disebut cycle stealing, yang walau pun memperlambat komputasi CPU, tidak menurunkan kinerja karena memindahkan pekerjaan data transfer ke DMA controller meningkatkan performa sistem secara keseluruhan.
Cara-Cara Implementasi DMA
Dalam pelaksanaannya, beberapa komputer menggunakan memori fisik untuk proses DMA, sedangkan jenis komputer lain menggunakan alamat virtual dengan melalui tahap "penerjemahan" dari alamat memori virtual menjadi alamat memori fisik, hal ini disebut direct virtual-memory address atau DVMA. Keuntungan dari DVMA adalah dapat mendukung transfer antara dua memory mapped device tanpa intervensi CPU.
Sumber : AREPSI Society: Modul Input/Output


Tidak ada komentar:

Posting Komentar