[發明專利]一種并行的極化碼譯碼方法及裝置有效
| 申請號: | 201610993556.4 | 申請日: | 2016-11-11 |
| 公開(公告)號: | CN106788453B | 公開(公告)日: | 2020-06-19 |
| 發明(設計)人: | 張小軍;高健;曾慶田;張德學;崔建明;董雁飛;隋榮全;張作文;陳晨;李俊 | 申請(專利權)人: | 山東科技大學 |
| 主分類號: | H03M13/09 | 分類號: | H03M13/09;H03M13/13 |
| 代理公司: | 長春吉大專利代理有限責任公司 22201 | 代理人: | 劉世純;王恩遠 |
| 地址: | 266000 *** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 并行 極化 譯碼 方法 裝置 | ||
1.一種并行的極化碼譯碼方法,具體步驟如下:
步驟一、構建譯碼樹,將長度為N的序列A按奇偶位拆分成兩個序列Aa和Ab,在Aa中0的位置放置固定位節點,1的位置放置信息位節點,以放置好的N/2個節點為葉子構建一棵完全二叉樹Ta,在Ab中0的位置放置固定位節點,1的位置放置信息位節點,以放置好的N/2個節點為葉子構建一棵完全二叉樹Tb;所構建的兩棵二叉樹Ta和Tb分別是兩個并行快速譯碼器PFDa和PFDb的譯碼樹;兩棵譯碼樹中的父節點根據孩子節點類型定義;
在兩棵譯碼樹中,當節點的葉子全為固定位時,節點是RATE0節點;當節點的葉子全為信息位時,節點是RATE1節點;當節點的葉子只有第一位是固定位,其余位是信息位時,節點是SPC節點;當節點的葉子只有最后一位是信息位,其余位是固定位時,節點是REP節點;當節點的葉子一半是固定位,一半是信息位時,節點是RATE0-RATE1節點;除去上述5類節點及其子樹,剩余的節點是OTHER型節點;
步驟二、譯碼器接收一幀信道α數據,所述信道α是一個序列,信道α的長度和譯碼使用的Polar碼字的長度相等,都為N,其取值為(α0,α1…αN-1);
步驟三、利用信道α的前一半(α0…αN/2-1)初始化譯碼樹Ta,利用后一半數據(αN/2…αN-1)初始化譯碼樹Tb,譯碼樹Ta用于并行快速譯碼器PFDa的譯碼,譯碼樹Tb用于并行快速譯碼器PFDb的譯碼;
步驟四、譯碼器PFDa和PFDb由根節點開始,按照深度優先的順序同時激活兩棵譯碼樹的節點;
根節點的輸入是信道α,除根節點外其他節點的輸入是中間值α,中間值α由F運算,如式(1)所示,或G運算,如式(2)所示,獲得;
中間值α是譯碼樹中每個節點進行譯碼時的輸入值,中間值α是個序列,中間值α的序列長度和激活節點的序列長度nv相等;
式(1)和式(2)中,αv表示激活節點的中間值α,αl表示激活節點左孩子的中間值α,αr表示激活節點右孩子的中間值α;激活節點的輸出是該節點的子碼估值,即序列β,其長度和該節點的長度相等,該節點長度等于該節點的葉子數;式(2)中,βl表示激活節點左孩子的子碼估值;
當兩棵譯碼樹中的RATE0、RATE1、REP或SPC節點被激活時,根據兩棵譯碼樹中激活節點的類型,譯碼器選擇不同的譯碼方法計算節點的子碼估值β
1)當PFDa和PFDb中的激活節點同為RATE0節點時,兩節點合稱為RATE0-P節點;此時,PFDa和PFDb中該節點的子碼估值β同時被判定為0,即式(10)所示;
βa[i]=βb[i]=0,0≤inv (10)
2)當PFDa和PFDb中的激活節點同為RATE1節點時,兩節點合稱為RATE1-P節點;當RATE1-P節點被激活,PFDa和PFDb根據式(11)進行獨立譯碼,分別獲得兩個子碼估值βa和βb;
3)當PFDa中的激活節點為SPC節點,PFDb中的激活節點為RATE1節點時,兩節點合稱為RATE1B節點,當RATE1B節點被激活,首先根據式(12)組合兩個譯碼器中相應激活節點的中間值α,之后對組合得到的中間值α進行硬判決,如式(13)所示,判決結果用序列HD表示;由于硬判決只有0和1兩種結果,因此序列HD是一個只含0、1的序列;之后對判決結果進行奇偶校驗,即檢測序列HD中1的個數,如式(14)所示,校驗結果用parity表示;如果HD中有偶數個1,即滿足奇偶校驗,則硬判決結果就是節點的子碼估值β,如果HD中有奇數個1,即不滿足奇偶校驗,則尋找絕對值最小的中間值α的判決結果,并對該判決結果進行取反運算,如果該判決結果是0,取反后變為1,如果該判決結果是1,取反后變為0;取反運算后的HD序列為該節點的子碼估值β,如式(15)和式(16)所示,其中j表示絕對值最小的中間值α的標號;
α=[αa αb] (12)
j=argi min|α[i]|,0≤inv (15)
4)當PFDa和PFDb中的激活節點同為REP節點時,兩節點合稱為REP-P節點,當REP-P節點被激活時,PLDa和PLDb根據式(17)獨立譯碼,分別獲得兩個子碼估值βa和βb;
5)當PFDa中的激活節點為RATE0節點,PFDb中的激活節點為REP節點時,兩節點合稱為REPB節點,兩個REPB節點的譯碼結果相同,是對兩個節點共2×nv個中間值α和的硬判決,根據式(18)和式(19),獲得兩個子碼估值βa和βb;
6)當PFDa和PFDb中的激活節點同為SPC節點時,兩節點合稱為SPC-P節點;當SPC-P節點被激活,PFDa和PFDb根據式(15)(16)獨立譯碼,分別獲得兩個子碼估值βa和βb;
7)當PFDa中的激活節點為RATE0-RATE1節點,PFDb中的激活節點為SPC節點時,兩節點合稱為SPCB1節點;當SPCB1節點被激活,PFDa將RATE0-RATE1節點的中間值α作為F運算的輸入做一次F運算,運算結果用αa表示;PFDb將SPC節點的中間值α作為F運算的輸入做一次F運算,運算結果用αb表示;將αa和αb作為公式(18)的輸入計算α,將α作為公式(19)的輸入,公式(19)的輸出βa用βa0表示,公式(19)的另一個輸出βb用βb0表示;
之后PFDa將αa和βa0作為G運算的輸入做一個G運算,按照正數為0負數為1的規則,將G運算的結果轉換成只含0、1的序列,用βa1表示,PFDb將αb和βb0作為G運算的輸入做一個G運算,同樣按照正數為0負數為1的規則將運算結果轉換成只含0、1的序列,用βb1表示;將[βa0,βa1]作為公式(20)的輸入,公式(20)的輸出就是RATE0-RATE1節點的β值,將[βb0,βb1]作為公式(21)的輸入,公式(21)的輸出就是SPC節點的β值;
8)當PFDa中的激活節點為REP節點,PFDb中的激活節點為SPC節點時,兩節點合稱為SPCB2節點;當SPCB2節點被激活,PFDa將REP節點的中間值α作為F運算的輸入做一次F運算,運算結果用αa表示;PFDb將SPC節點的中間值α作為F運算的輸入做一次F運算,運算結果用αb表示;將αa和αb作為公式(18)的輸入計算α,將α作為公式(19)的輸入,公式(19)的輸出βa用βa0表示,公式(19)的另一個輸出βb用βb0表示;
之后PFDa將αa和βa0作為G運算的輸入做一個G運算,PFDb將αb和βb0作為G運算的輸入做一個G運算;將兩個G運算的結果帶入公式(12),計算完公式(12)之后,再利用公式(13)(14)(15)(16)計算REP節點和SPC節點的β,分別用βa0和βb0表示;將βa0作為公式(20)的輸入,公式(20)的輸出就是REP節點的β值,將βb0作為公式(21)的輸入,公式(21)的輸出就是SPC節點的β值;
當OTHER型節點被激活時,譯碼器計算下一個激活節點的中間值α,為譯碼下一個節點做準備;
步驟五、當譯碼器PFDa和PFDb中的激活節點是RATE0、RATE1、REP、SPC時,將該節點β值乘以生成矩陣G獲得局部碼字估值u,完成一個激活節點的譯碼;所述矩陣其中m=log2nv,表示m次的克羅內克積,B為反序重排序列;
步驟六、譯碼器PFDa和PFDb更新激活節點號,激活下一個節點;
步驟七、重復步驟四至步驟六,至兩棵譯碼樹中所有的節點被激活;
步驟八、將譯碼器PFDa所有的局部碼字估值按獲得的順序拼接,就是譯碼器PFDa的碼字估值,將譯碼器PFDb所有的局部碼字估值按獲得的順序拼接,就是譯碼器PFDb的碼字估值;將譯碼器PFDa的碼字估值與譯碼器PFDb的碼字估值異或運算,并替換譯碼器PFDa的碼字估值;
步驟九、將譯碼器PFDa的碼字估值作為序列的前一半,即譯碼器PFDb的碼字估值作為序列的后一半,即合并兩個譯碼器的碼字估值,獲得序列即
步驟十、輸出序列一幀信道α數據的譯碼結束。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于山東科技大學,未經山東科技大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610993556.4/1.html,轉載請聲明來源鉆瓜專利網。
- 同類專利
- 專利分類





