TWI731696B - 基於信度傳播之極化碼解碼方法 - Google Patents

基於信度傳播之極化碼解碼方法 Download PDF

Info

Publication number
TWI731696B
TWI731696B TW109117423A TW109117423A TWI731696B TW I731696 B TWI731696 B TW I731696B TW 109117423 A TW109117423 A TW 109117423A TW 109117423 A TW109117423 A TW 109117423A TW I731696 B TWI731696 B TW I731696B
Authority
TW
Taiwan
Prior art keywords
vector
log
decoding
likelihood ratio
retained
Prior art date
Application number
TW109117423A
Other languages
English (en)
Other versions
TW202145723A (zh
Inventor
闕志達
蘇倍陞
Original Assignee
國立臺灣大學
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 國立臺灣大學 filed Critical 國立臺灣大學
Priority to TW109117423A priority Critical patent/TWI731696B/zh
Priority to US17/023,062 priority patent/US11316540B2/en
Application granted granted Critical
Publication of TWI731696B publication Critical patent/TWI731696B/zh
Publication of TW202145723A publication Critical patent/TW202145723A/zh

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information
    • H03M13/458Soft decoding, i.e. using symbol reliability information by updating bit probabilities or hard decisions in an iterative fashion for convergence to a final decoding result
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1191Codes on graphs other than LDPC codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3746Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

本發明係一種基於信度傳播之極化碼解碼方法,係當使用信度傳播解碼法對極化碼進行解碼迭代。超過迭代次數上限且經循環冗餘校驗失敗時,從各次迭代所產生之複數個對數似然比向量中,選擇複數個右訊息或左訊息的對數似然比向量並藉以產生另一組複數個新的對數似然比向量(稱為候選向量群體),並作為後續信度傳播解碼的右訊息或左訊息的起始值,進行再一次信度傳播解碼迭代及循環冗餘校驗。當解碼結果通過校驗,即結束,否則再繼續以上程序直到已達候選向量群體產生的最高次數,即以迭代結束時所有對數似然比向量中最可靠的對數似然比向量作為軟性解碼結果。

Description

基於信度傳播之極化碼解碼方法
本發明係有關於極化碼的解碼方法,尤指一種基於信度傳播之極化碼解碼方法。
在2008年,土耳其畢爾肯大學的埃達爾·阿利坎(Erdal Arıkan)教授發明了極化碼(英語:Polar code),根據數學證明,極化碼利用循序消除(Successive Cancellation,簡稱SC)解碼且碼長趨近於無限長的情況下可達到二進制輸入離散無記憶信道(Binary-input Discrete Memoryless Channel,簡稱:BI-DMC)的通道容量。
有鑑於此,最近極化碼已被第三代合作夥伴計劃(英語:3rd Generation Partnership Project,簡稱:3GPP)選擇為下一代無線通信標準中增強型行動寬頻(Enhanced Mobile Broadband,簡稱:eMBB)中控制信道的錯誤更正碼。儘管循序消除解碼提供了一種低複雜度的解碼解決方案,但是當碼長越短極化現象越不明顯,這使得其塊錯誤率比其他知名的錯誤更正碼來的更差,例如:渦輪碼(Turbo code)和低密度奇偶校驗(LDPC)碼。因此,引入列表式循序消除解碼,可以提高短碼的解碼性能(請參閱:I. Tal and A. Vardy, “List Decoding of Polar Codes,” IEEE Trans. Inf. Theory, vol. 61, no. 5, pp. 2213–2226, May 2015.)。
此外,透過循環冗餘校驗(Cyclic Redundancy Check ,簡稱CRC)或奇偶校驗碼的驗證使列表的循序消除解碼器以可忽略的額外成本來接近最大似然解碼性能。由於低計算複雜度和出色的解碼性能,利用循環冗餘校驗輔助的列表循序消除法(CRC aided successive cancellation list,簡稱:CA-SCL)普遍被認為是極化碼的最佳解碼算法(請參閱:K. Niu and K. Chen, “CRC-aided decoding of polar codes,” IEEE Commun. Lett.,vol. 16, no. 10, pp. 1668–1671, Oct. 2012)。但是,基於循序消除的算法本質上是循序的,這點會導致高解碼延遲和低吞吐量。隨著碼長長度的增加,這一項天生的缺點越來越嚴重,使得基於循序消除的解碼器變得較難以接受。
另一方面,極化碼的發明者還提出了另一種解碼算法(請參閱E. Arikan, “Polar codes: A pipelined implementation,” in Proc. 4th Int. Symp. on Broad. Commun. ISBC 2010, pp. 11-14, July 2010),即利用信度傳播(Belief Propagation,BP),其中包含可平行執行的訊息傳遞過程,因此可以解決基於循序消除算法高延遲與低吞吐量的問題。 然而,由於極化碼擁有相對較高密度的奇偶校驗矩陣(parity check matrix),因此較易發生不利解碼的循環現象(looping effect),使得傳統基於信度傳播之極化解碼器的性能不如其他的解碼方法。
為了克服這個障礙,已經有許多人提出了多種方法來改進利用信度傳播來解碼的性能,例如下列的文獻: 1.         Elkelesh, M. Ebada, S. Cammerer, and S. T. Brink, ‘‘Belief propagation decoding of polar codes on permuted factor graphs,’’ in Proc. IEEE Wireless Commun. Netw. Conf.(WCNC), Apr. 2018, pp. 1–6. 2.         N. Doan, S. A. Hashemi, M. Mondelli, and W. J. Gross. (2018). ‘‘On the decoding of polar codes on permuted factor graphs.’’ [Online]. Available: https://arxiv.org/abs/1806.11195 3.         Elkelesh, M. Ebada, S. Cammerer, and S.T.Brink, “Belief propagation list decoding of polar codes,” IEEE Commun. Lett.,vol. 22, no. 8, pp. 1536-1539, Aug. 2018. 4.         S. Sun, S. G. Cho, and Z. Zhang, “Post-Processing Methods for Improving Coding Gain in Belief Propagation Decoding of Polar Codes,” in Proc. of 2017 IEEE Global Communications Conference, Dec. 2017, pp. 1–6.。
在先前研究的努力下,信度傳播的解碼器已獲得改進,且可達到與列表循序消除法(SCL)類似的解碼性能,但是它仍然無法與循環冗餘校驗輔助的列表循序消除(CA-SCL)解碼器相提並論。另外,由於極化碼等效之奇偶校驗矩陣的密度相對較高,因此使用傳統信度傳播解碼算法容易產生不可靠的位元,導致解碼失敗。這意味著隨著信度傳播解碼的迭代次數增加,解碼結果的錯誤率可能不會變得更好,甚至更差,這也是造成傳統信度傳播解碼性能不足的主因之一。因此,開發出一種解碼算法可以在複雜度適中,且沒有明顯錯誤率下限(error floor)的情況下,達到與循環冗餘校驗輔助且中等大小列表的循序消除法有接近的解碼性能,是一亟待解決的問題。
有鑑於先前技術的問題,本發明之一目的,將傳統信度傳播解碼失敗後,將迭代過程中的最左列右訊息(R message)或最右列左訊息(L message)中選取一定數量的訊息(對數似然比(Log-likeihood ratio,簡稱:LLR)向量)成一集合,再經一定程序產生新的訊息集合,並將集合中各訊息輸入信度傳播繼續進行信度傳播解碼迭代,以期其中之一可獲得解碼成功。本發明之另一目的,當前述的再次利用信度傳播解碼又失敗時,再次選取迭代過程中所產生的最左列右訊息或最右列左訊息中一定數量的訊息(對數似然比向量)並經一定程序產生新的訊息(對數似然比向量)集合,再次將集合中各訊息(對數似然比向量)輸入信度傳播解碼迭代。而若經過一定次數產生新訊息集合,並輸入信度傳播解碼迭代後仍然解碼失敗,則以在迭代過程中可靠度最高的對數似然比向量中為軟性解碼輸出。
根據本發明之一目的,係提供一種基於信度傳播之極化碼解碼方法,當使用信度傳播解碼法對極化碼進行解碼失敗時,該解碼失敗係指達到迭代次數後,解碼結果仍無法通過循環冗餘校驗(CRC),且每次迭代過程中,都會產生一組跟碼長相符數量的對數似然比向量。而該方法在此前提下,會先確認是否已達建立候選向量群體次數上限( P),若尚未達到,則會從前次迭代所產生的對數似然比向量中,根據適合度分數選擇 X個向量做為留存向量,再由 X個留存向量衍生出 Y個衍生向量,結合出候選向量群體,作為後續的第二次信度傳播解碼的輸入值,以該輸入值為初始值進行再次信度傳播解碼迭代及循環冗餘校驗,當再次信度傳播解碼法進行解碼且解碼結果通過循環冗餘校驗成功,即結束。若失敗則會持續上述流程直到解碼結果通過循環冗餘校驗成功或已達建立候選向量群體之次數上限( P)。
其中,留存向量群體衍生出衍生向量係以突變法所產生的,突變法係指由留存向量群體中選擇一對數似然比向量,翻轉此對數似然比向量至少一個位元的對數似然比的正負號,以產生衍生向量。
其中,留存向量群體衍生出衍生向量係由組合法產生的,組合法係指則是由留存向量群體任意挑選複數個留存向量,並藉以組合不同位元的對數似然比而產生衍生向量。
其中,當達到該建立候選向量群體次數上限( P)時,則選擇最後一次適合度分數最高(最可靠)之對數似然比向量作為解碼結果輸出。
本發明具有下列之一或多個優點: 1.         改良後信度傳播解碼的算法使傳播過程(解碼過程)更有效,在較低的訊噪比(SNR)區域能夠找到傳統信度傳播解碼方法找不到的可能解。 2.         在高訊噪比區域中,解碼過程不易受到區域最佳解的影響,使得錯誤率下限的現象並不顯著,整體解碼性能獲得改善。 3.         透過在信度傳播的過程與建立群體的機制翻轉某些位元與位元重新組合的方式來探索更寬廣的碼空間,可以較易找到最可能的解碼結果。
為利  貴審查員瞭解本發明之發明特徵、內容與優點及其所能達成之功效,茲將本發明配合附圖,並以實施例之表達形式詳細說明如下,而於文中所使用之圖式,其主旨僅為示意及輔助說明書之用,故不應侷限本發明於實際實施上的專利範圍。
在說明本發明的詳細技術內容之前,將針對極化碼及信度傳播解碼極化碼進行簡要說明。
極化碼:
極化碼是一種線性分組碼,可以使用生成矩陣對( N, K)極化碼進行編碼,即
Figure 02_image001
,其中N表示總碼長, K表示訊息位元長度,
Figure 02_image003
表示
Figure 02_image005
的位元反轉矩陣,並且
Figure 02_image007
是極化生成內核。編碼過程可以表示為
Figure 02_image009
,其中
Figure 02_image011
是碼字,向量
Figure 02_image013
包含訊息位元和凍結位元。利用通道極化現象,原本
Figure 02_image015
個獨立通道會被等效分成
Figure 02_image015
的極化通道。可以利用通道容量來衡量每個極化通道的可靠度,而對所有極化通道的可靠度排名就是所謂的極性序列(polar sequence)。訊息位元分配給較可靠的通道,其餘相對不可靠的通道位置將放置已知的凍結位元。其中編碼器和解碼器都會事先知道凍結位元的位置和數值。
有許多方法可以建置極性序列,例如巴氏參數(請參閱:S. Zhao, P. Shi, and B. Wang, “Designs of bhattacharya parameter in the construction of polar codes,” in Proc. of Wireless Communications, Networking and Mobile Computing(WiCOM), 7th international conference on, Wuhan, September 2011, pp. 1–4.),高斯逼近法(請參閱:P. Trifonov, “Efficient design and decoding of polar codes,” IEEE Trans. Commun., vol. 60, no. 11, pp. 3221-3227, Nov. 2012.)和β展開法(請參閱:G. He, J. C. Belfiore, I. Land, G. Yang, X. Liu, Y. Chen, R. Li, J. Wang,Y. Ge, R. Zhang, and W. Tong, “b-expansion: A Theoretical Framework for Fast and Recursive Construction of Polar Codes,” in Proc. of IEEE Global Commun. Conf.(GLOBECOM), Dec. 2017, pp. 1–6))。
在本發明之實施例中,我們使用3GPP於5G協定規範的極性序列,此極性序列是專門為CA-SCL解碼器設計的。儘管越來越多的證據顯示,最適合信度傳播解碼器的極性序列不同於基於循序解碼所設計的極性序列,但本發明所提出的方法仍能獲得良好的結果。但是本發明在實際實施時,建置極性序列的方式並不局限於此。
利用信度傳播解碼極化碼:
圖1是短極化碼的因子圖( N=8),N表示碼長,圖中
Figure 02_image017
表示列數和行數。 圖1中有多個階段,一共有
Figure 02_image019
個階段,每個階段都包含 N/2個處理運算單元(processing element,簡稱PE),其結構如圖2所示。每個處理運算單元(PE)包含兩類訊息,分別為左訊息與右訊息,每類訊息包含兩個不同的訊息,其中左訊息(
Figure 02_image021
)表示第 j階段第 i位索引的從右到左的訊息,右訊息(
Figure 02_image023
)表示第 j階段第 i位索引的從左到右的訊息。每個處理運算單元(PE)中的訊息傳播規則如下:
Figure 02_image025
Figure 02_image027
Figure 02_image029
Figure 02_image031
(1) 其中
Figure 02_image033
可以被進一步近似成如下列所示:
Figure 02_image035
其中
Figure 02_image037
為一常數,其中
Figure 02_image039
係代表
Figure 02_image041
Figure 02_image023
,而
Figure 02_image043
係表示
Figure 02_image045
Figure 02_image041
在訊息傳遞前,部分的左訊息(
Figure 02_image021
)和右訊息(
Figure 02_image023
)將會以下式初始化:
Figure 02_image047
公式(2) 其中, LLR i 代表從通道估測後的第 i個bit的事前對數似然比。
Figure 02_image049
公式(3)
值得一提的是,在傳統的信度傳播迭代過程,在最左列和最右列的左訊息(
Figure 02_image051
)和右訊息(
Figure 02_image053
)是保持不變。然而,在本發明中,我們將更改最左列右訊息(
Figure 02_image053
)或是最右列左訊息(
Figure 02_image051
)。而解碼更新的規則為,在每次迭代中,將從左到右傳播右訊息(
Figure 02_image023
)以更新每列中的右訊息(
Figure 02_image023
),然後再從右到左傳播左訊息(
Figure 02_image021
)以更新每一列的左訊息(
Figure 02_image021
),上述順序相反亦可進行解碼。每完成一次迭代後,皆可以通過以下公式於因子圖的最左側獲得軟式解碼結果。即
Figure 02_image055
公式(4) 其中
Figure 02_image057
代表第 i個位元的事後對數似然比。
為了降低解碼延遲時間,本發明使用了5G協定中定義的循環冗餘校驗(CRC)作為提前中止的標準,也就是於每次迭代完成後都去檢查其循環冗餘校驗是否成立。事實上,此循環冗餘校驗碼原先是用於輔助列表的循序解碼解碼器,用以選擇最可能的碼字。除了利用循環冗餘校驗來提前中止迭代之外,我們還考慮了收斂錯誤的情況,其代表錯誤的硬解碼會在連續的傳播過程中趨於穩定。一旦檢測到這種情況,由於進一步的迭代是徒勞的,因此本發明的解碼器將終止迭代並移至下一個階段,將最左列右訊息(
Figure 02_image053
) 或是最右列左訊息(
Figure 02_image051
)進行有條件的位元翻轉與重組,藉以產生新的最左列右訊息或最右列左訊息,再接續進行信度傳播,以求跳出錯誤狀態,有效利用迭代程序找出正確的解碼結果。
根據上述的前提,本發明係一種基於信度傳播之極化碼解碼方法,請參閱圖3所示,(S301)~(S302)係使用傳統信度傳播解碼法對極化碼進行解碼的步驟,當使用信度傳播解碼法對極化碼進行解碼失敗時,該解碼失敗係指達到迭代次數後,解碼結果仍無法通過循環冗餘校驗(CRC),將進行下列步驟: (S303)  確認是否達到該建立新的候選向量群體的次數上限( P):當尚未達到該次數上限( P)時,再依挑選留存向量群體的步驟(S304)進行,當達到該次數上限時,進行(S307)步驟; (S304) 挑選留存向量群體:從各次迭代所有產生的對數似然比向量之中,根據適合度分數留存 X個對數似然比向量,每一個被留存的對數似然比向量在此稱之為留存向量,而全部的留存向量在此被稱之為留存向量群體, X為正整數; (S305)建立候選向量群體:由留存向量群體衍生出 Y個衍生向量,而全部的衍生向量則稱之為候選向量群體,作為後續信度傳播解碼的輸入值。其中,留存向量群體衍生出候選向量群體的方式至少包括突變法與組合法,但本發明實際實施時並不限於此,舉凡將留存向量(即最左列右訊息(
Figure 02_image053
) 或是最右列左訊息(
Figure 02_image051
))進行有條件的位元翻轉或重組藉以產生新的最左列右訊息或最右列左訊息,即是本發明所稱之衍生向量,而有關突變法與組合法在下文另有詳細說明; (S306)再次信度傳播解碼:將候選向量群體中的 Y個衍生向量依序或平行輸入進行再次信度傳播解碼,解碼結果再進行步驟(S302)循環冗餘校驗,當解碼結果通過循環冗餘校驗,即解碼成功。否則回到步驟(S303)。 (S307)選擇最後一次迭代中適合度分數最高之對數似然比向量,進行軟性解碼,並將軟性解碼結果輸出。進一步而言,當更新候選向量群體的次數超過事先定義的次數上限,且還未通過循環冗餘校驗,此時就認為已經沒有機會成功解碼整塊完整資訊,只能追求較低的位元錯誤率。適合度分數較高的對數似然比向量有很大的機率具有較少的錯誤位元數,因此便會挑選適合度分數最高的事後對數似然比向量,作為解碼器的軟性解碼輸出。
在本發明中,(S304)挑選留存向量群體的步驟,進一步舉例而言,當解碼過程中,若傳統信度解碼的迭代次數為10次,則每因子圖階段(如圖2所示)皆會產生10個對數似然比。而第一次進入此步驟時,會根據(S301)過程中所產生的最左列右訊息(
Figure 02_image053
)或是最右列左訊息(
Figure 02_image051
)的對數似然比向量,進行挑選。進一步而言,如圖1所示,每一次完成迭代之後,最左列右訊息(
Figure 02_image053
)或是最右列左訊息(
Figure 02_image051
)各自有8個對數似然比,而同一次迭代產生的8個對數似然比,在本發明中以對數似然比向量稱之。承上述若經過10次迭代就會有10個的對數似然比向量,再假設根據適合度分數從上述的10個對數似然比向量留存5個對數似然比向量,則上述被留存的5個對數似然比向量,則以留存向量稱之。
之後,藉由留存向量以產生 Y個衍生向量,並作為第一次候選向量群體。而當產生第 p次候選向量群體時,會於第 p-1次所產生的候選向量群體中的 Y個衍生向量,經各自信度傳播結束後所產生的 Y個最終對數似然比向量再加入原有的 X個留存向量後,根據適合度分數,選擇 X個新的留存向量。以上舉例並未限定本發明在實際實施時,迭代次數、留存向量或衍生向量的數目。
在本發明實施例中,挑選留存向量群組的步驟,進一步係為從當次的信度傳播過程中的各次迭代產生的對數似然比向量,除根據適合度分數進行挑選外,更可再進一步以條件式選取 X個留存向量,其中條件式選取法(或稱為輪盤法)係為適合度分數相對較低者會有較高的機率被淘汰,反之適合度分數較高者會有較高的機率被選中。但本發明實際實施時,並不限於此,也可以是其他的挑選方法,例如隨機選取法。
在本發明實施例中,以 X個留存向量衍生出 Y個衍生向量的步驟,係包括: 組合法:以留存向量中的任二個或任二兩個以上的對數似然比向量中的不同位元位置的對數似然比組合成的衍生向量;或者 突變法:將某個留存向量的至少一個對數似然比的正負號翻轉,而形成衍生向量。 以上所述的兩種方式(一個組合法及一個突變法),可以任調配其比例來組成新的候選向量群體,例如:以30%的組合法產生的衍生向量加上70%的突變法的衍生向量組成新的候選向量群體,或者以80%的組合法產生的衍生向量加上20%的突變法的衍生向量組成新的候選向量群體。而每一次的留存向量的數目與衍生向量的數目則已事先設定。其中留存向量群體已計算其適合度分數,衍生向量尚無其適合度分數,將於再經過步驟(S306)後才會有適合度分數。
如前所述,在本發明中,(S305) 建立候選向量群體係針對(S304)所留存向量群體,衍生出Y個衍生向量組。其中突變法如前所術共有兩種實施例,第一種實施例係利用因子圖中最左列右訊息為對數似然比向量,對每一個留存向量 ,翻轉其中的至少一個位元的硬解碼值,形成新的一組對數似然比向量(即為衍生向量),稱之為更新右訊息,而更新右訊息的定義如下:
Figure 02_image059
公式 (5) 其中 j係表示的行索引,
Figure 02_image061
係表示列索引,
Figure 02_image063
係表示本發明中於突變後的更新右訊息(衍生向量),
Figure 02_image065
係為最左列右訊息第 i個位元的對數似然比向量的硬解碼,硬解碼值為1或0,
Figure 02_image067
為預設常數。其中可靠類型係為突變前的最左列右訊息(留存向量)中選定一定數量具較高對數似然比絕對值之列索引,再選定一定數量具較低對數似然比絕對值之列索引為不可靠類型。可靠與不可靠類型之分類條件亦可依照兩門檻值決定,高於第一門檻值之列索引為可靠類型,低於第二門檻值之列索引為不可靠類型,其中第一門檻值與第二門檻值為預先設定的對數似然比絕對值。
在本發明中,突變法的第二種實施例係利用因子圖中最右列左訊息為對數似然比向量,根據留存向量(最右列左訊息)之至少一個位元,改變其最右列左訊息(
Figure 02_image051
),以產生新的對數似然比向量(即為衍生向量),舉例而言,會從來自通道的對數似然比向量(留存向量)中選擇至少一個不可靠位元,將其對數似然比數值的正負號翻轉,以產生新的對數似然比向量(即為衍生向量),此步驟定義如下:
Figure 02_image069
公式 (6) 此公式即用來修改傳統公式(2)的輸入值,其中
Figure 02_image071
即為原始來自通道的對數似然比(最右列左訊息),
Figure 02_image067
為預設常數。而其會根據
Figure 02_image073
的排序結果,選定一定數量位元視為不可靠類型,其餘位元則與原始相同。由於每次選定數量且判斷是否為不可靠的方式有多種,因此可產生多組
Figure 02_image071
用以建立一候選向量群體。以上舉例並未限定本發明在實際實施時,常數 b或隨機選擇不可靠位元的數目與方式。
而上述分類的準確度,就取決於每個對數似然比向量中實際位元錯誤數量,雖然解碼器無法實際得知此資訊,但我們可以利用事先定義的適合度分數來推測此數值。當可靠/不可靠之分類準確度越高,透過上述突變的更新機制,再次信度傳播迭代可以更有效降低不可靠位元的影響,進而成功解碼。然而,那些擁有較多錯誤位元的對數似比向量,會因為較差的分類準確率,而得到較低的適合度分數,使其因自然選擇而逐漸消失於群體更新過程中。
利用組合法來產生衍生向量的方式如下: 第一步,從1到 N(碼長)中選擇一個隨機數 m。 第二步,留存向量的其中之一個,作為父方將提供左(或右)訊息的列索引( i)從1到 m的對數似然比,留存向量的其中之另一個,作為母方將提供左(或右)訊息的其餘部分(從 m+1到 N)的對數似然比, N表示為解碼的碼長, m表示為小於 N的正整數,意即,衍生向量是透過將父方與母方各自提供的資訊串聯而成的。此組合過程使我們能夠在信度傳播迭代期間探索全新的碼字空間,這是傳統傳播方法所無法實現的。
在本發明中,各該適合度分數係計算方式係為各對數似然比向量中的所有對數似然比絕對值總和,如下所列方程式:
Figure 02_image075
其中
Figure 02_image077
表示為適合度分數, N表示為解碼的碼長,各對數似然比向量的適合度分數越高者,表示解碼的準確度越高,實際錯誤的位元數較少。再者,為了呈現本發明的解碼表現,乃提供如下參數模擬的資料進行說明: 1.     碼長為1024 bits,欲傳的訊息長度(information bits)為512 bits,其餘512 bits為frozen bits。 2.     使用以下CRC (24 bits)
Figure 02_image079
3. P設為50,而 S設為20。 再上述的條件下進行比較,如圖4所列的數種不同對極化碼解碼的信噪比的錯誤率比對圖,其中proposed BP(change R)代表第一種實施例,proposed BP(change L)代表第二種實施例,從圖4可以觀察出,模擬結果顯示,在解碼長度為1024,碼率為1/2的情況下,無論何種實施例此方法與傳統信度傳播以及沒有循環冗餘校驗輔助的列表循序消除法相比,塊錯誤率(block error rate)可獲得明顯的訊噪比增益,甚至稍勝於循環冗餘校驗輔助且中等大小的列表循序消除法的解碼器。綜上所述,本發明以完全新穎性,為坊間所未曽有類似者公開或申請在先,且已具有功效實質增進之產業利用性的價值,爰依法提出專利申請;然,本說明書僅為較佳實施例之敘述,並非以此作為專利範圍的界定,舉凡在本發明之原理、技術下各構成元件所作之修飾、衍變均應涵蓋在本發明之專利範圍內。
1 PE:處理運算單元 S301~S310:步驟
圖1係8位元的極化碼的因子圖。 圖2係圖1處理運算單元的結構示意圖。 圖3係本發明之一實施例的流程圖。 圖4係本發明之一模擬比較示意圖。
S301~S308:步驟

