Anda di halaman 1dari 13

PETUNJUK PRAKTIKUM

TEORI INFORMASI
DAN PENGKODEAN
Edisi Ganjil 2010/2011


























Laboratorium Komputer Jurusan Teknik Elektro



FAKULTAS TEKNIK UNIVERSITAS TARUMANAGARA

PETUNJUK PRAKTIKUM
TEORI INFORMASI DAN PENGKODEAN

Edisi Ganjil 2010/2011










Tim Penyusun:

Joni Fat, ST. ME.





















LABORATORIUM KOMPUTER
JURUSAN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS TARUMANAGARA
P1
Linear Binary Block Codes

A. Tujuan Instruksional
Mempelajari cara encoding dan decoding dengan menggunakan Block Codes.

B. Teori Percobaan
B.1. Matriks Generator G
Linear code merupakan sebuah ruang vektor, di mana masing-masing code word
merupakan vektor. J adi, himpunan vektor-vektor dengan panjang n ini dinamakan linear
block code jika dan hanya jika himpunan tersebut merupakan subspace dari vektor space n-
tuples.
Representasi matriks dari sebuah code merupakan cara ideal untuk menggambarkan
code itu dengan ringkas dan menyeluruh. Sebuah linear code berukuran (n,k) dinyatakan
dengan matriks generator G berdimensi k x n. Masing-masing baris G merupakan n-tuple,
dan masing-masing kolom merupakan k-tuple. Oleh karena ruang baris G adalah himpunan
basis vektor untuk subspace berdimensi k, setiap code word c merupakan kombinasi linier
dari baris-baris G dengan berdasarkan pada data informasi d =(d
0
, d
1
, ... , d
k-1
), maka
c =d
0
g
0
+d
1
g
1
+... +d
k-1
g
k-1

dengan d
i
(0 <i <k-1), menyatakan bit-bit informasi; dan g
i
(0 <i <k-1), merupakan
baris vektor dari G.
Prosedur encoding dapat direpresentasikan dalam bentuk matriks sebagai berikut:
c = d . G
dengan G =[P
k x (n-k)
| I
k
]. Matriks G ini dinamakan matriks generator dari kode sistematik.

B.2. Matriks Parity-Check H
Matriks H merupakan matriks parity-check untuk matriks generator G. Matriks H ini
adalah matriks berdimensi (n-k) x n, sedemikian hingga c . H
T
= 0 dengan 0 menandakan
semua baris nol dengan anggota sebanyak n-k. Persamaan tersebut dapat digunakan untuk
membuktikan keabsahan vektor G, yaitu G . H
T
= 0, dengan 0 merupakan matriks beranggota
nol dengan dimensi k x (n-k). Untuk matriks G seperti pada persamaan di atas, maka matriks
H dapat dirumuskan sebagai berikut:
H = [ I
n-k
| P
T
(n-k) x k
]
Dengan P
T
merupakan matriks transpos dari submatriks P dari persamaan matriks G.
B.3. Syndrome
Misalkan c =(c
0
, c
1
, ..., c
n-1
) merupakan code word yang ditransmisikan dan r =(r
0
,
r
1
, ..., r
n-1
) merupakan word yang diterima pada output demodulator. Word r ini dapat sama
atau berbeda dari c, tergantung pada noise dalam saluran. Apabila r c, dapat dikoreksi
dengan persamaan r = c + e, dengan e = r + c = (e
0
, e
1
, ..., e
n-1
). Word e inilah yang
dinamakan error.
Setelah menerima r, dekoder mulai menghitung syndrome, untuk menentukan letak
errors, dan untuk memperbaikinya. Syndrome dinotasikan dengan s:
s = r . H
T
= (s
0
, s
1
, ..., s
n-k-1
)
Oleh karena r merupakan penjumlahan dari vektor c dan e, maka persamaan di atas dapat
diubah menjadi:
s = (c + e) H
T
= c . H
T
+ e . H
T

dengan c . H
T
= 0, maka persamaan di atas dapat ditulis dengan sederhana menjadi:
s = e . H
T

Persamaan ini menunjukkan hubungan antara syndrome dengan pola error. J adi, bila s = 0,
maka dapat dipastikan e = 0 atau tidak ada error yang timbul. Sebaliknya bila s 0, maka
dapat dipastikan r c, yang berarti terjadi error.

C. Pelaksanaan Percobaan
C.1. Pengiriman Tanpa Error
1. Buka file Simulasi TIP.xlsb.
2. Buka tab Matriks dari file tersebut. Praktikan akan melihat dua buah matriks, yaitu
matriks G dan H. Kedua matriks ini masing-masing adalah matriks generator dan
parity-check.
3. Buka tab Encoder. Pada tab ini, Praktikan mengisikan data yang akan dikirim
sesuai dengan perhitungan dimensi matriks G pada kolom berwarna biru muda.
4. Pada kolom di sebelah pojok kanan bawah layar monitor, isikan dengan nilai 0.
Nilai ini berarti pengiriman data tidak akan dibebani dengan faktor kesalahan. J adi,
data yang dikirim akan sama dengan data yang diterima. Formulasikan bentuk
matematis dari proses encoder tersebut.
5. Tab Syndrome Gen akan memperlihatkan bagaimana sistem membangkitkan
syndrome untuk keperluan deteksi kesalahan pada data yang diterima. Proses ini akan
berjalan secara otomatis. Praktikan diminta untuk menformulasikan bentuk matematis
dari proses ini, dan lakukan perhitungan ulang untuk melihat apakah hasil yang
diperoleh sesuai dengan yang dihasilkan oleh sistem.
6. Tab Correction merupakan ringkasan keseluruhan proses sistem. Amati tiap kolom
yang ada.

