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

Vớ dụ dựng (11,7) mó Hamming:

Một phần của tài liệu TĂNG KHẢ NĂNG THÀNH CÔNG TRUYỀN DỮ LIỆU TRONG MẠNG KHÔNG DÂY BẰNG PHƯƠNG PHÁP MÃ HÓA DỮ LIỆU (Trang 33 -36 )

Lấy vớ dụ chỳng ta cú một từ dữ liệu dài 7 bit với giỏ trị là "0110101". Để chứng minh phương phỏp cỏc mó Hamming được tớnh toỏn và được sử dụng để kiểm tra lỗi, xin xem bảng liệt kờ dưới đõy. Chữ d (DỮ LIỆU) được dựng để biểu thị cỏc bit dữ liệu và chữ p (parity) để biểu thị cỏc bit chẵn lẻ (parity bits).

Đầu tiờn, cỏc bit của dữ liệu được đặt vào vị trớ tương thớch của chỳng, sau đú cỏc bit chẵn lẻ cho mỗi trường hợp được tớnh toỏn dựng quy luật bit chẵn lẻ số chẵn[1]

. Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11

Vị trớ bit chẵn lẻ và cỏc bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7

Nhúm dữ liệu (khụng cú bit chẵn lẻ): 0 1 1 0 1 0 1

p1 1 0 1 0 1 1

p2 0 0 1 0 0 1

p3 0 1 1 0

p4 0 1 0 1

Nhúm dữ liệu (với bit chẵn lẻ): 1 0 0 0 1 1 0 0 1 0 1

Nhúm dữ liệu mới (new DỮ LIỆU word) - bao gồm cỏc bit chẵn lẻ - bõy giờ là "10001100101". Nếu chỳng ta thử cho rằng bit cuối cựng bị thoỏi húa (gets corrupted) và bị lộn ngược từ 1 sang 0. Nhúm dữ liệu mới sẽ là "10001100100"; Dưới đõy, chỳng ta sẽ phõn tớch quy luật kiến tạo mó Hamming bằng cỏch cho bit chẵn lẻ giỏ trị 1 khi kết quả kiểm tra dựng quy luật số chẵn bị sai.

Thứ tự bit 1 2 3 4 5 6 7 8 9 10 11 Vị trớ bit chẵn lẻ và cỏc bit dữ liệu p1 p2 d1 p3 d2 d3 d4 p4 d5 d6 d7 Kiểm chẵn lẻ Bit chẵn lẻ Nhúm dữ liệu nhận : 1 0 0 0 1 1 0 0 1 0 0 1 p1 1 0 1 0 1 0 Sai 1 p2 0 0 1 0 0 0 Sai 1 p3 0 1 1 0 Đỳng 0 p4 0 1 0 0 Sai 1

Kiểm tra cỏc bit chẵn lẻ (bit bị đảo lộn cú nền thẫm)

Bước cuối cựng là định giỏ trị của cỏc bit chẵn lẻ (nờn nhớ bit nằm dưới cựng được viết về bờn phải - viết ngược lại từ dưới lờn trờn). Giỏ trị số nguyờn của cỏc bit chẵn lẻ là 11(10), và như vậy cú nghĩa là bit thứ 11 trong nhúm dữ liệu (DỮ LIỆU word) - bao gồm cả cỏc bit chẵn lẻ - là bit cú giỏ trị khụng đỳng, và bit này cần phải đổi ngược lại.

p4 p3 p2 p1

Nhị phõn 1 0 1 1

Khi hai bit dữ liệu (3,7) cú cựng bit chẵn lẻ kiểm tra tại vi trớ 2k - vớ dụ (1,2) - biến đổi giỏ trị (lỗi trong truyền thụng) thỡ giỏ trị của bit chẵn lẻ vẫn đỳng như giỏ trị gốc (0,1)

Việc đổi ngược giỏ trị của bit thứ 11 làm cho nhúm 10001100100

trở lại thành 10001100101.

Bằng việc bỏ đi phần mó Hamming, chỳng ta lấy được phần dữ liệu gốc với giỏ trị là: 0110101.

Lưu ý, cỏc bit chẵn lẻ khụng kiểm tra được lẫn nhau, nếu chỉ một bit chẵn lẻ bị sai thụi, trong khi tất cả cỏc bit khỏc là đỳng, thỡ chỉ cú bit chẵn lẻ núi đến là sai mà thụi và khụng phải là cỏc bit nú kiểm tra (not any bit it checks).

Cuối cựng, giả sử cú hai bit biến đổi, tại vị trớ x và y. Nếu x và y cú cựng một bit tại vị trớ 2k

trong đại diện nhị phõn của chỳng, thỡ bit chẵn lẻ tương ứng với vị trớ đấy kiểm tra cả hai bit, và do đú sẽ giữ nguyờn giỏ trị, khụng thay đổi. Song một số bit chẵn lẻ nào đấy nhất định phải bị thay đổi, vỡ x ≠ y, và do đú hai bit tương ứng nào đú cú giỏ trị x và y khỏc nhau. Do vậy, mó Hamming phỏt hiện tất cả cỏc lỗi do hai bit bị thay đổi — song nú khụng phõn biệt được chỳng với cỏc lỗi do 1 bit bị thay đổi.

Một phần của tài liệu TĂNG KHẢ NĂNG THÀNH CÔNG TRUYỀN DỮ LIỆU TRONG MẠNG KHÔNG DÂY BẰNG PHƯƠNG PHÁP MÃ HÓA DỮ LIỆU (Trang 33 -36 )

×