Bản chất của phương pháp này là biến đổi nguồn tin đã cho thành nguồn tin mới có những đặc tính thống kê phù hợp với kênh truyền thêm thông tin chống nhiễu, tăng tốc độ lập tin ->... Như
Trang 1CHƯƠNG 3:
MÃ HIỆU
Trang 2Nội dung chính
1. Định nghĩa mã hiệu
2. Các thông số của mã hiệu
3. Điều kiện thiết lập mã hiệu
4. Biểu diễn mã hiệu
5. Mã hệ thống có tính Prefix
6. Mã thống kê tối ưu:
Mã fano
Mã Hauffman
Trang 3Bản chất của phương pháp này là biến đổi nguồn tin đã cho thành nguồn tin mới có những đặc tính thống kê phù hợp với kênh truyền (thêm thông tin chống nhiễu, tăng tốc độ lập tin) ->
Trang 4Mã hiệu
Nguồn tin mới đó được gọi là
Nguồn tin mới đó được gọi là Mã hiệu Mã hiệu
Như vậy,
Như vậy, mã hiệu là một nguồn tin với những đặc mã hiệu là một nguồn tin với những đặc tính thống kê phù hợp với C và khả năng chống nhiễu của kênh truyền
Trang 5Mã hiệu
Ví dụ: Sử dụng bit kiểm tra chẵn lẻ như sau:
o Được mã hóa thành: 10101111Được mã hóa thành: 10101111
o Bit 1Bit 1 được thêm vào để đảm bảo tổng số bit 1 trong 8 bit là một số chẵn
là có lỗi trong 8 bit đó
Rõ ràng ở ví dụ trên ta đã thêm thông tin để có thể phát hiện lỗi Việc thêm thông tin này làm tăng tốc
độ lập tin (do tăng n0)
Trang 6Các thông số của mã hiệu
1. Cơ số của mã hiệu (m) : là số ký hiệu khác nhau
được sử dụng trong mã hiệu
Trang 7Các thông số của mã hiệu
2. Độ dài của từ mã (n) : là số ký hiệu trong mỗi từ
mã.
Có 2 loại mã:
– Ở ví dụ dùng thêm một bit kiểm tra chẵn lẽ cho từng nhóm 7 Ở ví dụ dùng thêm một bit kiểm tra chẵn lẽ cho từng nhóm 7
bit đề thành nhóm 8 bit -> mã đều, n=8 -> mã đều, n=8
– Ở bộ mã MorseỞ bộ mã Morse dùng trong điện báo có các từ mã không đều nhau (A=‘ _’; B=‘_ ’) ->
nhau (A=‘ _’; B=‘_ ’) -> mã không đều, có độ dài n = 1, mã không đều, có độ dài n = 1,
2, 3, 4, 5
Trang 8Các thông số của mã hiệu
2. Độ dài của từ mã (n) : - tiếp theo
Với bộ mã không đều, ta có khái niệm độ dài
trung bình của các từ mã:
dài tương ứng của từng từ mã
Trang 9Các thông số của mã hiệu
Trang 10Điều kiện thiết lập mã hiệu
1. Điều kiện phân tách được: việc mã hoá và giải mã phải là
1-1
Ví dụ: một nguồn tin có 4 tin {a, b, c, d} Ta mã hoá với
mã hiệu như sau:
o a -> 00; b -> 01; c -> 10; d -> 11
o Giả sử bản tin cần mã hoá là: (acdba)
o Mã hoá thành: (0010110100)
o Giải mã trở lại: (acdba)
o Ta chỉ có một kết quả mã hoá và giải mã
o Thoả mãn điều kiện phân tách được
Trang 11Điều kiện thiết lập mã hiệu
Ví du trênï: một nguồn tin có 4 tin {a, b, c, d}
Ta mã hoá với mã hiệu như sau:
o Giả sử bản tin cần mã hoá là: (acdbaGiả sử bản tin cần mã hoá là: (acdba)
o Giải mã trở lại: (ababbbaGiải mã trở lại: (ababbba) hoặc (acdba) hoặc (acdba)
Trang 12Điều kiện thiết lập mã hiệu
2. Điều kiện hiệu quả kinh tế : việc mã hoá phải sử
dụng các từ mã càng ngắn càng tốt.
3. Điều kiện thời gian xử lý : việc mã hoá phải và
giải mã phải đơn giản, càng ít trễ càng tốt.
Trang 13Biểu diễn mã hiệu
Mã hiệu bao gồm các từ mã là sự biến đổi của các tin từ nguồn tin gốc trong quá trình mã hoá Như vậy, một tin gốc sẽ tương ứng với một từ
Trang 14Biểu diễn mã hiệu-Bảng mã
Trang 15Biểu diễn mã hiệu-Bảng mã
Bảng đối chiếu có dạng như sau:
Ưu điểm của phương pháp này là trực quan, dễ đối chiếu
Nhược điểm là nếu nguồn có nhiều tin (ví dụ 256) thì rất khó biểu diễn
Trang 16Biểu diễn mã hiệu-Bảng mã
Mặt phẳng toạ độ có dạng như sau: trên mặt phẳng toạ
độ decac, trục tung là trục trọng số b, trục hoành là số
Trang 17Biểu diễn mã hiệu-Bảng mã
Với ví dụ trên : Ta tính các giá trị b như sau:
Trang 18Biểu diễn mã hiệu-Bảng mã
1 2 3 4
Trang 20Biểu diễn mã bằng đồ hình cây
0
0
1 1
Trang 21Biểu diễn mã bằng hàm cấu trúc mã:
Sử dụng hàm G(ni), trong đó:
Ví dụ : Bộ mã hiệu (00, 01, 10, 110, 111)
2 khi ni=2
2 khi n =4G(ni) = 1 khi n
i=3
Trang 22o Ví dụ: một nguồn tin có 4 tin {a, b, c, d} Ta mã hoá
với mã hiệu như sau:
– a -> 00; b -> 01; c -> 10; d -> 11– Nguồn tin này thoả mãn điều kiện phân tách được.
– a -> 0; b -> 1; c -> 10; d -> 11
Trang 24Tính Prefix
Mã có tính prefix: Bộ mã được gọi là có tính
prefix nếu bất kỳ tổ hợp mã nào cũng không phải
là prefix của tổ hợp mã khác trong cùng bộ mã.
Vậy mã có tính prefix thoả mãn điều kiện phân tách được.
Trên đồ hình cây, các từ mã của bộ mã có tính prefix chỉ được tính ở các nút cuối, không được tính các nút giữa
Trang 25Tính Prefix
Nếu bộ mã hiệu có cơ số m thì các nút không phải nút cuối sẽ nối với m’ nút ở mức tiếp theo, với m’ ≤ m
Trang 26(2
Trang 28Mã hệ thống có tính Prefix – Thành lập mã
Thành lập mã hệ thống có tính prefix bao gồm 3 bước:
o Bước 1: Chọn một bộ mã đơn giản có tính prefix: Chọn một bộ mã đơn giản có tính prefix
o Bước 2: Lấy một số tổ hợp mã ở bước 1 làm tổ hợp cơ : Lấy một số tổ hợp mã ở bước 1 làm tổ hợp cơ
sở, các tổ hợp còn lại của bước 1 được gọi là tổ hợp , các tổ hợp còn lại của bước 1 được gọi là tổ hợp
cuối
o Bước 3: Ghép một hoặc một số tổ hợp cơ sở với nhau : Ghép một hoặc một số tổ hợp cơ sở với nhau
rồi cộng thêm vào cuối một tổ hợp cuối, ta được 1 từ
cần dùng
Trang 29Mã hệ thống có tính Prefix – Thành lập mã
Ví dụ1 : thành lập bộ mã hệ thống có tính prefix
để mã hoá nguồn tin: A={a1, a2, a3, a4, a5}
o Bước 1: Chọn bộ mã đơn giản có tính prefix: 1, 01, : Chọn bộ mã đơn giản có tính prefix: 1, 01,
Trang 31Mã hệ thống có tính Prefix – Mã hoá
Mã hoá : thực hiện tại đầu phát tin, là biến đổi các tin của bản tin thành các tổ hợp mã tương ứng.
Ví dụ, nguồn tin trên phát bản tin:
X=(a1, a3, a5, a4, a2, a1, a1).
(100110000010000011010010100110011001)
100110000010000011010010100110011001
Trang 34Mã hệ thống có tính Prefix – Nhận xét
Mã hệ thống có tính Prefix có ưu điểm ưu điểm :
Nhược điểm :
tin giảm Tuy nhiên độ dài từ mã càng tăng thì tính bảo mật càng tăng
Trang 35Mã hệ thống có tính Prefix – Thành lập mã
Ví dụ 2 : thành lập bộ mã hệ thống có tính prefix
để mã hoá nguồn tin: U={u1, u2, u3, u4, u5, u6}.
X=(u6, u5, u3, u2, u2, u3, u4, u1)
Mã hoá và giải mã bản tin theo bộ mã vừa thành lập
Trang 36Mã thống kê tối ưu
Các tin từ các nguồn tin thường có xác suất xuất hiện không đều.
Nếu mã hoá với bộ mã đều thì bản tin sau mã hoá
sẽ dài hơn phương pháp mã hoá mà ở đó:
Loại mã không đều này được gọi là
Loại mã không đều này được gọi là mã thống kê mã thống kê
tối ưu
Trang 37Mã thống kê tối ưu
Ví dụ : mã Morse dùng trong điện báo là mã
thống kê tối ưu Ở đó:
Trang 38Mã thống kê tối ưu
Có nhiều phương pháp xây dựng mã thống kê tối ưu:
o Phương pháp Fano
o Phương pháp Hauffman
Bài toán: Cho nguồn tin {U, P(ui), i=1 n} Cần
mã hoá nguồn tin trên theo mã thống kê tối ưu.
Trang 39Mã thống kê tối ưu - Fano
Phương pháp Fano Thực hiện bằng 4 bước:
xuất hiện
suất xuất hiện gần bằng nhau nhất Một nhóm được gắn bit ‘0’ Nhóm còn lại là ‘1’
vậy cho đến khi mỗi nhóm chỉ là 1 tin
của từng tin
Trang 40Mã thống kê tối ưu - Fano
Ví dụ 1: Giả sử một nguồi tin gồm 7 tin như sau, lập bộ mã thống kê tối ưu để mã hoá nguồn tin đó:
Trang 41Mã thống kê tối ưu - Fano
Giải: Bước 1 Bước 1 , xắp xếp theo thứ tự giảm dần của xác suất xuất hiện
Trang 42Mã thống kê tối ưu - Fano
Trang 43Mã thống kê tối ưu - Fano
Trang 44Mã thống kê tối ưu - Fano
Trang 45Mã thống kê tối ưu - Fano
Trang 46Mã thống kê tối ưu - Fano
Trang 47Tin gốc u1 u2 u3 u4 u5 u6 u7
Mã thống kê tối ưu - Fano
Kết quả, được bảng mã Fano như sau:
Trang 48Định lý giới hạn về độ dài trung bình của từ mã: H(U) ≤ ≤ H(U) +1 (1)
⇒ mã thống kê có hai đặc điểm sau:
Các ký hiệu khác nhau của bộ chữ phải đồng xác suất.
Xác suất xuất hiện các ký hiệu trong từ mã không phụ thuộc sự có mặt của các ký hiệu ra trước.
n
Trang 49Tiêu chuẩn mã kinh tế tối ưu:
(2) H(U): Entrôpi của nguồn
: độ dài trung bình của từ mã.
⇒ ρ càng tiến tới 1 tính kinh tế của mã càng cao.
n
) (
2−n i ≤ p ui ∑N 2 −n i ≤ 1
Trang 50n = ∑ ( ) ( ) ( ) ( )
=
+ +
19 , 0 2
23 , 0 2
34 ,
37 , 2 )
n
U H
p =
i i
i p
7 1
Trang 51Mã thống kê tối ưu - Fano
Ví dụ 2 (bài tập) : Giả sử một nguồn tin gồm 8 tin như sau, lập bộ mã thống kê tối ưu để mã hoá
Trang 52Mã thống kê tối ưu -Hauffman
PP Hauffman Thực hiện bằng 5 bước:
xuất hiện
xuất hiện của tin phụ bằng tổng xác suất xuất hiện của hai tin cuối đó
thành nguồn tin trung gian
lại cả 4 bước n-2 lần
Trang 53Mã thống kê tối ưu - Hauffman
Ví dụ 1: Giả sử một nguồi tin gồm 7 tin như sau, lập bộ mã thống kê tối ưu để mã hoá nguồn tin đó:
Trang 54Mã thống kê tối ưu - Hauffman
Trang 55Mã thống kê tối ưu - Hauffman
Trang 56Mã thống kê tối ưu - Hauffman
Trang 57Mã thống kê tối ưu - Hauffman
Trang 58Mã thống kê tối ưu - Hauffman
Trang 59Mã thống kê tối ưu - Hauffman
Trang 60Mã thống kê tối ưu - Hauffman
Trang 61Mã thống kê tối ưu - Hauffman
Trang 62Mã thống kê tối ưu - Hauffman
Trang 63Mã thống kê tối ưu - Hauffman
Trang 64Mã thống kê tối ưu - Hauffman
Trang 65Tin gốc u1 u2 u3 u4 u5 u6 u7
Mã thống kê tối ưu - Hauffman
Kết quả, được bảng mã Hauffman như sau:
Trang 66Mã thống kê tối ưu - Hauffman
Ví dụ 2 (bài tập) : Giả sử một nguồn tin gồm 8 tin như sau, lập bộ mã thống kê tối ưu để mã hoá
Trang 67Mã thống kê tối ưu
Ví dụ 3 : Một nguồn tin gồm 8 tin sau, lập bộ mã
thống kê tối ưu theo Fano theo Fano và Hauffman và Hauffman để mã
hoá nguồn tin đó: