專利名稱:一種cmmb接收機(jī)解碼方法
技術(shù)領(lǐng)域:
本發(fā)明屬于無線通信領(lǐng)域,涉及一種CMMB接收機(jī)解碼方法。
背景技術(shù):
中國(guó)移動(dòng)多媒體廣播(CMMB)傳輸系統(tǒng)中采用了內(nèi)碼和外碼級(jí)聯(lián)的技術(shù)體制,內(nèi)碼采用低密度冗余校驗(yàn)碼(LDPC碼),外碼采用里德-所羅門碼(RS碼)。內(nèi)碼和外碼之間 采用字節(jié)分塊解交織用于打散信道錯(cuò)誤、增強(qiáng)接收機(jī)糾錯(cuò)能力。在CMMB中所采用的內(nèi)碼及 字節(jié)分塊解交織在整個(gè)接收端芯片設(shè)計(jì)中占用了大部分資源,導(dǎo)致功耗增加,內(nèi)碼和外碼 級(jí)聯(lián)的技術(shù)體制在增加信道糾錯(cuò)能力的同時(shí)也提高了系統(tǒng)復(fù)雜度,導(dǎo)致了功耗的上升。傳統(tǒng)的CMMB接收機(jī)解碼流程是首先將LDPC碼解碼前的碼字送入LDPC解碼模塊 進(jìn)行解碼,然后將經(jīng)過LDPC解碼的碼字送給字節(jié)分塊解交織模塊。字節(jié)分塊解交織模塊將 LDPC解碼的碼字解交織后,組成RS解碼前的碼字送給RS解碼模塊,RS解碼模塊將殘存的 誤碼進(jìn)一步糾正。其中的字節(jié)分塊解交織模塊的解交織方法為將LDPC的解碼后的碼字填進(jìn)字節(jié) 分塊解交織模塊中的解交織存儲(chǔ)器,解交織存儲(chǔ)器一共分為240列,填充方法是從左上角 開始按照從上到下的順序填滿第一列,然后再按從上到下的順序填滿第二列……,以此類 推,直到整塊解交織存儲(chǔ)器填滿。解交織存儲(chǔ)器填滿后開始組成RS解碼前的碼字并輸出給后續(xù)的RS解碼模塊,組 成方法為從解交織存儲(chǔ)器的左上角開始,從第一列取頂端第一個(gè)字節(jié)作為RS解碼前碼字 的第一個(gè)字節(jié),從第二列取頂端第二個(gè)字節(jié)作為RS解碼前碼字的第二個(gè)字節(jié)。以此類推, 直到所有列的第一個(gè)字節(jié)被取出,組成240個(gè)字節(jié)長(zhǎng)度的RS解碼前碼字送給后續(xù)的RS解 碼模塊進(jìn)行解碼。第二個(gè)碼字按照上述方法從每一列取出從頂端起第二個(gè)字節(jié)組成一個(gè) 240個(gè)字節(jié)的碼字送給后續(xù)的RS解碼模塊進(jìn)行解碼。重復(fù)上述過程,直到每一列的最后一 個(gè)字節(jié)被取出作為一個(gè)RS解碼前碼字送給后續(xù)RS解碼模塊進(jìn)行解碼。在CMMB的技術(shù)體制中,RS碼的信息位長(zhǎng)度(記作K)有4種,分別為176字節(jié)、192 字節(jié)、224字節(jié)和240字節(jié),校驗(yàn)字節(jié)長(zhǎng)度為240-K。根據(jù)上述的解交織方法,RS解碼前的 碼字的校驗(yàn)字節(jié)都集中在解交織存儲(chǔ)器的右側(cè)的240-K列中。傳統(tǒng)的CMMB接收機(jī)的內(nèi)碼外碼分離的解碼方法帶來了高功耗問題,CMMB的應(yīng)用 場(chǎng)合為移動(dòng)環(huán)境,接收機(jī)主要靠電池供電,使接收機(jī)的工作時(shí)間因電池的消耗而大大縮短。
發(fā)明內(nèi)容
本發(fā)明的目的就是針對(duì)現(xiàn)有技術(shù)的不足,提供一種CMMB接收機(jī)解碼方法。該方法 適用于CMMB標(biāo)準(zhǔn)進(jìn)行數(shù)據(jù)復(fù)用的移動(dòng)多媒體廣播系統(tǒng)。本發(fā)明方法將內(nèi)碼和外碼聯(lián)合進(jìn)行解碼,內(nèi)碼和外碼的聯(lián)合依托于它們之間的字 節(jié)分塊解交織,從而達(dá)到降低功耗的效果,延長(zhǎng)電池的續(xù)航時(shí)間。本發(fā)明的方法,如果能夠 確定LDPC解碼殘存的錯(cuò)誤都集中在校驗(yàn)位部分,而信息字節(jié)正確,不通過RS解碼直接送出信息字節(jié),從而實(shí)現(xiàn)了功耗節(jié)省,延長(zhǎng)了 CMMB接收機(jī)的工作時(shí)間。本發(fā)明方法步驟如下步驟(1)在字節(jié)分塊解交織中增加信息字節(jié)出錯(cuò)指示標(biāo)志量,記作E ;步驟⑵初始狀態(tài)下,將E清0 ;步驟(3)將LDPC解碼前碼字送給LDPC解碼模塊進(jìn)行解碼,然后將經(jīng)過LDPC解碼 的碼字送給字節(jié)分塊解交織模塊;同時(shí)將該碼字對(duì)應(yīng)的LDPC解碼后碼字包含錯(cuò)誤指示送 給解交織模塊;所述的LDPC解碼后碼字包含錯(cuò)誤指示特征為如果當(dāng)前輸出的經(jīng)過LDPC解碼的 碼字包含錯(cuò)誤,則該指示為1 ;如果當(dāng)前輸出的經(jīng)過LDPC解碼的碼字不包含錯(cuò)誤,則該指示 為0;步驟(4)字節(jié)分塊解交織模塊將經(jīng)過LDPC解碼的碼字填入解交織存儲(chǔ)器,同時(shí) 將LDPC解碼后碼字包含錯(cuò)誤指示累加到標(biāo)志量E上;碼字填入解交織存儲(chǔ)器的方法為目前 CMMB接收機(jī)解碼中所采用的方法。步驟(5)當(dāng)解交織存儲(chǔ)器的前K列填滿時(shí),檢查標(biāo)志量E,如果標(biāo)志量E為0,說明 解交織存儲(chǔ)器中的所有數(shù)據(jù)對(duì)應(yīng)的RS碼字的信息字節(jié)全部正確,字節(jié)分塊解交織模塊同 時(shí)向LDPC解碼模塊和RS解碼模塊發(fā)出譯碼停止指令,不再進(jìn)行解碼;如果標(biāo)志量E的值大 于0,說明解交織存儲(chǔ)器中已經(jīng)存儲(chǔ)的數(shù)據(jù)對(duì)應(yīng)的RS碼字的信息字節(jié)存在錯(cuò)誤,需要繼續(xù) 按照傳統(tǒng)方式繼續(xù)將LDPC解碼后碼字填入字節(jié)解交織存儲(chǔ)器直到填滿存儲(chǔ)器,然后逐行 讀出,進(jìn)行RS解碼;讀出的方法為目前CMMB接收機(jī)解碼中所采用的方法。K為CMMB技術(shù) 體制中的RS碼的信息位長(zhǎng)度,取值分別為176字節(jié)、192字節(jié)、224字節(jié)和240字節(jié)。步驟(6)當(dāng)前解交織存儲(chǔ)器中的數(shù)據(jù)處理完成后,將標(biāo)志位E清0 ;重復(fù)步驟(3) 到步驟(6)。本發(fā)明的方法,如果能夠確定LDPC解碼后的碼字信息字節(jié)正確,就可以不通過RS 解碼直接送出信息字節(jié),從而實(shí)現(xiàn)了功耗節(jié)省,延長(zhǎng)了 CMMB接收機(jī)的工作時(shí)間。采用本發(fā)明所述的低功耗解碼方法,相對(duì)于傳統(tǒng)的解碼方法,能夠根據(jù)錯(cuò)誤出現(xiàn) 的位置決定是否需要繼續(xù)進(jìn)行LDPC解碼和RS解碼,避免了盲目解碼,從而實(shí)現(xiàn)了功耗的節(jié) 省,延長(zhǎng)了 CMMB接收機(jī)的工作時(shí)間。
圖1為本發(fā)明的解碼方法示意圖;圖2為圖1中字節(jié)解交織示意圖。
具體實(shí)施例方式下面結(jié)合附圖對(duì)本發(fā)明的技術(shù)方案進(jìn)行說明下表中給出了 CMMB不同交織塊大小以及不同內(nèi)碼碼率對(duì)應(yīng)的每個(gè)LDPC碼字占用 的交織塊的列數(shù) 可以看出對(duì)于3/4碼率來說,每個(gè)LDPC碼字都占用整數(shù)個(gè)交織列,而對(duì)于1/2碼 率來說不同的交織行數(shù)可能導(dǎo)致每個(gè)LDPC碼字占用分?jǐn)?shù)個(gè)交織列。然而經(jīng)過計(jì)算可以發(fā) 現(xiàn)不同的信息字節(jié)長(zhǎng)度K,在交織塊中信息字節(jié)所在的列總是由整數(shù)個(gè)LDPC碼字構(gòu)成。以432行交織、3/4碼率,RS碼信息字節(jié)為224字節(jié)為例,每個(gè)LDPC輸出碼字占用 2列。如圖1,一種CMMB接收機(jī)解碼方法的具體步驟是步驟(1)在字節(jié)分塊解交織中增加信息字節(jié)出錯(cuò)指示標(biāo)志量,記作E ;步驟⑵初始狀態(tài)下,將E清0 ;步驟(3)將LDPC解碼前碼字送給LDPC解碼模塊進(jìn)行解碼,然后將經(jīng)過LDPC解碼 的碼字送給字節(jié)分塊解交織模塊;同時(shí)將該碼字對(duì)應(yīng)的LDPC解碼后碼字包含錯(cuò)誤指示送 給解交織模塊;步驟(4)字節(jié)分塊解交織模塊將經(jīng)過LDPC解碼的碼字按照傳統(tǒng)方法填入解交織存儲(chǔ)器,在本實(shí)施例中,每個(gè)LDPC解碼后碼字占據(jù)2列,同時(shí)將LDPC解碼后碼字包含錯(cuò)誤指示累加到標(biāo)志量E上。步驟(5)重復(fù)步驟(4),直到112個(gè)LDPC解碼后碼字填進(jìn)解交織存儲(chǔ)器后,解交 織存儲(chǔ)器的前224列填滿,此時(shí)檢查標(biāo)志量E,如果標(biāo)志量E為0,說明解交織存儲(chǔ)器中的所 有數(shù)據(jù)對(duì)應(yīng)的RS碼字的信息字節(jié)全部正確,字節(jié)分塊解交織模塊同時(shí)向LDPC解碼模塊和 RS解碼模塊發(fā)出譯碼停止指令,不再進(jìn)行解碼;如果標(biāo)志量E的值大于0,說明解交織存儲(chǔ) 器中已經(jīng)存儲(chǔ)的數(shù)據(jù)對(duì)應(yīng)的RS碼字的信息字節(jié)存在錯(cuò)誤,需要繼續(xù)按照傳統(tǒng)方式繼續(xù)將 LDPC解碼后碼字填入字節(jié)解交織存儲(chǔ)器直到填滿存儲(chǔ)器,然后按照傳統(tǒng)方法逐行讀出進(jìn)行 RS解碼;步驟(6)當(dāng)前解交織存儲(chǔ)器中的數(shù)據(jù)處理完成后,將標(biāo)志位E清0 ;并不斷重復(fù)步 驟(3)到步驟(6)。字節(jié)解交織數(shù)據(jù)填入和讀出的方法采用目前CMMB接收機(jī)解碼中所采用的方法, 具體如圖2所示。填入的具體方法是將LDPC的解碼后的碼字填進(jìn)字節(jié)分塊解交織模塊中的解交 織存儲(chǔ)器,解交織存儲(chǔ)器一共分為240列,填充方法是從左上角開始按照從上到下的順序 填滿第一列,然后再按從上到下的順序填滿第二列……,以此類推,直到整塊解交織存儲(chǔ)器
填??jī)?。讀出的方法具體是從解交織存儲(chǔ)器的左上角開始,從第一列取頂端第一個(gè)字節(jié) 作為RS解碼前碼字的第一個(gè)字節(jié),從第二列取頂端第二個(gè)字節(jié)作為RS解碼前碼字的第二個(gè)字節(jié)。以此類推,直到所有列的第一個(gè)字節(jié)被取出,組成240個(gè)字節(jié)長(zhǎng)度的RS解碼前碼 字送給后續(xù)的RS解碼模塊進(jìn)行解碼。第二個(gè)碼字按照上述方法從每一列取出從頂端起第 二個(gè)字節(jié)組成一個(gè)240個(gè)字節(jié)的碼字送給后續(xù)的RS解碼模塊進(jìn)行解碼。重復(fù)上述過程,直 到每一列的最后一個(gè)字節(jié)被取出作為一個(gè)RS解碼前碼字送給后續(xù)RS解碼模塊進(jìn)行解碼。
上述實(shí)例只是對(duì)本發(fā)明的說明,而不是對(duì)本發(fā)明的限制,任何不超出本發(fā)明實(shí)質(zhì) 精神范圍內(nèi)的發(fā)明創(chuàng)造,均落入本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
一種CMMB接收機(jī)解碼方法,其特征在于該方法的具體步驟是步驟(1)在字節(jié)分塊解交織中增加信息字節(jié)出錯(cuò)指示標(biāo)志量,記作E;步驟(2)初始狀態(tài)下,將E清0;步驟(3)將LDPC解碼前碼字送給LDPC解碼模塊進(jìn)行解碼,然后將經(jīng)過LDPC解碼的碼字送給字節(jié)分塊解交織模塊;同時(shí)將該碼字對(duì)應(yīng)的LDPC解碼后碼字包含錯(cuò)誤指示送給解交織模塊;所述的LDPC解碼后碼字包含錯(cuò)誤指示特征為如果當(dāng)前輸出的經(jīng)過LDPC解碼的碼字包含錯(cuò)誤,則該指示為1;如果當(dāng)前輸出的經(jīng)過LDPC解碼的碼字不包含錯(cuò)誤,則該指示為0;步驟(4)字節(jié)分塊解交織模塊將經(jīng)過LDPC解碼的碼字填入解交織存儲(chǔ)器,同時(shí)將LDPC解碼后碼字包含錯(cuò)誤指示累加到標(biāo)志量E上;步驟(5)當(dāng)解交織存儲(chǔ)器的前K列填滿時(shí),檢查標(biāo)志量E,如果標(biāo)志量E為0,說明解交織存儲(chǔ)器中的所有數(shù)據(jù)對(duì)應(yīng)的RS碼字的信息字節(jié)全部正確,字節(jié)分塊解交織模塊同時(shí)向LDPC解碼模塊和RS解碼模塊發(fā)出譯碼停止指令,不再進(jìn)行解碼;如果標(biāo)志量E的值大于0,說明解交織存儲(chǔ)器中已經(jīng)存儲(chǔ)的數(shù)據(jù)對(duì)應(yīng)的RS碼字的信息字節(jié)存在錯(cuò)誤,需要繼續(xù)按照傳統(tǒng)方式繼續(xù)將LDPC解碼后碼字填入字節(jié)解交織存儲(chǔ)器直到填滿存儲(chǔ)器,然后逐行讀出,進(jìn)行RS解碼;步驟(6)當(dāng)前解交織存儲(chǔ)器中的數(shù)據(jù)處理完成后,將標(biāo)志位E清0;重復(fù)步驟(3)到步驟(6)。
全文摘要
本發(fā)明涉及一種CMMB接收機(jī)解碼方法,適用于CMMB標(biāo)準(zhǔn)進(jìn)行數(shù)據(jù)復(fù)用的移動(dòng)多媒體廣播系統(tǒng)。傳統(tǒng)的CMMB接收機(jī)的內(nèi)碼外碼分離的解碼方法帶來了高功耗問題。本發(fā)明方法將內(nèi)碼和外碼聯(lián)合進(jìn)行解碼,內(nèi)碼和外碼的聯(lián)合依托于它們之間的字節(jié)分塊解交織,從而達(dá)到降低功耗的效果,延長(zhǎng)電池的續(xù)航時(shí)間。本發(fā)明的方法,如果能夠確定LDPC解碼殘存的錯(cuò)誤都集中在校驗(yàn)位部分,而信息字節(jié)正確,不通過RS解碼直接送出信息字節(jié),從而實(shí)現(xiàn)了功耗節(jié)省,延長(zhǎng)了CMMB接收機(jī)的工作時(shí)間。
文檔編號(hào)H04N7/64GK101873142SQ201010193710
公開日2010年10月27日 申請(qǐng)日期2010年6月4日 優(yōu)先權(quán)日2010年6月4日
發(fā)明者張迎, 羅淑文, 邢新景 申請(qǐng)人:杭州國(guó)芯科技股份有限公司