1. Trang chủ
  2. » Luận Văn - Báo Cáo

đề tài tìm hiểu về mã vòng

10 1,6K 41

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 10
Dung lượng 106,06 KB

Nội dung

Định nghĩa : Một mã tuyến tính Cn,k được gọi là mã vòng nếu ta dịch một vòng từ mã thì kết quả cũng là một từ mã.. *Chú ý: Ta sử dụng đa thức mã để chứng minh các tính chất của mã vòng..

Trang 1

Họ và tên: Nguyễn Quốc Thưởng

MSSV: 0820168

Lớp: 08ĐVT01

I – Giới thiệu:

1 Định nghĩa : Một mã tuyến tính C(n,k) được gọi là mã vòng nếu ta dịch một

vòng từ mã thì kết quả cũng là một từ mã Tức là w=a0a1… a n−2 a n−1 là một từ

mã thì v=a n−1 a0a1… a n−2 cũng là một từ mã

- Đa thức mã: Nếu w= a0a1… a n−2 a n−1 là một từ mã thì đa thức w=

a0 +a1x … a n−2 x n−2 a n−1 x n −1 là đa thức mã tương ứng với từ mã w

*Chú ý: Ta sử dụng đa thức mã để chứng minh các tính chất của mã vòng.

- Gọi w(i) là từ mã do dịch từ mã w i bit và w(i)

(x ) là đa thức mã tương ứng của

w(i). Các từ mã được xét trên trường GF(2) – trường nhị phân

- Trên trường GF(2) ta có:

x n+ j=x j∗(x n+ 1)+x j h ay x n+ j mod(x n+ 1)=x j .

- Xét ví dụ sau:

w(j)

(x)

=x (1+x3

)

+x5

=x2 (1+x 3

)

+x6

=x3 (1+ x 3

)

=x4 +x 7 mod 7

Từ ví dụ trên ta rút ra được mối quan hệ giữa w i với w (x):

w(i)

(x )=[x iw ( x)]mod (x n+1)

2 Các tính chất của mã vòng:

a Tính chất 1: Đa thức mã khác 0 có bậc nhỏ nhất là duy nhất.

Chứng minh: Giả sử tồn tại 2 đa thức mã khác 0 và có cùng bậc nhỏ nhất

là r(0 < r < n)

Trang 2

g ( x )=g0+g1x+ …+g r−1 x r −1

+x r

f ( x )=f0+f1x +…+f r −1 x r−1

+x r

Ta xét đa thức mã: h ( x )=g ( x )+f (x ), lúc này h(x ) có bậc tối đa là r-1 Điều này mâu thuẫn với giả thiết r là bậc nhỏ nhất nên ta có điều phải chứng minh.

Từ đây, ta kí hiệu đa thức mã có bậc nhỏ nhất là g ( x ).

b Tính chất 2: Hệ số tự do g0 của g ( x ) phải bằng 1.

Chứng minh: Giả sử g0=0 Ta có:

g ( x )=x∗(g1 +…+g r −1 x r−2+x r−1)

Ta đặt f ( x )=g1+…+ g r−1 x r −2+x r −1 Rõ ràng f ( x ) cũng là một đa thức mã

có được nhờ dịch trái 1 bit hay dịch phải (n-1) bit từ đa thức mã g ( x ) Mặt khác, f ( x ) có bậc r-1, điều này mâu thuẫn với giả thiết bậc của g ( x ) là r Đến đây ta đã có điều phải chứng minh

c Tính chất 3: Một đa thức v ( x ) trên trường GF(2) có bậc

Tức là v ( x )=q (x )∗g(x)

Chứng minh:

 Chứng minh nếu v ( x )=q (x )∗g(x) và bậc của v ( x ) nhỏ hơn hoặc bằng n-1 thì v ( x ) là đa thức mã:

Ta có: v ( x )=q (x )∗g (x )=( ∑

i=0

p

q i x i)∗g ( x )=

i=0

p

q i(x ig ( x ))

