王華華, 余永坤, 于 敏
(重慶郵電大學通信與信息工程學院, 重慶 400065)
為了應對所預測的無線數據業務爆炸式增長,大規模多輸入多輸出(multiple input multiple output, MIMO)得到了人們的關注[1]。然而,大規模MIMO系統顯著地增加硬件成本和射頻電路的功耗[2]。在射頻鏈的所有部件中,模擬數字轉換器(analog-to-digital converter, ADC)是最耗電的部件,其功耗隨著量化比特的增多呈指數型增長[3]。為了解決功耗的問題,文獻[4-6]提出在大規模MIMO系統中使用混合精度ADC,其中高精度ADC主要用于信道估計,低精度ADC主要用于接收用戶信息進行用戶數據的恢復。關于低精度ADC的界定,學術界定義為量化比特數為1~3 bit的ADC;而在產業界,對低精度ADC沒有較明確的界定。文獻[6]對采用混合精度ADC的大規模MIMO系統的性能進行分析,結果表明在相同的硬件開銷下,相比于采用高精度ADC的大規模MIMO系統,該系統可以獲得更高的總速率和更低的功耗。
針對單比特ADC下的信號檢測,通常采用硬檢測和軟檢測兩類算法。在文獻[7]中提出了最佳的最大似然檢測(maximum likelihood detection, MLD)算法,并對最大似然檢測器進行了改進,提出逼近最大似然檢測(near-maximum likelihood detection, NML)算法。此外,文獻[8-9]分別給出了基于有監督學習和編碼理論的新MIMO檢測框架。盡管上述算法有很好的未編碼符號差錯率性能,但在有信道編碼系統中的誤幀率(frame error rate, FER)較高。主要是由于硬判決輸出大大降低了Trubo碼、低密度奇偶校驗碼(low density parity check code, LDPC)和極化碼等信道編碼的性能。
文獻[10]針對采用單比特ADC的上行MU-MIMO系統提出了軟輸出檢測(soft output detection, SOD)算法,該算法在有信道編碼系統中的FER比其他硬檢測算法的FER更低。但是由于該算法對每個用戶都會搜索整個碼字空間,其計算復雜度為O(KMK)[11],其中K為用戶數量,M為調制進制數。為了降低SOD算法的復雜度,文獻[11]提出了單比特連續干擾消除軟輸出算法,該算法每計算出一個用戶的軟信息就用信道解碼算法解出對應的比特信息,然后使用循環冗余校驗(cyclic redundancy check, CRC)判斷解出的信息比特是否正確,如果CRC正確,那么計算下一個用戶的軟信息時就將解碼正確的用戶信息減掉,所以計算下一個用戶的軟信息時其搜索空間就變成原來的一半,該算法的檢測復雜度能達到O(MK)。然而該算法必須要和信道譯碼算法一起使用才能工作,且此算法需要將譯碼正確的數據再做一次信道編碼流程,文獻[11]中所得計算復雜度并未考慮該因素。文獻[12-21]和文獻[22-25]分別討論了低精度ADC和單比特ADC下的信號檢測問題。
針對現有軟檢測算法復雜度高的問題,本文使用串行干擾消除算法思想,結合文獻[10]的檢測算法提出了排序多用戶單比特串行干擾消除軟輸出檢測(ordered multi-user one-bit successive interference cancellation soft output detection, OMuOSIC-SOD)算法。
文獻[4-6]提出的采用混合精度ADC的大規模MIMO系統如圖1所示,假設MU-MIMO系統中發送端有K個單天線終端,基站配備Nr根天線。基站配備Nh根天線用于信道估計,估計出的信道沖激響應矩陣為H∈CNr×K,由于本文重點在該系統的信號檢測問題,在此不對信道沖激響應矩陣的估計算法做詳細介紹,并假設基站已經通過信道估計算法得到信道矩陣H。

圖1 采用混合精度ADC的大規模MIMO系統Fig.1 Massive MIMO system with mixed-precision ADC

