Bài giảng Truyền thông số
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:
- bai_giang_truyen_thong_so.ppt
Nội dung text: Bài giảng Truyền thông số
- TRUYỀN THÔNG SỐ DIGITAL COMMUNICATION Tuần 6 Mã hóa kênh p1
- 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ơ
- 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ế
- 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
- 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
- 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
- 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.
- Mã đối xứng (antipodal)
- Mã trực giao (orthogonal) i, j = 1, , M; (M-ary waveform)
- Mã trực giao (orthogonal) tt • Ví dụ: tập mã trực giao- Hadamard matrix
- Mã trực giao (orthogonal) tt • Ví dụ: tập mã trực giao- Hadamard matrix
- Mã song trực giao (biorthogonal)
- 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
- Các phương pháp điều khiển lỗi
- 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
- 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
- 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
- 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).
- 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 ab=ba F 1. The operations “+” and “.” distribute: a(b+c)=(ab)+(ac)
- 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 av=u V 3. (a+b)v=av+bv and a (u+ v)=au+av 4. a,b F,v V (ab)v=a(bv) 5. v V, 1 v=v
- 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.
- 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.
- 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→CVn • Members of C are called code-words. • The all-zero codeword is a codeword. • Any linear combination of code-words is a codeword.
- 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
- Mã khối tuyến tính (Linear block codes)
- Mã khối tuyến tính
- 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)=m1V1+m2V2++m2Vk – Vi là độc lập tuyến tính (linearly independent).
- Mã khối tuyến tính
- Mã khối tuyến tính table 6.1
- Mã khối tuyến tính – ma trận kiểm tra H
- Giải mã khối tuyến tính
- 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
- Ví dụ cách xác định Syndrome S
- Ví dụ về 1 decoder sửa lỗi
- 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)
- Khoảng cách Hamming – khả năng dò sai Error correcting capability Error detecting capability:
- 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(UV) • Khoảng cách tối thiểu của 1 mã khối: dmin=mind(Ui,Uj)=minw(Ui) i j i
- Thiết kế mã (n, k) đặt
- Ví dụ mã (8, 2)
- Ví dụ mã (8, 2)
- • 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
- Mã Hamming
- 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.
- Mã Hamming tt đặt
- Mã Hamming tt
- Mã Hamming tt
- Giải mã Hamming
- * 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
- Example of the block codes PB 8PSK QPSK Eb/N0 [dB]
- 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
- 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.
- 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
- Cyclic block codes – Find the generator and parity check matrices, G and H, respectively. 2 3 g(X)=1+1X+0X+1X (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
- 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)
- 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 n12n−k12k 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)=m1V1+m2V2++m2Vk
- 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
- 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