• Tidak ada hasil yang ditemukan

Simulasi Kode Trellis Untuk Continuous Phase Frequency Shift Keying (CPFSK) 4 - ARY.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Simulasi Kode Trellis Untuk Continuous Phase Frequency Shift Keying (CPFSK) 4 - ARY."

Copied!
17
0
0

Teks penuh

(1)

SIMULASI KODE TRELLIS

UNTUK CONTINUOUS PHASE FREQUENCY SHIFT KEYING

(CPFSK) 4 - ARY

Tonny Richardo / 0222186

Jurusan Teknik Elektro, Fakultas Teknik, Universitas Kristen Maranatha Jl.Prof.Drg.Suria Sumantri 65, Bandung 40164, Indonesia

Email: sinuratz@yahoo.com

ABSTRAK

Continuous Phase Frequency Shift Keying (CPFSK) adalah sebuah skema

modulasi yang memiliki kemampuan menarik dengan selubung yang tetap dan memiliki karakteristik spektrum yang bagus untuk energi yang terkumpul, serta kanal dengan band yang terbatas.

Tugas Akhir ini membahas Minimum Shift Keying (MSK) yang merupakan

kasus khusus dari CPFSK, yang dikodekan oleh quarternary CPFSK. Simulasi MSK ini dibuat dengan indeks modulasi (h) = 1 dan simulasi lainnya bekerja dengan h = ½.

Rate ½ pada konvolusional enkoder dengan constraint length (K) = 3, K = 4,

dan K = 5 digunakan dalam simulasi pengkodean CPFSK. Gain pengkodean yang baik diperoleh dengan peningkatan kompleksitas pada penerima yang relatif rendah.

(2)

TRELLIS CODES SIMULATION

FOR 4 – ARY CONTINUOUS PHASE FREQUENCY SHIFT

KEYING (CPFSK)

Tonny Richardo / 0222186

Department of Electrical Engineering, Faculty of Technique, Maranatha Christian University

Jl.Prof.Drg.Suria Sumantri 65, Bandung 40164, Indonesia Email : sinuratz@yahoo.com

ABSTRACT

Continuous Phase Frequency Shift Keying (CPFSK) is a potentially attractive modulation scheme with constant envelope and good spectral characteristics for energy constrained and band-limited satellite channels.

This final project deals with Minimum Shift Keying (MSK) which is a special case of CPFSK, uncoded by quarternary CPFSK. MSK is simulated by making the modulation index (h) equal to one and all the others simulations are performed with h= ½.

A rate ½ convolutional encoder with constraint length (K) = 3, K = 4, and K = 5 are use in coded CPFSK simulations. Good coding gains are obtained with only slight increase in receiver complexity.

(3)

DAFTAR ISI

Halaman

LEMBAR PENGESAHAN

SURAT PERNYATAAN

ABSTRAK ... i

ABSTRACT ... ii

KATA PENGANTAR... iii

DAFTAR ISI... v

DAFTAR GAMBAR... viii

DAFTAR TABEL ... xi

BAB I PENDAHULUAN... 1

I.1 Latar Belakang ... 1

I.2 Identifikasi Masalah ... 1

I.3 Tujuan ... 2

I.4 Pembatasan Masalah ... 2

I.5 Sistematika Penulisan... 2

BAB II LANDASAN TEORI... 4

II.1 Elemen-elemen Sistem Komunikasi Digital ... 4

II.2 Kanal. . . . ... 6

II.2.1 Fading ... 6

II.2.2 Klasifikasi Kanal Fading... 6

II.2.3 Small-Scale Fading. . . . . . 7

II.3 Kode Konvolusional (Convolutional Code)... 8

II.4 Komponen Enkoder... 9

II.4.1 Constraint Length ... 9

II.4.2 Generator Polinomial ... 9

II.4.3 Feedback Connection Polinomial ... 10

(4)

II.6 Convolutional Encoding Data... 12

II.7 Viterbi Coding ... 15

II.8 Continuous Phase Frequency Shift Keying (CPFSK) ... 19

II.9 Kinerja error (Error Performance) ... . .21

BAB III PERANCANGAN SIMULASI... 22