假設第k個用戶調制后的數據用xk=swk∈S表示,則K個用戶傳輸的信號向量為x=[x1,x2,…,xK]T,設M進制調制的星座集為S={s0,s1,…,sM-1},星座集信號的平均能量為E(|si|2)=1。基站接收到的未量化的復信號為
y=Hx+n∈CNr
(1)
式中,H∈CNr×K是K根發送天線與Nr根接收天線之間的信道矩陣;hi∈CNr×1表示第k根發送天線與Nr根接收天線間的信道向量;n=[n1,n2,…,nNr]T表示復高斯白噪聲向量,服從零均值和方差為σ2的復高斯分布,即ni~CN(0,σ2)。
為了后續敘述方便,將復信號轉化為實信號,且令N=2Nr。轉化后的信號模型為
(2)
在MU-MIMO單比特ADC系統中,基站的每個射頻鏈路配備兩個單比特ADC,分別對信號的實部和虛部進行量化。假設用sign(·)表示量化函數,其量化規則如下:

(3)
經過量化后得到的系統模型為
(4)
文獻[10]已為該系統提出一種性能最好的軟檢測算法,但是其算法的檢測復雜度太高,不宜在工程實踐中使用。復雜度過高的原因在于每次檢測用戶的信息都是全空間搜索,沒有利用已檢測用戶的信息,其次是沒有適當舍棄檢測精度來降低計算復雜度。SOD算法的復雜度過高的問題可以用串行干擾消除算法的思想解決。為此本文結合SOD算法和串行干擾消除的思想提出OMuOSIC-SOD算法。

第i次檢測時,將式(1)接收信號寫為
(5)

(6)
將式(6)代入SOD算法,得到的等效N路并行B-DMC如圖2所示。

圖2 等效N路并行B-DMCFig.2 Equivalent N-way parallel B-DMC

(1) 信道輸入

(7)
(2) 轉移概率
如圖2所示,等效N路并行B-DMC信道包含N個并行二進制離散無記憶信道。對于第i個子信道,轉移概率為
(8)
式中,錯誤概率el,i為
(9)

定義加權漢明距離為
(10)

第k個用戶發送信號xk與接收信號r的后驗概率與轉移概率的關系如下:
P(xk=sj|r)=P(wk=j|r)=
(11)
式中,wk表示向量w去掉第k個元素后得到的向量。
由于發送信號和接收信號的先驗概率是已知的,所以設發送信號概率與接收信號概率之比為A=P(wk=j)/P(r),則式(11)變為
(12)
根據文獻[10]的近似,第k個用戶的轉移概率為
(13)
假設每個用戶的每個調制符號均包含p比特信息,為了方便表示,定義
(14)
那么,第k個用戶的第i比特的軟輸出為
(15)
式中,B(i,0)表示第i比特為0的空域碼字集合;B(i,1)表示第i比特為1的空域碼字集合。
以上過程沒有考慮信道的影響使接收端接收到的每個用戶信號功率不同所帶來的問題。通過式(5)可以看出,如果本次檢測的用戶信號功率高,由于把未檢測的用戶信息當成等效噪聲,那么此時的等效噪聲就比較低,檢測正確的概率更大,同時下一次檢測正確的概率更大;如果先檢測的用戶信號功率低,由于把未檢測的用戶信息當成等效噪聲,那么此時的等效噪聲就會比較高,檢測正確的概率更低,同時下一次檢測正確的概率更小。
然而受到信道的影響,多根接收天線上接收到的同一個用戶信號的功率都不相同,如果使用某一根接收天線的接收功率進行排序,就不能反映出接收端真實的接收信號功率大小。由于OMuOSIC-SOD算法在做檢測時利用了所有天線接收到的信號,所以在做排序時需要對所有天線的接收功率進行綜合考慮。又由于本文考慮每個終端的發送功率相同,所以接收功率排序只需要考慮信道的影響。綜合上述分析,本文提出使用信道矩陣每一列所得列向量hi的二范數的排序作為檢測順序。那么,檢測順序號i與用戶索引ki的對應關系為
(16)
根據算法的流程可知,OMuOSIC-SOD算法的排序過程只需要進行K次求二范數運算,其計算復雜度可以忽略不計,計算復雜度主要體現在對整個星座空間的搜索上。

