WCDMA

B

bangash

Guest
hei
i-kirjain kaivata WCDMA Matlab mallisimulaatioita tai minkäänlaista WCDMA simulointi

 
checkout että Matlab käyttäjä osaltaan osiot on Matlab-sivustossa

 
Toivon, että tämä ohjelma on hyödyllinen!% toiminto wcdma_script ()
Tyhjennä kaikki
tyhjennä
CLC

fprintf ( 'Start! Odota ... \ n ");
Max_Err_Num = 100;
r = 3;
Mem_Len = 8%: muistin pituus Viterbi-dekooderi.
Sur_Len = 40%: survial pituus .....
V = 100%: km / h
SF_Bit = 6;
SF = 2 ^ SF_Bit;% Spread tekijä
SF_DB = 10 * log10 (SF);
Win_Len = 15%: Window pituus haku
Työnnä = 3;
Max_Num = 3%: Vahva polkuja
Plt_Num = 2%: Symbol:
Integroitu pituus pilottihankkeeksi arvio
Tc = 1/3.84e6;% Chip keston mukaan digitaalinen kaistanleveys
Data_Rate = 1 / (SF * Tc);% bittiä / s
Chi_Num = 1;
Chq_Num = 1;
Ch_Num = Chi_Num Chq_Num;% kanavanumero I & Q paitsi Pilot kanava
Idx_Perm = randperm (SF-1) 1;
Indeksi = Idx_Perm (1: Ch_Num) ";
Del_Idx = [1 2 4 5 8 11];% Yksikkö on siru
Del_Gain = [0,7766 0,6169 0,0978 0,0777 0,0246 0,0078];
C = 3e8;
Fc = 2.11e9;
phi = 2 * pi * randia (1,2);
N0 = 40;
% Fram_Len = 192%: Signaalin pituus ilman häntää bittiä.
Fram_Len = 1 / (100 * SF * r * Tc)-Mem_Len;% Signal pituus ilman häntää bittiä.
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 välillä 2 ja 8
Intlv_Vec = uudistamaan (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="Hymyillä" border="0" />

;

Max_Del = max (Del_Idx);% Max viiveen
Path_Num = pituus (Del_Idx);% Aika invariant Multipath
Wal_Mat = ne (pituus (Index), 1);
k = 1: SF_Bit
Wal_Mat = [Wal_Mat Wal_Mat .* ((1-2 * bitget (Indeksi, k)) * ovat (1, koon (Wal_Mat, 2 )))];
loppu
N = 4 * N0;
M = Path_Num;
Ank = 2 * pi / (N * M) * ((0: N0-1) '*, jotka (1, M) * M maissa (N0, 1) * (0: M-1) 1 / 4) ;
Wm = 2 * pi * V * Fc / C * 1000/3600;
Win_Zero = nollilla (1, Win_Len);% alustaa
Sig_Rec = Win_Zero;% Puskuriliuos on vastaanotettu signaali
Sig_Est = Win_Zero;% Puskuriliuos arvioimiseksi
fp = fopen ( "ber.dat", "a ");
fprintf (fp, "%% SNR Ber ');
fprintf (fp, "\ n");
fclose (fp);
%------------------------------------
varten SNR = 1:9
fprintf ('*** SNR =% 5.3f dB \ n ", SNR);
Err_Num = nollilla (1, Ch_Num);
Init1 = [niistä (1,25) -1];% kullan järjestyksessä 0 -> 1, 1 -> -1
Init2 = [-ne (1,25) -1];
Sig_Org = nollilla (1, Max_Del);% Puskuriliuos lähde-signaali
Tx = nollilla (2 * Fram_Len, Ch_Num);
Gold_Buf = nollilla (1, Win_Len-Push 1);
kk = 0;
pp = 0;
% - Programm
while (min (Err_Num) <Max_Err_Num)% Max_Err_Num = 100;
kk = kk 1;
Gold = (Init1 (1) * Init2 (1) j * prod (Init1 ([5 8 19])) * prod (Init2 ([5 7 17 ])));% Gold sekvenssi
Init1 = [Init1 (2: lopussa) Init1 (1) * Init1 (4)];% Vaihto
Init2 = [Init2 (2: lopussa) prod (Init2 (1:4))];
Gold_Buf = [Gold Gold_Buf (1: vuoden-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 jokaista Coder kanava.
Rnd_Sour = cnv_enc (Tx_Tmp, Mem_Len, r) ";% cnv_enc: piilotiedosto
Rnd_Sour = Rnd_Sour :), Intlv_Vec);% Intleaver
Tx = [Tx (Fram_Len 1: vuoksi

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

; Tx_Tmp];
loppu
Sig_Sp = Rnd_Sour :), ceil (Flag_Fram / SF)) .* Wal_Mat :), mod (kk-1, SF) 1);% Walsh leviämisen
Sig_Sp = ((summa (Sig_Sp (1: Chi_Num)) j * (summa (Sig_Sp (Chi_Num 1: vuoden)) 1)) * Gold);% / sqrt (Ch_Num 1);% I j * Q
Sig_Org = [Sig_Sp Sig_Org (1: vuoden-1)];% Vaihto rekisteröityä lähdekoodi
DOP = sqrt (1/N0) * summa (cos (Wm * cos (Ank) * (kk 1 E10) * Tc phi (1)) j * sin (Wm * sin (Ank) * (kk 1 E10) * Tc phi (2)));% Jakes kanava
Ch_Data = (Sig_Org (Del_Idx) .* DOP) * Del_Gain ";
Ch_Data = [1 j] * randn (2,1) * 10 ^ ((-SNR SF_DB) / 20) Ch_Data;
%-Vastaanotin
Sig_Rec = [Ch_Data Sig_Rec (1: vuoden-1)];
kpw = kk-Win_Len Push;
if (kpw> 0)
Sig_Rec_Tmp = Sig_Rec * Gold_Buf (end) ";
Sig_Buf (mod (kpw-1, Plt_Num * SF) 1,

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

= Sig_Rec_Tmp;
Sig_Est = Sig_Est Sig_Rec_Tmp;% estimointi
loppu
Jos (mod (kpw, Plt_Num * SF) == 0) & (kpw ~ = 0)
[Tmp Max_Idx] = sort (Sig_Est);
Str_Idx = Max_Idx (end-Max_Num 1: lopussa);
Ch_Est =- j * Sig_Est (Str_Idx) / (Plt_Num * SF);
Sig_Est = Win_Zero;

varten UU = 1: Plt_Num% Despread - Wsh: Chi_Num x SF
Res_I :), UU) = todellinen ((Wal_Mat (1: Chi_Num,

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

* Sig_Buf ((uu-1) * SF 1: UU * SF, Str_Idx)) * Ch_Est) / SF;
Res_Q :), UU) = IMAG ((Wal_Mat (Chi_Num 1: vuoksi

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

* Sig_Buf ((uu-1) * SF 1: UU * SF, Str_Idx)) * Ch_Est) / SF;
loppu
pp = pp 1;
qq = mod (pp-1, korjaa (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="Hymyillä" border="0" />

= [Res_I; Res_Q] ";
% Err_Num = Err_Num summa (Tx (1: Plt_Num,

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

~ = merkki ([Res_I; Res_Q ])');
loppu
Jos (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="Hymyillä" border="0" />

= Rec;% Deinterleaver
Rx = Viterbi (Rec, Mem_Len, Sur_Len, r);% Viterbi: piilotiedosto
Err_Num = Err_Num summa ((Rx ~ = Tx (1: Fram_Len,

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

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

 
onnenpekka

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

 
kokeile tätä linkkiä

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

 
Kokeile tätä

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

mutta se on noin uplink ei downlink

 
katsoa minun frien tämä on WCDMA simulaattori MATLAB perustuu yksinkertaisiin GUI, se on peräisin Virginia Tech.Luulen, että se oli hankkeen siellä tai somthink
Toivon, että tämä on se, mitä olet etsimässä
ladata linkistä:
http://rapidshare.com/files/6759565/WCDMAsim.rar

 
hei,
voi kuka tahansa lähettää minulle Matlab-koodi QPSK Demodulaatio in IS-95 cdma hakutuloksiin Pilot kanavan hankkimisesta.

 

Welcome to EDABoard.com

Sponsor

Back
Top