一種極化碼和多比特偶校驗碼級聯的糾錯編碼方法
【技術領域】
[0001] 本發明屬于糾錯編碼領域,更具體地,屬于一種提升極化碼SCL譯碼算法糾錯性能 的級聯系統設計方案,具體為一種極化碼和多比特偶校驗碼級聯的糾錯編碼方法。
【背景技術】
[0002] 極化編碼作為一種新型的接近香農限的編碼方案提出后,由于理論完善、并且具 有較低復雜度的編譯碼算法,有利于工程實現而被廣泛研究。極化碼SCUSuccessive Cance 11 at i on Li s t,連續消除列表)譯碼算法提出后,仿真結果表明該譯碼算法在較低復 雜度0(L · Nlog(N))(L為路徑數量,N為碼長)下,譯碼糾錯能力可以達到最大似然譯碼器的 糾錯能力。但是對于采用SCL譯碼算法的中短碼長非級聯極化碼,其糾錯性能仍然與香農極 限存在較大差距,并且這個差距無法單獨從增大路徑數量進行彌補。因此,可以從級聯極化 碼的角度,來提升極化碼的SCL譯碼算法的糾錯性能。
[0003] 傳統的極化碼級聯方案中,部分方案(例如級聯LDPC(Low Density Parity Check,低密度奇偶校驗)碼)由于得到的級聯碼的特性不適合SCL譯碼算法,因此相對于采 用SCL譯碼算法的極化碼而言,其糾錯性能無明顯提升;部分方案(例如級聯CRC(Cyclical Redundancy Check,循環冗余校驗)碼)需要額外的CRC校驗電路,因此帶來一定的硬件開 銷。
【發明內容】
[0004] 針對現有技術的以上缺陷或改進需求,本發明提出一種極化碼和多比特偶校驗碼 級聯的糾錯編碼方法,目的在于降低編碼復雜度,便于工程實現,并且在無明顯提升譯碼復 雜度和存儲復雜度的情況下,顯著提升極化碼在SCL譯碼算法下的糾錯性能,并且該性能明 顯優于最大似然譯碼器譯碼性能。
[0005] 本發明提供的一種極化碼和多比特偶校驗碼級聯的糾錯編碼方法,該方法的編碼 過程如下:
[0006] 步驟1外編碼器編碼:信息比特序列在外編碼器進行多比特偶校驗編碼,得到外碼 碼字;
[0007] 步驟2外碼碼字映射:外碼碼字第一個至最后一個比特依次映射到極化碼第一個 至最后一個非固定比特;
[0008] 步驟3內編碼器編碼:對步驟2中極化碼的非固定比特序列進行極化碼編碼,得到 級聯碼碼字。
[0009] 作為上述技術方案的改進:步驟1中,外碼碼字中的校驗比特可以集中于外碼碼字 尾部,設碼長為N,信息比特數量為M,校驗方程數量為K,校驗比特位置序號集合為P= {M+1, M+2,M+3,. . .,M+K},集合P中的元素表示在外碼的這些比特位置上為校驗比特,也即外編碼 器編碼碼字.##中,比特序列^為信息比特,xl+f為校驗比特。
[0010] 上述步驟1中,外碼碼字中的校驗比特也可以在外碼碼字中等間隔分布,設碼長為 N,信息比特數量為M,校驗方程數量為K,外碼碼長為M+K,相鄰校驗比特的間距
其中
I示取X的下整數,校驗比特位置序號集合,
[0011] 上述步驟1中,外碼碼字中的校驗比特還可以在外碼碼字中不等間隔分布,即越靠 近外碼碼字前部,校驗比特分布越分散,越靠近外碼碼字尾部校驗比特分布越集中,按照校 驗比特位置分布的這種特征,得到校驗比特位置序號集合P。
[0012] 上述技術方案中,設碼長為N,信息比特數量為M,校驗方程數量為K,假設集中在尾 部的校驗比特的數量為K1,則前面等間隔分布的校驗比特的數量為K-K 1,在不等間隔分布 下,校驗比特的位詈序號集合為:
[0013] 所述多比特偶校驗編碼時,校驗比特僅校驗該比特之前的比特,而與之后的比特 無關。
[0014] 外碼還可以替換為多比特奇校驗碼。
[0015] 上述編碼方法的譯碼采用修正的SCL譯碼算法進行譯碼,即譯碼信息比特時根據 SCL譯碼算法進行比特判決,譯碼校驗比特時,根據校驗比特所在的偶校驗方程中信息比特 的判決結果進行校驗得到。
[0016] 總體而言,通過本發明所構思的以上技術方案與現有技術相比,具有以下有益效 果:
[0017] 1、本方案顯著提升極化碼糾錯性能
[0018] 采用SCL譯碼算法的中短碼長非級聯的極化碼,其糾錯性能趨近于最大似然譯碼 器譯碼性能,糾錯能力有限,并且即使增大SCL譯碼算法路徑數量,誤幀率性能不會明顯改 善,另外增大路徑數量會線性增大算法存儲復雜度和譯碼復雜度,不利于工程實現。在相同 路徑數量的SCL譯碼算下,本發明提出的級聯方案與非級聯的極化碼相比,本方案的糾錯性 能提升顯著,并且本方案的糾錯性能可以明顯突破最大似然譯碼器的糾錯性能。
[0019] 2、本方案無明顯譯碼復雜度和存儲復雜度的提升
[0020] 本方案采用修正的SCL譯碼算法,相對于原始SCL譯碼算法而言,其主要區別在于: 算法譯碼校驗比特時,直接通過該校驗方程信息比特的判決結果校驗得到。因此雖然譯碼 校驗比特時需要進行偶校驗,但是省略了原始SCL譯碼算法在譯碼這一類比特時產生的路 徑度量值排序、路徑刪減、路徑復制等操作。本方案在存儲復雜度上存在微弱的提升,也即 需要在編碼器和譯碼器上分別存儲外碼對應的校驗方程等信息,K個校驗方程的信息比特 和校驗比特位置信息的存儲量相對于整個系統而言是微弱的。
[0021 ] 3、本方案外碼編碼簡單,易于實現
[0022]本方案外碼采用多比特偶校驗碼,相對于其它級聯的外碼方案,本發明方法可以 使外編碼器的硬件電路設計簡單,有利于工程實現。
【附圖說明】
[0023]圖1為原始的SCL譯碼算法示意圖;
[0024]圖2為本發明給出的級聯方案的編譯碼流程圖;
[0025] 圖3為本發明給出的三種確定偶校驗碼校驗比特位置的示意圖;
[0026] 圖4為本發明給出的修正的SCL譯碼算法示意圖。
【具體實施方式】
[0027] 由于奇校驗碼和偶校驗碼具有相同的性質和檢錯能力,因此本發明中級聯的多比 特偶校驗碼可以替換為多比特奇校驗碼,為了便于對本方案進行說明,本文外碼均以多比 特偶校驗碼為例進行說明。
[0028] 為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對 本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并 不用于限定本發明。此外,下面所描述的本發明各個實施方式中所涉及到的技術特征只要 彼此之間未構成沖突就可以相互組合。
[0029] 對于碼長為N,發送信息比特數量為M的極化碼,極化編碼技術是通過一個極化電 路將N個獨立同分布的信道極化為N個比特信道(bit channel),在這N個比特信道中,信道 容量最大的M個比特信道上發送極化碼信息比特,該比特信道稱為非固定比特信道 (unfrozen bit channel),非固定比特信道上發送的比特也稱為非固定比特(unfrozen bit);其它N-M個比特信道稱為固定比特信道(frozen bit channel),固定比特信道上發送 的比特稱為固定比特(frozen bit)。
[0030] 設極化碼極化電路輸入端輸入序列為=叫M2,M3,···,&),比特ui到UN依次在第I 個到第N個比特信道上發送,極化碼非固定比特信道序號集合為 』={叫,《2,<33,..., <3,1}£{1,2,3,...,蹲,固定比特信道序號記為厶£:,集合厶中的元素滿足當1《1 <j 時,ai<aj.則非固定比特序列記為,…,;極化碼固定比特在收發 兩端已知,固定比特序列~設置為全0。當已知M個信息比特時,可確定非固定比特序列UA, 從而確定極化電路輸入端輸入序列<。極化碼編碼為Cf ,Gn為極化碼生成矩陣。
[0031 ] 極化碼SCL譯碼算法是SC(Successive Cancellation,連續消除)譯碼算法的改 進。SCL譯碼算法譯碼時從比特U1到Un依次進行判決,得到輸入序列的譯碼結果。SCL算法 譯碼過程中最多可保留L(L為SCL譯碼算法的參數)條譯碼路徑,在譯碼m時,每條路徑上已 經譯碼出的序列唯一表征該路徑。原始SCL譯碼算法步驟如下:
[0032]初始化輸入:i = l,路徑數量L;
[0033] Stepl:判斷i是否小于等于N,是,則進入Step2;否,則進入Step5;
[0034] Step2:判斷m是否為固定比特,是,則進入Step3;否,則進入Step4;
[0