Tải bản đầy đủ (.pdf) (24 trang)

BÁO cáo THÍ NGHIỆM môn học THÔNG TIN số

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (4.2 MB, 24 trang )

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
VIỆN ĐIỆN TỬ - VIỄN THƠNG

----

BÁO CÁO THÍ NGHIỆM
MƠN HỌC: THƠNG TIN SỐ

Mã học phần

: ET3250

Sinh viên

: Đầu Xuân Thái Sơn

MSSV

: 20182755

Lớp

: Điện tử 02 – K63

Nhóm thí nghiệm

: T01

Hà Nội, 2021



BÀI 1. MÔ PHỎNG NHIỄU GAUSS
1.1.
-

Code
>> Px=1/(sqrt(2*pi))*exp(-x.^2/2);
>> plot(x,Px);
>> title('Ham phan bo xac xuat Gauss');
>> xlabel('x');
>> ylabel('Px');

-

Kết quả:


-

1.2.
-

Trả lời câu hỏi:
1. Mơ tả hình dáng đồ thị của hàm P(x) trên (là hình gì)? Giải thích?
 Là đường cong chng
 Vì đồ thị có dạng chng và phương trình Px đối xứng qua trục tung.
2. Ý nghĩ và ứng dụng của hàm phân phối xác suất Gauss trong thông tin số?
 Mô tả xác suất xảy ra của các trường hợp nhằm gúp nhận biết các khả năng
nào hay xảy ra nhất
 Ứng dụng: Dự báo thời tiết, các chỉ số tự nhiên của con người, sự biến động
gái trị cổ phiếu hay mức thu nhập của người lao động.

3. Nếu thay đổi kì vọng µ và phương sai σ 2 thì P(x) thay đổi như thế nào (cụ thể
đồ thị thay đổi như thế nào)? Giải thích?
 Nếu thay đổi kì vọng μ thì đồ thị sẽ dịch chuyển sang trái hoặc sang phải.
 Nếu thay đổi phương sai σ thì biên độ của độ thị giảm đi σ lần và hình dáng
đồ thị dãn ra σ lần.

Code:
len = 100000;
x = randn(1,len);
step = .1;
k = -5:step:5;
px = hist(x,k)/len/step;
stem(k,px);
Px_lythuyet = exp(-k.^2/2)/sqrt(2*pi);
hold on;
plot(k,Px_lythuyet);
title(' Phan bo xac suat Gauss ');
xlabel('x');
ylabel('P(x)');
legend('Ly thuyet','Mo phong');
hold off;


-

Kết quả:

-

Trả lời câu hỏi:

1. Nêu nhận xét về kết quả của 2 hàm mô phỏng và lý thuyết?
 Kết quả của hai hàm mô phỏng và lý thuyết gần giống nhau
2. Thay đổi độ dài của quá trình nhẫu nhiên trong bài tập 1.2 lên 1.000.000 phần
tử. So sánh kết quả với kết quả cũ? Giải thích?
 Đồ thị sẽ hiển thị các điểm dày hơn, lấy được nhiều điểm hơn. Vì số phần
tử tang từ 100.000 lên 1.000.000 tức là gấp 10 lần.
3. Câu lệnh “px = hist(x,k)/len/step;”? Tại sao phải chia cho len và step?
 Vì hàm Hist chỉ tính được số vecto trong các khoảng được cho bởi veto k.
Cho nên chia cho step để biết tổng số vecto trong khoảng đang xét, và chia
cho len để biết được số vecto trên một mẫu


BÀI 2. KỸ THUẬT LƯỢNG TỬ HĨA TUYẾN TÍNH
2.1.
-

Code:
xs = rand(1,5)*2-1;
[xi,xq] = lquan(xs,-1,1,3)

-

Kết quả:
xs = [0.6294 0.8116 -0.7460 0.8268 0.2647]
xi = [6
7
1
7
5]
xq = [0.6250 0.8750 -0.6250 0.8750 0.3750]


-

