Mô phỏng so sánh chất lượng hệ thống khi sử dụng phương pháp phân tập

Một phần của tài liệu cải thiện chất lượng hệ thống 4g sử dụng kỹ thuật phân tập kết hợp ước lượng kênh truyền (Trang 79 - 105)

M ỤC LỤC

4.4Mô phỏng so sánh chất lượng hệ thống khi sử dụng phương pháp phân tập

Thực hiện mô phỏng so sánh phương pháp phân tập thu và phân tập phát với

việc mô phỏng so sánh phương pháp MRC và phương pháp STBC khi cùng bậc

phân tập. So sánh MRC ( 1 anten phát x 2 anten thu) và STBC ( 2 anten phát x 1 anten thu). So sánh MRC (1 anten phát x 4 anten thu ) và STBC ( 2 anten phát x 2 anten thu). Sử dụng 800 cặp symbol OFDM. Dưới đây là đồ thị mô tả quá trình so

sánh hai phương pháp trên:

Hình 4.15 Biểu đồ BER hệ thống dùng kỹ thuật STBC và kỹ thuật MRC.

v Nhận xét:

· Tuy có cùng độ lợi phân tập là 2 và 4 nhưng BER của sơ đồ STBC 2x1 cao

hơn sơ đồ MRC 1x2 và BER của sơ đồ STBC 2x2 cũng cao hơn sơ đồ MRC 1x4.

Điều này là do sơ đồ MRC dùng nhiều anten thu hơn nên việc kết hợp các tín hiệu tại đầu thu cũng tốt hơn, dẫn đến BER thấp hơn. Tuy nhiên, việc sử dụng sơ đồ

Trang 77 STBC sẽ tiết kiệm được số anten hơn sơ đồ MRC cùng độ lợi phân tập. Hơn nữa, công suất phát cho từng anten của sơ đồ STBC chỉ bằng một nửa sơ đồ MRC, điều

đó giúp giảm giá thành bộ khuếch đại công suất máy phát.

v Kết luận : Kết quả mô phỏng hoàn toàn phù hợp với lý thuyết.

4.5 Kết luận chương

Chương 4 đã tiến hành mô phỏng từng sơ đồ cụ thể của các loại mã phân tập thu và phân tập phát đã trình bày ở chương 3. Chương này đã thực hiện so sánh kết quả mô phỏng của các sơ đồ này với nhau cũng như so sánh với sơ đồ không phân tập truyền thống để thấy được tác dụng của cácc phương pháp phân tập trong việc cải thiện chất lượng hệ thống di động không dây. Các kết quả thu được hoàn toàn phù hợp với lý thuyết đã trình bày trong các chương trước.

Trang 78

KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI

v Kết luận

Đồán đã tập trung nghiên cứu về hệ thống thông tin di động 4G sử dụng công nghệ OFDM, một công nghệ cung cấp các phương pháp truy cập không dây cho hệ

thống 4G với lợi ích mang lại là hiệu quả sử dụng phổ tần cao nhờ tính trực giao, giảm được ảnh hưởng của trễđa đường, kênh fading…Hơn nữa, đồ án cũng đã phân

tích được các đặc tính truyền dẫn tín hiệu không dây, cũng như các giải pháp kỹ

thuật quan trọng giúp cải thiện chất lượng hệ thống 4G như kỹ thuật phân tập thu, phân tập phát có ứng dụng việc ước lượng thông tin kênh truyền.

Chương cuối của đồ án cũng đã tiến hành mô phỏng chất lượng hệ thống với

các phương pháp phân tập khác nhau và cho kết quả tương đối phù hợp với lý thuyết đã phân tích.

Qua đó cho thấy rằng, sự kết hợp giữa các kỹ thuật phân tập đi kèm với kỹ

thuật ước lượng thông tin kênh truyền ứng dụng trên nền công nghệ OFDM là một giải pháp kỹ thuật tối ưu cho các nhà mạng nhằm nâng cao tốc độ truyền dẫn mà chất lượng của các hệ thống 4G lại vẫn được đảm bảo với tỷ lệ bit lỗi BER thấp hơn trước. Ngoài ra, giải pháp trên còn đạt được hiệu quả kinh tế cao khi không phải

