一種ldpc碼的校驗矩陣的構(gòu)造方法與編碼方法
【專利摘要】本發(fā)明屬于LDPC碼(低密度奇偶校驗碼)校驗矩陣構(gòu)造【技術(shù)領(lǐng)域】,特別涉及一種LDPC碼的校驗矩陣的構(gòu)造方法與編碼方法。該LDPC碼的校驗矩陣的構(gòu)造方法包括以下步驟:步構(gòu)造LDPC碼校驗矩陣基矩陣HB,針對基矩陣HB,檢測并消除4環(huán),得出消除4環(huán)后的基矩陣;在消除4環(huán)后的基矩陣中,將每個0元素用z×z的全零矩陣替換,z表示設(shè)定的擴展因子;用F表示消除4環(huán)后的基矩陣的非零元素個數(shù),用HB(f)表示消除4環(huán)后的基矩陣的第f個非零元素,得出大小為z×z的單位矩陣循環(huán)右移HB(f)位后的矩陣Iz(HB(f)),在所述消除4環(huán)后的基矩陣中,將第f個非零元素HB(f)替換為矩陣Iz(HB(f));得出LDPC碼校驗矩陣,所述LDPC碼校驗矩陣為:消除4環(huán)后的基矩陣的每個元素完成替換后得到的新矩陣。
【專利說明】一種LDPC碼的校驗矩陣的構(gòu)造方法與編碼方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于LDPC碼(低密度奇偶校驗碼)校驗矩陣構(gòu)造【技術(shù)領(lǐng)域】,特別涉及一種 LDPC碼的校驗矩陣的構(gòu)造方法與編碼方法。本發(fā)明旨在構(gòu)造結(jié)構(gòu)簡單、易于存儲的準(zhǔn)循環(huán) LDPC碼校驗矩陣
【背景技術(shù)】
[0002] 隨著社會的發(fā)展,數(shù)字通信已經(jīng)成為人們生活中必不可少的一部分,并且有著廣 泛的應(yīng)用場景。最為人們所熟知的通信有無線通信、衛(wèi)星通信、數(shù)字電視、數(shù)字廣播、無線網(wǎng) 絡(luò)、視頻點播等等。另外還有一種抽象的"通信"方式,即數(shù)據(jù)存儲系統(tǒng),其典型應(yīng)用有磁碟、 磁帶、CD/DVD等。對于數(shù)據(jù)存儲系統(tǒng)來說,通信是將有用的信息從一個時間點"傳送"到另 外一個時間點。由于信息在空間傳輸或時間傳送的過程中受到噪聲的干擾,使得信息不能 正確無誤的傳輸,在接收端總是存在錯誤比特。為了糾正這些錯誤,可以在發(fā)送端使用前向 糾錯碼(Forward-Error-Control,F(xiàn)EC)。前向糾錯碼是一種抗干擾技術(shù),通過在信息中加入 冗余信息(校驗位)來克服傳輸過程中受到的噪聲與干擾。
[0003] 低密度奇偶校驗碼(Low-Density Parity-Check, LDPC)是譯碼性能接近信道容量 的線性分組碼,具有超強的糾錯能力。LDPC碼是由校驗矩陣刻畫的,校驗矩陣的結(jié)構(gòu)完全決 定了 LDPC碼的編碼效率與譯碼性能,因此如何構(gòu)造性能優(yōu)良結(jié)構(gòu)簡單的校驗矩陣成為了 國內(nèi)外研究的熱點。
[0004] 現(xiàn)有技術(shù)中LDPC碼校驗矩陣的構(gòu)造方案的缺點主要有:校驗矩陣不易存儲、碼長 /碼率不可靈活改變、編碼效率低。例如,Gallager提出的隨機構(gòu)造方法得到的矩陣由于具 有純隨機性,大大增加了編碼的復(fù)雜度,同時需要很大的存儲空間進行矩陣存儲。PEG算法 得到是下三角矩陣,這種結(jié)構(gòu)雖然能降低編碼復(fù)雜度,但矩陣仍然具有隨機性,同樣對器件 的存儲空間要求較高,不利于硬件實現(xiàn)?;谟邢抻蚝陀邢迬缀螛?gòu)造的校驗矩陣有著嚴(yán)謹(jǐn) 的代數(shù)結(jié)構(gòu),具有循環(huán)或準(zhǔn)循環(huán)特性(矩陣中任意一行是上一行的循環(huán)右移或左移),因此 大大降低了對硬件存儲空間的要求,然而由于矩陣是基于有限域和有限幾何構(gòu)造的,這就 使得這一類碼的碼長、碼率不能靈活改變。
【發(fā)明內(nèi)容】
[0005] 本發(fā)明的目的在于提出一種LDPC碼的校驗矩陣的構(gòu)造方法與編碼方法,本發(fā)明 構(gòu)造的準(zhǔn)循環(huán)LDPC碼校驗矩陣具有碼率靈活可變、碼長動態(tài)范圍寬、不包含環(huán)(girth)4等 特點。本發(fā)明在構(gòu)造校驗矩陣的基礎(chǔ)上還提出了一種便于硬件實現(xiàn)的快速編碼方法。本發(fā) 明的技術(shù)思路大致為:首先根據(jù)給定的邊的度分布導(dǎo)出節(jié)點的度分布,并生成符合節(jié)點度 分布的大小為M bXNb且具有下三角形式的基矩陣;其次對于給定的擴展因子z進行基矩陣 環(huán)4檢測/消除,使擴展后的校驗矩陣不包含環(huán)4 ;最后將基矩陣中的非零元素用z X z的 單位循環(huán)子矩陣替換,從而生成校驗矩陣。
[0006] 為實現(xiàn)上述技術(shù)目的,本發(fā)明采用如下技術(shù)方案予以實現(xiàn)。
[0007] 技術(shù)方案一:
[0008] -種LDPC碼的校驗矩陣的構(gòu)造方法包括以下步驟:
[0009] 步驟1,構(gòu)造 LDPC碼校驗矩陣基矩陣Hb,LDPC碼校驗矩陣基矩陣Hb的行數(shù)表示 為M b,LDPC碼校驗矩陣基矩陣Hb的列數(shù)表示為Nb ;
[0010] 步驟2,針對得出的LDPC碼校驗矩陣基矩陣Hb,檢測并消除4環(huán),得出消除4環(huán)后 的基矩陣;
[0011] 步驟3,在所述消除4環(huán)后的基矩陣中,將每個0元素用ZXz的全零矩陣替換,Z 表示設(shè)定的擴展因子,z為大于1的自然數(shù);用F表示消除4環(huán)后的基矩陣的非零元素個數(shù), 用Hb (f)表示消除4環(huán)后的基矩陣的第f個非零元素,f取1至F,得出大小為z X z的單位 矩陣循環(huán)右移Hb (f)位后的矩陣Iz (Hb (f)),在所述消除4環(huán)后的基矩陣中,將第f個非零 元素 Hb (f)替換為矩陣Iz(HB(f));得出LDPC碼校驗矩陣,所述LDPC碼校驗矩陣為:消除 4環(huán)后的基矩陣的每個元素完成替換后得到的新矩陣。
[0012] 本技術(shù)方案的特點和進一步改進在于:
[0013] 在步驟1中,根據(jù)給定的校驗節(jié)點邊的度的分布、以及給定的變量節(jié)點邊的度的 分布,得出校驗節(jié)點的度的分布、以及變量節(jié)點的度的分布;設(shè)置基矩陣的行數(shù)和列數(shù),構(gòu) 造符合校驗節(jié)點的度的分布和變量節(jié)點的度的分布的LDPC碼校驗矩陣基矩陣H b。
[0014] LDPC碼校驗矩陣基矩陣Hb由信息位子矩陣Hf和校驗位子矩陣Hf組合構(gòu)成,Hb =[Hb1,Hb2],Hb1是大小為MbX (Nb-Mb)的矩陣,Hb2是大小為MbXM b的矩陣;信息位子矩陣Hbi 中的每個非零元素為[1,z]范圍內(nèi)的任意整數(shù),z表示設(shè)定的擴展因子;校驗位子矩陣Hb2 為下三角矩陣,其每個主對角線元素為z,校驗位子矩陣Hb2的每個非零元素為[l,z]范圍 內(nèi)的任意整數(shù)。
[0015] 所述步驟2的具體子步驟為:
[0016] (2. 1)令迭代次數(shù)指示變量1 = 0,1,2,...;設(shè)置最大迭代次數(shù)為Imax,Imax為大于 1的自然數(shù);當(dāng)1 = 〇時,跳至子步驟(2. 2);
[0017] (2. 2)如果KImax,則跳至子步驟(2. 3);如果I = Imax,則跳至子步驟(2. 7);
[0018] (2.3)得出LDPC碼校驗矩陣基矩陣Hb的第η列的非零元素位置索引向量f n, n e [1,Nb],非零元素位置索引向量fn是列數(shù)為Mb的行向量,如果LDPC碼校驗矩陣基矩陣 Hb的第η列第m行的元素為0,則非零元素位置索引向量fn的第m個元素為0,me [1,Mb]; 如果LDPC碼校驗矩陣基矩陣Hb的第η列第m行的元素不為0,則非零元素位置索引向量 fn的第m個元素為1 ;
[0019] 用fj表示LDPC碼校驗矩陣基矩陣Hb的第j列非零元素位置索引向量, j e [1,Nb-I];用f/表示LDPC碼校驗矩陣基矩陣Hb的第j'列非零元素位置索引向量, j' e [2,Nb];遍歷所有滿足j〈j'的j和j'的取值,針對每一組j和j'的取值,計算出向 量4」,,^, =fj+f> ;將得出的各個向量組合成集合F,F(xiàn)=拓,」七e [H1],j' e [2, Nb], j〈j'};令k = 1,令4環(huán)指示變量g = 0,令K表示集合F中的元素個數(shù);
[0020] (2.4)將集合F中的第k個元素表示為/gh將向量的第i個元素表示為 #!(/),將向量的第i'個元素表示/。(〇, i e [l,Mb-l],i' e [2,Mb];遍歷所有 滿足i〈i'的i和i'的取值,針對每一組i和i'的取值,進行LDPC碼校驗矩陣基矩陣的元 素替換,然后執(zhí)行子步驟(2.5);
[0021] 所述針對每一組i和i'的取值進行LDPC碼校驗矩陣基矩陣的元素替換的過程 為:
[0022] 判斷是否滿足條件
【權(quán)利要求】
1. 一種LDPC碼的校驗矩陣的構(gòu)造方法,其特征在于,包括以下步驟: 步驟1,構(gòu)造 LDPC碼校驗矩陣基矩陣Hb,LDPC碼校驗矩陣基矩陣Hb的行數(shù)表示為Mb, LDPC碼校驗矩陣基矩陣Hb的列數(shù)表示為Nb ; 步驟2,針對得出的LDPC碼校驗矩陣基矩陣Hb,檢測并消除4環(huán),得出消除4環(huán)后的基 矩陣; 步驟3,在所述消除4環(huán)后的基矩陣中,將每個O元素用z X z的全零矩陣替換,z表示 設(shè)定的擴展因子,z為大于1的自然數(shù);用F表示消除4環(huán)后的基矩陣的非零元素個數(shù),用 Hb (f)表示消除4環(huán)后的基矩陣的第f個非零元素,f?取1至F,得出大小為z X z的單位矩 陣循環(huán)右移Hb (f)位后的矩陣Iz (Hb (f)),在所述消除4環(huán)后的基矩陣中,將第f個非零元 素 Hb (f)替換為矩陣IZ(HB (f));得出LDPC碼校驗矩陣,所述LDPC碼校驗矩陣為:消除4 環(huán)后的基矩陣的每個元素完成替換后得到的新矩陣。
2. 如權(quán)利要求1所述的一種LDPC碼的校驗矩陣的構(gòu)造方法,其特征在于,在步驟1中, 根據(jù)給定的校驗節(jié)點邊的度的分布、以及給定的變量節(jié)點邊的度的分布,得出校驗節(jié)點的 度的分布、以及變量節(jié)點的度的分布;設(shè)置基矩陣的行數(shù)和列數(shù),構(gòu)造符合校驗節(jié)點的度的 分布和變量節(jié)點的度的分布的LDPC碼校驗矩陣基矩陣Hb。
3. 如權(quán)利要求2所述的一種LDPC碼的校驗矩陣的構(gòu)造方法,其特征在于,在步驟1 中,LDPC碼校驗矩陣基矩陣Hb由信息位子矩陣Hf和校驗位子矩陣Hf組合構(gòu)成,Hb = [HB1,Hb2],HB1是大小為MbX (Nb-Mb)的矩陣,Hb2是大小為MbXM b的矩陣;信息位子矩陣Hbi中 的每個非零元素為[l,z]范圍內(nèi)的任意整數(shù),z表示設(shè)定的擴展因子;校驗位子矩陣Hb2為 下三角矩陣,其每個主對角線元素為z,校驗位子矩陣Hb2的每個非零元素為[l,z]范圍內(nèi) 的任意整數(shù)。
4. 如權(quán)利要求1所述的一種LDPC碼的校驗矩陣的構(gòu)造方法,其特征在于,所述步驟2 的具體子步驟為: (2. 1)令迭代次數(shù)指示變量1 = 0,1,2,...;設(shè)置最大迭代次數(shù)為1_,Imax為大于1的 自然數(shù);當(dāng)I = 〇時,跳至子步驟(2. 2); (2. 2)如果1〈1_,則跳至子步驟(2. 3);如果I = Imax,則跳至子步驟(2. 7); (2.3)得出LDPC碼校驗矩陣基矩陣Hb的第n列的非零元素位置索引向量fn, n e [1,Nb],非零元素位置索引向量fn是列數(shù)為Mb的行向量,如果LDPC碼校驗矩陣基矩陣 Hb的第n列第m行的元素為0,則非零元素位置索引向量fn的第m個元素為0,mG [1,Mb]; 如果LDPC碼校驗矩陣基矩陣Hb的第n列第m行的元素不為0,則非零元素位置索引向量 fn的第m個元素為1 ; 用&表示LDPC碼校驗矩陣基矩陣Hb的第j列非零元素位置索引向量,je [1,Nb-I]; 用f>表示LDPC碼校驗矩陣基矩陣Hb的第j'列非零元素位置索引向量,j' e [2, Nb];遍 歷所有滿足j〈j'的j和j'的取值,針對每一組j和j'的取值,計算出向量f^_,,f^_,= ;將得出的各個向量 fj,』,組合成集合 F,F(xiàn)= G [l,Nb-l],j' G [2,Nb],j〈j'}; 令k = 1,令4環(huán)指示變量g = 0,令K表示集合F中的元素個數(shù); (2. 4)將集合F中的第k個元素表示為/=!,將向量/力!的第i個元素表示為/$(0, 將向量./以的第i'個元素表示i e [l,Mb-l],i' e [2,Mb];遍歷所有滿足i〈i' 的i和i'的取值,針對每一組i和i'的取值,進行LDPC碼校驗矩陣基矩陣的元素替換,然 后執(zhí)行子步驟(2. 5); 所述針對每一組i和i'的取值進行LDPC碼校驗矩陣基矩陣的元素替換的過程為: 判斷是否滿足條件/,(0 = = 2,如果不滿足,則針對下一組i和 i'的取值進行LDPC碼校驗矩陣基矩陣的元素替換;如果滿足,則令J = B = , C = ,£) = H11I,其中,H=.表示LDPC碼校驗矩陣基矩陣Hb的第i行第j 列的元素,Hfi.表示LDPC碼校驗矩陣基矩陣Hb的第i行第j'列的元素,表示LDPC碼 校驗矩陣基矩陣Hb的第i'行第j列的元素,:表示LDPC碼校驗矩陣基矩陣Hb的第i' 行第j'列的元素;判斷z是否整除(A+D)-(B+C),如果z不能整除(A+D)-(B+C),則針對下 一組i和i'的取值進行LDPC碼校驗矩陣基矩陣的元素替換;如果z能整除(A+D)-(B+C), 則隨機產(chǎn)生不為D且在[l,z]范圍內(nèi)的整數(shù)D',令g= 1,在LDPC碼校驗矩陣基矩陣Hb中, 將第i'行第j'列的元素替換為D' ; (2.5)如果k〈K,則令k的值自增1,返回至子步驟(2.4);如果k = K,則跳至子步驟 (2. 6); (2. 6)若g = 1,則令迭代次數(shù)指示變量1的值自增1,返回至子步驟(2. 2);若g = 0, 則令I(lǐng) = Imax,返回至子步驟(2.2); (2. 7)得出消除4環(huán)后的基矩陣,所述消除4環(huán)后的基矩陣為當(dāng)前的LDPC碼校驗矩陣 基矩陣。
5. -種LDPC碼的編碼方法,基于權(quán)利要求1所述的一種LDPC碼校驗矩陣的構(gòu)造方法, 其特征在于,包括以下步驟: a) 用Nb表示消除4環(huán)后的基矩陣的列數(shù),用Mb表示消除4環(huán)后的基矩陣的行數(shù);將待 編碼的信息分為Kb組,Kb組待編碼的信息分別表示為Kb個行向量U 1, U2,…,¢/?,每組待 編碼的信息的大小為z比特;Kb = Nb-Mb ; 設(shè)置第1存儲單元至第Nb存儲單元,將第q組待編碼的信息存儲于第q存儲單元中, q取1至Nb ;其余每個存儲單元初始時刻存儲z比特的全零行向量;當(dāng)m = 1時,跳至步驟 b); b) 用表示權(quán)利要求1中消除4環(huán)后的基矩陣的第m第n列的元素,m取1至Mb, n取1至Nb;得出第n個選通開關(guān)的參數(shù)值en,若H=,其0,則en= 1,若則 e n = 〇 ;得出第n個選通開關(guān)的輸出值,第n個選通開關(guān)的輸出值為Un e n,其中,Un表示第 n存儲單元存儲的行向量; c) 得出第m個校驗分組信息Sm,
其中,£ 1 (Hll)表示利用權(quán)利要求1步驟3將消除4環(huán)后的基矩陣的第m第n列的元 素"替換而成的矩陣的轉(zhuǎn)置;將得出的第m個校驗分組信息Sm存儲于第Kb+m存儲單元 中; d)如果m〈Mb,則令m的值自增1,返回至步驟b);如果m = Mb,則基于LDPC碼的編碼過 程完畢。
【文檔編號】H03M13/11GK104333390SQ201410691486
【公開日】2015年2月4日 申請日期:2014年11月26日 優(yōu)先權(quán)日:2014年11月26日
【發(fā)明者】張凱, 楊勇 申請人:西安烽火電子科技有限責(zé)任公司