Claims (11)

  1. 一種基於信度傳播之極化碼解碼方法,當使用信度傳播解碼法對極化碼進行解碼失敗時,該解碼失敗係指達到迭代次數後,解碼結果仍無法通過循環冗餘校驗(CRC),而該方法進行下列步驟:挑選留存向量群體:從各次迭代所有產生的最左列的右訊息或最右列的左訊息的對數似然比向量中,挑擇留存X個對數似然比向量,每一個被留存的該對數似然比向量稱之為留存向量,X為正整數,全部的留存向量稱為留存向量群體;產生候選向量群體:將該留存向量群體衍生出Y個衍生候選向量,全部衍生候選向量即為候選向量群體,其中各該衍生候選向量作為再次信度傳播解碼時對應之右訊息或左訊息的輸入值;再次信度傳播解碼:以該輸入值為起始值進行信度傳播解碼及循環冗餘校驗,當解碼結果通過循環冗餘校驗,即解碼成功。
  2. 如請求項1所述的基於信度傳播之極化碼解碼方法,其中挑選該留存向量的方式,係從先前各次迭代過程所有產生的對數似然比向量組之中依照適合度分數挑選高者,其中該適合度分數,係指定義一數值用來衡量解碼結果的準確度。
  3. 如請求項2所述的基於信度傳播之極化碼解碼方法,其中對數似然比向量的適合度分數,係為各對數似然比向量中的所有對數似然比絕對值總和,如下所列方程式:
    Figure 109117423-A0305-02-0017-1
    其中fitness表示為適合度分數,N表示為解碼的碼長,各對數似然比向量的適合度分數越高者,表示解碼的準確度越高,實際錯誤的位元數較少。
  4. 如請求項1所述的基於信度傳播之極化碼解碼方法,其中該留存向量衍生該衍生向量的方法係為一組合法,該組合法係將任二個或任二兩個以上的留存向量中的不同位元的對數似然比組合成該衍生向量。
  5. 如請求項1所述的基於信度傳播之極化碼解碼方法,其中該留存向量衍生該衍生向量的方法係為一突變法,該突變法將留存向量的其中一個至少一個位元的對數似然比向量的正負號翻轉,而形成該衍生向量。
  6. 如請求項1所述的基於信度傳播之極化碼解碼方法,其中該留存向量衍生該衍生向量的方法係為一組合法與一突變法,該組合法係將任二個或任二兩個以上的留存向量中的不同位元的對數似然比組合成該衍生向量,該突變法將留存向量的其中一個至少一個位元的對數似然比向量的正負號翻轉,而形成該衍生向量,該候選向量群體中包括以該組合法與該突變法所衍生的該衍生向量。
  7. 如請求項1所述的基於信度傳播之極化碼解碼方法,其中再次信度傳播解碼係進行下列步驟:以候選向量群體的各衍生向量為各該起始值進行信度傳播,當通過循環冗餘校驗,即解碼結果成功;否則確認是否達到建立新的候選向量群體的一次數上限;當尚未達到該次數上限時,再產生下一次候選向量群體,並繼續進行信度傳播解碼;當達到該次數上限時,則選擇候選向量群體中適合度分數最高之對數似然比 向量作為軟式解碼結果的輸出。
  8. 如請求項4所述的基於信度傳播之極化碼解碼方法,其中該組合法來產生衍生向量的方式如下:從1到N中選擇一個隨機數m;該留存向量群體的其中之一個留存向量作為父方將提供左訊息或右訊息的列索引(i)從1到m的位元位置的對數似然比,該留存向量群體的其中之另一個留存向量,作為母方將提供左訊息或右訊息的其餘部分的位元,即從m+1到N的對數似然比,N表示為解碼的碼長,m表示為小於N的正整數,意即,衍生向量是透過將不同的該留存向量各自提供的一部分的對數似然比串聯而成的。
  9. 如請求項5所述的基於信度傳播之極化碼解碼方法,其中該突變法進一步係為:各次迭代後,翻轉該留存向量的其中的至少一個位元的硬解碼值,形成該衍生向量,稱之為更新右訊息,而更新右訊息的定義如下:
    Figure 109117423-A0305-02-0019-2
    其中j係表示的行索引,i係表示列索引,
    Figure 109117423-A0305-02-0019-3
    係表示該衍生向量,u i 係為最左列右訊息第i個位元的對數似然比向量的硬解碼,硬解碼值為1或0,b為預設常數; 其中上列公式中該可靠類型係為留存向量中選定一定數量具較高對數似然比絕對值之列索引,再選定一定數量具較低對數似然比絕對值之列索引為不可靠類型;其中該可靠類型或該不可靠類型之分類條件亦可依照兩門檻值決定,高於一第一門檻值之列索引為可靠類型,低於一第二門檻值之列索引為不可靠類型,其中該第一門檻值與該第二門檻值為預先設定的對數似然比絕對值。
  10. 如請求項5所述的基於信度傳播之極化碼解碼方法,其中該突變法進一步係為:改變該留存向量之至少一個位元以產生該衍生向量,進一步而言,係從該留存向量中選擇至少一個不可靠位元,將其對數似然比數值的正負號翻轉,以產生該衍生向量,此步驟定義如下:
    Figure 109117423-A0305-02-0020-4
    其中L n,i 即為原始來自通道的對數似然比,b為預設常數,根據|L n,i +R n,i |的排序結果,選定一定數量位元視為不可靠類型,其餘位元則與原始相同,藉此產生多組L n,i 用以建立該候選向量群體。
  11. 如請求項1所述的基於信度傳播之極化碼解碼方法,其中挑選該留存向量群組的步驟,除為從當次的信度傳播過程中的各次迭代產生的對數似然比向量以適合度分數進行挑選外,更可再進一步以條件式選取X個留存向量,其中條件式選取法係為適合度分數相對較低者會有較高的機率被淘汰,反之適合度分數較高者會有較高的機率被選中。
