intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Bài giảng Lý thuyết thông tin: Chương 4.3 - ThS. Huỳnh Văn Kha

Chia sẻ: Ngocnga Ngocnga | Ngày: | Loại File: PDF | Số trang:14

65
lượt xem
6
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Chương 4.3 trình bày các nội dung về chận trên và dưới cho khả năng sửa sai của bộ mã kiểm tra chẵn lẻ. Trong phần này, chúng ta sẽ tập trung giải quyết bài toán liên quan đến chủ đề trên. Mời các bạn cùng tham khảo.

Chủ đề:
Lưu

Nội dung Text: Bài giảng Lý thuyết thông tin: Chương 4.3 - ThS. Huỳnh Văn Kha

  1. Chương 4: Mã sửa sai 4.3 Chận trên và dưới cho khả năng sửa sai của bộ mã kiểm tra chẵn lẻ
  2. 2 Huỳnh Văn Kha 9/30/2010 Khả năng sửa sai • Như đã biết, số từ mã tăng sẽ làm giảm khả năng sửa sai của bộ mã. Ta sẽ cố gắng định lượng mối liên hệ này. • Trong phần này, ta giải quyết bài toán sau: cần chọn ma trận kiểm tra chẵn lẻ như thế nào để bộ mã thu được sửa sai được e bit trở lại. • Xét trường hợp e = 1. Ta xây dựng bộ mã sửa sai được 1 bit. • Nếu bit sai ở vị trí thứ j thì vector hiệu chỉnh tương ứng là cột thứ j của ma trận chẵn lẻ.
  3. 3 Huỳnh Văn Kha 9/30/2010 Khả năng sửa sai • Ta chọn ma trận chẵn lẻ sao cho n cột của nó khác nhau đôi một (và khác 0). • Khi đó mọi dãy sai một bit đều có các vector hiệu chỉnh khác nhau. Do đó mọi lỗi sai 1 bit đều sửa sai được. • Ví dụ, nếu n = 7, k = 4, ta có thể chọn ma trận chẵn lẻ như sau:
  4. 4 Huỳnh Văn Kha 9/30/2010 ðịnh lý 4.9 Bộ mã kiểm tra chẵn lẻ xác định bởi ma trận A sẽ sửa sai được e bit trở lại nếu và chỉ nếu mọi tập 2e cột của A đều độc lập tuyến tính. Chứng minh: Theo định lý 4.8, mọi lỗi sai không quá e bit sẽ được làm đúng nếu và chỉ nếu các mẫu sai ≤ e bit có các vector hiệu chỉnh phân biệt nhau. Nghĩa là nếu và chỉ nếu không có tổ hợp tuyến tính của e (hoặc ít hơn) cột nào trong A bằng với một tổ hợp tuyến tính khác (cũng của e cột (hoặc ít hơn) trong A). Điều này tương đương với mỗi tập 2e cột của A đều phải độc lập tuyến tính.
  5. 5 Huỳnh Văn Kha 9/30/2010 Ví dụ • Có thể thấy mỗi tập gồm 4 cột của A là độc lập tuyến tính. Bộ mã ứng với A có thể sửa sai 2 bit • Tuy nhiên: c(r1)+c(r8)+c(r9)=c(r3)+c(r4)+c(r6) • Do đó các dãy sai ở ba cột 1, 8, 9 và các dãy sai ở ba cột 3, 4, 6 có cùng vector hiệu chỉnh • Như vậy sai 3 bit chưa chắc sửa được.
  6. 6 Huỳnh Văn Kha 9/30/2010 Chận trên và dưới cho khả năng sửa sai của bộ mã kiểm tra chẵn lẻ • Giả sử ta cần xây dựng bộ mã kiểm tra chẵn lẻ sửa sai được e bit (chiều dài từ mã n cố định) • Vấn đề đặt ra là cần bao nhiêu bit kiểm tra để xây dựng bộ mã như vậy • Ta muốn càng ít bit kiểm tra càng tốt. Do số bit kiểm tra càng ít thì số bit thông tin càng lớn và ta có càng nhiều từ mã • Tổng quát thì không thể xác định chính xác số bit kiểm tra cực tiểu. Nhưng ta có thể ước lượng chận dưới và chận trên như các định lý sau
  7. 7 Huỳnh Văn Kha 9/30/2010 ðịnh lý 4.10 (Chận dưới Hamming cho số bit kiểm tra) Số bit kiểm tra trong một bộ mã chẵn lẻ sửa sai được e bit cần thỏa: Trong đó: n = chiều dài từ mã m = số bit kiểm tra = n - k
  8. 8 Huỳnh Văn Kha 9/30/2010 Chứng minh ñịnh lý 4.10 • Để bộ mã kiểm tra chẵn lẻ sửa sai được e bit trở lại thì các lỗi sai e bit hoặc ít hơn có các vector hiệu chỉnh khác nhau đôi một. • Nếu từ mã có chiều dài n thì số lỗi sai đúng i bit là tổ hợp chập i của n. • Số các vector hiệu chỉnh là 2m. • Do đó để các vector hiệu chỉnh là duy nhất cho mỗi lỗi sai e bit trở lại thì:
  9. 9 Huỳnh Văn Kha 9/30/2010 Chú ý • Chận dưới Hamming cho số bit kiểm tra chính là chận trên Hamming cho số từ mã (định lý 4.3) • Chận dưới Hamming là điều kiện cần nhưng không đủ cho việc xây dựng bộ mã kiểm tra chẵn lẻ sửa sai được e bit. • Nói cách khác, nếu gọi m0 là số nguyên nhỏ nhất thỏa định lý 4.10 (với n và e cho trước) thì có thể không có bộ mã nào sửa sai được e bit mà chỉ sử dụng có m0 bit kiểm tra. • Ví dụ với n = 10, e = 2 ta có m0 = 6. Tuy nhiên không có bộ mã chẵn lẻ nào sửa sai được 2 bit mà sử dụng ít hơn 7 bit kiểm tra
  10. 10 Huỳnh Văn Kha 9/30/2010 ðịnh lý 4.11 (Điều kiện Varsharmov-Gilbert-Sacks) Một bộ mã kiểm tra chẵn lẻ sửa sai được e bit với chiều dài từ mã là n có thể xây dựng được nếu số bit kiểm tra m thỏa điều kiện: Đây là chận trên cho số bit kiểm tra cần thiết cho việc xậy dựng bộ mã chẵn lẻ sửa sai e bit
  11. 11 Huỳnh Văn Kha 9/30/2010 Chú ý • Điều kiện trong định lý 4.11 là điều kiện đủ nhưng không cần. • Nói cách khác, cố định n và e, gọi m1 là số nguyên dương nhỏ nhất thỏa định lý 4.11. Thì theo định lý 4.11 có thể xây dựng bộ mã sửa sai e bit sử dụng m1 bit kiểm tra. Tuy nhiên, trong một số trường hợp, ta cũng có thể xây dựng bộ mã sửa sai e bit mà chỉ sử dụng ít hơn m1 bit kiểm tra. • Ví dụ với n = 10, e = 2, ta có m1 = 8. Tuy nhiên ta có thể xây dựng bộ mã sửa sai 2 bit mà chỉ sử dụng 7 bit kiểm tra như ví dụ sau định lý 4.9
  12. 12 Huỳnh Văn Kha 9/30/2010 Chứng minh ñịnh lý 4.11 • Ta sẽ xây dựng bộ mã thỏa yêu cầu bằng cách chỉ ra các cột c(r1), c(r2), …, c(rn) của ma trận chẵn lẻ tương ứng. • Các cột này cần phải thỏa điều kiện: mọi tập gồm 2e cột đều độc lập tuyến tính. • Đầu tiên, chọn c(r1) khác 0 tùy ý • Chọn c(r2) sao cho c(r2) ≠ 0, c(r2) ≠ c(r1) • Chọn c(r3) sao cho c(r3) ≠ 0, c(r3) ≠ c(r1), c(r3) ≠ c(r2), c(r3) ≠ c(r1)+c(r2)
  13. 13 Huỳnh Văn Kha 9/30/2010 Chứng minh ñịnh lý 4.11 • Giả sử đã chọn được c(r1), c(r2), …, c(rn-1), ta chọn c(rn) thỏa:
  14. 14 Huỳnh Văn Kha 9/30/2010 Chứng minh ñịnh lý 4.11 • Số các tổ hợp nói trên, không vượt quá: (Chú ý: không nhất thiết tất cả các tổ hợp nói trên phân biệt nhau, do đó số tổ hợp có thể nhỏ hơn) • Như vậy, nếu tổng trên ≤ 2m thì hiển nhiên ta chọn được c(rn). Và do đó định lý được chứng minh.
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2