Bài giảng Truyền thông số

ppt 59 trang huongle 3730
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Truyền thông số", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pptbai_giang_truyen_thong_so.ppt

Nội dung text: Bài giảng Truyền thông số

  1. TRUYỀN THÔNG SỐ DIGITAL COMMUNICATION Tuần 6 Mã hóa kênh p1
  2. Reference • “Digital communications: Fundamentals and Applications” by Bernard Sklar • Catharina Logothetis’s Lecture, Uppsala University • Bài giảng của Trần Nhựt Khải Hoàn, đại học Cần Thơ
  3. Tuần 5 •Các cách điều chế dải qua (bandpass modulation schemes) ➢M-PAM, M-PSK, M-FSK, M-QAM •Tách sóng tại đầu thu (detect the transmitted information at the receiver) ➢Coherent detection ➢Non-coherent detection •Tính xác suất lỗi trung bình (the average probability of symbol error) của các dạng điều chế •So sánh các dạng điều chế
  4. Tuần 6 • Mã hóa kênh (Channel coding) – Các phương pháp điều khiển lỗi • Mã khối tuyến tính (Linear block codes) – The error detection and correction capability – Encoding and decoding – Hamming codes – Cyclic codes
  5. Tuần 6 • Mã hóa kênh (Channel coding) – Các phương pháp điều khiển lỗi • Mã khối tuyến tính (Linear block codes) – The error detection and correction capability – Encoding and decoding – Hamming codes – Cyclic codes
  6. Block diagram of a DCS Source Channel Pulse Bandpass Format encode encode modulate modulate Digital modulation Channel Digital demodulation Source Channel Demod. Format Detect decode decode Sample
  7. Mã hóa kênh Mã hóa kênh là biến đổi tín hiệu để cải thiện hiệu quả của hệ thống (communications performance), tăng khả năng chống lại nhiễu, suy giảm, interference Có 2 loại: • Waveform coding: mã hóa tín hiệu để giảm error khi tách sóng: đối xứng (antipodal), trực giao (orthogonal), song trực giao (biorthogonal) • Structured sequences: thêm các bit để giúp phát hiện và sửa lỗi.
  8. Mã đối xứng (antipodal)
  9. Mã trực giao (orthogonal) i, j = 1, , M; (M-ary waveform)
  10. Mã trực giao (orthogonal) tt • Ví dụ: tập mã trực giao- Hadamard matrix
  11. Mã trực giao (orthogonal) tt • Ví dụ: tập mã trực giao- Hadamard matrix
  12. Mã song trực giao (biorthogonal)
  13. Tuần 6 • Mã hóa kênh (Channel coding) – Các phương pháp điều khiển lỗi • Mã khối tuyến tính (Linear block codes) – The error detection and correction capability – Encoding and decoding – Hamming codes – Cyclic codes
  14. Các phương pháp điều khiển lỗi
  15. Các phương pháp điều khiển lỗi (tt) Detail: • Automatic Repeat reQuest (ARQ) – Full-duplex connection, error detection codes – The receiver sends a feedback to the transmitter, saying that if any error is detected in the received packet or not (Not- Acknowledgement (NACK) and Acknowledgement (ACK), respectively). – The transmitter retransmits the previously sent packet if it receives NACK. • Forward Error Correction (FEC) – Simplex connection, error correction codes – The receiver tries to correct some errors • Hybrid ARQ (ARQ+FEC) – Full-duplex, error detection and correction codes
  16. Why using error correction coding? – Error performance vs. bandwidth – Power vs. bandwidth PB – Data rate vs. bandwidth – Capacity vs. bandwidth Coded A Coding gain: F For a given bit-error probability, C B the reduction in the Eb/N0 that can be realized through the use of code: D E E E Uncoded G [dB]= b [dB]− b [dB] N N 0 u 0 c Eb/N0
  17. Tuần 6 • Mã hóa kênh (Channel coding) • Mã khối tuyến tính (Linear block codes) – The error detection and correction capability – Encoding and decoding – Hamming codes – Cyclic codes
  18. Some definitions • Binary field : – The set {0,1}, under modulo 2 binary addition and multiplication forms a field. Addition Multiplication 0  0 = 0 0  0 = 0 0  1 = 1 0  1 = 0 1  0 = 1 1  0 = 0 1  1 = 0 1  1 = 1 – Binary field is also called Galois field, GF(2).
  19. Some definitions • Fields : – Let F be a set of objects on which two operations ‘+’ and ‘.’ are defined. – F is said to be a field if and only if 1. F forms a commutative group under + operation. The additive identity element is labelled “0”. a,b F a+b=b+a F 1. F-{0} forms a commutative group under . Operation. The multiplicative identity element is labelled “1”. a,b F ab=ba F 1. The operations “+” and “.” distribute: a(b+c)=(ab)+(ac)
  20. Some definitions • Vector space: – Let V be a set of vectors and F a fields of elements called scalars (vô hướng). V forms a vector space over F if: 1. u,v V u+v=v+u F 2. a F,v V av=u V 3. (a+b)v=av+bv and a  (u+ v)=au+av 4. a,b F,v V (ab)v=a(bv) 5. v V, 1 v=v
  21. Some definitions – Examples of vector spaces • The set of binary n-tuples, denoted by Vn V4={(0000),(0001),(0010),(0011),(0100),(0101),(0111), (1000 ),(1001 ),(1010 ), (1011 ),(1100 ),(1101),(1111)} • Vector subspace: – A subset S of the vector space is called a subspace if: • The all-zero vector is in S. • The sum of any two vectors in S is also in S. Example: {(0000),(0101),(1010),(1111)} is a subspace of V4.
  22. Some definitions • Spanning set: – A collection of vectors G = v 1 , v 2 ,  , v n , the linear combinations of which include all vectors in a vector space V, is said to be a spanning set for V or to span V. • Example: (1000),(0110),(1100),(0011),(1001) spans V4. • Bases: – A spanning set for V that has minimal cardinality is called a basis for V. • Cardinality of a set is the number of objects in the set. • Example: (1000),(0100),(0010),(0001) is a basis forV4.
  23. Mã khối tuyến tính (Linear block codes) • Linear block code (n,k) k – A set C  V n with cardinality 2 is called a linear block code if, and only if, it is a subspace of the vector space V n . Vk→CVn • Members of C are called code-words. • The all-zero codeword is a codeword. • Any linear combination of code-words is a codeword.
  24. Linear block codes – cont’d • Chuỗi bit dữ liệu được cắt ra thành các khối (blocks) k bits. • Mỗi khối được mã hóa thành 1 khối lớn hơn có n bits. • The coded bits được điều chế và truyền đi. • Quá trình ngược lại được làm tại đầu thu. Channel Data block encoder Codeword k bits n bits n-k Redundant bits k R= Code rate c n
  25. Mã khối tuyến tính (Linear block codes)
  26. Mã khối tuyến tính
  27. Mã khối tuyến tính tt • Encoding in (n,k) block code U =mG V1 V (u,u,,u)=(m,m,,m) 2 1 2 n 1 2 k  Vk (u1,u2,,un)=m1V1+m2V2++m2Vk – Vi là độc lập tuyến tính (linearly independent).
  28. Mã khối tuyến tính
  29. Mã khối tuyến tính table 6.1
  30. Mã khối tuyến tính – ma trận kiểm tra H
  31. Giải mã khối tuyến tính
  32. Linear block codes – cont’d Channel Data source Format m U Modulation encoding channel Channel Demodulation Data sink Format mˆ decoding r Detection r =U+e r=(r1,r2, ,rn) received codeword or vector e=(e1,e2, ,en) error patternor vector • Syndrome testing: – S is syndrome of r, corresponding to the error pattern e. S=rHT=eHT
  33. Ví dụ cách xác định Syndrome S
  34. Ví dụ về 1 decoder sửa lỗi
  35. Ví dụ Error pattern Syndrome 000000 000 U=(101110) transmitted. 000001 101 r=(001110) is received. 000010 011 The syndrome of r is computed: 000100 110 T T 001000 001 S=rH=(001110)H =(100) 010000 010 Errorpattern correspond ing to this syndrome is 100000 100 eˆ=(100000) 010001 111 The corrected vectoris estimated Uˆ =r+eˆ=(001110)+(100000)=(101110)
  36. Khoảng cách Hamming – khả năng dò sai Error correcting capability Error detecting capability:
  37. Mã khối tuyến tính (tt) • Trọng số Hamming của vector U, w(U), là số non- zero trong U. • Khoảng cách Hamming giữa 2 vectors U và V, là số thành phần của chúng khác nhau. d(U,V)=w(UV) • Khoảng cách tối thiểu của 1 mã khối: dmin=mind(Ui,Uj)=minw(Ui) i j i
  38. Thiết kế mã (n, k) đặt
  39. Ví dụ mã (8, 2)
  40. Ví dụ mã (8, 2)
  41. • Mã hóa kênh (Channel coding) • Mã khối tuyến tính (Linear block codes) – The error detection and correction capability – Encoding and decoding – Hamming codes – Cyclic codes
  42. Mã Hamming
  43. Hamming codes • Hamming codes – Hamming codes are a subclass of linear block codes and belong to the category of perfect codes. – Hamming codes are expressed as a function of a single integer m .2 Code length: n = 2 m −1 Numberof information bits : k =2m−m−1 Numberof paritybits: n-k = m Errorcorrection capability: t = 1 – The columns of the parity-check matrix, H, consist of all non-zero binary m-tuples.
  44. Mã Hamming tt đặt
  45. Mã Hamming tt
  46. Mã Hamming tt
  47. Giải mã Hamming
  48. * 1 Ví dụ mã Hamming khác • Example: Systematic Hamming code (7,4) 1000111 H= 0101011 =[I PT] 3 3 0011101 0111000 1010100 G= =[P I ] 1100010 4 4 1110001
  49. Example of the block codes PB 8PSK QPSK Eb/N0 [dB]
  50. Tuần 6 • Mã hóa kênh (Channel coding) • Mã khối tuyến tính (Linear block codes) – The error detection and correction capability – Encoding and decoding – Hamming codes – Cyclic codes
  51. Cyclic block codes • Cyclic codes are a subclass of linear block codes. • Encoding and syndrome calculation are easily performed using feedback shift- registers. – Hence, relatively long block codes can be implemented with a reasonable complexity. • BCH and Reed-Solomon codes are cyclic codes.
  52. Cyclic block codes • A linear (n,k) code is called a Cyclic code if all cyclic shifts of a codeword are also a codeword. “i” cyclic shifts of U U=(u0,u1,u2, ,un−1) (i) U=(un−i,un−i+1, ,un−1,u0,u1,u2, ,un−i−1) – Example: U=(1101) U(1)=(1110) U(2 )=(0111 ) U(3 )=(1011 ) U(4 )=(1101 )=U
  53. Cyclic block codes – Find the generator and parity check matrices, G and H, respectively. 2 3 g(X)=1+1X+0X+1X (g0,g1,g2,g3)=(1101) 1101000 Not in systematic form. 0110100 G= We do the following: 0011010 row(1)+row(3)→row(3) 0001101 row(1)+row(2)+row(4)→row(4) 1 1 0 1 0 0 0 1001011 0 1 1 0 1 0 0 G= H= 0101110 1 1 1 0 0 1 0 0010111 1 0 1 0 0 0 1 T I3 3 P P I4 4
  54. Bài tập Mã khối tuyến tính (7,4), ma trận sinh (generator matrix) a) Tìm tất cả codewords b) Tìm ma trận parity-check H c) Tính syndrome cho received vector [1 1 0 1 1 0 1]. Vector này có bị sai không? d) Tính khả năng sửa lỗi (error correcting capability) e) Tính khả năng dò lỗi (error detecting capability)
  55. Mã khối tuyến tính G=[PIk] Ik=k k identity matrix Pk=k (n−k) matrix U=(u,u, ,u)=(p,p, ,p,m,m, ,m) 12 n12n−k12k paritybitsmessage bits U =mG GH T = 0 V1 V (u,u,,u)=(m,m,,m) 2 H=[I PT] 1 2 n 1 2 k  n−k Vk S=rHT=eHT (u1,u2,,un)=m1V1+m2V2++m2Vk
  56. Bài tập nộp cho GV • Cách 1: nộp trực tiếp cho GV (sau mỗi buổi học) • Cách 2: gửi email tới: truyenthongsodtvt@gmail.com • Thời hạn nộp bài: thứ ba ngày 3 tháng 5 (buổi học cuối) • Trong email và file nộp ghi rõ họ tên và mã số SV • Điểm bài tập: 30% tổng điểm
  57. Bài tập nộp cho GV Chọn 1 trong các bài sau: 1. Tìm hiểu về Non-coherent detection (D-PSK và Bin D-PSK) 2. Dùng Matlab mô phỏng để so sánh sự khác nhau của các kiểu điều chế (vẽ SNR vs PE) 3. Tìm hiểu về Cyclic block codes