專利名稱:應用陪集分割的交錯器的制作方法
技術領域:
本發(fā)明涉及通信系統(tǒng),特別涉及作代碼調制的交錯器。
發(fā)明
背景技術:
業(yè)已發(fā)現,編碼通信信道(即編碼調制)可改善調制解調器與無線通信系統(tǒng)等電子通信系統(tǒng)的誤碼率(BER)。對于以加白高斯噪聲(AWGN)或衰落為特征的“隨機誤差”信道而言,Turbo(渦輪)編碼調制被證明是一種高效、帶寬有效的實用調制方法。這類隨機誤差信道可以在例如碼分多址(CDMA)環(huán)境中見到。
Turbo碼的主要創(chuàng)意是一個交錯器,可將原始數據幀置換后輸入第二編碼器。
圖1示出一常規(guī)的平行級聯(lián)在一起的Turbo編碼器,它包括兩個分編碼器102與104及一個交錯器106。開關108能間縮(puncture)來自各編碼器102與104的交替位而保持期望的比率(如R=1/2)。分編碼器的結構與工作原理以及比率的選用是眾所周知的,這里不再討論。然而,交錯器的結構還是一個未解決的問題,尤其對小數據塊的Turbo碼更是如此。
最近,在加白高斯噪聲(AWGN)信道(如CDMA信道)中,如果數據幀規(guī)模趨于無限大,則常規(guī)“隨機交錯器”被認為最佳。然而,對于有限規(guī)模的數據幀(即Turbo碼)而言,最佳交錯器還有待于確定。
因此,對有限規(guī)模的數據幀提出了交錯器設計的要求。這樣,對有限規(guī)模的數據幀(即Turbo碼)提供交錯器,正是本發(fā)明的一個優(yōu)點。本發(fā)明的另一優(yōu)點是為預定規(guī)模的幀提供優(yōu)化的交錯器。
發(fā)明概要本發(fā)明的一個方面是提供一種對包含N個數據元的塊進行置換(排列)的方法,N是大于1且能被大于1的正整數n整除的正整數。該方法包括把塊分成n個陪集(co-set),每個陪集的規(guī)模為N/n;對每一陪集作置換;以及按預定順序將置換的陪集的元組合起來而形成置換的塊。
本發(fā)明的一個方面是通過對在所述塊中其相對于位置有一公共值(N模(n))的n個陪集元都賦值而將所述塊分成n個陪集的系統(tǒng)與方法。
本發(fā)明的一個方面是對適合該陪集規(guī)模的代數交錯器構件塊中的各陪集提供置換,并作數次陪集分割與交錯。本發(fā)明的一個方面是通過按該陪集生成m序列對各陪集作置換。
本發(fā)明的另一個方面提供一種根據一N系統(tǒng)位流生成Turbo碼的系統(tǒng)和方法,N是大于1且可被大于1的正整數n整除的正整數。該方法包括在第一編碼器中對N系統(tǒng)位編碼而生成第一N Turbo位流;將N系統(tǒng)位流分成每個規(guī)模為N/n的n個陪集;對各陪集作置換;通過以預定順序組合被置換的所述陪集而形成置換的N系統(tǒng)位流;在第二編碼器中對N個置換的系統(tǒng)位編碼而生成第二N Turbo位流;以及按預定順序將第一與第二N Turbo位流組合起來。
本發(fā)明的一個方面是通過對在流中其相對位置有一公共值(N模(n))的所述n個陪集元都賦值而將N系統(tǒng)位流分成n個陪集,并數次應用陪集分割與交錯。
本發(fā)明的一個方面是由系統(tǒng)位流生成兩Turbo位流,并對這兩個N Turbo位流間縮而保持預定的系統(tǒng)位/Turbo位之比。
下面將結合幾個示例實施例描述本發(fā)明;然而,本領域的技術人員顯然明白,在不背離所附權項的精神與范圍的情況下,可以作出各種修正和增減。
附圖簡述通過參照下面結合附圖對示例實施例所作的詳細描述,將更清楚理解本發(fā)明的詳細描述本發(fā)明揭示一種能提供常規(guī)Turbo碼性能的交錯器。本發(fā)明的一實施例通過拓展集分割映射原理,應用某種算法基于較小規(guī)模交錯器而構建任意規(guī)模的代數交錯器。該技術可對代數交錯器實現參數化,并按選擇的標準使交錯器優(yōu)化。
描述的實施例可補償平行級聯(lián)的Turbo碼因間縮而丟失的奇偶檢驗位。應用陪集分割的代數交錯器,可提高間縮的Turbo碼(尤其對R=1/2)的性能。本發(fā)明可用軟件或硬件(即專用集成電路(ASIC)、可編程邏輯陣列(PLA)或任何其它合適的邏輯器件)實施。
雖然這里討論的交錯器實施例是針對Turbo碼與cdma2000的,但是本領域的技術人員將理解,這類交錯器也可應用于當前的CDMA等其它系統(tǒng)和其它代碼。基于陪集分割構建的代數交錯器本發(fā)明交錯器的設計基于一種確定性的代數結構。它應用了陪集分割原理來設計代數交錯器,通過將數據塊分成更小的陪集小塊并用更小規(guī)模的代數交錯器使陪集交錯,這種代數交錯器能使任意規(guī)模的數據塊交錯。然后將來自交錯的陪集的諸元以預定順序組合起來形成交錯式的原始數據塊版本。
在本實施例中,通過對共享模n計算的同一余數的數據塊的n個陪集元都賦值,實現了陪集分割。
例如,含12個元的數據塊可標為{1 2 3 4 5 6 7 8 9 10 11 12}可被分成2個陪集,包含{1 3 5 7 9 11}(模2,余數=1){2 4 6 8 10 12}(模2,余數=0)或被分成3個陪集,包含{1 4 7 10} (模3,余數=1){2 5 8 11} (模3,余數=2){3 6 9 12} (模3,余數=0)或被分成4個陪集,包含{1 5 9 } (模4,余數=1){2 6 10} (模4,余數=2){3 7 11} (模4,余數=3){4 8 12} (模4,余數=0)(雖然還可把數據塊分成6個陪集,每個陪集為2個元,但是置換兩元陪集的結果可能不實用)。
現在詳細研究一下有48個數據元(標為元1~48)的數據塊的交錯例子。將該數據塊分成兩個陪集,一個陪集包含元1~48,模2,余數為0(即24個“偶數”元2,4,6,……48),另一個陪集包含的元為模2,余數1(即24個“奇數”元1,3,5,……47)。這兩個數據塊在討論中被稱為偶數據塊與奇數據塊。本領域的技術人員將理解,選擇2作為陪集數僅是示例,而不是限制。兩個數據塊將作逐行與逐列置換。
每個24元數據塊均被處理成4行乘6列的陣列,即N1×N2陣列,N1選成4,因而N2選成6。本領域的技術人員應理解,這些數字為示例,也可選擇其它數字。然后選擇質數P1與P2。P1是大于N1的質數;最好使最小質數大于N1,但是選用更大的質數本方法也可適用。因此,對P1選5,因為5是大于4的最小質數(N1為4)。同樣地,對P2選7,因為7是大于6(N2值)的最小質數。接著選擇α1、α2、β1與β2的值α1與α2的值分別是常規(guī)方法求出的P1與P2的原始根。β1與β2可從下式選出最佳結果β1≤P1-1,和β2≤P2-1本例中,α1=2,α2=3,β1=1,β2=3。
把準備交錯的數據塊逐行讀入N1×N2陣列,這樣把偶數據塊讀成02 04 06 08 10 1214 16 18 20 22 2426 28 30 32 34 3638 40 42 44 46 48然后按下式置換行標志Irow(n)對于n=1,2,…,P1-1irow(n)=α1n+β1mod(P1)間縮irow(n)>N1因此,對于本例的行1,2,3和4irow(1)=21+1mod 5=4 mod 5=4irow(2)=22+1mod 5=8 mod 5=3irow(3)=23+1mod 5=16 mod 5=1irow(4)=24+1mod 5=32 mod 5=2這樣,前者的行l(wèi)變?yōu)樾?,行2變?yōu)樾?,依次類推,得出26 28 30 32 34 3638 40 42 44 46 4814 16 18 20 22 2402 04 06 08 10 12接下來按下式置換列標志icol(n)對于n=1,2,…,P2-1icol(n)=α2n+β2mod(P2)間縮icol(n)>N2因此,對于本例的行1,2,3,4,5和6icol(1)=31+3mod 7= 81 mod 7=4icol(2)=32+3mod 7= 243 mod 7=5icol(3)=33+3mod 7= 729 mod 7=1icol(4)=34+3mod 7=2187 mod 7=3icol(5)=35+3mod 7=6561 mod 7=2icol(6)=36+3mod 7=19683 mod 7=6這樣,前者的列1變?yōu)榱?,列2變?yōu)榱?,依次類推,得到30 34 32 26 28 3642 46 44 38 40 4818 22 20 14 16 2406 10 08 02 04 12接著對行循環(huán)移動β1行(1行),得出42 46 44 38 40 4818 22 20 14 16 2406 10 08 02 04 1230 34 32 26 28 36再對列循環(huán)移動β2列(3列),得出38 40 48 42 46 4414 16 24 18 22 2002 04 12 06 10 0826 28 36 30 34 32逐列讀出交錯的偶數據塊,得出交錯的輸出標志38,14,02,26,40,16,04,28,48,24,12,36,42,18,06,30,46,22,10,34,44,20,08,32。
應用同樣的處理使奇數據塊交錯(在研究的48元數據塊中的24個奇數元)。按預定順序重新組合交錯的陪集。規(guī)模不便于以數字處理的數據塊可以裝填成便于置換的規(guī)模,置換后可以廢棄裝填位置。例如,本例中,45元的數據塊在置換前可以擁有被添加的額外的元46、47和48,置換后可以廢棄元46、47和48。
這樣,對特定規(guī)模(這里為24)的基本代數交錯器構成塊給出了參數,這些參數可以表示成兀{α1,α2,β1,β2},其中兀包含該交錯器數據塊,而根{α1,α2}和移位{β1,β2}可按不同的優(yōu)化標準選擇,這類標準為某個代數交錯器制定并對構成塊規(guī)模改成其最優(yōu)值。
圖2示出一例應用此類陪集交錯器的Turbo編碼器。本例中,把輸入序列分成兩個陪集,一個包括該輸入序列的偶數位,另一個包括奇數位。元204與206是將每個第二元傳給它們的十進位器。在通路中,單位延遲202只結合十進位器204與206之一,其作用是將包括奇數系統(tǒng)位(1,3,…)序列的陪集傳至交錯器構成塊210,而將包括偶數系統(tǒng)位序列的陪集傳至交錯器構成塊208。本領域的技術人員理解,可以使用其它傳送方法。
開關108與212的開始位置被初始化成圖2所示的位置。然后與通過圖2中Turbo編碼器的位流同步地開關。這樣,開關212重建輸入編碼器104的單個數據塊,包括交錯器210輸出的第一元、交錯器208輸出的第一元、交錯器210輸出的第二元,等等。在不設開關108時,圖2的結構將輸出一比率R=1/3(對每個系統(tǒng)位輸入,將輸出一個系統(tǒng)位上兩個Turbo位)的位流。開關108間縮來自編碼器102與104各自的交替Turbo位,因而輸出的比率R=1/2。
選用規(guī)模N0=N/2的代數交錯器構成塊(陪集),N是準備交錯的塊的規(guī)模。把N0值選為N/2是一種設計選擇,本領域的技術人員理解,也可選用其它構件塊規(guī)模。然后對每個構件塊指定行數N1與列數N2,且N1×N2=N0。對第一構件塊,選擇的參數為{α1,α2,0,0},第二構件塊選擇的參數為{α3,α4,β1,β2}。根據Turbo碼的性能,用適當的值對參數化的交錯器優(yōu)化。表1列出一組對cdma2000中規(guī)定的Turbo碼所確定的優(yōu)化參數。
表1在本發(fā)明的另一些實施過程中,可作一次以上的陪集分割。上例中,偶陪集的列1,2,3,4,5和6被置換成列4,5,1,3,2和6,而且還可作陪集分割。即,把新的第一、第三和第五列取作一個陪集,而把新的第二、第四和第六列取作另一陪集,由此生成兩個陪集30 32 28 34 26 3642 44 40 和 46 38 4818 20 16 22 14 2406 08 04 10 02 12然后像上例那樣,使每個陪集作行與列循環(huán)移位,在本發(fā)明的其它實施過程中,每次行或列移位都可使用不同的值,即β值可以與行無關,或與列無關,或與行和列都無關。不丟失Turbo碼位的間縮的Turbo碼以陪集數為2實施本發(fā)明的陪集分割,一個附帶優(yōu)點在于,得到特定比率R的間縮(由圖2的開關108實現)將不間縮對應于某一特定系統(tǒng)位的兩個Turbo碼位。圖3示出,對于圖1的常規(guī)Turbo編碼器,5個系統(tǒng)位包含S1~S5,以系統(tǒng)位S2為例,其對應的Turbo碼位T12與T22在間縮中都丟失了(對于某種假設的交錯位順序)。由于這些位流之一是相對于另一位流交錯的,所以無法保證不會出現這種情況,當在目的地譯碼時,正確地解釋系統(tǒng)位2的概率減少了。
根據本發(fā)明,其中輸入序列分為偶序列與奇序列,對每個序列分別交錯,而且以后重新把序列組合起來,每個系統(tǒng)位在間縮后將保持一個其對應的Turbo碼位。
再者,可將單個偽隨機序列發(fā)生器(如m序列、M序列、Gold序列、kasami序列等)用作交錯器構件塊,或像圖4所示那樣,可用兩個m序列發(fā)生器408與410結合起來對陪集分割形成交錯器。
這樣將會看到,本發(fā)明提供的交錯處理能有利地應用于Turbo編碼器對有限規(guī)模的幀進行編碼。本領域的技術人員顯然理解,圖2和4示出的結構可提供帶陪集分割的Turbo編碼器。
應該理解,可對上述結構和前述操作順序加以更改而不偏離本發(fā)明的范圍。因此,上述描述或附圖示出的所有內容僅僅作為示例,并無限制的含義。
權利要求
1.一種置換數據元的數據塊的方法,其特征在于,包括下述步驟將所述數據塊分成多個陪集;置換每個陪集;及以預定順序組合所述被置換陪集的元而形成置換數據塊。
2.如權利要求1所述的方法,其特征在于,所述數據塊含N個數據元,N是大于1且可被n整除的正整數,n是大于1的正整數;及將所述數據塊分成陪集的步驟,包括對在所述數據塊中其相對位置有一公共值(N模(n))的n個陪集元都賦值。
3.如權利要求2所述的方法,其特征在于,n值為2,因而第一陪集包含所述數據塊中的所有奇數元,而第二陪集包含所述數據塊中的所有偶數元。
4.如權利要求1所述的方法,其特征在于,置換各陪集的步驟包括將各陪集逐行讀入有N1列、N2行的陣列,N1×N2等于N/n,N是所述數據塊中的元數,n是陪集數;選擇質數P1<N1和P2<N2;確定P1與P2的根α1與α2;選擇β1與β2值;將所述陣列的行標志作為α1與β1的函數而置換;將所述陣列的列標志作為α2與β2的函數而置換;將所述陣列的諸行循環(huán)移動β1行;將所述陣列的諸列循環(huán)移動β2列;及逐列讀出所述陣列的各陪集。
5.如權利要求1所述的方法,其特征在于,置換各陪集的步驟包括將各陪集逐行讀入有N1列、N2行的陣列,N1×N2等于N/n,N是所述數據塊中的元數,n是陪集數;選擇質數P1<N1和P2<N2;確定P1與P2的根α1與α2;選擇β1與β2值;將所述陣列的行標志作為α1與β1的函數而置換;將所述陣列的列標志作為α2與β2的函數而置換;將所述陣列的各行循環(huán)移動預定的行數;將所述陣列的各列循環(huán)移動預定的列數;及逐列讀出所述陣列的各陪集。
6.如權利要求1所述的方法,其特征在于,置換各陪集的步驟包括按各陪集產生一個m序列。
7.一種由系統(tǒng)元流生成Turbo碼的方法,其特征在于,它包括下述步驟在第一編碼器中對系統(tǒng)諸元編碼而生成第一Turbo元流;將所述系統(tǒng)元流分成多個陪集;置換各陪集;以預定順序組合所述被置換的陪集而形成置換系統(tǒng)元流;在第二編碼器中對置換系統(tǒng)元編碼而生成第二Turbo元流;及以預定順序組合所述第一與第二Turbo元流。
8.如權利要求7所述的方法,其特征在于,將所述系統(tǒng)元流分成陪集的步驟,包括對在所述流中其相對位置有一公共值(N模(n))的n個陪集元都賦值,N是所述系統(tǒng)元流中的元數。
9.如權利要求7所述的方法,其特征在于,所述組合所述第一與第二NTurbo元流的步驟,包括間縮所述第一與第二Turbo元流以保持預定的系統(tǒng)元與Turbo元的比率。
10.如權利要求9所述的方法,其特征在于,所述預定比率是1/2,n值為2,因而所述Turbo碼包括至少一個對應于各系統(tǒng)元的元。
11.用于置換數據元的數據塊的設備,其特征在于,它包括將所述數據塊分成多個陪集的裝置;置換各陪集的裝置;及以預定順序組合所述置換陪集的諸元而形成置換數據塊的裝置。
12.如權利要求11所述的設備,其特征在于,所述數據塊包含N個數據元,N是大于1且可被n整除的正整數,n是大于1的正整數;及將所述數據塊分成陪集的裝置對在所述數據塊中其相對位置有一公共值(N模(n)的n個陪集元都賦值。
13.如權利要求12所述的設備,其特征在于,n值為2,因而第一陪集包含所述數據塊中所有的奇數元,而第二陪集包含所述數據塊中所有的偶數元。
14.如權利要求11所述的設備,其特征在于,置換各陪集的裝置包括將各陪集逐行讀入N1列與N2行的陣列裝置,其中N1×N2等于N/n,N是所述數據塊中的元數,n是陪集數;選擇質數P1<N1和P2<N2的裝置;確定P1與P2的根α1與α2的裝置;選擇β1與β2值的裝置;置換所述陣列作為α1與β1函數的行標志的裝置;置換所述陣列作為α2與β2函數的列標志的裝置;將所述陣列的諸行循環(huán)移動β1行的裝置;將所述陣列的諸列循環(huán)移動β2列的裝置;及逐列讀出所述陣列的各陪集的裝置。
15.如權利要求11所述的設備,其特征在于,置換各陪集的裝置包括將各陪集逐行讀入N1列與N2行的陣列裝置,其中N1×N2等于N/n,N是所述數據塊中的元數,n是陪集數;選擇質數P1<N1和P2<N2的裝置;確定P1與P2的根α1與α2的裝置;選擇β1與β2值的裝置;置換所述陣列作為α1與β1函數的行標志的裝置;置換所述陣列作為α2與β2函數的列標志的裝置;將所述陣列中各行循環(huán)移動預定行數的裝置;將所述陣列中各列循環(huán)移動預定列數的裝置;及逐列讀出所述陣列中各陪集的裝置。
16.如權利要求11所述的設備,其特征在于,置換各陪集的裝置包括按各陪集產生一個m序列的裝置。
17.一種由系統(tǒng)元流生成Turbo碼的設備,其特征在于,它包括對系統(tǒng)元編碼而生成第一Turbo元流的裝置;將所述系統(tǒng)元流分成多個陪集的裝置;置換各陪集的裝置;以預定順序組合所述被置換陪集而形成置換的系統(tǒng)元流的裝置;對置換的系統(tǒng)元編碼而生成第二Turbo元流的裝置;及以預定順序組合所述第一與第二Turbo元流的裝置。
18.如權利要求17所述的設備,其特征在于,將所述系統(tǒng)元流分成諸陪集的裝置,對在所述流中其相對位置有一公共值(N模(n))的n個陪集元都賦值,其中N是所述系統(tǒng)元流中的元數。
19.如權利要求17所述的設備,其特征在于,組合所述第一與第二N Turbo元流的裝置,間縮所述第一與第二Turbo元流以保持預定的系統(tǒng)元/Turbo元的比率。
20.如權利要求19所述的設備,其特征在于,所述預定比率為1/2,n值為2,因而所述Turbo碼包括至少一個對應于各系統(tǒng)元的元。
21.一種置換數據元的數據塊的系統(tǒng),其特征在于,它包括將所述數據塊分成多個陪集的分割邏輯;置換各陪集的置換邏輯;及以預定順序組合所述被置換陪集諸元而形成置換數據塊的組合邏輯。
22.如權利要求21所述的系統(tǒng),其特征在于所述數據塊包含N個數據元,N是大于1且可被n整除的正整數,n是大于1的正整數;及所述分割邏輯對在所述數據塊中其相對位置有一公共值(N模(n))的n個陪集元都賦值。
23.如權利要求22所述的系統(tǒng),其特征在于,n值為2,因而第一陪集包含所述數據塊的所有奇數元,而第二陪集包含所述數據塊的所有偶數元。
24.如權利要求21所述的系統(tǒng),其特征在于所述置換邏輯包括讀入邏輯,將各陪集逐行存入N1列、N2行的陣列,N1×N2等于N/n,其中N是所述數據塊的元數,n是陪集數;算法邏輯,被配置成選擇質數P1<N1和P2<N2;確定P1與P2的根α1與α2;及選擇β1與β2值;數據處理邏輯,被配置成置換所述陣列的中作為α1與β1函數的行標志;置換所述陣列的中作為α2與β2的函數列標志;將所述陣列的諸行循環(huán)移動β1行;將所述陣列的諸列循環(huán)移動β2列;及讀出邏輯,逐列讀出所述陣列的各陪集。
25.如權利要求21所述的系統(tǒng),其特征在于,所述置換邏輯包括讀入邏輯,將各陪集逐行存入N1列、N2行的陣列,N1×N2等于N/n,其中N是所述數據塊的元數,n是陪集數;算法邏輯,被配置成選擇質數P1<N1和P2<N2;確定P1與P2的根α1與α2;及選擇β1與β2值;數據處理邏輯,被配置成置換所述陣列的中作為α1與β1函數的行標志;置換所述陣列的中作為α2與β2的函數列標志;將所述陣列中各行循環(huán)移動預定的行數;及將所述陣列中各列循環(huán)移動預定的列數,及讀出邏輯,逐列讀出所述陣列的各陪集。
26.如權利要求21所述的系統(tǒng),其特征在于,置換邏輯按各陪集生成一個m序列。
27.一種由系統(tǒng)元流生成Turbo碼的系統(tǒng),其特征在于,它包括配置成對系統(tǒng)元編碼而生成第一Turbo元流的第一編碼器;配置成將所述系統(tǒng)元流分成多個陪集的分割邏輯;配置成置換各陪集的置換邏輯;按預定順序組合所述被置換陪集而形成置換的系統(tǒng)元流的第一組合邏輯;對置換的系統(tǒng)元編碼而生成第二Turbo元流的第二編碼器;及按預定順序組合所述第一與第二Turbo元流的第二組合邏輯。
28.如權利要求27所述的系統(tǒng),其特征在于,所述分割邏輯對在所述流中其相對位置有一公共值(N模(n))的n個陪集元都賦值,其中N是所述系統(tǒng)元流的元數。
29.如權利要求27所述的系統(tǒng),其特征在于,所述第二組合邏輯間縮第一與第二Turbo元流,以保持預定的系統(tǒng)元/Turbo元的比率。
30.如權利要求29所述的系統(tǒng),其特征在于,所述預定的比率是1/2,n值為2,因而所述Turbo碼包括至少一個對應于各系統(tǒng)元的元。
全文摘要
通過把數據塊分成預定規(guī)模的陪集,運用對預定規(guī)模選擇并優(yōu)化了其參數的交錯器對各陪集作置換,再按預定順序重新組合被置換的陪集的元,有利于對任何規(guī)模的數據塊構建一種Turbo碼交錯器。通過對陪集數選用值n,并對其在數據塊的位置有公共值的各陪集賦值,可將數據塊分成陪集,該公共值為數據塊的規(guī)模與n的模??蓪χ脫Q的輸出作間縮,以保持期望的比率。
文檔編號H03M13/45GK1321364SQ99810258
公開日2001年11月7日 申請日期1999年9月29日 優(yōu)先權日1998年9月29日
發(fā)明者李斌, 童文, 崔健, 汪瑞 申請人:諾泰網絡有限公司