Diberdayakan oleh Blogger.

Selasa, 17 Mei 2016

Tag:

modul input output dan metode hamming

MAKALAH ORGANISASI dan ARSITEKTUR KOMPUTER
MODUL INPUT / OUTPUT
dan KODE HAMMING
Oleh
Rayinda Rizki Jati Nugroho
1510520034
Made Nugraha Dwitama
1510530037
M Girindra A P
1510530040
Eka Prayudi
1510530041
2
KATA PENGANTAR
Puji syukur kami panjatkan kepada Tuhan YME, dimana atas rahmat dan karunianya, kami dapat menyelesaikan Makalah Organisasi dan Arsitektur Komputer tentang Modul Input / Output dan Kode Hamming.
Makalah ini telah kami susun dan kami buat sedimikian rupa dengan mendapatkan bantuan dari semua pihak dimana memperlancar dalam pembuatan makalah ini. Karena itu kami mengucapkan banyak – banyak terimakasih kepada semua pihak yang memungkinkan kami untuk menyelesaikan makalah ini.
Kami menyadari bahwa makalah ini masih banyak kekurangan baik dari segi susunan kalimat, tutur kata bahasa, ataupun struktur pembuatan makalah. Oleh karena itu dengan tangan terbuka segala kritik dan saran yang bersifat membangun agar kedepannya kami dapat membuat makalah yang jauh lebih baik dari makalah sebelum – sebelumnya.
Akhir kata kami sangat berharap agar makalah Organisasi dan Arsitektur Komputer tentang Modul Input / Output dan Kode Hamming yang kami buat ini dapat bermanfaat bagi pembaca dan semua pihak.
Mataram, 17 Mei 2016
Penyusun ssssss
3
DAFTAR ISI
KATA PENGANTAR ............................................................................................................... 2
DAFTAR ISI .............................................................................................................................. 3
BAB I ......................................................................................................................................... 4
PENDAHULUAN ..................................................................................................................... 4
Latar Belakang ....................................................................................................................... 4
Rumusan Masalah .................................................................................................................. 4
Tujuan .................................................................................................................................... 4
BAB II ........................................................................................................................................ 5
PEMBAHASAN ........................................................................................................................ 5
2.1 Sistem Masukan dan Keluaran Komputer ................................................................... 5
2.2 Perangkat Eksternal ..................................................................................................... 5
2.3 Modul Input / Output................................................................................................... 6
2.4 Input / Output Terprogram .......................................................................................... 9
2.5 Interupsi Input / Output ............................................................................................. 10
2.6 Direct Memory Access .............................................................................................. 12
2.7 Canel dan Prosesor dari Input / Output ..................................................................... 13
2.8 Kode Hamming ......................................................................................................... 14
2.9 Konsep Dasar Kode Hamming .................................................................................. 15
2.10 Penerapan Kode Hamming .................................................................................... 16
BAB III .................................................................................................................................... 20
PENUTUP................................................................................................................................ 20
DAFTAR PUSTAKA .............................................................................................................. 21
4
BAB I
PENDAHULUAN
Latar Belakang
Modul input / output merupakan komponen inti dari sebuah struktur sistem komputer, dimana input / output memungkinkan untuk melakukan perpindahan data pada sebuah komputer, baik itu mengeluarkan data berupa hasil proses atau output, maupun memasukan data kedalam komputer berupa informasi atau input. Kode Hamming adalah sepertangkat koreksi kesalahan kode yang dapat digunakan untuk mendeteksi dan memperbaiki kesalahan bit yan dapat terjadi ketika data komputer dipindahkan atau disimpan.
Rumusan Masalah
Adapun beberapa rumusan masalah yang kami temui saat pembuatan Makalah ini beberapa diantaranya :
1. Bagaimana modul input dan output pada sebuah arsitektur dan struktur komputer ?
2. Apa itu kode Hamming ?
3. Bagaimana cara kerja kode Hamming ?
Tujuan
Adapun tujuan yang kami harapkan tercapai dengan pembuatan Makalah ini diantaranya :
1. Pembaca dapat mengerti bagaimana struktur modul input dan output pada sebuah komputer
2. Pembaca dapat mengetahui apa itu kode Hamming
3. Pembaca dapat mengerti cara kerja dari kode Hamming.
5
BAB II
PEMBAHASAN
2.1 Sistem Masukan dan Keluaran Komputer
Bagaimana modul I/O dapat menjalankan tugasnya, yaitu menjembatani CPU dan memori dengan dunia luar merupakan hal yang terpenting untuk kita ketahui. Inti mempelajari sistem I/O suatu komputer adalah mengetahui fungsi dan struktur modul I/O. Perhatikan gambar 6.1 yang menyajikan model generik modul I/O.
2.2 Perangkat Eksternal
Mesin komputer akan memiliki nilai apabila bisa berinteraksi dengan dunia luar. Lebih dari itu, komputer tidak akan berfungsi apabila tidak dapat berinteraksi dengan dunia luar. Sebagai contoh bagaimana bisa menginstruksikan CPU untuk melakukan suatu operasi apabila tidak ada keyboard. Bagaimana bisa melihat hasil kerja sistem komputer bila tidak ada monitor. Keyboard dan monitor tergolong dalam perangkat eksternal komputer.
Perangkat eksternal atau peripheral tersambung dalam sistem CPU melalui perangkat pengendalinya, yaitu modul I/O. Secara umum perangkat eksternal dibagi menjadi 3 kategori yaitu :
6
 Human Readable, perangkat yang berhubungan dengan manusia sebagai pengguna komputer. contohnya yaitu monitor, keyboard, mouse, printer, joystick, disk drive, flash drive, dll
 Machine Readable, perangkat yang berhubungan dengan peralatan. Biasanya berupa modul sensor dan tranduser untuk memonitor dan kontrol suatu peralatan atau sistem.
 Communication, perangkat yang berhubungan dengan komunikasi jarak jauh. Contohnya yaitu NIC dan Modem.
