Anda di halaman 1dari 51

LAPORAN LEMBAR KERJA 5

MATA KULIAH ARSITEKTUR KOMPUTER

PERANGKAT MASUKAN/INPUT

OLEH:

ADIL FATHI A. 3202216005


GILANG ARYA L 3202216051
AJIS NURASHIDIQ 3202216055

KELAS 2-E

POLITEKNIK NEGERI PONTIANAK

JURUSAN TEKNIK ELEKTRO

PROGRAM STUDI D3 TEKNIK INFORMATIKA


2023
DAFTAR ISI

BAB 1 4
PERANGKAT MASUKAN/INPUT 4
1.1 Pengertian 4
1.2 Sistem Masukan 4
1.3 Gambar 6
1.3.1 Keyboard 6
1.3.2 Mouse 6
1.3.3 Scanner 7
BAB 2 8
JENIS MASUKAN PERANGKAT DAN INPUT 8
2.1 Perangkat Input Teks 8
2.1.1. Keyboard 8
2.2 Perangkat Input Penunjuk 8
2.2.1. Mouse 9
2.1.2. Touchpad 9
2.3 Perangkat Input Suara 10
2.3.1. Mikrofon 10
2.3.2. Perekam Suara 11
2.4 Perangkat Input Gambar 11
2.4.1. Scanner 11
2.4.2. Kamera Digital 12
2.5 Perangkat Input Video 12
2.5.1. Webcam 12
2.4.2. Capture Card 13
2.6 Perangkat Input Sentuh 13
2.6.1. Capture Card 14
BAB 3 15
PERANGKAT EKSTERNAL 15
3.1 Keyboard 15
3.1.1. Keyboard 15
3.2 Disk Drive 16
3.2.1. Disk Drive 16
BAB 4 18
MODUL I/O 18
4.1 Fungsi Modul Input 18
4.2 Struktur Modul Input 18
BAB 5 20
I/O TERPROGRAM 20
5.1 Ringkasan Program I/O 20
5.2 I/O Commands 21
5.3 I/O Instructions 22
BAB 6 24
INTERRUPT-DRIVEN I/O 24
6.1. Interrupt Processing 24
6.2. Design Issues 25
6.3 Intel 82C59A Programmable Peripehral Interface 26
BAB 7 28
DIRECT MEMORY ACCES (DMA) 28
7.1 Drawback of Programmable and Interrupt-driven I/O 28
7.2. Fungsi DMA 29
7.2.1 Contoh DMA 29
7.3 Intel 8237A DMA Controller 30
7.3.1 Intel 8237 DMA 31
7.3.2 Sistem DMA 32
BAB 8 33
I/O CHANNEL DAN PROSESOR 33
8.1 The Evolution of the I/O function 33
8.1.1 Mekanisme I/Sistem 33
8.3.2 Evolusi I/O Function 34
8.2. Characteristic of I/O Channel 35
BAB 9 37
THE EXTERNAL INTERFACE: FIREWIRE AND INFINIBAND 37
9.1 Types of Interfaces 37
9.2. Point-to-Point and Multipoint Configurations 38
9.2.1 Contoh Konfigurasi 38
9.3. FireWire Serial Bus 40
9.3.1 FireWire Serial Bus 40
9.3.2 Port FireWire Serial Bus 41
9.3.3 Kabel FireWire Serial Bus 41
9.4 InfiniBand 43
9.4.1 Logo InfineBand 43
BAB 10 46
PENUTUP 46
10.1. Kesimpulan 46
10.2. Saran 47
REFERENSI 50
BAB 1

PERANGKAT MASUKAN/INPUT
1.1 Pengertian
Perangkat input definisinya merupakan sebuah perangkat yang mengirimkan data kepada
komputer dengan bentuk data apapun. Data yang dikirimkan bisa berupa data suara, data teks, data
gambar, dan lain sebagainya. Hal ini memungkinkan manusia berinteraksi dengan komputer dengan
memberikan input atau masukan kepada komputer. Selain data, masukan juga bisa merupakan instruksi
yang diberikan oleh manusia untuk dikerjakan oleh komputer. Perangkat input definisinya merupakan
sebuah perangkat yang mengirimkan data kepada komputer dengan bentuk data apapun. Data yang
dikirimkan bisa berupa data suara, data teks, data gambar, dan lain sebagainya. Hal ini memungkinkan
manusia berinteraksi dengan komputer dengan memberikan input atau masukan kepada komputer.
Selain data, masukan juga bisa merupakan instruksi yang diberikan oleh manusia untuk dikerjakan oleh
komputer.

Sehingga bisa didefinisikan bahwa perangkat input sendiri adalah sebuah hardware atau
peripheral yang digunakan untuk mengirim data ke komputer. Perangkat input ini memungkinkan
pengguna untuk berkomunikasi dan memberikan instruksi serta data kepada komputer untuk diproses.
Selain itu perangkat input juga bisa memberikan perintah kepada display, penyimpanan, maupun
transmisi data.

1.2 Sistem Masukan

Sistem masukan adalah komponen atau proses dalam suatu sistem komputer yang bertanggung
jawab untuk mengumpulkan dan mentransfer data dari luar sistem ke dalamnya. Fungsi utama sistem
masukan adalah untuk memasukkan informasi atau data yang diperlukan agar dapat diproses dan
digunakan oleh komputer atau perangkat lainnya. Sistem masukan memungkinkan interaksi antara
pengguna dan sistem komputer melalui berbagai perangkat seperti keyboard, mouse, touchscreen, dan
lain sebagainya.

Dalam komputasi modern, sistem masukan sangat penting karena memungkinkan pengguna
untuk memberikan instruksi atau memasukkan data ke dalam sistem. Setiap kali Anda mengetik di
keyboard, menggerakkan mouse, menyentuh layar sentuh, atau menggunakan perangkat masukan
lainnya, data yang Anda berikan diinterpretasikan dan dikirim ke sistem untuk diproses. Dengan adanya
sistem masukan, pengguna dapat berinteraksi dengan komputer atau perangkat lainnya secara efektif
dan mengontrol operasi serta mengubah data sesuai kebutuhan mereka.
Contoh umum sistem masukan meliputi:

1. Keyboard: Keyboard adalah perangkat keras yang digunakan untuk memasukkan data melalui
tombol-tombol yang berisi karakter dan fungsi khusus. Saat tombol ditekan, karakter yang
sesuai dikirimkan ke komputer untuk diproses.

2. Mouse: Mouse adalah perangkat keras yang digunakan untuk mengontrol gerakan kursor pada
layar komputer. Gerakan mouse dan tombol-tombol yang terkait digunakan untuk memilih,
menggeser, dan mengklik objek pada layar.

3. Touchscreen: Layar sentuh adalah metode masukan yang memungkinkan pengguna untuk
berinteraksi langsung dengan layar komputer atau perangkat mobile dengan menyentuhnya.
Sentuhan pada layar diinterpretasikan sebagai perintah atau input tertentu.

4. Scanner: Scanner digunakan untuk mengubah dokumen fisik menjadi format digital. Dokumen
seperti gambar, foto, atau dokumen teks dapat dipindai dan diubah menjadi file digital yang
dapat dimanipulasi di komputer.

5. Mikrofon: Mikrofon adalah perangkat masukan audio yang digunakan untuk merekam suara
dan mentransfernya ke komputer atau perangkat lainnya. Mikrofon dapat digunakan untuk
pengenalan suara, rekaman audio, panggilan suara, dan sebagainya.

6. Sensor: Sensor adalah perangkat yang mendeteksi dan mengukur perubahan dalam lingkungan
fisik dan mengubahnya menjadi sinyal listrik atau data yang dapat diproses oleh sistem.
Misalnya, sensor cahaya, sensor suhu, sensor gerakan, dan lain sebagainya.

7. Pen Tablet: Pen tablet atau tablet grafis adalah perangkat masukan yang digunakan oleh
desainer dan seniman digital. Ini memungkinkan pengguna untuk menggambar, mewarnai, dan
mengedit gambar langsung di atas permukaan tablet menggunakan pena atau stylus.

Itu hanya beberapa contoh umum sistem masukan. Ada juga berbagai perangkat masukan lainnya yang
digunakan tergantung pada kebutuhan dan jenis sistem yang digunakan.
1.3 Gambar

1.3.1 Keyboard

1.3.2 Mouse
1.3.3 Scanner

1.3.4 TouchScreen
BAB 2

JENIS MASUKAN PERANGKAT DAN INPUT

2.1 Perangkat Input Teks

Perangkat input teks yang umum digunakan oleh kita semua adalah keyboard. Keyboard sendiri
merupakan perangkat input yang paling umum dan paling populer yang digunakan oleh user. Perangkat
ini membantu manusia untuk menginputkan data yang berupa teks pada komputer. Seperti kita ketahui,
keyboard sendiri bentuknya seperti di gambar yang ditunjukkan di bawah ini

2.1.1. Keyboard

Keyboard ini memiliki banyak sekali tombol-tombol yang berupa huruf, simbol, dan angka. Huruf,
simbol, dan angka ini biasa disebut dengan alfanumerik. Keyboard memiliki banyak ukuran, banyak
standar, serta banyak sekali macam-macamnya. Mulai dari yang paling kita kenal adalah QWERTY
hingga DVORAK. Kenapa disebut QWERTY karena susunan hurufnya yang paling atas atau susunan
huruf yang paling awal urut-urutannya adalah Q W E R T Y.

2.2 Perangkat Input Penunjuk

Perangkat Input Penunjuk, juga dikenal sebagai perangkat penunjuk atau pointing device, adalah jenis
sistem masukan yang digunakan untuk mengontrol gerakan kursor atau penunjuk pada layar komputer.
Perangkat ini memungkinkan pengguna untuk melakukan navigasi, memilih, dan berinteraksi dengan
objek pada tampilan grafis, antarmuka pengguna, atau sistem operasi.
Contoh umum dari perangkat input penunjuk adalah mouse dan touchpad. Mouse adalah perangkat
yang umum digunakan di komputer desktop atau laptop. Biasanya terdiri dari sebuah bola atau sensor
optik di bagian bawah yang melacak gerakan perangkat pada permukaan datar. Gerakan mouse diubah
menjadi gerakan kursor pada layar yang memungkinkan pengguna untuk memilih, mengklik, dan
menggerakkan objek.

2.2.1. Mouse

Sementara itu, touchpad adalah perangkat penunjuk yang terintegrasi pada laptop atau perangkat
mobile. Touchpad menggunakan permukaan sensitif sentuhan di mana pengguna dapat menggerakkan
jari-jari mereka untuk mengontrol gerakan kursor pada layar. Tindakan seperti mengetuk atau
menggeser pada touchpad juga diinterpretasikan sebagai perintah tertentu, seperti mengklik atau
menggulir.

Perangkat input penunjuk ini penting karena memudahkan navigasi dan interaksi dengan antarmuka
pengguna. Dengan menggunakan perangkat ini, pengguna dapat dengan mudah memilih dan
memanipulasi objek pada layar, menjelajahi menu dan pilihan, serta melakukan tugas-tugas lainnya
dengan cepat dan efisien.

