• Tidak ada hasil yang ditemukan

Error Corecting Code Menggunakan Kode Low Density Parity Check (LDPC).

N/A
N/A
Protected

Academic year: 2017

Membagikan "Error Corecting Code Menggunakan Kode Low Density Parity Check (LDPC)."

Copied!
23
0
0

Teks penuh

(1)

i

Universitas Kristen Maranatha

Error Correcting Code Menggunakan

Kode Low Density Parity Check (LDPC)

Kristy Purba (0722012)

Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha Jalan Prof. Drg. Suria Sumantri 65

Bandung 40164, Indonesia E-mail : kristypurba@gmail.com

ABSTRAK

Kebutuhan akan adanya komunikasi yang semakin meningkat menuntut berkembangnya kemampuan teknologi pengiriman data yang dapat diandalkan. Dalam bidang telekomunikasi, data atau pesan yang dikirim sering mengalami gangguan atau noise. Sehingga pada sisi penerima, pesan yang didapat tidak dapat merepresentasikan pesan yang sesungguhnya hendak disampaikan.

Dalam Tugas Akhir ini, secara umum dilakukan simulasi proses error

correction yang bertujuan untuk meningkatkan keandalan data yang diterima.

Cara untuk melakukan error correction adalah dengan melakukan pengodean pada data. Pada Tugas Akhir ini, kode yang digunakan adalah kode Low Density

Parity Check (LDPC) dengan algoritma error correction menggunakan algoritma Sum-Product.

Dari hasil simulasi didapatkan bahwa blok kode semakin panjang maka performansi LDPC akan semakin baik namun waktu yang dibutuhkan untuk melakukan proses decoding semakin lama, terutama pada panjang kode 1600 yang mana membutuhkan waktu yang cukup besar dibandingkan dengan panjang kode 800, 400, dan 200. Selain itu simulasi menunjukkan apabila jumlah iterasi pada proses error correction ditambah maka akan didapatkan performansi yang lebih baik, namun waktu proses juga bertambah. Dari hasil simulasi diperoleh bahwa jumlah iterasi yang cukup baik dari segi waktu dan performansi adalah sebanyak 10 kali.

(2)

ii

Universitas Kristen Maranatha

Error Correcting Code Using

Low Density Parity Check (LDPC) Code

Kristy Purba (0722012)

Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha Jalan Prof. Drg. Suria Sumantri 65

Bandung 40164, Indonesia E-mail : kristypurba@gmail.com

ABSTRACT

Demand of communication that growing higher prosecute development of data transmission technology that can be reliable. In telecommunications field, datas or messages sent frequently get interference or noise. Because of that, at the receiver, the given messages can't represent the real messages that would be delivered.

This final project, in generally is performed simulation of error correction process that aims to increase the reliability of data received. The way to perform error correction is by doing coding on data. In this final project, the code used is the Low Density Parity Check (LDPC) code with error correction algorithm using the Sum-Product algorithm.

From the simulation result using the Sum-Product algorithm showed that the longer block codes will get the better LDPC performance but the time needed to perform the decoding process is longer, especially on the code length 1600 which requires long enough time compared to the code length 800, 400, and 200. Moreover, simulation show if the number of iterations on the error correction is added it will get better performance, but the time process is increased too. From the simulation found that the number of iterations are good enough in terms of time and performance is 10 times.

(3)

v

Universitas Kristen Maranatha

DAFTAR ISI

ABSTRAK ... i

ABSTRACT ... ii

KATA PENGANTAR ... iii

DAFTAR ISI ... v

DAFTAR GAMBAR ... viii

DAFTAR TABEL ... xi

BAB I PENDAHULUAN 1.1Latar Belakang Masalah ... 1

1.2Identifikasi Masalah ... 2

1.3Perumusan Masalah ... 2

1.4Tujuan ... 2

1.5Pembatasan Masalah ... 2

1.6Sistematika Penulisan ... 3

BAB II LANDASAN TEORI 2.1Komunikasi Digital ... 4

2.2Teorema Shannon ... 5

2.3Error Correction ... 5

2.4Kode Hamming ... 6

(4)

vi

Universitas Kristen Maranatha

2.4.2 Kode Single-Error-Correcting ... 7

2.5Minimum Distance pada Kode Blok ... 9

2.6Kode Low Lensity Parity Check ... 10

2.7Reprensentasi Kode LDPC ... 11

2.8Proses Encoding LDPC ... 13

2.9Algoritma Message-Passing ... 15

2.9.1 Message-Passing pada Binary Erasure Channel (BEC) ... 15

