• Tidak ada hasil yang ditemukan

SISTEM KOMUNIKASI DIGITAL

N/A
N/A
Protected

Academic year: 2021

Membagikan "SISTEM KOMUNIKASI DIGITAL"

Copied!
60
0
0

Teks penuh

(1)

SISTEM KOMUNIKASI DIGITAL

Berikut ini digambarkan salah satu blok diagram sistem komunikasi sederhana.

Gbr. 1 : Salah satu model sistem komunikasi

• Fungsi sistem komunikasi adalah memancarkan informasi secara andal dari sumber informasi ke pengguna informasi

• Dari blok diagram diatas dapat dilihat bahwa :

o keluaran dari sumber informasi adalah sudah berbentuk

signal-signal digital , yaitu berupa urutan simbol-simbol dari berbagai abjad yang sudah menjadi signal-signal diskrit

• Simbol-simbol ini diproses oleh koder sumber menjadi simbol-simbol

bentuk lain (atau disebut kelompok simbol) agar supaya :

o dapat dibuat menjadi simbol-simbol yang pada saat dipancarkan ke pengguna informasi , banyaknya simbol tersebut adalah menjadi seminimal mungkin

• Keluaran dari koder sumber menjadi masukan bagi koder saluran dimana :

o koder saluran tersebut berfungsi untuk

memperbesar efisiensi

komunikasi

, yaitu dengan jalan :

ƒ mengubah urutan bit keluaran koder sumber menjadi urutan bit simbol yang berbeda dari abjad yang dikirim dari sumber informasi

• Keluaran koder saluran masuk ke modulator , kemudian dipancarkan lewat Kanal Diskrit Tanpa Memori = DMC (Discrete Memoryless Channel) menuju ke demodulator yang menjadi bagian sistem penerima, terus masuk ke dekoder kanal sistem penerima

• Manfaat DMC ini mencakup :

o melakukan

pengurangan terhadap pengaruh distorsi

signal

sewaktu melewati kanal komunikasi gelombang

• detektor kanal yang mendapat masukan dari demodulator , akan beru-paya untuk :

o merekonstruksi urutan keluaran yang berasal dari koder

sum-ber , menjadi

urutan bit yang seasli mungkin

• Dengan menggunakan disain enkoder-dekoder yang tepat, maka akan dapat :

Sumber Informasi Koder Sumber Koder Kanal Modulator Gelombang Kanal Gelombang Demodulator Gelombang Dekoder Kanal Dekoder Sumber Pengguna Informasi

(2)

o

mengoreksi beberapa kesalahan transmisi yang terjadi

di Kanal Diskrit Tak Bermemori

(DMC) tadi, sehingga

dapat memperbaiki keandalan komunikasi

• Dengan memakai keluaran dekoder kanal, maka dekoder sumber akan dapat

membuat

perkiraan urutan bit informasi yang

dipan-carkan

KODE KELOMPOK

(Block Code)

Kode kelompok adalah suatu kode yang dapat mengoreksi kesalahan bit secara mandiri (self error correction) , dimana :

• bentuk kode terdiri atas :

o kode yang menggambarkan suatu kharakter sebanyak k buah bit

o kode yang digunakan sebagai uji paritas sebanyak qbuah bit

• kemungkinan kharakter yang terjadi = m buah = 2 kbuah

• pada kode kelompok banyaknya bit menjadi k + q = nbuah bit

Jika

salah satu kharakter tersebut

adalah :

(

d

1

d

2

d

k

)

d

=

⋅⋅

⋅⋅

⋅⋅

1 atau 0 bernilai s/d d1 k , maka :

• dengan memakai enkoder (alat untuk membuat kode), maka :

o

kode kharakter data yang terdiri atas k bits tersebut diubah

menjadi kharakter baru yang terdiri atas

n

bits

o tambahan bit sebanyak

=

q

=

(

n

k

)

bits, merupakan bit uji paritas

• Kata kodenya ditulis dengan kode (n , k)

• Tujuan penambahan q bits paritas tersebut adalah :

ƒ untuk membuat kode yang terdiri atas n bits tadi menjadi

kode yang dapat

mendeteksi

dan

mengoreksi

ke-salahan bit secara mandiri (

self detection and correcting code)

• Kesalahan bit tersebut dapat terjadi karena signal-signal biner tersebut

melalui media transmisi dalam perjalanannya dari sumber signal ke tujuan

• Data yang keluar dari encoder tersebut , yang disebut dengan kata kode (code word), dinyatakan sebagai berikut :

(

)

(

1 2 k k 1 k 2 n

)

q k 2 k 1 k k 2 1

x

x

x

x

x

x

x

atau

x

x

x

x

x

x

x

⋅⋅

⋅⋅

⋅⋅

⋅⋅

⋅⋅

=

⋅⋅

⋅⋅

⋅⋅

⋅⋅

⋅⋅

=

+ + + + +

Untuk kode sistematis, maka :

k k 3 3 2 2 1 1

d

x

d

x

d

x

d

x

=

=

=

⋅⋅

⋅⋅

⋅⋅

⋅⋅

=

(3)

q k n= + = baru kode setiap bit seluruh Banyaknya

Bit-bit uji paritas untuk kode sistimatis tersebut dibuat memenuhi hubungan

yang sesuai dengan persamaan berikut ini :

=

+ + k 2 1 qk q2 q1 2k 22 21 1k 12 11 n 2 k 1 k

d

d

d

h

h

h

h

h

h

h

h

h

x

x

x

M

L

M

M

M

M

L

L

M

Contoh :

Suatu kode (15,11), mempunyai kode data :

(

0

1

0

1

1

1

0

1

0

1

1

)

=

d

, dengan n = 15 ; q=4 dan k = 11 ;

Misalkan kode uji paritas dinyatakan dengan persamaan matrix sebagai berikut :

⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ + + + + + + 11 2 1 2 1 2 1 2 22 21 1 12 11 15 14 13 12 4 11 3 11 2 11 1 11 2 1 1 0 0 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 0 0 0 1 1 0 1 0 1 1 1 1 0 0 0 1 1 0 1 0 1 1 1 1 d d d d d d h h h h h h h h h x x x x x x x x x x x k qk q q k k n k k M M L M M M M L L M ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ + ⊕ = ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ 0 0 0 0 1 0 0 1 0 0 1 0 0 1 0 1 1 0 1 0 1 1 1 0 0 0 0 0 0 1 0 0 1 1 0 1 0 0 0 0 1 0 1 0 1 0 1 0 1 1 0 1 0 1 1 1 0 1 0 1 0 0 1 1 0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 0 0 0 1 1 0 1 0 1 1 1 1 0 0 0 1 1 0 1 0 1 1 1 1 15 14 13 12 x x x x

Maka kode sistimatis lengkap yang dikirimkan adalah :

(

1 2 11 12 13 14 15

) (

= 0 1 0 1 1 1 0 1 0 1 1 0 0 0 0

)

= x x x x x x x

x LLL

Jika m adalahsalah satu dari 2k buah kode untuk data yang mungkin terjadi, maka salah satu kode data adalah xm1,xm2,...,xmk.

Dengan kata lain salah satu kode data tesebut adalah :

[

m m mk

]

dm

x

x

x

x

=

1

,

2

,

L

,

k qk 3 q3 2 q2 1 q1 n q k k 2k 3 23 2 22 1 21 2 k k 1k 3 13 2 12 1 11 1 k