Pembagian perangkat eksternal juga bisa berdasarkan arah datanya, yaitu perangkat output, perangkat input, dan kombinasi input – output. Contoh dari perangkat output yaitu monitor, proyektor, dan printer. Perangkat input contohnya yaitu keyboard, mouse, joystick, scanner, mark reader, bar code reader, scanner, dan microphone.
2.3 Modul Input / Output
 Fungsi Modul Input / Output
Modul input / output merupakan suatu komponen dalam sistem komputer yang bertanggung jawab atas kontrol sebuah perangkat luar atau lebih dan bertanggung jawab pula dalam pertukaran data antara perangkat luar tersebut dengan memori utama ataupun dengan register – register CPU. Untuk mewujudkan hal ini, diperlukan antarmuka internal dengan komputer (CPU dan memori utama) dan antarmuka dengan perangkat eksternal untuk menjalankan fungsi – fungsi pengontrolan. Fungsi dalam menjalankan tugas bagi modul I/O dapat dibagi menjadi beberapa kategori, diantaranya :
7
 Kontrol dan pewaktuan
 Komunikasi CPU
 Komunikasi perangkat eksternal
 Pembufferan data
 Deteksi kesalahan
Fungsi kontrol dan pewaktuan (control dan timing) adalah hal yang penting untuk mensinkronkan kerja masing – masing komponen penyusun komputer. dalam satu waktu, CPU berkomunikasi dengan satu atau lebih perangkat dengan pola tidak menentu da kecepatan transfer komunikasi data yang beragam, baik dengan perangkat internal seperti register – register, memori utama, memori sekunder, dan perangkat periferal. Proses tersebut bisa berjalan apabila ada fungsi kontrol dan pewaktuan yang mengatur sistem secara keseluruhan. Contoh kontrol pemindahan data dari periferal ke CPU melalui sebuah modul I/O dapat meliputi langkah – langkah sebagai berikut :
 Permintaan dan pemeriksaan status perangkat dari CPU ke modul I/O
 Modul I/O memberi jawaban atas permintaan CPU
 Apabila perangkat eksternal telah siap untuk transfer data, maka CPU akan mengirimkan perintah ke modul I/O
 Modul I/O akan menerima paket data dengan panjang tertentu dari periferal
 Selanjutnya data dikirim ke CPU setelah diadakan sinkronasi panjang data dan kecepatan transfer oleh modul I/O sehingga paket – paket data dapat diterima CPU dengan baik.
