亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

基于GMR衛(wèi)星通信協(xié)議的CRC計算方法及裝置與流程

文檔序號:12490734閱讀:628來源:國知局
基于GMR衛(wèi)星通信協(xié)議的CRC計算方法及裝置與流程

本發(fā)明涉及衛(wèi)星移動通信基帶信號處理領域,特別涉及基于地球同步軌道(GEO,Geostationary Earth Orbit)的移動無線接口(GMR,GEO-Mobile Radio Interface)衛(wèi)星移動通信系統(tǒng)循環(huán)冗余校驗碼(CRC,Cyclic Redundancy Check)計算方法及裝置。



背景技術:

基于地球同步軌道的移動無線接口衛(wèi)星移動通信協(xié)議來源于第三代合作伙伴項目(3GPP,the 3rd Generation Partnership Project)地面數(shù)字蜂窩標準,可以無縫接入全球移動通信系統(tǒng)/通用移動通信系統(tǒng)(GSM,Global System for Mobile Communication/UMTS,Universal Mobile Telecommunications System)核心網(wǎng)。GMR衛(wèi)星通信協(xié)議廣泛應用在ACeS、ICO、Inmarsat、SkyTerra、TerreStar和Thuraya衛(wèi)星移動通信系統(tǒng)中。

為便于接收方檢查收到的信息有無錯誤,一般會采用循環(huán)冗余校驗碼。若循環(huán)冗余校驗碼(CRC,Cyclic Redundancy Check)碼字長度為N,信息字段為K位,校驗字段為R位(N=K+R),如圖1所示,則對于CRC碼集中的任一碼字,存在且僅存在一個R次多項式g(D),使得:

T(D)=A(D)g(D)=DRm(D)+r(D)

其中:m(D)為K次信息多項式,r(D)為R次校驗多項式,g(D)稱為生成多項式:

g(D)=gRDR+g(R-1)D(R-1)+...+g2D2+g1D+g0

在GMR衛(wèi)星移動通信系統(tǒng)中,采用以下5種循環(huán)冗余校驗碼,其生成多項式分別為:

g3(D)=D3+D+1

g5(D)=D5+D3+D2+D+1

g8(D)=D8+D7+D4+D3+D+1

g12(D)=D12+D11+D3+D2+D+1

g16(D)=D16+D12+D5+1。

在傳統(tǒng)循環(huán)冗余校驗碼計算過程中,一般采用多項式除法運算,此時上述5種循環(huán)冗余校驗碼生成多項式分別需要采用4、6、9、13和17個比特來表示。

當前GMR衛(wèi)星移動通信主要采用16位數(shù)字信號處理(DSP,Digital Signal Processing)計算循環(huán)冗余校驗碼計算,以實現(xiàn)終端系統(tǒng)的小型化。對于生成多項式g16來說,如果仍采用多項式除法計算循環(huán)冗余校驗碼,則需要兩個長度為16比特的寄存器才能保存,此時寄存器有效利用率僅為53%(即17/32×100%=53%),造成了寄存器資源的極大浪費。如果將生成多項式g16存儲在兩個寄存器中,在采用16位DSP計算循環(huán)冗余校驗碼時,需要將長度為17比特的發(fā)送數(shù)據(jù)擴展為32比特信息并以此與兩個長度分別為16比特的校驗多項式進行異或操作,從而使異或操作增加了近一倍。



技術實現(xiàn)要素:

為解決現(xiàn)有技術寄存器資源利用率低或者異或操作計算量大的問題,本發(fā)明提供基于GMR衛(wèi)星通信協(xié)議的CRC計算方法及裝置。

本發(fā)明基于地球同步軌道的移動無線接口GMR衛(wèi)星移動通信系統(tǒng)循環(huán)冗余校驗碼CRC計算方法,包括:

S1、初始化長度為R的寄存器B;

S2、采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C;

S3、對寄存器B進行移1位操作,因移位而產(chǎn)生的空位用0填充;

S4、根據(jù)狀態(tài)標識值C更新寄存器B;

S5、讀出信息字段的第k+1位,重復S2-S5,直到信息字段所有比特信息處理完畢,寄存器B的值即為最終CRC輸出值。

