Bài giảng Cơ sở lí thuyết thông tin - Chương 5: Mã tích chập. Thuật toán giải mã Viterbi - Phạm Hải Đăng
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=5: Mở rộng sơ đồ lưới, tính khoảng cách Hamming
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=5: Loại bỏ nhánh có khoảng cách Hamming lớn
26 trang |
Chia sẻ: hachi492 | Ngày: 07/01/2022 | Lượt xem: 708 | Lượt tải: 0
Bạn đang xem trước 20 trang tài liệu Bài giảng Cơ sở lí thuyết thông tin - Chương 5: Mã tích chập. Thuật toán giải mã Viterbi - Phạm Hải Đăng, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Cơ sở lí thuyết thông tin
Chương 5: Mã tích chập
Thuật toán giải mã Viterbi
TS. Phạm Hải Đăng
16/12/2013 Slice 1 Trường ĐH Bách Khoa Hà Nội
Phần 1: Khái niệm cơ bản
Định nghĩa Mã tích chập
Mã tích chập là 1 dạng mã tuyến tính.
Mã tích chập có cấu trúc giống 1 bộ lọc số - phép tích chập.
Bộ mã hóa tích chập có thể coi như 1 tập hợp các bộ lọc số - hệ thống
tuyến tính, bất biến theo thời gian.
Đầu vào của bộ mã hóa tích chập là một dòng dữ liệu (data stream) biểu
diễn dạng vector
Tốc độ mã R=k/n
Chiều dài ràng buộc K (constraint length) là kích thước của thanh ghi (số
lượng D-FF).
16/12/2013 Slice 2 Trường ĐH Bách Khoa Hà Nội
(1) (1) (1) (1) 2
0 1 2
(2) (2) (2) (2) 2
0 1 2
( ) ...
( ) ...
m x m m x m x
m x m m x m x
(1) (2)( ) ( ) ( ) ...m x m x m x
Phần 1: Khái niệm cơ bản
Ví dụ: Mã tích chập có R=1/2
Với đầu vào
Đầu ra
Biểu diễn đầu ra dạng vector
16/12/2013 Slice 3 Trường ĐH Bách Khoa Hà Nội
Phần 1: Khái niệm cơ bản
Ví dụ: Mã tích chập có R=1/2
Với đầu vào
Biểu diễn dạng đa thức
Đầu ra dạng đa thức
Với đa thức sinh
16/12/2013 Slice 4 Trường ĐH Bách Khoa Hà Nội
Phần 1: Khái niệm cơ bản
Ví dụ: Mã tích chập dạng hệ thống có ma trận đa thức sinh
Biểu diễn dạng sơ đồ mạch
16/12/2013 Slice 5 Trường ĐH Bách Khoa Hà Nội
Phần 1: Khái niệm cơ bản
Biểu diễn dạng tổng quan của đa thức bản tin và ma trận đa thức sinh
Từ mã của mã tích chập
16/12/2013 Slice 6 Trường ĐH Bách Khoa Hà Nội
Bộ mã hóa tích chập R=1/2 Bộ mã hóa tích chập R=1/2
Phần 2: Biểu diễn sơ đồ trạng thái và sơ đồ lưới của mã tích chập
Mã tích chập là một máy trạng thái (state machine), có thể biểu diễn bằng sơ
đồ chuyển trạng thái
Giá trị D-FF là trạng thái (state). Số lượng trạng thái
Đầu vào là kích thích chuyển trạng thái
Mũi tên mô tả quá trình chuyển trạng thái, với giá trị đầu vào/đầu ra.
Ví dụ: 0/00 – Đầu vào m=0, đầu ra c=[00]
16/12/2013 Slice 7 Trường ĐH Bách Khoa Hà Nội
2K
Phần 2: Biểu diễn sơ đồ trạng thái và sơ đồ lưới của mã tích chập
Từ sơ đồ chuyển trạng thái, có thể chuyển sang sơ đồ lưới
16/12/2013 Slice 8 Trường ĐH Bách Khoa Hà Nội
Phần 3: Thuật toán giải mã Viterbi
Sơ đồ lưới của mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
16/12/2013 Slice 9 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Thuật toán giải mã Viterbi thuộc lớp thuật toán giải mã ML (Maximum
Likelihood).
Thuật toán Viterbi là thuật toán tìm đường ngắn nhất, với quãng đường được
tính toán là tổng khoảng cách Hamming của các nhánh trung gian.
P là trạng thái (state) đích, S trạng thái trung gian.
P0 là tổng khoảng cách quãng đường tới state P với bit đầu vào giá trị ‘0’, đi qua
state S0. BR0 là khoảng cách Hamming (đầu ra) của nhánh S0-P
P1 là tổng khoảng cách quãng đường tới state P với bit đầu vào giá trị ‘1’, đi qua
state S1. BR1 là khoảng cách Hamming (đầu ra) của nhánh S1-P
16/12/2013 Slice 10 Trường ĐH Bách Khoa Hà Nội
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=1. Khoảng cách Hamming giữa đầu ra [11] và nhánh 0-0 và 0-1 lần lượt là 2
và 0
16/12/2013 Slice 11 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=2, tính các khoảng cách Hamming tới các state
16/12/2013 Slice 12 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=3, tính các khoảng cách Hamming tới các state
16/12/2013 Slice 13 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=3: xuất hiện 2 tuyến đường cùng tới 1 trạng thái. So sánh là loại bỏ tuyến
đường có khoảng cách Hamming lớn. Tuyến đường giữ lại được biểu diễn như
hình vẽ
16/12/2013 Slice 14 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=4: Mở rộng sơ đồ lưới, tính khoảng cách Hamming
16/12/2013 Slice 15 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=4: Loại bỏ nhánh có khoảng cách Hamming lớn
16/12/2013 Slice 16 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=5: Mở rộng sơ đồ lưới, tính khoảng cách Hamming
16/12/2013 Slice 17 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=5: Loại bỏ nhánh có khoảng cách Hamming lớn
16/12/2013 Slice 18 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=6: Mở rộng sơ đồ lưới, tính khoảng cách Hamming
16/12/2013 Slice 19 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=6: Loại bỏ nhánh có khoảng cách Hamming lớn
16/12/2013 Slice 20 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=7: Mở rộng sơ đồ lưới, tính khoảng cách Hamming
16/12/2013 Slice 21 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=7: Loại bỏ nhánh có khoảng cách Hamming lớn
16/12/2013 Slice 22 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=8: Mở rộng sơ đồ lưới, tính khoảng cách Hamming
16/12/2013 Slice 23 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Xuất phát từ trạng thái 0 (giá trị các D-FF được reset về giá trị bit ‘0’).
Tại t=8: Loại bỏ nhánh có khoảng cách Hamming lớn
16/12/2013 Slice 24 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
Ví dụ: mã tích chập
Đầu vào m=[1,1,0,0,1,0,1,0]
Từ mã thu được
Lựa chọn tuyến đường ngắn nhất – Survival Path
Đầu vào của tuyến đường ngắn nhất chính là thông tin cần giải mã-sửa lỗi.
16/12/2013 Slice 25 Trường ĐH Bách Khoa Hà Nội
2 2G( ) 1 1x x x x
Phần 3: Thuật toán giải mã Viterbi
So sánh khả năng sửa lỗi của mã tích chập với các độ dài ràng buộc khác nhau, và
phương pháp giải mã 1-bit (Khoảng cách Hamming) và 3-bit (khoảng cách Euclid).
16/12/2013 Slice 26 Trường ĐH Bách Khoa Hà Nội
Các file đính kèm theo tài liệu này:
- bai_giang_co_so_li_thuyet_thong_tin_chuong_5_ma_tich_chap_th.pdf