欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種降低存儲器消耗的極化碼譯碼方法和系統(tǒng)與流程

文檔序號:11146800閱讀:500來源:國知局
一種降低存儲器消耗的極化碼譯碼方法和系統(tǒng)與制造工藝

本發(fā)明屬于光通信領(lǐng)域,具體涉及一種用于光信道傳輸?shù)慕档痛鎯ζ飨牡臉O化碼譯碼方法和系統(tǒng)。



背景技術(shù):

寬帶光網(wǎng)絡(luò)是國家經(jīng)濟(jì)社會發(fā)展的重要基礎(chǔ),是國家工業(yè)化與信息化融合的重要紐帶,

隨著近年來視頻交互、點(diǎn)對點(diǎn)文件傳輸?shù)刃屡d業(yè)務(wù)的出現(xiàn),用戶對光網(wǎng)絡(luò)帶寬的需求也愈加強(qiáng)烈。目前全球正處于從低速10G/40G到高速的100G的過渡過程中,歐美運(yùn)營商已經(jīng)開展100G商用網(wǎng)絡(luò)建設(shè)。國內(nèi)的中國電信、中國移動、中國聯(lián)通也先后啟動了100G的實(shí)驗(yàn)室測試。因此,100Gbit/s光通信系統(tǒng)已經(jīng)處于大規(guī)模商用部署的開始階段。

2008年出現(xiàn)的極化碼從理論上第一次嚴(yán)格證明了在二進(jìn)制輸入對稱離散無記憶信道下,極化碼可以“達(dá)到”香農(nóng)容量,并且有較低的編碼和譯碼復(fù)雜度。從某種意義上說,極化碼理論上解決了近60年來信息論和編碼領(lǐng)域一直想要解決的問題。雖然極化碼的理論很優(yōu)美,但其實(shí)際性能還不太理想,盡管隨著列表連續(xù)消去譯碼算法(Successive Cancellation List(SCL)Decoding)等技術(shù)的提出,極化碼性能有所改善,但是上述譯碼算法需要消耗大量的存儲器來存放中間結(jié)果,不利于譯碼的硬件實(shí)現(xiàn)。



技術(shù)實(shí)現(xiàn)要素:

本發(fā)明的目的在于提供一種極化碼譯碼方法和系統(tǒng),降低存儲器的消耗,并方便硬件實(shí)現(xiàn)。

為了實(shí)現(xiàn)上述目的,本發(fā)明采用以下技術(shù)方案:

一種降低存儲器消耗的極化碼譯碼方法,包括:

譯碼樹的分塊處理:在譯碼樹中劃分出若干塊即子樹,子樹內(nèi)采用SCL譯碼算法,子樹外采用標(biāo)準(zhǔn)的SC譯碼算法;

譯碼操作的塊間轉(zhuǎn)移處理:針對譯碼樹的分塊進(jìn)行安排,將子樹編號索引,然后按照譯碼操作的時(shí)間順序逐一對各子樹進(jìn)行SCL譯碼,各子樹共享存儲空間。

進(jìn)一步地:

根據(jù)譯碼樹的分塊,僅在每一棵子樹上進(jìn)行SCL譯碼操作,保留若干條譯碼路徑留待最終選擇,而在子樹外的其他部分上進(jìn)行標(biāo)準(zhǔn)的SC譯碼操作,只保留局部最優(yōu)的譯碼路徑。

SCL譯碼的列表長度和分塊數(shù)量根據(jù)譯碼器性能要求和硬件資源進(jìn)行選擇。

極化碼SCL譯碼樹的分塊結(jié)構(gòu)包括:

譯碼樹的根節(jié)點(diǎn),其是所有譯碼路徑的起始,譯碼信息由此處開始發(fā)送;

針對第一層譯碼結(jié)果0的分塊,該分塊內(nèi)每一層譯碼都采用SCL譯碼方法,保留L條譯碼路徑,最終輸出滿足CRC條件的路徑,或者是路徑度量最高的路徑;該分塊的譯碼被首先執(zhí)行;

針對第一層譯碼結(jié)果1的分塊,該分塊內(nèi)每一層譯碼都采用SCL譯碼方法,保留L條譯碼路徑。最終輸出滿足CRC條件的路徑,或者是路徑度量最高的路徑;該分塊的譯碼在后執(zhí)行。

