31
3.2 Asumsi-asumsi yang Digunakan
1. Modulasi yang digunakan modulasi BPSK dan QPSK 2. Pengkodean menggunakan Alamouti code
3. Noise yang digunakan adalah AWGN, yaitu noise yang terdapat pada semua spektrum frekuensi dan merupakan noise thermal yang sifatnya
menjumlah.
3.3 Parameter Kinerja Sistem
Parameter lainnya sistem yang akan dilibatkan dalam simulasi mencekup: a. Jumlah bit per simbol
b. Rentang E
b
N yang dipakai
c. Channel order d. Perioda Bit
e. Bit pilot
3.4 Pembangkitan Bilangan Acak
Pembangkitan bilangan acak digunakan untuk menghasilkan deretan angka- angka sebagai hasil perhitungan, yang diketahui distribusinya sehingga angka-angka
tersebut muncul secara acak.
3.4.1 Pembangkita Bilangan Acak Dengan Distribusi Uniform
Distribusi ini memiliki kepadatan probabilitas yang sama untuk semua besaran yang diambil yang terletak antara 0 dan 1. Fungsi kepadatan probabilitas
dinyatakan dengan persamaan[9]:
32
b x
a a
b x
f ≤
≤ −
= ,
1
Dan fungsi distribusi kumulatif dinyatakan dengan persamaan[9]:
b x
a a
b a
x x
F ≤
≤ −
− =
,
Dengan nilai: Rata-rata mean =
2 a
b +
Variansi =
12 2
a b
−
Salah satu cara untuk membangkitkan bilangan acak dengan distribusi Uniform adalah dengan menggunakan metode Linear Coongruent Method LCM.
Linear Coongruent Method LCM sangat banyak dipakai untuk membangkitkan bilangan acak r
1
, r
2,
...,r
n
yang bernilai [0,m] dengan memanfaatkan nilai sebelumnya, untuk membangkitkan bilangan acak ke n+1 r
n
+1 dengan LCM didefenisikan sebagai[9]:
m c
n ar
n r
mod 1
+ =
+ m
n r
n U
= Dimana: a, c, da, m adalah nilai pembangkitan dan r..adalah bilangan acak ke –n
Ui adalah bilangan acak dalam bilangan interval [0,1] Agar didapat bilangan yang lebih acak periode bilangan acaknya besar perlu
diperhatikan syarat-syarat sebagai berikut: a. Konstanta a harus lebih besar dari m. Biasanya dinyatakan dengan syarat:
m a
m m
atau m
m a
m +
− 100
100
b. Untuk konstanta c harus berangka ganjil, apabila m bernilai pangkat dua.
33 c. Untuk modulo m harus bilangan prima atau bilangan tak terbagikan.
d. Untuk pertama r..harus merupakan angka integer dan juga ganjil dan cukup besar.
3.4.2 Pembangkitan Bilangan Acak Dengan Distribusi Rayleigh
Pada kanal komunikasi bergerak, distribusi Rayleigh umumnya digunakan untuk menjelaskan kondisi lingkungan yang berubah terhadap waktu secara statistik
yang menyebabkan terjadinya fading pada sisi penerima. Distribusi Rayleigh dengan parameter skala b memiliki fungsi kerapatan probabilitas sesuai dengan
persamaan[9]:
, 2
2 2
exp 2
− =
b x
b x
b x
x f
Sedangkan fungsi distribusi kumulatifnya diberikan oleh persaman[9]:
, 2
2 2
exp 1
− −
= b
x b
x x
F
Rata-rata dan variansi dari distribusi rayleigh diberikan oleh persamaan Rata-rata =
b b
2533 ,
1 2
= π
Variansi = 2
4292 ,
2 2
2 b
b =
−π
Bilangan acak berdistribusi rayleigh dapat dibangkitkan dengan invers transformasi.
Untuk setiap nilai yang diberikan, bangkitkan U dengan distribusi uniform 0,1. Kemudian set[9]
ln 2
U b
x −
=
34 X merupakan bilangan acak dengan distribusi rayleigh dengan parameter b.
3.4.3 Pembangkitan Bilangan Acak Dengan Distribusi Normal
Distribusi ini memiliki kepadatan propabilitas yang simetris dan berbentuk seperti lonceng, dan fungsi kepadatannya dinyatakan dengan[9].
2 2
1 exp
2 1
−
− =
σ µ
π σ
x x
f Dimana :
µ = rata-rata x σ = standar deviasi
x = nilai data π = 3,14
Persamaan di atas merupakan fungsi kerapatan probilitas untuk distribusi standart normal. Proses pembangkitan ini mula-mula membangkitkan sebuah variabel Z
dengan persamaan[9]: Dimana Ui dan U2 adalah bilangan acak antara 0 sampai 1 yang berdistribusi
Uniform. Nilai distribusi normal, X didapat dari persamaan.
3.5 Algoritma Sistem Diversitas Alamouti
3.5.1 Algoritma Sistem Diversitas Alamouti Menggunakan Estiamsi Kanal LMS
Algoritma untuk simulasi sistem diversitas Alamouti menggunakan teknik estimasi kanal LMS dapat dilihat pada Gambar 3.3.
35 Gambar 3.3 Algoritma Simulasi Menggunakan Teknik Estimasi Kanal LMS
3.5.2 Algoritma Sistem Diversitas Alamouti Tanpa Estimasi Kanal
Algoritma untuk simulasi sistem diversitas Alamouti menggunakan teknik estimasi kanal LMS dapat dilihat pada Gambar 3.4.
Penentuan Parameter Awal bit, bitpilot, rentang EbN0 Channel
order, perioda bit Proses Modulasi
START
Proses Alamouti Code Pembangkitan Kanal ayleigh
Fading Pembangkitan Noise
Pembangkitan Channel Estimator
Perhitungan banyak bit error
Combining Maximum Likelihood Detector
Perhitungan BER per EbN0
FINISH Semua EbN0 selesai?
belum
sudah
36
Gambar 3.4 Algoritma Simulasi tanpa Teknik Estimasi Kanal
3.6 Tahapan Simulasi
Adapun tahapan simulasi dapat dilakukan dengan beberapa cara, antara lain sebagai berikut:
Penentuan Parameter Awal bit, rentang EbN0
Proses Modulasi START
Proses Alamouti Code Pembangkitan Kanal ayleigh
Fading Pembangkitan Noise
Perhitungan banyak bit error Combining Maximum
Likelihood Detector
Perhitungan BER per EbN0
FINISH Semua EbN0 selesai?
belum
sudah
37
1. Membangkitkan bit transmisi
Parameter yang akan digunakan adalah meliputi: Jumlah simbol sebanyak sepuluh ribu, rentang E
b
N yang dipakai 1 sampai dengan 100,
panjang equalizer, bit pilot, jumlah bit per simbol sesuai dengan jumlah modulasi, channel order, interation step size.
2. Pembangkitan modulasi sinyal
Pembangkitan modulasi sinyal dengan menggunakan mudulator PSK Phase Shift Keying menggunakan perintah:
1. Untuk BPSK
ip = rand1,N0.5; generating 0,1 with equal
probability s = 2ip-1;
BPSK modulation 0 - -1; 1 - 00
2. Untuk QPSK
fungsi modulasi qpsk 1 user datas=randint1,D;
jml_kelompok_bit=lengthdatas2; user=1;
kelompok_bit-1; if
datas1,2n+1:2n+2==[1 1]; mapuser,n+1=-1-j;
elseif datas1,2n+1:2n+2==[1
0]; mapuser,n+1=-1+j;
elseif datas 1,2n+1:2n+2==[0
0]; map user,n+1=1+j;
elseif datas1,2n+1:2n+2==[0
1]; mapuser,n+1=1-j;
end end
3. Proses Alamouti Code
Proses encoding yang dilakukan pada sistem alamouti adalah:
Alamouti sCode = zeros2,F;
sCode:,1:2:end = 1sqrt2reshapemap,2,F8;
38
[x1 x2 ...] sCode:,2:2:end = 1sqrt2kronones1,F2,[-
1;1].flipudreshapeconjmap,2,F2; [-x2 x1
....]
4. Pembangkitan kanal transmisi
Kanal transmisi yang digunakan adalah kanal Rayleigh Fading. Bentuk simulasinya sebagai berikut:
h = 1sqrt2[randn1,F + jrandn1,F]; Rayleigh
channel
5. Pembangkitan noise
Noise yang digunakan adalah AWGN, yaitu noise yang terdapat pada semua spektrum frekuensi dan merupakan noise thermal yang sifatnya
menjumlah. Pada simulasi dituliskan sebagai berikut:
xx = 1sqrt2[randn1,F + jrandn1,F]; white
gaussian noise, 0dB variance
6. Pembangkitan kanal LMS
y = sumhMod.sCode,1 + 10-Eb_N0_dBii20xx; d = realy;
x = sumsCode;x=x; w = zerosnumTaps+1,1;
for n = numTaps+1 : numPoints
select part of training input in = xn : -1 : n-numTaps ;
y2n = win; sinyal pada kanal LMS
7. Pengurangan sinyal kanal transmisi dan noise dengan sinyal LMS
compute error en = dn-y2n;
error
8. Sinyal pada reciver
Receiver yMod = kronreshapey,2,F2,ones1,2;
[y1 y1 ... ; y2 y2 ...]
for zz = 1:50
39
yMod1,zz-110+1:zz10=yMod1,zz- 110+1:zz10.en;
yMod2,zz-110+1:zz10=yMod2,zz- 110+1:zz10.en;
end
9. Proses combiner dan pengambilan keputusan
hEq = zeros2,N; hEq:,[1:2:end] = reshapeh,2,N2;
[h1 0 ... ; h2 0...]
hEq:,[2:2:end] = kronones1,N2,[1;- 1].flipudreshapeh,2,N2;
[h1 h2 ... ; h2 -h1 ...]
hEq1,: = conjhEq1,:; [h1 h2 ... ; h2 -h1 ...]
hEqPower = sumhEq.conjhEq,1;
10. Proses decoding
decod = sumhEq.yMod,1.hEqPower; [h1y1 +
h2y2, h2y1 -h1y2, ... ] decod2:2:end = conjyHat2:2:end;
for b=1:lengthdecod;
if -piangledecod1,bangledecod1,b-pi2;
demap1,1+b-12:2+b-12=[1 1]; elseif
-pi2angledecod1,bangledecod1,b0; demap1,1+b-12:2+b-12=[0 1];
elseif piangledecod1,bangledecod1,bpi2;
demap1,1+b-12:2+b-12=[1 0]; elseif
pi2angledecod1,bangledecod1,b0; demap1,1+b-12:2+b-12=[0 0];
end
11. Perhitungan BER
simBer = nErrN; simulated ber
for nn=1:ii
if nn == 1
continue ;
else simBernn=simBernn-1-simBernn-1nn4e-2;
end
3.7 Sistem Diversitas Alamouti Tanpa Estimasi Kanal