步驟S1中寄存器B的初始化為值為全0;

優(yōu)選地,步驟S2所述采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C,包括:采用寄存器B第一位比特信息與信息字段的第k位比特信息進行異或運算得到狀態(tài)標識值C。

優(yōu)選地,所述根據(jù)狀態(tài)標識值C更新寄存器B包括:

如果狀態(tài)標識值C為1,則將寄存器B與剩余比特g1相同比特位進行異或運算后存回寄存器B的該比特位;所述剩余比特g1為將CRC生成多項式分為第一比特g0后長度為R的剩余比特。

優(yōu)選地,步驟S2所述采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C,包括:采用寄存器B第一位比特信息與信息字段的第k位比特信息進行異或運算得到狀態(tài)中間值C’,將狀態(tài)中間值C’與CRC生成多項式分為第一比特g0,再進行異或運算得到狀態(tài)標識值C。

優(yōu)選地,所述根據(jù)狀態(tài)標識值C更新寄存器B包括:

如果狀態(tài)標識值C為0,則將寄存器B與剩余比特g1相同比特位進行異或運算后存回寄存器B的該比特位;所述剩余比特g1為將CRC生成多項式分為第一比特g0后長度為R的剩余比特。

優(yōu)選地,步驟S3所述對寄存器B進行移1位操作包括對寄存器B進行左移1位操作。

本發(fā)明基于地球同步軌道的移動無線接口GMR衛(wèi)星移動通信系統(tǒng)循環(huán)冗余校驗碼CRC計算裝置,包括:

寄存器,長度為R,用于存儲校驗字段;

信息字段讀取單元,用于按比特位讀出信息字段的比特信息,讀出寄存器B第一位比特信息;

狀態(tài)標識值計算單元,用于采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C;

寄存器移位控制單元,用于對寄存器B進行左移1位操作,因移位而產(chǎn)生的空位用0填充;

寄存器更新控制單元,根據(jù)狀態(tài)標識值C更新寄存器B。

優(yōu)選地,所述狀態(tài)標識值計算單元,用于采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C,包括采用寄存器B第一位比特信息與信息字段的第k位比特信息進行異或運算得到狀態(tài)標識值C;

所述寄存器更新控制單元,根據(jù)狀態(tài)標識值C更新寄存器B,包括如果狀態(tài)標識值C為1,則將寄存器B與剩余比特g1相同比特位進行異或運算后存回寄存器B的該比特位;所述剩余比特g1為將CRC生成多項式分為第一比特g0后長度為R的剩余比特;

可選地,所述狀態(tài)標識值計算單元,用于采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C,包括采用寄存器B第一位比特信息與信息字段的第k位比特信息進行異或運算得到狀態(tài)中間值C’,將狀態(tài)中間值C’與CRC生成多項式的第一比特g0再進行異或運算得到狀態(tài)標識值C;

所述寄存器更新控制單元,根據(jù)狀態(tài)標識值C更新寄存器B,包括如果狀態(tài)標識值C為0,則將寄存器B與剩余比特g1相同比特位進行異或運算后存回寄存器B的該比特位;所述剩余比特g1為將CRC生成多項式分為第一比特g0后長度為R的剩余比特。

本發(fā)明充分利用16位定點DSP數(shù)字信號處理過程狀態(tài)變量信息,將GMR衛(wèi)星通信系統(tǒng)CRC生成多項式分為首比特信息和剩余比特信息,采用原位操作方式,首先采用寄存器B首比特值與從高位依次輸入的單個比特計算狀態(tài)標識值,然后對寄存器B進行左移1位操作,再根據(jù)所述狀態(tài)標識值采用寄存器B與CRC生成多項式剩余比特的異或值條件更新寄存器B,當所有輸入比特都經(jīng)過上述計算后,寄存器B中比特即為最終CRC輸出值。

與現(xiàn)有技術相比,本發(fā)明采用寄存器比特原位計算方式,最大限度降低了對寄存器個數(shù)需求,特別適合在16位DSP系統(tǒng)的應用,在此情況下,可使寄存器資源利用率從53%提高到100%。