2.1.2. Touchpad
2.3 Perangkat Input Suara
Perangkat input suara adalah jenis perangkat yang digunakan untuk memasukkan suara atau
audio ke dalam sistem komputer atau perangkat lainnya. Perangkat ini memungkinkan
pengguna untuk merekam suara, menghasilkan input suara, atau mengirimkan suara melalui
komunikasi suara.

Contoh umum perangkat input suara adalah:

1. Mikrofon: Mikrofon adalah perangkat yang digunakan untuk merekam suara. Itu
mengubah sinyal suara analog menjadi sinyal listrik yang dapat diproses oleh sistem.
Mikrofon umumnya digunakan dalam aplikasi seperti panggilan suara, rekaman audio,
video konferensi, pengenalan suara, dan banyak lagi.

2.3.1. Mikrofon

2. Perangkat perekam suara: Ini bisa berupa perekam suara digital, ponsel cerdas, atau
perangkat lain yang memiliki fitur perekam suara. Perangkat ini memungkinkan
pengguna untuk merekam suara di sekitarnya dan menyimpannya sebagai file audio
yang dapat diproses atau didengar kembali nanti.

2.3.2. Perekam Suara


Perangkat input suara memainkan peran penting dalam berbagai aplikasi, mulai dari
komunikasi suara hingga pengolahan suara. Mereka memungkinkan pengguna untuk
berinteraksi dengan sistem menggunakan suara, merekam suara untuk tujuan perekaman atau
analisis, serta mengintegrasikan suara ke dalam aplikasi multimedia dan komunikasi jarak jauh.

2.4 Perangkat Input Gambar

Perangkat input gambar adalah jenis perangkat yang digunakan untuk memasukkan gambar atau visual
ke dalam sistem komputer atau perangkat lainnya. Perangkat ini memungkinkan pengguna untuk
mentransfer gambar dari sumber eksternal ke dalam format digital yang dapat diproses atau disimpan.

Contoh umum perangkat input gambar meliputi:

1. Scanner: Scanner adalah perangkat yang digunakan untuk mengubah gambar atau dokumen
fisik menjadi format digital. Gambar yang ditempatkan di atas permukaan scanner akan
dipindai dan dikonversi menjadi file digital yang dapat diedit, disimpan, atau dibagikan melalui
komputer.

2.4.1. Scanner

2. Kamera Digital: Kamera digital adalah perangkat yang memungkinkan pengguna untuk
mengambil gambar atau foto dalam format digital. Gambar yang ditangkap oleh kamera digital
dapat langsung dimasukkan ke dalam sistem komputer melalui koneksi USB atau penyimpanan
internal kamera.
2.4.2. Kamera Digital

Perangkat input gambar sangat penting dalam berbagai aplikasi seperti pengolahan gambar, desain
grafis, dokumentasi, dan banyak lagi. Mereka memungkinkan pengguna untuk mentransfer gambar
analog atau fisik ke dalam format digital yang dapat diedit, disimpan, atau dibagikan melalui sistem
komputer.

2.5 Perangkat Input Video

Perangkat input video adalah perangkat keras atau perangkat lunak yang digunakan untuk mengambil,
mengubah, atau mentransfer sinyal video ke dalam sistem komputer atau perangkat lainnya. Perangkat
ini bertujuan untuk memberikan pengguna kemampuan untuk memasukkan data video ke dalam sistem,
sehingga dapat dilihat, disunting, atau diproses lebih lanjut. Berikut adalah contoh-contoh perangkat
input video yang umum digunakan:

1. Webcam: Webcam adalah perangkat input video yang populer dan umum digunakan. Biasanya
terhubung ke komputer melalui kabel USB. Webcam digunakan untuk mengambil video
dengan menggunakan kamera terintegrasi dan mengirimkannya ke komputer. Perangkat ini
digunakan dalam berbagai aplikasi, seperti konferensi video, streaming langsung, video chat,
dan merekam video.

2.5.1. Webcam
2. Capture card: Capture card adalah perangkat input video yang digunakan untuk mengambil
sinyal video dari perangkat lain, seperti konsol game, DVD player, atau pemutar Blu-ray, dan
mentransfernya ke dalam komputer. Capture card biasanya terhubung ke perangkat sumber
video melalui kabel HDMI atau komponen, dan kemudian terhubung ke komputer melalui slot
ekspansi seperti PCIe. Dengan menggunakan capture card, pengguna dapat merekam atau
streaming gameplay, merekam film dari DVD, atau memproses sinyal video dari perangkat
lain.

2.4.2. Capture Card

Perangkat input video ini memainkan peran penting dalam menghubungkan dunia video dengan
komputer. Mereka memungkinkan pengguna untuk memasukkan sinyal video ke dalam sistem
komputer untuk berbagai tujuan, seperti komunikasi, pengolahan, penyimpanan, atau pengeditan.
Dengan kemajuan teknologi, perangkat input video semakin canggih dan dapat menyediakan kualitas
video yang lebih baik dan fitur tambahan yang lebih lengkap.

2.6 Perangkat Input Sentuh

Perangkat input sentuh (touchscreen) adalah sebuah perangkat yang memungkinkan interaksi
langsung antara pengguna dan perangkat elektronik dengan menggunakan sentuhan pada layar
perangkat tersebut. Pengguna dapat melakukan input atau mengontrol perangkat dengan menggunakan
jari atau stylus pada area sensitif sentuhan yang terdapat pada permukaan layar. Perangkat input sentuh
memiliki kemampuan untuk mendeteksi posisi sentuhan, gerakan, dan gestur yang dilakukan oleh
pengguna.

Perangkat input sentuh telah menjadi semakin umum dan populer dalam berbagai perangkat
elektronik seperti smartphone, tablet, laptop, komputer all-in-one, mesin kasir, mesin ATM, dan banyak
lagi. Mereka menyediakan antarmuka pengguna yang intuitif dan interaktif, menghilangkan kebutuhan
akan perangkat input tradisional seperti keyboard dan mouse.
Perangkat input sentuh menggunakan berbagai teknologi untuk mendeteksi sentuhan, di antaranya
adalah:

2.6.1. Capture Card


1. Resistive Touchscreen: Menggunakan dua lapisan konduktif yang saling menyentuh dan
terpisah oleh lapisan pemisah yang dapat ditekan oleh sentuhan. Ketika sentuhan diterapkan
pada layar, lapisan konduktif bersentuhan dan menghasilkan perubahan resistansi yang dapat
dideteksi untuk menentukan posisi sentuhan.

2. Capacitive Touchscreen: Menggunakan lapisan transparan yang dilapisi dengan lapisan


konduktif. Ketika jari atau benda konduktif lainnya menyentuh permukaan layar, medan
elektrostatis berubah dan perubahan ini dideteksi untuk menentukan posisi sentuhan.

3. Optical Touchscreen: Menggunakan sensor optik di sekeliling layar untuk mendeteksi


perubahan cahaya yang terjadi saat sentuhan terjadi. Sensor ini dapat menentukan posisi
sentuhan berdasarkan perubahan pola cahaya.

4. Infrared Touchscreen: Menggunakan jajaran dioda infra merah dan fotodioda di sekeliling layar
untuk menciptakan jaringan cahaya infra merah yang terinterupsi saat sentuhan terjadi.
Sentuhan dapat dideteksi dengan mengamati pola perubahan jaringan cahaya.

Perangkat input sentuh memberikan kemudahan penggunaan dan pengalaman interaktif yang
lebih intuitif. Mereka telah menjadi fitur standar dalam banyak perangkat elektronik modern dan terus
berkembang dengan peningkatan dalam teknologi deteksi sentuhan dan responsifitasnya.
BAB 3

PERANGKAT EKSTERNAL

3.1 Keyboard

Keyboard adalah salah satu perangkat eksternal yang digunakan untuk memasukkan data atau
perintah ke dalam sebuah perangkat komputer atau elektronik lainnya. Secara umum, keyboard terdiri
dari sejumlah tombol yang mewakili huruf, angka, tanda baca, dan fungsi khusus lainnya. Saat tombol
pada keyboard ditekan, sinyal elektronik yang sesuai dikirim ke perangkat yang terhubung, seperti
komputer, laptop, atau tablet, untuk diinterpretasikan dan dijalankan.

3.1.1. Keyboard

Keyboard memiliki peran penting dalam memberikan metode input yang efisien dan cepat
kepada pengguna. Dalam konteks komputasi, keyboard sering digunakan untuk mengetik teks,
mengontrol perangkat lunak, memilih opsi, dan menjalankan perintah khusus. Dalam hal ini, keyboard
menjadi alat yang sangat penting untuk produktivitas dan interaksi dengan komputer.

Keuntungan menggunakan keyboard sebagai perangkat eksternal adalah fleksibilitasnya.


Pengguna dapat menggunakan keyboard yang sesuai dengan preferensi dan kebutuhan mereka. Ada
berbagai jenis keyboard yang tersedia, termasuk keyboard dengan kabel atau nirkabel, keyboard
ergonomis yang dirancang untuk kenyamanan pengguna, keyboard mekanis dengan tombol tindakan
yang responsif, dan keyboard khusus dengan tombol-tombol tambahan untuk fungsi khusus seperti
pemrograman atau gaming. Keyboard juga mudah digunakan dan kompatibel dengan berbagai
perangkat, membuatnya menjadi perangkat input yang sangat umum digunakan dalam lingkungan
komputasi sehari-hari.

3.2 Disk Drive

Disk drive adalah perangkat keras yang digunakan untuk membaca dan menulis data pada
media penyimpanan magnetik, seperti hard disk drive (HDD) atau floppy disk drive (FDD). Disk drive
berfungsi sebagai perangkat input dan output yang penting dalam sistem komputer untuk mengakses,
menyimpan, dan mengambil data dari media penyimpanan tersebut.

3.2.1. Disk Drive

Hard disk drive (HDD) adalah jenis disk drive yang paling umum digunakan dalam komputer.
HDD menggunakan piringan magnetik yang berputar dengan kecepatan tinggi untuk menyimpan data
secara magnetis. Ketika data ditulis, piringan berputar dan kepala pembaca-menulis menghasilkan
medan magnetik untuk merekam data. Ketika data dibaca, kepala pembaca-menulis membaca medan
magnetik pada piringan dan mengonversinya menjadi data yang dapat dibaca oleh komputer.

Floppy disk drive (FDD) adalah jenis disk drive yang digunakan untuk membaca dan menulis
data pada floppy disk. Meskipun jarang digunakan pada komputer modern, FDD masih ditemukan
dalam beberapa sistem kuno atau dalam beberapa aplikasi industri tertentu. Floppy disk adalah media
penyimpanan magnetik berukuran kecil yang terdiri dari piringan fleksibel yang dilapisi dengan bahan
magnetik. FDD menggunakan kepala pembaca-menulis untuk membaca dan menulis data pada piringan
flopi tersebut.

