李心安,余開文
(重慶郵電大學 a.新一代寬帶移動通信重點實驗室; b.通信與信息工程學院,重慶 400065)
毫米波頻段(30~300 GHz)尚存大量未用頻譜,因頻帶寬和信息容量大等特點,其成為了下一代移動通信的主要選擇[1-3]。較高的路徑損耗是毫米波通信的主要挑戰之一,大規模多輸入多輸出(Multiple Input Multiple Output, MIMO)系統在基站側和終端側使用波束賦形補償路徑損耗是一種有效的解決方案[4]。
從硬件的角度來看,天線數目的增加導致接收端模數轉換器(Analog-to-Digital Converter, ADC) 數量增多。高速(≥1 GSamples/s)且高精度(≥ 6 bits)的ADC對便攜式終端設備而言,其成本和功耗都太高,或硬件不可實現[5-6]。接收電路的主要耗能元件為ADC,ADC的功耗隨系統帶寬線性增長,隨量化比特數指數增長[7]。
利用毫米波信道在角度域的稀疏性,Ahmed Alkhateeb等人[8]采用網格化的方法,將毫米波信道估計問題轉化為3個參數的估計問題,即離開角、到達角和信道向量非零元素的值,其中離開角和到達角由信道向量非零元素的位置唯一確定;Jianhua Mo等人[9]采用期望最大(Expectation Maximization, EM)算法對量化前的接收信號求條件期望,再用傳統的信道估計算法求解,得到信道向量的最大似然估計。
為了在提高估計精度的同時降低算法復雜度,本文提出了EM算法和正交匹配追蹤(Orthogonal Matching Pursuit, OMP)算法相結合的估計信道矩陣,即EM-OMP算法,同時結合廣義正交匹配追蹤(Generalized Orthogonal Matching Pursuit,GOMP)算法每次迭代按相關性依次選取多個原子。
本文符號約定:α、a和A分別為標量、列向量和矩陣;AT和AH分別為矩陣的轉置和共軛轉置;║A║F和║a║2分別為矩陣的Frobenius范數和向量的l2范數;A?B為克羅內克積(Kronecker Product);vec(A)為矩陣的列向量化。
在毫米波MIMO系統中,接收端的接收信號:

毫米波信道采用Saleh-Valenzuela信道模型:
式中:αn為第n條路徑的復增益;Npath為路徑數;φn和θn分別為第n條路徑的到達角和離開角,其均服從均勻分布,即φn、θn~U(-π/2,π/2);Λ=diag{α1,α2,…,αn}為n條路徑的復增益α1,α2,…,αn組成的對角矩陣;AR為各條路徑接收陣列導向矢量ar(φi)(i=1,2,…,Npath)組成的矩陣,定義為AR=[ar(φ1)ar(φ2) …ar(φNpath)];AT為各條路徑發送陣列導向矢量at(θi)(i=1,2,…,Npath)組成的矩陣,定義為AT=[at(θ1)at(θ2) …at(θNpath)]。
發送端和接收端均采用均勻線陣,陣列響應矢量可表示為
式中:M為天線數量;j為虛數單位;λ為波長;θ為方向角;d為相鄰天線陣元間距,這里取d=λ/2。毫米波信道通常是視距傳播或近似視距傳播,只有很少的反射路徑[10-11],因此,通常有Npath?min{Nr,Nt}。
信道矩陣的稀疏網格化可表示為
式中:UR∈CNr×Nr和UT∈CNt×Nt均為字典矩陣;HS為等效信道矩陣。
這里忽略量化到達角、離開角和實際到達角、離開角之間的誤差。從HS中非零元素的位置可以得出毫米波信道量化到達角和離開角,非零元素的值表示毫米波信道復增益。信道矩陣的稀疏表示將信道矩陣的估計問題轉化為到達角、離開角和信道矩陣非零元素值的估計問題,即信道矩陣非零元素位置和值的估計問題。
在訓練階段,令X∈CNt×K為訓練矩陣,K為訓練長度。訓練矩陣取X=UTZ,Z為等效訓練矩陣,故有:
式中:Y為接收的訓練矩陣;N∈CNt×K為各個元素獨立同分布的復高斯噪聲矩陣。上式的實值形式為


EM算法如下所示:
循環:



