%% Este archivo genera las matrices necesarias para la generacion del %% receptor MMSE OLA en el caso en el que %%% ttimos bloques de B simbolos simultaneamente con B=8 M=64 % usando codigos aleatorios %parametros B=1; hiper=0; Nt=1000; L=16; M=64; flag=1; recep=0; w=[0 2 4 6 8 10 12 14 16 18]; Channel=1; FrameLength=1; v=0; [variances,Lc]=CIRpowers(Channel); hfr=[]; for ih=1:Lc+1 hfr=[hfr;genh(FrameLength,v)]; end hfr=diag(variances.^0.5)*hfr; h=hfr; % Empezamos Es=1; K=length(w); ejex1=zeros(1,9); ejey1=zeros(1,9); [S,s]=generasenal(Nt,M,hiper); Hada=Hadamard(M/B); C=Hada(:,2); % genero el codigo I=eye(B); c=kron(I,C); longitud=sqrt(length(c)); %hago que el codigo tenga energia unidad c=c/longitud; for k=1:Nt SS(:,k)=c*S(1,k); %genero una matriz con los simbolos codificados que voy a ttir end i=1; F=matrizifft(L,M); T=matrizTzp(L,M); H=matrizcanalzp(h,L,M); XX=H*T*F*SS; %señal que ttito tamanoX=size(XX); for g=0:100 for snr=0:5:40 No=1/10^(snr/10); P=L+M; sigma=sqrt(No/2); ni=randn(M,Nt); nq=randn(M,Nt); N=sigma.*(ni+i.*nq); %ahora empiezo a generar DELTA y U Ho=H*T; A=Ho(M+1:P,:); B=Ho(1:L,:); C=Ho(L+1:M,:); aux=A+B; H1=[aux;C]; %h1 es H con gorrito del articulo DELTA=F'*H1*F; U=SS; Y=DELTA*U+N; DELTA1=DELTA'; %comienza el calculo de Gmmse Ryy=(Y*Y')/size(Y,2); diagonal=diag(Ryy); diagonal1=1./diagonal; Ryyinv=diag(diagonal1); Gmmse=DELTA1*Ryyinv; Uest=Gmmse*Y; CC=c'*Uest; ber=calculaber(S(1,:),CC); ejex(i)=snr ejey(i)=ber i=i+1; end ejex1=ejex1+ejex; ejey1=ejey1+ejey; i=1; end ejex1=ejex1/100; ejey1=ejey1/100; semilogy(ejex,ejey,'cp-') grid; xlabel('Es/No'); ylabel('Ber'); e-REdING. Biblioteca de la Escuela Superior de Ingenieros de Sevilla.


ESTUDIO DE UN SISTEMA OFDM-CDMA

: Gallardo Moreno, Juan Pablo
: Ingeniería Telecomunicación
Contenido del proyecto: