Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 36 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
36
Dung lượng
424,4 KB
Nội dung
BÀI 4: MÃ HÓA KÊNH (Channel coding) Đặng Lê Khoa Email:danglekhoa@yahoo.com dlkhoa@fetel.hcmuns.edu.vn Facuty of Electronics HCMUNS Facuty of Electronics&&Telecommunications, Telecommunications, HCMUNS Nội dung trình bày • Mã hóa kênh ( Channel coding ) • Mã hóa khối (Block codes) + Mã lập (Repetition Code) + Hamming codes + Cyclic codes * Reed-Solomon codes • Mã hóa chập (Convolutional codes) + Encode + Decode 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS Sơ đồ khối hệ thống DCS Format Source encode Channel encode Pulse modulate Bandpass modulate Digital demodulation Format 2006-02-16 Source decode Channel decode Detect Facuty of Electronics & Lecture Telecommunications, HCMUNS Channel Digital modulation Demod Sample Channel coding gì? • Tín hiệu truyền qua kênh truyền bị ảnh hưởng nhiễu, can nhiễu, fading… tín hiệu đầu thu bị sai • Mã hóa kênh: dùng để bảo vệ liệu không bị sai cách thêm vào bit dư thừa (redundancy) • Ý tưởng mã hóa kênh gởi chuỗi bit có khả sửa lỗi • Mã hóa kênh không làm giảm lỗi bit truyền mà làm giảm lỗi bit liệu (bảng tin) • Có hai loại mã hóa kênh là: Block codes Convolutional codes 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS Định lý giới hạn Shannon • Đối với kênh truyền AWGN, ta có C: channel capacity (bits per second) B: transmission bandwidth (Hz) P: received signal power (watts) No: single-sided noise power density (watts/Hz) Eb: average bit energy Rb: transmission bit rate C/B: bandwidth efficiency 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS Galois field • Binary field : – Tập {0,1}, thực phép cộng phép nhân kết thuộc trường Addition 00 0 1 1 11 – 2006-02-16 Multiplication 00 0 1 1 1 Binary field gọi Galois field, GF(2) Facuty of Electronics & Lecture Telecommunications, HCMUNS Cách tạo trường Galois Dùng ghi dịch Chọn giá trị khởi tạo (đa thức) để sinh chuỗi dài 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS Galois Field Construction GF(24) with p(x) = + x +x4 1 10 0 1 3 3 1 1 01 10 6 7 1 8 1 0 11 11 1010 3 01 111 3 11 9 0 01 10 5 10 010 0 010 2 2 4 0000 111 12 1 13 11 14 10 01 Facuty of Electronics & Telecommunications, HCMUNS 1111 Block codes • Block codes loại forward error correction (FEC) -> cho phép tự sửa sai đầu thu • Trong block codes, bit parity thêm vào bảng tin để tạo thành code word code blocks • Khả sửa lỗi block code phụ thuộc vào code distance • Block codes có tính chất tuyến tính => kết phép tính số học phần tử phần tử thuộc trường 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS Block codes (tt) • • • • Luồng thông tin phân thành khối k bits Mỗi khối mã hóa thành khối lớn có n bits Các mã điều biến gởi qua kênh truyền Quá trình thực ngược lại đầu thu Channel encoder Data block k bits n-k Codeword n bits Redundant bits k Rc Code rate n 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS 10 Linear block codes – cont’d • Standard array and syndrome table decoding S rHT Calculate Find the coset leader,eˆ ei, corresponding to S CalculateU ˆ r eˆ and corresponding m ˆ – Note that • • 2006-02-16 ˆ r eˆ (U e) eˆ U (e eˆ ) U If eˆ e, error is corrected If eˆ e , undetectable decoding error occurs Facuty of Electronics & Lecture Telecommunications, HCMUNS 22 Linear block codes – cont’d • Example: Standard array for the (6,3) code codewords 000000 110100 011010 101110 101001 011101 110011 000111 000001 110101 011011 101111 101000 011100 110010 000110 000010 110111 011000 101100 101011 011111 110001 000101 000100 110011 011100 101010 101101 011010 110111 000110 001000 111100 010000 100100 coset 100000 010100 010001 100101 010110 Coset leaders 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS 23 Linear block codes – cont’d Error pattern Syndrome 000000 000001 000 101 000010 000100 011 110 001000 010000 001 010 100000 010001 100 111 2006-02-16 U (101110) transmitted r (001110) is received The syndrome of r is computed : S rHT (001110)H T (100) Error pattern corresponding to this syndrome is eˆ (100000) The corrected vector is estimated ˆ r eˆ (001110) (100000) (101110) U Facuty of Electronics & Lecture Telecommunications, HCMUNS 24 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 Code length : n 2m m n 2bits : k m m Number of informatio Number of parity bits : n-k m Error correction capability : t – The columns of the parity-check matrix, H, consist of all non-zero binary m-tuples 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS 25 Hamming codes • Example: Systematic Hamming code (7,4) 1 0 1 1 H 0 1 1 [I 33 0 1 1 0 1 0 1 1 0 [P G 1 0 0 1 1 0 2006-02-16 PT ] I 44 ] Facuty of Electronics & Lecture Telecommunications, HCMUNS 26 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 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS 27 Cyclic block codes • A linear (n,k) code is called a Cyclic code if all cyclic shifts of a codeword are also a codeword U (u0 , u1 , u , , u n 1 ) “i” cyclic shifts of U U (i ) (u n i , u n i 1 , , un 1 , u0 , u1 , u2 , , u n i 1 ) – Example: U (1101) U (1) (1110) U ( ) (0111) U (3) (1011) U ( ) (1101) U 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS 28 Cyclic block codes • Algebraic structure of Cyclic codes, implies expressing codewords in polynomial form U( X ) u0 u1 X u2 X un 1 X n 1 • degree (n-1) Relationship between a codeword and its cyclic shifts: XU ( X ) u0 X u1 X , un X n 1 u n 1 X n un 1 u0 X u1 X un 2 X n 1 u n 1 X n u n 1 U (1) ( X ) u n1 ( X n 1) U (1) ( X ) u n 1 ( X n 1) – Hence: U (1) ( X ) XU( X ) modulo ( X n 1) By extension 2006-02-16 U (i ) ( X ) X i U ( X ) modulo ( X n 1) Facuty of Electronics & Lecture Telecommunications, HCMUNS 29 • Cyclic block codes Basic properties of Cyclic codes: – Let C be a binary (n,k) linear cyclic code Within the set of code polynomials in C, there is a unique monic polynomial g ( X ) with minimal degree r n g ( X )is called the generator polynomials g ( X ) g g1 X g r X r Every code polynomial U( X ) in C, can be expressed uniquely as U( X ) m( X )g ( X ) The generator polynomial g ( X ) is a factor of X n 1 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS 30 Cyclic block codes • The orthogonality of G and H in polynomial form is expressed as g ( X )h( X ) X n .1This means h( X ) is also a factor of X n 1 The row i, i 1, , k, of generator matrix is formed by the coefficients of the " i 1"cyclic shift of the generator polynomial g0 g( X ) Xg ( X ) G k 1 X g ( X ) 0 2006-02-16 g1 g r g g1 g r g g1 g r g0 g1 0 g r Facuty of Electronics & Lecture Telecommunications, HCMUNS 31 Cyclic block codes • Systematic encoding algorithm for an (n,k) Cyclic code: Multiply the message polynomial by m( X ) Divide the result of Step by the generator polynomial Let be the reminder g( X ) Add to p(X ) U( X ) 2006-02-16 X nk p( X ) to form the codeword X nk m( X ) Facuty of Electronics & Lecture Telecommunications, HCMUNS 32 Cyclic block codes • Example: For the systematic (7,4) Cyclic code with generator polynomial g( X ) Find the codeword for the message 1 X X m (1011) n 7, k 4, n k m (1011) m ( X ) X X X n k m( X ) X 3m ( X ) X (1 X X ) X X X Divide X n k m ( X ) by g ( X) : X X X (1 X X X )(1 X X ) quotient q(X) generator g(X) remainder p ( X ) Form the codeword polynomial : U ( X ) p ( X ) X 3m ( X ) X X X U (1 00 1011 ) parity bits message bits 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS 33 Cyclic block codes – Find the generator and parity check matrices, G and H, respectively g ( X ) X X X ( g , g1 , g , g ) (1101) 1 0 G 0 0 1 0 0 1 0 1 0 0 1 1 1 0 G 1 1 1 0 0 1 0 1 0 0 0 1 P 2006-02-16 I 44 Not in systematic form We the following: row(1) row(3) row(3) row(1) row(2) row(4) row(4) 1 0 1 H 0 1 1 0 0 1 1 I 33 Facuty of Electronics & Lecture Telecommunications, HCMUNS PT 34 Cyclic block codes • Syndrome decoding for Cyclic codes: – Received codeword in polynomial form is given by Received codeword r ( X ) U ( X ) e( X ) Error pattern – The syndrome is the reminder obtained by dividing the received polynomial by the generator polynomial r ( and X ) Standard q( X )g ( array, X ) Serror ( X ) is estimated Syndrome – With syndrome • In Cyclic codes, the size of standard array is considerably reduced 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS 35 Example of the block codes PB 8PSK QPSK Eb / N [dB] 2006-02-16 Facuty of Electronics & Lecture Telecommunications, HCMUNS 36 [...]... 0 G 1 1 1 0 1 0 0 0 1 1 0 1 0 0 1 1 0 0 1 0 0 1 0 0 0 1 P 2006-02-16 I 4 4 Not in systematic form We do the following: row(1) row(3) row(3) row(1) row(2) row (4) row (4) 1 0 0 1 0 1 1 H 0 1 0 1 1 1 0 0 0 1 0 1 1 1 I 33 9 Facuty of Electronics & Lecture Telecommunications, HCMUNS PT 34 Cyclic block codes • Syndrome decoding for Cyclic codes: – Received codeword in polynomial... 9 Facuty of Electronics & Lecture Telecommunications, HCMUNS 25 Hamming codes • Example: Systematic Hamming code (7 ,4) 1 0 0 0 1 1 1 H 0 1 0 1 0 1 1 [I 33 0 0 1 1 1 0 1 0 1 1 1 0 0 0 1 0 1 0 1 0 0 [P G 1 1 0 0 0 1 0 1 1 1 0 0 0 1 2006-02-16 PT ] I 4 4 ] 9 Facuty of Electronics & Lecture Telecommunications, HCMUNS 26 Cyclic block codes • Cyclic codes are a subclass... the codeword X nk m( X ) 9 Facuty of Electronics & Lecture Telecommunications, HCMUNS 32 Cyclic block codes • Example: For the systematic (7 ,4) Cyclic code with generator polynomial g( X ) 1 Find the codeword for the message 1 X X 3 m (1011) n 7, k 4, n k 3 m (1011) m ( X ) 1 X 2 X 3 X n k m( X ) X 3m ( X ) X 3 (1 X 2 X 3 ) X 3 X 5 X 6 Divide X n k m ( X )... =>d12=W(1000001)=2 => Ta có thể giải mã để sửa sai bằng cách chọn codewords có dmin 2006-02-16 9 Facuty of Electronics & Lecture Telecommunications, HCMUNS 11 Repetition Code Facuty of Electronics & Telecommunications, HCMUNS 12 Repetition Code (tt) • Truyền: • Nhận : Facuty of Electronics & Telecommunications, HCMUNS 13 Repetition Code (tt) Facuty of Electronics & Telecommunications, HCMUNS 14 Linear block codes... Error pattern corresponding to this syndrome is eˆ (100000) The corrected vector is estimated ˆ r eˆ (001110) (100000) (101110) U 9 Facuty of Electronics & Lecture Telecommunications, HCMUNS 24 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 Code length... codeword U (u0 , u1 , u 2 , , u n 1 ) “i” cyclic shifts of U U (i ) (u n i , u n i 1 , , un 1 , u0 , u1 , u2 , , u n i 1 ) – Example: U (1101) U (1) (1110) U ( 2 ) (0111) U (3) (1011) U ( 4 ) (1101) U 2006-02-16 9 Facuty of Electronics & Lecture Telecommunications, HCMUNS 28 Cyclic block codes • Algebraic structure of Cyclic codes, implies expressing codewords in polynomial form U(