Deteksi dan Koreksi Error

dokumen-dokumen yang mirip
Deteksi dan Koreksi Error

Deteksi dan Koreksi Error

Deteksi & Koreksi Kesalahan

Kode Sumber dan Kode Kanal

BAB II ARITMATIKA DAN PENGKODEAN

KOREKSI KESALAHAN. Jumlah bit informasi = 2 k -k-1, dimana k adalah jumlah bit ceknya. a. KODE HAMMING

BAB II DASAR TEORI. 7. Menuliskan kode karakter dimulai dari level paling atas sampai level paling bawah.

ERROR DETECTION. Parity Check (Vertical Redudancy Check) Longitudinal Redudancy Check Cyclic Redudancy Check Checksum. Budhi Irawan, S.Si, M.

RANGKUMAN TEKNIK KOMUNIKASI DATA DIGITAL

BAB V b SISTEM PENGOLAHAN DATA KOMPUTER (Representasi Data) "Pengantar Teknologi Informasi" 1

PEDOMAN PENGGUNAAN SIMULATOR PENYANDIAN DAN PENGAWASANDIAN SISTEM KOMUNIKASI BERBASIS PERANGKAT LUNAK VISUAL C#

Block Coding KOMUNIKASI DATA OLEH : PUTU RUSDI ARIAWAN ( )

1 PENDAHULUAN 1.1 Latar Belakang

TTG3B3 - Sistem Komunikasi 2 Linear Block Code

Sistem Bilangan. Desimal Biner Oktal Heksadesimal

2.1 Desimal. Contoh: Bilangan 357.

SISTEM BILANGAN, OPERASI ARITMATIKA DAN PENGKODEAN

REPRESENTASI DATA. Pengantar Komputer Teknik Sipil dan Perencanaan Universitas Gunadarma

Makalah Teori Persandian

BAB IV HASIL PENGUJIAN DAN ANALISIS

Sandi Blok. Risanuri Hidayat Jurusan Teknik Elektro dan Teknologi Informasi FT UGM

Dr. novrina

TEKNIK DIGITAL KODE BILANGAN

TTG3B3 - Sistem Komunikasi 2 Convolutional Coding

Representasi Data. M. Subchan M

METODE HAMMING PENDAHULUAN. By Galih Pranowo ing

DCH1B3 Konfigurasi Perangkat Keras Komputer

BAB II LANDASAN TEORI

Sistem Bilangan pada Bidang Ilmu Komputer (Lanjutan)

Pokok Pokok Bahasan :

BAB II SISTEM BILANGAN DAN KODE BILANGAN

PERANCANGAN APLIKASI DETEKSI BIT CHECK IN ERROR PADA TRANSMISI DATA TEXT DENGAN SINGLE ERROR CORRECTION MENGGUNAKAN ALGORITMA HAMMING CODE

DIKTAT MATA KULIAH KOMUNIKASI DATA BAB V DETEKSI DAN KOREKSI KESALAHAN

DCH1B3 Konfigurasi Perangkat Keras Komputer

PENYANDIAN SUMBER DAN PENYANDIAN KANAL. Risanuri Hidayat

PERANCANGAN SIMULASI KOREKSI KESALAHAN DATA DENGAN METODA FEC PADA KOMPUTER BERBASIS VISUAL BASIC

Materi #13. TKT312 - Otomasi Sistem Produksi T a u f i q u r R a c h m a n

SISTEM SANDI (KODE) Suatu rangkaian pengubah pesan bermakna (misal desimal) menjadi sandi tertentu (misal biner) disebut enkoder (penyandi).

Bilangan Desimal bilangan yang memiliki basis 10. Bilangan tersebut adalah 0, 1, 2, 3, 4, 5, 6, 7, 8, dan 9 Bilangan Biner bilanganyang memilikibasis

TIN310 - Otomasi Sistem Produksi. h t t p : / / t a u f i q u r r a c h m a n. w e b l o g. e s a u n g g u l. a c. i d

Review Kuliah Sebelumnya

BAB I PENDAHULUAN. Penyampaian pesan dapat dilakukan dengan media telephone, handphone,

KONVERSI BILANGAN BINNER, OKTAL, DESIMAL & HEXADESIMAL

PERTEMUAN MINGGU KE-3 REPRESENTASI DATA

Representasi Bilangan dan Operasi Aritmatika

STUDI ALGORITMA ADLER, CRC, FLETCHER DAN IMPLEMENTASI PADA MAC

KOMPETENSI DASAR : MATERI POKOK : Sistem Bilangan URAIAN MATERI 1. Representasi Data