TW109117423A 2020-05-26 2020-05-26 基於信度傳播之極化碼解碼方法 TWI731696B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW109117423A TWI731696B (zh) 2020-05-26 2020-05-26 基於信度傳播之極化碼解碼方法
US17/023,062 US11316540B2 (en) 2020-05-26 2020-09-16 Method of decoding polar codes based on belief propagation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW109117423A TWI731696B (zh) 2020-05-26 2020-05-26 基於信度傳播之極化碼解碼方法

Publications (2)

Publication Number Publication Date
TWI731696B true TWI731696B (zh) 2021-06-21
TW202145723A TW202145723A (zh) 2021-12-01

Family

ID=77517152

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109117423A TWI731696B (zh) 2020-05-26 2020-05-26 基於信度傳播之極化碼解碼方法

Country Status (2)

Country Link
US (1) US11316540B2 (zh)
TW (1) TWI731696B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022047699A1 (en) * 2020-09-03 2022-03-10 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for improved belief propagation based decoding
KR20230084785A (ko) * 2021-12-06 2023-06-13 한국과학기술원 신뢰 전파 복호기 기반의 고속 수렴 극 부호 설계 방법 및 그 장치
WO2023219271A1 (ko) * 2022-05-08 2023-11-16 삼성전자 주식회사 통신 시스템 또는 방송 시스템에서 미래 제약을 이용한 극부호의 복호화를 위한 장치 및 방법
CN115622574B (zh) * 2022-12-16 2023-04-07 天地信息网络研究院(安徽)有限公司 一种基于遗传算法的极化码译码方法
CN116073958B (zh) * 2023-03-14 2023-06-13 南京创芯慧联技术有限公司 译码方法、装置、电子设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018118289A1 (en) * 2016-12-20 2018-06-28 Intel Corporation Multi-path decoding of a polar code using in parallel permuted graphs of the polar code
CN110401455A (zh) * 2019-06-03 2019-11-01 中国地质大学(武汉) 基于格雷码结构的无线随钻测量***极化信道编解码方法
WO2020052770A1 (en) * 2018-09-13 2020-03-19 Huawei Technologies Co., Ltd. Decoders and methods for decoding polar codes and product codes

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8751889B2 (en) * 2012-01-31 2014-06-10 Lsi Corporation Systems and methods for multi-pass alternate decoding
FR3016259B1 (fr) * 2014-01-07 2017-09-08 Univ Bretagne Sud Procede de gestion d'une unite de calcul de noeud de parite, equipement et logiciel pour la mise en oeuvre du procede
US10511328B2 (en) * 2016-11-04 2019-12-17 Qualcomm Incorporated Efficient list decoding of LDPC codes
US10432433B2 (en) * 2017-09-14 2019-10-01 Nxp Usa, Inc. Soft bit computation unit for MIMO detection and error correction

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018118289A1 (en) * 2016-12-20 2018-06-28 Intel Corporation Multi-path decoding of a polar code using in parallel permuted graphs of the polar code
WO2020052770A1 (en) * 2018-09-13 2020-03-19 Huawei Technologies Co., Ltd. Decoders and methods for decoding polar codes and product codes
CN110401455A (zh) * 2019-06-03 2019-11-01 中国地质大学(武汉) 基于格雷码结构的无线随钻测量***极化信道编解码方法

