Jumat, 15 Maret 2019

6.2 Perangkat Keras Device (I/O)

 6.2.1 PERANTI I/O

Peranti keras I/O atau device pada sistem komputer amatlah beragam. Masing-masing peranti I/O memiliki karakteristik yang khas. Peranti 1/0 dapat dikelompokkan berdasarkan karakteristiknya seperti pada Gambar 6.2.


ASPECT


DATA-TRANSFER MODE


ACCESS METHODO


TRANSFER SCHEDULE


DEVICE SPEED


VARIATION


TERMINAL


DISK


CHARACTER


BLOCK


SEQUENTIAL


MODEM CD-ROM


TAPE


RANDOM


SYNCHRONOUS ASYNCHRONOUS


DEDICATED


KEYBOARD


SHARABLE


TAPE KEYBOARD


SHARING


LATENCY


SEEK TIME


TRANSFER RATE


DELAY BETWEEN OPERATIONS


READ ONLY


VO DIRECTION


WRITE ONLY READ WRITE


EXAMPLE


CD-ROM


GRAPHICS CONTROLLER DISK


Gambar 6.2 Penggolongan peranti 1/0 berdasarkan karakteristiknya


Karakteristik yang dapat digunakan sebagai pembeda antara peranti 1/0 yang satu sama yang lain antara lain: berdasarkan.


1. Modus transfer data

Berdasarkan kategori ini, peranti I/O dapat dibedakan sebagai peranti I/O dengan modus tranfer per karakter ataupun per blok. Pada peranti I/O karakter, unit terkecil transfer data peranti I/O adalah per karakter, sedangkan pada peranti I/O blok, unit terkecil transfer data peranti I/O adalah per blok data. Contoh peranti I/O per karakter adalah terminal keyboard, sedangkan contoh peranti I/O per blok adalah disk magnetik.


2. Metode akses

Berdasarkan kategori ini, peranti I/O dapat dibedakan sebagai peranti I/O dengan metode akses sekuensial dan metode akses acak. Pada peranti I/O dengan metode akses sekuensial, pengaksesan, baik baca ataupun tulis, harus dilakukan secara berurutan. Ini berarti untuk membaca suatu data yang terletak pada akhir harus melewati seluruh bagian data dari awal sampai posisi akhir tersebut. Sementara pada peranti I/O dengan metode akses acak, pengaksesan dapat langsung melompat ke posisi yang dikehendaki. Modem merupakan contoh peranti I/O dengan metode akses sekuensial, sedangkan CD ROM dan disk merupakan contoh peranti I/O dengan akses acak.


3. Jadwal transfer

Berdasarkan kategori ini, peranti I/O dapat dibedakan atas peranti I/O sinkron dan peranti I/O asinkron. Peranti I/O sinkron berarti transfer data hanya dapat dilakukan pada interval waktu tertentu, seperti halnya pada tape disk. Sementara peranti I/O asinkron dapat melakukan transfer data sewaktu-waktu dan kapan saja seperti pada peranti keyboard.


4. Sharing

Berdasarkan kategori ini, peranti I/O dapat dibedakan atas peranti I/O terdedikasi (dedicated) dan peranti I/O yang dapat digunakan bersama (shared). Peranti I/O terdedikasi berarti peranti I/O tersebut hanya dapat digunakan oleh suatu proses pada suatu waktu seperti halnya tape disk. Sementara peranti I/O shared dapat digunakan bersama oleh sejumlah proses atau aplikasi secara bersamaan seperti halnya peranti keyboard.


5. Kecepatan Akses

Berdasarkan kategori ini, peranti I/O dapat dibedakan berdasarkan spektrum atau jangkauan kecepatan akses peranti I/O tersebut. Kecepatan suatu peranti I/O tergantung pada sejumlah aspek seperti latency, yang meliputi waktu tunggu di antrian, waktu untuk menunggu kesiapan peranti I/O, kemudian seek time, yaitu waktu untuk mencari lokasi data, transfer rate, yaitu kecepatan transmisi data dari/ke memori, serta waktu tunda antara operasi yang satu dengan operasi berikutnya. Berbagai variasi kecepatan peranti I/O dapat dilihat pada Gambar 6.3.


6. Modus Operasi I/O

Berdasarkan kategori ini, peranti I/O dapat dibedakan sebagai peranti VO read-only, write-only, serta read-write. Peranti I/O read-only hanya dapat melakukan operasi input saja seperti CDROM. Peranti I/O write-only dapat melakukan operasi output saja seperti graphic controller. Peranti I/O read-write dapat melakukan operasi input dan output seperti halnya peranti penyimpan atau disk.


• Variasi Kecepatan Berbagai Device


gigaplane


bus


SBUS


SCSI bus


fast


athernet


hard disk


ethernet


