Was hat das CRC-Implementierung bedeuten, durch eine seed-Wert?

Ich versuche zur Implementierung einer CRC-Algorithmus in Verilog für die GESENDETEN sensor-Protokoll.

In einem Dokument setzen, die von der SAE, Sie sagen, Ihre CRC verwendet der generator-Polynom
x^4 + x^3 + x^2 + 1 und ein seed-Wert von 0101. Ich verstehe das grundlegende Konzept der Berechnung eines CRC mit XOR-division und spart den Rest, aber jedes mal wenn ich versuche zum berechnen einer CRC bekomme ich die falsche Antwort.

Ich weiß das, weil in demselben Dokument haben Sie eine Liste von Beispielen mit Daten-bits und die entsprechende Prüfsumme.

Zum Beispiel, die Reihe der hex-Werte x"73E73E" hat die Quersumme 15 und die Serie x"748748" hat die Quersumme 3. Gibt es jemanden, erreichen diese Werte mit den Angaben oben? Wenn ja, wie haben Sie es tun?

Dies ist ein paar Sätze aus dem Dokument kopiert: "Die CRC-Prüfsumme umgesetzt werden können, wie eine Reihe von shift-left von 4 (multipliziert mit 16), gefolgt von einem 256-element-array-lookup. Die Prüfsumme wird ermittelt, indem alle Daten-nibbles in der Reihenfolge und dann Prüfsummenbildung das Ergebnis mit ein
zusätzliche null-Wert".

  • Nur ein Hinweis, es gibt ein paar interessante CRC32-algorithmen implementiert in C mehr auf Hacker ' s Delight, die nützlich sein könnten, zu verweisen. Überprüfen Sie Sie heraus hier: hackersdelight.org/hdcodetxt/crc.c.txt
InformationsquelleAutor fat balls | 2015-06-04
Schreibe einen Kommentar