d

h

d

h

d

h

d

h

x

x

..

...

...

...

...

...

...

...

d

h

d

h

d

h

d

h

x

d

h

d

h

d

h

d

h

x

+

+

+

+

=

=

+

+

+

+

=

+

+

+

+

=

+ + +

(4)

Jika kode tersebut diberi bit uji paritas ( parity checking bit ) yang banyaknya q buah bit , maka keseluruhan bit keluaran dari enkoder yang menggambarkan suatu kharakter, akan menjadi terdiri atas n buah bit, sehingga susunannya menjadi :

[

m m mn

]

m

x

x

x

x

=

1 2

L

Jika digambarkan secara blok diagram :

Operasi enkoder yang dikerjakan dalam suatu enkoder blok biner linier dapat digambarkan sebagai

himpunan

n

buah persamaan dalam bentuk

ma-trix

sebagai berikut :

j k j m j m j m j m x g x g x g c = 1 1 + 2 2 +L + dengan j=1,2,L,n;m=1,2, ⋅⋅ ⋅⋅2k 1 0 dimana gij = atau Contoh :

Kode ( 7,4 ) ; maka mj adalahsalahsatudari 24 kemungkinankode

Data yang mungkin terjadi jika setiap data terdiri atas 4 bit adalah Kode-kode bit paritas yang terkait tergantung dari matrix H.

Matrix H tersebut dapat dilihat pada pembahasan berikut :

]

• Seperti sudah dibahas sebelumnya, kata kode dinyatakan dengan :

(

x

x

x

k

x

k

x

k

x

n

)

x

=

1 2

⋅⋅

⋅⋅

+1 +2

⋅⋅

⋅⋅

⋅⋅

• Kode data dinyatakan dengan

d

=

(

d

m1

d

m2

d

m3

...

d

mk

)

dimana :

mjadalah salah satu dari 2 kbuah jenis kata kode yang mungkin terjadi

• Selanjutnya dapat ditulis :

dG

x

=

dimana : 1 1 1 1 0 1 1 1 1 0 1 1 0 0 1 1 1 1 0 1 0 1 0 1 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 0 0 0 1 0 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0

Enkoder

bit Masukan k bit Keluaran n

(5)

G =

matrix generator kode

dan merupakan

matrix k x n

Matrix generator G dinyatakan dengan persamaan matrix :

[

I P

]

G= k

dengan Ik =matrix identitas dan ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = = qn 2k 1k q3 23 13 q2 22 12 qn 21 11 T h h h h h h h h h h h h H P L L M M M M L L L L L L Contoh :

Suatu kode (7,4) dengan generator matrix : G=

[

Ik P

]

Disini n = 7 ; k = 4 ; q = 3

Dari contoh ini, karena :

• banyaknya bit untuk setiap kode adalah k = 4

• banyak bit untuk paritas adalah q = 3 , maka :

o dapat digambarkan kemungkinan seluruh kode blok yang terjadi adalah :

Jika rumus-rumus yang ada diuraikan lebih lanjut :

[

]

[

] [

]

⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = = = T qk q q k k k k h h h h h h h h h d d d P I d dG c L M L M M L L M L L M M L L L 2 1 2 22 21 1 12 11 2 1 1 0 0 0 1 0 0 0 1 ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = 1 1 0 1 0 0 0 0 1 1 0 1 0 0 1 1 1 0 0 1 0 1 0 1 0 0 0 1 G ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ = 1 0 1 1 1 1 1 0 0 1 1 1 H k I Data Matrix T H P= = =dG x ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ 1 1 1 1 0 1 1 1 1 0 1 1 0 0 1 1 1 1 0 1 0 1 0 1 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 0 0 0 1 0 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ 1 1 0 1 0 0 0 0 1 1 0 1 0 0 1 1 1 0 0 1 0 1 0 1 0 0 0 1 ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = 0 1 1 0 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0

(6)

[

]

[

d d d

[

d d d

]

P

]

h h h h h h h h h d d d c k k qk k k q q k L L L M L M M L L M L L M M L L L 1 2 1 2 2 1 2 22 12 1 21 11 2 1 1 0 0 0 1 0 0 0 1 = ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = Maka

[

d dP

]

[

c cp

]

c= =

Jadi urutan bit uji paritas adalah cp =dP

Jika urutan bit yang diterima adalah kata kode yang tepat , maka :

Jika urutan bit yang diterima tepat , maka rumus diatas dapat ditulis dalam persamaan matrix sebagai berikut :

[

]

⎥ ⎦ ⎤ ⎢ ⎣ ⎡ = + = q p p I P c d c dP 0

hal ini karena

[ ]

q p

p

I

c

c

=

Jika tak terjadi kesalahan bit , maka : dPcp =0

[

]

[

]

P 0P 0 I P c d P c d cH q p p T = = ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎣ ⎡ ⎥ ⎦ ⎤ ⎢ ⎣ ⎡ = =

Syarat urutan bit yang diterima dekoder tidak terjadi kesalahan bit : cHT =0

Didalam hal ini , sesuai dengan perhitungan diatas , yang dimaksudkan dengan HT adalah :

[

q

]

T q T I P H I P H → = ⎦ ⎤ ⎢ ⎣ ⎡ =

Dalam persamaan matrix

⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = = qk q q k k h h h h h h h h h L M L M M M L M M L L 2 1 2 22 12 1 12 11 H paritas uji Matrix Contoh :

Kode (7, 3) dengan matrix uji paritas :

⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = = → ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1 1 1 1 0 1 1 0 0 0 1 1 1 0 0 0 1 0 0 0 1 0 0 1 1 0 0 0 1 0 1 1 1 0 0 0 1 1 0 1 T H p H bit Urutan dihitung yang dekoder di bit Urutan paritas uji diterima yang 0 c dPp =

(7)

Kata kode : c=dG

Bila tanpa kesalahan bit maka : cHT =0

Bila terjadi kesalahan bit yang diterima di dekoder , maka vektor kode yang diterima adalah : e

c

r= ⊕

Jika terjadi kesalahan bit , maka : rce

(

0 0 LL 0

)

Jika tidak terjadi kesalahan bit , maka : r=ce=

(

0 0 LL 0

)

Syndrome =

s

=

rH

T

=

(

c

e

)

H

T

=

cH

T

eH

T

=

0

+

eH

T Syndrome = s=eHT

Jika tanpa kesalahan bit , maka : s=

(

0 0 LL 0

)

Jika ada kesalahan bit , maka : s

(

0 0 LL 0

)

• Anggaplah bahwa terjadi kesalahan pada bit ke-i

[

]

⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ = = 1 0 0 0 1 0 0 0 1 ' 2 1 2 22 21 1 12 11 L L L L L L L L L L L L L L L L L L L L L L L L qk q q k k k h h h h h h h h h I H H

( ) (

)

(

i i qi

)

qk k k qi i i q q T h h h h h h h h h h h h h h h H e s Syndrome = ⋅ ⋅ ⋅ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ ⋅ = = = 1 2 2 1 2 1 2 22 12 1 21 11 1 0 0 0 1 0 0 0 1 0 1 0 0 ' 1 M M M M M M M M M M M M L L

• Persyaratan suatu kode dapat dikoreksi bilamana terjadi 1 kesalahan bit adalah :