Disk drive telah menjadi komponen penting dalam perkembangan sistem komputer dan
penggunaan media penyimpanan. Meskipun teknologi solid-state drive (SSD) semakin populer sebagai
alternatif yang lebih cepat dan lebih tahan lama, disk drive masih digunakan dalam banyak komputer
dan sistem untuk keperluan penyimpanan data yang besar dan ekonomis.
BAB 4

MODUL I/O

4.1 Fungsi Modul Input

Modul input adalah komponen perangkat keras atau perangkat lunak yang digunakan untuk
menerima data atau sinyal dari pengguna atau perangkat lain dan memasukkannya ke dalam sistem
komputer atau perangkat elektronik. Fungsi modul input adalah sebagai berikut:

1. Memasukkan data: Modul input memungkinkan pengguna atau perangkat lain untuk
memasukkan data ke dalam sistem. Misalnya, keyboard adalah modul input yang digunakan
untuk mengetik teks atau memasukkan perintah ke dalam komputer. Modul input lainnya,
seperti mouse, touchpad, atau touchscreen, memungkinkan pengguna untuk memasukkan
perintah dengan menggerakkan kursor atau mengetuk layar.

2. Interaksi pengguna: Modul input juga berfungsi sebagai antarmuka antara pengguna dan sistem
komputer. Mereka memungkinkan pengguna untuk berinteraksi dengan perangkat lunak atau
aplikasi yang berjalan pada sistem. Misalnya, melalui keyboard dan mouse, pengguna dapat
berkomunikasi dengan sistem operasi, menjalankan program, memilih opsi, atau memasukkan
data ke dalam aplikasi.

Selain keyboard dan mouse, ada berbagai jenis modul input lainnya, seperti mikrofon, kamera,
pemindai sidik jari, pemindai barcode, dan banyak lagi, yang digunakan untuk memasukkan data atau
sinyal yang lebih spesifik ke dalam sistem. Fungsi utama dari modul input adalah untuk memungkinkan
pengguna atau perangkat lain berinteraksi dengan sistem komputer atau perangkat elektronik dengan
cara yang mudah dan efisien.

4.2 Struktur Modul Input

Struktur modul input dapat berbeda-beda tergantung pada jenis perangkat keras atau perangkat
lunak yang digunakan. Namun, secara umum, ada beberapa komponen umum yang terdapat dalam
struktur modul input:

1. Sensor: Sensor merupakan komponen yang bertanggung jawab untuk mendeteksi input atau
sinyal yang diberikan. Sensor ini dapat berupa berbagai jenis, seperti sensor tekanan, sensor
optik, sensor gerakan, atau sensor suara, tergantung pada jenis modul input yang digunakan.
Sensor akan mengubah input menjadi sinyal yang dapat diterima oleh sistem.

2. Pemroses: Pemroses (processor) berfungsi untuk menerima dan mengolah sinyal yang diterima
dari sensor. Pemroses ini dapat berupa chip khusus atau bagian dari perangkat keras atau
perangkat lunak yang lebih besar. Pemroses akan melakukan pengolahan data awal, seperti
mengkonversi sinyal analog menjadi digital, melakukan filtering atau penyesuaian sinyal, dan
mempersiapkan data untuk dikirim ke sistem.

3. Konverter: Konverter berfungsi untuk mengubah sinyal yang telah diproses menjadi format
yang dapat diterima oleh sistem komputer atau perangkat elektronik. Misalnya, pada perangkat
input analog seperti mikrofon, konverter akan mengubah sinyal analog menjadi format digital
yang dapat diinterpretasikan oleh sistem. Konverter ini dapat berupa konverter analog ke digital
(ADC) atau konverter lainnya yang sesuai dengan jenis sinyal yang diterima.

4. Antarmuka: Antarmuka merupakan komponen yang menghubungkan modul input dengan


sistem komputer atau perangkat elektronik yang menggunakan input tersebut. Antarmuka ini
dapat berupa koneksi fisik seperti kabel atau konektor, atau dapat berupa koneksi nirkabel
seperti Bluetooth atau Wi-Fi. Antarmuka juga akan memastikan komunikasi yang baik antara
modul input dan sistem yang menerimanya.

Struktur modul input dapat sangat bervariasi tergantung pada kompleksitas dan fungsi dari
perangkat tersebut. Komponen-komponen di atas merupakan elemen umum yang terdapat dalam
banyak modul input, meskipun implementasinya dapat bervariasi tergantung pada teknologi yang
digunakan.
BAB 5

I/O TERPROGRAM

5.1 Ringkasan Program I/O

Program input/output (I/O) merupakan bagian penting dalam pengembangan perangkat lunak. Tujuan
utama dari program I/O adalah memungkinkan interaksi antara perangkat lunak dengan pengguna atau
perangkat keras lainnya. Berikut ini adalah ringkasan tentang program I/O:

1. Input: Program I/O digunakan untuk memperoleh data atau informasi dari pengguna atau
perangkat keras lainnya. Input dapat berupa teks, angka, pilihan, atau sinyal lainnya. Program
I/O akan menerima input tersebut dan mengirimkannya ke perangkat lunak untuk diproses lebih
lanjut.

2. Output: Program I/O juga digunakan untuk menyampaikan hasil atau informasi dari perangkat
lunak kepada pengguna atau perangkat keras lainnya. Output dapat berupa teks, gambar, suara,
atau sinyal lainnya. Program I/O akan mengirimkan output tersebut ke perangkat yang sesuai
agar dapat dilihat, didengar, atau diproses oleh pengguna atau perangkat keras lainnya.

3. Antarmuka pengguna: Program I/O berperan dalam menciptakan antarmuka yang


memungkinkan pengguna berinteraksi dengan perangkat lunak. Antarmuka pengguna dapat
berupa antarmuka grafis dengan elemen-elemen seperti tombol, kotak teks, atau menu drop-
down, atau dapat berupa antarmuka baris perintah yang memungkinkan pengguna memasukkan
perintah langsung.

4. Penanganan kesalahan: Program I/O juga harus mampu menangani kesalahan yang mungkin
terjadi selama operasi I/O. Misalnya, jika pengguna memasukkan data yang tidak valid,
program I/O harus dapat memberikan tanggapan yang tepat dan memungkinkan pengguna
untuk memperbaiki kesalahan tersebut.

5. Pengaturan dan kontrol: Program I/O juga dapat digunakan untuk mengatur dan mengendalikan
perangkat keras yang terhubung. Misalnya, program I/O dapat mengatur volume suara,
mengendalikan pencahayaan pada layar, atau mengontrol perangkat lain seperti printer atau
scanner.

Program I/O merupakan bagian yang krusial dalam pengembangan perangkat lunak karena
memungkinkan interaksi antara perangkat lunak dengan pengguna dan lingkungan perangkat keras.
Dengan program I/O yang baik, pengguna dapat memasukkan input dengan mudah, menerima output
yang relevan, dan berinteraksi dengan perangkat lunak secara efektif.
5.2 I/O Commands

I/O commands (perintah I/O) adalah perintah atau instruksi yang digunakan dalam
pemrograman untuk melakukan operasi input/output. Perintah ini memungkinkan program untuk
berinteraksi dengan perangkat keras, seperti membaca atau menulis data dari atau ke perangkat
penyimpanan, membaca input dari pengguna, menampilkan output ke layar, dan lain sebagainya.
Berikut ini adalah beberapa perintah I/O umum yang digunakan dalam pemrograman:

1. `printf` (C/C++): Perintah ini digunakan untuk menampilkan output ke layar. Dengan
`printf`, programmer dapat mencetak teks, angka, atau variabel dengan format yang
ditentukan.

Contoh penggunaan:

```c
int num = 10;
printf("The number is %d\n", num);
```
2. `scanf` (C/C++): Perintah ini digunakan untuk membaca input dari pengguna. Dengan
`scanf`, programmer dapat membaca nilai yang dimasukkan oleh pengguna dan
menyimpannya ke variabel yang ditentukan.

Contoh penggunaan:

```c
int age;
printf("Enter your age: ");
scanf("%d", &age);
```
3. `input` (Python): Perintah ini digunakan untuk membaca input dari pengguna dalam bahasa
pemrograman Python. `input` akan mengambil input dari pengguna dalam bentuk string.

Contoh penggunaan:

```python
name = input("Enter your name: ")
print("Hello, " + name)
```
4. `print` (Python): Perintah ini digunakan untuk menampilkan output ke layar dalam bahasa
pemrograman Python. Dengan `print`, programmer dapat mencetak teks, angka, variabel,
atau hasil operasi lainnya.

Contoh penggunaan:

```python
age = 25
print("Your age is", age)```
5. `readLine` (Java): Perintah ini digunakan untuk membaca baris input dari pengguna dalam
bahasa pemrograman Java. `readLine` akan mengambil input dalam bentuk string.

Contoh penggunaan:

```java
import java.util.Scanner;

Scanner scanner = new Scanner(System.in);


System.out.print("Enter your name: ");
String name = scanner.nextLine();
System.out.println("Hello, " + name);
```

Perintah I/O di atas hanya beberapa contoh umum dan dapat bervariasi tergantung pada bahasa
pemrograman yang digunakan. Pemrograman I/O memungkinkan interaksi antara program dan
pengguna serta memungkinkan program untuk mengakses dan memanipulasi data dari atau ke
perangkat keras.

5.3 I/O Instructions

I/O instructions (instruksi I/O) adalah instruksi yang digunakan dalam pemrograman tingkat
rendah atau dalam pemrograman yang dekat dengan perangkat keras untuk melakukan operasi
input/output. Instruksi ini digunakan untuk mengendalikan aliran data antara CPU (Central Processing
Unit) dan perangkat I/O. Berikut adalah beberapa contoh instruksi I/O yang umum digunakan:

1. IN (Input): Instruksi IN digunakan untuk membaca data dari perangkat I/O ke dalam register
CPU. Instruksi ini mengirimkan sinyal ke perangkat I/O yang diinginkan dan mengambil data
yang diperlukan ke dalam register yang ditentukan.
Contoh penggunaan (bahasa assembly x86):

```
IN AL, 0x60; membaca data dari port I/O 0x60 ke register AL
```

2. OUT (Output): Instruksi OUT digunakan untuk mengirimkan data dari register CPU ke
perangkat I/O. Instruksi ini mengirimkan data yang ada dalam register ke perangkat I/O yang
ditentukan.

Contoh penggunaan (bahasa assembly x86):

```
MOV AL, 0x0A; mengisi register AL dengan data 0x0A
OUT 0x03C8, AL; mengirimkan data dari register AL ke port I/O 0x03C8
```

3. I/O Control: Instruksi I/O Control digunakan untuk mengendalikan operasi perangkat
I/O secara keseluruhan. Instruksi ini dapat digunakan untuk mengatur mode operasi,
mengaktifkan atau menonaktifkan perangkat I/O, atau mengirimkan sinyal kontrol lainnya.

