亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        TD-LTE中基于碼塊分割的CRC模塊研究與設(shè)計*

        2012-05-12 03:14:54曹型兵楊高進余利成
        山西電子技術(shù) 2012年4期
        關(guān)鍵詞:校驗碼譯碼流程圖

        曹型兵,楊高進,余利成

        (1.重慶郵電大學(xué)通信應(yīng)用研究所,重慶400065;2.重慶郵電大學(xué)重慶市移動通信技術(shù)重點實驗室,重慶400065)

        TD-LTE無線終端測試平臺中基帶板以DSP+ARM+FPGA為核心,DSP主要負責(zé)處理物理層軟件中的部分內(nèi)容,F(xiàn)PGA完成系統(tǒng)定時和物理層算法的部分內(nèi)容。在下行物理信道一般處理流程中,從高層下來的數(shù)據(jù)需要經(jīng)過如圖1所示的幾個階段,包括CRC添加、碼塊分割以及碼塊CRC添加、信道編碼、速率匹配、碼塊級聯(lián)等一系列的處理流程[1]。最后實現(xiàn)基帶信號的生成,通過天線端口將數(shù)據(jù)信號發(fā)送出去。

        圖1 下行物理信道一般處理流程

        在測試儀表的基帶板開發(fā)中,前期對于CRC的添加以及碼塊分割的過程采用了DSP進行其過程的實現(xiàn)。在采用DSP實現(xiàn)時,由于首先要對一組數(shù)據(jù)進行全數(shù)據(jù)的CRC添加,其次對于數(shù)據(jù)量超過一定位數(shù)時進行碼塊分割操作再做CRC添加。當(dāng)高層發(fā)送下來的數(shù)據(jù)量過大時,采用DSP實現(xiàn)時需要內(nèi)存空間進行清理,預(yù)留出一定的空間確保數(shù)據(jù)量能夠完整地存儲,以便進行后續(xù)的運算處理。并且采用DSP實現(xiàn)需要消耗大量的時鐘周期進行運算處理。

        本文根據(jù)實際情況需要,在DSP實現(xiàn)的基礎(chǔ)上提出了采用FPGA來實現(xiàn)其相應(yīng)的運算過程。FPGA通常用來實現(xiàn)較為固定的計算過程,在該設(shè)計方案中CRC校驗碼的添加,以及模塊的分割均采用FPGA來實現(xiàn),而DSP則用來進行數(shù)據(jù)以及控制信號的配置。從而可以更好地發(fā)揮FPGA與DSP的優(yōu)點。

        經(jīng)過多次的仿真以及實際平臺測試,實現(xiàn)了FPGA快速的生成CRC校驗碼,為后續(xù)的數(shù)據(jù)信號處理提供了可靠的保證,適用于TD-LTE無線綜合測試儀中。

        1 CRC校驗的原理

        在實際的傳輸信道中傳輸數(shù)字信號時,由于信道的傳輸特性不理想以及一些噪聲帶來的影響,從而導(dǎo)致接收端收到的信號不可避免地會發(fā)生錯誤,導(dǎo)致接收信號的失敗。因此,為了保證傳輸?shù)目煽啃?,就需要對傳輸過程進行差錯控制,循環(huán)冗余校驗CRC是一種高效率的差錯控制方案。其具有編碼及錯誤檢測簡單,容易實現(xiàn)且誤判概率低、檢錯能力強等優(yōu)點,在通信系統(tǒng)中得到了廣泛的應(yīng)用。

        采用CRC校驗時,發(fā)送方和接收方均采用同一個生成多項式g(D)(根據(jù)不同的需要選擇不同的生成多項式),將最后的余數(shù)作為CRC校驗碼。根據(jù)3GPP[2]相關(guān)協(xié)議LTE中采用的校驗比特由如下循環(huán)生成多項式之一產(chǎn)生。

        對于物理下行共享信道采用gCRC24A(D)生成多項式,而對于下行廣播信道則采用gCRC16(D)生成多項式。CRC校驗碼的編碼原理是采用待發(fā)送的二進制數(shù)據(jù)a(x)除以生成多項式g(D),將其最終的余數(shù)作為CRC校驗碼。在FPGA中,實現(xiàn)CRC編碼實際上是一個循環(huán)移位的模2運算。通過反復(fù)的移位和進行CRC的除法,最后得到的數(shù)據(jù)就是所需的余數(shù)。將所得到的余數(shù)放置在原始序列的尾部即實現(xiàn)了 CRC 的編碼過程[3]。

        對于CRC的解碼過程,即采用與編碼相同的生成多項式,同時也采用循環(huán)移位的模2運算,當(dāng)計算出的結(jié)果為0時,譯碼正確,即完成了CRC解碼過程,否則判為譯碼錯誤,則向發(fā)射端反饋NACK,請求數(shù)據(jù)重傳。

        2 LTE中CRC處理方式

        在LTE系統(tǒng)中,CRC的處理的具體長度由高層(MAC層)根據(jù)傳輸信道所承載的業(yè)務(wù)通過信令來通知傳輸信道,每個傳輸塊的CRC校驗的計算都要用到整個傳輸塊(TB)的數(shù)據(jù)信息。當(dāng)整個傳輸塊的數(shù)據(jù)信息較長時,需要對TB進行分段處理。對于TB的分段,第一種可以選擇先對整個TB進行CRC處理,然后進行分段處理,如圖2(a)所示;第二種方法是先進行編碼塊(CB)分段處理,然后對每個CB分別添加CRC比特,如圖2(b)所示;還有一種方法可以同時采用TB-CRC處理和CB-CRC處理,如圖2(c)所示[4]。

        經(jīng)過研究發(fā)現(xiàn),在原有的TB-CRC處理的基礎(chǔ)上,在每個CB上分別添加CRC校驗信息可以降低譯碼的復(fù)雜度,減小所需的譯碼延時及緩存器的大小,從而提高接收機連續(xù)傳輸處理能力,支持LTE系統(tǒng)的高速率傳輸,并且可以加快接收機的處理速度,實現(xiàn)快速的HARQ。因此,最后采用TBCRC和CB-CRC處理的方式[4]。

        圖2 3種CRC處理方式

        CRC處理過程可以表述為:先在TB上添加24 bit CRC,然后如果進行碼塊分段(當(dāng)傳輸塊長于6144 bit時,此處選擇6144 bit是因為在后續(xù)的),再在每個CB上添加24 bitCRC,如圖3所示。

        圖3 CRC處理過程

        采用這種雙層CRC結(jié)構(gòu),接收端就可以在發(fā)現(xiàn)1個CB譯碼錯誤后停止譯碼,馬上要求重傳,而不需要等待整個TB譯碼完畢再反饋NACK,從而不僅避免了后續(xù)CB譯碼的無謂功率消耗,而且節(jié)省了處理時間,減小了HARQ重傳時延,可以提高單位時間內(nèi)的系統(tǒng)吞吐量。

        而24bitTB-CRC則可以進一步減小CB CRC漏檢的幾率,防止1個CB上的漏檢導(dǎo)致整個TB漏檢,從而保證了整個TB上的漏檢概率在6×10-8以下。

        此方法還可以有效降低高速率傳輸時譯碼的平均迭代次數(shù),減小接收機硬件的復(fù)雜度,降低對緩存空間的要求。另外,當(dāng)進行多碼字(Code Word,CW)MIMO信號的譯碼時,也可以利用CB-CRC實現(xiàn)CW之間的串行干擾消除(SIC)操作。

        采用上述雙層CRC結(jié)構(gòu)需要考慮對TB-CRC和CBCRC是采用相同的CRC生成多項式,還是不同的生成多項式。經(jīng)過仿真研究發(fā)現(xiàn),使用不同多項式可以獲得更低的漏檢概率,因此確定采用不同的CRC生成多項式分別生成TB-CRC和CB-CRC。

        2.1 CRC 計算

        CRC 計算模塊的輸入比特為 a0,a1,a2,a3,…,aA-1,校驗比特為 p0,p1,p2,p3,…,pL-1。A 是輸入比特的長度,L 是校驗比特的數(shù)目。將生成的校驗比特添加至CRC的尾部。添加過的 CRC 之后的比特為:b0,b1,b2,b3,…,bB-1,添加后的比特數(shù)為B=A+L。ak和bk的關(guān)系為:

        2.2 碼塊分段以及碼塊CRC添加

        當(dāng)輸入的比特流比特數(shù)B大于最大碼塊大小Z(Z=6144)時,輸入的比特流則需要分割,并且需要在每個CB上添加一個長度為24的CRC序列。具體的碼塊分割步驟可以采用如下圖4所示的流程圖進行實現(xiàn)。

        圖4 碼塊分割及碼塊CRC添加流程圖

        3 硬件實現(xiàn)過程

        本設(shè)計中FPGA選擇XILINX公司的VIRTEX-5(XC5VSX95T)芯片,軟件環(huán)境為Xilinx10.1,仿真軟件采用Modelsim SE 6.5。

        3.1 編碼器實現(xiàn)流程

        首先設(shè)置一個data_reg寄存器,當(dāng)進行CRC-24校驗時,先往寄存器中輸入24bit數(shù)據(jù),輸入完成后首先判斷data_reg最高位是否為1,如果為1,則data_reg=data_reg^gCRC24A(D);否則data_reg左移一位,讀入一個新的數(shù)據(jù),當(dāng)原有數(shù)據(jù)輸入完成后繼續(xù)往其中輸入1bit數(shù)據(jù)0,當(dāng)輸入的數(shù)據(jù)0達到25個時,此時data_reg的高24bit數(shù)據(jù)即為所求的CRC碼塊。具體的流程圖如圖5所示。

        圖5 CRC校驗碼計算流程圖

        通過仿真可以得到如圖6所示的計算結(jié)果圖。此處采用CRC-24A校驗,當(dāng)數(shù)據(jù)接收完成后,開始進行計算過程data_reg=30’h65996659,當(dāng) crc_zero_cnt計數(shù)到 25 時即可輸出結(jié)果,在光標處看到輸出的crc_data=24’h0a633a,并將此結(jié)果附在原有數(shù)據(jù)尾部輸出crc_out=54’h659966590a633a。其計算結(jié)果與MATLAB計算結(jié)果相同。由于輸入的數(shù)據(jù)位數(shù)有不同的情況,可以采用雙端口RAM進行數(shù)據(jù)的存儲,通過從RAM中讀數(shù)據(jù),做運算,并將運算后的結(jié)果存入RAM中,從而降低FPGA內(nèi)部LUT-FF資源使用率。

        3.2 碼塊分割與碼塊CRC添加實現(xiàn)流程

        碼塊的分割過程可以參照圖4碼塊分割及碼塊CRC添加流程圖進行其過程的實現(xiàn)。在實現(xiàn)的過程中,當(dāng)采用分組查表法查出滿足條件的K+時,我們需要將188種Turbo編碼參數(shù)存儲在一個ROM中;在查表時,若每次都從頭開始查找則會大大降低查找速度。我們可以通過分組將其分為有相同的條件的幾個小組,首先確定數(shù)據(jù)所在的地址范圍,再通過對內(nèi)部數(shù)據(jù)比較即可以找到所需的K+值,找到K+值后,即可以進一步計算出K-的值。通過F=C+·K++C-·K--B’計算出填充比特的數(shù)目,如圖7所示。當(dāng)進行的傳輸塊比特長度為9500時,首先通過TB-CRC,碼塊長度變?yōu)?524,通過計算得到 K+值為4800,K-值為4736,但是此時長度為K+的碼塊數(shù)目為2,長度為K-的碼塊數(shù)目為0,通過計算得到填充比特長度為F_TIANCHONG_BIT=27,與實際計算結(jié)果相同。

        對于填充比特則需要添加至傳輸塊的頭部,完成填充比特的添加后,根據(jù)不同的K-與K+值,取出相應(yīng)的數(shù)據(jù)長度進行碼塊的CRC添加過程,此時采用的生成多項式為gCRC24B(D)計算過程采用圖8 CRC校驗碼計算流程圖所示過程進行計算。將計算出的數(shù)據(jù)添加至原始碼塊的尾部。從而完成了碼塊的分割以及分割后碼塊的CRC添加過程。

        圖6 CRC校驗實現(xiàn)波形圖

        圖7 碼塊分割實現(xiàn)波形圖

        圖8 碼塊分割后CRC添加實現(xiàn)波形圖

        3.3 CRC校驗實現(xiàn)流程

        對于CRC的校驗過程仍然可以采用CRC校驗碼生成過程的流程來實現(xiàn),對于尾部添加了CRC校驗碼的比特流,與生成多項式進行除法運算,當(dāng)計算出的結(jié)果為0時,即完成了正確的校驗過程,否則認為接收到的數(shù)據(jù)出現(xiàn)錯誤,此時需要向高層發(fā)出請求重傳標志信息。從圖9中可以看出當(dāng)crc_out_decode_buff=25’h1864cfb與crc_24相等時,計算的結(jié)果為0,此時crc_decode_right信號拉高,標志校驗結(jié)束,crc_decode_wrong與data_repeat信號保持為低。

        圖9 CRC校驗成功實現(xiàn)波形圖

        通過對程序進行綜合、布局布線,將生成的BIT文件加載到硬件平臺后能夠正常運行,通過ChipScope軟件,可以進一步從實際情況驗證CRC模塊以及碼塊分割模塊的正確性和穩(wěn)定性。使得該程序設(shè)計能夠用在實際的開發(fā)應(yīng)用中。

        4 總結(jié)

        本文在采用DSP實現(xiàn)碼塊分割與CRC添加的基礎(chǔ)上,對其在實現(xiàn)的過程中對資源的利用以及處理時間的消耗基礎(chǔ)上,提出了采用基于FPGA[9]的CRC校驗與碼塊分割的相關(guān)研究,詳細地介紹了CRC校驗的原理,碼塊分割及碼塊CRC添加原理以及各個系統(tǒng)模塊之間的通信。經(jīng)過軟件仿真和代碼調(diào)試對于高層傳輸?shù)臄?shù)據(jù)信息,F(xiàn)PGA能夠正確的進行處理。此設(shè)計處理模式已應(yīng)用于測試儀表系統(tǒng)中,通過實驗證明,其工作可靠,達到了設(shè)計要求。

        [1]3GPP TS 36.212 V9.1.0:Downlink Transport Channels and Control Information(Release9)[S].2010(3):40 -43.

        [2]3GPP TS 36.212 V9.1.0:CRC Calculate on(Release 9)[S].2010(3):8 -9.

        [3]3GPP TS 36.212 V9.1.0:Code Block Segmentation and Code Block CRC Attachment(Release 9)[S].2010(3):9-10.

        [4]沈嘉,索士強,全海洋,等.3GPP長期演進(LTE)技術(shù)原理與系統(tǒng)設(shè)計[M].北京:人民郵電大學(xué)出版社,2008:1-20.

        [5]任君玉,黃良玉.TD-SCDMA中CRC算法的研究與設(shè)計[J].移動通信,2011(18):51 -53.

        [6]金素梅,王家禮.基于 FPGA的 CRC編碼器的實現(xiàn)[J].儀器與儀表,2005(24):18 -22.

        [7]蘇明,姚冬蘋.專用異步串口通信電路的FPGA實現(xiàn)[J].物聯(lián)網(wǎng)技術(shù),2011,5(5):65 -67.

        [8]田佳,王一平.基于FPGA的帶CRC校驗的異步串口通信[J].現(xiàn)代電子技術(shù),2010,33(20):17 -19.

        [9]夏宇聞.Verilog數(shù)字系統(tǒng)設(shè)計教程[M].第2版.北京:北京航空航天大學(xué)出版社,2008.

        [10]吳厚航.深入淺出玩轉(zhuǎn)FPGA[M].北京:北京航空航天大學(xué)出版社,2010:51-52.

        猜你喜歡
        校驗碼譯碼流程圖
        基于校正搜索寬度的極化碼譯碼算法研究
        基于Excel實現(xiàn)書號校驗碼的驗證
        專利申請審批流程圖
        河南科技(2016年8期)2016-09-03 08:08:22
        專利申請審批流程圖
        河南科技(2016年6期)2016-08-13 08:18:29
        從霍爾的編碼譯碼理論看彈幕的譯碼
        新聞傳播(2016年3期)2016-07-12 12:55:27
        基于FPGA的循環(huán)冗余校驗碼設(shè)計
        電子世界(2015年14期)2015-11-07 05:32:29
        身份證號碼中的數(shù)學(xué)
        LDPC 碼改進高速譯碼算法
        遙測遙控(2015年2期)2015-04-23 08:15:19
        寧海縣村級權(quán)力清單36條
        基于概率裁剪的球形譯碼算法
        天天综合色中文字幕在线视频| 日本大片在线看黄a∨免费| 国产精品日韩高清在线蜜芽| 亚洲欧美国产成人综合不卡| 一区二区三区日本视频| 亚无码乱人伦一区二区| 亚洲色无码国产精品网站可下载| 日韩欧美中文字幕不卡| 特黄三级一区二区三区| 久久一区二区三区老熟女| 天堂国产一区二区三区| 性高朝久久久久久久| 国产精品成人嫩妇| 日韩高清av一区二区| 不卡av网站一区二区三区| 日本无码欧美一区精品久久| 久久久无码一区二区三区| 亚洲欧洲AV综合色无码| 亚洲一区久久蜜臀av| 久久黄色视频| 国产va免费精品高清在线| 色窝窝无码一区二区三区2022| 日本人妖一区二区三区| 麻豆91蜜桃传媒在线观看| 末发育娇小性色xxxx| 精品国产群3p在线观看| 黄色三级一区二区三区| 日韩一区在线精品视频| 一夲道无码人妻精品一区二区| 91麻豆精品激情在线观看最新| 狼人av在线免费观看| 蜜臀av一区二区三区免费观看 | 国产av在线观看久久| 免费a级毛片永久免费| 国模精品二区| 日本高清一区二区三区在线| 国产亚洲欧美精品永久| 9lporm自拍视频区| 99久久精品一区二区三区蜜臀 | 激情久久黄色免费网站| 人妻少妇乱子伦精品无码专区电影|