Aufgaben:Aufgabe 1.6: Cyclic Redundancy Check (CRC4): Unterschied zwischen den Versionen
(Eine dazwischenliegende Version desselben Benutzers wird nicht angezeigt) | |||
Zeile 6: | Zeile 6: | ||
[[Datei:P_ID1626__Bei_A_1_6.png|right|frame|Bildung der CRC4-Prüfsumme]] | [[Datei:P_ID1626__Bei_A_1_6.png|right|frame|Bildung der CRC4-Prüfsumme]] | ||
− | Die Synchronisation geschieht beim Primärmultiplexanschluss jeweils im | + | Die Synchronisation geschieht beim Primärmultiplexanschluss jeweils im Synchronisationskanal "$0$" eines jeden Rahmens: |
* Bei ungeraden Zeitrahmen (Nummer 1, 3, ... , 15) überträgt dieser das so genannte „Rahmenkennwort” mit dem festen Bitmuster $\rm X001\hspace{0.05cm} 1011$. | * Bei ungeraden Zeitrahmen (Nummer 1, 3, ... , 15) überträgt dieser das so genannte „Rahmenkennwort” mit dem festen Bitmuster $\rm X001\hspace{0.05cm} 1011$. | ||
− | |||
− | |||
+ | * Jeder gerade Rahmen (mit Nummer 2, 4, ... , 16) beinhaltet dagegen das „Meldewort” $\rm X1DN\hspace{0.05cm}YYYY$. | ||
+ | |||
+ | *Über das $\rm D$–Bit und das $\rm N$–Bit werden Fehlermeldungen signalisiert. Ddie vier $\rm Y$–Bits sind für Service–Funktionen reserviert. | ||
− | Das $\rm X$–Bit wird jeweils durch das '' | + | |
− | *Aus jeweils acht Eingangsbits | + | Das $\rm X$–Bit wird jeweils durch das '''CRC4–Verfahren''' gewonnen, dessen Realisierung in der Grafik dargestellt ist: |
− | *Bevor das erste Bit in das Register geschoben wird, sind alle Register mit Nullen belegt: | + | *Aus jeweils acht Eingangsbits – in der gesamten Aufgabe wird hierfür die Bitfolge $\rm 1011\hspace{0.05cm} 0110$ angenommen – werden durch Modulo–2–Additionen und Verschiebungen die vier Prüfbits $\rm CRC3$, ... , $\rm CRC0$ gewonnen, die dem Eingangswort in dieser Reihenfolge hinzugefügt werden. |
+ | |||
+ | *Bevor das erste Bit in das Register geschoben wird, sind alle Register mit Nullen belegt: | ||
:$${\rm CRC3 = CRC2 =CRC1 =CRC0 = 0}\hspace{0.05cm}.$$ | :$${\rm CRC3 = CRC2 =CRC1 =CRC0 = 0}\hspace{0.05cm}.$$ | ||
+ | |||
*Nach acht Schiebetakten steht in den vier Registern $\rm CRC3$, ... , $\rm CRC0$ die CRC4–Prüfsumme. | *Nach acht Schiebetakten steht in den vier Registern $\rm CRC3$, ... , $\rm CRC0$ die CRC4–Prüfsumme. | ||
Zeile 23: | Zeile 27: | ||
*Das dazugehörige Generatorpolynom lautet: | *Das dazugehörige Generatorpolynom lautet: | ||
:$$G(D) = D^4 + D +1 \hspace{0.05cm}.$$ | :$$G(D) = D^4 + D +1 \hspace{0.05cm}.$$ | ||
− | *Die sendeseitige CRC4–Prüfsumme erhält man auch als '''Rest''' der Polynomdivision | + | *Die sendeseitige CRC4–Prüfsumme erhält man auch als "'''Rest'''" der Polynomdivision |
:$$(D^{11} +D^{9} +D^{8}+D^{6}+D^{5})/G(D) \hspace{0.05cm}.$$ | :$$(D^{11} +D^{9} +D^{8}+D^{6}+D^{5})/G(D) \hspace{0.05cm}.$$ | ||
− | *Das Divisorpolynom ergibt sich aus der Eingangsfolge und vier angehängten Nullen: $\rm 1011\hspace{0.09cm} 0110\hspace{0.09cm} 0000$. | + | *Das Divisorpolynom ergibt sich aus der Eingangsfolge und vier angehängten Nullen: "$\rm 1011\hspace{0.09cm} 0110\hspace{0.09cm} 0000$". |
− | Auch die CRC4–Überprüfung beim Empfänger entsprechend Teilaufgabe '''(4)''' kann durch eine Polynomdivision dargestellt werden. Sie lässt sich durch eine Schieberegisterstruktur in ähnlicher Weise realisieren wie die sendeseitige Gewinnung der CRC4–Prüfsumme. | + | Auch die CRC4–Überprüfung beim Empfänger entsprechend Teilaufgabe '''(4)''' kann durch eine Polynomdivision dargestellt werden. Sie lässt sich durch eine Schieberegisterstruktur in ähnlicher Weise realisieren wie die sendeseitige Gewinnung der CRC4–Prüfsumme. |
Zeile 34: | Zeile 38: | ||
+ | Hinweise: | ||
− | + | *Die Aufgabe gehört zum Kapitel [[Beispiele_von_Nachrichtensystemen/ISDN–Primärmultiplexanschluss|"ISDN–Primärmultiplexanschluss"]]. | |
− | + | ||
− | + | *Zur Lösung der Aufgabe werden einige Grundkenntnisse der [[Kanalcodierung|"Kanalcodierung"]] vorausgesetzt. | |
− | *Die Aufgabe gehört zum Kapitel [[Beispiele_von_Nachrichtensystemen/ISDN–Primärmultiplexanschluss|ISDN–Primärmultiplexanschluss]] . | ||
− | *Zur Lösung der Aufgabe werden einige Grundkenntnisse der [[Kanalcodierung|Kanalcodierung]] vorausgesetzt. | ||
Zeile 62: | Zeile 65: | ||
$\rm CRC3 \ = \ $ { 1 3% } | $\rm CRC3 \ = \ $ { 1 3% } | ||
− | {Am Empfänger kommen folgende Bitfolgen an, jeweils $\text{ | + | {Am Empfänger kommen folgende Bitfolgen an, jeweils acht Informationsbits plus $\text{(CRC3, CRC2, CRC1,CRC0)}$. <br>Welche dieser Bitfolgen zeigen an, dass kein Bitfehler vorliegt? |
|type="[]"} | |type="[]"} | ||
- $1011 \hspace{0.1cm}0010\hspace{0.08cm} 1011$, | - $1011 \hspace{0.1cm}0010\hspace{0.08cm} 1011$, | ||
Zeile 68: | Zeile 71: | ||
- $1011 \hspace{0.1cm}0110\hspace{0.08cm} 1001$. | - $1011 \hspace{0.1cm}0110\hspace{0.08cm} 1001$. | ||
− | {Welche | + | {Welche der empfangenen Bitfolgen wurden bei der Übertragung verfälscht? |
|type="[]"} | |type="[]"} | ||
+ $0000 \hspace{0.1cm}0111 \hspace{0.1cm}0010$, | + $0000 \hspace{0.1cm}0111 \hspace{0.1cm}0010$, | ||
Zeile 79: | Zeile 82: | ||
{{ML-Kopf}} | {{ML-Kopf}} | ||
− | '''(1)''' Richtig ist <u>der Lösungsvorschlag 2</u>: | + | '''(1)''' Richtig ist <u>der Lösungsvorschlag 2</u>: |
− | *Aufgrund des größten Zählerexponenten $(D^{11})$ und des höchsten Nennerexponenten $(D^{4})$ kann der erste Vorschlag $E(D) = D^{5} + D^{3} + 1$ als Ergebnis ausgeschlossen werden ⇒ $E(D) = D^{7} + D^{5} + D^{3} + 1$. | + | *Aufgrund des größten Zählerexponenten $(D^{11})$ und des höchsten Nennerexponenten $(D^{4})$ kann der erste Vorschlag $E(D) = D^{5} + D^{3} + 1$ als Ergebnis ausgeschlossen werden ⇒ $E(D) = D^{7} + D^{5} + D^{3} + 1$. |
+ | *Die Modulo–2–Multiplikation von $E(D)$ mit dem Generatorpolynom $G(D) = D^{4} + D + 1$ liefert: | ||
+ | :$$E(D) \cdot G(D) \ = \ (D^7+ D^5+D^3+1)\cdot (D^4+ D+1) \ = D^{11}+D^8+D^7+D^9+D^6+D^5+D^7+D^4+D^3+D^4+ D+1 \hspace{0.05cm}.$$ | ||
− | + | *Zu berücksichtigen ist hierbei, dass bei Modulo–2–Rechnungen $D^{4} + D^{4} = 0$ gilt. Damit ergibt sich der folgende Rest: | |
− | |||
− | *Zu berücksichtigen ist hierbei, dass bei Modulo–2–Rechnungen $D^{4} + D^{4} = 0$ gilt. Damit ergibt sich der folgende Rest: | ||
:$$R(D) = D^{11}+D^9+D^8+D^6+D^5- E(D) \cdot G(D) = D^3+D+1 \hspace{0.05cm}.$$ | :$$R(D) = D^{11}+D^9+D^8+D^6+D^5- E(D) \cdot G(D) = D^3+D+1 \hspace{0.05cm}.$$ | ||
[[Datei:P_ID1628__Bei_A_1_6b.png|right|frame|Registerbelegungen bei CRC4]] | [[Datei:P_ID1628__Bei_A_1_6b.png|right|frame|Registerbelegungen bei CRC4]] | ||
− | '''(2)''' Aus dem Ergebnis der Teilaufgabe '''(1)''' folgt: | + | '''(2)''' Aus dem Ergebnis der Teilaufgabe '''(1)''' folgt: |
:$${\rm CRC0 = 1},\hspace{0.2cm}{\rm CRC1 = 1},\hspace{0.2cm}{\rm CRC2 = 0},\hspace{0.2cm}{\rm CRC3 = 1}\hspace{0.05cm}.$$ | :$${\rm CRC0 = 1},\hspace{0.2cm}{\rm CRC1 = 1},\hspace{0.2cm}{\rm CRC2 = 0},\hspace{0.2cm}{\rm CRC3 = 1}\hspace{0.05cm}.$$ | ||
− | Die Tabelle zeigt einen zweiten Lösungsweg auf | + | *Die Tabelle zeigt einen zweiten Lösungsweg auf. |
− | + | ||
− | '''(3)''' Richtig ist nur der <u>Lösungsvorschlag 2</u> | + | * Sie enthält die Registerbelegungen der gegebenen Schaltung zu den Zeiten $0$, ... , $8$. |
− | *Der Empfänger teilt das Polynom $P(D)$ der Empfangsfolge durch das Generatorpolynom $G(D)$. | + | |
− | *Liefert diese Modulo–2–Division den Rest $R(D) = 0$, so wurden alle 12 Bit richtig übertragen. | + | |
− | *Dies trifft für den zweiten Lösungsvorschlag zu, wie ein Vergleich mit den Teilaufgaben (1) und (2) zeigt. Es gilt ohne Rest: | + | |
+ | '''(3)''' Richtig ist nur der <u>Lösungsvorschlag 2</u>: | ||
+ | *Der Empfänger teilt das Polynom $P(D)$ der Empfangsfolge durch das Generatorpolynom $G(D)$. | ||
+ | *Liefert diese Modulo–2–Division den Rest $R(D) = 0$, so wurden alle $12$ Bit richtig übertragen. | ||
+ | |||
+ | *Dies trifft für den zweiten Lösungsvorschlag zu, wie ein Vergleich mit den Teilaufgaben '''(1)''' und '''(2)''' zeigt. Es gilt ohne Rest: | ||
:$$(D^{11}+D^9+D^8+D^6+D^5+D^3+D+1) : (D^4+ D+1)= D^7+D^5+D^3+1 \hspace{0.05cm}.$$ | :$$(D^{11}+D^9+D^8+D^6+D^5+D^3+D+1) : (D^4+ D+1)= D^7+D^5+D^3+1 \hspace{0.05cm}.$$ | ||
− | *Bei Lösungsvorschlag 1 wurde das 6. Informationsbit verfälscht, beim Lösungsvorschlag 3 das CRC1–Bit. | + | *Hinweis: Bei Lösungsvorschlag 1 wurde das 6. Informationsbit verfälscht, beim Lösungsvorschlag 3 das CRC1–Bit. |
− | '''(4)''' Richtig sind <u>die Lösungsvorschläge 1 und 3</u>: | + | [[Datei:P_ID1629__Bei_A_1_6d.png|right|frame|Polynomdivision der drei Empfangsfolgen]] |
− | *Die Grafik verdeutlicht die Modulo–2–Divisionen für die gegebenen Empfangsfolgen in vereinfachter Form (mit Nullen und Einsen) | + | '''(4)''' Richtig sind <u>die Lösungsvorschläge 1 und 3</u>: |
− | *Man erkennt, dass nur bei der Folge 2 die Division ohne Rest möglich ist. | + | *Die Grafik verdeutlicht die Modulo–2–Divisionen für die gegebenen Empfangsfolgen in vereinfachter Form (mit Nullen und Einsen): |
+ | |||
+ | *Man erkennt, dass nur bei der Folge 2 die Division ohne Rest möglich ist. | ||
+ | |||
*In ausgeschriebener Form lauten die Polynomdivisionen: | *In ausgeschriebener Form lauten die Polynomdivisionen: | ||
− | + | $$\ (1) \ \hspace{0.2cm}(D^6+D^5+D^4+1) : (D^4+ D+1)$$ | |
− | + | :$$\hspace{0.3cm}\Rightarrow \hspace{0.3cm}\text{Rest:}\hspace{0.15cm}D^3+ D+1\hspace{0.05cm},$$ | |
− | + | $$\ (2) \ \hspace{0.2cm}(D^7+D^6+D^5+D^4+1) : (D^4+ D+1)$$ | |
− | + | :$$\hspace{0.3cm}\Rightarrow \hspace{0.3cm}\text{Rest:}\hspace{0.15cm}0\hspace{0.05cm},$$ | |
− | + | $$\ (3) \ \hspace{0.2cm}(D^7+D^6+D^5+D^4+D^3+1) : (D^4+ D+1)$$ | |
+ | :$$\hspace{0.3cm}\Rightarrow \hspace{0.3cm}\text{Rest:}\hspace{0.15cm}D^3\hspace{0.05cm}.$$ | ||
{{ML-Fuß}} | {{ML-Fuß}} | ||
Aktuelle Version vom 28. Oktober 2022, 16:22 Uhr
Die Synchronisation geschieht beim Primärmultiplexanschluss jeweils im Synchronisationskanal "$0$" eines jeden Rahmens:
- Bei ungeraden Zeitrahmen (Nummer 1, 3, ... , 15) überträgt dieser das so genannte „Rahmenkennwort” mit dem festen Bitmuster $\rm X001\hspace{0.05cm} 1011$.
- Jeder gerade Rahmen (mit Nummer 2, 4, ... , 16) beinhaltet dagegen das „Meldewort” $\rm X1DN\hspace{0.05cm}YYYY$.
- Über das $\rm D$–Bit und das $\rm N$–Bit werden Fehlermeldungen signalisiert. Ddie vier $\rm Y$–Bits sind für Service–Funktionen reserviert.
Das $\rm X$–Bit wird jeweils durch das CRC4–Verfahren gewonnen, dessen Realisierung in der Grafik dargestellt ist:
- Aus jeweils acht Eingangsbits – in der gesamten Aufgabe wird hierfür die Bitfolge $\rm 1011\hspace{0.05cm} 0110$ angenommen – werden durch Modulo–2–Additionen und Verschiebungen die vier Prüfbits $\rm CRC3$, ... , $\rm CRC0$ gewonnen, die dem Eingangswort in dieser Reihenfolge hinzugefügt werden.
- Bevor das erste Bit in das Register geschoben wird, sind alle Register mit Nullen belegt:
- $${\rm CRC3 = CRC2 =CRC1 =CRC0 = 0}\hspace{0.05cm}.$$
- Nach acht Schiebetakten steht in den vier Registern $\rm CRC3$, ... , $\rm CRC0$ die CRC4–Prüfsumme.
Die Anzapfungen des Schieberegisters sind $g_{0} = 1, \ g_{1} = 1, \ g_{2} = 0, \ g_{3} = 0$ und $g_{4} = 1$.
- Das dazugehörige Generatorpolynom lautet:
- $$G(D) = D^4 + D +1 \hspace{0.05cm}.$$
- Die sendeseitige CRC4–Prüfsumme erhält man auch als "Rest" der Polynomdivision
- $$(D^{11} +D^{9} +D^{8}+D^{6}+D^{5})/G(D) \hspace{0.05cm}.$$
- Das Divisorpolynom ergibt sich aus der Eingangsfolge und vier angehängten Nullen: "$\rm 1011\hspace{0.09cm} 0110\hspace{0.09cm} 0000$".
Auch die CRC4–Überprüfung beim Empfänger entsprechend Teilaufgabe (4) kann durch eine Polynomdivision dargestellt werden. Sie lässt sich durch eine Schieberegisterstruktur in ähnlicher Weise realisieren wie die sendeseitige Gewinnung der CRC4–Prüfsumme.
Hinweise:
- Die Aufgabe gehört zum Kapitel "ISDN–Primärmultiplexanschluss".
- Zur Lösung der Aufgabe werden einige Grundkenntnisse der "Kanalcodierung" vorausgesetzt.
Fragebogen
Musterlösung
(1) Richtig ist der Lösungsvorschlag 2:
- Aufgrund des größten Zählerexponenten $(D^{11})$ und des höchsten Nennerexponenten $(D^{4})$ kann der erste Vorschlag $E(D) = D^{5} + D^{3} + 1$ als Ergebnis ausgeschlossen werden ⇒ $E(D) = D^{7} + D^{5} + D^{3} + 1$.
- Die Modulo–2–Multiplikation von $E(D)$ mit dem Generatorpolynom $G(D) = D^{4} + D + 1$ liefert:
- $$E(D) \cdot G(D) \ = \ (D^7+ D^5+D^3+1)\cdot (D^4+ D+1) \ = D^{11}+D^8+D^7+D^9+D^6+D^5+D^7+D^4+D^3+D^4+ D+1 \hspace{0.05cm}.$$
- Zu berücksichtigen ist hierbei, dass bei Modulo–2–Rechnungen $D^{4} + D^{4} = 0$ gilt. Damit ergibt sich der folgende Rest:
- $$R(D) = D^{11}+D^9+D^8+D^6+D^5- E(D) \cdot G(D) = D^3+D+1 \hspace{0.05cm}.$$
(2) Aus dem Ergebnis der Teilaufgabe (1) folgt:
- $${\rm CRC0 = 1},\hspace{0.2cm}{\rm CRC1 = 1},\hspace{0.2cm}{\rm CRC2 = 0},\hspace{0.2cm}{\rm CRC3 = 1}\hspace{0.05cm}.$$
- Die Tabelle zeigt einen zweiten Lösungsweg auf.
- Sie enthält die Registerbelegungen der gegebenen Schaltung zu den Zeiten $0$, ... , $8$.
(3) Richtig ist nur der Lösungsvorschlag 2:
- Der Empfänger teilt das Polynom $P(D)$ der Empfangsfolge durch das Generatorpolynom $G(D)$.
- Liefert diese Modulo–2–Division den Rest $R(D) = 0$, so wurden alle $12$ Bit richtig übertragen.
- Dies trifft für den zweiten Lösungsvorschlag zu, wie ein Vergleich mit den Teilaufgaben (1) und (2) zeigt. Es gilt ohne Rest:
- $$(D^{11}+D^9+D^8+D^6+D^5+D^3+D+1) : (D^4+ D+1)= D^7+D^5+D^3+1 \hspace{0.05cm}.$$
- Hinweis: Bei Lösungsvorschlag 1 wurde das 6. Informationsbit verfälscht, beim Lösungsvorschlag 3 das CRC1–Bit.
(4) Richtig sind die Lösungsvorschläge 1 und 3:
- Die Grafik verdeutlicht die Modulo–2–Divisionen für die gegebenen Empfangsfolgen in vereinfachter Form (mit Nullen und Einsen):
- Man erkennt, dass nur bei der Folge 2 die Division ohne Rest möglich ist.
- In ausgeschriebener Form lauten die Polynomdivisionen:
$$\ (1) \ \hspace{0.2cm}(D^6+D^5+D^4+1) : (D^4+ D+1)$$
- $$\hspace{0.3cm}\Rightarrow \hspace{0.3cm}\text{Rest:}\hspace{0.15cm}D^3+ D+1\hspace{0.05cm},$$
$$\ (2) \ \hspace{0.2cm}(D^7+D^6+D^5+D^4+1) : (D^4+ D+1)$$
- $$\hspace{0.3cm}\Rightarrow \hspace{0.3cm}\text{Rest:}\hspace{0.15cm}0\hspace{0.05cm},$$
$$\ (3) \ \hspace{0.2cm}(D^7+D^6+D^5+D^4+D^3+1) : (D^4+ D+1)$$
- $$\hspace{0.3cm}\Rightarrow \hspace{0.3cm}\text{Rest:}\hspace{0.15cm}D^3\hspace{0.05cm}.$$