2.9.2 Algoritma Bit Flipping ... 20

2.9.3 Algoritma Sum-Product ... 24

2.9.3.1.Tahap Inisialisasi ... 25

2.9.3.2.Komputasi Pesan ... 25

2.9.3.2.1 Horizontal Step... 25

2.9.3.2.2 Vertical Step ... 26

2.9.3.3.Soft Decision ... 26

2.10 Modulasi BPSK ... 31

BAB III PERANCANGAN SISTEM 3.1Membangkitkan Matrik Parity Check ... 34

3.2Membangun Matrik Generator ... 36

3.3Error Correction dengan Algoritma Sum-Product ... 38

(5)

vii

Universitas Kristen Maranatha

4.2 Analisis kode LDPC dengan jumlah iterasi yang berbeda ... 41

4.3 Analisis BER untuk data yang dikodekan dengan LDPC dan dengan panjang

kode yang berbeda ... 46

BAB V KESIMPULAN DAN SARAN

5.1 Kesimpulan ... 48

5.2 Saran ... 49

DAFTAR PUSTAKA ... 50

(6)

viii

Universitas Kristen Maranatha

DAFTAR GAMBAR

Gambar 2.1 Sistem Komunikasi Digital ... 4

Gambar 2.2 Matrik Parity-Check regular ... 10

Gambar 2.3 Matrik Parity-Check Irregular ... 10

Gambar 2.4 (a) Matriks Parity Check (b) Grafik Tanner Kode LDPC ... 11

Gambar 2.5 Matriuk Parity-Check menggunakan metode Gallager ... 12

Gambar 2.6 Matrik Parity-Check menggunakan metode Mackay dan Neal ... 13

Gambar 2.7 (a) Matrik LDPC dengan wc = 2, wr = 3 (b) Grafik Tanner dari Matrik LDPC dengan wc = 2, wr = 3 ... 16

Gambar 2.8 Node bit mengirimkan pesan Mi kepada node cek untuk dilakukan proses pengecekan ... 17

Gambar 2.9 Proses Node cek mengirimkan pesan kepada node bit yang menyebabkan node bit ke-4 dan 5 mengalami perubahan nilai ... 18

Gambar 2.10 Tahap iterasi kedua node cek mengirimkan pesan kepada node bit sehingga menyebabkan node bit ke-6 mengalami perubahan nilai ... 19

Gambar 2.11 Node bit mengirimkan pesan kepada node cek untuk dilakukan proses pengecekan ... 21

Gambar 2.12 (a) Node cek mengirimkan pesan kepada node bit ke-1 dan 2 sehingga akan terjadi perubahan nilai terhadap node bit yang mengalami error (b) Nilai node bit yang sudah terupdate ... 23

Gambar 2.13 Proses alir pesan dari node bit ke node cek dan dari node cek ke node bit... ... 24

(7)

ix

Universitas Kristen Maranatha

Gambar 2.15 Aliran pesan pada Grafik Tanner untuk mencari nilai r17(0) ... 29

Gambar 2.16 Aliran pesan pada Grafik Tanner untuk mencari nilai q36(1) ... 30

Gambar 3.1 Blok Diagram dari tahapan Error Correction menggunakan kode LDPC... 33

Gambar 3.2 Diagram alir Error Correction menggunakan LDPC ... 34

Gambar 3.3 Diagram alir membangun matrik H ... 35

Gambar 3.4 Short Cycle pada grafik Tanner ... 36

Gambar 3.5 Diagram alir pembentukan matrik Generator... 37

Gambar 3.6 Letak bit parity dan bit message pada codeword ... 37

Gambar 3.7 Diagram alir proses error correction menggunakan algoritma Sum-Product.... ... 38

Gambar 4.1 Kurva BER terhadap SNR antara yang terkode (dengan jumlah iterasi yang berbeda) dan yang tidak dengan data sebanyak 105 bit ... 40

Gambar 4.2 Hasil Pengodean (200,100) LDPC dengan jumlah iterasi yang berbeda dan data sebanyak 106 bit ... 41

Gambar 4.3 Hasil Pengodean (400,200) LDPC dengan jumlah iterasi yang berbeda dan data sebanyak 106 bit ... 42

Gambar 4.4 Hasil Pengodean (400,200) LDPC dengan jumlah iterasi yang berbeda dan data sebanyak 105 bit ... 43

Gambar 4.5 Hasil Pengodean (200,100) LDPC dengan jumlah iterasi yang berbeda dan data sebanyak 105 bit ... 44