Contoh penggunaan (bahasa assembly x86):

```
MOV DX, 0x03DA ; mengisi register DX dengan data 0x03DA
IN AL, DX ; membaca status register dari port I/O yang ditentukan oleh register DX
```

Instruksi I/O dapat bervariasi tergantung pada arsitektur CPU dan bahasa pemrograman yang
digunakan. Instruksi ini memungkinkan programmer untuk mengontrol dan berkomunikasi dengan
perangkat keras melalui CPU, yang merupakan komponen inti dalam sistem komputer.
BAB 6

INTERRUPT-DRIVEN I/O

6.1. Interrupt Processing


Interrupt processing (pengolahan interupsi) adalah mekanisme dalam sistem komputer yang
memungkinkan CPU (Central Processing Unit) untuk merespon peristiwa atau sinyal yang mendadak
atau tidak terduga yang terjadi di luar alur program yang sedang berjalan. Ketika terjadi interupsi, CPU
akan menghentikan atau menunda eksekusi program yang sedang berjalan untuk menangani peristiwa
yang memicu interupsi. Berikut ini adalah langkah-langkah umum dalam proses pengolahan interupsi:

1. Terjadinya interupsi: Interupsi dapat terjadi karena berbagai alasan, seperti input dari perangkat
I/O, timer yang memicu penghitungan waktu, kesalahan atau pengecualian yang terjadi dalam
program, atau interupsi eksternal seperti tombol yang ditekan. Ketika interupsi terjadi, CPU
menerima sinyal interupsi dan menghentikan program yang sedang berjalan.

2. Penyimpanan konteks: Setelah interupsi terjadi, CPU akan menyimpan konteks program yang
sedang berjalan, termasuk nilai register, alamat instruksi berikutnya, dan data lainnya. Konteks
ini disimpan di dalam stack atau register tertentu yang ditunjuk untuk menyimpan konteks
interupsi.

3. Menangani interupsi: Setelah konteks disimpan, CPU akan beralih ke rutinitas penanganan
interupsi atau ISR (Interrupt Service Routine). ISR adalah kode program yang ditulis khusus
untuk menangani interupsi tertentu. CPU akan menjalankan ISR untuk menangani peristiwa
yang memicu interupsi. Ini mungkin melibatkan membaca atau menulis data dari atau ke
perangkat I/O, menangani pengecualian atau kesalahan, atau melakukan tugas lain yang terkait
dengan interupsi.

4. Pengembalian dari interupsi: Setelah ISR selesai dieksekusi, CPU akan memulihkan konteks
program yang sebelumnya disimpan. Nilai-nilai register, alamat instruksi berikutnya, dan
konteks lainnya akan dikembalikan ke kondisi semula sebelum terjadi interupsi. CPU akan
melanjutkan eksekusi program dari instruksi berikutnya setelah interupsi.

Proses pengolahan interupsi memungkinkan sistem komputer untuk menangani peristiwa yang
mendadak atau penting dengan prioritas tertentu. Dengan mekanisme ini, sistem dapat merespons input
atau peristiwa eksternal secara cepat dan efisien, meningkatkan responsivitas dan kinerja sistem secara
keseluruhan.

6.2. Design Issues


Design issues (masalah desain) dalam pengembangan perangkat lunak adalah faktor-faktor
yang perlu dipertimbangkan dan diselesaikan saat merancang sistem atau aplikasi perangkat lunak.
Masalah desain ini berpengaruh terhadap fungsionalitas, keandalan, keamanan, kinerja, dan kemudahan
penggunaan perangkat lunak. Berikut adalah beberapa masalah desain umum yang perlu
dipertimbangkan:

1. Fungsionalitas: Salah satu masalah desain utama adalah memastikan perangkat lunak
memenuhi persyaratan fungsional yang diinginkan. Desainer perlu memahami kebutuhan
pengguna dan memastikan bahwa sistem dapat melakukan fungsi yang diperlukan dengan
benar dan efektif.

2. Keandalan: Keandalan adalah masalah desain penting untuk memastikan bahwa perangkat
lunak berjalan tanpa kesalahan atau kegagalan yang serius. Desainer perlu mempertimbangkan
penyebab potensial kegagalan, mengidentifikasi risiko, dan merancang solusi untuk mengatasi
masalah tersebut. Ini meliputi pengujian yang komprehensif, penanganan pengecualian, dan
pemulihan dari situasi yang tidak terduga.

3. Keamanan: Keamanan adalah masalah desain yang kritis dalam pengembangan perangkat
lunak, terutama untuk aplikasi yang berurusan dengan data sensitif atau interaksi pengguna
yang penting. Desainer harus memperhatikan praktik keamanan, seperti enkripsi data,
otentikasi pengguna, perlindungan terhadap serangan peretasan, dan pengendalian akses.

4. Kinerja: Masalah desain terkait dengan kinerja berfokus pada bagaimana perangkat lunak dapat
beroperasi dengan efisien dan responsif. Desainer harus mempertimbangkan aspek seperti
kecepatan eksekusi, penggunaan memori, pengoptimalan algoritma, dan skalabilitas sistem
untuk mengatasi beban yang meningkat.

5. Kemudahan Penggunaan: Perangkat lunak yang dirancang dengan baik harus mudah digunakan
oleh pengguna. Desainer perlu mempertimbangkan antarmuka pengguna yang intuitif, struktur
yang logis, dokumentasi yang jelas, dan pengalaman pengguna yang menyenangkan untuk
memastikan kemudahan penggunaan dan adopsi yang baik.
6. Portabilitas: Desain perangkat lunak yang portabel memungkinkan aplikasi berjalan pada
berbagai platform atau lingkungan yang berbeda tanpa perlu modifikasi yang signifikan.
Desainer harus mempertimbangkan ketergantungan pada platform spesifik, mengikuti standar
terbuka, dan menerapkan desain yang fleksibel untuk memfasilitasi portabilitas.

7. Pemeliharaan: Desain perangkat lunak harus mempertimbangkan kemudahan pemeliharaan


jangka panjang. Ini meliputi pemahaman kode yang jelas, dokumentasi yang lengkap, struktur
yang modular, dan kemampuan untuk memperbaiki atau mengubah komponen perangkat lunak
tanpa mempengaruhi keseluruhan sistem.

Masalah desain ini merupakan bagian penting dari proses pengembangan perangkat lunak.
Dengan mempertimbangkan dan menyelesaikan masalah desain dengan baik, perangkat lunak dapat
menjadi lebih andal, efisien, aman, dan mudah digunakan.

6.3 Intel 82C59A Programmable Peripehral Interface

Intel 82C59A adalah sebuah chip yang dikembangkan oleh Intel Corporation. Chip ini
merupakan sebuah perangkat interface periferal yang dapat diprogram (Programmable Peripheral
Interface) yang dirancang untuk digunakan dalam sistem komputer. Biasanya, chip ini digunakan
sebagai pengendali untuk berbagai jenis perangkat I/O (Input/Output) dalam sistem komputer, seperti
keyboard, mouse, printer, atau perangkat eksternal lainnya.

Intel 82C59A memiliki beberapa fitur dan fungsionalitas yang berguna dalam menghubungkan
perangkat I/O dengan sistem komputer. Beberapa fitur penting dari chip ini antara lain:

1. Kontrol I/O yang fleksibel: Intel 82C59A mendukung pengaturan mode operasi yang beragam,
termasuk mode input, output, atau mode bidirectional. Ini memungkinkan perangkat I/O untuk
mengirim atau menerima data dari CPU sesuai dengan kebutuhan aplikasi.

2. Pemrograman melalui register: Chip ini dapat diprogram melalui sejumlah register yang
ditetapkan. Register-register ini digunakan untuk mengatur berbagai aspek pengendalian
perangkat I/O, seperti pengaturan mode, pengaturan kecepatan transfer data, dan lain-lain.

3. Interrupt handling: Intel 82C59A juga mendukung mekanisme penanganan interupsi. Hal ini
memungkinkan perangkat I/O untuk mengirim sinyal interupsi ke CPU ketika terjadi peristiwa
penting atau ketika data siap untuk diambil. CPU kemudian dapat merespons interupsi ini dan
menangani peristiwa yang memicu interupsi dengan mengambil data dari perangkat I/O.
Dengan fitur-fitur ini, Intel 82C59A memungkinkan sistem komputer untuk menghubungkan dan
mengendalikan perangkat I/O secara efektif. Chip ini membantu dalam mengatur aliran data antara CPU
dan perangkat I/O, memastikan komunikasi yang efisien, dan memungkinkan sistem untuk berinteraksi
dengan perangkat eksternal dengan mudah.
BAB 7

DIRECT MEMORY ACCES (DMA)

7.1 Drawback of Programmable and Interrupt-driven I/O

Programmed I/O adalah metode transfer data antara CPU dan perangkat I/O yang dilakukan
oleh instruksi program yang ditulis di dalam program komputer. Setiap transfer data diinisiasi oleh
instruksi dalam program. Biasanya transfer data dari register CPU ke memori atau sebaliknya. Dalam
metode ini, CPU harus memantau secara terus-menerus kesiapan perangkat I/O untuk transfer data. Ini
disebut busy-wait loop. Drawback dari programmed I/O adalah:

● CPU tidak dapat melakukan komputasi yang berguna selama menunggu perangkat I/O siap. Ini
menyebabkan pemborosan waktu dan sumber daya CPU.

● CPU harus mengeksekusi banyak instruksi untuk setiap transfer data, termasuk instruksi input
dan output untuk berkomunikasi dengan perangkat I/O dan instruksi store dan load untuk
berkomunikasi dengan memori. Ini menyebabkan overhead yang besar pada CPU.

● Kecepatan transfer data terbatas oleh kecepatan CPU dan perangkat I/O. Jika perangkat I/O
lebih lambat dari CPU, maka CPU harus menunggu lebih lama. Jika perangkat I/O lebih cepat
dari CPU, maka CPU tidak dapat mengikuti aliran data.

Interrupt-driven I/O adalah metode transfer data antara CPU dan perangkat I/O yang
menggunakan fasilitas interupt untuk memberitahu CPU ketika ada permintaan I/O yang tersedia.
Dengan menggunakan interrupt, CPU tidak perlu memantau secara terus-menerus perangkat I/O, tetapi
dapat melanjutkan eksekusi program lainnya. Ketika ada permintaan I/O yang tersedia, perangkat I/O
akan mengirimkan sinyal interrupt-request ke CPU. Kemudian CPU akan menghentikan sementara
tugas yang sedang dilakukan, bercabang ke program layanan interrupt untuk memproses transfer data,
dan kemudian kembali ke tugas semula. Drawback dari interrupt-driven I/O adalah:

● CPU masih harus mengeksekusi instruksi input dan output untuk berkomunikasi dengan
perangkat I/O dan instruksi store dan load untuk berkomunikasi dengan memori. Ini masih
menyebabkan overhead yang besar pada CPU.

