本發(fā)明屬于通信技術(shù)領(lǐng)域,具體涉及一種計算polar碼scl+crc(successivecancellationlist+cyclicredundancycheck)譯碼的list預(yù)測值的方法。
背景技術(shù):
2009年arikan提出了polar碼信道編碼理論,并且第一次證明了polar碼能夠在理論上達(dá)到信道容量的糾錯編碼方案,具有較低的編譯碼復(fù)雜度,靈活簡便,極其容易操作。2016年11月14日至18日期間,在美國reno召開的3gppran1#87會議上,polar碼信道編碼方案被3gpp采納為5g-embb場景下控制信道標(biāo)準(zhǔn)方案。
本領(lǐng)域內(nèi)公知,polar碼的scl+crc譯碼是在list大小l設(shè)定后進(jìn)行的;l的大小決定譯碼過程中路徑選取的多少。當(dāng)scl+crc譯碼結(jié)束后,依據(jù)最大似然概率準(zhǔn)則,從l個譯碼碼字里選取正確的譯碼碼字;參考文獻(xiàn)[1]:“在2011年5月份的國際信息論大會上,泰勒和瓦雷提出polar碼的路徑擴(kuò)展和修剪譯碼算法”記載,scl+crc譯碼過程如下:如圖1所示,首先設(shè)定list大小為4,從第一個信息比特開始,采用sc譯碼算法依次譯碼得到0或1;分別記錄0或1的概率;假設(shè)0和1都對,再次分別進(jìn)行sc譯碼,分別算出0和1比特往下的兩個比特,并記錄概率;繼續(xù)往下進(jìn)行譯碼,持續(xù)到最后一個信息比特,等到分支達(dá)到一定數(shù)量時候,比如8個分支,選取4條概率最大的備選路徑節(jié)點(diǎn)作為分支,最終譯碼結(jié)束4條路徑為4個備選碼字,保留下來的每個分支成為一個list。
當(dāng)譯碼結(jié)束后,采用crc校驗法選取和原始信息比特完全一致的譯碼碼字,當(dāng)不存在通過crc校驗的路徑,采用最大似然準(zhǔn)則選取譯碼碼字。
在scl+crc譯碼過程中,如果list的大小提前預(yù)知,那么指派譯碼器的能力和接收到的碼字才能匹配。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明提出了一種計算polar碼scl+crc譯碼的list預(yù)測值的方法,提高了list值的估計精度,同時降低polar碼scl+crc的譯碼復(fù)雜度和縮短譯碼時延。
具體步驟如下:
步驟一、針對某個待編碼polar碼碼字,將信息集比特和凍結(jié)集比特組成未編碼碼字向量為u;
信息集比特是指在信道集合a的信源比特及crc校驗比特;凍結(jié)集比特是指在信道集合ac的全0比特;
u={u1,u2,...,ui,...,un};n為該碼字的碼長,也就是碼字中的比特數(shù)量;n為自然數(shù);
步驟二、將當(dāng)前向量u輸入polar碼編碼器,輸出比特向量x;
x={x1,x2,...xi,...xn};xi是polar碼編碼器輸出的第i個比特,{i|0<i≤n};
步驟三、將編碼器輸出的向量x中的每個比特,分別經(jīng)過信道模型傳輸,得到sc譯碼器接收的比特向量y;y={y1,y2,...yi,...yn};
信道模型為:yi=hixi+ni;
ni是第i個比特的高斯白噪聲,yi是sc譯碼器接收的第i個比特,系數(shù)hi取值不同,表示不同的信道模型,包括高斯信道模型或瑞利信道模型;
步驟四、將向量y輸入sc譯碼器,得到譯碼判決比特向量
步驟五、將向量
譯碼成功后,譯碼判決
步驟六、在sc譯碼器輸出端,收集集合ac中的錯誤比特,計算錯誤比特對應(yīng)的llr值并求和;
錯誤比特是指sc譯碼器輸出的譯碼判決比特
針對第i個錯誤比特的llr值為
其中
然后,把集合ac中,所有的sc譯碼錯誤比特對應(yīng)的llr值求和為
步驟七、利用錯誤比特的llr和值,計算list的預(yù)測值
list的預(yù)測值
l∞為理想最大值,λ為l∞的補(bǔ)償常數(shù),α為list映射判決門限;δ2是大量碼字統(tǒng)計樣本
步驟八、計算list預(yù)測值的上界,并判斷l(xiāng)ist預(yù)測值是否大于上界,如果是,list預(yù)測值需要收縮,進(jìn)入步驟十,否則,進(jìn)入步驟九;
list預(yù)測值的上界為:
步驟九、對list的預(yù)測值
將list的預(yù)測值
步驟十、對錯誤比特的llr和值
迭代公式如:
其中κ為迭代次數(shù)。
當(dāng)list預(yù)測值大于上界時,將當(dāng)前錯誤比特的llr和值減去
當(dāng)list預(yù)測值指派給scl譯碼器譯碼結(jié)束后,所有的備選譯碼碼字沒有通過crc校驗,則需要擴(kuò)大list初步預(yù)測值,將當(dāng)前錯誤比特的llr和值加上
步驟十一、利用
將list的預(yù)測值
步驟十二、按設(shè)定的迭代次數(shù)內(nèi)list預(yù)測后,譯碼后的備選碼字仍沒有通過crc校驗的碼字,那么list預(yù)測值失?。蛔g碼結(jié)果按照最大似然比概率準(zhǔn)則輸出最終的譯碼碼字。
本發(fā)明的優(yōu)點(diǎn)和效果在于:
1)、本發(fā)明一種計算polar碼scl+crc譯碼的list預(yù)測值的方法,用在list指派sc-list+crc譯碼算法里,可以大幅度的減少譯碼復(fù)雜度。
2)、本發(fā)明一種計算polar碼scl+crc譯碼的list預(yù)測值的方法,可以免去遍歷性逐一試出,從而降低polar碼的scl+crc的譯碼復(fù)雜度。
3)、本發(fā)明一種計算polar碼scl+crc譯碼的list預(yù)測值的方法,當(dāng)接收到碼字后,動態(tài)指派list賦值給scl+crc譯碼器,使譯碼器的糾錯能力充分匹配接收到的碼字。
附圖說明
圖1是本發(fā)明采用的文獻(xiàn)中的scl譯碼過程形成list的結(jié)構(gòu)圖。
圖2是本發(fā)明利用list預(yù)測值指派scl+crc譯碼算法原理圖;
圖3是本發(fā)明一種計算polar碼scl+crc譯碼的list預(yù)測值的原理圖;
圖4是本發(fā)明一種計算polar碼scl+crc譯碼的list預(yù)測值的方法流程圖。
具體實(shí)施例
下面結(jié)合附圖對本發(fā)明的具體實(shí)施方法進(jìn)行詳細(xì)說明。
本發(fā)明是一種計算list的預(yù)測值指派polar碼scl+crc譯碼器的方法,通過polar碼的凍結(jié)集信息在sc譯碼器端口的復(fù)用技術(shù)實(shí)現(xiàn);采用polar碼的凍結(jié)集在sc譯碼器輸出端的對數(shù)似然比llr的和值來對list大小作預(yù)測。如圖2所示,采用polar碼編碼器級聯(lián)crc校驗,對某個碼字,首先采用sc譯碼,將輸出的譯碼進(jìn)行crc校驗;如果校驗通過,check=0,選擇譯碼碼字進(jìn)行輸出,不需要做list預(yù)測;否則,check≠0,需要做list預(yù)測,依據(jù)凍結(jié)比特對應(yīng)的llr值,預(yù)測scl+crc譯碼器的不同list預(yù)測值,依據(jù)list預(yù)測值指派對應(yīng)的scl+crc譯碼器。
如圖3和圖4所示,具體步驟如下:
步驟一、針對某個待編碼polar碼碼字,將信息集比特和凍結(jié)集比特組成未編碼碼字向量為u;
其中信源比特及crc校驗比特對應(yīng)的信道集合a叫信息集和全0比特對應(yīng)的信道集合ac叫凍結(jié)集,這兩個集合里的比特分別叫信息比特和凍結(jié)比特;
u={u1,u2,...,ui,...,un};n為該碼字的碼長,也就是碼字中的比特數(shù)量;n為自然數(shù);
步驟二、將當(dāng)前向量u輸入polar碼編碼器,輸出比特向量x;
x={x1,x2,...xi,...xn};xi是編碼器輸出的第i個比特,{i|0<i≤n};
步驟三、將編碼器輸出的向量x中的每個比特,分別經(jīng)過信道模型傳輸,得到sc譯碼器接收的比特向量y;
y={y1,y2,...yi,...yn};
信道模型為:yi=hixi+ni;
ni是第i個比特的高斯白噪聲,xi是polar碼編碼器輸出的第i個比特,yi是sc譯碼器接收的第i個比特,系數(shù)hi取值不同,表示不同的信道模型,包括高斯信道模型或瑞利信道模型;當(dāng)滿足
高斯信道模型采用已有的密度進(jìn)化或高斯近似方法求出集合a和集合ac;瑞利信道模型采用仿真的方法預(yù)先確定集合a和集合ac。
步驟四、將向量y輸入sc譯碼器,得到譯碼判決比特向量
sc譯碼采用已有的最小和遞推法完成,遞推公式如下:
最終得到的譯碼判決為
步驟五、將向量
步驟六、在sc譯碼器輸出端,收集集合ac中的錯誤比特,計算錯誤比特對應(yīng)的llr值并求和;
在polar碼譯碼里,接收到一個碼字,以往的sc譯碼算法對凍結(jié)比特不做譯碼和判決,采用丟棄判決的策略;本發(fā)明重拾polar碼的sc譯碼過程中對凍結(jié)比特譯碼判決,并且對照原始凍結(jié)比特,把譯碼錯誤的凍結(jié)比特對應(yīng)的llr值挑選出來并求和;因此對sc譯碼過程中判決錯誤的凍結(jié)比特的llr求和是本發(fā)明的一個特征。
錯誤比特是指sc譯碼器輸出的譯碼判決比特
針對第i個錯誤比特的llr值為
其中
然后,將凍結(jié)比特對應(yīng)的子集合ac中,所有的錯誤比特對應(yīng)的llr值求和,為
步驟七、利用錯誤比特的llr和值,計算list的預(yù)測值
利用
l∞為理想最大值lmax,λ為l∞的補(bǔ)償常數(shù),α為list映射判決門限;δ2是大量碼字統(tǒng)計樣本
根據(jù)polar碼的極化理論,凍結(jié)比特在譯碼過程錯誤情概率高于信息比特。所以做出如下證明,首先證明凍結(jié)比特的llr和值在sc譯碼判決中存在的關(guān)系。
于是根據(jù)公式(b)得到碼字的譯碼結(jié)果的正確性與公式(a)的和值相關(guān),因此,凍結(jié)比特的llr和值在碼字判決里得到了體現(xiàn),再由公式(a)的和值做變量,做譯碼可靠性度量(判決概率計算)如下:
由于公式(c)表明sc譯碼結(jié)果可靠程度;利用(c)給出的可靠程度做scl+crc譯碼器list大小的預(yù)測,得到指派公式(d),那么當(dāng)sc譯碼錯誤的時候,利用(d)的正確程度做list的匹配。
這樣在最小和sc譯碼算法里能夠通過經(jīng)驗映射得到list預(yù)測值
步驟八、計算list預(yù)測值的上界,并判斷l(xiāng)ist預(yù)測值是否大于上界,如果是,list需要收縮,進(jìn)入步驟十,否則,進(jìn)入步驟九;
list預(yù)測值的上界為:
因此,sc譯碼器譯碼失敗后,計算的動態(tài)上界作為list預(yù)測值的最大值;經(jīng)過概率推算list最大估值也和
證明如下:首先依據(jù)sc譯碼報錯后,啟用scl譯碼器前,list的估計值
那么下式成立,
如果:
由于:
其中,
步驟九、對list的預(yù)測值
本發(fā)明的初步預(yù)測的映射
步驟十、對錯誤比特的llr和值
迭代公式如:
其中κ為迭代次數(shù)。
當(dāng)list預(yù)測值大于上界時,將當(dāng)前錯誤比特的llr和值減去
scl+crc里的list預(yù)測存在偏大的情況;如果初步預(yù)測list值超過規(guī)定的上界
如果設(shè)定門限τ=1,2,3,那么可以得到不同的概率門限;按照如下迭代方法
其中κ為迭代次數(shù)。
如果初步預(yù)測list值指派的scl+crc譯碼器沒有譯碼成功,那么說明list預(yù)測值需要增大;將當(dāng)前l(fā)lr和值
步驟十一、利用迭代后
將list的預(yù)測值
步驟十二、按設(shè)定的迭代次數(shù)內(nèi)list預(yù)測值擴(kuò)大或縮小后,譯碼后的所有的備選碼字均沒有通過crc校驗的碼字,那么list預(yù)測值失敗,按照極大似然概率準(zhǔn)則選擇最終的譯碼碼字。
本發(fā)明在譯碼過程預(yù)測list的值,同時list預(yù)測值促進(jìn)譯碼的過程,節(jié)約了時間;通過譯碼的過程中預(yù)測list的值,降低平均譯碼復(fù)雜度,減小延時;并且在譯碼中不需要設(shè)定最大list值。