本發(fā)明屬于計(jì)算機(jī)通信領(lǐng)域,涉及一種大規(guī)模MIMO系統(tǒng)上行鏈路信號(hào)檢測(cè)方法及裝置。
背景技術(shù):
Multiple-Input-Multiple-Output(MIMO)信號(hào)處理因其龐大數(shù)量的矩陣-向量運(yùn)算器而成為MIMO-OFDM基帶接收器中最具難度與挑戰(zhàn)性的部分。所有的MIMO技術(shù)都需要MIMO檢測(cè)來(lái)進(jìn)行精確運(yùn)算。然而在大規(guī)模MIMO線性檢測(cè)中,由于天線數(shù)量的增加,信道矩陣維數(shù)隨之增加,進(jìn)而使Minimum mean square error(MMSE)過(guò)濾矩陣的計(jì)算變得困難,更不用說(shuō)MMSE過(guò)濾矩陣的逆矩陣,因此,便有了運(yùn)用迭代法直接求逆的辦法。在此之前有通過(guò)Gauss-Seidel算法和SOR算法進(jìn)行迭代的試驗(yàn),復(fù)雜度較低但是精確度一般。SOR算法的精確度更是隨著修正因子的改變而變化。
技術(shù)實(shí)現(xiàn)要素:
發(fā)明目的:針對(duì)現(xiàn)有技術(shù)的不足,本發(fā)明目的是提供一種基于SOR算法的大規(guī)模MIMO線性檢測(cè)方法及裝置,在SOR算法優(yōu)點(diǎn)的基礎(chǔ)上進(jìn)一步優(yōu)化,提高算法的精確度,盡可能達(dá)到矩陣求逆的精確值。同時(shí)避免算法的精確度隨修正因子的改變而變化。
技術(shù)方案:為實(shí)現(xiàn)上述發(fā)明目的,本發(fā)明采用的技術(shù)方案如下:
本發(fā)明基于SOR迭代法,在SOR迭代式的基礎(chǔ)上應(yīng)用修正因子ω的定義式替代第k+1次迭代的結(jié)果,得到本發(fā)明算法的迭代式。具體為:SOR算法的迭代式(D+ωL)Xk+1=((1-ω)D-ωLH)Xk+ωb,代入修正因子ω的定義式Xk+1=Xk+ω(Xk+1-Xk),則可以得到本算法的迭代式(D+ωL)Xk+1=(-(1-ω)L-LH)Xk+b。
本發(fā)明提供的一種基于SOR算法的大規(guī)模MIMO線性檢測(cè)方法,包括以下步驟:
(1)將信道矩陣H和接收信號(hào)y進(jìn)行預(yù)處理,得到匹配濾波器輸出yMF=HHy和MMSE濾波矩陣W=G+σ2IM,并W將分解為W=D+L+LH,其中Gram矩陣G=HHH,σ2為噪聲方差,IM為單位陣,(.)H為共軛轉(zhuǎn)置操作,D為對(duì)角陣,L為下三角陣;
(2)將匹配濾波器輸出yMF,MMSE濾波矩陣分解結(jié)果D、L和LH以及修正因子ω作為輸入,采用改進(jìn)的SOR算法進(jìn)行迭代求解得到待檢測(cè)信號(hào)估計(jì)結(jié)果,其中改進(jìn)的SOR算法中第i次迭代輸出si根據(jù)公式si=(D+ωL)-1(ωL-LH-L)si-1+(D+ωL)-1yMF,i>0計(jì)算得到。
為保證迭代式收斂,所述步驟(2)中修正因子ω取值范圍為1<ω<2。
在具體實(shí)施方式中,所述步驟(2)中si的初始值s0為全0向量,修正因子ω為常數(shù)1.5,迭代次數(shù)為3次。
本發(fā)明提供的一種基于SOR算法的大規(guī)模MIMO線性檢測(cè)裝置,包括預(yù)處理模塊和改進(jìn)的SOR算法模塊;其中
所述預(yù)處理模塊,包括:匹配濾波器單元,Gram矩陣計(jì)算單元,MMSE濾波矩陣計(jì)算單元,MMSE濾波矩陣分解單元和第一乘法單元;
所述匹配濾波器單元,用于根據(jù)輸入的信道矩陣H共軛轉(zhuǎn)置HH和接收信號(hào)y計(jì)算yMF=HHy,輸出yMF;
所述Gram矩陣計(jì)算單元,用于計(jì)算G=HHH,輸出G;
所述MMSE濾波矩陣計(jì)算單元,與Gram矩陣計(jì)算單元相連,用于計(jì)算W=G+σ2IM,輸出W;其中σ2為噪聲方差,IM為單位陣;
所述MMSE濾波矩陣分解單元,與MMSE濾波矩陣計(jì)算單元相連,用于將W分解為W=D+L+LH,其中D為對(duì)角陣,L為下三角陣,分別輸出D、L和LH;
所述第一乘法單元,與MMSE濾波矩陣分解單元相連,用于實(shí)現(xiàn)修正因子ω與下三角陣L相乘;
所述改進(jìn)的SOR算法模塊,包括:第一加法單元,第二加法單元,第三加法單元,第二乘法單元,第三乘法單元,第四乘法單元,求逆單元和求負(fù)單元;
所述第二乘法單元,與MMSE濾波矩陣分解單元相連,用于實(shí)現(xiàn)1-ω與下三角陣L相乘;
所述第一加法單元,分別與MMSE濾波矩陣分解單元及第一乘法單元相連,用于實(shí)現(xiàn)對(duì)角陣D與下三角陣ωL相加;
所述第二加法單元,分別與MMSE濾波矩陣分解單元及第二乘法單元相連,用于實(shí)現(xiàn)下三角陣(1-ω)L與上三角陣LH相加;
所述求逆單元,與第一加法單元相連,用于實(shí)現(xiàn)下三角陣的D+ωL求逆;
所述求負(fù)單元,與第二加法單元相連,用于實(shí)現(xiàn)矩陣(1-ω)L+LH中值求負(fù)運(yùn)算;
所述第三乘法單元,分別與求負(fù)單元及第四乘法單元相連,用于實(shí)現(xiàn)ωL-LH-L與上輪迭代計(jì)算輸出si-1相乘;
所述第三加法單元,分別與第三乘法單元及匹配濾波器單元相連,用于實(shí)現(xiàn)(ωL-LH-L)si-1與yMF相加;
所述第四乘法單元,分別與求逆單元及第三加法單元相連,用于實(shí)現(xiàn)兩者輸出相乘,得到本輪迭代待檢測(cè)信號(hào)si估計(jì)。
有益效果:與現(xiàn)有技術(shù)相比,本發(fā)明的優(yōu)勢(shì):保留了SOR算法復(fù)雜度低的優(yōu)點(diǎn),在實(shí)現(xiàn)同等精確度的情況下,本發(fā)明算法的迭代次數(shù)比SOR算法的迭代次數(shù)少,并且復(fù)雜度更低。能夠?qū)崿F(xiàn)與MMSE算法非常接近的精確度。在修正因子改變而其他因素不變的情況下,由仿真結(jié)果可以看出SOR算法的精確度隨修正因子的變化呈現(xiàn)出曲線的變化趨勢(shì)。而本發(fā)明算法隨修正因子的變化幾乎不變,接近MMSE算法的精確度。
附圖說(shuō)明
圖1為本發(fā)明裝置結(jié)構(gòu)示意圖;
圖2為發(fā)射天線數(shù)為16,接收天線數(shù)為128時(shí),采用本發(fā)明信號(hào)檢測(cè)算法和其他檢測(cè)算法的誤碼率曲線圖;
圖3為發(fā)射天線數(shù)為8,接收天線數(shù)為64時(shí),采用本發(fā)明信號(hào)檢測(cè)算法和其他檢測(cè)算法的誤碼率曲線圖;
圖4為迭代次數(shù)為3,信噪比為4時(shí),采用本發(fā)明信號(hào)檢測(cè)算法和其他檢測(cè)算法的誤碼率隨修正因子ω變化曲線圖。
具體實(shí)施方式
下面結(jié)合具體實(shí)施例,進(jìn)一步闡明本發(fā)明,應(yīng)理解這些實(shí)施例僅用于說(shuō)明本發(fā)明而不用于限制本發(fā)明的范圍,在閱讀了本發(fā)明之后,本領(lǐng)域技術(shù)人員對(duì)本發(fā)明的各種等價(jià)形式的修改均落于本申請(qǐng)所附權(quán)利要求所限定的范圍。
本實(shí)施例中建立一個(gè)大規(guī)模MIMO信道模型進(jìn)行模擬操作。在大規(guī)模MIMO系統(tǒng)中,一般有N>>M(基站天線數(shù)N遠(yuǎn)大于發(fā)射天線數(shù),即用戶數(shù)M)。讓s=[s1,s2,s3,…,sM]T表示信號(hào)向量,s中包含了分別從M個(gè)用戶產(chǎn)生的傳輸符號(hào),采用16-QAM方式映射。H表示維度是N×M信道矩陣,故上行鏈路基站端的接收信號(hào)向量y可以表示為
y=Hs+n
其中y的維度為N×1,n為N×1維的加性白噪聲向量。上行鏈路多用戶信號(hào)檢測(cè)任務(wù)就是從接收機(jī)接收向量y=[y1,y2,y3,…,yN]T估計(jì)傳輸信號(hào)符號(hào)s。假設(shè)H已知,其元素服從均值為0方差為1的獨(dú)立同分布,采用最小均方誤差(MMSE)線性檢測(cè)理論,對(duì)傳輸信號(hào)向量的估計(jì)表示為
由于矩陣W為Hermitian正定,且
W=D+L+LH
其中D,L和LH分別為W的對(duì)角線、下三角和上三角分量。根據(jù)SOR方法求解線性方程組
根據(jù)SOR算法的迭代式可以整理得到第i次迭代所得的檢測(cè)結(jié)果為
si=(D+ωL)-1(ωL-LH-L)si-1+(D+ωL)-1yMF,i=1,2,…,,
設(shè)迭代初始值s0為全0向量,即s0=[01,02,…,0M]T,迭代3次終止。初值ω為常數(shù)1.5。則迭代過(guò)程可以表示為
s1=(D+ωL)-1(ωL-LH-L)s0+(D+ωL)-1yMF,
s2=(D+ωL)-1(ωL-LH-L)s1+(D+ωL)-1yMF,
s3=(D+ωL)-1(ωL-LH-L)s2+(D+ωL)-1yMF。
由此便可以得到經(jīng)過(guò)3次迭代的估計(jì)值
對(duì)于天線配置為128×16和64×8的大規(guī)模MIMO系統(tǒng),采用3/4速率Turbo碼以及16-QAM映射,基于上述算法的大規(guī)模MIMO檢測(cè)方法的仿真結(jié)果見(jiàn)圖2和圖3。
本發(fā)明算法在1<ω<2時(shí)收斂,而SOR算法在0<ω<2時(shí)收斂,故其公共收斂區(qū)間為1<ω<2,本發(fā)明算法以及其他算法隨修正因子ω變化的曲線如圖4。
硬件架構(gòu)方面,本實(shí)施例中采用的基于SOR算法的大規(guī)模MIMO檢測(cè)方法的裝置結(jié)構(gòu)示意圖見(jiàn)圖1,其中包括預(yù)處理模塊和算法模塊。
具體來(lái)說(shuō),在預(yù)處理模塊中,包含:
1)匹配濾波器單元:由M個(gè)復(fù)數(shù)乘法累加器(MAC)組成的脈動(dòng)陣列,用于計(jì)算yMF=HHy,輸出yMF;
2)Gram矩陣計(jì)算單元:由(1+M)M/2個(gè)MAC組成的下三角脈動(dòng)陣列,用于計(jì)算G=HHH,輸出G;
3)MMSE濾波矩陣計(jì)算單元:由M2個(gè)復(fù)數(shù)加法器組成,與Gram矩陣計(jì)算單元相連,用于計(jì)算W=G+σ2IM,輸出W;
4)MMSE濾波矩陣分解單元:與Gram矩陣計(jì)算單元相連,將W分解為W=D+L+LH,其中D為對(duì)角陣,L為下三角陣,分別輸出D、L、LH;
5)第一乘法單元:與MMSE濾波矩陣分解單元相連,輸出ωL;
在算法模塊中,所述算法模塊主要包含一個(gè)求解三角陣逆矩陣的脈動(dòng)陣列inv,兩個(gè)矩陣-向量乘法陣列、一個(gè)向量加法陣列、兩個(gè)矩陣加法陣列以及一組寄存器,最終經(jīng)過(guò)檢測(cè)的信號(hào)將寫(xiě)入寄存器中,便于進(jìn)行下一步的譯碼等操作包含:
1)2個(gè)矩陣-向量乘法陣列(第三乘法單元和第四乘法單元):由M個(gè)MAC組成的脈動(dòng)陣列;
2)1個(gè)求解三角陣逆矩陣的脈動(dòng)陣列inv(求逆單元):使用2種PE,包含6M個(gè)寄存器、4M個(gè)乘法器和4M個(gè)加法器,以及1個(gè)倒數(shù)單元,用于計(jì)算下三角陣(D+ωL)的逆矩陣;
3)1個(gè)向量加法陣列(第三加法單元):由M個(gè)復(fù)數(shù)加法器組成的脈動(dòng)陣列;
4)2個(gè)矩陣加法陣列(第一加法單元和第二加法單元):由M2個(gè)復(fù)數(shù)加法器組成的脈動(dòng)陣列。
復(fù)雜度方面,在迭代次數(shù)為2時(shí),本發(fā)明提出的算法所用乘法器數(shù)量為3M2+3M,加法器數(shù)量為3M2+M;迭代次數(shù)為3時(shí),本發(fā)明提出的算法所用乘法器數(shù)量為加法器數(shù)量為與SOR算法的復(fù)雜度對(duì)比如表1所示。
表1本發(fā)明所提算法與SOR算法復(fù)雜度對(duì)比表
由仿真結(jié)果可知,本發(fā)明提出的算法在迭代次數(shù)為2時(shí)的精確度高于SOR算法在迭代次數(shù)為3時(shí)的精確度。如此,在完成相同性能的前提下,本發(fā)明提出的算法復(fù)雜度小于SOR算法的復(fù)雜度。