FPGA设计中(verilog),为什么采用CRC通用计算模块计算得到的CRC与手算(串行移位)的结果不一致? 5

//crccalculation//ThisVERILOGcodewasgeneratedusingCRCGEN.PLversion1.6//LastModified:0... // crc calculation
// This VERILOG code was generated using CRCGEN.PL version 1.6
// Last Modified: 02/26/2001
// Options Used:
// Module Name = crc32
// CRC Width = 16
// Data Width = 8
// CRC Init = 0
// Polynomial = [0 -> 16]
// 1 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1
//
// Disclaimer: THESE DESIGNS ARE PROVIDED "AS IS" WITH NO WARRANTY
// WHATSOEVER AND XILINX SPECIFICALLY DISCLAIMS ANY
// IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR
// A PARTICULAR PURPOSE, OR AGAINST INFRINGEMENT.
//
// Copyright (c) 2001 Xilinx, Inc. All rights reserved.
//
//
//////////////////////////////////////////////////////////////////////////////
module crc16_8 (
crc_reg,
crc,
d,
calc,
init,
d_valid,
clk,
reset
);
output [15:0] crc_reg;
output [7:0] crc;
input [7:0] d;
input calc;
input init;
input d_valid;
input clk;
input reset;
reg [15:0] crc_reg;
reg [7:0] crc;
//////////////////////////////////////////////////////////////////////////////
// Internal Signals
//////////////////////////////////////////////////////////////////////////////
wire [15:0] next_crc;

限于字数,代码只贴了前面部分,熟悉fpga设计和crc的人应该对这段代码不陌生。为什么严格按照crc计算原理手算得到的结果(可以确保计算正确)与利用这段代码仿真计算得到的结果不一致?(计算数据长度为8bit)。
展开
 我来答
master2master
2013-05-31
知道答主
回答量:18
采纳率:0%
帮助的人:3.6万
展开全部
生成多项式是一样的吗?一样的话没有道理结果不一样.
更多追问追答
追问
多项式绝对一样,只是我可能不太清楚上面那段代码的输入时序,输入时序是按照Xilinx crc说明文档来的,除非我理解错了。
追答
用两个数试试,知道结果和你的能对上。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式