使用並行處理的turbo解碼器的製作方法
2023-04-26 12:54:51 5
專利名稱:使用並行處理的turbo解碼器的製作方法
技術領域:
本發明廣義上涉及解碼器,具體地是涉及一種縮短後驗概率(APP)的計算的處理時間並且適用於並行處理結構的Turbo解碼器。
背景技術:
通過無線電通訊信道傳遞的數據會遭受信道噪聲、信道衰減以及來自其他信道的幹擾。結果,在目的地接收到的數據通常會被信道從這些來自信號源的幹擾「改變」。為了保證無錯傳輸,數據在傳輸之前被信道編碼器編碼以使數據接收器檢測或校正誤差。例如,如果位0被編碼為000且位1被編碼為111,那麼當一位誤差發生時,000可能會變成100,111可能會變成101。接收器能夠通過「多數規則」或漢明距離將100校正為000(位0),將101校正為111(位1)。接收器負責校正誤差的部分被稱之為信道解碼器。
Tubor編碼器和解碼器用於新興的高速電信傳輸系統,例如陸地數位電視通信系統,第三代無線(例如,WCDMA)通信系統。Turbo解碼器已經被證實在AWGN和瑞利衰落信道都接近誤差校正極限。
不管誤差校正效率,然而,Turbo解碼器加強了計算。為了滿足實時性能(例如,幾毫秒),它通常在ASIC中實現。如果一個Turbo解碼器要在DSP或者CPU中運行的軟體裡實現,那麼在軟體界定的無線電通信環境下,它的實時性能會被改善。
3GPP Turbo編碼器(圖1)由被交織器分隔開的平行連接的兩個相同的RSC(遞歸系統卷積)編碼器組成。長度為K的信息字U由第一RSC編碼器編碼,被交織的信息字由第二RSC編碼器編碼。交織器通過重新排序至第二RSC的輸入位而對輸入到兩個RSC的內容解相關,使得來自兩個RSC的編碼位不可能同時具有低權重的碼字。還有,它有助於編碼位應付猝發噪聲。在3GPP Turbo編碼器中,使用的是偽隨機塊交織器。兩個RSC的編碼字都被網格末端(trellis termination)終結。Turbo編碼字由系統位和兩個奇偶校驗位組成(U,XP1,XP2)。
如圖2所示,標準的Turbo解碼器由兩個級聯的SISO(軟輸入,軟輸出)模塊組成,系統位和奇偶校驗位的每一組使用一個模塊,(U′,XP1′)和(U′,XP2′),其中XP1′和,XP2′分別表示XP1和XP2的噪聲模型,U′是相同的(U指的是信息字)。SISO模塊是後驗概率(APP)解碼器也就是熟知的最大後驗(MAP)解碼器。這兩個SISO模塊被相同的交織器(作為編碼器)和它的後向模塊,去交織器分開。依據對來自信道的位的接收和先驗信息,每個SISO模塊用熟知的前向和後向算法計算每個位的對數後驗比值。一旦SISO計算出所有位的對數後驗比值,它根據來自全部後驗值的輸入分離概率實體(probabilistic entity),然後將它們傳給其它SISO模塊。這個概率實體通常被稱作外部信息(圖2中的L12和L21),為其它SISO模塊用作先驗信息。該兩個在迭代方案中運行的SISO模塊相互交換外部信息。當完成所需要數目的迭代後,根據一直到該迭代的累積的軟信息做出硬判決(hard decision)。
先驗概率比值的對數可以寫作L(uk)=log(P(uk=+1|y)P(uk=-1|y))=log(s+p(Sk-1,Sk,y)/P(y)s-p(Sk-1,Sk,Sk+1y)/P(y)),---(1)]]>其中S+和S-表示由各自數據輸入uk=+1和uk=-1產生的所有可能的狀態轉換的集合,y表示觀察值的集合,y=(y1,…,yk),其中yk=(uk『,xk『),k=1,…K。注意,y∈(U』,XP1』,XP2』)。
通常,後驗概率(posterior probablity)可以通過計算加權似然來獲得,其中權重是由事件uk的先驗概率提供的。加權似然的直接估算需要十分巨大數目的狀態模式,其與序列長度K是成比例的。因為組合的複雜性,所以即使是合理長度的序列也沒有計算的可行性。
為了減小計算量,經常用一種有效的方法,即眾所周知的前向和後向算法。在這個算法中,後驗概率P(uk|y)被分解成下面三項-前向變量,αk(.),-後向變量,βk(.),-狀態轉換概率,γk(.,.)。
αk(.)是在時間k觀察值y1,…,yk和狀態的聯合概率,也就是αk(s)=P(Sk,y1,…,yk)。βk(.)代表在時間k給定狀態的未來觀察值的條件概率,βk(s)=P(y1,…,yk+1|Sk)。γk(.,.)是從k-1到k由uk導致的狀態轉換的概率,並且表達為γk(S』,S)=P(Sk=S,yk/Sk-1=S』)。
遞歸計算αk(s)的過程是按照k(S)=sk-1(S)k(S,S)]]>實現的。
對於βk(s),進行遞歸為k(S)=sk+1(S)k+1(S,S).]]>由於Turbo編碼器被期望在狀態1開始和終止,αk(.)和βk(.)的初始條件是已知的並且分別給成α0(s)=δ{S,1},βk(s)=δ{S,1},其中δ{γ,},表示Kroneckerδ。
作為函數f(αk(.),βk(.))的後驗實體L(uk)的計算相當於P(uk|y)=S*k-1(s)k(S,S)k(S)P(y)---(2)]]>其中S*是由對應於所有由uk=+1/-1造成的狀態轉換的狀態對的集合,P(y)是標準化常量。
前向和後向算法被概括為-計算γk(.,.),k=1,2…,K;-計算αk(.,.)前向遞歸,k=1,2…,K;-計算βk(.,.)後向遞歸,k=K,K-1,…0;-計算(2)以構成(1)發明內容本發明是一種用對數後驗概率比值L(uk)解碼的方法,L(uk)為前向變量α(.)和後向變量β(.)的函數。該方法包括將前向變量α(.)和後向變量β(.)分成例如p和q兩個部分,這裡p加q等於碼字U的長度。前向部分α(.)被並行地計算,後向變量β(.)被並行地計算。利用並行地計算的α(.)和β(.)的部分計算出比值L(uk)。第一前向部分從起始於α0(.)的α1(.),…,αp(.)計算,第二前向部分從起始於估算的αp(.)的αp+1(.),…,αk(.)中計算。第一後向部分從起始於βk(.)的βk(.),…,βq+1(.)計算,第二後向部分從起始於估算的βq+1(.)的βq(.),…,β1(.)計算。
為了獲得估算的起始點αp+1(.),從p-d+1迭代計算前向變量,其中d是任意時間量,並且在時間p-d+1的狀態被認定為均勻隨機變量。類似的,對βq+1(.)來說,後向變量從q+d計算,並且在時間q+d的狀態也被認定為均勻隨機變量。並沒有有教益的現有技術主張將在時間p+d-1和q+d的狀態認定為均勻隨機變量。
任意時間量d在1到20的範圍內或者可以在15到20的範圍內。此外,估算概率的起始點也可以是一個預定的狀態。這個預定的狀態可以是一除以可能狀態數。
該方法可以包括將前向變量α(.)和後向變量β(.)分成多於兩個的部分,並且每個前向和後向部分都被並行地計算。
在一個包括解碼器的信號接收器中執行處理。
通過以下結合附圖對本發明的詳細說明,本發明的這些和其它方面將會變得明顯。
圖1是現有技術的3GPP Turbo解碼器的結構圖;圖2是現有技術的3GPP Turbo解碼器的結構圖;圖3是現有技術的Turbo解碼器和本發明的Turbo解碼器在不同的信噪比(SNR)下的位誤差率(BER)的曲線圖;圖4是現有技術的Turbo解碼器和本發明的Turbo解碼器在不同的SNR下的塊誤差率(BLER)或分組誤差率的曲線圖。
具體實施例方式
標準Turbo解碼算法的一個問題是如果輸入序列K的大小很大,那麼計算上述的前向和後向變量的時間增加,當我們執行前向和反向算法時產生較長的等待時間。K可以達到5114位。為了減小αk(.)和βk(.)計算的時間,輸入數據被分割成M個部分並且同時為M個部分計算αk(.)和βk(.)。用這種分割法會產生切斷損失;然而,仿真結果表明當M=2時該損失可以忽略不計。
理論上,並行方法將計算簡化到接近原始的αk(.)和βk(.)計算量的1/M(例如,M=2時是1/2)。並行計算用於計算αk(.)和βk(.),其為Turbo解碼器中運算最密集的部分。
下面將以M=2為例討論該並行算法。對於M>2,算法是類似的。該算法由以下步驟組成1.將前向和後向變量分成大小分別為p和q的兩個並行的部分,在此,p+q=K。
2.通過以下四個過程同時計算這四個部分-過程1從α0(.)開始計算α1(.),…,αp(.);-過程2從估算的αp(.),假定為α『p(.)開始計算αp+1(.),…,αk(.);-過程3從βk(.)開始計算(向後)βk(.),…,βq+1(.);-過程4從估算的βq+1(.),假定為β『q+1(.)開始計算(向後)βq+1(.),…,β1(.)。
過程1和3用已知的起始點(具有減小的大小)進行規則的Turboα和β運算,過程2和4需要估算的起始點。
以下的算法可以用於獲得過程2的α『p(.)及過程4的β『q+1(.)。第一次迭代從αp-d+1(.)開始,其中d是任意時間過程量。在時間p-d+的狀態被看作均勻隨機變量。這一點意味著發生在p-d+1的特定狀態的概率是1/8,因為3GPP Turbo編碼器具有8種系統狀態。結果,αp-d+1(.)=1/8,βq+d(.)也這樣。從這個統一的先驗開始,當過程達到p時,產生估算值α『p(.),當過程達到q+1時,產生估算值β『q+1(.)。
從觀察值中為間隔d抽取的信息量是與d成比例的。較長的d會給出較好的初始估算值。然而,由於在d步驟過程中的計算產生「開銷」,所以d應該增加某一限度以上。雖然d可以在1-20的範圍內,但仿真表明d=12~15時結果最佳。從第二次迭代開始,αp-d+1(.)和βq+d(.)可以以與第一次迭代相同的方式選擇,或者採用前面迭代中的可用的過程1和過程3產生的值。
由信噪比(SNR)定義仿真情況。對於每個情況,隨機產生2000個大小為5114比特的數據包,進行Turbo編碼,並且受到AWGN噪聲。被「擾亂」的數據包運行通過常規的已有的Turbo解碼器和本發明的並行的Turbo解碼器。對於本發明的並行的Turbo解碼器,在並行算法中分割數M=2並且初始估算的長度d=20,使用之前迭代的適當值作為當前迭代的初始估算的起始點。
圖3和圖4比較了在不同的SNR下常規Turbo解碼器和並行Turbo解碼器的BER(比特誤差率)和BLER(塊誤差率或者包誤差率)。結果非常接近,在圖表中無法辨別。
儘管範例中部分數M=2,但也可以採用更大數目的M。在這種情況下,方程將會有以下通式L(uk)=f(αk(.),βk(.))。估算的起始點的定義可以是αp(.),…,αw(.)和βw(.),…,βq+1(.)。前向變量的部分被如下計算α1(.),…,αp(.),起始於α0(.)αp+1(.),…,αq(.),起始於αp(.)αw+1(.),…,αk(.),起始於αw(.)後向變量的部分被如下計算βk(.),…,βw+1(.),起始於βk(.)βw(.),…,βr+1(.),起始於βw+1(.)βq(.),…,β1(.),起始於βq+1(.)。
對前向變量的起始點從如下估算αp-d+1(.),…,αp(.)和αw-d+1(.),…,αw(.);和對後向的部分從如下估算βw+d(.),…,βw(.)和βq+d(.),…,βq(.)這裡,d是任意時間過程量。
還應該注意的是即使已經論述了Turbo解碼器,但任何應用後驗概率解碼的系統都可以使用本發明。
儘管已經詳地細描述和圖解了本發明,但是應該清楚地理解的是,僅僅做出圖解和實施例並不構成對本發明的限制。本發明的精神和範圍僅通過所附權利要求來限定。
權利要求
1.一種Turbo解碼器利用對數後驗概率L(uk)的方法,其中L(uk)=f(αk(s),βk(s)),該方法包括將前向變量α(.)和後向變量β(.)分成M個大小為p,q…w的並行的部分,這裡p+q,…+w等於碼字U的長度;並行地計算前向變量α(.)和後向變量β(.)的所述部分;和利用並行地計算出的α(.)和β(.)的所述部分計算L(uk)。
2.如權利要求1所述的方法,其中前向變量部分被如下計算α1(.),…,αp(.),起始於α0(.)αp+1(.),…,αq(.),起始於αp(.)αw+1(.),…,αk(.),起始於αw(.);及後向變量部分被如下計算βk(.),…,βw+1(.),起始於βk(.)βw(.),…,βr+1(.),起始於βw+1(.)βq(.),…,β1(.),起始於βq+1(.)。
3.如權利要求2所述的方法,其中,起始點αp(.),…,αw(.)是估算的,起始點βw(.),…,βq+1(.)是估算的。
4.如權利要求3所述的方法,其中對前向變量的起始點從如下估算αp-d+1(.),…,αp(.)αw-d+1(.),…,αw(.);和對後向部分從如下估算βw+d(.),…,βw(.)βq+d(.),…,βq(.)這裡,d是任意時間過程量。
5.如權利要求4所述的方法,其中d在1到20的範圍內。
6.如權利要求4所述的方法,其中d在15到20的範圍內。
7.如權利要求4所述的方法,其中用於被估算的狀態的起始點是均勻隨機變量。
8.如權利要求4所述的方法,其中用於被估算的狀態的起始點是一個預定的狀態。
9.如權利要求4所述的方法,這個被估算狀態的起始點可以是一除以可能狀態數。
10.如權利要求1所述的方法,其中所述部分的大小被相等的設置。
11.如權利要求1所述的方法,其中變量僅被分成p和q兩個部分。
12.一種利用對數後驗概率L(uk)的解碼方法,其中L(uk)=f(αk(s),βk(s)),該方法包括將前向變量α(.)和後向變量β(.)分成兩個部分p和q,這裡p+q等於碼字U的長度;並行地計算前向的部分α1(.),…,αp(.),起始於α0(.)和αp+1(.),…,αk(.),起始於αp(.);並行地計算後向的部分βk(.),…,βq+1(.),起始於βk(.)βq(.),…,β1(.),起始於βq+1(.);和利用並行地計算出的α(.)和β(.)的部分計算L(uk)。
13.如權利要求12所述的方法,其中,為αp+1(.)估算的起始點αp(.)是從先驗概率αp-d+1(.),…,αp(.)估算的,為βq(.)估算的起始點βq+1(.)是從先驗概率βq+d(.),…,βq+1(.)估算的。
14.如權利要求13所述的方法,其中d在1到20的範圍內。
15.如權利要求13所述的方法,其中d在15到20的範圍內。
16.如權利要求13所述的方法,其中用於被估算的狀態的起始點是均勻隨機變量。
17.如權利要求13所述的方法,其中用於被估算的狀態的起始點是一個預定的狀態。
18.如權利要求13所述的方法,這個被估算的狀態的起始點可以是一除以可能狀態數。
19.一種信號接收器,包括執行權利要求1所述的方法的解碼器。
20.一種信號接收器,包括執行權利要求11所述的方法的解碼器。
全文摘要
一種用對數後驗概率比值L(u
文檔編號H03M13/29GK1757166SQ200380105252
公開日2006年4月5日 申請日期2003年10月23日 優先權日2002年12月6日
發明者J·盧, J·H·春, E·赫凱內克, M·穆杜吉爾 申請人:沙橋技術有限公司