專利名稱:Rs譯碼裝置及其使用的關鍵多項式求解裝置的制作方法
技術領域:
本發(fā)明涉及一種RS譯碼裝置及其使用的關鍵多項式求解裝置。
背景技術RS碼是一類具有很強糾錯能力的BCH碼,也是一類典型的代數(shù)幾何碼, 它首先由里德(Reed)和索羅蒙(Solomon)于1960年構(gòu)造出來。RS碼被廣泛的應用于通信 系統(tǒng)中,例如深空通信、無線系統(tǒng)以及數(shù)據(jù)存儲系統(tǒng)。當前對數(shù)據(jù)傳輸高速率的要求促進了 高速RS譯碼裝置的發(fā)展。 RS譯碼的全過程可分為三步進行(如圖l所示)第一步完成伴隨矩陣的計算 (101) :RS譯碼系統(tǒng)在接收到碼字之后,由接收到的碼組計算2t(對于RS(n, k)譯碼,t = (n-k)/2)個伴隨多項式系數(shù);第二步應用迭代方法計算求解關鍵多項式(102):利用第一 步求得的2t個系數(shù)通過BM迭代算法分別求得錯誤位置多項式以及錯誤值多項式的系數(shù),
兩個多項式的最高次冪都為t ;第三步搜索錯誤位置估計錯誤值(103):將代表碼字位置的
所有值代入錯誤位置多項式,如果錯誤位置多項式結(jié)果為o則表示該位置為誤碼位置,再
針對找到的誤碼位置計算相對應的錯誤值。 上述RS譯碼過程的關鍵在于第二步求解關鍵多項式(102),在這方面BM算法簡單 且容易實現(xiàn),但由于的BM迭代算法中存在有限域的求逆運算,且求逆運算消耗大量的硬件 資源運算速度慢,若將其應用在BM迭代運算中會引起較大的關鍵路徑延遲,故后來發(fā)展了 無求逆運算的IBM算法,這個算法雖然改善了譯碼系統(tǒng)的性能,但相對Euclidean算法仍有 關鍵路徑較長硬件結(jié)構(gòu)不規(guī)則的缺點。 發(fā)明內(nèi)容本發(fā)明的目的在于克服現(xiàn)有技術的不足之處,改進RS譯碼裝置的IBM算 法架構(gòu),公開一種RS譯碼裝置及其使用的關鍵多項式求解裝置。 本發(fā)明公開了一種RS譯碼裝置,包括對輸入碼字做順序處理的伴隨矩陣計算模 塊101、關鍵多項式求解模塊102和錯誤位置搜索及錯誤值計算模塊103 ;
所述關鍵多項式求解模塊102進一步包括計算錯誤值多項式系數(shù)的差異計算模 塊201和計算錯誤位置多項式的錯誤位置更新模塊202 ; 所述差異計算模塊201包括2t級順序相連的增量差異計算基本單元PEi和控制 器402, i的取值范圍為0、1、 . . . 2t-l ;0、中間變量y (r)和增量差異的初始值S (r)從第 (2t-l)級基本單元輸入,控制信號Mjr)和伴隨多項式系數(shù)S并行輸入每一級基本單元,第 0級基本單元產(chǎn)生的》,W反饋回所述控制器402,生成增量差異S (r)、計算中間量y (r)和 控制信號Mc(r);對于RS(n, k)編碼,有t = (n_k)/2 ; 所述增量差異計算基本單元PEi的輸入是之間變量Y (r)、增量差異》w(。和二W , 輸出為中間變量Y (r)、增量差異》,(。和》。W;其中》,々)和Y (r)兩者通過第一乘法器好的的 乘積與》。W與中間變量反W通過第二乘法器獲得的乘積的和輸入第一寄存器311,從而得到 》w(r)和^(。還通過二選一選擇器由控制信號Mc(r)選通再通過第二寄存器321生 成中間變量^ W輸入第二乘法器。 所述差異計算模塊201輸出的錯誤值多項式系數(shù)輸入錯誤位置更新模塊202,所 述錯誤位置更新模塊202輸出更新的錯誤位置多項式,所述差異計算模塊201和錯誤位置更新模塊202的輸出再輸入到所述錯誤位置搜索及錯誤值計算模塊103計算出誤碼位置 和誤碼值。所述差異計算模塊201根據(jù)輸入的伴隨多項式系數(shù)S以及錯誤位置多項式系 數(shù)(A。(r)......At(r))計算增量差異S (r),再由控制模塊204產(chǎn)生相應的計算中間量
Y (r)和控制信號Mjr),發(fā)送給所述錯誤位置更新模塊202 ;所述錯誤位置更新模塊202計 算得到更新的錯誤位置多項式系數(shù)(A。(r)... At(r))反饋給所述差異計算模塊201,上述
過程迭代2t次,得到最終的錯誤位置多項式系數(shù)(A。(r)......At(r))以及相應的增量
差異S (r)。還包括糾錯模塊,所述輸入碼字經(jīng)過緩存器再和所述錯誤位置搜索及錯誤值計 算模塊103的輸出分別同時輸入所述糾錯模塊,獲得譯碼輸出一種RS譯碼裝置使用的關鍵 多項式求解裝置,包括求解錯誤值多項式系數(shù)的差異計算模塊201和計算錯誤位置多項式 系數(shù)的錯誤位置更新模塊202 ; 所述差異計算模塊201包括2t級順序相連的增量差異計算基本單元PEi和控制 器402, i的取值范圍為0、1、 . . . 2t-l ;0、中間變量y (r)和增量差異的初始值S (r)從第 (2t-l)級基本單元輸入,控制信號Mjr)和伴隨多項式系數(shù)S并行輸入每一級基本單元,第 0級基本單元產(chǎn)生的》,W反饋回所述控制器402,生成增量差異S (r)、計算中間量y (r)和 控制信號Mc(r);對于RS(n, k)編碼,有t = (n-k)/2 ; 所述增量差異計算基本單元PEi的輸入是之間變量Y (r)、增量差異云,+"r)和三W , 輸出為中間變量Y (r)、增量差異》,(。和》。W;其中^々)和Y (r)兩者通過第一乘法器好的的 乘積與》。W與中間變量^W通過第二乘法器獲得的乘積的和輸入第一寄存器311,從而得到 》,+,(。和^(。還通過二選一選擇器由控制信號Mc(r)選通再通過第二寄存器321生 成中間變量纟,W輸入第二乘法器。 所述差異計算模塊201根據(jù)輸入的伴隨多項式系數(shù)S以及錯誤位置多項式系數(shù) (入。(r)......At(r))計算增量差異S (r),再由控制模塊204產(chǎn)生相應的計算中間量
Y (r)和控制信號Mjr),發(fā)送給所述錯誤位置更新模塊202 ;所述錯誤位置更新模塊202計 算得到更新的錯誤位置多項式系數(shù)(A。(r)... At(r))反饋給所述差異計算模塊201,上述
過程迭代2t次,得到最終的錯誤位置多項式系數(shù)(A。(r)......At(r))以及相應的增量
差異S (r)。 本發(fā)明公開的關鍵多項式求解裝置,實現(xiàn)應用IBM算法進行RS譯碼過程中錯誤值 多項式系數(shù)的計算,結(jié)構(gòu)規(guī)則,通過簡單的基本單元(PEi)擴充,靈活的構(gòu)造成不同譯碼模 式的譯碼器。在構(gòu)造不同糾錯能力的RS譯碼器時,只增加相應數(shù)量的處理單元(PEi)即 可。用該電路實現(xiàn)的RS譯碼裝置,具有高速處理的性能,具有較小的關鍵路徑延遲,可以滿 足較高的系統(tǒng)運行頻率的需要。
圖1是RS譯碼裝置硬件框圖。 圖2是現(xiàn)有技術中實現(xiàn)IBM算法的硬件框圖。 圖3是本發(fā)明的差異計算模塊的基本單元框圖。 圖4是本發(fā)明的差異計算模塊框圖。 圖5是RS譯碼器中改進IBM算法電路應用框圖。
具體實施方式
下面結(jié)合附圖和具體實施方式
對本發(fā)明做進一步詳細說明。
傳統(tǒng)的RS譯碼器裝置如圖1所示,整個RS譯碼系統(tǒng)的關鍵在于求解關鍵方程的 關鍵多項式求解模塊102。所以對該模塊的實現(xiàn)方案成為影響整個RS譯碼裝置性能的關 鍵。由于經(jīng)典的BM迭代算法中需要復雜的有限域求逆運算,而且有限域的求逆運算消耗硬 件資源且運算速度慢,對系統(tǒng)的關鍵路徑時延有很大的影響。而IBM算法雖然消除了其中 的求逆運算,但仍然存在關鍵路徑較長,硬件架構(gòu)不規(guī)則的缺點。故本發(fā)明提供了一種經(jīng)過 改進的IBM算法架構(gòu)。 傳統(tǒng)的IBM算法結(jié)構(gòu)如圖2 (a)所示,它包含差異計算模塊201和錯誤位置更新模 塊202兩部分。其中的差異計算模塊201的結(jié)構(gòu)如圖2(b)所示。 圖2中,差異計算模塊201根據(jù)輸入的伴隨多項式系數(shù)S以及錯誤位置多項式
系數(shù)(A。(r)......At(r))的初始值計算增量差異S (r),再由控制模塊204產(chǎn)生相應
的Y(r)和控制信號Me(r),發(fā)送給錯誤位置更新計算模塊202(控制模塊204是差異 計算模塊201的一部分),由錯誤位置更新模塊202計算更新得到錯誤位置多項式系數(shù) (入。(r)... At(r))反饋給差異計算模塊201,這個過程迭代2t(對于RS(n, k)編碼,t =
(n-k) /2)次,得到最終的錯誤位置多項式系數(shù)(A 。 (r)......A t (r))及其對應的增量差異
S (r)。 如圖2(b)所示是差異計算模塊201,包括t級移位存儲器組203(Reg(0), Reg (1) ,. . . Reg (t_l)),伴隨多項式系數(shù)S從移位寄存器組203的第一級Reg (0)輸入,錯誤
位置多項式系數(shù)(入。(r)......At(r))的每一項分別與對應的寄存器的輸出相乘,所得的
乘積輸入加法樹,加法樹的累加和輸入控制模塊204,得到相應的增量差異S (r)、計算中 間量Y (r)和控制信號Mc(r)。 由圖2(b)差異計算模塊201可見傳統(tǒng)的IBM算法結(jié)構(gòu)有兩個缺點一、其中的寄 存器組203的個數(shù)會隨著系統(tǒng)的糾錯能力的變化而改變,從而要求模塊201的硬件設計隨 著不同RS譯碼方式要有較大的調(diào)整。二、圖(b)所示的關鍵路徑比較長(包含了一個乘法 器和加法樹),這不利于高速RS譯碼裝置的實現(xiàn)。 本發(fā)明從算法上進行了改進,如圖2所示傳統(tǒng)的IBM算法,它的增量差異S (r)是 由伴隨系數(shù)S以及錯誤位置多項式系數(shù)(A。(r)... At(r))經(jīng)過乘累加獲得,這樣產(chǎn)生了 較長的乘累加關鍵路徑,且結(jié)構(gòu)不規(guī)則。改進后的算法結(jié)構(gòu)是利用相同的硬件結(jié)構(gòu)同時迭
代得出增量差異S (r)以及錯誤位置多項式系數(shù)(A。(r)......入t(r)),這樣就消除了傳
統(tǒng)的IBM算法中存在的較長的乘累加關鍵路徑,同時也獲得了一個規(guī)則的硬件結(jié)構(gòu)。其中 的算法改進如下 原算法中的錯誤位置多項式系數(shù)更新計算模塊202公式如下 入(r+l,x) = Y (r)承入(r,x)—x承S (r)承B(r,x) (1) 其中r = 0, 1, ,2t-l 其中Y (r)、 S (r)是201輸出的計算中間量,B(r,x)是輔助計算A (r+l,x)的中 間量。傳統(tǒng)IBM算法201中S (r)的計算也可以由以下的公式得到 A(r,x)*S(x) =D(r,x) = S 。 (r) + S ! (r) *x+____Sr(r)*xr+.. (2) 即多項式D(r, x)的第r次項系數(shù)就是S (r)的值。由式(2)所示的D(r, x)與 入(r, x)關系可以推得同(1)相類似的D(r, x)迭代計算公式
6
D(r+1, x) = Y (r)*D(r, x)_x* S r(r)* 9 (r, x) (3) 由式(2)可得S Jr)是D(r, x)的第r次系數(shù),這樣在迭代時還需要選擇不同位
置的系數(shù)進行后續(xù)運算,為了使硬件連接固定做如下處理,令》,(0 =(r)
則
》,+1)=+1) = *(r)-《.(。*《 +,. (。 = HO *》w (0 _》。(。* ^ (0
(4) 其中i = 0, 1,2, " 2t_l。 式(4)即是改進后的IBM算法,其利用迭代的方法求得了增量差異S (r)(即》。(。),其對應的硬件框架如圖3所示。 圖3(a)所示為本發(fā)明的增量差異S (r)計算的基本單元,由于加法樹的消除大大的減少了關鍵路徑的延遲。圖中,增量差異計算模塊的基本單元的輸入是》,+,0")、 Y (r)和入W ,輸出為》,W、 Y (r)禾P》。W;其中》,々)和Y (r)兩者的乘積與》。(,)與中間變量g,,("的乘積
的和輸入第一寄存器311,從而得到》,(。;》,+1(。和^(。還通過二選一選擇器由控制信號
Mc(r)選通再通過第二寄存器321生成中間變量S,W。 圖3(b)是本發(fā)明的增量差異計算模塊基板單元的簡化框圖,如圖所示是第i級基本單元PEi,輸入量》,+々)、Y (r)和》々)處理后輸出》,W、 Y (r)和》。W ,并且由控制信號Mc(r)選通,輸出&W。 如圖4所示為本發(fā)明改進后的IBM算法的差異計算模塊硬件框圖,包括2t級順序相連的基本單元(PEO. . . PE2t-l)和控制器402 ;0、 y (r)和S (r)從第(2t_l)級基本單元輸入,控制信號Me(r)和伴隨多項式系數(shù)S并行輸入每一級基本單元,第0級基本單元產(chǎn)生的》,W反饋回控制器402,生成增量差異S (r)、計算中間量y (r)和控制信號Mjr)。
本發(fā)明提出了一種改進的RS譯碼器中IBM算法的實現(xiàn)電路,該電路具有如下的特點 (1)用該電路實現(xiàn)的RS譯碼裝置,具有較小的關鍵路徑延遲,可以滿足較高的系統(tǒng)運行頻率的需要。 (2)該電路具有結(jié)構(gòu)規(guī)則的特點,在構(gòu)造不同糾錯能力的RS譯碼器時,只增加相應數(shù)量的處理單元(PEi)即可。 本發(fā)明提出的改進的IBM算法實現(xiàn)RS譯碼器的裝置,可以通過簡單的基本單元(PEi)擴充,靈活的構(gòu)造成不同譯碼模式的譯碼器。且該譯碼器具有高速處理的性能。
如系統(tǒng)進行RS (240, 224)譯碼時,如圖5所示是RS譯碼器中改進的IBM算法電路應用的框圖,首先由501利用輸入碼字進行伴隨多項式系數(shù)的計算,同時將輸入碼字依次保存到緩沖寄存器505中,當計算得到16(此時t = (240-224)/2 = 8)個伴隨多項式的系數(shù)(S。...S2t—》之后,便將這16個伴隨多項式系數(shù)從S。到S2t—工輸入到差異計算模塊502中。
在差異計算模塊502中的計算過程參見圖4,其工作流程如下設置PEO到
7PE2t-l基本處理單元中的寄存器組(5q(?!?以及(... ^mO))初始值都 為(S。. . . S2t—》,之后如圖4所示進行16次迭代運算,每次迭代運算控制單元402都會根據(jù) 計算得到的二(。值,產(chǎn)生相應的Y (r)、 S (r)以及Mc(r)控制信號輸出給錯誤位置更新計 算模塊202 (如圖2 (a)所示),使其進行一次運算更新系數(shù)(A 。 (r). . . A t (r)),如此反復經(jīng) 歷16次(算法規(guī)定迭代2t次,此時t二 (240-224)/2 = 8)迭代運算得到了錯誤值多項式 系數(shù)。在迭代結(jié)束之后將得到的錯誤值多項式的系數(shù)輸出給錯誤位置搜索及誤碼值計算模 塊504進行錯誤位置的搜索以及錯誤位置相應誤碼值的計算,和錯誤位置更新模塊503得 到錯誤位置多項式(入。(r)... At(r))。當每檢測完一個位置是否有錯以及計算完相應的 錯誤值之后,就由506對存儲在505中的相應的輸入碼字進行糾錯,并輸出相應的譯碼后的 碼字,當對所有碼字糾錯完畢之后,便完成整個RS譯碼操作。 上述的方案完全可以用于RS譯碼系統(tǒng)設計中,且可以以FPGA硬件實現(xiàn),做到了譯 碼的實時處理。上述提供了詳細的實施例描述,以使得本領域的任何技術人員可以使用或 利用本發(fā)明。本發(fā)明不僅適用于這里所示的實施例,而且適用于不同模式以及對系統(tǒng)運行 頻率要求較高的RS譯碼系統(tǒng)的設計。
權利要求
一種RS譯碼裝置,包括對輸入碼字做順序處理的伴隨矩陣計算模塊(101)、關鍵多項式求解模塊(102)和錯誤位置搜索及錯誤值計算模塊(103);其特征在于所述關鍵多項式求解模塊(102)進一步包括計算錯誤值多項式系數(shù)的差異計算模塊(201)和計算錯誤位置多項式的錯誤位置更新模塊(202);所述差異計算模塊(201)包括2t級順序相連的增量差異計算基本單元PEi和控制器(402),i的取值范圍為0、1、...2t-1;0、中間變量γ(r)和增量差異的初始值δ(r)從第(2t-1)級基本單元輸入,控制信號MC(r)和伴隨多項式系數(shù)S并行輸入每一級基本單元,第0級基本單元產(chǎn)生的反饋回所述控制器(402),生成增量差異δ(r)、計算中間量γ(r)和控制信號MC(r);對于RS(n,k)編碼,有t=(n-k)/2;所述增量差異計算基本單元PEi的輸入是之間變量γ(r)、增量差異和輸出為中間變量γ(r)、增量差異和其中和γ(r)兩者通過第一乘法器好的的乘積與與中間變量通過第二乘法器獲得的乘積的和輸入第一寄存器(311),從而得到和還通過二選一選擇器由控制信號MC(r)選通再通過第二寄存器(321)生成中間變量輸入第二乘法器。F2008102173137C0000011.tif,F2008102173137C0000012.tif,F2008102173137C0000013.tif,F2008102173137C0000014.tif,F2008102173137C0000015.tif,F2008102173137C0000016.tif,F2008102173137C0000017.tif,F2008102173137C0000018.tif,F2008102173137C0000019.tif,F2008102173137C00000110.tif,F2008102173137C00000111.tif,F2008102173137C00000112.tif
2. 根據(jù)權利要求1所述的RS譯碼裝置,其特征在于,所述差異計算模塊(201)輸出的 錯誤值多項式系數(shù)輸入錯誤位置更新模塊(202),所述錯誤位置更新模塊(202)輸出更新 的錯誤位置多項式,所述差異計算模塊(201)和錯誤位置更新模塊(202)的輸出再輸入到 所述錯誤位置搜索及錯誤值計算模塊(103)計算出誤碼位置和誤碼值。
3. 根據(jù)權利要求2所述的RS譯碼裝置,其特征在于,所述差異計算模塊(201)根據(jù)輸入的伴隨多項式系數(shù)S以及錯誤位置多項式系數(shù)(A。(r)......At(r))計算增量差異S (r),再由控制模塊(204)產(chǎn)生相應的計算中間量Y (r)和控制信號Mc(r),發(fā)送給所述錯 誤位置更新模塊(202);所述錯誤位置更新模塊(202)計算得到更新的錯誤位置多項式系 數(shù)(A 。 (r). . . A t (r))反饋給所述差異計算模塊(201),上述過程迭代2t次,得到最終的錯 誤位置多項式系數(shù)(A。(r)......At(r))以及相應的增量差異S (r)。
4. 根據(jù)權利要求2所述的RS譯碼裝置,其特征在于,還包括糾錯模塊,所述輸入碼字經(jīng) 過緩存器再和所述錯誤位置搜索及錯誤值計算模塊(103)的輸出分別同時輸入所述糾錯 模塊,獲得譯碼輸出。
5. —種RS譯碼裝置使用的關鍵多項式求解裝置,包括求解錯誤值多項式系數(shù)的差異 計算模塊(201)和計算錯誤位置多項式系數(shù)的錯誤位置更新模塊(202);其特征在于所述差異計算模塊(201)包括2t級順序相連的增量差異計算基本單元PEi和控制器 (402), i的取值范圍為0、1、 ...2t-l ;0、中間變量y (r)和增量差異的初始值S (r)從第 (2t-l)級基本單元輸入,控制信號Mjr)和伴隨多項式系數(shù)S并行輸入每一級基本單元,第 0級基本單元產(chǎn)生的》,W反饋回所述控制器(402),生成增量差異S (r)、計算中間量y (r) 和控制信號Mc(r);對于RS(n, k)編碼,有t = (n-k)/2 ;所述增量差異計算基本單元PEi的輸入是之間變量Y (r)、增量差異^+,(r)和纟。W ,輸出 為中間變量Y (r)、增量差異》,w和》。W;其中》,+,("和Y (r)兩者通過第一乘法器好的的乘 積與》。W與中間變量^W通過第二乘法器獲得的乘積的和輸入第一寄存器(311),從而得到》,W;》w(。和^("還通過二選一選擇器由控制信號Mc(r)選通再通過第二寄存器(321)生成中間變量^(0輸入第二乘法器。
6.根據(jù)權利要求5所述的RS譯碼裝置使用的關鍵多項式求解裝置,其特征在 于,所述差異計算模塊(201)根據(jù)輸入的伴隨多項式系數(shù)S以及錯誤位置多項式系數(shù)(入。(r)......At(r))計算增量差異S (r),再由控制模塊(204)產(chǎn)生相應的計算中間量Y (r)和控制信號Mjr),發(fā)送給所述錯誤位置更新模塊(202);所述錯誤位置更新模塊 (202)計算得到更新的錯誤位置多項式系數(shù)(入。(r)... At(r))反饋給所述差異計算模塊(201),上述過程迭代2t次,得到最終的錯誤位置多項式系數(shù)(A。(r)......At(r))以及相應的增量差異S (r)。
全文摘要
一種RS譯碼裝置及其使用的關鍵多項式求解裝置,包括對輸入碼字做順序處理的伴隨矩陣計算模塊、關鍵多項式求解模塊和錯誤位置搜索及錯誤值計算模塊;所述關鍵多項式求解模塊進一步包括計算錯誤值多項式系數(shù)的差異計算模塊和計算錯誤位置多項式的錯誤位置更新模塊;所述差異計算模塊包括2t級順序相連的增量差異計算基本單元PEi和控制器;0、中間變量γ(r)和增量差異的初始值δ(r)從第(2t-1)級基本單元輸入,控制信號MC(r)和伴隨多項式系數(shù)S并行輸入每一級基本單元,第0級基本單元產(chǎn)生的反饋回所述控制器,生成增量差異δ(r)、計算中間量γ(r)和控制信號MC(r)。本發(fā)明進行RS譯碼過程中錯誤值多項式系數(shù)的計算,結(jié)構(gòu)規(guī)則,可以靈活的構(gòu)造成不同譯碼模式的譯碼器。
文檔編號H03M13/15GK101741397SQ20081021731
公開日2010年6月16日 申請日期2008年11月11日 優(yōu)先權日2008年11月11日
發(fā)明者王帥 申請人:中興通訊股份有限公司