低密度校驗碼(LDPC)
2.2.4 實用的解碼方法
| 2.3 準循環 LDPC 碼(QC-LDPC)|
LDPC 碼的構造方法大體有兩大類:随機生成和結構化生成。随機産生的 矩陣沒有明顯的結構。相對規則 LDPC 碼,T. Richardson 提出的非規則碼 [21] 能明顯提升性能。這類構造方法比較适合較長的碼塊。如上節分析,當碼長在百萬級别,采用非規則 LDPC 碼,這種設計可以很好地逼近香農容量。但是随機生成的矩陣由于沒有特别的結構特征,譯碼實作沒有簡便算法。這使得其在實際系統中的算法複雜度高、吞吐量低,難以推廣。
結構化的展現可以是多種的。當今最為廣泛應用的是準循環結構。該種結 構最初在規則 LDPC 碼中使用。它形成十分規則的形态,可以從理論上分析其 性能。之後,該思想被推廣到非規則 LDPC 碼,其設計的自由度更大,性能優 化的空間也有所提高。雖然結構性設計對性能有一定的影響,不一定能十分逼近香農容量,但譯碼算法得到大量的簡化,複雜度降低。另外,準循環結構可以降低譯碼時延以增加資料吞吐量,是以,它在實際系統中獲得廣泛應用。
結構化 LDPC 碼也被稱為準循環(Quasi-Cyclic)LDPC 碼。QC-LDPC 碼已經廣泛應用 IEEE 802.11、IEEE 802.16、DVB-S2 等系列标準,上述标 準都采用不同碼率的 LDPC 校驗矩陣,以保證 LDPC 碼具有低複雜度、優異性能和較高吞吐量。例如,在 IEEE 802.11n/ac 中,采用了 12 種校驗矩陣,提 供 4 種碼率、3 種碼長的編碼方案。在 IEEE 802.11ad 中,采用了 4 種校驗矩 陣,提供 4 種固定碼長但不同碼率的編碼方案。在 IEEE 802.16e 中,采用了 6 種校驗矩陣,硬體上提供 4 種碼率、19 種碼長的編碼方案。
QC-LDPC 碼的技術優勢在于:
- QC-LDPC 碼具有接近香農限的性能;
- QC-LDPC 碼的低差錯平層(Error Floor)的性能。進而使得它适用于高 可靠系統;
- QC-LDPC 碼的并行譯碼特性,使得它适合于高并行度和靈活并行度的系統;
- QC-LDPC 譯碼速度快,适用于高吞吐量和低延遲時間的系統;
- 固定碼長和有限多個碼率條件下,QC-LDPC碼譯碼硬體可以統一,并且簡單有效;
- QC-LDPC 碼具有碼率越高、複雜度越低的特性,有利于提升峰值速率。
2.3.1 擴充矩陣
基于準循環矩陣擴充的思想萌芽始于 LDPC 發明者的論文 [1-2],但論文中隻是講排列(Permutation),如下所示的矩陣,為一個 20 列 15 行的規則校驗矩 陣,行重為 4,列重為 3。

