CRC校验

CRC校验

1 基本原理
CRC校验原理实际上就是在一个p位二进制数据序列之后附加一个r位二进制检验码(序列),从而构成一个总长为n=p+r位的二进制序列。附加一个r位二进制序列、附加在数据序列之后的这个检验码与数据序列的内容之间存在着某种特定的关系。如果因干扰等原因使数据序列中的某一位或某些位发送错误,这种特定关系就会被破坏。因此,通过检查这一关系,就可以实现对数据正确性的检验。

2 几个基本概念

  1. 帧检验序列(FCS):为了进行差错检验而添加的冗余码。
  2. 多项式模2运行:实际上是按异或(exclusive OR)运算,即相同为0,相异为1,也就是不考虑进位、错位的二进制加减运算。如:10011011 + 11001010 = 01010001.
  3. 生成多项式:当进行CRC检验时,发送方与接收方需要事先约定一个除数,即生成多项式。生成的多项式的最高位与最低位必须是1.常用的CRC码的生成多项式有:CRC8 = X8+X5+X4+1;每一个生成多项式都可以与一个代码相对应,如CRC8对应代码:100110001.

CRC8检验码代码生成

7位模式的CRC公式为:x8+ x6+ x3+ x2+ 1
这个检验码生成逻辑需要自己动手编写代码,可以参考easics公司的网页,它为我们提供了自动生成Verilog代码的便捷功能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/243756.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

64位ubuntu kylin 16.04下tiny4412开发环境搭建

以下内容均来自互联网,我只是大自然的搬运工。 ubuntu用的是ubuntukylin-16.04-desktop-amd64.iso 1,ubuntu和windows时间不统一解决办法: vi里一条命令解决所有问题 sudo timedatectl set-local-rtc 1 2,安装vim sudo apt in…

温网告别了两位美女:伊万和莎娃

在刚刚结束的英国温布尔登网球公开赛女子第三轮的比赛中,我国选手郑洁以6比1和6比4,直落两局淘汰了塞尔维亚美女伊万诺维奇,进入16强,暴了本届温网的最大冷门。伊万诺维奇目前在女子网球排名中名列第一,是当今女子网坛…

一个有意思的CStatic和combobox以及Cedit控件结合使用

如图。。源代码下载地址 http://download.csdn.net/detail/hemmingway/4187082 这是编辑字符串。。。 这是用组合框选择字符串。。。。 使用方法是托一个Static Text控件到窗口上,调整好大小,修改ID,取一个CEditStatic 的变量类型 在头文件里…

LVDS收发传输实例

LVDS收发传输实例 功能图如下: 由PLL(时钟生成)产生基准时钟;FPGA内部产生固定的1024字节位单位的有效数据帧以用作同步的pattern数据,通过LVDS发送出去;同时另一侧,FPGA也接收LVDS数据,进行位对齐处理,并且对有效数据进行解串; 位对齐(bit align)处理 一般情况…

64位Ubuntu kylin 16.04安装wine QQ

sudo apt install wine Wine QQ 下载 下载解压双击第三个deb安装

昨天是欧洲男人的,今天却属于亚洲女人

昨天,欧锦赛落下帷幕,西班牙历史性的以不败的战绩赢得了德劳内杯。欧洲4年一度的足球盛会终于告一段落,西班牙小伙子用自己的技术和顽强成了欧洲狂欢节的主角。而今天,在英国温布尔登网球公开赛上,郑洁以2比0战胜了赛会…

郑洁又淘汰了一个美女瓦伊迪索娃

今晚在温网四分之一比赛中,郑洁继续中国神话,淘汰了捷克天才少女瓦伊迪索娃,杀进四强,创造了中国网球在四大公开赛历史上的最佳战绩。如果明天她在半决赛中战胜小威廉姆斯,就将进入温网决赛。 现在看来,昨天…

_VARIANT_T 到 CSTRING 转换