tăng công suất phát hay lắp đặt các anten kích thướt lớn, phù hợp cho ứng dụng cell phone.

v Một số hạn chế của đồ án

Do khuôn khổ nội dung đồ án nên một số phần lý thuyết chưa được đi sâu

phân tích chi tiết.

Do thời gian hạn chế nên phần mô phỏng chưa xét hết được tất cảcác trường hợp khác nhau để rút ra nhận xét từng loại mã một cách chi tiết và thuyết phục hơn.

v Hướng phát triển đề tài (adsbygoogle = window.adsbygoogle || []).push({});

Đây là đề tài khá rộng và đang được nghiên cứu nhiều hiện nay trên thế giới và cảở Việt Nam. Đề tài này có thểđược phát triển theo hướng kết hợp các kỹ thuật phân tập lại với nhau như mã khối không gian – thời gian siêu trực giao. ( Supper – Orthogonal Space – Time Block Codes ).

Trang 79

TÀI LIỆU THAM KHẢO

[1] Nguyen Le Hung, “ Mobile Communication”, Danang University of Technology, University of Danang, 2010.

[2] Nguyen Le Hung, “ OFDM Fundamentals ”, Danang University of Technology, 2010.

[3] A.B. Gershman, N.D. Sidiropoulos, “Space-Time Processing for MIMO Communication”,2005.

[4] Sumeet Sandhu, Robert W. Heath Jr, Arogyaswami Paulaj, “Space-Time Block Codes versus Space-Time Trellis Codes”, 2000.

[5] Da-shan Shiu, Joseph M. Kahn, “Layerd Space-Time Codes for Wireless Communications Using Mutiple Transmit Antennas, 2008

[6] Branka Vucetic, Jinhong Yuan, “Space-Time Coding”, University of Sydney and New South Wales, Australia, 2003.

[7] Hamid Jafarkhani, “ Space – Time Coding, Theroy and Pratice ”, University of California, Irvine, 2005.

[8] R. Nowak, “ Statiscal Signal Processing, ECE 830 Fall 2010”.

[9] N. Al – Dhahir, “ Space – Time Coding for Wireless Communications “, University of Texas at Dallas,2009.

[10] Rish S.Blum and Qing Yan, “ IEEE Transactions on Communications, Vol 49, No.11, November 2011”.

[11] Fernando Gregorio, “ Space – Time code for MIMO Systems ”, Helsinki University of Technology, 2008.

[12] Andrea Goldsmith, “Wireless communications” , 2005.

[13] William C. Y. Lee, “Mobile communications design fundamentals” , 2009. [14] Kamran Arshad, “Channel Estimation in OFDM Systems” . August, 2002. [15] Mohinder Jankiraman, “Space – Time Codes and MIMO systems”, 2010.

Trang a80

PHỤ LỤC

%*************** Receive diversity technique TC ******************

N_datapacket=600; %number of data packet for m = 0:4:4;

N_receive=2; % number of receive antenna N_transmit=1; % number of transmit antenna SNR = [2:2:30].'; % signal noise ratio

N_datasymbol = 30; % number of data symbol N_fft =128; % size of FFT

N_cp = 10; % CP length in normal mode

Powersignal = N_transmit*1; % power of noise-free received signal N_symOFDM = N_fft + N_cp; % OFDM symbol length after CP insertion L = 5; % number of resolvable multipaths

PDP = exp(-(0:L-1)/4)/sum( exp(-(0:L-1)/4) ); % function of Power Delay Profile

M_QAM =64; % MQAM modulation level used

length_subcarrier = log2(M_QAM); % number of bits per 1 subcarrier BER = zeros(1,length(SNR));

tic

for SNR_index = 1:length(SNR)

No = Powersignal/(10^(SNR(SNR_index)/10)); % power of AWGN for p = 1:N_datapacket (adsbygoogle = window.adsbygoogle || []).push({});