(8)

x

Universitas Kristen Maranatha

Gambar 4.7 Kurva BER terhadap SNR antara LDPC yang memiliki panjang blok

kode yang berbeda... 46

(9)

xi

Universitas Kristen Maranatha

DAFTAR TABEL

Tabel 2.1 Single-Error-Correcting Kode Hamming ... 8

(10)

LAMPIRAN A

(11)

A-1 LAMPIRAN A

Listing Program Utama

clc; clear all

% Insialisasi Masukan %

% --- %

blocklength=200; %Panjang kode

bit_message=100; %Jumlah bit message

wc=3;%weight of column

Iterasi=15; No=1;%Rapat spektral daya satu sisi dari noise

var=No/2; %Variansi dari noise

% Membangkitkan bit message %

% --- %

for z=1:100

message=round(rand(bit_message,1)); message_temp(z,:)=message';

Codeword=LDPCencode(G,NewCol,message);

%Modulasi codeword%

dataout_uncode=BPSK(message); %Data yang tidak dikodekan

dataout=BPSK(Codeword);

DATA_uncode(z,:)=dataout_uncode; DATA(z,:)=dataout;

Received_uncode=awgn(DATA_uncode(k,:),SNR(i),'measured'); Received=awgn(DATA(k,:),SNR(i),'measured');

(12)

A-2 [num rate]=biterr(RxMessage,message_temp(k,:));

err_un=err_un+num_un; err=err+num;

end

%Menghitung BER

BER_Uncode(i)=err_un/(nummessagebits*k) BER(i)=err/(nummessagebits*z)

end

Fungsi MembuatH

function [H,Rj,Ci]=MembuatH(blocklength,bit_message,wc);

%Fungsi untuk membangun matrik H dengan input : %Blocklength : Panjang data

%bit_message : Jumlah bit message %wc :weight of column

%menjamin agar tidak terjadi 4 cycle

(13)

A-3

Rj=counter %menunjukan letak bit 1 pada baris matrik H

Ci=colcounter %menunjukan letak bit 1 pada kolom matrik H

Fungsi MembuatG

%Masukan matrik Identitas

(14)
(15)

A-5

%Fungsi untuk mendapatkan nilai codeword dengan input : %G : matrik Generator

%NewCol : Posisi kolom yang baru pada matrik H akibat dari operasi Gauss-Jordan

%bit_message : bit pesan

CodewordTemp=BinaryMultiply(G,bit_message); %Codeword

rows=length(NewCol);

%Peletakan posisi bit berdasarkan nilai NewCol

for i=rows:-1:1

%Fungsi untuk melakukan algoritma decoding the Sum-Product

(16)
(17)

A-7

val=sum(BinaryMultiply(H,transpose(CodeEst))); if(val==0 && sum(CodeEst)~=0)

(18)

1 Universitas Kristen Maranatha

BAB I

PENDAHULUAN

1.1 Latar Belakang Masalah

Pada saat ini telekomunikasi merupakan salah satu bagian yang sangat

penting. Melalui komunikasi segala macam informasi dapat dikirim atau

dibagikan terhadap orang lain. Dengan semakin berkembangnya zaman maka

kebutuhan akan perkembangan teknologi komunikasi juga semakin meningkat.

Dalam sistem komunikasi proses pengiriman dan penerimaan data menjadi

salah satu hal yang amat dipertimbangkan proses perencanaannya. Tidak dapat

dipungkiri pada komunikasi jarak jauh banyak sekali kendala-kendala yang

didapati ketika hendak melakukan pengiriman data. Satu yang menjadi kendala

utama adalah mengenai noise. Noise atau yang biasa disebut derau merupakan

suatu sinyal gangguan bersifat acak yang hadir dalam suatu sistem dan merupakan

sinyal yang tidak diinginkan.

Pada transmisi data semakin jauh jarak antara pengirim dan penerima

maka noise yang mengganggu akan semakin banyak. Hal ini dapat menyebabkan

data yang hendak dikirim akan rusak atau cacat sehingga tidak dapat digunakan

oleh penerima. Ada beberapa solusi untuk menyelesaikan permasalahan ini yaitu

menggunakan media yang lebih baik, membangun stasiun perantara antara

pengirim dan penerima data. Salah satu solusi lain adalah dengan mencoba

memperbaiki data yang telah rusak akibat noise. Solusi ini merupakan suatu

sistem yang mampu mengenali kerusakan data sampai pada batasan tertentu dan

memperbaikinya sehingga data menjadi benar kembali. Keuntungan dari solusi ini