C.2. Pengiriman dengan Error
1. Untuk file yang sama dengan percobaan C1.
2. Matriks yang digunakan juga sama dengan percobaan C1.
3. Buka tab Encoder. Pada tab ini, Praktikan mengisikan data yang akan dikirim
sesuai dengan perhitungan dimensi matriks G pada kolom berwarna biru muda.
4. Pada kolom di sebelah pojok kanan bawah layar monitor, isikan dengan nilai 1.
Nilai ini berarti pengiriman data akan dibebani dengan faktor kesalahan. J adi, data
yang dikirim tidak akan sama dengan data yang diterima. Berapa bitkah kesalahan
yang dapat dikoreksi oleh sistem ini? J elaskan.
5. Tab Syndrome Gen akan memperlihatkan bagaimana sistem membangkitkan
syndrome untuk keperluan deteksi kesalahan pada data yang diterima. Proses ini akan
berjalan secara otomatis. Lakukan perhitungan secara matematis untuk membuktikan
bahwa hasil perhitungan sistem adalah benar.
6. Tab Correction merupakan ringkasan keseluruhan proses sistem. Amati tiap kolom
yang ada.

D. Tugas
1. Tuliskan coset table untuk percobaan ini!
2. Apabila data yang dikirimkan adalah "011", hitunglah:
a. Code word dari data yang akan dikirim.
b. Syndrome.
c. Apabila terjadi error pada bit yang ke-4, tulis proses pengoreksian dan hasil
pengoreksiannya.
Hitungan ini dikerjakan secara manual dengan matriks yang telah diberikan.
3. Bila diberikan:

Hitung:
a. Matriks H.
b. Tabel Coset.
c. Bila data yang akan dikirim adalah "1011", hitung:
Code word dari data yang akan dikirim.
Syndrome.
Apabila terjadi error pada bit yang ke-6, tulis proses pengoreksian dan hasil
pengoreksiannya.


E. Daftar Acuan
M. Y. Rhee, Error-Correcting Coding Theory, USA: McGraw-Hill, 1989, pp. 35-88.

T. K. Moon, Error Correction Coding: Mathematical Methods and Algorithms, Hoboken,
NJ : J ohn Wiley & Sons, 205, pp. 83-112.





























P2
Hamming Codes

A. Tujuan Instruksional
Mempelajari tentang hamming encoder dan hamming decoder.

B. Teori Percobaan
Hamming code merupakan linear block code berukuran (n, k) dengan vektor bit check
sepanjang q =(n k) 3. Besarnya nilai n = 2
q
1, sedangkan k =n q. Dengan demikian,
maka code rate (R
c
) adalah
R
c
=
k
n
=1
q
2
q
-1
.......................................... (1)
Dari persamaan (1), nilai R
c
1 bila q >> 1.
Tanpa melihat nilai 1, minimum distance untuk hamming code adalah selalu 3.
d
min
=3 ...................................... (2)
Dengan demikian, hamming code hanya dapat digunakan untuk koreksi satu atau dua
kesalahan. Banyak kesalahan yang dapat dikoreksi oleh sebuah kode adalah tergantung pada
nilai d
min
(koreksi kesalahan maksimum <d
min
).

C. Pelaksanaan Percobaan
C.1. Simulasi Sistem Komunikasi Sederhana dengan Noise
Pada percobaan pertama ini, praktikan akan membangun simulasi sistem komunikasi
sederhana dengan bantuan software Matlab 7.0. Sistem yang akan dibangun dapat dilihat
pada gambar berikut.

Gambar 1. Bagan Sistem Komunikasi Sederhana dengan Noise

Gambar 1 memperlihatkan bahwa data yang dikirim adalah data biner yang
dibangkitkan secara acak berdasarkan distribusi bernoulli. Data kemudian ditransmisikan
melalui Binary Symmetric Channel (BSC). BSC memungkinkan sistem ini digunakan untuk
pengujian kode error-control. Blok Error Rate Calculation akan membandingkan input dari
transmitter dengan yang diterima dari BSC. Perbandingan ini akan menghasilkan nilai error
rate. Keluaran dari blok ini akan ditampilkan oleh blok Display, yaitu error rate, banyaknya
error yang terjadi, dan jumlah perbandingan yang dilakukan oleh blok Error Rate
Calculation.
Untuk membangun sistem ini, praktikan dapat mengikuti langkah-langkah berikut:
1. Buka program Matlab 7.0.
2. Pilih File New Model.
3. Cari simbol (Simulink Library Browser) seperti pada Gambar 2 (dalam lingkaran merah).

