Senin, 16 Mei 2016

BAB 7



BAB 7 I/O dan Kode Hamming

Modul I/O
• PERANGKAT EKSTERNAL Sistem komputer tidak akan berguna tanpa adanya peralatan input dan output. Operasi-operasi I/O diperoleh melalui sejumlah perangkat eksternal yang menyediakan alat untuk pertukaran data di antara lingkungan luar dengan komputer. Perangkat eksternal dihubungkan dengan komputer oleh suatu link dengan modul I/O
Secara umum perangkat eksternal diklasifikasikan menjadi 3 katagori : 
• Human Readable :yaitu perangkat yang berhubungan dengan manusia sebagai pengguna komputer. • Machine readable :yaitu perangkat yang berhubungan dengan peralatan. Biasanya berupa modul sensor dan tranduser untuk monitoring dan kontrol suatu peralatan atau sistem. 
• Communication :yaitu perangkat yang berhubungan dengan komunikasi jarak jauh.Misalnya: NIC dan modem. cocok untuk berkomunikasi dengan perangkat jarak jauh. 

Cara Kerja Secara Umum 
Perangkat eksternal dihubungkan dengan komputer oleh suatu link dengan modul I/O. Link digunakan untuk pertukaran control, status dan data antara modul I/O dengan perangkat eksternal.
Control logic berkaitan dengan perangkat yang mengontrol operasi perangkat dalam memberikan respons yang berasal dari modul I/O. Transducer mengubah data dari energi listrik menjadi energi lain selama berlangsungnya output dan dari bentuk energi tertentu menjadi energi listrik selama berlangsungnya input.
Koneksi 
• perangkat eksternal dapat dipasang melalui saluran, port, atau colokan tertentu. Pada komputer PC, saluran ini biasanya adalah saluran serial, saluran paralel, saluran USB, dan saluran PCMCIA.

Peripheral Input 
• Keyboard : berfungsi memasukkan huruf, angka, karakter khusus serta sebagai media bagi user (pengguna) untuk melakukan perintah-perintah lainnya yang diperlukan, seperti menyimpan file dan membuka file.   
• Touchscreen atau Layar sentuh adalah  Layar yg bersifat sensitif terhadap tekanan, pengguna berinteraksi dengan komputer dengan menyentuh gambar atau kata-kata yang berada di layar dengan jari tangan. 
• Mouse adalah salah unit masukan (input device). Fungsi alat ini adalah untuk perpindahan pointer atau kursor secara cepat. Selain itu, dapat sebagai perintah praktis dan cepat dibanding dengan keyboard 
• Touchpad :Unit masukkan ini biasanya dapat kita temukan pada laptop dan notebook, yaitu dengan menggunakan sentuhan jari 
• Barcode berfungsi untuk membaca suatu kode yang berbentuk kotak-kotak atau garis-garis tebal vertical yang kemudian diterjemahkan dalam bentuk angka-angka.  
 • Scanner adalah sebuah alat yang dapat berfungsi untuk meng-copy atau menyalin gambar atau teks yang kemudian disimpan ke dalam memori komputer. 
Peripheral output 
• MONITOR : Bentuknya mirip televisi dan berfungsi menampilkan proses dan hasil pekerjaan komputer.   
• Printer :  merupakan perangkat hardware eksternal, yang mengambil data dari komputer yang telah diproses untuk menghasilkan data berupa hard copy 
• Plotter, seperti juga printer mencetak berupa hard copy dari desain digital yang diberikan. Desain dikirim ke plotter melalui kartu grafis dan gambar dibuat dengan menggunakan pena


Terdapat empat klasifikasi perintah I/O, yaitu: 
• Perintah Control : Perintah ini digunkan untuk mengaktivasi perangkat peripheral dan memberitahukan tugas yang diperintahkan padanya. 
• 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. 
• 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. 
• 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. 
INTERRUPT DRIVEN I/O 
• Teknik interrupt – driven I/O memungkinkan proses tidak membuang – buang waktu. Prosesnya adalah CPU mengeluarkan perintah I/O pada modul I/O, bersamaan dg perintah I/O dijalankan oleh modul I/O maka CPU akan melakukan eksekusi perintah – perintah lainnya. Apabila modul I/O telah selesai menjalankan instruksi yang diberikan padanya akan melakukan interupsi pada CPU bahwa tugasnya telah selesai.

