專利名稱:在維特比譯碼器中儲(chǔ)存路徑量度的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一項(xiàng)在維特比譯碼器中儲(chǔ)存路徑量度(Pfadmetriken)的新方法,該方法特別適合于移動(dòng)無線電接收機(jī)中的維特比譯碼對(duì)通道編碼的移動(dòng)無線電信號(hào)執(zhí)行譯碼。
背景技術(shù):
在大多數(shù)的知名數(shù)字移動(dòng)無線電接收機(jī)中都使用了維特比譯碼器。維特比譯碼器是一種所謂的“最大似真性譯碼器”(Maximun-LiklihoodDecodierer),一般用于對(duì)通道編碼的、特別是對(duì)卷積編碼的(faltungscodiert)移動(dòng)無線電信號(hào)執(zhí)行譯碼。在通道編碼情況下,發(fā)射機(jī)常需在傳輸?shù)姆?hào)上附加冗余的信息來提高傳輸?shù)陌踩浴H欢?,這種附加的冗余信息會(huì)在傳輸移動(dòng)無線電信號(hào)時(shí)迭加噪音。因此,接收機(jī)應(yīng)具有的功能在于憑借接收的順序要從全部可能的發(fā)射順序中挑選出好些與具有最大可能的概率的實(shí)際發(fā)射順序相符的發(fā)射順序來。而這個(gè)任務(wù)就要由維特比譯碼器來實(shí)現(xiàn)。
在通道編碼情況下使用的編碼規(guī)范可用適當(dāng)?shù)母駯艌D(Trellis-Diagramm)來說明。通過計(jì)算所謂的“路徑量度”,維特比譯碼器就能計(jì)算出格柵圖中那些具有最大或最小量度的路徑來,而這些路徑的量度是與相應(yīng)譯碼器的結(jié)構(gòu)相關(guān)的。借助于格柵圖的路徑人們乃能求出譯碼的順序并予以表達(dá)。
下面將簡要地細(xì)說維特比譯碼的基本原理在圖4中典型地示出一個(gè)相對(duì)于時(shí)間點(diǎn)t......t+3的四種不同狀態(tài)的格柵圖,這些狀態(tài)例如可相當(dāng)于“00”、“10”、“01”和“11”的二進(jìn)制數(shù)位狀態(tài)。在該格柵圖中的每一個(gè)符號(hào)順序都指定了相應(yīng)的路徑。每一條路徑包含著一系列的在時(shí)間上相互跟隨的兩個(gè)狀態(tài)之間的分支。每一個(gè)分支標(biāo)志著在時(shí)間上互相跟隨的兩個(gè)狀態(tài)之間的一種狀態(tài)轉(zhuǎn)移(Zustandiibergang),對(duì)比舉例來說從某一狀態(tài)出發(fā)的上面分支用一二進(jìn)制“0”來作為接收符號(hào),從同一狀態(tài)出發(fā)的下面分支則用二進(jìn)制“1”來作為接收符號(hào)。每一個(gè)狀態(tài)轉(zhuǎn)移、稱之為“分支量度”(BM)λt,相當(dāng)于一個(gè)發(fā)射符號(hào)。
分支量度λt的定義如下λt=|yt′-rt2|]]>在上式中,γt相當(dāng)于在時(shí)刻t的接收符號(hào),而yt′則是作為其在時(shí)刻t的函數(shù)的發(fā)射信號(hào)。
除此之外,通過格柵圖,每一條路徑在時(shí)間點(diǎn)或時(shí)間步長t都有一個(gè)路徑量度γt。
圖4所示的格柵圖是一個(gè)特別涉及具有稱為蝶形結(jié)構(gòu)的格柵圖,它意味著該格柵圖的某一時(shí)間步長t+1的兩個(gè)狀態(tài)必有其先前時(shí)間步長t的兩個(gè)狀態(tài)與之相對(duì)應(yīng),而且它們的分支可導(dǎo)向時(shí)間步長t+1的前述狀態(tài),而且從不同狀態(tài)出發(fā)的分支的兩個(gè)分支量度可能是一致的。例如在圖4所示的各個(gè)狀態(tài)具有γt(1)、γt(3)、γt+1(2)和γt+1(3)的路徑量度,就構(gòu)成了這樣的蝶形結(jié)構(gòu),從具有路徑量度γt(1)的狀態(tài)到具有路徑量度γt+1(2)的狀態(tài)的分支的分支量度就相當(dāng)于從具有路徑量度γt(3)的狀態(tài)到具有路徑量度γt+1(3)的狀態(tài)的分支的分支量度λt(3);而另一方面,從具有路徑量度γt(1)的狀態(tài)到具有路徑量度γt+1(3)的狀態(tài)的分支的分支量度也與從具有路徑量度γt(3)的狀態(tài)到具有路徑量度γt+1(2)的狀態(tài)的分支的分支量度λt(1)相當(dāng)。因此,通常用γt(S)來標(biāo)志狀態(tài)S在時(shí)間步長t的路徑量度,而用λt(S)來標(biāo)志與信號(hào)S相當(dāng)?shù)臓顟B(tài)轉(zhuǎn)移在時(shí)間點(diǎn)t的分支量度。
現(xiàn)在,維特比譯碼器必須借助于一個(gè)與該格柵圖相應(yīng)的算法來求出具有最佳路徑量度的路徑。一般而言,根據(jù)定義的最佳路徑是具有最小路徑量度的路徑。
導(dǎo)至某一定狀態(tài)的路徑的每一個(gè)路徑量度都是由一個(gè)先前時(shí)間的狀態(tài)的路徑量度和從該先前狀態(tài)導(dǎo)至該一定狀態(tài)的分支的分支量度所組成。因此,人們并不一定需要求出格柵圖上的所有可能的路徑和路徑量度,而只需對(duì)格柵圖上每一種狀態(tài)和每一個(gè)時(shí)間步長直至該時(shí)間點(diǎn)求出其中具有最佳路徑量度的路徑來。這條路徑可稱之為“存活路徑”(Survivor Path),只有這種存活路徑和它的路徑量度才必須儲(chǔ)存起來,所有其它導(dǎo)致這個(gè)狀態(tài)的路徑都可以忽略不計(jì)。但要注意的是根據(jù)這個(gè)原則,在每一個(gè)時(shí)間步長上有多少個(gè)不同的狀態(tài),就會(huì)相應(yīng)地有相同數(shù)目的這種“存活路徑”。
上面的敘述清楚表明路徑量度γt+1(S)的計(jì)算取決于通過一個(gè)分支與狀態(tài)S相關(guān)聯(lián)的先前時(shí)間步長t的各項(xiàng)路徑量度。因此這些路徑量度的計(jì)算可以用一種遞推的算法來實(shí)現(xiàn),這個(gè)算法可在維特比譯碼器中由一個(gè)具有稱為加法比較選擇(ACS)單元執(zhí)行。
圖5示出一種維特比譯碼器的典型結(jié)構(gòu)。在這個(gè)結(jié)構(gòu)中,ACS單元2帶有一個(gè)存儲(chǔ)器(或稱寄存器)3,除了ACS單元2還設(shè)有一個(gè)分支度量單元(BMU)1和一個(gè)存活記憶單元(Survivor Memory Unit即SMU)4。分支度量單元BMU的功能是計(jì)算各項(xiàng)分支量度λt(S),而這些分支量度就是一個(gè)接收符號(hào)與在格柵圖中產(chǎn)生相應(yīng)狀態(tài)轉(zhuǎn)移的那個(gè)符號(hào)之間的差別的一種量度。由分支度量單元BMU1計(jì)算出來的分支量度將輸入到ACS單元2來求出最佳路徑(即存活路徑),與此同時(shí)存活記憶單元4會(huì)把這些存活路徑儲(chǔ)存起來,從而能接著借助那條具有最佳路徑量度的存活路徑進(jìn)行譯碼。與這條具有最佳路徑量度的存活路徑相對(duì)應(yīng)的符號(hào)順序就最大地似真于實(shí)際發(fā)射的順序。
ACS單元2包含多個(gè)處理器元件(Prozessorelemente),一般而言格柵圖中的每一個(gè)狀態(tài)都是由一個(gè)獨(dú)立的處理器元件來計(jì)算的。每一單個(gè)的處理器元件的任務(wù)是要從兩條互相競爭的路徑(即存活路徑)中選出一條具有最佳(即最小)路徑量度的路徑(即存活路徑)來,這兩條競爭路徑都會(huì)在格柵圖中導(dǎo)至一個(gè)狀態(tài)。緊接著導(dǎo)至這個(gè)狀態(tài)的“存活路徑”及其路徑量度的存儲(chǔ)數(shù)值就可以更新了。
從圖4所示的格柵圖中可以看出時(shí)間點(diǎn)t+1上的每一個(gè)狀態(tài)S都是通過一個(gè)上面分支和一個(gè)下面分支而與一個(gè)相應(yīng)的先前的狀態(tài)相聯(lián)系的。因此在求取與這個(gè)狀態(tài)S相關(guān)的“存活路徑”時(shí),必須把通過上面分支導(dǎo)至狀態(tài)S的路徑的路徑量度與通過下面分支導(dǎo)致狀態(tài)S的路徑的路徑量度相比較,也就是說,每一個(gè)處理器元件的任務(wù)在于為了求取具有路徑量度γt+1(s)的“存活路徑”,選出通過具有路徑量度γt(u)的先前上面狀態(tài)和具有分支量度λt(u)的上面分支而引導(dǎo)的路徑,其路徑量度相當(dāng)于γt(u)+λt(u)之和;或者選出通過具有路徑量度γt(l)的下面狀態(tài)和具有分支量度λt(l)的下面分支而引導(dǎo)的路徑,其路徑量度相當(dāng)于γt(l)+λt(l)。
因?qū)儆诿恳粋€(gè)為在時(shí)間步長t中的某一狀態(tài)計(jì)算出來的結(jié)果γt(s)同時(shí)也是計(jì)算在時(shí)間上隨后出現(xiàn)的狀態(tài)的路徑量度的基礎(chǔ),所以在圖5中所示的ACS單元2的反饋必須通過存儲(chǔ)器3,使計(jì)算出來的路徑量度能在存儲(chǔ)器3內(nèi)儲(chǔ)存。
存儲(chǔ)器3的結(jié)構(gòu)必須根據(jù)相應(yīng)的格柵圖的結(jié)構(gòu)來設(shè)計(jì)和建造。在每一個(gè)符號(hào)周期期間必須要能將格柵圖中的狀態(tài)數(shù)相對(duì)應(yīng)的路徑量度數(shù)從存儲(chǔ)器3中讀出并再寫入存儲(chǔ)器3內(nèi)去。對(duì)于格柵圖中每一個(gè)蝶形而言,要能同時(shí)處理兩個(gè)狀態(tài),使能從存儲(chǔ)器3中讀出兩個(gè)初始路徑量度,并能將由此計(jì)算出來的兩個(gè)路徑量度寫入存儲(chǔ)器3。
然而由此產(chǎn)生的問題是在路徑量度未讀出之前,不能將它們重寫。
為了更清楚地說明這個(gè)問題,在圖6中示出另一個(gè)具有8個(gè)狀態(tài)的格柵圖。這個(gè)格柵圖也具有已介紹的蝶形結(jié)構(gòu),這個(gè)典型的蝶形以虛線示出,它包含初始狀態(tài)St的No.1和No.5與目的狀態(tài)St+1的No.2和No.3。為了計(jì)算目標(biāo)狀態(tài)No.2和3的路徑量度,必須首先讀出初始狀態(tài)No.1和No.5的路徑量度。
這種在讀出過程和寫入過程之間形成的競爭態(tài)勢使人們?cè)O(shè)計(jì)出一種在文獻(xiàn)中又稱之為“乒乓”(“Ping-Pong”)自動(dòng)編碼結(jié)構(gòu)形式的存儲(chǔ)器3,這種存儲(chǔ)器被分成兩個(gè)存儲(chǔ)庫,其中一個(gè)存儲(chǔ)庫僅用于讀出過程,另一個(gè)僅用于寫入過程。
借助于這種技術(shù)雖能可靠地避免了那些不良的競爭,然而存儲(chǔ)器3的體積卻必須增大一倍,因?yàn)樗膬蓚€(gè)存儲(chǔ)庫必須要能儲(chǔ)存全部狀態(tài)St和St+1的路徑量度。
另一個(gè)與路徑量度存儲(chǔ)器相關(guān)的問題是在存儲(chǔ)器上的路徑量度的布局問題。也就是說要按不同的存儲(chǔ)器地址安排好各個(gè)路徑量度。根據(jù)現(xiàn)有技術(shù)來選擇,這種布局的選擇使路徑量度的讀出過程和寫入過程使用不同的存儲(chǔ)區(qū)域,從而使讀出過程和寫入過程之間的矛盾得到可靠的避免。
發(fā)明內(nèi)容
本發(fā)明的任務(wù)在于提供一種在維特比譯碼器中儲(chǔ)存路徑量度的新型方法,這種方法要能在一個(gè)較小存儲(chǔ)器的需求條件下實(shí)現(xiàn),并能可靠地避免各種寫入/讀出矛盾。
本發(fā)明的上述任務(wù)已通過一種在維特比譯碼器儲(chǔ)存路徑量度的方法的各項(xiàng)特征而獲得了解決。本專利還闡明了本發(fā)明的各項(xiàng)優(yōu)點(diǎn)及各種優(yōu)先采用的結(jié)構(gòu)形式。
借助于本發(fā)明的內(nèi)容,我們介紹一種在維特比譯碼器中的儲(chǔ)存路徑量度的方法,這種方法是建立在時(shí)間變化的格柵圖的原理基礎(chǔ)上的,而且特別適于具有蝶形結(jié)構(gòu)和相應(yīng)的加法比較選擇單元(ACS-Einheiten)的格柵圖的情況。
根據(jù)本發(fā)明的目的,提供一種在維特比譯碼器儲(chǔ)存路徑量度的方法,路徑量度是借助一個(gè)與維特比譯碼器相適應(yīng)的格柵圖來確定,在該格柵圖中某一特定時(shí)間步長的兩個(gè)目標(biāo)狀態(tài)與其先前時(shí)間步長的兩個(gè)初始狀態(tài)構(gòu)成一個(gè)蝶形結(jié)構(gòu),通過這個(gè)蝶形結(jié)構(gòu),該特定時(shí)間步長的兩個(gè)目標(biāo)狀態(tài)通過當(dāng)時(shí)存在的一個(gè)狀態(tài)轉(zhuǎn)移分支而與先前時(shí)間步長的兩個(gè)初始狀態(tài)連接起來;對(duì)每一個(gè)時(shí)間步長,每一個(gè)目標(biāo)狀態(tài)的路徑量度(γt+1)都取決于與該目標(biāo)狀態(tài)構(gòu)成一個(gè)蝶形結(jié)構(gòu)的先前時(shí)間步長的那個(gè)初始狀態(tài)的路徑量度(γt)的函數(shù);為此需從存儲(chǔ)器(3)中讀出相應(yīng)的兩個(gè)初始狀態(tài)的路徑量度(γt),從而作為路徑量度(γt)的函數(shù)確定時(shí)間步長的目標(biāo)狀態(tài)的路徑量度(γt+1),將該目標(biāo)狀態(tài)的路徑量度(γt+1)儲(chǔ)存在存儲(chǔ)器(3)中;其特征在于每個(gè)時(shí)間步長的格柵圖的蝶形結(jié)構(gòu)都至少成對(duì)地組合起來,對(duì)于時(shí)間步長的每一雙蝶形結(jié)構(gòu)對(duì)而言,格柵圖中的兩個(gè)蝶形結(jié)構(gòu)的目標(biāo)狀態(tài)同時(shí)成為隨后時(shí)間步長的兩個(gè)蝶形結(jié)構(gòu)的初始狀態(tài),而且在確定一對(duì)蝶形結(jié)構(gòu)對(duì)的兩個(gè)蝶形結(jié)構(gòu)的目標(biāo)狀態(tài)的路徑量度后,將該蝶形結(jié)構(gòu)對(duì)的兩個(gè)蝶形結(jié)構(gòu)的目標(biāo)狀態(tài)的路徑量度以一個(gè)共同的存儲(chǔ)字的形式儲(chǔ)存在存儲(chǔ)器(3)中,所述的該蝶形結(jié)構(gòu)對(duì)的目標(biāo)狀態(tài)同時(shí)也成為隨后時(shí)間步長的兩個(gè)蝶形結(jié)構(gòu)的初始狀態(tài)。
本發(fā)明的方法需要一個(gè)存儲(chǔ)器并可使路徑量度的讀出和儲(chǔ)存在相同的存儲(chǔ)器區(qū)域內(nèi)實(shí)現(xiàn),也就是說根據(jù)兩個(gè)初始路徑量度計(jì)算出來的相應(yīng)于目標(biāo)狀態(tài)的路徑量度可以在讀出先前兩個(gè)初始路徑量度的那個(gè)存儲(chǔ)器地址上儲(chǔ)存起來。存儲(chǔ)器的容量不取決于格柵圖選定的平行度而且必須只相當(dāng)于由各種格柵狀態(tài)的數(shù)目和每一個(gè)存儲(chǔ)字的二進(jìn)制數(shù)位的數(shù)目構(gòu)成的乘積。特別是當(dāng)需要把多個(gè)處理器元件的路徑量度綜合起來儲(chǔ)存,也只需要使用一個(gè)存儲(chǔ)器就夠了。
寫入/讀出矛盾可得到可靠的避免。
本發(fā)明為維特比譯碼所使用的芯片的面積需求和功率消耗都極小,因?yàn)闉閮?chǔ)存兩個(gè)路徑量度只需要一個(gè)存儲(chǔ)器地址。本發(fā)明既適合于正向編碼(Feedforward Codes),例如SDSL,也適合于反向編碼(FeedbackCodes),而且可使用可編程維特比譯碼器,對(duì)于每一個(gè)蝶形圖形都可以將相應(yīng)的路徑量度很容易編制出程序。
在下面將利用各附圖借助于一個(gè)優(yōu)選實(shí)施例對(duì)本發(fā)明的內(nèi)容做比較詳細(xì)的說明圖1示出一個(gè)包含8個(gè)狀態(tài)的格柵圖,用來說明本發(fā)明對(duì)一個(gè)SDSL-維特比譯碼器所設(shè)定的原理。
圖2示出一個(gè)示意圖,用來說明一個(gè)函數(shù),借助于這個(gè)函數(shù)依靠一個(gè)計(jì)數(shù)器讀出可以求出一個(gè)狀態(tài),這個(gè)狀態(tài)根據(jù)本發(fā)明的一個(gè)優(yōu)選實(shí)施例對(duì)于把各個(gè)路徑量度布置在ASC單元的存儲(chǔ)器的各不同存儲(chǔ)地址上是起決定性作用的。
圖3示出一個(gè)示意圖,用來說明根據(jù)本發(fā)明的另一種方法。
圖4示出一個(gè)具有蝶形結(jié)構(gòu)和4種狀態(tài)的典型的格柵圖。
圖5示出一種維特比譯碼器的一般結(jié)構(gòu)。
圖6示出一個(gè)具有蝶形結(jié)構(gòu)的格柵圖,用來說明與現(xiàn)有技術(shù)相關(guān)的問題。
具體實(shí)施方式
在比較詳細(xì)說明本發(fā)明的各項(xiàng)細(xì)節(jié)之前,還應(yīng)在下面簡要地介紹一下幾個(gè)專門名詞,因?yàn)樵谝院笳f明本發(fā)明的各項(xiàng)內(nèi)容時(shí)還需要使用這些專門名詞。
假設(shè)一個(gè)具有總儲(chǔ)存容量為Mt儲(chǔ)存字的格柵編碼器,可獲得一個(gè)具有NTS=2Mt的格柵碼,其中的NTS是在相應(yīng)的格柵圖中繪出的各種不同的狀態(tài)的數(shù)目。對(duì)于一個(gè)編碼率為1/2的正向編碼而言,其脈沖應(yīng)答詞的長度為MT+1。在格柵圖中的各個(gè)狀態(tài)轉(zhuǎn)移如前介紹的那樣是取決于某些編碼的二進(jìn)制數(shù)位B的,而且時(shí)間點(diǎn)t+1的狀態(tài)是St+1是按下列關(guān)系式從先前狀態(tài)St產(chǎn)生的S(t+1)=(2·St)mod(NTS)+B設(shè)若格柵圖具有在圖6中所示的典型蝶形結(jié)構(gòu)(前面已經(jīng)介紹過),那么每一個(gè)蝶形都會(huì)有兩個(gè)初始狀態(tài)和兩個(gè)目標(biāo)狀態(tài)與之相關(guān),而且根據(jù)格柵圖的幾何形狀可以區(qū)分為一個(gè)用標(biāo)記(u)(為上面)標(biāo)識(shí)的上面狀態(tài)和一個(gè)用標(biāo)記(1)(為下面)標(biāo)識(shí)的下面狀態(tài)。在圖6中用虛線示出的蝶形中,例如狀態(tài)St(u)=1,St(1)=5,和狀態(tài)St+1(u)=2,St+1(1)=3,其中St(u)和St(1)是初始狀態(tài),而St+1(u)和St+1(1)=1則是目標(biāo)狀態(tài)。
從圖6中還可以看出一個(gè)蝶形的下面初始狀態(tài)St(1)和目標(biāo)狀態(tài)St+1(u)及St+1(1)是取決于上面初始狀態(tài)St(u)的,而且具有下列的關(guān)系O≤St(U)≤NTS2-1]]>St(l)=St(U)+NTS2]]>St+1(U)=(2·St(U))mod(NTS)+0]]>St+1(l)=(2·St(U))mod(NTS)+1=(2·St(l))mod(NTS)+1]]>在用NTS=8和St(U)=1]]>來評(píng)價(jià)上列公式時(shí),對(duì)于圖6用虛線所示蝶形圖形而言,修正值St(l)=5,]]>St+1(u)=2,]]>St+1(l)=3]]>本發(fā)明是以這樣一個(gè)“設(shè)想”作基礎(chǔ)的即為目標(biāo)狀態(tài)計(jì)算出來的某個(gè)蝶形圖形的各個(gè)路徑量度都應(yīng)當(dāng)儲(chǔ)存在其相應(yīng)的各個(gè)初始路徑量度被讀出來的相同的儲(chǔ)存地址上,才能避免在存儲(chǔ)器3中不必要地重迭寫入路徑量度。這個(gè)措施可導(dǎo)致格柵圖的結(jié)構(gòu)隨時(shí)間而改變,使由此產(chǎn)生的格柵圖可以稱之為隨時(shí)間變化的格柵(TVT)。
在圖6中示出的格柵結(jié)構(gòu)的TVT示于圖3。由圖3可以看出雖然各個(gè)蝶形的狀態(tài)轉(zhuǎn)移是與圖6中示出的狀態(tài)轉(zhuǎn)移相一致,但隨著每一個(gè)時(shí)間步長或隨著每一次迭代各個(gè)狀態(tài)的順序都會(huì)重新排列,使某個(gè)蝶形的每一個(gè)目標(biāo)狀態(tài)由一條水平分支與該蝶形的相應(yīng)的初始狀態(tài)相聯(lián)系。在圖3中,對(duì)各次迭代都有兩個(gè)蝶形,它們分別包含初始狀態(tài)No.2、No.6和No.3、No.7以及目標(biāo)狀態(tài)No.4、No.5和No.6和No.7,它們分別用短橫線和點(diǎn)劃線表示出來,于是特別借助于這些蝶形,就可以清楚理解格柵結(jié)構(gòu)隨時(shí)間重排的原理了。
在圖3中示出的格柵圖的每一行列相當(dāng)于存儲(chǔ)器3的一個(gè)儲(chǔ)存地址,舉例來說可在某一儲(chǔ)存地址及其隨后的儲(chǔ)存地址中寫入No.2、No.4、No.1和No.2等狀態(tài)的路徑量度(即圖3中所示格柵圖的第3行列)??梢宰C明經(jīng)過MT次迭代后(對(duì)上述例子而言,MT=3次迭代),又可以獲得原來的狀態(tài)順序。
上面介紹的TVT設(shè)計(jì)防止了在存儲(chǔ)器3中不必要地重迭寫入路徑量度。然而還存在這樣一個(gè)問題,那就是為了使用ACS單元2可以按蝶形結(jié)構(gòu)原理來計(jì)算路徑量度起見,還必須同時(shí)讀出和寫入兩個(gè)路徑量度,為此就必須將存儲(chǔ)器相應(yīng)地劃分開來,然而,這對(duì)采用TVT設(shè)想來說是不可能實(shí)現(xiàn)的。
因此,這個(gè)TVT設(shè)計(jì)還必須為適應(yīng)蝶形結(jié)構(gòu)而另行開發(fā)設(shè)計(jì),我們?cè)谙旅鎸⒔柚趫D1和圖2來說明這個(gè)可稱之為蝶形導(dǎo)向的隨時(shí)間變化的格柵(BFTVT)的設(shè)計(jì)方案。
與上面介紹的TVT設(shè)計(jì)主要相關(guān)連的問題在于用ACS單元2計(jì)算出來的某個(gè)蝶形的目標(biāo)狀態(tài)的路徑量度不能同時(shí)代表另一個(gè)蝶形的初始路徑量度。為了說明這事實(shí)起見,在下面將把某個(gè)蝶形的初始路徑量度和目標(biāo)的路徑量度分別寫作[St(u),St(1)]和[St+1(u),St+1(1)]的形式。對(duì)于圖3所示格柵圖的各個(gè)蝶形(迭代1)來說,據(jù)此就產(chǎn)生了下列的幾個(gè)狀態(tài)轉(zhuǎn)移[0,4]→[0,1][1,5]→[2,3][2,6]→[4,5][3,7]→[6,7]可以看出舉例而言,具有初始狀態(tài)[0,4]的蝶形的目標(biāo)狀態(tài)[0,1]不同時(shí)代表迭代2的一個(gè)共同蝶形的初始狀態(tài)。因此,若把每一個(gè)蝶形的各個(gè)初始路徑量度和目標(biāo)路徑量度都以一個(gè)共同的儲(chǔ)存字形式儲(chǔ)存起來就是毫無意義的了。
然而,另一方面很清楚的是舉例來說,分別具有初始狀態(tài)[0,4]和[2,6]的兩個(gè)蝶形的目標(biāo)狀態(tài)[0,1]和[4,5]可以同時(shí)利用來作為格柵圖中隨后的分別具有初始狀態(tài)[0,4]和[1,5]的兩個(gè)蝶形的初始狀態(tài)。人們可證明全部2MT-1個(gè)蝶形都可以按此規(guī)則成對(duì)地組合起來,使某對(duì)蝶形的目標(biāo)狀態(tài)的路徑量度同時(shí)被利用作為兩個(gè)其它蝶形的初始路徑量度,只要把為目標(biāo)狀態(tài)求出的路徑量度做出適當(dāng)?shù)闹匦屡帕屑纯伞?br> 圖1用來示明這一新的設(shè)計(jì)。存儲(chǔ)器3的每一個(gè)儲(chǔ)存字的字寬可根據(jù)現(xiàn)有技術(shù)成倍加大,因此,兩個(gè)成對(duì)的蝶形的目標(biāo)狀態(tài)的路徑量度至少可以每個(gè)儲(chǔ)存字為兩個(gè)路徑量度的方式儲(chǔ)存起來是可能的,特別值得指出的是存儲(chǔ)器的容量不取決于所使用的處理器元件的數(shù)目,只是寫入/讀出過程的數(shù)目會(huì)改變。
在圖1中每一個(gè)圓圈相當(dāng)于一個(gè)蝶形的兩個(gè)初始狀態(tài)或它們的初始路徑量度,以S(u)/S(1)形式表示。通過把各個(gè)蝶形成對(duì)組合就得出圖1所示的上位的蝶形格柵結(jié)構(gòu),通過圖1所示的格柵圖可以確定幾個(gè)成對(duì)組合的原始的蝶形有哪些目標(biāo)狀態(tài)的路徑量度可以用做那些隨后的蝶形的初始狀態(tài)的路徑量度。例如在圖1中有一個(gè)用虛線標(biāo)出的蝶形,它就是由具有初始狀態(tài)分別為[0,4]和[2,6]以及目標(biāo)的狀態(tài)分別為[0,1]和[4,5]的兩個(gè)原始蝶形組成的,把由此合成的兩個(gè)目標(biāo)狀態(tài)成對(duì)重新排列為[0,4]和[1,5],從而使這對(duì)重新排列的目標(biāo)狀態(tài)對(duì)可以同時(shí)用作隨后兩個(gè)蝶形的初始狀態(tài)(請(qǐng)參見圖6所示的蝶形結(jié)構(gòu),由此圖可見初始狀態(tài)[0,4]和[1,5]原是與一個(gè)蝶形相對(duì)應(yīng)的)。
另外一個(gè)例子以下是相似于圖3所示由TVT結(jié)構(gòu)形式的重新的上位的格柵結(jié)構(gòu)。圖1所示格柵圖的每一個(gè)行列相當(dāng)于存儲(chǔ)器3的一個(gè)存儲(chǔ)地址,因而舉例說明從所示格柵的第2行列看,狀態(tài)對(duì)[1,5],[2,6]和[1,5]的路徑量度可以一個(gè)接一個(gè)地被儲(chǔ)存在同一個(gè)存儲(chǔ)地址上。
從圖1的說明可以看出,設(shè)若由于各個(gè)“蝶形”的成對(duì)組合而使格柵圖的容積與圖3相比減至2M-1T個(gè)狀態(tài),那么迭代的數(shù)目與圖3相比相應(yīng)地也會(huì)減少1個(gè),這是直至重新恢復(fù)原始狀態(tài)順序所需要的。其結(jié)果是,由于存儲(chǔ)器3地址的再生,可以相應(yīng)地把編制地址耗費(fèi)降低。
前面已經(jīng)指出一個(gè)蝶形的全部狀態(tài)可以從這個(gè)蝶形的上面初始狀態(tài)S(u)推導(dǎo)出來。因此圖1所示的各成對(duì)路徑量度的適合的儲(chǔ)存地址就可以通過相對(duì)簡單的方法求得這個(gè)方法需要使用一個(gè)計(jì)數(shù)器,其計(jì)數(shù)范圍C可以在[0...NTS2-1]]]>之間調(diào)節(jié)。于是人們可以借助于一個(gè)函數(shù)fS(u)(C)求出各蝶形對(duì)的上面初始狀態(tài)S(u),因?yàn)镾(u)是與瞬時(shí)計(jì)數(shù)C相關(guān)的;然后接著借助于一個(gè)地址編制函數(shù)faddr(S(u),I),從已求出的上面狀態(tài)S(u)和當(dāng)時(shí)的實(shí)際迭代數(shù)I確定各個(gè)適當(dāng)?shù)膬?chǔ)存地址。對(duì)于各路徑量度需要由多個(gè)處理器元件來組合的情況而言,計(jì)數(shù)器的計(jì)數(shù)范圍必須要給在[0...NTS2ld(NPE)-1]]]>之間調(diào)節(jié),其中NPE代表處理器元件的數(shù)目,1d(x)則代表對(duì)數(shù)log2(x)。
函數(shù)fS(u)(C)是非線性的??梢宰C明這個(gè)函數(shù)可以一個(gè)簡單的二進(jìn)制數(shù)位圖解來實(shí)現(xiàn),如圖2所示。圖中的MSB代表最高價(jià)有效數(shù)位,LSB則代表最低價(jià)有效數(shù)位。
地址編制函數(shù)faddr(S(u),I)可以根據(jù)正向格柵編碼器的性質(zhì)用下列的關(guān)系式來描述ADDR=[(21·S(u))mod(NT-1)]+[21-MT+1·S(u))]此式中的ADDR代表取決于S(u),MT和I的某個(gè)路徑量度對(duì)的儲(chǔ)存地址的函數(shù),這個(gè)路徑量度對(duì)具有I∈[0...MT-1]。這個(gè)地址編制函數(shù)甚易實(shí)現(xiàn),因?yàn)樗喈?dāng)于式中所示的第1項(xiàng)和第2項(xiàng)的(MT-1)次的數(shù)位相加,而不必考慮會(huì)發(fā)生某種可能的溢出。所列式中的所有乘法都可以用簡單的數(shù)位位移運(yùn)算來實(shí)現(xiàn)。
對(duì)于要把本發(fā)明的方法用在多個(gè)處理器元件的情況而言,地址編制函數(shù)faddr(S(u),I)可以用下列的關(guān)系式來描述 本發(fā)明的方法在前面已對(duì)使用各種正向編碼器的情況,例如使用一個(gè)SDSL編碼器,做了說明。然而,本發(fā)明的方法也可以應(yīng)用于反向編碼器的情況。反向編碼器的維特比譯碼器的格柵結(jié)構(gòu)與正向編碼器的維特比譯碼器的雖然有很大的區(qū)別,但反向編碼器也可以在格柵蝶形方面也可以這樣成對(duì)地組合,使各個(gè)目標(biāo)狀態(tài)的相應(yīng)路徑量度同時(shí)代表在格柵圖中兩個(gè)隨后的蝶形的初始路徑量度。與正向編碼器情況相反的只是在反向編碼器的情況下,直至在特立期圖中再次出現(xiàn)原始狀態(tài)順序所需要進(jìn)行的迭代的次數(shù)不直接取決于MT的值。在反向編碼器情況下也可以用類似于在正向編碼器情況下所采取的實(shí)施方式來求得fS(u)(C)和faddr(s(u),I)兩個(gè)函數(shù)的關(guān)系式,但在此處我們不再陳述其推導(dǎo)和演算。
權(quán)利要求
1.一種在維特比譯碼器儲(chǔ)存路徑量度的方法,路徑量度是借助一個(gè)與維特比譯碼器相適應(yīng)的格柵圖來確定,在該格柵圖中某一特定時(shí)間步長的兩個(gè)目標(biāo)狀態(tài)與其先前時(shí)間步長的兩個(gè)初始狀態(tài)構(gòu)成一個(gè)蝶形結(jié)構(gòu),通過這個(gè)蝶形結(jié)構(gòu),該特定時(shí)間步長的兩個(gè)目標(biāo)狀態(tài)通過當(dāng)時(shí)存在的一個(gè)狀態(tài)轉(zhuǎn)移分支而與先前時(shí)間步長的兩個(gè)初始狀態(tài)連接起來;對(duì)每一個(gè)時(shí)間步長,每一個(gè)目標(biāo)狀態(tài)的路徑量度(γt+1)都取決于與該目標(biāo)狀態(tài)構(gòu)成一個(gè)蝶形結(jié)構(gòu)的先前時(shí)間步長的那個(gè)初始狀態(tài)的路徑量度(γt)的函數(shù);為此需從存儲(chǔ)器(3)中讀出相應(yīng)的兩個(gè)初始狀態(tài)的路徑量度(γt),從而作為路徑量度(γt)的函數(shù)確定時(shí)間步長的目標(biāo)狀態(tài)的路徑量度(γt+1),將該目標(biāo)狀態(tài)的路徑量度(γt+1)儲(chǔ)存在存儲(chǔ)器(3)中;其特征在于每個(gè)時(shí)間步長的格柵圖的蝶形結(jié)構(gòu)都至少成對(duì)地組合起來,對(duì)于時(shí)間步長的每一雙蝶形結(jié)構(gòu)對(duì)而言,格柵圖中的兩個(gè)蝶形結(jié)構(gòu)的目標(biāo)狀態(tài)同時(shí)成為隨后時(shí)間步長的兩個(gè)蝶形結(jié)構(gòu)的初始狀態(tài),而且在確定一對(duì)蝶形結(jié)構(gòu)對(duì)的兩個(gè)蝶形結(jié)構(gòu)的目標(biāo)狀態(tài)的路徑量度后,將該蝶形結(jié)構(gòu)對(duì)的兩個(gè)蝶形結(jié)構(gòu)的目標(biāo)狀態(tài)的路徑量度以一個(gè)共同的存儲(chǔ)字的形式儲(chǔ)存在存儲(chǔ)器(3)中,所述的該蝶形結(jié)構(gòu)對(duì)的目標(biāo)狀態(tài)同時(shí)也成為隨后時(shí)間步長的兩個(gè)蝶形結(jié)構(gòu)的初始狀態(tài)。
2.如權(quán)利要求
1所述的方法,其特征在于同屬于一個(gè)蝶形結(jié)構(gòu)的在某一時(shí)間步長上兩個(gè)初始狀態(tài)的路徑量度以一個(gè)共同的存儲(chǔ)字形式儲(chǔ)存在存儲(chǔ)器(3)中,在確定蝶形結(jié)構(gòu)對(duì)的兩個(gè)蝶形結(jié)構(gòu)的目標(biāo)狀態(tài)的路徑量度后,該蝶形結(jié)構(gòu)對(duì)的兩個(gè)目標(biāo)狀態(tài)同時(shí)也是隨后時(shí)間步長的蝶形結(jié)構(gòu)的初始狀態(tài),將兩個(gè)目標(biāo)狀態(tài)的路徑量度儲(chǔ)存在存儲(chǔ)器(3)中與初始狀態(tài)的路徑量度的地址相同的地址上,作為兩個(gè)初始狀態(tài)的路徑量度,該兩初始狀態(tài)與兩目標(biāo)狀態(tài)構(gòu)成一個(gè)蝶形結(jié)構(gòu)。
3.如權(quán)利要求
1或2所述的方法,其特征在于每一個(gè)目標(biāo)狀態(tài)的路徑量度(γt+1)都作為相應(yīng)的蝶形結(jié)構(gòu)的兩個(gè)初始狀態(tài)的路徑量度(γt)和與該蝶形結(jié)構(gòu)的兩個(gè)狀態(tài)轉(zhuǎn)移分支相對(duì)應(yīng)的分支量度(λt)的函數(shù)來確定。
4.如權(quán)利要求
3所述的方法,其特征在于在每一個(gè)蝶形結(jié)構(gòu)中,用于把第一個(gè)初始狀態(tài)與第一個(gè)目標(biāo)狀態(tài)連接起來的狀態(tài)轉(zhuǎn)移分支和把第二個(gè)初始狀態(tài)與第二個(gè)目標(biāo)狀態(tài)連接起來的狀態(tài)轉(zhuǎn)移分支的第一個(gè)分支量度具有相同的大?。挥糜诎训谝粋€(gè)初始狀態(tài)與第二個(gè)目標(biāo)狀態(tài)連接起來的狀態(tài)轉(zhuǎn)移分支和把第二個(gè)初始狀態(tài)與第一個(gè)目標(biāo)狀態(tài)連接起來的狀態(tài)轉(zhuǎn)移分支的第二個(gè)分支量度也具有相同的大小。
5.如權(quán)利要求
3所述的方法,其特征在于所述的方法用于對(duì)用正向編碼編碼的信號(hào)執(zhí)行譯碼。
6.如權(quán)利要求
5所述的方法,其特征在于所述的方法用于對(duì)單線數(shù)字信號(hào)線編碼的信號(hào)執(zhí)行譯碼。
7.如權(quán)利要求
3所述的方法,其特征在于所述的方法用于對(duì)用反向編碼編碼的信號(hào)執(zhí)行譯碼。
專利摘要
本發(fā)明涉及在維特比譯碼器中儲(chǔ)存路徑量度的方法。對(duì)于一個(gè)維特比譯碼器而言,將其相關(guān)的格柵圖中的各個(gè)蝶形結(jié)構(gòu)這樣地成對(duì)組合起來使在格柵圖中的兩個(gè)蝶形結(jié)構(gòu)的目標(biāo)狀態(tài)的路徑量度同時(shí)構(gòu)成了另兩個(gè)蝶形結(jié)構(gòu)的初始狀態(tài),在確定該蝶形結(jié)構(gòu)對(duì)的兩蝶形結(jié)構(gòu)的目標(biāo)狀態(tài)的路徑量度之后,該蝶形結(jié)構(gòu)對(duì)的兩目標(biāo)狀態(tài)的路徑量度以一個(gè)共同的存儲(chǔ)字的形式儲(chǔ)存,該兩目標(biāo)狀態(tài)同時(shí)形成另一蝶形結(jié)構(gòu)的初始狀態(tài)。
文檔編號(hào)H03M13/41GKCN1165193SQ01109374
公開日2004年9月1日 申請(qǐng)日期2001年3月2日
發(fā)明者馬里奧·特雷貝爾, 馬里奧 特雷貝爾 申請(qǐng)人:印菲內(nèi)奧技術(shù)股份有限公司導(dǎo)出引文BiBTeX, EndNote, RefMan