專利名稱:一種LTE Turbo編碼器的制作方法
技術領域:
本實用新型涉及編碼技術領域及第四代移動通信領域,尤其涉及一種LTE Turbo 編碼器。
背景技術:
Turbo 碼由于優(yōu)越的誤碼及誤塊性能,被 3GPP LTE(3rd GenerationPartnership Project Long Term Evolution,第三代合作伙伴計劃長期演進)TS36. 212V8. 5. O協(xié)議 所采用。在3GPP LTE協(xié)議中,Turbo編碼器的內部結構如圖1所示,其中,Xk表示Turbo 編碼器輸出的系統(tǒng)碼,X’ k表示交織后的系統(tǒng)碼,Zk及z’ k分別表示Turbo編碼器輸 出的第一校驗碼和第二校驗碼;D表示Turbo編碼器的內部寄存器。它包括兩個8狀 態(tài)的成員編碼器(Constituent Encoder)(即RSCl和RSC2電路)和一個內部交織器 (InternalInterleaver),編碼速率(即輸入輸出比)為1/3。LTE Turbo編碼器的內交織 器采用了不同于其他標準的一種特殊交織方式,交織器的輸入與輸出之間的對應關系為Ci' = Cn ⑴,(i = 0,…,K-1)Π ⑴=mocKfiXi+^Xi2, K)其中,cQ,Cl,c2,c3,…,Cih是Turbo編碼器中的內部交織器的輸入數(shù)據(jù),Ct/, C1',…,cK_/為內部交織器的輸出數(shù)據(jù),其中40彡K彡6144,參數(shù)的取值根據(jù)K 值變化,具體對應關系參考3GPP LTE TS 36. 212V8. 5. O中5. 1. 3. 2。如圖2所示,典型的Turbo編碼器中主要包括主控制模塊201、內交織模塊202、 存儲模塊203及RSC(Recursive System Code,遞歸系統(tǒng)卷積碼)編碼模塊204。其中主控制模塊201 主要實現(xiàn)對內交織模塊202、存儲模塊203及RSC編碼模塊204 的整體控制;內交織模塊202 主要用于產生交織地址;存儲模塊203 用于存儲數(shù)據(jù),并根據(jù)寫地址和讀地址,寫入或讀出對應數(shù)據(jù);RSC編碼模塊204 主要用于對交織后的數(shù)據(jù)及未交織的數(shù)據(jù)實現(xiàn)RSC編碼。LTE Turbo編碼器的處理過程為主控制模塊201觸發(fā)存儲模塊203接收并存儲 一個碼塊包含的所有順序數(shù)據(jù)后,觸發(fā)內交織模塊202計算出交織地址并發(fā)送到存儲模塊 203,主控制模塊201產生順序遞增地址后也發(fā)送到存儲模塊203 ;RSC編碼模塊204根據(jù)交 織地址及順序遞增地址從存儲模塊203中讀取交織數(shù)據(jù)和順序數(shù)據(jù)后,對交織數(shù)據(jù)和順序 數(shù)據(jù)進行RSC編碼。一個碼塊中包含有多個比特(最大為6144bits)的數(shù)據(jù)。按照上述單比特的處理 方式,以最大碼塊(6144bits)為例,僅接收數(shù)據(jù)就需6144個時鐘周期,如果不考慮交織地 址產生時間和RSC編碼時間,再讀出數(shù)據(jù)又需6144個時鐘周期,這樣,處理一個碼塊的時間 就相當長。即使采用乒乓操作,實現(xiàn)數(shù)據(jù)的同時讀寫,處理一個最大碼塊也需要6144個時 鐘周期以上。通過上述分析可知,在輸入比特較多的情況下,對一個碼塊進行Turbo編碼處理
3的延時會非常大,因此不可避免的會給整個下行鏈路處理帶來較大的延時,而較大的延時 又會進一步引起基帶的處理性能低下。
實用新型內容本實用新型要解決的技術問題是提供一種LTE Turbo編碼器,以克服單比特的 Turbo編碼器處理時間過長而造成的下行處理時延過大的問題。為解決上述問題,本實用新型提供了一種LTE Turbo編碼器,包括主控制器、內 交織器、存儲器及RSC編碼器;所述主控制器分別與所述內交織器、所述存儲器及所述RSC編碼器相連,其對上 述各部分進行控制,產生順序遞增地址并在每一時鐘將N個順序遞增地址發(fā)送到所述存儲 器;所述內交織器與所述存儲器及所述主控制器相連,其計算出交織地址,并在所述 主控制器發(fā)送順序遞增地址的同時在每一時鐘向所述存儲器并行地輸出N個交織地址;所述存儲器與所述主控制器及所述內交織器相連,其內部至少包含N個存儲單 元;在所述主控制器的控制下,N個存儲單元同時進行寫操作,每一存儲單元在每一時鐘寫 入Ibit數(shù)據(jù);其根據(jù)接收到的所述主控制器產生的N個順序遞增地址和N個交織地址并行 地將本地保存的數(shù)據(jù)讀出并對應地輸出到所述RSC編碼器中的第一 RSC單元和第二 RSC單 元;所述RSC編碼器與所述存儲器及所述主控制器相連,其中包括所述第一 RSC單元、 所述第二 RSC單元及所述RSC控制單元;所述第一 RSC單元對在每一時鐘接收到的N比特 未交織數(shù)據(jù)進行RSC編碼后發(fā)送到RSC控制單元,第二 RSC單元對每一時鐘接收到的N比 特交織數(shù)據(jù)進行RSC編碼后發(fā)送到RSC控制單元,RSC控制單元對第一 RSC單元和第二 RSC 單元發(fā)來的數(shù)據(jù)進行輸出控制,在每一時鐘同時輸出N比特系統(tǒng)碼、N比特第一校驗碼及N 比特第二校驗碼。進一步地,上述編碼器還可具有以下特征所述存儲器中除上述N個存儲單元外還包括另外N個存儲單元時,所述另外N個 存儲單元與上述N個存儲單元進行乒乓操作,同時對存儲器內的數(shù)據(jù)進行讀寫操作。進一步地,上述編碼器還可具有以下特征所述內交織器中包括相連的初值存儲單元和遞推計算單元;其中,初值存儲單元 中保存有計算交織地址所需的初始值;遞推計算單元根據(jù)交織地址計算公式及初值存儲單 元中保存的初始值計算交織地址,并輸出到所述存儲器中。進一步地,上述編碼器還可具有以下特征當N = 8時,所述初值存儲單元中保存的初始值為!110(1(憂+4),K)、mod(2f2,K)、 mod((8^+64^), K), mod(16f2, K)及 mod(128f2,K);其中,K 為碼塊大小;所述遞推單元利用公式Π (i+1) = mod(( Π (i) +mod((mod(f^f2, K) +mod(2if2, K)), K)), K)先后通過遞 推計算出Π (1) Π (7)的值;根據(jù)公式Π (i+8) = mod (( Π (i)+mod ((mod (8f\+64f2,K)+mod (16if2,K)),K)),K)先后通過遞推計算出Π (8) Π (15)的值。進一步地,上述編碼器還可具有以下特征所述初值存儲單元中的數(shù)據(jù)位寬為13bits,深度為940,地址寬度為10。與現(xiàn)有技術相比,本實用新型提供了一種基于3GPP LTE協(xié)議的Turbo編碼器并行 設計方案,其內部采用乒乓操作及并行編碼處理的方式,大大的縮短了 Turbo編碼的處理 時間,提高了 Turbo編碼的效率,從而減小了 LTE鏈路下行的處理時延,提高了 LTE數(shù)據(jù)鏈 路的處理能力;本實用新型裝置結構清晰,且可以采用通用的低成本電路器件實現(xiàn),以低成 本實現(xiàn)高效率的Turbo編碼運算,因此具有較高的商業(yè)價值。
圖1為現(xiàn)有技術中1/3速率Turbo編碼器結構圖;圖2為現(xiàn)有技術中單比特的Turbo編碼器的典型結構示意圖;圖3為本實用新型實施例中8比特并行處理的Turbo編碼器模塊的內部結構示意 圖;圖4為本實用新型實施例中內交織模塊中交織地址遞推產生的示意圖;圖5為本實用新型實施例中初值存儲單元的結構示意圖;圖6為本實用新型實施例中LTE Turbo編碼器中單比特卷積碼編碼器實現(xiàn)框圖圖7本實用新型實施例中寫數(shù)據(jù)操作處理方法的流程圖;圖8為本實用新型實施例中讀數(shù)據(jù)操作處理方法的流程圖。
具體實施方式
下面將結合附圖及實施例對本實用新型的技術方案進行更詳細的說明。本實用新型LTE Turbo編碼器是基于圖2結構的基礎上,實現(xiàn)多比特并行處理。本實用新型所述的并行LTE Turbo編碼器中包括主控制器、內交織器、存儲器及 RSC編碼器;其中主控制器分別與內交織器、存儲器及RSC編碼器相連,其對上述各部分進行控制, 其產生順序遞增地址并在每一時鐘將N個順序遞增地址發(fā)送到存儲器;內交織器與存儲器及主控制器相連,其計算出交織地址,并在主控制器發(fā)送順序 遞增地址的同時在每一時鐘向存儲器并行地輸出N個交織地址;存儲器與主控制器及內交織器相連,其內部至少包含N個存儲單元,在主控制器 的控制下,N個存儲單元同時進行寫操作,每一存儲單元在每一時鐘寫入Ibit數(shù)據(jù);根據(jù)接 收到的主控制器產生的N個順序遞增地址和N個交織地址并行地將本地保存的數(shù)據(jù)讀出并 對應地輸出到RSC編碼器中的第一 RSC單元和第二 RSC單元;RSC編碼器與存儲器及主控制器相連,其中包括第一 RSC單元、第二 RSC單元及 RSC控制單元,第一 RSC單元對在每一時鐘接收到的N比特未交織數(shù)據(jù)進行RSC編碼后發(fā)送 到RSC控制單元,第二 RSC單元對每一時鐘接收到的N比特交織數(shù)據(jù)進行RSC編碼后發(fā)送 到RSC控制單元,RSC控制單元對第一 RSC單元和第二 RSC單元發(fā)來的數(shù)據(jù)進行輸出控制, 在每一時鐘同時輸出N比特系統(tǒng)碼、N比特第一校驗碼及N比特第二校驗碼。此外,當存儲器中除上述N個存儲單元外還包括另外N個存儲單元時,該另外N個存儲單元與上述N個存儲單元進行乒乓操作,同時對存儲器內的數(shù)據(jù)進行讀寫。此外,在內交織器中還可包括相連的初值存儲單元和遞推計算單元;其中,初值存 儲單元中保存有計算交織地址所需的初始值;遞推計算單元用于根據(jù)交織地址計算公式及 初值存儲單元中保存的初始值計算交織地址,并輸出到存儲器中。下面以8比特并行處理為例對LTE Turbo編碼器的并行實現(xiàn)方案作介紹,但其實 現(xiàn)思路并不只限于8比特并行的實現(xiàn),也適用于4比特、16比特、32比特等多比特并行處理 的實現(xiàn)。圖3給出了 8比特并行處理的LTE Turbo編碼器的內部結構圖,其內部包括以下 模塊主控制器301 主要實現(xiàn)對內交織器302、存儲器303及RSC編碼器304的整體控 制。內部主要包括K值有效判斷單元305、寫操作控制單元306、讀操作控制單元307及其它 控制功能單元308。K值有效判斷單元305用于判斷上游模塊輸入的碼塊大小K值是否為 3GPP LTE TS 36. 212V8. 5. 0中5. 1. 3. 2中所給出的值,其中,上游模塊是指與Turbo編碼器 直接相連的且作為流入Turbo編碼器內部的數(shù)據(jù)的輸出端的模塊;寫操作控制單元306,用 于對存儲器303產生順序寫地址及進行選擇寫數(shù)據(jù)控制;讀操作控制單元307,用于對存儲 器303產生順序遞增地址及選擇讀數(shù)據(jù)控制;其它控制功能單元308,主要實現(xiàn)對上下游模 塊的握手及對內交織器302、存儲器303及RSC編碼器304使能信號等的控制,其中,下游模 塊是指與Turbo編碼器直接相連的且作為流出Turbo編碼器內部的數(shù)據(jù)的輸入端的模塊;內交織器302 內部主要包括初值存儲ROM (Read-Only Memory,只讀存儲器)309 及遞推計算單元310。初值存儲ROM 309用于存儲進行交織地址遞推的初值;遞推計算單 元310用于根據(jù)初值存儲ROM 309提供的初值并行產生交織地址,即完成交織地址Π (i) = mod(f1Xi+f2Xi2, K)的8路并行計算功能,使每個時鐘可以同時輸出8個交織地址, Π (8η)、Π (8η+1)、Π (8η+2)、Π (8η+3)、Π (8η+4)、Π (8η+5)、Π (8η+6)、Π (8η+7);存儲器303 內部主要包括有兩套存數(shù)據(jù)的雙口 RAM (Random-AccessMemory,隨機 存取存儲器)——第一 RAM 311和第二 RAM 312,每套RAM包含有8塊深度為768、寬度為 Ibit的雙口 RAM。通過兩套雙口 RAM進行乒乓操作,實現(xiàn)對數(shù)據(jù)的同時讀寫。在寫數(shù)據(jù)操 作時,可一次寫入Sbits數(shù)據(jù);在讀數(shù)據(jù)操作時,可同時接收讀操作控制單元307輸入的順 序遞增地址和內交織器302產生的交織地址,同時輸出未經(jīng)交織后的數(shù)據(jù)(Sbits)和交織 過的數(shù)據(jù)(Sbits);RSC編碼器304 內部主要由第一 RSC單元313、第二 RSC單元314及RSC控制單 元315組成,第一 RSC單元313負責對未交織數(shù)據(jù)(Sbits)進行并行RSC編碼;第二 RSC單 元314負責對交織數(shù)據(jù)(Sbits)進行并行RSC編碼;RSC控制單元315負責對第一 RSC單元 313和第二 RSC單元314的RSC編碼后數(shù)據(jù)進行輸出控制,同時輸出8bits系統(tǒng)碼、8bits 第一校驗碼及Sbits第二校驗碼。利用本實用新型LTE Turbo編碼器處理方法包括以下步驟步驟A.主控制器301將自身置于空閑等待狀態(tài),上游模塊檢測到后,發(fā)送第一個 數(shù)據(jù)指示信號,并同時發(fā)送碼塊大小K及第一個數(shù)據(jù);步驟B.主控制器301指示存儲器303接收數(shù)據(jù),并開始往寫計數(shù)器中寫計數(shù),若 寫計數(shù)器計數(shù)值小于K,則繼續(xù)寫數(shù)據(jù);否則,跳到步驟C ;在寫數(shù)據(jù)和寫計數(shù)的同時,對K
6值進行判斷,若K值無效,即回到步驟A,主控制器即回到空閑狀態(tài),等待下一個數(shù)據(jù)塊的到 來;否則繼續(xù)寫計數(shù)與寫數(shù)據(jù),并在寫計數(shù)器計數(shù)值等于K時,跳到步驟C ;步驟C.主控制器301開始檢測下游模塊是否處于等待狀態(tài),若是,則執(zhí)行步驟D ; 否則,繼續(xù)執(zhí)行步驟C;步驟D.主控制器301觸發(fā)內交織器302,并將K值傳給內交織器302 ;步驟E.內交織器302開始計算,計算出交織地址后,通知主控制器301 ;步驟F.主控制器301產生讀使能信號以觸發(fā)存儲器303,并開始讀計數(shù),即順序讀 數(shù)據(jù)地址,主控制器301控制自身將產生的順序遞增地址與內交織器302遞推產生的交織 地址同時輸入存儲器303,并使能RSC編碼模塊304 (即向其發(fā)送使能信號);步驟G.存儲器303根據(jù)接收到的順序遞增地址及交織地址同時輸出未交織數(shù)據(jù) 和交織數(shù)據(jù),RSC編碼器304接收從存儲器303輸出的未交織數(shù)據(jù)和交織后的數(shù)據(jù)并分別 對這些數(shù)據(jù)進行RSC編碼,然后將編碼后數(shù)據(jù)輸出給LTE Turbo編碼器的下游模塊;步驟H.當主控制器301檢測到下游模塊有請求暫停輸出數(shù)據(jù)的信號,即暫停輸出 新的數(shù)據(jù);否則一直輸出數(shù)據(jù),若讀計數(shù)器計數(shù)值計到K,則跳入步驟I,否則繼續(xù)上面的步 驟F;步驟I.主控制器301把自身置為空閑等待狀態(tài),返回步驟A。圖4是本實用新型內交織器的交織地址遞推產生示意圖。LTE中Turbo編碼內部的內交織器的輸入即cQ,Cl,c2,c3,…,Cim,其中 40≤K≤6144,輸出記為Ct/ ,c/,…,cK_/,它們之間滿足以下算法關系Ci' = Cn ⑴,(i = 0,K-1)Π ⑴=mod(f1Xi+f2Xi2, K)要完成交織地址Π (i) =mod(f1Xi+f2Xi2,K)的8路并行計算功能,使每個時鐘 同時輸出 8 個交織地址,即 Π (8η), Π (8η+1)、Π (8η+2)、Π (8η+3)、Π (8η+4)、Π (8η+5)、 Π (8η+6)、Π (8η+7),本實用新型采用并行遞推的實現(xiàn)方案。根據(jù)上面LTE Turbo編碼器的內交織地址產生公式Π (i) = modX i+f2X i2, K),對于406144的碼塊值K,可以推導出Π (i+1) = mod (X (i+1) +f2 X (i+1)2),K)= mod(( Π (i)+mod((mod(f+f2, K)+mod(2if2, K)), K)), K) (1)Π (i+8) = mod (X (i+8) +f2 X (i+8)2),K)= mod(( Π (i)+mod((mod(8f1+64f3, K)+mod(16if2, K)), K)), K) (2)由上面的推導可以看出,Π (i+1)的結果可以由Π (i)、f\+f2*2if2的值求出。 其中對于固定的碼塊大小K,f\+f2是固定的,可以通過累加進行求解,而相應的 mod (^f2, K)和 mod(2f2,K)可以通過事先在 ROM 中保存 mod ((f Jf2),K)和 mod(2f2,K)的 值,然后根據(jù)碼塊大小K值來查詢保存的相應地址中的值來遞推計算進而得到Π (i+1)。同理Π(i+8)可以通過事先在 ROM 中保存 mod((84+64&),K)、mod(16f2,K)和 mod(128f2, K)的值,然后根據(jù)碼塊大小K值來查詢保存的相應地址來讀取并遞推計算出。8路并行交織的地址可以由Π (0) = 0根據(jù)推導關系式⑴推導出Π (1),根據(jù)推 導關系式(2)推導出第一路的輸出地址Π (8),然后利用第一路的地址來推導第二路輸出 地址,利用第二路輸出地址來推導出第三路輸出地址,8路并行交織的地址遞推過程如圖4所示。根據(jù)上面的分析和圖4推導,可以看出,內交織器需要5個部分ROM存取初始數(shù) 據(jù),分別存儲 mod ((f^f2),K)、mod(2f2,K)、mod ((8f\+64f2),K)、mod(16f2,K)及 mod(128f2, K)的初值。圖5為本實用新型中初值存儲單元的結構示意圖。該單元的數(shù)據(jù)位寬為13bits, 深度為940,地址寬度為10。地址0 187對應存儲的數(shù)據(jù)是mocK^+f》,K)的初值;地 址188 375對應存儲的數(shù)據(jù)是mod(2f2,K)的初值;地址376 563對應存儲的數(shù)據(jù)是 mod ((8^+64^),K)的初值;地址564 751對應存儲的數(shù)據(jù)是mod(16f2, K)的初值;地址 752 939對應存儲的數(shù)據(jù)是mod(128f2,K)的初值。圖6為Turbo編碼器中單比特卷積碼編碼器實現(xiàn)框圖。要實現(xiàn)8路并行的RSC編 碼,本實用新型采用以下并行的實現(xiàn)方案。由圖6,有
權利要求1.一種LTE Turbo編碼器,其特征在于,包括主控制器、內交織器、存儲器及RSC編碼器;所述主控制器分別與所述內交織器、所述存儲器及所述RSC編碼器相連,其對上述各 部分進行控制,產生順序遞增地址并在每一時鐘將N個順序遞增地址發(fā)送到所述存儲器;所述內交織器與所述存儲器及所述主控制器相連,其計算出交織地址,并在所述主控 制器發(fā)送順序遞增地址的同時在每一時鐘向所述存儲器并行地輸出N個交織地址;所述存儲器與所述主控制器及所述內交織器相連,其內部至少包含N個存儲單元; 在所述主控制器的控制下,N個存儲單元同時進行寫操作,每一存儲單元在每一時鐘寫入 Ibit數(shù)據(jù);其根據(jù)接收到的所述主控制器產生的N個順序遞增地址和N個交織地址并行地 將本地保存的數(shù)據(jù)讀出并對應地輸出到所述RSC編碼器中的第一 RSC單元和第二 RSC單 元;所述RSC編碼器與所述存儲器及所述主控制器相連,其中包括所述第一 RSC單元、所述 第二 RSC單元及所述RSC控制單元;所述第一 RSC單元對在每一時鐘接收到的N比特未交 織數(shù)據(jù)進行RSC編碼后發(fā)送到RSC控制單元,第二 RSC單元對每一時鐘接收到的N比特交 織數(shù)據(jù)進行RSC編碼后發(fā)送到RSC控制單元,RSC控制單元對第一 RSC單元和第二 RSC單 元發(fā)來的數(shù)據(jù)進行輸出控制,在每一時鐘同時輸出N比特系統(tǒng)碼、N比特第一校驗碼及N比 特第二校驗碼。
2.如權利要求1所述的編碼器,其特征在于,所述內交織器中包括相連的初值存儲單元和遞推計算單元;其中,初值存儲單元中保 存有計算交織地址所需的初始值;遞推計算單元根據(jù)交織地址計算公式及初值存儲單元中 保存的初始值計算交織地址,并輸出到所述存儲器中。
3.如權利要求2所述的編碼器,其特征在于,所述初值存儲單元為數(shù)據(jù)位寬為13bits,深度為940,地址寬度為10的存儲單元。
專利摘要本實用新型公開了一種LTE Turbo編碼器,包括主控制器、內交織器、存儲器及RSC編碼器;主控制器分別與內交織器、存儲器及RSC編碼器相連;內交織器與存儲器及主控制器相連;存儲器與主控制器及內交織器相連,其內部至少包含N個存儲單元;RSC編碼器與存儲器及主控制器相連,其中包括第一RSC單元、第二RSC單元及RSC控制單元。采用本實用新型可以大大的縮短了Turbo編碼的處理時間,提高Turbo編碼的效率,從而減小LTE鏈路下行的處理時延,提高LTE數(shù)據(jù)鏈路的處理能力;本實用新型裝置結構清晰,且可以采用通用的低成本電路器件實現(xiàn),以低成本實現(xiàn)高效率的Turbo編碼運算,因此具有較高的商業(yè)價值。
文檔編號H03M13/29GK201789496SQ20102011454
公開日2011年4月6日 申請日期2010年2月3日 優(yōu)先權日2010年2月3日
發(fā)明者劉合武 申請人:中興通訊股份有限公司