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

Chương 7 mã hóa kênh mã khối tk

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 (309.85 KB, 38 trang )

Nội dung
Trường Đại học Khoa Học Tự Nhiên
Khoa Điện tử - viễn thơng

Bài 7:

MÃ HĨA KÊNH

Nội dung:
1. Giới thiệu
2. Các giải pháp kiểm soát lỗi
3. Mã lặp
4. Mã kiểm tra chẵn lẻ
5. Mã khối
6. Mã chập
1


Giới thiệu
Trường Đại học Khoa Học Tự Nhiên
Khoa Điện tử - viễn thông

GiỚI THIỆU
Tài nguyên thông tin:
Công suất, tốc độ & băng thông
Định lý dung lượng kênh (Shannon-Hartley):

C  B log 2 (1  S / N ) (bps )
-> tồn tại phương pháp mã hóa kiểm sốt lỗi
Các phương pháp mã hóa kiểm sốt lỗi:
-ARQ (Automatic Repeat Request): phát hiện lỗi và tự động


yêu cầu truyền lại
-FECC (Forward Error Correction Coding): phát hiện lỗi và
sửa lỗi
2


Types of Error Control


Các loại kết nối đầu cuối

Faculty of Electronics & Telecommunications. HCMUS

[3]


Automatic repeat request (ARQ)

Faculty of Electronics & Telecommunications. HCMUS

[4]


Một số loại mã hóa sửa sai


Mã lặp (Repetition Code)




Mã khối tuyến tính (Linear Block Code), mã Hamming



Mã vịng (Cyclic Code)



Mã chập (Convolutional Code)

5


MÃ LẶP

Faculty of Electronics & Telecommunications. HCMUS

[6]


Mã lặp




Trong trường hợp truyền bit “0” và bit “1”, ta có thể thực hiện
như sau:
Bit truyền

Từ mã


0

000

1

111

Việc khơi phục dữ liệu dự vào số bit nào nhận được nhiều hơn
Chuỗi bit nhận

Khôi phục từ mã

Bit nhận

000

000

0

001

000

0

010


000

0

100

000

0

011

111

1

101

111

1

110

111

1

111
Faculty111

of Electronics & Telecommunications. HCMUS

1

[7]


MÃ KIỂM TRA CHẴN LẺ
(PARITY CHECK)

Faculty of Electronics & Telecommunications. HCMUS

[8]


Kiểm tra chẵn lẻ (Parity Check)


Thêm 1 bit, sau cho tổng số bit “1” là một số chẵn (parity chẵn,
kết quả xor bằng 0), hoặc lẻ (parity lẻ)
– Kiểm tra dữ liệu truyền, không thể sửa lỗi

Gửi kèm dữ liệu và một bit parity để báo hiệu tổng số bit ‘1’
trong từ mã là một số chẵn hay là số lẻ
- Phương pháp parity chẵn: tổng số bit 1 là một số chẵn
- Phương pháp parity lẻ: tổng số bit 1 là một số lẻ
Ví dụ: Một từ mã có 8 bit dữ liệu và 1 bit parity

+ Parity chẵn: P = 0
+ Parity lẻ: P =1

9


Kiểm tra chẵn lẻ (Parity Check)


Thêm 1 bit, sau cho tổng số bit “1” là một số chẵn (parity chẵn,
kết quả xor bằng 0), hoặc lẻ (parity lẻ)
– Kiểm tra dữ liệu truyền, không thể sửa lỗi

10


MÃ KHỐI TUYẾN TÍNH
(LINEAR BLOCK CODES)

Faculty of Electronics & Telecommunications. HCMUS

[11]


Mã khối tuyến tính – Định nghĩa
Trường Đại học Khoa Học Tự Nhiên
Khoa Điện tử - viễn thông

MÃ KHỐI TUYẾN TÍNH
Định nghĩa:

k bits
tin


Bộ mã hóa khối
n bits
Bit kiểm tra
(n-k) bits

n bits
từ mã

Bit thông tin
k bits

12


Mã khối tuyến tính – Mã hóa
Trường Đại học Khoa Học Tự Nhiên
Khoa Điện tử - viễn thông

MÃ KHỐI TUYẾN TÍNH
Phương pháp mã hóa:
 Gọi vectơ m chứa k bits thơng tin cần mã hóa: m = [m0, m1,….mk-1 ]
và vectơ c chứa m = n – k bits kiểm tra:

c = [c0, c1,….cm-1 ]

-> Vectơ từ mã của mã khối tuyến tính (n,k):
U = [t0, t1,….tn-1 ] = [ c / m ] = [ c0, c1,….cm-1 / m0, m1,….mk-1 ]
Quy luật tạo từ mã:


U

[1 n ]

 m [1 k ] G

Trong đó G là ma trận sinh có cấu trúc:

G[ k  n ]

p 01 ...
V0   p 00
V   p
p11 ...
10
1





...  ...
... ...



V
 k 1   p k 1,0 p k 1,1 ...

[kn]


G [ k  n ]  [ Pk  m | I k  k ]
p 0, m 1
p1, m 1
...
p k 1, m 1

0 ... 0 

0 1 ... 0 
... ... ... ... 

0 0 ... 1 
1

13


Mã khối tuyến tính – Bits kiểm tra
Trường Đại học Khoa Học Tự Nhiên
Khoa Điện tử - viễn thông

MÃ KHỐI TUYẾN TÍNH
Xác định các bits kiểm tra:

