Trong bài báo này, đề xuất thuật toán giải mã BPA (Belief Propagation Algorithm) cải tiến dựa trên tính chất đối ngẫu của mã khối tuyến tính. Thuật toán mới đề xuất thực hiện giải mã mềm với các ma trận kiểm tra tương đương ứng dụng cho mã Hamming, trong đó, các ma trận kiểm tra tương đương được xây dựng trên cơ sở sử dụng các từ mã đối ngẫu. Kết quả khảo sát cho thấy độ lợi của thuật toán giải mới tốt hơn từ 0.45 dB đến 0.5 dB so với thuật toán BPA truyền thống mà thời gian và độ phức tạp giải mã tăng không đáng kể.
Nghiên cứu khoa học công nghệ GIẢI MÃ MỀM MÃ HAMMING DỰA TRÊN CÁC MÃ ĐỐI NGẪU Nguyễn Thị Hồng Nhung1*, Phạm Xuân Nghĩa2, Vũ Thị Thắng3, Lê Tiến Cường4 Tóm tắt: Trong báo này, chúng tơi đề xuất thuật tốn giải mã BPA (Belief Propagation Algorithm) cải tiến dựa tính chất đối ngẫu mã khối tuyến tính Thuật toán đề xuất thực giải mã mềm với ma trận kiểm tra tương đương ứng dụng cho mã Hamming, đó, ma trận kiểm tra tương đương xây dựng sở sử dụng từ mã đối ngẫu Kết khảo sát cho thấy độ lợi thuật toán giải tốt từ 0.45 dB đến 0.5 dB so với thuật toán BPA truyền thống mà thời gian độ phức tạp giải mã tăng khơng đáng kể Từ khóa: Mã kênh, Giải mã mềm, Mã Hamming. ĐẶT VẤN ĐỀ 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à loại 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 tốn và tăng tỷ lệ mã hóa hoặc để đạt chất lượng mong muốn lại phải tăng độ phức tạp tính tốn cũng như giảm tỷ lệ mã hóa. Mã Hamming do Richard Hamming lần đầu tiên giới thiệu tại [1] là một loại mã thuộc họ mã khối có thể sửa được 1 lỗi đơn hoặc phát hiện được các lỗi kép (bội 2). Với tính chất đơn giản của thuật tốn mã hóa và giải mã, mã Hamming đã được ứng dụng khá rộng rãi trong các hệ thống truyền tin số với vai trị là mã phát hiện lỗi. Với mục đích sử dụng mã Hamming vừa có khả năng sửa lỗi, vừa có khả năng phát hiện lỗi, trong bài báo đề xuất thuật tốn giải mã mềm cải tiến ứng dụng cho loại mã này. Từ việc nghiên cứu thuật tốn giải mã BPA [4] và tính chất đối ngẫu của mã sửa sai [2], [3], chúng tơi đưa ra ý tưởng xây dựng thuật tốn giải mã mới cho mã khối tuyến tính trong đó có mã Hamming. Phần cịn lại của bài báo được trình bày như sau: Mục 2 trình bày các cơ sở lý luận để xây dựng thuật tốn giải mã mới, mục 3 của bài báo trình bày các bước của việc xây dựng thuật tốn giải mã mới, mục 4 thực hiện khảo sát đánh giá chất lượng của thuật tốn giải mã mới thơng qua các kết quả mơ phỏng trên kênh AWGN với các mã Hamming, cuối cùng là phần kết luận. CƠ SỞ LÝ LUẬN XÂY DỰNG THUẬT TOÁN GIẢI MÃ MỀM CẢI TIẾN CHO CÁC MÃ HAMMING 2.1 Phương pháp giải mã khối dựa mã đối ngẫu Như ta đã biết, tính chất của ma trận kiểm tra G và ma trận sinh H của mã khối tuyến tính thể hiện như sau: (1) G.HT Bên cạnh đó, tính chất đối ngẫu của mã khối tuyến tính được hiểu như sau: ma trận kiểm tra của mã gốc đóng vai trị là ma trận sinh của mã khối tuyến tính khác. Từ các tính chất nêu trên cho thấy có thể xây dựng các ma trận kiểm tra của một mã khối tuyến tính dựa trên các từ mã trong bộ mã đối ngẫu. Trên cơ sở này hình thành nên phương pháp giải mã khối sử dụng mã đối ngẫu trình bày trong [2] và Tạp chí Nghiên cứu KH&CN quân sự, Số 46, 12 - 2016 27 Kỹ thuật điều khiển & Điện tử [3]. Phương pháp giải mã này được mô tả như sau: khi truyền từ mã bất kỳ c (c1, c2 , , cn ) của mã tuyến tính C(n, k ) qua kênh, dưới tác động của nhiễu và tạp âm ta nhận được từ mã ˆc' (cˆ '1, cˆ '2 , , cˆ 'n ) , q trình giải mã ở phía thu với từ mã đầu vào mềm ˆc' , sử dụng các từ mã đối ngẫu của mã đối ngẫu C '(n, r ) ta tính ra các bit nhận c ( n ) với xác suất cao nhất (trong đó, n là chiều dài từ mã, k là chiều dài từ tin, r n k 2r k là số lượng các bít kiểm tra). Ký hiệu exp[2 / p ] là biểu diễn phức của nghiệm nguyên thủy p ; i nếu i và i với các trường hợp khác; là đơn vị ảo; Pr(x ) là xác suất của x và Pr(x | y ) là xác suất có điều kiện của x cho bởi y; c 't '' i là bít thứ i của từ mã thứ t '' trong mã đối ngẫu; t, t ' là số phần tử trong trường GF (p) và có giá trị là các số nguyên 0,1, , p Nếu s thuộc trường GF (p) ta có c s khi A (s ) đạt cực đại với: r p 1 p n p 1 A ( s ) st t '( c 't '' i t i ) Pr(cˆ 'i | t ') (2) t 0 t ''1 i 1 t ' Kết quả chứng minh trong [2] khẳng định đối với mã nhị phân ( p ), điều kiện quyết định cứng (ở lần lặp cuối cùng), bít c khi: 2r n i t ''1 i 1 i c 't '' i i 0 và c nếu (3) xảy ra theo chiều ngược lại, ở đây: i (3) Pr(cˆ 'i |1) ; là phép Pr(cˆ 'i | 0) cộng modulo 2. Để làm rõ tính chất trên ta xét mã Hamming (7,4) với mã nhận được ký hiệu là ˆc' (cˆ '1, cˆ '2 , , cˆ '7 ) , theo (3) điều kiện quyết định bit mã c1 là: ct' '' i 1i i (4) c1 t ''1 i 1 i Ta có ma trận kiểm tra H của mã Hamming (7, 4) cũng là ma trận sinh của mã đối ngẫu: 1 1 0 (a ) H = 0 1 1 (b) 0 1 1 (c) Như vậy, các từ mã của bộ mã đối ngẫu C ' (ở đây ký hiệu a, b, c là các từ mã đối ngẫu) là: 28 N T H Nhung, P X Nghĩa, …, “Giải mã mềm mã Hamming dựa mã đối ngẫu.” Nghiên cứu khoa học công nghệ c1 c c3 c c5 c c 0 0 0 0 0 0 0 1 1 1 0 1 0 0 (a) 0 1 1 1 0 1 0 (b) C' : 1 0 0 1 1 1 0 (a b) (5) 0 0 1 1 1 0 1 (c) 1 1 0 1 0 0 1 (a c) 0 1 0 0 1 1 1 (b c) 1 0 1 0 0 1 1 (a b c) Đặt i (1 i ) / (1 i ) điều kiện quyết định đối với bít c1 là: c1 1 3 5 1 3 6 5 6 13 5 7 2 7 1 2 5 6 7 3 6 7 0; (6) c1 khi (6) xảy ra theo chiều ngược lại. Như vậy, đến đây ta có thể nhận xét rằng: Đối với mã khối tuyến tính, mỗi bít mã trong các từ mã đối ngẫu đều chứa các thơng tin về các bít mã trong các từ mã gốc [2]. Bên cạnh đó, từ các từ mã đối ngẫu ta có thể thành lập các ma trận kiểm tra khác nhau. Những nhận định trên đây là cơ sở để xây dựng thuật tốn giải mã mới được trình bày ở nội dung tiếp theo của bài báo. 2.2 Thuật toán giải mã BPA 2.2.1 Quan hệ ma trận kiểm tra đồ hình Tanner 0 0 1 1 H = 0 1 0 1 1 1 1 c1 c2 c3 c4 c5 C c6 c7 1 (n =7) f1 f2 f3 (r =3) Hình Ma trận kiểm tra H và đồ thị Tanner tương ứng mã Hamming (7, 4) Mã khối tuyến tính nói chung, mã Hamming nói riêng được giải mã nhờ việc sử dụng ma trận kiểm tra H có kích thước r n Hiện nay, một trong những cách được coi là hiệu quả nhất biểu diễn mã khối chính là thơng qua đồ hình song biên Tạp chí Nghiên cứu KH&CN quân sự, Số 46, 12 - 2016 29 Kỹ thuật điều khiển & Điện tử Tanner [5], đồ hình này có quan hệ chặt chẽ với ma trận kiểm tra của bộ mã, điều này được minh chứng qua ví dụ thể hiện trên hình 1. Trên đồ hình này có hai hàng nút gồm các nút mã c c1 , c2 , cn và các nút kiểm tra f f1 , f , f r Nút kiểm tra f j nối với nút ci khi và chỉ khi H ( j , i ) ( H ( j , i ) là phần tử ở vị trí hàng j , cột i của ma trận kiểm tra H ). Bộ giải mã sử dụng thuật tốn giải mã lặp như thuật tốn lan truyền niềm tin BPA. Khi đó, thơng tin sẽ được truyền qua lại giữa các nút bít và các nút kiểm tra khi có kết nối trên đồ thị Tanner. Nội dung tiếp theo của bài báo đi sâu phân tích bản chất của thuật tốn giải mã này. 2.2.2 Thuật toán giải mã BPA cho mã Hamming Xét mã Hamming ( n, k ) , đầu vào bộ giải mã BPA là tỷ lệ ước lượng theo hàm log (Log Likelihood Ratio – LLR): ˆ) Pr(cˆ 'i 0|c' L ( qij ) L (cˆ 'i ) log (7) ˆ) Pr(cˆ 'i 1|c' ˆ ) là xác suất điều kiện Ở đây, cˆ ' là tập các symbol nhận từ kênh. Pr(cˆ 'i b | c' với b 0,1; Trước khi đi sâu vào phân tích các thuật tốn chúng ta cùng định nghĩa một số ký hiệu: ci : bit thứ i của từ mã n bit. R j : tập hợp các cột ở đó H (i, j ) với j là thứ tự hàng. Ci : tập hợp các hàng ở đó H ( j , i ) với i là thứ tự cột. R j ~ i : tập R j trừ cột thứ i Ci ~ j : tập Ci trừ hàng thứ j p ji b : Pr [nút kiểm tra f j thỏa mãn | cˆ 'i b & qij (b) R j ~ i ] qij b : Pr[ cˆ 'i b | p ji (b) Ci ~ j , ci ] Thuật tốn BPA thuật tố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 j 1, 2, , r và gửi bản tin L( p ji ) 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 i 1, 2, , n và gửi bản tin L (qij ) 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ị c c1 , c2 , , cn Nếu syndrome s thỏa mãn điều kiện: T (8) s c.H [0, 0, , 0] thì dừng lặp và đưa ra từ mã hợp lệ c Nếu điều kiện (8) khơng thỏa mãn thì q trình được thực hiện lại cho đến khi đạt số lần lặp cực đại max thì dừng và đưa ra từ mã tại lần lặp cuối. 30 N T H Nhung, P X Nghĩa, …, “Giải mã mềm mã Hamming dựa mã đối ngẫu.” Nghiên cứu khoa học cơng nghệ Thuật tốn BPA và các phiên bản cải tiến của thuật tốn này được ứng dụng cho mã mật độ kiểm tra thấp LDPC (là mã khối tuyến tính có ma trận H là một ma trận thưa với số lượng các phần tử "1" trên mỗi hàng và mỗi cột rất ít) mang lại chất lượng giải mã rất tốt. Với mục đích ứng dụng thuật tốn giải mã BPA cho các mã khối tuyến tính khác, trong đó có mã Hamming với ma trận kiểm tra H khơng đảm bảo tính thưa, khi đó tồn tại nhiều chu kỳ ngắn trong nó, điều này làm ảnh hưởng lớn tới chất lượng giải mã (các chu kỳ ngắn tạo ra những tập bẫy (trapping sets) là ngun nhân chính dẫn đến hiệu ứng sàn “error floor”), vì vậy, để ứng dụng thuật tốn BPA cho mã Hamming địi hỏi phải có những cải tiến nhất định mới đạt được mục đích đặt ra. Đây cũng là nội dung sẽ được trình bày trong nội dung tiếp theo của bài báo. ĐỀ XUẤT THUẬT TỐN GIẢI MÃ BPA CẢI TIẾN DỰA TRÊN MÃ ĐỐI NGẪU Ở mục này trình bày thuật tốn BPA cải tiến bằng việc sử dụng các ma trận kiểm tra tương đương, các ma trận này được xây dựng trên cơ sở sử dụng các từ mã đối ngẫu BPA – DCS (Belief Propagation Algorithm base on dual codes). Ở đây, thay vì sử dụng một ma trận kiểm tra với số lần lặp tối đa max sau đó mới sử dụng ma trận kiểm tra tương đương mới [6], thuật tốn cải tiến sẽ sử dụng tại mỗi vịng lặp một ma trận kiểm tra tương đương khác nhau để giải mã, bằng cách thực hiện như trên sẽ làm cho thơng tin ngoại lai ở vịng lặp trước đưa tới vịng lặp sau trong q trình giải mã ln được cải thiện, điều này đã khắc phục được vấn đề “vịng kín ngắn” đã nêu ở trên. 3.1 Xây dựng ma trận kiểm tra tương đương Một cách tổng quát, với mã (n, k ) sẽ tồn tại 2r từ mã đối ngẫu, tương ứng C 2rr ma trận kiểm tra tương đương H e để sử dụng cho q trình giải mã. Các ma trận kiểm tra tương đương H e được xây dựng dựa trên các từ mã đối ngẫu. Ví dụ với mã Hamming (7,4), các ma trận kiểm tra tương đương sẽ được xây dựng như sau: a ab H = b → H e = b c c a b c Với cách thực hiện như trên, ma trận kiểm tra tương đương He được hình thành từ các từ mã đối ngẫu khác so với ma trận H, bằng cách đó ta có thể xây dựng số lượng ma trận kiểm tra tương đương khá lớn (phụ thuộc vào số từ mã đối ngẫu 2r ) phục vụ cho mỗi vịng giải mã lặp. 3.2 Xây dựng thuật toán giải mã mềm dựa ma trận kiểm tra tương đương Khởi tạo: Tính LLR L(ci ) cho tất cả các nút bit i 1,2 , ,n và đặt: L ( qij ) L(cˆ 'i ) log (1) ˆ) Pr(cˆ 'i 0|c' ˆ) Pr(cˆ 'i 1|c' (9) Tạp chí Nghiên cứu KH&CN quân sự, Số 46, 12 - 2016 31 Kỹ thuật điều khiển & Điện tử tại vị trí ( j , i ) thỏa mãn H ji cho lần lặp thứ nhất. Giai đoạn 1: Bước 1: Đối với tất cả các nút kiểm tra f j ( j 1, 2, , m) , tính tốn L( γ ) ( p ji ) ứng với các vị trí ( j , i ) có H ji tại lần lặp thứ theo phương trình sau: L(γ ) (p ji ) sign L(γ ) (qi'j ) i'R ~ i j i'R j ~ i φ φ L (γ ) (qi'j ) , (10) ex 1 với φ(x) logtanh (x/ ) log x e 1 Sau đó gửi bản tin L( p ji ) từ nút kiểm tra tới các nút bit nối với nó. Bước 2: Tính tốn L(qij ) đối với tất cả các nút tin cˆ 'i (i 1, 2, , n) tại các vị trí ( j , i ) có H ji theo phương trình sau: L(qij ) L(cˆ 'i ) L(γ ) (p j'i ) j'Ci ~ j (11) Tiếp đó gửi bản tin L(qij ) từ các nút bit tới nút các kiểm tra nối với nó. Đầu ra bộ giải mã là giá trị LLR của các bit mã ci (i 1, 2, , n) tại lần lặp thứ nhất: Li(γ ) L(cˆ 'i ) L(γ ) (p ji ) jCi (12) Khi đó từ mã thăm dị c ( ) = (c1( ) , c2( ) , , cn( ) ) tại lần lặp thứ nhất được quyết định là: ( ) i 1,2, ,n c 0, sign(Li (γ ) ) (γ ) 1, sign(Li ) 1 (13) và kiểm tra điều kiện: c H T [0, 0, , 0], (14) nếu thỏa mãn thì đưa ra từ mã c , nếu khơng thỏa mãn (14) thì chuyển sang giai đoạn 2. Giai đoạn 2: Ở giai đoạn 1, nếu (14) khơng thỏa mãn, thực hiện thay thế các hàng của ma trận kiểm tra bằng cách lấy hàng đó cộng với hàng tiếp theo ta nhận được ma trận kiểm tra tương đương H e và thực hiện lại giai đoạn 1 với lần lặp sử dụng ma trận kiểm tra tương đương H e Nếu thấy (14) thỏa mãn thì dừng và đưa ra từ mã. Nếu khơng, thực hiện lại giai đoạn 2, xây dựng ma trận kiểm tra tương đương mới và tiếp tục giải mã ứng với H e mới đó, … Tại mỗi lần lặp ln kiểm tra điều kiện (14), nếu thỏa mãn thì đưa ra từ mã, nếu khơng tiếp tục thực hiện giải mã đến khi tìm được từ mã hợp lệ hoặc hết max lần lặp. 32 N T H Nhung, P X Nghĩa, …, “Giải mã mềm mã Hamming dựa mã đối ngẫu.” Nghiên cứu khoa học công nghệ KẾT QUẢ MÔ PHỎNG VÀ THẢO LUẬN 4.1 Sơ đồ hệ thống Để đánh giá chất lượng của thuật tốn giải mã mới được xây dựng ta sử dụng sơ đồ mơ phỏng thể hiện trên hình 2. Xét mơ hình hệ thống sử dụng mã Hamming mơ tả trên hình 2. Các bít tin u u1 , u2 , uk được mã hóa Hamming ( n, k ) với tỷ lệ R k / n (trong đó, n là độ dài từ mã, k là chiều dài thông tin) thành từ mã c c1 , c2 , cn , sau đó được điều chế và truyền qua kênh. Tại đầu thu, khi nhận được từ mã cˆ ' , tiến hành giải mã và đưa ra từ mã c Mã hóa u Hamming c Giải điều chế Kênh truyền Điều chế c(1,2, n ) cˆ ' c Giải mã Hamming cˆ '(1,2 n ) Hình Mơ hình hệ thống sử dụng mã Hamming. u (1, k ) 4.2 Kết mơ Xét các mã Hamming (7, 4), (15, 11), (31, 26), (63, 57) giả thiết điều chế BPSK lý tưởng và kênh truyền AWGN. Thực hiện mơ phỏng đánh giá chất lượng giải mã của thuật tốn giải mã mới BPA – DCS với các thuật tốn giải mã cứng, thuật tốn BPA, cho kết quả trên hình 3, hình 4, hình 5 và hình 6. BER Hamming (7,4) tren kenh Gauss BER Hamming (15,11) tren kenh Gauss 10 10 giai ma cung BPA BPA-DCS -1 10 giai ma cung BPA BPA-DCS -1 10 -2 10 -2 BER BER 10 -3 10 -3 10 -4 10 -4 10 -5 10 -5 10 -6 EbN0[dB] Hình So sánh chất lượng mã Hamming (7, 4) thuật toán 10 EbN0[dB] Hình So sánh chất lượng mã Hamming (15, 11) thuật tốn Từ kết quả mơ phỏng ta thấy thuật tốn giải mã Hamming dựa vào các ma trận kiểm tra tương đương mới ứng dụng cho các mã Hamming có độ dài từ mã n 7, tại tỷ lệ lỗi bít BER 105 cho phép nâng cao chất lượng khoảng 0.9 dB đến 1.05 dB so với thuật tốn giải mã cứng, 0.45 dB đến 0.5 dB so với thuật tốn BPA khi thực hiện cùng số vịng lặp. Độ phức tạp thuật tốn tăng khơng đáng kể so với thuật tốn BPA. Để đạt được kết quả này, dù cải tiến rồi nhưng thuật tốn BPADCS vẫn phải trả giá về mặt thời gian. Tuy nhiên, khi chiều dài từ mã tăng, thời Tạp chí Nghiên cứu KH&CN quân sự, Số 46, 12 - 2016 33 Kỹ thuật điều khiển & Điện tử gian giải mã của thuật toán BPA – DCS rút ngắn khoảng cách so với thuật tốn BPA. Điều này có thể giải thích như sau: BER Hamming (31,26) tren kenh Gauss giai ma cung BPA BPA-DCS -1 10 -2 -2 10 -3 10 -3 BER BER 10 -4 -4 10 10 -5 -5 10 -6 10 10 -6 10 -7 -7 giai ma cung BPA BPA-DCS -1 10 10 10 BER Hamming (63, 57) tren kenh Gauss 10 10 10 EbN0[dB] Hình So sánh chất lượng mã Hamming (31, 26) thuật toán EbN0[dB] Hình So sánh chất lượng mã Hamming (63, 57) thuật toán Bảng So sánh thời gian trung bình xử lý từ mã hai thuật toán giải mã BPA BPA - DCS với mã Hamming (7, 4), (15, 11), (31, 26), (63, 57) Bộ mã BPA BPA - DCS Hamming (7, 4) Hamming (15, 11) Hamming (31, 26) Hamming (63, 57) 0,4453 ms 0,8540 ms 2,8901 ms 15,4322 ms 1,1297 ms 2,0961 ms 6,8318 ms 33,101 ms Tỷ lệ thời gian thuật toán BPA –DCS so với BPA 253,69 % 245,445 % 236,386 % 214,493 % Tại mỗi vịng lặp thuật tốn BPA – DCS chỉ thêm phép tính cộng modulo giữa các hàng. Mặt khác, thuật tốn mới sử dụng nhiều ma trận kiểm tra tương đương nên thơng tin kiểm tra các bit tin tích lũy được nhiều hơn, thời gian hội tụ thơng tin kiểm tra theo điều kiện (14) nhanh hơn khi chiều dài từ mã tăng nên chất lượng giải mã tốt hơn, và thời gian giải mã với các mã càng dài càng rút ngắn về tỷ lệ thời gian so với BPA. Bảng 1 là kết quả so sánh thời gian giải mã trung bình cho một từ mã giữa thuật tốn giải mã BPA và thuật tốn giải mã BPA - DCS của các mã Hamming (7, 4), (15, 11), (31, 26), (63, 57) được thực hiện trên cùng một máy tính cũng cho kết quả phù hợp với phân tích. KẾT LUẬN Từ đặc điểm của thuật tốn giải mã mềm BPA và tính chất đối ngẫu của mã sửa sai, bài báo đã đưa ra thuật toán cải tiến mới dựa vào các ma trận kiểm tra tương đương nhằm cải thiện BER đối với các mã Hamming có chiều dài lớn hơn 7. Chất lượng thuật tốn giải mã mới tăng 0.9 dB đến 1.05 dB so với thuật tốn giải mã cứng, so với thuật tốn BPA cải thiện 0.45 dB đến 0.5 dB. Độ chênh lệch về thời gian giải mã so với BPA giảm dần khi chiều dài từ mã tăng trong khi độ phức tạp và mức độ tính tốn khơng tăng đáng kể. 34 N T H Nhung, P X Nghĩa, …, “Giải mã mềm mã Hamming dựa mã đối ngẫu.” Nghiên cứu khoa học công nghệ TÀI LIỆU THAM KHẢO [1]. Hamming,R.W.,” Error detecting and error correcting codes”, Bell System Tech. J. 29 (1950) 147–160. [2]. Carlos R .P . Hartmann, Luther D . Rudolph, " An Optimum Symbol-by Symbol decoding rule for linear codes", Electrical Engineering and Computer Science Technical Reports, Paper 8, September 1975. [3]. H, Greenberger, " An iterative algorithm for decoding block codes transmitted over a memoryless channel", DSN progress report 42-47, July and August 1978. [4]. M. P. C. Fossorier, M.Mihaljevic, and H. Imai, “Reduced complexity iterative decoding of low density parity check codes based on belief propagation”, IEEE Trans. Commun., vol. 47, no. 5, pp. 673–680, May 1999. [5]. R. Tanner. "A recursive approach to low complexity codes", IEEE Transactions on Information Theory, IT-27(5):533 547, September 1981. [6]. Nguyen Tung Hung, “A new decoding algorithm based on equivalent parity check matrix for LDPC codes”, REV Journall on Electronics and Communications, Vol.3, No. 1-2, Jannuary – June 2013, pp.73-76. ABSTRACT SOFT- DECISION DECODING OF HAMMING CODE BASED ON DUAL CODES In this article, the BPA which is improved based on the duality of linear block codes is proposed The new algorithm proposed soft decision decoding with equivalent parity check matrixs applied for Hamming codes, in which the equivalent parity check matrixs are developed using dual codes It is shown that the gain of the new algorithm is 0,45 dB to 0,5 dB better compared to the traditional BPA whereas the decoding time and complexity faces a negligible increase Keywords: Channel codes, Soft- decision decoding, Hamming code Nhận ngày 29 tháng năm 2016 Hoàn thiện ngày 03 tháng 11 năm 2016 Chấp nhận đăng ngày 14 tháng 12 năm 2016 Địa chỉ: 1 Đại học Kinh tế Kỹ thuật Công nghiệp; 2 Học viện Kỹ thuật quân sự; 3 Đại học Sư phạm Kỹ thuật Nam Định; 4 Trung tâm di động, Tổng Công ty mạng lưới Viettel. * Email: nhungnh13@gmail.com Tạp chí Nghiên cứu KH&CN quân sự, Số 46, 12 - 2016 35 ... Như vậy, đến đây ta có thể nhận xét rằng:? ?Đối? ?với? ?mã? ?khối tuyến tính, mỗi bít mã? ?trong? ?các? ?từ? ?mã? ?đối? ?ngẫu? ?đều chứa? ?các? ?thơng tin về? ?các? ?bít? ?mã? ?trong? ?các? ?từ? ?mã? ? gốc [2]. Bên cạnh đó, từ? ?các? ?từ? ?mã? ?đối? ?ngẫu? ?ta có thể thành lập? ?các? ?ma trận kiểm ... của? ?mã? ?Hamming? ?(7, 4) cũng là ma trận sinh của? ?mã? ? đối? ?ngẫu: 1 1 0 (a ) H = 0 1 1 (b) 0 1 1 (c) Như vậy,? ?các? ?từ? ?mã? ?của bộ? ?mã? ?đối? ?ngẫu? ? C ' (ở đây ký hiệu a, b, c là? ?các? ?từ? ?mã? ?... (cˆ '1, cˆ '2 , , cˆ 'n ) , q trình? ?giải? ?mã? ?ở phía thu với từ? ?mã? ?đầu vào? ?mềm? ? ˆc' , sử dụng? ?các? ?từ? ?mã? ?đối? ?ngẫu? ?của ? ?mã? ?đối? ?ngẫu? ? C '(n, r ) ta tính ra? ?các? ?bit nhận c ( n ) với xác suất cao nhất (trong đó,