FM33A048B CRC

news2024/11/24 7:46:48

概述
循环冗余校验(Cyclic Redundancy Check,CRC)是最为常用的计算机和仪表数据通信的校验方法,FM33A048B中CRC计算单元为完全独立模块,通过软件控制可进行7816、I2C、UART和SPI模块有串行数据流接口的收发CRC计算和校验,也可进行Flash内容的CRC校验。

CRC算法说明
(1) CRC 模块所支持的多项式为:
在这里插入图片描述
(2 )CRC 运算的初始值可设置
(3 )支持输入 reflect (即将输入数据的每一 byte 依次反向后再进行计算)
支持输出 reflect (即将计算结果数据全部反向后再进行输出)
(4 )计算出的结果支持异或输出

软件配置过程
CRC 配置及计算流程如下:
1、CRC开始计算的时候,配置运算移位寄存器中的初始值,范围是0000~FFFF。
2、配置输出异或寄存器CRC_XOR
3、软件需配置好输入reflectin处理使能;输出reflectout和xorout处理使能
4、软件将需要计算CRC码的8bit数据放入数据寄存器(CRCDR[7:0]),然后自动开始计算逐次移位,总共移位8拍。(注意:触发计算的动作即是软件将需要计算CRC码的数据写入此数据寄存器,所以在这之前,所有的配置动作须完成)
5、计算完毕后,结果数据回写到数据寄存器,软件根据当前计算状态busy位来判断是否能取结果:16bit计算结果存在{CRCDR[15:0]};
6、计算完前一次CRC后,数据寄存器中会保留前一次结果,作为后续数据的移位寄存器初始值。在多次连续触发CRC计算后,软件最终读取的是累积计算的完整数据的CRC值。

DMA 接口
CRC与DMA之间通道为单向的(RAM->CRC)。CRC模块可以通过DMA模块读取并校验RAM数据,其工作流程如图所示。CRC向DMA发起请求,DMA接收请求后,读取RAM并将数据写入CRC模块的CRCDR寄存器中。CRC模块接收到数据后,撤销DMA请求并开始计算校验值,校验完成后,CRC模块重新置起DMA请求。

Flash 数据完整性校验
Flash内容的CRC校验可以在上电后进行,以保证内容正确性。CRC模块读取Flash时起始地址必须对齐word边界,每读一次flash,需要运算4次8bit CRC。软件通过寄存器指定CRC校验的起始地址和数据长度(17bit word address),起始地址寄存器兼做flash指针,CRC启动后每读取一次Flash将对指针+1,同时对长度寄存器-1,直到长度寄存器等于0,当Flash指针到达最高有效地址后,如果长度仍未减到0,指针将roll-over至0地址继续运行。
Flash校验由软件启动,启动后CRC完全占据Flash总线,CPU如果在Flash中取指将被挂起,在RAM中取指不受影响。

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

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

相关文章

二、搭建Kubernetes集群---2.1 搭建Kubernetes环境平台规划和部署方式介绍

二、搭建Kubernetes集群 2.1 搭建Kubernetes环境平台规划和部署方式介绍 2.1.1 搭建Kubernetes环境平台规划 如何安排Master、node。我们已经知道Kubernetes架构的组件共有两大部分,Master和node,因此这里的搭建我们可以分为两个部分,单Ma…

Vue3 + vite npm run build 后 html文件的srcipt标签不加type=module属性的js文件没有被打包

引言 :最近开发一个公司的官网项目,由于公司没有 UE, 领导就直接找了一个JQuery bootstrap 的项目模板要求在最快的时间里面把这个项目放到Vue框架里面。这个项目模板里面各种动画、图表都是引入的JQery插件,这就导致了&#xff…

vue通过缓存请求数据提高首界面展示效率

