本帖最后由 芯圣电子官方QQ 于 2023-7-20 10:21 编辑
1 简介
本模块支持计算CRC 值和检验CRC 值,循环冗余校验(CRC)计算单元是根据
固定的生成多项式得到任一32 位全字的CRC 计算结果,用于验证数据传输或存
储的正确性和完整性。
2 CRC 主要功能
CRC 编码
一个32 位数据寄存器用于输入/ 输出
CRC 计算时间:4 个AHB 时钟周期(HCLK)
通用8 位寄存器(可用于存放临时数据)
使用CRC-32 多项式:0x4C11DB7
= X 32 X 26 X 23 X 22 X16 X12 X11 X10 X 8 X 7 X 4 X 2 X 1
下图为CRC计算单元框图
3 CRC 功能描述
CRC 主要功能:
CRC 编码,对CRC_DATA 寄存器进行写操作,会生成CRC 编码的值;
可以通过设置寄存器CRC_CR 的RESET 位来重置寄存器CRC_DR 为0xFFFF
FFFF。该操作不影响寄存器CRC_IDR 内的数据。
在CRC 计算期间会暂停CPU 的写操作,因此可以对寄存器CRC_DR 进行连续
的写-读操作。
4 CRC 寄存器
CRC 计算单元包括2 个数据寄存器和1 个控制寄存器。
4.1 数据寄存器(CRC_DR)
地址偏移: 0x00
复位值: 0xFFFF FFFF
4.2 独立数据寄存器(CRC_IDR)
地址偏移: 0x04
复位值: 0x0000 0000
4.3 控制寄存器(CRC_CR)
地址偏移: 0x08
复位值: 0x0000 0000
|