Trả lời câu hỏi:
Dòng lệnh sử dụng: [xi,xq] = lquan(xs,-1,1,3)
xs = [0.6294 0.8116 -0.7460 0.8268 0.2647]
xi = [6
7
1
7
5]
xq = [0.6250 0.8750 -0.6250 0.8750 0.3750]
Dòng bit được truyền 15bit = 110111001111101

2.2.
-

Code:
t=0:.01:20;
xt= sin(randn()+t).*cos(rand()*t);
[inx xqt]=lquan(xt,-1,1,randi(3)+1);
plot(t,xt,'b',t,xqt,'r');
grid on;
title(' Luong tu hoa tuyen tinh ');
xlabel ('t');
ylabel ('y');
legend('xt','xqt');


-


Kết quả:
Luong tu hoa tuyen tinh

1

xt
xqt

0.8
0.6
0.4

y

0.2
0
-0.2
-0.4
-0.6
-0.8
-1

0

2

4

6


8

10

12

14

16

18

20

t

-

Trả lời câu hỏi:
1. Số bit dung để lượng tử hóa chó 1 mẫu tín hiệu n là 3 bit.
2. Bước lượng tử q = (1 - (-1)) / 8 = 0.25.
3. Liệt kê các mức biên độ của các mức lượng tử là: 1; -0.875; 0.625; -0.125;
0.125; -0.375; 0.625; -0.875


BÀI 3. TẠP ÂM LƯỢNG TỬ TRONG KỸ THUẬT
LƯỢNG TỬ HĨA TUYẾN TÍNH
-


Code

N = 1000;
x_uni = 2*rand(1,N)-1;
% x_uni phan bo deu tu -1 den 1
x_sin = sin(linspace(1,5,N));
% tin hieu sin
nbit = 1:10;
% so bit luong tu tu 1 den 10
SNqR_uni = zeros(size(nbit));
% Khoi tao mang SNqR_uni va SNqR_sin chua
SNqR_sin = zeros(size(nbit));
% SNqR cua tin hieu phan bo deu va tin hieu
sin
SNqR_lt = 6.02*nbit;
% Mang chua SNqR tinh theo ly thuyet
Ps_uni = sum(x_uni.^2)/N;
% Cong suat tin hieu x theo (3-3)
Ps_sin = sum(x_sin.^2)/N;
for i = 1:size(nbit,2)
% size(n,2) tra ve so cot cua n
[indx_uni xq_uni] = lquan(x_uni,-1,1,nbit(i)); % Luong tu hoa tin hieu
x_uni
[indx_sin xq_sin] = lquan(x_sin,-1,1,nbit(i)); % Luong tu hoa tin hieu
x_sin
eq_uni = x_uni - xq_uni;
% tinh sai so luong tu hoa x_uni
eq_sin = x_sin - xq_sin;
% tinh sai so luong tu hoa x_sin
Pq_uni = sum(eq_uni.^2)/N;

% tinh cong suat tap am luong tu x_uni
Pq_sin = sum(eq_sin.^2)/N;
% tinh cong suat tap am luong tu x_sin
SNqR_uni(i) = 10*log10(Ps_uni/Pq_uni);
% tinh SNR_db cua x_uni
SNqR_sin(i) = 10*log10(Ps_sin/Pq_sin);
% tinh SNR_db cua x_sin
end
plot(nbit,SNqR_uni,'b-');
% ve do thi SNR tin hieu phan bo deu mo phong
hold on;
plot(nbit,SNqR_sin,'r--');
% ve do thi SNR tin hieu sin mo phong
plot(nbit,SNqR_lt,'m-.');
% Ve do thi SNR tin hieu phan bo deu ly thuyet
title('Do thi SN_qR theo nbit');
xlabel('nbit');
ylabel('SN_qR');
legend('Phan bo deu','Hinh sin','Ly thuyet');
grid on;
hold off;


-

Kết quả