● CPU masih harus menangani setiap permintaan I/O secara individual. Ini menyebabkan banyak
gangguan pada alur eksekusi program utama.
● Kecepatan transfer data masih terbatas oleh kecepatan CPU dan perangkat I/O. Jika ada banyak
permintaan I/O yang masuk secara bersamaan, maka CPU akan sering terganggu dan tidak
dapat melayani semua permintaan dengan cepat.

7.2. Fungsi DMA

7.2.1 Contoh DMA

DMA adalah singkatan dari Direct Memory Access. DMA adalah sistem yang memungkinkan
perangkat I/O tertentu untuk mengakses memori sistem secara langsung tanpa melalui CPU. Dengan
DMA, CPU dapat melakukan tugas lain sambil menunggu transfer data I/O yang relatif lambat.
Fungsi DMA adalah:

● Meningkatkan kecepatan transfer data antara perangkat I/O dan memori sistem. DMA dapat
mengurangi siklus clock yang diperlukan untuk membaca atau menulis blok data2.

● Mengurangi overhead prosesor yang berarti CPU memiliki ruang lebih banyak untuk
melakukan pekerjaan lainnya. DMA dapat mengurangi jumlah instruksi yang harus
dieksekusi oleh CPU untuk setiap transfer data.

● Membebaskan CPU dari tugas memantau kesiapan perangkat I/O. DMA dapat mengirimkan
sinyal interrupt-request ke CPU ketika ada permintaan I/O yang tersedia atau ketika transfer
data selesai.

Cara kerja DMA adalah sebagai berikut:


● CPU memulai transfer data dengan memberikan informasi tentang jumlah bit data yang
ditransfer, alamat perangkat I/O dan memori yang diperlukan, dan arah aliran data kepada
pengontrol DMA1.

● Pengontrol DMA mengambil alih proses I/O, mengambil memori yang berkaitan dari CPU
dan memasukkannya dalam address register di DMA.

● Sementara CPU melakukan proses lain, DMA mengatur proses I/O hingga selesai dengan
mengikuti pointer yang ada di register.

● Ketika transfer data selesai, pengontrol DMA mengirimkan sinyal interrupt-request ke CPU.
Kemudian CPU menerima interupsi dan menyelesaikan tugas yang berkaitan dengan transfer
data.

7.3 Intel 8237A DMA Controller

Intel 8237A DMA Controller adalah sebuah sirkuit antarmuka periferal untuk sistem
mikroprosesor. Sirkuit ini dirancang untuk meningkatkan kinerja sistem dengan memungkinkan
perangkat eksternal untuk mentransfer data secara langsung dari memori sistem tanpa melalui CPU1.
Sirkuit ini juga menyediakan kemampuan transfer data antar memori1. Intel 8237A DMA Controller
adalah bagian dari keluarga mikroprosesor MCS 85 dan sebenarnya dirancang oleh AMD (disebut
Am9517)1.

Intel 8237A DMA Controller memiliki empat saluran DMA yang dapat diperluas untuk
mencakup sejumlah input saluran DMA1. Intel 8237A DMA Controller mampu melakukan transfer
DMA dengan kecepatan hingga 1,6 megabyte per detik. Setiap saluran mampu mengalamati seluruh
bagian memori 64k-byte dan dapat mentransfer hingga 64k byte dengan pemrograman tunggal1. Intel
8237A DMA Controller digunakan sebagai pengontrol DMA pada IBM PC dan IBM XT asli. IBM PC
AT menambahkan Intel 8237A DMA Controller lainnya dalam konfigurasi master-slave, meningkatkan
jumlah saluran DMA dari empat menjadi tujuh1. Komputer pribadi yang kompatibel dengan IBM
selanjutnya mungkin memiliki set chip yang meniru fungsi Intel 8237A DMA Controller untuk
kompatibilitas ke belakang.
7.3.1 Intel 8237 DMA

Intel 8237A DMA Controller beroperasi dalam empat mode berbeda, tergantung pada jumlah byte
yang ditransfer per siklus dan jumlah IC yang digunakan:

● Single - Satu siklus DMA, satu siklus CPU diselingi sampai register alamat mencapai nol.
● Block - Transfer berlangsung sampai hitungan kata mencapai nol atau sinyal EOP menjadi
aktif.
● Demand - Transfer berlanjut sampai TC atau EOP menjadi aktif atau DRQ menjadi tidak
aktif. CPU diizinkan menggunakan bus ketika tidak ada permintaan transfer.
● Cascade - Digunakan untuk menambah pengontrol DMA lainnya. DREQ dan DACK
dicocokkan dengan HRQ dan HLDA dari chip berikutnya untuk membuat rantai prioritas.
Sinyal bus aktual dieksekusi oleh chip kaskade.

Transfer data antar memori dapat dilakukan. Ini berarti data dapat ditransfer dari satu perangkat
memori ke perangkat memori lainnya. Register Alamat Saat Ini saluran 0 adalah sumber untuk transfer
data dan saluran 1 dan transfer dihentikan ketika register Hitungan Kata Saat Ini menjadi 0. Saluran 0
digunakan untuk penyegaran DRAM pada komputer yang kompatibel dengan IBM PC. Dalam mode
auto initialize, nilai alamat dan hitungan dikembalikan setelah penerimaan sinyal akhir proses (EOP).
Ini terjadi tanpa intervensi CPU. Ini digunakan untuk mengulangi transfer terakhir. Sinyal terminal
count (TC) menandakan akhir transfer ke kartu ISA. Pada akhir transfer, auto initialize akan terjadi jika
dikonfigurasi untuk melakukannya. Single mode:
7.3.2 Sistem DMA

Dalam mode tunggal, hanya satu byte yang ditransfer per permintaan. Untuk setiap transfer,
register penghitung didekremen dan alamat diinkremen atau didekremen tergantung pada
pemrograman. Ketika register penghitung mencapai nol, sinyal terminal count TC dikirim ke kartu2 .
Permintaan DMA DREQ harus dinaikkan oleh kartu dan diaktifkan sampai diakui oleh pengakuan
DMA DACK.
BAB 8

I/O CHANNEL DAN PROSESOR

8.1 The Evolution of the I/O function

The Evolution of the I/O function adalah perkembangan dari fungsi input/output (I/O) dalam
sistem komputer. Fungsi I/O adalah komunikasi antara sistem pengolahan informasi, seperti komputer,
dengan dunia luar, seperti manusia atau sistem pengolahan informasi lainnya. Fungsi I/O melibatkan
perangkat keras yang digunakan oleh manusia atau sistem lain untuk berkomunikasi dengan komputer,
seperti keyboard, mouse, monitor, printer, modem, kartu jaringan, dan sebagainya1. Fungsi I/O juga
dapat digunakan sebagai bagian dari sebuah tindakan; untuk “melakukan I/O” adalah untuk melakukan
operasi input atau output.

8.1.1 Mekanisme I/Sistem

The Evolution of the I/O function dapat dilihat dari sudut pandang CPU dan memori utama,
yang dianggap sebagai otak dari sebuah komputer. Setiap transfer informasi ke atau dari kombinasi
CPU/memori utama, misalnya dengan membaca data dari disk drive, dianggap sebagai I/O1. CPU dan
sirkuit pendukungnya dapat menyediakan I/O yang dipetakan ke memori yang digunakan dalam
pemrograman komputer tingkat rendah, seperti dalam implementasi driver perangkat, atau dapat
menyediakan akses ke saluran I/O. Sebuah algoritma I/O adalah algoritma yang dirancang untuk
memanfaatkan lokalitas dan berkinerja efisien ketika bertukar data dengan perangkat penyimpanan
sekunder, seperti disk drive.
The Evolution of the I/O function dapat dibagi menjadi beberapa tahap berikut:

8.3.2 Evolusi I/O Function


● Processor directly controls a peripheral device. Contoh: CPU mengontrol sebuah flip-flop untuk
mengimplementasikan sebuah jalur serial. Dalam tahap ini, CPU harus menangani detail-detail
dari perangkat eksternal dan tidak dapat melakukan pekerjaan lain selama transfer data
berlangsung.

● Controller or I/O module is added. Processor uses programmed I/O without interrupts. Contoh:
Sebuah Universal Asynchronous Receiver Transmitter. Dalam tahap ini, CPU hanya perlu
membaca dan menulis byte ke pengontrol I/O dan pengontrol I/O yang bertanggung jawab
untuk mengelola sinyal-sinyal. CPU tidak perlu menangani detail-detail dari perangkat
eksternal tetapi masih harus memantau secara terus-menerus kesiapan perangkat I/O untuk
transfer data.

● Controller or I/O module with interrupts. Processor does not spend time waiting for an I/O
operation to be performed. Dalam tahap ini, CPU tidak perlu memantau secara terus-menerus
perangkat I/O tetapi dapat melanjutkan eksekusi program lainnya. Ketika ada permintaan I/O
yang tersedia, perangkat I/O akan mengirimkan sinyal interrupt-request ke CPU. Kemudian
CPU akan menghentikan sementara tugas yang sedang dilakukan, bercabang ke program
layanan interrupt untuk memproses transfer data, dan kemudian kembali ke tugas semula.

● Direct Memory Access. Blocks of data are moved into memory without involving the processor.
Processor involved at beginning and end only. Dalam tahap ini, CPU hanya perlu memulai
transfer data dengan memberikan informasi tentang jumlah bit data yang ditransfer, alamat
perangkat I/O dan memori yang diperlukan, dan arah aliran data kepada pengontrol DMA.
Pengontrol DMA mengambil alih proses I/O dan mentransfer data secara langsung dari atau ke
memori sistem tanpa melalui CPU. Ketika transfer data selesai, pengontrol DMA mengirimkan
sinyal interrupt-request ke CPU23.

● I/O module has a separate processor. Contoh: SCSI controller, controller CPU executes SCSI
program code out of main memory. Dalam tahap ini, pengontrol I/O memiliki prosesor sendiri
yang dapat mengeksekusi kode program yang disimpan dalam memori utama. Pengontrol I/O
dapat berkomunikasi dengan CPU melalui bus sistem atau saluran DMA. Pengontrol I/O dapat
mengelola perangkat I/O yang kompleks dan berkecepatan tinggi.

● I/O processor. I/O module has its own local memory, internal bus, etc. It is a computer in its
own right. Contoh: Myrinet Multi-gigabit Network Controller. Dalam tahap ini, pengontrol I/O
memiliki memori lokal, bus internal, dan sumber daya lainnya yang membuatnya menjadi
sebuah komputer tersendiri. Pengontrol I/O dapat beroperasi secara independen dari CPU
utama dan dapat melakukan komputasi yang kompleks pada data yang ditransfer.

8.2. Characteristic of I/O Channel