o Semua kolom matrix H sudah ditentukan nilainya dengan pasti

o Semua isi kolom ke-1 s.d. ke-k sudah tertentu nilainya dengan pasti

o q kolom berikutnya merupakan matrix identitas Ik

o Agar matrix identitas Ik dapat membuat syndrome yang dapat ditentukan nilainya, maka harus : 2q

(

q−1

)

k

o Misalkan q=3→8−2=6≥k

o Jadi kode blok (7, 4) , yang berarti bahwa : k=4→q=3→memenuhi q(q )k

1 2

o Ketidak samaan (inequity) 2q

(

q−1

)

k yang harus dipenuhi bagi kode berkesalahan tunggal adalah hal yang khusus daripada ketidak samaan Ham-ming dH ≥2t+1→dHmin =2t+1 digit i ke

(

0 0 0 LL 1 LL 0

)

= e adalah ya kesalahann vektor

(8)

• Ketidak samaan Hamming dH ≥2t+1 yang dapat digunakan secara umum untuk

pengoreksian kode yang mengalami kesalahan t buah bit , dapat diterangkan dengan contoh berikut ini :

o Kode blok ( 7, 3 ) berarti n = 7 ; k = 3 ; q = 4 .

o Penerapan ketidak samaan 2q

(

q−1

)

k→24−

(

4−1

)

=13≥k=3

o Dengan demikian kode blok ( 7, 3 ) adalah kode yang dapar mengoreksi kesalahan tunggal

o Contoh kode blok yang tak dapat mengoreksi meskipun kesalahannya tunggal adalah kode bloK ( 6, 4) , yang berati q =2 ; dengan memasukkan ke ketidak samaan q

(

q

)

k

1

2 , dimana 22−

(

2−1

)

=3< =4

k

• Kode dengan kesalahan yang lebih besar dari 1 , misalnya terjadi kesalahan t bit , salah satunya dapat diselesaikan dengan Hamming bound , yang mana salah satunya yang khusus adalah menggunakan rumus ketidak samaan 2q

(

q−1

)

k

• Hamming bound ini menentukan , bahwa :

o Banyaknya pattern bit uji paritas yang mungkin terjadi harus setidak-tidaknya

sama dengan banyaknya cara , dimana kesalahan dapat terjadi sampai dengan t buah kesalahan bit

o Untuk kode ( n, k ) berlaku hubungan :

= − ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ ≥ t i k n t n 0 2

Ini berati bahwa ⎟⎟

⎠ ⎞ ⎜⎜ ⎝ ⎛ + + ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ + ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ + ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ = = − n t n n n q k n L L 2 1 0 2 2

Untuk kode (7, 4) dan banyaknya kesalahan bit adalah t = 3 , maka :

⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ + ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ + ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ + ⎟⎟ ⎠ ⎞ ⎜⎜ ⎝ ⎛ ≥ = = − − 7 3 7 2 7 1 7 0 4 7 8 2 2n k

Penyelesaian persamaan diatas dapat digunakan untuk membuat tabel berikut ini : Tabel kode-kode yang dapat mengoreksi kesalahan

( )

( )

( )

(

15,11

)