_VARIANT_T 到 CSTRING 转换 数据类型转换函数 CString CZjyDlg::VariantToString(VARIANT var) { CString strValue; _variant_t var_t; _bstr_t bstr_t; time_t cur_time; CTime time_value; COleCurrency var_currency; switch(var.vt) { case VT_EMPTY: case VT_NULL:strV…

IP核应用之计数器

IP核应用之计数器 IP核创建流程 首先建立一个工程,然后再点击IP Catalog,接着在Search中输入counter,然后点击Binary Counter。进入计数器的配置界面。 进来后,配置位宽为4,设置计数到10 然后点击Control,接着添加一个时钟使能Clock Enable.最后点击创建

发球机器轰灭了中国姑娘的奇迹

刚刚在被大雨中断了两次的温网女单半决赛中,小威廉姆斯以2比0战胜了中国的郑洁。这是大块头对小女孩儿的比赛,是蛮牛与人的较力,是大猩猩与儿童的掰腕。在弱小的郑洁面前,小威确实太强悍了,她的大力正反手回球和扣球&a…

64位Ubuntu kylin 16.04显示CPU内存使用率

原文地址:http://blog.csdn.net/tecn14/article/details/24489031 有时感觉网络失去响应,就通过Ubuntu 14.04自带的系统监视器程序来查看当前网速,但是这样很不方便,遂打算让网速显示在标题栏,那样就随时可直观的看到…

MFC略缩图控件实现

As I write this, its just a bit over some month since I started working at this. In memory of that, heres a piece of history I managed to dig up.Enjoy it. By which I mean to say, fuck you. 在上上一篇日记记载了一个用listctrl实现的略缩图控件,可以用…

色彩的狂欢:看嘎玛·多吉次仁的画展

慧眼系列之一 藏族人擅长绘画就如同蒙古人善于歌唱一样。蒙古人的长调、呼麦以及胡尔齐(说书艺人),已成为民族文化的珍贵遗产,也是世界文明的瑰宝,流传至今,在这一点上,蒙古人完全可以称得上歌唱…

任务和函数的使用

任务及函数的使用 任务和函数有些不同 主要的不同有以下四点: 函数只能与主模块共用同一个仿真时间单位,而任务可以定义自己的仿真时间单位。函数不能启动任务,而任务能启动其它任务和函数。函数至少要有一个输入变量,而任务可以没有或有多个任何类型的变量。函数返回一个…

一部珍贵的130位作家的手稿集

本书辑录了“第三届北京文学节百名作家手稿展”的作品,包括了131位北京知名作家的手稿,其中有王蒙、林斤澜、邓友梅、张洁、浩然、陈建功、刘恒、史铁生、张承志、陈祖芬、曹文轩、毕淑敏、刘庆邦、谢冕、刘心武、阎连科、邹静之、徐坤、曾哲、周大新、宁…

64位ubuntu kylin 16.04下制作tiny4412可用的SD启动卡

1.进入uboot目录 ningENVY:/tiny4412$ cd /tiny4412/uboot_tiny4412-master/ vim include/configs/tiny4412.h 更改255行为#define CONFIG_SYS_PROMPT "EMPEROR# " 2.编译 make tiny4412_config make 生成u-boot.bin u-boot 文件 3.制作…

自绘列表框控件显示略缩图----再稍微改进点点。。

原先贴在QQ空间,汗!! http://user.qzone.qq.com/382164370/infocenter#!app2&pos1334911186 http://user.qzone.qq.com/382164370/infocenter#!app2&pos1334840523 每天思考一点无聊的问题,又是接上一篇日记的列表框自绘…

传圣火~~~递友情~~~~NAONAO是博客火炬手~~~

有幸被美美点到,接到奥运圣火了!把新浪火炬传递到吾等10人手中,至此吾等10人就成为新浪博客第五十二棒奥运火炬手了。按规则,NAONAO需点10名新火炬手,请点到名的亲们继续传递下去!拜托了~~ 传圣火&#xff…

UART 异步串行通信发送模块设计与实现

UART 异步串行通信发送模块设计与实现 串口发送模块接口设计 注意:在每一次设计端口时,我们都要求可以随时控制该模块开始和结束,因此在设计每一个模块时,务必要加模块的使能端口(EN)和模块结束端口(DONE)。这也是握手机制的本质所在。

64位Ubuntu kylin 16.04下使用DNW下载uboot到tiny4412的EMMC

工具下载:http://download.csdn.net/detail/zn2857/9637426 1.连接开发板和和pc之间的usb转串口线,usb线,在pc端打开vim,启动minicom 2.使用sd卡启动开发板,进入uboot 3.输入dnw,会有如下提示 TINY4412 #…