Phương pháp sửa lỗi chuyển tiếp FEC

Một phần của tài liệu Nghiên cứu mã điều khiển lỗi trong mạng cảm biến không dây để nâng cao hiệu quả việc sử dụng năng lượng (Trang 64)

FEC được liên kết với một mã nhân chập khối bên trong để truyền dữ liệu tới hạn một cách thông suốt, như các truy nhập điều khiển khung và truy nhập khởi đầu.

Mục tiêu của phương pháp này là xây dựng nguyên tắc sửa lỗi dựa vào khoảng cách Hamming. Trên nguyên tắc này, phương pháp sửa lỗi “kiểm tra chẵn lẻ (parity check)” được xây dựng và tạo ra quy trình sửa lỗi tối ưu và phù hợp với công nghệ truyền tin hiện nay.

Xét v1 và v2 là 2 dãy nhị phân dài n bit, ta gọi khoảng cách Hamming giữa 2 dãy v1 và v2 là số bit tương ứng khác nhau. Ký hiệu d(v1, v2).

Ví dụ :

v1 = 10101010 v2 = 10101111

Ta nhận thấy rằng bit thứ 6 và bit thứ 8 giữa v1 và v2 là khác nhau nên số bit tương ứng khác nhau giữa v1 và v2 là 2. Do đó ta nói khoảng cách Hamming giữa v1 và v2 là 2 hay d(v1,v2) = 2.

Bổ đề tự sửa lỗi được ứng dụng trong FEC

Xét bộ mã W= {w1 , w2, … , ws} gồm có s từ mã nhị phân dài n bit và 1 số nguyên dương e.

- Nếu khoảng cách hamming nhỏ nhất dmin >= 2e+1

Khi đó thì tất cả các dãy nhận được v có thể tự sửa được tối đa e bit lỗi. - Nếu dmin >= 2e

Thì tất cả các dãy nhận được v sẽ có khả năng phát hiện tối đa e lỗi; nếu tổng số bit lỗi < e thì v có thể tự điều chỉnh được, nếu số bit lỗi = e thì chỉ phát hiện

được lỗi và không thể điều chính được.

Trong bộ mã khối , gọi n là số bit trong một từ mã, k là số bit thông tin và m là bit kiểm tra chẵn lẻ, e là số lỗi. khi đó:

0 2 e m i n i C  

Điều kiện đủ để bộ mã có thể tự sửa lỗi (theo Vasharmov-Gilbert-Sacks) 1 0 2 e m i n i C    Với: ! !*( )! i n n C i n i   Ví dụ:

Mã 3 chiều (x, y, z) bắt đầu từ gốc 000. Cứ một tín hiệu t hay đổi thì mã bị đẩy đi theo 1 cạnh, chẳng hạn :

000 cách 010, 001 bởi 1 cạnh

011 cách 010, 111 và 001 bởi 1 cạnh.

Như vậy, nếu ta chọn w1 = 010, w2 = 001, w3 = 111 thì khoảng cách giữa chúng là 2 ; tức là d(w1,w2)=(w1,w3)=d(w2,w3)=2

Vậy nếu có lỗi phát sinh thì chỉ phát hiện chứ không sửa được. Như vậy ta có thể phân dạng các loại lỗi sau:

- Lỗi có thể tự điều chỉnh: Gọi wiWlà từ mã đúng được truyền tại nơi phát; v là từ mã nhận được tại nơi thu (truyền đúng thì wi = v).

Trường hợp v # w; có thể xác định và tự điều chỉnh lại lỗi khi và chỉ khi tồn tại duy nhất từ mã w*iW sao cho d(v

j, w*i)=min d(vj, wi) => khi đó dựa theo nguyên tắc ngần vẫn đúng vj được gải mã về w*i

- Lỗi chỉ phát hiện không thể tự điều chỉnh: Trong trường hợp này tồn tại w* và w** sao cho d(vj,w*) = d(vj,w**) = min d(vj,wi) với mọi wi thuộc W

=> không thể giải mã chính xác.

- Lỗi không phát hiện được: Trong trường hợp này ta giải mã ra w*I nhưng khác với wi đã truyền.

Một phần của tài liệu Nghiên cứu mã điều khiển lỗi trong mạng cảm biến không dây để nâng cao hiệu quả việc sử dụng năng lượng (Trang 64)