Anda di halaman 1dari 19

Dewiani Pengkodean dan Kompresi 1

BENTUK SISTEMATIK
Diketahui :
d = ( d
o
, d
1
, d
2
, , d
k-1
) d (x) = d
o
+ d
q
.x +
d
2
.x
2
+ + d
x-1
.x
k-1

g(x) = 1 + g
q
.x + g
2
.x
2
+ + g
n-k
.x
k-1


Dicari :
C = ( p
o
, p
1
, p
2
, , p
n-k-1
, d
o
, d
1
, , d
n-k
)
C = ( C
o
, C
1
, , C
n-k
)
d
o
, d
1
, , d
n-k
= sistematik code.

Solusi : {code over GF (2) }



Dewiani 2

x
n-k
d(x) = d
o
.x
n-k
+ d
1
.x
n-k+1
+ + d
k-1
.x
n-1

DEG [ g(x) } = n-k ;
DEG [ x
n-k
.d(x) ] = (n 1)

Jadi, jika { x
n-k
.d(x) } dibagi g(x)
x
n+k
.d(x) = a(x) . g(x) + b(x)

dengan : b(x) = b
o
+ b
1
.x + b
2
.x
2
+ + b
n-k-1
.x
n-k-1

atau :
b(x) + x
n-k
.d(x) = a(x) . g(x) c(x)

dimana : a(x) . g(x) : dapat dibangkitkan oleh g(x)
b
o
+ b
1
.x + + b
n-k-1
.x
n-k-1
+ + d
k-1
.x
n-1


Pengkodean dan Kompresi
Dewiani 3
Contoh :

* d = ( 1 1 1 0 ) d(x) = 1 + x + x
2
+ 0.x
3

g(x) = 1 + x + x
3

* Kode sistematik (7,4) = .. ?

Jawab :
n = 7 ; k = 4
x
3
.d(x) = x
3
+ x
4
+ x
5
+ 0.x
6


Pengkodean dan Kompresi
Dewiani 4
Mencari b(x) :

{ sisa hasil bagi x
n-k
.d(x) / g(x) }

g(x) = x
3
.d(x)
1 1 0 1 / 0 0 0 1 1 1 0 / 0 1 1 0 tidak diperlukan
0 0 0 0
0 1 1 1
1 1 0 1
0 1 0 1
1 1 0 1
0 1 0 0 { deg = 1 } < deg [ g(x) ]
0 0 0 0
0 1 0 b(x) = 0.x
0
+ 1.x
1
+ 0.x
2


Pengkodean dan Kompresi
Dewiani 5
Code :
d
(3)
= 0 0 0 1 1 1 0
B = 0 1 0 0 0 0 0 imbuhan
c = b + d
(3)
= 0 1 0 1 1 1 0 [C] = [ b . d ]
GENERATOR MATRIX

(n,k) code : subspace dari

Jadi Generator matrix : vektor basis

Satu pilihan : code dari vektor basis data

Pengkodean dan Kompresi
Dewiani 6
Contoh :

Kode (7,4) dengan g(x) = 1 + x
2
+ x
3

