Đối với thuật toán này, số lượng tối đa các từ mã được xem xét và chất lượng lỗi phụ thuộc vào tập hợp các vị trí được kiểm tra.. Nghiên cứu, đề xuất bộ giải mã hiệu quả cho các mã thành
Trang 1
BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ QUỐC PHÒNG
HỌC VIỆN KỸ THUẬT QUÂN SỰ
NGUYỄN THỊ HỒNG NHUNG
DỰA TRÊN KHÔNG GIAN MÃ ĐỐI NGẪU
LUẬN ÁN TIẾN SĨ KỸ THUẬT ĐIỆN TỬ
HÀ NỘI – NĂM 2019
Trang 2
BỘ GIÁO DỤC VÀ ĐÀO TẠO BỘ QUỐC PHÒNG
HỌC VIỆN KỸ THUẬT QUÂN SỰ
NGUYỄN THỊ HỒNG NHUNG
DỰA TRÊN KHÔNG GIAN MÃ ĐỐI NGẪU
Chuyên nghành: Kỹ thuật Điện tử
Mã số: 9.52.02.03
LUẬN ÁN TIẾN SĨ KỸ THUẬT ĐIỆN TỬ
NGƯỜI HƯỚNG DẪN KHOA HỌC:
1 PGS TS VŨ THANH HẢI
2 PGS TS PHẠM KHẮC HOAN
HÀ NỘI – NĂM 2019
Trang 3i
LỜI CAM ĐOAN
Tôi xin cam đoan các kết quả trình bày trong Luận án là công trình nghiên cứu của tôi dưới sự hướng dẫn của cán bộ hướng dẫn Các số liệu, kết quả trình bày trong Luận án là hoàn toàn trung thực và chưa được công bố trong bất kỳ công trình nào trước đây Các kết quả sử dụng tham khảo đều đã được trích dẫn đầy đủ và theo đúng quy định
Hà Nội, ngày 18 tháng 01 năm 2019
Tác giả
Nguyễn Thị Hồng Nhung
Trang 4
ii
LỜI CẢM ƠN
Trong quá trình học tập, nghiên cứu và hoàn thành Luận án này, tác giả
đã nhận được rất nhiều sự giúp đỡ và đóng góp quý báu từ những người Thầy tận tâm nhất Đầu tiên, tác giả xin bày tỏ lòng cảm ơn chân thành tới Thầy giáo hướng dẫn PGS TS Vũ Thanh Hải, PGS TS Phạm Khắc Hoan đã tận tình hướng dẫn và giúp đỡ tác giả trong quá trình nghiên cứu Đồng thời, tác giả xin gửi lời cảm ơn sâu sắc đến PGS TS Đinh Thế Cường và TS Phạm Xuân Nghĩa đã có những đóng góp, tư vấn quan trọng cho Luận án Tác giả xin chân thành cảm ơn Phòng Sau Đại học, Bộ môn Thông tin, Khoa Vô tuyến Điện tử, Học viện Kỹ thuật Quân sự đã tạo điều kiện thuận lợi để tác giả hoàn thành nhiệm vụ Tác giả cũng xin cảm ơn Trường Đại học Kinh tế
Kỹ thuật Công nghiệp, là đơn vị chủ quản, đã tạo điều kiện cho phép tác giả
có thể tham gia nghiên cứu trong các năm làm nghiên cứu sinh
Cuối cùng, tác giả xin bày tỏ lòng cảm ơn đến gia đình, bạn bè, các đồng nghiệp đã luôn động viên, giúp đỡ tác giả vượt qua khó khăn để đạt được những kết quả nghiên cứu như ngày hôm nay
Tác giả
Trang 5
iii
MỤC LỤC
TRANG BÌA PHỤ
LỜI CAM ĐOAN
LỜI CẢM ƠN
MỤC LỤC
DANH MỤC CHỮ VIẾT TẮT
DANH MỤC HÌNH VẼ
DANH MỤC BẢNG BIỂU
DANH MỤC KÝ HIỆU TOÁN HỌC
MỞ ĐẦU 1
CHƯƠNG 1 TỔNG QUAN VỀ MÃ KHỐI TUYẾN TÍNH 8
1.1 Mã khối nhị phân tuyến tính 8
1.1.1 Mô hình hệ thống thông tin 8
1.1.2 Ma trận sinh 10
1.1.3 Ma trận kiểm tra 12
1.2 Giải mã mã khối 13
1.2.1 Các phương pháp giải mã mã khối 13
1.2.2 Chất lượng giải mã 16
1.3 Các thuật toán giải mã mềm mã khối 20
1.3.1 Thuật toán lan truyền niềm tin 20
1.3.2 Thuật toán tổng tích 23
1.4 Đặt vấn đề nghiên cứu 28
CHƯƠNG 2 GIẢI MÃ MỀM MÃ KHỐI SỬ DỤNG MÃ ĐỐI NGẪU 34
2.1 Mã đối ngẫu 34
2.1.1 Giới thiệu mã đối ngẫu 34
2.1.2 Vai trò mã đối ngẫu trong việc mang tin giải mã 35
Trang 6iv
2.2 Đề xuất các thuật toán giải mã mềm cho mã khối áp dụng tính chất
mang tin của mã đối ngẫu 38
2.2.1 Thuật toán giải mã mềm mã Hamming dựa trên mã đối ngẫu 38
2.2.2 Thuật toán giải mã Hamming sử dụng từ mã đối ngẫu toàn “0” 41
2.2.3 Kết quả mô phỏng và thảo luận về chất lượng các thuật toán giải mã mềm BPA – DCS và BPA – DCZ 45
2.3 Giải mã mềm sử dụng mã đối ngẫu 52
2.3.1 Đề xuất thuật toán giải mã cho các mã khối mật độ cao sử dụng mã đối ngẫu 53
2.3.2 Đánh giá chất lượng thuât toán giải mã dựa trên mã đối ngẫu 56
2.4 Kết luận chương 60
CHƯƠNG 3 GIẢI MÃ MỀM MÃ TÍCH 61
3.1 Mã tích và các đặc điểm 61
3.1.1 Các tham số cơ bản của mã tích 61
3.1.2 Giải mã mã tích 64
3.2 Đề xuất thuật toán giải mã đối ngẫu mã tích 70
3.2.1 Xây dựng cơ sở lý thuyết cho thuật toán giải mã tích mới 71
3.2.2 Thuật toán giải mã mềm mã tích sử dụng mã đối ngẫu 73
3.3 Đánh giá chất lượng thuật toán giải mã đối ngẫu mã tích và đề xuất cải tiến 76
3.3.1 Đánh giá chất lượng thuật toán giải mã đối ngẫu mã tích 76
3.3.2 Đề xuất thuật toán giải mã đối ngẫu mã tích cải tiến 82
3.3.3 Độ phức tạp 86
3.4 Kết luận chương 88
KẾT LUẬN 90
DANH MỤC CÁC CÔNG TRÌNH ĐÃ CÔNG BỐ 92
TÀI LIỆU THAM KHẢO 93
Trang 7v
DANH MỤC CHỮ VIẾT TẮT
Từ viết tắt Nghĩa tiếng Anh Nghĩa tiếng Việt
AWGN Additive White Gaussian
BMA Berlekamp- Massey
Algorithm
Thuật toán Berlekamp- Massey
BPA Belief Propagation Algorithm Thuật toán lan truyền niềm tin BPA-DCS Belief Propagation Algorithm
based on Dual Codes
Thuật toán lan truyền niềm tin dựa trên các mã đối ngẫu
BPA-DCZ BPA – using Dual Code'
codeword of Zeros
Thuật toán lan truyền niềm tin
sử dụng từ mã toàn “0”
BPSK Binary Phase Shift Keying Khóa dịch pha nhị phân
DCA Dual Codes decoding
Algorithm
Thuật toán giải mã đối ngẫu
DCAPC Dual Codes decoding
Algorithm for Product Codes
Thuật toán giải mã đối ngẫu cho
mã tích DVB-S2 Digital Video Broadcasting –
Satellite – Second Generation
Truyền hình số – Vệ tinh – Thế
hệ thứ hai
Trang 8vi
FEC Forward Error Correction Sửa lỗi hướng đi
GMD Generalized Minimum
Distance
Khoảng cách tối thiểu tổng quát
HDD Hard Decision Decoding Giải mã quyết định cứng
HDPC High-Density Parity Check
Code
Mã kiểm tra chẵn lẻ mật độ cao
LDPC Low - Density Parity Check
Code
Mã kiểm tra chẵn lẻ mật độ thấp
LLR Log Likelihood Ratio Tỉ lệ hợp lẽ theo hàm log
MAP Maximum A posteriori
MPA Message Passing Algorithm Thuật toán truyền tin
MSA Min - Sum Algorithm Thuật toán tổng – cực tiểu
MLD Maximum Likelihood
Decoder
Bộ giải mã hợp lẽ cực đại
SDD Soft Decision Decoding Giải mã quyết định mềm
SIHO Soft Input Hard Output Đầu vào mềm đầu ra cứng
Trang 9vii
SISO Soft Input Soft Output Đầu vào mềm đầu ra mềm
SNR Signal to Noise Ratio Tỉ số công suất tín hiệu trên tạp
âm SOVA Soft Output Viterbi
Algorithm
Thuật toán Viterbi đầu ra mềm
SPA Sum - Product Algorithm Thuật toán tổng- tích
VA Viterbi Algorithm Thuật toán Viterbi
Trang 10viii
DANH MỤC HÌNH VẼ
Hình 1 1 Hệ thống thông tin số 8
Hình 1 2 Nguyên lý về giải mã lặp 14
Hình 1 3 Cây giải mã độ sâu b ng 1 15
Hình 1 4 Cây giải mã độ sâu b ng 2 15
Hình 1 5 Chất lượng giải mã mềm Hamming (7,4) so với giải mã cứng và không mã hóa trên kênh AWGN, điều chế BPSK [57] 18
Hình 1 6 Chất lượng giải mã mềm Hamming (15,11) so với giải mã cứng và không mã hóa trên kênh AWGN, điều chế BPSK [57] 19
Hình 1 7 Quá trình truyền bản tin từ nút bit đến nút kiểm tra và ngược lại 21 Hình 1 8 Lưu đồ thuật toán tổng tích SPA 23
Hình 1 9 Lưu đồ thuật toán MSA 27
Hình 2 1 Ma trận kiểm tra và đồ thị Tanner tương ứng của mã Hamming (7,4) 38
Hình 2 2 Chất lượng giải mã BPA mã Hamming (7,4) 41
Hình 2 3 Chất lượng giải mã BPA mã Hamming (31,26) 42
Hình 2 4 Mô hình hệ thống sử dụng mã Hamming 45
Hình 2 5 So sánh chất lượng của mã Hamming (7,4) giữa các thuật toán 46
Hình 2 6 So sánh chất lượng của mã Hamming (15,11) giữa các thuật toán 47
Hình 2 7 So sánh chất lượng của mã Hamming (31,26) giữa các thuật toán 47
Hình 2 8 So sánh chất lượng của mã Hamming (63,57) giữa các thuật toán. 48
Hình 2 9 So sánh BER của mã Hamming (7,4) giữa các thuật toán 49
Hình 2 10 So sánh BER của mã Hamming (15,11) giữa các thuật toán 50
Trang 11ix
Hình 2 11 So sánh BER của mã Hamming (31,26) giữa các thuật toán 50
Hình 2 12 So sánh BER của mã Hamming (63,57) giữa các thuật toán 51
Hình 2 13 Lưu đồ thuật toán DCA 55
Hình 2 14 BER của BPDCA, BPA và HDD cho các mã Hamming 56
Hình 2 15 Chất lượng giải mã theo thuật toán DCA, HDD cho các mã Hamming 58
Hình 2 16 Chất lượng giải mã theo thuật toán DCA, HDD cho mã Golay và Golay mở rộng 59
Hình 3 1 Cấu trúc mã tích 62
Hình 3 2 Lưới mã của mã Hamming (7, 4, 3) 65
Hình 3 3 Mô hình giải mã mã tích 67
Hình 3 4 Lưu đồ thuật toán giải mã lặp cận tối ưu 69
Hình 3 5 Lưu đồ thuật toán giải mã đối ngẫu của mã tích 74
Hình 3 6 Lưu đồ thuật toán giải một hàng hoặc cột của mã tích 75
Hình 3 7 Chất lượng của mã tích 15,11,3 15,11,3 trên kênh AWGN 77
Hình 3 8 Chất lượng của mã tích 31,26,3 31,26,3 trên kênh AWGN 79
Hình 3 9 Chất lượng mã tích với các mã thành phần có chiều dài khác nhau 80
Hình 3 10 So sánh chất lượng thuật toán mới với thuật toán MDUDC 82
Hình 3 11 Chất lượng thuật toán giải mã lặp đối ngẫu mã tích cải tiến với các tốc độ mã hóa khác nhau 85
Hình 3 12 Chất lượng thuật toán giải mã lặp đối ngẫu mã tích cải tiến 86
Trang 12x
DANH MỤC BẢNG BIỂU
Bảng 2 1 Khảo sát một số trường hợp giải mã sai khi truyền tin áp dụng thuật toán BPA cho mã Hamming 7,4 với ma trận kiểm tra trong Hình 2.1 43 Bảng 2 2 So sánh thời gian trung bình xử lý một từ mã giữa BPA và BPA - DCS với các bộ mã Hamming (7,4); (15,11); (31,26) và (63,57) 48 Bảng 2 3 So sánh thời gian trung bình xử lý một từ mã giữa BPA và BPA - DCZ với các mã Hamming (7,4); (15,11); (31,26) và (63,57) 52 Bảng 2 4 Số lượng các vòng kín ngắn trong ma trận , 57 Bảng 2 5 So sánh kích thước ma trận kiểm tra và độ lợi mã hóa khi sử dụng thuật toán HDD và DCA 59 Bảng 3 1 Độ phức tạp của các phương pháp giải mã tích 68 Bảng 3.2 Mối quan hệ giữa tốc độ mã thành phần và độ lợi giải mã 81 Bảng 3 3 So sánh tốc độ mã khi có và không mã hóa các bit kiểm tra chẵn lẻ 83 Bảng 3 4 Độ phức tạp của thuật toán DCAPC và thuật toán cải tiến 87 Bảng 3 5 So sánh độ phức tạp của DCAPC và MDUDC 87
Trang 13xi
DANH MỤC KÝ HIỆU TOÁN HỌC
Chữ thường, in nghiêng Biến số
Chữ thường, in đứng, đậm Véc-tơ chứa các biến số
Chữ hoa, in đứng, đậm Ma trận chứa các biến số
Năng lượng bit trung bìnhMật độ phổ công suất nhiễu hai phía
Phương sai
Trang 141
MỞ ĐẦU
Mã hóa kênh đóng vai trò vô cùng quan trọng trong kỹ thuật truyền dẫn
số do có khả năng sửa và phát hiện lỗi cho phép nâng cao độ tin cậy của hệ thống truyền tin [1], [2], [3], [57] Trong đó mã khối đã được nghiên cứu và ứng dụng rộng rãi trong nhiều hệ thống thông tin số [38], [52], [54] Tuy nhiên, phần lớn các phương pháp giải mã mã khối trước đây còn tồn tại những mặt hạn chế như chất lượng giải mã thấp, độ phức tạp tính toán lớn Hầu hết, các công trình ban đầu đều đánh đổi chất lượng tối ưu để giảm sự phức tạp giải
mã [63], [64]
Trong giải mã khoảng cách tối thiểu tổng quát (GMD) [21], Forney sử dụng bộ giải mã đại số để tạo ra một danh sách các ứng viên Danh sách này được xác định từ độ tin cậy của các symbol trong mỗi khối nhận được Đối với mỗi ứng viên, sẽ được kiểm tra xem có đạt điều kiện tối ưu hay không Các ứng viên có khả năng nhất sẽ được chọn làm từ mã đầu ra Cùng chung ý tưởng, Chase cung cấp một thuật toán với một số bit đáng tin cậy nhất được
hệ thống tìm ra [15] Đối với thuật toán này, số lượng tối đa các từ mã được xem xét và chất lượng lỗi phụ thuộc vào tập hợp các vị trí được kiểm tra Sau
đó, thuật toán của Chase đã được sửa đổi để cho phép tìm kiếm chỉ trên các vị trí tương ứng với độ tin cậy thấp hơn một ngưỡng ấn định trước [59] Chất lượng lỗi phụ thuộc vào việc lựa chọn ngưỡng này, đồng thời số lượng tối đa tính toán cũng phụ thuộc vào sự lựa chọn ngưỡng và tỷ lệ tín trên tạp (SNR) Các thuật toán này bị giảm một ít chất lượng khi sử dụng với mã kích thước nhỏ, nhưng khoảng cách về chất lượng lỗi so với MLD (Maximum Likelihood Decoder) tăng với cùng kích thước mã [14] Thuật toán MLD tối
ưu, dựa trên cùng một ý tưởng đã được đề xuất trong [71] Thuật toán này không giới hạn về không gian tìm kiếm nhưng tại mỗi lần lặp, một không gian
Trang 152
mới đủ mạnh cho điều kiện tối ưu được đưa ra Sau mỗi lần lặp, không gian tìm kiếm cho các từ mã tối ưu giảm và hội tụ tới một kết quả duy nhất Do hiệu quả liên quan đến các tiêu chuẩn dừng, thuật toán MLD cải thiện được độ phức tạp tính toán cho các mã ngắn [15], [70] Tuy nhiên, độ phức tạp của thuật toán này vẫn tăng cấp số nhân theo kích thước của mã Các phương pháp khác tận dụng lợi thế của các mã có cấu trúc khai triển được để giảm sự phức tạp trong giải mã lưới [22], [47] Tuy nhiên sự phức tạp của lưới mã vẫn phát triển theo cấp số nhân với kích thước mã [5] Để duy trì số lượng tính toán có thể kiểm soát, nhiều bộ giải mã cận tối ưu đa tầng dựa trên cấu trúc lưới mã đã được đưa ra [37]
Với phương pháp giải mã tối ưu ở trên, việc lưu trữ các kết quả tốt có thể dẫn đến nhiều tìm kiếm và tính toán không cần thiết Từ đó, một cách tiếp cận khác được đề xuất: Đối với phạm vi tỉ lệ lỗi bit (BER: Bit Error Rate) nhất định, ta chỉ cần đảm bảo chất lượng lỗi kết hợp với MLD Vì vậy, tồn tại hai vấn đề đối với từ mã quyết định khác từ mã MLD tối ưu Đầu tiên, từ mã MLD là chính xác và từ mã được giải bị lỗi, nhưng trường hợp này không đủ
để làm cho chất lượng lỗi tối ưu bị suy giảm đáng kể Thứ hai, cả hai đều bị lỗi, trong trường hợp này chất lượng tối ưu cũng không bị giảm Thuật toán này không phải là tối ưu, nhưng thực sự không có sự khác biệt về chất lượng lỗi so với khi giải mã MLD Trong khi đó, nhiều tính toán không cần thiết được lưu lại Bất cứ khi nào chất lượng tối ưu bị giảm không đáng kể, chúng
ta xem chất lượng lỗi thu được trên thực tế là tối ưu với BER xác định
Thuật toán được đề xuất bao gồm ba bước: 1) Sắp xếp lại các symbol của một chuỗi nhận được dựa trên độ tin cậy như trong [34] 2) Giải mã cứng cho chuỗi nhận được đã sắp xếp lại, chuỗi tin cung cấp một từ mã dự kiến sẽ có ít bit thông tin bị lỗi nhất có thể và 3) cải tiến việc giải mã cứng dần dần theo từng giai đoạn cho đến khi đạt chất lượng lỗi tối ưu thực tế hoặc chất lượng
Trang 163
lỗi mong muốn Các giai đoạn này thực hiện trực tiếp từ các số liệu thống kê sau khi sắp xếp theo xác suất lỗi symbol, làm tăng chất lượng giải mã tại mỗi bước Sự hội tụ nhanh chóng từ mã MLD có thể quan sát thấy trong hầu hết các trường hợp, kết quả là lượng tính toán rất thấp Một tính năng khác của thuật toán là sau mỗi giai đoạn, chúng ta có thể có liên kết chặt chẽ chất lượng lỗi đạt được dựa trên các số liệu thống kê các lệnh Điều này cho phép xác định số lượng các giai đoạn cần thiết để giải mã một mã nhất định đến một BER cụ thể và đánh giá chính xác số lượng tối đa các tính toán cần thiết cho trường hợp xấu nhất Đây là yếu tố rất quan trọng, vì nhiều thuật toán giải mã tối ưu hoặc cận tối ưu, mặc dù thực hiện với số lượng tính toán trung bình thấp, nhưng lại có một trường hợp tồi nhất với số lượng tính toán cực kỳ cao
và rất khó để đánh giá chính xác, chẳng hạn như các thuật toán [34], [71] Hơn nữa, các thuật toán đề xuất không yêu cầu lưu trữ các từ mã còn lại hoặc
từ mã ứng viên cho quyết định cuối cùng
Nhiều nhà nghiên cứu đã xem xét đến vấn đề của việc giải mã ngoài giới hạn khoảng cách tối thiểu của mã Cách tiếp cận này có thể là chọn xây dựng một mã đơn giản, thường là sự kết nối của hai mã trở lên và cố gắng giải mã ngoài một nửa khoảng cách tối thiểu [7], [23], [24] Một cách rất hay về hướng này được đưa ra bởi Glavieux và Berrou với hai mã chập kết nối song song được gọi là mã Turbo [11], [12]
Sau đó người ta phát hiện r ng Gallager trong một báo cáo trước đó đã đưa ra ý tưởng tương tự gọi là mã kiểm tra chẵn lẻ mật độ thấp (LDPC: Low Density Parity Check) [27]
Bộ giải mã LDPC sử dụng thuật toán giải mã lặp do Gallager đề xuất có tên gọi là lan truyền niềm tin BPA (Belief Propagation Algorithm) hay chuyển tin MPA (Message Passing Algorithm) có chất lượng cao, thời gian giải mã lâu, chỉ ứng dụng với các mã trung bình và dài [17], [68]
Trang 174
Các mã LDPC có ưu điểm so với các mã Turbo: độ phức tạp tính toán thấp hơn; Khảo sát thực nghiệm cho thấy, tất cả các lỗi đều được phát hiện; các phương pháp giải mã đơn giản hơn [74] Do vậy, các mã LDPC là ứng cử viên triển vọng cho các hệ thống mã sửa lỗi hướng đi FEC: Forward Error Correction và được chấp nhận bởi nhiều tiêu chuẩn tiên tiến như Ethernet 10 Gigabit (10GBASE - T) và truyền hình số (DVB - S2: Digital Video Broadcasting – Satellite – Second Generation) Tuy nhiên, những nhược điểm như các mã có chất lượng tốt nhất là các mã rất dài Do chiều dài khối lớn, tốc
độ mã thấp và sử dụng giải mã lặp nên LDPC chưa phù hợp với các hệ thống truyền tin có độ trễ thấp Mặt khác, ma trận sinh không nhất thiết là ma trận thưa nên việc mã hoá theo ma trận sinh có độ phức tạp tỷ lệ với bình phương chiều dài mã [4], [67]
Với các hệ thống truyền tin tốc độ cao, độ trễ thấp hiện nay, mã LDPC chưa là lựa chọn hợp lý có thể thay thế mã Turbo
Mã Turbo là sự kết nối gồm hai hay nhiều bộ mã chập riêng biệt để tạo
ra một mã tốt hơn và cũng lớn hơn Mã Turbo yêu cầu giải mã MAP (Maximum A posteriori Probability) trên lưới của các mã thành phần nên độ phức tạp rất lớn chỉ có thể áp dụng cho các mã ngắn [9], [69], [65]
Mã tích (Product Codes) có khoảng cách mã lớn được xây dựng từ các mã thành phần có độ dài và khoảng cách mã nhỏ cho phép đạt chất lượng và độ phức tạp có thể so sánh với mã Turbo với số vòng lặp giải mã nhỏ hơn [6], [58]
Có nhiều thuật toán giải mã mã tích đã được trình bày từ khi mã tích được biết đến [42], [60], [65], Các thuật toán này nhìn chung phân làm hai loại: Các thuật toán đơn giản cho chất lượng giải mã thấp và các thuật toán cho chất lượng giải mã cao nhưng có độ phức tạp rất cao Phương pháp giải
mã Viterbi đầu ra mềm (gần giống với giải mã MAP) cho mã thành phần, trên
mã đối ngẫu, nh m giảm độ phức tạp mã tích, đem lại chất lượng giải mã cao
Trang 185
nhưng độ phức tạp vẫn quá lớn và không có tính khả dụng [30], [77] Nghiên cứu, đề xuất bộ giải mã hiệu quả cho các mã thành phần đáp ứng được các tiêu chí như chất lượng kiểm soát lỗi cao, thuật toán đơn giản phù hợp cấu trúc mã tích là vấn đề quan trọng để có thể tận dụng khả năng sửa lỗi của mã tích
Theo các nghiên cứu trước đây, giải mã quyết định mềm cho phép nâng cao chất lượng giải mã, nhưng vẫn cần có những cải tiến để giảm độ phức tạp nhất là khi sử dụng cho các mã có cấu trúc liên kết như mã tích [8], [10], [13], [51],
Mã tích chính là mã khối dài có thể được xây dựng bởi hai hay nhiều mã khối thành phần ngắn hơn Mã tích có tốc độ mã hóa b ng tích các mã thành phần nên việc lựa chọn các mã thành phần là các mã khối có tốc độ mã hóa cao là ý tưởng hợp lý Với các mã có tỉ lệ mã hóa cao, vấn đề giải mã b ng mã đối ngẫu sẽ giảm được sự phức tạp mà vẫn đảm bảo thông tin giải mã như mã gốc [30], [44], [55]
Đây chính là lý do lựa chọn đề tài “Giải mã mềm cho mã khối dựa trên không
gian mã đối ngẫu”
Trong quá trình nghiên cứu, tìm hiểu các phương pháp giải mã mềm và đưa ra các phương án giải mã với lập luận chắc chắn và đánh giá tin cậy, Luận án hướng đến việc xây dựng được thuật toán giải mã mới nh m nâng cao chất lượng giải mã của mã khối để có thể tận dụng khả năng kiểm soát lỗi của mã tích
Nhiệm vụ nghiên cứu:
- Nghiên cứu mã khối và các thuật toán giải mã mềm cho mã khối
Trang 196
- Nghiên cứu các thuật toán giải mã mã kênh có chất lượng giải mã cao
- Nghiên cứu mã tích với mã thành phần là các mã khối và các thuật toán giải mã
Phương pháp nghiên cứu
- Sử dụng phương pháp phân tích lý thuyết trong mã kênh, đề xuất các thuật toán giải mã mềm cho mã khối
- Sử dụng kỹ thuật mô phỏng Monte-Carlo trên Matlab để kiểm chứng các kết quả nghiên cứu
Ý nghĩa khoa học và thực tiễn: Trong thiết kế hệ thống thông tin, đặc
biệt trong hệ thống không dây Wifi, WiMax,… Giải mã quyết định cứng được xem là giải mã tiềm năng, giải mã quyết định mềm được xem là giải mã tình thế Bởi vậy, có thể thấy giải mã quyết định mềm hiệu quả hơn nhưng phức tạp hơn giải mã quyết định cứng và sự phức tạp của bộ giải mã là trở ngại chính trong việc sử dụng các mã mạnh Điều này là do, trong hầu hết các trường hợp, hệ thống truyền dẫn được thiết kế phải rẻ và không yêu cầu tiêu thụ nhiều công suất Mặt khác, sử dụng mã mạnh trong việc truyền sẽ làm giảm khả năng gửi lại dữ liệu khi nhiễu quá lớn Hai họ mã kênh mạnh nhất hiện nay là LDPC và Turbo sử dụng các thuật toán giải mã mềm như BPA, SOVA, cho chất lượng kiểm soát lỗi rất tốt Tuy nhiên, các bộ mã này vẫn còn nhược điểm như thời gian giải mã lâu (LDPC), hệ thống phức tạp Turbo , khó đáp ứng các hệ thống truyền tin tốc độ cao, độ trễ thấp, thời gian thực (ví dụ các mạng cảm biến vô tuyến, IoT, ) Vấn đề quan trọng là nghiên cứu, đề xuất các thuật toán giải mã mềm nhận thông tin giải mã trong không gian mã đối ngẫu, có cơ sở lý thuyết chắc chắn, đồng thời đề xuất ứng dụng cho họ mã cụ thể, như mã tích với các mã thành phần là mã khối mật độ cao
nh m giảm độ phức tạp, đạt chất lượng cao, Đề tài nghiên cứu của Luận án
có ý nghĩa khoa học và phù hợp nhu cầu thực tiễn của các hệ thống truyền dẫn
Trang 207
vô tuyến thời gian thực Các thuật toán đề xuất đều được đánh giá về độ phức tạp và mô phỏng so sánh chất lượng với các thuật toán đã được công bố để khẳng định tính đúng đắn, khả năng phát triển và ứng dụng
Bố cục của Luận án: Luận án được trình bày gồm 3 chương với các nội
dung chính như sau:
- Chương 1: Trình bày tổng quan về mã khối tuyến tính với các phương
pháp giải mã khối như giải mã cứng, giải mã mềm, Tìm hiểu các thuật toán giải mã mềm như BPA, phù hợp với các mã mật độ thấp Đặt vấn đề tình hình nghiên cứu liên quan đến đề tài
- Chương 2: Nghiên cứu các hướng phát triển của đề tài liên quan đến
giải mã mềm cho mã khối từ vai trò mang tin của mã đối ngẫu Đề xuất các thuật toán giải mã mềm cho mã khối dựa trên tính chất chứa thông tin giải mã của mã đối ngẫu Đánh giá chất lượng các thuật toán được đề xuất để đưa ra hướng nghiên cứu tiếp theo của Luận án với mục đích tìm kiếm được phương
án giải mã mềm tốt cho mã khối nh m nâng cao khả năng kiểm soát lỗi kênh với độ phức tạp thấp
- Chương 3: Phân tích, đánh giá một số thuật toán giải mã mã tích Đưa
ra các vấn đề còn tồn tại, hướng cần tập trung giải quyết và phát triển của Luận án Đi sâu vào việc kiểm soát lỗi kênh nhờ sử dụng mã tích với các mã khối mật độ cao làm mã thành phần và dùng thuật toán mềm liên quan đến việc vét cạn thông tin giải mã trong mã đối ngẫu với mã gốc Lập luận, xây dựng cơ sở lý thuyết cho các thuật toán giải mã mềm của các mã khối thành phần của mã tích Đánh giá chất lượng các thuật toán đề xuất và so sánh với các công trình đã được công bố
Trang 21
8
Chương 1 TỔNG QUAN VỀ MÃ KHỐI TUYẾN TÍNH
Mã hóa kênh đóng vai trò vô cùng quan trọng trong kỹ thuật truyền dẫn thông tin số, trong đó mã khối là họ mã có khả năng sửa và phát hiện lỗi khá tốt đảm bảo độ chính xác cho hệ thống truyền tin Tuy nhiên, phần lớn các họ
mã khối trước đây còn tồn tại những mặt hạn chế đáng kể như đánh đổi chất lượng giải mã để giảm lượng tính toán và tăng tốc độ mã hóa Hoặc, để đạt chất lượng mong muốn, phải tăng độ phức tạp tính toán cũng như giảm tốc độ
mã hóa Việc phân tích tính chất của mã khối cũng như đánh giá chất lượng giải mã của các thuật toán đóng vai trò vô cùng quan trọng trong việc cải thiện, tìm ra các phương pháp kiểm soát lỗi nh m tăng chất lượng truyền dẫn
1.1 Mã khối nhị phân tuyến tính
1.1.1 Mô hình hệ thống thông tin
Xét hệ thống thông tin số theo sơ đồ khối Hình 1.1 Ta có nguồn tin phát
ra chuỗi tin được mã hóa kênh thành chuỗi , cụ thể là các kí hiệu thuộc
tập kí tự của bộ mã kênh Sau khi đưa qua bộ điều chế ta có các tín hiệu dạng sóng để truyền trên kênh có nhiễu Tại máy thu, tín hiệu thu được giải
điều chế cho ta kí hiệu y i thuộc tập kí tự Sau bộ giải mã kênh ta phục hồi
được ̂ là ước lượng của thông tin ban đầu tại đích
Hình 1 1 Hệ thống thông tin số
Giải mã kênh
Giải điều chế
Kênh truyền
Mã hóa kênh
𝐲 𝐜̂
𝐮
̂
Đích
Trang 229
Như vậy ta có kênh liên tục n m giữa hai khối điều chế và giải điều chế Nếu xét kênh bao gồm cả hai khối này thì ta có mô hình kênh rời rạc Phía trước kênh ta gọi là máy phát, phía sau kênh là máy thu Vì kênh thực tế tồn tại nhiễu ảnh hưởng đến thông tin truyền trên kênh và gây ra các sai lỗi tin, thể hiện ở sự sai khác của ước lượng tin tại đích so với thông tin tại nguồn Giả sử đầu ra của một nguồn tin là một dãy các bit nhị phân “0” và “1” Trong trường hợp mã khối thì dãy thông tin đầu ra từ một nguồn tin sẽ được chia thành các khối có chiều dài cố định và thường được gọi là các bản tin Mỗi bản tin ký hiệu là gồm có bit thông tin Như vậy, tổng cộng chúng ta
có bản tin khác nhau có thể có và chúng có thể được thể hiện là các bộ vectơ thành phần, trong đó mỗi thành phần của vectơ là “0” và “1” Bộ
phận mã hóa theo một quy luật nào đó sẽ ánh xạ bản tin thành một vectơ
thành phần ( - tuples) với ( Khi đó được gọi là từ mã hay vectơ mã) của bản tin Ứng với bản tin sẽ có từ mã khác nhau Tập hợp
từ mã này được gọi là một mã khối Để mã khối có thể giải mã được, từ
mã luôn là các từ mã độc lập tuyến tính Do đó, sẽ có ánh xạ 1:1 giữa một bản tin và một từ mã
Đối với một mã khối có từ mã và mỗi từ mã có chiều dài , việc lưu lại bảng mã để phục vụ cho giải mã khó khăn khi lớn Tồn tại họ mã có cơ chế hoạt động dễ dàng hơn đó là mã khối tuyến tính [57]
Định nghĩa: Một mã khối có chiều dài gồm từ mã được gọi là mã tuyến tính khi và chỉ khi từ mã hình thành một không gian vectơ con chiều của không gian vectơ gồm tất cả các vectơ thành phần
Hệ quả: Mã khối nhị phân được gọi là tuyến tính khi và chỉ khi kết quả cộng modulo 2 của hai từ mã cũng là một từ mã thuộc bộ mã đó
Tính chất:
Trang 23và Tính chất này biểu hiện việc xác định khoảng cách tối thiểu (khả năng phát hiện và sửa lỗi) của mã khối tuyến tính
- Điều kiện sửa lỗi của bộ mã:
- Khả năng sửa lỗi của bộ mã:
Bộ mã có khả năng sửa tối đa là lỗi, mối quan hệ giữa và khảng cách Hamming tối thiểu được xác định: ⌊ ⁄ ⌋
- Khả năng phát hiện lỗi của bộ mã:
Chức năng phát hiện lỗi của mã sẽ bị sai trong trường hợp lỗi biến một
từ mã được phát thành từ mã khác Điều này sẽ không xảy ra nếu có ít hơn hoặc b ng lỗi xuất hiện trong vị trí của từ mã Vậy, khả năng phát hiện số bit lỗi của bộ mã là
Trang 2411
Với { } và [
g1
g2g
1
11
01
1000
0100
0010
0001+
011111001001
110001110110
011000111011
110010001111
100111010101
101101111000
010110111100
001011011110
000101101111
111100100101
100000000000
010000000000
001000000000
000100000000
000010000000
000001000000
000000100000
000000010000
000000001000
000000000100
000000000010
000000000001]
(1.3) Nếu là thông tin cần được mã hoá thì từ mã tương
ứng với thu được b ng cách lấy nhân với
[
g1
g2g
] (1.4)
Vì các từ mã tương ứng với các thông tin được sinh ra bởi theo cách như trên nên được gọi là ma trận sinh của bộ mã
Trang 2512
Chú ý
Bất kỳ từ mã độc lập tuyến tính nào cũng có thể được dùng để làm ma trận sinh cho bộ mã Nói cách khác, các ma trận sinh khác nhau có thể biểu diễn cùng một bộ mã tuyến tính (hay còn gọi là không gian mã , hay ngược lại một bộ mã tuyến tính có thể có nhiều ma trận sinh khác nhau biểu diễn Tương ứng với mỗi ma trận sinh thì sẽ có một phép mã hoá Có nghĩa là ứng với hai ma trận sinh khác nhau sẽ có hai phép mã hoá khác nhau Vì vậy, với cùng một bộ mã tuyến tính việc chọn ma trận sinh nào là rất quan trọng vì
nó quyết định việc ánh xạ thông tin nào thành từ mã
1.1.3 Ma trận kiểm tra
Đối với một ma trận sinh bất kỳ có hàng độc lập tuyến tính, tồn tại một ma trận có hàng độc lập tuyến tính Một vectơ bất kỳ trong không gian tạo bởi hàng của là trực giao với các hàng của và một vectơ bất kỳ trực giao với các hàng của sẽ thuộc không gian tạo bởi hàng của Do đó, một tổ hợp gồm thành phần là một từ mã hợp lệ của mã được tạo ra bởi ma trận sinh khi và chỉ khi:
[ ] (1.5) Với là ma trận chuyển vị của ma trận , ma trận được gọi là ma trận kiểm tra chẵn lẻ của mã
Khi từ mã truyền trên kênh có nhiễu tác động sẽ xảy ra lỗi ở vị trí các bit trong từ mã và thông tin nhận được sẽ bị sai lệch Vì vậy, nguyên lý giải mã cũng đồng thời là cơ chế phát hiện và sửa lỗi của bộ mã bất kỳ dựa trên tính thống kê của kênh Tác động của nhiễu được biểu thị b ng những vectơ gây lỗi có cùng số chiều với không gian mã gọi là vectơ lỗi Về nguyên tắc, khi giải mã tuyến tính trước tiên phải xác định xem từ mã nhận được có sai hay không Nếu sai, phải phân tích để xác định vị trí sai rồi sửa
Trang 2613
1.2 Giải mã mã khối
Thông thường, các phương pháp giải mã đều dựa trên các giá trị rời rạc Các bit tin thu được b ng cách lượng tử hóa đầu ra của bộ giải điều chế thành hai mức “0” và “1” Tuy nhiên, giá trị thực tế ở đầu ra bộ giải điều chế có thể được sử dụng thay vì lượng tử hóa chúng để xác định độ tin cậy của bit được quyết định [57]
1.2.1 Các phương pháp giải mã mã khối
a) Giải mã quyết định cứng
Phương pháp giải mã đơn giản nhất là giải mã quyết định cứng (HDD: Hard Decision Decoding) [57] Để thuận tiện, trong Luận án gọi tắt HDD là giải mã cứng Chuỗi tín hiệu đầu vào bộ giải mã ̂ (sau khi giải điều chế) bắt buộc phải nhận thông tin trực tiếp từ tin bị nhiễu
Nghĩa là, việc giải mã chỉ sử dụng giá trị các bit nhận được lượng tử) chứ không phải là độ tin cậy của chúng được gọi là giải mã cứng
b) Giải mã quyết định mềm
Thuật toán giải mã tính đến thông tin tin cậy hoặc sử dụng các giá trị xác suất hay giá trị hợp lý (likelihood) thay vì dữ liệu được lượng tử hóa tại đầu vào bộ giải mã được gọi là giải mã quyết định mềm (SDD: Soft Decision Decoding) - Gọi tắt là giải mã mềm [57] Có một số phương pháp giải mã mềm cổ điển sử dụng, đặc biệt đối với mã nhị phân điều chế BPSK, truyền trên kênh AWGN (Additive White Gaussian Noise) như SIHO, SISO,… Các thuật toán đưa ra các quyết định cứng tại đầu ra tức là giá trị giải
mã được cung cấp không cần bất kỳ thông tin tin cậy Tuy nhiên nó lại dựa vào các quyết định đầu vào mềm hoặc độ tin cậy phù hợp với đầu ra
Giải mã lặp là kỹ thuật sử dụng thuật toán giải mã đầu ra mềm được lặp lại nhiều lần trước khi cho kết quả giải mã cuối cùng Quá trình lặp nh m cải thiện xác suất lỗi của hệ thống mã hóa, với mục đích tiệm cận giải mã hợp lẽ
Trang 2714
cực đại (MLD: Maximum- Likehood Decoding) với độ phức tạp nhỏ hơn Các bộ mã sửa lỗi được thiết kế và tăng số lần lặp để cải thiện xác suất lỗi
Hình 1 2 Nguyên lý về giải mã lặp Một bộ giải mã lặp, trong mỗi bước lặp, sử dụng hai nguồn thông tin đã biết về từ mã được truyền đi:
Thông tin nội tại: thông tin từ kênh
Thông tin bên ngoài: thông tin từ bước lặp trước đó
Từ hai nguồn thông tin này mà thuật toán giải mã cố gắng thu lấy một thông tin tốt hơn về từ mã được truyền đi và sử dụng thông tin này như là thông tin bên ngoài cho bước lặp tiếp theo Hình 1.2
Trong một quá trình giải mã thành công, thông tin bên ngoài sẽ ngày càng trở nên tốt hơn khi bộ giải mã thực hiện lặp Bởi vậy, trong tất cả các phương pháp phân tích về các bộ giải mã lặp thì việc thống kê các bản tin bên ngoài trong mỗi bước phân tích được quan tâm đến
Sau một số lần lặp, hàm mật độ xác suất của các bản tin bên ngoài từ bước lặp này đến bước lặp khác được cải thiện, bộ giải mã sẽ hội tụ với ước lượng từ mã truyền đi
Giả sử r ng một bản tin hình tròn cập nhật từ một nút nào đó tới một nút kiểm tra hình vuông trong bộ giải mã Bản tin này được tính toán từ các bản tin khác đến kết hợp với bản tin kênh Các bản tin đến, thực tế là các bản
Thông tin từ kênh
Thông tin bên ngoài (tới bước lặp tiếp theo)
Một bước lặp của thuật toán
(Thông tin nội tại)
Thông tin bên ngoài (từ bước lặp trước đó
Trang 2815
tin đi ra từ một vài nút kiểm tra mà đã được cập nhật trước đó Nó tạo thành một cây độ giải mã độ sâu là 1 như được chỉ ra trong Hình 1.3
Hình 1 3 Cây giải mã độ sâu b ng 1
Hình 1 4 Cây giải mã độ sâu b ng 2 Tiếp tục như trong Hình 1.4 có thể thu được cây giải mã với bất kỳ độ sâu nào Hình 1.4 chỉ ra một ví dụ của một kênh giải mã có độ sâu b ng 2 đối với một mã khối bất quy tắc vì khi nhìn vào một mã bất quy tắc thì cây giải
mã đối với các nút bít khác nhau là khác nhau
Đầu ra từ bước lặp trước đó
Đầu vào bước lặp tiếp theo
Bước lặp tiếp theo
Kênh
Trang 29đƣợc điều chế BPSK thành vectơ truyền trên kênh và các vectơ này là một điểm trong không gian chiều
Nếu coi , là hai tập biến cố mà tín hiệu truyền bị sai Từ công thức giới hạn liên kết có thể thấy xác suất symbol lỗi có thể bị chặn: (symbol giải mã lỗi| gửi đi) , với ⁄
và là hàm biểu thị xác suất lỗi bit khi thu thông tin không mã hóa
Giả sử r ng có từ mã (trung bình) tại khoảng cách nhận đƣợc từ một mã Xác suất phát hiện lỗi cho một symbol với từ mã trong không gian truyền có giới hạn [57], [62]:
𝐵
Trang 3017
(
) 1.6 Với:
√ ∫
1.7 Khoảng cách Euclid giữa hai từ mã được điều chế BPSK có liên quan
đến khoảng cách Hamming giữa các từ mã [58]:
√ √ (1.8) Xác suất lỗi symbol khi giải mã mềm là [62]:
mềm và không mã hóa là:
1.11 Vậy,
Độ lợi mã hóa tiệm cận
b) Chất lượng giải mã cứng
Trường hợp giải mã cứng với xác suất lỗi bit là: √ ⁄
Rất khó xác định độ lợi mã hóa khi sử dụng phương pháp giải mã cứng Ta có
thể tính theo phương pháp xấp xỉ, giới hạn xác xuất lỗi symbol là [62]:
∑ ( )
1.12
Trang 31
(
)
(1.14) Trường hợp không mã
√ (1.15)
Hình 1 5 Chất lượng giải mã mềm Hamming (7,4) so với giải mã cứng và
không mã hóa trên kênh AWGN, điều chế BPSK [57]
So sánh hai trường hợp giải mã cứng và không mã, bỏ qua các hệ số, độ lợi đạt được của mã cứng là
1,3 dB
Trang 3219
Độ lợi mã hóa tiệm cận (1.16) Giá trị này gần b ng một nửa của độ lợi giải mã mềm đạt được Hay độ lợi của giải mã mềm so với giải mã cứng là:
Độ lợi mã hóa tiệm cận (1.17) Công thức 1.17 chứng minh giải mã mềm tốt hơn giải mã cứng Hình 1.5 và Hình 1.6 là ví dụ thể hiện sự so sánh về chất lượng giữa các phương pháp giải mã
Hình 1 6 Chất lượng giải mã mềm Hamming (15,11) so với giải mã cứng và
không mã hóa trên kênh AWGN, điều chế BPSK [57]
Lưu ý, giá trị tiệm cận chỉ đạt được khi SNR đủ lớn để giới hạn liên kết được coi là phép xấp xỉ hợp lý Các bộ mã kênh được tạo ra với mong muốn
có khoảng cách Hamming lớn và có thuật toán giải mã có độ phức tạp thấp
nh m đạt được giá trị tiệm cận theo lý thuyết tại SNR thấp
1,4 dB 1,2 dB
Trang 3320
1.3 Các thuật toán giải mã mềm mã khối
Các thuật toán giải mã mềm trên cơ sở giải mã lặp cho mã khối nói chung có sự tương thích giữa tính phức tạp và chất lượng Mặc dù trong hầu hết các trường hợp, kết quả thu được b ng giải mã lặp chỉ đạt chất lượng gần với thuật toán tối ưu như giải mã MLD Sự giảm độ phức tạp giải mã làm cho thuật toán giải mã lặp là một yếu tố căn bản khiến cho giải mã tối ưu Mã LDPC của Gallager với thuật toán giải mã BPA là b ng chứng rõ ràng cho thấy giải mã lặp là sự thay thế hiệu quả cho giải mã tối ưu như giải mã MLD hay giải mã cực đại hóa xác suất hậu nghiệm (MAP: Maximum Aposteriori Probability) [27] Ngày nay có các cải tiến nh m đơn giản hóa bộ giải mã là thuật toán tổng - tích (SPA: Sum - Product Algorithm), tổng - cực tiểu (MSA: Min - Sum Algorithm) [26]
1.3.1 Thuật toán lan truyền niềm tin
Xét mã khối , đầu vào bộ giải mã BPA là tỷ lệ ước lượng theo hàm log (LLR: Log Likelihood Ratio):
( ) ̂ ̂ | ̂
̂ | ̂ 1.18
Ở đây ̂ là tập các symbol nhận từ kênh ̂ | ̂ là xác suất điều kiện với
Thuật toán BPA là thuật toán giải mã lặp có hai bước chính:
Bước 1: Cập nhật bản tin cho tất cả các nút kiểm tra và gửi bản tin ( ) từ nút kiểm tra tới các nút bit nối với nó
Bước 2: Cập nhật bản tin cho tất cả các nút bit và gửi bản tin ( ) từ các nút bit tới nút các kiểm tra nối với nó
Đầu ra của bộ giải mã là giá trị LLR của các bit mã được sử dụng để quyết định thành từ mã thăm dò ̅ ̅ ̅ ̅ Nếu syndrome thỏa mãn điều kiện:
Trang 3421
̅ [ ] (1.19) thì dừng lặp và đƣa ra từ mã hợp lệ ̅ Nếu điều kiện (1.19) không thỏa mãn thì quá trình đƣợc thực hiện lại cho đến khi đạt số lần lặp cực đại thì dừng và đƣa ra từ mã tại lần lặp cuối
Để tìm hiểu kỹ hơn về thuật toán này, chúng ta sẽ đƣa ra một số định nghĩa sau:
: ma trận kiểm tra chẵn lẻ ( hàng, cột)
: bit thứ của từ mã bit
[ | ] – xác suất hậu nghiệm của bit
Việc truyền bản tin có thể đƣợc minh họa ở Hình 1.7:
Hình 1 7 Quá trình truyền bản tin từ nút bit đến nút kiểm tra và ngƣợc lại Thuật toán BPA đƣợc trình bày chi tiết nhƣ sau:
Trang 3522
Khởi tạo: Tính LLR ̂ cho tất cả các nút bit và đặt:
( ) ̂ ̂ | ̂
̂ | ̂ 1.20 tại vị trí thỏa mãn cho lần lặp thứ nhất
Bước 1: Đối với tất cả các nút kiểm tra , tính toán
( ) ứng với các vị trí có tại lần lặp thứ theo phương trình sau:
( ) (∏ ( ( ))) (∑ (| ( )|))
(1.21) với
[ ⁄ ] [
] Sau đó gửi bản tin ( ) từ nút kiểm tra tới các nút bit nối với nó
Bước 2: Tính toán ( ) đối với tất cả các nút tin ̂ tại các vị trí có theo phương trình sau:
( ) ̂ ∑
1.22
Tiếp đó gửi bản tin ( ) từ các nút bit tới nút kiểm tra nối với nó Đầu ra
bộ giải mã là giá trị LLR của các bit mã ̅ tại lần lặp thứ nhất:
và kiểm tra điều kiện (1.19) nếu thỏa mãn thì đưa ra từ mã ̅, nếu không thỏa
Trang 3623
mãn thì quá trình được thực hiện lại bước 1 cho đến khi đạt số lần lặp cực đại
thì dừng và đưa ra từ mã tại lần lặp cuối
1.3.2 Thuật toán tổng tích
Thuật toán tổng tích SPA [26] là một thuật toán giải mã lặp dựa trên thuật toán lan truyền niềm tin BPA đây là một trong những phương pháp hiệu quả cho việc giải mã các mã LDPC
SPA có thể miêu tả qua 5 bước, thể hiện trên lưu đồ thuật toán trình bày
Trang 3724
Bước 1: cho chạy từ đến , đặt :
| 1.25 với là ký tự thứ mà kênh nhận đƣợc Sau đó đặt :
Trang 381.3.3 Thuật toán tổng cực tiểu
Hiện nay rất nhiều hướng nh m giảm sự phức tạp thuật toán BPA và MSA (Min – Sum Algorithm) cũng là một trong số đó, MSA được hình thành trên cơ sở phát triển thuật toán SPA (Sum – Product Algorithm) thuật toán mà Mackay – Neal đã sử dụng để chứng minh mã khối có thể tiệm cận giới hạn Shannon [26] Cụ thể, để hình thành thuật toán giải mã MSA ta thực hiện một
số cải tiến cho các bước như sau:
Bước 1: Thay vì tính , tính:
( ) (
) 1.30
Bước 2: Vì Từ phương trình (1.24), ta có:
∏ ( )
Mặt khác với , xấp xỉ nhau, nên: