陳宇祥,張 偉,吳思雨,周淑華
(南京郵電大學,江蘇 南京 210003)
在通信技術的發展歷程中,多址接入技術是現代無線通信系統發展和演進的基礎。當用戶數量激增時,資源的正交性就受到限制,此時非正交多址接入(Non-Orthogonal Multiple Access,NOMA)技術成為新的關注點[1,2]。稀疏碼多址接入(Sparse Code Multiple Access,SCMA)是NOAM 技術的代表之一,最早是由低密度擴頻(Low Density Signature,LDS)技術發展而來[3]。無線通信系統從第一代無線通信發展到第四代無線通信,多址技術都是采用正交多址接入(Orthogonal Multiple Access,OMA)技術。OMA 技術因為資源受限,必然導致可接入的用戶數目有限,正是這樣,非正交多址技術也越來越受到關注。
SCMA 系統和LDS 系統較為類似,但在其基礎上引入了多維調制技術,這種方式可以提升SCMA系統的增益[4,5]。SCMA 系統用戶的碼字存在稀疏性,這樣就可以采用MPA算法進行檢測[6]。本文提出一種基于相似度的閾值判斷方式,以Max-Log-MPA算法為例,在取得合適的閾值的情況下來達到算法性能和復雜度之間的平衡,進一步降低算法的復雜度。
假設用戶數目為J,同時向共享K個正交時頻資源的同一基站傳輸數據,此時定義過載因子為,M為碼本大小,簡化的SCMA 模型如圖1 所示。

圖1 簡化的SCMA 上行鏈路模型
SCMA 系統編碼映射過程如圖2 所示,圖中系統有6 個用戶和4 個資源塊,每個用戶占用2 個資源塊,每個用戶都擁有特定的碼本且碼字具有稀疏性。
如圖2 所示,每個碼本是4×4的矩陣,其中只有2 行元素是非空白部分,表示為非0 部分,用戶1 到用戶6的用戶碼本的第4,2,2,0,1,4個碼字參與編碼。為了方便,本文采用F矩陣(因子矩陣)來表示這樣一種結構,對應的F矩陣為:

圖2 編碼映射過程

式中:矩陣行代表資源數;矩陣列代表用戶數。
定義dr=3,dv=2,其中dr為行重因子代表每個資源占據的用戶數,dv為列重因子代表每個用戶占據的資源數。由F可知,每行有3 個非零元素,每列有2 個非零元素,使用這種方式限制資源上的用戶數用來減小用戶之間的干擾,接收端用戶信號為:

式 中:y=[y1,y2,y3,…,yK]T為用戶的接收信號;hj=[h1j,h2j,h3j,…,hKj]T為 第j個用戶的增益信息;xj=[x1j,x2j,x3j,…,xKj]T為第j個用戶的碼字信息;n為高斯噪聲矢量。
一個綜合題的解答往往蘊藏著較大的信息量,反思其過程,留心其中的一些數據,往往會得到意想不到的收獲.下面以一道考題的一個解答為例,簡析其中的數據關系,進而提出一個與矩形相關的命題,并給出幾種證法.
MPA算法節點分為用戶節點(U)和資源節點(R),算法的每次迭代U和R都會參與,圖3 是式(1)因子矩陣F對應的因子圖。

圖3 因子圖
xk,j為第k個資源上發送的符號,yk表示第k個資源上的接收信號,在第t次迭代中,定義為第k個資源節點向第j個用戶節點迭代的消息值,定義為第j個用戶節點向第k個資源節點迭代的消息值。其中,=(χ1×…×χJ)表示J個用戶碼本中所有碼字的可能組合(M J)。
MPA算法的具體步驟如下[7,8]:
(1)對第一次參與迭代的碼字xj進行初始化,ξj表示與用戶節點相連的資源節點集合:

(2)資源節點的消息更新,計算資源節點k向用戶節點j傳遞的信息:

式中:集合表示用戶節點在資源節點k上所有資源節點,但是不包括用戶節點j;ξk集合表示資源節點和用戶節點相連的節點。
(3)用戶節點上消息更新:

式中:ξjk集合表示用戶節點j與其關聯的資源節點,自身資源節點k除外。
(4)當t=T=tmax時,譯碼完成,碼字概率的計算方式為:

Max-Log-MPA算法通過數學方式和近似估算[9],將指數運算轉變為計算復雜度相對較低的求最大值運算,從而算法的復雜度大幅下降,但是這種方式也必然會造成消息的丟失,導致檢測性能相對較差[10]。
運用Jacobi算法公式可得:

