• 沒有找到結果。

2.6.1 Layered BP 演算法

整個 Layered BP 演算法的概念,就是將同位檢查矩陣H 從水平(horizontal)

p

方向分割成數個不同的層(layer),每一層稱為一個子矩陣(sub-matrix),並 個 check node,故我們必須對 Sum-product 演算法做部分的修正,才能對一個子 矩陣進行解碼的運算。在此,我們先對單一個子矩陣做解碼的分析:

觀察

( 2.74 )

式與

( 2.75 )

式,我們可發現,在

( 2.74 )

式中所更新的LLR q (bit

( ) ij

nodeB 至 check node

i

C 機率資訊)

j

,會立即被使用於LLR r

( ) ij

(check nodeC 至

j

bit nodeB 機率資訊)的計算上,而 Layered BP 演算法也因為此項特性,可以只

i

用較少的遞迴次數,便達到和 Sum-product 演算法相同的位元錯誤率;另外,因 為我們是將一個子矩陣視為一個同位檢查矩陣來處理,而一個子矩陣的解碼運算 中,最多只會有和碼字長度一樣多的 bit node 至 check node 之機率資訊要儲存,

所以在此一架構下,硬體設計可節省掉將近一半的記憶體空間;這是 Layered BP 演算法的兩個優點。但 Layered BP 演算法仍有其缺點存在,其中一個是

( 2.75 )

(check node 至 bit node 之機率資訊計算式),此計算式中的

tanh

及tanh

1

函式太 過複雜,並不適合硬體設計;另一個則是其將同位檢查矩陣H 分層處理的架構,

p

需處理完一個子矩陣,才能進行下一個子矩陣的運算,而原本 Sum-product 演算 法在解碼時,是以平行化運算的結構來進行解碼運算,但 Layered BP 演算法分 層處理的架構卻破壞了其平行化處理的優點,降低了解碼的速度。

2.6.2 Layered BP 演算法修正

為了解決上述的兩個缺點,吾人提出兩個方法,對 Layered BP 演算法作些 微的修正,以處理這兩個缺點。其中第一個缺點,我們可將 Layered BP 演算法 與 Normalized BP-based 演算法結合(可稱之為 Layered Normalized BP-based 演 算法),把

( 2.75 )

式以

( 2.49 )

式取代。同樣地,我們在計算正規化參數α 時,也 只考慮在第一次遞迴內第一個子矩陣所造成的影響,而不去考慮第二個子矩陣之 後的效應,而在第一次遞迴的第一個子矩陣內,Layered BP 演算法的LLR q (bit

( ) ij

nodeB 至 check node

i

C 機率資訊)

j

,也一樣與 BP-based 演算法的LLR q

( ) ij

相同,

皆會被初始化為

LLR p ( ) i

(another nodeN 至 bit node

i

B 機率資訊)

i

,即:

( ) 1 ( ) ij Layer BP _ ( ) 1 ( ) ij BP base ( ) i

LLR q LLR q LLR p

=

= (2.77)

,故 Layered Normalized BP-based 之正規化參數α 之值與 Normalized BP-based 演算法之正規化參數α 之值相同,可用相同的計算式求得。

1 0 1 1 0 0 1 0 0 1

2.6.3 Layered Normalized BP-based 演算法解碼流程

若同位檢查矩陣 H 被分割成 M 層子矩陣:

則表示為第

m

層子矩陣內之計算。

Codes,在 BPSK 系統、AWGN 通道環境下進行測試,並將這些 LDPC Codes 之 解碼演算法的效能和 Sum-product 演算法的效能做比較。

由圖 2-7 與圖 2-8 之模擬結果,可知經由正規化參數修正後的演算法,有較 低的位元錯誤率,其效能更接近 Sum-product 演算法的模擬結果,而其中的 df

(dynamic factor,依照其所在之 SNR 來計算其正規化參數之值)與 cf(constant factor,正規化參數之值固定由介於10

3

到10

4

之間的某個 SNR 所求得)兩者之 模擬結果機乎是相同的,由介於10

3

到10

4

之間的 SNR 之值所計算之正規化參 數確實可操作在任何 SNR 上。

相關文件