Trong đó p là bậc của q ( x )p+v ≤ n−1 Mà do x ig ( x ) với 0 ≤ i≤ p là đa thức mã (tương ứng với từ mã g¿) dịch i bit) Nên v ( x ) là đa thức mã vì bằng với 1 tổ hợp tuyến tính của các đa thức mã

 Để chứng minh chiều ngược lại của mệnh đề ta chia v ( x ) c h o g( x)

chúng ta được:

v ( x )=q (x )∗g (x )+r (x)

Trong đó r (x ) là đa thức dư và có bậc nhỏ hơn bậc của g(x ) Mặt khác, đối với các đa thức trên trường GF(2) ta có thể suy ra:

r ( x )=q ( x )∗g ( x )+v (x)

Trang 3

Nên r ( x ) là một đa thức mã Do định nghĩa g ( x ) là đa thức có bậc nhỏ nhất nên ta suy ra r ( x )=0 (Điều phải chứng minh)

Từ tính chất này, ta gọi g ( x ) là đa thức sinh vì từ g ( x ) có thể sinh ra tất

cả các đa thức mã khác

d Tính chất 4: Đa thức sinh của một mã vòng C(n,k) có bậc r=n-k.

Chứng minh: Theo định lí trên ta có mỗi đa thức mã v ( x ) là 1 bội sô của

chúng ta thấy do bậc của v ( x )≤ n−1 nên bậc của q ( x ) ≤( n−1)−r. Do đó có tổng cộng 2n−r đa thức q ( x ) Mặt khác, số lượng từ mã là 2k Từ đây suy ra

n−r=k h ay r=n−k

Từ đây ta biểu diễn g ( x ) như sau:

g ( x )=g0+g1x+…+g n−k x n−k (với g0=g n−k=1)

e Tính chất 5: Đa thức sinh của 1 mã vòng C(n,k) là 1 ước số của x n+1.

Chứng minh: Ta có:

g(i )(x )=[x ig ( x )]mod(x n+ 1)

x ig ( x )=q ( x )∗(x n+1)+g(i)

(x )

Chọn i=k, vì bậc g ( x )b ằ ng n−k nên ta suy ra q ( x )=1 tức là:

x k

g ( x )=(x n+1)+g(i)

(x)

x n+1=x k g ( x )+g(i)

(x)

g(i)

(x) là 1 đa thức mã nên có thể viết: g(i)

(x )=g ( x )∗a(x ) Thế vào phương trình trên ta có

x n

