当前位置:首页 > FPGA > 正文内容

AD4134 24bit数据模式 CRC校验

chanra1n1年前 (2024-11-30)FPGA2420

校验代码如下:

// CRC polynomial: x^6 + x^5 + x^2 + x + 1 (binary: 1100111)
// Function to calculate CRC
function [0:0] calculate_crc;
input [31:0] data;  // 32-bit input data
localparam POLY = 7'b1100111;  // Polynomial
localparam SEED_VALUE = 6'b100101;  // Fixed seed value

// Intermediate variables
    reg [32:0] temp_data;  // 33-bit temporary data for CRC calculation
    reg [6:0] remainder;  // 7-bit remainder
    integer i;

// Step 1: XOR the high 6 bits with SEED_VALUE
temp_data[32:26] = data[31:26] ^ 6'b100101;  // XOR operation
temp_data[25:0] = data[25:0];  // Lower 26 bits remain unchanged

// Step 2: Initialize remainder
remainder = 7'b0;

// Step 3: Perform polynomial division
for (i = 32; i >= 0; i = i - 1) begin
// Shift the remainder and bring in the next bit
remainder = {remainder[5:0], temp_data[i]};  // Shift left, bring in next bit

// If the leading bit is 1, perform polynomial division
if (remainder[6]) begin
remainder = remainder ^ POLY;  // XOR with POLY
end
end

// Step 4: Check if remainder is zero
if (remainder == 7'b0000000) begin
calculate_crc = 0;  // Valid
end else begin
calculate_crc = 1;  // Invalid
end
endfunction


扫描二维码推送至手机访问。

版权声明:本文由我的FPGA发布,如需转载请注明出处。

本文链接:http://www.myfpga.cn/index.php/post/433.html

分享给朋友:

“AD4134 24bit数据模式 CRC校验 ” 的相关文章

Xilinx_ISE_DS_Win_14.7_1015_1 安装教程(Xilinx High Speed Cable USB驱动安装)

Xilinx_ISE_DS_Win_14.7_1015_1 安装教程(Xilinx High Speed Cable USB驱动安装)

首先下载Xilinx ISE软件的安装包,以下是百度云链接,6.12G,放着一晚上就下载完了链接:https://pan.baidu.com/s/13cUoFZgbld0X4ikCLsVFNQ 提取码:53ro更建议使用win7来安装这个,win8 win10 ...

基础实验十三,DS18B20温度传感器

基础实验十三,DS18B20温度传感器

//==========================================================================// Author     : ChanRa1n// Description: Training for Intel FPGA/...

Xilinx FIFO和ILA学习

Xilinx FIFO和ILA学习

`timescale 1ns / 1ps//-------------------------------------------------------//Filename       ﹕ FIFO_TOP.v//Author      ...

CDC 单脉冲信号处理

CDC 单脉冲信号处理

代码中的Sys_clk其实是没有用到的,项目文件:cdc_single.zip//------------------------------------------------------// File Name        : cdc.v// Autho...

半加器

半加器

半加器:两个输入数据位相加,输出一个结果位和进位,没有进位输入的加法器电路。即两个一位二进制数的加法运算电路。半加器 模块框图:sum:结果位count:进位半加器 真值表:半加器 波形图:代码部分:选择器代码:在Src文件夹中新建 half_adder.v文件module half_adder...

避免Latch产生

避免Latch产生

Latch简介:                Latch其实就是锁存器,是一种在异步电路系统中,对输入信号电平敏感的单元,用来存储信息。        锁存器在数据未锁存时,输出端的信号随输入信号变化,就像信号通过一个缓冲器,一旦锁存信号有效,则数据被锁存,输入信号不起作用。因此,锁存器也被称为透...