專利名稱:通信系統(tǒng)中特播編碼數(shù)據(jù)的解碼方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信系統(tǒng)。更具體而非限定地說,本發(fā)明針對無線電信系統(tǒng)中特播編碼數(shù)據(jù)流的解碼方法和設(shè)備。
背景技術(shù):
在蜂窩無線電信系統(tǒng)、如寬帶碼分多址(WCDMA)系統(tǒng)中,數(shù)據(jù)幀或數(shù)據(jù)包可在稱為特播編碼的過程中被編碼。這些系統(tǒng)使用前向糾錯(FEC)編碼(特播碼)以及使用例如循環(huán)冗余校驗(yàn)(CRC)的前向檢錯編碼。成功還原所傳送的編碼信息塊是一項(xiàng)挑戰(zhàn)。
標(biāo)準(zhǔn)方法是應(yīng)用特播解碼。現(xiàn)有的特播解碼方法在通過引用結(jié)合于本文中的C.Berrou等人的文章“接近最佳的糾錯編碼和解碼特播碼”(IEEE Trans.Commun.,Vol.44,pp 1261-1271,1996年10月)中更完整地說明。特播碼是新型的差錯控制編碼系統(tǒng),只需中等復(fù)雜度就提供接近最佳的性能。廣泛使用的特播碼的迭代解碼算法是用于在無環(huán)有向圖(ADG)模型(也稱為“信念網(wǎng)絡(luò)”)中有效計算后驗(yàn)概率的一般本地消息傳遞算法的特例。使用迭代解碼并且在CRC核對無誤時停止迭代過程。如果在預(yù)定數(shù)量的迭代之后CRC未核對無誤,則宣告幀出錯,并且使用其它機(jī)制、如自動重復(fù)請求(ARQ)還原丟失的信息。
這種方法的缺點(diǎn)是解碼器可接近正確答案,但由于CRC檢測到差錯,幀會丟失。實(shí)際上,解碼器早在迭代過程中就可能接近正確答案,并且執(zhí)行額外迭代以使答案正確多余地利用系統(tǒng)資源。
在采用卷積碼代替特播碼的系統(tǒng)中,一般化的維特比解碼(也稱為“列表維特比解碼”)提供改進(jìn)的性能。通過這種方法,解碼器找到最可能解碼位組,第二最可能解碼位組,等等。如果CRC在最可能位組中檢測到差錯,則CRC校驗(yàn)應(yīng)用到第二最可能位組,等等。因此,解碼器成功解碼一些根據(jù)傳統(tǒng)解碼可能報錯的幀。維特比解碼在下文中更完整地說明T.Hashimoto,“A List-type Reduced-constraint Generalization of the Viterbi Algorithm”(IEEE Trans.Inf.Theory,Vol.IT-33,pp.866-876,1987年11月);C.Nill等人,“Listand Soft Symbol Output Viterbi AlgorithmsExtensions andComparisons”(IEEE Trans.Commun.,Vol.43,pp.277-287,1995年2月/3月/4月);以及N.Seshadri等人,“List Viterbi Decoding AlgorithmsWith Applications”(IEEE Trans.Commun.,Vol.42,pp.313-323,1994年2月/3月/4月)。這些文章中的每個通過引用結(jié)合于本文中。
應(yīng)該注意,一般化的維特比方法犧牲差錯檢測能力以換取更好的信息還原。已表明這種方法帶來了性能上的巨大增益。但不幸的是,為一般化維特比解碼開發(fā)的算法無法和特播解碼器配合使用,因?yàn)樘夭ソ獯a器不執(zhí)行維特比解碼。
有一種用于特播編碼數(shù)據(jù)的解碼的方法和設(shè)備在提供巨大性能增益的同時克服現(xiàn)有方法的缺點(diǎn),將是有利的。本發(fā)明提供這樣的方法和設(shè)備。
發(fā)明概述在一個方面,本發(fā)明針對特播編碼數(shù)據(jù)的解碼方法。該方法包括執(zhí)行解碼迭代以產(chǎn)生符號序列,每個符號具有幅值以及正號或負(fù)號。在此之后檢測已解碼的符號序列是否含有差錯,并且如果已解碼的符號序列含有差錯,則通過逆轉(zhuǎn)已解碼序列中至少一個符號的正號或負(fù)號來執(zhí)行已解碼序列的第一修改。然后,該方法檢測第一修改是否產(chǎn)生了無差錯的符號序列。該方法可繼續(xù)執(zhí)行對序列的額外修改,并且對每個修改執(zhí)行差錯校驗(yàn)。如果修改均未產(chǎn)生無差錯序列,則該方法可執(zhí)行另一個解碼迭代以產(chǎn)生另一個符號序列。
在另一個方面,本發(fā)明針對特播編碼數(shù)據(jù)的解碼方法,它包括以下步驟(a)執(zhí)行第一特播解碼迭代以產(chǎn)生最可能符號序列,每個符號具有幅值以及正號或負(fù)號;(b)檢查最可能符號序列以確定最可能序列是否含有差錯;(c)如果最可能符號序列含有差錯,則通過逆轉(zhuǎn)最可能序列中至少一個符號的正號或負(fù)號來形成第二最可能序列;(d)檢查第二最可能符號序列以確定它是否含有差錯;以及(e)對較少可能序列重復(fù)步驟(c)和(d),直到已檢查用于第一解碼迭代的最大數(shù)量的序列,或檢測到無差錯序列為止,無論哪個在先。
在又一個方面,本發(fā)明針對執(zhí)行多個解碼迭代的對特播編碼數(shù)據(jù)解碼的方法。每個迭代產(chǎn)生一個符號序列,并且在每個迭代之后,該方法檢測每個迭代產(chǎn)生的符號序列是否含有差錯。如果迭代產(chǎn)生的序列含有差錯,則該方法對每個迭代所產(chǎn)生的序列依次執(zhí)行預(yù)定數(shù)量的修改。在每個序列的每次修改之后,該方法檢測已修改的符號序列是否含有差錯。如果檢測到序列無差錯,則將無差錯序列作為已解碼數(shù)據(jù)轉(zhuǎn)發(fā)。
在又一個方面,本發(fā)明針對用于解碼特播編碼數(shù)據(jù)的設(shè)備。該設(shè)備包括用于執(zhí)行特播解碼迭代以產(chǎn)生符號序列的特播解碼部件,每個符號具有幅值以及正號或負(fù)號。該設(shè)備還包括用于檢測已解碼符號序列是否含有差錯的差錯檢測部件。該設(shè)備還包括對檢測到差錯作出響應(yīng)的序列修改部件,用于通過逆轉(zhuǎn)已解碼序列中至少一個符號的正號或負(fù)號來執(zhí)行已解碼序列的第一修改,并且將已修改的序列轉(zhuǎn)發(fā)至差錯檢測部件。然后,差錯檢測部件檢測第一修改是否產(chǎn)生了無差錯的符號序列。如果否,則該設(shè)備可執(zhí)行對序列的額外修改,在執(zhí)行下一個修改之前對每個修改單獨(dú)執(zhí)行差錯校驗(yàn)。如果修改均未產(chǎn)生無差錯序列,則該設(shè)備可通過執(zhí)行另一個解碼迭代以產(chǎn)生另一個符號序列來重復(fù)解碼過程,并且重復(fù)差錯校驗(yàn)以及序列修改步驟。
附圖概述在以下部分,將參照附圖中說明的示范實(shí)施例描述本發(fā)明,其中
圖1是根據(jù)本發(fā)明的通信系統(tǒng)的簡化框圖;圖2是傳統(tǒng)特播解碼器的簡化框圖;圖3是說明傳統(tǒng)特播解碼過程的步驟的流程圖;圖4是本發(fā)明的特播解碼器的實(shí)施例的簡化框圖;圖5是說明本發(fā)明的特播解碼過程的示范實(shí)施例的步驟的流程圖;圖6說明用于形成多個序列供CRC校驗(yàn)的第一示范決策樹;圖7說明與表1中給出的實(shí)例對應(yīng)的第二示范決策樹;圖8說明其中僅多個位的正負(fù)號被逆轉(zhuǎn)的第三示范決策樹;圖9說明形成多個序列用于CRC序列的狀態(tài)空間法的第一實(shí)施例;以及圖10說明形成多個序列用于CRC序列的狀態(tài)空間法的第二實(shí)施例。
實(shí)施例的詳細(xì)說明根據(jù)本發(fā)明的理論,基于卷積碼的一般化維特比解碼的原理提供了改進(jìn)的特播解碼器。因此,多個已解碼符號序列被認(rèn)為處于特播解碼迭代的末尾。如果CRC在第一序列上失敗,則將CRC校驗(yàn)應(yīng)用到第二序列,以此類推。如果CRC成功,則認(rèn)為幀已被成功解碼。這個過程有幾個益處。首先,如果在最后特播解碼迭代失敗時應(yīng)用該過程,則它允許還原更多的幀。這減少了ARQ的使用,從而減少延遲并且增加系統(tǒng)吞吐量。第二,如果在較早迭代時使用該過程,則可減少成功解碼幀所需的迭代數(shù)量。該過程還可減少復(fù)雜度或增強(qiáng)給定資源的解碼能力。
在特播解碼迭代之后,特播解碼器產(chǎn)生與符號“對數(shù)似然值”相關(guān)的軟值。這些軟值的正或負(fù)號給出硬值,對此硬值可應(yīng)用CRC校驗(yàn)。幅度與置信值對應(yīng)。硬值也可稱作“符號值”,而幅度可稱作“軟信息”。如果CRC核對無誤,則解碼的符號提供所發(fā)送的信息。如果CRC失敗,則校驗(yàn)第二最可能符號組。第二最可能組通過逆轉(zhuǎn)具有最小軟值幅度的符號的正或負(fù)號(即硬值)獲得。如果CRC核對無誤,則解碼的符號提供所發(fā)送的信息。否則,可校驗(yàn)第三最可能符號組。確定第K最可能序列可能涉及逆轉(zhuǎn)多個正負(fù)號或符號值,如下文中更詳細(xì)的論述。
此過程可持續(xù)到第K最可能序列。如果沒有序列通過CRC,則在重試之前執(zhí)行另一個特播解碼迭代。注意,K是可取決于正在執(zhí)行哪個迭代的參數(shù)。例如,在只有一個或幾個迭代之后不進(jìn)行CRC校驗(yàn)(K=0)或僅校驗(yàn)最可能序列(K=1)可能是有利的,因?yàn)閷Σ铄e序列CRC校驗(yàn)的風(fēng)險可能太高。K的選擇可取決于塊長度、所使用的特播碼和/或所使用的CRC或差錯檢測碼。差錯檢測碼越強(qiáng)大,在不犧牲太多差錯檢測性能的情況下,K可以越大。注意,K可以像1或2一樣小。
同樣,K可根據(jù)軟值幅度的大小自適應(yīng)。例如,最多M位的正負(fù)號可被逆轉(zhuǎn),其中M是軟幅度降到預(yù)定門限以下的位數(shù)。此門限可以是最大或平均軟幅值的幾分之一。在本文說明的實(shí)例中,K和M由關(guān)系K=2M定義。
如上所述,可以不是每次迭代之后都進(jìn)行CRC校驗(yàn)。換句話說,僅在執(zhí)行所定義數(shù)量的介入解碼迭代之后定期校驗(yàn)最可能序列和/或校驗(yàn)最可能序列以外的序列可能是有利的。例如,CRC校驗(yàn)可以每隔一個迭代進(jìn)行、每第三個迭代進(jìn)行,等等。
圖1是根據(jù)本發(fā)明的通信系統(tǒng)10的簡化框圖。該系統(tǒng)可以是無線或有線(例如,光纖電纜、銅纜或計算機(jī)網(wǎng)絡(luò)),并且通常包括發(fā)射機(jī)11以及接收機(jī)12。在發(fā)射機(jī)中,編碼器、如CRC編碼器13對要傳送的信息符號進(jìn)行差錯檢測編碼。然后,特播編碼器14對符號(包括交織)進(jìn)行特播編碼。格式化器15格式化要使用的信道16的結(jié)果。對于無線信道,特播編碼器輸出被調(diào)制,并且信號提供給天線(未示出)。對于有線信道,結(jié)果可以是以已知的方式線編碼的。然后將已編碼的信號發(fā)送至接收機(jī)。在接收機(jī)處,預(yù)處理器17從信號還原特播編碼的符號。例如,在無線系統(tǒng)中,預(yù)處理器可包括前端處理器(處理天線信號以轉(zhuǎn)換成基帶樣本),之后為解調(diào)器(分離多徑接收機(jī))。然后,將預(yù)處理的符號提供給特播解碼器18。
圖2是傳統(tǒng)特播解碼器20的簡化框圖。將輸入已檢測位的子集提供給產(chǎn)生外來信息的解碼器-1 21。外來信息由交織器22交織,然后再與另一個可能交迭的輸入位子集一起提供給解碼器-2 23。然后,解碼器-2產(chǎn)生外來信息,由去交織器24去交織并且又提供給解碼器-1。運(yùn)行解碼器-1、然后解碼器-2可被視為一個或兩個迭代。在任一種情況下,重復(fù)該過程直到CRC核對無誤(CRC校驗(yàn)未示出),或達(dá)到迭代的最大數(shù)目。
圖3是說明傳統(tǒng)特播解碼過程的步驟的流程圖。該過程始于步驟31并且進(jìn)行到步驟32,其中執(zhí)行一個或多個傳統(tǒng)特播解碼迭代以產(chǎn)生已解碼序列。在步驟33,確定對已解碼序列是否CRC核對無誤。如果是,該過程移到步驟34,其中幀被認(rèn)為已成功解碼,并且該過程在步驟35結(jié)束。但是,如果在步驟33,CRC未核對無誤,該過程移到步驟36,其中確定是否執(zhí)行了最大數(shù)量的特播解碼迭代。如果否,該過程回到步驟32并且執(zhí)行一個或多個額外特播解碼迭代,然后重復(fù)該過程。但是,如果在步驟36已進(jìn)行了最大數(shù)量的特播解碼迭代,該過程移到步驟37,其中確定幀未成功解碼。然后,該過程在步驟35結(jié)束。
圖4是本發(fā)明的特播解碼器38的實(shí)施例的簡化框圖。特播編碼數(shù)據(jù)進(jìn)入特播解碼器,并且傳統(tǒng)特播解碼器20對該數(shù)據(jù)執(zhí)行特播解碼迭代。輸出是一個符號序列,它是數(shù)據(jù)的正確解碼的最可能序列(由解碼器估算出)。最可能序列被發(fā)送至CRC校驗(yàn)器39。如果CRC校驗(yàn)通過,該序列作為成功解碼的數(shù)據(jù)輸出。如果CRC校驗(yàn)未通過,將該序列轉(zhuǎn)發(fā)至對序列嘗試進(jìn)行多個相繼修改的序列修改器40,并且在每次修改之后將已修改的序列重提交給CRC校驗(yàn)器。如下面更詳細(xì)論述的,序列修改器修改序列,使得每個相繼的序列是數(shù)據(jù)正確解碼的下一個最可能序列。如果已嘗試最大數(shù)量的已修改序列之后仍未通過CRC校驗(yàn),該序列修改器通知傳統(tǒng)特播解碼器20,并且執(zhí)行第二特播解碼迭代。同樣,輸出最可能符號序列并且發(fā)送至CRC校驗(yàn)器39。如果CRC校驗(yàn)未通過,將該序列轉(zhuǎn)發(fā)至依次對第二迭代所產(chǎn)生的序列嘗試多次修改的序列修改器40。每次修改都經(jīng)過CRC校驗(yàn),直到通過CRC校驗(yàn)或已嘗試最大數(shù)量的已修改序列。序列修改器可編程為隨著特播解碼迭代的數(shù)量增加而對每個迭代嘗試較少數(shù)量的已修改序列。在已執(zhí)行最大數(shù)量的特播解碼迭代仍未成功時,傳統(tǒng)特播解碼器20報告解碼失敗。
圖5是說明本發(fā)明的特播解碼過程的示范實(shí)施例的步驟的流程圖。該過程始于步驟41并且進(jìn)行到步驟42,其中執(zhí)行一個或多個傳統(tǒng)特播解碼迭代以產(chǎn)生一個或多個已解碼序列。在步驟43,確定對最可能已解碼序列是否CRC核對無誤。如果是,該過程移到步驟44,其中幀被認(rèn)為已成功解碼,并且該過程在步驟45結(jié)束。但是,如果在步驟43,CRC未核對無誤,該過程移到步驟46,在此形成第二個最可能序列。在步驟47,確定對第二個最可能序列是否CRC核對無誤。如果是,該過程移到步驟44,其中幀被認(rèn)為已成功解碼,并且該過程在步驟45結(jié)束。
但是,如果在步驟47,CRC未核對無誤,該過程移到步驟48,其中確定是否對最大數(shù)量的序列進(jìn)行了CRC校驗(yàn)。如果否,該過程回到步驟46,形成第二個最可能序列并且重復(fù)CRC校驗(yàn)。但是,如果在步驟48對最大數(shù)目的序列進(jìn)行了CRC校驗(yàn),該過程移到步驟49,其中確定是否已執(zhí)行最大數(shù)量的特播解碼迭代。如果否,該過程回到步驟42并且執(zhí)行一個或多個額外特播解碼迭代,然后重復(fù)該過程。但是,如果在步驟49進(jìn)行了最大數(shù)量的特播解碼迭代,該過程移到步驟50,其中確定幀未成功解碼。然后,該過程在步驟45結(jié)束。
第K最可能已解碼序列可如下確定。已解碼序列的似然性是序列中各個符號的似然性的積。因此,已解碼序列的對數(shù)似然值是各個符號的對數(shù)似然值的和,它與已消除調(diào)制的軟值的和有關(guān)。具體來講,考慮確定位等于b的對數(shù)似然值(LL)。這樣的一個換算版本由下式給出LL(bit=b)=bd其中d是軟位值。例如,如果d=+2,則LL(bit=+1)=2LL(bit=-1)=-2在這種情況下,已解碼符號會是+1,因?yàn)榇酥档贸鲎畲蟮腖L。逆轉(zhuǎn)位就是假設(shè)位是-1并且其LL為-2。對于序列的LL值的和,逆轉(zhuǎn)此位的正負(fù)號將和減少4(軟值的幅度的兩倍)。
“第一”最可能序列通過采用軟位值的正負(fù)號而獲得。第二最可能序列通過簡單地識別具有最小軟值幅度的位并且逆轉(zhuǎn)其正負(fù)號而獲得。如果存在不分勝負(fù)的情況,則可任意選擇其中一個,并且逆轉(zhuǎn)其正負(fù)號。在這種情況下,如果CRC校驗(yàn)仍未通過,則通過逆轉(zhuǎn)不分勝負(fù)的情況中另一位的正負(fù)號來形成第三最可能序列。否則,第三最可能序列通過逆轉(zhuǎn)具有第二最小軟值幅度的位的正負(fù)號從第一最可能序列中獲得。
確定第四最可能序列更為復(fù)雜。將被逆轉(zhuǎn)正負(fù)號的位通過從第一最可能序列開始,然后逆轉(zhuǎn)具有第三最小軟值幅度的位的正負(fù)號,或逆轉(zhuǎn)具有最小和第二最小軟值幅度的兩個位的正負(fù)號(即為第二和第三最可能序列而被逆轉(zhuǎn)其正負(fù)號的位)來選擇。通過將第三最小軟值與最小和第二最小軟值的和對比來作出選擇。如果第三最小軟值幅度小于最小和第二最小軟值幅度的和,則逆轉(zhuǎn)具有第三最小軟值幅度的位的正負(fù)號。否則,逆轉(zhuǎn)具有最小和第二最小軟值幅度的位的正負(fù)號。這兩種選擇在下面的表1和表2中說明。
表1說明選擇正負(fù)號被逆轉(zhuǎn)以形成第二到第五最可能序列的位的實(shí)例過程。在每個序列中,正負(fù)號被逆轉(zhuǎn)的位以粗體顯示。如表格左側(cè)所示,位的幅值從左到右增大。因此,為了形成第二最可能序列,最左側(cè)位的正負(fù)號被逆轉(zhuǎn)。通過逆轉(zhuǎn)具有第二最小軟值幅度的位的正負(fù)號形成第三最可能序列。通過逆轉(zhuǎn)第一位和第二位的正負(fù)號形成第四最可能序列,因?yàn)榈谝缓偷诙坏暮托∮诘谌坏姆怠H缓笸ㄟ^逆轉(zhuǎn)第三位的正負(fù)號形成第五最可能序列。后續(xù)序列也出現(xiàn)類似過程。
表1表2說明選擇正負(fù)號被逆轉(zhuǎn)以形成第二到第五最可能序列的位的過程實(shí)例。在每個序列中,正負(fù)號被逆轉(zhuǎn)的位以粗體顯示。如表格左側(cè)所示,位的幅值從左到右增大。因此,為了形成第二最可能序列,最左側(cè)位的正負(fù)號被逆轉(zhuǎn)。通過逆轉(zhuǎn)具有第二最小軟值幅度的位的正負(fù)號形成第三最可能序列。通過逆轉(zhuǎn)第三位的正負(fù)號形成第四最可能序列,因?yàn)榈谝晃缓偷诙坏姆岛痛笥诘谌坏姆?。然后通過逆轉(zhuǎn)第一位和第二位的正負(fù)號以形成第五最可能序列。對于后續(xù)序列也出現(xiàn)類似過程。
表2一般來講,對于第K最可能序列,必須考慮逆轉(zhuǎn)一、二,三...L符號的正負(fù)號,其中L直接取決于K。
可有效執(zhí)行計算,使得計算第K最可能序列得益于先前執(zhí)行的計算?;旧?,這是以已提高的階形成部分和的問題。在此對這樣的一般問題可使用任何解決方案。具體地說,通過比較決策樹的“開放”端節(jié)點(diǎn)確定次最可能序列。此決策樹可一次性脫機(jī)構(gòu)建,然后在每次需要時使用。
圖6說明在僅允許具有四個最小軟值幅度(有序的,以使b(1)最小)的四個位逆轉(zhuǎn)其正負(fù)號的情況下的示范決策樹。決策樹的每個節(jié)點(diǎn)被標(biāo)記哪些位的正負(fù)號被逆轉(zhuǎn),例如b(1)、b(2)、b(3),等等。與各個節(jié)點(diǎn)相關(guān)聯(lián)的是與正負(fù)號被逆轉(zhuǎn)的位的軟值大小的和對應(yīng)的量度。注意,對于第一組位,無需存儲該量度,因?yàn)樗幢皇褂?。只要CRC核對無誤,該過程即停止,并且所檢測符號值對應(yīng)于為之進(jìn)行CRC校驗(yàn)的序列。
起始節(jié)點(diǎn)對應(yīng)于已解碼序列(即無正負(fù)號被逆轉(zhuǎn)的位的最可能序列)的CRC校驗(yàn)。雖無必要,但此節(jié)點(diǎn)的量度將為零(0)。如果CRC未核對無誤,該過程移到標(biāo)記為b(1)的節(jié)點(diǎn)并且逆轉(zhuǎn)b(1)的正負(fù)號。雖也無必要,但這個節(jié)點(diǎn)的量度將為b(1)的軟值幅度的大小。然后進(jìn)行CRC校驗(yàn)。如果CRC未核對無誤,該過程移到節(jié)點(diǎn)b(2)并且逆轉(zhuǎn)b(2)的正負(fù)號。雖也無必要,但這個節(jié)點(diǎn)的量度將為b(2)的軟值的大小。然后進(jìn)行CRC校驗(yàn)。
如果在b(2)的正負(fù)號逆轉(zhuǎn)時CRC未核對無誤,則該過程考慮逆轉(zhuǎn)多個節(jié)點(diǎn)的正負(fù)號并且存儲這些節(jié)點(diǎn)的量度。具體地說,如表1和表2所示,該過程將節(jié)點(diǎn)b(3)的量度與b(1)+b(2)的和的量度對比。然后該過程進(jìn)行到量度最小的節(jié)點(diǎn)。在該節(jié)點(diǎn),位的正負(fù)號被逆轉(zhuǎn),并且進(jìn)行CRC校驗(yàn)。
如果CRC未核對無誤,該過程延伸剛才考慮的節(jié)點(diǎn),并且比較所有未“關(guān)閉的”(即已經(jīng)過CRC校驗(yàn)的)端節(jié)點(diǎn)的量度。例如,如表2所假設(shè),b(3)的量度小于b(1)+b(2)的量度。如果在b(3)的正負(fù)號逆轉(zhuǎn)時CRC未核對無誤,該過程繼而考慮節(jié)點(diǎn)b(1)+b(2)、b(1)+b(3)以及b(4)??梢杂^察到,b(1)+b(3)可被消除,因?yàn)槲坏呐判蚍绞綄?dǎo)致它必定大于b(1)+b(2)。因此,在全部三個節(jié)點(diǎn)都是端節(jié)點(diǎn)時,該過程僅需比較b(1)+b(2)和b(4)。例如,如果b(1)+b(2)較小,則逆轉(zhuǎn)b(1)和b(2)的正負(fù)號,并且進(jìn)行CRC校驗(yàn)。如果CRC再次未核對無誤,該過程繼續(xù),只是現(xiàn)在節(jié)點(diǎn)b(1)+b(2)被視作關(guān)閉并且不再考慮。
圖7說明表1中給出的實(shí)例的決策樹。鏈路上的數(shù)字表示鏈路被遍歷的順序。如上所述,在此實(shí)例中,通過逆轉(zhuǎn)b(1)和b(2)的正負(fù)號形成第四最可能序列,因?yàn)閎(1)和b(2)的量度的和小于b(3)的量度。然后通過逆轉(zhuǎn)b(3)的正負(fù)號以形成第五最可能序列。注意,僅可逆轉(zhuǎn)四個位的正負(fù)號的限制意味著在某一點(diǎn)該過程不再從K=第一,第二等按順序確定第K最可能序列。此限制可用于簡化過程。但是,一般來說,不需要此限制。在這種情況下,決策樹繼續(xù)擴(kuò)張。
圖8說明其中僅多個位的正負(fù)號被逆轉(zhuǎn)的決策樹。由于特播碼的特性,預(yù)期差錯事件涉及兩個或更多誤碼。因此,跳過涉及逆轉(zhuǎn)僅單個位的正負(fù)號的序列是合理的。
決策樹方法的缺點(diǎn)在于,當(dāng)僅需要比較兩個節(jié)點(diǎn)時,此方法有時會比較兩個以上的節(jié)點(diǎn)。而且,在根本無需比較時,有時也進(jìn)行比較。更有效的方法是使用狀態(tài)空間法,如下所述。
圖9說明用于形成序列的狀態(tài)空間法。在圖9顯示的實(shí)例中,最多可逆轉(zhuǎn)四個位的正負(fù)號。在此實(shí)例中,允許單個誤碼。從起始狀態(tài)(A)只有一條鏈路到狀態(tài)B。鏈路上的標(biāo)簽“1”表示b(1)應(yīng)當(dāng)逆轉(zhuǎn)其正負(fù)號。然后進(jìn)行CRC校驗(yàn),并且如果CRC未核對無誤,該過程從狀態(tài)B移到考慮僅逆轉(zhuǎn)b(2)的正負(fù)號的狀態(tài)C。再次進(jìn)行CRC校驗(yàn),并且如果CRC未核對無誤,該過程考慮兩條鏈路,或者進(jìn)行至狀態(tài)D并且僅逆轉(zhuǎn)b(3)的正負(fù)號,或者進(jìn)行至狀態(tài)E并且逆轉(zhuǎn)b(1)和b(2)的正負(fù)號。選取哪條路徑由先前所述的量度確定?;旧?,將b(3)的軟值的大小與b(1)和b(2)的軟值大小的和對比。如果b(3)的軟值大小較小,則該過程進(jìn)行到狀態(tài)D。否則,該過程進(jìn)行到狀態(tài)E。該過程以類似方式進(jìn)行到其它狀態(tài)。應(yīng)該注意,有時無需計算和比較量度。例如,只有一條鏈路從狀態(tài)F到狀態(tài)H,因此不需要比較。
狀態(tài)空間的使用可使用如下面表3之類的表格實(shí)現(xiàn)。第一列對應(yīng)于過程的當(dāng)前狀態(tài)。第二列表示(是或否)該過程是否能選擇下一步進(jìn)行到哪個狀態(tài)。因此,“N”表示無選擇,因?yàn)樵撨^程僅可進(jìn)行至一個狀態(tài)。第三列表示可能的下一個狀態(tài)(如果無選擇,則是唯一的一個)。第四列表示哪些位的正負(fù)號將逆轉(zhuǎn),由此表示在需要時如何計算量度。如果第五和第六列非空的,則表示在第二列表示可選擇時與其它可能的選擇對應(yīng)的狀態(tài)和位。
應(yīng)該注意,位正負(fù)號逆轉(zhuǎn)的特定組合出現(xiàn)一次以上。例如,C行和D行均包括逆轉(zhuǎn)b(1)和b(2)的正負(fù)號。軟值大小的和在處于狀態(tài)C中時計算。如果下一個狀態(tài)是狀態(tài)D,無需重新計算這個和。在這種情況下,當(dāng)過程在狀態(tài)D中時已經(jīng)知道計算了此量度,因?yàn)樵撨^程從狀態(tài)C只能到達(dá)狀態(tài)D。也有可能已更早地計算出量度或未計算出量度的其它情況。在這種情況下,該過程可檢查是否已計算出量度,如果是,則可使用先前所計算的值。
表3圖10說明不考慮單個位的正負(fù)號逆轉(zhuǎn)的狀態(tài)空間的另一個實(shí)施例。注意,最多可逆轉(zhuǎn)四個位的正負(fù)號的限制用于簡化該過程。如果沒有此限制,狀態(tài)空間將持續(xù)增長而不是止于一個最終狀態(tài)。
在另一個備選實(shí)施例中,應(yīng)用近似形式在CRC校驗(yàn)之前形成序列。嘗試使用序列的固定列表,而不是使用決策樹或狀態(tài)空間法。該序列對應(yīng)于位正負(fù)號逆轉(zhuǎn)的預(yù)定模式。例如,可應(yīng)用以下序列的列表(1)嘗試已解碼(最可能)序列(即無正負(fù)號逆轉(zhuǎn));(2)嘗試逆轉(zhuǎn)b(1)和b(2)的正負(fù)號;(3)嘗試逆轉(zhuǎn)b(1)和b(3)的正負(fù)號;(4)嘗試逆轉(zhuǎn)b(1)和b(4)的正負(fù)號;以及(5)嘗試逆轉(zhuǎn)b(2)和b(3)的正負(fù)號。
位可按非減小幅度的方式排序。通過此方法,序列的似然性可能不依循列表中的順序。例如,可在第四最可能序列之前嘗試第五最可能序列。但是,此方法比使用決策樹或狀態(tài)空間法更簡單。
本領(lǐng)域的技術(shù)人員知道,本申請中所述的創(chuàng)新理念可隨著廣泛的應(yīng)用修改和變化。因此,申請專利的主題的范圍不應(yīng)限于以上論述的任何特定示范理論,而是由以下權(quán)利要求定義。
權(quán)利要求
1.一種對特播編碼數(shù)據(jù)解碼的方法,所述方法包括以下步驟執(zhí)行(42)解碼迭代以產(chǎn)生符號序列,每個符號具有幅值以及正號或負(fù)號;檢測(43)已解碼符號序列是否含有差錯;如果已解碼符號序列含有差錯,通過逆轉(zhuǎn)已解碼序列中至少一個符號的正或負(fù)號來執(zhí)行(46)已解碼序列的第一修改;以及檢測(47)第一修改是否產(chǎn)生了無差錯的符號序列。
2.如權(quán)利要求1所述的方法,其特征在于,執(zhí)行解碼迭代的步驟包括執(zhí)行特播解碼的迭代。
3.如權(quán)利要求2所述的方法,其特征在于,檢測已解碼符號序列是否含有差錯的步驟包括確定已解碼序列是否通過循環(huán)冗余校驗(yàn)CRC。
4.如權(quán)利要求3所述的方法,其特征在于,檢測第一修改是否產(chǎn)生了無差錯符號序列的步驟包括確定第一修改是否產(chǎn)生了通過CRC校驗(yàn)的符號序列。
5.如權(quán)利要求1所述的方法,其特征在于,通過逆轉(zhuǎn)已解碼序列中至少一個符號的正或負(fù)號執(zhí)行已解碼序列的第一修改的步驟包括逆轉(zhuǎn)序列中的符號當(dāng)中具有最小幅值的第一符號的正或負(fù)號。
6.如權(quán)利要求1所述的方法,其特征在于還包括以下步驟如果第一修改未產(chǎn)生無差錯的符號序列,則執(zhí)行已解碼序列的第二修改,其中第一符號的正或負(fù)號保持其原狀,而逆轉(zhuǎn)第二符號的正或負(fù)號,所述第二符號具有序列中的符號當(dāng)中第二最小幅值;以及檢測第二修改是否產(chǎn)生了無差錯的符號序列。
7.如權(quán)利要求6所述的方法,其特征在于還包括以下步驟如果第二修改未產(chǎn)生無差錯的符號序列,執(zhí)行已解碼序列的第三修改,包括以下步驟確定具有序列中的符號當(dāng)中第三最小幅值的第三符號的幅值是否大于第一和第二符號的幅值的和;如果第三符號的幅值大于第一與第二符號的幅值的和,則逆轉(zhuǎn)第一和第二符號的正或負(fù)號而將第三符號的正或負(fù)號保持其原狀;以及如果第一和第二符號的幅值的和大于第三符號的幅值,則逆轉(zhuǎn)第三符號的正或負(fù)號而將第一和第二符號的正或負(fù)號保持其原狀;以及檢測第三修改是否產(chǎn)生了無差錯的符號序列。
8.如權(quán)利要求1所述的方法,其特征在于,還包括通過逆轉(zhuǎn)已解碼序列中額外符號的正或負(fù)號執(zhí)行已解碼序列的額外修改,并且檢測是否有任何額外修改產(chǎn)生無差錯的符號序列,直到已檢查用于解碼迭代的最大數(shù)量的序列,或檢測到無差錯序列為止,無論哪個在先。
9.如權(quán)利要求8所述的方法,其特征在于,執(zhí)行已解碼序列的額外修改的步驟包括逆轉(zhuǎn)通過使用決策樹選擇的額外符號的正或負(fù)號。
10.如權(quán)利要求8所述的方法,其特征在于,執(zhí)行已解碼序列的額外修改的步驟包括逆轉(zhuǎn)通過使用狀態(tài)空間法選擇的額外符號的正或負(fù)號。
11.如權(quán)利要求8所述的方法,其特征在于,執(zhí)行已解碼序列的額外修改的步驟包括逆轉(zhuǎn)通過使用包括符號、符號組合以及符號與符號組合的組合中的至少一項(xiàng)的預(yù)定列表選擇的額外符號的正或負(fù)號。
12.如權(quán)利要求8所述的方法,其特征在于還包括以下步驟如果已檢查用于解碼迭代的最大數(shù)量的序列,則執(zhí)行新的解碼迭代以產(chǎn)生新的符號序列;檢測新的符號序列是否含有差錯;如果新的符號序列包含差錯,則通過逆轉(zhuǎn)新序列中符號的正或負(fù)號對新序列執(zhí)行修改,并且檢測是否有任何額外修改產(chǎn)生無差錯的符號序列,直到已檢查用于新解碼迭代的最大數(shù)量的序列,或檢測到無差錯序列為止,無論哪個在先。
13.一種對特播編碼數(shù)據(jù)解碼的方法,所述方法包括以下步驟(a)執(zhí)行(42)第一特播解碼迭代以產(chǎn)生最可能符號序列,每個符號具有幅值和正或負(fù)號;(b)檢查(43)最可能符號序列以確定最可能序列是否含有差錯;(c)如果最可能符號序列含有差錯,通過逆轉(zhuǎn)最可能序列中的至少一個符號的正或負(fù)號以形成(46)次最可能序列;(d)檢查(47)次最可能符號序列以確定次最可能序列是否含有差錯;以及(e)對較少可能序列重復(fù)步驟(c)和(d),直到已檢查(49)用于第一解碼迭代的最大數(shù)量的序列,或檢測(44)到無差錯序列為止,無論哪個在先。
14.如權(quán)利要求13所述的方法,其特征在于,還包括以下步驟(f)如果已檢查用于第一解碼迭代的最大數(shù)量的序列,執(zhí)行下一個特播解碼迭代以產(chǎn)生另一個最可能符號序列;以及(g)重復(fù)步驟(b)至(e),直到檢測到無差錯序列。
15.如權(quán)利要求14所述的方法,其特征在于,還包括以下步驟(h)如果未檢測到無差錯序列,確定是否已執(zhí)行最大數(shù)量的解碼迭代;(i)如果未執(zhí)行最大數(shù)量的解碼迭代,則重復(fù)步驟(f)和(g);以及(j)如果已執(zhí)行最大數(shù)量的解碼迭代,則確定解碼不成功。
16.如權(quán)利要求13所述的方法,其特征在于,步驟(c)包括通過逆轉(zhuǎn)最可能序列中至少兩個符號的正或負(fù)號以形成次最可能序列。
17.一種對特播編碼數(shù)據(jù)解碼的方法,所述方法包括以下步驟執(zhí)行(42)多個解碼迭代,每個迭代產(chǎn)生符號序列;每個迭代之后,檢測(43)每個迭代產(chǎn)生的符號序列是否含有差錯;如果迭代產(chǎn)生的序列含有差錯,則對每個迭代所產(chǎn)生的序列依次執(zhí)行(46)預(yù)定數(shù)量的修改;在每個序列的每次修改之后,檢測(47)已修改符號序列是否含有差錯;以及如果檢測到序列無差錯,將無差錯序列作為已解碼數(shù)據(jù)轉(zhuǎn)發(fā)(44)。
18.一種用于對特播編碼數(shù)據(jù)解碼的設(shè)備,所述設(shè)備包括用于執(zhí)行特播解碼迭代以產(chǎn)生符號序列的特播解碼部件(20),每個符號具有幅值以及正或負(fù)號;用于檢測已解碼符號序列是否含有差錯的差錯檢測部件(39);以及對差錯的檢測作出響應(yīng)的序列修改部件(40),用于通過逆轉(zhuǎn)已解碼序列中至少一個符號的正或負(fù)號來執(zhí)行已解碼序列的第一修改,并且將已修改序列轉(zhuǎn)發(fā)至差錯檢測部件,其中,差錯檢測部件檢測第一修改是否產(chǎn)生了無差錯的符號序列。
19.如權(quán)利要求18所述的設(shè)備,其特征在于,序列修改部件包括用于執(zhí)行多次相繼修改并且將已修改序列轉(zhuǎn)發(fā)至差錯檢測部件的部件,每個所述已修改序列是正確解碼序列的可能性相繼減小。
20.如權(quán)利要求19所述的設(shè)備,其特征在于,差錯檢測部件單獨(dú)檢查多次相繼修改中的每次修改,并且如果檢測到差錯,則通知序列修改部件以產(chǎn)生另一個已修改序列。
21.如權(quán)利要求20所述的設(shè)備,其特征在于,在已嘗試最大數(shù)量的序列修改而未成功解碼時,序列修改部件通知特播解碼部件,并且特播解碼部件包括用于執(zhí)行額外特播解碼迭代以達(dá)到最大數(shù)量迭代的部件,其中多次相繼修改在每個迭代之后執(zhí)行。
全文摘要
一種用于對特播編碼數(shù)據(jù)解碼的方法和設(shè)備。執(zhí)行(42)第一特播解碼迭代以產(chǎn)生最可能符號序列,每個符號具有幅值和正或負(fù)號。對符號序列進(jìn)行差錯校驗(yàn)(43),如果檢測到差錯,設(shè)備通過逆轉(zhuǎn)具有最小幅度的符號的正或負(fù)號以形成次最可能序列。如果再次檢測(47)到差錯,則對具有更大幅度的符號以及對多個符號執(zhí)行額外正負(fù)號逆轉(zhuǎn)。對每次修改進(jìn)行差錯校驗(yàn)。如果所有修改均未產(chǎn)生無差錯序列,并且已執(zhí)行(48)最大數(shù)量的修改,設(shè)備執(zhí)行另一個特播解碼迭代以產(chǎn)生另一個符號序列。然后重復(fù)該過程,直到產(chǎn)生無差錯序列或已執(zhí)行(49)最大數(shù)量的迭代為止。
文檔編號H03M13/41GK1973441SQ200580021166
公開日2007年5月30日 申請日期2005年6月28日 優(yōu)先權(quán)日2004年6月28日
發(fā)明者G·E·博頓利, R·拉梅什, 鄭榮富 申請人:艾利森電話股份有限公司