SNqR_lt = [6.0200 12.0400 18.0600 24.0800 30.1000 36.1200 42.1400
48.1600 54.1800 60.2000]
SNqR_uni = [6.1217 12.0590 18.0125 23.9371 29.9149 36.2382 42.0380

48.2333 54.1255 59.9320]
SNqR_sin = [6.4171 12.8834 19.3981 25.6702 32.0389 38.1620 44.3266
50.4033 56.4544 62.5722]
-

Trả lời câu hỏi:
1. Khi n tăng lên 1 thì giá trị SNqR thay đổi thế nào? Tại sao?
 Giá trị SNqR tăng thêm 6.02 lần vì theo cơng thức SNqR = 6.02n
2. Giải thích tại sao SNqR chỉ phụ thuộc vào n, khơng phụ thuộc vào kích thước
bước lượng tử và dải biên độ lưỡng tử?
 Theo công thức tính SNqR = 6.02n\
3. Khi thay tín hiệu x là tín hiệu điều hịa thì giá trị SNqR thay đổi so với khi tín
hiệu x phân bố đều như thế nào?
 SNqR của tín hiệu điều hịa có giá trị lớn hơn SNqR của tín hiệu phân bố
khơng đều


BÀI 4. MẬT ĐỘ PHỔ NĂNG LƯỢNG VÀ HÀM TỰ TƯƠNG QUAN CỦA TÍN
HIỆU
4.1
-

Code

L=500;
x=randn(1,L);
acorr_x = xcorr(x);
% Ham tu tuong quan cua x
n=-(L-1):1:(L-1);
plot(n,acorr_x);

title('Ham tu tuong quan');
xlabel('n');
ylabel('acorr_x');
hold on;
% Tin hieu co bien do tang dan
x=linspace(-1,1,L);
acorr_x=xcorr(x);
n=-(L-1):1:(L-1);
plot(n,acorr_x,'k--');
hold on;
% Tin hieu since
x=sin(linspace(-10,10,L));
acorr_x=xcorr(x);
n=-(L-1):1:(L-1);
plot(n,acorr_x,'r.');
hold on;


-

Kết quả:
Ham tu tuong quan

600
500
400

acorr x

300

200
100
0
-100
-200
-500

-400

-300

-200

-100

0

100

200

300

400

500

n

- Câu hỏi:

1. Đồ thị của hàm tự tương quan trong trường hợp tổng quát ln có đặc điểm gì đặc
biệt? Tại sao?
 Đồ thị đối xứng qua trục tung đạt giá trị cực đại tại gốc tọa độ và càng xa gốc
tọa độ giá trị càng giảm do tín hiệu thực hiện, tín hiệu TTQ là hàm chắn và
phụ thuộc vào hàm e-x nên đạt MAX tại 0.
2. Giá trị cực đại của hàm tự tương quan luôn nằm ở đâu? Tại sao?
 Giá trị cực đại của hàm tự tương quan luôn nằm ở gốc tọa độ vì do tính chất
của hàm tự tương quan.
3. So sánh hàm tự tương quan của các trường hợp tín hiệu khác nhau như yêu cầu
của bài thí nghiệm trên? Giải thích?
 Các hàm tự tương quan của các trường hợp có giá trị đồ thị khác nhau tuy
nhiên có các điểm chung là cực đại tại gốc đồ thị và đối xứng qua trục tung vì
do dạng tín hiệu khác nhau nên các hàm tự tương quan khác nhau.


4.2
-

Câu hỏi:

L=500;
% tin hieu x ngau nhien do dai L=50 mau
N=200; % So luong tan so roi rac
x=randn(1,L);
w=linspace(0,2*pi,N);
fx=freqz(x,1,w);
esd_x=fx.*conj(fx);
acorr_x=xcorr(x);
subplot(2,1,1);
semilogy(w/pi,esd_x);

title('Mat do pho nang luong');
xlabel('n');
ylabel('S(ejw)');
hold on;
ft_acorr_x=freqz(acorr_x,1,w).*exp(j*w*(L-1));
subplot(2,1,2);
semilogy(w/pi,real(ft_acorr_x),'r');
xlabel('n');
ylabel('Rxx(ejw)');
-

