LUẬN VĂN VIỄN THÔNG MÃ HAMMING VÀ ỨNG DỤNG ĐỂ SỬA LỖI CHO ĐOẠN DỮ LIỆU

58 1.1K 6
LUẬN VĂN VIỄN THÔNG MÃ HAMMING VÀ ỨNG DỤNG ĐỂ SỬA LỖI CHO ĐOẠN DỮ LIỆU

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

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

mã hamming và ứng dụng để sửa lỗi cho đoạn dữ liệu Chơng 1 : tổng quan về mã Đ 1.1 - Một số khái niệm và định nghĩa 1- Định nghĩa : 1.1 Mã hoá : Là quá trình làm tơng ứng 1-1 giữa một tin của nguồn cần mã hoá với một từ mã của bộ mã . Nếu ký hiệu a i là một tin của nguồn cần mã hoá còn i là một từ mã của bộ mã ta có thể biểu diễn quá trình mã hoá nh sau: a i mã hoá i 1.2- Giải mã : Là quá trình làm tơng ứng 1-1 một từ mã với một tin của nguồn (giải mã là quá trình ngợc với quá trình mã hoá ) . Quá trình giải mã đợc biểu diễn nh sau : a i giải mã i Để giải mã đợc thì yêu cầu mã hoá phải có quy luật . Nh vậy có thể coi mã hoá nguồn tin theo bộ mã là phép ánh xạ 1:1 biến đổi một tin của nguồn thành một tổ hợp các ký hiệu của bộ mã , trong đó giải mã là phép ánh xạ ngợc . Giả sử có nguồn tin X cần mã hoá có s tin với xác suất xuất hiện các tin là p(x i ) : 1)( 1 = = s i i xp X = { x i } ; i = 1,s Bộ mã hoá M có N từ mã : = { i } ; i = N,1 từ khái niệm mã hoá và giải mã ta suy ra các quan hệ sau : p(x i ) = p( i ) N S (1) trong đó p( i ) là xác suất xuất hiện từ mã i ứng với tin x i 2 - Một số khái niệm về mã . 2.1 - Cơ số của bộ mã . Cơ số của bộ mã kí hiệu là m , chính là số ký hiệu khác nhau dùng để lập nên các từ mã . Các ký hiệu khác nhau này là các chữ số hệ đếm m . Ví dụ : m = 2 các ký hiệu là 0;1 m = 3 các ký hiệu là 0;1;2 m = 16 các ký hiệu là 0;1;2 9 ,A, B,C, D,E,F Cơ số thờng dùng làm tên các bộ mã . Mã nhị phân (m=2) , mã tam phân (m=3) mã thập lục phân (m=16). 2.2- Độ dài từ mã : là số ký hiệu của bộ mã dùng để mã hoá cho từ mã đó . Độ dài từ mã ký hiệu là n , là số lợng ký hiệu trong từ . Ví dụ : mã nhị phân m = 2 từ mã 1 = 0011001 có độ dài n=7. mã tam phân m =3 từ mã 1 = 012010 có độ dài n=6. Nếu các từ mã có độ dài nh nhau ta sẽ có bộ mã đều . Khi này số từ mã của bộ mã xác định theo công t N = m n (2) 3 Nếu các từ mã của bộ mã có độ dài khác nhau ta có bộ mã không đều . Trong trờng hợp này độ dài trung bình , tức mã của bộ mã ký hiệu là n và đợc xác định theo công thức : = = == 1 1 )()( i s i iii xpnpn (3) Trong đó n i là độ dài từ mã thứ i 2.3 - Trọng lợng từ mã . Là tổng số các ký hiệu khác không của từ mã . Trọng lợng của từ mã i ký hiệu là W( i ). Ví dụ : 1 = 101011 W( 1 ) = 4. 2 = 111111 W( 1 ) = 6. 0 W( i ) n (4) 2.4- Khoảng cách mã . Khoảng cách mã là số ký hiệu khác nhau tơng ứng giữa hai từ mã có độ dài bằng nhau . Gọi i và j là hai từ mã có độ dài bằng nhau . Khoảng cách mã ký hiệu d ( i j ) là phép toán cộng modul - 2 d ( i j ) có một số tính chất sau : + d ( i j ) = d ( j i) hay d ( i j ) = 0 khi i j + 0 d ( i j ) n i j d ( j i ) min i j = d 0 , đợc gọi là khoảng cách mã tối thiểu của bộ mã . + [d ( j i) d ( i k ) d ( i k ) ] Ví dụ : 1 = 10101 2 = 01101 3 = 11011 Ta có : d ( 1 2 ) = W ( 1 2 ) = 2 d ( 1 3 ) = 3 d ( 2 3 ) = 3 d ( 1 2 ) d( 1 3 ) = 5 Do đó : d ( 1 2 ) d ( 1 3 ) d ( 1 3 ) . + d ( i j ) = W ( i j ) . Tính chất này nói về mối quan hệ giữa khoảng cách mã và trọng số khoảng cách giữa hai từ mã chính bằng trọng số của từ mã mà tổng modul - 2 của hai từ mã . 2.5- Độ thừa của bộ mã (D): Độ thừa của bộ mã ký hiệu là D và đợc định nghĩa nh sau : D = ( ) ( ) ( ) max maxmax H XHH (5) Trong đó : H() max ; là Entropi cực đại của bộ mã , H() max là lợng thông tin trung bình cực đại chứa trong từ mã (hay do từ mã mang lại) H() max = n log 2 m (6) Trong đó : m là cơ số của bộ mã n là độ dài từ mã H(x) max : Entropi cực đại của nguồn tin cần mã hoá . H(x) max : là lợng thông tin trung bình cực đại chứa trong mỗi tin của nguồn (do mỗi tin của nguồn mang lại ) H(x) max = H(x) các tin của nguồn = log 2 S (7) 4 S : Số tin của nguồn cần mã hoá . Dạng khác của (5) : max max )(H )X(H 1 (8) Thay (6) và (7) vào (8) ta có: mlogn Slog 1D 2 2 = (9) Với bộ mã đều nhị phân : m =2 ta có n Slog 1DD 2 2 == (10) Với bộ mã đầy : N= N 1 = m n = 2 n = S Do đó : 0 n 2log 1 n Slog 1D n 22 day 2 === (11) Với bộ mã vơi N1 < N => S < 2 n Hay n > log 2 S do đó : 0 n Slog 1D 2 2 voi >= (12) 2.6- Bộ mã đầy - bộ mã vơi . N là số từ mã của bộ mã .N 1 là số từ mã dùng để mã hoá các tin của nguồn (N 1 = S). Nếu N 1 = N ta có bộ mã đầy (các từ mã đều đợc dùng để mã hoá các tin của nguồn, trong trờng hợp này N 1 = N = S) . Nếu N 1 < N , ta có bộ mã vơi (Số lợng từ mã dùng để mã hoá các tin ít hơn số từ mã của bộ mã trong trờng hợp này N 1 = S <N). Với từ mã vơi , số từ mã còn lại (số từ mã không đợc dùng ) là N 1 -N đợc gọi là các từ mã cấm ( Hay bộ mã cấm). 2.7 - Điều kiện để mã phân tách đợc . Điều kiện quan trọng của việc tạo mã là cho phép khi nhận đợc một chuỗi các ký hiệu chúng ta phải phân tách đợc thành các thành phần cơ bản là các từ mã , các từ mã này phải là duy nhất và đúng đắn . Để đạt đợc điều này thì bộ mã phải thoả mãn điều kiện cần và đủ sau : Bất kỳ dãy các từ mã nào của bộ mã cũng không đợc trùng với một dãy từ mã khác của cùng bộ mã . Độ chậm giải mã : độ chậm giải mã là số ký hiệu nhận đợc cần thiết có thể phân tách đợc thành các từ mã . Đối với bộ mã phân tách đợc độ chậm giải mã là hữu hạn có khi là vô hạn , trong trờng hợp là vô hạn thì ta có thể xem là không phân tách đợc . Để xác minh tính phân tách của bộ mã và nếu phân tách đợc xác định độ chậm giải mã và xây dựng bảng thử mã phân tách . Bảng giải mã phân tách đợc xây dựng theo bảng sau : 1 - Đem các từ mã xếp thành một cột , đánh dấu số 1. 2- Đối chiếu các từ mã ngắn với các từ mã dài hơn trong cột ,nếu từ mã ngắn hơn trùng với phần đầu của từ mã dài thì phần còn lại ghi vào cột thứ 2 . 3 - Lặp lại bớc 2 , nghĩa là cột thứ j sẽ là kết quả khi ta chiếu cột (j - 1) với cột (j - 2) , tiếp tục làm cho đến khi cột phải dần trở nên trống rỗng . Ví dụ 1:Lập bảng thử mã phân tách cho bộ mã 00 ; 01 ; 100 ; 1010 ; 1011. 5 1 2 00 100 1010 1011 Cột 2 trống rỗng , độ chậm giải mã bằng 0 . Ví dụ 2 : Lập bảng mã thử phân tách cho bộ mã 10 ; 100 ; 01 ; 011. 1 2 3 4 5 10 0 1 0 1 100 11 00 11 01 1 0 1 0 011 00 11 00 Trờng hợp này ta thấy bộ mã có khả năng phân tách đợc vì trong các cột 2,3,4 không có các từ mã nào trùng với các từ mã trong cột một , nhng vì cột j là vô hạn nên độ chậm giải mã là vô hạn . Bảng thử mã phân tách cho phép đánh giá độ chậm giải mã nếu j là giá trị của cột rỗng thì độ chậm giải mã T ch đợc tính theo công thức : maxmin 22 1 n J Tn j ch (13) n min , n max là độ dài ngắn nhất và dài nhất của bộ mã . Kết luận : Để mã có tính phân tách đợc thì điều kiện cần và đủ là bất kỳ tổ hợp mã nào cũng không đợc trùng với phần đầu của bất kỳ tổ hợp mà khác cùng bộ mã Đ 1.2 - Phân loại Mã . 1.2- 1 : Phân loại theo trọng lợng từ mã . - Mã có trọng lợng không đổi . - Mã có trọng lợng thay đổi . 1.2- 2 : Phân loại mã theo chiều dài từ mã . - Mã có chiều dài thay đổi . - Mã có chiều dài thay đổi . 1.2- 3 : Phân loại mã theo hiệu xuất thông tin. - Mã tối u . - Mã cha tối u. 1.2- 4 : Phân loại theo độ tin cậy . - Mã không có khả năng phát hiện và sửa sai. - Mã có khả năng phát hiện và sửa sai. 1.2- 5 : Phân loại theo cơ số của bộ mã . Có thể xây dựng bộ mã có cơ số bất kỳ , tuy nhiên mã có cơ số 2 (nhị phân) là thông dụng nhất . 1.2- 6 : Phân loại mã theo thứ tự các cột số trong từ mã . - Mã không có có trọng số : Thứ tự các cột số không ảnh hởng đến nội dung của từ mã . - Mã có trọng số : Thứ tự các cột số ảnh hởng đến nội dung của từ mã . 1.2- 7 : Phân loại theo mục đích sử dụng mã . - Mã số . - Mã ký tự. 6 1.2- 8 : Phân loại mã theo khoảng cách d giữa hai từ mã kế cận . - d const : mã vòng . - d = const : mã Gray ; mã JohnSon . 1.2- 9 : Phân loại theo cách tạo mã . Trong việc truyền tin có hai loại mã đợc sử dụng phổ biến là Mã khối (Block code) và Mã xoắn (Con volutional code) . a- Mã khối : Bộ mã hoá của bộ mã khối sẽ chia dòng thông tin thành những khối tin (message Block ) có Kbit . Mỗi tin đợc biểu diễn bằng một khối K ,thành phần nhị phân U = {U 1 ; U 2 U k } . U đợc gọi là Veetor thông tin có tổng cộng 2 k Veetor thông tin khác nhau . Bộ mã hoá sẽ chuyển Veetor thông tin U thành một bộ n thành phần V = (V 1 ; V 2 V n ) đợc gọi là từ mã . Nh vậy ứng với 2 k Veetor thông tin sẽ có 2 k từ mã khác nhau . Tổng hợp 2 k từ mã có chiều dài n đợc gọi là mã khối (n,k) . Tỷ số R = k/n gọi là tỷ số mã , R là số bit thông tin đa vào bộ giải mã trên số bit đợc truyền . Do n bit ra chỉ phụ thuộc vào k bit thông tin vào bộ giải mã không cần nhớ và có thể thực hiện đợc bằng mạch logic tổ hợp . b- Mã xoắn : Bộ mã hoá của mã xoắn giống nh bộ mã hoá mã khối , cũng nhận k bit thông tin u và tạo thành từ mã v là những khối n bit . Nhng n bit của từ mã v không phụ thuộc vào k bit , thông tin nmã còn phụ thuộc vào m bit thông tin trớc đó . Do đó bộ mã hoá có một bộ nhớ m . Tập hợp dòng mã hoá n bit sinh bởi k bit thông tin và bộ nhớ m đợc gọi là mã xoắn (n,m,k). Tỷ số R=k/n cũng đợc gọi là tỷ số mã . Do tính chất của mã xoắn nên nó phải đợc thực hiện bằng mạch dãy . Đ 1.3 - Các ph ơng pháp biểu diễn mã . 1.3 - 1 : Phơng pháp liệt kê . Đây là cách trình bày đơn giản nhất , liệt kê trong bảng những tin của nguồn tin kèm theo là từ mã tơng Ví dụ : Nguồn tin A = {a 1 , a 2 , a 3 , a 4 , a 5 } các lớp tin đợc mã hoá nh bảng sau . Tin a 1 a 2 a 3 a 4 a 5 Từ mã 00 01 100 1010 1011 Bảng đối chiếu có u điểm là cho thấy cụ thể và tức thời tin và từ mã của nó . Những bộ mã lớn thì quá cồng kềnh và khuyết điểm chính là không cho phép thấy các tính chất quan trọng của bộ mã . 1.3 -2 : Phơng pháp mặt phẳng toạ độ của mã . Phơng pháp này chỉ thích hợp loại mã có trọng số . Dựa trên 2 thông số của từ mã, là độ dài n và trọng số b để lập một bề mặt có hai toạ độ . Trên đó mỗi từ mã đợc biểu diễn bằng một điểm trọng số b của của từ mã là tổng trọng số các ký hiệu trong từ b = 1 1 m n (14) k : Trị của ký hiệu thứ k trong từ mã kể từ trái sang phải , với mã nhị phân k 7 có hai trị 0 và 1. k : số thứ tự của ký hiệu trong từ mã . m : cơ số của mã . Ví dụ : Trọng số của từ mã 1011 bằng : b = 1 x 2 0 +0 x 2 1 + 1 x 2 2 + 1 x 2 3 = 13 Nh vậy , mỗi từ mã đợc biểu diễn bằng cặp n, b duy nhất . Định lý : Không có hai từ mã khác nhau của một bộ mã thoả mãn đồng thời n i = n j , b i = b j (i j ) . Thật vậy giả thiét n i = n j để hai từ mã khác nhau thì ít nhất với một vị trí L nào đó trị của ký hiệu của hai từ mã khác nhau , nghĩa là b i b j . Hoặc giả thiết b i = b j để hai từ mã khác nhau độ dài từ mã phải khác nhau n i n j Bộ mã đợc trình bày ở phơng pháp liệt kê nay đợc biểu diễn trong mặt toạ độ . 15 14 13 a 5 12 11 10 9 8 7 6 5 a 4 4 3 2 a 2 1 a 3 0 a 1 b 1.3 - 3 : Phơng pháp cây. Cây mã gồm có nút và nhánh , gốc của cây gọi là nút gốc . Từ gốc phân đi m nhánh hoặc ít hơn , mỗi nhánh đại biểu cho một trị ký hiệu với mã nhị phân (m=2) có hai trị ký hiệu là 0 hoặc 1 . Mỗi nhánh kết thúc ở mức cao hơn nút xuất phát . Từ mỗi nút ở mức i có thể phân m nhánh hoặc ít hơn , mỗi nhánh mang một trị ký hiệu và kết thúc ở nút mức i + 1 . Nút cuối (nút kết rthúc không có nhánh nào xuât phát ) đại biểu cho một mã mà thứ tự các trị ký hiệu đi từ nút gốc đến nút cuối qua các nút trung gian lấy theo thứ tự các trị ký hiệu trên các nhánh đi qua . Ví dụ : Ta biểu diễn ví dụ trên bằng phơng pháp cây mã . mức gốc mức (0) 0 1 mức 1 (n=1) 0 1 0 mức 2(n=2) (00) (01) mức 3 (n=3) (100) 0 1 mức 4 (n=4) (1010) (1011) 8 1 2 3 4 n Phơng pháp này cho phép trình bày bộ mã một cách gọn hơn hai phơng pháp tr- ớc , đồng thời cho thấy rõ tính chất quan trọng của mã nh tính phân cách đợc hay tính Prefix Nhìn cây mã ta có thể biết loại mã đã cho đều hay không đều , đầy hay vơi . Mã đều là các nút nhánh có cùng bậc , ngợc lại là không đều . Mã đầy khi tất ca các nút trung gian bậc trớc các nút nhánh là đều có m nhánh . Cây mã thuộc ví dụ trên thuộc loại mã không đều . 1.3- 4: Phơng pháp đồ hình kết cấu . Gồm những nút và những nhánh có hớng . Đây là một cách biểu diễn cây mã rút gọn . Mỗi từ đợc biểu diễn bằng một vòng kín , xuất phát từ nút gốc theo nhánh có hớng (chiều mũi tên) . Qua các nút trung gian và trở về kết thúc tại nút gốc . Thứ tự giá trị các ký hiệu là theo thứ tự giá trị các nhánh trên đờng đi . OV 1 0 1 0 0 1 OV 1 Đồ hình kết cấu của bộ mã : 00 ;01;100;1010;1011 Các nhánh đợc ghi ở đầu xuất phát của nhánh đầu biểu diễn toán tử hoặc các nút đợc đánh số theo thứ tự xa dần nút gốc . Đồ hình nút gốc không chỉ dùng mô tả mã mà còn đợc dùng để xét cách vận hành thiết bị mã hoá và giải mã . 1.3- 5 : Phơng pháp hàm cấu trúc mã . Phơng pháp này mô tả rõ ràng một đặc tính quan trọng của mã là sự phân bố các từ mã có độ dài khác nhau . Ký hiệu là G(n i ) . Ví dụ : Bộ mã 00,01,100,1010,1011; có G(n) dới dạng sau : G(n i ) = = = = 4;2 3;1 1;2 i i i n n n Từ hàm cấu trúc có thể phân biệt đợc mã đều hay không đều , trờng hợp hàm cấu trúc bằng không với tất cả các n i , trừ tai một điểm chúng ta có loại mã đều . Nếu hàm cấu trúc có hai hoặc nhiều điểm khác 0 chúng ta có loại mã không đều, cũng từ hàm cấu trúc có thể xác minh thoả mãn điều kiện có thể xác minh điều kiện phân tách đợc hay không . 1.3 -6 : Phơng pháp ma trận sinh. Phơng pháp này là mô hình toán để biểu diễn mã tuyến tính đây là công cụ toán học đợc dùng để tạo mã tuyến tính . Ma trận sinh là một ma trận mà từ ma trận đó có thể tạo ra tất cả các từ mã của bộ mã bằng cách tổ hợp tuyến tính các hàng trong ma trận sinh là một bộ các số trong các hàng hoặc các cột , số lợng cột bằng độ dài từ mã . Số hàng là số từ mã cơ sở độc lập tuýen tính với nhau trong từ mã . Mã tuyến tính C(n,k) là một không gian con K chiều của một không gian vectơ n thàhh phần . Do vậy có thể tìm đợc k từ mã độc lập tuyến tính (g 0 ,g 1 g k-1 ) trong C. Mỗi từ mã trong C là một tổ hợp tuyến tính của k từ mã độc lập tuyến tính này . V= u 0 g 0 + u 1 g 1 + + u k-1 g k-1 (15) 9 0 1 2 3 4 Với u i = 0 hoặc 1 và 0 i k . Đạt k từ mã độc lập tuyến tính này thành những hàng của ma trận cấp k x n , nh sau : G = = 1,1.1,10,1 1,11110 1,00100 1 1 0 . . . . . . nkkk n n k ggg ggg ggg g g g (16) Với g i = (g i0 g i1 g i,n-1 ) , với 0 i <k Nếu U = (u 0 u 1 u k-1 ) là thông tin cần đợc mã hoá các từ mã tạo ra là v đợc tính theo công thức : V = u x G = (u 0 , u 1 u k-1 ) 1 1 0 . . . k g g g (17) V = u 0 g 0 + u 1 g 1 + + u k-1 g k-1 Các hàng của G tạo ra từ mã V , vậy G là ma trận sinh của C . Ví dụ : Ta có mã hiệu 00000 : 10011: 0101010: 11001: 00101: 10110 : 01111 : 11100 .Đợc biểu diễn bằng ma trận sau : G = 00101 01010 10011 G = = 1010001 1110010 0110100 1101000 3 2 1 0 g g g g Nếu (1101) là thông tin cần mã hoá từ mã tơng đơng của nó là : V = u 0 g 0 u 1 g 1 u 2 g 2 u 3 g 3 = (1101000) (0110100) (1010001) = (0001101) . 1.3-7 Phơng pháp dùng đa thức sinh . Dùng làm mô hình toán để biểu diễn mã đa thức, mã vòng . Một từ mã có thể biểu diễn thuận tiện dới một đa thức . f(x) = a n-1 x n-1 + a n-2 x n-2 + + a 2 x 2 + a 1 x 1 + a 0 (18) + Số hạng của đa thức trên là độ dài từ mã ( a 0 a n-1 ) . + Bậc của đa thức không vợt quá n-1 . + Hệ số a i nhận giá trị 0 koặc 1 . + x là ẩn số hình thức . Ví dụ trong trờng hợp mã nhị phân với từ mã 1100110 có thể biểu diễn nh sau : f(x) = x 6 + x 5 + x 2 + x . 10 Đa thức sinh biểu diễn cho mã vòng ta thấy nh sau : Nếu a 1 a 2 a n-1 , là một từ mã thì tổ hợp đợc dịch chuyển một bậc a n-1 a 1 a 2 a n-2 cũng sẽ là một tổ hợp của mã . Một đặc điểm quan trọng dùng để giải mã là những từ mã đều chia chẵn cho một đa thức p(x) gọi là đa thức sinh ( đa thức tạo mã ) . Sở dĩ gọi nh vậy là vì từ đa thức này có thể tạo ra các từ mã của mã vòng , xuất phát từ những mã đơn giản , Nếu bậc của mã đơn giản A(x) là k , bậc của mã vòng p(x) là n thì bậc của đa thức sinh bằng n -k = r . Đ 1.4 - Một số giới hạn mã . Trong các loại mã , tiêu chuẩn quan trọng hàng đầu là khả năng phát hiện sai và sửa sai của mã . Khả năng này đợc biểu thị bằng số ký hiệu sai tối đa có thẻ sửa đợc trong tổ hợp nvà có liên quan đến trọng lợng tối thiểu của mã ( quãng cách mã ) . Cũng nh số ký hiệu thử tối thiểu (nói cách khác là đọ dài n = r + k , tối thiểu khi giữ không đổi số ký hiệu mang tin k ) . Cho nên khi xây dựng các loại mã sửa sai tối u cần phải xác định trớc một số giới hạn của mã tuyến tính , nh : giới hạn trên về trọng lợng tối thiểu (quãng cách mã ) . Giới hạn dới về số ký hiệu thử đối với mã tuyến tính (n,k) . 1.4- 1: Giới hạn trên của quãng cách mã tối thiểu . Giả sử bộ mã dùng cơ số m và có m k từ mã với độ dài từ mã là n . Tổng số các ký hiệu trong m k sẽ là n m k . Bộ mã dùng m ký hiệu khác nhau để lập nên các từ mã của bộ mã , nến coi sự xuất hiện một ký hiệu nào đó trong từ mã là nh nhau thì xác suất xuất hiện của các ký hiệu khác nhau trong từ mã sẽ là m 1 . Do đó tổng một số loại ký hiệu nào đó trong m k từ mã sẽ là . n m k m 1 = n m k-1 (19) Trong m ký hiệu khác nhau , nhng chỉ có m-1 ký hiệu khác 0 , do đó tổng trọng số các từ mã sẽ là : W( ) = n.m k m 1 (m-1) = n m k-1 (m-1) . (20) Với bộ mã đều nhị phân dài n , tổng trọng số các từ mã là : W( ) = n 2 k-1 (2-1) = n.2 k-1 . (21) Trọng số trung bình của mỗi từ mã sẽ là : ( ) WƯ = 1 )( 0 )( = k m w khacmatucacsotong w (21) ( ) WƯ = 1 )1(. 1 k k m mmn (22) Với mã nhị phân trọng số trung bình của mỗi từ mã sẽ là : ( ) WƯ = 12 2 1 k k n (23) Khoảng cách mã tối thiểu không thể vợt quá trọng số trung bình của từ mã . Do đó giới hạn trên của khoảng cách từ mã tối thiểu của mã nhị phân đợc xác định theo công thức: d 0 12 2 1 k k n (24) 11 Giới hạn dới của số ký hiệu thử đối với một mã dài mà trọng số tối thiểu bằng d . 1.4-2 - Giới hạn Plotkin E . Chỉ có thể lập đợc bộ mã sửa hệ thống nhị phân (n,k) có khoảng cách tối thiểu d 0 , nếu số dấu kiểm tra r = n-k thoả mãn giới hạn dới : r 2 (d 0 -1) - log 2 d 0 (25) 1.4-3- Giới hạn Griesmes (Đối với mã nhị phân). Độ dài từ mã phải thoả mãn bất đẳng thức sau: n = 1 0 0 2 k j d (26) Trong đó : k - số dấu mang tin . d 0 - khoảmg cách mã tối thiểu . , 0 2 d - lấy phần nguyên của 2 0 d . Dạng khác của (26) là : n d 0 + d 1 + d 2 + + d k-1 (27) Trong đó : d 1 = + 2 1 0 d ; d i+1 = + 2 1 i d 1.4- 4 - Giới hạn Hamming R.W . Chỉ có thể lập đợc một bộ mã sửa hệ thống nhị phân (n,k) có độ dài n với khoảng cách mã tối thiểu d 0 = 2e + 1, nếu số dấu kiểm tra thoả mãn giới hạn dới sau : r log 2 = e 0i i n C (28) Trong đó : e - là số dấu sai có thể sửa đợc . 1.4- 5 - Varshamov . Chỉ có thể xây dựng đợc một bộ mã sửa hệ thống nhị phân có độ dài n và khoảng cách mã tối thiểu d 0 với r dấu kiểm tra phải thoả mãn bất đẳng thức sau : 2 r = 20 d 0i i 1n C (29) 1.4- 6 - Giới hạn GILBERT.E . Khoảng cách mã tối thiểu thờng đợc xác định theo khả năng phát hiện sai (d 0 t+1) hoặc khả năng sửa sai (d 0 2e + 1) hoặc theo khả năng phát hiện đợc t sai và sửa đợc e sai (d 0 e+ t + 1). Bớc 1 : Viết tất cả 2 n từ mã có thể có . Bớc 2 : Chọn một từ mã tuỳ ý trong 2 n từ mã . Bớc 3 : Bỏ đi (loại bỏ ) tất cả các từ mã có khoảng cách mã với từ mã đã chọn nhỏ hơn hoặc bằng (d 0 -1) . Nếu sau khi loại bỏ các từ mã này ra khỏi 2 n từ mã mà không còn một từ mã nào thì kết thúc qúa trình lựa chọn số từ mã còn lại lập thành bộ mã có khoảng cách mã tối thiểu lớn hơn hoặc bằng d 0 . Ngợc lại ta lặp lại bớc 2 rồi bớc 3 . Để xác định số lợng từ mã tối thiểu có thể chọn đợc , ta tiến hành nh sau: - Tổng số các từ mã có khoảng cách mã với từ mã đã chọn không vợt quá (d 0 -1) là : = 10 0 d i n i C , với một từ mã đã chọn thì số từ mã bị loại bỏ đi ( vì có khoảng cách với từ mã đã chọn ) nhỏ hơn hoặc bằng (d 0 - 1) không vợt quá = 10 d 0i i n C . 12 [...]... diện cho phép tính 1 parity trong tập d Qui tắc hamming yêu cầu rằng p= 3 cho mã (7,4) nên A phải chứa 3 cột để tạo ra 3 bít parity 2.2 Mã hamming (mã Ham): Mã ham do R.W hamming đa ra, mã hamming thuộc loại mã sửa hệ thống nhị phân C(n,k) và thuộc lớp mã tuyến tính Mã ham có độ dài n = 7, số dấu thông tin k = 4 và số dấu kiểm tra r = n - k = 3 có khả năng sửa đợc một lỗi và phát hiện hai lỗi Mã hamming. .. phát lại Mã Hamming cung cấp cho phơng thức (FEC) sử dụng block parity với cơ cấu thực hiện hiệu quả và kinh tế Chúng cho phép sửa các bít đơn và phát hiện các lỗi kép của từ mã, vấn đề cần quan tâm ở đây là mã hm có khả năng sửa một lỗi và phát hiện đợc hai lỗi trong từ mã Nhng nó không có khả năng thực hiện đồng thời cả hai, ta sử dụng mã hamming nh một cơ chế phát hiện lỗi để bắt lỗi đơn và lỗi kép,... của các đoạn đờng đi) là thuật toán sử lý mã châp cho lời giải đúng với xác xuất cao nhất (hay cho lời giải đúng với xác xuất nhỏ nhất) 27 Chơng II mã hamming và mã hamming mở rộng 2.1 Một số khái niệm: Mã Hamming là một loại mã tuyến tính, mã này đợc R.w Hamming đa ra và đợc dùng trong một sổ hệ thống thông tin sử dụng kỹ thuật Forward Error coreetion (FEC) Mã này có khả năng sửa sai một lõi Mã hamming. .. phần dư để xác định vị trí dấu sai và đưa ra bít "l" Hình 4 2.1.8 Mã truy toán (Mã xoắn, mã chập): Mã truy toán còn đợc gọi là mã chập hay mã xoắn Mã truy toán thuộc vào lớp các mã liên tục nhị phân So với mã sửa hệ thống nhị phân thì các dấu thông tin và các dấu kiểm tra không tách thành từng khối riêng biệt Do đó quán trình mã hoá và giải mã các mã này đợc thực hiện liên tục trên dãy các dấu mã Nếu... giới hạn Hamming d 0 1 2 t d0-1 và e 2.1.7 Bộ mã xyclic (mã vòng) Mã vòng C(n,k) là bộ mã đều nhị phân có độ dài n, có k dấu thông tin và r= n-k dấu kiểm tra Mã Vòng C(n,k) cũng thuộc lớp mã khối tuyến tính Định nghĩa 1: Mã C(n,k) là bộ mã đều nhị có độ dài n, có k dấu thông tin và r = n - k dấu kiểm tra, trong đó mỗi từ mã của bộ mã đều là dịch vòng của một từ mã khác trong cùng bộ mã và đợc... thỏa mãn d0 t + 1 + Để bộ mã có khả năng sửa đợc e sai thì khoảng cách tối thiểu d 0 phải thỏa mã d0 2e + 1 + Để bộ mã có khả năng phát hiện đợc tsai và sửa đợc esai thì d0 phải thỏa mãn d0 e + t + 1 2.1- 6 -Bộ mã sửa hệ thống nhị phân Bộ mã sửa hệ thống nhị phân ký hiệu (n,k) là bộ mã đều có độ dài n và trong đó có k dấu thông tin, số dấu còn lại r=n-k đợc gọi là các dấu kiểm tra, cơ số của bộ mã. .. parity vào bít thông tin đợc gọi là từ mã hamming, độ dài từ mã c = dtp, mã hamming đợc viết nh (c, d) Mã có giá trị p 2 đợc đánh giá kì hiếm vì bao gồm các phần trên, với trờng hợp p = 3 thì mã là mã (7,4) Từ mã hamming đợc tạo ra bằng cách nhân các bít thông tin với ma trận sinh G sử dụng phép tính modul 2 số học kết quả của phép nhân này đợc gọi là vector mã (c1, c2 cn) bao gồm những bít dữ liệu. .. trình sửa sai trong mã chống nhiễu đợc thực hiện nh sau + Để có thể sửa đợc sai thì bộ mã đều nhị phân phải có khoảng cách tối thiểu d0 đạt đợc một giá trị xác định nào đó d0 d0 cho phép + Khi nhận đợc một từ mã nào đó, ta so sánh với tất cả các từ mã dùng (N từ mã) để tìm khoảng cách mã Nếu khoảng cách mã tối thiểu d 0 < d0 cho phép thì kết luận từ mã thu đợc đã bị sai Sau đó chuyển từ mã sai về từ mã. .. m = 2 Bộ mã sửa hệ thống nhị phân thuộc lớp mã khối tuyến tính ,không chỉ có khả năng phát hiện sai mà còn có khả năng sửa sai Số dấu mà bộ mã có thể phát hiện hoặc sửa đợc sai phụ thuộc vào số lợng dấu kiểm tra trong từ mã Số lợng các dấu thông tin trong từ mã phụ thuộc số lợng các tin cần mã hoá(2k= s, do đó k = log2s) Ví dụ các dấu thông tin và các dấu kiểm tra trong mỗi từ mã của bộ mã sửa hệ thống... trí dấu thông tin Vì dấu kiểm tra x4 đúng nên các dấu thông tin x0,x2,x3 đúng còn dấu thông tin x1 có mặt đồng thời ở trong 2 cặp khác nhau x 5 và x6 Do đó sai xảy ra ở vị trí dấu thông tin thứ x1 Từ mã tơng ứng sẽ là: i đúng =1111111 dấu sai đã đợc sửa Bộ mã sửa hệ thông nhị phân (7,4) có khoảng cách mã tối thiểu d0=3(là bộ mã vơi ) nên có khả năng phát hiện đợc 2 sai và sửa đợc 1 sai vì thỏa mãn giới

Ngày đăng: 08/07/2014, 14:17

Từ khóa liên quan

Mục lục

  • Tõ m· t­¬ng øng sÏ lµ:

Tài liệu cùng người dùng

Tài liệu liên quan