Gambar 2. Simbol Simulink Library Browser
4. Pada Simulink Library Browser, carilah blok-blok berikut ini: Bernoulli Binary
Generator, Binary Symmetric Channel, Error Rate Calculation, dan Display.
5. Hubungkan blok-blok tersebut sesuai dengan Gambar 1.
6. Lakukan pengatur parameter untuk masing-masing blok (perhatikan Gambar 3, Gambar
4, Gambar 5, dan Gambar 6).

Gambar 3. Parameter Blok Bernoulli Binary Generator


Gambar 4. Parameter Blok BSC

Gambar 5. Parameter Blok Error Rate Calculation


Gambar 6. Parameter Blok Display
7. Lakukan pengaturan pada lamanya simulasi akan dilaksanakan. Perhatikan kembali
Gambar 2, pengaturan dilakukan pada lokasi yang ditandai dengan warna biru.
8. J alankan Simulasi.
9. Catat hasil simulasi seperti yang ditampilkan pada blok Display dan berikan penjelasan.

C.2. Simulasi Sistem Komunikasi Hamming Model
Percobaan berikut ini merupakan lanjutan dari sistem di atas. Pada percobaan ini,
akan dilakukan upaya deteksi dan koreksi terhadap kesalahan yang timbul selama transmisi
dengan menggunakan hamming code. Sistem yang akan dibangun dapat dilihat pada Gambar
7.

Gambar 7. Bagan Sistem Komunikasi Hamming Model
Sistem ini serupa dengan sistem yang sebelumnya, hanya dilakukan penambahan
kemampuan untuk deteksi dan koreksi kesalahan. Ini dilakukan dengan menambahkan blok
Hamming Encoder dan Hamming Decoder.
Lakukan urutan langkah-langkah berikut untuk membangun sistem komunikasi
Hamming Model di atas:
1. Buka kembali sistem yang telah dibuat pada percobaan C.1.
2. Sisipkan blok Hamming Encoder dan Hamming Decoder pada sistem.
3. Hubungan kedua blok tersebut dengan sistem yang ada.
4. Lakukan konfigurasi parameter untuk kedua blok ini (perhatikan Gambar 8 dan Gambar
9).

Gambar 8. Parameter Blok Hamming Encoder


Gambar 9. Parameter Blok Hamming Decoder
5. J alankan simulasi.
6. Catat hasil simulasi.

C.3. Simulasi Sistem Komunikasi Hamming Model dengan Grafik
Pada percobaan ini, praktikan akan mengamati secara langsung bagaimana hasil
koreksi yang dilakukan oleh sistem melalui grafik. Sistem yang akan dibangun dapat dilihat
pada Gambar 10. Sistem pada gambar tersebut merupakan pengembangan dari sistem pada
percobaan C.2. Pada sistem ini ditambahkan sejumlah blok baru sehingga pengamatan data
dapat dilakukan secara grafis.


Gambar 10. Simulasi Sistem Komunikasi Hamming Model dengan Grafik

Ikuti urutan-urutan langkah berikut untuk membangun sistem.
1. Buka kembali file simulasi percobaan C.2.
2. Tambahkan blok-blok berikut: unbuffer, relational operator, dan scope.
3. Hubungkan blok-blok baru ini ke sistem.
4. Lakukan konfigurasi parameter (perhatikan Gambar 11, Gambar 12, Gambar 13).
5. J alankan simulasi.
6. Perhatikan grafik hasil simulasi.

Gambar 11. Parameter Blok Relational Operator


Gambar 12. Parameter Blok Unbuffer dan Unbuffer1

Gambar 13. Parameter Blok Scope: J umlah Sumbu


Gambar 14. Parameter Blok Scope: Jumlah Data


Gambar 15. Parameter Blok Scope: Batas-Batas Sumbu

D. Tugas
1. Dengan menggunakan fungsi hammgen, bangkitkan kembali matriks G dan H dari
hamming model yang digunakan ini! Catat matriks G, H, panjang codeword dan
panjang message.
2. Berdasarkan matriks pada Tugas 1, konstruksikan tabel coset dari model ini!
3. Apabila data yang dikirimkan adalah "0110", hitunglah:
a. Code word dari data yang akan dikirim.
b. Misalkan yang diterima oleh receiver adalah data 1 0 1 1 0 1 1, lakukan error
correction sehingga diperoleh kembali data seperti yang dikirimkan.


E. Daftar Acuan
Help Matlab: Communications Toolbox, The Mathworks, 2004.

M. Y. Rhee, Error-Correcting Coding Theory, USA: McGraw-Hill, 1989, pp. 35-88.

T. K. Moon, Error Correction Coding: Mathematical Methods and Algorithms, Hoboken,
NJ : J ohn Wiley & Sons, 205, pp. 83-112.

Anda mungkin juga menyukai