Top Banner
Deteksi & Koreksi Kesalahan
45

Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Mar 11, 2019

Download

Documents

NgôDũng
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Deteksi & KoreksiKesalahan

Page 2: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Pendahuluan

• Tujuan dalam komunikasi : data benar dan

utuh

• Masalah : Bit dapat terjadi kerusakan

• Penyebab :

• Korupnya data ketika ditransmisikan

Thermal Noise

Crosstalk (hub elektikal antar kabel)

Atenuasi (lemah)

Distorsi (penundaan/delay)

• Kesalahan dalam pengiriman frame

Ukuran lebih panjang dari frame

Probabilitas frame yang diterima tanpa ada kesalahan

rendah

• Akibatnya : Data yang diterima salah & tidak utuh

Page 3: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Solusi

• Deteksi Kesalahan

• Proses recovery kesalahan

• Pembetulan kesalahan (correct error)

• Pengiriman ulang (retransmision)

• Deteksi kesalahan : Ya dan tidak, tidak perduli letak error

• Koreksi : perlu mengetahui jumlah dan posisi

• Retransmision : receiver mendeteksi kesalahan dan memintapengiriman ulang

Page 4: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

4

Tipe Kesalahan (A)

A. Single-bit errors

Biasanya terjadi pada komunikasi pararel

Hanya 1 bit yang salah/rusak

Page 5: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Tipe Kesalahan (B)

B. Burst errors

Biasanya terjadi pada komunikasi serial

Data korup lebih dari 1

Terjadi ketika durasi noise lebih panjang dari durasi pengiriman1’s bit

Page 6: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Deteksi Kesalahan & Koreksi

• Permasalahan : Deteksi kesalahan pada frame

• Solusi : tambahkan bit ekstra untuk setiap paket

• Tujuan:Mengurangi jumlah redundansi(diulang) bit, overhead biaya

dapat dikurangi

Meningkatkan jumlah dan pola bit salah yang dapat dideteksi

• Metode :Kesalahan Simple parity check

Two-dimensional parity

Checksum

Cyclic Redundancy Check (CRC)

Koreksi Hamming Codes

MFCS(frame

check sequence)

Page 7: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Parity Check

• Metode paling populer dan sederhana dalam mendeteksikesalahan

• Menambahkan parity bit pada data

• Contoh :

1 0 1 1 0 0 1 0 even

0 0 1 1 1 0 1 1 odd

Tak asinkron : odd parity (ganjil)

Asinkron : even parity (genap)

Page 8: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Parity check

• Bit parity merupakan bilangan biner yang ditambahkan untukmeyakinkan bahwa jumlah bit yang dikirimkan mempunyaiangka satu yang selalu genap atau ganjil.

• Terdiri dari :

• even parity bit

• odd parity bit.

Page 9: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Parity Checking:

Page 10: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Even dan Odd Parity

• Even parity bit diset ke 1 jika jumlah angka 1 yang dikirimkanberjumlah ganjil (berarti membuat total angka 1 berjumlahgenap).

• Odd parity bit akan diset ke 1 jika jumlah angka 0 yangdikirimkan berjumlah genap (berarti membuat total angka 1 berjumlah ganjil).

Page 11: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

• Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an.

• Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil peng-XOR an data.

• ODD PARITY (Parity Ganjil), Jika data direkam dengan menggunakanodd parity, maka jumlah 1 bit yang merepresentasikan suatukarakter adalah ganjil. Jika jumlah 1 bitnya sudah ganjil, maka paritybit yang terletak pada track ke-n adalah 0 bit, akan tetapi jika jumlah1 bitnya masih genap maka parity bitnya adalah 1 bit.

• EVEN PARITY ( Parity Genap), Bila kita merekam data denganmenggunakan even parity, maka jumlah 1 bit yangmerepresentasikan suatu karakter adalah genap jika jumlah 1 bitnyasudah genap, maka parity bit yang terletak pada track ke-n adalah 0 bit, akan tetapi jika jumlah 1 bitnya masih ganjil maka parity bitnyaadalah 1 bit.

Page 12: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Pernyataan mana yg

benar ??

Karakter ASCII Pariti Ganjil

K 100 1011 0100 1011

J 100 1010 1100 1010

T 101 0100 0101 0100

Page 13: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Hardware Pembangkit Bit Parity

A BC

DE

F

jika bit 1 pada data berjumlah genap maka keluaran ahirnya pasti "0", jikaganjil maka "1"

Page 14: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Gerbang X-OR

Page 15: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Contoh (data asli: 1010000)

Gerbang Input Output