OMP算法在每次迭代時,通過計算當前殘差與所有待選原子的內積,選擇最大相關原子,再通過最小二乘(Least Square,LS)算法計算該原子的系數,逐步近似原始信號。OMP算法主要包括兩個步驟,尋找最優原子和計算該原子的系數。
然而,基于EM-OMP算法的信道向量估計存在兩個問題:一是條件期望對量化前接收信號的估計與實際信號之間存在估計誤差;其次是每次迭代只選取一個索引使算法的運行時間較長。其中,條件期望所帶來的誤差可通過迭代使其收斂[9-11],由于1 bit量化只保留了原始信號的符號信息,條件期望的估計性能與信噪比(Signal to Noise Ratio,SNR)有關,這一點將在第5節詳細說明。
OMP和GOMP算法基于貪心準則從感知矩陣中選取與當前殘差具有最大相關性的列向量。兩種算法的區別在于,進行重構時,OMP算法每次迭代過程中只選擇與當前殘差最大相關的原子,而GOMP算法在每次迭代過程中會選擇與當前殘差相關的原子集合,然后在該集合中按照相關性從大到小依次選取若干原子。相對于OMP算法,GOMP算法的搜索選擇方式能夠更好地保證從信號能量相近或不完全和不精確的陣列接收信號中恢復信號,能更準確地找出信號的所在角度。
GOMP的具體過程是,預先定義每次迭代選取原子的數量num,按照下列準則選取num個最大相關列:

式中,ψsupp為支撐集supp對應列組成的子矩陣。重復上述步驟,直至選出所有路徑。
EM-GOMP算法如下所示:
循環:
循環:
尋找num個最大相關列

更新殘差和循環變量:
直到i≥Npath;


圖1所示為不同信道估計算法在不同SNR條件下的NMSE曲線。由圖可知,EM-OMP和EM-GOMP算法在性能上均優于EM算法。其中,EM算法在求矩陣偽逆時,分別選取了Penrose-Moore偽逆矩陣和基于矩陣分解的偽逆矩陣。系統SNR<20 dB時,EM-OMP算法的NMSE為EM算法的1/10。其原因在于,EM算法并未利用信道的稀疏性,在高維矩陣求偽逆運算時,耗時長且估計精度差。EM-GOMP算法在每次迭代選取兩個原子時,其估計精度與EM-OMP算法幾乎一致,在每次迭代選取3個原子時,其估計精度比EM-OMP算法降低了2 dB。無論哪種算法,當SNR分別大于某一門限時,其性能隨著SNR的增大急劇降低。這是由于,1 bit ADC只保留了接收信號的符號信息,當接收信號的模很大時,使用條件期望估計會帶來較大的估計誤差。這是量化系統中的一種典型現象,稱為隨機共振[12-14]。

圖1 不同SNR情況下的NMSE對比
為了對比各個算法的計算復雜度,表1給出了EM-OMP、EM-GOMP和EM算法單次迭代的耗時統計。算法仿真軟件為Matlab R2018b,硬件環境為16 GB 隨機存取存儲器(Random Access Memory,RAM)和 Intel Core i5-10300H 中央處理器(Central Processing Unit,CPU)。由表可知,算法耗時由高到低依次為:EM(Penrose-Moore偽逆)、EM(矩陣分解偽逆)、EM-OMP、EM-GOMP(num=2)和EM-GOMP(num=3)。EM算法耗時較長是因為高維矩陣的偽逆運算量大。EM-GOMP算法每次迭代選取多個原子,故其耗時比EM-OMP算法更短,且每次迭代選取的原子數量越多,其耗時就越短。

表1 每次迭代的耗時統計
圖2所示為路徑數為2、SNR=10 dB時,各信道估計算法采用不同導頻長度的NMSE曲線。由圖可知,隨著導頻長度的增加,估計算法的準確性越來越高。同時隨著導頻長度的增加,曲線斜率的絕對值越來越低,這說明當導頻長度較大時,如圖所示為當導頻長度為512時,再增加導頻長度帶來的性能提升有限。

圖2 不同導頻長度情況下的NMSE對比
本文針對高精度ADC毫米波通信系統的成本和功耗高問題,在接收端采用1 bit量化器,并利用壓縮感知技術進行毫米波大規模MIMO系統的信道估計。考慮毫米波大規模MIMO信道在角度域的稀疏性,為了便于實際應用,本文設計了EM-OMP算法,每次迭代選取與當前殘差最大相關的一個原子。為了進一步提高算法效率,設計了EM-GOMP算法,每次迭代選取多個最大相關原子,降低了算法的迭代次數。仿真結果表明,本文所提EM-OMP和EM-GOMP算法估計性能高于EM算法,同時算法復雜度低于EM算法。