專利名稱::低密度校驗碼編碼的譯碼方法及譯碼裝置的制作方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及通信技術(shù),尤其涉及一種基于混合自動重傳(HARQ,Hybrid-AutomaticRepeatreQuest)通信的低密度校驗碼(LDPC)編碼的譯碼方法及譯碼裝置。
背景技術(shù):
:目前通信技術(shù)中最顯著的特點就是通信系統(tǒng)信道的復(fù)雜性和時變性,以及由此帶來的誤碼。針對這種特點,目前通常釆用重傳反饋方式(ARQ,AutomaticRepeatreQuest)和前向纟4錯方式(FEC,ForwardErrorCorrection)進(jìn)行差錯控制。ARQ和FEC是分別利用檢錯碼和糾錯碼進(jìn)行差錯控制的技術(shù)。ARQ的原理是接收端通過反向信道反饋信息,使發(fā)送端重新發(fā)送檢查出錯誤的數(shù)據(jù)包,直到接收端判定已正確接收才停止重新發(fā)送;FEC的原理是通過在發(fā)送端編碼發(fā)送可以被糾錯的糾錯碼,由接收端進(jìn)行譯碼,自動糾正碼字中的錯誤。ARQ方式糾錯能力強,但需要反向信道,且通信實時性差。相反,F(xiàn)EC方式的實時性好,收發(fā)控制系統(tǒng)簡單,但是往往以最壞的信道條件設(shè)計糾錯碼,所以編碼效率較低。HARQ系統(tǒng)綜合了上述兩種差錯控制方法的優(yōu)點,發(fā)送的糾錯碼具備一定的糾錯能力,接收端在超出糾錯能力的情況下,才通知發(fā)送端重發(fā)。這在一定程度下,避免了ARQ通信遲滯性和FEC的譯碼復(fù)雜性的缺點,能達(dá)到較高的頻譜利用率。目前的HARQ機(jī)制中,譯碼時普遍采用的糾錯碼為TURBO碼。TURBO碼具有如下缺點1、無法對自身進(jìn)行校驗,需要添加循環(huán)冗余校驗碼(CRC)校驗比特,增加了系統(tǒng)開銷。2、譯碼復(fù)雜,緩存數(shù)據(jù)量大,譯碼迭代次數(shù)有限,譯碼延遲大,不適合實時業(yè)務(wù)。3、在編譯中長碼時性能欠佳。4、對于高速下行傳輸業(yè)務(wù),算法的處理工作量集中在移動臺,增加了移動臺的實現(xiàn)復(fù)雜度,導(dǎo)致移動臺的成本、功耗高,待機(jī)時間短。
發(fā)明內(nèi)容有鑒于此,本發(fā)明的主要目的在于提供一種LDPC編碼的譯碼方法,以降低系統(tǒng)開銷、縮短譯碼延遲、提高譯碼性能、并適用于高速數(shù)據(jù)業(yè)務(wù)。本發(fā)明的再一目的在于提供一種LDPC編碼的譯碼裝置,以降低系統(tǒng)開銷、縮短譯碼延遲、提高譯碼性能、并適用于高速數(shù)據(jù)業(yè)務(wù)。為了實現(xiàn)上述發(fā)明目的,本發(fā)明的主要技術(shù)方案為一種LDPC編碼的譯碼方法,包括A、預(yù)先構(gòu)造并存儲分層的LDPC碼的各層校驗矩陣;B、在數(shù)據(jù)接收端收到初始發(fā)送的第一層數(shù)據(jù)時,利用所述LDPC碼的第一層校驗矩陣對收到的數(shù)據(jù)進(jìn)行譯碼,并判斷譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù);C、在數(shù)據(jù)接收端收到第n-l次重傳數(shù)據(jù)時,利用所述LDPC碼的n層校驗矩陣對收到的數(shù)據(jù)進(jìn)行分層譯碼;判斷譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù),n為大于等于2的整數(shù)。優(yōu)選地,步驟C具體為cl、釆用所述LDPC碼的前n-l層校驗矩陣對前n-1層數(shù)據(jù)進(jìn)行譯碼,將前n-1層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)級聯(lián),采用所述LDPC碼的第n層校驗矩陣對所述前n-1層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼;c2、判斷步驟cl的譯碼結(jié)果,如果譯碼錯誤,則將前n-l層數(shù)據(jù)和第n層數(shù)據(jù)級聯(lián),將所述LDPC碼的前n-1層校驗矩陣和第n層校驗矩陣合并,利用所述合并的校驗矩陣對所述前n-1層數(shù)據(jù)和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,并判斷該譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù)。優(yōu)選地,步驟C具體為c3、將前n-1層數(shù)據(jù)和第n層數(shù)據(jù)級聯(lián),將所述LDPC碼的前n-l層校驗矩陣和第n層校驗矩陣合并,利用所述合并的校驗矩陣對所述級聯(lián)數(shù)據(jù)進(jìn)行譯碼。優(yōu)選地,該方法進(jìn)一步包括判斷當(dāng)前通信信道質(zhì)量是否達(dá)到預(yù)定的標(biāo)準(zhǔn),如果達(dá)到,則步驟C具體為cl、釆用所述LDPC碼的前n-l層校驗矩陣對前n-l層數(shù)據(jù)進(jìn)行譯碼,將前n-l層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)級聯(lián),采用所述LDPC碼的第n層校驗矩陣對所述前n-1層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼;c2、判斷步驟cl的譯碼結(jié)果,如果譯碼錯誤,則將前n-l層數(shù)據(jù)和第n層數(shù)據(jù)級聯(lián),將所述LDPC碼的前n-1層校驗矩陣和第n層校驗矩陣合并,利用所述合并的校驗矩陣對所述前n-1層數(shù)據(jù)和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,并判斷該譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù);如果當(dāng)前通信信道質(zhì)量沒有達(dá)到預(yù)定的標(biāo)準(zhǔn),則所述步驟C具體為c3、將前n-l層數(shù)據(jù)和第n層數(shù)據(jù)級聯(lián),將所述LDPC碼的前n-l層校驗矩陣和第n層校驗矩陣合并,利用所述合并的校驗矩陣對所述級聯(lián)數(shù)據(jù)進(jìn)行譯碼。優(yōu)選地,步驟A所述的構(gòu)造方法為準(zhǔn)循環(huán)LDPC碼構(gòu)造方法;且步驟A具體包括al、設(shè)定母矩陣的參數(shù);a2、根據(jù)所設(shè)定的參數(shù)構(gòu)造母矩陣M。;采用構(gòu)造準(zhǔn)循環(huán)碼的冪方法,根據(jù)母矩陣M。構(gòu)造基校驗矩陣H。,將仏作為第一層校驗矩陣;a3、設(shè)定m的初始值為2;a4、構(gòu)造第m層校驗矩陣的母矩陣M";a5、采用冪方法生成循環(huán)置換矩陣代替Mt,中的選定塊,得到第m層校驗矩陣H^—t;a6、判斷m是否達(dá)到預(yù)定值,如果是,則結(jié)束本流程;否則,將m的值加1,返回步驟a4。優(yōu)選地,所述構(gòu)造各層校驗矩陣的方法為比特填充法、或邊漸進(jìn)增長算法。優(yōu)選地,所述每層的LDPC碼為塊形式的LDPC碼。一種LDPC編碼的譯碼裝置,該裝置包括糾錯碼構(gòu)造單元,用于構(gòu)造分層的LDPC碼的各層校驗矩陣,并將構(gòu)造的分層LDPC碼作為糾錯碼;譯碼單元,設(shè)置在數(shù)據(jù)接收端,用于利用所述糾錯碼構(gòu)造單元構(gòu)造的分層LDPC碼對接收到的數(shù)據(jù)進(jìn)行分層譯碼。優(yōu)選的,所述譯碼單元具體包括譯碼模塊、層次確定單元和譯碼結(jié)果判斷單元;所述譯碼模塊用于譯碼;所述層次確定單元用于確定譯碼的層次,在數(shù)據(jù)接收端收到初始發(fā)送數(shù)據(jù)時,觸發(fā)譯碼模塊利用LDPC碼的第一層校驗矩陣對收到的數(shù)據(jù)進(jìn)行分層譯碼,當(dāng)數(shù)據(jù)接收端收到第n-l次重傳數(shù)據(jù)時,確定譯碼的層次n,觸發(fā)譯碼模塊利用所述LDPC碼的n層校驗矩陣對收到的數(shù)據(jù)進(jìn)行分層譯碼,n為大于等于2的整數(shù);所述譯碼結(jié)果判斷單元用于判斷譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù)。優(yōu)選的,所述譯碼模塊進(jìn)一步包括第一譯碼模塊和第二譯碼模塊,所述譯碼結(jié)果判斷單元進(jìn)一步包括第一譯碼結(jié)果判斷單元和第二譯碼結(jié)果判斷單元,其中第一譯碼模塊用于利用所述LDPC碼的前n-1層校驗矩陣對前n-1層數(shù)據(jù)進(jìn)行譯碼,將前n-l層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)級聯(lián),釆用所述LDPC碼的第n層校驗矩陣對所述前n-1層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,輸出譯碼結(jié)果給第一譯碼結(jié)果判斷單元;第一譯碼結(jié)果判斷單元用于判斷譯碼結(jié)果,如果譯碼錯誤,則觸發(fā)所述第二譯碼模塊;第二譯碼模塊用于將前n-1層數(shù)據(jù)和第n層數(shù)據(jù)級聯(lián),將所述LDPC碼的前n-1層校驗矩陣和第n層校驗矩陣合并,利用所述合并的校驗矩陣對所述前n-l層數(shù)據(jù)和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,輸出譯碼結(jié)果給第二譯碼結(jié)果判斷單元;第二譯碼結(jié)果判斷單元用于判斷譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù)。優(yōu)選的,所述每層的LDPC碼為塊形式的LDPC碼。本發(fā)明所采用的糾錯碼為LDPC碼,LDPC是目前發(fā)現(xiàn)的最優(yōu)的糾錯碼,可以構(gòu)造更加靈活和更低碼率范圍的校驗矩陣,可以在每輪迭代譯碼結(jié)束后校驗譯碼的正確性,無需添加CRC校驗,減小了系統(tǒng)開銷。LDPC編碼還有多種準(zhǔn)線性編碼方法,其采用的并行譯碼算法大大降低了譯碼延遲,在譯碼處理速度和緩存要求上大大優(yōu)于現(xiàn)有的TURBO碼,在編譯中長碼時具有更佳的性能。對與高速下行數(shù)據(jù),LDPC碼允許將復(fù)雜度較高的編碼工作交給基站,將復(fù)雜度較低的譯碼工作交給移動臺處理,因此可以簡化移動臺處理,降低移動臺的成本和功耗,降低待機(jī)時間。本發(fā)明采用了分層的LDPC碼的譯碼方式,上層的譯碼結(jié)果不受下層譯碼的影響;在接收端,當(dāng)接收的上層數(shù)據(jù)正確譯碼后,發(fā)送端無需再進(jìn)行下一層的編碼,降低了發(fā)送端的編碼運算量、編碼延遲以及緩存要求。本發(fā)明構(gòu)造的各層校驗矩陣中都有準(zhǔn)下三角陣,因此每一層編碼的復(fù)雜度均為準(zhǔn)線性,復(fù)雜度較低。本發(fā)明在接收端譯碼時,可以采用多層級聯(lián)數(shù)據(jù)用低層校驗矩陣進(jìn)行嘗試譯碼以簡化譯碼復(fù)雜度,也可以用完整的校驗矩陣進(jìn)行譯碼來獲取全部的編碼增益。因此本發(fā)明的譯碼方式靈活,具體的譯碼方式可以根據(jù)需求自由選擇。尤其是當(dāng)通信信道質(zhì)量較好時采用嘗試譯碼,可以大大降低處理復(fù)雜度。本發(fā)明所述的分層編碼方法具有通用性,校驗矩陣可以采用準(zhǔn)循環(huán)LDPC碼法來構(gòu)造、或者采用比特填充法、邊漸進(jìn)增長(PEG)法等類似衍生方法來構(gòu)造。本發(fā)明由于采用LDPC碼,如果每層數(shù)據(jù)的編碼長度和傳輸塊的長度不能滿足上層業(yè)務(wù)應(yīng)用的要求,則可以通過打孔或重復(fù)的方式調(diào)整編碼和傳輸塊的長度以進(jìn)行業(yè)務(wù)適配,因此本發(fā)明能夠適用于多種不同的業(yè)務(wù)應(yīng)用,適用的范圍廣。本發(fā)明不僅可以用于移動通信領(lǐng)域,而且在文件傳輸、數(shù)據(jù)存儲、Internet等領(lǐng)域也具有應(yīng)用前景。圖1為本發(fā)明所述實施例的流程圖;圖2為分層LDPC碼的基本結(jié)構(gòu)圖3為本發(fā)明所述譯碼過程及其對應(yīng)的編碼過程的一種實施流程圖;圖4為所述分層LDPC碼的譯碼過程示意圖;圖5為本發(fā)明所述HARQ通信系統(tǒng)譯碼裝置的一種結(jié)構(gòu)示意圖;圖6為采用本發(fā)明所述的基于HARQ技術(shù)的分層LDPC碼的性能仿真示意圖。具體實施例方式下面通過具體實施例和附圖對本發(fā)明做進(jìn)一步詳細(xì)說明。本發(fā)明的核心思想為利用低密度校驗碼(LDPC)作為糾錯碼,在數(shù)據(jù)發(fā)送端利用LDPC碼對預(yù)發(fā)送的數(shù)據(jù)進(jìn)行分層編碼;在數(shù)據(jù)接收端利用LDPC碼對接收的數(shù)據(jù)進(jìn)行分層譯碼。為了達(dá)到最優(yōu)的技術(shù)效果,以下實施例中采用分層的LDPC碼進(jìn)行譯碼。圖1為本發(fā)明所述實施例的流程圖。參見圖l,該流程包括步驟101、根據(jù)業(yè)務(wù)和重傳HARQ機(jī)制構(gòu)造分層LDPC碼的各層校驗矩陣。步驟102、在數(shù)據(jù)接收端,對接收到的數(shù)據(jù)進(jìn)行檢測后,利用LDPC碼的第N層校驗矩陣進(jìn)行譯碼。N的初始化值為1。此處對于第一層數(shù)據(jù)的譯碼只需要第一層校驗矩陣,可以采用并行的簡化BP譯碼算法譯碼。步驟103、判斷譯碼是否正確,正確則執(zhí)行步驟104;否則執(zhí)行步驟105。步驟104、發(fā)送表示正確接收的ACK應(yīng)答給發(fā)送端,結(jié)束本流程。步驟105、判斷是否達(dá)到預(yù)設(shè)的重傳上限次數(shù),如果達(dá)到,則結(jié)束本流程,否則執(zhí)行步驟106。本步驟105為可選步驟,也可以在步驟103判斷譯碼失敗后直接執(zhí)行步驟106。步驟106、將N的值加1,由數(shù)據(jù)接收端向數(shù)據(jù)發(fā)送端發(fā)送重傳請求即NACK請求。數(shù)據(jù)接收端在接收到重傳數(shù)據(jù)之后,利用所述LDPC碼的N層校驗矩陣對收到的數(shù)據(jù)進(jìn)行分層譯碼。此處有兩種分層譯碼方法,圖l所示的為其中一種,這種分層譯碼方法執(zhí)行以下步驟107至步驟109:步驟107、數(shù)據(jù)接收端接收重傳數(shù)據(jù),利用LDPC碼的第N層校驗矩陣對所收到的重傳數(shù)據(jù)與前N-1層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼。此處的重傳數(shù)據(jù)即第N層數(shù)據(jù)。所述前N-1層數(shù)據(jù)即第N層的所有上層數(shù)據(jù)。具體為釆用所述LDPC碼的前N-1層校驗矩陣對前N-1層數(shù)據(jù)進(jìn)行譯碼,將前N-1層數(shù)據(jù)的譯碼結(jié)果和第N層數(shù)據(jù)級聯(lián),釆用所述LDPC碼的第N層校驗矩陣對所述前N-1層數(shù)據(jù)的譯碼結(jié)果和第N層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼。所述前N-1層校驗矩陣即第N層的所有上層校驗矩陣。步驟108、判斷譯碼是否正確,正確則執(zhí)行步驟104;否則執(zhí)行步驟109。步驟109、將所述LDPC碼的前N-1層校驗矩陣和第N層校驗矩陣合并,利用所述合并的校驗矩陣對所述前N-1層數(shù)據(jù)和第N層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,返回步驟103。作為上述步驟107至步驟109的替代方案,另一種分層譯碼方法為將前N-1層數(shù)據(jù)和第N層數(shù)據(jù)級聯(lián),將所述LDPC碼的前N-1層校驗矩陣和第N層校驗矩陣合并,利用所述合并的校驗矩陣對所述級聯(lián)數(shù)據(jù)進(jìn)行譯碼,返回步驟103。在本發(fā)明所述方法中,所述數(shù)據(jù)接收端在收到第N層數(shù)據(jù)時,如果譯碼錯誤,則可以將該第N層數(shù)據(jù)緩存,在進(jìn)行后續(xù)的級聯(lián)處理時再從緩存中讀取即可。本發(fā)明對LDPC碼的分層層數(shù)沒有限制,可以根據(jù)業(yè)務(wù)需求對層數(shù)進(jìn)行設(shè)置。下面的實施例通過LDPC碼的詳細(xì)構(gòu)造理論和詳細(xì)構(gòu)造方法對本發(fā)明的技術(shù)方案進(jìn)行更為清楚、完整的說明。圖2為分層LDPC碼的基本結(jié)構(gòu)圖。如圖2所示,"O"表示全零矩陣,各層校驗矩陣中的列數(shù)為編碼后的碼長,行數(shù)為校驗位長度,列數(shù)減去行數(shù)為信息位長度。本發(fā)明的LDPC碼是基于具體HARQ機(jī)制構(gòu)造的。假設(shè)本實施例中所基于HARQ傳輸方案的相關(guān)參數(shù)為信息比特長度508bit、第一層編碼長度1016bit,第二層編碼長度1778-1016=762bit,第三層編碼長度2540-1778=762bit。在發(fā)明中,構(gòu)造各層校驗矩陣的具體方式可以為分層編碼的準(zhǔn)循環(huán)LDPC碼法(QCLDPC),也可以釆用分層的其它構(gòu)造方法如比特填充法、PEG等其它衍生方法。在本實施例中,采用QCLDPC碼來構(gòu)造校驗矩陣。QCLDPC碼是一類高效的、易于存儲的LDPC碼,由塊循環(huán)置換矩陣構(gòu)成。本實施例所釆用的是一類低復(fù)雜度的QCLDPC碼。在本實施例中,在保持QCLDPC碼的性能和編碼的有效性的前提下,采用了一種有近似下三角陣形式的準(zhǔn)循環(huán)碼,稱為塊形式的LDPC碼(B-LDPC碼)。此處設(shè)B-LDPC碼的校驗矩陣為好,且設(shè)開是附px甲階矩陣,其定義的形式參考以下公式(1):<formula>formulaseeoriginaldocumentpage14</formula>(1)為方便理解,此處將開分為兩部分信息部巧和校驗部及,,即ff」。此處限定好,為近似下三角陣形式。丑可設(shè)為以下公式(2)所示的附/x(附+"/階校驗矩陣<formula>formulaseeoriginaldocumentpage14</formula>(2)其中P是;^p階循環(huán)置換矩陣,即為單位陣的循環(huán)移位矩陣,編碼的信息位長度為("-m)P,校驗位長度為嘩,碼長為^,p為循環(huán)置換矩陣的維數(shù),一般取為素數(shù)。具有如式(2)形式校驗矩陣的LDPC碼叫做塊形式的LDPC碼(B-LDPCcode)。對于這種B-LDPC碼,本實施例可采用Richardson-Urbanke編碼方法,將及分解為如下公式(3)所示的分塊矩陣形式<formula>formulaseeoriginaldocumentpage15</formula>其中,』為(w-i)px^維分塊矩陣,B為(w-i)/7x戶維分塊矩陣,r為(柳-l)px(附-1)/7維下三角分塊矩陣,C為戶x印維分塊矩陣,Z^r為;7xp維分塊方陣,£為/^(附-l)p維分塊矩陣,并且=m+森。假設(shè)及,是滿秩的,那么由高斯(Gauss)消去法可知,伊--£廠力+"是非奇異的。由于本實施例釆用的是系統(tǒng)碼,可令c是由ff定義的一組碼字,那么/fc7^^,因此可以得到如下方程式(4)和方程式(5):ar,r+7K=0(4)(-五r-U+c)sr+(-五r-力+dX-o(5)其中,s表示信息部分,^和^表示校驗部分,其校驗碼長分別為p和(m-l)p,那么可以得到以下公式(6)和公式(7):/>〖=_伊—J(五r—1j+c)Z二一伊—J(-五r一14^+C)(6)因為矩陣,一般是非稀疏矩陣,那么A的復(fù)雜度為0(W)+0(p2),其中A^(平)為碼長。但是如果伊是單位矩陣,那么編碼的復(fù)雜度就是線性的。為了計算伊,考慮公式(2)和公式(3)中的ff。易知r〃可記為如公式(8)矩陣<formula>formulaseeoriginaldocumentpage15</formula>(8)其中,<formula>formulaseeoriginaldocumentpage16</formula>由于以下公式(10)和公式(11),<formula>formulaseeoriginaldocumentpage16</formula>因此可以得到公式(12):<formula>formulaseeoriginaldocumentpage16</formula>其中,尸位于B的第/個塊,/一般取為m的l/2左右,如果x和^根據(jù)公式(13)進(jìn)行選擇<formula>formulaseeoriginaldocumentpage16</formula>x三modp"wt/少三—mQd或者根據(jù)公式(14)進(jìn)行選擇<formula>formulaseeoriginaldocumentpage16</formula>^]《三0moda/w/jc三少+mod那么,矩陣伊=-五7^8+Z)就是一個單位矩陣。以下步驟21至步驟28所述的是一種較優(yōu)的B-LDPC碼的構(gòu)造方法步驟21、根據(jù)密度進(jìn)化理論,為一個B-LDPC碼設(shè)定度分布準(zhǔn)則,即確定一個度分布函數(shù),設(shè)定附個行塊和"(=柳+/5:)個列塊,以及設(shè)定循環(huán)置換矩陣的尺寸P,P取為素數(shù)。令/.是與/個校驗節(jié)點相連接的變量節(jié)點的分布,那么不考慮循環(huán)置換矩陣的尺寸,此處有A-^,并且/,&for3^^這里,A是非負(fù)整數(shù),A",并且,附<formula>formulaseeoriginaldocumentpage16</formula>步驟22、利用步驟21的度分布準(zhǔn)則,在固定mxw階母矩陣M的右半部分Mp如公式(16)所示的條件下,采用比特填充法或PEG方法構(gòu)造母矩陣M的左邊部分M,使M有盡可能大的圍長,及盡可能少的短長度的塊環(huán),確定具有以下公式(16)所述形式的母矩陣M:<formula>formulaseeoriginaldocumentpage17</formula>(16)上述公式(2)校驗矩陣中的好,.和及p分別由母矩陣M中的風(fēng)和Mp對其中j的位置替換成循環(huán)置換矩陣得到。步驟23、令校驗矩陣的校驗部分好p如公式(2)所示,釆用構(gòu)造準(zhǔn)循環(huán)碼的冪方法生成其中的,,以滿足對圍長的要求;選擇嚴(yán)和f滿足公式(13)或公式(14)式,使得伊是單位矩陣。步驟24、初始化ff:/tfffp/,其中tf是,x^階零矩陣。步驟25、對于矩陣A/,.中列重為3的每一個"r'位置,同樣釆用構(gòu)造準(zhǔn)循環(huán)碼的冪方法生成pi代替及中的相應(yīng)位置塊,其中0《"p-l。步驟26、在步驟25的所有情況中,選擇母矩陣M中為"廣的位置,在不改變b-ldpc碼結(jié)構(gòu)的情況下,通過生成準(zhǔn)循環(huán)碼的冪方法選擇循環(huán)置換矩陣,在選定的位置添加選定的循環(huán)置換矩陣,從而更新好中的相應(yīng)位置塊,且在允許的范圍內(nèi),設(shè)置盡可能大的相應(yīng)圍長,并且設(shè)置盡可能少的最小環(huán)長數(shù)目。步驟27、重復(fù)步驟25和步驟26,直到母矩陣中列重為3的每一個""都由一個循環(huán)置換矩陣代替。步驟28、對于每個列重_/>3,重復(fù)相同的步驟25、步驟26和步驟27。對于上述的步驟23,母矩陣M中M,的構(gòu)造方法是多種多樣的,本實施例可以釆用比特填充法或peg方法來構(gòu)造mx"階母矩陣,使得該母矩陣有盡可能大的圍長。圖3為本發(fā)明所述譯碼過程及其對應(yīng)的編碼過程的一種實施流程圖。圖4為所述分層ldpc碼的譯碼過程示意圖。圖4中,所示具有左上對右下斜紋的方框表示傳輸數(shù)據(jù)的信息位,具有網(wǎng)狀斜紋的方框表示傳輸數(shù)據(jù)的第一層校驗位,具有左下對右上斜紋的方框表示傳輸數(shù)據(jù)的第二層校驗位,空白方框表示傳輸數(shù)據(jù)的接收錯誤位。由于篇幅有限,圖4只畫出了兩層編譯碼,多層編譯碼的情況可以根據(jù)圖4所示的情況直接推導(dǎo)出。以下通過上述譯碼過程以及與該譯碼相對應(yīng)的編碼過程進(jìn)一步說明本發(fā)明。參見圖3和圖4,本發(fā)明所述譯碼過程及其對應(yīng)的編碼過程的一種實施流程包括步驟301、根據(jù)業(yè)務(wù)和重傳HARQ機(jī)制構(gòu)造分層LDPC碼的各層校驗矩陣。步驟302、數(shù)據(jù)發(fā)送端先將預(yù)發(fā)送數(shù)據(jù)先用LDPC碼的第N層校驗矩陣進(jìn)行編碼,得到第N層數(shù)據(jù),再發(fā)送。所述N的初始化值為1,本步驟就是用LDPC碼的第一層校驗矩陣對預(yù)發(fā)送的數(shù)據(jù)進(jìn)行編碼得到第一層數(shù)據(jù)。在本步驟302中無需進(jìn)行第二層的編碼,除非數(shù)據(jù)發(fā)送端收到重傳請求即NACK消息。步驟303、在數(shù)據(jù)接收端,對接收到的第N層數(shù)據(jù)進(jìn)行檢測后,利用LDPC碼的第N層校驗矩陣進(jìn)行譯碼。此處對于第一層數(shù)據(jù)的譯碼只需要第一層校驗矩陣,可以釆用并行的簡化BP譯碼算法譯碼。步驟304、判斷譯碼是否正確,正確則執(zhí)行步驟305;否則執(zhí)行步驟306。步驟305、發(fā)送表示正確接收的ACK應(yīng)答給發(fā)送端,結(jié)束本流程。步驟306、判斷是否達(dá)到預(yù)設(shè)的重傳上限次數(shù),如果達(dá)到,則結(jié)束本流程,否則執(zhí)行步驟307。步驟307、將N的值加1,由數(shù)據(jù)接收端向數(shù)據(jù)發(fā)送端發(fā)送重傳請求即NACK請求。步驟308、數(shù)據(jù)發(fā)送端收到NACK請求,進(jìn)行第N層編碼,即將已編碼的前N-1層數(shù)據(jù)用LDPC碼的第N層校驗矩陣進(jìn)行編碼得到第N層數(shù)據(jù),再發(fā)送。所述數(shù)據(jù)發(fā)送端可以在發(fā)送第N-1層數(shù)據(jù)后將其緩存,用于第N層的編碼,如果沒有收到NACK請求,則再將其刪除。例如,對于第二層編碼,則利用LDPC的第二層校驗矩陣對第一層的編碼結(jié)果進(jìn)行編碼;對于第三層編碼,則利用LDPC的第三層校驗矩陣對第二層及以前的編碼結(jié)果進(jìn)行編碼;以后各層編碼依此類推。數(shù)據(jù)接收端在接收到數(shù)據(jù)之后,利用所述LDPC碼的N層校驗矩陣對收到的數(shù)據(jù)進(jìn)行分層譯碼。此處有兩種分層譯碼方法,圖3所示的為其中一種,這種分層譯碼方法執(zhí)行以下步驟309至步驟311:步驟309、數(shù)據(jù)接收端利用LDPC碼的第N層校驗矩陣對所收到的第N層數(shù)據(jù)與前N-1層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼。具體為采用所述LDPC碼的前N-1層校驗矩陣對前N-1層數(shù)據(jù)進(jìn)行譯碼,將譯碼后的前N-1層數(shù)據(jù)和第N層數(shù)據(jù)級聯(lián),釆用所述LDPC碼的第N層校驗矩陣對所述譯碼后的前N-1層數(shù)據(jù)和第N層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼。步驟310、判斷譯碼是否正確,正確則執(zhí)行步驟305;否則執(zhí)行步驟311。步驟311、將所述LDPC碼的前N-1層校驗矩陣和第N層校驗矩陣合并,利用所述合并的校驗矩陣對所述前N-1層數(shù)據(jù)和第N層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,返回步驟304。作為上述步驟309至步驟311的替代方案,另一種分層譯碼方法為將前N-1層數(shù)據(jù)和第N層數(shù)據(jù)級聯(lián),將所述LDPC碼的前N-1層校驗矩陣和第N層校驗矩陣合并,利用所述合并的校驗矩陣對所述級聯(lián)數(shù)據(jù)進(jìn)行譯碼,返回步驟304。在本發(fā)明所述方法中,所述數(shù)據(jù)接收端在收到第N層數(shù)據(jù)時,如果譯碼錯誤,則可以將該第N層數(shù)據(jù)緩存,在進(jìn)行后續(xù)的級聯(lián)處理時再從緩存中讀取即可?;谏鲜龅腖DPC碼的詳細(xì)構(gòu)造理論和詳細(xì)構(gòu)造方法,下面對圖3所述實施例的每一步驟加以詳細(xì)描述。第一步、根據(jù)業(yè)務(wù)和重傳HARQ方案構(gòu)造分層LDPC碼的各層校驗矩陣。構(gòu)造分層的LDPC碼結(jié)構(gòu)是保證分層編碼和譯碼特性的關(guān)鍵,既要保證下層的編碼不影響上層的編碼,又要保證編碼具有線性的復(fù)雜度,此外還要保證編碼方案的性能。具體的構(gòu)造方法如下步驟31、設(shè)定母矩陣的信息位的長度&、母矩陣整體傳輸?shù)拇a字長度w。、以及LDPC碼中循環(huán)塊的大小p;確定碼字中的信息位長度為《。=&*/7、初始傳輸?shù)拇a字長度為W。="。*/,確定初始傳輸?shù)拇a率為W。=f。/W。,并且假設(shè)每次校驗矩陣的擴(kuò)展位數(shù)為"P,/為大于等于1的整數(shù)。步驟32、構(gòu)造母矩陣M。,其形式為公式(16),根據(jù)母矩陣M。,采用構(gòu)造準(zhǔn)循環(huán)碼的冪方法即上述的步驟21至步驟28,構(gòu)造(7V。-f。"W。維基校驗矩陣及。,將W。作為第一層校驗矩陣。步驟33、對于第二層校驗矩陣,在第一層校驗矩陣好。的母矩陣Af。的基礎(chǔ)上,同樣可采用比特填充法或PEG方法構(gòu)造第二層校驗矩陣的母矩陣M,,并使之有如下公式(17)的形式<formula>formulaseeoriginaldocumentpage20</formula>其中Me為("。-&)*"。維,M,為(w。+/)維,Ci,為〃"p維,(^為/*/維,且Q為準(zhǔn)下三角陣。并且,在允許的范圍內(nèi),在M,中設(shè)置盡可能少的短長度的塊環(huán)。步驟34、由于^的構(gòu)造已經(jīng)保證了圍長盡可能的大,最小環(huán)長盡可能的少,因此對于Cu和C^中為"l"的位置,同樣釆用生成QCLDPC碼的冪方法,來生成的循環(huán)置換矩陣代替該位置,從而得到^及《,這樣就可在允許范圍內(nèi),使得相應(yīng)的圍長盡可能大,且最小環(huán)長的數(shù)目盡可能小,從而得到相應(yīng)的第二層校驗矩陣如公式(18)所示<formula>formulaseeoriginaldocumentpage20</formula>其中,g有公式(2)中開,的形式,即為準(zhǔn)下三角陣。步驟35、以此類推,依照與步驟33和步驟34相似的方法,可以按如下公式(19)所示的結(jié)構(gòu)依次構(gòu)造第m層的母矩陣,并按照如下公式(20)的結(jié)構(gòu)構(gòu)造相應(yīng)的第w層校驗矩陣,其構(gòu)造碼率為^。/("。+(m-l)/)。<formula>formulaseeoriginaldocumentpage21</formula>此處,對于短碼或者中等長度的碼,也可采用一般的構(gòu)造QCLDPC碼的冪方法來構(gòu)造具有所述分層結(jié)構(gòu)的QCLDPC碼。第二步、將預(yù)發(fā)送的數(shù)據(jù)用第一層校驗矩陣進(jìn)行編碼。此處按公式(2)所示構(gòu)造的第一層校驗矩陣對預(yù)發(fā)送的數(shù)據(jù)進(jìn)行編碼,第一層編碼后的數(shù)據(jù)碼為c。二[《AA],其中s為已知信息位,Pi、p2為校驗位。第三步、在數(shù)據(jù)接收端,檢測后的第一層編碼結(jié)果用第一層校驗矩陣譯碼,如果校驗正確,發(fā)送ACK應(yīng)答,過程終止;否則,發(fā)送NACK請求發(fā)送增量冗余信息。此處基于第一層校驗矩陣釆用BP算法進(jìn)行譯碼;可根據(jù)是否滿足來判斷譯碼結(jié)果是否正確。第四步、如果數(shù)據(jù)發(fā)送端收到NACK請求,則進(jìn)行第二層編碼。如公式(18),其中F。有公式(3)的分塊矩陣形式,那么可以得到第一層和第二層的合并校驗矩陣A,其形式如公式(21):<formula>formulaseeoriginaldocumentpage21</formula>其中,仏可以分解為相應(yīng)維數(shù)的分塊矩陣[e"仏ej,e為/^x/p維由循環(huán)置換矩陣構(gòu)成的分塊矩陣。如果將《構(gòu)造成一個近似下三角矩陣,則還可以保證編碼復(fù)雜度具有準(zhǔn)線性。設(shè)第二層編碼后的數(shù)據(jù)碼為Cl,令Cl為由A編碼的一組碼字c一[s幾aa]。由W^、^可以分解為如下三個方程式(22)、(23)、(24):ar+^+7(22)f£rj4+C)sr+卩一五r一5+D)/;〖=(23)(24)由方程式(24)可以得到方程式(25)W=尸/(e"r++)(25)其中《為已知信息位,a和^為第一層編碼的已知結(jié)果,根據(jù)式(25),采用b-ldpc碼的快速編碼方法完成編碼,發(fā)送第二層編碼結(jié)果^。增加的增量冗余數(shù)據(jù)a的編碼不影響已發(fā)的碼字,且編碼復(fù)雜度仍為準(zhǔn)線性。同理,如果重傳冗余校驗數(shù)據(jù)第柳層,那么W"的結(jié)構(gòu)如公式(26)所示<formula>formulaseeoriginaldocumentpage22</formula>其中,m=N,第N層校驗矩陣為好^的最后一行。相應(yīng)第附層的編碼結(jié)果為L=d,Z+Gm—"+i一"+...+e—乂)(27)其中,s為已知信息位,^A,^…,/^為上層編碼的已知結(jié)果,上標(biāo)r表示轉(zhuǎn)置,上標(biāo)-i表示求逆。第五步在數(shù)據(jù)接收端,有兩種譯碼方法一、將譯碼后的第一層數(shù)據(jù)和收到的第二層數(shù)據(jù)級聯(lián),首先采用第二層校驗矩陣進(jìn)行嘗試譯碼,如果譯碼正確,發(fā)送ack應(yīng)答,過程終止;否則,將緩存的第一層數(shù)據(jù)和收到第二層數(shù)據(jù)級聯(lián),采用第一層校驗矩陣和第二層校驗矩陣合并的校驗矩陣進(jìn)行譯碼,如果譯碼正確,發(fā)送ACK應(yīng)答,過程終止。否則,發(fā)送NACK請求發(fā)送增量冗余信息。二、將緩存的第一層數(shù)據(jù)和收到的第二層數(shù)據(jù)級聯(lián),釆用第一層校驗矩陣和第二層校驗矩陣合并的校驗矩陣進(jìn)行譯碼,如果譯碼正確,發(fā)送ACK應(yīng)答,過程終止,否則,發(fā)送NACK再請求發(fā)送增量冗余信白/G、o對于第一種譯碼方法,此處采用如下處理步驟41、將第一層譯碼后的碼字《與第二層接收數(shù)據(jù)r,級聯(lián)。當(dāng)然,此處也可以進(jìn)一步將第一層譯碼后的碼字進(jìn)行公知的硬判決,以消除增益,再用硬判決后的碼字rf。與第二層接收數(shù)據(jù)r,級聯(lián)。步驟42、對于c,其在加性白高斯噪聲(AWGN)信道中傳遞的置信信息為,/《"0:(28)4*a其中,^為rf。的第j個比特,一為信道噪聲的方差,"為一常數(shù),根據(jù)第二層接收數(shù)據(jù)r,的均值來選取。步驟43、對于第二層的接收數(shù)據(jù)r,,其置信信息為=(29)步驟44、根據(jù)公式(28)及公式(29),釆用所述第二層校驗矩陣并利用簡化的BP算法進(jìn)行譯碼,如果譯碼正確,發(fā)送ACK應(yīng)答,過程終止;否則,將第一層保存下來的接收數(shù)據(jù)r。與第二層接收的數(shù)據(jù)^進(jìn)行級聯(lián),釆用公式(21)的合并校驗矩陣進(jìn)行譯碼,如果譯碼正確,發(fā)送ACK應(yīng)答,過程終止。否則,發(fā)送NACK請求發(fā)送增量冗余信息。對于第一種譯碼方法,將緩存的第一層數(shù)據(jù)r。和收到第二層數(shù)據(jù)^級聯(lián),利用公式(21)所示的合并校驗矩陣進(jìn)行譯碼。第六步、數(shù)據(jù)發(fā)送端收到NACK請求,進(jìn)行再下一層編碼,重復(fù)第四步和第五步,直到譯碼正確或達(dá)到重傳限制次數(shù)為止。假設(shè)目前需要傳輸?shù)诟綄拥娜哂嘈r灁?shù)據(jù),利用構(gòu)造的第m層校驗矩陣進(jìn)行編碼,編碼增量冗余結(jié)果為L+,。重復(fù)第四步和第五步,直到譯碼正確或者直到重傳次數(shù)限制為止。對于第一種譯碼方法,此處采用如下處理步驟51、將第m-l層譯碼后的碼字《^與第m層接收數(shù)據(jù)r"級聯(lián)。當(dāng)然也可以先對第附-l層譯碼后的碼字進(jìn)行硬判決,硬判后再級聯(lián)。步驟52、對于《—2,其在AWGN信道中傳遞的置信信息為<formula>formulaseeoriginaldocumentpage24</formula>其中,2為《—2的第_/個比特,y為信道噪聲的方差,《為一常數(shù),根據(jù)第附層接收數(shù)據(jù)/""的均值來選取。步驟53、對于第m層的接收數(shù)據(jù)m其置信信息為<formula>formulaseeoriginaldocumentpage24</formula>(31)步驟54、根據(jù)公式(30)及公式(31),采用第m層校驗矩陣?yán)煤喕腂P算法進(jìn)行譯碼,如果譯碼正確,發(fā)送ACK應(yīng)答,過程終止;否則,將緩存的所有上層數(shù)據(jù)r。,^…,^與第m層接收的數(shù)據(jù)/^進(jìn)行級聯(lián),釆用式(26)合并的校驗矩陣進(jìn)行譯碼,如果譯碼正確,發(fā)送ACK應(yīng)答,過程終止。否則,發(fā)送NACK請求發(fā)送增量冗余信息。對于第一種譯碼方法,則將緩存的所有上層數(shù)據(jù)r。人,…,^和收到第附層數(shù)據(jù)iV,級聯(lián),利用公式(26)所示的合并校驗矩陣進(jìn)行譯碼。以下對于上述兩種譯碼方法的性能進(jìn)行詳細(xì)的對比。此處采用信息位長度為《。二508、第一層、第二層和第三層的碼率分別為4/8、4/14、4/20,母碼的碼率為4/8,每次重傳數(shù)據(jù)長度為127*6的QCLDPC碼,并采用簡化的母矩陣構(gòu)造方法。其中,循環(huán)置換塊的大小為127*127。下面將第一種譯碼方法和第二種譯碼方法進(jìn)行性能比較。由于第一種譯碼方法將譯碼后的第一層數(shù)據(jù)和收到的第二層編碼數(shù)據(jù)級聯(lián),釆用第二層校驗矩陣進(jìn)行譯碼,所以第一種譯碼方法也叫單層譯碼;第二種譯碼方法也叫完整譯碼。以下表1為兩種方法的譯碼成功概率仿真結(jié)果:<table>tableseeoriginaldocumentpage25</column></row><table>表2由表1及表2的結(jié)果可見首先,在譯碼成功率方面,第一種譯碼方法在信噪比為ldB-0.6dB時,隨著信道條件的惡化,用單層校驗矩陣譯碼成功率下降;而在信噪比為1.2dB-1.8dB之間時,用單層校驗矩陣譯碼成功率達(dá)到85%以上;而第二種譯碼方法用整個校驗矩陣譯碼,在相同的信噪比情況下,譯碼成功率達(dá)到100%。其次,在譯碼迭代次數(shù)方面,在信噪比為1.2dB-1.8dB時,用單層校驗矩陣譯碼的平均迭代次數(shù)為6.135次,用整個校驗矩陣譯碼的平均迭代次數(shù)為6.86次,后者比前者平均多了0.725次。在譯碼復(fù)雜度方面,BP算法每次迭代的復(fù)雜度與校驗矩陣中1的個數(shù)成正比關(guān)系,而對于所述的兩種譯碼,所釆用的校驗矩陣是有較大差異的,單層校驗矩陣譯碼采用的是整個分層校驗矩陣中的一層,而整體譯碼采用的是整個校驗矩陣,因此,用單層校驗矩陣譯碼的復(fù)雜度,要遠(yuǎn)遠(yuǎn)的小于用整個校驗矩陣譯碼的復(fù)雜度。由以上分析可以看出,在信道情況較好的情況下,第一種譯碼方法的成功的概率很大,且在整體上大大的降低了算法的復(fù)雜度;而在信噪比為ldB-0.6dB時,隨著信噪比的下降,第一種譯碼方法的譯碼成功率下降較快,而且譯碼迭代次數(shù)也迅速的增加了,所以此時再采用單層校驗矩陣譯碼的意義就不大了,此時可直接釆用第二種譯碼方法進(jìn)行譯碼。在實際系統(tǒng)中可以根據(jù)接收端的通信信道質(zhì)量,例如信噪比估計值,來判決采用哪種譯碼方案。因此本發(fā)明的方法可以預(yù)先設(shè)置預(yù)定的通信信道質(zhì)量標(biāo)準(zhǔn),例如設(shè)定一個信噪比估計值。在譯碼前,進(jìn)一步判斷接收端的當(dāng)前通信信道質(zhì)量是否達(dá)到預(yù)定的標(biāo)準(zhǔn),如果是則利用所述第一種譯碼方法進(jìn)行譯碼,否則利用所述第二種譯碼方法進(jìn)行譯碼?;谏鲜龅淖g碼方法,本發(fā)明還公開了一種LDPC編碼的譯碼裝置。圖5為本發(fā)明所述基于HARQ通信譯碼裝置的一種結(jié)構(gòu)示意圖。參見圖5,所述譯碼裝置包括糾錯碼構(gòu)造單元51和譯碼單元52。其中糾錯碼構(gòu)造單元51用于構(gòu)造LDPC碼,將其作為糾錯碼。所述糾錯碼構(gòu)造單元51可以同時設(shè)置在數(shù)據(jù)發(fā)送端和數(shù)據(jù)接收端;也可以設(shè)置在一端,通過交互消息將所構(gòu)造的LDPC碼發(fā)送給另一端。譯碼單元53,設(shè)置在所述混合自動重傳通信系統(tǒng)的數(shù)據(jù)接收端,其中包括譯碼模塊532,用于利用所述糾錯碼構(gòu)造單元51構(gòu)造的LDPC碼對接收到的數(shù)據(jù)進(jìn)行譯碼。本發(fā)明所述裝置構(gòu)造的LDPC碼為分層結(jié)構(gòu),所述糾錯碼構(gòu)造單元51具體包括校驗矩陣構(gòu)造單元,用于構(gòu)造分層的LDPC碼的各層校驗矩陣。具體的構(gòu)造方法可以參見上述步驟31至步驟35所述的方法。所述譯碼單元52進(jìn)一步包括層次確定單元521和譯碼結(jié)果判斷單元523,所述層次確定單元521用于確定譯碼的層次N,在數(shù)據(jù)接收端收到初始發(fā)送數(shù)據(jù)時,觸發(fā)譯碼模塊利用LDPC碼的第一層校驗矩陣對收到的數(shù)據(jù)進(jìn)行分層譯碼,當(dāng)數(shù)據(jù)接收端收到第n-l次重傳數(shù)據(jù)時,確定譯碼的層次n,觸發(fā)譯碼模塊利用所述LDPC碼的n層校驗矩陣對收到的數(shù)據(jù)進(jìn)行分層譯碼,n為大于等于2的整數(shù);所述譯碼結(jié)果判斷單元523用于判斷譯碼結(jié)果,如果譯碼錯誤,則將N的值加1,觸發(fā)數(shù)據(jù)接收端向數(shù)據(jù)發(fā)送端發(fā)送重傳請求。譯碼單元所采用的具體譯碼方法請參見上述公開的譯碼方法。所述譯碼模塊522進(jìn)一步包括第一譯碼模塊和第二譯碼模塊,所述譯碼結(jié)果判斷單元523進(jìn)一步包括第一譯碼結(jié)果判斷單元和第二譯碼結(jié)果判斷單元,其中第一譯碼模塊用于利用所述LDPC碼的前n-1層校驗矩陣對前n-1層數(shù)據(jù)進(jìn)行譯碼,將前n-1層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)級聯(lián),采用所述LDPC碼的第n層校驗矩陣對所述前n-1層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,輸出譯碼結(jié)果給第一譯碼結(jié)果判斷單元;第一譯碼結(jié)果判斷單元用于判斷譯碼結(jié)果,如果譯碼錯誤,則觸發(fā)所述第二譯碼模塊;第二譯碼模塊用于將前n-1層數(shù)據(jù)和第n層數(shù)據(jù)級聯(lián),將所述LDPC碼的前n-l層校驗矩陣和第n層校驗矩陣合并,利用所述合并的校驗矩陣對所述前n-1層數(shù)據(jù)和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,輸出譯碼結(jié)果給第二譯碼結(jié)果判斷單元;第二譯碼結(jié)果判斷單元用于判斷譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù)。圖6為釆用本發(fā)明所述的基于HARQ技術(shù)的分層LDPC碼的性能仿真示意圖。參見圖6,假設(shè)信息位長度為尺。=508、第一層、第二層和第三層的碼率分別為4/8、4/14、4/20,其中母碼碼率為4/8,每次重傳數(shù)據(jù)長度為127*6的QCLDPC碼,采用簡化的母矩陣構(gòu)造方法。其中,循環(huán)置換塊的大小為127*127。圖6的橫坐標(biāo)為符號能量/噪聲(Es/N0),縱坐標(biāo)為比特錯誤率(BER),BER為LDPC碼的性能參數(shù)。其中軌跡線601表示碼率為508/2540的B-LDPC碼的性能,軌跡線602表示碼率為508/2540且基于HARQ的LDPC碼的性能,軌跡線603表示碼率為508/1778且基于HARQ的LDPC碼的性能,軌跡線604表示碼率為508/1778的B-LDPC碼的性能,軌跡線605表示碼率508/1016且基于HARQ的LDPC碼的性能,軌跡線606表示碼率為508/1016的B-LDPC碼的性能,并且在圖6中,軌跡線605和軌跡線606是重合的。由圖6中的仿真結(jié)果可以看出,用構(gòu)造的基于HARQ技術(shù)的分層LDPC碼的性能在較高碼率時,性能和整體優(yōu)化的B-LDPC基本保持一致,但隨著碼率的降低,該方法的性能較B-LDPC碼有所下降,且在碼率為0.2時,下降約為0.6dB。B-LDPC為整體優(yōu)化構(gòu)造的LDPC碼,基于HARQ的分層LDPC碼采用了分層優(yōu)化構(gòu)造的LDPC碼??梢姡景l(fā)明在基本保證編碼性能和較低的編碼復(fù)雜度條件下,很好地滿足了HARQ實現(xiàn)中對譯碼在性能、復(fù)雜度、譯碼延遲方面的綜合需求。以上所述,僅為本發(fā)明較佳的具體實施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉該技術(shù)的人在本發(fā)明所揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。權(quán)利要求1、一種LDPC編碼的譯碼方法,其特征在于,A、預(yù)先構(gòu)造并存儲分層的LDPC碼的各層校驗矩陣;B、在數(shù)據(jù)接收端收到初始發(fā)送的第一層數(shù)據(jù)時,利用所述LDPC碼的第一層校驗矩陣對收到的數(shù)據(jù)進(jìn)行譯碼,并判斷譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù);C、在數(shù)據(jù)接收端收到第n-1次重傳數(shù)據(jù)時,利用所述LDPC碼的n層校驗矩陣對收到的數(shù)據(jù)進(jìn)行分層譯碼;判斷譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù),n為大于等于2的整數(shù)。2、根據(jù)權(quán)利要求1所述的LDPC編碼的譯碼方法,其特征在于,步驟C具體為cl、采用所述LDPC碼的前n-1層校驗矩陣對前n-1層數(shù)據(jù)進(jìn)行譯碼,將前n-l層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)級聯(lián),采用所述LDPC碼的第n層校驗矩陣對所述前n-1層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼;c2、判斷步驟cl的譯碼結(jié)果,如果譯碼錯誤,則將前n-l層數(shù)據(jù)和第n層數(shù)據(jù)級聯(lián),將所述LDPC碼的前n-l層校驗矩陣和第n層校驗矩陣合并,利用所述合并的校驗矩陣對所述前n-1層數(shù)據(jù)和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,并判斷該譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù)。3、根據(jù)權(quán)利要求1所述的LDPC編碼的譯碼方法,其特征在于,步驟C具體為c3、將前n-l層數(shù)據(jù)和第n層數(shù)據(jù)級聯(lián),將所述LDPC碼的前n-l層校驗矩陣和第n層校驗矩陣合并,利用所述合并的校驗矩陣對所述級聯(lián)數(shù)據(jù)進(jìn)行譯碼。4、根據(jù)權(quán)利要求1所述的LDPC編碼的譯碼方法,其特征在于,該方法進(jìn)一步包括判斷當(dāng)前通信信道質(zhì)量是否達(dá)到預(yù)定的標(biāo)準(zhǔn),如果達(dá)到,則步驟C具體為cl、采用所述LDPC碼的前n-1層校驗矩陣對前n-1層數(shù)據(jù)進(jìn)行譯碼,將前n-1層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)級聯(lián),采用所述LDPC碼的第n層校驗矩陣對所述前n_1層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼;c2、判斷步驟cl的譯碼結(jié)果,如果譯碼錯誤,則將前n-l層數(shù)據(jù)和第n層數(shù)據(jù)級聯(lián),將所述LDPC碼的前n-1層校驗矩陣和第n層校驗矩陣合并,利用所述合并的校驗矩陣對所述前n-1層數(shù)據(jù)和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,并判斷該譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù);如果當(dāng)前通信信道質(zhì)量沒有達(dá)到預(yù)定的標(biāo)準(zhǔn),則所述步驟C具體為c3、將前n-l層數(shù)據(jù)和第n層數(shù)據(jù)級聯(lián),將所述LDPC碼的前n-l層校驗矩陣和第n層校驗矩陣合并,利用所述合并的校驗矩陣對所述級聯(lián)數(shù)據(jù)進(jìn)行譯碼。5、根據(jù)權(quán)利要求1所述的LDPC編碼的譯碼方法,其特征在于,步驟A所述的構(gòu)造方法為準(zhǔn)循環(huán)LDPC碼構(gòu)造方法;且步驟A具體包括al、設(shè)定母矩陣的參數(shù);a2、根據(jù)所設(shè)定的參數(shù)構(gòu)造母矩陣M。;采用構(gòu)造準(zhǔn)循環(huán)碼的冪方法,根據(jù)母矩陣M。構(gòu)造基校驗矩陣仏,將ff。作為第一層校驗矩陣;a3、設(shè)定m的初始值為2;a4、構(gòu)造第m層校驗矩陣的母矩陣A^—1;a5、釆用冪方法生成循環(huán)置換矩陣代替M"中的選定塊,得到第m層校驗矩陣好^,;a6、判斷m是否達(dá)到預(yù)定值,如果是,則結(jié)東本流程;否則,將m的值加1,返回步驟a4。6、根據(jù)權(quán)利要求1所述的LDPC編碼的譯碼方法,其特征在于,所述構(gòu)造各層校驗矩陣的方法為比特填充法、或邊漸進(jìn)增長算法。7、根據(jù)權(quán)利要求1至6任一項所述的LDPC編碼的譯碼方法,其特征在于,所述每層的LDPC碼為塊形式的LDPC碼。8、一種LDPC編碼的譯碼裝置,其特征在于,該裝置包括糾錯碼構(gòu)造單元,用于構(gòu)造分層的LDPC碼的各層校驗矩陣,并將構(gòu)造的分層LDPC碼作為糾錯碼;譯碼單元,設(shè)置在數(shù)據(jù)接收端,用于利用所述糾錯碼構(gòu)造單元構(gòu)造的分層LDPC碼對接收到的數(shù)據(jù)進(jìn)行分層譯碼。9、根據(jù)權(quán)利要求8所述的LDPC編碼的譯碼裝置,其特征在于,所述譯碼單元具體包括譯碼模塊、層次確定單元和譯碼結(jié)果判斷單元;所述譯碼模塊用于譯碼;所述層次確定單元用于確定譯碼的層次,在數(shù)據(jù)接收端收到初始發(fā)送數(shù)據(jù)時,觸發(fā)譯碼模塊利用LDPC碼的第一層校驗矩陣對收到的數(shù)據(jù)進(jìn)行分層譯碼,當(dāng)數(shù)據(jù)接收端收到第n-l次重傳數(shù)據(jù)時,確定譯碼的層次n,觸發(fā)譯碼模塊利用所述LDPC碼的n層校驗矩陣對收到的數(shù)據(jù)進(jìn)行分層譯碼,n為大于等于2的整數(shù);所述譯碼結(jié)果判斷單元用于判斷譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù)。10、根據(jù)權(quán)利要求9所述的LDPC編碼的譯碼裝置,其特征在于,所述譯碼模塊進(jìn)一步包括第一譯碼模塊和第二譯碼模塊,所述譯碼結(jié)果判斷單元進(jìn)一步包括第一譯碼結(jié)果判斷單元和第二譯碼結(jié)果判斷單元,其中第一譯碼模塊用于利用所述LDPC碼的前n-1層校驗矩陣對前n-1層數(shù)據(jù)進(jìn)行譯碼,將前ii-l層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)級聯(lián),釆用所述LDPC碼的第n層校驗矩陣對所述前n-1層數(shù)據(jù)的譯碼結(jié)果和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,輸出譯碼結(jié)果給第一譯碼結(jié)果判斷單元;第一譯碼結(jié)果判斷單元用于判斷譯碼結(jié)果,如果譯碼錯誤,則觸發(fā)所述第二譯碼模塊;第二譯碼模塊用于將前n-l層數(shù)據(jù)和第n層數(shù)據(jù)級聯(lián),將所述LDPC碼的前n-1層校驗矩陣和第n層校驗矩陣合并,利用所述合并的校驗矩陣對所述前n-l層數(shù)據(jù)和第n層數(shù)據(jù)的級聯(lián)數(shù)據(jù)進(jìn)行譯碼,輸出譯碼結(jié)果給第二譯碼結(jié)果判斷單元;第二譯碼結(jié)果判斷單元用于判斷譯碼結(jié)果,如果譯碼錯誤,則通知數(shù)據(jù)發(fā)送端重傳數(shù)據(jù)。11、根據(jù)權(quán)利要求8至IO任一項所述的LDPC編碼的譯碼裝置,其特征在于,所述每層的LDPC碼為塊形式的LDPC碼。全文摘要本發(fā)明公開了一種低密度校驗碼(LDPC)編碼的譯碼方法,該方法利用分層LDPC碼作為糾錯碼,在數(shù)據(jù)接收端利用分層LDPC碼對接收的數(shù)據(jù)進(jìn)行分層譯碼。本發(fā)明還同時公開了一種LDPC編碼的譯碼裝置,包括糾錯碼構(gòu)造單元,用于構(gòu)造分層的LDPC碼的各層校驗矩陣,并將構(gòu)造的分層LDPC碼作為糾錯碼;該裝置還包括譯碼單元,設(shè)置在數(shù)據(jù)接收端,用于利用所述糾錯碼構(gòu)造單元構(gòu)造的分層LDPC碼對接收到的數(shù)據(jù)進(jìn)行分層譯碼。采用本發(fā)明的方法和裝置,可以降低系統(tǒng)開銷、縮短譯碼延遲、提高譯碼性能、并適用于高速數(shù)據(jù)業(yè)務(wù)。文檔編號H04L1/18GK101321043SQ20071010036公開日2008年12月10日申請日期2007年6月8日優(yōu)先權(quán)日2007年6月8日發(fā)明者喬元新,孫建勛,璐安,曹晏波,李洪強,董育新申請人:大唐移動通信設(shè)備有限公司