Kết quả:


Mat do pho nang luong

S(ejw)

105

100

10-5

0

0.2

0.4


0.6

0.8

1

1.2

1.4

1.6

1.8

2

1.2

1.4

1.6

1.8

2

n

Rxx(ejw)


105

100

10-5

0

0.2

0.4

0.6

0.8

1

n

- Câu hỏi:
1. Phổ biên độ rời rạc của tín hiệu có đặc điểm gì? Giải thích?
 Đối xứng qua trục có n=1 vì theo cơng thức của FT và DFT. Phụ thuộc vào
hàm e x (L−1) => L-1=0 => đối xứng qua n=1
2. So sánh đồ thị phổ biên độ của esd_x và ft_acorr_x
 Phổ biên độ giống nhau
3. Giải thích tại sao khi vẽ đồ thị với cách 1 trục hoành là w/pi và cách 2 trục hồnh
là k*2/N?
 Vì cách 1 dùng biến đổi FT, cách 2 dùng biến đổi DFT
4. Phải chọn N tối thiểu là bao nhiêu để kết quả mô phỏng chính xác? Tại sao?

 Chọn N tối thiểu là 104 vì N > 21 và N ⋮ 8
5. Ý nghĩa và ứng dụng của định lý Weiner-Khintchine trong thông tin số?
 Phổ của hàm là mật độ phổ năng lượng của tín hiệu sẽ thể hiện sự phân bố
năng lượng tín hiệu.


BÀI 5. MÃ ĐƯỜNG DÂY NRZ
-

Code:

len = 100000;
% Do dai dong bit mo phong
SNR_db = 0:2:8;
% Tao vector SNR_db = 0 2 4 6
8
SNR = 10.^(SNR_db/10);
% Doi SNR tu Decibel sang lan
bsignal = randi([0 1],1,len);
% Dong bit ngau nhiên do
dai len
NRZ_signal = bsignal*2-1;
% Bien doi dòng bit 0 1 sang
-1 1
N0 = 1./SNR;
% Cong suat tap am
for i=1:length(SNR_db)
noise = sqrt(N0(i))*randn(1,len);
% Tao tap am
noise voi ti so SNR(i)

r_signal = NRZ_signal + noise;
% Tin hieu thu
duoc = NRZ + noise
NRZ_decoded = sign(r_signal);
% Giai ma tin
hieu NRZ thu duoc
[n,BER(i)] = symerr(NRZ_decoded,NRZ_signal);
%
Tinh xac suat loi
end
plot(SNR_db,BER,'bo--');
% Ve do thi
title('Ty le bit loi');
xlabel('SNR_d_B');
ylabel('BER');


-

Kết quả:

-

Code:

5.2
len = 100000;
% Do dai dong bit mo phong
SNR_db = 0:2:8;
% Tao vector SNR_db = 0 2 4 6

8
SNR = 10.^(SNR_db/10);
% Doi SNR tu Decibel sang lan
bsignal = randi([0 1],1,len);
% Dong bit ngau nhiên do
dai len
NRZ_signal = bsignal*2-1;
% Bien doi dòng bit 0 1 sang
-1 1
N0 = 1./SNR;
% Cong suat tap am
for i=1:length(SNR_db)
noise = sqrt(N0(i))*randn(1,len);
% Tao tap am
noise voi ti so SNR(i)
r_signal = NRZ_signal + noise;
% Tin hieu thu
duoc = NRZ + noise
NRZ_decoded = sign(r_signal);
% Giai ma tin
hieu NRZ thu duoc
[n,BER(i)] = symerr(NRZ_decoded,NRZ_signal);
%
Tinh xac suat loi
end
plot(SNR_db,BER,'bo--');
% Ve do thi BER


Pe = 1/2*(1-erf(sqrt(SNR)/sqrt(2)));