Terdapat empat klasifikasi perintah I/O, yaitu: 
• Perintah Control : Perintah ini digunkan untuk mengaktivasi perangkat peripheral dan memberitahukan tugas yang diperintahkan padanya. 
• 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. 
• 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. 
• 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. 
INTERRUPT DRIVEN I/O 
• Teknik interrupt – driven I/O memungkinkan proses tidak membuang – buang waktu. Prosesnya adalah CPU mengeluarkan perintah I/O pada modul I/O, bersamaan dg perintah I/O dijalankan oleh modul I/O maka CPU akan melakukan eksekusi perintah – perintah lainnya. Apabila modul I/O telah selesai menjalankan instruksi yang diberikan padanya akan melakukan interupsi pada CPU bahwa tugasnya telah selesai.

Terdapat empat klasifikasi perintah I/O, yaitu: 
• Perintah Control : Perintah ini digunkan untuk mengaktivasi perangkat peripheral dan memberitahukan tugas yang diperintahkan padanya. 
• 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. 
• 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. 
• 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. 
INTERRUPT DRIVEN I/O 
• Teknik interrupt – driven I/O memungkinkan proses tidak membuang – buang waktu. Prosesnya adalah CPU mengeluarkan perintah I/O pada modul I/O, bersamaan dg perintah I/O dijalankan oleh modul I/O maka CPU akan melakukan eksekusi perintah – perintah lainnya. Apabila modul I/O telah selesai menjalankan instruksi yang diberikan padanya akan melakukan interupsi pada CPU bahwa tugasnya telah selesai.



 DMA memiliki kegunaan sebagai berikut : 
• Untuk membantu CPU fokus penuh untuk mengerjakan proses transfer data. 
• Dengan DMA,   CPU cukup memulai prosesnya dan bisa melakukan kerja lain selama proses transfer itu   berlangsung dan tinggal menunggu informasi dari DMA controller jika proses transfer sudah   selesai. 
• membebaskan pemroses menunggui transfer data yang dilakukan perangkat I/O.
pemroses memerintahkan DMA controller dengan mengirim informasi berikut : 
• Perintah penulisan/pembacaan. •
• Alamat perangkat I/O. • 
• Awal lokasi memori yang ditulis/dibaca. • 
• Jumlah word (byte) yang ditulis/dibaca. 
Hubungan DMA dengan  Input dan Output 
• Hubungan antara CPU dengan main memory ataupun dengan alat-alat input atau output dilakukan dengan suatu jalur yang di sebut dengan bus. Hubungan antara CPU dengan main memory melalui jalur bus yang dilekatkan pada memory data register, memory address register dan control unit di CPU.


Macam-Macam channel
• a. Selector Channel; Dapat mengatur aliran data antara memori utama dengan sebuah peralatan pada saat tersebut b. Multiplexor Channel; Dapat mengatur aliran data antara memori utama dengan beberapa peralatan
c. 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. 

THUNDERBOLT AND INFINIBAND
• Infiniband adalah arsitektur komunikasi berkecepatan tinggi yang bertujuan digunakan untuk alat interkoneksi, seperti server, secondary storage, dan switch jaringanterkoneksi data.
Elemen – elemen Infiniband : 
• Host channel adapter (HCA)
• Target channel adapter (TCA)
• Infiniband switch 
• Links 
• Sub-net
• Router
• Adapter jalur 


Rumus perhitungan posisi  Check Bit Ci = 2i-1  
Dalam hal ini, terdapat 3 bit yang berlainan. Untuk menentukannya cukup melakukan operasi EXCLUSIVE OR pada kedua codeword, dan menghitung jumlah bit 1 pada hasil operasi. Jumlah posisi bit dimana dua codeword berbeda disebut jarak Hamming 


  Konsep Dasar Kode Hamming
