• 沒有找到結果。

適用於里德所羅門碼之適應性信念傳遞解碼法則其效能改進之研究

N/A
N/A
Protected

Academic year: 2021

Share "適用於里德所羅門碼之適應性信念傳遞解碼法則其效能改進之研究"

Copied!
59
0
0

加載中.... (立即查看全文)

全文

(1)

國立交通大學

電信工程研究所

碩士論文

適用於里德所羅門碼之

適應性信念傳遞解碼法則其效能改進之研究

Performance Enhancement of

Adaptive Belief-Propagation Decoding

for Reed-Solomon Codes

研 究 生:蕭佳容

指導教授:王忠炫

(2)

適用於里德所羅門碼之

適應性信念傳遞解碼法則其效能改進之研究

Performance Enhancement of

Adaptive Belief-Propagation Decoding

for Reed-Solomon Codes

研究生:蕭佳容

Student:Chia-Jung Hsiao

指導教授:王忠炫

Advisor:

Chung-Hsuan Wang

國立交通大學

電信工程研究所

碩士論文

A Thesis

Submitted to Institute of Communication Engineering

College of Electrical and Computer Engineering

National Chiao Tung University

in Partial Fulfillment of the Requirements

for the Degree of

Master

in

Communication Engineering

July 2012

Hsinchu, Taiwan, Republic of China

中華民國 101 年 7 月

(3)

適用於里德所羅門碼之

適應性信念傳遞解碼法則其效能改進之研究

研究生:蕭佳容

指導教授:王忠炫博士

國立交通大學

電信工程研究所

摘要

由於里德所羅門碼的良好錯誤更正能力[1],常被應用在如數位通訊與數位儲存媒 體中,為目前被廣泛使用的錯誤控制碼之一。解碼方面,目前已知軟式決策解碼相較於 傳統的硬式決策解碼器有明顯的改善。但軟式決策解碼可能會面臨高解碼複雜度的困 難,因此有學者針對複雜度與錯誤率的權衡提出了相關的研究,包括基於信任度解碼與 疊代解碼等等,其中本論文對疊代解碼進行討論。Jiang 和 Narayanan 於 2006 年提出 了一種利用適應性校驗矩陣,對里德所羅門碼進行軟式輸出輸入解碼的演算法 (JN 演算 法)[2]。而於本篇論文中,我們將討論造成 JN 演算法解碼失敗的原因,包括 JN 演算法 中高信任度位置錯誤以及 JN 演算法在疊代過程中收斂至錯誤的合法碼字所造成的影 響,並基於討論提出適當的演算法來避免此問題,並以 1995 年由 Fossorier 和 Lin 所 提出的 OSD 演算法輔助 JN 在疊代過程中的訊息傳遞機制,並增進其解碼效能。最後綜 合論文中提出的演算法和 JN-OSD(1)演算法比較,在可加性白色高斯雜訊通道並使用雙 相位鍵移調變之下,大約有 0.5 - 2.0 dB 的效能改善。

(4)

Performance Enhancement of

Adaptive Belief-Propagation Decoding

for Reed-Solomon Codes

Student:Chia-Jung Hsiao

Advisor:Dr.

Chung-Hsuan Wang

Institute of Communications Engineering

National Chiao Tung University

Abstract

Reed-Solomon (RS) codes have been the error-correction codes of choice in many communication systems because of their good correction capability. For the decoding of RS codes, it is known that soft-decision decoding (SDD) of RS codes provides significant performance gain over algebraic hard decision decoding (HDD). There are many researches including reliability-based decoding and iterative decoding which are devoted to better trade-off between the decoding complexity and performance because of the high complexity of SDD. In 2006, Jiang and Narayanan (JN) proposed an iterative soft-in soft-out decoding algorithm of RS codes by adapting the parity check matrix. In this thesis, we discuss the reasons of decoding failure in the JN algorithm. Based on our discussion, we propose different algorithms to avoid the influence of the errors in the most reliable positions and the output of JN convergence to an erroneous valid codeword during iterations. We propose the algorithms using the Ordered Statistic Decoding algorithm which was proposed in 1995 by Fossorier and Lin to modify the message passing rule during the iterations in JN algorithm and helps to improve the decoding performance. Finally, compared with the original JN-OSD(1) algorithm, our design has about a 0.5-2.0dB coding gain while decoding RS codes in the additive white Gaussian noise channel under binary phase shift keying Modulation.

(5)

誌 謝

本篇論文得以完成,首先要感謝指導教授王忠炫博士的栽培,在兩年的過程中,教 導我研究的態度和方法,並且適時地給予建議和方向。 同時,感謝翁健家與張力仁兩位學長的熱心以及研究上面的幫助,學長總是不厭其 煩與我討論研究內容,給了我許多寶貴意見,使論文得以順利完成。兩年的研究生活總 有受挫折與不順利時,感謝大學同學黃欣捷小姐與實驗室的同學以及學弟適時的給予我 鼓勵與開導,讓我充滿勇氣。最後特別想感謝在我的家人,能讓我沒有後顧之憂專心在 研究過程中,謝謝你們。

(6)

目錄

中文摘要 I 英文摘要 II 誌謝 III 目錄 IV 圖目錄 V 第一章 概論………1 第二章 里德所羅門碼基本定義與相關信念傳遞解碼演算法回顧 ... 3 2-1 符號定義 ... 3 2-2 里德所羅門碼之二位元映射[11] ... 3 2-2.1 二位元映射基底 ... 3 2-2.2 二位元映射之代數加法與乘法 ... 4 2-2.3 二位元映射之里德所羅門碼奇偶校驗矩陣 ... 5 2-3 OSD(w)演算法 ... 7 2-4 適應性信念傳遞演算法 ... 9 2-4.1 適應性信念傳遞演算法簡介 ... 9 2-4.2 幾何解釋與解碼步驟 ... 12 2-4.3 錯誤傳遞現象 ... 15 2-5 ABP-OSD(1)演算法 ... 20 2-6 錯誤傳遞的修正機制 ... 22 2-6.1 回饋機制 ... 22 2-6.2 事前更正機制 ... 22 2-6.2 模擬結果 ... 23 第三章 基於信念傳遞解碼之改良演算法 ... 25 3-1 初始機制 ... 25 3-1.1 演算法基本概念與解碼步驟 ... 25

(7)

3-1.2 演算法數據觀察 ... 28 3-1.3 模擬結果 ... 31 3-2 修正型事前更正機制 ... 33 3-2.1 演算法基本概念與解碼步驟 ... 33 3-2.2 提出演算法之討論 ... 34 3-2.3 模擬結果 ... 37 3-3 信念傳遞混合列表解碼機制 ... 39 3-3.1 演算法基本概念與解碼步驟 ... 39 3-3.2 模擬結果 ... 49 3-3.3 綜合提出演算法的模擬結果與討論 ... 43 第四章 結論 ... 48 參考文獻 ... 49

(8)

圖目錄

圖 2-1、經高斯消去法後,二位元奇偶校驗矩陣內的低密度位置及高密度位置 ... 10 圖 2-2、適應性演算法之奇偶校驗矩陣經高斯消去範例... 15 圖 2-3、位元節點 3 和位元節點 4 為低信任度位置 ... 16 圖 2-4、高信任度位置發生一個錯誤 ... 16 圖 2-5、高密度位置發生一個錯誤時的訊息傳遞情況 ... 16 圖 2-6、經由高斯消去動作位元節點 3 和 4 移至低密度位置 ... 17 圖 2-7、高密度位置發生一個錯誤時,經由高斯消去動作後的訊息傳遞情況 ... 17 圖 2-8、高信任度位置發生兩個錯誤 ... 18 圖 2-9、高密度位置發生兩個錯誤時的訊息傳遞情況 ... 18 圖 2-10、高密度位置發生兩個錯誤時,經由高斯消去動作後的訊息傳遞情況 ... 19 圖 2-11、(15,7)里德所羅門碼在三種演算法間比較 ... 21 圖 2-12、回饋機制輔佐 ABP-OSD(1)之解碼流程示意圖 ... 22 圖 2-13、事前更正機制輔佐 ABP-OSD(1)之解碼流程示意圖 ... 23 圖 2-14、(15,7)里德所羅門碼在四種演算法間比較 ... 23 圖 2-15、(15,7)里德所羅門碼在五種演算法間比較 ... 24 圖 3-1、執行不同次數疊代時 ABP 演算法輸出為錯誤和輸出為錯誤的合法碼字個數 ... 25 圖 3-2、初始機制輔佐 ABP-OSD(1)之解碼流程示意圖 ... 26 圖 3-3、(15,7)里德所羅門碼配合初始機制在不同累積疊代次數初始 LLR 的情況 ... 27 圖 3-4、提出演算法和[12]在執行 5 次疊代後,OSD 演算法所得到與接收訊號有最大相 ... 28 圖 3-5、提出演算法和[12]在執行 10 次疊代後,OSD 演算法所得到與接收訊號有最大相 ... 29 圖 3-6、提出演算法和[12]在執行 15 次疊代後,OSD 演算法所得到與接收訊號有最大相 ... 29 圖 3-7、提出演算法和[12]在執行 20 次疊代後,OSD 演算法所得到與接收訊號有最大相 ... 30 圖 3-8、比較(15,7)里德所羅門碼於提出演算法一與不同演算法錯誤率 ... 31 圖 3-9、比較(31,15)里德所羅門碼於提出演算法一與不同演算法錯誤率 ... 32 圖 3-10、比較(63,55)里德所羅門碼於提出演算法一與不同演算法錯誤率 ... 32 圖 3-11、提出演算法選擇一個位置翻轉 LLR 值正負號 ... 33 圖 3-12、修正型事前更正機制輔佐 ABP-OSD(1)之解碼流程示意圖 ... 34 圖 3-13、第I個校驗節點中,選擇的兩個位置不與之前選擇的重複,共有三種組合 ... 35 圖 3-14、第I個校驗節點中,選擇的信任度最低位置與之前選擇的重複,共有兩種組合 ... 35 圖 3-15、第I個校驗節點中,選擇的三個位置不與之前選擇的重復,共有七種組合 ... 35 圖 3-16、第I個校驗節點中,選擇的信任度最低或次低位置與之前選擇的重復,共有六種 ... 35 圖 3-17、第I個校驗節點中,選擇的信任度最低和次低位置與之前選擇的重復,共有四種 ... 36 圖 3-18、比較(63,55)里德所羅門碼於提出演算法二與不同演算法錯誤率 ... 37 圖 3-19、比較(31,25)里德所羅門碼於提出演算法二與不同演算法錯誤率 ... 38 圖 3-20、比較(31,23)里德所羅門碼於提出演算法二與不同演算法錯誤率 ... 38