disp(['SNR=', num2str(SNR(SNR_index)), '; dataPacket=', num2str(p)]); [x,data_bit_seq,data_sym] = Transmit_Generator(length_subcarrier,N_fft,N_datasymbol,L); h = zeros(L,N_transmit,N_receive); H = zeros(N_fft, 1, N_receive); for nr = 1:N_receive h(:,1,nr) = sqrt(PDP.'/2).*( randn(L,1) + 1j*randn(L,1) ); [y,Y_FFT] = Receive_Generator(N_transmit,N_receive,L,N_fft,No,h,x); for k = 1:N_fft H(k, 1, nr) = exp(-2j*pi*(k-1)*[0:L-1]/N_fft)*h(:,1,nr); end end %--- recoverbit = zeros(1,length_subcarrier*N_fft*N_datasymbol); for j = 1:N_datasymbol recoversymbol = zeros(N_fft,1);

for i =1:N_fft %go through all subcarrier y1=0; h1=0; if m == 0 % No Diversity y1=Y_FFT(i,nr,j); h1=H(i,1,nr); x1=y1/h1; recoversymbol(i)=[x1];

elseif m == 4 % Threshold Combining Powersignal = N_transmit*1;

threshold = Powersignal; nr = 1;

count = 0;

Trang a81 nr = mod(nr,N_receive)+1; count = count + 1; end recoversymbol(i) = Y_FFT(i,nr,j)/H(i,1,nr); end end recoverbit((length_subcarrier*N_fft*(j- 1)+1):length_subcarrier*N_fft*j) = MQAM_Demodulator(recoversymbol,2^length_subcarrier); end %---

BER(SNR_index) = BER(SNR_index) + sum( abs(data_bit_seq - recoverbit) ); end end BER = BER/(N_datapacket*length_subcarrier*N_fft*N_datasymbol); switch(m) case 0 figure(1) semilogy(SNR,BER,'b-','LineWidth',2); hold on; case 4 semilogy(SNR,BER,'r-','LineWidth',2); hold on; otherwise end

title('Receive diversity technique TC'); xlabel('Signal noise ratio (SNR) (dB)'); ylabel('Bit error rate (BER)');

legend( 'No diversity',... 'TC ');

grid on end

%**************** Receive diversity technique SC *****************

N_datapacket=600; %number of data packet for m = 0:3:3;

N_receive=2; % number of receive antenna N_transmit=1; % number of transmit antenna SNR = [2:2:30].'; % signal noise ratio

N_datasymbol = 30; % number of data symbol N_fft =128; % size of FFT

N_cp = 10; % CP length in normal mode

Powersignal = N_transmit*1; % power of noise-free received signal N_symOFDM = N_fft + N_cp; % OFDM symbol length after CP insertion L = 5; % number of resolvable multipaths

PDP = exp(-(0:L-1)/4)/sum( exp(-(0:L-1)/4) ); % function of Power Delay Profile

M_QAM =64; % MQAM modulation level used

length_subcarrier = log2(M_QAM); % number of bits per 1 subcarrier BER = zeros(1,length(SNR));

tic

for SNR_index = 1:length(SNR)

Trang a82

for p = 1:N_datapacket

disp(['SNR=', num2str(SNR(SNR_index)), '; dataPacket=', num2str(p)]); [x,data_bit_seq,data_sym] = Transmit_Generator(length_subcarrier,N_fft,N_datasymbol,L); h = zeros(L,N_transmit,N_receive); H = zeros(N_fft, 1, N_receive); for nr = 1:N_receive h(:,1,nr) = sqrt(PDP.'/2).*( randn(L,1) + 1j*randn(L,1) ); [y,Y_FFT] = Receive_Generator(N_transmit,N_receive,L,N_fft,No,h,x); for k = 1:N_fft H(k, 1, nr) = exp(-2j*pi*(k-1)*[0:L-1]/N_fft)*h(:,1,nr); end end %--- recoverbit = zeros(1,length_subcarrier*N_fft*N_datasymbol); for j = 1:N_datasymbol recoversymbol = zeros(N_fft,1);

for i =1:N_fft %go through all subcarrier y1=0; h1=0; if m == 0 % No Diversity y1=Y_FFT(i,nr,j); h1=H(i,1,nr); x1=y1/h1; recoversymbol(i)=[x1];

elseif m == 3 %Selection Combining

[Hmax, nr] = max( abs(H(i,1,:))); y1=Y_FFT(i,nr,j); x1=y1/(H(i,1,nr)); recoversymbol(i) = [x1]; end end recoverbit((length_subcarrier*N_fft*(j- 1)+1):length_subcarrier*N_fft*j) = MQAM_Demodulator(recoversymbol,2^length_subcarrier); end %---

BER(SNR_index) = BER(SNR_index) + sum( abs(data_bit_seq - recoverbit) ); end end BER = BER/(N_datapacket*length_subcarrier*N_fft*N_datasymbol); switch(m) case 0 figure(1) semilogy(SNR,BER,'b-','LineWidth',2); hold on; case 3 semilogy(SNR,BER,'r-','LineWidth',2); hold on; otherwise end

title('Receive diversity technique SC'); xlabel('Signal noise ratio (SNR) (dB)');

Trang a83 (adsbygoogle = window.adsbygoogle || []).push({});

ylabel('Bit error rate (BER)'); legend( 'No diversity',... 'SC ');

grid on

end

%*************** Receive diversity technique EGC ******************

N_datapacket=600; %number of data packet for m = 0:2:2;

N_receive=2; % number of receive antenna N_transmit=1; % number of transmit antenna SNR = [2:2:30].'; % signal noise ratio

N_datasymbol = 30; % number of data symbol N_fft =128; % size of FFT

N_cp = 10; % CP length in normal mode

Powersignal = N_transmit*1; % power of noise-free received signal N_symOFDM = N_fft + N_cp; % OFDM symbol length after CP insertion L = 5; % number of resolvable multipaths

PDP = exp(-(0:L-1)/4)/sum( exp(-(0:L-1)/4) ); % function of Power Delay Profile

M_QAM =64; % MQAM modulation level used

length_subcarrier = log2(M_QAM); % number of bits per 1 subcarrier BER = zeros(1,length(SNR));

tic

for SNR_index = 1:length(SNR)

No = Powersignal/(10^(SNR(SNR_index)/10)); % power of AWGN for p = 1:N_datapacket

disp(['SNR=', num2str(SNR(SNR_index)), '; dataPacket=', num2str(p)]); [x,data_bit_seq,data_sym] = Transmit_Generator(length_subcarrier,N_fft,N_datasymbol,L); h = zeros(L,N_transmit,N_receive); H = zeros(N_fft, 1, N_receive); for nr = 1:N_receive h(:,1,nr) = sqrt(PDP.'/2).*( randn(L,1) + 1j*randn(L,1) ); [y,Y_FFT] = Receive_Generator(N_transmit,N_receive,L,N_fft,No,h,x); for k = 1:N_fft H(k, 1, nr) = exp(-2j*pi*(k-1)*[0:L-1]/N_fft)*h(:,1,nr); end end %--- recoverbit = zeros(1,length_subcarrier*N_fft*N_datasymbol); for j = 1:N_datasymbol recoversymbol = zeros(N_fft,1);

for i =1:N_fft %go through all subcarrier y1=0; h1=0; if m == 0 % No Diversity y1=Y_FFT(i,nr,j); h1=H(i,1,nr); x1=y1/h1; recoversymbol(i)=[x1];

elseif m == 2 % Equal Gain Combining for nr=1:N_receive

Trang a84 y1=y1+Y_FFT(i,nr,j)*conj(H(i,1,nr))/abs(H(i,1,nr)); h1=h1+abs(H(i,1,nr)); end x1=y1/h1; recoversymbol(i) = [x1]; end end recoverbit((length_subcarrier*N_fft*(j- 1)+1):length_subcarrier*N_fft*j) = MQAM_Demodulator(recoversymbol,2^length_subcarrier); end %---

BER(SNR_index) = BER(SNR_index) + sum( abs(data_bit_seq - recoverbit) ); end end BER = BER/(N_datapacket*length_subcarrier*N_fft*N_datasymbol); switch(m) case 0 figure(1) semilogy(SNR,BER,'b-','LineWidth',2); hold on; case 2 semilogy(SNR,BER,'r-','LineWidth',2); hold on; otherwise end

title('Receive diversity technique EGC'); xlabel('Signal noise ratio (SNR) (dB)'); ylabel('Bit error rate (BER)');

legend( 'No diversity',... 'EGC ');

grid on end

%************** Receive diversity technique MRC ******************

N_datapacket=600; %number of data packet for m = 0:1:1;

N_receive=2; % number of receive antenna N_transmit=1; % number of transmit antenna SNR = [2:2:30].'; % signal noise ratio

N_datasymbol = 30; % number of data symbol N_fft =128; % size of FFT

N_cp = 10; % CP length in normal mode

Powersignal = N_transmit*1; % power of noise-free received signal N_symOFDM = N_fft + N_cp; % OFDM symbol length after CP insertion L = 5; % number of resolvable multipaths

PDP = exp(-(0:L-1)/4)/sum( exp(-(0:L-1)/4) ); % function of Power Delay Profile (adsbygoogle = window.adsbygoogle || []).push({});

M_QAM =64; % MQAM modulation level used

length_subcarrier = log2(M_QAM); % number of bits per 1 subcarrier BER = zeros(1,length(SNR));

tic

for SNR_index = 1:length(SNR)

No = Powersignal/(10^(SNR(SNR_index)/10)); % power of AWGN for p = 1:N_datapacket

Trang a85

disp(['SNR=', num2str(SNR(SNR_index)), '; dataPacket=', num2str(p)]); if m==0 N_receive = 1; end [x,data_bit_seq,data_sym] = Transmit_Generator(length_subcarrier,N_fft,N_datasymbol,L); h = zeros(L,N_transmit,N_receive); H = zeros(N_fft, 1, N_receive); for nr = 1:N_receive h(:,1,nr) = sqrt(PDP.'/2).*( randn(L,1) + 1j*randn(L,1) ); [y,Y_FFT] = Receive_Generator(N_transmit,N_receive,L,N_fft,No,h,x); for k = 1:N_fft H(k, 1, nr) = exp(-2j*pi*(k-1)*[0:L-1]/N_fft)*h(:,1,nr); end end %--- recoverbit = zeros(1,length_subcarrier*N_fft*N_datasymbol); for j = 1:N_datasymbol recoversymbol = zeros(N_fft,1);

for i =1:N_fft %go through all subcarrier y1=0; h1=0; if m == 0 % No Diversity y1=Y_FFT(i,nr,j); h1=H(i,1,nr); x1=y1/h1; recoversymbol(i)=[x1];

elseif m == 1 %Maximal Ratial Combining for nr = 1:N_receive y1=y1+Y_FFT(i,nr,j)*conj(H(i,1,nr)); h1=h1+(conj(H(i,1,nr))*H(i,1,nr)); end x1=y1/h1; recoversymbol(i)=[x1]; end end recoverbit((length_subcarrier*N_fft*(j-1)+1):length_subcarrier*N_fft*j) = MQAM_Demodulator(recoversymbol,2^length_subcarrier); end %---

BER(SNR_index) = BER(SNR_index) + sum( abs(data_bit_seq - recoverbit) ); end end BER = BER/(N_datapacket*length_subcarrier*N_fft*N_datasymbol); switch(m) case 0 figure(1) semilogy(SNR,BER,'b-','LineWidth',2); hold on; case 1 semilogy(SNR,BER,'r-','LineWidth',2); hold on; otherwise

Trang a86

end

title('Receive diversity technique MRC'); xlabel('Signal noise ratio (SNR) (dB)'); ylabel('Bit error rate (BER)');

legend( 'No diversity',... 'MRC ');

grid on end

%************ Compare receive diversity techniques ***********

N_datapacket=400; %number of data packet for m =0:1:4;

N_receive=2; % number of receive antenna N_transmit=1; % number of transmit antenna SNR = [2:2:16].'; % signal noise ratio

N_datasymbol = 30; % number of data symbol N_fft =128; % size of FFT

N_cp = 10; % CP length in normal mode

Powersignal = N_transmit*1; % power of noise-free received signal N_symOFDM = N_fft + N_cp; % OFDM symbol length after CP insertion L = 5; % number of resolvable multipaths

PDP = exp(-(0:L-1)/4)/sum( exp(-(0:L-1)/4) ); % function of Power Delay Profile

M_QAM =64; % MQAM modulation level used

length_subcarrier = log2(M_QAM); % number of bits per 1 subcarrier BER = zeros(1,length(SNR));

tic

for SNR_index = 1:length(SNR)

No =Powersignal /(10^(SNR(SNR_index)/10)); % power of AWGN for p = 1:N_datapacket

disp(['SNR=', num2str(SNR(SNR_index)), '; dataPacket=', num2str(p)]); [x,data_bit_seq,data_sym] = Transmit_Generator(length_subcarrier,N_fft,N_datasymbol,L); h = zeros(L,N_transmit,N_receive); H = zeros(N_fft, 1, N_receive); for nr = 1:N_receive h(:,1,nr) = sqrt(PDP.'/2).*( randn(L,1) + 1j*randn(L,1) ); [y,Y_FFT] = Receive_Generator(N_transmit,N_receive,L,N_fft,No,h,x); for k = 1:N_fft H(k, 1, nr) = exp(-2j*pi*(k-1)*[0:L-1]/N_fft)*h(:,1,nr); end end %--- recoverbit = zeros(1,length_subcarrier*N_fft*N_datasymbol); for j = 1:N_datasymbol recoversymbol = zeros(N_fft,1);

for i =1:N_fft %go through all subcarrier y1=0; h1=0; if m == 0 % No Diversity y1=Y_FFT(i,nr,j); h1=H(i,1,nr); x1=y1/h1;

Trang a87 (adsbygoogle = window.adsbygoogle || []).push({});

recoversymbol(i)=[x1];

elseif m == 1 %Maximal Ratial Combining for nr = 1:N_receive y1=y1+Y_FFT(i,nr,j)*conj(H(i,1,nr)); h1=h1+(conj(H(i,1,nr))*H(i,1,nr)); end x1=y1/h1; recoversymbol(i)=[x1];

elseif m == 2 % Equal Gain Combining for nr=1:N_receive y1=y1+Y_FFT(i,nr,j)*conj(H(i,1,nr))/abs(H(i,1,nr)); h1=h1+abs(H(i,1,nr)); end x1=y1/h1; recoversymbol(i) = [x1];

elseif m == 3 %Selection Combining [Hmax, nr] = max( abs(H(i,1,:))); y1=Y_FFT(i,nr,j);

x1=y1/(H(i,1,nr));

recoversymbol(i) = [x1];

elseif m == 4 % Threshold Combining Powersignal = N_transmit*1;

threshold = Powersignal; nr = 1;

count = 0;

while ((abs(H(i,1,nr)) < threshold) && (count < N_receive)) nr = mod(nr,N_receive)+1; count = count + 1; end recoversymbol(i) = Y_FFT(i,nr,j)/H(i,1,nr); end end recoverbit((length_subcarrier*N_fft*(j- 1)+1):length_subcarrier*N_fft*j) = MQAM_Demodulator(recoversymbol,2^length_subcarrier); end %---

BER(SNR_index) = BER(SNR_index) + sum( abs(data_bit_seq - recoverbit) ); end end BER = BER/(N_datapacket*length_subcarrier*N_fft*N_datasymbol); switch(m) case 0 semilogy(SNR,BER,'b-','LineWidth',2); hold on; case 1 semilogy(SNR,BER,'r-','LineWidth',2); hold on; case 2 semilogy(SNR,BER,'g-','LineWidth',2); hold on; case 3 semilogy(SNR,BER,'k-','LineWidth',2); hold on; case 4 semilogy(SNR,BER,'m-','LineWidth',2);

Trang a88

hold on; otherwise end

title('Compare receive diversity techniques'); xlabel('Signal noise ratio (SNR) (dB)'); ylabel('Bit error rate (BER)');

legend( 'No diversity',... 'MRC ',... 'EGC ',... 'SC ',... 'TC '); grid on end

%******************* Generate transmit data *****************

function [x,data_bit_seq,data_sym] =

Transmit_Generator(length_subcarrier,N_fft,N_datasymbol,L) % Data OFDM signal generation

data_bit_seq = randint(1,length_subcarrier*N_fft*N_datasymbol); % fprintf('%d',data_bit_seq)

%--- -

%Anti-Gray MQAM Mapping for each data subcarrier & Generation of transmitted data signals

pre_QAM_seq =

reshape(data_bit_seq,length_subcarrier,N_fft,N_datasymbol); x = zeros(N_fft,L,1,N_datasymbol);

for sym = 1:N_datasymbol

% use MQAM_modulator instead of QPSK_modulator X = MQAM_modulator(pre_QAM_seq(:,:,sym));

data_sym = X.';

% According to the Gray Mapping USED

x(1:N_fft,1:L,1,sym) = circulant_ma(sqrt(N_fft)*ifft(X.'),L);

end end (adsbygoogle = window.adsbygoogle || []).push({});

%****************** Generate receive data *******************

function [y,Y_FFT] = Receive_Generator(N_transmit,N_receive,L,N_fft,No,h,x) N_datasymbol =30; for i=1:N_datasymbol for j = 1:N_receive y_nonoise = zeros(N_fft,1); y_nonoise = y_nonoise... + x(1:N_fft,1:L,N_transmit,i)*h(1:L,N_transmit,j);

AWGN_sig = sqrt(No/2)*( randn(N_fft,1) + j*randn(N_fft,1) ); y(1:N_fft,j,i) = y_nonoise + AWGN_sig;

Y_FFT(1:N_fft,j,i) = sqrt(1/N_fft)*fft(y(1:N_fft,j,i)); end

end end

Trang a89

%***** STBC with 2 transmit antenna and M receive antenna *****

N_datapacket=800; %number of data packet SNR = [0:2:20]; % signal noise ratio M_QAM = 64; % MQAM modulation level used

length_subcarrier = log2(M_QAM); % number of bits per 1 subcarrier/MQAM constellation point

L = 5; % number of resolvable multipaths N_fft =128; % size of FFT

N_cp = 10; % CP length in normal mode

Powersignal = 1; % power of noise-free received signal

N_symOFDM = N_fft + N_cp; % OFDM symbol length after CP insertion PDP = exp(-(0:L-1)/4)/sum( exp(-(0:L-1)/4) );% function of Power Delay Profile

%---

N_timeslot = 1;%Number of time slots (each with a length of 0.5ms) in a LTE frame.

N_symOFDM_timeslot = 1; % number of OFDM symbols in a time slot in a LTE frame, i.e., normal mode in "Downlink Control Channel Design for 3GPP LTE", WCNC 2008

symOFDM_position = [1:N_timeslot*N_symOFDM_timeslot]; % position indices of all considered (data/pilot) OFDM symbols

pilot_position = [11]; % positions of pilot OFDM symbols in a burst of "N_slot*N_sym_slot=14" considered OFDM symbols.

data_position =

data_sym_index_gen(N_timeslot*N_symOFDM_timeslot,pilot_position); % generate positions of data OFDM symbols (given the pilot OFDM symbols'

Một phần của tài liệu cải thiện chất lượng hệ thống 4g sử dụng kỹ thuật phân tập kết hợp ước lượng kênh truyền (Trang 79 - 105)