Characteristic of I/O Channel adalah ciri-ciri dari saluran I/O yang merupakan bagian dari
sistem input/output (I/O) dari sebuah perangkat komputasi. Saluran I/O adalah sebuah perangkat keras
yang mentransfer data antara unit penyimpanan perangkat dan periferal komputer, yang merupakan
perangkat eksternal seperti keyboard dan monitor. Data ditransfer ketika pengguna mengeksekusi
perintah I/O.
Characteristic of I/O Channel dapat meliputi:
● Jumlah saluran I/O yang tersedia. Saluran I/O dapat berjumlah satu atau lebih, tergantung pada
arsitektur sistem komputer. Beberapa saluran I/O dapat beroperasi secara bersamaan dan
memiliki prioritas yang berbeda.

● Jenis saluran I/O yang digunakan. Saluran I/O dapat berupa saluran byte, saluran blok, atau
saluran multiplex. Saluran byte mentransfer data satu byte pada satu waktu. Saluran blok
mentransfer data dalam blok-blok yang berukuran tetap atau variabel. Saluran multiplex dapat
mentransfer data dari atau ke beberapa perangkat secara bergantian.
● Kemampuan saluran I/O untuk melakukan pemrosesan data. Saluran I/O dapat memiliki
prosesor sendiri yang dapat mengeksekusi program saluran untuk mengelola tugas-tugas I/O
tanpa melibatkan CPU utama. Saluran I/O dapat melakukan fungsi-fungsi seperti konversi
format data, pengecekan kesalahan, buffering, dan enkripsi.

● Cara saluran I/O berkomunikasi dengan CPU dan memori utama. Saluran I/O dapat
menggunakan fasilitas interrupt untuk memberitahu CPU ketika ada permintaan I/O yang
tersedia atau ketika transfer data selesai. Saluran I/O juga dapat menggunakan fasilitas direct
memory access (DMA) untuk mentransfer data secara langsung dari atau ke memori utama
tanpa melalui CPU.

● Antarmuka saluran I/O dengan perangkat eksternal. Saluran I/O dapat menggunakan antarmuka
standar atau khusus untuk berkomunikasi dengan perangkat eksternal seperti disk drive, printer,
modem, dan sebagainya. Antarmuka saluran I/O dapat meliputi sinyal-sinyal kontrol, alamat,
dan data yang dikirimkan melalui kabel-kabel atau bus.
BAB 9

THE EXTERNAL INTERFACE: FIREWIRE AND INFINIBAND

9.1 Types of Interfaces

Types of Interfaces adalah jenis-jenis antarmuka yang digunakan untuk komunikasi antara
manusia dan komputer atau antara komponen-komponen sistem komputer. Antarmuka dapat berupa
perangkat keras atau perangkat lunak yang menyediakan informasi keluaran dari sistem dan elemen
kontrol untuk pengguna melakukan tindakan tertentu. Types of Interfaces dapat dibedakan berdasarkan
cara interaksi, media komunikasi, dan tujuan penggunaan

Beberapa Types of Interfaces yang umum digunakan adalah:

● Graphical User Interface (GUI). Antarmuka ini menggunakan grafik, ikon, tombol, menu, dan
jendela untuk menampilkan informasi dan menerima masukan dari pengguna. Pengguna dapat
berinteraksi dengan GUI menggunakan perangkat seperti mouse, keyboard, atau layar sentuh.
GUI cocok untuk pengguna non-teknis karena menyembunyikan kompleksitas sistem dan
memberikan umpan balik visual yang langsung. GUI juga dapat ditingkatkan dengan visual
yang menarik dan menggunakan model dan gambar dari dunia nyata.

● Touchscreen Graphical User Interface. Antarmuka ini merupakan variasi dari GUI yang
membutuhkan pengguna untuk berinteraksi dengan sistem dengan menggunakan jari-jari
mereka. Antarmuka ini menjadi pilihan yang umum digunakan karena popularitas perangkat
portabel seperti ponsel pintar dan tablet. Perbedaan utama dari GUI biasa adalah dukungan
terhadap gerakan seperti menggeser, menahan klik (sering setara dengan klik kanan mouse),
dan fitur lain seperti gestur dua jari untuk memperbesar/memutar objek.

● Menu-Driven Interface. Antarmuka ini menggunakan daftar pilihan yang ditampilkan pada
layar untuk memandu pengguna dalam melakukan tugas-tugas tertentu. Pengguna dapat
memilih salah satu pilihan dengan menggunakan perangkat seperti keyboard, mouse, atau layar
sentuh. Menu-Driven Interface mudah digunakan karena memberikan petunjuk langkah demi
langkah dan mengurangi kesalahan input. Namun, antarmuka ini dapat menjadi rumit jika
memiliki banyak tingkat menu atau pilihan.
● Command Line Interface (CLI). Antarmuka ini memungkinkan pengguna untuk berkomunikasi
dengan sistem dengan mengetikkan perintah-perintah dalam bentuk teks pada layar. Pengguna
harus mengikuti sintaks dan aturan tertentu untuk mengeksekusi perintah-perintah tersebut. CLI
cocok untuk pengguna teknis yang ingin memiliki kontrol penuh atas sistem dan melakukan
tugas-tugas yang kompleks atau spesifik. Namun, antarmuka ini memiliki kurva belajar yang
tinggi dan tidak memberikan umpan balik visual yang baik.

● Conversational User Interface (CUI). Antarmuka ini memungkinkan pengguna untuk


berkomunikasi dengan sistem dengan menggunakan bahasa alami seperti suara atau teks.
Pengguna dapat berbicara atau mengetikkan pertanyaan atau perintah kepada sistem dan
mendapatkan respons yang sesuai. CUI dapat memberikan pengalaman yang lebih alami dan
personal kepada pengguna karena meniru percakapan manusia. Namun, antarmuka ini
membutuhkan teknologi canggih seperti pengenalan suara, pemrosesan bahasa alami, dan
kecerdasan buatan untuk bekerja dengan baik.

9.2. Point-to-Point and Multipoint Configurations

Point-to-Point and Multipoint Configurations adalah dua jenis konfigurasi jalur yang digunakan
untuk menghubungkan dua atau lebih perangkat komunikasi dalam sebuah jaringan. Konfigurasi jalur
menentukan bagaimana data ditransfer antara perangkat-perangkat tersebut melalui sebuah link atau
saluran komunikasi. Point-to-Point and Multipoint Configurations memiliki perbedaan dan kelebihan
serta kekurangan masing-masing.

9.2.1 Contoh Konfigurasi

Point-to-Point Configuration adalah konfigurasi jalur yang menyediakan link khusus antara dua
perangkat. Seluruh kapasitas link dipesan untuk transmisi antara kedua perangkat tersebut. Contoh
Point-to-Point Configuration adalah koneksi antara remote control dan televisi untuk mengganti
saluran.

Kelebihan Point-to-Point Configuration adalah:

● Bandwidth tinggi: Point-to-Point Configuration menyediakan link khusus antara dua perangkat,
yang berarti seluruh kapasitas link dipesan untuk kedua perangkat tersebut. Ini dapat
meningkatkan kecepatan transfer data.
● Sederhana dan mudah diatur: Point-to-Point Configuration hanya melibatkan dua perangkat
yang terhubung secara langsung, tanpa perlu perangkat tambahan atau pengaturan yang rumit.
● Terbatas pada dua perangkat saja: Point-to-Point Configuration tidak dapat menghubungkan
lebih dari dua perangkat dalam satu link. Ini dapat membatasi fleksibilitas dan skalabilitas
jaringan.

Kekurangan Point-to-Point Configuration adalah:

● Pemborosan sumber daya jaringan: Point-to-Point Configuration menyediakan link khusus


antara dua perangkat, yang berarti seluruh kapasitas link dipesan untuk kedua perangkat
tersebut. Ini dapat menyebabkan pemborosan sumber daya jaringan jika link tidak digunakan
secara optimal atau jika ada kebutuhan untuk menghubungkan lebih dari dua perangkat.
● Menjadi kompleks dan sulit dikelola ketika jaringan berkembang: Point-to-Point Configuration
membutuhkan link khusus untuk setiap pasangan perangkat yang ingin berkomunikasi. Ini
dapat menyebabkan jumlah link yang banyak dan sulit dikelola ketika jaringan berkembang.

Multipoint Configuration adalah konfigurasi jalur yang menggunakan satu link untuk
menghubungkan tiga atau lebih perangkat. Link tersebut dibagi di antara semua perangkat yang
terhubung dan dapat digunakan secara bergantian oleh setiap perangkat. Contoh Multipoint
Configuration adalah jaringan lokal area (LAN) yang menggunakan satu kabel atau bus untuk
menghubungkan beberapa komputer.

Kelebihan Multipoint Configuration adalah:

● Efisien dan hemat biaya untuk jaringan besar: Multipoint Configuration menggunakan satu link
untuk menghubungkan banyak perangkat, yang berarti menghemat biaya kabel dan peralatan
tambahan. Ini juga dapat meningkatkan efisiensi penggunaan sumber daya jaringan karena link
dapat digunakan secara bergantian oleh setiap perangkat.
● Fleksibel dan mudah diskalakan: Multipoint Configuration memungkinkan penambahan atau
pengurangan perangkat tanpa memengaruhi link yang ada. Ini dapat meningkatkan fleksibilitas
dan skalabilitas jaringan.

Kekurangan Multipoint Configuration adalah:

● Berbagi link antara banyak perangkat: Multipoint Configuration menggunakan satu link untuk
menghubungkan banyak perangkat, yang berarti semua perangkat harus berbagi kapasitas link
yang sama. Ini dapat menurunkan kinerja dan keandalan jaringan karena adanya kemungkinan
tabrakan dan gangguan data.
● Membutuhkan perangkat tambahan untuk mengatur link: Multipoint Configuration
membutuhkan perangkat tambahan seperti hub, switch, atau router untuk mengatur link dan
mengalokasikan bandwidth antara perangkat. Ini dapat menambah biaya dan kompleksitas
jaringan.

9.3. FireWire Serial Bus

9.3.1 FireWire Serial Bus

FireWire Serial Bus adalah sebuah spesifikasi transmisi serial yang diusulkan oleh Apple untuk
menghubungkan perangkat-perangkat berkecepatan tinggi ke komputer dengan kecepatan hingga 393
Mbps. FireWire juga dikenal dengan nama IEEE 1394 High-Performance Serial Bus, yang merupakan
nama teknis yang distandarisasi oleh IEEE. FireWire adalah sebuah bus serial, yang berarti informasi
ditransfer satu bit pada satu waktu. Bus serial berbeda dengan bus paralel yang menggunakan banyak
koneksi fisik yang berbeda, dan biasanya lebih mahal dan lebih berat.
9.3.2 Port FireWire Serial Bus

FireWire mendukung sepenuhnya aplikasi isokronus dan asinkronus. Aplikasi isokronus adalah
aplikasi yang membutuhkan transfer data secara real-time dan teratur, seperti audio dan video digital.
Aplikasi asinkronus adalah aplikasi yang tidak membutuhkan transfer data secara real-time dan teratur,
seperti transfer file atau pencetakan dokumen
.
FireWire dimaksudkan oleh Apple untuk menjadi pengganti serial untuk bus SCSI paralel,
sekaligus menyediakan konektivitas untuk peralatan audio dan video digital. Pengembangan FireWire
dimulai pada akhir 1980-an dan awal 1990-an oleh Apple bekerja sama dengan sejumlah perusahaan,
terutama Sony dan Panasonic. Apple menyajikan standar FireWire kepada IEEE pada tahun 1995, dan
diratifikasi sebagai IEEE 1394-1995.