+1=g ( x )∗(x k

f Tính chất 6: Nếu g ( x ) là 1 đa thức có bậc n-k và là ước số của x n+1 thì

g ( x ) sinh ra mã vòng C(n,k).

Chứng minh: Xét k đa thức g ( x ), x∗g ( x ) ,… , x k−1 g ( x ) Các đa thức này đều

có bậc nhỏ hơn hoặc bằng n-1 Gọi v(x) là 1 tổ hợp tuyến tính của k đa thức này với các hệ số a i ∈GF (2)

v ( x )=a0g ( x )+a1x∗g ( x )+…+a k−1 x k−1

g ( x )

Trang 4

v(x) là 1 đa thức có bậc nhỏ hơn hoặc bằng n-1 và là bội số của g ( x ) Có tất cả 2k đa thức v (x) khác nhau và tạo nên 1 không gian tuyến tính của các

đa thức mã với g ( x ), x∗g ( x ) ,… , x k−1 g( x) là các đa thức hàm cơ sở Vì vậy 2k

tổ hợp (a0a1… a k−1) tương ứng với 2k đa thức này tạo nên 1 mã tuyến tính C(n,k) Bây giờ chúng ta chứng minh mã này có tính vòng, tức là chứng minh nếu v là 1 từ mã thì dịch v 1 bit chúng ta được v(1) cũng là 1 từ mã

Ta biểu diễn:

v ( x )=b0 +b1x+ …+b n−1 x n −1

v( 1 )

(x)=b n−1+b0x +…+b n−2 x n−1

Ta lại có

v( 1 ) (x)=[x∗v ( x )]mod (x n+1)

x∗v ( x )=b n−1(x n+1)+v( 1 )

(x )

Do v ( x ) v à(x n+ 1) đều là bội của g ( x ) nên v(i)

(x ) cũng là bội của g ( x )

Vì vậy v( 1 )

(x ) cũng là 1 đa thức mã

3 Ma trận sinh và ma trận kiểm tra của mã vòng:

a Ma trận sinh của mã vòng:

Ma trận sinh của mã vòng C(n,k) có dạng

Trong đó, g0=g n−k=1

Ví dụ: Tìm 1 mã vòng trong C(7,4) Dựa vào các tính chất của mã vòng ta biết được đa thức sinh của mã có bậc là 3 và là ước số của x7 +1 Ta phân tích: x7+1=(1+x )(1+x +x3)(1+x2+x3) Có 2 đa thức cùng có bậc là 3, chẳng hạn ta chọn g ( x )=1+ x+ x3 Từ đây ta có ma trận sinh

Trang 5

Bằng cách thực hiện các biến đổi đại số tuyến tính ta có thể biến đổi thành

ma trận sinh hệ thống dạng 2 như sau

Dịch chuyển 4 bit ta được ma trân sinh hệ thống dạng 1:

b Mã hóa thành từ mã hệ thống:

Gọi u(x) là đa thức tương ứng với thông báo u Bậc của u(x) nhỏ hơn hoặc bằng k-1 Chia x n−k

u (x) cho g(x) ta được

x n−k u ( x )=q ( x ) g ( x )+a(x )

Trong trường GF(2) ta suy ra được

x n−k u ( x )+a (x)=q ( x ) g ( x )

x n−ku ( x )+a( x) là bội của g(x) nên nó là đa thức mã Đa thức mã này có

k bit sau là k bit thông báo, đó chính là từ mã hệ thống dạng 2 tương ứng với thông báo u

Ví dụ: Cho mã vòng C(7,4) có ma trận sinh g ( x )=(1+x +x3) Thông báo u=1011, ta mã hóa u thành từ mã hệ thống dạng 2 như sau:

Ta có: u ( x )=1+ x2 Nhân u ( x ) với x n−k

=x3 rồi chia cho g(x) ta được

x3 ∗(1+ x ¿¿2)=x3

+x5

=x2

∗(1+x +x3)+x2

¿

w ( x )=x2+x3+x5

w=0011010 là từ mã hệ thống dạng 2 tương ứng của u.

Trang 6

c Ma trận kiểm tra mã vòng:

Ta có thể kiểm tra từ ma trận sinh hoặc ma trận sinh hệ thống Ngoài ra, đối với mã vòng chung ta có một cách xác định ma trận kiểm tra nhanh chóng hơn

Ta có thể đặt: x n+1=g ( x )∗h( x)

Ta gọi h(x ) là đa thức đối ngẫu của g ( x ) Do h ( x ) có bậc k nên ta có thể biểu diễn: h ( x )=h0+h1x +…+ h k x k(h0=h k=1)

Gọi v ( x )=a0+a1x+…+a n −1 x n−1 là đa thức mã tương ứng với từ mã

v=(a0a1… a n−1) Chúng ta có thể biểu diễn như sau trong q (x) có bậc nhỏ hơn hoặc bằng k-1

v ( x )=q (x )∗g(x)

=> v ( x )∗h( x )=q ( x )∗g ( x )∗h ( x )=q ( x )∗(x n+1)=q ( x )+x n

q (x)

của x k , x k +1 , … , x n−1 trong v ( x )∗h(x) bằng 0 Từ đó ta suy ra được các đẳng thức sau:

i=0

k

h k−i a i=0

i=0

k

h k−i a i+1= 0

i=0

k

h k−i a i+n−k−1= 0

Từ các đẳng thức này ta suy ra tích các vecto sau bằng 0:

(a0a1… a n−1)∗(h k h k−1 … h00 … 0) T= 0

Trang 7

(a0a1… a n−1)∗(0 hk h k−1 … h0… 0) T

= 0

(a0a1… a n−1)∗(0 … 0 hk h k−1 … h0)T= 0

Ta đặt

Thì v∗H T=0 => H là ma trận kiểm tra mã vòng.

Ví dụ: Cho mã vòng C(7,4) có ma trận sinh là g ( x )=(1+x +x3) Tìm ma trận kiểm tra H

Giải: Từ g(x) ta suy ra h ( x )=(1+ x+x2+x4) Ma trận kiểm tra

H 3 ×7=[1 0 1 1 1 0 00 1 0 1 1 1 0

0 0 1 0 1 1 1]

II – Các loại mã vòng:

Loại mã vòng được ứng dụng rất rộng rãi là mã BCH Mã BCH có tên

viết tắt của 3 người sáng lập ra nó là Bose, Chaduhuri và Hocquenghem,

nó là một loại mã sửa lỗi vòng ngẫu nhiên quan trọng, có khả năng sửa

được nhiều lỗi Trong BCH có 2 lớp con là mã BCH nhị phân và mã

BCH không nhị phân (Mã Reed - Solomon) Ta sẽ tìm hiểu về 2 loại mã

này

1 Mã BCH nhị phân :

- Xây dựng 1 mã BCH nhị phân gồm các thông số sau:

Trang 8

 Độ dài từ mã: n=2 m−1

 Số bit kiểm tra: n−k ≤ mt

 Khoảng cách Hamming: d min ≥ 2 t+1

Tìm ma trận kiểm tra và đa thức sinh ta sử dụng định lí sau:

) có đa thức tối thiểu là 1 đa thức căn bản bậc m Thì mã có ma trận sau làm ma trận kiểm tra là 1 mã vòng có khoảng cách Hamming lớn hơn hoặc bằng 2t+1, trong đó mỗi phần tử trong ma trận bên dưới được thay thế bằng vecto m thành phần tương ứng của nó.

