WCDMA

B

Bangash

Guest
salut
i need WCDMA matlab de simulation ou de tout type de simulation WCDMA

 
la caisse matlab liste des sections du site Web de matlab

 
J'espère que ce programme est utile!% wcdma_script fonction ()
effacer tous les
clair
clc

fprintf ( 'Start!
S'il vous plaît patienter ... \ n ");
Max_Err_Num = 100;
r = 3;
Mem_Len = 8;% de la longueur de la mémoire de Viterbi Decoder.
Sur_Len = 40; SURVIE% de la longueur .....
V = 100;% km / h
SF_Bit = 6;
SF = 2 ^ SF_Bit;% Spread facteur
SF_DB = 10 * log10 (SF);
Win_Len = 15% de longueur de la fenêtre de recherche
Push = 3;
Max_Num = 3;% Strong chemins
Plt_Num = 2;% Symbole: La durée des projets pilotes intégrés estimation
Tc = 1/3.84e6;% à puce selon la durée de bande passante numérique
Data_Rate = 1 / (SF * Tc);% bits / s
Chi_Num = 1;
Chq_Num = 1;
Ch_Num = Chi_Num Chq_Num; Channel% Nombre d'I & Q, sauf pilote chaîne
Idx_Perm = randperm (SF-1) 1;
Index = Idx_Perm (1: Ch_Num) »;
Del_Idx = [1 2 4 5 8 11];% par unité de puce
Del_Gain = [0,7766 0,6169 0,0978 0,0777 0,0246 0,0078];
C = 3E8;
Fc = 2.11e9;
phi = 2 * pi * rand (1,2);
N0 = 40;
Fram_Len% = 192;% Signal longueur sans queue bits.
Fram_Len = 1 / (100 * SF * r * Tc)-Mem_Len;% Signal longueur sans queue bits.
Intlv_Len = 1 / (100 * SF * Tc);
Intlv_Vec% = randperm (Intlv_Len));