附圖說明

圖1為現(xiàn)有CRC碼字結(jié)構(gòu)示意圖;

圖2為本發(fā)明CRC計算方法優(yōu)選實施例流程示意圖;

圖3本發(fā)明CRC計算過程寄存器比特信息變化示意圖;

圖4為本發(fā)明基于GMR衛(wèi)星通信協(xié)議的CRC計算裝置示意圖。

具體實施方式

為了使本發(fā)明的目的、技術方案及優(yōu)點更加清楚明白,以下結(jié)合附圖對本發(fā)明實施例進一步詳細說明。

本發(fā)明基于GMR衛(wèi)星通信協(xié)議的CRC計算方法,僅采用與定義相對應的左右次序進行描述,具體包括以下步驟,如圖2所示:

本發(fā)明實施例將GMR衛(wèi)星通信系統(tǒng)CRC生成多項式g分為第一比特g0和長度為R的剩余比特g1。即是說,將CRC生成多項式g表示為兩個序列,即g=[g0g1],其中g0=1,g1為余下的長度為R的比特序列。

S1、初始化長度為R的寄存器B;

可選地,寄存器B的初始化值可以是隨機數(shù),但作為更優(yōu)的方式,長度為R(R=3,5,8,12,16)的寄存器B,初始化比特值為全0。

初始化輸入信息字段下標k=1,即延遲最多的輸入比特,讀出的信息字段第k個輸入比特表示為I(k),k=1,2,…,K,K為信息字段長度。

S2、采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C;

所述狀態(tài)標識值C的長度為1比特。在16位DSP系統(tǒng)中,狀態(tài)標識值C可以與溢出標識相對應。

作為一種優(yōu)選方式(標記為方式S2A),所述采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C包括,寄存器B第一位比特信息與信息字段的第k位比特信息進行異或運算得到狀態(tài)標識值C,即:

C=xor(I(k),B(1))(公式1)

其中I(k)表示信息字段第k個輸入比特,B(1)表示寄存器B的首個比特值,xor表示異或操作。

作為一種可選方式(標記為方式S2B),所述采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C,包括:采用寄存器B第一位比特信息與信息字段的第k位比特信息進行異或運算得到狀態(tài)中間值C’,將狀態(tài)中間值C’與CRC生成多項式第一比特g0進行異或運算得到狀態(tài)標識值C;即:

C=xor(xor(I(k),B(1)),g0) (公式2)

其中,g0=1。

S3、對寄存器B進行移1位操作,因移位而產(chǎn)生的空位用0填充;

所述對寄存器B進行移1位操作包括對寄存器B進行左移1位操作;

寄存器左移1位,可以表示為:

B=[B(2:R) 0] (公式3)

其中2:R表示讀取寄存器B的第2,3,…,R個比特存放在寄存器B的第1,2,…,R-1比特位置,因移位而產(chǎn)生第R個比特位采用0進行填充。

S4、根據(jù)狀態(tài)標識值C更新寄存器B;

對上述方式S2A相對應,如果狀態(tài)標識值C為1,則將寄存器B與剩余比特g1相同比特位進行異或運算后存回寄存器B的該比特位;所述剩余比特g1為將CRC生成多項式分為第一比特g0后長度為R的剩余比特;

對上述方式S2B相對應,如果狀態(tài)標識值C為0,則將寄存器B與剩余比特g1相同比特位進行異或運算后存回寄存器B的該比特位;所述剩余比特g1為將CRC生成多項式分為第一比特g0后長度為R的剩余比特。

寄存器更新可以表示為:

B=xor(B,g1) (公式4)

其中,g1為不包含CRC生成多項式首比特的長度為R比特序列,也就是采用寄存器B和g1的異或值再賦給寄存器B。

S5、讀出信息字段的第k+1位,重復S2-S5,直到信息字段所有比特信息處理完畢,寄存器B的值為最終CRC輸出值。

CRC的最終目的是要通過長度為K的信息I和生成多項式g,計算剩余多項式r,本發(fā)明通過K次迭代,最終在B中保留的就是CRC輸出值,原始的信息I不需要輸出。