KONVERSI BILANGAN. Bilangan oktal adalah bilangan berbasis 8, yang menggunakan angka 0 sampai 7. Contoh penulisan : 17 8.

Hitung Jumlah Titik Bilangan Biner

OPERASI DALAM SISTEM BILANGAN

Sistem Bilangan dan Pengkodean -2-

Aplikasi Penggambar Pohon Biner Huffman Untuk Data Teks

Penggunaan Logika Even Parity pada Beberapa Error Correction Code Terutama pada Hamming Code

Sistem Digital (410206)

SISTEM BILANGAN DIGITAL

1. BAB I PENDAHULUAN. 1.1 Latar Belakang

Algoritma Perhitungan Langsung pada Cyclic Redundancy Code 32

Representasi Bilangan dan Operasi Aritmatika

KODE LEXICOGRAPHIC UNTUK MEMBANGUN KODE HAMMING (7, 4, 3) DAN PERLUASAN KODE GOLAY BINER (24, 12, 8)

RANGKAIAN ARITMETIKA 2

SATIN Sains dan Teknologi Informasi

[TTG4J3] KODING DAN KOMPRESI. Oleh : Ledya Novamizanti Astri Novianty. Prodi S1 Teknik Telekomunikasi Fakultas Teknik Elektro Universitas Telkom

DASAR KOMPUTER REPRESENTASI DATA

INTEGRITAS DATA. Objektif: Mengetahui maksud ralat dalam komunikasi data Memahami teknik mengenal error dan membetulkan error

C. ALAT DAN BAHAN 1. XOR_2 2. LOGICTOGGLE 3. LOGICPROBE (BIG)

Bab 2 Tinjauan Pustaka

DETEKSI DAN KOREKSI MULTI BIT ERROR DENGAN PARTITION HAMMING CODE

TEORI DASAR DIGITAL OTOMASI SISTEM PRODUKSI 1

Basis Bilangan. Disusun oleh: Tim dosen SLD Diedit ulang oleh: Endro Ariyanto. Prodi S1 Teknik Informatika Fakultas Informatika Universitas Telkom

SISTEM BILANGAN REPRESENTASI DATA

09/01/2018. Prio Handoko, S. Kom., M.T.I.

KONVERSI BILANGAN. B. Konversi Bilangan Desimal ke Biner Contoh =. 2? Tulis sisa hasil bagi dari bawah keatas =

Definisi Bilangan Biner, Desimal, Oktal, Heksadesimal

Pertemuan ke 9 Aritmatika Komputer. Computer Organization Eko Budi Setiawan

Teknik Komunikasi Data Digital

Pertemuan 2. sistem bilangan

Representasi Bilangan dan Operasi Aritmatika

Brigida Arie Minartiningtyas, M.Kom

BAB V RANGKAIAN ARIMATIKA

PERCOBAAN IV Komunikasi Data MODEM

MEMBANGUN KODE HUFFMAN BERDASARKAN REVERSIBLE VARIABLE LENGTH CODE (RVLC) UNTUK PENGKOREKSIAN ERROR. Bangkit Erlangga/

BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN. digital sebagai alat yang penting dalam teknologi saat ini menuntut adanya sistem

BAB 2 TINJAUAN PUSTAKA

ASCII (American Standart Code for Information Intercharge)

Memahami IP Address 17 th of November 2001

II. Sistem Bilangan Outline : 31/10/2008. Anhar, ST. MT. Lab. Jaringan Komputer

Chapter 2 part 2 Getting Connected. Muhammad Al Makky

Disajikan Oleh : Yuhefizar, S.Kom

MODUL 2 SISTEM PENGKODEAN BILANGAN

SISTEM BILANGAN. B. Sistem Bilangan Ada beberapa sistem bilangan yang digunakan dalam sistem digital, diantaranya yaitu

Representasi Bilangan dan Operasi Aritmatika

1. Konsep Sistem Bilangan 2. Konsep Gerbang Logika 3. Penyederhanaan logika 4. Konsep Flip-Flop (Logika Sequensial) 5. Pemicuan Flip-Flop 6.

MAKALAH. Mata Kuliah. Arsitektur dan Organisasi Komputer

MODE TRANSMISI DATA LAPISAN FISIK. Budhi Irawan, S.Si, M.T

2. Dasar dari Komputer, Sistem Bilangan, dan Gerbang logika 2.1. Data Analog Digital

JURNAL IT STMIK HANDAYANI

A. SISTEM DESIMAL DAN BINER

DESAIN ENCODER-DECODER BERBASIS ANGKA SEMBILAN UNTUK TRANSMISI INFORMASI DIGITAL

