999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于verilog的CRC算法的實(shí)現(xiàn)

2017-05-26 13:09:01洪向宇
中國新通信 2017年7期

洪向宇

【摘要】 循環(huán)校驗(yàn)碼具有良好的誤碼檢測和抗干擾能力,廣泛應(yīng)用于通信系統(tǒng)。本文從CRC原理探究串行算法,利用matlab對(duì)CRC串行算法進(jìn)行仿真,利用Verilog語言實(shí)現(xiàn)CRC校驗(yàn)?zāi)K,并最終驗(yàn)證設(shè)計(jì)的正確性。

【關(guān)鍵字】 循環(huán)校驗(yàn)碼 CRC

一、引言

循環(huán)校驗(yàn)碼(cyclic redundancy check, CRC)具有良好的誤碼檢測和抗干擾能力,可廣泛應(yīng)用于通信系統(tǒng)的編解碼技術(shù),提高通信系統(tǒng)的檢錯(cuò)能力。由于CRC為循化冗余檢驗(yàn)碼,因此CRC能夠檢出大部分突發(fā)長度錯(cuò)誤和所有奇數(shù)隨機(jī)錯(cuò)誤1。

在通信系統(tǒng)中,CRC編碼模塊常常作為通信系統(tǒng)的一部分出現(xiàn)的,因此CRC編碼模塊可使用硬件描述語言進(jìn)行設(shè)計(jì)實(shí)現(xiàn),利用可編程邏輯器件實(shí)現(xiàn)CRC模塊,既滿足了模塊對(duì)校驗(yàn)時(shí)鐘及速度的需求,也能夠直接簡便的實(shí)現(xiàn)CRC模塊的硬件電路。本文基于Verilog語言,利用串行算法實(shí)現(xiàn)了16位校驗(yàn)的CRC模塊并利用matlab對(duì)算法進(jìn)行驗(yàn)證。

二、CRC串行算法

CRC校驗(yàn)碼依據(jù)線性編碼原理2。對(duì)于信源為n位的二進(jìn)制數(shù)據(jù)序列,經(jīng)過算法處理,即輸入信源與生成多項(xiàng)式進(jìn)行模二除法,所得余數(shù)生成m位校驗(yàn)碼。將m位校驗(yàn)碼放在信源序列的后面進(jìn)行數(shù)據(jù)傳輸,接收端以相同算法對(duì)接收數(shù)據(jù)進(jìn)行校驗(yàn)。收到信源信息,如未發(fā)生誤碼,則接收到的校驗(yàn)位應(yīng)能夠被生成多項(xiàng)式模二整除。算法公式可表示為,

其中,xnD(x)為做n位移位運(yùn)算的信源序列,g(x)為生成多項(xiàng)式,P(x)|R(x)為模二除法的商和余數(shù)。

三、CRC算法的FPGA實(shí)現(xiàn)

由于并行插入16bit信源碼與串行的16bit信源碼序列是等效的,因此CRC串行與并行算法在電路級(jí)是等效的3。CRC算法中的模二除法可用硬件電路中的移位寄存器實(shí)現(xiàn)。

利用matlab可對(duì)算法進(jìn)行仿真,其中g(shù)為生成多項(xiàng)式,input為48bit測試向量,因?yàn)楸疚氖褂昧薈RC16校驗(yàn),因此測試向量需在幀尾補(bǔ)足16個(gè)0,變?yōu)?4bit串行數(shù)據(jù)。運(yùn)行代碼,生成測試校驗(yàn)碼R。

由于需對(duì)硬件電路進(jìn)行時(shí)序匹配,因此在verilog語言中分三個(gè)模塊實(shí)現(xiàn)CRC校驗(yàn),其中初始態(tài)idle對(duì)輸入進(jìn)行時(shí)序的匹配和對(duì)齊,shift狀態(tài)中設(shè)計(jì)移位寄存器,按照上述的算法實(shí)現(xiàn)移位計(jì)算,生成的校驗(yàn)位R(X)和din組成輸出,在信道中予以傳輸。

移位寄存器的代碼如下所示。其中g(shù)_sequence為生成多項(xiàng)式。

if shift_reg[15] <= shift_reg[14] ^ g_sequence[15];

……

shift_reg[0] <= dout_ram ^ g_sequence[0];

else shift_reg <= {shift_reg[14:0],dout_ram};

值得注意的是,由于硬件電路的時(shí)序特點(diǎn),在開始計(jì)算后的71個(gè)時(shí)鐘周期可輸出64bit數(shù)據(jù),這是由于計(jì)算16位CRC碼需要64個(gè)時(shí)鐘周期,輸出匹配會(huì)延遲3個(gè)時(shí)鐘周期。

