專利名稱:修正歐幾里德算法的部分并行實現(xiàn)方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字信息傳輸領(lǐng)域,特別是涉及一種用于CMMB(China MobileMultimedia Broadcasting,中國移動數(shù)字多媒體廣播電視)系統(tǒng)的修正歐幾里德算法的部分并行實現(xiàn)方法。本發(fā)明還涉及一種修正歐幾里德算法的部分并行實現(xiàn)裝置。
背景技術(shù):
CMMB是中國國家廣電總局于2006年10月頒布的中國移動多媒體廣播行業(yè)標(biāo)準(zhǔn),該標(biāo)準(zhǔn)于2006年11月I日起正式實施。它是一種基于多載波OFDM (正交頻分復(fù)用)技術(shù)的無線廣播系統(tǒng),采用先進的信道糾錯編碼和多載波OFDM調(diào)制技術(shù),提高了抗干擾能力和對移動性的支持;采用時隙發(fā)射方式來降低終端的功耗。依據(jù)CMMB網(wǎng)絡(luò)覆蓋的設(shè)想,CMMB信號由S波段衛(wèi)星覆蓋網(wǎng)絡(luò)和U波段地面覆蓋網(wǎng)絡(luò)實現(xiàn)信號覆蓋。S波段衛(wèi)星覆蓋網(wǎng)絡(luò)廣播信道用于直接接收,Ku波段上行,S波段下行;分發(fā)信道用于地面增補轉(zhuǎn)發(fā)接收,Ku波段上行,Ku波段下行,由地面增補網(wǎng)絡(luò)轉(zhuǎn)發(fā)器轉(zhuǎn)為S波段發(fā)送到CMMB終端。為實現(xiàn)城市人口密集區(qū)域移動多媒體廣播電視信號的有效覆蓋,采用U波段地面無線發(fā)射構(gòu)建城市U波段地面覆蓋網(wǎng)絡(luò)。信號的地面無線傳送階段,由于地面無線傳輸環(huán)境比較惡劣,會對傳輸信號產(chǎn)生復(fù)雜的信號畸變,在接收端必須采用一定的信號處理方法進行數(shù)據(jù)恢復(fù)?;贠FDM技術(shù),CMMB系統(tǒng)本身可以減少信號無線傳輸過程中的頻率選擇性干擾,但是由于CMMB系統(tǒng)中包含傳輸速率較高的多電平調(diào)制方式,為了得到性能較好的傳輸質(zhì)量,CMMB接收端需要采用相干解調(diào)方式恢復(fù)信號。相干解調(diào)方式將帶來3dB的信號增益,雖然實現(xiàn)復(fù)雜度較之非相干解調(diào)高,但是將明顯提高信號接收質(zhì)量。因此,在CMMB系統(tǒng)中,前向糾錯部分是影響系統(tǒng)接收性能的一個關(guān)鍵部分。在CMMB系統(tǒng)中,針對RS (里德-索羅蒙)碼的三種模式,可以采用純串行實現(xiàn)方法,但是這種實現(xiàn)方法運行時間上很長,并不能滿足某些系統(tǒng)的時序要求;采用全并行的實現(xiàn)方法,雖然運行時間比較快,但是其占用了大量的組合邏輯運算單元。因此如何在減少組合邏輯運算單元數(shù)量的同時,又能很好的滿足系統(tǒng)時序的要求,成為了一個需要解決的問題。
發(fā)明內(nèi)容
本發(fā)明要解決的技術(shù)問題是提供一種修正歐幾里德算法的部分并行實現(xiàn)方法,既能有效減少組合邏輯運算單元的數(shù)量,又能保證高效進行數(shù)據(jù)處理;為此,本發(fā)明還要提供一種修正歐幾里德算法的部分并行實現(xiàn)裝置。為解決上述技術(shù)問題,本發(fā)明的修正歐幾里德算法的部分并行實現(xiàn)方法包括如下步驟
步驟一、根據(jù)伴隨式的計算結(jié)果,初始化錯誤位置多項式和錯誤值多項式,使Q(X)=s(x),R(X) = 0, n (X) = 0, ii (X) = I ;其中,1^)為錯誤值多項式,n (X)為錯誤位置多項式,S(x)為伴隨多項式,Q(X)和U (x)分別為計算錯誤值多項式和計算錯誤位置多項式的輔助多項式;步驟二、將M項所述錯誤位置多項式和M項錯誤值多項式分為4組,每組內(nèi)包含N項錯誤位置多項式和N項錯誤值多項式,每個周期內(nèi)同時完成N項錯誤位置多項式和N項錯誤值多項式的并行運算,四個周期完成第一次迭代運算,得到錯誤位置多項式和錯誤值多項式的最高次數(shù)項系數(shù)和控制信號,繼而進行下一次的第二次迭代運算;其中,M和N均為大于I的正整數(shù);步驟三、在設(shè)定的2t X4個周期結(jié)束時,停止迭代運算,此時得到錯誤位置多項式和錯誤值多項式。本發(fā)明的修正歐幾里德算法的部分并行實現(xiàn)裝置,包括初始化模塊,用于對錯誤值多項式和錯誤位置多項式進行初始化,使Q(X)= S(X),R(X) =0,n(x) =0, u (x) = I;其中,R(X)為錯誤值多項式,n(x)為錯誤位置多項式,S(X)為伴隨多項式,Q(X)和U (x)分別為計算錯誤值多項式和計算錯誤位置多項式的輔助多項式;并行運算單元,與初始化模塊相連接,每個并行運算單元包括16個組合邏輯運算單元,每個并行運算單元在一個周期內(nèi)完成四分之一錯誤值多項式和錯誤位置多項式的迭代運算,在4個周期內(nèi)完成所有錯誤值多項式和錯誤位置多項式的一次迭代運算;在每次錯誤值多項式迭代運算完成后得到錯誤值多項式的最高次數(shù)項系數(shù),同時一次迭代運算完成后進行移項操作,將空出的組合邏輯運算單元在下一次迭代運算時用于錯誤位置多項式的計算。常規(guī)MEA (修正歐幾里德算法)實現(xiàn)的方法存在的不足之處是(I)全并行實現(xiàn)方法,使錯誤值多項式和錯誤位置多項式分開運算,占用了大量的組合邏輯運算單元;(2)純串行實現(xiàn)方法運算時間太長,效率不高。本發(fā)明通過研究MEA算法流程,提出了一種基于錯誤值多項式和錯誤位置多項式,利用同一個組合邏輯運算單元計算錯誤多項式和錯誤位置多項式的部分并行實現(xiàn)方法。由于計算錯誤值多項式和錯誤位置多項式的組合邏輯運算單元結(jié)構(gòu)相同,利用錯誤值多項式左移之后空出來的組合邏輯運算單元來計算錯誤位置多項式,這樣就不用再產(chǎn)生新的組合邏輯運算單元對錯誤位置多項式進行計算,使得組合邏輯運算單元的數(shù)量大大減少,且運算時間仍可滿足系統(tǒng)需求;另外,采用部分并行的實現(xiàn)方法,又進一步減少了一部分組合邏輯運算單元。本發(fā)明既能有效減少組合邏輯運算單元的數(shù)量,又能保證高效進行數(shù)據(jù)處理。
下面結(jié)合附圖與具體實施方式
對本發(fā)明作進一步詳細(xì)的說明圖I是基于修正歐幾里德算法的CMMB系統(tǒng)結(jié)構(gòu)圖;圖2是基于修正歐幾里德算法的FEC(前向糾錯)模塊結(jié)構(gòu)圖;圖3是基于修正歐幾里德算法的RS模塊結(jié)構(gòu)圖;圖4是基于修正歐幾里德算法的部分并行實現(xiàn)結(jié)構(gòu)圖;圖5是基于修正歐幾里德算法的部分并行實現(xiàn)方法的流程圖6是圖4所示的部分并行結(jié)構(gòu)中的組合邏輯運算單元結(jié)構(gòu)圖。
具體實施例方式為了保證接收信號的可靠性,避免在傳輸及解碼過程當(dāng)中出現(xiàn)錯誤,CMMB系統(tǒng)在編碼時采用了 RS (240,224),RS (240,192),RS (240,176)三種編碼方式來增強系統(tǒng)本身的糾錯能力。這種編碼方式要增加一些冗余數(shù)據(jù),在解碼時通過這些冗余數(shù)據(jù)可以判斷數(shù)據(jù)的正確性。本發(fā)明提出了一種基于修正歐幾里德算法的,保證采用較少組合邏輯運算單元且高效的進行數(shù)據(jù)處理實現(xiàn)方式。CMMB系統(tǒng)的前向糾錯模塊位于解碼模塊之后,如圖I所示。對于接收到的信號經(jīng)過解調(diào)、FFT (快速傅立葉變換)、解擾和解碼之后,已經(jīng)得到了最后的數(shù)據(jù),為了保證這些數(shù)據(jù)的準(zhǔn)確性,加入了最后的前向糾錯模塊。 如圖2所示,所述前向糾錯模塊主要包括四個依次串接的模塊,分別是解位交織(BIDN)模塊、低密度奇偶校驗碼(LDPC)模塊、解字節(jié)交織(BYDIN)模塊和里德-索羅蒙(RS)解碼模塊。其中,低密度奇偶校驗碼模塊和里德-索羅蒙解碼模塊為主要的數(shù)據(jù)糾錯模塊。另外兩個模塊,解位交織模塊和解字節(jié)交織模塊分別為LDPC模塊和RS解碼模塊做好準(zhǔn)備,數(shù)據(jù)經(jīng)解位交織后送入LDPC模塊進行解碼,再經(jīng)解字節(jié)交織后送入RS解碼模塊。參見圖3所示,一個完整的RS解碼模塊主要包括三部分,分別是伴隨式計算模塊、MEA(修正歐幾里德算法)模塊(即所述的修正歐幾里德算法的部分并行實現(xiàn)裝置)和錢氏搜索福尼計算模塊。其中,伴隨式計算模塊用于計算伴隨多項式各項系數(shù)且確定傳送來的數(shù)據(jù)有無錯誤;數(shù)據(jù)一進入RS解碼模塊就要進入到緩存寄存器中進行數(shù)據(jù)緩存,緩存數(shù)據(jù)是為了保存原始數(shù)據(jù);MEA模塊用于計算得到錯誤值多項式和錯誤位置多項式;錢氏搜索可以確定出錯誤位置及錯誤個數(shù),福尼計算則可以確定錯誤值;加法器,將緩存寄存器中的保存原始數(shù)據(jù)與錢氏搜索模塊確定出的錯誤值多項式和錯誤位置多項式相加,得到的和輸入給寫回模塊,將錯誤修正。因此,MEA模塊是RS解碼模塊中的一個核心模塊,從算法角度也是最為復(fù)雜的部分。結(jié)合圖5所示,在MEA模塊中,首先是由初始化模塊對錯誤值多項式和錯誤位置多項式進行初始化,Q(X) = S(X), R(X) = 0, n (X) = 0, u (x) = I ;其中,R(X)為錯誤值多項式,n (X)為錯誤位置多項式,S(X)為伴隨多項式,Q(X)和U (x)分別為計算錯誤值多項式和計算錯誤位置多項式的輔助多項式。以RS(240,176)為例,錯誤值多項式和錯誤位置多項式均為64項,將16項錯誤值多項式和錯誤位置多項式作為一組,共分4組由并行運算單元進行并行迭代運算,如圖4所示。圖4中的每個并行運算單元又包括16個如圖6所示的組合邏輯運算單元,使這64項錯誤值多項式和計算錯誤位置多項式的一次迭代運算在4個周期內(nèi)完成,經(jīng)過2t次這樣的迭代運算以后(圖中每個運算單元表示一次迭代運算),即可得到錯誤值多項式和錯誤位置多項式的各項系數(shù)。數(shù)據(jù)進入組合邏輯運算單元后,如果錯誤值多項式的最高次數(shù)項系數(shù)a古0,且A=deg(R)-deg(Q)彡0,使R(X)和Q (X)相互交換,a和b相互交換(a,b分別為R和Q的最高次數(shù)項系數(shù)),然后再進行迭代運算,計算錯誤值多項式和錯誤位置多項式;否則直接計算錯誤值多項式和錯誤位置多項式。當(dāng)?shù)\算到固定周期(2tX4)時即可停止迭代運算。迭代運算完成后,對于RS(240,224)模式,得到的錯誤位置多項式和錯誤值多項式分別是8項多項式;對于RS(240,192)模式,得到的錯誤位置多項式和錯誤值多項式分別是24項多項式;對1 (240,176)模式,得到的錯誤位置多項式和錯誤值多項式分別是32項多項式。圖6為一個組合邏輯運算單元的結(jié)構(gòu)圖,本發(fā)明將錯誤位置多項式和錯誤值多項式的運算放在了同一個周期。在圖6中,每一個組合邏輯運算單元運算完成以后,錯誤值多項式要左移一項,右邊空出來的組合邏輯運算單元對計算錯誤值多項式是浪費的,利用這些空出來的組合邏輯運算單元來計算錯誤位置多項式,這樣相當(dāng)于省掉了本來應(yīng)該用于計算錯誤位置多項式的組合邏輯運算單元,為MEA模塊的設(shè)計省去大量的組合邏輯運算單圖6中描述了兩種運算過程,分別是當(dāng)A = deg(R)-deg(Q)≥0,則給出交換(swap)信號,此時使R(x)和Q(X)相互交換,deg(R)和deg(Q)相互交換,進行尺=尺+
a
的運算,此時deg(Q)進行加I操作;當(dāng)A = deg(R)-deg(Q) < 0,則直接進行i = +
a
運算,此時deg(R)進行加I操作。得到的計算結(jié)果用于下一次迭代計算。以上通過具體實施方式
對本發(fā)明進行了詳細(xì)的說明,但這些并非構(gòu)成對本發(fā)明的限制。在不脫離本發(fā)明原理的情況下,本領(lǐng)域的技術(shù)人員還可做出許多變形和改進,這些也應(yīng)視為本發(fā)明的保護范圍。
權(quán)利要求
1.一種修正歐幾里德算法的部分并行實現(xiàn)方法,其特征在于,包括如下步驟 步驟一、根據(jù)伴隨式的計算結(jié)果,初始化錯誤位置多項式和錯誤值多項式,使Q(X)=S(X),R(X) = O,n (X) = 0, u (x) = I ;其中,R(X)為錯誤值多項式,n (X)為錯誤位置多項式,S(X)為伴隨多項式,Q(X)和U (x)分別為計算錯誤值多項式和計算錯誤位置多項式的輔助多項式; 步驟二、將M項所述錯誤位置多項式和M項錯誤值多項式分為4組,每組內(nèi)包含N項錯誤位置多項式和N項錯誤值多項式,每個周期內(nèi)同時完成N項錯誤位置多項式和N項錯誤值多項式的并行迭代運算,四個周期完成第一次迭代運算,得到錯誤位置多項式和錯誤值多項式的最高次數(shù)項系數(shù)和控制信號,繼而進行下一次的第二次迭代運算;其中,M和N均為大于I的正整數(shù); 步驟三、在設(shè)定的2tX4個周期結(jié)束時,停止迭代運算,此時得到錯誤位置多項式和錯 誤值多項式。
2.如權(quán)利要求I所述的方法,其特征在于在執(zhí)行步驟一完成初始化后,如果錯誤值多項式的最高次數(shù)項系數(shù)a古0,且A = deg(R)-deg(Q)彡0,則使R(X)和Q(X)相互交換,a和b相互交換,然后再進行迭代運算,計算錯誤值多項式和錯誤位置多項式;否則直接計算錯誤值多項式和錯誤位置多項式;其中,a, b分別為RU)和Q(X)的最高次數(shù)項系數(shù)。
3.—種修正歐幾里德算法的部分并行實現(xiàn)裝置,其特征在于,包括 初始化模塊,用于對錯誤值多項式和錯誤位置多項式進行初始化,使Q(X) = S(X),R(x) = 0,n (x) = 0, u (x) = I ;其中,R(X)為錯誤值多項式,n (x)為錯誤位置多項式,S(X)為伴隨多項式,Q(X)和U (x)分別為計算錯誤值多項式和計算錯誤位置多項式的輔助多項式; 并行運算單元,與初始化模塊相連接,每個并行運算單元包括16個組合邏輯運算單元,每個并行運算單元在一個周期內(nèi)完成四分之一錯誤值多項式和錯誤位置多項式的迭代運算,在4個周期內(nèi)完成所有錯誤值多項式和錯誤位置多項式的一次迭代運算;在每次錯誤值多項式迭代運算完成后得到錯誤值多項式的最高次數(shù)項系數(shù),同時一次迭代運算完成后進行移項操作,將空出的組合邏輯運算單元在下一次迭代運算時用于錯誤位置多項式的計算。
全文摘要
本發(fā)明公開了一種修正歐幾里德算法的部分并行實現(xiàn)方法,步驟一、根據(jù)伴隨式的計算結(jié)果,初始化錯誤位置多項式和錯誤值多項式,使Q(x)=S(x),R(x)=0,η(x)=0,μ(x)=1;其中,R(x)為錯誤值多項式,η(x)為錯誤位置多項式;步驟二、在同一周期內(nèi)同時對錯誤值多項式和錯誤位置多項式并行進行迭代運算;步驟三、在設(shè)定的周期結(jié)束時,停止迭代運算,得到錯誤位置多項式和錯誤值多項式。本發(fā)明還公開了一種修正歐幾里德算法的部分并行實現(xiàn)裝置。本發(fā)明既能有效減少組合邏輯運算單元的數(shù)量,又能保證高效進行數(shù)據(jù)處理。
文檔編號H04L1/00GK102655443SQ201110052369
公開日2012年9月5日 申請日期2011年3月4日 優(yōu)先權(quán)日2011年3月4日
發(fā)明者張玉安 申請人:上海華虹集成電路有限責(zé)任公司