(9)

圖 3-21、示範分割奇偶校驗矩陣Hb成較少列的Hb' ... 39 圖 3-22、信念傳遞混合列表解碼機制輔佐 ABP-OSD(1)之解碼流程示意圖 ... 40 圖 3-23、比較(15,7)里德所羅門碼於提出演算法三與不同演算法錯誤率 ... 41 圖 3-24、比較(31,15)里德所羅門碼於提出演算法三與不同演算法錯誤率 ... 50 圖 3-25、比較(31,25)里德所羅門碼於提出演算法三與不同演算法錯誤率 ... 42 圖 3-26、比較(31,15)里德所羅門碼於不同演算法 BER 錯誤率 ... 43 圖 3-27、比較(31,15)里德所羅門碼於不同演算法 FER 錯誤率 ... 44 圖 3-28、比較(31,25)里德所羅門碼於不同演算法 BER 錯誤率 ... 44 圖 3-29、比較(31,25)里德所羅門碼於不同演算法 FER 錯誤率 ... 45 圖 3-30、比較(15,7)里德所羅門碼於不同演算法 BER 錯誤率 ... 45 圖 3-31、比較(15,7)里德所羅門碼於不同演算法 FER 錯誤率 ... 46 圖 3-32、比較(63,55)里德所羅門碼於不同演算法 BER 錯誤率 ... 46 圖 3-33、比較(63,55)里德所羅門碼於不同演算法 FER 錯誤率 ... 47

(10)

第一章

概論

里德所羅門碼是目前被廣泛使用的錯誤更正碼機制,並應用於許多商業用途中,包 括數位通訊和數位儲存裝置,如 CD、DVD 和藍光光碟等。廣泛的運用使得里德所羅門碼 的解碼成為重要的研究課題。

里德所羅門碼為最大距離分離碼(Maximum Distance Separable Code, MDS Code) 和循環碼(Cyclic Code)。最大距離分離碼具有良好的錯誤更正能力,而循環碼在有限 場(Finite Field)條件下,任何一個里德所羅門碼字經平移單位個符元仍然是合法碼 字。而此特性對於叢集錯誤(Burst Error)和隨機錯誤(Random Error)提供很好的錯誤 偵錯能力,且由於里德所羅門碼為非二位元碼字,當更正一個符元時有可能同時更正好 幾個位元,因此能有較佳的錯誤率表現。

而目前里德所羅門碼的解碼方式大約分成三類:代數解碼(Algebraic Decoding)、 基於信任度解碼(Reliability-Based Decoding)、疊代解碼(Iterative Decoding)。考 慮低複雜度,在目前解碼方式中多選擇傳統的硬式決策解碼器(Hard Decision Decoding, HDD),硬式決策解碼器透過有限場的抽象代數運算解碼。Guruswami 和 Sudan (GS)在有 限場下,將碼字形象化成二維平面的一條曲線,每個符元都視作是此線上的一個數據

點。在傳輸中,一些值會被破壞,因此期望透過接受信號在二維平面上一定數量的數據

點,利用代數結構內插出其餘的數據點,進而得到此碼字在有限場上畫出的曲線,推算 出原始的編碼方程式[3]。Koetter and Vardy (KV) 基於 GS 提出代數軟式決策解碼器 (Algebraic Soft Decision Decoding, ASD)[4]。然而,軟式決解碼(Soft Decision Decoding, SDD)方面,最大概似解(Maximum Likelihood Decoding, MLD)相較於硬式決 策解碼器有明顯的改善,但面臨的是最大概似解碼的高複雜度問題。

而面對最大概似解碼的高複雜度問題,基於信任度解碼分別提出基於最小信任位置 (Least Reliable Positions, LRPs)與基於最大獨立信任位置(Most Reliable Independent Positions, MRIPs)的相關解碼方式幫助降低複雜度。前者透過翻轉碼字 中 LRPs 位置,試圖找出和接收信號具有相關性最大的碼字。基於信任 LRPs 位置較有可 能發生錯誤,以 LRPs 作為可能發生錯誤的位置,事前修正接收信號會較有效率的正確 翻轉錯誤位置,Chase[5]與 Forney[6]分別針對接收信號中較容易發生錯誤的 LRPs, 翻轉其信任度值並代數解碼,透過修正接收信號中 LRPs 之值,試圖使錯誤個數降至代 數解碼的可更正範圍內。後者透過選擇 MRIPs 位置重新編碼,尋找出和接收信號具有相 1

(11)

關性最大的碼字。基於信任 MRIPs 位置比較不會發生錯誤,會較有效率的找出候選碼字 集。Fossorier 和 Lin 提出排序統計解碼演算法 (Ordered Statistic Decoding Algorithm, OSD)[7]對接收信號中 MRIPs 重新編碼,由於信任 MRIPs 發生錯誤機率較小, 因此只需較少的候選碼字集就有尋找到正確的碼字。

Jiang and Narayanan (JN)提出了基於信念傳遞解碼的疊代演算法,透過將奇偶 校驗矩陣依照信任度由小至大做高斯消去,使得 LRIPs 將只連接到一個校驗矩陣,減少 發生錯誤對其他位元產生的影響[8]。另外 Jiang and Narayanan 提出了隨機平移解碼 演算法(Stochastic Shifting based Iterative Decoding scheme,SSID)[9],利用里 德所羅門碼的循環代數特性,在每次疊代前將接收信號隨機平移後進行更新運算,避免 錯誤位置在每次疊代過程傳送錯誤資訊給某些相同位置,幫助減低錯誤傳遞的影響。而 Kothiyal、Takeshita 和 Fossorier[10] 提出了適應性信念傳遞(Adaptive Belief Propagation, ABP)演算法,並提出結合 OSD 演算法相互輔助 ABP 的演算法 ABP-OSD(1) 演算法,而後將介紹根據 ABP-OSD(1)提出修正演算法。 基於 JN-OSD(1)演算法,在本論文中提出三種演算法機制:初始機制、修正型事前更 正機制與信念傳遞混合列表解碼機制。初始化機制藉由合理的變動收斂的錯誤合法碼使 之重新進行解碼,修正型事前更正機制將討論與原始事前更正機制的複雜度與錯誤率表 現關係,信念傳遞混合列表解碼機制運用 OSD 演算法的概念修正 ABP 演算法的更新訊息 法則。於第二章將會介紹相關的符號定義、里德所羅門碼的二位元映射方法、信念傳遞 錯誤傳遞問題以及相關演算法,第三章為所提出之演算法概念並佐以相關模擬數據並加 以討論,最後於第四章中提出本論文之結論。 2

(12)

第二章

里德所羅門碼基本定義與相關

信念傳遞解碼演算法回顧

接下來的說明中,於字母底下加一底線代表一個向量,例如c;粗體的字母代表一個 矩陣,如H。本章節一開始先介紹里德所羅門碼的符號定義以及雜訊通道、調變方式等, 且由於此章節討論的相關信念傳遞解碼為基於二位元的 tanner 圖解碼,因此在第二節 介紹里德所羅門碼的二位元映射以及代數運算後,在接下來的小節將介紹的信念傳遞解 碼與其相關的改善機制。

2-1 符號定義

考慮一個(N,K)里德所羅門碼,其二位元碼字表示為 c=[c1,c2,…,cn],c 向量中每個 元素ci均屬於GF(2)中的元素。G 和 H 分別為生成矩陣(Generator Matrix)以及奇偶校 驗矩陣(Parity-Check Matrix)。

