Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Letzte ÜberarbeitungBeide Seiten der Revision
cpm:crc [2013/10/20 06:28] volkerpcpm:crc [2013/12/16 16:10] volkerp
Zeile 96: Zeile 96:
   * http://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=3846   * http://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=3846
   * http://www.ac1-info.de/literatur/fa_86_11.htm (Berechnung nach SDLC, mit Bit-Schieberegister)   * http://www.ac1-info.de/literatur/fa_86_11.htm (Berechnung nach SDLC, mit Bit-Schieberegister)
 +
 +===== Hardware =====
 +
 +aus mc 1984/07
 +
 +CRC ist die Abkürzung für Cyclic Redundancy
 +Check und so etwas ähnliches
 +wie eine Prüfsumme, darf aber damit
 +nicht verwechselt werden, da die Erzeugung
 +des CRC aufwendiger ist. Dabei
 +werden nicht einfach die einzelnen Bytes
 +aufaddiert, sondern verschiedene
 +Bits gemäß einem sogenannten Generator-
 +Polynom. Es gibt dabei sehr unterschiedliche
 +Vorschriften, jedoch verwendet
 +man bei den gängigen Controllern
 +das vom CCITT definierte Polynom.
 +Es lautet G(x) = 1 + x^5 + x^12 + x^16.
 +Daraus kann man eine Schaltung konstruieren,
 +die etwa wie in Bild 16 aussieht.
 +Ein Reset-Eingang sorgt dafür, daß
 +das Schieberegister auf einen definierten
 +Wert gesetzt werden kann. Dann werden
 +der Eingang FREI auf 1 gelegt und zusammen
 +mit einem Takt die Daten an E
 +angelegt. Nach dem Ende des Datenstroms
 +wird FREI auf 0 gelegt, und die
 +CRC-Bytes können aus dem Register geschoben
 +werden. Um nun einen Datenstrom
 +zu testen, wird genauso wie vorher
 +verfahren, nur daß nun auch die
 +CRC-Bytes mitverrechnet werden. Das
 +Ergebnis im Schieberegister muß anschließend
 +0 sein. 
 +
 +{{:cpm:crc-hardware.jpg|}}
 +
 +
  • cpm/crc.txt
  • Zuletzt geändert: 2014/03/11 09:18
  • von volkerp