laser


printer


modem


keyboard


0.01


0.1


10


100


Gambar 6.3 Variasi kecepatan berbagai peranti I/O


1.000 10,000 100.000


koys


1,000,000


7. Selain karakteristik di atas, peranti I/O dapat dibedakan berdasarkan fungsionalitas sebagai berikut:


1.) Peranti antar muka pengguna Yaitu peranti yang menjembatani interaksi langsung antara pengguna. (umumnya manusia dengan sistem komputer, yang dapat dibedakan lebih lanjut menjadi peranti input, seperti keyboard, mouse, scanner, dan peranti output seperti monitor, printer.


2) Peranti transmisi Yaitu peranti yang berfungsi untuk mentransmisikan data secara internal maupun eksternal ke perangkat komputasi lainnya. Contohnya adalah NIC (Network Interface Card) dan Modem.


3.) Peranti penyimpanan data Yaitu peranti yang berfungsi untuk penyimpanan data. Contohnya adalah seperti piringan magnetis (harddisk), flash memory, CDROM, DVDROM, serta floppy disk.


6.2.2 DEVICE CONTROLLER

Device controller merupakan bagian dari organisasi fisik sistem I/O yang berfungsi sebagai pengendali digital terhadap peranti I/O dan juga bertanggung jawab atas komunikasi data antara peranti I/O dengan sistem internal komputer. Device controller di sisi perangkat keras dan device driver di sisi perangkat lunak, merupakan tandem yang mengabstraksi sepenuhnya pengaksesan ke peranti fisik I/O. Device controller dapat berupa suatu kartu rangkaian digital ataupun chipset yang ditempatkan pada rangkaian induk sistem komputer, mainboard, ataupun di peranti I/O. Umumnya satu device controller dapat mengelola satu atau lebih peranti I/O yang sejenis.

Port controller merupakan device controller khusus yang mengatur pengiriman data antara bus I/O internal, misalnya PCI bus, dengan bus I/O eksternal, seperti bus paralel, bus serial, dan bus USB. Gambar 6.4 memberikan sejumlah contoh device controller, seperti graphics controller, IDE disk controller, SCSI controller, serial port controller, serta paralel port controller.


6.2.3 BUS I/O

Bus VO terdiri atas bus data, alamat, dan kontrol yang berfungsi menghubungkan device controller dengan elemen internal komputer seperti prosesor dan memori. Contohnya adalah bus PCI pada Gambar 6.3 yang menghubungkan device controller ke memori dan prosesor. Selain itu, untuk sejumlah peranti I/O diperlukan bus ekspansi untuk menghubungkan sistem internal komputer dengan peranti I/O. Contoh bus ekspansi adalah bus IDE, SCSI, bus serial, paralel, dan usb, Komunikasi data lewat bus khusus ini masing-masing diatur oleh sebuah port controller. Secara fisik bus ekspansi di atas umumnya berbentuk kabel, sedangkan port controller berupa kepingan chipset pada mainboard.


6.2.4 PENGALAMATAN PERANTI I/O


Untuk mengakses peranti I/O, yaitu membaca atau menulis data ke peranti I/O maka setiap peranti I/O butuh diberi alamat khusus. Sesungguhnya yang diberi alamat adalah register-register pada device controller-nya. Ada dua macam metoda untuk memberi alamat pada peranti I/O:


1. Direct-mapped I/O addressing

Pada skema pengalamatan ini, peranti I/O memiliki ruang alamat yang terpisah dari alamat memori. Jadi sistem komputernya akan memiliki ruang alamat memori dan ruang alamat peranti I/O yang berdiri sendiri-sendiri.


2. Memory-mapped I/O addressing

Pada skema pengalamatan ini, peranti I/O memiliki alamat yang merupakan bagian dari ruang alamat memori secara global. Dalam model ini, bagian tertentu dari ruang alamat memori yang dialokasi khusus sebagai alamat dari peranti-peranti I/O.


Gambar 6.4 menunjukkan contoh pemberian alamat pada peranti I/O dengan memakai direct-mapped I/O.


Manajemen Device


NO ADDRESS RANGE (HEXADECIMAL)


185


DEVICE


020-021


DMA CONTROLLER


040-043


INTERRUPT CONTROLLER


TIMER


200-20F


GAME CONTROLLER


2F8-2FF


320-32F


SERIAL PORT (SECONDARY)


378-37F


HARD-DISK CONTROLLER


300-3DF


PARALLEL PORT


GRAPHICS CONTROLLER


3F0-3F7


DISKETTE-DRIVE CONTROLLER


3F8-3FF


SERIAL FORT (PRIMARY)


Gambar 6.4 Contoh pengalamatan peranti I/O


6.2.5 ΜΕΤODE TRANSFER DATA