III.1 Skema Pengkodean CPFSK ... 22

III.2 Demodulator CPFSK ... 21

BAB IV SIMULASI DAN ANALISA DATA ... 27

IV.1 Simulasi Convolutional Coding dengan Viterbi Decoding. . . 27

IV.1.1 Pembangkitan sinyal yang akan ditransmisikan . . . .27

IV.1.2 Convolutional Coding . . . 28

IV.1.3 Modulasi . . . .29

IV.1.4 Demodulasi . . . .29

IV.1.5 Decoding dengan menggunakan Viterbi Decoder . . . 30

IV.2 Simulasi Convolutional Coding dengan beberapa nilai Constraint Length . . . 31

BAB V KESIMPULAN DAN SARAN . ... .37

V.1 Kesimpulan ... 37

V.2 Saran ... 37

(5)

DAFTAR GAMBAR

Halaman

Gambar II.1 Elemen dasar sistem komunikasi digital ... 4

Gambar II.2 Convolutional Encoder ... 8

Gambar II.3 Enkoder Sistematik dengan feedback ... 10

Gambar II.4 Trellis Convolutional Encoder... 11

Gambar II.5 Convolutional Encoder (Rate = ½, K = 3)... 13

Gambar II.6 Diagram alir (a) Pembentukan kode konvolusi (b) Viterbi coding... 15

Gambar II.7 Diagram Trellis ... 16

Gambar II.8 Diagram Trellis saat encoding ... 17

Gambar II.9 State diagram input, output dan state transisi ... 17

Gambar II.10 Diagram Trellis saat encoding bit error... 18

Gambar II.11 Fasa Trellis untuk binary CPFSK ... 20

Gambar III.1 Block Diagram Transmitter. . . . . . 22

Gambar III.2 Block Diagram Receiver... 23

Gambar III.3 Demodulator CPFSK ... 24

Gambar IV.1 Simbol Biner Random. ... 28

Gambar IV.2 Simbol Biner setelah di encoding ... 28

Gambar IV.3 Hasil Modulasi ... 29

Gambar IV.4 Simbol Biner setelah Demodulasi... 30

Gambar IV.5 Simbol Hasil Decoding ... 31

Gambar IV.6 Contoh simulasi dengan constraint length = 3... 32

Gambar IV.7 Contoh simulasi dengan constraint length = 4 ... 33

Gambar IV.8 Contoh simulasi dengan constraint length = 5 ... 34

(6)

DAFTAR TABEL

Halaman

Tabel II.1 Tabel Kebenaran Gerbang XOR ... 12

Tabel II.2 Tabel State Transisi... 14

Tabel II.3 Tabel Output Konvolusional Enkoder (Rate = ½, K = 3) ... 14

Tabel III.1 Tabel Mapping Untuk Pengkodean 4 – CPFSK ... 23

Tabel III.2 Tabel Konstelasi Sinyal ... 25

Tabel III.3 Tabel Konstelasi Sinyal Pada Aplikasi Matlab... 26

Tabel IV.1 Rate ½ Kode Konvolusional ... 32

(7)

LAMPIRAN A

(8)

% Simulasi Convolutional Coding dengan Viterbi Decoding % Pembangkitan sinyal biner random

Fd = 1;

Fs = 4; % Frekuensi sampling N = Fs/Fd;

M = 4; k = log2(M);

numSymb = 100; % Jumlah simbol numPlot = 30; % Yang diplot codeRate = 1/2; % Code rate constlen = 7; % Constraint length SNRpBitDemo = 3;

SNR = SNRpBitDemo*k; seed = [654321 123456]; rand('state',seed(1)); randn('state',seed(2));

msg_orig=randsrc(numSymb,1,[0:1]); figure(1);

stem([0:numPlot-1],msg_orig(1:numPlot),'bx'); axis([0 numPlot -0.2 1.2]);

xlabel('Waktu'); ylabel('Amplituda');

title('Simbol Biner sebelum Convolutionl Encoding');

% Convolutional Encoding terhadap Sinyal Biner constlen = [7]; % Constraint length