譯碼流程包括:

步驟301,讀入待譯碼的數(shù)據(jù);

步驟302,對第一個(gè)比特位進(jìn)行SC譯碼,所得結(jié)果存于譯碼樹的根節(jié)點(diǎn)中;

步驟303,將分塊數(shù)目置為2,分塊計(jì)數(shù)器置為0;

步驟304,判斷分塊計(jì)數(shù)器是否到達(dá)分塊數(shù)目,如果是,則轉(zhuǎn)入步驟308,如果否,則轉(zhuǎn)入步驟305;

步驟305,按照分塊計(jì)數(shù)器的數(shù)值選擇分塊,進(jìn)入分塊內(nèi)譯碼,塊內(nèi)譯碼采用SCL譯碼方法,保留若干條譯碼路徑,以待最終決策;

步驟306,將最終選定的譯碼路徑送入CRC校驗(yàn)?zāi)K,如果校驗(yàn)通過,則將其作為譯碼結(jié)果,如果校驗(yàn)不通過,那么將路徑度量最高的路徑作為結(jié)果輸出;

步驟307,存儲該分塊的譯碼路徑結(jié)果;轉(zhuǎn)入步驟304;

步驟308,輸出最終的譯碼結(jié)果。

極化碼SCL譯碼樹的分塊結(jié)構(gòu)包括:

譯碼樹的根節(jié)點(diǎn),其是所有譯碼路徑的起始,譯碼信息由此處開始發(fā)送;

譯碼樹的第二層節(jié)點(diǎn),該節(jié)點(diǎn)的譯碼采用SC方法,只保留LLR最高的譯碼路徑,向下層傳遞;

針對第二層第一個(gè)節(jié)點(diǎn)譯碼結(jié)果0的分塊,該分塊內(nèi)每一層譯碼都采用SCL方法,保留L條譯碼路徑,最終輸出滿足CRC條件的路徑,或者是路徑度量最高的路徑;該分塊的譯碼被首先執(zhí)行;隨后各分塊的SCL譯碼按照時(shí)間順次進(jìn)行;

針對第二層最后一個(gè)節(jié)點(diǎn)譯碼結(jié)果1的分塊,該分塊內(nèi)每一層譯碼都采用SCL方法,保留L條譯碼路徑,最終輸出滿足CRC條件的路徑,或者是路徑度量最高的路徑;該分塊的譯碼最后執(zhí)行。

譯碼流程包括:

步驟501,讀入待譯碼的數(shù)據(jù);

步驟502,對第一個(gè)比特位進(jìn)行SC譯碼,所得結(jié)果存于譯碼樹的根節(jié)點(diǎn)中;

步驟503,對第二個(gè)比特位進(jìn)行SC譯碼,所得結(jié)果存于譯碼樹的根節(jié)點(diǎn)中;保留所有的譯碼樹分支,向下層傳遞。

步驟504,將分塊數(shù)目置為2,分塊計(jì)數(shù)器置為0;

步驟504’,判斷分塊計(jì)數(shù)器是否到達(dá)分塊數(shù)目,如果是,則轉(zhuǎn)入步驟508,如果否,則轉(zhuǎn)入步驟505;

步驟505,按照分塊計(jì)數(shù)器的數(shù)值選擇分塊,進(jìn)入分塊內(nèi)譯碼,塊內(nèi)譯碼采用SCL譯碼方法,保留若干條譯碼路徑,以待最終決策;

步驟506,將最終選定的譯碼路徑送入CRC校驗(yàn)?zāi)K,如果校驗(yàn)通過,則將其作為譯碼結(jié)果,如果校驗(yàn)不通過,那么將路徑度量最高的路徑作為結(jié)果輸出;

步驟507,存儲該分塊的譯碼路徑結(jié)果;轉(zhuǎn)入步驟504’;

步驟508,輸出最終的譯碼結(jié)果。

一種降低存儲器消耗的極化碼譯碼系統(tǒng),包括:

譯碼樹的分塊處理裝置:在譯碼樹中劃分出若干塊即子樹,子樹內(nèi)采用SCL譯碼算法,子樹外采用標(biāo)準(zhǔn)的SC譯碼算法;