% Xac suat loi
theo ly thuyet
hold on;
plot(SNR_db,Pe,'r*--');
% Ve do thi Pe
title('Do thi ty le bit loi theo ly thuyet va mo phong');
xlabel('SNR_d_B');
ylabel('BER');
legend('Mo phong','Ly thuyet');
- Kết quả:

- Câu hỏi:
1. Giải thích tại sao phải sử dụng các mã đường dây? Mã đường dây được sử dụng
trong những trường hợp nào?
 Mã đường dây có tác dụng chuyển phổ tín hiệu
 Hỗ trợ q trình đồng bộ đồng hồ có khả năng kiểm soát lỗi
2. Khi tỷ số SNR tang thig xác suất lỗi thay đổi như thế nào? Giải thích? So sánh với
kết quả trên đồ thị?
 Giảm vì đây là 2 đại lương tỷ lệ nghịch.
3. Nếu giải mã tín hiệu NRZ bằng lệnh “NRZ-decoded = sign (r_signal)” như hướng
dẫn ở trên sẽ có một số trường hợp khơng chính xác, là trường hợp nào? Tại sao?
 Đó là trường hợp khơng mang dấu bởi vì có 2 loại tín hiệu NRZ đơn cực và
NRZ lưỡng cực
4. Nhận xét kết quả mô phỏng, so sánh giữa các giá trị BER tính bằng mơ phỏng và
xác suất lỗi Pe tính theo lý thuyết. Từ đó rút ra kết luận gì?


BÀI 6. KỸ THUẬT ĐIỀU CHẾ SỐ QPSK
-


Code:

len = 50000;
% Do dai dong bit mo phong
SNR_db = 0;
% SNR co don vi Decibel
SNR = 10^(SNR_db/10);
% Doi SNR tu Decibel sang lan
bsignal = randi([0 1],1,len);
% Tao dong bit ngau nhien
do dai len
% Thuc hien dieu che QPSK
for i=1:2:len
if bsignal(i)==0 & bsignal(i+1)==0
% 00
qpsk_signal((i+1)/2) = exp(j*3*pi/4);
elseif bsignal(i)==0 & bsignal(i+1)==1
% 01
qpsk_signal((i+1)/2) = exp(j*5*pi/4);
elseif bsignal(i)==1 & bsignal(i+1)==1
% 11
qpsk_signal((i+1)/2) = exp(j*7*pi/4);
elseif bsignal(i)==1 & bsignal(i+1)==0
% 10
qpsk_signal((i+1)/2) = exp(j*pi/4);
end
end
Es = std(qpsk_signal)^2;
% Nang luong ky hieu
N0 = Es/SNR;

% Cong suat tap am
% Tao nhieu Gauss
noise = sqrt(N0/2)*(randn(1,length(qpsk_signal))
+j*randn(1,length(qpsk_signal)));
qpsk_awgn = qpsk_signal + noise; % Cho tin hieu dieu che
di qua kenh AWGN
plot(qpsk_awgn,'.');
% Ve bieu do chom sao
tin hieu co nhieu
title('Do thi chom sao 4-QPSK');
xlabel('I');
ylabel('Q');
hold on;
plot(qpsk_signal,'r*');
% Ve bieu do chom sao
tin hieu khong nhieu
plot(exp(j*[0:0.01:2*pi]),'r--');


-

Kết quả:

+) Trường hợp SNR = 0
Do thi chom sao 4-QPSK

4
3
2


Q

1
0
-1
-2
-3
-4
-4

-3

-2

-1

0

I

1

2

3

4


+) Trường hợp SNR = 3dB

Do thi chom sao 4-QPSK

3

2

Q

1

0

-1

-2

-3
-3

-2

-1

0

I

1

2


3


+) Trường hợp SNR = 6dB
Do thi chom sao 4-QPSK

2.5
2
1.5
1

Q

0.5
0
-0.5
-1
-1.5
-2
-2

-1.5

-1

-0.5

0


0.5

1

1.5

2

2.5

I

- Câu hỏi:
1. Điều chế tín hiệu để làm gì? Tại sao phải điều chế số? Nêu vai trò và chức năng
của khối điều chế trong thông tin số?
 Điều chế tín hiệu để đưa thơng tin cần truyền đi xa hơn. Khối điều chế có vai