adalah dengan kondisi infrastruktur dan sistem pengiriman data yang sudah ada,

data yang seharusnya tidak dapat terpakai lagi masih dapat digunakan tanpa perlu

menambah infrastruktur yang baru atau yang mahal.

Ada beberapa jenis pengodean ketika hendak melakukan proses error

(19)

BAB I PENDAHULUAN 2

Universitas Kristen Maranatha

(LDPC). Kode ini pertama kali diperkenalkan oleh Gallager. Ketika pertama kali

ditemukan kode ini dianggap tidak praktis akibat keterbatasan kemampuan

komputasi pada saat itu, sehingga kode ini sempat tidak digunakan selama

beberapa puluh tahun. Saat ini ketika performa komputer sudah semakin

berkembang pesat maka kode ini mulai diperkenalkan kembali sebagai salah satu

kode yang cukup baik dengan hasil yang mendekati Shannon Limit.

1.2 Identifikasi Masalah

Berdasarkan latar belakang di atas, masalah utama yang akan diangkat

pada tugas akhir ini adalah dapat melakukan proses error correction pada suatu

sinyal informasi yang telah mengalami kerusakan data akibat noise.

1.3 Perumusan Masalah

Permasalahan yang akan dibahas dalam Tugas Akhir ini meliputi :

1. Bagaimana mensimulasikan proses error correction menggunakan kode

LDPC pada suatu sinyal yang terkena noise ?

2. Bagaimana kinerja dari kode LDPC ?

1.4 Tujuan

Tujuan yang ingin dicapai oleh mahasiswa pada Tugas Akhir ini adalah :

1. Melakukan simulasi proses error correction menggunakan teknik

pengodean LDPC.

2. Menganalisa kinerja sistem pengodean LDPC dalam melakukan koreksi

kesalahan.

1.5 Pembatasan Masalah

1. Model kanal yang digunakan adalah kanal Additive White Gaussian Noise

(AWGN).

(20)

BAB I PENDAHULUAN 3

Universitas Kristen Maranatha

3. Algoritma error correction yang digunakan menggunakan algoritma

Sum-Product.

4. Parameter kinerja sistem yang dianalisis adalah Bit Error Rate (BER).

5. Jenis matrik Parity Check LDPC yang digunakan adalah matrik irregular.

6. Simulasi dilakukan dengan menggunakan software MATLAB.

1.6 Sistematika Penulisan

Penyusunan laporan Tugas Akhir ini terdiri dari lima bab sebagai berikut:

 BAB I. Pendahuluan

Pada bab ini akan dibahas mengenai Latar Belakang Masalah, Perumusan

Masalah, Identifikasi Masalah, Tujuan, Pembatasan Masalah, dan

Sistematika Penulisan.

 BAB II. Landasan Teori

Pada bab ini akan dibahas teori-teori pendukung untuk membangun kode

LDPC beserta gambaran secara umum kode LDPC dapat memperbaiki

kesalahan.

 BAB III. Perancangan Sistem

Pada bab ini dijelaskan cara kerja dari sistem kode LDPC melakukan

pengoreksian error.

 BAB IV. Data Pengamatan

Pada bab ini berisi tentang hasil pengamatan terhadap bit-bit data yang

telah terkena noise dan dibandingkan hasilnya antara bit yang telah

mengalami pengodean dengan yang tidak serta pengaruh Iterasi dan

panjang Blok kode terhadap performansi dari LDPC.

 BAB V. Kesimpulan dan Saran

Pada bab ini berisi kesimpulan dari Tugas Akhir dan saran-saran yang

perlu dilakukan untuk pengembangan mengenai LDPC di masa

(21)

48 Universitas Kristen Maranatha

BAB V

KESIMPULAN DAN SARAN

Pada bab ini akan disampaikan kesimpulan dari hasil analisis dan saran

yang berkaitan dengan topik Tugas Akhir ini.

5.1. Kesimpulan

Dari hasil simulasi, Pengodean menggunakan LDPC (dengan algoritma

Sum-Product) memiliki kinerja sebagai berikut :

 Dengan panjang kode yang semakin besar maka performansi yang didapatkan juga semakin baik. Namun antara panjang kode 1600,

800, dan 400 tidak memiliki perbedaan performansi yang begitu

besar, hal ini terlihat pada hasil analisa yang terdapat pada bab

sebelumnya. Selain itu waktu yang dibutuhkan seiring dengan

peningkatan panjang kode juga semakin bertambah. Terutama pada

