一種基於SCMA系統的DMPA解碼方法及解碼器架構與流程
2023-06-20 19:08:16 1

本發明涉及無線通信技術領域,尤其是一種基於SCMA系統的DMPA解碼方法及解碼器架構。
背景技術:
近年來,隨著無線通信技術在各領域的廣泛應用,社會通信需求呈現快速激增態勢,傳統通信技術日益無法滿足社會發展需要。據主要運營商和權威諮詢機構的預測,移動寬帶業務流量將在未來10年增長1000倍之多。為應對即將到來的巨大通信壓力,5G作為全新的移動通信技術應運而生。其中,「Gbps用戶體驗速率」將是5G的最關鍵技術指標。為實現這一超高速傳輸速率,5G將運用到大規模天線陣列、新型多址、超密集組網、新型網絡架構、全頻譜接入等重要技術。而新型多址技術作為5G實現的關鍵技術之一,將在整個系統中扮演至關重要的角色。新型多址技術將對發送信號進行高效疊加傳輸以使系統的接入能力得到進一步提升,從而保證5G網絡的大規模設備連接需求。
回溯多址技術,其自產生以來,經歷了相當長時間的演進和變革,在現代無線通信中有著無法替代的重要地位。傳統的多址技術包括頻分多址(FDMA)、時分多址(TDMA)、碼分多址(CDMA)、空分多址(SDMA)等,而4G技術中所使用的則是正交頻分多址(OFDMA)。多有這些多址技術都是正交層面上的多址技術,受到資源數量的極大限制。相比之下,在非正交多址技術中,接入用戶則可以成倍大於資源數,從而有效解決這一瓶頸。
稀疏碼分多址技術(SCMA)正是5G通信中期待使用的新型多址技術,並具備著重要的非正交特性。理論分析表明SCMA有著極其出色的過載承受能力以及資源復用能力,與傳統多址技術相比,其接入量可至少提升50%,並隨著系統內部往來互聯數目的增加可進一步提升。在關於SCMA的相關文獻中,針對解碼提出了基於最大後驗概率的解碼策略,使用該解碼策略的SCMA系統在保證高水平接入量的同時仍可維持較優的誤碼率水平,但是在其實現上有著極高的複雜度。
技術實現要素:
本發明所要解決的技術問題在於,提供一種基於SCMA系統的DMPA解碼方法,可以極大的降低SCMA系統的解碼複雜度,極大降低了硬體消耗,提高了硬體使用效 率。
為解決上述技術問題,本發明提供一種基於SCMA系統的DMPA解碼方法,包括如下步驟:
(1)初始化;設(K,N)SCMA系統,SCMA碼維度為K,星座維度為N,則該系統的最大用戶層數為其中,(K,N)SCMA系統為(4,2),最大用戶數為6;
這裡yk代表接收信號的第k位比特,xk,1,xk,2,xk,3分別代表與第k個資源節點相連的3個用戶層在此節點上相互重疊的3個比特,N0,k表示的即為第k個資源節點對應的環境中高斯噪聲的功率密度;
(2)資源節點更新;
其中,Rk代表的是第k個資源節點,m1,m2,m3=1,...,M代表與此資源節點相連的三個用戶層各自不同的發射符號;代表從與資源節點相連的那些用戶層傳遞給該資源節點的置信值,則代表從與用戶層相連的那些資源節點傳遞給該用戶層的置信值,是一種相反的傳遞方向;
(3)層節點更新;
其中,m=1,...,M代表發送符號集中不同的符號;步驟(3)結束後,返回步驟(2),並由此構成一次迭代;迭代次數的設置與實際的信道環境相關,當迭代次數滿足置信值 的收斂條件後,由步驟(3)進入步驟(4);具體的收斂條件為:根據目標誤碼率水平,設定閾值a(通常設置為a≤10-5);設第n-1次的資源節點更新置信值和層節點更新置信值分別為和第n次分別為和若所有的置信值滿足則判定為收斂,迭代結束;此時的迭代次數為n,針對不同的信道環境n的數值不同,且信道環境惡劣時,n的數值往往較大;
(4)概率計算與符號判決;
其中,Lj代表第j個用戶層;挑選出各用戶層具有最大概率值的符號,即為最終估計出的原始發送符號。
一種基於SCMA系統的DMPA解碼器架構,包括用於初始化的初始化單元、用於資源節點更新的資源節點更新單元、用於層節點更新的層節點更新單元和用於概率計算與符號判決的概率計算單元;初始化單元與資源節點更新節點相連,資源節點更新單元與層節點更新單元相連,層節點更新單元與概率計算單元相連;解碼器輸入為y、H和N0,輸出為
優選的,原始架構是以「步」的形式進行數據迭代更新,對「步」進行細化,得到更小的計算單位「階段」,在當前「步」沒有全部計算完的情況下即可跳入下一個「步」,使各個「步」的硬體模塊在同一時間都處於運轉狀態;在得到「階段級」時序後,採用摺疊技術進行資源復用上的優化。
優選的,將摺疊操作在每個「步」內進行,「步」內的摺疊過程可以描述為四個主要步驟:確定摺疊集、求取摺疊方程、壽命分析以及寄存器分配;在確定摺疊集步驟中,首先規定架構需要進行摺疊的摺疊階數以及摺疊集個數,然後依據各「步」的原始數據流圖DFG對圖中各類運算元件進行分組標號,將標號在集合內合理排列,以滿足DFG摺疊後路徑上延時非負的要求;在求取摺疊方程步驟中,則根據摺疊集和原始DFG路徑中的延時個數,按照摺疊復用公式計算出摺疊後DFG各路徑上的延時單元數目;在壽命分析步驟中,根據摺疊集和摺疊方程確定數據的輸入時刻以及最終的消亡時刻從而確定出其在系統中的存在時間長度以分析出系統所需要的最小寄存器個數並通過壽命 表和壽命圖的方式加以展示;在寄存器分配過程中,利用前向-後向的寄存器分配策略來達到前一步驟中確定的最小寄存器數目,該策略在數據分配時先就近分配給第一個未被佔用的寄存器,並在接下來的每一個時鐘周期中由前向後依次分配給緊隨其後的下一個寄存器直至達到最後一個寄存器或者數據已經消亡,對於達到最後一個寄存器的情況,數據又由後向前分配給第一個未被佔用的寄存器,並在下一個時鐘周期再次由前向後分配給後一個寄存器,如此反覆,直至全部分配完成。
本發明的有益效果為:利用MPA解碼原理在稀疏系統中低複雜度的性質提出DMPA算法,極大降低了SCMA系統的解碼複雜度,並針對DMPA算法的硬體架構作出時序和資源復用上的系列優化,得到極為簡單的低複雜度解碼器架構,使得在處理速度允許的範圍內,極大降低了硬體消耗,並提高了硬體使用效率。
附圖說明
圖1為本發明DMPA解碼方法的塊誤碼率的性能曲線。
圖2為本發明DMPA解碼方法的各層比特誤碼率的性能曲線。
圖3為本發明DMPA原始「步」級架構的示意圖。
圖4為本發明DMPA原始「步」級架構的時序圖。
圖5為本發明DMPA「階段」級架構的時序圖。
圖6為本發明DMPA步驟一待優化部分的數據流圖。
圖7為本發明DMPA步驟一待優化部分的壽命圖。
圖8為本發明DMPA步驟一待優化部分的寄存器分配過程示意圖。
圖9為本發明DMPA「階段」級時序的最終低複雜度架構。
具體實施方式
如圖1和2所示,一種基於SCMA系統的DMPA解碼方法,包括如下步驟:
(1)初始化;設(K,N)SCMA系統,SCMA碼維度為K,星座維度為N,則該系統的最大用戶層數為其中,(K,N)SCMA系統為(4,2),最大用戶數為6;
這裡yk代表接收信號的第k位比特,xk,1,xk,2,xk,3分別代表與第k個資源節點相連的3個用戶層在此節點上相互重疊的3個比特,N0,k表示的即為第k個資源節點對應 的環境中高斯噪聲的功率密度;
(2)資源節點更新;
其中,Rk代表的是第k個資源節點,m1,m2,m3=1,...,M代表與此資源節點相連的三個用戶層各自不同的發射符號;代表從與資源節點相連的那些用戶層傳遞給該資源節點的置信值,則代表從與用戶層相連的那些資源節點傳遞給該用戶層的置信值,是一種相反的傳遞方向;
(3)層節點更新;
其中,m=1,...,M代表發送符號集中不同的符號;步驟(3)結束後,返回步驟(2),並由此構成一次迭代;迭代次數的設置與實際的信道環境相關,當迭代次數滿足置信值的收斂條件後,由步驟(3)進入步驟(4);具體的收斂條件為:根據目標誤碼率水平,設定閾值a(通常設置為a≤10-5);設第n-1次的資源節點更新置信值和層節點更新置信值分別為和第n次分別為和若所有的置信值滿足和則判定為收斂,迭代結束;此時的迭代次數為n,針對不同的信道環境n的數值不同,且信道環境惡劣時,n的數值往往較大;
(4)概率計算與符號判決;
其中,Lj代表第j個用戶層;挑選出各用戶層具有最大概率值的符號,即為最終估計出 的原始發送符號。
在初始化步驟中,基於SCMA的內部節點網際網路,通過諸如環境噪聲、信道狀況和接收信號等外界信息計算出初始所需的符號條件概率,為接下來迭代解碼中的置信值互傳做好前期準備工作;在資源節點更新步驟中,資源節點更新公式表達為和積的形式,以完成對邊緣概率求取的逼近和近似;在層節點更新步驟中,主要進行歸一化操作,將前一步驟中計算出的置信值限制在區間[0,1]內,以方便算法在硬體中的實現;概率計算與符號判決步驟中,通過由經過一定迭代次數後得到的收斂置信值,輸出可靠軟信息,並依據軟信息計算出各用戶層各個符號的發送概率,挑選出各用戶層具有最大概率值的符號作為最終估計出的原始發送符號。
如圖3所示,基於上述的解碼流程,得到基本的解碼器架構,包括用於初始化的初始化單元、用於資源節點更新的資源節點更新單元、用於層節點更新的層節點更新單元和用於概率計算與符號判決的概率計算單元;初始化單元與資源節點更新節點相連,資源節點更新單元與層節點更新單元相連,層節點更新單元與概率計算單元相連;解碼器
輸入為y、H和N0,輸出為原始架構是以「步」的形式進行數據迭代更新的,具體時序示意圖如4所示。按照以「步」為單位的方式的最大的問題在於當運行當前「步」時,其他「步」的硬體模塊處於空閒狀態,使得整個系統的硬體使用效率並不高。於是對「步」進行細化,得到更小的計算單位「階段」,從而方便深度流水線在系統中的引入,在當前「步」沒有全部計算完的情況下即可跳入下一個「步」,使各個「步」的硬體模塊在同一時間都處於運轉狀態,相應的優化後的「階段」級時序圖如圖5所示。各個「步」的計算都已細化為更小的運算時隙,使深度流水線的穿插成為可能。
在得到「階段級」時序後,其相應的硬體架構依然非常複雜,進一步採用摺疊技術進行資源復用上的優化。由於整體的結構相當複雜龐大,很難從整體層面進行復用優化,因此將摺疊操作在每個「步」內進行,從而成為一種分塊的摺疊策略,既達到了復用的目的又極大降低了設計複雜度。「步」內的摺疊過程可以描述為四個主要步驟:確定摺疊集、求取摺疊方程、壽命分析以及寄存器分配。在確定摺疊集步驟中,首先規定架構需要進行摺疊的摺疊階數以及摺疊集個數,然後依據各「步」的原始數據流圖(DFG)對圖中各類運算元件進行分組標號,將標號在集合內合理排列,以滿足DFG摺疊後路徑上延時非負的要求;在求取摺疊方程步驟中,則根據摺疊集和原始DFG路徑中的延 時個數,按照摺疊復用公式計算出摺疊後DFG各路徑上的延時單元數目;在壽命分析步驟中,根據摺疊集和摺疊方程確定數據的輸入時刻以及最終的消亡時刻從而確定出其在系統中的存在時間長度以分析出系統所需要的最小寄存器個數並通過壽命表和壽命圖的方式加以展示;在寄存器分配過程中,利用前向-後向的寄存器分配策略來達到前一步驟中確定的最小寄存器數目,該策略在數據分配時先就近分配給第一個未被佔用的寄存器,並在接下來的每一個時鐘周期中由前向後依次分配給緊隨其後的下一個寄存器直至達到最後一個寄存器或者數據已經消亡,對於達到最後一個寄存器的情況,數據又由後向前分配給第一個未被佔用的寄存器,並在下一個時鐘周期再次由前向後分配給後一個寄存器,如此反覆,直至全部分配完成。通過以上的摺疊技術,對每個「步」對應的模塊進行「步」內摺疊,則可得到最終的「階段」級低複雜度架構。
DMPA「階段」級時序低複雜度架構的「步」內分塊摺疊復用將以步驟一初始化步驟的原始架構為例進行說明。步驟一待優化部分的數據流圖如圖6所示。
首先,如圖4所示,原始架構中共有2個輸入端,7個加法器以及3個乘法器,於是確定摺疊集個數為3,類型分別為輸入端摺疊集、加法器摺疊集以及乘法器摺疊集,並規定摺疊階數為7。按照圖4的方式對各運算元件進行分類標號,將同一類型的標號放在同一摺疊集中,並對這些標號在摺疊集內進行合理的位置安排以滿足摺疊後DFG各路徑上的延時個數非負。最終得到的摺疊集描述為:
接著,結合摺疊集和原始DFG中各路徑上的延時數目,利用摺疊計算公式求取各摺疊方程。摺疊計算公式為:
其中DF(U→V)為摺疊後路徑U→V上的延時個數,N為摺疊階數,PU為節點U的流水線階數,v和u分別為節點U和V在相應摺疊集中的摺疊序數。由此公式得到的步驟一待優化部分的摺疊方程為:
在得到摺疊集和摺疊方程後,就可以進一步對摺疊架構進行壽命分析,確定出各數據的輸入時刻以及消亡時刻從而得出數據在系統中的存在時間。通過對系統中同一時刻存在數據個數即「激活數」的統計找出同時存在的數據的最大個數,由此獲取摺疊架構實現所需的最小寄存器個數。依照此原理,得到相應的壽命表和壽命圖已分別示於表1和圖7中,並確定出架構所需的最小寄存器個數為8。
表1.DMPA步驟一待優化部分的壽命表。
最後,利用前向-後向的寄存器分配技術以達到上述步驟中確定的最小寄存器個數。分配過程中,數據從前向後選擇第一個未被佔用的寄存器,並在接下來的時鐘周期中依次分配至後一個寄存器直至達到末端寄存器或者數據已經消亡,若寄存器達到末端寄存器但是壽命仍為結束,則由後向前非配給緊鄰的第一個未被佔用寄存器,並在下一個時鐘周期再次由前向後分配給下一個寄存器,如此往復,直至將所有數據分配完成。依照此原理,步驟一待優化部分的寄存器分配示意圖如圖8所示。
完成上述步驟後即可得到步驟一最終的「步」內摺疊架構,依照同樣的原理可對步驟二、三、四進行相應的摺疊復用。在完成各「步」的摺疊操作後,就得到了圖9中所示的DMPA「階段」級時序的低複雜度架構。因此,本發明極大簡化了SCMA系統解碼器的複雜度,並使硬體使用效率得到提高。
儘管本發明就優選實施方式進行了示意和描述,但本領域的技術人員應當理解,只要不超出本發明的權利要求所限定的範圍,可以對本發明進行各種變化和修改。