Transfer data tidak akan terlepas dari penggunaan sistem bus, maka interaksi CPU dan modul I/O akan melibatkan kontrol dan pewaktuan sebuah arbitrasi bus atau lebih. Adapun fungsi komunikasi antara CPU dan modul I/O meliputi proses – proses berikut :
 Command Decoding, yaitu modul I/O menerima perintah – perintah dari CPU yang dirikimkan sebagai sinyal bagi bus kontrol contohnya sebuah modul I/O untuk disk dapat menerima perintah, contohnya yaitu Read Sector, Scan record ID, dan format disk.
 Data, pertukaran data antara CPU dan modul I/O melalui bus data
8
 Status Reporting, yaitu pelaporan kondisi status modul I/O maupun perangkat periferal, umumnya berupa status kondisi Busy, atau Ready. Juga macam – macam status kondisi kesalahan (error)
 Address Recognition, bahwa peralatan atau komponen penyusun komputer dapat dihubungi atau dipanggil maka harus memiliki alamat yang unik, begitu pula pada perangkat periferal, sehingga setiap modul I/O harus mengetahui alamat periferal yang dikontrolnya.
Pada sisi modul I/O ke perangkat periferal juga terdapat komunikasi yang meliputi komunikasi data, kontrol, maupun status.
Fungsi selanjutnya yaitu buffering . tujuan utama buffering adalah mendapatkan penyesuaian data sehubungan perbedaan lanju transfer data dari perangkat periferal dengan kecepatan pengolaan pada CPU. Umumnya laju transfer data dari perangkat periferal lebih lambat dari kecepatan CPU maupun media penyimpanan.
Fungsi terakhir yaitu deteksi kesalahan. Apabila pada perangkat periferal terdapat masalah sehingga proses tidak dapat dijalankan, maka modul I/O akan melaporkan kesalahan tersebut. Contoh informasi kesalahan pada periferal printer seperti kertas tergulung, tinta habis, kertas habis, dan alin – lain. Teknik yang umum untuk deteksi kesalahan adalah penggunaan bit paritas.
9
2.4 Input / Output Terprogram
Pada I/O terprogram, data saling dipertukarkan antara CPU dan modul I/O. CPU mengeksekusi program yang memberikan operasi I/O kepada CPU secara langsung, seperti pemindahan data, pengiriman perintah baca maupun tulis, dan monitoring perangkat.
Kelemahan teknik ini adalah CPU akan menunggu sampai operasi I/O selesai dilakukan modul I/O sehingga akan membuang waktu, apalagi CPU lebih cepat proses operasinya. Dalam teknik ini, modul I/O tidak dapat melakukan interupsi kepada CPU terhadap proses – proses yang diinteruksikan padanya. Seluruh proses merupakan tanggung jawab CPU sampai operasi lengkap dilaksanakan. Untuk melaksanakan perintah – perintah I/O, CPU akan mengeluarkan sebuah alamat bagi modul I/O dan perangkat peripheralnya sehingga terspesifikasi secara khusus dan sebuah perintah I/O yang akan dilakukan. 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.
10
71 Dalam teknik I/O terprogram, terdapat dua macam inplementasi perintah I/O yang tertuang dalam instruksi I/O, yaitu: memory-mapped I/O dan isolated I/O. Dalam memory-mapped I/O, terdapat ruang tunggal untuk lokasi memori dan perangkat I/O. CPU memperlakukan register status dan register data modul I/O sebagai lokasi memori dan menggunakan instruksi mesin yang sama untuk mengakses baik memori maupun perangkat I/O. Konskuensinya adalah diperlukan saluran tunggal untuk pembacaan dan saluran tunggal untuk penulisan. Keuntungan memory-mapped I/O adalah efisien dalam pemrograman, namun memakan banyak ruang memori alamat. Dalam teknik isolated I/O, dilakukan pemisahan ruang pengalamatan bagi memori dan ruang pengalamatan bagi I/O. Dengan teknik ini diperlukan bus yang dilengkapi dengan saluran pembacaan dan penulisan memori ditambah saluran perintah output. Keuntungan isolated I/O adalah sedikitnya instruksi I/O.
2.5 Interupsi Input / Output
Teknik interrupt – driven I/O memungkinkan proses tidak membuang – buang waktu. Prosesnya adalah CPU mengeluarkan perintah I/O pada modul I/O, bersamaan perintah I/O dijalankan 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. Dalam teknik ini kendali perintah masih menjadi tanggung jawab CPU, baik pengambilan perintah dari memori maupun pelaksanaan isi perintah tersebut. Terdapat selangkah kemajuan dari teknik sebelumnya, yaitu CPU melakukan multitasking beberapa perintah sekaligus sehingga tidak ada waktu tunggu bagi CPU. Cara kerja teknik interupsi di sisi modul I/O adalah modul I/O menerima perintah, misal read. Kemudian modul I/O melaksanakan perintah pembacaan dari peripheral dan meletakkan paket data ke register data modul I/O, selanjutnya modul mengeluarkan sinyal interupsi ke CPU melalui saluran kontrol. Kemudian modul menunggu datanya diminta CPU. Saat permintaan terjadi, modul meletakkan data pada bus data dan modul siap menerima perintah selanjutnya. Pengolahan interupsi saat perangkat I/O telah menyelesaikan sebuah operasi I/O adalah sebagai berikut :
 Perangkat I/O akan mengirimkan sinyal interupsi ke CPU.