codegen = [171 133]; % Generator polinomial tblen = 32; % Trace back length

codeRate = 1/2; % Code Rate

trel=poly2trellis(constlen,codegen); % Trellis [msg_enc_bi]=convenc(msg_orig,trel);

numEncPlot=numPlot./codeRate; tEnc=[0:numEncPlot-1]*codeRate; figure(2);

stem(tEnc,msg_enc_bi(1:length(tEnc)),'rx'); axis([min(tEnc) max(tEnc) -0.2 1.2]); xlabel('Waktu'); ylabel('Amplituda');

title('Simbol Biner setelah Convolutional Encoding');

% Modulasi terhadap simbol hasil Encoding

(9)

tMod=[0:numModPlot-1]./Fs.*k; figure(3);

plot(tMod,real(msg_tx(1:length(tMod))),'c-',tMod,imag(msg_tx(1:length(tMod))),'m-'); axis([min(tMod) max(tMod) -1.5 1.5]); xlabel('Waktu'); ylabel('Amplituda');

title('Simbol Hasil Encoding setelah modulasi Baseband'); legend(Keluaran CPFSK ,0);

axis([0 numPlot -0.2 1.2]);

xlabel('Waktu'); ylabel('Amplituda'); title('Simbol setelah Demodulasi');

% Deoding dengan Viterbi Decoder

msg_dec=vitdec(msg_demod_bi,trel,tblen,'cont','hard'); % Hard decision figure(5);

stem([0:numPlot-1],msg_orig(1:numPlot),'rx'); hold on;

stem([0:numPlot-1],msg_dec(1+tblen:numPlot+tblen),'bo'); hold off;

axis([0 numPlot -0.2 1.2]);

xlabel('Waktu'); ylabel('Amplituda'); title('Simbol Hasil Decoding');

(10)

% Program simulasi dengan constraint length (K) = 3 trellis=poly2trellis(3,[7 5]);

code=convenc(b,trellis); for l=1: length(code)

% data random sebagai AWGN dengan daya noise tertentu n=randn(1,2*N)./10^(EbpNo(i)/20)./sqrt(2);

r=code+n; % Data diterima

decoded=vitdec(r,trellis,tb,'trunc','hard'); % Viterbi Decoding

(11)

for k=1: length(decoded) if decoded(k)==0; decoded(k)=1; else

decoded(k)=-1; end

end

% Menghitung jumlah bit error

BER(i)=BER(i)+sum(abs(decoded-orig_bit))/2; end

BER(i)=BER(i)/5/N; % BER = Jmlh error rata2/jmlh bit yg dikirim end

semilogy(EbpNo,BER,'*'); hold on;

% Plot P(e) sebagai fungsi Eb/No secara teoritis

t=(0:0.5:10); % Nilai Eb/No yang ingin dihitung BER-nya Pe=0.5.*erfc(sqrt(10.^(t/10)));

semilogy(t,Pe,'r'); grid on;

title('BER terhadap Eb/No untuk Kanal AWGN dengan K = 3'); xlabel('EB/No (dB)');

ylabel('BER');

legend('Hasil simulasi BER','Nilai teoritis P(e) tanpa coding',0);

Untuk K = 3, 4, dan 5 dengan mengganti nilai K dan generator polinomial pada program sesuai dengan Tabel IV.1.

(12)

%Program perbandingan nilai BER dengan grafik clear;

close all; clc;

Eb_No=[2,2.5,3,3.5,4,4.5,5,5.5,6,6.5,7];

Pe_teoritis=10.^-3.*[37.506 29.655 22.878 17.173 12.501 8.7938... 5.9539 3.8622 2.3883 1.3998 0.77267];

Pe_tanpa_coding=10.^-3.*[37.566 29.773 22.771 17.168 12.534 8.773... 5.9574 3.8646 2.3798 1.391 0.7796];

BER_K_3=10.^-3.*[27.421 14.633 8.553 5.6837 3.7853 1.935 0.82... 0.5501 0.1096 0.0388 0.0108];

BER_K_4=10.^-3.*[21.301 13.26 7.5984 4.2548 2.2452 1.121 0.53... 0.2074 0.0764 0.0238 0.0084];