這個矩陣并沒有限定是循環重排(Circulant Permutation)。将矩陣劃分 成 3 行 4 列的 12 塊子矩陣,可以注意到,下面兩行重的子塊矩陣是 5×5 機關 矩陣的移位,移位的方式相對比較任意,隻要滿足列重和行重的要求即可。
如果奇偶校驗矩陣是通過一個基礎矩陣(Proto Matrix)進行擴充得到, 那麼無論碼長是多少,描述都很簡潔,符合子產品化設計的思想。基礎矩陣介紹 如下。其中,H 為一個擴充矩陣。
在這裡用腳标i和j分别代表分塊矩陣的行和列的索引。如果h,=-1,則定義p峰=0,即該分塊矩陣為全0方陣;如果h,為非負整數,則定義p鳴=(P)。其中, P是一個zxz的标準置換矩陣, 也是一個經過循環移位的機關矩陣(非負的幂次代表移位的位數),如P所示(幂次為1)。
這裡的連線代表基礎矩陣中非負的元素,其中,對與校驗節點 1 連接配接的三 條線進行了加黑,分别用實線、破折虛線和點虛線圈出。當 z = 3,則擴充矩陣 如下:
其擴充矩陣的Tanner圖如圖2-8所示:
可以看出這個擴充矩陣相當于把基礎矩陣中的節點(變量節點和校驗節點) 拷貝 3 份(包括連線)。當基礎矩陣中的元素為 0,循環移位陣是一個機關陣。 連線關系保持不變,如實線圈中的部分,以及點虛線中的部分。當基礎矩陣中 的元素是自然數時,循環移位矩陣中的元素進行相應的移位循環,使得連線循環重排,如破折虛線中的部分。
衆所周知,循環移位在硬體中十分容易實作。而基礎矩陣擴充的構造方法 是,将一個适合多個碼長的校驗矩陣分解成一個固定的部分(基礎矩陣)和一個可變的部分(循環移位的分塊矩陣)。固定部分的基礎矩陣可以相對固化在硬 件實作當中,沿用基本的 LDPC 的編碼和譯碼算法,進行軟資訊的疊代。而相 對可調的循環移位分塊矩陣隻是拷貝這些軟資訊,再在分塊矩陣内做循環重排, 即調整軟資訊的流入 / 流出節點。至少對于每一次疊代,這個處理過程可以分 别在各個分塊矩陣内進行。如果硬體處理單元足夠,可以做到充分的并行處理。 根據以上分析可以知道準循環 LDPC 碼可以由基礎矩陣、提升值和标準置換矩陣等參數唯一定義。
對于準循環 LDPC 碼,擴充矩陣可以由一個循環移位分塊矩陣來進行擴充 而得到,如上面過程所述。如果所述用于擴充的分塊矩陣都是一個機關矩陣的 循環移位矩陣,則每個分塊矩陣的行重量和列重量都等于 1,我們稱這種為單 “邊”矩陣(Single Edge),但如果某些分塊矩陣的行重量或者列重量不等于 1, 則被稱為多邊(Multi-Edge)矩陣。所述的多邊矩陣可以看成是由多個不同的 分塊矩陣疊加而成,每個分塊矩陣都是機關矩陣的循環移位矩陣,隻不過該多 個分塊矩陣的循環移位值不同。多邊基礎矩陣如圖 2-9 和圖 2-10[22] 所示。特 别是圖 2-10 中,在某些地方出現了兩個不同的移位值。
多邊構造法的優勢在于給準循環 LDPC 碼的設計帶來更大的靈活度。例 如,當碼率比較高的時候,基礎矩陣的行數和列數都比較小。通過多邊構造的 方法,可以對基礎矩陣中的個别列(移位值)增加列重量,進而可以提高性能。 從圖 2-11 中 [23] 可以看出,在 BLER = 1% 時,多邊 LDPC 碼比單邊 LDPC 碼約好 0.15 dB。
多邊結構雖然可以優化 LDPC 碼的性能,但是也會帶來譯碼器實作上的問 題。從存儲中讀寫資料的時候,因為位址沖突,多邊矩陣不能一次将資料讀出 或寫入存儲器,必須增加額外的控制邏輯,這會增加譯碼器的複雜度和時延。 也是基于這種考慮,5G-NR eMBB 的 LDPC 最終沒有采用多邊結構。
2.3.2 基礎矩陣的基本結構
5G-NReM BB的LDPC采用了所謂的“Raptor-like”的結構, 其奇偶校驗矩陣可以通過一個高碼率的核心矩陣(Kernel Matrix) 逐漸擴充到低碼率。這樣可以靈活地支援各種碼率的編碼。其奇偶校驗矩陣具有如圖2-12所示的結構:
其中,A和B共同組成了高碼率的核心矩陣,A對應于待編碼的資訊比特,B是一個方陣,并且B矩陣具有雙對角結構,對應于高碼率的校驗比特。C是一個全零 矩陣。E是一個機關陣,對應于低擴充碼率的校驗比特。D和E共同構成了單奇偶校驗關系。截至目前, 3GPPRAN 1規定了在eM BB場景下采用長x寬分别為46×68和42x52的兩種基礎矩陣分别支援大碼長高碼率和中低碼長低碼率的編碼。在5G-NReM BB資料信道中使用的基礎矩陣的一部分如圖2-13所示。k imax是最大系統位列數, mi是校驗位部分的列數(或者行數) 。n; 是基礎矩陣的總列數。其中,圖中顔色深的點在系統位部分代表矩陣的非負元素,0元素代表對應的循環移位矩陣為機關矩陣。
圖2-13左上角實線圍成的部分是基礎校驗矩陣的核心矩陣(KernelMatrix) , 對應的是最高碼率。它的校驗位部分(B矩陣) 包含了一種被稱為雙對角(Dual-diagonal) 的特殊結構, 在雙對角結構的前面還有一列的列重為3,這種設計可以降低編碼的複雜度,避免在編碼的時候用到矩陣求逆等複雜的運算。對于中低碼率, 采用的是單奇偶校驗(Single Parity Check) 的方式降低碼率,即隻要是最高碼率的碼字生成之後,隻需要根據簡單的奇偶校驗關系就能求得低碼率部分的校驗比特。
可以看出,系統位矩陣的最左邊列的列重很大,目的是保證校驗節點通過 與前幾個變量節點的充分連接配接,來達到校驗節點彼此之間的軟資訊的順暢流通。 圖 2-14 是對應于圖 2-13 中的系統位矩陣的 Tanner 圖。可以明顯地看出,前 兩個變量節點與大多數的校驗節點相連。大量分析和仿真證明,如果不傳輸左 邊列重很大的變量節點所對應的系統比特,準循環 LDPC 碼的性能可以進一步 提高。注意,這裡盡管開頭的兩個系統比特被打掉,但是它們與校驗節點的連 接仍然存在,在譯碼時,可以利用這兩個變量節點來傳遞軟資訊。
2.3.3 編碼算法
編碼的大體過程如下。
(1)利用 Kernel 矩陣(A+B)對資訊比特進行編碼。由于 B 矩陣具有雙 對角結構,因而可以快速編碼。
(2)如果目标碼率高于 Kernel 矩陣的碼率,則對校驗比特進行打孔;如果目标碼率低于 Kernel 矩陣的碼率,則利用 D+E 矩陣的單奇偶校驗關系得到低碼率的校驗比特。
另外,為了保證首次傳輸的性能,通常A矩陣的最前面 2 列對應的資訊比特也被打孔。
1.Kernel矩陣的編碼
由于LDPC碼是由奇偶校驗矩陣定義, 以及LDPC碼基本都是系統碼, 是以,在LDPC編碼的過程中可以不需要擷取LDPC碼的生成矩陣,而是直接根據奇偶校驗矩陣進行編碼。而準循環LDPC碼是根據基礎矩陣、提升值和置換矩陣唯一定義,具有結構化特性,是以在準循環LDPC編碼的過程中,可以隻根據這3個變量進行編碼。準循環LDPC編碼的計算原理是基于奇偶校驗矩陣與碼字C的乘積等于0,即
2. 低碼率的編碼
由于基礎矩陣的擴充碼率部分是單奇偶校驗結構,是以很容易就可以計算 出低碼率的校驗比特,見式(2-50)。