新四季網

一種高速Turbo解碼方法和裝置的製作方法

2023-06-08 17:38:41 2

專利名稱:一種高速Turbo解碼方法和裝置的製作方法
技術領域:
本發明涉及通信領域,尤其是涉及一種高速Turbo解碼方法和裝置。
背景技術:
目前,採用多入多出(MIMO, mult_in and mult_out)技術的HSPA+(high speed packet access plus,增強型高速分組接入技術)系統,其下行數據速率可以達到42Mbps。 這樣高的數據吞吐率對於下行解碼鏈條中的關鍵環節-Turbo (特博)解碼是一個巨大的挑 戰。 Turbo解碼器是HSPA+相關協議3GPP TS 25. 212定義的差錯控制機 制-HARQ(hybrid automatic request equipment,混合型自動重傳請求機制)中的重要功 能部件,解調器中得到的軟比特數據往往要在Turbo解碼器中經過多次迭代解碼,其解碼 延遲不僅取決於數據量,還取決於要求的解碼性能和解碼器結構。同時3GPP協議對數據在 下行解碼鏈路上的總延遲是有嚴格限定的,因此Turbo解碼器的解碼延遲時間往往成為整 個HSDPA業務的瓶頸,要提升下行分組業務的數據吞吐率,首先就得降低Turbo解碼器的譯 碼延遲。 現有Turbo解碼方案中只將"後向狀態運算"和"前向狀態運算"做並行化操作, "訓練運算"與"後向狀態運算"由同一個運算單元完成。首先做"訓練運算",得到訓練結果 後啟動"後向狀態運算"。這樣,解碼延遲時間必須將"訓練運算"周期運算在內。
在實現本發明過程中,發明人發現現有技術中至少存在如下問題訓練周期與狀 態運算周期串行排列,邏輯資源的使用效率低;解碼周期與訓練長度直接相關,訓練長度加 大則直接導致解碼延遲加長;當性能要求較長的訓練長度時,解碼延遲變得很大;若要提 升解碼器吞吐率則需要成倍數地增加邏輯資源,使成本明顯提高。

發明內容
本發明實施例提出一種高速Turbo解碼方法和裝置,以縮短解碼延遲。 —方面,本發明實施例提供一種高速Turbo解碼方法,該方法包括接收待解碼的
數據碼塊;將所述待解碼的數據碼塊以滑動窗長度為單位分成多個子數據塊;對所述子數
據塊進行Turbo解碼中訓練運算、後向狀態運算、前向狀態運算和外信息運算的並行操作
來得到解碼結果。 另一方面,本發明實施例提供一種高速Turbo解碼裝置,該裝置包括接收單元,
用於接收待解碼的數據碼塊;碼塊劃分單元,用於將所述待解碼的數據碼塊以滑動窗長度
為單位分成多個子數據塊;並行運算單元,用於對所述子數據塊進行Turbo解碼中訓練運
算、後向狀態運算、前向狀態運算和外信息運算的並行操作來得到解碼結果。 本發明實施例的有益效果在於,通過對子數據塊進行訓練運算、後向狀態運算、前
向狀態運算和外信息運算的並行操作,在保持高的解碼性能的同時,縮短了解碼延遲。
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例描述
中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些 實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還可以根據這些 附圖獲得其他的附圖。

