一種編碼時隙aloha系統(tǒng)中的實時譯碼方法及裝置的制造方法
【技術領域】
[0001] 本發(fā)明涉及一種譯碼方法及裝置,特別涉及一種編碼時隙ALOHA系統(tǒng)中的實時譯 碼方法及裝置,屬于多址接入技術領域。
【背景技術】
[0002] 作為下一代移動通信技術,5G旨在滿足更高端更復雜的性能需求, 其目標之一就是提供無限的信息。作為5G的重要組成部分,接入機器類通信 (MTC,Machine-Type-Communication)擁有廣泛的潛在應用場景。MTC具有應用范圍廣,業(yè) 務模式多樣,終端數(shù)量巨大,小數(shù)據(jù)包,上行利用度高,受時間控制等典型特征。預計2020 年聯(lián)網(wǎng)移動終端用戶數(shù)將增至約500億,而很大一部分增加是由于大量MTC設備的引入。機 器類通信業(yè)務的巨量用戶特性給LTE無線接入網(wǎng)帶來了不小的挑戰(zhàn)。大量MTC設備的同時 接入會導致網(wǎng)絡的擁塞,因此找到有效的接入過載控制算法,以減輕或消除大量MTC設備 在接入過程中的擁塞問題是無線通信領域的重點關注問題。
[0003] 傳統(tǒng)的ALOHA協(xié)議的思想是只要用戶有數(shù)據(jù)要發(fā)送,就讓他們發(fā)送。這樣會產(chǎn)生 沖突從而造成幀的破壞。但是,由于廣播信道具有反饋性,因此發(fā)送方可以在發(fā)送數(shù)據(jù)的過 程中進行沖突檢測,如果發(fā)送方知道數(shù)據(jù)幀遭到破壞(即檢測到?jīng)_突),那么它可以等待一 段隨機長的時間后重發(fā)該幀。然而傳統(tǒng)ALOHA極容易沖突,造成了信息利用率不高的問題。
[0004] 最近,針對機器類通信這種要求高吞吐量而傳統(tǒng)協(xié)同技術不能夠使用的場景, E.Paolini等人提出了一種可以實現(xiàn)高吞吐量的隨機接入技術--編碼時隙ALOHA(CSA)。
[0005] CSA系統(tǒng)模型如附圖1所示,將一段時間Tfraiire分成N個時隙Tslc]t(N=Tf^Aslcit), 現(xiàn)在有M個用戶(User),每一個用戶嘗試在幾個時隙里(Slot)傳送信息,我們定義信道的 傳輸負載為L=M/N。用戶i會產(chǎn)生&個重復的包(i= 1,2,. . .,M),然后將這ri個重復 的包隨機的放到N個Tsklt中的ri個里傳播。
[0006] CSA可以用二分圖來表不CSA系統(tǒng),如附圖二所不,其中〇代表每一個傳送的包, 我們叫它用戶節(jié)點;□代表接收器接收到的包,我們叫它時隙節(jié)點。我們將接收到的包Y1 的相關向量記作Cl,C1代表第i個時間段接收到的包的疊加,其中"1"的位置代表該時間段 發(fā)送包的用戶,即包Y1是按照c,中"1"的位置選擇用戶發(fā)送包的疊加結果。在這個二分圖 中,每一個邊都有一定的丟失率e,也就是說e表示了包傳送過程中丟失的概率。所以這 個二分圖的表示形式顯示了低密度生成矩陣碼解碼和擦除信道的相似性。
[0007] 雖然CSA中使用了串行干擾消除(SIC)譯碼算法并且實現(xiàn)了高吞吐量,但是它仍 然存在著兩點缺點:一是SIC譯碼算法只有在傳輸結束的時候才能開始進行操作。所以,接 收器必須要為接收足夠的包而等待很長時間,這期間它不會進行任何譯碼操作,然后接收 器必須盡可能快的對所有接收的包進行譯碼。這會造成很大的延遲和接收器計算能力的浪 費。另一個缺點是SIC譯碼過程只能從沒有沖突的包開始進行,這也就造成了即使接收器 已經(jīng)接收到了k個相互獨立的向量(包)時譯碼仍然可能會失敗。
【發(fā)明內(nèi)容】
[0008] 本發(fā)明的目的是為解決上述SIC譯碼算法存在的問題,提供一種編碼時隙ALOHA 系統(tǒng)中的實時譯碼方法,該方法譯碼延遲低,吞吐量高,并且復雜度低。
[0009] 本發(fā)明的實質是CSA系統(tǒng)中的一種類似于高斯消元(GE)算法的實時譯碼(RTD) 算法,其核心是通過使用交換和異或的方式產(chǎn)生一個稀疏矩陣G,以降低對于每一個接收到 的包的譯碼操作數(shù)量。本發(fā)明方法適用于機器對機器及衛(wèi)星網(wǎng)絡等要求高吞吐量的通信環(huán) 境。
[0010] 本發(fā)明的目的是通過以下技術方案實現(xiàn)的:
[0011] -種編碼時隙ALOHA系統(tǒng)中的實時譯碼方法,包括如下步驟:
[0012] 步驟一、初始化,即建立一個MXM的矩陣G,其中每一個元素均為0 ;
[0013] 步驟二、接收編碼包yi以及與其相對應的向量(^,其中i= 1,2, . . .,n,n表示slot 的個數(shù),找到C1當中最左邊的" 1"的位置,并將其記作P1;
[0014] 步驟三、如果G[Pl]是空的,即G[Pl]為全零向量,則用C1替換G[Pl],轉到步驟五 進行異或判斷和操作;否則稱G[Pl]是已填充的,轉到步驟四;其中G[Pl]表示矩陣G的第 P1行;
[0015] 步驟四、根據(jù)如下條件判斷并對G[Pl]和(^進行操作:
[0016] 如果C1的度小于G[pJ的度(即C1中"1"的個數(shù)比G[pJ中"1"的個數(shù)少),則 交換G[Pl]和C1,相對應的碼包71與yP1也隨之交換;然后將新的c占G[pJ異或,同時將 yi與yPi異或,得到新的C' ;和y'i;對新的G[pJ轉到步驟五判斷并操作,對c' ;和y' ;將其 作為cdPyi并得到對應的p1后轉到步驟三;
[0017] 否則(即C1的度不小于G[Pl]的度),直接將c#G[Pl]異或,同時將y#ypi異 或,得到新的c'JPy'i,如果為全零向量,則丟棄c'i,否則(即不是全零向量),將 c';和y' ;作為c;和y;并得到對應的p;后轉到步驟三;
[0018] 步驟五、根據(jù)如下條件判斷并對G[Pl]和C1進行異或操作(即回代):
[0019] (1)檢查矩陣G中的第?1行,找到其中"1"所在的列k,如果k辛pi并且G中第k 行是已填充的,則將第P1行與第k行異或,用異或的結果替換第pi行;這個過程不斷迭代直 到第P1行中沒有滿足上述條件的" 1" ;
[0020] (2)與⑴類似,檢查矩陣G中的第?1列,找到其中"1"所在的行k,如果k辛Pl, 則將第P1行與第k行異或,用異或的結果代替原來的第k行;這個過程不斷迭代直到第pi 列中沒有滿足上述條件的"1";
[0021] 步驟六、對下一個接收的編碼包轉到步驟二,直到接收完所有的編碼包,此時,G中 的每一個行向量對應的新的^即為譯碼結果。
[0022] 一種編碼時隙ALOHA系統(tǒng)中的實時譯碼裝置,包括矩陣以及編碼包存儲模塊、編 碼包Y1以及與其相對應的向量ci接收模塊、ci操作模塊以及譯碼結果輸出模塊;編碼包存 儲模塊分別與(^操作模塊以及譯碼結果輸出模塊相連,編碼包yi以及與其相對應的向量ci 接收模塊分別與C1操作模塊以及譯碼結果輸出模塊相連;
[0023] 所述矩陣以及編碼包存儲模塊用于存儲矩陣G以及矩陣G各行向量對應的編碼 包;
[0024] 所述編碼包yi以及與其相對應的向量ci接收模塊用于接收依次到來的編碼包yi 以及與其相對應的向量C1,并在每接收到一個時將其輸出給所述(^操作模塊,以及在最后 一個包輸出給所述C1操作模塊并反饋后通知所述譯碼結果輸出模塊可以進行輸出;
[0025] 所述C1操作模塊用于對輸入的ci以及yi根據(jù)預設的規(guī)則對其以及矩陣以及所述 編碼包存儲模塊存儲的矩陣G和矩陣G各行向量對應的編碼包進行操作;
[0026] 所述譯碼結果輸出模塊用于在接收到所述編碼包71以及與其相對應的向量c^妾 收模塊發(fā)來的輸出通知后,等待C1操作模塊操作結束,將所述矩陣以及編碼包存儲模塊存 儲的矩陣G以及矩陣G各行向量對應的編碼包輸出。
[0027] 作為優(yōu)選,所述預設的規(guī)則為上述步驟三、步驟四和步驟五所述的規(guī)則。
[0028] 有益效果
[0029] 本發(fā)明提出的編碼時隙ALOHA系統(tǒng)中的實時譯碼方法與現(xiàn)有技術相比較具有如 下優(yōu)點:
[0030] 1)由于本發(fā)明方法可以將譯碼操作分布在所有的接收包的時間中進行,不需要等 到所有的包全部接收后再開始譯碼,所以降低了譯碼的延遲;
[0031] 2)實時譯碼方法相對于傳統(tǒng)的SIC譯碼提高了吞吐量,其吞吐量接近于GE算法;
[0032] 3)由于本發(fā)明方法使用了交換和異或的操作,不像傳統(tǒng)的GE算法需要在三角陣 構建結束之后再進行回代,這種方法可以從第一個接收到的符號開始進行操作,通過這樣 的方法就能夠保證生成的矩陣G為稀疏矩陣,從而使得本發(fā)明方法在譯碼計算復雜度上明 顯低于GE算法。
【附圖說明】
[0033] 圖1為CSA系統(tǒng)模型框圖。
[0034] 圖2為CSA系統(tǒng)模型的二分圖表示形式。
[0035] 圖3為本發(fā)明實施例一種編碼時隙ALOHA系統(tǒng)中的實時譯碼方法流程示意圖。
[0036] 圖4為本發(fā)明實施例一種編碼時隙ALOHA系統(tǒng)中的實時譯碼裝置結構組成示意 圖。
[0037] 圖5為各譯碼方法吞吐量對比仿真結果示意圖。
[0038] 圖6為本發(fā)明方法與GE算法復雜度對比仿真結果示意圖。
【具體實施方式】
[0039] 下面結合附圖與具體實施過程對本發(fā)明作進一步詳細說明。
[0040] 下面以采用本發(fā)明提出的CSA系統(tǒng)中的實時譯碼方法,對一個用戶數(shù)M= 5,時隙 數(shù)N= 6,每一個用戶的包重復數(shù)為2的CSA系統(tǒng)進行譯碼為例進行說明,Cl,c2,c3, ...,C6 分別為[00100] [11000] [00011] [00010] [01100] [10001],如圖3所示為本發(fā)明方法的流程 示意圖,其具體操作步驟如下