Mã hóa kênh truyền
269
1
err_words =
3
Ví dụ 17-7. Sử dụng mã vòng [4,2] để mã hoá và giải mã một thông điệp cụ thể.Giả sử
bảng giải mã là ma trận 0.
n = 4; k = 2;
genpoly = [1 0 1]; % Đa thức sinh 1 + x^2
msg = [0 1; 0 0; 1 0];
code = encode(msg,n,k,'cyclic',genpoly);
noisycode = rem(code + randerr(3,4,[0 1;.7 .3]),2);
trt = zeros(2^(n-k),n); % Không sửa lỗi
[newmsg,err,ccode,cerr] = decode(noisycode,n,k,'cyclic',genpoly,trt)
err_words = find(err~=0) % Xác định từ đã bị lỗi.
Kết quả như sau:
newmsg =
0 1
0 0
0 0
err =
0
0
-1
ccode =
0 1 0 1
0 0 0 0
0 0 1 0
cerr =
0
0
-1
err_words =
3
Trong trường hợp này, từ thứ 3 có 2 lỗi, vượt quá khả năng sửa lỗi của bộ mã.
17.2. MAÕ CHAÄP
Mã chập là một phương pháp mã hoá sửa sai quan trọng. Khác với mã khối, mã chập là loại
mã có nhớ. Mặc dù, bộ mã hoá chập cũng nhận các thông điệp có số lượng ký hiệu xác định
và tạo ra một từ mã cũng có số ký hiệu xác định, nhưng từ mã tạo ra ở mỗi thời điểm không
chỉ phụ thuộc vào các ký hiệu của thông điệp hiện tại mà còn phụ thuộc vào các ký hiệu của
các thông điệp đã được mã hoá trước đó.