圖1為本發明實施例一提供的一種高速Turbo解碼方法流程示意圖; 圖2為本發明實施例二提供的一種高速Turbo解碼方法流程示意圖; 圖3為本發明實施例二提供的高速Turbo解碼方法中的單次迭代周期內對存儲部
件以及運算部件的時間佔用流圖; 圖4為本發明實施例三提供的一種高速Turbo解碼裝置結構示意圖
圖5為本發明實施例四提供的一種高速Turbo解碼裝置結構示意圖
圖6為本發明實施例五提供的一種高速Turbo解碼器的結構示意圖
圖7為本發明實施例五提供的一種邏輯存儲單元的結構示意圖;
圖8為本發明實施例五提供的一種運算處理單元的結構示意圖;
圖9為本發明實施例五提供的一種運算處理單元和存儲單元的數據交互示意圖,
具體實施例方式
下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完 整地描述,顯然,所描述的實施例僅僅是本發明一部分實施例,而不是全部的實施例。基於 本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他 實施例,都屬於本發明保護的範圍。
實施例一 如圖1所示為本發明實施例一提供的一種高速Turbo解碼方法流程示意圖,該方 法包括如下步驟 S101 :接收待解碼的數據碼塊,該數據碼塊的接收步驟屬於現有技術,在此就不再 進行贅述了。 S102:將所述待解碼的數據碼塊以滑動窗長度為單位分成多個子數據塊,該滑動 窗長度一般以比特(bit)為單位,其數值可以預先設定。在本實施例中,這些子數據塊需要 存儲於一存儲單元內,為後續的各種解碼運算提供數據來源,該後續的解碼運算比如訓練 運算、後向狀態運算、前向狀態運算和外信息運算所用到的是數據碼塊的系統位信息、校驗 位信息和外信息等軟信息。 S103 :對所述子數據塊進行Turbo解碼中訓練運算、後向狀態運算、前向狀態運算 和外信息運算的並行操作來得到解碼結果。 上述Turbo解碼中的訓練運算、後向狀態運算、前向狀態運算和外信息運算需要
分別為各個運算模塊提供所需的輸入數據,這樣,如果僅通過一套存儲系統的話很難實現
上述四種運算的並行操作。因此,本發明實施例採用了多套存儲系統的方案來實現對上述
子數據塊進行Turbo解碼中訓練運算、後向狀態運算、前向狀態運算和外信息運算的並行
操作,使得各個存儲系統可以獨立地為運算模塊提供所需的輸入數據。 當然,隨著存儲系統的不同選擇,本發明實施例的方法可以有多種不同的實現方法,在本實施例中並不限定以何種具體的多存儲系統來實現本發明。 本發明實施例通過對子數據塊進行訓練運算、後向狀態運算、前向狀態運算和外
信息運算的並行操作,在保持高的解碼性能的同時,縮短了解碼延遲。 實施例二 如圖2所示為本發明實施例二提供的一種高速Turbo解碼方法流程示意圖,該方 法包括如下步驟 S201 :接收待解碼的數據碼塊。 S202 :將所述待解碼的數據碼塊以滑動窗長度為單位分成多個子數據塊。 步驟S201和S202和實施例一中相類似,在此就不再進行贅述了 。 S203:將所述子數據塊內的運算信息更替式地存儲於容量為滑動窗長度的三個鏡
像存儲器內。作為本發明的一個實施例,該運算信息是指該子數據塊內的系統位信息、校驗
位信息和外信息。 發明人在實現本發明的過程中發現,要以上述子數據塊為單位實現Turbo解碼中 訓練運算、後向狀態運算、前向狀態運算和外信息運算的並行操作,每次並行操作需要涉及 到4個子數據塊內的運算信息,而最少通過3個鏡像存儲器的更替式存儲即可以實現為訓 練運算、後向狀態運算、前向狀態運算和外信息運算的並行操作提供所需的輸入數據。
作為本發明的一個實施例,上述將子數據塊內的運算信息更替式地存儲於容量為 滑動窗長度的三個鏡像存儲器內具體可以包括 將第N個子數據塊的運算信息存儲於第一鏡像存儲器或第二鏡像存儲器,N為正 整數; 將第N+2個子數據塊的運算信息存儲於所述第N個子數據塊的運算信息所在的鏡 像存儲器以替代其中的第N個子數據塊的運算信息; 將所述第N個子數據塊的運算信息存儲於第三鏡像存儲器以替代其中的運算信 息,並將該被替代的運算信息用於前向狀態運算及外信息運算。 需要指出的是,上述第一鏡像存儲器、第二鏡像存儲器和第三鏡像存儲器並不特 指存儲器的順序,而是為了方便將三個鏡像存儲器加以區分。 為了對該交替式存儲做進一步詳細說明,請參見圖3,其為本發明實施例二提供的 高速Turbo解碼方法中的單次迭代周期內對存儲部件以及運算部件的時間佔用流圖。
本發明實施例將接收到的數據碼塊的長度為5114bit,而滑動窗長度為128bit, 因此,該數據碼塊可以劃分成40個子數據塊,這些子數據塊的軟信息存儲於X_RAM、 Y_RAM 和Z_RAM中,其中,X_RAM用於存儲系統位信息,Y_RAM用於存儲校驗位信息,而Z_RAM用於 存儲外信息。 首先,在第1窗所在時間內,本發明實施例先從第l個子數據塊中讀取出該子數據 碼塊的系統位信息、校驗位信息和外信息,並將該些信息寫入第一鏡像存儲器(RAM_1)中。 由於訓練運算結果是為相鄰前面的子數據塊作後向狀態運算時提供輸入數據的,因此該第 1個子數據塊不需要進行訓練運算。 然後,在第2窗所在時間內,本發明實施例再從第2個子數據塊中讀取出該子數據 碼塊的軟信息,並將該軟信息寫入第二鏡像存儲器(RAM_2)中。當然本發明實施例如果將 第1個子數據塊存儲於RAM_2中,則該步驟中則將第2個子數據塊的上述軟信息寫入RAM_1中。需要指出的是,本發明實施例在存儲第2個子數據塊的軟信息的同時,還將將該軟信息 用於進行第2個子數據塊的訓練運算。 接著,在第3窗所在時間內,本發明實施例從第3個子數據塊中讀取出該子數據碼 塊的軟信息,並將該軟信息寫入RAM_1中以替代其中的第1個子數據塊的軟信息,而被替換 的第1個子數據塊的軟信息則被寫入第三鏡像存儲器(RAM_3)中,同時,該被替換的第1個 子數據塊的軟信息還用於進行第1個子數據塊的後向狀態運算。 在第4窗所在時間內,本發明實施例從第4個子數據塊中讀取出該子數據碼塊的
軟信息,並將該軟信息寫入RAM_2以替代其中的第2個子數據塊的軟信息,而被替換的第2
個子數據塊的軟信息則被寫入RAM_3中並替代了其中的第1個子數據塊的軟信息,而該第
1個子數據塊的軟信息則被用於進行前向狀態運算及外信息運算。 從第5窗開始,則重複進行上述RAM_1、 RAM_2、 RAM_3內數據的更替。 S204 :從所述鏡像存儲器內讀取所需的運算信息以進行Turbo解碼中訓練運算、
後向狀態運算、前向狀態運算和外信息運算的並行操作。 由於Turbo解碼中訓練運算、後向狀態運算、前向狀態運算和外信息運算中需要 用到4個子數據塊的運算信息,因此,如果上述並行運算的起始點應該是在第4個子數據 塊。 上述進行Turbo解碼中訓練運算、後向狀態運算、前向狀態運算和外信息運算的 並行操作包括 根據第M個子數據塊的運算信息進行第M個子數據塊的訓練運算,M為大於等於4 的正整數; 根據第M-l個子數據塊的訓練運算結果、第M-2個子數據塊的運算信息進行第M-2 個子數據塊的後向狀態運算; 根據第M-3個子數據塊的運算信息進行第M-3個子數據塊的前向狀態運算;
根據第M-3個子數據塊的後向狀態運算結果、第M-3個子數據塊的運算信息和第 M-3個子數據塊的前向狀態運算結果來進行第M-3個子數據塊的外信息運算。
同樣的,在這裡結合圖3對上述並行操作進行說明,如圖3中所示,上述4種運算 的並行操作始於第4個子數據塊511 384bit所對應的第4窗。在該第4窗所在時間內, 其通過如下方式完成了上述四種運算的並行操作 訓練運算從X_RAM、Y_RAM和Z_RAM中讀取出第4個子數據塊的系統位信息、校驗 位信息和外信息,然後根據該些信息進行第4個子數據塊的訓練運算。
後向狀態運算根據第3窗時對第3個子數據塊383 256bit的訓練運算結果、 以及從RAM_2中讀取的第2個子數據塊255 128bit的運算信息進行第2個子數據塊的 後向狀態運算,並將運算結果存儲至B—RAM中。 前向狀態運算根據從RAM_3中讀取的第1個子數據塊127 Obit的運算信息進 行第一個子數據塊的前向狀態運算; 外信息運算從B—RAM中讀取出第2個子數據塊的後向狀態運算結果、從RAM_3中 讀取的第1個子數據塊的運算信息、再根據前向狀態運算的結果進行第1個子數據塊的外 信息運算。然後,再將該外信息運算結果寫入Z—RAM,作為下一次迭代的外信息加以利用。
從第5窗開始,其並行操作是重複第4窗的操作步驟,只是利用的數據不一樣,比如,第5窗所涉及到的子數據塊為第2個子數據塊至第5個子數據塊。 本發明實施例通過3個鏡像存儲器交替存儲子數據塊運算信息的方式,使得單次
迭代周期在碼塊長度的基礎上僅增加了 3個滑窗的時間,而現有技術中僅將後向狀態計算
和前向運算並行化,其單次迭代周期需要在碼塊長度的基礎上增加39個滑動窗的時間;另
外,本發明實施例僅通過3個容量為滑窗長度的鏡像存儲器就完成了訓練運算、後向狀態
運算、前向狀態運算和外信息運算的並行操作,以增加最小存儲資源的代價就完成了上述4
種運算的並行操作。 實施例三 如圖4為本發明實施例三提供的一種高速Turbo解碼裝置結構示意圖,該裝置包 括接收單元410、碼塊劃分單元420和並行運算單元430,其中,碼塊劃分單元420分別和 接收單元410及並行運算單元430相連,需要指出的是,本發明是從邏輯功能單元的角度對 Turbo解碼裝置進行的描述,實際中的Turbo解碼裝置並不限於具有該些單元,而只要具有 該些單元的功能即可。 接收單元410用於接收待解碼的數據碼塊,該數據碼塊的接收屬於現有技術,在 此就不再進行贅述了。 碼塊劃分單元420用於將接收單元410接收的待解碼的數據碼塊以滑動窗長度為 單位分成多個子數據塊,該滑動窗長度一般以比特(bit)為單位,其數值可以預先設定。
作為本發明的一個實施例,這些子數據塊需要存儲於一存儲單元內,為後續的各 種解碼運算提供數據來源,由於後續的解碼運算比如訓練運算、後向狀態運算、前向狀態運 算和外信息運算所用到的是數據碼塊的系統位信息、校驗位信息和外信息等軟信息,因此, 在本實施例中,也可以僅將上述軟信息存儲於一存儲單元內。 並行運算單元430用於對上述子數據塊進行Turbo解碼中訓練運算、後向狀態運 算、前向狀態運算和外信息運算的並行操作來得到解碼結果。 上述Turbo解碼中的訓練運算、後向狀態運算、前向狀態運算和外信息運算需要 分別為各個運算模塊提供所需的輸入數據,這樣,如果僅通過一套存儲系統的話很難實現 上述四種運算的並行操作。因此,本發明實施例的高速Turbo解碼裝置採用了多套存儲系 統的方案來實現對上述子數據塊進行Turbo解碼中訓練運算、後向狀態運算、前向狀態運 算和外信息運算的並行操作,使得各個存儲系統可以獨立地為運算模塊提供所需的輸入數 據。 當然,隨著存儲系統的不同選擇,本發明實施例的高速Turbo解碼裝置可以有多 種不同的實現方式,在本實施例中並不限定以何種具體的多存儲系統來實現本發明。
本發明實施例通過對子數據塊進行訓練運算、後向狀態運算、前向狀態運算和外 信息運算的並行操作,在保持高的解碼性能的同時,縮短了解碼延遲。
實施例四 如圖5為本發明實施例四提供的一種高速Turbo解碼裝置結構示意圖,該裝置包 括接收單元510、碼塊劃分單元520和並行運算單元530,其中,碼塊劃分單元520分別和 接收單元510及並行運算單元530相連,需要指出的是,本發明也是從邏輯功能單元的角度 對Turbo解碼裝置進行的描述,實際中的Turbo解碼裝置並不限於具有該些單元,而只要具 有該些單元的功能即可。
接收單元510和碼塊劃分單元520的作用和實施例三中相類似,在此就不再進行 贅述了。 在本實施例中,並行運算單元530又具體包括交替存儲模塊531、讀取模塊532和 運算模塊533,其中,讀取模塊532和運算模塊533之間相互連接。 交替存儲模塊531用於將所述子數據塊內的運算信息更替式地存儲於容量為滑 動窗長度的三個鏡像存儲器內,在本實施例中,上述運算信息包括系統位信息、校驗位信息 和外信息。在本實施例的圖示中並未繪示該三個鏡像存儲器,在實際實現過程中,這三個鏡 像存儲器可以位於本發明實施例的解碼裝置內部,當然其也可以位於解碼裝置的外部作為 外部存儲器。 發明人在實現本發明的過程中發現,要以上述子數據塊為單位實現Turbo解碼中
訓練運算、後向狀態運算、前向狀態運算和外信息運算的並行操作,每次並行操作需要涉及
到4個子數據塊內的運算信息,而最少通過3個鏡像存儲器的更替式存儲即可以實現為訓
練運算、後向狀態運算、前向狀態運算和外信息運算的並行操作提供所需的輸入數據。 作為本發明的一個實施例,該交替存儲模塊531具體還可以包括 第一存儲模塊,用於將第N個子數據塊的運算信息存儲於第一鏡像存儲器或第二
鏡像存儲器,N為正整數; 第二存儲模塊,用於將第N+2個子數據塊的運算信息存儲於所述第N個子數據塊
的運算信息所在的鏡像存儲器以替代其中的第N個子數據塊的運算信息; 第三存儲模塊,用於將所述第N個子數據塊的運算信息存儲於第三鏡像存儲器以
替代其中的運算信息,並將該被替代的運算信息用於前向狀態運算及外信息運算。 關於上述交替存儲模塊531內各子模塊的具體用途的說明可以參見實施例二,在
此就不再進行贅述了。 讀取模塊532用於從上述三個鏡像存儲器內讀取所需的運算信息,而運算模塊 533則用於根據讀取模塊532讀取的運算信息進行Turbo解碼中訓練運算、後向狀態運算、 前向狀態運算和外信息運算的並行操作。 作為本發明的一個實施例,運算模塊533可以具體包括訓練運算子模塊、後向狀 態運算子模塊、前向狀態運算子模塊和外信息運算子模塊,在本實施例中該4種運算模塊 在一個滑動窗周期內可以進行並行計算,其中 訓練運算子模塊用於根據第M個子數據塊的運算信息進行第M個子數據塊的訓練 運算,M為大於等於4的正整數; 後向狀態運算子模塊用於根據第M-l個子數據塊的訓練運算結果、第M-2個子數 據塊的運算信息進行第M-2個子數據塊的後向狀態運算; 前向狀態運算子模塊用於根據第M-3個子數據塊的運算信息進行第M-3個子數據 塊的前向狀態運算; 外信息運算子模塊用於根據第M-3個子數據塊的後向狀態運算結果、第M-3個子 數據塊的運算信息和第M-3個子數據塊的前向狀態運算結果來進行第M-3個子數據塊的外 信息運算。 關於上述訓練運算子模塊、後向狀態運算子模塊、前向狀態運算子模塊和外信息 運算子模塊的具體的運算過程說明可以參見實施例二,在此也就不再進行贅述了。
本發明實施例通過3個鏡像存儲器交替存儲子數據塊運算信息的方式,使得單次 迭代周期在碼塊長度的基礎上僅增加了 3個滑窗的時間,另外,本發明實施例僅通過3個容 量為滑窗長度的鏡像存儲器就完成了訓練運算、後向狀態運算、前向狀態運算和外信息運 算的並行操作,以增加最小存儲資源的代價就完成了上述4種運算的並行操作。
實施例五 本發明實施例是通過一具體的產品實例來對本發明所作的闡述,如圖6所示為本
發明實施例五提供的一種高速Turbo解碼器的結構示意圖,該高速Turbo解碼器包括主控
單元610、交織地址存儲單元620、邏輯存儲單元630和運算處理單元640,主控單元610分
別和交織地址存儲單元620、邏輯存儲單元630及運算處理單元640相連。 主控單元610是本發明實施例中高速Turbo解碼器的控制中心,其主要負責解碼
器工作過程中的各種控制操作,比如,完成待解碼數據塊的接收和存儲控制、將待解碼數據
塊劃分成以滑動窗長度為單位分成多個子數據塊、對交織地址存儲單元620的預處理、根
據運算處理單元640的需求對邏輯存儲單元630的讀寫控制、解碼整體流程的控制等,在本
實施例中,主控單元可以是一中央處理器(Central Processing Unit, CPU)。 交織地址存儲單元620用於完成待解碼數據塊的交織地址存儲,所謂交織地址是
在奇次處理時為主控單元610提供交織地址,使得主控單元610可以根據該交織地址從邏
輯存儲單元630內讀取各種軟信息,該部分屬於現有技術,因此在本發明實施例中就不再
對其進行詳細描述了。 邏輯存儲單元630主要是用於存儲待解碼數據塊的各種軟信息以及運算處理單 元640運算過程中的各種中間運算處理結果。在本實施例中,如圖7所示,邏輯存儲單元630 可以包括系統位存儲單元631、校驗位存儲單元632、第一鏡像存儲單元633、第二鏡像存儲 單元634、第三鏡像存儲單元635、後向狀態存儲單元636和外信息存儲單元637。在此,需 要指出的是,本發明所稱的邏輯存儲單元,並不意味著其中的各單元僅是邏輯單元,本發明 實施例中邏輯存儲單元630內的各存儲單元可以為物理上獨立的存儲單元,下面對其分別 進行說明 系統位存儲單元631、校驗位存儲單元632和外信息存儲單元637分別用於存儲待 解碼子數據塊的軟信息中的系統位信息、校驗位信息和外信息,並在運算處理單元640工 作過程中為其提供所需的系統位信息、校驗位信息和外信息。 第一鏡像存儲單元633、第二鏡像存儲單元634、第三鏡像存儲單元635用於更替 式地存儲各個子數據塊的運算信息,並為運算處理單元640提供其所需的運算信息。在本 實施例中,該三個存儲單元的容量優選的等於子數據塊的大小,B卩和滑動窗長度(單位為 bit)相同。至於其更替式存儲方式的具體說明可以參見實施例二,在此就不再進行贅述了。
後向狀態存儲單元636用於存儲運算處理單元640在後向狀態運算過程中產生的 後向狀態運算結果,並被後續的外信息運算所讀取。 如圖8所示,運算處理單元640主要是完成解碼過程中各種相關的運算處理,在本 實施例中,運算處理單元640又可以包括訓練運算模塊641、後向狀態運算模塊642、前向 狀態運算模塊643和外信息運算模塊644。 如圖9所示為本發明實施例五提供的一種運算處理單元和存儲單元的數據交互 示意圖。該圖式中,x—ram代表系統位存儲單元;y—ram代表校驗位存儲單元;intl_ram_pi禾P intl_ram_po代表交織地址存儲單元;z_ram代表外信息存儲單元;mirror_ram_l、 mirror_ram_2和mirror_ram_3分別代表第一鏡像存儲單元、第二鏡像存儲單元和第三鏡 像存儲單元;b—ram代表後向狀態存儲單元。 從圖9中可見,x—ram、y—ram、intl—ranu5i禾P intl_ram_po的數據是單向的,即它 們的數據僅被運算處理單元640所讀取,而mirror_ram_l、 mirror_ram_2、 mirror_ram_3、 z—ram和b_ram和運算處理單元640的數據流向是雙向的,即它們的數據既可以被運算處 理單元640所讀取,也可以被寫入。具體來說x_ram、y_ram和z_ram分別為運算處理單元 640中的訓練運算模塊641提供系統位信息、校驗位信息和外信息,其中z—ram還用於一次 迭代過程中存儲外信息運算模塊644的運算結果;intl_ram_pi和intl_ram_p0為運算處 理單元640提供交織地址;mirror—:ram—l、mirror—:ram—2禾口 mirror_:ram_3為後向狀態運算 模塊642、前向狀態運算模塊643和外信息運算模塊644提供運算信息,同時也接受運算信 息的寫入;而b_ram則用於對後向狀態運算模塊642的運算結果進行存儲並將其提供給外 信息運算模塊644。 本發明實施例通過3個鏡像存儲器交替存儲子數據塊運算信息的方式,使得單次 迭代周期在碼塊長度的基礎上僅增加了 3個滑窗的時間,另外,本發明實施例僅通過3個容 量為滑窗長度的鏡像存儲器就完成了訓練運算、後向狀態運算、前向狀態運算和外信息運 算的並行操作,以增加最小存儲資源的代價就完成了上述4種運算的並行操作。
本領域普通技術人員可以理解實現上述實施例方法中的全部或部分流程,可以通 過電腦程式來指令相關的硬體來完成,所述的程序可存儲於一計算機可讀取存儲介質 中,該程序在執行時,可包括如上述各方法的實施例的流程。其中,所述的存儲介質可為磁 碟、光碟、只讀存儲記憶體(Read-0nly Memory, ROM)或隨機存儲記憶體(Random Access Memory,廳)等。 以上所述的具體實施例,對本發明的目的、技術方案和有益效果進行了進一步詳 細說明,所應理解的是,以上所述僅為本發明的具體實施例而已,並不用於限定本發明的保 護範圍,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本 發明的保護範圍之內。
權利要求
一種高速Turbo解碼方法,其特徵在於,所述方法包括接收待解碼的數據碼塊;將所述待解碼的數據碼塊以滑動窗長度為單位分成多個子數據塊;對所述子數據塊進行Turbo解碼中訓練運算、後向狀態運算、前向狀態運算和外信息運算的並行操作來得到解碼結果。
2. 如權利要求1所述的高速Turbo解碼方法,其特徵在於,所述對所述子數據塊進行 Turbo解碼中訓練運算、後向狀態運算、前向狀態運算和外信息運算的並行操作包括將所述子數據塊內的運算信息更替式地存儲於容量為滑動窗長度的三個鏡像存儲器內;從所述鏡像存儲器內讀取所需的運算信息以進行Turbo解碼中訓練運算、後向狀態運 算、前向狀態運算和外信息運算的並行操作。
3. 如權利要求2所述的高速Turbo解碼方法,其特徵在於,所述將所述子數據塊內的運 算信息更替式地存儲於容量為滑動窗長度的三個鏡像存儲器內包括將第N個子數據塊的運算信息存儲於第一鏡像存儲器或第二鏡像存儲器,N為正整數; 將第N+2個子數據塊的運算信息存儲於所述第N個子數據塊的運算信息所在的鏡像存儲器以替代其中的第N個子數據塊的運算信息;將所述第N個子數據塊的運算信息存儲於第三鏡像存儲器以替代其中的運算信息,並將該被替代的運算信息用於前向狀態運算及外信息運算。
4. 如權利要求3所述的高速Turbo解碼方法,其特徵在於,所述進行Turbo解碼中訓練 運算、後向狀態運算、前向狀態運算和外信息運算的並行操作包括根據第M個子數據塊的運算信息進行第M個子數據塊的訓練運算,M為大於等於4的 正整數;根據第M-l個子數據塊的訓練運算結果、第M-2個子數據塊的運算信息進行第M-2個子數據塊的後向狀態運算;根據第M-3個子數據塊的運算信息進行第M-3個子數據塊的前向狀態運算;根據第M-3個子數據塊的後向狀態運算結果、第M-3個子數據塊的運算信息和第M-3個子數據塊的前向狀態運算結果來進行第M-3個子數據塊的外信息運算。
5. 如權利要求2-4所述的高速Turbo解碼方法,其特徵在於,所述運算信息包括系統位 信息、校驗位信息和外信息。
6. —種高速Turbo解碼裝置,其特徵在於,所述裝置包括 接收單元,用於接收待解碼的數據碼塊;碼塊劃分單元,用於將所述待解碼的數據碼塊以滑動窗長度為單位分成多個子數據塊;並行運算單元,用於對所述子數據塊進行Turbo解碼中訓練運算、後向狀態運算、前向 狀態運算和外信息運算的並行操作來得到解碼結果。
7. 如權利要求6所述的高速Turbo解碼裝置,其特徵在於,所述並行運算單元包括 交替存儲模塊,用於將所述子數據塊內的運算信息更替式地存儲於容量為滑動窗長度的三個鏡像存儲器內;讀取模塊,用於從所述鏡像存儲器內讀取所需的運算信息;運算模塊,用於根據所述讀取模塊讀取的運算信息進行Turbo解碼中訓練運算、後向 狀態運算、前向狀態運算和外信息運算的並行操作。
8. 如權利要求7所述的高速Turbo解碼裝置,其特徵在於,所述交替存儲模塊包括 第一存儲子模塊,用於將第N個子數據塊的運算信息存儲於第一鏡像存儲器或第二鏡像存儲器,N為正整數;第二存儲子模塊,用於將第N+2個子數據塊的運算信息存儲於所述第N個子數據塊的 運算信息所在的鏡像存儲器以替代其中的第N個子數據塊的運算信息;第三存儲子模塊,用於將所述第N個子數據塊的運算信息存儲於第三鏡像存儲器以替 代其中的運算信息,並將該被替代的運算信息用於前向狀態運算及外信息運算。
9. 如權利要求8所述的高速Turbo解碼裝置,其特徵在於,所述運算模塊具體包括 訓練運算子模塊,用於根據第M個子數據塊的運算信息進行第M個子數據塊的訓練運算,M為大於等於4的正整數;後向狀態運算子模塊,用於根據第M-l個子數據塊的訓練運算結果、第M-2個子數據塊 的運算信息進行第M-2個子數據塊的後向狀態運算;前向狀態運算子模塊,用於根據第M-3個子數據塊的運算信息進行第M-3個子數據塊 的前向狀態運算;外信息運算子模塊,用於根據第M-3個子數據塊的後向狀態運算結果、第M-3個子數據 塊的運算信息和第M-3個子數據塊的前向狀態運算結果來進行第M-3個子數據塊的外信息 運算。
10. 如權利要求7-9所述的高速Turbo解碼裝置,其特徵在於,所述運算信息包括系統 位信息、校驗位信息和外信息。
全文摘要
本發明實施例提供一種高速Turbo解碼方法和裝置,該方法包括接收待解碼的數據碼塊;將所述待解碼的數據碼塊以滑動窗長度為單位分成多個子數據塊;對所述子數據塊進行Turbo解碼中訓練運算、後向狀態運算、前向狀態運算和外信息運算的並行操作來得到解碼結果。本發明實施例的有益效果在於,通過對子數據塊進行訓練運算、後向狀態運算、前向狀態運算和外信息運算的並行操作,在保持高的解碼性能的同時,縮短了解碼延遲。
文檔編號H04L1/00GK101707510SQ20091022308
公開日2010年5月12日 申請日期2009年11月18日 優先權日2009年11月18日
發明者張家佶, 朱芳菲, 遊治, 範文奇 申請人:深圳華為通信技術有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