分段crc輔助的極化碼編譯碼方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于信道編碼領(lǐng)域,尤其涉及分段循環(huán)冗余校驗碼(Cyclic Redundancy Check,CRC)輔助校驗的極化碼編譯碼方法。
【背景技術(shù)】
[0002] 極化碼是Arikan Erdal于2007年提出的一種信道編碼方法,在二進(jìn)制離散無記 憶信道下,當(dāng)碼長為無限長時,極化碼是現(xiàn)有可證明的的唯一一種能夠達(dá)到信道容量的編 碼方法。然而在碼長為有限長時,極化碼的SC譯碼性能要低于現(xiàn)有的Turbo碼和LDPC碼。 針對這個問題,Ido Tal提出SCL譯碼算法一一即通過增加存儲可能存在的譯碼路徑來提 升性能,但是這種通過增加存儲可能的譯碼路徑會浪費大量的寄存器,由于在一次完整的 譯碼過程中絕大多數(shù)的寄存器都不會被訪問就要被釋放,這就導(dǎo)致寄存器利用率很低,并 且在低信噪比的時候性能比較差。為了提高極化碼的最小距離,Ido Tal提出使用CRC輔 助校驗極化碼來改善低信噪比時的性能,當(dāng)使用CRC輔助SCL譯碼算法時,極化碼的性能要 優(yōu)于Turbo碼和LDPC碼的性能。然而在HARQ協(xié)議中通過傳統(tǒng)的CRC輔助校驗的方法,會 大大增加譯碼時延,其高時延根本無法滿足實時通信的需求。
[0003] 針對于SCL譯碼算法存在的寄存器利用率較低和CRC校驗時延高的問題,本發(fā)明 使用分段CRC的結(jié)構(gòu),對極化碼的編譯碼進(jìn)行改進(jìn)。傳統(tǒng)的CRC輔助校驗是在接收端譯碼 結(jié)束后,對L條保留的路徑做CRC校驗;分段CRC輔助校驗在接收端每次譯碼到分段部分的 結(jié)尾時,就對L條保留的路徑做CRC校驗,直到最后一層的結(jié)尾進(jìn)行校驗完才完成譯碼;這 種分段CRC輔助的方式在譯碼的時候就可以重復(fù)使用寄存器以達(dá)到提高寄存器利用率。在 HARQ協(xié)議中,傳統(tǒng)的CRC輔助校驗是在全部譯碼結(jié)束并且沒有通過CRC校驗的情況下,需要 重傳全部碼字并再一次對整個碼字進(jìn)行譯碼;而分段CRC輔助校驗是,如果第一層或者前 幾層沒有通過CRC校驗就可以直接進(jìn)行重新傳輸碼字再次譯碼,這樣就節(jié)省很長的譯碼時 間,從而得到很大的降低時延。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明針對現(xiàn)有SCL譯碼算法下寄存器利用率低和CRC校驗時延高的問題,提出 一種分段CRC輔助的極化碼編譯碼方法,該方法在編碼端使用一種分段CRC的信息校驗結(jié) 構(gòu)進(jìn)行編碼產(chǎn)生碼字,并且在譯碼端設(shè)計了對應(yīng)分段CRC輔助極化碼的譯碼算法,對接收 的碼字進(jìn)行分段的譯碼校驗,直到最后一層譯碼校驗結(jié)束才完成整個極化碼譯碼及CRC校 驗。
[0005] 本發(fā)明的技術(shù)方案為:
[0006] 碼長為N比特,其中N = 2"的極化碼的碼字,碼率為R,總的信息位比特為K = NR 比特,犧牲一定的信息比特來校驗極化碼從而提升譯碼性能,假設(shè)使用CRC的長度為K-k比 特,使用分段CRC校驗,把信息平均分為M段,為k/M比特的信息加(K-k) /M比特CRC校驗 信息就構(gòu)成了每段的信息結(jié)構(gòu),如圖2所示。信息比特經(jīng)過編碼、信道傳輸,最后對接收端 的接受信息進(jìn)行分段的SCL譯碼、校驗,最大保存路徑為L條。
[0007] 為了方便的描述本發(fā)明的內(nèi)容,首先對本發(fā)明所使用的CRC結(jié)構(gòu)進(jìn)行介紹:
[0008] CRC碼是線性,分組的系統(tǒng)碼。整個CRC碼為信息碼后拼接校驗碼。
[0009] 分段CRC輔助的極化碼編譯碼方法,包括如下步驟:
[0010] S1、將信息平均分為M段,即每段的信息結(jié)構(gòu)為k/M比特的信息加(K-k)/M比特 CRC校驗信息,對分段后的信息進(jìn)行CRC輔助編碼,輔助編碼后進(jìn)行校驗;
[0011] S2、對生成的碼字經(jīng)過信道進(jìn)行傳輸;
[0012] S3、接收端對接收到的信息進(jìn)行譯碼,得到信息估計,具體為:
[0013] S31、在接收端對第i段的N/M比特接收信息進(jìn)行SCL譯碼,最大保存路徑為L條, 其中,1彡i彡M-I ;
[0014] S32、當(dāng)S31所述第i段的N/M比特接收信息譯碼結(jié)束,對S31所述L條保留路徑 做CRC校驗,校驗結(jié)束后輸出路徑到i+Ι段的譯碼器中;
[0015] S33、重復(fù)第S31-S32,遍歷M段的接收信息完成SCL譯碼并進(jìn)行CRC校驗。
[0016] 進(jìn)一步地,Sl所述校驗方法具體如下:
[0017] S11、在第i段信息比特中,每產(chǎn)生k/M個信息比特位,就對所述k/M個信息比特位 進(jìn)行CRC編碼并產(chǎn)生(K-k)/M個校驗位,將所述(K-k)/M個校驗位級聯(lián)在所述k/M個信息 比特位后面構(gòu)成一組,則構(gòu)成第i段長度為K/M的信息比特。
[0018] S12、遍歷M段信息比特,產(chǎn)生M段長度為K/M的信息比特,即共得到K位比特信息 參與極化碼編碼,得到分段CRC輔助的極化碼碼字。
[0019] 進(jìn)一步地,S32所述輸出路徑的具體方法為:
[0020] 若S31所述L條保留路徑只有一條路徑通過CRC校驗,則輸出該路徑,
[0021] 若S31所述L條保留路徑中通過CRC校驗的路徑條數(shù)大于等于2,則輸出通過CRC 校驗的路徑中似然概率最大的一條路徑,
[0022] 若S31所述L條保留路徑中沒有路徑通過CRC校驗,則輸出所述L條保留路徑中 似然概率最大的一條路徑。
[0023] 本發(fā)明的有益效果是:
[0024] 本發(fā)明基于傳統(tǒng)CRC輔助極化碼SCL譯碼的方法,分段CRC輔助的極化碼信息結(jié) 構(gòu),提出了分段CRC輔助的極化碼編譯碼方法,該方法在編碼端使用一種分段CRC的信息校 驗結(jié)構(gòu)進(jìn)行編碼產(chǎn)生碼字,并且在譯碼端設(shè)計了對應(yīng)分段CRC輔助極化碼的譯碼算法,對 接收的碼字進(jìn)行分段的譯碼校驗,最終在沒有性能損失的情況下,極大的節(jié)省了寄存器存 儲空間,為硬件實現(xiàn)提供很大的便利。同時,在HARQ協(xié)議中使用多層CRC輔助極化碼的編 譯碼方法。如果第一層或者前幾層譯碼結(jié)束后CRC校驗沒有通過,可以直接反饋并重傳,不 用等到全部譯碼結(jié)束CRC校驗不通過的話再重傳,這樣就可以降低時延,為實時通信帶來 很大的便利。
【附圖說明】
[0025] 圖1是傳統(tǒng)CRC輔助校驗的極化碼信息結(jié)構(gòu)。
[0026] 圖2是分層CRC輔助校驗的極化碼信息結(jié)構(gòu)。
[0027] 圖3是多CRC輔助極化碼對應(yīng)的譯碼算法流程圖。
[0028] 圖4是傳統(tǒng)CRC輔助SCL譯碼算法的存儲結(jié)構(gòu)。
[0029] 圖5是分層CRC輔助SCL譯碼算法的存儲結(jié)構(gòu)。
[0030] 圖6是基于多CRC輔助極化碼的HARQ協(xié)議系統(tǒng)框圖。
【具體實施方式】
[0031] 下面結(jié)合實施例和附圖,詳細(xì)說明本發(fā)明的技術(shù)方案。
[0032] 碼長為N= 1024比特的極化碼的碼字,碼率R = O. 5,總的信息位比特為K = NR = 512比特,犧牲一定的信息比特來校驗極化碼提升譯碼性能,假設(shè)使用CRC的長度為K-k = 32比特,使用分段CRC校驗,把信息平均分為M = 4段,為k/M = 120比特的信息加(K-k) / M = 8比特CRC校驗信息就構(gòu)成了每段的信息結(jié)構(gòu),