專利名稱:譯碼方法和裝置的制作方法
技術領域:
本發(fā)明涉及編解碼技術領域,特別涉及一種譯碼方法和裝置。
背景技術:
MAP (Maximum a Posteriori,最大后驗概率)算法是一種最小比特誤差率譯碼方式。MLP (Max-Log-Map,最大對數(shù)最佳后驗概率)巻積譯碼基于Max-Log-Map算法,不僅能得到譯 碼序列,還能得到每個比特正確譯碼的概率,是一種被廣泛應用的譯碼方式。
在MLP巻積譯碼時,為了加快處理速度,往往采用基四分支度量和遞推度量的計算方法 (每一次處理兩個時刻的待譯碼數(shù)據(jù))。但是當需要處理的譯碼塊塊長為奇數(shù)點時,最后會剩 余一個時刻的待譯碼數(shù)據(jù)需要單獨處理。
參見圖l,假設需要處理的譯碼碼塊長度為A:,按照基四分支度量的計算方法,第一次計 算時刻1和時刻2的分支度量值,第二次計算時刻3和時刻4的分支度量值,依此類推,......,
如果A為偶數(shù),則最后計算時刻A-l和時刻&的分支度量值,圖中所示&為奇數(shù)的情況,此時 最后會剩余第&個時刻的待譯碼數(shù)據(jù)無法用基四分支度量的計算方法來計算。
現(xiàn)有技術中當A:為奇數(shù)時,對第A:個時刻的待譯碼數(shù)據(jù)的處理方法包括
對最后一個時刻&進行單獨處理,計算時刻A的分支度量時,不復用基四分支度量的計 算結構,而是按照基二分支度量的計算方法(只計算一個時刻的分支度量)進行計算;計算 時刻先的遞推度量時,只將一條分支與累計遞推度量相加。
在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)上述現(xiàn)有技術至少具有以下缺點
在計算最后一個時刻的待譯碼數(shù)據(jù)時,需要產(chǎn)生精確的指示信號來判斷是否需要做特殊 化處理,在奇數(shù)點時進行基二分支度量的處理,使得譯碼處理結構復雜;而且每個度量計算 模塊都要增加一套基二分支度量計算邏輯,也會導致成本增加。
發(fā)明內容
本發(fā)明實施例提供了一種譯碼方法和裝置,簡化了譯碼設計結構,降低了譯碼成本。所 述技術方案如下
4一種譯碼方法,用于對待譯碼碼塊進行譯碼,所述方法包括-
當待譯碼碼塊長度為奇數(shù)A:時,在待譯碼碼塊的最后一個時刻6后增加一個虛擬時刻 A: +1 ,并為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù);
將所述待譯碼碼塊和虛擬的待譯碼數(shù)據(jù)作為新待譯碼碼塊,對所述新待譯碼碼塊分別進 行基四前向遞推度量和基四后向遞推度量計算,得到前向遞推度量值和后向遞推度量值;
對所述前向遞推度量值和后向遞推度量值進行累加,根據(jù)累加的結果確定出與所述新待 譯碼碼塊相關性最大的分支,作為譯碼的結果。
一種譯碼裝置,所述裝置包括
虛擬模塊,用于當待譯碼碼塊長度為奇數(shù)A時,在最后一個時刻A后增加一個虛擬時刻 A + l,并為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù);
計算模塊,用于將所述待譯碼碼塊和所述虛擬模塊得到的虛擬的待譯碼數(shù)據(jù)作為新待譯 碼碼塊,對所述新待譯碼碼塊分別進行基四前向遞推度量和基四后向遞推度量計算,得到前 向遞推度量值和后向遞推度量值;
確定模塊,用于對所述計算模塊得到的所述前向遞推度量值和后向遞推度量值進行累加, 根據(jù)累加的結果確定出與所述新待譯碼碼塊相關性最大的分支,作為譯碼的結果。
本發(fā)明實施例通過設置虛擬時刻A + 1以及虛擬的待譯碼數(shù)據(jù),可以使得時刻/t + l的待譯 碼數(shù)據(jù)與結束時刻A的待譯碼數(shù)據(jù)構成一組,進行基四分支度量和遞推度量計算,從而使得 當待譯碼碼塊的長度為奇數(shù)時,不用對最后一個時刻A單獨進行特殊處理,極大地簡化了譯 碼設計結構,降低了譯碼成本。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術 描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一 些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這 些附圖獲得其他的附圖。
圖1是現(xiàn)有的基四分支度量的計算方法示意圖2是本發(fā)明實施例提供的譯碼方法一種流程圖3是本發(fā)明實施例提供的譯碼方法另一種流程圖4是本發(fā)明實施例提供的設置虛擬時刻和虛擬待譯碼數(shù)據(jù)的示意圖5是本發(fā)明實施例提供的基四分支度量計算示意圖;圖6是本發(fā)明實施例提供的譯碼裝置一種結構圖; 圖7是本發(fā)明實施例提供的譯碼裝置另一種結構圖。
具體實施例方式
下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描 述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明 中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實施例, 都屬于本發(fā)明保護的范圍。
參見圖2,本發(fā)明實施例提供了一種譯碼方法,用于對待譯碼碼塊進行譯碼,包括
201:當待譯碼碼塊長度為奇數(shù)A時,在待譯碼碼塊的最后一個時刻A后增加一個虛擬時
+ 并為虛擬時刻設置虛擬的待譯碼數(shù)據(jù);
202:將待譯碼碼塊和虛擬的待譯碼數(shù)據(jù)作為新待譯碼碼塊,對新待譯碼碼塊分別進行基 四前向遞推度量和基四后向遞推度量計算,得到前向遞推度量值和后向遞推度量值;
203:對前向遞推度量值和后向遞推度量值進行累加,根據(jù)累加的結果確定出與新待譯碼 碼塊相關性最大的分支,作為譯碼的結果。
本發(fā)明實施例提供的上述方法具體采用MLP算法進行譯碼,通過為虛擬時刻& + 1設置虛 擬的待譯碼數(shù)據(jù),可以使得時刻A + 1的待譯碼數(shù)據(jù)與時刻A:的待譯碼數(shù)據(jù)構成一組,進行基 四分支度量和遞推度量計算,從而使得當待譯碼碼塊的長度為奇數(shù)時,不用對最后一個時刻A 單獨進行特殊處理,簡化了譯碼設計結構,降低了譯碼成本。
參見圖3,本發(fā)明實施例還提供了一種譯碼方法,具體包括
301:當待譯碼碼塊長度為奇數(shù)&時,在待譯碼碼塊的最后一個時刻A:后增加一個虛擬時 刻A + 1,并為虛擬時刻設置虛擬的待譯碼數(shù)據(jù)。
本發(fā)明實施例中,每個時刻均有多個狀態(tài),如4個狀態(tài)、16個狀態(tài)或64個狀態(tài)等等, 具體采用幾個狀態(tài),本發(fā)明實施例不做具體限定,下面的實施例以及附圖均以4個狀態(tài)為例 進行說明。參見圖4, A: + l時刻為虛擬時刻,A時刻為實際結束時刻,即待譯碼碼塊的最后 一個時刻,為虛擬時刻A: + l設置虛擬的待譯碼數(shù)據(jù)為4(c乙),其中,j表示第j個編碼比特。 4(《)為實際結束時刻A:第j個編碼比特對應的待譯碼數(shù)據(jù),該數(shù)據(jù)為實際接收到的數(shù)據(jù),將 時刻A:的待譯碼數(shù)據(jù)A (")與虛擬時刻A: +1的待譯碼數(shù)據(jù)組成一組,作為基四分支度 量和遞推度量計算的基礎。302:將待譯碼碼塊和虛擬的待譯碼數(shù)據(jù)作為新待譯碼碼塊,對新待譯碼碼塊進行基四前 向分支度量計算,得到前向分支度量值。
在計算基四前向分支度量值之前,先進行基二分支度量計算,基二分支度量的計算公式 有多種,本發(fā)明不限定具體的公式,本實施例中采用如下公式
其中,F(xiàn)/(附)表示&時刻進入狀態(tài)w的第/個編碼比特的分支度量值,"表示A時刻第7' 個編碼比特,4(c/)表示A:時刻第y個編碼比特對應的待譯碼數(shù)據(jù)。公式(l)所反映的編碼 比特與待譯碼數(shù)據(jù)的極性的映射關系為1一>1, 0—>-1。按照公式(1)從時刻1開始計算 到時刻A + 1,得到多個分支度量值。本實施例重點描述時刻A:-1與時刻A: + 1之間的分支度量 值。參見圖5, A 7^為計算得到的時刻t-1與時刻A + 1之間的全部分支度量值,其中,各 分支度量具體含義如下
K為* -1時刻的狀態(tài)0跳轉到A:時刻的狀態(tài)0的基二分支度量值; ^為A-l時刻的狀態(tài)1跳轉到^時刻的狀態(tài)0的基二分支度量值; ^為A-1時刻的狀態(tài)2跳轉到A:時刻的狀態(tài)1的基二分支度量值; ^為A -1時刻的狀態(tài)3跳轉到A時刻的狀態(tài)1的基二分支度量值; ^為A時刻的狀態(tài)0跳轉到A + 1時刻的狀態(tài)0的基二分支度量值; ^為&時刻的狀態(tài)1跳轉到^ + l時刻的狀態(tài)0的基二分支度量值;
&為先時刻的狀態(tài)3跳轉到A: +1時刻的狀態(tài)1的基二分支度量值; ^為&時刻的狀態(tài)3跳轉到A + 1時刻的狀態(tài)3的基二分支度量值。
在得到上述各個基二分支度量值后,進行基四分支度量的計算,即將兩個相鄰時刻的兩 條基二分支的度量值相加,得到基四分支度量值。例如,圖5中,從^-l時刻的狀態(tài)0跳轉 到"1時刻的狀態(tài)0(即&_1(0)->&(0)->&+1(0))的基四分支度量值為:("+^),從"l
時刻的狀態(tài)1跳轉到"1時刻的狀態(tài)0 (即&一(1)->&(0)->&+1(0))的基四分支度量值為
303:根據(jù)計算得到的新待譯碼碼塊的基四前向分支度量值,計算基四前向遞推度量值。 基四遞推度量的計算公式有多種,本發(fā)明不限定具體的公式,本實施例中采用如下公式其中,g(z',附)為表征前一時刻轉移到當前時刻現(xiàn)狀態(tài)附且寄存器最高位(最老比特)為/ 的狀態(tài),1為/ = 1指代《=1, "0指代《=0;《為A時刻的信息比特,m為當前計算的狀態(tài),《(g("附))為表征前一時刻轉移到當前時刻現(xiàn)狀態(tài)附且寄存器最高位(最老比特)為/的 狀態(tài)的遞推度量,5w(g0',附))為表征前一時刻轉移到現(xiàn)狀態(tài)w且寄存器最高位(最老比特) 為"且狀態(tài)w的最低位為7的分支的分支度量,max:為Max算子。Max-log-map中, max'(/VA2卜max(A,,A2), /對應著狀態(tài)w的最低位。新待譯碼碼塊的每個時刻均按照公式(2)進行計算,可以得到每個時刻的基四遞推度量 值,以A + 1時刻為例,計算得到的基四遞推度量值如下& + 1時刻狀態(tài)0的基四前向遞推度量值c^+i(0)二max(("w(O) + A + A),(A-"1) + y2 + 75),("w(2) + & + ;^),(0^,(3) +八+ : ^ + l時刻狀態(tài)l的基四前向遞推度量值"/t+i(1) =max((aw(0) +幾+ "3),("卜"1) + & + y13),(at—!(2) + y10 + "5(3) + & + y15》; * + 1時刻狀態(tài)2的基四前向遞推度量值.-%+1(2)= max(("w(0) + ^ +"2),(ajt_1(l) + /2 +"2),("*-i(2) + " + ^),("M(3) + y4 + ^7));先+ 1時刻狀態(tài)3的基四前向遞推度量值^+1(3)= max(d,(O) + ^ + "4),K1) + A + Zi4),K2) + K。 + ^),(""i(3) + & + 。 304:對新待譯碼碼塊進行基四后向分支度量計算,得到基四后向分支度量值,具體過程與302類似,區(qū)別僅在于從時刻A: + 1開始計算到時刻1,計算的方向與基四前向分支度量計算相反。305:根據(jù)計算得到的新待譯碼碼塊的基四后向分支度量值,計算基四后向遞推度量值, 在本實施例中記為A(m),表示時刻&狀態(tài)m的基四后向遞推度量值,具體計算過程與303 類似,區(qū)別僅在于從時刻A + 1開始計算到時刻1,計算的方向與基四前向遞推度量計算相反。當計算基四前向遞推度量值和基四后向遞推度量值時,均會設置遞推度量初始值,本發(fā) 明實施例不對初始值做具體限定,該初始值的限定并不會影響本發(fā)明的譯碼過程。對于基四 后向遞推度量值,優(yōu)選地,本實施例采用如下設置當待譯碼碼塊的末狀態(tài)不歸零時,可以將A + 1時刻的所有狀態(tài)的后向遞推度量初始化值 均設置為0,如A"(o) == A+1(2) = A+1(3) = 0 ;當待譯碼碼塊的末狀態(tài)歸零時,可以將A + 1時刻的所有狀態(tài)的后向遞推度量初始化值設8置為如下形式-A+1(。) = 0,= A+1(2) = A+1(3)—。本實施例中,302和303進行前向基四分支和遞推度量計算的過程,與304和305進行 后向基四分支和遞推度量計算的過程不分時間先后,可以同時執(zhí)行。306:對上述計算得到的基四前向遞推度量值和基四后向遞推度量值進行累加。 具體地,基四前向遞推度量值和基四后向遞推度量值的累加公式如下114(附),(附)+ , = 0,..7^-1 (3)其中,A(m)表示A時刻狀態(tài)w的基四前向遞推度量值,A(附)表示A時刻狀態(tài)w基四后 向遞推度量值,RJ附)表示累加后的結果,m為當前狀態(tài),取值范圍為O,..乂-l, iV,為編碼 器網(wǎng)格圖上的總狀態(tài)數(shù)。對時刻1至時刻A + 1之間的每個時刻的不同狀態(tài),分別求得該狀態(tài)下基四前向遞推度量 值和基四后向遞推度量值的和,R,(O)、 R,(l)、 RJ2)、 R,(3)........Rw(0)、 RA+1(1)、 Rt+1(2)和R』)。307:根據(jù)累加的結果確定出與新待譯碼碼塊相關性最大的分支,作為譯碼的結果。將時刻1至時刻A+1之間的每個時刻分別作為當前時刻,比較當前時刻下不同狀態(tài)的累 加結果,如比較時刻l下四個狀態(tài)的累加結果R,(O)、 R,(l)、 R,(2)和R,(3)、,......,比較時刻A + 1下四個狀態(tài)的累加結果R^(0)、 Rt+1(l)、 R^(2)和R^(3),選出與新待譯碼碼塊相 關性最大的分支,作為譯碼的結果。由于本實施例中采用MLP算法進行譯碼,因此在比較累 加結果時,在不同狀態(tài)下的累加結果中,取出最大值,從而保證了與新待譯碼碼塊的相關性 最大,以及譯碼的正確性。為了進一步地提高譯碼的準確性,在本發(fā)明實施例提供的上述方法中,可以采用如下原 則為虛擬時刻設置虛擬的待譯碼數(shù)據(jù),具體如下1)當待譯碼碼塊的末狀態(tài)(即&時刻的狀態(tài))不歸零時,按照從時刻A到虛擬時刻/t + l 的所有分支的度量值均相等的原則,為虛擬時刻^ + l設置虛擬的待譯碼數(shù)據(jù)。末狀態(tài)不歸零意味著在實際結束時刻A:的各個狀態(tài)是等概率出現(xiàn)的,為了保證譯碼的準 確性,應該令虛擬時刻的分支度量對前面時刻的遞推度量值不造成影響,因此,在本實施例 中,按照從A:時刻到A +1時刻的所有分支的度量值一致的原則來設置A: +1時刻的虛擬待譯碼 數(shù)據(jù)。根據(jù)分支度量值的公式(1)可知,優(yōu)選地,將虛擬時刻的虛擬待譯碼數(shù)據(jù)均設置為零, 則可以使得從&時刻到A + l時刻的所有分支的度量值f乙(w)均為零,從而保證了對前面時刻9的遞推度量值不造成影響。2)當待譯碼碼塊的末狀態(tài)歸零時,按照時刻A:經(jīng)過狀態(tài)O的分支與待譯碼碼塊的相關性 最大的原則,為虛擬時刻設置虛擬的待譯碼數(shù)據(jù)。末狀態(tài)歸零意味著在實際結束時刻A的狀態(tài)必然為狀態(tài)O (&(0))。為了保證譯碼的準確性,應該令經(jīng)過&(o)的四條基四分支的遞推度量值最大,才能保證時刻&經(jīng)過狀態(tài)0的分支 與待譯碼數(shù)據(jù)的相關性最大。以圖5為例,需要令經(jīng)過&(0)的四個分支^5、 y2;r5、 ;^712或 h/12的分支度量值最大,才能保證時刻A將狀態(tài)0選出,從而保證最后一個時刻A的譯碼結 果才是正確的。根據(jù)分支度量值的公式(1)可知,在編碼比特和待譯碼數(shù)據(jù)的極性映射關系為l映射 為1, O映射為-1時,優(yōu)選地,將虛擬時刻的虛擬待譯碼數(shù)據(jù)設置為最小值(-《),可以保 證時刻A經(jīng)過狀態(tài)O的分支概率最大,即與待譯碼數(shù)據(jù)的相關性最大。以圖5為例,在時刻A編碼比特為全0的分支有兩個,分別為分支^和分支/7,根據(jù)公式U),由于^ + l時刻第j 個編碼比特"+1=0,因此將A: + 1時刻第j個編碼比特的虛擬待譯碼數(shù)據(jù)^(4H)設置為最小值-k,從而可以保證計算出的75和^為最大值+^。本發(fā)明實施例不限定分支度量的計算公式的具體映射關系,也可以采用1映射為-1, 0 映射為1的映射關系,此時,可以將虛擬時刻的虛擬待譯碼數(shù)據(jù)設置為最大值。當A和h為最大值+K時,由303中計算得到的A: + 1時刻狀態(tài)0、 1、2和3的基四前向遞推度量值則分別為%+1(0) :max((G^(0) + ^ + ^),(0^(1) + y2 + f=));:max((aw(O) + ^ + ;^),(0^(1) + y9 + ;^),(""'(2) + ^。 + ;^),(0^(3) + & + ")); (2) = max((aw (2) + y3 + _^), ! (3) + ;k4 + =)); a4+1(3)= max(KO) + " + d(l) +八+ ^),(0^(2) + ,10 + n6),K3) + & + r16))。 在計算基四后向遞推度量值時,如果將A + 1時刻的所有狀態(tài)的后向遞推度量初始化值設 置為A+,(0) = 0,A+I(1) = A+1(2) = A+1(3) = -^,則根據(jù)公式(3)可以得到"l時刻的狀態(tài) 0、 1、 2和3的累加結果分別為Rw(0) = ari+1(0) +A+i(0) = max((a"i(0) + " + =),(0^,(1)+ ;R"i) = ""!) + A+1(i)=max((at—JO) + & + "3),("A—,(l) + y9 + y13),("w(2) + K。 + ns),("卜i(3) ++ &》_三;10R4+1(2) = ai+1(2) + A+1(2) = tnax((^—!(2) +乙+ =),(0^,(3) + h ; R"3)=max(("w(O) + ,8 + y14),Kl) + 714),("",(2) + y10 + ,16),(a""3) + & + y16》—qc 。將上述四個累加結果Rw(O)、 Ri+1(l)、 Rw(2)和R^(3)進行比較可以得知 m ),Rt+1(l),Rt+1(2),RA+1(3)) = Rt+1(0) = maxK。) + " +==),(^—"l) + ^ +二));即表明A時刻經(jīng)過狀態(tài)0的分支與待譯碼數(shù)據(jù)的相關性最大,這樣,A時刻被選出的狀 態(tài)就是狀態(tài)0,因此與待譯碼碼塊的末狀態(tài)歸零的條件吻合,從而保證了最后一個奇數(shù)點時 刻的譯碼正確,提高了譯碼的準確性。本發(fā)明實施例提供的上述方法,可以應用于所有數(shù)字信號處理領域的基于基四分支度量 的MLP算法的巻積譯碼和Turbo譯碼中,包括各種制式的移動通信領域(GSM、 WCDMA、 LTE、 Wimax等),在奇數(shù)點MLP譯碼中有廣泛應用。通過設置虛擬時刻A + l以及虛擬的待 譯碼數(shù)據(jù),可以使得時刻A + 1的待譯碼數(shù)據(jù)與結束時刻A:的待譯碼數(shù)據(jù)構成一組,進行基四 分支度量和遞推度量計算,從而使得當待譯碼碼塊的長度為奇數(shù)時,不用對最后一個時刻A:單 獨進行特殊處理,使得譯碼長度為奇數(shù)和偶數(shù)時的處理完全一致,不用區(qū)分對待,極大地簡 化了譯碼設計結構。另外,由于不需要增加任何電路,僅僅增加一個虛擬時刻的編碼比特信 息,就能將奇數(shù)點的處理與偶數(shù)點的處理一致化,簡化了電路,減少邏輯面積和資源,極大 地降低了譯碼成本。參見圖6,本發(fā)明實施例還提供了一種譯碼裝置,包括虛擬模塊601,用于當待譯碼碼塊長度為奇數(shù)A時,在最后一個時刻^后增加一個虛擬時 刻A + 1,并為虛擬時刻設置虛擬的待譯碼數(shù)據(jù);計算模塊602,用于將待譯碼碼塊和虛擬模塊601得到的虛擬的待譯碼數(shù)據(jù)作為新待譯 碼碼塊,對新待譯碼碼塊分別進行基四前向遞推度量和基四后向遞推度量計算,得到前向遞 推度量值和后向遞推度量值;確定模塊603,用于對計算模塊602得到的前向遞推度量值和后向遞推度量值進行累加, 根據(jù)累加的結果確定出與新待譯碼碼塊相關性最大的分支,作為譯碼的結果。參見圖7,虛擬模塊601可以具體包括時刻虛擬單元601a,用于當待譯碼碼塊長度為奇數(shù)A:時,在最后一個時刻A;后增加一個 虛擬時刻^: + l;數(shù)據(jù)虛擬單元601b,用于當待譯碼碼塊的末狀態(tài)不歸零時,按照從時刻A到虛擬時刻& +1的所有分支的度量值相等的原則,為虛擬時刻設置虛擬的待譯碼數(shù)據(jù)。其中,數(shù)據(jù)虛擬單元601b可以具體用于當待譯碼碼塊的末狀態(tài)不歸零時,為虛擬時刻設置虛擬的待譯碼數(shù)據(jù),且令虛擬的待譯碼數(shù)據(jù)在每個狀態(tài)都為零。 或者,虛擬碼塊601具體包括時刻虛擬單元601c,用于當待譯碼碼塊長度為奇數(shù)A時,在最后一個時刻^后增加一個 虛擬時刻A: + 1;數(shù)據(jù)虛擬單元601d,用于當待譯碼碼塊的末狀態(tài)歸零時,按照時刻t經(jīng)過狀態(tài)O的分支 與待譯碼碼塊的相關性最大的原則,為虛擬時刻設置虛擬的待譯碼數(shù)據(jù)。其中,數(shù)據(jù)虛擬單元601d可以具體用于當待譯碼碼塊的末狀態(tài)歸零時,如果編碼比特和 待譯碼數(shù)據(jù)的極性映射關系為l映射為l, 0映射為-l,則為虛擬時刻設置虛擬的待譯碼數(shù) 據(jù),且令虛擬的待譯碼數(shù)據(jù)為最小值,如果編碼比特和待譯碼數(shù)據(jù)的極性映射關系為1映 射為-1, 0映射為1,則為虛擬時刻設置虛擬的待譯碼數(shù)據(jù),且令虛擬的待譯碼數(shù)據(jù)為最大值。本發(fā)明實施例提供的上述裝置,可以應用于所有數(shù)字信號處理領域的基于基四分支度量 的MLP算法的巻積譯碼和Turbo譯碼中,包括各種制式的移動通信領域(GSM、 WCDMA、 LTE、 Wimax等),在奇數(shù)點MLP譯碼中有廣泛應用。通過設置虛擬時刻&+ 1以及虛擬的待 譯碼數(shù)據(jù),可以使得時刻^ + 1的待譯碼數(shù)據(jù)與結束時刻^的待譯碼數(shù)據(jù)構成一組,進行基四 分支度量和遞推度量計算,從而使得當待譯碼碼塊的長度為奇數(shù)時,不用對最后一個時刻^單 獨進行特殊處理,使得譯碼長度為奇數(shù)和偶數(shù)時的處理完全一致,不用區(qū)分對待,極大地簡 化了譯碼設計結構。另外,由于不需要增加任何電路,僅僅增加一個虛擬時刻的編碼比特信 息,就能將奇數(shù)點的處理與偶數(shù)點的處理一致化,簡化了電路,減少邏輯面積和資源,極大 地降低了譯碼成本。本發(fā)明實施例提供的上述技術方案的全部或部分可以通過程序指令相關的硬件來完成, 所述程序可以存儲在可讀取的存儲介質中,該存儲介質包括ROM、 RAM、磁碟或者光盤等 各種可以存儲程序代碼的介質。以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之 內,所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內。
權利要求
1、一種譯碼方法,用于對待譯碼碼塊進行譯碼,其特征在于,所述方法包括當所述待譯碼碼塊長度為奇數(shù)k時,在所述待譯碼碼塊的最后一個時刻k后增加一個虛擬時刻k+1,并為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù);將所述待譯碼碼塊和虛擬的待譯碼數(shù)據(jù)作為新待譯碼碼塊,對所述新待譯碼碼塊分別進行基四前向遞推度量和基四后向遞推度量計算,得到前向遞推度量值和后向遞推度量值;對所述前向遞推度量值和后向遞推度量值進行累加,根據(jù)累加的結果確定出與所述新待譯碼碼塊相關性最大的分支,作為譯碼的結果。
2、 根據(jù)權利要求1所述的譯碼方法,其特征在于,為所述虛擬時刻設置虛擬的待譯碼數(shù) 據(jù),具體包括-當所述待譯碼碼塊的末狀態(tài)不歸零時,按照從時刻A:到虛擬時刻A: + 1的所有分支的度量 值相等的原則,為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù)。
3、 根據(jù)權利要求2所述的譯碼方法,其特征在于,按照從時刻A:到虛擬時刻A + 1的所有 分支的度量值相等的原則,為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù),具體包括為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù),且令所述虛擬的待譯碼數(shù)據(jù)在每個狀態(tài)都為零。
4、 根據(jù)權利要求1所述的譯碼方法,其特征在于,為所述虛擬時刻設置虛擬的待譯碼數(shù) 據(jù),具體包括-當所述待譯碼碼塊的末狀態(tài)歸零時,按照時刻A經(jīng)過狀態(tài)O的分支與所述待譯碼碼塊的 相關性最大的原則,為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù)。
5、 根據(jù)權利要求4所述的譯碼方法,其特征在于,按照時刻A:經(jīng)過狀態(tài)O的分支與所述 待譯碼碼塊的相關性最大的原則,為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù),具體包括當編碼比特和待譯碼數(shù)據(jù)的極性映射關系為l映射為l, 0映射為-l時,為所述虛擬時 刻設置虛擬的待譯碼數(shù)據(jù),且令所述虛擬的待譯碼數(shù)據(jù)為最小值;當編碼比特和待譯碼數(shù)據(jù)的極性映射關系為l映射為-l, 0映射為1時,為所述虛擬時 刻設置虛擬的待譯碼數(shù)據(jù),且令所述虛擬的待譯碼數(shù)據(jù)為最大值。
6、 一種譯碼裝置,其特征在于,所述裝置包括-虛擬模塊,用于當待譯碼碼塊長度為奇數(shù)A時,在最后一個時刻&后增加一個虛擬時刻 & + 1 ,并為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù);計算模塊,用于將所述待譯碼碼塊和所述虛擬模塊得到的虛擬的待譯碼數(shù)據(jù)作為新待譯 碼碼塊,對所述新待譯碼碼塊分別進行基四前向遞推度量和基四后向遞推度量計算,得到前 向遞推度量值和后向遞推度量值;確定模塊,用于對所述計算模塊得到的所述前向遞推度量值和后向遞推度量值進行累加, 根據(jù)累加的結果確定出與所述新待譯碼碼塊相關性最大的分支,作為譯碼的結果。
7、 根據(jù)權利要求6所述的譯碼裝置,其特征在于,所述虛擬模塊包括 時刻虛擬單元,用于當待譯碼碼塊長度為奇數(shù)^時,在最后一個時刻A:后增加一個虛擬時刻A + 1;數(shù)據(jù)虛擬單元,用于當所述待譯碼碼塊的末狀態(tài)不歸零時,按照從時刻^到虛擬時刻A: + 1 的所有分支的度量值相等的原則,為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù)。
8、 根據(jù)權利要求7所述的譯碼裝置,其特征在于,所述數(shù)據(jù)虛擬單元具體用于當所述待 譯碼碼塊的末狀態(tài)不歸零時,為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù),且令所述虛擬的待譯 碼數(shù)據(jù)在每個狀態(tài)都為零。
9、 根據(jù)權利要求6所述的譯碼裝置,其特征在于,所述虛擬碼塊包括 時刻虛擬單元,用于當待譯碼碼塊長度為奇數(shù)A時,在最后一個時刻^后增加一個虛擬時刻A + 1;數(shù)據(jù)虛擬單元,用于當所述待譯碼碼塊的末狀態(tài)歸零時,按照時刻A經(jīng)過狀態(tài)0的分支 與所述待譯碼碼塊的相關性最大的原則,為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù)。
10、 根據(jù)權利要求9所述的譯碼裝置,其特征在于,所述數(shù)據(jù)虛擬單元具體用于當所述 待譯碼碼塊的末狀態(tài)歸零時,如果編碼比特和待譯碼數(shù)據(jù)的極性映射關系為1映射為1, 0 映射為-1,則為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù),且令所述虛擬的待譯碼數(shù)據(jù)為最小值, 如果編碼比特和待譯碼數(shù)據(jù)的極性映射關系為l映射為-l, 0映射為1,則為所述虛擬時刻 設置虛擬的待譯碼數(shù)據(jù),且令所述虛擬的待譯碼數(shù)據(jù)為最大值。
全文摘要
本發(fā)明公開了一種譯碼方法和裝置,屬于編解碼技術領域。所述方法用于對待譯碼碼塊進行譯碼,包括當待譯碼碼塊長度為奇數(shù)k時,在最后一個時刻k后增加一個虛擬時刻k+1,并為所述虛擬時刻設置虛擬的待譯碼數(shù)據(jù);將所述待譯碼碼塊和虛擬的待譯碼數(shù)據(jù)作為新待譯碼碼塊,對所述新待譯碼碼塊分別進行基四前向遞推度量和基四后向遞推度量計算,得到前向遞推度量值和后向遞推度量值;對所述前向遞推度量值和后向遞推度量值進行累加,根據(jù)累加的結果確定出與所述新待譯碼碼塊相關性最大的分支,作為譯碼的結果。所述裝置包括虛擬模塊、計算模塊和確定模塊。本發(fā)明極大地簡化了譯碼設計結構,降低了譯碼成本。
文檔編號H03M13/00GK101521512SQ20091008149
公開日2009年9月2日 申請日期2009年4月9日 優(yōu)先權日2009年4月9日
發(fā)明者立 王 申請人:華為技術有限公司