本發(fā)明涉及空時編碼和信道編碼技術(shù)領(lǐng)域,尤其涉及一種ldpc的基于sor的聯(lián)合迭代檢測譯碼方法及系統(tǒng)。
背景技術(shù):
面對5g對于通信需求,傳輸速率,可靠性和頻譜利用率都有很大需求。大規(guī)模多輸入多輸出(multiple-inputmultiple-output,mimo)面對該挑戰(zhàn),可以幫助提高傳輸速率和頻譜利用率。而低密度奇偶校驗碼(lowdensityparitycheckcode,ldpc)長時間作為通信協(xié)議中的標準碼,其對差錯控制的可靠性一度得到認可。最近,ldpc又被確定為5g中長碼標準。
技術(shù)實現(xiàn)要素:
發(fā)明目的:為了滿足一些對誤碼率有更高要求的場合,本發(fā)明提出了ldpc編碼的大規(guī)模mimo的基于超松弛迭代(successiveoverrelaxation,sor)檢測聯(lián)合迭代檢測譯碼方法及系統(tǒng)。該發(fā)明通過將大規(guī)模mimo的sor檢測和ldpc譯碼結(jié)合,從而使得誤碼率降低,并且提高收斂速度。
技術(shù)方案:本發(fā)明所述的基于sor的ldpc譯碼方法包括:
(1)對信道矩陣h和接收信號y進行預(yù)處理,得到匹配濾波器輸出ymf=hhy和mmse濾波矩陣w=g+σ2im,并將w分解為w=d+l+lh;其中,g表示gram矩陣,且g=hhh,σ2為噪聲方差,im為單位陣,(.)h為共軛轉(zhuǎn)置操作,d為對角陣,l為下三角陣;
(2)設(shè)置迭代次數(shù)k=1;
(3)將匹配濾波器輸出ymf、mmse濾波矩陣分解結(jié)果d、l和lh以及修正因子ω作為輸入,采用sor算法更新得到第k次迭代時待檢測信號估計結(jié)果sk;其中,sor迭代公式為
式中,()k表示第k次迭代對應(yīng)的值,s0為全0向量;
(4)通過map模塊將待檢測信號估計結(jié)果轉(zhuǎn)化為比特概率的對數(shù)似然比;
(5)采用轉(zhuǎn)換的對數(shù)似然比初始化ldpc中變量節(jié)點j的固有信息
(6)根據(jù)下式計算第k次迭代時校驗節(jié)點i向變量節(jié)點j傳輸?shù)男畔?imgfile="bda0001237390970000021.gif"wi="86"he="70"img-content="drawing"img-format="gif"orientation="portrait"inline="no"/>
式中,j=1,2,...,n,i=1,2,...,m,n(i)表示所有與校驗節(jié)點i連接的變量節(jié)點的集合,
(7)根據(jù)
式中,j=1,2,...,n,i=1,2,...,m,m(j)表示所有與變量節(jié)點j連接的校驗節(jié)點的集合;
(8)通過map-1模塊將變量節(jié)點j的固有信息
sk=αsk+βδsk
式中,α、β是加權(quán)系數(shù),并滿足α+β=1;
(9)將k值加1,并返回步驟(3)進行迭代,直至達到預(yù)設(shè)次數(shù);并做硬判決然后輸出對碼字的估計,判決方法為:如果lj大于0,則第j個比特為0,否則第j個比特為1。
其中,步驟(4)具體包括:
(4-1)采用下式計算sk是由第u個符號發(fā)射得來的概率
式中,sk(h)表示sk的第h個符號,cu表示第u個符號;
(4-2)根據(jù)上式計算得到p(0)和p(1),并采用ln(p(0)/p(1))計算得到對數(shù)似然比。
本發(fā)明所述的基于sor的ldpc譯碼系統(tǒng)包括:
匹配濾波器單元,用于對信道矩陣h和接收信號y進行預(yù)處理,得到匹配濾波器輸出ymf=hhy;
gram矩陣計算單元,用于根據(jù)信道矩陣h計算得到gram矩陣g=hhh;
mmse濾波矩陣計算單元,用于計算得到mse濾波矩陣w=g+σ2im,其中,σ2為噪聲方差,im為單位陣;
mmse濾波矩陣分解單元,用于將w分解為w=d+l+lh;其中,(.)h為共軛轉(zhuǎn)置操作,d為對角陣,l為下三角陣;
sor迭代單元,用于將匹配濾波器輸出ymf、mmse濾波矩陣分解結(jié)果d、l和lh以及修正因子ω作為輸入,采用sor算法更新得到第k次迭代時待檢測信號估計結(jié)果sk;其中,sor迭代公式為
式中,()k表示第k次迭代對應(yīng)的值,s0為全0向量;
map模塊,用于將待檢測信號估計結(jié)果轉(zhuǎn)化為比特概率的對數(shù)似然比;
變量節(jié)點,用于采用轉(zhuǎn)換的對數(shù)似然比初始化ldpc中變量節(jié)點j的固有信息
校驗節(jié)點,用于根據(jù)下式計算第k次迭代時校驗節(jié)點i向變量節(jié)點j傳輸?shù)男畔?imgfile="bda0001237390970000034.gif"wi="90"he="70"img-content="drawing"img-format="gif"orientation="portrait"inline="no"/>
式中,j=1,2,...,n,i=1,2,...,m,n(i)表示所有與校驗節(jié)點i連接的變量節(jié)點的集合,
變量節(jié)點,還用于根據(jù)rij采用下式對變量節(jié)點j的固有信息
式中,j=1,2,...,n,i=1,2,...,m,m(j)表示所有與變量節(jié)點j連接的校驗節(jié)點的集合;
map-1模塊,用于將變量節(jié)點j的固有信息
sk=αsk+βδsk
式中,α、β是加權(quán)系數(shù),并滿足α+β=1;
循環(huán)迭代執(zhí)行模塊,用于將k值加1,并返回sor迭代單元,按順序進行迭代,直至達到預(yù)設(shè)次數(shù);
判決單元,用于硬判決然后輸出對碼字的估計,判決方法為:如果lj大于0,則第j個比特為0,否則第j個比特為1。
進一步的,map模塊具體用于:
采用下式計算sk是由第u個符號發(fā)射得來的概率
式中,sk(h)表示sk的第h個符號,cu表示第u個符號;
根據(jù)上式計算得到p(0)和p(1),并采用ln(p(0)/p(1))計算得到對數(shù)似然比。
有益效果:本發(fā)明與現(xiàn)有技術(shù)相比,其顯著優(yōu)點是:本發(fā)明通過把sor檢測ldpc譯碼聯(lián)合起來,把sor檢測快速的優(yōu)勢和ldpc譯碼準確的優(yōu)勢結(jié)合,并進一步提高,取得一加一大于二的效果。傳統(tǒng)分離檢測譯碼(separateddetectionanddecoding,sdd),僅僅是把sor檢測若干次迭代后的結(jié)果送給ldpc譯碼器譯碼。而本發(fā)明通過把ldpc譯碼器輸出的概率信息再傳回給sor進行再次迭代,在不增加時間復(fù)雜的條件下取得更好的差錯性能。
附圖說明
圖1是本發(fā)明的信道模型框圖;
圖2是本發(fā)明的譯碼系統(tǒng)整體架構(gòu);
圖3是本發(fā)明的sor檢測模塊的框圖;
圖4是本發(fā)明的時序圖。
具體實施方式
信道模型
本部分著重介紹本實施例所適用的模型,如圖1所示。在極化碼編碼的mimo系統(tǒng)中,需要傳輸?shù)囊淮忍貢紫缺籰dpc碼編碼。設(shè)碼長為n,信息位長度為k,ldpc碼編碼過程可以表示為
x=gu
其中x是n×1的編碼后的序列,u是k×1的信息比特序列,g是n×n的生成矩陣。x經(jīng)過mimo發(fā)射端調(diào)制映射后變成符號序列s通過mimo天線陣列傳輸,mimo規(guī)格為nt發(fā)射信道nr接收信道,w-qam調(diào)制,調(diào)制后信號為
上式中接收向量
y=hs+w
式中接收向量y是2nr×1的復(fù)向量,h是2nr×2nt的信道矩陣,s是2nt×1的發(fā)送向量,w是2nr×1的信道噪聲服從n~(0,σ2)分布。
因此譯碼的整個過程就是通過y解u的過程。
譯碼方法
本實施例提供了一種基于sor的ldpc譯碼方法,包括以下步驟:
(1)對信道矩陣h和接收信號y進行預(yù)處理,得到匹配濾波器輸出ymf=hhy和mmse濾波矩陣w=g+σ2im,并將w分解為w=d+l+lh;其中,g表示gram矩陣,且g=hhh,σ2為噪聲方差,im為單位陣,(.)h為共軛轉(zhuǎn)置操作,d為對角陣,l為下三角陣。
(2)設(shè)置迭代次數(shù)k=1。
(3)如圖2所示,將匹配濾波器輸出ymf、mmse濾波矩陣分解結(jié)果d、l和lh以及修正因子ω作為輸入,采用sor算法更新得到待檢測信號估計結(jié)果sk;其中,sor迭代公式為
式中,()k表示第k次迭代對應(yīng)的值,s0為全0向量,修正因子ω取值范圍為1<ω<2。
(4)通過map模塊將待檢測信號估計結(jié)果轉(zhuǎn)化為比特概率的對數(shù)似然比。
該步驟具體包括:(4-1)采用下式計算sk是由第u個符號發(fā)射得來的概率
式中,sk(h)表示sk的第h個符號,cu表示第u個符號;
(4-2)根據(jù)上式計算得到p(0)和p(1),并采用ln(p(0)/p(1))計算得到對數(shù)似然比。
(5)采用轉(zhuǎn)換的對數(shù)似然比初始化ldpc中變量節(jié)點j的固有信息
(6)根據(jù)下式計算校驗節(jié)點i向變量節(jié)點j傳輸?shù)男畔ij:
式中,j=1,2,...,n,i=1,2,...,m,n(i)表示所有與校驗節(jié)點i連接的變量節(jié)點的集合,
(7)根據(jù)rij采用下式對變量節(jié)點j的固有信息
式中,j=1,2,...,n,i=1,2,...,m,m(j)表示所有與變量節(jié)點j連接的校驗節(jié)點的集合。
(8)通過map-1模塊將變量節(jié)點j的固有信息
sk=αsk+βδsk
式中,α、β是加權(quán)系數(shù),并滿足α+β=1,map-1模塊是map模塊的逆運算。
(9)將k值加1,并返回步驟(3)進行迭代,直至達到預(yù)設(shè)次數(shù);并做硬判決然后輸出對碼字的估計,判決方法為:如果lj大于0,則第j個比特為0,否則第j個比特為1。
譯碼系統(tǒng)
本實施例提供了一種基于sor的ldpc譯碼系統(tǒng),如圖3所示,包括:
匹配濾波器單元,用于對信道矩陣h和接收信號y進行預(yù)處理,得到匹配濾波器輸出ymf=hhy。
gram矩陣計算單元,用于根據(jù)信道矩陣h計算得到gram矩陣g=hhh。
mmse濾波矩陣計算單元,用于計算得到mse濾波矩陣w=g+σ2im,其中,σ2為噪聲方差,im為單位陣。
mmse濾波矩陣分解單元,用于將w分解為w=d+l+lh;其中,(.)h為共軛轉(zhuǎn)置操作,d為對角陣,l為下三角陣。
sor迭代單元,用于將匹配濾波器輸出ymf、mmse濾波矩陣分解結(jié)果d、l和lh以及修正因子ω作為輸入,采用sor算法迭代更新得到待檢測信號估計結(jié)果sk;其中,sor迭代公式為
式中,()k表示第k次迭代對應(yīng)的值,s0為全0向量;
sor算法的實現(xiàn)架構(gòu)包括:
第1乘法單元:輸入為d和1/ω,輸出為d/ω
第2乘法單元:輸入為d和1-1/ω,輸出為d(1-1/ω)
第3乘法單元:輸入為d(1-1/ω)-lh和sk-1,輸出為(d(1-1/ω)-lh)sk-1
第4乘法單元:輸入為((1/ω-1)d-lh)sk-1+ymf和(d/ω+l)-1,輸出為
第1加法單元:輸入為l和d/ω,輸出為l+d/ω;
第2加法單元:輸入為d(1-1/ω)和-lh,輸出為d(1-1/ω)-lh;
第3加法單元:輸入為ymf和((1/ω-1)d-lh)sk-1,輸出為((1/ω-1)d-lh)sk-1+ymf
求逆單元:輸入為(d/ω+l)輸出為(d/ω+l)-1。
map模塊,用于將待檢測信號估計結(jié)果轉(zhuǎn)化為比特概率的對數(shù)似然比;具體用于:采用下式計算sk是由第u個符號發(fā)射得來的概率
變量節(jié)點,用于采用轉(zhuǎn)換的對數(shù)似然比初始化ldpc中變量節(jié)點j的固有信息
校驗節(jié)點,用于根據(jù)下式計算校驗節(jié)點i向變量節(jié)點j傳輸?shù)男畔ij:
式中,j=1,2,...,n,i=1,2,...,m,n(i)表示所有與校驗節(jié)點i連接的變量節(jié)點的集合,
變量節(jié)點,還用于根據(jù)
式中,j=1,2,...,n,i=1,2,...,m,m(j)表示所有與變量節(jié)點j連接的校驗節(jié)點的集合。
map-1模塊,用于將變量節(jié)點j的固有信息
sk=αsk+βδsk
式中,α、β是加權(quán)系數(shù),并滿足α+β=1;其中,map-1模塊是map模塊的逆運算。
循環(huán)迭代執(zhí)行模塊,用于將k值加1,并返回sor迭代單元,按順序進行迭代,直至達到預(yù)設(shè)次數(shù)。
判決單元,用于硬判決然后輸出對碼字的估計,判決方法為:如果lj大于0,則第j個比特為0,否則第j個比特為1。
時序
為了提高系統(tǒng)吞吐率,本發(fā)明采用如下方法。由于該算法是由檢測和譯碼交替進行而來,系統(tǒng)可以對兩次接收向量并行處理。在接收向量a的在做檢測時,接收向量b可以做譯碼;在下一時刻a可以做譯碼,b可以檢測。具體如圖4所示。
以上所揭露的僅為本發(fā)明一種較佳實施例而已,不能以此來限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明權(quán)利要求所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。