Pengantar Organisasi & Arsitektur Komputer
Pengertian I/O
Unit Input/Output (I/O) adalah
bagian dari sistem mikroprosesor yang digunakan oleh
mikroprosesor itu untuk berhubungan dengan dunia luar.
I/O
Merupakan 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.
Tugas dari Sistem Kontrol I/O
- Memelihara directori dari
berkas dan lokasi informasi
- Menentukan jalan bagi aliran
data antara main memory dan alat penyimpanan sekunder
- Mengkoordinasi komunimasi
antara CPU dan alat penyimpanan sekunder
- Menyiapkan berkas penggunaan
input atau output telah selesai
Perangkat Eksternal
Secara umum perangkat eksternal
diklasifikasikan menjadi 3 katagori :
- 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.
- 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.
- 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.
Modul-Modul I/O
Modul I/O
Adalah interface atau central switch untuk mengendalikan satu atau lebih
peripheral atau perangkat input output.
Modul I/O memiliki
dua buah fungsi utama, yaitu :
Sebagai piranti antarmuka ke CPU dan memori melalui bus sistem.
Sebagai piranti antarmuka dengan peralatan peripheral lainnya
dengan menggunakan link data tertentu.
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 diinteruksikan padanya. Seluruh proses
merupakan tanggung jawab CPU sampai operasi lengkap dilaksanakan.
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.
Operasi Direct Memory
Access (DMA)
DMA ialah
sebuah prosesor khusus (special purpose processor) yang berguna untuk
menghindari pembebanan CPU utama oleh program I/O (PIO).
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.
Saluran I/O dan Processor
Evolusi Fungsi I/O
- CPU mengontrol peripheral secara langsung.
- Ditambahkannya sebuah pengontrol atau modul I/O CPU
menggunakan I/O terprogram tanpa menggunakan interrupt.
- CPU menggunakan interrupt
- Menggunakan DMA
- Modul I/O ditingkatkan kemampuannya menjadi sebuah
prosessor yang memiliki tugasnya sendiri, yang menggunakan instruksi
tertentu untuk I/O tertentu.
- Modul I/O memiliki memori lokalnya sendiri dan
merupakan sebuah computer yang memiliki tugasnya sendiri.
Saluran I/O
Pada kebanyakan sistem komputer, CPU tidak dibebani
menangani tugas yang berhubungan dengan I/O. Tetapi tanggung jawab untuk
kontrol peralatan diserahkan pada prosesor I/O, yang dikenal sebagai saluran
I/O (I/O channel).
Saluran I/O itu sendiri merupakan prosesor yang sudah
diprogram. Program-program yang di-execute ini disebut channel program.
Channel program ini menentukan operasi, yang diperlukan untuk akses peralatan
dan mengontrol jalur data (data pathway).
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, sepertidisk. 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.
Macam-macam Device
1. Dedicated Device;
Digunakan untuk pengaksesan oleh satu orang pada setiap
saat.
Contoh : Terminal.
2. Shared Device;
Digunakan untuk pengaksesan oleh banyak pemakai secara
bersamaan.
Contoh : Disk.
Aktifitas I/O untuk shared device adalah sangat kompleks
dibanding aktifitas I/O pada dedicated device. Dua fungsi yang sangat penting
dari shared device adalah alokasi tempat dan pemberian akses yang tepat.
Aktifitas
Saluran
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.
Beberapa saluran akan memberi perintah :
- Test I/O, untuk menentukan apakah jalur (pathway)
yang menuju peralatan sedang sibuk.
- Start I/O, pada peralatan tertentu.
- Halt I/O, pada peralatan tertentu.
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).
Referensi :
Komentar
Posting Komentar