intTypePromotion=3

Báo cáo thí nghiệm Thông tin số và truyền số liệu

Chia sẻ: Nguyen Thai Nhat | Ngày: | Loại File: DOCX | Số trang:8

0
132
lượt xem
14
download

Báo cáo thí nghiệm Thông tin số và truyền số liệu

Mô tả tài liệu
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Báo cáo thí nghiệm Thông tin số và truyền số liệu được thực hiện nhằm tìm hiểu làm thế nào để mô phỏng được một hệ thống thông tin số trong sự hiện diện của nhiễu; mối quan hệ giữa tỷ số tín hiệu trên nhiễu và xác suất của lỗi; cách kiểm soát lỗi để có thể mã hóa sửa đúng bit lỗi và giảm xác suất của lỗi tại một SNR cố định.

Chủ đề:
Lưu

Nội dung Text: Báo cáo thí nghiệm Thông tin số và truyền số liệu

  1. TRƯỜNG ĐẠI HỌC BÁCH KHOA ĐÀ NẴNG KHOA ĐIỆN TỬ VIỄN THÔNG ­­­o0o­­­ BÁO CÁO THÍ NGHIỆM  THÔNG TIN SỐ VÀ TRUYỀN  SỐ LIỆU               Giáo viên hướng dẫn             :     Mac Nh ̣ ư Minh             Sinh viên thực hiện                : ­ Nguyễn Thị Nguyên        10DT2                 ­ Võ Văn Bách       10DT2                          ­ Lê Văn Lâm         10DT2     ­ Ngô Quang Hiếu        10DT2                Nhom ́     :    38B     1
  2.      I. Mục đích: Để tìm hiểu làm thế nào để mô phỏng được một hệ thống thông tin số trong sự hiện  diện của nhiễu. Để thấy mối quan hệ giữa tỷ số tín hiệu trên nhiễu và xác suất của lỗi. Để xem cách kiểm soát lỗi để có thể mã hóa sửa đúng bit lỗi và giảm xác suất của lỗi  tại một SNR cố định. II. Trinh t ̀ ự thực hiên ̣ ­Vơi cac gia tri cua ́ ́ ́ ̣ ̉  : N=[20 1000 10000 50000 100000 200000]; ́ ́ ̣ của: ­Cac gia tri  A=[0.5,1/,1,,2,2,4,4]; 1/ Bước 1: Tạo tín hiệu nguồn ngẫu nhiên s_uncoded ̀ ̀ ̉ ̣ ̃ ́ ̣    ­dung ham randn() đê tao chuôi tin hiêu ngâu nhiên ̃    ­Tín hiệu ngẫu nhiên ở đây là những chuỗi bit 0,1     ­Cụ thể: Signal=randn(1,N)>=0.5 2/ Bước 2 : Tạo tín hiệu s_coded . Lấy 4 bits của tín hiệu s_uncoded mã hóa thành 7 bits bằng cách lấy 4 bits của s_uncoded *  G(ma trận sinh) sẽ tạo thành 7 bits của s_coded. Phép nhân ở đây là Modulo 2. Quá trình  cứ lặp lại cho đến khi hết các bits của s_uncoded. . Với ma trận sinh G:   G = [1 1 0 1 0 0 0; 2
  3.                                                  0 1 1 0 1 0 0;                                                  1 1 1 0 0 1 0;                                                  1 0 1 0 0 0 1];        *   Với mã Hamming(7,4) thì 4 bits tin sẽ được mà hóa thành 7 bits .  3/ Bước 3: Modulation  Đây là quá trình chuyển tín hiệu từ số sang tương tự (D/A).  Trong bước này chúng ta sẽ chuyển các chuỗi nguôn v̀ ới các giá trị 1,0 thành các giá trị +A  và –A,với 1 thì thành +A còn 0 thành ­A.  Bằng cách: các giá trị 1,0 chuyển thành 1 và ­1  sau đó nhân với A được kết quả.Với A ở đây là biên độ của tín hiệu .  Y=A*(Signal*2­1)            Tạo tín hiệu truyen 4/ Bước 4: Tạo tín hiệu nhiễu  Tạo chuỗi nhiễu noise ngẫu nhiên có chiều dài bằng chiều dài của N*7/4                 5/ Bước 5: Demodulation (Giải điều chế)  Đây là bước mà ở máy thu sẽ chuyển tín hiệu liên tục thu được thành tín hiều rời rạc.  Chúng ta chọn ngưỡng giới hạn là 0. Nếu tín hiệu nào có biên độ trên 0 thì cho là 1 còn  3 bits syndrome s. Với ma trận HT = [1  0 0; 0 1 0;0 0 1; 1 1 0 ;0 1 1;1 1 1;1 0 1]              Chuyển 3 bits syndrome s nhị phân sang thập phân. Từ số thập phân có được để tìm lỗi ta dựa vào ma trân E. Lấy số thập phân có được + 1=> vị trí hàng tương ứng trong vecto E => xác định  được bits lỗi trong ma trân E. Phải cộng 1 vì trong E thì hàng đầu tiên không có lỗi. Bits 1 tương ứng trong vecto E là vị trí mà bản tin bị lỗi.         3
  4. E= [   0     0     0     0     0     0     0;           0     0     1     0     0     0     0;           0     1     0     0     0     0     0;           0     0     0     0     1     0     0;           1     0     0     0     0     0     0;           0     0     0     0     0     0     1;           0     0     0     1     0     0     0;           0     0     0     0     0     1     0]; Để sữa lỗi ta lấy vecto e tương ứng với vị trí đã xác định cộng  Modulo 2  với 7 bits s_coded bị lỗi ban đầu. Cuối cùng lấy 4 bits cuối cùng của chuỗi 7 bits mới tìm được thì đó chính là bản tin  đúng ban đầu. Quá trình cứ lặp lại mỗi lần lấy 7 bits của deBPSK_coded để giải mã và vòng lặp  sẽ thực hiện đến khi hết các bits của deBPSK_coded.Sau khi mã hóa và giải mã với  mã Hamming(7,4) thì vẫn còn một số bits lỗi là do: Trong bài thí nghiệm này với vecto E đã cho thì chỉ có thể sữa được lỗi sai 1 bits, từ  2 lỗi trở lên thì sẽ không sữa được. Việc sửa lỗi còn phụ thuộc vào khoảng cách Hamming tối thiểu d , nếu d càng lớn  thì => khả năng sửa lỗi tối đa t=int((d­1)/2) tăng và khả năng phát hiện lỗi cũng  tăng,khả năng phát hiện và sửa lỗi sẽ tăng.Và bao giờ cũng tồn tại xác xuất lỗi  không phát hiện được => không có loại mã nào là hoàn thiện, tất cả chỉ ở mức  tương đối chấp nhận được . Nên với mã (7,4) này cũng vậy thì sau khi giải mã thì  vẫn còn tồn tại lỗi.  7/ Bước 7: Tính xác xuất lỗi  Xác xuất lỗi = số bits lỗi / chiều dài của bản tin  Xác định số bits lỗi trong trường hợp truyền chưa mã hóa uncoded và đã mã hóa encoded  bằng cách so sánh các bits của  rec_decoded với s_uncoded. Vd: để xác định số bits lỗi của rec_decoded và s_uncoded ta cộng modulo 2 hai tín hiệu với  nhau. Thì những bits nào khác nhau sẽ cho kết quả là 1 còn giống nhau = 0 , sau đó ta cộng  các bits lại với nhau thì ta sẽ có được số bits bị lỗi.   Tính tỉ lệ tín hiệu trên nhiễu SNR(dB) SNR(dB)=20*log10(A)  Tính tỉ lệ bit lôi BER ̃ BER=error1/length(s_uncoded); 4
  5. 8/ Bước 8: Vẽ kết quả  Vẽ đồ thị của xác xuất lỗi so với tỉ số SNR của tín hiệu lúc chưa mã hóa  Vẽ đồ thị của xác xuất lỗi so với tỉ số SNR của tín hiệu lúc đã mã hóa bằng mã Hamming   (7,4)  Vẽ đồ thị của xác xuất lỗi so với tỉ số SNR của tín hiệu ưng v ́ ới N=200000 Code 3.1:  clc; close all; N=[20 1000 10000 50000 100000 200000] A=[0.5 1/sqrt(2) 1 sqrt(2) 2 2*sqrt(2) 4 4*sqrt(2)] for j=1:6 n=N(j) for i=1:8 m=randn(1,n)>=0.5; e=randn(1,n); b=(A(i))*(m*2-1); y=(b+e)>0; d=mod((m+y),2); s=sum(d); ber(i,j)=s/n; snr(i,j)=20*log10(A(i)); end end semilogy(snr(:,1),ber(:,1),'ro',snr(:,2),ber(:,2),'bo', snr(:,3),ber(:,3),'go-',snr(:,4),ber(:,4),'ko--', snr(:,5),ber(:,5),'yo--',snr(:,6),ber(:,6),'mo-'); grid on legend('N=20','N=1000','N=10000','N=50000','N=100000','N=200000') xlabel('SNR(dB)') ylabel('BER') 5
  6. Code 3.2 clc; close all; N=10000; A=[0.5 1/sqrt(2) 1 sqrt(2) 2 2*sqrt(2) 4 4*sqrt(2)]; G=[1 1 0 1 0 0 0 0 1 1 0 1 0 0 1 1 1 0 0 1 0 1 0 1 0 0 0 1]; H=[1 0 0 1 0 1 1 0 1 0 1 1 1 0 0 0 1 0 1 1 1]; E=[0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 0 1 0]; m=randn(1,N)>=0.5; m1=reshape(m,4,[])'; x=mod(m1*G,2); x1=reshape(x',1,[]); for i=1:8 % không ma hoa % t=A(i)*(2*m-1); r=(t+randn(1,N))>0; s=mod(r+m,2); BER(i)=sum(s)/N; SNR(i)=20*log10(A(i)); 6
  7. % ma hoa hamming (7,4)% tt=A(i)*(2*x1-1); e=randn(1,N*7/4); t1=(tt+e)>=0; x2=reshape(t1,7,[])'; x3=mod(x2*H',2); s=bi2de(x3,'left-msb'); t0=mod(x2+E(s+1,:),2); x4=t0(:,4:7); x5=reshape(x4',1,[]); x6=mod(m+x5,2); ber(i)=sum(x6)/N; end semilogy(SNR,BER,'bs--',SNR,ber,'mo--'); grid on; title('Khong co ma hoa va Ma hoa Hamming (7,4) voi N=10000'); legend('Khong ma hoa','Co ma hoa') xlabel('SNR(dB)'); ylabel('BER');  Nhân xet:    ̣ ́  Xác suất lỗi bit ( BER ) phụ thuộc vào giá trị của biên độ điều chế A: với biên độ A càng lớn, xác  suất lỗi bit càng thấp và ngược lại.vi khi tăng gia tri cua A ,t ̀ ́ ̣ ̉ ưc la tăng biên đô xung truyên đi,luc  ́ ̀ ̣ ̀ ́ ̃ ̣ đo trong qua trinh truyên nhiêu công vao se không anh h ́ ́ ̀ ̀ ̀ ̃ ̉ ưởng nhiêu đên gia tri biên đô so v ̀ ́ ́ ̣ ̣ ới khi giá  ̣ ̃ ̀ ơi gia tri A be thi nhiêu công vao co thê gây đao dâu biên đô va khi giai điêu chê se tri A be.nghia la v ́ ́ ́ ̣ ́ ̀ ̃ ̣ ̀ ́ ̉ ̉ ́ ̣ ̀ ̉ ̀ ́ ̃  ́ ́ ̣ ược lai so v cho ra bit  co gia tri ng ̣ ới gia tri gôc.con v ́ ̣ ́ ̀ ới A lớn thi nhiêu kho lam đao dâu biên đô  ̀ ̃ ́ ̀ ̉ ́ ̣ hơn. 7
  8.  Xác suất lỗi bit ( BER ) không phụ thuộc vào chiều dài tín hiệu: vi v ̀ ơi tín hi ́ ệu càng dài thì  số bits lỗi càng nhiều nhưng ti lê bit lôi so v ̉ ̣ ̃ ơi dong d ́ ̀ ư liêu se không tăng ̃ ̣ ̃  Khi có mã hóa Hamming  xác suất lỗi bit thấp hơn nhiều so với khi chưa mã hóa. .vi khi s ̀ ử  ̣ ́ ̉ ́ ̣ ̀ ửa được lôĩ dung ma Hamming co thê phat hiên va s  Đồ thị mô phỏng có dạng gần giống với đồ thị theo lý thuyết.  8

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản