începutul STC & MIMO

B

behy

Guest
Max toate
în prezent, am inceput de învăţare de timp şi spaţiu de codificare antene MIMO.va rugam sa introduceti-mă să găsească unele surse de a învăţa ei
mulþumiri foarte mult

 
Sper ca acest program este de ajutor!

%------------------------------------------------- -----------------------
Autor%: Milad Ehtesham milad.ehtesham @ gmail.com
%------------------------------------------------- -----------------------
Referinte%:
% - V. Tarokh, H.Jafarkhani, şi AR Calderbank "spaţiu-timp Codurile de la
Desenelor şi modelelor% ortogonale ", IEEE Trans. Inform. Teoria VOL.. 45, NO. 5, iulie 1999.
% - Lizhong Zheng, şi David NC Tse "Diversitate şi Multiplexare: O
% Fundamentale tradeoff în Multiple-Antenna Channels ", IEEE Trans. Inform.
Teoria% voi.49, NO.5, MAI 2003.
% - V. Tarokh, H. Jafarkhani şi AR Calderbank, bloc de spaţiu-timp de codificare
% pentru comunicaţiile fără fir: rezultate de performanţă, IEEE J. Select.Arii
% Commun., Vol..17, nr.3, pp..451 460, martie 1999.
Codificare% - B. Vucetic şi de J. Yuan "spaţiu-timp", John Wiley & Sons, 2003.
%------------------------------------------------- -----------------------
NOTE%:
% Despre introducerea O matrice:
% - O este Tp * matricea Nt, ca implicit 4 * 3 complexe ortogonale este definit (rata de 3 / 4).
% pentru [X1-X2-X3; x2 * x1 * 0; X3 * 0 x1 *; 0-X3 * x2 *] ----- intra ------> O = [1 -2 -3; 2 j 1 j 0; 3 j 0 1 j; 0 -3 j 2 j];
% - Alamouti schema: [x1 x2;-x2 * x1 *] ----- intra ------> O = [1 2; -2 j 1 j];
% - Un adevărat ortogonale: [x1 x2;-x2 x1] ----- intra ------> O = [1 2; -2 1];
% - Pentru reale matrici ortogonale defini M_psk = 2; ca constelaţia semnal reale.
% - O = [1]; este necodificat (nu există diversitate).
% - In acest program de înregistrări O nu poate fi ca "A1 * x1 [*] A2 * x2 [*] ... o Xn * [*]", numai ei pot fi ca "x1 sau de-X1 sau x1 * sau-x1 * ".
%------------------------------------------------- -----------------------
şterge toate
O = [1 -2 -3; 2 j 1 j 0; 3 j 0 1 j; 0 -3 j 2 j];% Complexul sau Real ortogonale Matrix ** defini acest **
NT = mărime (O, 2);% Numărul de antene de transmisie
co_time = mărime (O, 1);% bloc de timp lungimea
Nr = 1;% Numărul de antene Primire ** defini acest **
NIT = 1000;% 100000 Număr% din repeates pentru fiecare SNR ** defini acest **
M_psk = 4;% M-constelaţie PSK, M_psk = 2 ^ k ** defini acest **
snr_min = 3;% min SNR gama de simulare a defini acest ** **
snr_max = 15;% Max rande SNR pentru simularea ** defini acest **
graph_inf_bit = zero-uri (snr_max-snr_min 1,2);% de informaţii Plot
graph_inf_sym = zero-uri (snr_max-snr_min 1,2);% de informaţii Plot
num_X = 1;
num_bit_per_sym = log2 (M_psk);
pentru cc_ro = 1: co_time
pentru cc_co = 1: NT
num_X = max (num_X, ABS (Real (O (cc_ro, cc_co ))));
final
final
co_x = zero (num_X, 1);
pentru con_ro = 1:% co_time Calculeaza-Delta, Epsilon, ETA şi conj. matrici
pentru con_co = 1: NT
în cazul în care abs (reale (O (con_ro, con_co )))~= 0
Delta (con_ro, ABS (Real (O (con_ro, con_co ))))= semn (Real (O (con_ro, con_co)));
Epsilon (con_ro, ABS (Real (O (con_ro, con_co ))))= con_co;
co_x (ABS (reale (O (con_ro, con_co))), 1) = co_x (ABS (reale (O (con_ro, con_co))), 1), 1;
ETA (ABS (reale (O (con_ro, con_co))), co_x (ABS (reale (O (con_ro, con_co))), 1)) = con_ro;
coj_mt (con_ro, ABS (Real (O (con_ro, con_co ))))= imag (O (con_ro, con_co));
final
final
final
eta = ETA. ';% Sortare nu este necesar
eta = sort (ETA);
eta = ETA. ';
pentru SNR = snr_min: simularea% snr_max Start
CLC
Stai DISP ( "până la SNR = '); DISP (snr_max);
SNR
n_err_sym = 0;
n_err_bit = 0;
graph_inf_sym (SNR-snr_min 1,1) = SNR;
graph_inf_bit (SNR-snr_min 1,1) = SNR;
pentru con_sym = 1: Nit
bi_data = randint (num_X, num_bit_per_sym); de date aleatoare% binar
de_data = bi2de (bi_data);% Conversia date binare pentru a zecimală pentru utilizarea în M-PSK mod.
de date%% = pskmod (de_data, M_psk, 0, 'gri');
de date = pskmod (de_data, M_psk, 0);
J H = randn (NT, NR) * randn (NT, NR); câştigurile% Cale matrice
XX = zero (co_time, NT);
pentru con_r = 1: Ora de co_time% spaţiu pe Start de codificare
pentru con_c = 1: NT
în cazul în care abs (reale (O (con_r, con_c )))~= 0
în cazul în care imag (O (con_r, con_c)) == 0
XX (con_r, con_c) = date (ABS (reale (O (con_r, con_c))), 1) * semn (reale (O (con_r, con_c)));
alt
XX (con_r, con_c) = conj. (date (ABS (reale (O (con_r, con_c))), 1)) * semn (reale (O (con_r, con_c)));
final
final
final
sfârşitul% Ora de terminare spaţiu de codificare
H = H. ';
XX = XX. ';
SNR = 10 ^ (SNR/10);
Nivelul de zgomot = (randn (Nr, co_time) j * randn (Nr, co_time));% produc zgomot
Y = (sqrt (SNR / NT) * H * XX zgomot). ";% Au primit semnalul
H = H. '; Începeţi% decodare cu estimarea canal perfectă
pentru co_ii = 1: num_X
pentru co_tt = 1: dimensiunea (ETA, 2)
în cazul în care ETA (co_ii, co_tt) ~ = 0
în cazul în care coj_mt (ETA (co_ii, co_tt), co_ii) == 0
r_til (ETA (co_ii, co_tt),:, co_ii) = Y (ETA (co_ii, co_tt),

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Zâmbi" border="0" />

,
a_til (ETA (co_ii, co_tt),:, co_ii) = conj. (H (epsilon (ETA (co_ii, co_tt), co_ii),

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Zâmbi" border="0" />

);
alt
r_til (ETA (co_ii, co_tt),:, co_ii) = conj. (Y (ETA (co_ii, co_tt),

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Zâmbi" border="0" />

);
a_til (ETA (co_ii, co_tt),:, co_ii) = H (epsilon (ETA (co_ii, co_tt), co_ii),

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Zâmbi" border="0" />

,
final
final
final
final
RR = zero (num_X, 1);
pentru II = 1: statistici% num_X decizie genera pentru semnalul transmis "XI"
pentru tt = 1: dimensiunea (ETA, 2)
pentru JJ = 1: Nr
în cazul în care ETA (ii, TT) ~ = 0
RR (II, 1) = RR (II, 1) r_til (ETA (II, TT), JJ, ii) * a_til (ETA (II, TT), JJ, ii) * delta (ETA (II, TT), , ii);
final
final
final
final
re_met_sym% = pskdemod (RR, M_psk, 0, 'gri');% = decizia ml pentru M-PSK
re_met_sym = pskdemod (RR, M_psk, 0);% = decizia ml pentru M-PSK
re_met_bit = de2bi (re_met_sym);
re_met_bit (1, num_bit_per_sym 1) = 0;% Pentru demension corectă a "re_met_bit"
pentru con_dec_ro = 1: num_X
în cazul în care re_met_sym (con_dec_ro, 1) ~ = de_data (con_dec_ro, 1)
n_err_sym = n_err_sym 1;
pentru con_dec_co = 1: num_bit_per_sym
în cazul în care re_met_bit (con_dec_ro, con_dec_co) ~ = bi_data (con_dec_ro, con_dec_co)
n_err_bit = n_err_bit 1;
final
final
final
final
final
Perr_sym = n_err_sym / (num_X * NIT);% Contele numărul de biţi de eroare şi simboluri
graph_inf_sym (SNR-snr_min 1,2) = Perr_sym;
Perr_bit = n_err_bit / (num_X * Nit * num_bit_per_sym);
graph_inf_bit (SNR-snr_min 1,2) = Perr_bit;
final
x_sym = graph_inf_sym :), 1);% Generate complot
y_sym = graph_inf_sym :), 2);
subplot (2,1,1);
semilogy (x_sym, y_sym, "k-v ');
xlabel SNR ( ', [dB]');
ylabel ( 'Eroare Symbol Probabilitate');
grilă pe
x_bit = graph_inf_bit :), 1);
y_bit = graph_inf_bit :), 2);
subplot (2,1,2);
semilogy (x_bit, y_bit, "k-v ');
xlabel SNR ( ', [dB]');
ylabel ( 'Bit Error Probabilitate');
grilă pe

 
Salam
încercaţi să "Space Timpul de codificare a mărfurilor", de Branka Vucetic şi J Yuan
Cred că este disponibil în bord, dacă aceasta nu este i a putea a trimite it la u

 
Salut

Orice lucru unul privind OFDM Alamouti.Plz a trimite eu codul pentru OFDM Alamouti.

Cu respect,
PraveenGoud

 
I highly recommend David Tse şi P. carte Viswanath "Bazele Comunicare fără fir"

Puteţi găsi spaţiu-timp de codificare a mărfurilor în capitolul 3 şi principiul MIMO în capitolul 7-10.

Bună parte a cărţii este că nu doar vă spune cum, dar de ce.

 
Mă simt această carte este foarte bun în punctul de vedere al simulare pentru MIMO OFDM.

Spaţiu Timpul Coduri şi Sisteme MIMO de Mohinder Janaki Raman ArcTech Publicaţii 2004.

El a dat de simulare foarte clar.

Cu respect
Tarak

 
Acest link este util pentru MIMO OFDM

http://www.avzelst.nl/

Cu respect

 

Welcome to EDABoard.com

Sponsor

Back
Top