式中:df表示資源節點的用戶數。則有:

進行最大迭代之后,每個用戶碼字輸出的概率為:

從式(9)可以看出,這里的資源節點更新消息是采用近似估算的方式,即:

所以上述方法會有一定的性能丟失。
在Max-Log-MPA算法的基礎上,定義相似度:

式(11)表示上一次迭代和本次迭代之間的相似程度,這里的相似度可以看成一種閾值,當迭代的相似度達到對應的閾值時,就可以將本次迭代的用戶信息用上次迭代的信息代替,即:

然后參與下一次迭代,當相似度閾值越大時,每次進行用戶信息迭代時忽略本次迭代的可能性越大,即造成的性能丟失越大;當相似度閾值越小時,每次進行用戶信息迭代時忽略本次迭代的可能性越小,即造成的性能丟失越小。當相似度閾值小到足夠每次迭代都能參與本次的用戶迭代時,本算法就等價于Max-Log-MPA算法。因此,可以采取統計的方式來記錄相似度閾值,選擇合適的閾值區間。這種算法的優勢是可以在復雜度和算法性能之間取舍,降低一定的性能來換取算法的可實現性,減少迭代的復雜度。
MPA算法的誤比特率(Bit Error Ratio,BER)性能和信噪比的變化曲線如圖4 所示,算法復雜度在迭代過程中主要取決于步驟2 和步驟3,因此算法的復雜度優化也主要集中在步驟2 和步驟3。系統仿真信道采用了瑞利(Rayleigh)信道,最大迭代次數tmax分別為1,2,4,8。在Rayleigh 信道下,相同信噪比下系統迭代次數逐漸變大時,MPA算法的誤碼率性能會逐漸提升。圖4 中當BER 為10-2false 時,最大迭代次數為tmax=2 時,MPA算法相比tmax=4 性能損失約1.3 dB,算法隨著迭代次數的增加逐漸收斂。由于算法收斂后判決值更精準,BER 性能也就更好。
圖5 給出了MPA算法和Max-Log-MPA算法在不同的tmax下的BER 性能變化曲線,仿真信道采用了Rayleigh 信道,系統的最大迭代次數tmax分別采用1,2,4,8。從中可以得出Max-Log-MPA算法和MPA算法一樣,隨著系統最大迭代次數的增加,BER 性能會有所提升;但是在tmax相同的時,相同BER 下MPA算法的信噪比丟失是比較大的。

圖5 Max-Log-MPA算法誤碼率曲線
Max-Log-MPA算法的復雜度優化仿真結果如圖6 和圖7 所示。圖6 中給出了tmax=10的情況下,相似度閾值從2 到1的BER 性能變化。圖7 展示了相同信噪比的情況下,BER 性能隨迭代次數的變化曲線。從圖6 中可以看出,隨著相似度從2 逐漸下降到1,BER 也會隨之下降,其中在相似度V=1時,在相同的tmax下,本文所提算法的BER 性能和沒有設置相似度的算法接近。在BER 為7.8×10-2時,V=1,V=1.1 和沒有設置相似度的算法性能損失最大接近0.1 dB。從圖7 中可以看出,相似度V∈[1,1.6]時BER 差距在7×10-3之內,其中,當V=1 時,本文算法和沒有設置相似度的算法收斂性能曲線BER 差距在10-3之內。以上仿真實驗得到的結果說明,可以在不同的相似度之間取舍,選擇合適的算法復雜度和性能。

圖6 Max-Log-MPA算法不同的相似度誤碼率曲線

圖7 Max-Log-MPA算法不同相似度收斂性能曲線
SCMA 系統作為NOAM的關鍵技術之一,大量學者針對降低SCMA 系統檢測算法的復雜度進行了研究。本文從MPA算法和Max-Log-MPA算法入手,分別對MPA算法和Max-Log-MPA算法進行了原理剖析,并對比了它們的性能,然后提出了基于Max-Log-MPA算法的一種改進方法并進行了仿真對比。本文提出的方法利用合理的相似度閾值來提高算法的性能,降低了算法的復雜度。該方法并不只是適用于Max-Log-MPA,還可以應用于其他算法,只要通過統計方式選擇合適的閾值并在對應算法復雜度和性能之間做出取舍,就可以處理具體的問題。