当前位置: 首页 > news >正文

wifi信号处理的CRC8、CRC32

🧑🏻个人简介:具有3年工作经验,擅长通信算法的MATLAB仿真和FPGA实现。代码事宜,私信博主,程序定制、设计指导。

🚀wifi信号处理的CRC8、CRC32

目录

🚀1.CRC概述

🚀1.CRC的具体结构


 

 

🚀1.CRC概述

CRC校验是一种检测错误的机制:在数据发送端,通过对数据进行特定的模2运算,计算出CRC校验位,并将其附加到数据的末尾。同样,在数据接收端对数据进行相同的运算,并将得到的结果与CRC校验位比较。如果两者完全一致,则表明数据通过了CRC校验,即数据在传输过程中未发生错误。另一种方法是基于CRC校验的性质,在数据接收端进行CRC校验时,将CRC校验位也一同输入到CRC校验器中。如果经过运算后,校验器的寄存器结果为全0,那么即可判定CRC校验通过。在IEEE 802.11ax中,CRC校验只能用来检测数据是否有错误,不能纠正错误。本文中共用到2种CRC校验,分别为CRC8和CRC32。CRC8用来检测数据长度参数有无错误,CRC32用来检测数据是否有误。

🚀1.CRC的具体结构

        CRC8的生成多项式:

163d8fd28cdb46a094cab5976597054b.png

对应的CRC8校验器的移位寄存器结构图如下图所示。寄存器初始全为1,移位寄存器第8位与输入数据进行模2运算,并赋值给寄存器第1位。同理,计算并赋值给寄存器的第2位和第3位,其他位依次赋值为低一位的值。当所有数据输入完成后,寄存器的值填充在数据尾部的CRC校验位。

bb521cd70a084988800b3ea1e536828c.png

CRC32生成多项式对应的移位寄存器结构与CRC8类似:

c26918ffffde49519a3a8d9acba43fb1.png

 

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 【学习笔记】无人机(UAV)在3GPP系统中的增强支持(十三)-更换无人机控制器
  • uniapp引入 uview( HBuilder 和 npm 两种安装方式) #按需引入
  • Leetcode3202. 找出有效子序列的最大长度 II
  • 【高中数学/幂函数】比较a=2^0.3,b=3^0.2,c=7^0.1的大小
  • 【面试题】Golang 之Channel底层原理 (第三篇)
  • 前端Vue组件化实践:自定义加载组件的探索与应用
  • Python面试题:如何在 Python 中处理大数据集?
  • GO channel 学习
  • 杜比全景声——空间音频技术
  • 36.UART(通用异步收发传输器)-RS232(3)
  • 游戏视频是后期配音好还是边录边配 游戏视频怎么剪辑制作才能火 视频剪辑免费软件
  • 用Python爬虫能实现什么?得到什么?
  • 微信小程序密码 显示隐藏 真机兼容问题
  • [AI 大模型] 百度 文心一言
  • 【学习笔记】无人机(UAV)在3GPP系统中的增强支持(八)-通过无人机进行无线接入
  • 【知识碎片】第三方登录弹窗效果
  • 10个确保微服务与容器安全的最佳实践
  • 2018天猫双11|这就是阿里云!不止有新技术,更有温暖的社会力量
  • CoolViewPager:即刻刷新,自定义边缘效果颜色,双向自动循环,内置垂直切换效果,想要的都在这里...
  • Essential Studio for ASP.NET Web Forms 2017 v2,新增自定义树形网格工具栏
  • Hibernate最全面试题
  • JS基础之数据类型、对象、原型、原型链、继承
  • mysql中InnoDB引擎中页的概念
  • Promise初体验
  • spark本地环境的搭建到运行第一个spark程序
  • 闭包,sync使用细节
  • 基于HAProxy的高性能缓存服务器nuster
  • 嵌入式文件系统
  • 微信小程序实战练习(仿五洲到家微信版)
  • 译米田引理
  • PostgreSQL之连接数修改
  • 阿里云IoT边缘计算助力企业零改造实现远程运维 ...
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • 积累各种好的链接
  • ​Python 3 新特性:类型注解
  • #define,static,const,三种常量的区别
  • $(document).ready(function(){}), $().ready(function(){})和$(function(){})三者区别
  • (14)Hive调优——合并小文件
  • (20)目标检测算法之YOLOv5计算预选框、详解anchor计算
  • (6) 深入探索Python-Pandas库的核心数据结构:DataFrame全面解析
  • (zhuan) 一些RL的文献(及笔记)
  • (二)什么是Vite——Vite 和 Webpack 区别(冷启动)
  • (官网安装) 基于CentOS 7安装MangoDB和MangoDB Shell
  • (三)终结任务
  • (一)、python程序--模拟电脑鼠走迷宫
  • (一)pytest自动化测试框架之生成测试报告(mac系统)
  • (转)winform之ListView
  • ******IT公司面试题汇总+优秀技术博客汇总
  • **CI中自动类加载的用法总结
  • .NET : 在VS2008中计算代码度量值
  • .net 程序发生了一个不可捕获的异常
  • .net 微服务 服务保护 自动重试 Polly
  • .NET/C# 解压 Zip 文件时出现异常:System.IO.InvalidDataException: 找不到中央目录结尾记录。
  • .NET设计模式(11):组合模式(Composite Pattern)
  • .set 数据导入matlab,设置变量导入选项 - MATLAB setvaropts - MathWorks 中国