[[dtlab_t4]]

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
dtlab_t4 [2024/03/11 17:39]
beckmanf [LEDG5..0 ECC]
dtlab_t4 [2024/03/18 17:45]
beckmanf [LEDG5..0 ECC] Tabelle mit P2..P1
Line 111: Line 111:
  
 ==== VHDL Entity und Architecture ==== ==== VHDL Entity und Architecture ====
 +
 +Nach einer [[dt-code|Einführung zu dem Konzept von Entity und Architecture]] dann die Entity und Architecture für "​top_simple"​.
  
 === VHDL Entity === === VHDL Entity ===
Line 237: Line 239:
 Auf Seite 3 "ECC Code Generation Example"​ wird das Verfahren für die Berechnung von sechs Prüfbits (P4´, P2´, P1´, P4, P2 , P1) für ein Datenwort mit acht Bit beschrieben. Auf Seite 3 "ECC Code Generation Example"​ wird das Verfahren für die Berechnung von sechs Prüfbits (P4´, P2´, P1´, P4, P2 , P1) für ein Datenwort mit acht Bit beschrieben.
  
-Verwenden Sie analog ​dieses Vorgehen für die Berechnung der Prüfbits (P2´, P1´, P2 , P1) für ein 4 Bit Datenwort. Geben Sie die Prüfbits (P2´, P1´, P2 , P1) für die Berechnung der Daten auf den grünen LEDs LEDG[3..0] aus. Das Datenwort D[3..0] = "​1011"​ sollte dann (P2´, P1´, P2 , P1) = "0111" ergeben. Mit P2´=D1 xor D0, P1`= D2 xor D0, P2=D3 xor D2 und P1 = D3 xor D1.+Verwenden Sie dieses Vorgehen ​analog ​für die Berechnung der Prüfbits (P2´, P1´, P2 , P1) für ein 4 Bit Datenwort. Geben Sie die Prüfbits (P2´, P1´, P2 , P1) für die Berechnung der Daten auf den grünen LEDs LEDG[3..0] aus. Das Datenwort D[3..0] = "​1011"​ sollte dann (P2´, P1´, P2 , P1) = "0110" ergeben. Mit P2´=D1 xor D0, P1´= D2 xor D0, P2=D3 xor D2 und P1 = D3 xor D1. 
 + 
 +^    ^D3 ^D2 ^ D1 ^ D0 ^ 
 +|P2  |x |x |   ​| ​  | 
 +|P2' |  |  |x  |x  | 
 +|P1  |x |  |x  |   | 
 +|P1' |  |x |   ​|x ​ |
  
 Simulieren Sie jetzt einen Lesezugriff auf ein 4 Bit Datenwort mit den zugehörigen 4 Prüfbits mit den Schaltern. Die Datenbits sollen auf SW[3..0] und die gelesenen Prüfbits (P2´, P1´, P2 , P1) auf SW[7..4] sein. Durch Vergleich der aus den Daten SW[3..0] berechneten neuen Prüfbits mit den gelesenen Prüfbits an SW[7..4] kann man verschiedene Fehlersituationen bei der Annahme von einem Bitfehler unterscheiden. Simulieren Sie jetzt einen Lesezugriff auf ein 4 Bit Datenwort mit den zugehörigen 4 Prüfbits mit den Schaltern. Die Datenbits sollen auf SW[3..0] und die gelesenen Prüfbits (P2´, P1´, P2 , P1) auf SW[7..4] sein. Durch Vergleich der aus den Daten SW[3..0] berechneten neuen Prüfbits mit den gelesenen Prüfbits an SW[7..4] kann man verschiedene Fehlersituationen bei der Annahme von einem Bitfehler unterscheiden.
Line 243: Line 251:
 ^ Situation ^ Erkennung ^ ^ Situation ^ Erkennung ^
 | Kein Fehler | Die neu berechneten Prüfbits sind gleich den gelesenen an SW[7..4] | | Kein Fehler | Die neu berechneten Prüfbits sind gleich den gelesenen an SW[7..4] |
-| Korrigierbarer Fehler | Es unterscheiden sich genau zwei Prüfbits es ändert ​sich nicht gleichzeitg ​P1 und P1´ oder P2 und P2´.  |+| Korrigierbarer Fehler | Es unterscheiden sich genau zwei Prüfbits ​und es ändern ​sich nicht gleichzeitig ​P1 und P1´ oder P2 und P2´.  |
 | ECC Fehler (Ein Bit) | Genau ein Prüfbit unterscheidet sich | | ECC Fehler (Ein Bit) | Genau ein Prüfbit unterscheidet sich |
-| Nicht korrigierbar | Mehr als ein Prüfbit unterscheidet sich |+| Nicht korrigierbar | Alles andere ​|
  
 Signalisieren Sie das an LEDG[5..4]. Signalisieren Sie das an LEDG[5..4].
  • dtlab_t4.txt
  • Last modified: 2024/04/09 19:43
  • by beckmanf