9.3.3 Kabel FireWire Serial Bus


Pada tahun 2007, IEEE 1394 merupakan gabungan dari empat dokumen: IEEE Std. 1394-1995
asli, amendemen IEEE Std. 1394a-2000, amendemen IEEE Std. 1394b-2002, dan amendemen IEEE
Std. 1394c-2006. Pada tanggal 12 Juni 2008, semua amendemen ini serta errata dan beberapa
pembaruan teknis digabungkan menjadi sebuah standar pengganti, IEEE Std. 1394-20081.

FireWire menggunakan kabel tembaga yang digunakan dalam implementasi paling umumnya
dapat mencapai panjang hingga 4,5 meter. Daya dan data dibawa melalui kabel ini, memungkinkan
perangkat dengan persyaratan daya sedang untuk beroperasi tanpa catu daya terpisah. FireWire juga
tersedia dalam versi Cat 5 dan serat optik.

FireWire memiliki beberapa fitur unggulan, antara lain:

● Hot pluggable: FireWire dapat ditancapkan atau dicabut tanpa mematikan sistem atau
perangkat.
● Daisy chain: FireWire dapat menghubungkan hingga 63 perangkat dalam satu bus dengan cara
menghubungkan satu perangkat ke perangkat lainnya secara berantai.
● Peer-to-peer: FireWire tidak membutuhkan host controller atau master device untuk mengelola
komunikasi antara perangkat-perangkat yang terhubung. Setiap perangkat dapat berfungsi
sebagai host atau target.
● Plug-and-play: FireWire dapat mendeteksi secara otomatis perangkat-perangkat yang
terhubung dan mengkonfigurasinya tanpa memerlukan driver atau pengaturan manual.
● Scalable: FireWire dapat menyesuaikan kecepatan transfer data sesuai dengan kemampuan
perangkat-perangkat yang terhubung.

FireWire memiliki beberapa versi yang berbeda dalam hal kecepatan transfer data, jumlah pin konektor,
dan panjang kabel maksimum:

● FireWire 400 (IEEE 1394a): Versi pertama dari FireWire yang dapat mentransfer data hingga
400 Mbps dengan menggunakan kabel tembaga 6-pin atau 4-pin. Panjang kabel maksimum
adalah 4,5 meter.
● FireWire 800 (IEEE 1394b): Versi kedua dari FireWire yang dapat mentransfer data hingga
800 Mbps dengan menggunakan kabel tembaga 9-pin atau kabel serat optik. Panjang kabel
maksimum adalah 100 meter untuk serat optik dan 4,5 meter untuk tembaga.
● FireWire S1600 dan S3200 (IEEE 1394-2008): Versi terbaru dari FireWire yang dapat
mentransfer data hingga 1,6 Gbps atau 3,2 Gbps dengan menggunakan kabel tembaga atau serat
optik yang sama dengan FireWire 800. Panjang kabel maksimum sama dengan FireWire 800.

9.4 InfiniBand
9.4.1 Logo InfineBand

InfiniBand adalah sebuah standar komunikasi jaringan yang digunakan dalam komputasi
berkinerja tinggi yang memiliki throughput sangat tinggi dan latensi sangat rendah. InfiniBand
digunakan untuk interkoneksi data antara dan di dalam komputer. InfiniBand juga digunakan sebagai
interkoneksi langsung atau teralihkan antara server dan sistem penyimpanan, serta antara sistem
penyimpanan.

InfiniBand dikembangkan pada akhir 1990-an dan awal 2000-an oleh sejumlah perusahaan,
terutama Apple, Sony, dan Panasonic. InfiniBand dipromosikan oleh InfiniBand Trade Association
(IBTA), yang mencakup vendor perangkat keras dan perangkat lunak. Pada tahun 1995, InfiniBand
diratifikasi sebagai IEEE 1394-1995. Pada tahun 2008, semua amandemen dan pembaruan teknis
digabungkan menjadi sebuah standar pengganti, IEEE 1394-200812.

InfiniBand adalah sebuah bus serial, yang berarti informasi ditransfer satu bit pada satu waktu.
Bus serial berbeda dengan bus paralel yang menggunakan banyak koneksi fisik yang berbeda, dan
biasanya lebih mahal dan lebih berat. InfiniBand mendukung sepenuhnya aplikasi sinkronus dan
asinkronus. Aplikasi sinkronus adalah aplikasi yang membutuhkan transfer data secara real-time dan
teratur, seperti audio dan video digital. Aplikasi asinkronus adalah aplikasi yang tidak membutuhkan
transfer data secara real-time dan teratur, seperti transfer file atau pencetakan dokumen.

InfiniBand memiliki beberapa komponen utama, antara lain:


● Host Channel Adapter (HCA): Perangkat keras yang menghubungkan komputer atau server ke
jaringan InfiniBand. HCA menyediakan bandwidth ultra tinggi, latensi ultra rendah, dan mesin
In-Network Computing yang inovatif untuk memberikan akselerasi, skalabilitas, dan fitur-fitur
kaya untuk beban kerja modern.

● Data Processing Unit (DPU): Perangkat keras yang menggabungkan komputasi yang kuat,
jaringan berkecepatan tinggi, dan programmabilitas yang luas untuk memberikan solusi
berbasis perangkat lunak yang dipercepat oleh perangkat keras untuk beban kerja paling
menuntut. Dari AI yang dipercepat hingga komputasi ilmiah hingga superkomputasi berbasis
cloud, DPU mendefinisikan ulang apa yang mungkin dilakukan.

● Switch: Perangkat keras yang menghubungkan beberapa HCA atau DPU dalam jaringan
InfiniBand. Switch menyediakan kinerja dan densitas port tertinggi yang tersedia. Fitur-fitur
inovatif seperti NVIDIA Scalable Hierarchical Aggregation and Reduction Protocol
(SHARP)™ dan fitur manajemen lanjutan seperti kemampuan jaringan self-healing, quality of
service, pemetaan virtual lane yang ditingkatkan, dan mesin akselerasi In-Network Computing
memberikan dorongan kinerja untuk aplikasi industri, AI, dan ilmiah.

● Router: Perangkat keras yang menghubungkan beberapa subnet atau domain jaringan
InfiniBand. Router menyediakan skalabilitas tertinggi dan isolasi subnet menggunakan tabel
routing internal.

● Gateway: Perangkat keras yang menghubungkan jaringan InfiniBand dengan jaringan Ethernet.
Gateway digunakan untuk mengaktifkan cara yang skalabel dan efisien untuk menghubungkan
pusat data InfiniBand ke infrastruktur Ethernet.

● Long-Haul System: Perangkat keras yang menghubungkan jaringan InfiniBand yang jauh
secara geografis. Long-Haul System dapat memperpanjang jangkauan InfiniBand hingga 40
kilometer, memungkinkan konektivitas InfiniBand asli antara pusat data terpencil atau antara
pusat data dan infrastruktur penyimpanan terpencil untuk ketersediaan tinggi dan pemulihan
bencana.

● Kabel dan Transceiver: Perangkat keras yang menghubungkan perangkat-perangkat InfiniBand


dalam jaringan. Kabel dan Transceiver dirancang untuk memaksimalkan kinerja jaringan, yang
membutuhkan koneksi berkecepatan tinggi, latensi rendah, dan sangat andal antara elemen
InfiniBand.
InfiniBand memiliki beberapa fitur unggulan, antara lain:

● In-Network Computing: Konsep yang memindahkan komputasi ke dalam jaringan untuk


meningkatkan kinerja dan efisiensi. In-Network Computing memungkinkan pengolahan data
secara paralel dengan komputasi host, mengurangi jumlah data yang melintasi jaringan,
mengurangi waktu operasi MPI, dan meningkatkan efisiensi pusat data.

● SHARP: Teknologi yang memindahkan operasi komunikasi kolektif ke jaringan switch,


mengurangi jumlah data yang melintasi jaringan, mengurangi waktu operasi MPI, dan
meningkatkan efisiensi pusat data.

● Adaptive Routing: Teknologi yang memungkinkan switch untuk secara dinamis menyesuaikan
jalur routing berdasarkan ketersediaan bandwidth dan kesehatan link. Adaptive Routing dapat
meningkatkan kinerja dan keandalan jaringan dengan menghindari kemacetan dan gangguan.

● Congestion Control: Teknologi yang memungkinkan switch untuk secara dinamis mengatur
aliran lalu lintas berdasarkan kondisi jaringan. Congestion Control dapat meningkatkan kinerja
dan keandalan jaringan dengan mencegah penurunan paket dan peningkatan latensi.

● Quality of Service: Teknologi yang memungkinkan switch untuk secara dinamis


mengalokasikan bandwidth dan prioritas berdasarkan kelas layanan yang ditentukan. Quality
of Service dapat meningkatkan kinerja dan keandalan jaringan dengan menjamin layanan
minimum untuk aplikasi penting.
BAB 10

PENUTUP

10.1. Kesimpulan

Perangkat masukkan/input adalah komponen perangkat keras yang digunakan untuk memasukkan data
atau instruksi ke dalam sistem komputer. Jenis perangkat masukan/input sangat bervariasi, termasuk
tetapi tidak terbatas pada keyboard, mouse, joystick, scanner, mikrofon, dan kamera. Setiap perangkat
ini memiliki cara kerja dan metode input yang berbeda-beda.

Selain perangkat masukan/input internal yang terpasang langsung di dalam komputer, ada juga
perangkat masukan/input eksternal. Perangkat masukkan/input eksternal adalah perangkat yang
terhubung ke komputer melalui antarmuka atau port tertentu, seperti USB, Firewire, atau InfiniBand.

Modul I/O adalah komponen perangkat keras yang bertanggung jawab untuk mengelola aliran data
antara perangkat masukkan/input dan sistem komputer. Modul I/O dapat berfungsi sebagai perantara
antara perangkat masukkan/input dan sistem komputer, mengubah sinyal input menjadi format yang
dapat diterima oleh komputer, dan mengirimkannya ke sistem komputer untuk diproses.

I/O terprogram adalah metode pengelolaan I/O di mana proses yang sedang berjalan secara aktif
mengontrol dan mengelola operasi I/O. Dalam I/O terprogram, proses mengirimkan permintaan I/O ke
perangkat masukkan/input dan kemudian menunggu hingga operasi I/O selesai sebelum melanjutkan
eksekusi selanjutnya.

Interrupt-Driven I/O adalah metode pengelolaan I/O di mana perangkat masukkan/input menghasilkan
sinyal interupsi kepada sistem komputer untuk memberi tahu bahwa operasi I/O telah selesai atau
memerlukan perhatian. Dalam Interrupt-Driven I/O, proses dapat melanjutkan eksekusi selanjutnya
tanpa harus menunggu operasi I/O selesai.

