国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

一種低迭代次數(shù)的極化碼置信傳播譯碼算法*

2021-02-26 01:42:26王華華趙昊明
電訊技術(shù) 2021年1期
關(guān)鍵詞:信道容量譯碼比特

王華華,石 丹,趙昊明

(重慶郵電大學 通信與信息工程學院,重慶 400065)

0 引 言

根據(jù)香農(nóng)有噪信道編碼定理,存在可靠傳輸?shù)淖畲笮畔⑺俾始葱诺廊萘?,采用合適的信道編碼方法可以達到信道容量[1]。2009年,Arikan教授[2]提出了一種極化碼編碼方法,并且證明極化碼能達到二進制離散無記憶信道的信道容量。其中的置信傳播(Belief Propagation,BP)譯碼算法,基本原理來源于因子圖與和積算法[3]。與SC(Successive Concellation)算法[4-5]相比,利用軟信息判決方法的BP譯碼算法[6]擁有更低的譯碼時延和更大的吞吐量。該算法本質(zhì)的并行譯碼性質(zhì)非常適合使用現(xiàn)場可編程門陣列(Field Programmable Gate Array,FPGA)實現(xiàn)并行譯碼,但原始BP譯碼算法的復雜度較高。為了減少了BP譯碼算法的計算復雜度,工程中常利用等誤差的線性近似函數(shù)來代替算法中的雙曲函數(shù)[7]。這種使用線性近似的方法同樣也能用在SC算法中,并且僅需乘法和加法操作,非常易于硬件實現(xiàn)。為了解決BP譯碼算法誤幀率(Frame Error Rate,FER)相對較大的問題,有學者提出了基于BP的比特翻轉(zhuǎn)譯碼算法[8],采用預先構(gòu)造關(guān)鍵集合的方式,對不能通過CRC校驗的碼塊利用CS集合進行比特翻轉(zhuǎn),從而獲得更大的FER增益。在原始BP譯碼的基礎(chǔ)上引入信息糾正的策略同樣也能帶來可觀的FER增益[9]。一種基于G矩陣的早期終止方式[10],在每一次迭代完成后,都將判決碼字比特和信息碼字比特進行判決,判決結(jié)果兩者一致就終止譯碼,從而減少BP譯碼的迭代次數(shù)和處理單元(Processing Element,PE)計算次數(shù)。近年來,有學者將深度學習引入到BP譯碼中,通過使用交叉熵損失函數(shù)與提出的交叉熵多損失函數(shù)對深度神經(jīng)網(wǎng)絡(luò)譯碼器進行訓練,生成深度神經(jīng)網(wǎng)絡(luò)譯碼器也能達到降低復雜度和時延,提高譯碼性能的效果。

本文提出一種低迭代次數(shù)極化碼BP譯碼算法,該算法能進一步減少BP譯碼過程的迭代次數(shù),減少PE運算次數(shù),從而降低極化碼譯碼器的譯碼時延和功耗。

1 極化碼

極化碼是迄今為止唯一被嚴格證明能達到信道容量的信道編碼方式[2],通過信道聯(lián)合和信道分裂兩個步驟實現(xiàn)信道極化。當碼長N趨于無窮時,一部分信道趨于完全可靠,其對稱信道容量趨近于1;另一部分信道趨于完全噪聲,其對稱信道容量趨近于0。選k個最可靠的信道用于信息比特,另外N-k個信道固定為“0”,從而構(gòu)成碼率為k/N的(N,k)極化碼。

1.1 極化碼編碼

Arikan基于二進制輸入離散無記憶信道(Binary-discrete Memoryless Channel,B-DMC)提出了極化碼的編碼方案,其步驟如下:

Step1 估計極化信道可靠性。使用巴氏參數(shù)Z(W)來衡量信道的可靠性,W為刪除概率ε=0.5的二進制刪除信道(Binary Erasure Channel,BEC)。利用公式計算各個子信道的巴氏參數(shù):

(1)

(2)

式中:GN為生成矩陣,可利用公式(3)得到。

GN=BNF?n。

(3)

1.2 極化碼BP譯碼

圖1 置信傳播譯碼算法處理單元

PE的運算公式采用最小和近似簡化[8](見式(4)),其中最小和近似系數(shù)α=0.937 5。

(4)

(5)

(6)

2 低迭代次數(shù)極化碼置信傳播譯碼算法

圖2 CSFG與SC中的樹狀結(jié)構(gòu)等價圖

本文提出一種低迭代次數(shù)極化碼BP譯碼算法,該算法能加快CSFG早期停止BP譯碼算法中子信道收斂,從而進一步降低譯碼器迭代次數(shù)。算法步驟如下:

