中圖分類號:TN911.22 文獻標志碼:A 文章編號: 1000-5013(2025)04-0448-(
Improvement of Sliding Window Decoding Algorithm for Double Spatially Coupled LDPC Codes
LIAN Qiufang, SUN Xiaofang,CHEN Qiwang,LU Zijun,ZHOU Lin
(College of Information Science and Engineering,Huaqiao University,Xiamen 361O21,China)
Abstract:With regard to the decoding performance optimization issue of double spatially coupled low-density parity-check (LDPC) codes in a joint source-channel coding system,a supervised sliding-window decoding algorithm is proposed. First,supervisor bits are incorporated within the current decoding window.Then,the supervisor bits supervise the most reliable log-likelihood values and the minimum average error probabilities within the current window, they are placed into the corresponding positions in the memory, respectively. Next,the codewords within the window undergo the next round of iteration until the decoding termination conditions are met. Finally,the decoder estimates the decoding result based on the stored log-likelihood values. Simulation results show that under both additive Gaussian white noise and Rayleigh fading channels,the performance of the supervision sliding-window decoding algorithm is significantly improved in both the eror floor and waterfall regions.
Keywords:joint source-channel coding;double spatially coupled LDPC code; sliding window decoding algorithm;supervision
香農的分離定理一直是通信系統(tǒng)設計的準則,未來6G通信系統(tǒng)具備更高可靠性、超低時延、高吞吐量的特點。傳統(tǒng)的分離系統(tǒng)因其固有局限,難以滿足日益嚴苛的通信需求。因此,聯(lián)合信源信道編碼(JSCC)系統(tǒng)應時而生。Sayood等[將JSCC技術應用于圖像傳輸領域,JSCC 系統(tǒng)的信道譯碼器可以充分利用信源中殘留的冗余信息。Hagenauer[2]提出軟輸出維特比譯碼算法,該算法通過信源序列的后驗概率來控制信道譯碼器。2009 年,F(xiàn)resia 等[3提出信源和信道都是低密度奇偶校驗(LDPC)碼的JSCC 系統(tǒng)。若信源熵低于信道容量,碼字無限長的分離系統(tǒng)可以高可靠傳輸,但復雜度激增。相較之下,JSCC 系統(tǒng)在低復雜度環(huán)境下展現(xiàn)更優(yōu)性能。JSCC系統(tǒng)譯碼端利用信源壓縮編碼冗余,實現(xiàn)顯著性能提升[4]。1999年,F(xiàn)elstrom 等[5]率先引入卷積LDPC(CC-LDPC)碼的概念,CC-LDPC 碼的結構更加規(guī)則,易于硬件實現(xiàn)。LDPC碼經(jīng)耦合形成卷積結構的LDPC碼,此類碼稱空間耦合LDPC(SC-LD-PC)碼[6]。當 SC-LDPC碼的碼長足夠長時,置信傳播(BP)譯碼閾值可達到最大后驗譯碼閾值[7],但會導致較大的譯碼延遲。SC-LDPC 碼特殊的耦合結構促使譯碼算法可在固定窗口內執(zhí)行,此算法稱為滑窗譯碼(SWD)算法[8,SWD算法以犧牲部分譯碼性能來換取減小譯碼延遲。為提升 SWD算法的譯碼性能,許多學者提出了引人監(jiān)督[9]、窗口可變[10]等優(yōu)化思想。Ali等[11提出3種改善滑窗譯碼算法的方法,即有效的譯碼終止、邊信息的重利用和有用信息的放大方法。Golmohammadi等[12」提出雙 SC-LDPC(DSC-LDPC)碼的JSCC系統(tǒng),譯碼器能充分利用信源壓縮后的冗余信息進一步提高性能?;勺兇白g碼(SVWD)算法被證明在 DSC-LDPC 碼的 JSCC 系統(tǒng)中能有效改善譯碼性能[13]?;诖?,本文設計了一種改進的滑窗譯碼(iSWD)算法。
1基于DSC-LDPC碼的JSCC系統(tǒng)
1. 1 DSC-LPDC碼的構造
SC-LDPC碼的構造過程,如圖1所示。圖1中: L 為耦合長度; Ψt 為第 t 個位置上的LDPC碼。SC-LDPC碼的原模圖由 bv 個變量節(jié)點(圖1中圓形節(jié)點,VNs) 個校驗節(jié)點(圖1中方形節(jié)點,CNs)和連接兩種節(jié)點的邊組成。SC-LDPC 碼是由規(guī)則 LDPC 碼復制、邊擴展和耦合得到[1415]。
SC-LDPC碼的原模圖單元可用基矩陣 B=[33] 表示, 的元素表示連接邊的數(shù)量。通過邊擴展[15](圖1(b)),將第 t(0?t 劃分為 m+1 個子基矩陣 Bi=[1 1], i={0,1,…,m} ,并且滿足 B=B0+B1+…+Bm,m 稱為耦合寬度。
用矩陣表示為
將基矩陣擴展 M 次,即可得到校驗矩陣, M 被稱為擴展因子。DSC-LDPC碼的信源是(3,12)SC-LDPC 碼,信道是(3,6)SC-LDPC碼。為了讓系統(tǒng)正常工作,信源和信道需滿足尺寸匹配條件 bcsc=bvcc- bccc 和 Lsc+m=Lcc-m, Lsc 和 Lcc 分別是信源耦合長度和信道耦合長度。信道和信源的參數(shù)分別用上標cc 和 sc標識區(qū)分。DSC-LDPC碼的原模圖,如圖2所示。圖2中:陰影填充的節(jié)點為信源的CNs 連接到信道的VNs部分。
因為DSC-LDPC碼的參數(shù)滿足 bvcc-bccc-bcsc=0 ,所以基矩陣可用聯(lián)合基矩陣 BJ 表示,即
式(2)中: BL 是大小為 (Lsc+m)bcsc×Lccbvcc 的連接矩陣,表示信源校驗節(jié)點與信道變量節(jié)點的連接關系。1.2DSC-LPDC碼的編碼
SC-LDPC碼的校驗矩陣 H 轉置為
子矩陣 Hi(t),0?i?m 定義為
比特為“1”,概率為 P1lt;1/2 的二進制無記憶伯努利信源可以直接將接收到信息序列 s 用校驗矩陣Hsc 進行壓縮,編碼后得到序列 ,即 u=s(Hsc)T 。信道SC-LDPC 碼編碼采用校驗和編碼算法[16]。信道編碼器是一個系統(tǒng)編碼器,編碼后的碼字可以表示為
小, 0?icc , vi(0) 是信息位(圖2中陰影填充的VNs), vi(1) 是校驗位(圖2中無填充的VNs)。 vi(0),vi(1) 具體編碼為
vij=uij,1?j?(bvcc-bccc)M,
(bvcc-bccc)M+1?j?bvccM
為匹配信源碼特性而額外引入不參與信道編碼的VNs稱為刪余節(jié)點(圖2中虛線)。
1.3 DSC-LPDC碼的譯碼
DSC-LDPC碼編碼端是用 Hsc 和 Hcc 單獨編碼,譯碼端(SWD算法)同時對信源和信道進行聯(lián)合譯碼。DSC-LDPC碼的SWD算法,如圖3所示。圖3中: ?P 表示目標符號(綠色橫線區(qū)域)的位置。一個窗口內有bvWM 個VNs 和 bcWM 個CNs,W表示窗口大小。因為目標符號和上一個窗口有直連的邊,所以上一個窗口對數(shù)似然值直接傳遞到當前窗口。當目標符號譯碼完成,窗口向右移動,譯碼下一個目標符號,直到整幀碼字譯碼完成。
以加性高斯白噪聲信道(AWGN)為例,DSC-LDPC碼的SWD算法信息傳遞過程有如下4個步驟。1)初始化。信源端的初始化可用 Zvsc=log((1-p1)/p1) 計算,信源初始化只與信源統(tǒng)計特性有關。信道初始化可表示為 Zvcc=2y/σn2,y 為經(jīng)過信道后的觀測值, σn2 為信道噪聲的方差。
2)迭代。迭代僅發(fā)生在窗口內的節(jié)點,且包含水平步驟和垂直步驟。 Lcvsc,(k) 和 分別為信源和 信道中第 c 個CNs傳遞給第 υ 個 VNs的對數(shù)似然值; Lcvsccc,(k) 和
分別為信源中第 Ψc 個CNs傳遞給信道中第 v 個VNs的對數(shù)似然值和信道中第 v 個VNs傳遞給信源中第 c 個CNs的對數(shù)似然值;Lvcsc,(k) 和
分別為信源和信道中第 v 個VNs傳遞給第 c 個CNs的對數(shù)似然值。
用CNs傳遞給VNs的對數(shù)似然比公式(水平步驟)為
用VNs傳遞給CNs的對數(shù)似然比(垂直步驟)為
v=(2iM+1,2iM+2,…,2iM+M),
式 (9)~(12) 中: 。式(10)是計算與信源相連的信道VNs 的對數(shù)似然值,而式(11)是計算不與信源相連的信道VNs的對數(shù)似然值。
3)譯碼判決。迭代步驟完成后,先計算目標符號的對數(shù)似然值,即
隨后,根據(jù)目標符號的對數(shù)似然值估計譯碼結果,當 L(sv)?0 時,譯為0,否則,譯為1。
4)窗口滑動。若當前窗口滿足目標符號的錯誤概率小于閾值 ?β=10-6 )或迭代次數(shù)等于最大值,則表示譯碼完成,保存譯碼結果和與下一個窗口內的校驗節(jié)點相連邊(圖3藍色豎線區(qū)域)的信息,窗口向右滑動一個位置,重復步驟 1~3 ,直到整個碼字譯碼完成。否則,返回步驟2,迭代次數(shù) k+1 ,重新迭代譯碼。
2 改進的SWD算法
為改善JSCC系統(tǒng)的DSC-LDPC碼的譯碼性能,窗口內引人監(jiān)督,監(jiān)控譯碼過程中平均錯誤概率 可達到的最小值,并保存
和
為最小值時信源目標符號的對數(shù)似然值。
2.1平均錯誤概率計算
在 SWD算法中,譯碼結果都是根據(jù)譯碼終止時產生的對數(shù)似然值來估算碼字s。但研究表明,目標符號的平均錯誤概率 不隨迭代次數(shù)增加而單調減小。因此,當目標符號滿足譯碼停止條件時,平均錯誤概率
未必是這一幀碼字譯碼過程中的最小值,即譯碼結果不一定是最優(yōu)的。基于這一譯碼現(xiàn)象,設計一種改進的 SWD(iSWD)算法。iSWD算法在窗口內引人監(jiān)督,監(jiān)控窗口可達到的最小平均錯誤概率 Pmin 和對應的目標符號對數(shù)似然值。監(jiān)督機制可以優(yōu)化算法的譯碼性能,使其更加適用于各種噪聲和干擾環(huán)境。
由式(13)可以得到碼字 sv 的后驗似然估計值 L(sv) ,則分別計算 sv 為1和0的后驗概率 P1(sv) 和P0(sv) 。即
此次迭代的錯誤概率取 P1(sv) 和 P0(sv) 的最小值,即
Pe(sv)=min{P1(sv),P0(sv)}c
第 ?P 個窗口的信源目標符號的平均錯誤概率 為
在iSWD算法中,窗口內的碼字在進行BP譯碼時都會被監(jiān)督。每個窗口內信源目標符號的個數(shù)是 bvscM 。存儲器C的長度為 bvscM ,用來存儲平均錯誤概率 達到最小值時的目標符號似然估計值。存儲器C只是存儲信源目標符號的似然估計值,因此,其長度與窗口大小無關,從而節(jié)省存儲空間。當譯碼終止時,根據(jù)存儲器C中的內容進行譯碼。存儲器C里存的具體內容為
L(s(ρ+1)bvscM-1) 。
2.2 iSWD算法
iSWD算法重點在于監(jiān)測信源目標符號的平均錯誤概率 達到最小值時的似然估計值。首先,初始化 Pmin=1 ,存儲器C的內存清空。譯碼第 ?P 個窗口,接收窗口內的碼字,并進行BP譯碼后,算出信源目標符號的
。如果此次迭代的平均錯誤概率滿足
。最小平均錯誤概率將會被更新,即
。此次迭代得到的每個信源目標符號似然估計值也會被更新存儲在存儲器C中的對應位置。如果此次迭代的平均錯誤概率不滿足
,則 Pmin 和存儲器C中的內容都不進行更新,迭代次數(shù)加1,直接執(zhí)行下一輪迭代。
iSWD算法監(jiān)控的是信源目標符號的平均錯誤概率,不需要分別監(jiān)控信源和信道的平均錯誤概率,從而減小算法復雜度和所需存儲器的容量。DSC-LDPC碼中信源和信道直接有信息傳遞,進行聯(lián)合譯碼,所以iSWD算法監(jiān)督信源目標符號就可以提高系統(tǒng)整體性能。
iSWD算法
1:for p=0Lcc do
2: Pmin=1 ,存儲器C內存清空;
3: 開始迭代,并將迭代次數(shù) k 設為0;
4: while kmax do
5: 在窗口內執(zhí)行BP算法, k=k+1 :
6: if then
7: ,更新存儲器C;
8: end if
9: if then
10: 停止此次譯碼,并跳轉至步驟13;
11: end if
12: end while
13: 基于存儲器C中的似然估計值估計譯碼目標符號;
14:end for。
3 仿真性能分析
在iSWD算法的仿真實驗采用 碼率的信源碼和
的信道碼,基矩陣分別為
耦合寬度 m=2 。此外,耦合長度分別為 Lsc=20 和 Lcc=16 ,最大迭代次數(shù) Imax=30 。
每一個碼字需要仿2OOOO幀,仿真的碼字采用二進制相移鍵控(BPSK)調制方式。在實驗仿真中,為測試iSWD算法的性能,分別測試了AWGN信道和瑞利衰落信道中不同信噪比 (RSN )下的誤碼率(R) 。通過這兩種不同信道的測試,可以更全面地評估算法的性能和穩(wěn)定性,并確定其在不同環(huán)境下的應用潛力。因此,獲得的實驗結果可以為算法優(yōu)化和改進提供重要的參考依據(jù)。
AWGN信道下 W=6,W=10 的誤碼率,分別如圖4、5所示。由圖4、5可知:誤碼率性能最差的是擴展因子為80的SWD算法,而誤碼率性能最好的是擴展因子為16O的iSWD算法,即擴展因子越大,誤碼率性能越好,這是因為擴展因子的大小與碼長成正相關,擴展因子為80、120和160時,DSC-LDPC碼的信息碼長分別為5120、7680 和10 240;iSWD算法在AWGN信道下傳輸,不同參數(shù)條件下,均能改善譯碼性能,在窗口大小為6、擴展因子為120、誤碼率為 4×10-4 時,iSWD算法相較于SWD算法的譯碼增益約為 0.69dB ,iSWD算法的改進有限,在窗口大小為10,擴展因子為160時,iSWD算法的譯碼增益與SWD算法較為接近,這是因為窗口較大和DSC-LDPC碼的碼長較長時,SWD算法的錯誤概率在迭代過程中更易收斂到最小值,有更優(yōu)的譯碼性能,改進的空間更小。
為驗證iSWD算法在不同信道中的普適性,iSWD算法在瑞利衰落信道中也進行了仿真實驗。瑞利衰落信道下 M=80 M=160 的誤碼率,分別如圖6、7所示。
由圖6、7可知:當窗口大小為9、擴展因子為80、誤碼率為 1×10-4 時,iSWD算法相較于SWD算法,其譯碼性能有顯著的提升,譯碼增益高達 2.5dB ;而當窗口大小為6、擴展因子為80、誤碼率為 1× 10-3 時,iSWD算法的譯碼增益約為 0.5dB ,這意味著iSWD算法可以更有效地對噪聲和干擾進行抑制,提高數(shù)據(jù)傳輸?shù)目煽啃?在瑞利衰落信道中,iSWD 算法對不同參數(shù)的 DSC-LDPC 碼系統(tǒng)性能均有改善。
4結束語
針對目標符號錯誤概率不隨迭代次數(shù)而單調減小的問題,設計了一種適用于DSC-LDPC 碼的iSWD算法。該算法的主要思想是監(jiān)督窗口目標符號錯誤概率可達到的最小值,并保存對應目標符號的對數(shù)似然值。譯碼終止時,根據(jù)保存的對數(shù)似然值估算譯碼結果。改進的算法未增加額外的迭代運算,因此,不會提高譯碼復雜度。由仿真實驗可知,在AWGN信道和瑞利衰落信道下,iSWD 算法在瀑布區(qū)和平層區(qū)的性能均得到改善,有望應用到未來低延遲、高可靠的流媒體傳輸中。
參考文獻:
[1]SAYOOD K,BORKENHAGEN JC. Use of residual redundancy in the design of joint source/channel coders[J]. IEEE Transactions on Communications,1991,39(6) :838-846.DO1:10.1109/26.87173.
[2]HAGENAUER J. Source-controled channel decoding[J]. IEEE Transactions on Communications,1995,43(9): 2449-2457.DO1:10.1109/26.412719.
[3]FRESIA M,PEREZ-CRUZ F,POOR H V. Optimized concatenated LDPC codes for joint source-channel coding [C]/ IEEE International Symposium on Information Theory. Seoul: IEEE Press,2009:2131-2135.
[4]王琳,劉三亞,陳辰,等.工業(yè)互聯(lián)網(wǎng)低功耗數(shù)據(jù)鏈算法設計綜述:聯(lián)合信源信道編碼設計的必要性、現(xiàn)實與前景 [J].電子與信息學報,2020,42(1):249-262.DOI:10.11999/JEIT190762.
[5]FELSTROM A J,ZIGANGIROV K S.Time-varying periodic convolutional codes with low-density parity-check matrix[J].IEEE Transactions on Information Theory,1999,45(6):2181-2191.DOI:10.1109/18.782171.
[6]KUDEKAR S,RICHARDSON T J,URBANKE R L. Threshold saturation via spatial coupling: Why convolutional LDPC ensembles perform so wellover the BEC[J]. IEEE Transactions on Information Theory,2011,57(2):803- 834.DOI:10.1109/TIT.2010.2095072.
[7]LENTMAIER M,SRIDHARAN A,COSTELLO D,et al. Iterative decoding threshold analysis for LDPC convolutional codes[J].IEEE Transactions on Information Theory,2010,56(10):5274-5289.DOI:10.1109/TIT. 2010. 2059490.
[8]IYENGAR A R,PAPALEO M,SIEGEL P H,et al. Windowed decoding of protograph-based LDPC convolutional codes over erasure channels[J].IEEE Transactions on Information Theory,20l2,58(4):2303-2320.DOI:10.1109/ TIT.2011.2177439.
[9]MO Shiyuan,CHENLi. Improved sliding window decoding of spatially coupled low-density parity-check codes[C]// IEEE Information Theory Workshop.Taiwan:IEEE Press,2017:126-130.DOI:10.1109/ITW.2017.8277945.
[10]張婭妹,周林,陳辰,等.窗口可變的空間耦合 LDPC 碼滑窗譯碼算法[J].西安電子科技大學學報,2020,47(3): 128-134.DOI:10.11999/JEIT190762.
[11]ALI 1,KIM JH,KIM S H,et al. Improving windowed decoding of SC LDPC codes by effective decoding termination,message reuse, and amplification[J]. IEEE Access,2018,6:9336-9346. DOI: 10.1109/ACCESS. 2017. 2771375.
[12]GOLMOHAMMADI A,MITCHELL D G M. Concatenated spatiall coupled LDPC codes with sliding window decoding for joint source-channel coding[J].IEEE Transactions on Communication,2022,70(2):851-864.DOI:10. 1109/TCOMM. 2021. 3126750.
[13]LIAN Qiufang,CHEN Qiwang,ZHOU Lin,et al. Adaptive decoding algorithm with variable sliding window for double SC-LDPC coding system[J].IEEE Communications Letters,2023,27(2):404-408.DOI:10.1109/LCOMM. 2022.3222560.
[14]DIVSALAR D,DOLINAR S,JONES C R,et al. Capacity approaching protograph codes[J]. IEEE Journal on Selected Areas in Communications,2009,27(6):876-888. DOI:10.1109/JSAC.2009.090806.
[15]MITCHELL D G M,LENTMAIER M,COETELLO D J. Spatially coupled LDPC codes constructed fromprotographs[J].IEEE Transactions on Information Theory,2015,61(9):4866-4889.DOI:10.1109/TIT.2015.2453267.
[16]PUSANEA E,F(xiàn)ELTSTROM A J,SRIDHARAN A,et al. Implementation aspects of LDPC convolutional codes [J].IEEE Transactions on Communications,2008,56(7):1060-1069.DO1:10.1109/TCOMM. 2008.050519.
(責任編輯:陳志賢 英文審校:陳婧)