S
shakeel006
Guest
hello all
Jestem nowy w czasie kodowania przestrzeni. Poniżej 1 i 2 kodeksu Tx Rx dla code.i czas blok przestrzeni należy bardzo jasne i proste wyjaśnienie następujących code.like co jest sens długość ramki i rozmiar pakietu dla 1 i 2 Tx Kod RX
Upto SNR% 20 dbs
EbNo = [0:2:20];
% N, M: liczba transmisji i odbioru anteny
N = no_tx_antennas;
M = no_rx_antennas;
% zainicjować liczyć
idx = 1;
h = waitbar (0, "Procent ukończenia ');
set (h, 'Position', [230 60 275,25 56,25]);
set (h, 'name', 'Proszę czekać ...');
wb = 9,09;
dla SNR = EbNo
sigma = 0,5 / (10 ^ (SNR/10));
% Num -> liczba pakietów
dla packet_count = 1: Num
% Jesteśmy zainteresowani w przekazywaniu "K" symbole nie bitów.Stąd, K * 2 dla QPSK
% Itd.
switch (modulacji)
case 'BPSK'
data = randint (K, N);
Bit = 1;
case 'QPSK'
data = randint (K * 2, N);
Bit = 2;
przypadku '8 PSK "
data = randint (K * 3, N);
BIT = 3;
przypadku '16QAM "
data = randint (K * 4, N);
BIT = 4;
inaczej
disp ( 'Nie Modulation)
koniec
data = tx_bits. "
[temp. s P] = tx_modulate (tx_bits, modulacja);
% gotowość do nadawania znaków długości 'K'
X = Temp. "
fr_length = długość (X);
% MRC
x0 = X;
% Postaci macierzy kanału
jeśli channel_model == 'AWGN "
H = ones (fr_length, M);
w przeciwnym razie
H = (randn (fr_length, M) j * randn (fr_length, M)) / sqrt (2);
koniecMacierz transmisji%
H = zmienią (HR, fr_length, M);
Habs = sum (abs (H). ^ 2,2);
% odbierany sygnał na odbiornik antena
r1 = suma (H
, 1) .* x0, 2) / sqrt (N) sqrt (sigma) * (randn (fr_length, 1) j * randn (fr_length, 1));
r2 = suma (H
, 2) .* x0, 2) / sqrt (N) sqrt (sigma) * (randn (fr_length, 1) j * randn (fr_length, 1));
% Demodulowanie odbieranych sygnałów
z1 = r1 .* conj (H
, 1)) r2 .* conj (H
, 2));
% niekodowane (1,1)
R01 = O
, 1) .* x0 sqrt (sigma) * (randn (fr_length, 1) j * randn (fr_length, 1));
szacunków formularz%
dla m = 1
<img src="http://www.edaboard.com/images/smiles/icon_razz.gif" alt="Razz" border="0" />D01
, m) = abs (R01-H
, 1) * s (m)). ^ 2;% niekodowany sygnał
% kodowanych sygnałów
D1
, m) = abs (suma (Z1, 2)-s (m)). ^ 2 (-1 suma (Habs, 2)) * ABS (s (m)) ^ 2;
koniec
% Określenie minimalnych szacunków
Decyzja% do wykrywania niekodowany
[y0, i0] = min ((d01 ),[], 2);
s0d = s (L0). "
jasne d01
Decyzja% do wykrywania S1
[y1, i1] = min ((d1 ),[], 2);
S1D = S (i1). "
jasne d1
Formularz% otrzymywało symboli
XD = [S1D];
% określenie błędów symbol
error_un (packet_count) = suma (X
, 1) ~ = s0d);% dla niekodowany
temp1 = x> 0;
temp2 = x> 0;
błąd (packet_count) = suma (suma (temp1 ~ = temp2));% dla kodowane
% end koniec pętli for dla "packet_count"
% obliczenia FER, ser i BER dla obecnych idx
% dla niekodowany sygnał
SER_uncoded (idx) = suma (error_un) / (num * K);
BER_uncoded (idx) = SER_uncoded (idx) / BIT;
FER_uncoded (idx) = SER_uncoded (idx) * K;
% dla zakodowany sygnał
SER (idx) = suma (błąd) / (num * K);
BER (idx) = SER (idx) / BIT;
FER (idx) = SER (idx) * K;
idx przyrost%
idx = idx 1;
str_bar = [num2str (WB) '% ukończenia'];
waitbar (wb/100, h, str_bar);
WB = WB 9.09;
% end koniec pętli for dla SNR
close (h);
Best Regard
Shakeel
Jestem nowy w czasie kodowania przestrzeni. Poniżej 1 i 2 kodeksu Tx Rx dla code.i czas blok przestrzeni należy bardzo jasne i proste wyjaśnienie następujących code.like co jest sens długość ramki i rozmiar pakietu dla 1 i 2 Tx Kod RX
Upto SNR% 20 dbs
EbNo = [0:2:20];
% N, M: liczba transmisji i odbioru anteny
N = no_tx_antennas;
M = no_rx_antennas;
% zainicjować liczyć
idx = 1;
h = waitbar (0, "Procent ukończenia ');
set (h, 'Position', [230 60 275,25 56,25]);
set (h, 'name', 'Proszę czekać ...');
wb = 9,09;
dla SNR = EbNo
sigma = 0,5 / (10 ^ (SNR/10));
% Num -> liczba pakietów
dla packet_count = 1: Num
% Jesteśmy zainteresowani w przekazywaniu "K" symbole nie bitów.Stąd, K * 2 dla QPSK
% Itd.
switch (modulacji)
case 'BPSK'
data = randint (K, N);
Bit = 1;
case 'QPSK'
data = randint (K * 2, N);
Bit = 2;
przypadku '8 PSK "
data = randint (K * 3, N);
BIT = 3;
przypadku '16QAM "
data = randint (K * 4, N);
BIT = 4;
inaczej
disp ( 'Nie Modulation)
koniec
data = tx_bits. "
[temp. s P] = tx_modulate (tx_bits, modulacja);
% gotowość do nadawania znaków długości 'K'
X = Temp. "
fr_length = długość (X);
% MRC
x0 = X;
% Postaci macierzy kanału
jeśli channel_model == 'AWGN "
H = ones (fr_length, M);
w przeciwnym razie
H = (randn (fr_length, M) j * randn (fr_length, M)) / sqrt (2);
koniecMacierz transmisji%
H = zmienią (HR, fr_length, M);
Habs = sum (abs (H). ^ 2,2);
% odbierany sygnał na odbiornik antena
r1 = suma (H
r2 = suma (H
% Demodulowanie odbieranych sygnałów
z1 = r1 .* conj (H
% niekodowane (1,1)
R01 = O
szacunków formularz%
dla m = 1
<img src="http://www.edaboard.com/images/smiles/icon_razz.gif" alt="Razz" border="0" />D01
% kodowanych sygnałów
D1
koniec
% Określenie minimalnych szacunków
Decyzja% do wykrywania niekodowany
[y0, i0] = min ((d01 ),[], 2);
s0d = s (L0). "
jasne d01
Decyzja% do wykrywania S1
[y1, i1] = min ((d1 ),[], 2);
S1D = S (i1). "
jasne d1
Formularz% otrzymywało symboli
XD = [S1D];
% określenie błędów symbol
error_un (packet_count) = suma (X
temp1 = x> 0;
temp2 = x> 0;
błąd (packet_count) = suma (suma (temp1 ~ = temp2));% dla kodowane
% end koniec pętli for dla "packet_count"
% obliczenia FER, ser i BER dla obecnych idx
% dla niekodowany sygnał
SER_uncoded (idx) = suma (error_un) / (num * K);
BER_uncoded (idx) = SER_uncoded (idx) / BIT;
FER_uncoded (idx) = SER_uncoded (idx) * K;
% dla zakodowany sygnał
SER (idx) = suma (błąd) / (num * K);
BER (idx) = SER (idx) / BIT;
FER (idx) = SER (idx) * K;
idx przyrost%
idx = idx 1;
str_bar = [num2str (WB) '% ukończenia'];
waitbar (wb/100, h, str_bar);
WB = WB 9.09;
% end koniec pętli for dla SNR
close (h);
Best Regard
Shakeel