0.73 11 15 57 . 0 4 , 7 4 7 5 . 0 3 , 6 3 6 4 . 0 2 , 5 2 5 1 4 Efisiensi Kode max k n ) 1 t ( tunggal kesalahan mengoreksi dapat yang kode -Kode =

(

)

(

)

(

)

(

)

(

25,13

)

0.52 13 25 55 . 0 11 , 20 11 20 53 . 0 8 , 15 8 15 36 . 0 4 , 11 4 11 4 . 0 4 , 10 4 10 Efisiensi Kode max k n ) 2 t ( ganda kesalahan mengoreksi dapat yang kode -Kode =

(9)

• Jarak Hamming : perbedaan banyaknya posisi diantara 2 kata kode apa saja

• Jarak Hamming ini memegang peranan kunci didalam penaksiran kapasitas atau kemampuan kode-kode mengoreksi kesalahan

• Jarak Hamming =dH ≥2t+1→dHmin =2t+1

dimana : dikoreksi dapat dan salah yang bit banyaknya = t

• Kode-kode yang dapat mengoreksi kesalahan tunggal : t=1→dHmin =2

( )

1 +1=3

JARAK HAMMING DAN BOBOT HAMMING

(HAMMING DISTANCE and HAMMING WEIGHT)

Sebagai contoh adalah kode blok ( 7, 4) ; Efisiensi kode = 7 4

=

R

• Dari tabel tersebut dapat dilihat bahwa setip kata kode (setelah dibalik cara penulisannya ) berbeda satu-sama lain , dengan perbedaan paling tidak 3 posisi , yang dapat dilihat pada tabel dibawah ini :

Tabel kode blok khusus

• Jadi jika terjadi kesalahan bit sampai dengan 2 buah , maka kesalahan tersebut tidak akan menyebabkan kodenya menjadi kode yang sama dengan setiap kode lainnya , apapun juga kode lain itu

• Berita dan kata kode (serta berita dan kata kode yang dibalik cara penulisannya) yang mungkin terjadi adalah sebagai tabel berikut ini :

(

)

(

)

(

)

(

24,12

)

0.55 12 24 52 . 0 12 , 23 12 23 33 . 0 5 , 15 5 15 2 . 0 2 , 10 4 10 Efisiensi Kode max k n ) 3 t ( ganda kesalahan mengoreksi dapat yang kode -Kode = ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⇒ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⇒ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ 1 1 1 1 1 1 1 1 1 1 0 1 0 0 1 1 0 1 0 0 1 1 1 0 0 0 1 0 1 0 1 1 0 0 0 1 0 1 0 0 1 1 1 0 0 1 1 0 0 1 0 0 0 1 0 1 0 1 1 1 0 1 0 0 1 1 0 0 0 1 0 1 0 1 ` 0 0 0 1 1 0 1 1 1 0 0 1 1 1 0 1 0 0 1 0 1 1 0 0 0 0 1 0 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 1 1 0 1 1 1 0 ` 0 1 0 1 1 1 0 1 0 1 0 0 1 1 0 0 0 0 1 1 1 0 1 1 0 0 1 0 1 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 0 0 0 1 1 1 1 1 1 1 0 0 1 0 1 1 1 1 0 0 1 0 1 1 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 1 0 0 1 0 1 0 1 1 1 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 1 0 1 0 0 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 0 1 0 1 1 1 0 0 0 1 1 0 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 1 1 1 1 0 1 1 0 0 1 ` 1 1 1 0 1 0 1 0 1 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 0 0 0 1 0 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 menjadi dibalik berita

(10)

• Didalam hal ini penulisan kata kode yang telah dibalik susunannya akan mampu memberi tahu pengguna bahwa kesalahan transmisi telah terjadi , meskipun tidak dapat mengoreksi kesalahan-kesalahan tersebut

• Suatu kode khusus ditampilkan pada tabel berikut ini :

Contoh :

Kode blok(7, 4) ; kode datanya terdiri atas k bit atau 4 bit ; kode paritasnya terdiri atas q bit atau 3 bit

Jenis kode data yang terdiri atas 4 bit adalah 2k = 24 = 16 buah .

Semua jenis kode data yang masing-masing terdiri atas 4 bit dapat digambarkan sebagai berikut : ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ 1 1 1 1 0 1 1 1 1 0 1 1 0 0 1 1 1 1 0 1 0 1 0 1 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 0 0 0 1 0 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0

Misalkan matrik uji paritas adalah :

⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ = 34 33 32 31 24 23 22 21 14 13 12 11 h h h h h h h h h h h h H

(11)

[

]

⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ = ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ = = ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ 4 34 3 33 2 32 1 31 4 24 3 23 2 22 1 21 4 14 3 13 2 12 1 11 34 33 32 31 24 23 22 21 14 13 12 11 4 3 2 1 7 6 5 d h d h d h d h d h d h d h d h d h d h d h d h h h h h h h h h h h h h d d d d dH c c c Jika ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ ⊕ ⊕ ⊕ ⊕ ⊕ ⊕ = ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ → ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎣ ⎡ = 4 2 1 4 3 2 3 2 1 7 6 5 1 0 1 1 1 1 1 0 0 1 1 1 d d d d d d d d d c c c H

Rumus untuk kata kode adalah c=dG=

[

dIkP

]

=

[

dIkHT

]

c = Seluruh kata kode yang mungkin terjadi

( )

x =

W non-zero weight = pembobot bukan nol = banyaknya bit bukan nol dalam 1 kata kode

( )

x min dHmin W = ; 2 1 3 1 jika min min = + = = t H t d

• Untuk kode blok (n, k) ; berarti q= n - k

• Misalkan n = 7 ; k = 4 , berarti q = m = 3; khusus kode ini memenuhi hubungan : 1

2 −

= q

n →23−1=8−1=7

O Tidak semua jenis kode blok memenuhi hubungan itu ; misalnya kode blok (7, 3) ; jika diterapkan rumus diatas , maka n=2q −1=24 −1=16−1=15≠7

• Efisiensi kode = code rate =

n q n q n n k == 1

O Untuk kode blok khusus sebagaimana contoh diatas :

1 2 1 − − = qq n k

O Untuk efisiensi kode ≅1→ ≅1

n k

O Untuk kode blok khusus ≅ → − ≅∞→ ≅∞

− → − − = ≅ q q q q q q n k 2 1 2 0 1 2 1 2 1 1 Berarti q>>1 d c k I P ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ 7 4 4 3 3 4 4 3 4 3 3 4 4 3 3 0 1 1 1 1 1 1 1 0 0 1 0 1 1 1 1 0 0 1 0 1 1 0 1 0 0 0 1 1 0 0 0 1 1 0 1 1 1 0 0 1 0 1 0 1 1 1 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 1 0 1 0 0 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 0 1 0 1 1 1 0 0 0 1 1 0 1 0 0 1 1 0 1 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 0 0 1 1 0 1 0 0 1 1 1 0 0 1 0 1 0 1 0 0 0 1 1 1 1 1 0 1 1 1 1 0 1 1 0 0 1 1 1 1 0 1 0 1 0 1 1 0 0 1 0 0 0 1 1 1 1 0 0 1 1 0 1 0 1 0 0 0 1 0 1 1 0 0 0 1 0 0 1 0 0 0 0 0 0 0

( )

x W weight zero non−

(12)

• Kata kode yang ke-i adalah xi yang terdiri atas :

o mi buah bit berita , dimana i = 1, 2, 3 …… k o ci - kbuah bit koreksi, dimana i = k+1, k+2, ……n.

• Sebagai contoh adalah sebuah kata kode ( 7,4 )

o ini berarti n = 7 dan k = 4 q = banyak-nya bit uji paritas = 3

o Dengan 7 bit per kata kode berarti banyaknya kode yang bisa terjadi adalah = 27 = 128 jenis kata kode yang berbeda satu sama lain

o Namun karena kode untuk data hanya terdiri atas 4 bit saja, maka hanya terdapat 24 = 16 jenis kata kode saja yang digunakan, dari 128 buah jenis kata kode yang mungkin terjadi

o Bentuk kata kode tersebut adalah : x=[m1 m2 m3 m4 c1 c2 c3] T

o Jika H = matrix uji paritas, maka H adalah matrix persegi q x n yang bentuknya sebagai berikut :

o dimana bagian kanan dari matrix tersebut adalah matrix satuan (unit matrix)

q x q

o Dengan pemilihan matrix uji paritas tersebut maka harus dipenuhi :

H x = 0 ( dimana x = kode tertentu )

Dengan demikian :

[

]

⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 1 2 1 2 1 2 1 2 22 21 1 12 11 2 1 2 1 2 1 2 22 21 1 12 11 M M M L L M M M M M M M M M L L L L L L L L M M M M M M M M M L L L q k qk q q k k T q k qk q q k k c c c m m m h h h h h h h h h c c c m m m h h h h h h h h h Hx k q q

=

1

0

0

0

0

0

0

1

0

0

0

0

1

2 1 2 22 21 1 12 11

L

L

M

M

M

M

M

M

M

M

M

L

L

L

qk q q k k

h

h

h

h

h

h

h

h

h

H

(13)

Maka : hj1m1hj2m2Lhjkmkcj =0 ; j =1,2,Lq

Misalkan sebuah kata kode x dipancarkan mengalami beberapa kesalahan bit-nya sewaktu diteri-ma di tujuan. Jika kata kode yang diterima adalah y , dimana pola kesalahannya (error-pattern) adalah e.

Maka y = xe.

Ini berarti setiap kata kode yang diterima adalah yi =xiei dengan i=1,2,Lk.

Jika ⎩ ⎨ ⎧ = → ≠ → = i i i i i x y x y e 0 1 Contoh : T T y x ] 0 0 1 1 0 [ ] 1 0 0 1 0 [ = = e=[00101] T

Jika di penerima kesalahan e dapat ditentukan , maka semua kesalahan yang terjadi dapat diko-reksi. Untuk dapat menentukan kesalahan “e” dari kata kode yang diterima “ y” , maka kata kode yang dipancarkan “x” harus diketahui.

Untuk itu harus dihitung sebuah q-digit syndrome.

Yang dimaksudkan dengan q-digit syndrome adalah :

Hy s =

Lebih lanjut s dapat diuraikan menjadi :s=HxHe Karena Hx=0, maka :

He s=

Jadi dapat dilihat bahwa jika tanpa kesalahan atau e=0 maka s=0.

Jika berita yang diterima hanya salah 1 digit saja, misalkan yang mengalami kesalahan digit ke-j, maka dapat dibuktikan bahwa :

T qj j j h h h s=[ 1 2 L ] dimana jk Contoh : Kode ( 7,4 ) berarti k = 4 ; n = 7 ; q =3

Kode paritas untuk setiap berita adalah :

q

Hc = 0 ( dimana c = kode tertentu yang dikirim)

]Dengan demikian :

[

]

T q k qk q q k k c c c d d d h h h h h h h h h c H L L L L M M M M M M M M M L L L 2 1 2 1 2 1 2 22 21 1 12 11 1 0 0 0 0 0 0 1 0 0 0 0 1 ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ =

Kesalahan terjadi pada digit ke-3 dan ke-5

k q ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = 1 0 0 0 0 0 0 1 0 0 0 0 1 2 1 2 22 21 1 12 11 L L M M M M M M M M M L L L qk q q k k h h h h h h h h h H q

(14)

⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ ⎥ ⎥ ⎥ ⎥ ⎥ ⎦ ⎤ ⎢ ⎢ ⎢ ⎢ ⎢ ⎣ ⎡ = 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 2 1 2 1 2 1 2 22 21 1 12 11 M M M L L M M M M M M M M M L L L L q k qk q q k k c c c d d d h h h h h h h h h Hc :

h

j1

d

1

h

j2

d

2

L

h

jk

d

k

c

j

=

0

;

j

=

1

,

2

,

L

q

0

1

1

0

0

1

1

0

1

0

1

1

0

;

4

;

3

:

1 13 12 1 14 13 12 11 4 3 2 1

=

=

=

=

=

=

=

=

=

c

h

h

c

h

h

h

h

j

d

d

d

d

k

q

Untuk

• Matrix Uji Paritas adalah :

=

=

=

+ + + 4 3 2 1 34 33 32 31 24 23 22 21 14 13 12 11 7 6 5 2 1 2 1 2 22 21 1 12 11 2 1

d

d

d

d

h

h

h

h

h

h

h

h

h

h

h

h

c

c

c

d

d

d

h

h

h

h

h

h

h

h

h

c

c

c

c

k qk q q k k q k n k k

M

L

M

M

M

M

L

L

M

4 34 3 33 2 32 1 31 7 4 24 3 23 2 22 1 21 6 4 14 3 13 2 12 1 11 5

d

h

d

h

d

h

d

h

c

d

h

d

h

d

h

d

h

c

d

h

d

h

d

h

d

h

c

=

=

=

• Nilai syndrome atau s ini sama dengan isi kolom ke-j dari kolom matrix uji paritas H

• Karena itu syndrome memberikan informasi seolah-olah tidak ada kesalahan yang terjadi (no error) , atau posisi sebuah kesalahan asalkan semua kolom matrix uji paritas H adalah berbeda dan bukan nol

• Dengan demikian didapatkan kode pengoreksi kesalahan tunggal (jika kesalahan yang terjadi hanya 1, maka langsung dikoreksi)

• Jika digunakan dengan model ini, maka suatu kode (n,k) akan mempunyai Probabilitas Kesalahan :

( )

2

,word n e

P

P

( )

(

)

2 ,

2

P

2

k

n

1

c

n

k

P

e bit

n

• Namun kesalahan-kesalahan yang terjadi berulang-ulang (multiple errors) akan menyebabkan keruwetan atau komplikasi

(15)

o karena meskipun kesalahan-kesalahan yang sebenarnya itu bisa dihilangkan, tapi akibatnya akan salah didalam membetulkan digit berita lainnya

o yang mana beritanya akan menjadi lebih jelek

o Akibatnya dikehendaki kode yang lebih kuat

ƒ kecuali jika c sebegitu kecil sehingga kesalahan-kesalahan yang berulang akan amat jarang terjadi.

• Sayangnya dengan melengkapi suatu syndrome dan matrix uji paritas yang tepat untuk mengoreksi kesalahan yang berulang-ulang adalah :

o suatu kerja yang jauh lebih ruwet

o Oleh karena itu kode pengoreksi dua kesalahan yang pertama kali dibuat orang :

ƒ lebih didasarkan pada coba-coba (trial-and-error) daripada dirancang berdasarkan metode tertentu.

• Akhirnya Slepian pada tahun 1956 mengambil teori koding yang berdasarkan sepenuhnya pada matematika, pada saat dia :

o berhasil menemukan relasi konsep koding dengan aljabar modern.

• Segera setelah itu , dengan memakai teori medan Galois, para ahli yang bernama :

o Bose, Chaudhuri dan Hocquenghem mengembangkan ke-lompok kode yang dapat mengoreksi kesalahan yang berulang-ulang (sekarang disebut dengan kode BCH (singkatan dari Bose-Chaudhuri-Hocquenghem) yang :

ƒ efisien dan mempunyai hubungan relative sederha-na dengan persyaratan perangkat keras bagi coding dan dekoding.

Pendeteksian Kesalahan Dengan Kode Siklis

- Meskipun sebagian besar upaya didalam penkodean (coding) yang telah dipelajari adalah yang berkaitan dengan kode-kode FEC = Forward Error Correction , namun pendeteksian kesalahan juga dipakai secara luas dilam komunikasi data modern

-

Pendeteksian kesalahan tersebut biasanya memerlukan lintasan catubalik dari penerima informasi ke pemancar , yang memberi tahu bahwa telah terjadi kesalahan bit yang diterima , yaitu urutan bit informasi tidak cocok dengan urutan bit paritasnya

-

Selanjutnya pemancar akan mengirim ulang urutan bit katakode yang benar

-

Beberapa versi implementasi FEC adalah dengan cara :

o

Pengenalan negatip (NAKs = Negative Acknowledments) berarti lintasan catubalik hanya diterapkan terhadap signal yang diterima salah saja , dimana pemancar akan mengirim ulang signal informasi jika signal NAK diterima

o

Pengenalan positip (ACKs) berati bahwa lintasan catubalik hanya diterapkan terhadap signal yang diterima dengan benar saja , dimana akan secara otomatis dikirim ulang signal informasi dari pemancar jika tidak diterima signal ACK , selama interval waktu tertentu

o

Kombinasi ACK dan NAK

- Cara seperti yang disebutkan diatas disebut ARQ = Automatic Repeat reQuest , atau pengenalan dengan cara teknik pengiriman kembali (retransmission)

-

Semua jaringan switching data-paket dan jaringan komputer melakukan pendeteksian kesalahan dengan pengiriman kembali bilamana kesalahan terdeteksi

-

Contoh jaringan-jaringan tersebut adalah :

o

Jaringan-jaringan dengan pembagian waktu (time-shared networks)

(16)

o

Jaringan-jaringan perusahaan swasta (private corporate networks) , misalnya perbankan , pemesanan tiket pesawat udara , penjualan produk manufacture secara eceran , dan sebagainya) dan jaringan-jaringan yang terus berkembang , yang menggunakan banyak komputer untuk komunikasi data secara bersama - Jaringan-jaringan ini terdiri atas banyak saluran komunikasi (jalur = link) yang

dihubungkan dengan berbagai topologi jaringan , dengan pendeteksian kesalalahan dilakukan secara umum terhadap jalur-lalur tersebut

-

Kode siklis digunakan paling sering digunakan didalam melakukan fungsi pendetek-sian kesalahan

-

Blok-blok data yang dikirimkan didalam jaringan-jaringan ini sering kali disebut dengan paket

-

Paket-paket tersebut dapat berentang dari 500 sampai dengan 1000 bit panjangnya , bahkan lebih

-

Jadi pengkoreksian kesalahan untuk kata-kode kode sepanjang itu bukanlah pekerjaan yang mudah

-

Pendeteksian kesalahan terhadap kata-kata kode yang bit uji paritasnya tetap dapat mudah dilakukan

-

Adanya q buah bit uji paritas memungkinkan setiap kesalahan lonjakan (burst error) sepanjang q buah bit (ataupun kurang) tersebut untuk dideteksi kesalahannya (jika terjadi)

-

Pendeteksian tersebut tidak tergantung pada panjang paket data

-

Karena pada umumnya dirancang agar k>>q (agar efisiensi pengkodean tinggi) , maka deret generator g

( )

x , atau enkoder siklis jenis-sisa (remaider-type cyclic enco-der) pada umumnya digunakan didalam aplikasi pendeteksian kesalahan tersebut

-

Misalkan kode siklis (n, k) , pada pendeteksian ini , dimana n=10;k =6;q=4

-

Pada pendeteksian ini , k buah bit data tersebut dikelompokkan menjadi

-

Perlu untuk dicatat bahwa hanya terdapat 1 bit saja didalam setiap lonjakan b buah bit (ataupun kurang) yang akan mempengaruhi setiap bit uji paritas , dan selanjutnya dapat yang dideksi

-

Hal ini adalah benar , apakah lonjakan-lonjakan tersebut terjadi dalam salah satu dari segmen-segmen b buah bit , dimana urutan data telah dikelompokkan , ataupun bertumpang tindih sampai meluberi 2 buah segmen seperti itu

-

Sebagai tambahan terhadap pendeteksian sebuah lonjakan didalam b buah bit (ataupun kurang) suatu kode linier dengan bit uji paritas sebanyak q = b buah bit akan mendeteksi lonjakan-lonjakan yang lebih panjang dengan prosentasi yang tinggi

-

Jika sebagian daripada lonjakan b buah bit tersebut menyebabkan :

o

b > q , maka yang tetap tak terdeteksi pada kode siklis (n, k) adalah

q

2 , jika b > q + 1

o

Jika b = q + 1 maka yang tetap tak terdeteksi pada kode siklis (n, k) adalah ( 1)

2−q

-

Teorema

o

Jika banyaknya kode paritas q cukup banyak , maka hampir

semua kesalah-an dapat terdeteksi

o

Sebagai misal jika q=16 , maka semua lonjakan kesalahan sebanyak 16 buah ataupun kurang akan dapat dideteksi

(17)

o

Jika bagian lonjakan kesalahan yang terjadi menyebabkan b>17 , maka yang tetap tak dapat dideteksi adalah 2−16s.d.4x10−6(suatu jumlah yang betul-betul kecil)

o Untuk membuktikan teorema tersebut , misalkan suatu lonjakan kesalahan terjadi di pengelompokan b buah bits , mulai dari bit yang ke-i dan berakhir dengan bit yang ke-

[

i+

(

b−1

)

]

o Dalam bentuk deret lonjakan kesalahan (burst polynomial : b

( )

x =x'b1

( )

x

o b1

( )

x deret berpangkat tertinggi (b−1)→ 1( )= 1+ 2+ + + 1+ + 1+1 − − − − − b i i b b b x x x x x x b L L

o Jika diperlihatkan dengan gambar , dimana adanya kesalahan ditunjukkan dengan bit 1 , yang terjadi pada bit i dan bit diakhir lonjakan , yaitu bit

(

i+b−1

)

sebagai berikut ini :

(

i b 1

)

biti bit 1 1 L L L L L L L L L L L − + − − − −

o Lonjakan kesalahan sepanjang b buah bit mempunyai kemungkinan sebanyak

2

2b

buah simbol (1 atau 0) diantara permulaan dan akhir , yang bedasarkan difinisi , masing-masing dikendalai dengan bit 1 (untuk menyatakan bahwa pada urutan bit tersebut terjadi kesalahan)

o Hal ini sesuai dengan 2b−2 kemungkinan pattern lonjakan kesalahan disepan-jang b buah bit tadi , atau kemungkinan terjadinya 2b−2 buah bentuk daripada deret b1

( )

x

o Oleh karena perhitungan bit uji paritas di penerima dilakukan dengan jalan pembagian oleh deret generator g

( )

x yang mempunyai pangkat tertinggi r ,

satu kesalahan tetap tak terdeteksi , jika dan hanya jika b1

( )

x dapat

dibagi oleh g

( )

x

o Dari sini persyaratan bagi suatu pattern kesalahan lonjakan untuk tetap tak ter-deteksi adalah bahwa b1

( )

x mempunyai b1

( ) ( ) ( )

x =g x Q x

o Karena b1

( )

x adalah deret dengan pangkat tertinggi

(

b−1

)

dan g

( )

x adalah deret

dengan pangkat tertinggi q , maka Q

( )

x adalah deret dengan pangkat tertinggi

(

)

[

b−1 −q

]

o Kemungkinan yang bisa terjadi adalah :

ƒ Yang pertama adalah : lonjakan kesalahan sepanjang

(

b−1

)

=q , sehingga pangkat tertinggi daripada Q

( )

x adalah

[

(

b−1

)

q

]

=0 , sehi-ngga Q

( )

x =1; dengan demikian hanya terdapat 1 pattern

lonjakan yang tak dapat terdeteksi

Bagian lonjakan yang tak terdeteksi secara sederhana dirumuskan sebagai

Bagian dari lonjakan kesalahan yang tak terdetekasi = 2

2 1

b

=2−(q−1) dimana b −1 = q

ƒ Yang kedua adalah jika b−1 > q ; oleh karena pangkat tertinggi deret

( )

x

[

(

b

)

q

]

Q adalah −1 − , dan harus berakhir dengan 1 , maka suku

dari-pada deret Q

( )

x adalah sebanyak

[

(

b−1

)

q−1

]

, yang masing-masing dengan koefisien 1 atau 0

Kesalahan Pattern

(18)

Bagian dari lecutan kesalahan bit yang tak terdetekasi = b q q b 2 2 2 2 1 1 = − − − −

ƒ Dua kemungkinan hasil yang diperoleh diatas membuktikan bahwa kode yang dapat mendeteksi kesalahan dengan bit uji paritas moderat atau cukup , akan mendeteksi kejadian pada sebagian besar pattern lonjakan kesalahan

o Karena semua jaringan data maupun komputer yang modern menggunakan beberapa bentuk deteksi kesalahan dengan teknik ARQ bila menerima paket data yang salah , maka :

ƒ Pemakaian teknik pendeteksi kesalahan akan dapat mengurangi probabilitas terjadinya kesalahan suatu paket data , sehingga menjadi 2−q

ƒ Prosedur deteksi kesalahan yang khusus , mempunyai bit uji paritas dengan rentang antara 8 s.d. 32 buah bit

ƒ Standard internasional untuk pengontrolan jalur data (link data control) , adalah menggunakan protokol HDLC (High-Level Data Link Control) , dima-na pada pengontrolan jalur ini menggudima-nakan :

• bit uji paritas sebanyak 16 bit dan deret generator

( )x =x16+x12+x5+1

g

o Perhitungan sebenarnya daripada probabilitas kesalahan suatu paket atau blok data yang dilindungi oleh suatu bit uji paritas siklis ada-lah :

ƒ sulit dilakukan karena masih kurangnya pengetahuan tentang mekanis-me yang mekanis-menghasilkan ledakan-ledakan kesalahan khusus

ƒ Jika mekanisme yang dimaksudkan adalah :

noise suhu yng terus-menerus terjadi dan pengaruh-penga-ruhnya diberi model sebagai AWGN = Additive White Gaussian Noise , maka :

o kesalahan-kesalahan bit yang berturut-turut didalam suatu burst (lecutanan bit) akan bebas satu sama lain

o Probabilitas bahwa suatu paket atau blok sepanjang n bit akan diterima salah adalah :

(

)

[

1− 1− p

]

nnp ; np<<1 ; p=probabilitaskesalahan bit

ƒ Namun pada kanal telepon band terbatas , yang paling sering dipakai sebagai tulang punggung jalur komunikasi untuk jaringan-jaringan data , noisenya tidak dimodelkan sebagai kanal AWGN

ƒ Lecutan-lecutan kesalahan pada kanal ini berpengaruh terhadap :

• memory

• menimbulkan kesalahan yang tergantung pada :

o bit-bit yang berturut didalam suatu aliran data (data stream)

o Hal ini membuat perhitungan probabilitas-probabilitas kesalahan sangat sulit

o Namun demikian , pengujian-pengujian telah menunjukkan bahwa : ƒ pengaruh kesalahan terhadap blok-blok data :

membuat suatu kesalahan blok bergerak sebanding sewaktu panjang blok bertambah

o hal ini adalah model yang tepat untuk :

ƒ probabilitas kesalahan blok yang mempu-nyai hubungan yang sebanding dengan panjang blok

(19)

o Dengan demikian dapat dirumuskan : np Pb ≅ = blok kesalahan as Probabilit

dimana p=suatu parameter yangditentukanberdasarkan pengamatan

o Jadi semakin panjang blok , maka semakin besar kesalahan yang terjadi

• Jika dilakukan pengujian siklis , hasil yang sederhana adalah 2 kejadian kesalahan −q tak dapat dideteksi (hal ini dilakukan dengan menganggap panjang lonjakan b > q , atau q >> 1

• Probabilitas kesalahan blok keseluruhan dapat didekati dengan :

q e np P ≅ 2− • Contoh : 1. 2.

Rangkuman

- Tekanan pembahasan sistem komunikasi digital ini adalah mengenai pengoptimalan rancangan sistem dengan memaximalkan kecepatan transmisi informasi , yang menghadapi kendala-kendala berupa daya signal terbatas , noise dan lebar pita

- Beberapa aspek optimisasi dibahas dari berbagai sudut pandang

- Dalam pembahasan tentang komunikasi biner , diutarakan tentang pengaturan ambang pengambilan keputusan , apakah suatu signal diputuskan bernilai 0 atau 1

- Konsep matched filter dibahas untuk pemaximalan SNR pada transmisi biner

- Ketidak samaan Schwarz digunakan didalam membicarakan jaringan emphasis (preamphasis dan deemphasis) yang optimal untuk transmisi analog FM dan AM

- Pembahasan tentang SNR , perubahan lebarpita pada sistem PCM - Teori Shanon tentang sistem transmisi digital optimum

- Pembahasan transmisi optimum dengan cara yang lebih statistik didalam sistem komu-nikasi digital

- Prosedur optimisasi pada sistem komunikasi digital berdasarkan minimisasi proba-bilitas terjadinya kesalahan bit , dalam keadaan adanya AWGN

- Prosedur ini akan menjawab pertanyaan “apakah ada gelombang-gelombang biner yang optimum dan mekanisme penerima yang optimum untuk meminimalkan probabilitas terjadinya kesalahan

- Pembahasan dimulai dari sample-sample signal tunggal yang diterima dan selanjutnya melakukan generalisasi terhadap sample-sample yang berulang (multiple) secara bebas - Dari probabilitas distribusi yang diketahui dapat diperoleh prosedur pemrosesan

opti-mum , yang terdiri atas peningkatan pengaturan perbandingan kemungkinam (like-lihood ratio) dan menentukan apakah perbandingan tersebut lebih besar atau lebih kecil dibandingkan dengan suatu konstanta yang diketahui

- Sebagai alternatip , prosedur optimum terdiri atas sample-sample signal terima ruang berdimensi-m , yang dapat dibagi menjadi 2 daerah untuk pengambilan keputusan yang tidak tumpang tindih (disjoint decision regions)

- Dengan melakukan pensignalan multidimensi yang menggunakan signal-signal ortho-gonal M-susun , maka :

o dapat diperoleh penurunan probabilitas kesalahan , namun : ƒ memerlukan lebarpita yang lebih lebar

ƒ rangkaian memjadi bertambah komplex

( )( )( ) ( ) ( )8 4 ( )3( )5 ( 14) 12 5 32 5 5 10 4 10 64 4 10 256 4 2 10 1000 2 10 1000 32 ; 1000 ; 10 − − − − − − − = = = = n bits q bits P x p e ( )

( )( )

5 8 ( ) 5 5 10 2 256 105 500 2 10 500 8 ; 500 ; 10− = = → ≅ − − = ≅ − = n bits q bits P x p e

(20)

- Cara diatas adalah hal yang khusus daripada teorema kapasitas kanal Shanon , dimana :

• secara teoritis dapat dibuat sistem komunikasi dengan probabilitas kesalahan rendah , meskipun terdapat adanya noise AWGN , sehingga :

o dapat dilakukan operasi pengkodean dan pendekodean seca-ra memuaskan

o Hal diatas dimungkinkan asalkan :

ƒ kecepatan transmisi bit = R bps tidak melebihi kapasitas kanal , yang mana :

ƒ kapasitas kanal tersebut ditentukan oleh :

• lebarpita kanal transmisi , daya signal rata-rata dan kerapatan spektral

- Penggunaan metode-metode untuk mendeteksi dan mengoreksi kesalahan bit adalah :

o sebagai suatu cara untuk memperbaiki kinerja sistem komunikasi digital

- Cara yang umum dilakukan untuk mendeteksi dan mengoreksi kesalahan bit adalah :

o dengan jalan menyisipkan bit-bit uji paritas dalam aliran biner (binary stream) , sehingga dimungkinkan untuk :

ƒ mendeteksi dan mengoreksi kesalahan dalam jumlah tertentu - Langkah yang diambil dalam hal ini adalah :

o memilih kode yang mendekati kinerja kesalahan yang diramalkan oleh Shanon

PEMBUATAN KODE SIKLIS

• Deret generator g

( )

x langsung dapat digunakan untuk pembuatan kode siklis

• Pembuatan kode secara serial dapat dilakukan dengan mengimplementasikan register geser

• Dasar pemikirannya sebagai berikut :

• Berdasarkan rumus untuk deret katakode = c

( ) ( ) ( )

x =a x g x , dimana :

o deret urutan data : d

( )

x =d1xk−1+L+dk1x+dk ; derajat (pangkat tertinggi) deret ini adalah

(

k−1

)

o namum derajat deret urutan data bisa menjadi kurang dari

(

k−1

)

jika d1 =0

ƒ hal ini tergantung pada nilai-nilai bit data

o operasi xnkd

( )

x akan menghasilkan deret berderajat

(

nk

) (

+ k−1

) (

= n−1

)

, atau lebih kecil bila koefisien dari suku deret yang berpangkat

(

n−1

)

adalah 0

o

( )

( )

q

( ) ( )

x

r

x

x

g

x

d

x

nk

=

+

=

+

pembagian

hasil

sisa

pembagian

hasil

o Derajat deret

( )

( )

x g x d xnk adalah :

(

) (

)

{

( )

}

[

nk + k−1 − pangkat tertinggig x =q

]

=

(

n−1

)

q=k−1 o Deret kata kode =c

( ) ( ) ( )

x =a x g x =xnkd

( ) ( )

x +r x

( )

( )

( )

( )

( )

x g x d x x g x d x x r k n k n− − =

=rem sisahasilpembagian

(21)

Buktikan bahwa kode

( )

7,3 jika kode datanya = d =111 , maka kata kodenya adalah : c=

(

1110100

)

Bukti :

( )

( )

( )

(

)

1 1 1 rem rem 4 3 2 4 5 6 2 3 4 2 3 7 + + + + + = + + + + + = = − − x x x x x x x x x x x x x g x d x x r k n x2 1 2 3 4+ + + x x x x6+x5+x4

( )

=rem

( )

( )

= 2 =1 2 +0 +0

( )

1 − x x x x g x d x x r k n

Jadi c=

(

d,koefisien-koefisien rem

) (

=

[

1110

) ( )

, 100

]

=

(

1110100

)

Arithmatika polynomial

Sebelum menentukan deret generator g

( )

x , akan dibahas lebih dahulu tentang arithmatika (perhitungan aljabar) perkalian dan pembagian polynomial sebagai berikut :

• Misalkan w

( )

D =w0 +w1D+w2D2 +LL+wk1Dk−1 adalah deret ukur , dimana nilai

setiap 0 1 1 2 , 1 , 0 atau w k j j = − = LL

• Jika semua nilai

( )

2 1

1 2 , 1 , 0 1 1 − − = = → = + + + + k k j j w D D D D w LL L L o Jika k =4→w

( )

D =1+D+D2 +D3

• Jika untuk k =6 tidak semua

1 2 , 1 , 0 − = k j j w L L bernilai 1 , misalnya : o w0 =1;w1 =1;w2 =0;w3 =0;w4 =1;w5 =1 , maka : ƒ

( )

5 5 4 4 1 D w D w D D w = + + +

• Polynomial tersebut memberi gambaran yang sesuai dengan vektor informasi – k bit :

1 2 1 0 − =w w w wk w LL

• Perhatikanlah beberapa polynomial berikut :

( )

( )

( )

( )

1 1 2 2 1 0 1 1 2 2 1 0 1 1 2 2 1 0 1 1 2 2 1 0 − − − − − − − − + + + + = + + + + = + + + + = + + + + = n n n n n n n n D e D e D e e D e D x D x D x x D x D y D y D y y D y D g D g D g g D g L L L L L L L L

• Penjumlahan modulo-2 daripada 2 buah polynomial , misalnya :

( ) ( ) ( )

D x D e D y = +

( )

1 1 2 2 1 0 1 1 2 2 1 0 − − − − + + + + + + + + + = n n n n D e eD e D e D x D x D x x D y LL LL 2 4 5 6 x x x x + + +

( )

1 111→ = 2+ + = d x x x d 2 rem=x

(22)

( )

(

) (

)

(

)

(

)

1 1 1 2 2 2 1 1 0 0 1 1 2 2 1 0 − − − − − = + + + + + + + + + + + + = n n n n n D x e x e D x e D x e D y D y D y y D y LL L Jadi : 1 1 1 1 1 1 0 0 0 − − − = + + = + = n n n x e y e x y e x y M Secara umum : yj =xj +ej

• Perkalian daripada 2 polynomial , misalnya :

( ) ( )

{

}{

1

}

1 2 2 1 0 1 1 2 2 1 0 − − − − + + + + + + + + = n n n n D w w D w D w D g D g D g g D w D g LL LL

( ) ( )

2 2 1 1 1 2 1 1 1 1 0 1 1 1 3 2 1 2 1 1 0 1 1 1 0 2 2 0 1 0 0 0 − − − + − − − − − − − + + + + + + + + + + + + + + + = n n n n n n n n n n n n n D w g D w g D w g D w g D w g D w g D w g D w g D w g D w g D w g w g D w D g L L L L

( ) ( )

(

)

(

)

(

)

(

+ + +L+

)

+

(

+ + +L

)

+L + + + + + + + + + + = − − − − − − − − − − 2 4 2 3 1 2 0 1 0 1 2 2 2 1 1 0 1 1 3 0 3 2 1 3 0 2 0 2 1 1 2 0 0 1 1 0 0 0 0 n n n n n n n n n n n D w g w g w g D w g w g w g w g D w D w g w g w g D w g w g w g D w g w g D w g D w D g Dapat ditulis :

( ) ( ) (

)

(

)

(

)

(

)

0 0 0 3 1 2 2 1 3 2 1 1 2 1 1 g D w D w g w g w g D w g w g D w g D w D g n k k n k k n k k n n k k n k k n n k k n + + + + + + = − − − − − − − − − − − − − − − + − − M

Kata kode keluaran adalah :

i q q i i q

w

g

x

=

=

0

dimana perhitungan dan rangkaian berikut ini secara konsep dapat digunakan untuk me-nggambarkan perkalian x

( )

D =w

( ) ( )

D g D

Untuk menghitung persamaan diatas dapat dilakukan dengan menggunakan rangkaian logika berikut : 0 4 1 3 2 2 3 1 4 0 4 0 3 1 2 2 1 3 0 3 0 2 1 1 2 0 2 0 1 1 0 1 0 0 0 4 3 2 1 0 g w g w g w g w g w x q g w g w g w g w x q g w g w g w x q g w g w x q g w x q + + + + = → = + + + = → = + + = → = + = → = = → = Σ Σ Σ Σ X X X X X 3 n-k 2 1 k n ggnk−1 gnk−2 gnk−3 g0 1 2 1 0,x, ,xn− ,xnx L Masukan 1 2 1 0,w, ,wk− ,wkw L Keluaran

Gambar

Tabel kode blok khusus
Tabel tertentu yang dibuat sebagai contoh tersebut adalah termasuk kelompok kode Hamming No 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15Berita 0000 1000 0100 1100 0010 1010 0110 1110 0001 1001 0101 1101  0011 1011  0111 1111 Kata kode 0000000 1101000 0110100 1011
Tabel : tabel singkat nilai-nilai Q(x) dan Z(x)

Referensi

Dokumen terkait

ini untuk mendapatkan derajat keanggotaan untuk himpunan baik, cukup, dan kurang pada variabel grade adalah dengan menggunakan representasi kurva bentuk bahu. Misal diambil

Setelah mengetahui konsep diri preman, atau pemaknaan informan mengenai dirinya sendiri dan simbol-simbol yang menyertainya, peneliti akan masuk lebih dalam untuk

Komunikasi data melalui media perangkat radio adalah bentuk dari teknologi packet switching yang digunakan untuk mengirimkan data digital melalui jaringan komunikasi tanpa

Mengirimkan logika Low untuk kolom 2 (Col2) dan logika HIGH untuk kolom yang lain kemudian membaca data baris, misal tombol SW1 ditekan maka data baris pertama

Regresi linear berganda adalah salah satu metode statistik yang digunakan untuk mengetahui pengaruh dari banyaknya variabel bebas terhadap satu variabel terikat. Masalah yang

Kekaburan norma tersebut bisa menjadi penyebab seorang pelaku tindak pidanacyber prostitution bebas dari jeratan hukum, Berdasarkan pemaparan latar belakang tersebut, saya akan

● Konsep logika dan algoritma ● Notasi flowchart ● Membuat permainan sederhana menggunakan perangkat lunak animasi 3D 6 ● Mengamati untuk mengidentifikasi dan merumuskan masalah

● Konsep pembuatan video ● Teknik pembuatan sinopsis, naskah, dan storyboard ● Desain karakter ● Mengamati untuk mengidentifikasi dan merumuskan masalah tentang cara membuat video