Bilangan Biner. Bentuk umum dari bilangan biner dan bilangan desimal adalah : Biner Desimal

Transkripsi:

BAB 10 Deteksi dan Koreksi Error Setelah membaca bab ini, diharapkan pembaca memperoleh wawasan tentang: beberapa jenis kesalahan (error); teknik deteksi error; teknik memperbaiki error.

2 Deteksi dan Koreksi Error 10.9 Jarak Hamming Dalam block coding transmisi data dilakukan dengan membagi deretan bit menjadi block yang terdiri dari sejumlah bit (k) yang disebut dengan words serta menambahkan sejumlah bit tambahan (redundancy/r) ke dalam setiap block sehingga panjang dari block yang akan ditransmisikan menjadi: n = k + r disebut dengan codewords. Salah satu konsep penting dalam blok kode untuk transmisi data adalah jarak hamming (hamming distance), yang diartikan sebagai jumlah perbedaan antara dua buah deretan bit (words) yang mempunyai ukuran sama. Jika terdapat 2 buah deretan bit misalnya x dan y maka jarak hamming dapat disimbolkan dengan: d(x,y) Jarak hamming cukup mudah untuk diimplementasikan, yaitu dengan menggunakan operasi XOR pada dua buah words, dan menghitung jumlah bit 1 dari hasil operasi. Contoh : Tentukan jarak hamming dari pasangan words berikut. 1) d (000, 011) akan menghasilkan 2, karena terdapat hasil 011 (dimana jumlah bit 1 berjumlah 2) 2) d (10101, 11110) menghasilkan 3, karena terdapat hasil 01011 (dimana jumlah bit 1 berjumlah 3) Jarak hamming akan menghasilkan bilangan lebih besar dari 0 (nol).

Komunikasi Data 3 10.10 Minimum Hamming Distance Jarak hamming digunakan untuk melakukan proses deteksi dan koreksi error pada data yang ditransmisikan. Jarak minimum hamming distance merupakan jarak hamming terkecil antara semua kemungkinan pasangan words. Tabel 1. Pasangan Word Pada block code pada Table 1, dapat ditentukan minimum hamming distance sebagai berikut: d (000, 011) = 2 d (000, 101) = 2 d (000, 110) = 2 d (011, 101) = 2 d (011, 110) = 2 d (101, 110) = 2 sehingga dapat ditentukan bahwa d MIN = 2 Selanjutnya dapat dilakukan proses yang sama untuk menentukan d MIN dari Tabel 2. Tabel 2 Pasangan Codeword 5 digit

4 Deteksi dan Koreksi Error Hasil dari perhitungan hamming distance diperoleh hasil seperti Gambar 1, sehingga dapat disimpulkan d MIN = 3 karena nilai terkecil dari hamming distance adalah 3. Gambar 1 Hasil Perhitungan Hamming Distance Untuk menjamin deteksi hingga s kesalahan dalam semua kasus, minimum jarak hamming dalam sebuah block code harus d MIN = s + 1. Artinya minimum hamming distance hanya mampu mendeteksi error d MIN 1 pada data yang ditransmisikan. Jika terdapat d MIN = 2, hal ini mengindikasikan bahwa block code menjamin hanya terjadi single-bit error. Sebagai contoh pada Tabel 1, data ke-3 pada codeword 101 ditransmisikan dan satu error terjadi, maka codeword yang diterima tidak sama dengan codeword yang valid di dalam daftar codeword pada Tabel 1. Jika terjadi 2 error, dapat saja codeword yang diterima cocok dengan codeword valid tapi dampaknya adalah error tidak dapat dideteksi. Contoh lain pada Tabel 2, nilai dari d MIN = 3, sehingga block code hanya mampu mendeteksi error sebanya 2 bit. Sebagai contoh: Data 00000 ditransmisikan kemudian terdapat 2 bit error missal 00011 atau 01100, atau 11000, atau 10100 Maka dapat dipastikan data yang diterima merupakan data yang tidak valid sehingga receiver mendeteksi terjadinya error pada data yang dikirim. Tetapi jika data yang diterima terjadi error lebih dari 2 akan mengakibatkan error tidak terdeteksi. Kondisi lain jika terjadi error sebanyak 3 buah, maka dapat mengakibatkan terjadinya error yang tidak terdeteksi, karena data yang error bisa jadi merupakan codeword yang lain.

Komunikasi Data 5 Hubungan antara minimum hamming distance dengan deteksi error dapat digambarkan seperti sebuah geometri pada Gambar 2. Diasumsikan terdapat data codeword yang valid sebagai titik pusat dengan jari-jari s. Terdapat error dari mulai pusat lingkaran sampai batas jari-jari. Sehingga semua codeword yang valid harus berada di luar lingkaran. Gambar 2 Hubungan Minimum Hamming Distance dan Deteksi Error

