專利名稱:用于對(duì)尾比特卷積碼譯碼的方法
技術(shù)領(lǐng)域:
本發(fā)明一般地涉及數(shù)字信號(hào)通信,更具體地涉及用于對(duì)尾比特(tail biting)巻積碼譯碼的方法。
背景技術(shù):
在發(fā)送方和接收方之間的通信信道上傳送的信號(hào)可能受到噪聲的影 響,或受到相鄰信道的干擾。信道編碼和譯碼的一個(gè)目的是防止信號(hào)產(chǎn)生 因噪聲或干擾所致的錯(cuò)誤。為了將前向糾錯(cuò)結(jié)合到發(fā)送消息中,已經(jīng)將巻 積碼廣泛用于數(shù)字通信中。圖1示出典型的巻積編碼器100,其包含第一 鎖存器(latch) 102、第二鎖存器104和多個(gè)加法器106、 108及110。鎖 存器102從節(jié)點(diǎn)C接收輸入信號(hào),并在節(jié)點(diǎn)B生成輸出信號(hào)。鎖存器104 從節(jié)點(diǎn)B接收輸入信號(hào),并在節(jié)點(diǎn)A生成輸出信號(hào)。輸出X等于在節(jié)點(diǎn) C、 B和A的信號(hào)的和。輸出Y等于在節(jié)點(diǎn)C和A的信號(hào)的和。在此示例 中,對(duì)于到達(dá)節(jié)點(diǎn)C的每個(gè)比特,在X和Y生成兩個(gè)比特。通過(guò)使用格 圖(trellis diagram)可對(duì)X和Y比特譯碼,格圖由表示鎖存器102和鎖存 器104的邏輯狀態(tài)的一組節(jié)點(diǎn),和當(dāng)巻積編碼器100在節(jié)點(diǎn)C連續(xù)接收輸 入信號(hào)時(shí)示出邏輯狀態(tài)的進(jìn)展(progression)的一組鏈路組成。在對(duì)巻積碼譯碼的過(guò)程中, 一 個(gè)重要的問(wèn)題是格的終止 (termination)。傳統(tǒng)上,存在兩種用于終止巻積碼的格(trellis)的方法。 一種常見(jiàn)的方法是通過(guò)將給定輸入序列(例如零輸入序列)輸入巻積 編碼器,迫使其進(jìn)入已知狀態(tài)。此方法簡(jiǎn)化了編碼器設(shè)計(jì)。然而,該方法 的一個(gè)缺點(diǎn)是因這些附加尾比特所致的速率損失。將相同值指定給格圖的開(kāi)始和結(jié)束狀態(tài)的尾比特,是通常用于格終止 的另一種方法。因?yàn)槲脖忍夭恍枰魏胃郊颖忍?,所以它不存在速率損失 的問(wèn)題。然而,因?yàn)殚_(kāi)始和結(jié)束狀態(tài)的不確定性,所以對(duì)尾比特碼的計(jì)算 可能很復(fù)雜。因此,已經(jīng)提出了多種次優(yōu)的譯碼器用于尾比特碼,其中犧 牲譯碼器性能以避免高計(jì)算復(fù)雜度。這樣,所需要的是一種用于尾比特巻積碼的適當(dāng)平衡譯碼器性能和計(jì) 算復(fù)雜度的次優(yōu)譯碼機(jī)制。發(fā)明內(nèi)容本發(fā)明公開(kāi)了 一種用于對(duì)尾比特巻積碼譯碼的方法。在本發(fā)明的一個(gè) 實(shí)施例中,該方法包含以下步驟。初始化格圖的所有開(kāi)始狀態(tài)。針對(duì)格圖計(jì)算前向Viterbi度量。從第一時(shí)刻的格圖的結(jié)束狀態(tài)到第二時(shí)刻的第一狀 態(tài)執(zhí)行回溯過(guò)程,在該第一狀態(tài)所有存活路徑(surviving path)收斂。針 對(duì)從第二時(shí)刻的第一狀態(tài)到第三時(shí)刻的第二狀態(tài)的預(yù)定時(shí)間段計(jì)算后向 Viterbi度量。從第一時(shí)刻的等同于第二狀態(tài)的指定狀態(tài)執(zhí)行回溯過(guò)程,以 確定格圖中用于巻積碼的最可能路徑。然而,當(dāng)結(jié)合附圖閱讀以下對(duì)具體實(shí)施例的描述時(shí),將最佳地理解本 發(fā)明的操作的結(jié)構(gòu)和方法,及其附加目的和優(yōu)點(diǎn)。
圖1示出傳統(tǒng)的巻積編碼器。圖2示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于Viterbi算法的格圖的存活路徑。圖3示出根據(jù)本發(fā)明的另一實(shí)施例的基于Viterbi算法的格圖的存活路徑。圖4是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于對(duì)尾比特巻積碼譯碼的方法的流程圖。圖5A-5D示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于解釋所提出的方法的多 個(gè)格圖。
具體實(shí)施方式
圖2示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的基于Viterbi算法的格圖的前向存 活路徑。對(duì)于每個(gè)時(shí)刻,存在表示圖l示出的節(jié)點(diǎn)A和B的四個(gè)可能的邏 輯狀態(tài)組合(00、 01、 lO和ll)的四個(gè)節(jié)點(diǎn)。某一時(shí)刻的在節(jié)點(diǎn)C (參見(jiàn) 圖1)的輸入決定下一時(shí)刻的節(jié)點(diǎn)A和B的邏輯狀態(tài)。此格圖表示從時(shí)間 t=L-8到時(shí)間t=L的編碼過(guò)程。節(jié)點(diǎn)之間的鏈路表示節(jié)點(diǎn)A和B的邏輯狀 態(tài)的改變,并且可用于對(duì)巻積碼譯碼以獲得在節(jié)點(diǎn)C接收的比特流。Viterbi算法是一種譯碼機(jī)制,其探查通過(guò)格的所有可能路徑然而僅選 擇最佳路徑。在Viterbi算法中,存活路徑是具有在任何給定時(shí)刻通過(guò)一個(gè) 狀態(tài)的最高概率的路徑。在給定時(shí)刻可能存在多個(gè)可能的存活路徑。然 而,當(dāng)存活路徑從格的邊界進(jìn)一步前進(jìn)時(shí),它們很可能收斂到單個(gè)路徑。 圖2在t-L-8示出此效果,在此L指示格的長(zhǎng)度。圖中粗體的存活路徑指 示兩個(gè)或更多個(gè)存活路徑的收斂。已知用于收斂存活路徑所需的格部分的 數(shù)目是5V,在此己知V是約束長(zhǎng)度(constraintlength),其等于巻積碼的 存儲(chǔ)器單元的數(shù)目加一。所有存活路徑的收斂表明編碼序列實(shí)際上在特定 時(shí)間通過(guò)特定狀態(tài)。因此,通過(guò)觀察存活路徑的收斂,可以很高的概率計(jì) 算編碼序列通過(guò)的狀態(tài)。在對(duì)尾比特巻積碼譯碼時(shí)此認(rèn)知很有用,因?yàn)樗?們的開(kāi)始和結(jié)束狀態(tài)通常未知,即使是開(kāi)始和結(jié)束狀態(tài)被設(shè)定為相同狀態(tài) 也是如此。圖3示出根據(jù)本發(fā)明的另一實(shí)施例的基于Viterbi算法的格圖的存活路 徑。Viterbi算法可以應(yīng)用于回溯(trace back)存活路徑到初始時(shí)刻t=0。 在t=0,存在各種可能的存活路徑。類似于圖2中示出的格圖,與每個(gè)狀 態(tài)相關(guān)聯(lián)的存活路徑很可能在某個(gè)時(shí)間點(diǎn)收斂。圖4是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的用于對(duì)尾比特巻積碼譯碼的方 法的流程圖。如以上所討論的,尾比特是一種用于通過(guò)將相同值指定給開(kāi)始和結(jié)束狀態(tài)來(lái)終止巻積碼的格的機(jī)制。因?yàn)槲脖忍夭恍枰魏蔚母郊颖?特,所以它不存在速率損失問(wèn)題。然而,因?yàn)殚_(kāi)始和結(jié)束狀態(tài)的不確定 性,所以尾比特碼的計(jì)算可能很復(fù)雜。因此,本發(fā)明的實(shí)施例提出一種用 于以平衡譯碼性能和計(jì)算復(fù)雜度的方式對(duì)尾比特碼譯碼的次優(yōu)方法。在步驟402,例如通過(guò)將零分配給開(kāi)始狀態(tài)的所有度量(metric),用 相等概率來(lái)初始化格圖的所有開(kāi)始狀態(tài)。在步驟404,針對(duì)由巻積編碼器 接收的一組符號(hào)計(jì)算前向Viterbi度量。在步驟406,從t=L的任一結(jié)束狀 態(tài)到t=5V回溯Viterbi度量。如圖5A的格圖所示,t=5V的狀態(tài)不僅被前 向Viterbi算法的所有存活路徑共享,而且被后向Viterbi算法的所有存活 路徑共享。在步驟408,將此狀態(tài)表示為S存。在步驟410,初始化t=5V的度量。將狀態(tài)S弁的度量設(shè)定為零,并將 所有其他狀態(tài)的度量設(shè)定為最大值。如圖5B所示,狀態(tài)S辯皮繪制為黑色 節(jié)點(diǎn),而其他狀態(tài)被繪制為陰影節(jié)點(diǎn)。在步驟412,如圖5B所示,從 t=5V到t=0計(jì)算后向Viterbi度量。在步驟414,計(jì)算在t=L的狀態(tài)的累加 度量和在t=0的狀態(tài)的度量。將具有t=0和t=L的最小累加度量的狀態(tài)表 示為S*,在圖5B中該狀態(tài)在1=0和—L被示出為黑色節(jié)點(diǎn)。該狀態(tài)很可 能是實(shí)際的幵始和結(jié)束狀態(tài)。在步驟416,將S^用作初始狀態(tài),從t=0到 t二5V計(jì)算前向Viterbi度量。在步驟418,在t=L選擇在步驟414得到的在 圖5D中被示出為黑色節(jié)點(diǎn)的狀態(tài)S氣在步驟420,如圖5D所示,從t=L 到t=L-5V回溯Viterbi度量。在整個(gè)所提出的方法中,量值5V被重復(fù)作為如下的長(zhǎng)度,在該長(zhǎng)度 中存活路徑將會(huì)以很高概率收斂。然而,根據(jù)工作信噪比或根據(jù)附加復(fù)雜 度與性能之間所期望的折衷,將量值5V改變?yōu)槁晕⑿∫恍┗虼笠恍┑牧?值(例如3V或7V)是實(shí)用的。在仿真或測(cè)試階段中,應(yīng)用這樣的改變可 能經(jīng)過(guò)一些調(diào)整過(guò)程。例如,初始調(diào)整的結(jié)果可能導(dǎo)致在圖4的步驟406 將5V改變?yōu)?V,而在步驟420將5V改變?yōu)?V。所提出的本發(fā)明的實(shí)施例利用了 Viterbi算法的度量行為和存活路徑的 屬性。本發(fā)明使用了隱藏在存活路徑中的狀態(tài)序列的知識(shí)。所提出的方法 僅需要在鉻開(kāi)始處以5V為周期的后向Viterbi算法的額外計(jì)算以及在格結(jié)束處的局部回溯重復(fù),以確定正確序列。為了如傳統(tǒng)方法通常教導(dǎo)的希望度量收斂,所提出的方法避免了復(fù)雜 的計(jì)算。因此,所提出的次優(yōu)方法能夠以平衡譯碼性能和計(jì)算復(fù)雜度的方 式對(duì)尾比特碼譯碼。以上的說(shuō)明提供了許多不同的實(shí)施例或用于實(shí)現(xiàn)本發(fā)明的不同特征的 實(shí)施例。組件和過(guò)程的特定實(shí)施例的描述有助于闡明本發(fā)明。當(dāng)然,這些 僅僅是實(shí)施例,并且并非意欲限制在權(quán)利要求書(shū)中描述的本發(fā)明。雖然這里在一個(gè)或多個(gè)特定示例中示出并描述了本發(fā)明,然而此并非 意欲將本發(fā)明限制到所示出的具體細(xì)節(jié),因?yàn)榭稍谄渲凶龀龈鞣N修改和結(jié) 構(gòu)改變而不會(huì)背離本發(fā)明的精神,并且落入權(quán)利要求的等同物的范圍和領(lǐng) 域內(nèi)。因此,以與本發(fā)明的范圍(如在以下權(quán)利要求中提出的) 一致的方 式廣泛地理解所附權(quán)利要求是適當(dāng)?shù)摹?br>
權(quán)利要求
1.一種用于對(duì)尾比特卷積碼譯碼的方法,包括初始化格圖的所有開(kāi)始狀態(tài);針對(duì)所述格圖的狀態(tài)計(jì)算前向Viterbi度量;從第一時(shí)刻的所述格圖的結(jié)束狀態(tài)回溯到第二時(shí)刻的第一狀態(tài),在所述第一狀態(tài)所有存活路徑收斂;針對(duì)從所述第二時(shí)刻的第一狀態(tài)到第三時(shí)刻的第二狀態(tài)的預(yù)定時(shí)間段計(jì)算后向Viterbi度量;以及從所述第一時(shí)刻的等同于所述第二狀態(tài)的指定狀態(tài)回溯,以確定所述格圖中用于所述卷積碼的最可能的路徑。
2. 如權(quán)利要求1所述的方法,其中所述初始化所有開(kāi)始狀態(tài)的步驟包 括將所有所述開(kāi)始狀態(tài)設(shè)定為零。
3. 如權(quán)利要求1所述的方法,其中所述第二時(shí)刻等于五倍的約束長(zhǎng)度。
4. 如權(quán)利要求3所述的方法,其中所述第三時(shí)刻等于零,并且所述預(yù) 定時(shí)間段等于五倍的所述約束長(zhǎng)度。
5. 如權(quán)利要求1所述的方法,還包括在計(jì)算所述后向Viterbi度量之 前,將所述第一狀態(tài)設(shè)定為零。
6. 如權(quán)利要求6所述的方法,還包括在計(jì)算所述后向Viterbi度量之 前,將所述第二時(shí)刻的其他狀態(tài)設(shè)定為最大值。
7. 如權(quán)利要求1所述的方法,其中所述計(jì)算后向Viterbi度量的步驟還 包括對(duì)存活路徑的后向Viterbi度量求和。
8. 如權(quán)利要求7所述的方法,其中所述第二狀態(tài)在所述第三時(shí)刻的其 他狀態(tài)的累加度量之中具有最小的累加度量。
9. 如權(quán)利要求1所述的方法,還包括從所述第三時(shí)刻的第二狀態(tài)回溯 到所述第二時(shí)刻。
10. —種用于對(duì)尾比特巻積碼譯碼的方法,包括 初始化格圖的所有開(kāi)始狀態(tài);針對(duì)所述格圖的狀態(tài)計(jì)算前向Viterbi度量;從第一時(shí)刻的所述格圖的結(jié)束狀態(tài)回溯到第二時(shí)刻的第一狀態(tài),在所述第一狀態(tài)所有存活路徑收斂;將所述第一狀態(tài)設(shè)定為零,并將所述第二時(shí)刻的其他狀態(tài)設(shè)定為最大值;針對(duì)從所述第二時(shí)刻的第一狀態(tài)到第三時(shí)刻的第二狀態(tài)的預(yù)定時(shí)間段 計(jì)算后向Viterbi度量;以及從所述第一時(shí)刻的等同于所述第二狀態(tài)的指定狀態(tài)回溯,以確定所述 格圖中用于所述巻積碼的最可能的路徑。
11. 如權(quán)利要求IO所述的方法,其中所述初始化所有開(kāi)始狀態(tài)的步驟 包括將所有所述開(kāi)始狀態(tài)設(shè)定為零。
12. 如權(quán)利要求10所述的方法,其中所述第二時(shí)刻等于五倍的約束長(zhǎng)度。
13. 如權(quán)利要求12所述的方法,其中所述第三時(shí)刻等于零,并且所述 預(yù)定時(shí)間段等于五倍的所述約束長(zhǎng)度。
14. 如權(quán)利要求IO所述的方法,其中所述計(jì)算后向Viterbi度量的步驟 還包括對(duì)存活路徑的后向Viterbi度量求和。
15. 如權(quán)利要求14所述的方法,其中所述第二狀態(tài)在所述第三時(shí)刻的 其他狀態(tài)的累加度量之中具有最小的累加度量。
16. —種用于對(duì)尾比特巻積碼譯碼的方法,包括 初始化格圖的所有開(kāi)始狀態(tài); 針對(duì)所述格圖的狀態(tài)計(jì)算前向Viterbi度量;從第一時(shí)刻的所述格圖的結(jié)束狀態(tài)回溯到第二時(shí)刻的第一狀態(tài),在所 述第一狀態(tài)所有存活路徑收斂;將所述第一狀態(tài)設(shè)定為零,并將所述第二時(shí)刻的其他狀態(tài)設(shè)定為最大值;從所述第二時(shí)刻的第一狀態(tài)到第三時(shí)刻的第二狀態(tài)計(jì)算后向Viterbi度 量,其中所述第二和第三時(shí)刻具有五倍的約束長(zhǎng)度的時(shí)間間隔;以及從所述第一時(shí)刻的等同于所述第二狀態(tài)的指定狀態(tài)回溯,以確定所述格圖中用于所述巻積碼的最可能的路徑。
17. 如權(quán)利要求16所述的方法,其中所述初始化所有開(kāi)始狀態(tài)的步驟 包括將所有所述開(kāi)始狀態(tài)設(shè)定為零。
18. 如權(quán)利要求16所述的方法,其中所述第二時(shí)刻等于五倍的約束長(zhǎng) 度,并且所述第三時(shí)刻等于零。
19. 如權(quán)利要求16所述的方法,其中所述計(jì)算后向Viterbi度量的步驟 還包括對(duì)存活路徑的后向Viterbi度量求和。
20. 如權(quán)利要求19所述的方法,其中所述第二狀態(tài)在所述第三時(shí)刻的 其他狀態(tài)的累加度量之中具有最小的累加度量。
全文摘要
本發(fā)明公開(kāi)了一種用于對(duì)尾比特卷積碼譯碼的方法。在該方法中,初始化格圖的所有開(kāi)始狀態(tài)。針對(duì)格圖計(jì)算前向Viterbi度量(404)。從第一時(shí)刻的格圖的結(jié)束狀態(tài)到第二時(shí)刻的第一狀態(tài)執(zhí)行回溯過(guò)程(406),在該第一狀態(tài)所有存活路徑收斂。針對(duì)從第二時(shí)刻的第一狀態(tài)到第三時(shí)刻的第二狀態(tài)的預(yù)定時(shí)間段計(jì)算后向Viterbi度量(412)。從第一時(shí)刻的等同于第二狀態(tài)的指定狀態(tài)執(zhí)行回溯過(guò)程,以確定格圖中用于卷積碼的最可能路徑(416)。
文檔編號(hào)H03M13/00GK101228699SQ200680014279
公開(kāi)日2008年7月23日 申請(qǐng)日期2006年4月21日 優(yōu)先權(quán)日2005年4月26日
發(fā)明者杭·金, 阿姆安德雷扎·赫德亞特 申請(qǐng)人:納維尼網(wǎng)絡(luò)公司