A 0 0 0

B 0 0 0

C 0 0 0

D 1 0 1

E 0 1 1

F 1 1 0

Jika tidak ada kesalahan kondisi tetap terpenuhi dengan gerbang G mempunyai masukan 0 dan 0 outputnya adalah 0

Page 16: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Contoh dengan 1 kesalahan(data asli: 1010000)

Gerbang input output

A 0 0 0

B 0 0 0

C 0 0 0

D 1 0 1

E 1 1 0

F 1 0 1

G 0 1 1

Page 17: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Contoh kesalahan 2 (data asli: 1010000)

Gerbang Input Output

A 0 0 0

B 1 0 1

C 0 1 1

D 1 1 0

E 1 0 1

F 1 1 0

G 0 0 0

Hasil akhir adalah 0 (indikasi benar) tetapi salah karena isyarat yang diterima 01110100

Page 18: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Contoh Kasus

• Pengirim Ingin mengirimkan Kata “world". Kodekan ke kode

ASCII diperoleh:

1110111 1101111 1110010 1101100 1100100

• Dikirim dengan penambahan even parity:

11101110 11011110 11100100 11011000 11001001

Page 19: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Latihan :

• Johan dan Budi sedang berkomunikasi dengan sistem sms, keduanya saling berkirim pesan dengan metode berkirim teks. Salah satu teks yang dikirim adalah Aku. Perkirakan data yangdikirim dalam bit agar sampai ke tujuan dengan benar. Asumsikan Metode Pendeteksian Error = Parity Check (evenparity bit)

• A = 1000001 k = 1101011 u = 1010111

Page 20: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Jawab :

• Konversi ke kode ASCII

A = 1000001 k = 1101011 u = 1010111

• Dalam terminal Pengirim, Kata "Aku" Dianalisa Perkarakter "A" lalu"k" lalu "u". Dari masing masing huruf itu Masing masingditambahkan dengan parity bit nya ( Asumsikan kita menggunakanEven Parity Bit ) Maka Data Akan berubah menjadi:

• (A = 1000001 Setelah Di XOR kan, Hasilnya "0" Karena kitamenggunakan metode Even Parity Bit maka Parity Bitnya Bernilai"0", maka Kode biner huruf "A" ditambah menjadi A = 10000010)

A = 10000010 k = 11010111 u = 10101111

Page 21: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Two Dimensional Parity (Paritas Blok)

• Pesan dibagi menjadi beberapa blok

• Setiap blok memiliki karakter pemeriksa blok (block check character)

• Berupa bit parity (even atau odd parity)

Page 22: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Contoh• 7 Bit karakter per paket, metode even parity

0 1 1 0 1 0 0

1 0 1 1 0 10

0 0 1 0 1 1 0

1 1 1 0 1 0 1

1 0 0 1 0 1 1

1

0

1

1

0

1 011000 1

BCC= 10001101

BCC = block check character (diakhir)

Dulu : 7 x 5Sekarang : 8 x 6

LRC

LRC = longitudinal Redudancychar

Page 23: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Data yang dikirim

01101001:10110100:00101101:11101010:10010110:10001101

Page 24: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Deteksi 1 bit error

Page 25: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Deteksi 2 bit Error

Page 26: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Deteksi 3 Bit error

Page 27: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Deteksi 4 bit error

• Tidak terdeteksi

Page 28: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Latihan

Diketahui Data Asli :

1011011 : 1010101 : 0101101 : 1101010

Gunakan metode Two dimensional Parity untuk mengetahui data yang akan dikirim. Gunakan even parity

Page 29: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Checksum

• Metode yang digunakan untuk mendeteksi kesalahan padasistem komunikasi

• Analogi :

Terdapat data : 7, 5, 20, 2, 4

Jumlahkan : 7 + 5 + 20 + 2 + 4 = ?

38Berarti untuk checksum adalah -38

Jadi data akan menjadi

7,5,20,2,4,-38

Page 30: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Contoh 1• Contoh : 22

• Konversi ke biner

10110

1 0 1 1 0

1

+

0 1 1 1 = 7 (sum )

1’s Complemen 1 0 0 0 = 8

2ˆn -1 = 2ˆ4 -1= 15

Jadi 15-7 = 8

Page 31: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Contoh 2

• Sisi Pengirim

• Data 5, 7, 8, 1, 17

• Sum : 5+7+8+1+17=38

• Konversi 38 ke Biner = 100110

1 0 0 1 1 0

1 0 +

1 0 0 0 = 8 (wrapped sum)

0 1 1 11’s complement Checksum= 7