6 Deteksi dan Koreksi Error 10.11 Linear Block Code Linear block code didefinisikan sebagai operasi XOR pada dua buah codeword yang valid akan menghasilkan codeword lain yang valid juga. Penggunaan liner block code dalam upaya untuk memudahkan dalam deteksi dan koreksi error. Sebagai contoh Tabel 1, apakah termasuk linear block code? Untuk menjawab pertanyaan ini dapat dilakukan proses operasi XOR pada masingmasing codeword. Contoh: Codeword 1 dan 2 000 + 011 = 011 hasilnya codeword 2 Codeword 2 dan 3 011 + 101 = 110 hasilnya codeword 4 Codeword 3 dan 4 101 + 110 = 011 hasilnya codeword 2 Dengan hasil yang ditampilkan dapat dikatan bahwa codeword pada Tabel 1 merupakan linear block code.

Komunikasi Data 7 10.12 Metode Checksum Konsep dari metode Checksum tidaklah rumit. Pola deteksi error menggunakan checksum juga menggunakan bit tambahan (redundancy). Contoh penggunaan checksum adalah sebagai berikut: Contoh 1) Terdapat 5 buah bilangan yang terdiri dari 4 bit yang akan ditransmisikan. Pada saat 5 buah bilangan dikirim, ditambahkan 1 buah bilangan sebagai hasil penjumlahan (sum) dari kelima bilangan yang dikirim. Bilangan tersebut adalah: 7, 11, 12, 0, 6 dan tambahan satu bilangan 36, sehingga data yang dikirimkan adalah 7, 11, 12, 0, 6, 36. Ketika data sampai di receiver, kelima buah bilangan tersebut diterima dan dijumlahkan, jika hasil penjumlahan sama dengan 36 maka diasumsikan data valid. Kelima data tersebut akan diterima dan hasil penjumlahan (36) akan dibuang. Contoh 2) Pada kasus di contoh 1) kita juga dapat mengirimkan hasil penjumlahan berupa bilangan negative (komplemen) yang disebut dengan checksum. Sehingga deretan data yang dikirim adalah 7, 11, 12, 0, 6, -36. Selanjutnya ketika data sampai pada sisi receiver semua data akan dijumlahkan termasuk checksum, jika diperoleh nilai penjumlahan sama dengan 0 (nol) maka diasumsikan tidak terjadi error. Metode Checksum menggunakan konsep redundancy untuk mendeteksi error.

8 Deteksi dan Koreksi Error Pada dua contoh kasus yang telah dibahas sebelumnya terdapat kekurangan dimana semua data yang dikirim terdiri dari 4 digit, artinya maksimal hanya nilai 15 (1111 biner = 15 desimal) kecuali untuk hasil checksum. Sehingga diperlukan sebuah metode jika terdapat data yang nantinya akan dikirim lebih dari 15, yaitu menggunakan arimatika komplemen satu. Pada aritmatika komplemen satu caranya adalah dengan merepresentasikan bilangan antara 0 sampai 2 n 1 dengan menggunakan n bit. Jika terdapat bilangan yang lebih dari n bit, maka bit yang lebih pada sisi kiri akan ditambahkan pada sisi kanan istilah ini dikenal dengan nama wrapping. Contoh: Bagaimana kita dapat merepresentasikan bilangan 21 dalam aritmatika komplemen satu dengan hanya menggunakan 4 bit? Jawab: Bilangan decimal 21 memilki biner 10101 (memiliki jumlah bit 5), sehingga bit 1 pada sisi kiri akan dijumlahkan ke 4 bit di sebelah kanannya, menjadi: 10101 1 0101 1 ------ + 0110 decimal 6 Sehingga dapat dikatakan nilai dari 21 jika digunakan operasi aritmatika komplemen satu hasilnya adalah 6. Pada aritmatika komplemen satu bilangan negatif dapat direpresentasikan dengan mengubah bit (bit 0 diubah menjadi 1, atau bit 1 diubah menjadi bit 0), dengan kata lain memiliki hasil yang sama dengan mengurangkan sebuah bilangan dengan 2 n 1.