trị quan trọng, có nhiệm vụ làm trung gian trong q trình xử lý tín hiệu để
truyền đi.
2. Mô tả kết quả mô phỏng? Giải thích?
 KQ mơ phỏng tín hiệu thu được dạng chum sao. Do đây là 4QPSK nên sẽ có 4
điểm lệch nhau 90 độ
3. Trong điều chế PSK, khi nào phía thu sẽ giải mã sai?
4. Năng lương ký hiệu Es và năng lượng bit Eb trong trường hợp trên là bao nhiêu?
Tại sao?
 Es = 3dB vì theo CT Es = N.SQR


BÀI SỐ 7. XÁC SUẤT LỖI BIT TRONG ĐIỀU CHẾ QPSK
-


Code:

len = 50000;
% Do dai dong bit mo phong
SNR_db = 0:2:8;
% Tao vector SNR_db = 0 2 4 6
8
SNR = 10.^(SNR_db/10);
% Doi SNR tu Decibel sang lan
bsignal = randi([0 1],1,len);
% Tao dong bit ngau nhien
do dai len
% Thuc hien dieu che QPSK
for i=1:2:len
if bsignal(i)==0 & bsignal(i+1)==0
% 00
qpsk_signal((i+1)/2) = exp(j*3*pi/4);
elseif bsignal(i)==0 & bsignal(i+1)==1
% 01
qpsk_signal((i+1)/2) = exp(j*5*pi/4);
elseif bsignal(i)==1 & bsignal(i+1)==1
% 11
qpsk_signal((i+1)/2) = exp(j*7*pi/4);
elseif bsignal(i)==1 & bsignal(i+1)==0
% 10
qpsk_signal((i+1)/2) = exp(j*pi/4);
end
end
% Tim BER mo phong
for i=1:length(SNR_db)

r_signal = awgn(qpsk_signal,SNR_db(i)); % Dieu che
QPSK di qua nhieu AWGN
for j=1:2:len
% Giai dieu che tin hieu QPSK co
nhieu
if real(r_signal((j+1)/2))>=0
if imag(r_signal((j+1)/2))>=0
% Goc phan tu
I
r_bsignal(j) = 1;
r_bsignal(j+1) = 0;
else
% Goc phan tu
IV
r_bsignal(j) = 1;
r_bsignal(j+1) = 1;
end
else
if imag(r_signal((j+1)/2))>=0
% Goc phan tu
II
r_bsignal(j) = 0;
r_bsignal(j+1) = 0;


else

III

end


% Goc phan tu
r_bsignal(j) = 0;
r_bsignal(j+1) = 1;

end
end
[n,BER(i)] = biterr(r_bsignal,bsignal);

end
Pb = 1/2*erfc(1/sqrt(2).*sqrt(SNR));
% Xac suat loi
bit
plot(SNR_db,Pb,'ro--');
% Ve do thi Pb ly
thuyet
title('Do thi ty le bit loi ly thuyet va mo phong');
xlabel('SNR_d_B');
ylabel('BER');
hold on;
plot(SNR_db,BER);
% Ve do thi BER
mo phong
legend('Ly thuyet','Mo phong');
hold off;
-

Kết quả:



Do thi ty le bit loi ly thuyet va mo phong

0.16

Ly thuyet
Mo phong

0.14
0.12

BER

0.1
0.08
0.06
0.04
0.02
0

0

1

2

3

4

5


6

7

8

SNRdB

SNR
Pb lý thuyết
BER mô phỏng

0dB
0.1575
0.1609

2dB
0.1018
0.1034

4dB
0.0560
0.0549

6dB
0.0233
0.0241

8dB

0.0059
0.0056