Đa thức sinh của bộ mã là đa thức bội số chung nhỏ nhất của các đa thức tối thiểu của các phần tử a,a3

, a5, … , a 2 t −1

Ví dụ: Với m=4, t=2 thì mã BCH có chiều dài từ mã là

n=2 m−1=15

và có khoảng cách Hamming d ≥5

Cho a là phần tử có đa thức tối thiểu là đa thức căn bản có bậc 4 sau

f1 (x )=1+x +x4

Chúng ta có ma trận kiểm tra của bộ mã như sau:

H=[1 a a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 a13 a14

1 a3 a6 a9 a12 a15 a18 a21 a24 a27 a30 a33 a36 a39 a42]

Trang 9

Thay mỗi phần tử a i bằng vecto (m=4 thành phần) tương ứng ta được

Đa thức sinh g(x) là bội số của 2 đa thức tối thiểu tương ứng với phần

tử a và a3, ta có đa thức tối thiểu của a3 là

f3( x )=1+ x + x2+x3+x4

Nên g ( x )=f1(x )∗f3(x )=(1+ x+x4)∗(1+x +x2+x3+x4)

= 1+x4

+x6 +x7 +x8

2 Mã Reed – Solomon :

- Mã Reed – Solomon thường được kí hiệu là RS(n,k)

- Tương tự mã BCH nhị phân, điểm khác biệt giữa 2 loại mã này là các thành phần g0, g1, g2 trong đa thức sinh g(x ) không phải chỉ là các bit nhị phân

mà có thể có dạng là 1 đa thức con Chẳng hạn:

g ( x )=g0(x )+ g3(x )∗x3

+g5(x)∗x5

với{g0 (x )=1+x

g3 (x )=x2

g5( x )=1+ x2

 Một số ứng dụng:

Mã Reed – Solomon được sử dụng để sửa các lỗi trong nhiều hệ thống

và có thể kể ra một số như sau:

Các thiết bị lưu trữ (băng từ, đĩa CD, VCD…)

Trang 10

 Thông tin di động hay không dây (Điện thoại di động, các đường truyền viba…)

 …

Ngày đăng: 28/06/2014, 01:57

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w