panjang kode 1600 terjadi peningkatan waktu yang cukup besar

dibandingkan dengan panjang kode 800, 400, dan 200. Sehingga

pemilihan panjang kode harus dipilih sesuai dengan kebutuhan

komunikasi yang hendak dilakukan. Misalkan komunikasi yang

dilakukan membutuhkan keakuratan data dan waktu yang tidak

begitu besar maka panjang data 800 atau 400 merupakan pilihan

yang baik karena waktu yang diperlukan untuk melakukan proses

pendekodean tidak sebanyak panjang kode 1600 namun performansi

yang didapatkan tidak begitu berbeda.

 Jumlah iterasi semakin bertambah maka performansi juga semakin baik namun waktu yang dibutuhkan untuk pendekodean data juga

semakin banyak terutama ketika melakukan pendekodean dengan bit

data sebanyak 106 bit yang mana terjadi peningkatan waktu yang

besar seiring dengan penambahan jumlah iterasi. Simulasi juga

(22)

BAB V KESIMPULAN DAN SARAN 49

Universitas Kristen Maranatha

yang signifikan terhadap performansi dengan iterasi 10 kali.

Sehingga iterasi yang cukup baik dari segi waktu dan performansi

adalah sebanyak 10 kali.

5.2. Saran

 Membandingkan kinerja dari LDPC dengan menggunakan matrik

Parity Check yang regular dan irregular.

Melakukan analisis performansi LDPC dengan algoritma error

correction yang berbeda seperti bit flipping.

(23)

50 Universitas Kristen Maranatha

DAFTAR PUSTAKA

1. Dechene, Dan and Peets, Kevin. Simulated Performance of Low Density

Parity Check Codes, Lakehead University-Faculty of Engineering,2006.

2. Gallager, R.G. 1963. Low-Density Parity-Check Codes.

3. Johnson, Sarah. J. Introducing Low-Density Parity-Check Codes.

4. Kien Nguyen, Chi.Low-Density Parity-Check Codes Construction and

Performance Evaluation,School of Electrical Engineering and

Telecommunications, The University of New South Wales,Australia,August

2002.

5. Mackay, D.J.C. and R.M. Neal.Near Shannon limit performance of low

density parity check codes, ELECTRONICS LETTERS 29th August 1996

Vol.32 No.18.

6. Moura, José M.F., Jin Lu, and Haotian Zhang. Structured Low-Density

Parity-Check Codes, IEEE SIGNAL PROCESSING MAGAZINE, January 2004.

7. OHTSUKI, Tomoaki.LDPC Codes in Communications and Broadcasting,

IEICE TRANS.COMMUN.,VOL.E90-B,NO.3 MARCH 2007.

8. Wicker, B. Stephen. Error Control Systems for Digital Communication and

Storage, Prentice-Hall,Inc, 1995.

9. William E.R., 2003, An Introduction to LDPC Codes, Tuczon, The University

of Arizona.

Referensi

Dokumen terkait

Benang sintetik yang dapat diabsorbsi yang paling banyak digunakan adalah polygarin 910 (Vicryl) yang dapat menahan luka kira-kira 65% dari kekuatan pertamanya setelah 14 hari

Bila dilihat bahwa baik kadar vitamin A dalam darah maupun lama diare tidak berbeda bermakna antara kelompok kasus dan kontrol, maka dapat dianggap bahwa suplementasi vitamin A

Yang bertanda tangan di bawah ini, saya, M.Lutfi Afifi, menyatakan bahwa skripsi dengan judul : ANALISIS PENGARUH KEADILAN ORGANISASIONAL DAN KOMITMEN

Berdasarkan hasil penelitian yang telah dilakukan, dapat diambil kesimpulan bahwa terdapat hubungan positif yang signifikan antara persepsi terhadap fungsi

Dengan demikian, apabila dihubungkan dengan organ tubuh manusia, penulis berpendapat, oleh karena organ tubuh manusia merupakan sesuatu yang berbentuk benda tetapi

Menurut Hermawan Kartajaya, Produk adalah segala sesuatu yang dapat ditawarkan kepada pasar untuk mendapatkan perhatian, dimiliki, digunakan atau dikonsumsi,

Terkait dengan hal ini, bentuk evaluasi metode pembiasaan dalam pendidikan agama Islam untuk pembentukan nilai-nilai karakter siswa di Madrasah Tsanawiyah Negeri Kota

Generally, this publication entitled Exam Ref 70-339 Managing Microsoft SharePoint Server 2016 By Troy Lanphier is reviewed considering that you actually such as this kind of e-