Direct Memory Access (DMA) adalah teknik di mana perangkat masukkan/input dapat mengakses
langsung memori sistem tanpa melibatkan prosesor. DMA memungkinkan transfer data yang lebih
cepat antara perangkat masukkan/input dan memori, karena data dapat dikirim langsung tanpa perlu
melalui prosesor.
I/O Channel adalah jalur komunikasi fisik yang digunakan untuk mentransfer data antara perangkat
masukkan/input dan sistem komputer. I/O Channel menghubungkan perangkat masukkan/input dengan
modul I/O atau antarmuka komunikasi yang mengatur aliran data.

Prosesor adalah komponen inti dalam sistem komputer yang bertanggung jawab untuk menjalankan
instruksi dan mengendalikan operasi sistem. Prosesor juga berperan dalam mengatur aliran data antara
perangkat masukkan/input dan sistem komputer, bekerja sama dengan modul I/O, I/O Channel, dan
perangkat masukkan/input itu sendiri.

External Interface Firewire dan InfiniBand adalah dua jenis antarmuka eksternal yang digunakan untuk
menghubungkan perangkat masukkan/input dan sistem komputer. Firewire adalah antarmuka yang
biasanya digunakan untuk transfer data tingkat tinggi antara perangkat-perangkat multimedia seperti
kamera video, hard disk eksternal, dan perangkat audio. InfiniBand adalah antarmuka yang dirancang
untuk mentransfer data dengan kecepatan tinggi antara komputer dan perangkat penyimpanan jarak jauh
atau jaringan komputer.

Secara keseluruhan, perangkat masukkan/input dan antarmuka eksternal seperti Firewire dan
InfiniBand memainkan peran penting dalam pengiriman dan penerimaan data di sistem komputer.
Modul I/O, I/O terprogram, Interrupt-Driven I/O, DMA, I/O Channel, dan prosesor bekerja bersama-
sama untuk mengelola dan memfasilitasi transfer data yang efisien antara perangkat masukkan/input
dan sistem komputer. Dengan adanya perkembangan teknologi, perangkat masukkan/input dan
antarmuka eksternal terus berkembang untuk memberikan kinerja yang lebih baik dan kecepatan
transfer data yang lebih tinggi.

10.2. Saran

Berikut adalah beberapa saran terkait dengan poin-poin yang telah disebutkan sebelumnya:

1. Perangkat Masukkan/Input:
- Pastikan untuk memilih perangkat masukkan/input yang sesuai dengan kebutuhan dan
preferensi Anda. Pertimbangkan faktor seperti ergonomi, responsifitas, dan kemampuan
kustomisasi.
- Selalu perbarui driver atau perangkat lunak yang terkait dengan perangkat masukkan/input
Anda agar mendapatkan kinerja yang optimal.
- Pelajari fungsi dan fitur tambahan dari perangkat masukkan/input Anda, seperti tombol khusus
atau gestur multitouch, untuk meningkatkan produktivitas dan kenyamanan.
2. Perangkat Masukkan/Input Eksternal:
- Pastikan untuk memeriksa kompatibilitas perangkat masukkan/input eksternal dengan sistem
komputer Anda sebelum membeli atau menghubungkannya.
- Pertimbangkan faktor kecepatan transfer, kualitas konstruksi, dan fitur tambahan saat memilih
perangkat masukkan/input eksternal seperti hard disk eksternal atau kamera video.

3. Modul I/O dan I/O Terprogram:


- Pelajari dokumentasi dan petunjuk penggunaan modul I/O yang digunakan dalam sistem Anda
untuk memahami fungsionalitas dan kemampuannya secara lebih baik.
- Ketika menggunakan I/O terprogram, pastikan untuk memahami aturan dan prinsip dasar
dalam mengontrol dan mengelola operasi I/O untuk menghindari masalah kinerja atau konflik.

4. Interrupt-Driven I/O dan Direct Memory Access (DMA):


- Manfaatkan potensi Interrupt-Driven I/O dan DMA untuk meningkatkan efisiensi transfer data
antara perangkat masukkan/input dan sistem komputer.
- Periksa kompatibilitas dan dukungan perangkat keras serta perangkat lunak sistem Anda
terhadap fitur Interrupt-Driven I/O dan DMA yang ingin Anda manfaatkan.

5. . I/O Channel dan Prosesor:


- Pastikan kapasitas I/O Channel dan ketersediaan jalur komunikasi yang cukup untuk
mendukung transfer data yang diperlukan antara perangkat masukkan/input dan sistem
komputer.
- Perbarui perangkat lunak sistem dan driver perangkat keras secara teratur untuk memastikan
kompatibilitas yang baik antara I/O Channel, prosesor, dan perangkat masukkan/input.

6. The External Interface Firewire dan InfiniBand:


- Evaluasi kebutuhan Anda untuk transfer data tingkat tinggi dan jarak jauh saat
mempertimbangkan penggunaan antarmuka eksternal seperti Firewire dan InfiniBand.
- Periksa kompatibilitas antara perangkat masukkan/input yang akan Anda gunakan dengan
antarmuka eksternal yang dipilih.

Saran-saran di atas akan membantu Anda dalam memilih, mengkonfigurasi, dan menggunakan
perangkat masukkan/input serta antarmuka eksternal dengan lebih efektif dan efisien, sesuai dengan
kebutuhan dan preferensi Anda. Selalu jaga kebaruan dan keandalan perangkat keras dan perangkat
lunak yang terkait untuk memastikan kinerja yang optimal.
REFERENSI

1) #blogUNNES. (2017). 10 Macam input device (Perangkat Masukan) Komputer. [Online]


Tersedia di: https://blog.unnes.ac.id/sutrisno/2017/03/08/10-macam-input-device-perangkat-
masukan-komputer/ [Diakses: 9 Juni 2023].
2) NVIDIA. (n.d.). Accelerated scientific innovation with InfiniBand. [Online] Tersedia di:
https://www.nvidia.com/en-us/networking/products/infiniband/ [Diakses: 9 Juni 2023].
3) Good Doctor. (2023). APA Yang Dimaksud Perangkat Eksternal Pada Komputer. [Online]
Tersedia di: https://gooddoctor.id/komputer/apa-yang-dimaksud-perangkat-eksternal-pada-
komputer [Diakses: 9 Juni 2023].
4) Editor. (2020). FireWire (IEEE 1394). Network Encyclopedia. [Online] Tersedia di:
https://networkencyclopedia.com/firewire-ieee-1394/ [Diakses: 9 Juni 2023].
5) Student Terpelajar - Media Pembelajaran dan Informasi. (2021). Fungsi Modul I/O Dan
Struktur Modul I/O. [Online] Tersedia di: https://www.studentterpelajar.com/2021/01/fungsi-
modul-io-dan-struktur-modul-io.html [Diakses: 9 Juni 2023].
6) GeeksforGeeks. (2019). I/O interface (Interrupt and DMA mode). [Online] Tersedia di:
https://www.geeksforgeeks.org/io-interface-interrupt-dma-mode/ [Diakses: 9 Juni 2023].
7) Binary Terms. (2021). Interrupt driven I/O. [Online] Tersedia di:
https://binaryterms.com/interrupted-driven-i-o.html [Diakses: 9 Juni 2023].
8) 123dok.com - documents sharing platform. (n.d.). Kegiatan belajar 4 – Modul input output (I/O)
terprogram (PPI) (2 jam pelajaran). [Online] Tersedia di: https://123dok.com/article/kegiatan-
belajar-modul-input-output-terprogram-ppi-pelajaran.zx5kp5wq [Diakses: 9 Juni 2023].
9) KOMPAS.com. (2022). Jenis-jenis Perangkat Masukan data Di Komputer. [Online] Tersedia
di: https://tekno.kompas.com/read/2022/08/03/15150017/jenis-jenis-perangkat-masukan-data-
di-komputer [Diakses: 9 Juni 2023].
10) JARTEKOM. (n.d.). Modul I/O Dan fungsi modul I/O. [Online] Tersedia di:
https://www.jartekom.tech/2016/09/modul-io-dan-fungsi-modul-io.html [Diakses: 9 Juni
2023].
11) Mulyawan, R. (2020). Pengertian Firewire: Sejarah, Fungsi Dan Fitur Kabel Firewire! Rifqi
Mulyawan. [Online] Tersedia di: https://rifqimulyawan.com/blog/pengertian-firewire/
[Diakses: 9 Juni 2023].
12) Nellyagusti. (2020). Input Dan output komputer. Medium. [Online] Tersedia di:
https://medium.com/@nellyagusti27/input-dan-output-komputer-d01e8f30328 [Diakses: 9
Juni 2023].
13) Didit's Blog. (2014). Perangkat eksternal. [Online] Tersedia di:
https://diditfebriari.blogspot.com/2014/10/perangkat-
eksternal.html#:~:text=Secara%20umum%20perangkat%20eksternal%20diklasifikasikan%20
menjadi%203%20katagori,cocok%20untuk%20berkomunikasi%20dengan%20peralatan.%20
3%203.%20Communication [Diakses: 9 Juni 2023].
14) Media Informasi OnlineBlog berbagi materi pembelajaran media informasi online. (2018).
Perangkat Eksternal. [Online] Tersedia di:
https://www.mediainformasionline.com/2018/04/sistem-komputer-perangkat-eksternal.html
[Diakses: 9 Juni 2023].
15) wahyukode. (2018). Perangkat Eksternal/Peripheral - Sistem Komputer. [Online] Tersedia di:
https://wahyukode.com/perangkat-eksternal-peripheral/ [Diakses: 9 Juni 2023].
16) Stallings, W., & Zeno, P. (2016). Computer organization and architecture: Designing for
performance.
17) Sutriman. (2019). Tiga Teknik I/O. [Online] Tersedia di: https://sutriman.com/tiga-teknik-io/
[Diakses: 9 Juni 2023].
18) Aktifitas | Student Blog. (2012). Teknik Pemrograman Perangkat I/O. [Online] Tersedia di:
https://blog.ub.ac.id/amiasyrooo/2012/05/23/teknik-pemrograman-perangkat-io/ [Diakses: 9
Juni 2023].
19) Alan Blog. (2023). Types of user interfaces. [Online] Tersedia di: https://alan.app/blog/types-
of-user-interface/ [Diakses: 9 Juni 2023].
20) W3computing.com - A Developer Reference Website. (2021). Types of user interface. [Online]
Tersedia di: https://www.w3computing.com/systemsanalysis/types-user-interface/ [Diakses: 9
Juni 2023].
21) Stack Overflow. (n.d.). What is the difference between programmed (polled) I/O, interrupt-
driven I/O, and direct memory access (DMA)? [Online] Tersedia di:
https://stackoverflow.com/questions/40541880/what-is-the-difference-between-programmed-
polled-i-o-interrupt-driven-i-o-an [Diakses: 9 Juni 2023].

Anda mungkin juga menyukai