p01 ... p0,m1
 p00

p10
p11 ... p1,m1


U[1n ]  m[1,k ]G[ k ,n ]  [m0 , m1 ,..., mk 1 ]
...
... ... ...

 pk 1,0 pk 1,1 ... pk 1,m1
U[1n ]  (u1 , u 2 ,....., u n )  [c0 , c1 ,..., cm1 / m0 , m1 ,..., mk 1 ]
 c j  m0 p0 j  m1 p1 j  ...  mk 1 pk 1, j ,

1 0 ... 0

0 1 ... 0 
... ... ... ... 

0 0 ... 1 

j  0,1,..., m 1

14


Mã khối tuyến tính – Ví dụ
Trường Đại học Khoa Học Tự Nhiên
Khoa Điện tử - viễn thông

MÃ KHỐI TUYẾN TÍNH
Ví dụ: cho tin cần mã hóa, m = [m0, m1, m2, m3 ] = [1 0 1 1]

Ma trận sinh G[4,7]: G


[ 4 ,7 ]

 [ P4 , 3

1
0
/ I 4 ,4 ]  
1

1

1 0 0 0
1 1 0 1 0 0 
1 1 0 0 1 0

0 1 0 0 0 1
1 0

Xác định từ mã :

U

[1 , 7 ]

= m [1 , 4 ] G

[ 4 ,7 ]

1
0

 [1 0 1 1 ] 
1

1

1
1
1
0

0
1
1
1

1
0
0
0

0
1
0
0

0 0
0 0 
1 0

0 1


-> Từ mã : u = [c0, c1, c2, m0, m1 , m2 , m3] = [1 0 0 1 0 1 1]
15


Mã khối tuyến tính – Ma trận kiểm tra H
Trường Đại học Khoa Học Tự Nhiên
Khoa Điện tử - viễn thơng

MÃ KHỐI TUYẾN TÍNH
Ma trận kiểm tra H:

1

0
T

H[ m,n ]  [I[ m,m ]Pk ,m ] 
 ...

 0

0 ... 0

p00

p10 ...

1 ... 0


p01

p11 ...

... ... ...

...

...

...

0 ... 1 p0,m1 p1,m1 ...

pk 1,0 

pk 1,1 

...

pk 1,m1 

GH T  0
uH T  0
u  [c0 , c1 ,..., cm 1 / m 0 , m1 ,..., m k 1 ]
 u j  m0 p0 j  m1 p1 j  ...  mk 1 pk 1, j  0 ,

j  0,1,..., m  1
16



Ví dụ
Trường Đại học Khoa Học Tự Nhiên
Khoa Điện tử - viễn thơng

MÃ KHỐI TUYẾN TÍNH
Ví dụ: Từ ma trận sinh G trên, xác định ma trận kiểm tra H
Ma trận sinh G[4,7]:
Xác định ma trận
kiểm tra H :

H [ 3 , 7 ]  [ I 3 ,3

G

[ 4 ,7 ]

 [ P4 , 3

1
0
/ I 4 ,4 ]  
1

1

1 0 0 0
1 1 0 1 0 0 
1 1 0 0 1 0


0 1 0 0 0 1
1 0

1 0 0 1 0 1 1 
/ P4T,3 ]  0 1 0 1 1 1 0   H T [ 3 , 7 ]
 0 0 1 0 1 1 1 

1
0

0

 1
0

1
1


0 0 
1 0 
0 1

1 0
1 1

1 1
0 1 

17



Mã khối tuyến tính – Giải mã
Trường Đại học Khoa Học Tự Nhiên
Khoa Điện tử - viễn thông

MÃ KHỐI TUYẾN TÍNH
Phương pháp giải mã:
 Gọi từ mã phát đi:

u = [c0 , c1,….cm-1 / m0 , m1,….mk-1 ]

 Gọi từ mã thu được:

r = [r0 r1,….rn-1 ]

 Vectơ sai:

e = [e0 e1,….en-1 ]

trong đó:

ei =1 nếu ti ≠ ri



ei =0 nếu ti = ri

Thuật toán giải mã Syndrome (đặc trưng):


s  r H T  e H T  ( s 0 s1 .... s m  1 )
 s 0 e 0
 s  0 e 1
18


Giải mã Syndrome
Trường Đại học Khoa Học Tự Nhiên
Khoa Điện tử - viễn thơng

MÃ KHỐI TUYẾN TÍNH
Thuật tốn giải mã Syndrome:
 Bước 1:

Tính Syndrome s = rHT

 Bước 2:

Tìm ei = rHT -> Vectơ sai gây bởi kênh truyền

 Bước 3:

Giải mã tín hiệu thứ r -> u = r +e

19


Ví dụ
Trường Đại học Khoa Học Tự Nhiên
Khoa Điện tử - viễn thơng


MÃ KHỐI TUYẾN TÍNH
Ví dụ: Cho từ mã u = [c0, c1, c2, m0, m1 , m2 , m3] = [1 0 0 1 0 1 1]
Giải mã theo thuật tốn Syndrome có ma trận H đã cho với
vectơ mã thu được :

r = [r0 r1 r2 r3 r4 r5 r6] = [1 0 0 1 0 0 1]
Tính vectơ Syndrome :

s  r H

T

1 0
0 1

0 0

 ( r 0 r1 r 2 r 3 r 4 r 5 r 6 )  1 1
0 1

1 1
1 0


0
0
1
0
1

1
1






  ( s 0 s1 s 2 )





20



×