Step1 根據(jù)Ac得到所有R1節(jié)點[4]索引關(guān)鍵集合(Critical Set,CS),CS也是易錯比特集合。

Step2 在每次硬判決信息利用公式(4)向右運算的過程中,嘗試著對順序子信道進行凍結(jié)。利用公式(7)求得子信道的碼字序列估計值:

(7)

再利用公式(8)得到子信道信源序列估計值:

(8)

當子信道的碼字序列估計值中的比特滿足

(9)

(10)

已凍結(jié)的子信道在之后的迭代過程中將不再進行運算,相關(guān)PE也不再參與運算。但是在CSFG譯碼的過程中,會遇到含有信息比特的子信道由于對數(shù)似然比信息收斂較慢,經(jīng)過了多次迭代仍然不能將其凍結(jié)的情況,這使得迭代次數(shù)增加,從而導致譯碼時延和譯碼功耗的增加。

Step3 對未能凍結(jié)的單個子信道i(i∈CS)進行flipcnt(i)自加計數(shù),flipcnt(i)表示子信道i的迭代次數(shù),當多次迭代后若flipcnt(i)>flipmax就利用公式(10)對未凍結(jié)的子信道進行比特翻轉(zhuǎn):

(11)

式中:flipmax表示仿真中達到最少迭代次數(shù)時需要設(shè)置的最大比特翻轉(zhuǎn)迭代次數(shù),可由公式(12)得到:

(12)

式中:flip∈{1,2,…,tmax}表示子信道翻轉(zhuǎn)時所需的迭代次數(shù),當子信道迭代次數(shù)達到flip時,進行比特翻轉(zhuǎn)。公式(12)表示在不同碼長N和不同信噪比RSN情況下,遍歷所有flip使得平均迭代次數(shù)最少的flip,其中tercnt表示一次譯碼所需的迭代次數(shù)(譯碼錯誤時,當次tercnt為tmax),Simcnt為仿真次數(shù),設(shè)置為105次??蓪⒎抡嬷械玫降膄lipmax存入一張以N和RSN為索引的最大比特翻轉(zhuǎn)迭代次數(shù)表中,在譯碼過程中,直接通過查表得到flipmax。

低迭代次數(shù)極化碼BP譯碼算法偽代碼如下:

Step1 根據(jù)Ac得到所有R1節(jié)點易錯比特集合CS,當執(zhí)行后轉(zhuǎn)Step 2。

Step4 ifi+2n-j>frozcnt(j),if第k個信道滿足公式(9)子信道凍結(jié)條件時,轉(zhuǎn)Step 5,else轉(zhuǎn)Step 6 endif endif。/*跳過第k個子信道前面已經(jīng)凍結(jié)的信道,并判斷第k個子信道是否凍結(jié)*/

Step6 ifj=n,t++ endif;ift>tmax,結(jié)束譯碼,elsifj=n且子信道索引i∈CS時轉(zhuǎn)Step 7,else轉(zhuǎn)Step 8 endif。/*R向右是否運算到最后一級,迭代次數(shù)t=t+1,當t>tmax結(jié)束譯碼,否則不結(jié)束譯碼,判斷不能凍結(jié)的子信道索引i是否在易錯比特集合CS中*/

Step8 iffrozcnt(j+1)<2·frozcnt(j),frozcnt(j+1)=2·frozcnt(j);k=0。當執(zhí)行后轉(zhuǎn)Step 3 endif。/*下一級已凍結(jié)信道的最大位置索引frozcnt(j+1)至少是frozcnt(j)的兩倍。k清零后進入下一狀態(tài)嘗試對子信道凍結(jié)*/

圖3為本文提出譯碼算法的部分譯碼流程,圖3(a)~(b)中j狀態(tài)包含8個信道,這8個信道是原信道的子信道。嘗試著對j狀態(tài)的兩個子信道進行凍結(jié),發(fā)現(xiàn)k=2子信道不滿足凍結(jié)條件;對k=1子信道凍結(jié)后進入j+1狀態(tài),嘗試對未凍結(jié)的j+1狀態(tài)中k=1子信道進行凍結(jié)。從圖3(c)中發(fā)現(xiàn),其不滿足子信道凍結(jié)條件,且該子信道中信息比特索引i∈CS,則flipcnt(i)自加1,重新開始下一次迭代運算;當多次迭代后flipcnt(i)>flipmax,則對其進行比特翻轉(zhuǎn)。從圖3(d)中發(fā)現(xiàn),經(jīng)過多次迭代,j狀態(tài)中k=2子信道滿足凍結(jié)條件,至此j狀態(tài)的所有子信道凍結(jié)完畢,則對整個j狀態(tài)進行凍結(jié)并得到j(luò)狀態(tài)信源序列估計值譯碼結(jié)果。