- Câu hỏi:
1. So sánh điều chế BPSK và QPSK?
 Xác suất lỗi bit là tương đương nhau nhưng QPSK có tỷ lệ lỗi thấp hơn
 QPSK là điều chế phụ trực giao mã hóa 2 bit thành 1
 BPSK là điều chế pha nhị phân, điều chế tín hiệu số 0, 1 lệch pha 180 độ
2. Nêu một số hệ thống trong thực tế sử dụng kỹ thuật điều chế số QPSK?
 Hệ thống OFDM
 Hệ thống truyền tin dưới nước


BÀI 8. MÔ PHỎNG ĐIỀU CHẾ M-QAM QUA KÊNH NHIỄU GAUSS
-

Code:

n_sym = 50000; % So ky tu dieu che
M = [16 64 256]; % So symbol ky hieu
SNR_db = 0:25; % Tao vector SNR = 0 - 25 Decibel
BER = zeros(length(M),length(SNR_db)); % BER de luu ti le loi bit
EbN0 = SNR_db;
Pe = BER;
for k = 1:size(M,2) % size(M,2) la so cot cua M
s_stream = randi([0 M(k)-1],1,n_sym); % Tao dong bieu tuong do dain_sym
s_mod = qammod(s_stream,M(k),'GRAY'); % Dieu che M-QAM
for r = 1:size(SNR_db,2) % Vong lap tinh BER
s_mod_awgn = awgn(s_mod,SNR_db(r),'measured'); % Tin hieu qua nhieu
s_demod = qamdemod(s_mod_awgn,M(k),'GRAY'); % Giai dieu che M-QAM

[num, ratio] = biterr(s_stream,s_demod); % Tinh ti le loi bit
BER(k,r) = ratio; % Luu ti le loi bit vao BER
EbN0(r) = 10^(SNR_db(r)/20);
Pe(k,r) = berawgn (EbN0(r),'qam',M(k));
end
end
semilogy(SNR_db,BER(1,:),'bo-'); % Ve do thi BER ung voi M = 16
hold on;
plot(EbN0,Pe(1,:),'g-'); % Ve do thi Pe ung voi M = 16
semilogy(SNR_db,BER(2,:),'rs-'); % Ve do thi BER ung voi M = 64
plot(EbN0,Pe(2,:),'c-'); % Ve do thi Pe ung voi M = 64
semilogy(SNR_db,BER(3,:),'m*-'); % Ve do thi BER ung voi M = 256
plot(EbN0,Pe(3,:),'k-'); % Ve do thi Pe ung voi M = 256
grid on;
title('Do thi the hien ty le loi bit M-QAM');
xlabel('SNR_d_B');
ylabel('BER');
legend('BER 16-QAM','Pe 16-QAM','BER 64-QAM','Pe 64-QAM','BER 256-QAM','Pe
256-QAM' );
hold off;


-

Kết quả:
Do thi the hien ty le loi bit M-QAM

100

10-2


BER

10-4

10-6

BER 16-QAM
Pe 16-QAM
BER 64-QAM
Pe 64-QAM
BER 256-QAM
Pe 256-QAM

10-8

10-10

10-12

0

5

10

15

20


25

SNRdB

SNR =
16-QAM

BER

0dB

5dB

10dB

15dB

20dB

25dB

0.2879

0.1642

0.0586

0.0047

5.0000e-06


0

0.3603

0.2614

0.1528

0.0645

0.0086

2.3333e-05

0.3959

0.3245

0.2365

0.1417

0.0658

0.0125

Pe
64-QAM


BER
Pe

256QAM

BER
Pe

- Câu hỏi:
1. Khi số mức điều chế M tang thì BER thay đổi như thế nào? Giải thích?
 M tang thì BER cững tang. Vì số mức điều chế tang thì BER cũng tang
2. Số mức điều chế M tang lên cao thì sẽ có ưu nhược điểm gì? M có thế tăng lên rất
lớn khơng? Vì sao?
 M tang lên cao thì truyền được nhiều bit hơn nhưng công suất và tỷ lệ lỗi bit
cũng tang
 M không thể tăng lên rất lớn vì khi đó sẽ tốn chi phí để tăng công suất phát



×