用于以太网的CRC32

问题描述:

我用VHDL实现了一个并行CRC32电路。相比于页面 http://ghsi.de/CRC/index.php?Polynom=100000100110000010001110110110111&Message=123456789 使用聚是标准100000100110000010001110110110111时并且所述消息是十六进制的标准测试123456789我的电路产生相同的结果用于以太网的CRC32

然而,通过在Altera器件的标准部件所产生的结果是相同的当前页“http://www.zorc.breitbandkatze.de/crc.html” 甚至当我关掉反向数据字节和反向CRC字节,并设置初始值和最终EXOR为“00000000”我仍然可以从第一个在线工具完全不同的结果(和我的电路)

是它有可能解释这两种工具的工作方式有何不同?

ghsi网站希望邮件为十六进制数字,而breitbandkatze网站期待字符(尽管您可以在其中使用%xx作为十六进制数字)。因此,如果在ghsi网站上输入“313233343536373839”,则您会得到与在breitbandkatze网站上输入“123456789”相同的结果,假设您还将初始和最终xor设置为零并取消任何反转。两者的结果是89a1897f(十六进制)。

+0

非常感谢! ,我正在尝试几乎所有可能的修改,可以在两天内对聚合,消息或CRC结果进行修改,但是您节省了我的一天! – user3457332