譯碼操作的塊間轉(zhuǎn)移處理裝置:針對譯碼樹的分塊進(jìn)行安排,將子樹編號索引,然后按照譯碼操作的時(shí)間順序逐一對各子樹進(jìn)行SCL譯碼,各子樹共享存儲空間。

本發(fā)明的極化碼譯碼算法是使用分塊列表連續(xù)消去的新譯碼方法,由于只在塊內(nèi)作SCL譯碼,即保留若干條譯碼路徑留待最終選擇,而在塊外只做普通SC譯碼,只保留局部最優(yōu)的譯碼路徑,同時(shí),塊內(nèi)的譯碼操作按照時(shí)分原則進(jìn)行處理,所以各塊的存儲空間可以共享,也就是說,無需對整個(gè)譯碼樹分配存儲空間,只需對一個(gè)分塊(子樹)分配存儲空間即可。本發(fā)明提供的極化碼譯碼算法能夠顯著降低存儲器的消耗,其不需要額外增加算法的復(fù)雜度,充分利用硬件實(shí)現(xiàn)的并行特性;通過適當(dāng)?shù)剡x取參數(shù),可以在較低的存儲器的前提下,取得比傳統(tǒng)譯碼算法更好的性能。

附圖說明

圖1極化碼SCL譯碼樹的結(jié)構(gòu);

圖2為本發(fā)明一種實(shí)施例的極化碼SCL譯碼樹的分塊方法示例圖(I);

圖3為本發(fā)明一種實(shí)施例針對分塊方法(I)的譯碼流程圖;

圖4為本發(fā)明另一種實(shí)施例的極化碼SCL譯碼樹的分塊方法示例圖(II);

圖5為本發(fā)明另一種實(shí)施例針對分塊方法(II)的譯碼流程圖。

具體實(shí)施方式

為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖以及實(shí)施例,對本發(fā)明進(jìn)行進(jìn)一步的詳細(xì)說明。理當(dāng)理解,此處所描述的具體實(shí)施例僅用于解釋本發(fā)明,并不用于限制本發(fā)明。

在本發(fā)明實(shí)施例中,一種降低存儲器消耗的極化碼譯碼方法,包括:

譯碼樹的分塊處理:在譯碼樹中劃分出若干塊即子樹,子樹內(nèi)采用SCL譯碼算法,子樹外采用標(biāo)準(zhǔn)的SC譯碼算法;

譯碼操作的塊間轉(zhuǎn)移處理:針對譯碼樹的分塊進(jìn)行安排,將子樹編號索引,然后按照譯碼操作的時(shí)間順序逐一對各子樹進(jìn)行SCL譯碼,各子樹共享存儲空間。

各子樹的譯碼操作按照時(shí)間順序執(zhí)行。模塊間共享存儲空間,因模塊(子樹)較小,譯碼路徑較短,所以存儲器消耗得以降低。

進(jìn)一步地,根據(jù)譯碼樹的分塊,僅在每一棵子樹上進(jìn)行SCL譯碼操作,保留若干條譯碼路徑留待最終選擇,而在子樹外的其他部分上進(jìn)行標(biāo)準(zhǔn)的SC譯碼操作,只保留局部最優(yōu)的譯碼路徑。

在本發(fā)明實(shí)施例中,列表長度和分塊數(shù)量可以根據(jù)譯碼器性能要求和硬件資源做靈活選擇。

在本發(fā)明實(shí)施例中,所述的譯碼樹的分塊專門針對列表連續(xù)消去譯碼算法中的譯碼樹進(jìn)行處理。標(biāo)準(zhǔn)的CRC輔助列表連續(xù)消去譯碼需要產(chǎn)生出若干個(gè)成功概率值較高的碼本組合,并從中挑選滿足CRC限制的碼本。在沒有碼本滿足CRC限制的情況下選擇成功概率最大的碼本組合。本發(fā)明將譯碼樹分為若干塊,也稱為子樹。SCL譯碼操作僅在每一棵子樹上進(jìn)行,而子樹外的其他部分上進(jìn)行標(biāo)準(zhǔn)的SC譯碼操作。

譯碼操作的塊間轉(zhuǎn)移針對譯碼樹的分塊進(jìn)行安排,將已有分塊編號索引,然后按照譯碼操作的時(shí)序關(guān)系逐一對分塊進(jìn)行SCL譯碼。