利用modelsim對(duì)verilog代碼進(jìn)行仿真,如圖1所示,對(duì)比輸出的校驗(yàn)碼,為R=[1 1 0 0 1 0 1 1 1 0 1 1 1 1 1 0],與matlab代碼的輸出一致。

四、仿真與驗(yàn)證

一般的 CRC 校驗(yàn)碼生成器即可編碼又可解碼, 編碼用于對(duì)輸入數(shù)據(jù)計(jì)算 CRC 校驗(yàn)碼, 解碼用于驗(yàn)證接收到的數(shù)據(jù)是否正確, 其兩個(gè)過程對(duì)于CRC 校驗(yàn)碼生成器是一樣的4。

利用modelsim對(duì)Verilog代碼進(jìn)行仿真,測試的48bit信源序列通過CRC校驗(yàn)?zāi)K輸出64bit序列,如圖2所示。

將64bit數(shù)據(jù)導(dǎo)出,導(dǎo)入matlab CRC校驗(yàn)進(jìn)行驗(yàn)證,其中input為modelsim輸出的64bit序列。通過運(yùn)算得出一維0矩陣,有算法可知,本文設(shè)計(jì)的CRC校驗(yàn)?zāi)K能夠?qū)崿F(xiàn)誤碼校驗(yàn)功能。

參 考 文 獻(xiàn)

[1]現(xiàn)代通信原理 清華大學(xué)出版社

[2] CRC - 16算法與 FPGA實(shí)現(xiàn),羅志聰 ,孫奇燕 四川兵工學(xué)報(bào) 35-5

[3]基于Verilog的CRC并行實(shí)現(xiàn) 黃維超 劉橋 黃初華 微計(jì)算機(jī)信息 2009.25 10-3

[4] CRC 校驗(yàn)碼并行計(jì)算的 FPGA 實(shí)現(xiàn) 張樹剛, 張遂南, 黃士坦 計(jì)算機(jī)技術(shù)與發(fā)展,2007 2 2

主站蜘蛛池模板: 亚洲精品无码久久毛片波多野吉| 激情六月丁香婷婷| 精品99在线观看| 久久精品国产电影| 久久99精品国产麻豆宅宅| 国产精品尤物铁牛tv| 成人国产一区二区三区| 日本a级免费| 国产真实乱人视频| 欧美日本在线播放| 欧美中文字幕第一页线路一| 免费在线a视频| 四虎国产永久在线观看| 99久久99这里只有免费的精品 | 全午夜免费一级毛片| 精品国产中文一级毛片在线看| 亚洲人成在线精品| 国产9191精品免费观看| 伊人精品成人久久综合| 国产精品漂亮美女在线观看| 亚洲成人网在线观看| 精品视频福利| 国产69囗曝护士吞精在线视频| 91精品国产综合久久不国产大片| 免费Aⅴ片在线观看蜜芽Tⅴ| 天堂网亚洲系列亚洲系列| 日韩高清中文字幕| 波多野结衣在线se| 欧美日韩国产高清一区二区三区| 无码 在线 在线| 人妻精品全国免费视频| 欧美成人免费午夜全| 大香伊人久久| 2022国产无码在线| 国产杨幂丝袜av在线播放| 久久人人爽人人爽人人片aV东京热| 东京热av无码电影一区二区| 亚洲国产日韩一区| 99re热精品视频国产免费| 亚洲国产天堂久久综合| 久久大香伊蕉在人线观看热2| 中文字幕在线不卡视频| 99视频国产精品| 国产毛片高清一级国语 | 亚洲AV成人一区国产精品| 日本在线欧美在线| 久久夜夜视频| 强乱中文字幕在线播放不卡| 欧美天堂在线| 亚洲六月丁香六月婷婷蜜芽| 亚洲综合片| 国产va在线| 国产99视频精品免费观看9e| 黄色三级网站免费| 香蕉精品在线| 亚洲视频免费在线看| 天堂中文在线资源| 无码aaa视频| 无遮挡一级毛片呦女视频| 午夜日b视频| 亚洲色图欧美| 免费看av在线网站网址| 色欲国产一区二区日韩欧美| 婷婷亚洲天堂| 久久一本精品久久久ー99| 国产欧美高清| 天堂av综合网| 亚洲国产成人在线| 无码免费视频| 国产大片喷水在线在线视频 | 99视频国产精品| 亚洲色图综合在线| 国产精品亚洲专区一区| 婷婷成人综合| 国产国拍精品视频免费看| 亚洲午夜18| 亚洲黄色网站视频| 亚洲三级影院| 91丝袜美腿高跟国产极品老师| 一级不卡毛片| 亚洲va欧美va国产综合下载| 永久免费av网站可以直接看的|