我在组件中编写了这样一段代码 <template><div class "appp"><button click "getUser">请求数据</button></div> </template><script> import axios from "axios"; export default {data() {retur…

SQL Tips汇集及常见问题

SQL Tips汇集及常见问题 表与数据 -- 创建并初始化部门表DROP TABLE IF EXISTS dept; CREATE TABLE dept (deptno int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 部门编号,dname varchar(15) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci NULL DEFAULT NULL COMM…

蓝桥杯青少组python:第十三届省赛第二场

选择题 1、十进制 55 55 55转换为十六进制是() A、 1101111 1101111 1101111 B、 313 313 313 C、 37 37 37 D、 67 67 67 2、下列关于函数的说法正确是&#xff08;&#xff09; A、函数的定义必须的程序的开头 B、函数定义后&#xff0c;其中的程序就可以自动运行 C、函数定…

如何让技术架构师具有预知未来业务发展的能力

大家好&#xff0c;今天我们来分享业务架构&#xff0c;但是我们并不是以产品经理角度讲述一个业务架构是什么以及如何做&#xff1f;而是以一个技术架构师的角度&#xff0c;讲述如何承接业务架构或在没有业务架构的时候&#xff0c;如何判断业务变化趋势而对系统架构提前做出…

【Linux】2.4 使用 git 命令行

git git —— 一个版本管理的工具。 &#xff08;gitee/github 底层都是git&#xff0c;只是不同的网页化的结果&#xff09; 有否&#xff1f;&#xff1a;查看是否有git——git --version [RoundBottleVM-12-2-centos ~]$ git --version git version 1.8.3.1安装&#xff…

排查java进程被linux杀掉

1、查找进程 通过jps -l查找相关的进程发现进程已经不存在 2、查看服务日志 查看服务日志后&#xff0c;发现凌晨4点53并未产生相关的错误日志导致程序出现OOM&#xff0c;此时进行进一步分析&#xff0c;是否是linux杀掉了进程 3、查看linux系统日志 通过less /var/logs/me…

超越大数据的边界:Apache Flink实战解析【上进小菜猪大数据系列】

上进小菜猪&#xff0c;沈工大软件工程专业&#xff0c;爱好敲代码&#xff0c;持续输出干货。欢迎订阅专栏 Apache Flink是一种快速、可靠、可扩展的开源流处理框架&#xff0c;被广泛应用于大数据领域。本文将介绍Apache Flink的实战运用&#xff0c;包括其核心概念、架构设…

Redis学习---04

一、Redis.conf配置文件 (1) units&#xff1a;对于大小写不敏感 导入 绑定ip和端口&#xff1a; (2) 通用&#xff1a; 以守护进程开启&#xff0c;默认为no 进程文件&#xff1a; 日志&#xff1a; 数据库的数量&#xff1a;是16个 是否显示logo&#xff1a; (3) 快照&…

探究ChatGPT与GPT-4的缺陷不足,揭示大预言LLM模型的局限性——没有完美的工具

目录 ChatGPT与GPT-4的缺陷不足——任何工具都不是万能的1. 引言2. 事实性错误2.1 问题示例2.2 原因分析2.3 解决方法 3. 实时更新3.1 问题示例3.2 原因分析3.3 解决方法 4. 总结 参考资料其它资料下载 ChatGPT与GPT-4的缺陷不足——任何工具都不是万能的 1. 引言 2022 年末 C…

借助TeeChart 图表控件,这家公司轻松创建了可视化图表看板

TeeChart for .NET是优秀的工业4.0 WinForm图表控件&#xff0c;官方独家授权汉化&#xff0c;集功能全面、性能稳定、价格实惠等优势于一体。TeeChart for .NET 中文版还可让您在使用和学习上没有任何语言障碍&#xff0c;至少可以节省30%的开发时间。技术交流Qqun&#xff1a…

版本控制工具之Git使用文档

以下讨论基于gitlab系统作为代码仓库。 项目Git初始化 创建一个空的git库或者初始化一个旧有git仓库 git init 现有项目关联到远程仓库 git remote add origin git172.16.200.39:public-team/spring-learn.git 下载代码 git clone <仓库地址> 查看已关联远程仓库 …

脑的物理系统

⼤脑模块化 人脑是一个复杂的网络&#xff0c;一般将大脑划分为不同的区域&#xff08;即节点&#xff09;&#xff0c;并使用某种方法表征大脑区域之间的关系&#xff08;即连接的边&#xff09;来构建人脑网络。在功能磁共振成像&#xff08;fMRI&#xff09;数据的网络模型…

浪涌保护器:保护电子设备免受雷击侵害

引言&#xff1a; 随着电子设备在现代生活和工业领域的普及和广泛应用&#xff0c;雷击对电子设备的损害成为一个严重的问题。浪涌保护器作为一种重要的防雷设备&#xff0c;发挥着至关重要的作用。本文将介绍浪涌保护器的防雷作用、行业应用&#xff0c;并重点介绍浪涌保护器…

SPI接口协议详解

一、SPI总线简介 SPI总线是摩托罗拉公司开发的一种高速、全双工、同步的通信总线&#xff0c;它通常由四条线组成&#xff1a; CS 片选信号SCLK 时钟信号MOSI 主机输出从机输入接口MISO 主机输入从机输出接口 SPI分为主机和从机&#xff0c;主机提供通信所需的时钟信号。 二…

盘点那些让人笑疯了的520创意文案!

520&#xff0c;一场关于爱情和狗粮的龙卷风快来了&#xff1a; 玫瑰花&#xff0c;涨价了&#xff1b; 民政局&#xff0c;周末要加班&#xff1b; 肯德基&#xff0c;推出了萌宠玩具套餐&#xff1b; 很多人&#xff0c;站在风里等那没影儿的爱情。 今天原本计划是要写一…

【JAVA程序设计】(C00137)基于SSM(非maven)的校园BBS论坛系统

基于SSM&#xff08;非maven&#xff09;的校园BBS论坛系统 项目简介项目获取开发环境项目技术运行截图 项目简介 本项目为基于SSM的校园BBS论坛管理系统包含前后台&#xff0c;前台为普通用户登录&#xff0c;后台为管理员登录&#xff1b; 管理员角色包含以下功能&#xff1…

使用taro+canvas实现微信小程序的图片分享功能 | 京东云技术团队

业务场景 二轮充电业务中&#xff0c;用户充电完成后在订单详情页展示订单相关信息&#xff0c;用户点击分享按钮唤起微信小程序分享菜单&#xff0c;将生成的图片海报分享给微信好友或者下载到本地&#xff0c;好友可通过扫描海报中的二维码加群领取优惠。 使用场景及功能&a…

网站在腾讯云备案的要求条件说明

腾讯云网站备案要求首先你有一个需要备案的域名&#xff0c;域名实名认证信息和备案主体相同&#xff1b;在腾讯云有一台符合备案条件的云服务器、轻量应用服务器等云产品&#xff1b;然后根据备案主体所在省份地区&#xff0c;符合当地的通信管理局要求。下面腾讯云百科来详细…