Einfache FEC mit CRC32?

Gast
Ja klar ist eine CRC32 besser als eine CRC16. Das ersetzt aber keine 
Fehlerkorrektur. Weil es auch bei einer CRC32 immer wieder gleiche 
Ergebnisse gibt !!!

Siehe Dazu Hamming Distanz von CRCs.

Gruß Sascha
Rate mal! schrieb:
> und schauen ob dann die
> Prüfsumme stimmt.

Kannst du machen, wenn du weisst, dass du es nur mit einem 1-Bit-Fehler 
zu tun hast, z.B. bei einem Datenbus.
Bei einer seriellen Übertragung (Disks, Funk, Telefonleitungen) treten 
aber gerne Burst-Errors auf, und dagegen muß man schwereres Geschütz 
auffahren.
Gast
Hp M. schrieb:
> Bei einer seriellen Übertragung (Disks, Funk, Telefonleitungen)

Siehe POCSAG, ein Übertragungsverfahren für Funkrufsysteme. Der 
Datensatz hat 32 bit, davon 20 Bit reine Nutzdaten. Für CRC und 
Rückrechnen eines fehlerhaften Bits haben die Herren 10 Bit CRC 
spendiert - bestimmt, weil sie gerne möglichst viel Overhead über den 
schmalen Funkkanal schieben wollten.

Rate mal! schrieb:
> kann man die 160 (20*8) Bit einzeln umkippen
> und schauen ob dann die Prüfsumme stimmt.

Klingt eher nach Brute Force denn Mathematik - wie lange soll der 
Korrekturrechenproozess dauern?

Rückrechnen aus CRC16 oder CRC32 sehe ich garnicht.
Gast
Wir verwenden für einen internen Bus aus Gründen der Datensicherheit 
gegen Fehler und Abhören einen Redundanz-Code mit 
64Bit+32Bit-Verschlüsselung und das Ganze mit einem CRC32 über jeweils 
die letzten 8 Datenworte. Viel weniger geht nicht, da industrielle 
Umgebung und Bus aussen geführt, d.h. anzapbar und störbar.
Aber der witz der CRC ist verstanden ? Eher nicht. Ein 16bit CRC 
schuetzt 2^16bit = 8kByte gegen ein-Bit Fehler. Dh nicht dass der Fehler 
repariert wird, sondern dass er detektiert wird. Ein CRC-32 schuetzt 
also 2^32 bit = 256MByte gegen 1 bit Fehler. Den auf ein paar wenige 
Byte anzuwenden ist Bullshit. Nimm da was anderes, zB einen Hamming, der 
kann sogar noch reparieren.
Gast
Wieviele MegaBytes da theoretisch geschützt werden, ist vielleicht nicht 
das Entscheidende, weil man sicher keine Tausende Pakete senden möchte, 
bis man weiß, dass was falsch war. Eigentlich könnte man nach jedem 
Paket eine Schutzinformation senden, macht aber keiner, weil es die 
Datenrate halbieren würde.
Gast
Schau mal wie groß der Hamming Abstand ist. Das CRC sollte dir die 
Bitposition des fehlerhaften Bits für 1 bit Fehler direkt angeben. Es 
besteht keine Notwendigkeit das mit "brute force" zu testen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.