11
 CPU menyelesaikan operasi yang sedang dijalankannya kemudian merespon interupsi.
 CPU memeriksa interupsi tersebut, kalau valid maka CPU akan mengirimkan sinyal acknowledgment ke perangkat I/O untuk menghentikan interupsinya. 72 4. CPU mempersiapkan pengontrolan transfer ke routine interupsi. Hal yang dilakukan adalah menyimpan informasi yang diperlukan untuk melanjutkan operasi yang tadi dijalankan sebelum adanya interupsi. Informasi yang diperlukan berupa:
o Status prosesor, berisi register yang dipanggil PSW (program status word).
o Lokasi intruksi berikutnya yang akan dieksekusi. Informasi tersebut kemudian disimpan dalam stack pengontrol sistem.
o Kemudian CPU akan menyimpan PC (program counter) eksekusi sebelum interupsi ke stack pengontrol bersama informasi PSW. Selanjutnya mempersiapkan PC untuk penanganan interupsi.
o Selanjutnya CPU memproses interupsi sempai selesai.
o Apabila pengolahan interupsi selasai, CPU akan memanggil kembali informasi yang telah disimpan pada stack pengontrol untuk meneruskan operasi sebelum interupsi. Terdapat bermacam teknik yang digunakan CPU dalam menangani program interupsi ini, diantaranya :
 Multiple Interrupt Lines.
 Software poll.
 Daisy Chain.
 Arbitrasi bus.
Teknik yang paling sederhana adalah menggunakan saluran interupsi berjumlah banyak (Multiple Interrupt Lines) antara CPU dan modul – modul I/O. Namun tidak praktis untuk menggunakan sejumlah saluran bus atau pin CPU ke seluruh saluran interupsi modul – modul I/O. Alternatif lainnya adalah menggunakan software poll. Prosesnya, apabila CPU mengetahui adanya sebuah interupsi, maka CPU akan menuju ke routine layanan interupsi yang tugasnya melakukan poll seluruh modul I/O untuk menentukan modul yang melakukan interupsi. Kerugian software poll adalah memerlukan waktu yang lama karena harus mengidentifikasi
12
seluruh modul untuk mengetahui modul I/O yang melakukan interupsi. Teknik yang lebih efisien adalah daisy chain, yang menggunakan hardware poll. Seluruh modul I/O tersambung dalam saluran interupsi CPU secara melingkar (chain). Apabila ada permintaan interupsi, maka CPU akan menjalankan sinyal acknowledge yang berjalan pada saluran interupsi sampai menjumpai modul I/O yang mengirimkan interupsi.
Teknik berikutnya adalah arbitrasi bus. Dalam metode ini, pertama – tama modul I/O memperoleh kontrol bus sebelum modul ini menggunakan saluran permintaan interupsi. Dengan demikian hanya akan terdapat sebuah modul I/O yang dapat melakukan interupsi.
2.6 Direct Memory Access
Teknik yang dijelaskan sebelumnya yaitu I/O terprogram dan Interrupt-Driven I/O memiliki kelemahan, yaitu proses yang terjadi pada modul I/O masih melibatkan CPU secara langsung. Hal ini berimplikasi pada :
o Kelajuan transfer I/O yang tergantung pada kecepatan operasi CPU.
o Kerja CPU terganggu karena adanya interupsi secara langsung.
Bertolak dari kelemahan di atas, apalagi untuk menangani transfer data bervolume besar dikembangkan teknik yang lebih baik, dikenal dengan Direct Memory Access (DMA). Prinsip kerja DMA adalah CPU akan mendelegasikan kerja I/O kepada DMA, CPU hanya akan terlibat pada awal proses untuk memberikan instruksi lengkap pada DMA dan akhir proses saja. Dengan demikian CPU dapat menjalankan proses lainnya tanpa banyak terganggu dengan interupsi. Blok diagram modul DMA terlihat pada ilustrasi berikut :
13
Dalam melaksanakan transfer data secara mandiri, DMA memerlukan pengambilalihan kontrol bus dari CPU. Untuk itu DMA akan menggunakan bus bila CPU tidak menggunakannya atau DMA memaksa CPU untuk menghentikan sementara penggunaan bus. Teknik terakhir lebih umum digunakan, sering disebut cycle-stealing, karena modul DMA mengambil alih siklus bus. Penghentian sementara penggunaan bus bukanlah bentuk interupsi, melainkan hanyalah penghentian proses sesaat yang berimplikasi hanya pada kelambatan eksekusi CPU saja. Terdapat tiga buah konfigurasi modul DMA seperti yang terlihat pada ilustrasi berikut :
2.7 Canel dan Prosesor dari Input / Output
Sistem komputer mengalami peningkatan kompleksitas dan kecanggihan komponen-komponennya, yang sangat tampak pada fungsi-fungsi I/O sebagai berikut :
 Pemroses mengendalikan perangkat I/O secara langsung.
