Unit I/O adalah sebuah komponen dalam sistem komputer yang bertanggung
jawab atas pengontrolan sebuah perangkat luar atau lebih dan bertanggung jawab
juga terhadap pertukaran data antara perangkat luar tersebut dengan memori
utama ataupun register-register dalam CPU. Dalam mewujudkan fungsi tersebut,
diperlukan antarmuka internal dengan komputer (CPU dan memori utama) dan
antarmuka dengan perangkat eksternalnya untuk menjalankan fungsi-fungsi
pengontrolan.
Dua fungsi utama Modul I/O ialah :
1. Sebagai piranti antarmuka ke CPU dan memori
melalui bus sistem.
2. Sebagai piranti antarmuka dengan peralatan
peripheral lainnya dengan menggunakan link data tertentu
Fungsi dalam menjalankan tugas, modul I/O
dapat dibagi menjadi beberapa kategori, yaitu:
a. Kontrol dan pewaktuan
b. Komunikasi CPU
c. Komunikasi dengan perangkat eksternal
d. Pem-buffer-an data
e. Deteksi kesalahan
A. Kontrol dan pewaktuan
Fungsi kontrol dan pewaktuan (control & timming) 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 data yang beragam, baik dengan
perangkat internal seperti register-register, memori utama, memori sekunder,
perangkat periperhal. Proses tersebut bisa berjalan apabila ada fungsi
kontrol dan pewaktuan yang mengatur sistem secara keseluruhan. Contoh
kontrol pemindahan data dari periperhal ke CPU melalui sebuah modul I/O
meliputi langkah-langkah sebagai berikut:
1. Permintaan dan pemeriksaan status perangkat
dari CPU ke modul I/O.
2. Modul I/O memberikan jawaban atas permintaan
CPU tersebut.
3. Apabila perangkat eksternal telah siap untuk
transfer data, maka CPU akan mengirimkan perintah ke modul I/O
4. Modul I/O akan menenrima paket data dengan
panjang tertentu dari periperhal.
5. Selanjutnya data dikirim ke CPU setelah
diadakan seinkronisasi 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. Ada fungsi komunikasi antara CPU dan modul I/O
meliputi proses-proses berikut ini :
1.
Command
Decoding, yaitu modul I/O menerima
perintah-perintah dari CPU yang dikirimkan sebagai sinyal 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 kodisi status modul I/O maupun
perangkat periperhal, umumnya berupa status kondisi busy atau ready. Juga
status bermacam-macam kodisi 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 periperhal, sehingga
setiap modul I/O harus mengetahui alamat periperhal yang dikontrolnya
Pada sisi modul I/O ke perangkat periperhal juga terdapat komunikasi
yang meliputi komunikasi data, kontrol maupun status.
B. Pem-buffer-an data
Fungsi selanjutnya adalah buffering. Tujuan utama buffering adalah
mendapatkan penyesuaian data sehubungan perbedaan laju transfer data dari
perangkat periperhal dengan kecepatan pengolahan pada CPU . Umumnya laju
transfer data pada dari perangkat periperhal lebih lambat dari kecepatan CPU
maupun media penyimpanan.
C. Deteksi kesalahan
Fungsi terakhir adalah deteksi kesalahan. Apabila pada perangkat
periperhal terdapat masalah sehingga proses tidak dapat dijalankan, maka modul
I/O akan melaporkan kesalahan tersebut. Misalnya informasi pada periperhal printer
seperti: kertas tergulung, kertas habis, tinta habis, dan lain-lain. Teknik
yang umum untuk deteksi kesalahan adalah penggunaan bit paritas.
Struktur Modul Input/Output
Terdapat berbagai macam modul I/O
seiring perkembangan komputer itu sendiri, contoh yang sederhana dan fleksibel
adalah intel 8255A yang sering disebut PPI (Programmable Periperhal
Interface). Bagaimanapun komplesitas suatu modul I/O terdapat
kemiripan struktur.
Antarmuka
modul I/O ke CPU melalui bus sistem komputer terdapat tiga saluran, yaitu
saluran data, saluran alamat dan saluran kontrol. Bagian terpenting adalah blok
logika I/O yang berhubungan dengan semua peralatan antarmuka periperhal, terdapat fungsi pengaturan dan switching pada
blok ini.
SISTEM BUS
Bus adalah jalur fisik yang menghubungkan antara unit-unit fungsional di
dalam komputer, dan antara komputer dengan dunia luar. Sistem bus menyediakan
fasilitas jalur lintasan untuk perintah, alamat, dan data dari unit kontrol ke
seluruh unit dalam komputer. Perancangan bus mempunyai efek yang sangat penting
pada unjuk kerja komputer. Karakteristik bus seperti kecepatan, jumlah bit, dan
aturan transmisi informasi memerankan peranan yang kritis dalam perancangan
setiap sistem komputer.
Sistem bus cukup sederhana, terdiri atas himpunan jalur yang dilewati
informasi dari satu register ke register yang lain. Unit kontrol akan
mengkoordinasikan seluruh proses tansfer dan membangkitkan semua isyarat
pewaktuan dan kontrol yang diperlukan. Terdapat beberapa masalah penting dengan
sistem bus sederhana ini. Pertama, sistem ini dapat menjadi tidak efisien untuk
beberapa oeprasi. Misalnya untuk operasi menulis ke memori. Untuk mengeksekusi
operasi penulisan ke memori, unit kontrol harus 1. Mentransfer alamat memori ke
MAR (Memory Address Register). 2. Mentransfer data dari register lain ke MDR.
3. Meminta satu operasi penulisan memori. Operasi ini akan memanggil dua runtun
operasi dengan pewaktuan seperti yang diperlihatkan pada Gambar 5.3.Dalam
perancangan suatu sistem komputer dengan kecepatan tinggi, operasi di ataas
tidak akan dapat diterima. Masalah kedua dengan sistem bus sederhana ini adalah
bahwa seluruh isyarat kontrol dan pewaktuan hares datang dari unit kontrol. Hal
ini mungkin tidak terlihat sebagai suatu masalah, tetapi akan menimbulkan
masalah jika terdapat unit lain seperti piranti I/O yang juga memerlukan
inisialisasi transfer.
STANDAR
INPUT/OUTPUT INTERFACE
Interface atau antarmuka adalah Penghubung antara dua
sistem ataualat media penghubung antara satu subsistem dengan subsistem
lainnya. Melalui penghubung ini memungkinkan sumber daya mengalir dari satu
subsistem ke subsistem yang lainnya. Keluaran (output) dari suatu subsistem
akan menjadi masukan (input) untuk subsistem lainnya dengan melalui penghubung.
PENGAKSESAN PERALATAN INPUT/OUTPUT
- Perintah
Control yaitu perintah yang digunakan untuk
mengaktivasi perangkat periperhal dan memberitahukan tugas yang
diperintahkan kepadanya.
- Perintah
Test, yaitu perintah yang digunakan CPU untuk
menguji berbagai kondisi status modul I/O dan periperhalnya. CPU perlu
mngetahui perangkat periperhalnya dalam keadaan aktif dan siap digunakan,
juga untuk megetahui operasi-operasi I/O yang dijalankan serta mendeteksi
kesalahannya.
- Perintah
Read, yaitu perintah pada modul I/O untuk
mengambil suatu paket data kemudian menaruhnya di dalam buffer internal.
Proses selanjutnya paket data dikirim melalui bus data setelah terjadi
sinkronisasi data maupun kecepatan transfernya.
- Perintah
Write, Perintah ini kebalikan dari read. CPU
memerintahkan modul I/O untuk mengambil data dari bus data untuk diberikan
pada perangkat periperhal tujuan data tersebut.
Dalam
teknik I/O terprogram, terdapat dua macam implementasi 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 pada modul I/O sebagai lokasi memori dan menggunakan
instruksi mesin yang sama untuk mengakses baik memori maupun perangkat I/O.
Konsekuensinya adalah diperlukan saluran tunggal untuk pembacaan dan saluran
tunggal untuk penulisan. Keuntungan memory mapped ini adalah efisien dalam
pemrograman namun memakan banyak ruang memory 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 pembacaan dan penulisan
memori ditambah dengan saluran perintah output. Kesuntungan isolated I/O adalah
sedikitnya instruksi I/O.
No comments:
Post a Comment