Komunikasi Data 9 Contoh: Bagaimana kita merepresentasikan bilangan -6 menggunakan aritmatika komplemen satu menggunakan 4-bit? Jawab: Cara 1) Bilangan positif 6 adalah 0110, dengan melakukan pengubahan bit maka menjadi 1001, jika kita menggunakan hasil 1001 sebagai bilangan positif maka akan menghasilkan decimal 9, dengan kata lain komplemen dari bilangan 6 adalah 9. Cara 2) Cara lain adalah dengan mengurangkan bilangan 6 dengan 2 n 1 yaitu 15 6 = 9. Bagaimanakah menggunakan aritmatika komplemen satu untuk menyelesaikan metode checksum pada transmisi data 7, 11, 12, 0 dan 6 seperti dapat dilihat pada Gambar 3. Gambar 3 Proses Aritmatika Komplemen Satu

10 Deteksi dan Koreksi Error Pada Gambar 3 dapat dilihat bahwa hasil penjumlahan dari 6 bilangan adalah 36 (pada dasarnya data yang dikirim adalah 5 bilangan, bilangan ke-6 yaitu 0 merupakan inisialisasi untuk ditempati dengan hasil checksum pada sisi pengirim). Hasil penjumlahan (dalam hal ini adalah 36) selanjutnya dilakukan operasi aritmatika komplemen 1 sehingga menghasilkan 6 (sebagai wrapped checksum). Untuk memperoleh checksum maka hasil aritmatika komplemen 1 yaitu 6 dikurangkan dengan 15 sehingga 15 6 = 9. Selanjutnya data yang dikirim sebagai paket data adalah 7, 11, 12, 0, 6, 9 sehingga data yang dikirim berjumlah 6 bilangan termasuk bilangan 9 sebagai checksum yang nantinya digunakan untuk melakukan deteksi error. Pada sisi penerima seluruh data akan diterima dan dijumlahkan termasuk checksum sehingga berjumlah 45, karena 45 menggunakan lebih dari 4 bit yaitu 6 bit maka dilakukan proses wrapping sehingga diperoleh hasil 15 (sebagai wrapped sum) selanjutnya 15 dikurangkan dengan 2 n 1 menjadi 15 15 hasilnya adalah 0 (nol) yang mengindikasikan tidak terjadi error. 10.13 Metode Internet Checksum Secara tradisional internet menggunakan 16-bit checksum. Metode ini menggunakan algoritma sebagai berikut: Pada sisi sender/pengirim. -------------------------------- 1. Data yang akan dikirim dipecah ke dalam 16 bit 2. Nilai dari checksum diberi nilai 0 (nol) sebagai initial checksum 3. Semua bit termasuk initial checksum dijumlahkan menggunakan penjumlahan komplemen satu. 4. Selanjutnya proses penjumlahan (sum) selesai dan untuk menjadi checksum dikurangkan dengan 15. 5. Checksum dikirim beserta data.

Komunikasi Data 11 Pada sisi receiver/penerima -------------------------------- 1. Data yang diterima (termasuk checksum) dipecah ke dalam 16 bit 2. Semua data dijumlahkan menggunakan penambahan komplemen satu 3. Penjulahan selesai dan menghasilkan checksum baru 4. Jika nilai checksum adalah 0 (nol), data akan diterima jika sebaliknya data akan ditolak Contoh pada Gambar 4 merupakan implementasi dari metode internet checksum. Diasumsikan akan ditransmisikan data text yang terdiri dari 8 karakter yaitu FOROUZAN. Karena terdapat keharusan harus diubah menjadi 16 bit, maka dibagi 8 karakter bit masing-masing terdiri belum 2 byte atau 16 bit. Dalam kode ASCII 8 bit karakter F diubah menjadi heksadesimal 0x46, karakter O 0x6F, demikian juga untuk karakter yang lain. Gambar 4. Metode Internet Checksum Jika data yang akan dikirimkan adalah Ox4567 dan OxBA98 hasil dari checksum adalah Ox0000:

12 Deteksi dan Koreksi Error Latihan 1. Tentukan Hamming Distance dari deretan codeword berikut a) d (10000, 00000) b) d (10101, 10000) c) d (1111, 1111) d) d (000, 000) 2. Pengirim ingin mentransmisikan 4 item data yaitu Ox3456, OxABCC, Ox02BC, OxEEEE. Jawab beberapa pertanyaan berikut menggunakan metode internet checksum. a) Tentukan checksum pada sisi pengirim b) Tentukan checksum pada sisi receiver jika tidak ditemukan error c) Tentukan checksum pada sisi receiver jika data ke-2 yaitu OxABCC berubah menjadi OxABCE d) Tentukan checksum pada sisi receicer jika data ke-2 yaitu OxABCC berubah menjadi OxABCE dan data ke-2 dari Ox02BA berubah menjadi Ox02BC menjadi Ox02BA. Sumber Rujukan Forouzan, A., Behrouz. 2007. Data Communication and Networking 4 th Edition. Boston: Mc Graw Hill.