Masih digunakan sampai saat ini untuk perangkat sederhana yang dikendalikan mikroprosessor sehingga menjadi perangkat berintelijen (inteligent device).
 Pemroses dilengkapi pengendali I/O (I/O controller).
14
Pemroses menggunakan I/O terpogram tanpa interupsi, sehingga tak perlu memperhatikan rincian-rincian spesifik antarmuka perangkat.
 Perangkat dilengkapi fasilitas interupsi.
Pemroses tidak perlu menghabiskan waktu menunggu selesainya operasi I/O, sehingga meningkatkan efisiensi pemroses.
 I/O controller mengendalikan memori secara langsung lewat DMA. Pengendali dapat memindahkan blok data ke/dari memori tanpa melibatkan pemroses kecuali diawal dan akhir transfer.
 Pengendali I/O menjadi pemroses terpisah. Pemroses pusat mengendalikan.memerintahkan pemroses khusus I/O untuk mengeksekusi program I/O di memori utama. Pemroses I/O mengambil dan mengeksekusi intruksi-intruksi ini tanpa intervensi pemroses pusat. Dimungkinkan pemroses pusat menspesifikasikan barisan aktivitas I/O dan hanya diinterupsi ketika seluruh barisan intruksi diselesaikan.
 Pengendali I/O mempunyai memori lokal sendiri. Perangkat I/O dapat dikendalikan dengan keterlibatan pemroses pusat yang minimum. Arsitektur ini untuk pengendalian komunikasi dengan terminal-terminal interaktif. Pemroses I/O mengambil alih kebanyakan tugas yang melibatkan pengendalian terminal. Evolusi bertujuan meminimalkan keterlibatan pemroses pusat, sehingga pemroses tidak disibukkan dengan tugas I/O dan dapat meningkatkan kinerja sistem.