塊間存儲空間的共享能夠節(jié)省存儲空間。由于只在塊內(nèi)作SCL譯碼,即保留若干條譯碼路徑留待最終選擇,而在塊外只做普通SC譯碼,只保留局部最優(yōu)的譯碼路徑,同時(shí),塊內(nèi)的譯碼操作按照時(shí)分原則進(jìn)行處理,所以各塊的存儲空間可以共享,也就是說,無需對整個(gè)譯碼樹分配存儲空間,只需對一個(gè)分塊(子樹)分配存儲空間即可。

在不同實(shí)施例中,列表長度和分塊數(shù)量的確定可以根據(jù)硬件資源和譯碼性能綜合確定。如果硬件資源充足,則可以選擇較大的分塊和較長的列表,反之則選擇較小的分塊和較短的列表。

參見圖1,極化碼SCL譯碼樹的結(jié)構(gòu):

節(jié)點(diǎn)11:譯碼樹的根節(jié)點(diǎn),是所有譯碼路徑的起始,譯碼信息由此處開始發(fā)送。

路徑12:對于每一個(gè)非無效位而言,生成兩個(gè)不同的路徑,遍歷0、1兩種可能,同時(shí)針對兩種不同可能,。計(jì)算譯碼的似然比(LLR),并將該似然比向下一層傳遞。

節(jié)點(diǎn)13:每一層產(chǎn)生的節(jié)點(diǎn)都包含兩種信息,其一是譯碼值,即0或1;其二是基于LLR計(jì)算的譯碼路徑度量。

路徑14:為了避免譯碼復(fù)雜度的指數(shù)增長,只保留固定數(shù)量的譯碼路徑。也就是說,所有譯碼路徑中,具有最高度量的L條路徑被保留。

參見圖2,一種實(shí)施例中,極化碼SCL譯碼樹的分塊方法(I)基于如下結(jié)構(gòu):

節(jié)點(diǎn)21,譯碼樹的根節(jié)點(diǎn),是所有譯碼路徑的起始,譯碼信息由此處開始發(fā)送。

模塊22,針對第一層譯碼結(jié)果0的分塊。該分塊內(nèi)每一層譯碼都采用SCL譯碼方法,保留L條譯碼路徑。最終輸出滿足CRC條件的路徑,或者是路徑度量最高的路徑。該分塊的譯碼被首先執(zhí)行。

模塊23,針對第一層譯碼結(jié)果1的分塊。該分塊內(nèi)每一層譯碼都采用SCL譯碼方法,保留L條譯碼路徑。最終輸出滿足CRC條件的路徑,或者是路徑度量最高的路徑。該分塊的譯碼在模塊22后執(zhí)行。

圖3示出了針對分塊方法(I)的譯碼流程如下。

步驟301,讀入待譯碼的數(shù)據(jù);

步驟302,對第一個(gè)比特位進(jìn)行SC譯碼,所得結(jié)果存于譯碼樹的根節(jié)點(diǎn)中;

步驟303,將分塊數(shù)目置為2,分塊計(jì)數(shù)器置為0;

步驟304,判斷分塊計(jì)數(shù)器是否到達(dá)分塊數(shù)目,如果是,則轉(zhuǎn)入步驟308,如果否,則轉(zhuǎn)入步驟305;

步驟305,按照分塊計(jì)數(shù)器的數(shù)值選擇分塊,進(jìn)入分塊內(nèi)譯碼。塊內(nèi)譯碼采用SCL譯碼方法,保留若干條譯碼路徑,以待最終決策;

步驟306,將最終選定的譯碼路徑送入CRC校驗(yàn)?zāi)K,如果校驗(yàn)通過,則將其作為譯碼結(jié)果,如果校驗(yàn)不通過,那么將路徑度量最高的路徑作為結(jié)果輸出;

步驟307,存儲該分塊的譯碼路徑結(jié)果。轉(zhuǎn)入步驟304;

步驟308,輸出最終的譯碼結(jié)果。

參見圖4,極化碼SCL譯碼樹的分塊方法(II)基于如下結(jié)構(gòu):

節(jié)點(diǎn)41,譯碼樹的根節(jié)點(diǎn),是所有譯碼路徑的起始,譯碼信息由此處開始發(fā)送。