下面對本發(fā)明CRC計算過程寄存器比特信息變化進行詳細說明,如圖3所示。當生成多項式取g16(D)時,g1=[0001 0000 0010 0001](取其他生產(chǎn)多項式時,CRC計算過程完全相同),寄存器B的長度為16,初始化為B=[B(1),B(2),…,B(16)]=[0,0,…,0];讀取第k個信息比特I(k),與寄存器第1個比特B(1)以及CRC生成多項式第一比特g0,采用優(yōu)選方式公式1或采用可選方式公式2計算狀態(tài)標識值C;對寄存器B進行移1位操作,就是將寄存器B的第2,3,…,16和0共16比特構(gòu)成新的寄存器值B;利用公式4條件更新寄存器B,也可以表示g1的第4,11,16比特與寄存器B的對應延遲位置進行異或并移位。從上面的描述可以看出,整個CRC校驗比特的計算均是基于寄存器B的原位進行計算,從而節(jié)約了寄存器的資源。在16位DSP指令系統(tǒng)中,狀態(tài)標識值C一般作為寄存器的隱影比特位(Shadow bit),隨著操作指令自動更新狀態(tài)標識值C。在16位DSP系統(tǒng)中,很多指令直接依據(jù)狀態(tài)標識值C作為執(zhí)行條件,以便于條件執(zhí)行寄存器更新等相關功能。

下面對本發(fā)明基于GMR衛(wèi)星通信協(xié)議的CRC計算裝置進行描述,如圖4所示,包括:

寄存器B,長度為R,用于存儲校驗字段;

信息字段讀取單元,用于按比特位讀出信息字段的比特信息I(k);

狀態(tài)標識值計算單元,用于采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C;

寄存器移位控制單元,用于對寄存器B進行左移1位操作,因移位而產(chǎn)生的空位用0填充;

寄存器更新控制單元,根據(jù)狀態(tài)標識值C更新寄存器B。

作為一種可實現(xiàn)方式,所述狀態(tài)標識值計算單元,用于采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C,包括采用寄存器B第一位比特信息與信息字段的第k位比特信息進行異或運算得到狀態(tài)標識值C;

所述寄存器更新控制單元,根據(jù)狀態(tài)標識值C更新寄存器B,包括如果狀態(tài)標識值C為1,則將寄存器B與剩余比特g1相同比特位進行異或運算后存回寄存器B的該比特位;所述剩余比特g1為將CRC生成多項式分為第一比特g0后長度為R的剩余比特。

作為另一種可實現(xiàn)方式,所述狀態(tài)標識值計算單元,用于采用寄存器B第一位比特信息和信息字段的第k位比特信息計算狀態(tài)標識值C,包括采用寄存器B第一位比特信息與信息字段的第k位比特信息進行異或運算得到狀態(tài)中間值C’,將狀態(tài)中間值C’與CRC生成多項式的第一比特g0再進行異或運算得到狀態(tài)標識值C;

所述寄存器更新控制單元,根據(jù)狀態(tài)標識值C更新寄存器B,包括如果狀態(tài)標識值C為0,則將寄存器B與剩余比特g1相同比特位進行異或運算后存回寄存器B的該比特位;所述剩余比特g1為將CRC生成多項式分為第一比特g0后長度為R的剩余比特。

本發(fā)明裝置中各部件的實現(xiàn)方式與方法實現(xiàn)方式可以相互引用,不再贅述。

本發(fā)明采用寄存器比特原位計算方式,最大限度降低了對寄存器個數(shù)需求。本發(fā)明在3,5,8,12,16位的DSP系統(tǒng)均可以適用,而特別適合在16位DSP系統(tǒng)的應用,在此情況下,可使寄存器資源利用率從53%(即17/32×100%=53%)提高到100%(即16/16*100%)。

以上所舉實施例,對本發(fā)明的目的、技術方案和優(yōu)點進行了進一步的詳細說明,所應理解的是,以上所舉實施例僅為本發(fā)明的優(yōu)選實施方式而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)對本發(fā)明所作的任何修改、等同替換、改進等,均應包含在本發(fā)明的保護范圍之內(nèi)。

當前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1