BER_K_5=10.^-3.*[20.651 12.511 7.1922 3.958 1.989 1.0234 0.4756... 0.1842 0.0694 0.02 0.0054];

figure;

plot(Eb_No,Pe_teoritis,'rx-',Eb_No,Pe_tanpa_coding,'bo-',Eb_No,BER_K_3,'k',... Eb_No,BER_K_4,'b',Eb_No,BER_K_5,'c');

grid;

legend('teoritis','tanpa coding','K_3','K_4','K_5');

(13)

BAB 1

PENDAHULUAN

I.1 Latar Belakang Masalah

Peningkatan kebutuhan pertukaran informasi merupakan karakteristik dari peradaban modern saat ini dan telah memasuki segala aspek kehidupan. Untuk itu diperlukan transfer informasi dari sumber menuju ke tujuan dengan berbagai macam mekanisme sehingga diperoleh kualitas bit-bit yang diterima sesuai dengan bit-bit terkirim. Pada sistem telekomunikasi, bit-bit terkirim akan mengalami berbagai gangguan pada saluran transmisi yang menyebabkan penurunan keandalan informasi. Oleh karena itu diperlukan cara untuk menyelesaikan masalah tersebut antara lain dengan peningkatan daya signal terkirim sehingga diperoleh signal to noise ratio (SNR) yang tinggi atau dapat pula dilakukan suatu proses pengkodean informasi sehingga kesalahan yang muncul dapat dikoreksi.

Proses pengkodean informasi dapat dilakukan dengan bermacam-macam jalan dengan memperhitungkan berbagai hal antara lain struktur data, tipe informasi yang akan dikirimkan, rate data yang diperlukan, pembatasan daya dan bandwidth, jenis aplikasi yang disediakan serta efisiensi yang diperlukan. Dari teori koreksi kesalahan terdapat banyak kode yang bisa digunakan, akan tetapi pada aplikasi yang membutuhkan kemampuan koreksi kesalahan tinggi biasanya diperlukan pengkodean dengan

codeword panjang menyebabkan struktur encoding/decoding yang kompleks.

Solusinya adalah dengan channel coding yang menggunakan kode-kode terangkai sehingga diperoleh kesalahan bit yang rendah dengan tingkat kompleksitas decoder yang rendah. Kode Trellis merupakan salah satu channel coding yang dapat digunakan untuk memperbaiki kesalahan bit-bit yang diterima, pada saat terjadi proses transmisi sinyal informasi.

I.2 Identifikasi Masalah

Bagaimana kode Trellis dapat digunakan untuk mendekodekan sinyal yang diterima yang telah dikodekan dengan Continuous Phase Frequency Shift Keying (CPFSK) 4-ary ?

(14)

2

I.3 Tujuan

Untuk menganalisa hasil pendekodean dengan metode Trellis terhadap sinyal yang diterima yang telah dikodekan dengan Continuous Phase Frequency Shift Keying (CPFSK) 4-ary.

I.4 Pembatasan Masalah

1. Sinyal dimodulasikan dengan Continuous Phase Frequency Shift Keying (CPFSK) 4-ary.

2. Menggunakan kode Trellis 3. Indeks modulasi h = ½

4. Kriteria penilaian untuk perbandingan adalah jarak Euclidean bebas maksimum untuk rate tertentu dan jumlah state dari kode signal space.

I.5 Sistematika Penulisan

Tugas Akhir ini terbagi menjadi lima bab utama. Untuk memperjelas penulisan laporan ini, akan diterangkan secara singkat sistematika beserta uraian dar masng-masing bab, yaitu :

1. BAB I : PENDAHULUAN

Bab ini berisi tentang latar belakang penulisan laporan Tugas Akhir, identifikasi masalah, tujuan penyusunan laporan Tugas Akhir, pembatasan masalah, dan sistematika penulisan.

2. BAB II : LANDASAN TEORI

Bab ini menjelaskan tentang teori mengenai Trellis Code dan Continuous Phase

Frequency Shift Keying (CPFSK) .

3. BAB III : PERANCANGAN SIMULASI