節(jié)點(diǎn)42,譯碼樹的第二層節(jié)點(diǎn),該節(jié)點(diǎn)的譯碼采用SC方法,并不維護(hù)多條譯碼路徑,只是保留LLR最高的譯碼路徑,向下層傳遞

模塊43,針對第二層第一個(gè)節(jié)點(diǎn)譯碼結(jié)果0的分塊。該分塊內(nèi)每一層譯碼都采用SCL方法,保留L條譯碼路徑。最終輸出滿足CRC條件的路徑,或者是路徑度量最高的路徑。該分塊的譯碼被首先執(zhí)行。隨后各分塊的SCL譯碼按照時(shí)間順次進(jìn)行。

模塊44,針對第二層最后一個(gè)節(jié)點(diǎn)譯碼結(jié)果1的分塊。該分塊內(nèi)每一層譯碼都采用SCL方法,保留L條譯碼路徑。最終輸出滿足CRC條件的路徑,或者是路徑度量最高的路徑。該分塊的譯碼最后執(zhí)行。

圖5示出了針對分塊方法(II)的譯碼流程如下。

步驟501,讀入待譯碼的數(shù)據(jù);

步驟502,對第一個(gè)比特位進(jìn)行SC譯碼,所得結(jié)果存于譯碼樹的根節(jié)點(diǎn)中;

步驟503,對第二個(gè)比特位進(jìn)行SC譯碼,所得結(jié)果存于譯碼樹的根節(jié)點(diǎn)中;保留所有的譯碼樹分支,向下層傳遞;

步驟504,將分塊數(shù)目置為2,分塊計(jì)數(shù)器置為0;

步驟504’,判斷分塊計(jì)數(shù)器是否到達(dá)分塊數(shù)目,如果是,則轉(zhuǎn)入步驟508,如果否,則轉(zhuǎn)入步驟505;

步驟505,按照分塊計(jì)數(shù)器的數(shù)值選擇分塊,進(jìn)入分塊內(nèi)譯碼。塊內(nèi)譯碼采用SCL譯碼方法,保留若干條譯碼路徑,以待最終決策;

步驟506,將最終選定的譯碼路徑送入CRC校驗(yàn)?zāi)K,如果校驗(yàn)通過,則將其作為譯碼結(jié)果,如果校驗(yàn)不通過,那么將路徑度量最高的路徑作為結(jié)果輸出;

步驟507,存儲該分塊的譯碼路徑結(jié)果。轉(zhuǎn)入步驟504’;

步驟508,輸出最終的譯碼結(jié)果。

在另一種實(shí)施例中,一種降低存儲器消耗的極化碼譯碼系統(tǒng),包括:

譯碼樹的分塊處理裝置:在譯碼樹中劃分出若干塊即子樹,子樹內(nèi)采用SCL譯碼算法,子樹外采用標(biāo)準(zhǔn)的SC譯碼算法;

譯碼操作的塊間轉(zhuǎn)移處理裝置:針對譯碼樹的分塊進(jìn)行安排,將子樹編號索引,然后按照譯碼操作的時(shí)間順序逐一對各子樹進(jìn)行SCL譯碼,各子樹共享存儲空間。

以上內(nèi)容是結(jié)合具體/優(yōu)選的實(shí)施方式對本發(fā)明所作的進(jìn)一步詳細(xì)說明,不能認(rèn)定本發(fā)明的具體實(shí)施只局限于這些說明。對于本發(fā)明所屬技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明構(gòu)思的前提下,其還可以對這些已描述的實(shí)施方式做出若干替代或變型,而這些替代或變型方式都應(yīng)當(dāng)視為屬于本發(fā)明的保護(hù)范圍。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
高陵县| 东方市| 普兰店市| 岢岚县| 普格县| 合肥市| 都兰县| 饶平县| 台东县| 西盟| 洪泽县| 武乡县| 临高县| 清苑县| 阿拉尔市| 垫江县| 绥中县| 珠海市| 银川市| 云龙县| 高邮市| 乐清市| 佛冈县| 广元市| 古浪县| 萨嘎县| 林周县| 福贡县| 仙居县| 许昌市| 邢台县| 泸溪县| 义乌市| 临夏县| 孙吴县| 宁阳县| 班玛县| 观塘区| 汪清县| 清水县| 哈尔滨市|