Mã hóa kênh truyền
261
dc = GF(2^3) array. Primitive polynomial = D^3+D+1 (11 decimal)
Array elements =
7 7 6
1 6 3
4 3 4
3 0 6
Ví dụ sau minh hoạ trường hợp bộ mã không có khả năng sửa lỗi:
Ví dụ 17-3. Mã hoá một thông điệp gồm 3 từ bằng mã Reed-Solomon [7,3].Tạo lỗi sao cho
bộ mã không có khả năng sửa lỗi. Giải mã và so sánh với thông điệp ban đầu.
n=7; k=3; % Chiều dài từ mã và thông điệp
m=3; % Số bit trên một ký hiệu
msg = gf([7 4 3;6 2 2;3 0 5],m) % Thông điệp gồm 3 từ
code = rsenc(msg,n,k); % Mã hoá
% Tạo 1 lỗi ở từ thứ 1, 2 lỗi ở từ thứ 2, 3 lỗi ở từ thứ 1
errors = gf([3 0 0 0 0 0 0;4 5 0 0 0 0 0;6 7 7 0 0 0 0],m);
codeNoi = code + errors
[dec,cnumerr,ccode] = rsdec(codeNoi,n,k) % Giải mã sai: cnumerr(3)= -1
Kết quả thực hiện chương trình:
msg = GF(2^3) array. Primitive polynomial = D^3+D+1 (11 decimal)
Array elements =
7 4 3
6 2 2
3 0 5
codeNoi = GF(2^3) array. Primitive polynomial = D^3+D+1 (11 decimal)
Array elements =
4 4 3 7 0 0 4
2 7 2 7 6 7 3
5 7 2 5 6 0 6
dec = GF(2^3) array. Primitive polynomial = D^3+D+1 (11 decimal)
Array elements =
7 4 3
6 2 2
5 7 2
cnumerr =
1
2
-1
ccode = GF(2^3) array. Primitive polynomial = D^3+D+1 (11 decimal)
Array elements =
7 4 3 7 0 0 4