圖3 低迭代次數(shù)極化碼BP譯碼算法部分譯碼流程圖

3 仿真與分析

圖4 最大比特翻轉(zhuǎn)迭代次數(shù)圖

圖5為極化碼譯碼性能仿真圖,仿真中所有算法迭代公式均采用α=0.937 5的最小和近似系數(shù)進行近似運算。本文所提出的低迭代次數(shù)極化碼BP譯碼算法在不同信噪比情況下采用圖4中最佳flipmax,在信噪比較低時(小于2 dB)其FER性能與G矩陣早期停止譯碼相似,但仍然存在微小的信噪比增益(0.03~0.06 dB);在信噪比較大時(大于2 dB)其FER性能與CSFG接近,但FER略高于后者(0.01~0.03 dB);在3 dB情況下,F(xiàn)ER比G矩陣早期停止譯碼低約0.11 dB。圖中基于BP的譯碼算法與基于SC的譯碼算法在性能上存在差距,但FER性能沒有惡化。

圖5 極化碼譯碼性能

圖6為(1 024,512)極化碼平均迭代次數(shù)仿真圖,其中本文所提出的低迭代次數(shù)極化碼BP譯碼算法采用圖4中不同信噪比所對應最佳的flipmax。仿真結(jié)果表明,本文所提出的算法比G矩陣早期停止譯碼和基于連通子因子圖的早期停止BP譯碼平均迭代次數(shù)都少,這意味著更快的譯碼速率和更低的譯碼時延,在信噪比為3 dB時比tmax=40的傳統(tǒng)BP譯碼減少了約53%,比G矩陣早期停止譯碼減少了約27%,比基于連通子因子圖的早期停止BP譯碼減少了約14%。

圖6 (1 024,512)極化碼平均迭代次數(shù)

圖7為(1 024,512)的極化碼處理單元歸一化平均計算次數(shù)。仿真結(jié)果表明,隨著信噪比的增加和迭代次數(shù)的減少,后3種算法的PE歸一化平均計算次數(shù)也相應地減少,其中低迭代次數(shù)極化碼BP譯碼算法的PE歸一化平均計算次數(shù)最低。在信噪比為3 dB時,其處理單元歸一化平均計算次數(shù)比tmax=40的傳統(tǒng)BP譯碼減少了約68%,比G矩陣早期停止譯碼減少了約50%,比基于CSFG的早期停止譯碼算法減少約10%。由此可以看出,本文提出的算法在低功耗譯碼方面也表現(xiàn)出了不錯的性能。

圖7 處理單元歸一化平均計算次數(shù)

4 結(jié) 論

本文提出了一種低迭代次數(shù)極化碼譯碼算法,能有效減少譯碼時延,降低處理單元功率消耗,從而降低譯碼器功率消耗。所提的并行譯碼算法可運用在對功耗要求較高的大規(guī)模機器類型通信,以及對時延要求較高的超可靠低延遲通信等5G場景下的極化碼譯碼中。

猜你喜歡
信道容量譯碼比特
基于MATLAB的A×B MIMO通信系統(tǒng)信道容量仿真
MIMO無線通信系統(tǒng)容量研究
基于校正搜索寬度的極化碼譯碼算法研究
比特幣還能投資嗎
海峽姐妹(2017年10期)2017-12-19 12:26:20
比特幣分裂
比特幣一年漲135%重回5530元
銀行家(2017年1期)2017-02-15 20:27:20
從霍爾的編碼譯碼理論看彈幕的譯碼
新聞傳播(2016年3期)2016-07-12 12:55:27
一種基于切換失敗概率和認知用戶信道容量聯(lián)合優(yōu)化的訪問策略
電信科學(2016年9期)2016-06-15 20:27:25
LDPC 碼改進高速譯碼算法
遙測遙控(2015年2期)2015-04-23 08:15:19
基于目協(xié)調(diào)函數(shù)的信道容量和最大熵的計算
宣武区| 盘山县| 永康市| 东阿县| 永济市| 清镇市| 交城县| 博爱县| 屏东县| 呈贡县| 建水县| 塘沽区| 文登市| 临泽县| 泽库县| 曲麻莱县| 通州市| 杭州市| 山东省| 庆元县| 孙吴县| 文化| 手游| 冕宁县| 安阳市| 正定县| 神木县| 蒙山县| 海林市| 江永县| 喀什市| 上思县| 繁峙县| 宝应县| 定陶县| 湘潭市| 县级市| 涞源县| 芮城县| 绥德县| 齐河县|