專利名稱:低密度奇偶校驗碼校驗矩陣的構造方法及裝置的制作方法
技術領域:
本發明涉及低密度奇偶校驗碼技術領域,尤其涉及一種低密度奇偶校驗碼校驗矩陣的構造方法及裝置。
背景技術:
低密度奇偶校驗(LDPC,Low Density Parity Check)碼是一類由稀疏矩陣定義的線性分組碼,其迭代譯碼算法比較簡單,具有逼近香農限的性能,目前,很多通信系統的標準中均采用了 LDPC碼。LDPC碼的編碼方法有很多,大致可以分為隨機構造法和代數構造法。隨機構造法雖然符合香農信息論中的隨機編碼思想,在碼長較長時具有逼近香農限的性能,但是由于隨機構造出的LDPC碼沒有一定的碼結構,因此編譯碼的復雜度較高,在實際應用中,大多 采用代數構造法來構造LDPC碼。代數構造法包括有限幾何法、圖論法、置換法等,這些不同的代數構造方法都是為了實現以下幾個目的盡可能增大二分圖(也可以稱為Tanner圖)中的環的環長、優化非規則碼的節點度分布、減少編碼復雜度、保證構造的LDPC碼具有良好的碼性能等。和積算法是一種迭代的概率譯碼方法,由于其較低的復雜度和較優的譯碼性能,成為LDPC碼的首選譯碼方法。若LDPC碼的校驗矩陣中不存在環,則和積算法就等效于逐符號的最大后驗概率譯碼算法,此時和積算法可以實現最佳譯碼。但是,LDPC碼的校驗矩陣一般存在環,其中,環長為不小于4的偶數,若LDPC碼的校驗矩陣中存在環,則由和積算法計算所得的概率并非真正的后驗概率,并不能達到最優的逐符號的最大后驗概率,因此環的存在使得譯碼的最優性能得不到滿足,尤其是環長較短的環(也可以稱為短環,例如環長為4)會嚴重影響LDPC碼的譯碼性能,因此,在構造LDPC碼的校驗矩陣時,應盡量避免出現短環,以減少短環對LDPC碼的譯碼性能的影響。現有技術中還沒有提出構造不存在短環的LDPC碼校驗矩陣的具體實現方案。
發明內容
本發明實施例提供一種LDPC碼校驗矩陣的構造方法及裝置,用以提出一種構造不存在短環的LDPC碼校驗矩陣的具體實現方案。本發明實施例技術方案如下一種LDPC碼校驗矩陣的構造方法,該方法包括步驟根據預設的分組長度值,將低密度奇偶校驗LDPC碼的信息比特劃分成各分組;針對劃分出的每個分組,分別執行根據循環移位值和分組長度值,搜索初始校驗地址;判斷搜索到的該初始校驗地址和該分組的初始校驗地址所構成的校驗矩陣中是否存在環長不大于第一規定閾值的環,在判斷結果為否時,將搜索到的該初始校驗地址確定為該分組的初始校驗地址;判斷該分組的初始校驗地址的數量是否達到預設的第二規定閾值,并在判斷結果為否時,返回繼續執行搜索初始校驗地址的操作;在針對各分組分別確定出數量為第二規定閾值的初始校驗地址后,根據確定出的初始校驗地址,構造對應的LDPC碼校驗矩陣。一種LDPC碼校驗矩陣的構造裝置,包括劃分模塊,用于根據預設的分組長度值,將低密度奇偶校驗LDPC碼的信息比特劃分成各分組;搜索模塊,用于針對劃分模塊劃分出的每個分組,分別根據循環移位值和 分組長度值,搜索初始校驗地址,以及在第二判斷模塊的判斷結果為否時,繼續執行搜索初始校驗地址的操作;第一判斷模塊,用于判斷搜索模塊搜索到的該初始校驗地址和確定模塊已確定出的、該分組的初始校驗地址所構成的校驗矩陣中是否存在環長不大于第一規定閾值的環;確定模塊,用于在第一判斷模塊的判斷結果為否時,將搜索模塊搜索到的該初始校驗地址確定為該分組的初始校驗地址;第二判斷模塊,用于判斷該分組的初始校驗地址的數量是否達到預設的第二規定閾值;構造模塊,用于在確定模塊針對各分組分別確定出數量為第二規定閾值的初始校驗地址后,根據確定模塊確定出的初始校驗地址,構造對應的LDPC碼校驗矩陣。本發明有益效果如下本發明實施例技術方案中,首先根據預設的分組長度值,將LDPC碼的信息比特劃分成各分組,針對劃分出的每個分組,分別根據循環移位值和分組長度值,搜索初始校驗地址,判斷搜索到的該初始校驗地址和該分組的初始校驗地址所構成的校驗矩陣中是否存在環長不大于第一規定閾值的環,在判斷結果為否時,將搜索到的該初始校驗地址確定為該分組的初始校驗地址,判斷該分組的初始校驗地址的數量是否達到預設的第二規定閾值,并在判斷結果為否時,返回繼續執行搜索初始校驗地址的操作,在針對各分組分別確定出數量為第二規定閾值的初始校驗地址后,根據確定出的初始校驗地址,構造對應的LDPC碼校驗矩陣。由上可見,本發明實施例技術方案提出了一種構造不存在短環的LDPC碼校驗矩陣的具體實現方案,從而避免了在構造LDPC碼的校驗矩陣時出現短環,有效地減少了短環對LDPC碼的譯碼性能的影響。
此處所說明的附圖用來提供對本發明的進一步理解,構成本發明的一部分,本發明的示意性實施例及其說明用于解釋本發明,并不構成對本發明的不當限定。在附圖中圖I為本發明實施例中,LDPC碼校驗矩陣的構造方法流程示意圖;圖2為本發明實施例中,針對每個分組分別確定初始校驗地址的方法具體實現流程不意圖;圖3為本發明實施例中,LDPC碼校驗矩陣的構造裝置結構示意圖;圖4為本發明實施例中,LDPC碼編碼器的硬件實現結構示意圖;圖5為本發明實施例中,LDPC碼校驗矩陣的構造裝置結構示意圖;圖6為本發明實施例中,當LDPC碼編碼器處于信息比特輸入狀態時,控制電路產生的控制信號的時序示意圖;圖7為本發明實施例中,當LDPC碼編碼器處于校驗比特輸出狀態時,控制電路產生的控制信號的時序示意圖。
具體實施例方式為了使本發明所要解決的技術問題、技術方案及有益效果更加清楚、明白,以下結合附圖和實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。擴展非規則重復累加碼是一類編碼具有線性復雜度的LDPC碼,令LDPC碼的碼長為N,信息比特長度為K,校驗比特長度為M = N-K, LDPC碼校驗矩陣H具有如下形式H= [H1, H2]其中,H1是MXK階的稀疏矩陣,H2是MXM階的階梯下三角矩陣。稀疏矩陣H1 —般采用結構化構造的方法,根據分組長度值P,將LDPC碼的信息比特K劃分成各分組,共劃分為fT個分組,fT =K/P,每個分組中,首個列向量中“I”的位置稱之該分組的初始校驗地址,分組中其余列向量中“ I ”的位置稱為移位校驗地址,初始校驗地址和移位校驗地址可以統稱為校驗地址,移位校驗地址由前一列向量的校驗地址向下循環移位q次得到,Q稱為循環移位值,q = M/P,P能被M整除。由上可見,構造LDPC碼校驗矩陣H時,如果校驗比特長度M已知,則可獲得階梯下三角矩陣H2,那么只需要構造稀疏矩陣H1即可,因此需要獲知各分組的校驗地址,而分組的移位校驗地址由初始校驗地址循環移位得到,因此,為了保證構造出的校驗矩陣H不出現短環,顯然每個分組的初始校驗地址的選取尤為重要。如圖I所示,為本發明實施例中,LDPC碼校驗矩陣的構造方法流程圖,其具體處理流程如下步驟11,根據預設的分組長度值,將LDPC碼的信息比特劃分成各分組;將0 (M-I)這M個校驗地址按從小到大的順序,每q個分成一個分段,共分為P個分段,P不僅表示分組長度值,還表示分段的數量,將初始校驗地址表示成商值乘以P再加上余數值的形式,即初始校驗地址=商值XP+余數值其中,商值取自與分組長度值P對應的商值集合{0,1,A P-1},余數值取自與循環移位值q對應的余數值集合{0,1,Aq-1}。 步驟12,針對劃分出的每個分組,分別根據循環移位值和分組長度值,搜索初始校驗地址;在針對每個分組分別進行初始校驗地址的搜索時,只需要在商值集合{0,1,AP-1}中選取一個商值,在余數值集合{0,1,Aq-1}中選取出一個余數值,然后將商值與分組長度值P進行積運算后,再與循環移位值q進行和運算,得到的值即為搜索到的初始校驗值。步驟13,判斷搜索到的該初始校驗地址和該分組的初始校驗地址所構成的校驗矩陣中是否存在環長不大于第一規定閾值的環,在判斷結果為是時,轉至步驟12,在判斷結果為否時,轉至步驟14 ;
、
針對每個分組,先按照步驟12,搜索出第一個初始校驗地址,由于不存在確定出的初始校驗地址,因此可以直接將搜索到的第一個初始校驗地址確定為該分組的初始校驗地址,繼續搜索初始校驗地址,由搜索到的初始校驗地址和確定出的、該分組的初始校驗地址構成校驗矩陣,判斷構成的校驗矩陣中是否存在環長不大于第一規定閾值的環,即判斷是否存在短環,若判斷出存在短環,則認為本次搜索到的初始校驗地址不滿足條件,此時需要在預設的最大搜索次數的范圍內,反復進行隨機搜索,直至搜索到校驗矩陣中不存在短環的初始校驗地址,若判斷出不存在短環,則認為本次搜索到的初始校驗地址滿足條件,可以轉至步驟14,確定為該分組的初始校驗地址。其中,最大搜索次數為Max_SN,若達到最大搜索次數時,仍未搜索到校驗矩陣中不存在短環的初始校驗地址,則中斷搜索過程,此時,可以減小每個分組內初始校驗地址的數量T值或fT值,然后重新開始搜索初始校驗地址。上述第一規定閾值可以進行設置,例如設置為4,若校驗矩陣中存在環長為4的環,則認為存在短環。在判斷校驗矩陣是否存在短環時,簡單的代數方法為將校驗矩陣乘以該校驗矩陣的轉置,得到對應的方陣,若除方陣對角線上的元素之外的其余元素均不大于1,則校驗矩陣不存在短環,否則存在短環。步驟14,將搜索到的該初始校驗地址確定為該分組的初始校驗地址;
步驟15,判斷該分組的初始校驗地址的數量是否達到預設的第二規定閾值,在判斷結果為是時,轉至步驟16,在判斷結果為否時,轉至步驟12 ;上述第二規定閾值即為預設的每個分組內初始校驗地址的數量I其中T ^P0
在將搜索到的該初始校驗地址確定為該分組的初始校驗地址之后,在繼續執行搜索初始校驗地址的操作之前,可以記錄余數值的使用次數,即將本次選取的余數值對應的使用次數累計加1,在從循環移位值q對應的余數值集合中,選取一個余數值時,確定針對余數值集合所包含的各余數值分別累計的使用次數,選擇出使用次數最少的余數值,若使用次數最少的余數值為I個,則直接選取該余數值,若使用次數最少的余數值為至少兩個,則在使用次數最少的余數值中,隨機選擇一個余數值,這樣就使得余數值被選取的次數盡量相同,以達到校驗節點的度值盡量保持均勻的目的。設分組的初始校驗地址為n,0彡n彡M-I,其對q值取模,余數值為a,gpa =ymodq,則根據下式的計算,分組內其余列的移位校驗地址中必含有余數值為a的移位校驗地址。(( n +iq)modM)modq = nmodq = a其中,I彡 i 彡 P-1。即具有相同余數值的校驗地址對應的校驗節點必定具有相同的度值,即校驗矩陣的行重。這個結論為在搜索初始校驗地址的過程中,如何保持校驗節點的度值盡量均勻提供了依據。在將搜索到的該初始校驗地址確定為該分組的初始校驗地址之后,在繼續執行搜索初始校驗地址的操作之前,還可以將選取的商值,從分組長度值對應的商值集合中刪除,其目的是將分組內的初始校驗地址放置于P個分段中的不同分段內。步驟16,在針對各分組分別確定出數量為第二規定閾值的初始校驗地址后,根據確定出的初始校驗地址,構造對應的LDPC碼校驗矩陣。在構造LDPC碼校驗矩陣H時,先根據針對各分組分別確定出的初始校驗地址,構造對應的稀疏矩陣H1,然后根據構造的所述稀疏矩陣H1和與該稀疏矩陣H1對應的階梯下三角矩陣H2,構造對應的LDPC碼校驗矩陣H。例如,T= 3, f T = 2, M = 12, P = 4, q = 3, Max_N = 1000,針對兩個分組確定出的初始校驗地址分別為{2,4,11}和{1,6,9},構造的校驗矩陣H為
權利要求
1.一種低密度奇偶校驗碼校驗矩陣的構造方法,其特征在于,包括 根據預設的分組長度值,將低密度奇偶校驗LDPC碼的信息比特劃分成各分組; 針對劃分出的每個分組,分別執行 根據循環移位值和分組長度值,搜索初始校驗地址; 判斷搜索到的該初始校驗地址和該分組的初始校驗地址所構成的校驗矩陣中是否存在環長不大于第一規定閾值的環,在判斷結果為否時,將搜索到的該初始校驗地址確定為該分組的初始校驗地址; 判斷該分組的初始校驗地址的數量是否達到預設的第二規定閾值,并在判斷結果為否時,返回繼續執行搜索初始校驗地址的操作; 在針對各分組分別確定出數量為第二規定閾值的初始校驗地址后,根據確定出的初始校驗地址,構造對應的LDPC碼校驗矩陣。
2.如權利要求I所述的方法,其特征在于,根據循環移位值和分組長度值,搜索初始校驗地址,具體包括 從分組長度值對應的商值集合中,選取一個商值; 從循環移位值對應的余數值集合中,選取一個余數值; 將選取的商值與所述分組長度值進行積運算后,與選取的余數值進行和運算; 將運算得到的值確定為搜索到的初始校驗地址。
3.如權利要求2所述的方法,其特征在于,在繼續執行搜索初始校驗地址的操作之前,還包括 將選取的余數值對應的使用次數累計加I ; 從循環移位值對應的余數值集合中,選取一個余數值,具體包括 確定針對余數值集合所包含的各余數值分別累計的使用次數; 選擇出使用次數最少的余數值; 在選擇出的使用次數最少的余數值中,選擇一個余數值。
4.如權利要求2所述的方法,其特征在于,在繼續執行搜索初始校驗地址的操作之前,還包括 將選取的商值,從分組長度值對應的商值集合中刪除。
5.如權利要求I所述的方法,其特征在于,根據針對各分組分別確定出的初始校驗地址 >,構造對應的LDPC碼校驗矩陣,具體包括 根據針對各分組分別確定出的初始校驗地址,構造對應的稀疏矩陣; 根據構造的所述稀疏矩陣和與該稀疏矩陣對應的階梯下三角矩陣,構造對應的LDPC 碼校驗矩陣。
6.一種低密度奇偶校驗碼校驗矩陣的構造方法,其特征在于,包括 劃分模塊,用于根據預設的分組長度值,將低密度奇偶校驗LDPC碼的信息比特劃分成各分組; 搜索模塊,用于針對劃分模塊劃分出的每個分組,分別根據循環移位值和分組長度值,搜索初始校驗地址,以及在第二判斷模塊的判斷結果為否時,繼續執行搜索初始校驗地址的操作; 第一判斷模塊,用于判斷搜索模塊搜索到的該初始校驗地址和確定模塊已確定出的、該分組的初始校驗地址所構成的校驗矩陣中是否存在環長不大于第一規定閾值的環; 確定模塊,用于在第一判斷模塊的判斷結果為否時,將搜索模塊搜索到的該初始校驗地址確定為該分組的初始校驗地址; 第二判斷模塊,用于判斷該分組的初始校驗地址的數量是否達到預設的第二規定閾值; 構造模塊,用于在確定模塊針對各分組分別確定出數量為第二規定閾值的初始校驗地址后,根據確定模塊確定出的初始校驗地址,構造對應的LDPC碼校驗矩陣。
7.如權利要求6所述的裝置,其特征在于,搜索模塊具體包括 第一選取子模塊,用于從分組長度值對應的商值集合中,選取一個商值; 第二選取子模塊,用于從循環移位值對應的余數值集合中,選取一個余數值; 運算子模塊,用于將第一選取子模塊選取的商值與所述分組長度值進行積運算后,與第二選取子模塊選取的余數值進行和運算; 確定子模塊,用于將運算子模塊運算得到的值確定為搜索到的初始校驗地址。
8.如權利要求7所述的裝置,其特征在于,還包括 累計模塊,用于在搜索模塊繼續執行搜索初始校驗地址的操作之前,將第二選取子模塊選取的余數值對應的使用次數累計加I ; 第二選取子模塊具體用于 確定累計模塊針對余數值集合所包含的各余數值分別累計的使用次數,選擇出使用次數最少的余數值,以及在選擇出的使用次數最少的余數值中,選擇一個余數值。
9.如權利要求7所述的裝置,其特征在于,還包括 刪除單元,用于在搜索模塊繼續執行搜索初始校驗地址的操作之前,將第一選取子模塊選取的商值,從分組長度值對應的商值集合中刪除。
10.如權利要求6所述的裝置,其特征在于,構造模塊具體包括 第一構造子模塊,用于在確定模塊針對各分組分別確定出數量為第二規定閾值的初始校驗地址后,根據確定模塊確定出的初始校驗地址,構造對應的稀疏矩陣; 第二構造子模塊,用于根據第一構造子模塊構造的所述稀疏矩陣和與該稀疏矩陣對應的階梯下三角矩陣,構造對應的LDPC碼校驗矩陣。
全文摘要
本發明公開了一種LDPC碼校驗矩陣的構造方法及裝置,該方法包括步驟將比特劃分成各分組;針對每個分組分別搜索初始校驗地址;判斷搜索到的初始校驗地址和該分組的初始校驗地址所構成的校驗矩陣中是否存在環長不大于第一規定閾值的環,在判斷結果為否時,將搜索到的初始校驗地址確定為該分組的初始校驗地址;判斷該分組的初始校驗地址的數量是否達到預設的第二規定閾值,并在判斷結果為否時,繼續執行搜索初始校驗地址的操作;在針對各分組分別確定出數量為第二規定閾值的初始校驗地址后,根據確定出的初始校驗地址,構造對應的LDPC碼校驗矩陣。本發明技術方案提出了一種構造不存在短環的LDPC碼校驗矩陣的具體實現方案。
文檔編號H03M13/11GK102790622SQ201110131720
公開日2012年11月21日 申請日期2011年5月19日 優先權日2011年5月19日
發明者楊寧 申請人:中興通訊股份有限公司