本發(fā)明屬于通信技術(shù)領(lǐng)域,具體涉及一種部分極化的polar碼的構(gòu)造方法。
背景技術(shù):
2009年Arikan向世界公布了polar碼信道編碼理論,并且第一次證明了polar碼是當(dāng)前唯一能夠在理論上達(dá)到信道容量的糾錯編碼方案,具有較低的編譯碼復(fù)雜度,靈活簡便,極其容易操作。2016年11月14日至18日期間,在美國Reno召開的3GPP RAN1#87會議上,明確規(guī)定polar碼作為5G信道編碼應(yīng)用的短碼方案。
本領(lǐng)域內(nèi)公知,傳統(tǒng)的polar碼信道編碼是通過極化矩陣完成信道的糾錯編碼過程。但是傳統(tǒng)信道極化理論對于各個信道之間的極化并沒有做區(qū)別對待。最近發(fā)現(xiàn)了傳統(tǒng)信道極化方式會出現(xiàn)某些信道“過度極化”現(xiàn)象(參考文獻(xiàn)[1]:Mostafa El-Khamy,Hessam Mahdavifar,Gennady Feygin,Jungwon Lee,and Inyup K.Relaxed channel polarization for reduced complexity polar coding)。對如何控制過度極化的問題,參考文獻(xiàn)1是采用設(shè)置Bhattacharyya參數(shù)門限來控制極化程度,但這樣受信道變化約束,對應(yīng)的譯碼器任一層都有可能需要做調(diào)節(jié),不易控制。
另有文獻(xiàn)給出了polar碼在編碼時區(qū)分為碼率0信道和碼率1信道(參考文獻(xiàn)[2]:A.Alamdar-Yazdi and F.Kschischang.A simplified successive-cancellation decoder for polar codes)。因為出現(xiàn)過度極化的運算往往是發(fā)生在碼率1信道,而且最大碼率1信道組最易控制,最大碼率1信道組的極化存在與否不影響傳統(tǒng)polar碼譯碼方式。
技術(shù)實現(xiàn)要素:
本發(fā)明為了提高有限長polar碼的糾錯性能,簡化polar碼的極化結(jié)構(gòu),降低polar碼的編譯碼復(fù)雜度,提出一種部分極化的polar碼的構(gòu)造方法。
本發(fā)明提供的一種部分極化的polar碼的構(gòu)造方法,具體步驟如下:
步驟1:確定有限長polar碼的碼長N和碼率R,根據(jù)信道條件確定信息比特所在的子信道集合和凍結(jié)比特所在的子信道集合其中
步驟2:確定碼率1子信道和碼率0子信道并計算碼率1子信道組;
碼率1子信道為信息比特在極化矩陣?yán)飬⑴c極化運算對應(yīng)的子信道,碼率0子信道為凍結(jié)比特在極化矩陣?yán)飬⑴c極化運算對應(yīng)的子信道。本發(fā)明定義為碼率1子信道的第個集合組,表示i×τ運算的結(jié)果次序,那么碼率1子信道組滿足:τ∈{小于或等于N的任意自然數(shù)},其中i和τ是自然數(shù),i是第τ類碼率1子信道組的序號,
碼率1子信道組的確定方法為:從第N子信道索引開始到子信道集合中的最小索引子信道,計算出所有的碼率1子信道組。
步驟3:根據(jù)每一個碼率1子信道組,確定在極化矩陣中必須消去的1元素所在的行索引區(qū)域;
按照碼率1子信道組在極化矩陣中對應(yīng)的行索引,確定極化核為擴(kuò)展的極化矩陣中需要消掉的1元素的區(qū)域。
步驟4:確定小矩陣;
根據(jù)碼率1子信道組的元素個數(shù)選取極化核經(jīng)過克羅內(nèi)克積的擴(kuò)展后,產(chǎn)生一個小矩陣
步驟5:取消子信道部分極化作用;
把步驟4確定的小矩陣在對應(yīng)的極化核為擴(kuò)展的極化矩陣?yán)铮凑詹襟E3確定的碼率1子信道組行索引對應(yīng)的區(qū)域,從左到右進(jìn)行對比,確定和步驟4的小矩陣完全對應(yīng)的子矩陣塊,然后把子矩陣塊里的部分1置0,達(dá)到取消子信道部分極化的作用,實現(xiàn)polar碼的部分極化。
步驟6:用取消子信道部分極化作用的極化矩陣完成polar碼的造碼。
將步驟5中部分置0后的極化矩陣作為本發(fā)明的極化矩陣,從本發(fā)明的極化矩陣中提取生成矩陣G,生成凍結(jié)比特全為0的polar碼的碼字。
本發(fā)明的優(yōu)點和有益效果在于:
1)一種部分極化的polar碼的構(gòu)造方法,使用的異或門個數(shù)為與傳統(tǒng)的polar碼編碼相比較,可以做到節(jié)約個異或門,編碼速率也相應(yīng)的提高;表示向下取整。
2)一種部分極化的polar碼的構(gòu)造方法,創(chuàng)造出的碼字矢量能夠繼續(xù)適應(yīng)傳統(tǒng)不作修改的SC譯碼算法,但是與傳統(tǒng)SC譯碼算法相比,譯碼復(fù)雜度由原來的o(Nlog2N)降低為o(Nlog2N-NR log2NR)。
附圖說明
圖1是傳統(tǒng)任意polar碼的極化過程的迭代矩陣;
圖2是碼長N=16的polar碼極化矩陣;
圖3是碼率R=1/2時為{13,14,15,16}的完全對比示意圖,其中τ=2,i={1};
圖4是碼率R=1/2時為{11,12},{13,14},{15,16}和{17,18}的完全對比示意圖,其中τ=1,i={1,2,3,4};
圖5是在圖2的基礎(chǔ)上生成的本發(fā)明的polar碼極化矩陣,其中碼率R=1/2,信道集合
圖6是由圖5提出的本發(fā)明的polar碼生成矩陣G1;
圖7是碼率R=3/4時為{9,10,11,12,13,14,15,16}的完全對比示意圖,其中τ=3,i={1};
圖8是碼率R=3/4時分別為{9,10,11,12}和{13,14,15,16}的完全對比示意圖,其中τ=2,i={1,2};
圖9是碼率R=3/4時為{7,8},{9,10},{11,12},{13,14},{15,16}和{17,18}的完全對比示意圖其中τ=1,i={1,2,3,4,5,6};
圖10是碼長N=16,碼率R=3/4,信道集合的極化矩陣經(jīng)部分極化生成的本發(fā)明的polar碼極化矩陣;
圖11是由圖10提出的本發(fā)明的polar碼的生成矩陣G2;
圖12是碼長N=1024和碼長N=256的polar碼在碼率R=1/2時的誤比特性能仿真數(shù)據(jù)圖。
具體實施方式
下面結(jié)合附圖和具體實施方式對本發(fā)明作進(jìn)一步說明。
圖1是表示碼長為N的polar碼極化矩陣,F(xiàn)i,j表示極化單元矩陣i、j表示單元位置索引;圖2是N=16的polar碼原始沒有經(jīng)過列互換交織的極化矩陣,圖中左側(cè)邊緣為信道行索引編號,上邊緣為列編號。
下面按照具體實施步驟說明本發(fā)明所述的一種部分極化的polar碼的構(gòu)造方法:
步驟1:確定需要的有限長polar碼的碼長N和碼率R,根據(jù)信道條件確定信息比特所在的子信道集合和凍結(jié)比特所在的子信道集合
選取極化核經(jīng)過克羅克內(nèi)積的log2(N)次擴(kuò)展后產(chǎn)生的極化矩陣作為polar碼的基本極化矩陣。根據(jù)信道模型條件,挑選信息比特所在的子信道集合和凍結(jié)比特對應(yīng)的子信道集合然后確定碼率R。這里其中即log2N的取值為自然數(shù),R的取值為正實數(shù)。信息比特和凍結(jié)比特,以及信息比特所在的子信道集合和凍結(jié)比特對應(yīng)的子信道集合是根據(jù)polar碼已有的方法定義和選取的。本步驟是polar碼的初始條件的準(zhǔn)備。
例如當(dāng)N=16時,在高斯信道條件下,當(dāng)碼率R=1/2時,信息比特所在的子信道集合當(dāng)碼率R=3/4時,信息比特所在的子信道集合
步驟2:確定碼率1子信道和碼率0子信道并計算碼率1子信道組;
根據(jù)參考文獻(xiàn)[2]可得,碼率1子信道為信息比特在極化矩陣?yán)飬⑴c極化運算對應(yīng)的子信道,碼率0子信道為凍結(jié)比特在極化矩陣?yán)飬⑴c極化運算對應(yīng)的子信道。
本發(fā)明定義碼率1子信道組為所有碼率1子信道組的第組,即是第τ類第i個碼率1子信道組的組序號,表示i×τ產(chǎn)生結(jié)果的先后次序,其中τ≤log2N,i≤log2N,并且i和τ是自然數(shù)。
碼率1子信道組滿足的條件為:τ∈{小于或等于N的任意自然數(shù)},
碼率1子信道組的確定方法為:從第N子信道索引開始到子信道集合中的最小子信道索引結(jié)束,計算出所有的碼率1子信道組。
的具體求取方法如下:設(shè)α為一個碼率1子信道組中的最大索引,則求α基于
的運算。其中是碼率1子信道組的一階范數(shù),并且滿足mod(·)是求余運算。通過遍歷搜索就得到每個碼率1子信道組為并且滿足是信息比特所在的子信道集合。搜索碼率1子信道組是本發(fā)明的一個創(chuàng)新點。
在碼率1子信道組滿足上述條件的情況下,做以下假設(shè)和舉例:
設(shè)集合群作為所有碼率1子信道組的集合,其中無意義自然數(shù)m′、i′、l′滿足條件m′≤log2N、i′≤N/2、l′<2m′≤N,并且集合滿足表示第τ類碼率1子信道組集合。因此,存在碼率1子信道組中的元素對應(yīng)的信道索引k′滿足由于這些索引不能組成連續(xù)自然數(shù),那么不能組成一個碼率1子信道組,這個碼率1子信道組的劃分失敗,那么繼續(xù)下一個碼率1子信道組的計算。
例如,碼長N=8,如果信道集合只有子信道組{7,8}對應(yīng)的子信道索引7、8為個數(shù)為21的碼率1子信道組,元素{4}和{6}盡管屬于信息集,但是不屬于碼率1子信道組,那么集合{4,6,7,8}不能組成碼率1子信道組,因此集合{4,6,7,8}劃分為碼率1子信道組失敗。因此當(dāng)時,只有{7,8}成功劃分為碼率1子信道組。
如果那么子信道{1,2},{5,6},{7,8}滿足個數(shù)為21的碼率1子信道組,{5,6,7,8}滿足個數(shù)22的碼率1子信道組。
本步驟定義了碼率1子信道和碼率0子信道并確定了劃分碼率1子信道組的方法。
步驟3:根據(jù)每一個碼率1子信道組確定在極化矩陣中必須消去的1元素所在的行索引區(qū)域。
本發(fā)明的極化矩陣是在極化核為擴(kuò)展的的polar碼極化矩陣基礎(chǔ)上精簡掉不需要極化的1元素。按照碼率1子信道組對應(yīng)的行索引,確定極化矩陣中需要打掉的1元素的位置。與傳統(tǒng)極化作用相比,本發(fā)明的方法實現(xiàn)了該區(qū)域內(nèi)只有部分1起到極化作用的目的。
例如,碼長N=8,如果信道集合那么唯一的一個碼率1子信道組因此在極化矩陣中將必須消去的1元素標(biāo)示為斜體,即
如果信道集合那么3個的碼率1子信道組分別為和1個的碼率1子信道組因此在極化矩陣中將必須消去的1元素標(biāo)示為斜體,即和
本步驟確定了各個碼率1子信道組在極化矩陣中對應(yīng)的需要部分極化的行索引。
步驟4:確定小矩陣。
根據(jù)碼率1子信道組的元素個數(shù)選取極化核經(jīng)過克羅內(nèi)克積的擴(kuò)展后,產(chǎn)生一個小矩陣?yán)纾?dāng)時,小矩陣為當(dāng)時,小矩陣為本步驟是根據(jù)碼率1子信道組的元素個數(shù)確定小矩陣。
步驟5:取消子信道部分極化作用。
把步驟4確定的小矩陣在對應(yīng)的極化核為擴(kuò)展的極化矩陣?yán)?,按照步驟3確定的行索引區(qū)域,從左到右進(jìn)行對比,搜索確定與步驟4的小矩陣完全對應(yīng)的子矩陣塊,然后把搜索到的子矩陣塊里的部分1置0,達(dá)到取消子信道部分極化的作用。
由于極化矩陣中1的存在是決定極化運算是否存在的關(guān)鍵因素,因此部分極化的關(guān)鍵是極化運算取消,也就是將極化矩陣中的部分1置0,具體說明如下:
步驟5.1:取消奇偶上下相鄰子信道的極化方法,即polar碼最后一層譯碼算法。
polar碼順序消去譯碼在蝶形運算里,最左邊第一層取消譯碼的操作叫做取消最后一層極化,也叫取消奇偶上下相鄰子信道的極化;順序消去譯碼也叫SC譯碼。
在基本極化矩陣?yán)锏拿恳粋€單元矩陣Fi,j(2,1)元素代表兩個緊鄰信道W奇數(shù)和W偶數(shù)之間的后一層極化,如果對Fi,j(2,1)進(jìn)行置0操作,則取消W奇數(shù)和W偶數(shù)兩個奇偶上下相鄰子信道之間的后一層極化,其中i、j代表極化核為擴(kuò)展的極化矩陣?yán)锏臉O化核(子矩陣)的單元位置。
例如N=8的polar碼極化矩陣如果取消4對奇偶上下相鄰子信道之間的極化,那么極化矩陣變?yōu)槠渲泻隗w是被置0的元素。方法是:那么由此極化矩陣構(gòu)造的polar碼在SC譯碼里可以取消最后一層polar碼譯碼運算,而且基本polar碼譯碼算法形式保持不變。
步驟5.2:取消碼率1子信道對應(yīng)的極化矩陣行索引區(qū)域中元素的極化運算,即極化矩陣部分元素置0操作:
把步驟4確定的小矩陣按照步驟3確定的行索引區(qū)域,從左到右作對比做置0操作,即:這里(2,1)表示矩陣內(nèi)部F21模塊,即上述置0操作即將元素F21置為0。
例如,碼長N=8,信道集合只有子信道組{7,8}對應(yīng)的子信道索引7、8為個數(shù)為21的碼率1子信道組,那么那么根據(jù)步驟4對應(yīng)的小矩陣為子信道{4}和{6}盡管屬于信息集,但是不屬于碼率1子信道組,那么集合{4,6,7,8}不能組成碼率1子信道組,因此極化核為擴(kuò)展的極化矩陣的行索引{4,6,7,8}對應(yīng)的元素不能參與極化運算。那么根據(jù)步驟4的小矩陣在極化矩陣中確定的行索引區(qū)域作對比,按照元素位置做置0操作,得到矩陣其中黑體是被置0的元素。
如果那么子信道組{1,2},{5,6},{7,8}滿足個數(shù)為21的碼率1子信道組,其對應(yīng)的小矩陣為子信道組{5,6,7,8}滿足個數(shù)為22的碼率1子信道組,其對應(yīng)的小矩陣為根據(jù)得到的小矩陣在極化矩陣中確定的行索引區(qū)域做對比,得到4個矩陣,其中對比區(qū)域標(biāo)記為斜體,即和具體的置0操作過程為:
經(jīng)過置0取消部分極化操作后的極化矩陣為其中黑體是被置0的元素。
綜合上述表述和實施例可得,由步驟2計算得到碼率1子信道組和行索引α,然后利用小矩陣與極化矩陣進(jìn)行對比來確定相應(yīng)的元素的行列索引標(biāo)號,歸納總結(jié)推導(dǎo)出行列索引標(biāo)號公式:γ={{k·|wi|}+{j}},其中1≤j≤|wi|/2,i,j,x是行索引,y是列索引。本公式作如下解釋:確定碼率1子信道組后,就可以得到該集合的范數(shù)和行索引α,然后按照此索引公式計算就可以確定需要置0的元素的索引圖3、圖4和圖7、圖8、圖9中陰影部分的索引即為按照此方法計算得到的。利用小矩陣與極化矩陣對比的方法來計算需要置0區(qū)域的行列索引是本發(fā)明的一個創(chuàng)新點。
確定索引后,將這些行列索引對應(yīng)的元素1置0。圖5是把圖3和圖4里陰影部分的索引對應(yīng)元素置0后得到的本發(fā)明的極化矩陣,圖10是把圖7、圖8和圖9陰影部分的索引對應(yīng)的元素置0后得到的本發(fā)明的極化矩陣。所以本步驟是取消極化矩陣中部分元素的極化作用。
步驟6:取消子信道部分極化作用的極化矩陣在凍結(jié)比特為0的條件下,提出生成矩陣G。
信息比特碼字矢量在伽羅華域內(nèi)乘以該生成矩陣就得到凍結(jié)集為{0}N-|A|的polar碼的造碼矢量。從圖5和圖10的本發(fā)明的極化矩陣中提取生成矩陣,分別為圖6所示的生成矩陣G1和圖11所示的生成矩陣G2。
下面將本發(fā)明方法應(yīng)用到圖2所示的極化矩陣來做具體說明。
碼率R=1/2時,信道集合從最大子信道索引N=16開始遞減搜索上下相鄰子信道,搜索每個的起始索引值α滿足然后為的結(jié)束索引值,這里α和屬于信息集索引,由于所以從到搜索,當(dāng)時,集合組成碼率1子信道組。當(dāng)時,集合{13,14、}{15,16}組成碼率1子信道組。
對于用在圖2所示的極化矩陣中進(jìn)行行索引為列索引為任意值的比對,記錄每次比對完全重合時候的對應(yīng)的行列索引標(biāo)號,如圖3所示。在極化矩陣?yán)铮饕龢?biāo)號計算如下:
{(x,y)|(15,1+4i0),(16,1+4i0),(16,2+4i0),i0∈自然數(shù)}即如下極化矩陣索引標(biāo)號(15,1),(16,1),(16,2),(15,5),(16,5),(16,8),(15,9),(16,9),(16,10),(15,13),(16,13),(16,14)。計算得到的索引標(biāo)號為要進(jìn)行置0操作的位置。
當(dāng)集合組成碼率1子信道組。用F(2,1)在如圖2所示的極化矩陣中進(jìn)行行索引為{11,12},{13,14},{15,16}、列索引為任意值的對比,記錄每次比對完全重合時的F(2,1)對應(yīng)的行列索引集合,如圖4所示。索引標(biāo)號計算如下:
{(x′,y′)|(16,1+2i0),(14,1+2i0),(12,2+2i0),i0∈自然數(shù)}。
由以上可得到傳統(tǒng)極化矩陣(x,y)和(x′,y′)的所有索引,然后令和即得本發(fā)明極化矩陣,如圖5所示。進(jìn)而從本發(fā)明的polar碼極化矩陣提取生成矩陣G1,如圖6所示。信息比特碼字矢量在伽羅華域內(nèi)乘以該生成矩陣就得到凍結(jié)集為{0}N-|A|的polar碼的造碼矢量。
碼率R=3/4時,信道集合利用本發(fā)明方法,對圖2所示矩陣進(jìn)行處理。
圖7是為{9,10,11,12,13,14,15,16}的完全對比示意圖,其中τ=3,i={1}。圖8是分別為{9,10,11,12}和{13,14,15,16}的完全對比示意圖,其中τ=2,i={1,2}。圖9是為{7,8},{9,10},{11,12},{13,14},{15,16},{17,18}的完全對比示意圖,其中τ=1,i={1,2,3,4,5,6}。圖10為以上圖7、圖8和圖9完全對比后,將極化矩陣中部分元素1置0后所得的本發(fā)明的極化矩陣。圖11是根據(jù)圖10所示的本發(fā)明的極化矩陣提出的碼長N=16碼率R=3/4的polar碼生成矩陣G2。
如圖12所示,碼長N=1024和碼長N=256的polar碼在碼率R=1/2時經(jīng)傳統(tǒng)的polar碼編碼和本發(fā)明的polar編碼后,誤比特(BER)性能仿真數(shù)據(jù)圖。從圖12中可以看出,在碼長和碼率相同的條件下,本發(fā)明的polar碼BER性能要比傳統(tǒng)的polar碼有較好的增益。