Also Published As

Publication number Publication date
US11316540B2 (en) 2022-04-26
US20210376863A1 (en) 2021-12-02
TW202145723A (zh) 2021-12-01

Similar Documents

Publication Publication Date Title
TWI731696B (zh) 基於信度傳播之極化碼解碼方法
TWI663839B (zh) 使用硬選取硬解碼模式下的解碼器產生軟資訊的方法
Lentmaier et al. Efficient message passing scheduling for terminated LDPC convolutional codes
CN106888026A (zh) 基于lsc‑crc译码的分段极化码编译码方法及***
CN105577193A (zh) 基于环路消除的混合加权比特翻转的ldpc译码方法
CN114785357A (zh) 一种基于CRC-LDPC-Polar级联***的BPL译码算法
Yang et al. Nonlinear programming approaches to decoding low-density parity-check codes
Yuyu et al. Noise-aided belief propagation list bit-flip decoder for polar codes
US20200195279A1 (en) Device and Method for Generating a Multi-Kernel Polar Code
Zhang et al. Iterative soft decoding of reed-solomon codes based on deep learning
Deng et al. Reduced-complexity deep neural network-aided channel code decoder: A case study for BCH decoder
Habib et al. Belief propagation decoding of short graph-based channel codes via reinforcement learning
CN116614142A (zh) 一种基于bpl译码和osd译码的联合译码方法
CN112104379B (zh) 一种基于关键集的极化码置信度传播动态翻转译码方法
Urman et al. Efficient maximum likelihood decoding of polar codes over the binary erasure channel
Trifonov et al. Fast sequential decoding of polar codes
Alebady et al. Turbo polar code based on soft-cancelation algorithm
Chen et al. Semi-LDPC convolutional codes with low-latency decoding algorithm
CN113556135A (zh) 基于冻结翻转列表的极化码置信传播比特翻转译码方法
Dai et al. CRC-aided belief propagation with permutated graphs decoding of polar codes
Zheng et al. A Universal List Decoding Algorithm with Application to Decoding of Polar Codes
Bellorado et al. Soft-input, iterative, Reed-Solomon decoding using redundant parity-check equations
Yang et al. Belief propagation list bit-flip decoder for polar codes
Wen et al. A BP-NN decoding algorithm for polar codes
Cheng et al. An decoding parameter optimization method for LDPC codes in 5G NR based on 3D EXIT chart