MATLAB ỨNG DỤNG TRONG VIỄN THÔNG - Trang 277

Kênh truyền và đánh giá chất lượng kênh truyền

246

ber = zeros(1,numEbNos); % Các giá trị BER

intv = cell(1,numEbNos); % Dãy các khoảng tin cậy

Tiếp theo, ta sử dụng vòng lặp để thực hiện nhiều lần quá trình mô phỏng cho các giá trị khác
nhau của Eb/No. Trong mỗi vòng lặp lại có một vòng lặp while để bảo đảm quá trình mô
phỏng vẫn tiếp tục cho đến khi số bit lỗi vượt quá giá trị định trước. Sau mỗi vòng lặp các
vector ber và intv sẽ được cập nhật.

% Lặp lại với các giá trị khác nhau của Eb/No.

for jj = 1:numEbNos

EbNo = EbNovec(jj);

snr = EbNo; % Dieu che BPSK

ntrials = 0; % Số lần thực hiện vòng lặp while bên dưới

numerr = 0; % Số lỗi ứng với giá trị Eb/No đang xét

% Lặp lại mô phỏng cho đến khi số bit lỗi > numerrmin

while (numerr < numerrmin)

msg = randint(siglen, 1, M); % Tạo chuỗi tin tức.

txsig = dpskmod(msg,M); % Điều chế

rxsig = awgn(txsig, snr, 'measured'); %Cộng nhiễu.

decodmsg = dpskdemod(rxsig,M); % Giải điều chế.

newerrs = biterr(msg,decodmsg); % Số lỗi trong lần thử này

numerr = numerr + newerrs; % Tổng số lỗi ứng với giá trị Eb/No đang xét

ntrials = ntrials + 1; % Cập nhật số lần thử.

end

% Tỷ lệ lỗi và khoảng tin cậy 98% cho giá trị Eb/No hiện tại

[ber(jj), intv1] = berconfint(numerr,(ntrials * siglen),.98);

intv{jj} = intv1; % Lưu lại khoảng tin cậy

disp(['EbNo = ' num2str(EbNo) ' dB, ' num2str(numerr) ...

' errors, BER = ' num2str(ber(jj))])

end

Sau mỗi vòng lặp, trên màn hình sẽ xuất hiện dòng kết quả tương tự như sau:

EbNo = 7 dB, 9 errors, BER = 0.0045

Cuối cùng là quá trình vẽ đồ thị BER, trong đó có sử dụng hàm berfit để làm trơn đồ thị.

% Dùng hàm berfit để làm trơn và vẽ đồ thị BER.

fitEbNo = EbNomin:0.25:EbNomax; % Các giá trị nội suy

berfit(EbNovec,ber,fitEbNo);

% Vẽ khoảng tin cậy.

hold on;

for jj=1:numEbNos

semilogy([EbNovec(jj) EbNovec(jj)],intv{jj},'g-+');

end

hold off;

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.