Forum: FPGA, VHDL & Co. CRC32 Werte mit dem CRC Wizard im Core Generator


von Owen S. (senmeis)


Lesenswert?

Hi,

Ich habe ein CRC32 Projekt mit dem CRC Wizard v1.3 im Core Generator 
generieren lassen. Bei der Simulation erkennt man jedoch, die 
CRC32-Werte mit dem Core Generator sind verschieden im Vergleich mit den 
Werten in Matlab. Beispiel:

Original data = 0x4000000020
Initial state = 0
CRC32 mit Core Generator = 0x7E87629C
CRC32 mit Matlab = 0x9EE9B5BE

Ich bin mir sicher, die Polynome in den beiden sind identisch. 
Vermutlich sind beide Werte verwandt. Hat jemand solche Erfahrungen?

Gruss
Owen

von Duke Scarring (Gast)


Lesenswert?

Wie ist der jeweilige Startwert?

Duke

von pks (Gast)


Lesenswert?

Endieness der Eingangsdaten?

von Bronco (Gast)


Lesenswert?

Hab mal was ähnliches für Ethernet gemacht. Als es nicht auf Anhieb 
funktioniert hat, hab ich den Algorithmus in C# nachprogrammiert und mir 
alle Einzelschritte ausgeben lassen. Damit bin ich dem Problem (Bytes 
vertaucht und invertiert) auf die Schliche gekommen.

von Owen S. (senmeis)


Lesenswert?

Alle Register werden am Anfang auf 0 gesetzt.

In Matlab wird die umgekehrte Reihenfolge noch getestet, also 
0x2000000040. Das Ergebnis ist 0x37E371D8. Das scheint nicht mit dem 
Endieness zu tun.

Gruss
Owen

von Student (Gast)


Lesenswert?

Die umgehkerte Reihenfolge Reihenfolge währe doch 0x200000004 und nicht
0x2000000040??

lg

von pks (Gast)


Lesenswert?

Student schrieb:
> Die umgehkerte Reihenfolge Reihenfolge währe doch 0x200000004 und nicht
>
> 0x2000000040??

Nein. Endieness wird byteweise gedreht.

von Duke Scarring (Gast)


Lesenswert?

Owen Senmeis schrieb:
> Alle Register werden am Anfang auf 0 gesetzt.
Setze mal alle Bits testweise auf '1'.

Duke

von Owen S. (senmeis)


Lesenswert?

Hier die Ergebnisse wenn alle Bits auf 1 gesetzt werden:

0x143EDA26 in Matlab
0x9C8FBFA5 im FPGA

Kann etwas daraus abgelesen werden?

Gruss
Owen

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.