d b C
1 0 0 0 1 0 1 1 0 1 1 0 0 0
0 1 0 0 1 1 1 1 1 1 0 1 0 0
0 0 1 0 1 1 0 1 1 0 0 0 1 0
0 0 0 1 0 1 1 0 1 1 0 0 0 1
basis dari basis dari code
data (vektor) (vektor)
Pengkodean dan Kompresi
Dewiani 7
(
(
(
(

=
1 0 0 0 1 1 0
0 1 0 0 0 1 1
0 0 1 0 1 1 1
0 0 0 1 1 0 1
G
Pengkodean dan Kompresi
Dewiani 8
NULL SPACE / PARITY CHECK MATRIX

G = [ P
k,n-k
! I
k
] H = [ I
n-k
! P
T
n-k,k
]

Contoh :

(
(
(
(

=
1 0 0 0 1 1 0
0 1 0 0 0 1 1
0 0 1 0 1 1 1
0 0 0 1 1 0 1
G
(
(
(

=
1 0 1 1 1 0 0
1 1 1 0 0 1 0
0 1 1 1 0 0 1
H
Pengkodean dan Kompresi
Dewiani 9
d = ( 1 0 1 1 ) C = d . G =
| | | | 1 1 0 1 0 0 0
1 0 0 0 1 1 0
0 1 0 0 0 1 1
0 0 1 0 1 1 1
0 0 0 1 1 0 1
. 1 1 0 1 =
(
(
(
(

Pengkodean dan Kompresi


Dewiani 10
Contoh :
d = ( 1 0 1 1 ) C = d . G

C.H
T
: { baris 4, 6 & 7 dari H
T


kolom 4, 6 & 7 dari H }

4 : 1 0 1
5 : 1 1 0
6 : 0 1 1 +
0 0 0
Pengkodean dan Kompresi
Dewiani 11
Umpama :

= ( 0 0 0 0 1 0 0 )

r = c = c + = ( 0 0 0 1 1 1 1 )

c.H
T
= { baris 4, 5, 6 & 7 dari H
T
}

1 1 1 0 1
0 1 1 1 1 k
5
dari H
1 1 0 1 1

Pengkodean dan Kompresi
Dewiani 12
Catatan :

Data : [ d
o
d
1
d
2
d
3
]

(1) Geser 3-bit [ 0 0 0 d
o
d
1
d
2
d
3
]

(2) Bagi dengan g(x) ; diambil sisa hasil bagi [ p
o
p
1
p
2
]

(3) Sambung [ p ] dengan [ r ] [ p
o
p
1
p
2
d
o
d
1
d
2
d
3
]

Pengkodean dan Kompresi
Dewiani 13


Kode sistematik :
x
n-k
.d(x) = q(x) . g(x) + b(x)
c(x) = b(x) + x
n-k
.d(x)

Penghasil sisa : x
r
.d(x) / g(x)
{ operasi mod. g(x) }



Pengkodean dan Kompresi
Dewiani 14

COBA :
1.* Siklis kode (kode siklis) (7,4) dengan g(x) = 1 + x + x
3
;
d(x) = 1 + x + x
3

* Cek kebenaran hasil akhir !

Jawab :
a. n = 7 ; k = 4 x
3
.d(x) = x
3
+ x
4
+ x
6


1 1 0 1 / 0 0 0 1 1 0 1 \ 0 0 0 1 (hasil bagi = 0 0 0 1 x
3
)
1 1 0 1
0 sisa hasil bagi ( 0 0 0 0 )

Kode : [c] = [ b d ] = [ 0 0 0 1 1 0 1 ]


Pengkodean dan Kompresi
Dewiani 15
2. g(x) = 1 + x + x
3
; kode siklis (7,4) ; d(x) = 1 + x
2
+ x
3

Jawab :
a. x
3
.d(x) = x
3
+ x
5
+ x
6


x
3
.d(x)
g(x) 1 1 0 1 / 0 0 0 1 0 1 1 \ 1 1 1 1
1 1 0 1
0 0 1 1
1 1 0 1
0 1 1 1
1 1 0 1
0 1 0 1
1 1 0 1
1 0 0
Kodenya : [ 1 0 0 1 0 1 1 ]
Pengkodean dan Kompresi
Dewiani 16
SINDROME


c(x) r(x)= c(x) + (x)


(x)

Algorithm :
r(x) = q(x).g(x) + s(X)
Deg. [s(x)] < Deg. [g(x)]

Kasus-1 : (x) = 0 r(x) = c(x) = a(x).g(x)
atau : s(x) = 0


Pengkodean dan Kompresi
Dewiani 17 Pengkodean dan Kompresi
Kasus-2 : (x) : suatu code-word = c
1
(x)
r(x) = c(x) + c
1
(x) = c
2
(x)
= a
2
(x).g(x)
atau : s(x) = 0

Kasus-3 : (x) =
o
+
1
.x + +
n-1
.x
n-1
0
r(x) = c(x) + (x)
= a(x).g(x) + {l(x).g(x) + k(x)}
= { a(x) + l(x) } g(x) + k(x)
= q(x).g(x) + s(x)

Catatan :
Sindrom s(x) = sisa hasil bagi r(x) oleh g(x)



Dewiani 18
SINGLE BIT ERROR

Dasar :
1. Syndrome 0 ; ada error
2. Synd.[r(x)] = synd.[(x)]
3. Shift cyclic dari c(x) adalah anggota code / code
polynomial

Akibat :
- Andaikan, bit salah ada di posisi l-bit sebelum bit
terakhir
- Jika r(x) digeser cyclic l-bit ke kanan, maka posisi error
ada di bit-terakhir dan syndrome selalu sama dengan
syn [x
n-1
]


Pengkodean dan Kompresi
Dewiani 19
Dapat dibuktikan :
Synd.[x
l
.r(x)] dapat diperoleh dengan
menggeser siklis syndrome generator yang
telah berisi synd.[r(x), l-bit siklis ke kanan.

Pengkodean dan Kompresi