Page 32: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Contoh 2 (cont…)

• Sisi penerima

• Data + checksum => 5, 7, 8, 1, 17, 7

• Lakukan sum = 45

• Konversi 45 ke biner = 101101

1 0 1 1 0 1

1 0 +

1 1 1 1 = 15

1’s complement 0 0 0 0 Checksum= 00

0 berarti tidak ada

error

Page 33: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Latihan Checksum

• Diketahui data yang akan dikirim sebagai berikut:

10110011101010110101101011010101

• Cari checksumnya pada sisi sender

• Buktikan checksum benar pada posisi penerima

Page 34: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Kode Hamming

• Diciptakan Richard Hamming di Bell Lab 1950

• Mekanisme pendeteksian kesalahan denganmenambahkan data word (D) dengan suatu kode, biasanya bit cek paritas (C).

• Data yang disimpan memiliki panjang D + C.

• Kesalahan diketahui dengan menganalisa data dan bit paritas tersebut

• Kode Hamming mampu mendeteksi dan mengetahui posisi 1 bit yang salah di penerima

• kekurangan dari metode Hamming Code adalah tidak dapatmendeteksi bila terjadi dua buah kesalahan sekaligus

Page 35: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Penulisan

• Penulisan : Hamming (7,4)

• 4 data bits• 3 parity bits

• Cara menetukan bit parity

(2ˆk)-1 >= m+k

dengan k= n check bit

m = banyaknya word

Page 36: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Even Parity

• 101101_?

• 111000_?

Page 37: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Bila Bit paritas = 4, maka Jumlah bit informasi yg akan dikirim atau diterima adalah = (2^4) – 4 – 1 = 16 – 5 = 11

Sehingga urutan bit nya :

C1 C2 D1 C3 D2 D3 D4 C4 D5 D6 D71 2 3 4 5 6 7 8 9 10 11

Page 38: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Kode Hamming

Page 39: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Kode Hamming

• Bit cek paritas ditempatkan dengan perumusan 2^N dimana

N = 0,1,2, ……, sedangkan bit data adalah sisanya. Kemudian dengan exclusive-OR dijumlahkan:

C1 = D1 D2 D4 D5 D7

C2 = D1 D3 D4 D6 D7

C3 = D2 D3 D4

C4 = D5 D6 D7

• Setiap cek bit (C) beroperasi pada setiap posisi bit data yang nomor posisinya berisi bilangan 1 pada kolomnya

Page 40: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Bit cek paritas

• Ilustrasi keterkaitan (data : 1000)

D1 D2

D3

D4

C1/P1

C3/P3C2/P2

Page 41: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Kode Hamming

• masukkan data : 00111001 kemudian ganti bit data ke 3 dari 0 menjadi 1 sebagai error-nya.

00111101

• Bagaimanakah cara mendapatkan bit data ke 3 sebagai bit yang terdapat error?

Page 42: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Kode Hamming

Jawab :

Masukkan data pada perumusan cek bit paritas :

C1 = 1 0 1 1 0 = 1

C2 = 1 0 1 1 0 = 1

C3 = 0 0 1 = 1

C4 = 1 1 0 = 0

Sekarang bit 3 mengalami kesalahan data menjadi:00111101

C1 = 1 0 1 1 0 = 1

C2 = 1 1 1 1 0 = 0

C3 = 0 1 1 = 0

C4 = 1 1 0 = 0

Page 43: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Kode Hamming

Apabila bit – bit cek dibandingkan antara yang lama dan baru

maka terbentuk syndrom word :

C4 C3 C2 C1

0 1 1 1

0 0 0 1

0 1 1 0 = 6

Sekarang kita lihat posisi bit ke-6 adalah data ke-3.

(EX-OR)

C1 C2 D1 C3 D2 D3 D4 C4 D5 D6 D7

0 0 1 1 1 1 0 1

Data asli yang dikirim adalah = D1 D2 D3 D4

1 1 1 0

Page 44: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Contoh Kasus

• Data 1011

Pengirim Penerima?1010101

Page 45: Deteksi & Koreksi Kesalahan · •Event Parity Bit, nilai parity bit sama dengan hasil peng-XOR an. • Odd Parity Bit, Nilai parity bit merupakan komplement( kebalikan ) dari hasil

Latihan

• Di sisi penerima menerima data berupa 7 bit hamming kodesebagai berikut:

1011011

Dengan asumsi menggunakan even parity, apakah data yang diterimatersebut benar atau salah

Jika salah posisi bit nya berada pada posisi?

Tampilkan data sesungguhnya