Intlv_Idx = [96 100; 64 75 48 50 30 40 24 25 15 20 10 15]; SF% entre 2 et 8
Intlv_Vec remodeler = (1: Intlv_Len, Intlv_Idx (SF_Bit-1, 1), Intlv_Idx (SF_Bit-1, 2)) ';
Intlv_Vec = Intlv_Vec (

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

;

Max_Del = max (Del_Idx);% Max délai
Path_Num = longueur (Del_Idx);% Time invariant multipath
Wal_Mat = ones (length (Index), 1);
pour k = 1: SF_Bit
Wal_Mat = [Wal_Mat Wal_Mat .* ((1-2 * bitget (Index, k)) * ones (1, size (Wal_Mat, 2 )))];
fin
N = 4 * N0;
M = Path_Num;
Ank = 2 * pi / (N * M) * ((0: N0-1) '* ones (1, M) * M ones (N0, 1) * (0: M-1)
1 / 4) ;
Wm = 2 * pi * V * Fc / C * 1000/3600;
Win_Zero = zeros (1, Win_Len); initialiser%
Sig_Rec = Win_Zero;% tampon de réception de signal
Sig_Est = Win_Zero; tampon% pour l'estimation
fp = fopen ( 'ber.dat', 'a ');
fprintf (fp, "%% SNR Ber ');
fprintf (fp, "\ n");
fclose (fp);
%------------------------------------
pour SNR = 1:9
fprintf ('*** SNR dB =% 5.3f \ n ', SNR);
Err_Num = zeros (1, Ch_Num);
Init1 = [ones (1,25) -1];% de séquence de Gold, 0 -> 1, 1 -> -1
Init2 = [-ones (1,25) -1];
Sig_Org = zeros (1, Max_Del);% de tampon pour la source du signal
Tx = zeros (2 * Fram_Len, Ch_Num);
Gold_Buf = zeros (1, Win_Len-Push 1);
kk = 0;
pp = 0;
% - Programm
while (min (Err_Num) <Max_Err_Num) Max_Err_Num% = 100;
kk kk = 1;
Or = (Init1 (1) * Init2 (1) j * prod (Init1 ([5 8 19])) * prod (Init2 ([5 7 17 ])));% de séquence de Gold
Init1 = [Init1 (2: end) Init1 (1) * Init1 (4)];% Shift
Init2 = [Init2 (2: end) prod (Init2 (1:4))];
Gold_Buf = [Gold Gold_Buf (1: end-1)];
Flag_Fram = mod (kk-1, SF * r * (Fram_Len Mem_Len)) 1;
if (Flag_Fram == 1)
Tx_Tmp = randint (Fram_Len, Ch_Num);% Encode pour chaque codeur canal.
Rnd_Sour = cnv_enc (Tx_Tmp, Mem_Len, r) ';% cnv_enc: fichier caché
Rnd_Sour = Rnd_Sour :), Intlv_Vec);% Intleaver
Tx = [Tx (Fram_Len 1: fin,

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

; Tx_Tmp];
fin
Sig_Sp = Rnd_Sour :), ceil (Flag_Fram / SF)) .* Wal_Mat :), mod (kk-1, SF) 1);% Walsh propagation
Sig_Sp = ((sum (Sig_Sp (1: Chi_Num)) j * (somme (Sig_Sp (Chi_Num 1: fin)) 1)) * Gold);% / sqrt (Ch_Num 1);% I j * Q
Sig_Org = [Sig_Sp Sig_Org (1: end-1)];% Shift pour enregistrer le code source
Dop = sqrt (1/N0) * sum (cos (Wm * cos (ank) * (1 E10 kk) * Tc phi (1)) j * sin (Wm * sin (ank) * (1 kk E10) * Tc phi (2)));% Jakes chaîne
Ch_Data = (Sig_Org (Del_Idx) .* Dop) * Del_Gain ';
Ch_Data = [1 j] * randn (2,1) * 10 ^ ((-SNR SF_DB ) / 20) Ch_Data;
Récepteur%
Sig_Rec = [Ch_Data Sig_Rec (1: end-1)];
KPW = kk-Win_Len Push;
if (KPW> 0)
Sig_Rec_Tmp = Sig_Rec * Gold_Buf (fin) »;
Sig_Buf (mod (KPW-1, SF Plt_Num *) 1,

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

= Sig_Rec_Tmp;
Sig_Est = Sig_Est Sig_Rec_Tmp;% Estimation
fin
if (mod (KPW, SF Plt_Num *) == 0) & (KPW ~ = 0)
[Tmp Max_Idx] = sort (Sig_Est);
Str_Idx = Max_Idx (fin Max_Num 1: fin);
Ch_Est =- j * Sig_Est (Str_Idx) / (* Plt_Num SF);
Sig_Est = Win_Zero;

pour uu = 1: Plt_Num% Despread - Wsh: Chi_Num x SF
Res_I :), uu) = réel ((Wal_Mat (1: Chi_Num,

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

* Sig_Buf ((uu-1) *
1 SF: uu * SF, Str_Idx)) * Ch_Est ') / SF;
Res_Q :), uu) = imag ((Wal_Mat (Chi_Num 1: fin,

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

* Sig_Buf ((uu-1) *
1 SF: uu * SF, Str_Idx)) * Ch_Est ') / SF;
fin
pp = pp 1;
qq mod = (pp-1, fixe (r * (Fram_Len Mem_Len) / Plt_Num)) * Plt_Num 1;
Rec (qq: qq Plt_Num-1,

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

= [Res_I; Res_Q] ';
Err_Num% = Err_Num somme (Tx (1: Plt_Num,

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

~ signe = ([Res_I; Res_Q ])');
fin
if (mod (KPW, SF * r * (Fram_Len Mem_Len)) == 0) & (KPW ~ = 0)
Rec (Intlv_Vec,

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

= Rec; Deinterleaver%
Rx = viterbi (Rec, Mem_Len, Sur_Len, r);% viterbi: fichier caché
Err_Num = Err_Num somme ((Rx Tx = ~ (1: Fram_Len,

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

))%%
fin
fin
Ber = Err_Num / (kk / SF);
fp = fopen ( 'ber.dat', 'a ');
fprintf (fp, '% 5.2f \ t', SNR);
fprintf (fp, "% 10.8f \ t ', Ber);
fprintf (fp, "\ n");
fclose (fp);
fin

 
chance, vous

<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Sourire" border="0" />http://www.mprg.org/research/wcdma/wcdmaSim.php

 
essayez ce lien

http://www.mathworks.com/matlabcentral/fileexchange/loadFile.do?objectId=1471&objectType=file

 
Essayez cette

h ** p: / / www.comlab.hut.fi / ARG / hzhang / thesis.doc

mais il
n'est pas sur la liaison montante descendante

 
regarder ma frien ce WCDMA est un simulateur à base de MATLAB GUI simple, c'est de Virginia Tech.Je pense que
c'est un projet en place ou somthink
J'espère que
c'est ce que vous recherchez
lien de téléchargement:
http://rapidshare.com/files/6759565/WCDMAsim.rar

 

Welcome to EDABoard.com

Sponsor

Back
Top