在實際應用中可以根據信噪比和FER要求來調整OMuOSIC-SOD算法每次檢測的用戶數量,以此來控制算法的計算復雜度,從而保證處理的實時性需求。
為了驗證所提算法在有信道編碼系統中的性能,本節給出Matlab環境下的蒙特卡羅仿真結果,將所提的OMuOSIC-SOD算法與文獻[10]提出的SOD算法、文獻[7]提出的逼近最大似然(near maximum likelihood, NML)算法以及文獻[6]提出的ZF算法在有polar編碼的MU-MIMO系統中進行對比。仿真實驗中使用5G協議中的polar編碼,碼率設置為1/2,碼長設置為128 bit,譯碼算法統一采用串行抵消列表(successive cancellation list, SCL)算法,信道采用瑞利信道,即H通過獨立同分布的均值為0,方差為1的循環對稱復高斯隨機變量生成,基帶信號的調制方式為正交相移鍵控(quadrature phase shift keying, QPSK)。
圖3是4×32 MIMO時的FER性能圖,從圖中可以看出,相同信噪比下,OMuOSIC-SOD算法比兩種硬判決算法——ZF算法和NML算法的FER低很多;當FER為10-3時,相對于ZF算法和NML算法,兩用戶OMuOSIC-SOD算法的性能有3.2 dB左右的提升;兩用戶OMuOSIC-SOD算法的性能與SOD算法性能差距很小,在FER達到10-3時,兩用戶OMuOSIC-SOD算法與SOD算法的性能只差約0.2 dB。

圖3 4×32 MIMO下FER性能對比Fig.3 Performance comparison of FER in 4×32 MIMO
圖4是8×32 MIMO下各個算法的FER性能圖。圖4與圖3所反映的結果一致,由于發送用戶增多所以每種算法的FER性能較4×32 MIMO時性能均變差。在FER達到10-3時,四用戶OMuOSIC-SOD算法與SOD算法的差距大約為0.4 dB。當信噪比變高時,OMuOSIC-SOD算法的FER變化比較平緩,這是由于串行干擾消除帶來的錯誤傳遞所導致的。

圖4 8×32 MIMO下FER性能對比Fig.4 Performance comparison of FER in 8×32 MIMO
圖5是4×32 MIMO下OMuOSIC-SOD算法在檢測不同用戶數量時的FER性能對比。從圖中可以看出在相同信噪比下,每次檢測的用戶數量越多,OMuOSIC-SOD算法的FER越低,也就是說每次檢測的用戶越多其FER性能越接近SOD算法,但此時OMuOSIC-SOD算法的計算復雜度也越接近SOD算法;在FER為10-3時,兩用戶OMuOSIC-SOD算法、四用戶OMuOSIC-SOD算法、六用戶OMuOSIC-SOD算法和SOD算法的性能差距均約為0.6 dB。

圖5 8×32 MIMO下OMuOSIC-SOD算法FER性能對比Fig.5 Performance comparison of FER for OmuOSIC-SOD algorithm in 8×32 MIMO
配備單比特ADC的MU-MIMO系統中的軟輸出檢測算法的檢測性能很好,但是該算法的計算復雜度很高,不利于工程實現。針對現有軟檢測算法復雜度高的問題,利用串行干擾消除的思想和軟輸出檢測算法提出OMuOSIC-SOD算法。OMuOSIC-SOD算法相對于SOD算法的優點在于其計算復雜度和檢測精度可以動態調整。
仿真表明,OMuOSIC-SOD算法的FER均低于NML和ZF這兩種硬判決算法。雖然SOD算法的檢測性能比OMuOSIC-SOD算法好,但是OMuOSIC-SOD算法可以增加或減少每次檢測的用戶數量,使算法在檢測性能和檢測復雜度方面達到平衡,在實際應用時可以根據實時性要求、FER要求和信噪比來調整每次檢測的用戶數量。