• Konsep Dasar Kode Hamming adalah dengan menggunakan bit pariti untuk disisipkan pada posisi tertentu dalam blok data, dengan demikian memungkinkan untuk dapat digunakan dalam pemeriksaan kesalahan dalam blok data. 

Penerapan Kode Hamming 
• Kode Hamming digunakan untuk mendeteksi error dan perbaikan kode pesan terkirim, kode koreksi error adalah sebuah algoritma untuk mendeteksi adanya kesalahan dalam pesan yang dikirimkan sekaligus memperbaiki pesan tersebut sehingga pesan dapat tersampaikan dengan benar melalui sistem transmisi data melalui sistem jaringann berbasis pada isi pesan itu sendiri.
 • Catat semua posisi dimana bit n dari member position bernilai 1, kecuali posisi bit itu sendiri. Member position merupakan bentuk biner dari posisi bit. Rumus dari check bit n sama dengan operasi XOR dari posisi-posisi yang dicatat.
• Aturan untuk menentukan C: C1 = D1 Å D2 Å D4 Å D5 Å D7 C2 = D1 Å D3 Å D4 Å D6 Å D7 C4 = D2 Å D3 Å D4 Å D8 C8 = D5 Å D6 Å D7 Å D8 • Kemudian check bits yang didapat saat data disimpan di Å-kan dengan check bits saat pembacaan.Bilangan biner yang didapat menunjukkan letakbit data yang salah, emudian bit yang salah di NOT-kan.  

Koreksi error kode hamming 
• Contoh bilangan desimal yang akan dikonversi ke biner. Misalkan bilangan desimal yang ingin saya konversi adalah 2510. Maka langkah yang dilakukan adalah membagi tahap demi tahap angka 2510 tersebut dengan 2, seperti berikut : 25 : 2 = 12,5 
• Tahapan yang tepat untuk melakukan proses konversi ini sebagai berikut : 25 : 2 = 12 sisa 1. • Langkah selanjutnya adalah membagi angka 12 tersebut dengan 2 lagi. Hasilnya sebagai berikut : 12 : 2 = 6 sisa 0



Implementasi Hamming Code
• Seluruh proses pada fase perancangan akan di transformasikan pada fase pemrograman ke dalam produk perangkat lunak. Pada fase ini, perangkat lunak di bangun dengan menggunakan bahasa pemrograman.
• Contoh proses hamming code dengan mengunakan kata  halo  ;
• - Penyisipan check bit • Hitung panjang data masukan : HALO . 
Halo = 4 karakter. 1 karakter = 1 byte = 8 bit. Halo : 32 bit = 0100 | 1000 | 0100 | 0001 | 0100 | 1100 | 0100 | 1111 . 32 bit = 2 pangkat 5 bit. Maka check bit = 5 + 1 = 6 bit. 
 • Sehingga panjang bit yang akan di kirim : 32 + 6 bit = 38 bit. Hasil nya : panjang bit yang di terima = 38, original bit = 32, check bit = 6. Check bit yang di dapat = 010110 dan check bit yang di ekstrak 010110.

.      Pengertian Bit Parity 
• Bit Parity atau disebut juga bit pemeriksa adalah salah satu metode yang digunakan pada modul I/O dalam mendeteksi kesalahan. Bit paritas bekerja untuk medeteksi kesalahan pada level bit.
Terdapat 2 macam cara penambahan Bit Pariti yaitu : 
• 1.      Pariti Ganjil (Odd Parity) 
• Bit Paritas di set menjadi 1 apabila jumlah angka 1 dalam kesatuan bit tersebut (tidak termasuk bit paritas) adalah genap, sehingga menjadikan jumlah bit dalam kesatuan tersebut (termasuk bit paritas) menjadi ganjil. 
• 2.      Pariti Genap (Even Parity) 
• Bit paritas di set menjadi 1 apabila jumlah angka 1 dalam kesatuan tersebut (tifak termasuk bit paritas) adalah ganjil, sehingga menjadikan jumlah bit dalam kesatuan tersebut (termasuk bit paritas) menjadi genap.

Tidak ada komentar:

Posting Komentar