吳 熹,唐嘉麒,陽旭艷
(1.四川郵電職業(yè)技術(shù)學(xué)院,四川 成都 610067;2.廣東省電信規(guī)劃設(shè)計院有限公司昆明分院,云南 昆明 630299)
移動通信已經(jīng)深刻地改變了人們的生活,隨著生活品質(zhì)的提高,人們對未來移動通信的服務(wù)能力提出了更高的要求,面向未來的5G 技術(shù)已成為全球的研究熱點。隨著5G 標(biāo)準(zhǔn)化進程的逐步實施,第三代合作伙伴計劃(3rd Generation Partnership Project,3GPP)已經(jīng)完成了5G 新空口(New Radio,NR)標(biāo)準(zhǔn)Release 15 和Release 16 的制定。與4G 相比,5G 將支持更加多樣化的應(yīng)用場景:增強移動寬帶(enhance Mobile Broadband,eMBB)、海量機器類通信(massive Machine Type Communications,mMTC)和超高可靠低時延通信(Ultra Reliable and Low Latency Communications,URLLC)[1]。從這3 種應(yīng)用場景來看,5G 既有高速率業(yè)務(wù)需求,也有低速率小包業(yè)務(wù)和低時延高可靠業(yè)務(wù)的需求。為保證用戶體驗和系統(tǒng)容量等指標(biāo)要求,信道編碼技術(shù)面臨重大挑戰(zhàn)。
低密度奇偶校驗碼(Low Density Parity Code,LDPC)是一種逼近香農(nóng)限的信道編碼,已經(jīng)被802.11n[2]、802.16e[3]和DVB-S2[4]等多種標(biāo)準(zhǔn)采納。但是,對于5G 系統(tǒng)而言,這些標(biāo)準(zhǔn)中的LDPC 碼在可靠性、靈活性、吞吐量和復(fù)雜度等方面都需要進一步提升。為了滿足5G 系統(tǒng)的需求,NR LDPC碼在基矩陣的結(jié)構(gòu)上進行了極其嚴(yán)謹?shù)脑O(shè)計。目前,在5G 標(biāo)準(zhǔn)TS 38.212(以下簡稱標(biāo)準(zhǔn))中已經(jīng)制定了NR LDPC 碼的編碼規(guī)則[5],并應(yīng)用于eMBB 場景的數(shù)據(jù)信道。
面向多樣化的業(yè)務(wù),NR LDPC 碼采用雙基矩陣來適應(yīng)更廣泛的碼長和碼率變化。標(biāo)準(zhǔn)中給出了基矩陣的選擇原則和速率匹配方法。但是,缺少具體的編碼算法。此外,NR LDPC 碼因碼長的不同和比特位置的差異涉及了多種速率匹配方式,在解速率匹配中需要根據(jù)比特位置進行差異化處理。
本文針對以上問題,首先,分析了標(biāo)準(zhǔn)中NR LDPC 碼的基矩陣結(jié)構(gòu)特征及設(shè)計目的,利用基矩陣的雙對角和單位陣特點給出了線性復(fù)雜度的編碼算法;其次,分析了速率匹配方法,指出了特殊位置上的比特處理方法,在此基礎(chǔ)上給出了解速率匹配算法;最后,通過定量仿真,在單用戶和稀疏碼多址接入(Spares Code Multiple Access,SCMA)系統(tǒng)中評估了NR LDPC 碼的性能,并通過與802.16e LDPC 碼和LTE Turbo 碼的對比,說明了NR LDPC碼的性能優(yōu)勢,證明了所提編碼和解速率匹配算法的有效性。
NR LDPC 碼采用了準(zhǔn)循環(huán)的結(jié)構(gòu),可以大幅降低編譯碼器對硬件資源的消耗。編碼流程主要經(jīng)過了基矩陣選擇、編碼和速率匹配3 個環(huán)節(jié),本節(jié)將逐一進行介紹。
在保證高可靠性的前提下,為了滿足碼字的靈活性和低復(fù)雜度要求,標(biāo)準(zhǔn)采用了兩個基矩陣(Base Graph,BG):BG1 和BG2?;仃嚨幕窘Y(jié)構(gòu)如圖1 所示。
BG1 和BG2 有相同的結(jié)構(gòu),大小為m×n,基矩陣中的每個元素對應(yīng)一個Z×Z的小矩陣(Z是擴展因子)。每個小矩陣都是零矩陣(元素為0)或者置換矩陣(單位陣循環(huán)右移)。左上角是一個大小為4×(k+4)的“核矩陣”,對應(yīng)了k×Z個信息比特和4Z個校驗比特。核矩陣的校驗位部分具有雙對角結(jié)構(gòu),目的是降低編碼復(fù)雜度。左下角是一個具有“準(zhǔn)行正交”特性的擴展矩陣,可以降低譯碼復(fù)雜度。右下角是一個大小為(m-4)×(m-4)的單位陣,目的是便于實現(xiàn)任意碼率的速率匹配。特別的是,NR LDPC 碼是一種內(nèi)置系統(tǒng)位鑿孔的設(shè)計,前2Z個信息比特并不用于傳輸,因此基矩陣的前兩列具有相當(dāng)大的列重,可以保證正確譯碼。這種設(shè)計可以有效降低LDPC 碼的閾值,從而提高碼字在瀑布區(qū)的性能[6]。另外,在用“重復(fù)”方式構(gòu)造低碼率碼字時也不需要考慮前2Z個信息比特,不但不會有性能損失,甚至?xí)砦⑿〉男阅茉鲆鎇7]。因此,NR LDPC 碼的母碼長度為M=(n-2)Z,碼率為R0=k/(n-2)。兩個基矩陣的具體參數(shù)及應(yīng)用條件如表1 所示。其中,K表示待編碼的信息比特數(shù),R表示傳輸碼率。可以看出,BG1 對應(yīng)的是長碼長和高碼率,BG2 對應(yīng)的是短碼長和低碼率,母碼的碼率分別是1/3 和1/5。這種雙基矩陣的方案,既降低了長碼的譯碼復(fù)雜度,又提高了短碼的可靠性。
表1 基矩陣參數(shù)及適用范圍
標(biāo)準(zhǔn)中給定了51 個可用擴展因子及16 個偏移系數(shù)矩陣V。擴展因子的值滿足關(guān)系Z=a×2j,其中a∈{2,3,5,7,9,11,13,15},j∈{0,1,2,3,4,5,6,7}。Z值最小為2,最大為384,根據(jù)a值分為8 組。每個基矩陣,具有相同a值的Z對應(yīng)同一個V。因此,NR LDPC 碼可實現(xiàn)的母碼最小長度為100 bits,最大長度為25 344 bits。
NR LDPC 碼在編碼前,先根據(jù)表1 所示的適用范圍選擇基矩陣。然后,在可用擴展因子中選擇滿足Z≥b的最小值作為校驗矩陣的擴展因子。其中,Kb是基矩陣信息位列數(shù),取值如表2 所示??梢钥闯?,參與編碼的實際信息比特數(shù)為kbmax=kZ,因此在K<kbmax時需要進行比特填充(補0)。最后,根據(jù)計算出的Z值選擇對應(yīng)的偏移系數(shù)矩陣V,構(gòu)造偏移量矩陣P,具體規(guī)則為:
表2 Kb 取值
式中:i和j分別為行和列的索引號。把P中所有“-1”替換為零矩陣,所有非負元素替換為置換矩陣即可得到對應(yīng)的校驗矩陣H。
NR LDPC 碼的基矩陣包含雙對角結(jié)構(gòu)和大量度為1 的列(單位陣),本節(jié)根據(jù)此特點給出了線性復(fù)雜度的編碼算法用于NR LDPC 的母碼編碼,校驗矩陣為H。
算法1:NR LDPC 母碼編碼算法
輸入:信息比特序列為c=[c0,c1,…,cK-1]。
輸出:母碼序列d。
第一步,對c補0,產(chǎn)生實際編碼的信息序列。其中Ci是長度為Z的向量。
第二步,利用雙對角結(jié)構(gòu)的特點計算前Z個校驗比特構(gòu)成的向量q0,q0的長度為Z:
式 中:Hj,i為校驗矩陣H的第jZ+1~(j+1)Z行,第iZ+1~(i+1)Z列的所有元素構(gòu)成的子矩陣。值得注意的是,根據(jù)標(biāo)準(zhǔn)中給出的基矩陣,當(dāng)為BG1 時r=1,當(dāng)為BG2 時r=2。
第三步,計算校驗比特向量q1~q3:
第四步,計算剩余校驗比特向量q4~qm-1:
第五步,信息位鑿孔(前2Z個比特)并級聯(lián)校驗比特,得到母碼d=[C2,C3,…,Ck-1,q0,…,qm-1]。
標(biāo)準(zhǔn)給出了4 種冗余版本(Redundancy Version,RV)0~3 的速率匹配方案,可以獲得碼長為N的碼字w。如圖2 所示,把d送入一個環(huán)形緩沖器,每個版本i∈{0,1,2,3}對應(yīng)一個起始點ki。從ki開始,依次連續(xù)保留N個比特即可構(gòu)成碼字w。顯然,這是一種逐比特鑿孔的速率匹配方式。值得注意的是,編碼時補位的0 對譯碼器而言是已知的,需要去掉,這種處理方式被稱為“縮短”。解速率匹配時在對應(yīng)位置上需要補極大值。標(biāo)準(zhǔn)給定可用最高碼率為948/1 024。表3 給出了BG1 和BG2 對應(yīng)的起點ki,可以看出,RV0 是通常意義上的LDPC碼,RV1~3 是用于混合自動重傳(Hybrid Automatic Repeat reQuest,HARQ)的冗余信息。各個冗余版本在一定程度上也具有獨立解碼的能力。TS 38.214標(biāo)準(zhǔn)規(guī)定了各冗余版本的使用規(guī)則[8]。
圖2 NR LDPC 碼環(huán)形緩沖器
表3 速率匹配起點值
在接收端,要對解調(diào)器輸出的對數(shù)似然比序列進行解速率匹配才能輸入譯碼器。標(biāo)準(zhǔn)中的速率匹配方案包含了重復(fù)、鑿孔和縮短3 種情況,算法2給出對應(yīng)的解速率匹配算法。其中,tm和t分別表示解速率匹配后和速率匹配前的母碼序列每個元素的索引號。
標(biāo)準(zhǔn)給出了上述編碼流程,但在具體實現(xiàn)中對于高碼率和填充比特數(shù)較多時存在大量無用計算,降低了編譯碼的效率。因此,可以在編碼前對基矩陣進行切割(實際是切割偏移量矩陣P),達到提高效率的目的[9]。假設(shè)切割后得到的新偏移量矩陣為P′,基本步驟如下文所述。
第一步:設(shè)K′b表示參與編碼的Kb實際值,即有。目的是盡量減少填充比特數(shù)。
第二步:計算P′的行數(shù)Rr。目的是刪除校驗矩陣中無用的行和列,降低編譯碼的復(fù)雜度。
校驗比特的數(shù)目為(N-K)+2Z,因此Rr的計算方式為:
需要注意的是,原基矩陣具有的雙對角結(jié)構(gòu)不能被破壞,并且不能超過原有的行數(shù)m,所以需要用式(3)進行修正。
第三步:矩陣切割。
在完成矩陣切割后,先由P′得到校驗矩陣H,再由算法1 進行編碼,輸出母碼長度為M=(+Rr-2)·Z。注意,上述方法僅對RV0 有效,可以依照1.3節(jié)完成速率匹配,解速率匹配算法中kbmax=·Z。但是,RV1~3 含有的信息比特數(shù)并不唯一,并且隨碼率和速率匹配起點值變化,所以并不適用矩陣切割的方法。
5G 商用以來,5G 技術(shù)與垂直行業(yè)深度融合。面向物聯(lián)網(wǎng)應(yīng)用的mMTC 場景對系統(tǒng)的接入能力提出了更高的要求。已經(jīng)證明,非正交多址接入可以有效地提升系統(tǒng)容量和頻譜利用率,從而實現(xiàn)接入能力的顯著提升。目前,非正交多址接入技術(shù)主要針對優(yōu)化系統(tǒng)自身的連通性和吞吐量進行研究[10-11]。實際上,高效的信道編碼有助于系統(tǒng)實現(xiàn)其預(yù)期的性能目標(biāo)。本節(jié)以SCMA 技術(shù)為例,給出了基于NR LDPC 碼的上行SCMA 方案(LDPC-SCMA),系統(tǒng)框圖如圖3 所示。文獻[12]和文獻[13]詳細闡述了SCMA 技術(shù)原理和碼本設(shè)計原則,對應(yīng)的多用戶檢測算法——消息傳遞算法(Message Passing Algorithm,MPA)見文獻[14]和文獻[15],本文僅討論NR LDPC 碼對SCMA 系統(tǒng)的影響。
圖3 基于NR LDPC 碼的SCMA 方案
圖3 所示系統(tǒng)中有v個用戶復(fù)用了m(m<v)個正交資源,過載因子(System Overloading Factor,SOF)為α=v/m。在發(fā)送端,用戶信息u1~uv先完成NR LDPC 編碼,經(jīng)過SCMA 碼本映射后送入NOMA信道。在接收端,把接收信號y送入MPA 檢測器,結(jié)合譯碼器反饋回來的軟信息(初始化為0)進行多用戶檢測。MPA 檢測器輸出的v個對數(shù)似然比序列LLR1~LLRv送入LDPC 譯碼器,譯碼產(chǎn)生的軟信息反饋到MPA 作為下一輪迭代檢測的先驗信息。經(jīng)過I次外迭代后可得到每個用戶的信息估計值。
本節(jié)首先在單用戶系統(tǒng)下對NR LDPC 碼進行性能評估;其次,基于SCMA 系統(tǒng)對多用戶條件下的NR LDPC 碼的平均誤塊率(Block-Error Rate,BLER)性能進行分析。所有NR LDPC 碼的仿真分析基于RV0 完成。
圖4 給 出 了NR LDPC 碼 和802.16e LDPC 碼的BLER 仿真曲線,調(diào)制方式為正交相移鍵控(Quadrature Phase Shift Keying,QPSK),譯碼算法為對數(shù)域的置信傳播算法(Log-BP),內(nèi)迭代50 次。可以看出,NR LDPC 碼的性能優(yōu)于802.16e LDPC 碼,當(dāng)BLER=10-3時相對增益如表4 所示。
圖4 NR LDPC 碼與802.16e LDPC 碼誤塊率對比
表4 NR LDPC 對比802.16e LDPC 的性能增益
圖5 給出了不同調(diào)制方式和碼率的NR LDPC 碼和LTE Turbo 碼的BLER 性能,信息比特數(shù)K=1 128。LTE Turbo 碼采用Max-Log-MAP 算法,內(nèi)迭代8 次。顯然,在各種碼率和QPSK、16 進制正交幅度調(diào)制(Quadrature Amplitude Modulation,QAM)、64QAM 調(diào)制方式下,NR LDPC 碼都優(yōu)于LTE Turbo碼的性能,BLER=10-3處的相對增益如表5 所示。
表5 NR LDPC 碼對比LTE Turbo 碼的性能增益
圖5 NR LDPC 碼與LTE Turbo 碼誤塊率對比
本節(jié)考慮一個6 用戶的SCMA 系統(tǒng),映射矩陣F為:
此外,過載因子為150%,采用文獻[7]給出的用戶碼本。每個用戶的信息比特數(shù)和碼率分別是K=216 和R=1/2。天線配置為1 發(fā)2 收。接收端MPA 檢測內(nèi)迭代4 次,系統(tǒng)外迭代最大次數(shù)為Imax=4 次。信道編碼分別采用NR LDPC 碼和LTE Turbo 碼,對應(yīng)的譯碼算法分別采用50 次和6 次內(nèi)迭代。圖6 給出了瑞利信道下不同外迭代次數(shù)I的BLER 性能曲線。
圖6 基于SCMA 的NR LDPC 碼和LTE Turbo 碼性能對比
由圖6 可以看出,在沒有軟信息反饋的時候(I=1),無論采用LDPC 碼還是Turbo 碼,SCMA系統(tǒng)的性能都很差。隨著迭代次數(shù)I的增加,系統(tǒng)性能獲得顯著改善,并且LDPC-SCMA 系統(tǒng)的性能優(yōu)于Turbo-SCMA 系統(tǒng)。在I=4 時,LDPC-SCMA系統(tǒng)相對于Turbo-SCMA 系統(tǒng)在BLER=10-2處可以獲得0.49 dB 的增益??梢?,相比于LTE Turbo 碼,NR LDPC 碼更適用于SCMA 系統(tǒng)。
本文研究了NR LDPC 碼基矩陣的結(jié)構(gòu),給出了線性復(fù)雜度的編碼和解速率匹配算法?;谠撍惴?,把NR LDPC 碼與SCMA 技術(shù)相結(jié)合,用于分析信道編碼對非正交多址系統(tǒng)的影響。在單用戶系統(tǒng)中對NR LDPC 碼進行了性能評估,結(jié)果表明,NR LDPC 碼的性能優(yōu)于802.16e LDPC 碼,且具有更靈活的碼長和碼率配置。與LTE Turbo 碼相比,在任意碼率和調(diào)制方式下,NR LDPC 碼都具有性能優(yōu)勢。此外,在SCMA 系統(tǒng)中,NR LDPC 碼也能取得優(yōu)于LTE Turbo 碼的性能。由此證明,所提算法是有效可行的。在未來研究工作中,LDPC 碼與非正交多址、高階調(diào)制和超奈奎斯特(Faster Than Nyquist,F(xiàn)TN)傳輸?shù)燃夹g(shù)的聯(lián)合優(yōu)化依然是開放性問題,需要進一步深入探索。