2.8 Kode Hamming
Kerusakan data atau kesalahan data yang diterima oleh terminal penerima dalam sistem komunikasi data sering terjadi, hal yang mendasar sebagai penyebab adalah adanya interferensi sinyal luar yang masuk ke dalam jalur komunikasi, koneksi kawat penghubung, terminal, konektor pada layer terendah yang kurang baik. Hal tersebut menyebabkan sinyal gangguan (noise), sebagai akibat gangguan tersebut muncul permasalahan pada data yang diterima oleh penerima berupa data error.
Terlebih pada transmisi data serial dengan kecepatan tinggi dan kualitas jalur transmisi yang rendah kesalahan (error)sangat mungkin terjadi, ukuran banyaknya bit error dalam blok data disebut sebagai bit error rate (BER}.Terdapat toleransi kesalahan bit dalam sistem transmisi data, dan batasan nilai BERdalam satu kelompok data 105 bit.
Dalam penanganan kesalahan (error handling) bit terkirim tahapan utama dalam penerimaan data adalah deteksi kesalahan bit terkirim, selanjutnya dilakukan
15
koreksi terhadap kesalahan (error). Perbaikan data bisa dilakukan oleh penerima atau pengirim melalui permintaan pengiriman ulang data, permintaan ini melalui sinyal NAK dari penerima ke pengirim.
Seperti telah dijelaskan sebelumnya bahwa proses deteksi kesalahan melalui bit yang ditambahkan (redundant bit) ke dalam data, dengan metode pengkodean tersebut dapat ditentukan kesalahan bitnya. Sistem pengkodean yang lain yang dapat digunakan dalam komunikasi data adalah kode Hamming.
2.9 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. Aturan untuk menyatakan bit Hamming adalah melalui pendekatan 2n, nilai n dan n adalah bilangan bulat positif, cara untuk menentukan bit Hamming adalah sebagai berikut:
 Data = 1011 → penyisipan bit Hamming adalah 101x1xx
 Nilai x dapat dipilih 1 atau 0 dan disisipkan pada data
 Menentukan jumlah modulo-2 bit-1 agar data berpariti genap.
Bit ke- 7 6 5 4 3 2 1
Data 1 0 1 x 1 x x
Langkah selanjutnya adalah menentukan bit-Hamming yang harus disisipkan ke dalam bit-bit data, dalam hal ini semua bit yang ditandai dengan hurf x adalah tempat posisi bit Humming yang seharus disisipkan. Dengan demikian data yang semula terdiri dari 4 bit data maka pada akhirnya jumlah bit adalah 7 bit.
Tabel penentuan bit-Hamming Bit Humming Ke Memeriksa Bit Data Keterangan Membuat Pariti Genap
1
posisi 3, 5, dan 7
diberi logika 1
2
posisi 3, 6, dan 7
diberi logika 0
4
posisi 5, 6, dan 7
diberi logika 0
Bit-Hamming disisipkan ke dalam data, sehingga menjadi:
Bit ke- 7 6 5 4 3 2 1
Data 1 0 1 0 1 0 1
Deteksi data error yang diakibatkan data berubah saat transmisi, diasumsikan terjadi perubahan pada bit ke 3 dari nilai logika 1 menjadi logika 0. Sehingga data yang diterima sebgai berikut:
Bit ke- 7 6 5 4 3 2 1
Data 1 0 1 000 1
Pemeriksaan data melalui bit-bit Hamming ditemukan error berikut posisi bitnya, pada contoh terjadi error pada posisi bit ke 3.
16
Tabel penentuan error(modulo-2)
Berdasarkan tabel penentuan error diperoleh nilai biner 011, yang berarti bisa ditentukan kesalahan adalah pada posisi bit ke 3 pada data.
Perbaikan logika bit dapat dilakukan dengan melakukan inverting bit ke dari data, dengan demikian tidak diperlukan lagi pengiriman NAK ke pengirim untuk melakukan pengiriman ulang.
2.10 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. Sedang Error dapat terjadi yang disebabkan oleh berbagai sebab, sebuah bit dalam pesan mungkin ditambah, terhapus atau berubah. Kode koreksi Error banyak diaplikasikan pada CD player, high speed modem, dan cellular phone. Deteksi error lebih sederhana dibanding perbaikan sebuah error. Sebagai contoh pengujian digit sering kali dijumpai secara embedded pada sejumlah credit card dengan tujuan mendeteksi keslahan. Berikut merupakan sebuah contoh bagaimana mendeteksi dan memperbaiki kesalahan pada pesan yang dikirimkan:
Aturan main:
 Data asli yang akan dikirimkan dinyatakan dalam variabel Di dan check bit dengan (Cj ).
 Posisi biner diawali dari bit 1, posisi check bit Cj pada 2n,yaitu 1, 2, 4, 8, ...
 Penentuan check bit dilakukan melalui EXOR untuk semua bit data.
 Untuk penentuan kode humming dari 4 bit data, maka terdapat D1, D2, D3 dan D4 dan untuk check bit 2n didapat C0, C1 dan C2, sebagai berikut:
