Hi, in einem Microcontroller Projekt berechne ich eine CRC32 Prüfsumme (Standard CRC32) der Daten des FLASH Speichers um die Integrität des FLASHs zu checken. Da mein Code (u. konstante Daten) über weite Bereiche des FLASHs verteilt sind, habe ich zwischendrin ziemlich große "Lücken" (tw. ein bis mehrere kb lange '0'-Folgen). Jetzt habe ich mich gefragt, ob diese langen '0'-Folgen einen Einfluss auf die zuverlässigkeit des CRC's haben (also auf die Wahrscheinlichkeit, dass ein oder mehrere Bitfehler fälschlicherweise nicht erkannt werden...) Kann jemand dazu was sagen? Grüße, Daniel
ZITAT: Von einem Nullproblem spricht man jedoch bisweilen auch dann, wenn es problematisch ist, wenn ein Datenstrom aus lauter Nullen auch einen CRC gleich Null erzeugt. Ein CRC gleich Null aus Null-Daten entsteht unabhängig vom Generatorpolymon grundsätzlich, wenn der CRC-Startwert gleich null ist und die Bits des resultierenden CRC nicht invertiert werden. Dieses Problem kann somit vermieden werden, indem ein Startwert ungleich null festgelegt wird, oder aber auch die resultierenden CRC-Bits invertiert werden. /ZITAT http://de.wikipedia.org/wiki/Cyclic_Redundancy_Check#Nullproblem_und_Nachbearbeitung Zu faul wiki Artikel zu lesen?
> Zu faul wiki Artikel zu lesen?
ne, eigentlich nicht, der Artikel ist einen Tab weiter links in meinem
Firefox geöffnet ;)
Allerdings hat der nur bedingt mit meiner Frage zu tun:
-ich habe keine führenden Nullen
-ich habe zwar evtl. Nullen am Ende aber eine festgelegte Länge der
Daten
(ausserdem übertrage ich die Daten nicht, sondern habe sie in einem
Speicher, d.h. es kann keine zusätzlich eingefügten /
verlorengegangenen
Nullen geben)
-ich habe einen Startwert ungleich Null (Standard CRC32,
Init=0xFFFFFFFF)
Ich wollte nur wissen, ob es unter diesen Umständen "ungünstig" ist,
lange Null Folgen in der MITTE zu haben.....
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.