Bab ini berisi tentang prinsip kerja pengkodean sinyal dengan Continuous Phase

Frequency Shift Keying (CPFSK) 4-ary dan pendekodean sinyal menggunakan

(15)

3

4. BAB IV : SIMULASI DAN ANALISA DATA

Bab ini berisi tentang hasil simulasi Continuous Phase Frequency Shift Keying (CPFSK) 4-ary dan kode Trellis beserta analisanya.

5. BAB V : KESIMPULAN DAN SARAN

Bab ini berisi tentang kesimpulan akhir dan saran mengenai hasil perancangan

(16)

BAB V

KESIMPULAN DAN SARAN

V.1 Kesimpulan

1. Pada percobaan pengkodean menggunakan Continuous Phase Frequency Shift

Keying (CPFSK) dengan constraint length (K) yang berbeda-beda, yaitu K = 3,

K = 4, dan K = 5 diperoleh error yang berbeda-beda.

2. Dari hasil simulasi BER, semakin besar nilai constraint length yang digunakan maka terjadi perbaikan nilai dan slope yang lebih curam, namun waktu pemrosesan yang diperlukan semakin lama.

3. Nilai BER minimum pada simulasi tanpa coding dicapai pada level 6,5 ~ 7 dB. Sedangkan simulasi menggunakan coding level dapat diturunkan menjadi sekitar 4,5 dB. Hal ini berarti diperoleh coding gain sebesar 2 ~ 2,5 dB.

V.2 Saran

Mengganti code rate untuk membuktikan apakah code rate ½ adalah code rate yang paling baik untuk convolutional encoder.

(17)

DAFTAR PUSTAKA

1. Couch, Leon W., ”Digital And Analog Communications Systems”, pp.533-550, Maomillan, New York, 1987.

2. Naraghia, Morteza-Pour, “Trellis Codes For 4-ary Continuous Phase Frequency Shift Keying”, IEEE Transactions On Communications,

Vol.41, No.11, November 1993.

3. Pizzi, Steven, V., dan Wilson, Stephen, G., ”Convolutional Coding Combined With Continuous Phase Modulation”, IEEE Trans Commun, Vol.

COM-33, pp.20-29, January 1985

4. Proakis, John G., “Digital Communications”, New York : Mc. Graw-Hill, 1989 5. T. Aulin dan C.E. Sunber, “Continuous Phase Modulation-Part I : Full

Response Signaling,” IEEE Trans Commun., Vol.COM-209, pp.196-209,

March 1981.

6. T. Aulin, N. Rydbeck, dan C.E. Sunberg, “Continuous Phase Modulation-Part II : Partial Response Signaling,” IEEE Trans Commun., Vol.COM-29,

pp.210-225, March 1981.

7. http://en.wikipedia.org/wiki/Viterbi_algorithm, 04 Agustus 2007.

Referensi

Dokumen terkait

Peningkatan penggunaan kenderaan bermotor boleh menyebabkan berlakunya kesesakan yang menyumbangkan kepada peningkatan kadar kemalangan, percemaran udara, bunyi bising

Adapun hasil perhitungan yang sudah dilakukan dengan menggunakan metode ELECTRE dapat dijadikan sebagai rekomendasi untuk digunakan pihak perusahaan yang bergerak

Dari hasil pengolahan data dengan menggunakan Software SPSS for Windows 10.0 diperolah informasi bahwa besarnya korelasi antara Social Comparison dengan Body Image Satisfaction

Saat ini telah telah dilakukan usaha budidaya ikan bubara di Balai Budidaya Laut (BBL) Ambon dalam program pengembangan budidaya air laut, mulai dari

[r]

Hal ini sesuai dengan hasil penelitian yang dilakukan oleh Faisal (2004) dan Indahningrum & Handayani (2009) yang mengatakan bahwa terdapat pengaruh positif yang

Ditinjau dari segi perawatan sebelumnya, definisi yang lebih lengkap dari RCM adalah suatu proses yang digunakan untuk menentukan apa yang harus dilakukan untuk menjamin agar

sehingga arus yang mempunyai frekuensi sama dengan frekuensi resonansi akan. dibelokkan