Cj = (2n)
26
25
24
23
22
21
20
Posisi bit
1
1
1
1
1
0
1
0
1
1
0
0
0
1
1
0
1
0
0
0
1 Bit Humming Ke Memeriksa Bit Data (Modulo-2)Pariti
1
posisi 3, 5, dan 7
ganjil (ada kesalahan) → 1
2
posisi 3, 6, dan 7
ganjil (ada kesalahan) → 1
4
posisi 5, 6, dan 7
genap (benar) → 0
17
Kode
D4
D3
D2
C2
D1
C1
C0
C0= D1 xor D2 xor D4
C1= D1 xor D3 xor D4
C2= D2 xor D3 xor D4
Contoh
Terdapat dua buah data yang akan dikirimkan meliputi:
a. 101
b. 011
Buatlah pesan yang harus dikirim dengan mengikutkan kode Humming!
Jawab:
Oleh karena data terdiri dari 3 bit yaitu D1, D2 dan D3, maka format pesan dengan sisipan kode Hamming sebagai berikut:
a. Penyelesaian untuk data = 101
Kode pesan yang akan dikirim
18
b. Penyelesaian untuk data = 011
Kode pesan yang akan dikirim:
Perbaikan Data Terkirim
Permasalahan 1:
Misal pada penerima untuk data 101 terdapat perubahan, yaitu dari pesan yang benar terkirim adalah 101101ternyata diterima oleh penerima mejadi 111101. Carilah posisi bit ke berapa yang mengalami perubahan menggunakan aturan main kode Hamming!
Solusi:
Berdasarkan data yang diterima maka perubahan terjadi pada posisi bit ke 101, yaitu dari logika 0 mejadi logika 1 sehingga dapat digambarkan sebagai berikut:
Jika posisi bit dinayatakan dengan Bk, maka aturan kode Hamming berlaku:
19
Kombinasi Bk yaitu B0, B1, B2 diperoleh 101 = 5, artinya pada deteksi ternyata terjadi perubahan pada posisi bit ke 5 pada pesan yang diterima. Kesimpulan perbaikan adalah pada posisi bit ke 5 dan nilainya dibalikan (inverting) sebagai berikut:
Permasalahan 2:
Sebuah pesan data yang akan dikirimkan adalah 11 0001 0110 0010, kode yang digunakan adalah kode Hamming. Buatlah blok data yang seharus dikirim!
Solusi:
Berdasarkan aturan 2n, ternyata bit-Hamming harus disisipkan pada posisi bit ke 1, 2, 4, 8, dan 16, maka formulanya adalah:
Penentuan bit kode Hamming untuk pengganti x adalah nilai 1 atau nilai 0, yaitu dilakukan dengan menandai posisi bit 1 pada data dan nilai biner ditambahkan pada masing-masing posisi dengan prinsip modulo-2. Perlu diketahui jika modulo-2 dengan penambahan bit 1 untuk pariti genap hasilnya sama dengan 0 (nol) dan untuk pariti ganjil hasilnya sama dengan 1 (satu).
Dari susunan pesan, logika satu pada data terletak pada bit ke 6, 10, 11, 13, 18 dan 19. Dengan mengikuti aturan pengkodean Humming akan diperoleh pesan sebagai berikut:
20
BAB III
PENUTUP
Demikian makalah Organisasi dan Arsitektur Komputer tentang Modul Input / Output dan Kode Hamming kami buat. Tentunya dalam pembuatan makalah ini masih banyak kesalahan baik cara pengetikan, penyampaian, maupun tata bahasa yang kurang pas karena keterbatasan pengetahuan dan kurangnya referensi yang belum kami peroleh. Sekian penutup dari makalah ini kami buat, atas partisipasinya kami ucapkan banyak – banyak terimakasih.
21
DAFTAR PUSTAKA
http://cecepsudirman.blogspot.co.id/2013/01/modul-input-output.html
http://nugrahahahahaha.blogspot.co.id/
http://image.slidesharecdn.com/inputoutputmodule-140220131642-phpapp02/95/input-output-module-8-638.jpg?cb=1392902232
http://tugasso.blog.com/manajemen-io/

About Unknown

Hi, My Name is Hafeez. I am a webdesigner, blogspot developer and UI designer. I am a certified Themeforest top contributor and popular at JavaScript engineers. We have a team of professinal programmers, developers work together and make unique blogger templates.

0 komentar:

Posting Komentar