Salah satu hal yang cukup penting dalam menentukan kinerja sistem I/O adalah mekanisme transfer data dari peranti I/O ke bagian internal sistem komputer. Gambar 6.5 menunjukkan 3 metode penanganan transfer data I/O pada umumnya.


Instruksi transfer data


Instruksi transfer data


(Prases diblok) CPU menjalarikan proses lain


(Proses diblok) CPU menjalankan proses lain


Inssirupi dibangkitkan ish OMA controller


10


(Proses diaktifkang Instruksi selanjutnya


Kondisi error


CLE STATUR


(Preses diaktifkan) Instruksi selanjutnya


Instruksi selanjutnya


(a) Programmed 10


(memupt Driven 10


KOMA


Gambar 6.5 Berbagai Methode Transfer Data



186


Sistem Operasi


1. Programmed I/O atau Pooling


Gambar 6.5(a) mengambarkan model transfer data dengan programmed I/O. Prosesor bertanggung jawab atas pemeriksaan atas selesainya operasi transfer data yang dilakukan oleh device controller serta bertanggung jawab atas pemindahan data dari atau ke memori utama. Jadi prosesor memberikan instruksi transfer data ke device controller dan harus memeriksa terus menerus status device controller untuk mengetahui kesiapan transfer data ke memori utama. Jika data telah siap ditransfer maka prosesor akan memindahkan data ke memori. Pemindahan data ke memori perlu dikendalikan oleh prosesor karena device controller tidak punya kendali dan hak akses langsung terhadap jalur ke memori utama. Teknik ini sangat tidak efisien untuk transfer blok data yang besar.


2. Interrupt-Driven I/O

Gambar 6.5(b) memperlihatkan model transfer data dengan model Interrupt-driven I/O. Prosesor hanya bertanggung jawab atas pemin- dahan data ke atau dari memori utama. Jadi prosesor memberikan instruksi transfer data ke device controller dan melanjutkan instruksi proses lainnya. Prosesor tidak perlu memeriksa ketersediaan data ke device controller, justru device controller yang akan mengeluarkan sinyal interupsi ke prosesor jika data sudah tersedia untuk disalinkan ke memori utama.

Begitu menerima sinyal interupsi dari device controller, prosesor akan menunda eksekusi proses yang sedang berlangsung dan mengalihkan eksekusi ke rutin penanganan interupsi yang selanjutnya akan me- mindahkan data ke memori utama.


3. DMA (Direct Memori Access)

Metode transfer ini membebaskan prosesor sepenuhnya dari pengon- trolan transfer data I/O seperti ditunjukkan pada Gambar 6.5(c). Sebagai gantinya diperlukan tambahan perangkat keras DMA controller yang memiliki kendali atas bus internal dan jalur ke memori utama. Jika data sudah ditransfer ke memori utama, DMA controller akan menginterupsi prosesor sebagai informasi bahwa data I/O yang diminta oleh proses sebelumnya telah tersedia di memori utama. Gambar 6.6 memberikan ilustrasi langkah-langkah transfer data dari disk dengan teknik DMA dan dijelaskan sebagai berikut:


a. Pertama, suatu proses yang sedang berjalan melakukan operasi I/O dengan memanggil salah satu fungsi device driver untuk melakukan transfer data dari disk ke buffer X di memori utama.


b. Device driver menginstruksikan disk controller untuk transfer data sebesar C byte dari disk ke lokasi buffer X di memori utama.


C. Disk controller akan menginisialisasi transfer DMA. Langkah ini meliputi DMA controller mengirimkan DMA request ke prosesor. Selanjutnya prosesor akan mengisi DMA controller dengan informasi transfer data, dan DMA akan mengirimkan sinyal DMA acknowledge, sebagai ijin untuk memakai bus sistem (prosesor- memory bus).


d. Selanjutnya DMA controller akan mengatur pemindahan setiap word data dari disk controller ke lokasi buffer X di memori utama. Perhatikan, dalam aktivitas ini terjadi kompetisi pemakaian bus sistem dengan proses yang sedang menggunakan prosesor.


e. Jika sudah selesai, DMA mengeluarkan sinyal interrupt kepada prosesor dan mengembalikan hak pemakaian bus sistem ke prosesor.


dence driver is sund ta transfer disk data to butter at address X


CPU


2. device driver tells disk controller to transler C bytes from alek to bulter at address &


5. DMA contrelles transfers bytes to buffer X Increasing memory address and decreasing Cuntil Cro


controller


E when COD, OMA interrupts CPU te sigrial transfer completin


marmory


IDE disk contrailer


(shace


disk contrailer intes DMA transfe


disk conftroffer sends each byte to DMA controller


Gambar 6.6 Mekanisme Transfer Data DMA

Tidak ada komentar:

Posting Komentar