本論文中假設所使用的通道環境均為可加式高斯白雜訊(Additive White Gaussian Noise,AWGN);調變方式為二位元移鍵(Binary Phase Shift Keying,BPSK),BPSK 調變將

0 映射至+1 而 1 映射至-1。假設r=[r1,r2,…,rn]表示經過 BPSK 調變和 AWGN 後的接收信 號,而n=[n1,n2,…,nN]表示 AWGN 通道中的雜訊,其雙邊雜訊功率為 2 O N ,最後經由 AWGN 通道接收向量關係式為 r=(2c-1)+n (2.1)

2-2 里德所羅門碼之二位元映射[11]

2-2.1 二位元映射基底

假設

2 1

, , , , 1   m 為GF(2m )內的一組符元基底,其中 為GF(2m )的質元素 (primitive element),則任意

 

m GF A 2 皆可以表示為 3

(13)

   1 0 ) ( m i i i b A A  ,其中Ab(i)GF

 

2 (2.2) 簡化為二位元係數的向量A[Ab(0),Ab(1),Ab(2),,Ab(m1)]。 範例:(7,5)里德所羅門碼於GF(23)使用質的多項式(Primitive Polynomial)為 3 1xx ,而

1,,2,3

基底,其中  xGF(23)內每個元素可表示為二位元係數的 向量: ] 0 , 0 , 0 [ * 0 * 0 1 * 0 0   xx2  ] 0 , 0 , 1 [ * 0 * 0 1 * 1 1   xx2  ] 0 , 1 , 0 [ * 0 * 1 1 * 0   2   x x  ] 0 , 1 , 1 [ * 0 * 1 1 * 1 2 3 x x  ] 1 , 1 , 0 [ * 1 * 1 1 * 0 2 4 x x  ] 1 , 1 , 1 [ * 1 * 1 1 * 1 2 5 x x  ] 1 , 0 , 1 [ * 1 * 0 1 * 1 2 6 x x

2-2.2 二位元映射之代數加法與乘法

接下來說明二位元映射的加法與乘法: 每個符元映射至二位元係數的向量後,依然頇滿足在GF 2

 

m 的加法與乘法代數特性 範例如下: (1) 加法: ] 0 , 1 , 1 [ ] 0 , 1 , 0 [ ) * 0 * 1 1 ( ) * 0 * 1 0 ( 2 2 3  x x x x  1 * 0 * 0 1 ] 0 , 0 , 1 [    2   x x ] 0 , 1 , 1 [ ] 1 , 0 , 0 [ ) * 0 * 1 1 ( ) * 1 * 0 0 ( 2 2 3 2 x x x x   4 ] 1 , 0 , 0 [ * 1 * 0 1 * 0 2 2     x x

(14)

5 2 * 1 * 1 1 ] 1 , 1 , 1 [      x x (2) 乘法:

 

T

T G D A I H G F E D C B A 1 1 1 0 0 1 * 1 * 5 5                

 

T

T H E B I H G F E D C B A 1 0 1 0 1 0 * * 6 5                 

 

T

T H E B I H G F E D C B A 0 0 1 1 0 0 * * 2 7 5                  因此可知經過二位元映射後,                       0 1 1 0 0 1 1 1 1 5 I H G F E D C B A  而由以上的推論方式,可得GF(23)內每個元素可表示為:            0 0 0 0 0 0 0 0 0 0 ,            1 0 0 0 1 0 0 0 1 1 ,            0 1 0 1 0 1 1 0 0  ,            1 0 1 1 1 0 0 1 0 2             1 1 0 1 1 1 1 0 1 3 .  ,            1 1 1 0 1 1 1 1 0 4  ,            0 1 1 0 0 1 1 1 1 5  ,            0 0 1 1 0 0 0 1 1 6 

2-2.3 二位元映射之里德所羅門碼奇偶校驗矩陣

(N, K)里德所羅門碼運作於

 

m GF 2 之下時,則長度為N=2m -1,其最小距離為 dmin=N-K+1,而奇偶校驗矩陣定義表示為 5

(15)

                    ) 1 )( 1 ( ) 1 ( ) 1 ( 2 2 ) 1 ( min min 1 1 1 N d d N N S H           (2.3) 其中 為

 

m GF 2 的質元素(Primitive Element)。而HS可透過上節介紹的二位元映射 方式映射成大小為(nk)n的二位元奇偶校驗矩陣Hb,其中nmNkmK 範例: (7, 5)里德所羅門碼運作於

 

3 2 GF 之下時,則長度為N2317,其最小距離為 3 1 min NK  d ,而奇偶校驗矩陣HS表示為:        2 4 6 3 5 6 5 4 3 2 1 1             S H (2.4) 而經過乘法映射後n3721且k 3515,位元奇偶校驗矩陣Hb表示為:                      0 1 1 1 1 0 0 1 0 0 0 1 1 1 1 1 0 1 1 0 0 0 0 1 1 1 1 1 0 1 1 0 0 0 1 1 1 1 0 0 1 0 1 1 1 1 0 1 1 0 0 0 1 1 1 1 0 0 1 0 0 0 1 0 0 1 0 1 1 1 1 0 1 1 0 1 0 1 0 1 0 1 0 0 1 0 0 0 0 1 0 1 1 1 1 1 1 1 0 1 0 1 0 1 0 0 1 1 1 1 1 1 1 0 1 0 1 0 1 0 1 0 0 0 0 1 b H (2.5) 6

(16)

2-3 OSD(w)演算法

OSD(w)演算法為基於信任度排序的解碼演算法,解碼步驟分為兩個階段:尋找最大信 任度獨立位置階段與重新編碼階段。

(1) 尋找最大信任度獨立位置階段:

在此階段,按照所有位元的信任度由大至小進行排序,並依據對應位置將G 進行高

斯消去法,得到一個簡化列梯矩陣(Row Reduced Echelcon Form)矩陣Gb。此動作由

最大信任度的位置開始,利用列運算將該位置正規化後,再對信任度次低的位置進 行同樣的動作,若發現該位置無法正規化,則略過該位置進行信任度次低的下一個

位置,直到得到Gb的簡化梯式矩陣G’b和k個成功正規化的位置,稱為最大信任獨

立位置 (Most Reliable Independent Positions, MRIPs),這些位置可以經由重新 排序而成為一正規化矩陣(Identity Matrix)。而非最大信任獨立位置的部分於本論 文中則稱為最小信任度位置 (LeastReliable Positions, LRPs)。

(2) 重新編碼階段:

此階段利用上一階段得到 MRIPs 加上測試錯誤樣本(Test Error Patterns,TEPs)對

簡化列梯矩陣Gb進行重新編碼。而 OSD(w)中,w 表示上一階段的 k 個 MRIPs 中分別 有 0、1、2、…、w 個測試錯誤位置,其中 w<k,因此 OSD(w)共產生

      w i i k 0 個 TEPs。 OSD(w)演算法解碼步驟: 步驟一、 依據信任度大小進行位元節點的排序。 步驟二、依排序的結果,依信任度由大至小的位置對二位元生成矩陣Gb進行高斯消之 動作而得到簡化梯式生成矩陣。若該位置無法經列運算正規化,則跳過該位 置至信任度次大的下一個位置,直到得到k個 MRIPs 後停止。 步驟三、 製作測試錯誤樣本:假設此k個 MRIPs 中分別有 0、1、2、…….、 w 個錯誤, ( w <k ),此於演算法之標示為 OSD( w ),則表示此演算法於該 MRIPs 中, 最多測試至發生 w 個錯誤。接下來分別產生 0、1、2、…….、 w 個錯誤的所 有測試錯誤樣本,若該位置發生錯誤,則在樣本中給予 1 的值,否則給 0 的 7

(17)

值,而在 OSD( w )的情況下,總共產生 0 w i k i       

個 TEPs。 步驟四、 將原來的 MRIPs 向量加上 TEP 向量後,根據高斯消去法所得到的梯式簡化生 成矩陣進行編碼,當所有的 TEP 配合 MRIPs 均被重新編碼後,選擇和接收信 號相關性最大碼字的做為解碼輸出。或當某個 TEP 配合 MRIPs 所得到的碼字 為最大概似碼字時,則直接輸出該碼字。 8

(18)

2-4 適應性信念傳遞演算法

2-4.1 適應性信念傳遞演算法簡介

令c=[c1,c2,…,cN]為里德所羅門碼的二位元碼字,經過 BPSK 調變與 AWGN 通道的接

收訊號表示為r=(2c-1)+n。獲得接收信號後,碼字中每個位元的初始信任度由對數概似

比例(Log Likelihood Ratio,LLR)計算,計算方式為

O i N r o N r o i i i i i N r e N e N r c r c c L i i 4 1 1 log ) | 1 Pr( ) | 0 Pr( log ) ( 2 2 ) 1 ( ) 1 (           (2.6) 在 AWGN 通道下,將 LLR 取絕對值|L(ci)|代表此位元解碼的信任度,由於L(ci) 表示Pr(ci 0)發生機率愈高、於Pr(ci 1)發生機率愈低,而L(ci)表示Pr(ci 1)發 生機率愈高、於Pr(ci 0)發生機率愈低,因此 LLR 絕對值|L(ci)|越大表示Pr(ci 0)或 者Pr(ci 1)發生機率越大錯誤機率愈低,亦表示信任度愈大。反之 LLR 絕對值|L(ci)|愈 小表示錯誤機率愈低信任度越低。 適應性信念傳遞演算法可分為兩個階段:更新奇偶校驗矩陣階段與更新位元節點 LLR 階 段。 (1) 更新奇偶校驗矩陣階段: 在此階段,按照所有位元的信任度由小至大進行排序,並依據對應位置將H 進行高

斯消去法,得到一個簡化列梯矩陣(Row Reduced Echelcon Form)矩陣Hb。此動作

由最小信任度的位置開始,利用列運算將該位置正規化後,再對信任度次高的位置 進行同樣的動作,若發現該位置無法正規化,則略過該位置進行信任度次高的下一

個位置,直到得到Hb的簡化梯式矩陣 '

b

H 和nk個成功正規化的位置,稱為最小信

任獨立位置 ( leastreliable independent positions,LRIPs),這些位置可以經 由重新排序而成為一正規化矩陣 (identity matrix)。而非最小信任獨立位置的部

(19)

分於本論文中則稱為最大信任度位置 (most reliable positions ,MRPs) ,由於 ' b H 中對應到這些 LRIPs 的行向量,均只有一個 1,因此這些部分亦稱為 ' b H 的低密度位 置,反之這些位置以外則稱為 ' b H 的高密度位置。

0 ... 1 ... 0

0 ... 0 ... ...

0 ... 0 ... 0

1 ... 0 ... ...

0 ... 0 ... 0

0 ... 1 ... ...

0 ... 0 ... 1

0 ... 0 ... ...

1 ... 0 ... 0

0 ... 0 ... ...

 

b

H

低密度位置 高密度位置 圖 2-1、經高斯消去法後,二位元奇偶校驗矩陣內的低密度位置及高密度位置 (2) 更新位元節點 LLR 階段: 此階段利用更新奇偶校驗矩陣階段所求得 ' b H 進行更新位元節點 LLR。接收信號後, 定義 JN 演算法 LLR 向量, (l) L 上標表示第 i 次疊代的 LLR 向量 [ ( ), ( ),..., ( )] ) ( 2 ) ( 1 ) ( ) ( n l l l l c L c L c L L (2.7) 而 (0) L 為接收信訊號的初始 LLR 向量。基於 (i) L 排序進行高斯消去的矩陣表示成: |) | , ( () ) ( l b l b H L H  (2.8) 更新位元節點 LLR 階段中,額外消息量 (l) ext L 為根據L(l) 在經過更新後的奇偶校驗矩陣 ) (l b H 計算得到,表示成: ) , ( () () ) ( l l b l ext H L L  (2.9) 而每個位元的額外消息量 10

(20)

       n k H j n H i p p P l i l ext l ji jpl C L c L 1 1 1 , 1 ) ( 1 ) ( ) ( () ) ) 2 ) ( tanh( ( tanh 2 ) ( (2.10) JN 演算法解碼步驟: 步驟一、設定抑制係數 ,最大疊代次數lmax,並計算每個位元節點的初始的 LLR 為

(0) 0 ( )i 4 i/ L cy N ,並以初始 LLR ( (0) ( )i L c ) 開始進行解碼。 步驟二、更新奇偶校驗矩陣: ( )

( )

, l l b  b L H H ,表示更新Hb的動作。 (a) 依據 LLR 絕對值 L( )l 的大小將每個位元位置進行排序,並且記錄排序後的 順序。 (b) 利用高斯消去法,按照信任度由小至大的位置將 ( )l b H 消為簡化梯式矩陣, 並得到(nk)個 LRIPs。 步驟三、利用高斯消去法正規化後的 ( )l b H ,進行梯度下降法得到每個位元節點的額外消 息量: ( )

( ) ( )

, l l l ext b L  H L 。表示計算額外消息量之動作。 步驟四、更新每個位元節點的 LLR: (l 1) ( )l ( )l ext L  L L ,在這裡0 

1。 步驟五、硬式決策:         0 ) ( , 0 0 ) ( , 0 ) 1 ( ) 1 ( i l i l i c L c L c 步驟六、終止條件:若所有的校驗節點均被滿足,或當到達最大的預設疊代次數時,則 停止疊代並且輸出目前經硬式決策後每個位元的決策值。若未達最大疊代數, 則令l l 1,回到步驟二進行下一次的疊代。 11

(21)

2-4.2 幾何解釋與解碼步驟

首先定義兩個函數: 函數定義 3-1 函數:

    ,

 

1, 1

為將 ( )L ci 自 LLR 域映射至tanh域之函數 :

 

1 tanh . 2 1 L L L e L e          (2.11) 此為一對一 (one-to-one) 且映成 (onto) 函數。 函數定義 3-2  之反函數 1

 

: 1, 1 ,       :

 

1 1 ln 1 t t t          , t  

1, 1 .

(2.12) 此亦為一對一且映成函數。 從接收信號求得每個位置的 LLR( ( )L ci )後,首先將其利用函數定義 3-1 將每個位 置的 LLR 轉換至tanh域表示如下:

1, 2, , n

( ) ,1

,

( n)

. TT T T  L cL c (2.13) 其中T為經過轉換後的tanh域向量。 在[14] 中,定義Hb中第j個校驗方程式的決策信任度j (decision reliability) 表示如下:

( ) .

j n j p p L c    

其中 j

a|  1 a n H, b ja 1

(2.14) 由上節的討論中得知,LLR 的絕對值較大時,會認為該位置的硬式決策較不易發生 錯誤信任度越高,反之 LLR 之絕對值較小時,會認為該位元位置的硬式決策較易發生錯 誤信任度越低。同樣的概念應用於此處的決策信任度上,當j 愈大表示我們能夠 愈信任這個校驗的決策,而當j 愈小時,則表示這個校驗的決策愈容易發生錯誤。而 由式函數定義 3-1 可知,j屬於

 1, 1

區間內。 12

(22)

接下來定義一位能函數 (potential function) J,表示式如下: 函數定義 3-3: 位能函數J:

( ) ( ) 1 1 , . j n k n k j p j j p J TT       

 

 

b H (2.15) 其中 j

a|  1 a n H, b ja 1

,且J是一個同時受HbT所影響的函數。 當收斂至一個合法碼字時,將滿足所有的校驗方程式且決策信任度j =1,此時位 能函數J將達到最小值Jmin (nk)。因此解碼過程可視為,由通道所得到信任度T為 初始起點,使接收信號的 LLR 往位能函數最低點的方向前進,並收斂於位能函數的最低 點時,則被認為此過程成功找到了傳送的碼字而成功解碼。因此基於這樣的想法,梯度 下降法適合進行這樣的運作過程。首先對位能函數進行偏微分後表示式為:

1 2 , , , , , , , . n J T J T J T J T T T T              b b b b H H H H (2.16) 其中每個對應Ti的偏微分元素可以表示成

,

. i j p j p i J T T T      

 

b H (2.17) 此時 i

q| 1   q n k H, bqi 1

且 j

s| 1  s n H, b js 1, si

。 因此,梯度下降法搜尋位能函數最低點的過程可表示為

( ) ( ) ( 1) , . l l l T   J Hb TT  (2.18) 這裡 為一抑制係數,如同梯度下降法中控制每次疊代的步距 (step size) 係數,上 標

 

l 表示目前為第l次疊代。由於信任度Ti被定義在

 1, 1

的區間內,因此經過修正 原來的梯度下降法的疊代函數,可得到表示式

 

1 ( ) 1 ( ) 1 ( 1) . i j l l l i p i j p T T T                

(2.19) 13

(23)

此時 i

q| 1   q n k H, b qi 1

且 j

s| 1  s n H, b js 1, si

Tp( )l 和 ( )l i T 之上 標

 

l 表示目前為第l次疊代。 而在上節討論的步驟三中所接收到的額外消息量 (extrinsic information) 總值 ( ) ( ) l ext i L c 可以表示如下 ( ) ( ) 1 ( ) 1 ( ) ( ) 2 tanh tanh . 2 i j i j l p l l ext i p j p j p L c L c  T                    

(2.20) 其中 i

q| 1   q n k H, b q i 1

且 j

s| 1  s n H, b js 1, si

Tp( )l 和 ( ) ( ) l p L c 之上標

 

l 表示目前為第l 次疊代。另外由第 j個校驗方程式所提供的額外消息量   ( ) ( ) l j ext i L c 表示如下   ( ) ( ) 1 ( ) ( ) 2 tanh tanh . 2 j l l j p ext i p L c L c          

(2.21) 其中 j

s| 1  s n H, b js 1, si

。 14

(24)

2-4.3 錯誤傳遞現象

信念傳遞演算法並不適用於高密度奇偶校驗矩陣(High Density Parity Check Codes,HDPC),原因是有比較多的週期(cycle)使訊息傳遞並不獨立,另外發生錯 誤位置則可能會連接至過多的校正節點,而發生錯誤傳遞的問題。 在 AWGN 通道下,接收信號的 LLR 取絕對值|L(ci)|代表此位元解碼的信任度, | ) ( |L ci 愈大被認為較不可能發生錯誤解信任度愈大,反之愈小被認為較有可能發生錯誤 且信任度愈小。 因此在適應性信念傳遞演算法中透過高斯消去法,將奇偶校驗矩陣化為一個低信任 度位置只連接至一個校驗節點,減少錯誤傳遞。以(7, 5)里德所羅門碼為範例,經高斯 消去後的奇偶校驗矩陣 tanner 圖如圖 圖 2-2、適應性演算法之奇偶校驗矩陣經高斯消去範例 經過高斯消去後,將可減少當低信任度位置發生錯誤時,經由訊息傳遞機制傳遞錯 誤的額外訊息影響其他位元,造成錯誤傳遞現象。 接下來將以圖形化說明錯誤傳遞現象,圖 2-1 是奇偶校驗矩陣之 Tanner 圖,圖中 週期 4 (cycle 4) 的部分所代表的是奇偶校驗矩陣中的高密度位置。在以下的討論中, 將以正值 (+)表示正確的 LLR 值,負值 (-)表示錯誤的 LLR 值,另外在沒有發生錯誤的 位置上,高信任度位置 LLR 的絕對值為 V ,低信任度位置的 LLR 的絕對值為 v,且 V>v; 若在發生錯誤的位置上,高信任度位置 LLR 的絕對值為 -V,低信任度位置的 LLR 的絕 對值為–v。在圖 2-1 中,我們假設位元節點 3 和位元節點 4 為低信任度位置,其他位 元節點為高信任度位置。 15

(25)

圖 2-3、位元節點 3 和位元節點 4 為低信任度位置 現在假設低信任度位置位元節 3 點發生錯誤,其 LLR 值為-v,表示圖如圖:

圖 2-4、高信任度位置發生一個錯誤

而經由信念傳遞(Belief Propagation)訊息傳遞機制額外消息量,我們以正值 (+E)

表示校驗節點傳遞正確的額外消息量,負值 (-E)表示傳遞錯誤的額外消息量,其中 E>0。而當信任度位置位元節 3 點發生錯誤時,校驗節點傳遞訊息的機制表示如圖:

圖 2-5、高密度位置發生一個錯誤時的訊息傳遞情況 16

(26)

由圖 2-5 可知,除了位元節點 3 收到正確的額外消息量以外,其餘位置皆接收到錯 誤的額外消息量,此錯誤傳遞可能造成碼字解碼失敗甚至無法收斂。 另外考慮適應性信念傳遞解碼,在低信任度位置位元節點 3 發生錯誤的情況,已知 可透過高斯消法的得到簡化梯式校驗矩陣,使得每個校驗節點僅連結至一個低信任度的 位元節點,而高密度位置為高信任度的位元節點。經由此動作,位元節點 3 和 4 將被移 至只連接到一個校驗節點的低密度位置,而位元節點 1 和 6 將被移至連接到兩個校驗節 點的高密度位置,說明圖如圖 2-6: 圖 2-6、經由高斯消去動作位元節點 3 和 4 移至低密度位置 圖 2-7、高密度位置發生一個錯誤時,經由高斯消去動作後的訊息傳遞情況 和圖 2-5 相比,可以看出位元節點 3 有機會被更正且高信任度位置僅有位元節點 2 收到錯誤的額外消息量,可以看出錯誤傳遞現象已大幅的減少。 接下來考慮兩個低信任度位置(位元節點 3 和 4)發生錯誤,假設 LLR 值為-v,說明圖如: 圖 2-8 17

(27)

圖 2-8、高信任度位置發生兩個錯誤 圖 2-9、高密度位置發生兩個錯誤時的訊息傳遞情況 由於週期 4 的關係,錯誤的位元節點 3 和 4 持續收到錯誤的額外消息量,而變得更 難正確解碼。同樣地,考慮適應性信念傳遞解碼,在低信任度位置位元節點 3 和 4 發生 錯誤的情況,透過高斯消法的得到簡化梯式校驗矩陣,使得每個校驗節點僅連結至一個 低信任度的位元節點,而高密度位置為高信任度的位元節點,說明圖如圖 2-10 18

(28)

圖 2-10、高密度位置發生兩個錯誤時,經由高斯消去動作後的訊息傳遞情況

和圖 2-9 相比,可以看出低信任度位元節點 3 和 4 有機會被更正,且只要高信任度 位置信任度 V 夠大,在疊代過程中便能不受到錯誤的額外消息量影響改變 LLR 的正負號 值,相較於圖 2-9,圖 2-10 經過高斯消去動作仍然較能抑制解碼失敗的發生。

(29)

2-5 ABP-OSD(1)演算法

JN 演算法透過將奇偶校驗矩陣依照信任度由小至大做高斯消去,將奇偶校驗矩陣化 為H

I |P

形式,其經由此動作後 LRIPs 將只連接到一個校驗矩陣,減少發生錯誤時 影響較多其他位元。再透過 JN 演算法更新運算,利用 MRPs 傳送額外訊息幫助更正較有 可能發生錯的 LRIPs,同時較 MRPs 的錯誤,亦有可能因為 JN 演算法更新運算過程逐漸 降低信任度,而在幾次疊代後落在 LRIPs,但假若錯誤位持續存在 MRPs 裡,則仰賴 OSD 演算法機制修正高信任度位置發生的錯誤。 OSD 演算法則透過將生成矩陣依照信任度由大至小做高斯消去,將生成矩陣化為

I P

G | 形式得到 MRIPs,OSD 演算法在重新編碼之前事先假設 MRIPs 可能發生了錯

誤,並透過 TEPs 事前更正,使得即使 MRIPs 中存在少數的錯誤,OSD 存在仍然能正確解 碼,並於 MRIPs 發生錯誤機率較小,因此較少數量的 TEPs 就有可能修正接收的錯誤信 號。 ABP-OSD(1)演算法解碼步驟: 步驟一、設定抑制係數 ,最大疊代次數lmax,並計算每個位元節點的初始 LLR 為 ) 4 ( ) ( 0 ) 0 ( N y c L ii ,並以初始 LLR (L(0)(ci)) 開始進行解碼。 步驟二、OSD(1)演算法階段: (1) 依據 LLR 絕對值|L(l) |的大小將每個位元位置進行排序,並且記錄排序後的 順序。 (2) 依排序的結果,依信任度由大至小的位置對二位元生成矩陣Gb進行高斯消 之動作而得到簡化梯式生成矩陣。若該位置無法經列運算正規化,則跳過 該位置至信任度次大的下一個位置,直到得到k個 MRIPs 後停止。 (3) 此時假設此k個 MRIPs 中僅有一個以下的錯誤。因此生成 1 的個數為 0,和 1 的個數為 1 的 TEPs。接下來按照此k1個 TEPs 以高斯消去動作後的生成 矩陣進行編碼得到k1組候選碼字 (candidate codewords)。 (4) 若自候選碼字中找到最大概似碼字,則停止解碼並輸出結果。若到達最大 預定疊代次數lmax時,則停止解碼並輸出最目前所存相關性最大的碼字。否 則保留此次疊代中和接收信號相關性最大的碼字,並進行步驟三。 20

(30)

步驟三、JN 演算法階段。 (1)更新奇偶校驗矩陣:Hb(l) (Hb,|L(L) |),表示更新Hb的動作。依據 LLR 絕對值|L(l) |的大小將每個位元位置進行排序,並且記錄排序後的順序。利 用高斯消去法,按照信任度由小至大的位置將 (l) b H 消為簡化梯式矩陣,並得 到(nk)個 LRIPs。 (2)利用高斯消去法正規化後的 (l) b H ,進行梯度下降法得到每個位元節點的額 外消息量:L(eztl) (Hb(l),L(L))。表示計算額外消息量之動作。 (3)更新每個位元節點的 LLR: ( 1) () (l) ext l l L L L    ,在這裡0

1。 (4) 回到步驟二。 接下來為(15,7)里德所羅門碼在 JN-OSD(1)演算法和 JN 及 OSD(1)演算法錯誤比較, JN 演算法透過訊號傳遞機制幫助更正錯誤並加強正確位置的信任度後,由 OSD(1)利用 其高信任度位置編碼,兩者互相輔佐得到更好的模擬結果,其中 JN-OSD(1)演算法 OSD(1) 演算法大約有 0.5dB 的效能改善。 圖 2-11、(15,7)里德所羅門碼在三種演算法間比較 21

(31)

2-6 錯誤傳遞的修正機制

由於 JN 演算法透過訊息傳遞機制,利用 MRPs 傳送給校驗節點的訊息更正較有可能 發生錯的 LRIPs。因此,若有錯誤存在 MRPs 中,經過 JN 訊息傳遞機制將會傳遞錯誤訊 息給 LRIPs,造成錯誤傳遞。而為了抑制此現象,[12]和[13]分別在疊代過程中以及疊 代前對訊號做處理。

2-6.1 回饋機制

[12]在疊代過程中,利用 OSD(w)演算法所得到與接收信號相關性最大的碼字,於 OSD(1)機制結束後回饋額外的訊息量修正 LLR,使 LRIP 中錯誤位置能較快速被更正,而 正確位置能夠加強信任度,使 MRPs 和 LRIPs 進行交換,使得解碼結果能不受到原來 MRPs 錯誤的影響而收斂至正確碼字。 圖 2-12、回饋機制輔佐 ABP-OSD(1)之解碼流程示意圖 回饋機制、 於每次疊代過程中,儲存 OSD(1)機制中所得到與接收信號相關性最大的碼字。若於 OSD(1)機制結束後,該碼字於某 LRP 的位置判斷為 0,則於該位置的 LLR 加上+A 的額外 消息量,若該碼字於某 LRP 的位置判斷為 1,則於該位置的 LLR 加上-A 的額外消息量, 其中A 為可調整之係數,且 A>0。

2-6.2 事前更正機制

[13]對於 MRPs 發生錯誤而導致錯誤傳遞提出另一種解決方法,在 JN-OSD(1)之前每 次翻轉一個 MRPs 的信任度正負號,產生 K 組額外訊號來幫助解碼,此方法類似 OSD(1), 但效能高於 OSD(1)。原因是,OSD(1)對於 MRPs 中錯誤個數高於 1 個的接收向量無法正 確解碼,但[13]可以仰賴 JN 傳遞機制,由其他正確位置更正 MRPs 的錯誤。 22

(32)

圖 2-13、事前更正機制輔佐 ABP-OSD(1)之解碼流程示意圖 事前更正機制、 (1) 依據接收信號的 LLR 絕對值|L(l) |的大小將每個位元位置進行排序,並且記錄排序 後的順序。利用高斯消去法,按照信任度由小至大的位置將 (0) b H 消為簡化梯式矩陣。 (2) 對於接收信號每次翻轉第i 個 MRPs 的 LLR 正負號值,其中1iK,共得到K 組 額外信號進行解碼。

2-6.2 模擬結果

接下來為(15,7)里德所羅門碼於 JN-OSD(1)演算法加以回饋機制輔佐的模擬結果, 由圖 2-可以發現,在效能上加以回饋機制輔佐較 JN-OSD(1)演算法的確由於解決了高 信任度錯誤位置,而在位元錯誤率 5 10 時,得到 0.45dB 的效能改善。 圖 2-14、(15,7)里德所羅門碼在四種演算法間比較 23

(33)

以下為(15,7)里德所羅門碼於 JN-OSD(1)演算法加以事前更正機制輔佐的模擬結 果,由於事前更正機制的確在 JN-OSD(1)解碼前,預先更正了高信任度錯誤位置減少了 錯誤傳遞,而提供了效能改善。由圖 2-15 可以發現,在效能上加以事前更正機制輔佐 較 JN-OSD(1)演算法在位元錯誤率105時,得到 0.35dB 的效能改善。 圖 2-15、(15,7)里德所羅門碼在五種演算法間比較 24

(34)

第三章

基於信念傳遞解碼之改良演算法

由於在 JN 演算法中,高度依靠高信任度的正確性,並透過利用高信任度位置經由 JN 演算法更正較容易發生錯誤的低信任度位置。因此,若高信任度位置發生錯誤,即使錯 誤個數不多,還是會發生嚴重的錯誤傳遞現象。而為了抑制此現象,[12]和[13]分別在 疊代過程中以及疊代前對訊號做處理。

3-1 初始機制

3-1.1 演算法基本概念與解碼步驟

在[12]疊代過程中,(1)JN 演算法輸逐漸成為合法碼字,但輸出若是錯誤碼字時,因 為滿足所有的校驗方程式,使得經過 JN 更新運算後只會增加此位置信任度值,並無法 透過 JN 演算法進行更正,並且(2)持續加大信任度值也相對使得 OSD 回饋的影響力變 小,亦即 OSD 演算法回饋的值是正確的,但卻沒辦法有效的降低錯誤位置的信任度。 圖 3-1、執行不同次數疊代時 ABP 演算法輸出為錯誤和輸出為錯誤的合法碼字個數 25

(35)

上圖為 (31,15)里德所羅門碼在 SNR=3.0dB 時,統計在執行不同次數疊代時 JN 演 算法輸出為錯誤個數和 JN 演算法輸出為錯誤的合法碼字個數,而橫軸表示執行疊代次 數,縱軸表示測式碼字中,發生此兩種情況的錯誤個數。由圖中得知,經過幾次疊代後 JN 演算法輸出為合法的錯誤碼字比例很高,此時若沒有額外機制擾動則無法再透過 JN 演算法進行更正。 因此提出初始化機制針對上述兩點改進 1. 透過初始化機制擾動錯誤的合法碼字,使得 JN 演算法能再度更正錯誤位置,並且有 機會收斂至另一個碼字。 2. 初始化後降低 LLR 的信任度大小,使 OSD 的回饋量能夠有效的影響每個位置的信任 度值。 圖 3-2、初始機制輔佐 ABP-OSD(1)之解碼流程示意圖 初始機制、 每隔幾次疊代,將當下的 LLR 調整為接收訊號的 LLR 值,再透過 OSD(1)所得到與接 收信號相關性最大的碼字。若於 OSD(1)機制結束後,該碼字於某 LRP 的位置判斷為 0, 則於該位置的 LLR 加上+A 消息量,若該碼字於某 LRP 的位置判斷為 1,則於該位置的 LLR 加上+A 的額外消息量,其中 A 之係數,且 A>0,OSD(1)機制回饋修正當下 LLR。表式示 如下: ) ( ) ( , ) ( ) ( ) 0 ( ) 0 ( i i i i c L c LLR else LRIP i A c L c LLR     (3.1) 26

(36)

圖 3-3、(15,7)里德所羅門碼配合初始機制在不同累積疊代次數初始 LLR 的情況

(37)

3-1.2 演算法數據觀察

接下來由模擬數據觀察並說明提出演算法和[12]分別在執行 5.10.15.20 次疊代 後,OSD 演算法所得到與接收訊號有最大相關性輸出碼字的高信任度位置錯誤分佈。橫 軸表示 OSD 演算法輸出碼字在高信任度位置的錯誤個數,而縱軸表示測式碼字中,發生 此情況的錯誤個數。此時提出演算法為每隔 6 次疊代初始化 LLR 值至接收訊號的 LLR 值, 同時最大疊代次數為 20 次。 圖 3-4、提出演算法和[12]在執行 5 次疊代後,OSD 演算法所得到與接收訊號有最大相 關性輸出碼字的高信任度位置錯誤分佈。 28

(38)

圖 3-5、提出演算法和[12]在執行 10 次疊代後,OSD 演算法所得到與接收訊號有最大相 關性輸出碼字的高信任度位置錯誤分佈。

圖 3-6、提出演算法和[12]在執行 15 次疊代後,OSD 演算法所得到與接收訊號有最大相 關性輸出碼字的高信任度位置錯誤分佈。

(39)

圖 3-7、提出演算法和[12]在執行 20 次疊代後,OSD 演算法所得到與接收訊號有最大相 關性輸出碼字的高信任度位置錯誤分佈。 觀察[12]和提出演算法,前者高信任度位置錯誤個數較少的碼字,經過幾次疊代後 逐漸被更正,而其餘高信任度位置錯誤個數較多的碼字無法透過[12]更正,因此分布逐 漸集中至較多錯誤的區域,而提出演算法的高信任度位置錯誤分布相較於[12]較集中在 較少錯誤的部分,這將有利於 OSD(1)演算法找到正確碼字,且 LLR 初始至接收信訊號的 初始 LLR 向量後變小,這時 OSD 的回饋也比較有效的更正或降低錯誤位置的信任度。 30

(40)

3-1.3 模擬結果

接下來由模擬數據觀察並說明提出演算法分別在不同碼率下錯誤率分佈,此時提出 演算法為每隔 6 次疊代初始 LLR 值至接收信號的 LLR 值,同時最大疊代次數為 20 次。 由於初始機制的確在疊代過程中合理的擾動錯誤的合法碼字之 LLR 值幫助解碼,而 提供了效能改善。(15,7)里德所羅門碼在位元錯誤率 10-5 時,提出演算法和 JN-OSD(1) 演算法加回饋機制方式相比得到 0.35dB 的效能改善。(31,15)里德所羅門碼在位元錯誤 率 10-3 時,JN-OSD(1)演算法加上回饋機制方式有 0.3dB 的效能改善,而提出演算法和 JN-OSD(1)演算法加回饋機制方式相比得到 0.2dB 的效能改善。(63,55)里德所羅門碼在 位元錯誤率 10-3 時,提出演算法和 JN-OSD(1)演算法有 0.4dB 的效能改善。 圖 3-8、比較(15,7)里德所羅門碼於提出演算法一與不同演算法錯誤率 31

(41)

圖 3-9、比較(31,15)里德所羅門碼於提出演算法一與不同演算法錯誤率

圖 3-10、比較(63,55)里德所羅門碼於提出演算法一與不同演算法錯誤率 32

(42)

3-2 修正型事前更正機制

3-2.1 演算法基本概念與解碼步驟

為抑制 JN 演算法中,高信任度位置發生錯誤造成的錯誤傳遞現象,[13]對於此提出 解決方法,在 JNOSD 之前翻轉每個 MRPs 的信任度,產生 K 組額外訊號來幫助解碼。 而[13]的方法在碼率低時較適合使用,隨著碼率越大複雜度呈現線性增加。因此本 論文針對碼率高的里德所羅門碼,考慮以相對較少的個校驗節點去選擇要翻轉信任度的 位置,選擇產生較少的(N-K)組額外訊號來幫助解碼。本論文中在低於[13]複雜度的前 提下,討論一個校驗節點選擇多個位置翻轉 LLR 值的情形,以下範例為一個校驗節點選 擇一個位置翻轉 LLR 值正負號,說明圖如下: 圖 3-11、提出演算法選擇一個位置翻轉 LLR 值正負號 以(7,4)里德所羅門碼為範例,一個以校驗節點所連接的位元節點中,選擇高信任 度位置裡信任度最低的位元翻轉 LLR 正負號,產生額外 N-K=3 組額外訊號幫助解碼,少 於[13]產生的 K=4 組額外訊號。 而當碼率越高時,圖 3-11、提出演算法選擇一個位置翻轉 LLR 值正負號選擇的(N-K) 組額外訊號將越小於 K 組額外訊號,因此在複雜度低於[13]的前提下,在一個校驗節點 連接 MRPs 中額外選擇更多個位置翻轉 LLR 正負號,因此有機會能在 JN-OSD 解碼之前, 事前更正較多個錯誤位置。 33

(43)

圖 3-12、修正型事前更正機制輔佐 ABP-OSD(1)之解碼流程示意圖 修正型事前更正機制、 (1)依據接收信號的 LLR 絕對值|L(l) |的大小將每個位元位置進行排序,並且記錄排序 後的順序。利用高斯消去法,按照信任度由小至大的位置將 (0) b H 消為簡化梯式矩陣。 (2)對於接收信號對應的 tanner 圖中,尋找第 i 校驗節點相連的 MRPs 中信任度最低的 位置,並翻轉其 LLR 正負號。若第 i 個校驗節點相連的 MRPs 中,信任度最低的位置 與第 1~i-1 個校驗節點相同,則找次低信任度的位置。其中1iNK,共得到 N-K 組額外信號進行解碼

3-2.2 提出演算法之討論

討論(N-K)里德所羅門碼,在低於[13]提出方法的複雜度前提下,一個校驗節點選擇 多個位置翻轉 LLR 值正負號的情形。以下說明以 Flip(1)、Flip(2)、Flip(3)統稱一個 校驗節點選擇 1 個、2 個、3 個位置翻轉其 LLR 值正負號。 Flip(1):碼率> 1/2 時,Flip(1)複雜度比[13]低。 與校驗節點相連的 MRPs 中,選擇信任度最低的位置,翻轉其正負號。若第 i 個校驗 節點相連的 MRPs 中,信任度最低的位置與第 1~i-1 個校驗節點相同,則找次低信任度 的位置。另外,由於碼率< 1/2 時,若 K 個位置已經被第 1~k 個校驗節點選過了,則其 餘校驗節點不再選擇位置翻轉 LLR 正負號。因此 FLIP 1 的複雜小於等於 Flip all。

Flip(2): 碼率>3/4 時,Flip(2)複雜度比[13]低。 與校驗節點相連的 MRPs 中,信任度最低與次低的位置,做 3 種翻轉正負號的組合。 其中第 i 個校驗節點中,若最低信任度位置與第 0~i-1 個校驗節點重複,則信任度次低 的位置不重複選擇,若次低的位置與第 0~i-1 個校驗節點相同,則找再次低信任度的位 置。根據最低信任度位置是否重複選擇,分為兩種例子,其中黑色圈圈表示翻轉信任度 34

(44)

正負號的位置,說明圖如下: 圖 3-13、第 i 個校驗節點中,選擇的兩個位置不與之前選擇的重複,共有三種組合 圖 3-14、第 i 個校驗節點中,選擇的信任度最低位置與之前選擇的重複,共有兩種組合 FLIP(3):碼率>7/8 時,FLIP(3)複雜度比[13]低。 與校驗節點相連的 MRPs 中,信任度最低與次低、第 3 低的位置,做 7 種翻轉正負 號的組合。其中第 i 個校驗節點中,若最低信任度位置或次低與第 0~i-1 個校驗節點重 複,則信任度第 3 低的位置不重複選擇,若第 3 低的位置與第 0~i-1 個校驗節點相同, 則找再低信任度的位置。根據最低信任度位置與次低信任度位置是否重複選擇,分為三 種例子,其中黑色圈圈表示翻轉信任度正負號的位置,說明圖如下: 圖 3-15、第 i 個校驗節點中,選擇的三個位置不與之前選擇的重復,共有七種組合 圖 3-16、第 i 個校驗節點中,選擇的信任度最低或次低位置與之前選擇的重復,共有六 種組合 35

(45)

圖 3-17、第 i 個校驗節點中,選擇的信任度最低和次低位置與之前選擇的重復,共有四 種組合 由上面討論中,若修正型事前更正機制滿足複雜低於事前更正機制的情況時,必滿足下 列式子(3.3) (n − k) × (2𝐹− 1) + 1 ≤ k + 1 (3.3) 其中參數 F 表示每個校驗節點中至多選擇 F 個位置翻轉 LLR 正負號,即修正型事前更正 機制 FLIP(F)。假設事前更正機制複雜度為 C,則修正型事前更正機制相對應複雜度應 為式子(3.4)

(𝑛−𝑘)×(2𝐹−1)+1 𝑘+1

𝐶

(3.4) 範例: (63,55)里德所羅門碼事前更正與修正型事前更正機制複雜度比較 FLIP(1): (378 − 330) × (21− 1) + 1 330 + 1 𝐶 = 49 331𝐶 = 0.148𝐶 FLIP(2): (378 − 330) × (22− 1) + 1 330 + 1 𝐶 = 145 331𝐶 = 0.438𝐶 FLIP(3): (378 − 330) × (23− 1) + 1 330 + 1 𝐶 = 337 331𝐶 = 1.0181𝐶 36

(46)

3-2.3 模擬結果

接下來由模擬數據比較提出演算法在不同碼率下錯誤率分佈和複雜度的關係,其中 最大疊代次數為 20 次。以下討論[13]所提出的方法皆以”FLIP(K)”稱之,模擬曲線 為”OSD(1)_JN Algorithm_modify”。 由於修正型事前更正機制的確在 JN-OSD(1)解碼前,預先更正了高信任度錯誤位置 減少了錯誤傳遞,而提供了效能改善。(63,55)里德所羅門碼模擬中,FLIP(K)共生成 K=330 組額外信號進行解碼,而提出演算法 FLIP(3)則生成 336 組額外信號進行解碼, 因此在複雜度相近情況下於接近 ML bound 時仍然有 0.05dB 的效能改善。(31,25)里德 所羅門碼模擬中,FLIP(K)共生成K=125 組額外信號進行解碼,而提出演算法 FLIP(1) 則生成 30 組額外信號、FLIP(2)生成 120 組額外信號進行解碼,因此 FLIP(1)複雜度為 FLIP(K)的 1/4 相近情況下達到相近的錯誤率表現。同樣地,(31,23)里德所羅門碼模擬 中,FLIP(1)以 1/4 的 FLIP(K)複雜度達到相近的錯誤率表現。 圖 3-18、比較(63,55)里德所羅門碼於提出演算法二與不同演算法錯誤率 37

(47)

圖 3-19、比較(31,25)里德所羅門碼於提出演算法二與不同演算法錯誤率

圖 3-20、比較(31,23)里德所羅門碼於提出演算法二與不同演算法錯誤率 38

(48)

3-3 信念傳遞混合列表解碼機制

3-3.1 演算法基本概念與解碼步驟

將 OSD(1)利用較不易發生錯誤的高信任度位置重新編碼,以得到較接近接收信號 的概念使用在 JN 疊代過程中,幫助加快更正低信任度位置的錯誤。操作方式為將原本 奇偶校驗矩陣H 隨機分割成較少列的b H ,由於b' H 只連接至一部分位元節點,因此也b' 只會連接至一部分的錯誤位置,而當錯誤個數較少時利用 OSD(1)演算法重新編碼,較容 易找到正確碼字。由原本奇偶校驗矩陣H 中切割較少列b H ,提出演算法為隨機以不重b' 復的兩個校驗節點為一組形成新的 ' b H ,說明圖如下: 圖 3-21、示範分割奇偶校驗矩陣H 成較少列的b H b' 39

(49)

圖 3-22、信念傳遞混合列表解碼機制輔佐 ABP-OSD(1)之解碼流程示意圖 信念傳遞混合列表解碼機制、 (1)將Hb中不重復的兩列一組,隨機分割成        2 K N 個 ' 'b H 。 (2)每一個分割後的 ' 'b H ,若其矩陣大小為(2*M),則每次翻轉一個 MRP 總共得 到(M 1)組額外信號並以此編碼得到(M 1)組候選碼字。 (3)記錄每個 ' 'b H 所產生候選碼字中相關性最大的碼字後,歸納每個位置被判斷為 0 或 1 的結果,若位元ci判斷為 0 的比例高於 1 的位置,則於經過 JN 更新訊 息 LLR 值後再加上+修正量,反之若位元ci判斷為 1 的比例高於 0 的位置, 則於經過 JN 更新訊息 LLR 值後加上-修正量 (3.5)

3-3.2 模擬結果

接下來由模擬數據觀察並說明提出演算法和其他演算法分別在不同碼率下錯誤率分 佈,最大疊代次數為 20 次。 (15,7)里德所羅門碼模擬中,在位元錯誤率 10-5 時,提出演算法和 JN-OSD(1)演算 法加回饋機制方式相比得到 0.15dB 的效能改善。(31,15)里德所羅門碼在位元錯誤率 10-4 時,提出演算法和 JN-OSD(1)演算法加回饋機制方式相比得到 0.15dB 的效能改善。 (31,25)里德所羅門碼在位元錯誤率 10-5 時,提出演算法和 JN-OSD(1)演算法有 0.1dB 的效能改善。 40             else , ) ( 1 codebit generated if , ) ( 0 codebit generated if , ) ( ) ( i i i i c LLR c LLR c LLR c LLR

(50)

圖 3-23、比較(15,7)里德所羅門碼於提出演算法三與不同演算法錯誤率

圖 3-24、比較(31,15)里德所羅門碼於提出演算法三與不同演算法錯誤率 41

(51)

圖 3-25、比較(31,25)里德所羅門碼於提出演算法三與不同演算法錯誤率

(52)

3-3.3 綜合提出演算法的模擬結果與討論

此節將討論混合提出演算法模擬結果,比較(31,15)里德所羅門碼之提出演算法一、 三和 JN-OSD(1)演算法加回饋機制模擬結果,在位元錯誤率 10-4 時分別有 1.5Db 和 1.0 dB 的效能改善,而提出演算法一結合三則有更好的效能改善,和 JN-OSD(1)演算法加回饋 機制相比有 1.8 dB 的效能改善。(15,7)里德所羅門碼模擬圖中,在位元錯誤率 10-5 時, 提出演算法一、三和 JN-OSD(1)演算法加回饋機制方式相比皆得到 0.15dB 的效能改善, 而同樣地結合提出演算法一和三則效能改善加大,大約得到 0.3 dB 的效能改善。(31,25) 里德所羅門碼在位元錯誤率 10-5 時,綜合提出演算法一和三得到有 0.25dB 的效能改善。 (63,55)里德所羅門碼模擬中,提出演算法二時結合提出演算法一在接近 ML bound 仍然 有小幅度的改善。在下列的 FER 模擬圖中,將以[15]中提出的方法計算 ML Union lower bound 並以 ML union LB 表示,而 ML LB 為[15]中的模擬結果。

圖 3-26、比較(31,15)里德所羅門碼於不同演算法 BER 錯誤率

(53)

圖 3-27、比較(31,15)里德所羅門碼於不同演算法 FER 錯誤率

圖 3-28、比較(31,25)里德所羅門碼於不同演算法 BER 錯誤率

(54)

圖 3-29、比較(31,25)里德所羅門碼於不同演算法 FER 錯誤率

圖 3-30、比較(15,7)里德所羅門碼於不同演算法 BER 錯誤率 45

(55)

圖 3-31、比較(15,7)里德所羅門碼於不同演算法 FER 錯誤率

圖 3-32、比較(63,55)里德所羅門碼於不同演算法 BER 錯誤率 46

(56)

圖 3-33、比較(63,55)里德所羅門碼於不同演算法 FER 錯誤率

(57)

第四章

結論

在本論文中,一開始介紹里德所羅門碼的二位元映射以及運算方式,並以此概念下 將里德所羅門碼的解碼方式視為二位元的線性區塊碼(block linear codes)的解碼。接 下來介紹 JN 演算法與 OSD(w)演算法,並針對 JN 演算法的錯誤傳遞問題進行討論,以及 介紹針對此問題的相關修正機制演算法。 而在本論文中於第三章中提出三種機制,初始機制、修正型事前更正機制與信念傳 遞混合列表解碼機制。由模擬數據顯示,針對疊代過程中錯誤的合法碼字進行初始機制 的確合理的擾動 LLR 值幫助解碼,此動作使 JN 演算法能再度更正錯誤位置,並且有 機會收斂至另一個碼字,而提供了效能改善。而修正型事前更正機制提出在複雜度低 於[13]的前提下,在 Tanner 圖裡由一個校驗節點連接高信任度位置中,額外選擇比[13] 提中方法中更多個位置翻轉 LLR 正負號,以達到在解碼前更正更多個高信任度位置錯 誤位置,以減少錯誤傳遞的影響。而信念傳遞混合列表解碼機制將 OSD(1)演算法的概 念運用至 JN 演算法疊代過程中,此概念為利用較不容易發生錯誤的高信任度位置重新 編碼,以得到與接收信號具有相關性最大的碼字並回饋修正量修正 LLR,以幫助低信任 度位置的錯誤加速被更正,且加速提昇低信任度正確位置的信任度,進而和高信任度 位置進行交換,並佐以模擬數據顯示了效能改善。最後,綜合提出三種演算法機制, 由模擬數據顯示結合不同的提出演算法將能得到更佳的效能改善。 48

數據

圖 2-4、高信任度位置發生一個錯誤
圖 2-8、高信任度位置發生兩個錯誤  圖 2-9、高密度位置發生兩個錯誤時的訊息傳遞情況  由於週期 4 的關係,錯誤的位元節點 3 和 4 持續收到錯誤的額外消息量,而變得更 難正確解碼。同樣地,考慮適應性信念傳遞解碼,在低信任度位置位元節點 3 和 4 發生 錯誤的情況,透過高斯消法的得到簡化梯式校驗矩陣,使得每個校驗節點僅連結至一個 低信任度的位元節點,而高密度位置為高信任度的位元節點,說明圖如圖 2-10  18
圖 2-10、高密度位置發生兩個錯誤時,經由高斯消去動作後的訊息傳遞情況
圖 2-13、事前更正機制輔佐 ABP-OSD(1)之解碼流程示意圖  事前更正機制、  (1)  依據接收信號的 LLR 絕對值 | L (l ) | 的大小將每個位元位置進行排序,並且記錄排序  後的順序。利用高斯消去法,按照信任度由小至大的位置將 H b( 0 ) 消為簡化梯式矩陣。  (2)  對於接收信號每次翻轉第 i 個 MRPs 的 LLR 正負號值,其中 1  i  K ,共得到 K 組   額外信號進行解碼。  2-6.2 模擬結果     接下來為(15,7)里德所羅門碼於 JN-O
+7

參考文獻

相關文件

 而良好的健康體適能是指人的心臟、血 管、肺臟及肌肉組織等都能充分發揮有 效的機能,以勝任日常工作,並有餘力

但是 T, A, O, I 出現的次數幾乎不相上下。 要是把每一種組合都試一遍, 直到得出一個 意思 來, 那會是一項沒完沒了的工作。 所以, 只好等新材料來了再說。

眾所周知: 有時, 某極值題或不等式 題可利用 Cauchy 不等式定理以解 (證) 之, 但其若干類似題則否。 筆者研究發現: 由 Cauchy 不等式定理入手, 將其作適當類推, 可得廣義

術科測試編號最小(假設為第 1 號)之應檢人抽中崗位號碼 6,則第 1 號應檢人入 座崗位號碼為 6,第 2 號應檢人入座崗位號碼為 7,第

本研究採用三種判斷準則來比較 Nelson-Siegel Model、Extend Nelson-Siegel Model 與 Nelson-Siegel-Svensson Model 的配適能力,配適結果如表 4 表示,其中

△△聯合診所所提供之服務範圍計有門診醫療服務(一樓)及 復健治療服務(二樓)兩項,本研究係針對一樓「門診醫療服務流 程」進行研究。由於△△聯合診所之門診醫療服務不具設計及研發

IP 電信得以擺脫傳統電信的束縛,其中有兩項重要的電信技術,一是能 提供整合語音與數據服務之 SIP(Session Initiation Protocol)標準,另一項則是 提供電話號碼與 IP

針對 WPAN 802.15.3 系統之適應性柵狀碼調變/解調,我們以此 DSP/FPGA 硬體實現與模擬測試平台進行效能模擬、以及硬體電路設計、實現與測試,其測 試平台如圖 5.1、圖