The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.
Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by , 2016-02-21 16:48:37

_3_Codierungsmethoden_WS-14

_3_Codierungsmethoden_WS-14

Fano Bedingung

Aufgabe:
Codierung eines Codes für die Buchstaben
a, b , c der die Fano-Bedingung erfüllt.

a=0
b = 10
c = 11

Test: 1110111010001011
entspricht: c b c b b aa b c

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 51

Fano Bedingung

Aufgabe:
Codierung eines Codes für die Buchstaben
a, b , c , d, e, der die Fano-Bedingung erfüllt.

a = 000
b = 111
c = 110
d = 100
e = 011

Test : 000011100111001
a e d b?

001: z.B. Fehler in der Übertragung

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 52

Lauflängencodierung

Zum Beispiel
AAAABBBBCCDDDDDDACCCCCDDBBBBBBBBB

wird wie folgt übertragen:
4A4B2C6D1A5C2D9B

Sehr effektiv z.B. bei einem Einscannen für eine Schwarz-Weiß-
Faxübertragung

weiß = A Lauflängencodierung

Schwarz = B

Teile die Seite ein in Quadrate, die ca. der Größe eines Punkts
entsprechen.
Ergebnis entspricht einer Komprimierung einer Graphik.

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 53

Codierungsmethoden
- Fehlertolerante Codierung

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 54

Codierungstheorie

Themen des Abschnitts:

o Fehlertolerante Codierung
o Was ist Parität?
o Erkennung von Fehlern in abgespeicherten Daten
o Korrektur von Fehlern
o Technischer Festplattenaufbau

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 55

Wie entstehen Fehler?

Bei der Datenübertragung zwischen verschiedenen
Systemen können Fehler entstehen.

Sender Codierung Übertragungs- Decodierung Empfänger
kanal

Störungsquelle

• Äußere Einflüsse

• Übertragungsprobleme (Kabel, Steckverbindungen)

• Zu hohe Auslastung des Sende- oder Empfangssystems

• Hardwareprobleme ( Festplatte)

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 56

Codierung

Idee:

Die Codierungslänge sollte größer als notwendig gewählt werden.

Die zusätzlichen nicht benötigten Zeichen könnten für einen Test der
Integrität der Daten verwendet werden.

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 57

Paritätscodierung

Binärcodierung der Länge n c: A  Bn = {0,1} n
Ergänze jedes Codewort um eine Bit, so dass die Summen der
einzelnen (n + 1) Bitwerte gerade ist.

c‘ : A  Bn+1 = {0,1} n+1 Codewort b1, …, b4 Paritätsbit b5
Die Codierung hat
0000 0
„gerade Parität“. 0010 1
1100 0
Durch die Parität kann man 1110 1
erkennen, ob in dem 1111 0
Codewort ein oder mehrere
Bits fehlerhaft sein könnte.

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 58

Ungerade Paritätscodierung

Technisch machbar (eventuell auch sinnvoll) ist ebenfalls eine
Codierung mit „Ungerader Parität“.

Codewort b1, …, b4 Paritätsbit b5

0000 (neg. Parität)
0010
1100 1
1110 0
1111 1
0
1

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 59

Definition Paritätskodierung

Paritätskodierung

Für Wörter b1 … bn ε Bn heißt die Codierung
cp : Bn  Bn+1 mit

b1 … bn  b1 … bn bn+1 wobei bn+1 = ( ∑ bi ) mod b

Paritätskodierung.

---------------
a mod b = Der Rest der Integer-Division a / b
______________________________________
In dualen System: Einfacher zu merken:

Addiere die Anzahl von Einsen in dem Codewort,
wenn diese gerade ist, füge eine „0“ hinzu,
wenn diese ungerade ist, füge eine „1“ hinzu

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 60

Paritätskontrolle

 Zur Datenübertragung wird die Paritätskodierung wahlweise
mit gerader oder ungerader Parität verwendet.

 Die Parität wird errechnet und mit den Daten gesendet.

 Von Empfänger wird sie aus den Daten ebenfalls berechnet
und mit der mitgesendeten verglichen.

 Die Paritätskontrolle erkennt einen
Einzelfehler je Codewort.

( oder jede andere ungerade Zahl von Fehlern)

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 61

Hamming-Abstand

Seien x = x1 … xn und y = y1 …. yn zwei Wörter der Länge n

über dem Alphabet A, also x;y ε An

Der Hamming-Abstand (Hamming distance) dH(x,y)

der Worter x und y ist die Anzahl ihrer unterschiedlichen

Komponenten,

dH(x,y) = ∑ (1,{ i ε {1, … ,n} : xi ≠ yi } )

Beispiele: dH(0111,0101) = 1
• B4: dH(0111,1000) = 4
dH(HAMMING,HAMBURG) = 3
• {A, . . . , Z}7:

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 62

Minimalabstand des Hamming-Abstands

Seien A = {a1 … an } ein endlichen Alphabet
c : A  Bn eine Codierung der Länge n mit den Codeworten
Ci = c(ai) , i  {1,2 … , n}

Der Minimalabstand dmin (c ) der Codierung c ist das Minimum
der Hamming-Abstände unterschiedlicher Codewörter.

Folgerung: dmin (c ) = min {dH(ci,ck)}

Für jede Codierung c gilt: dmin (c )  1

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 63

Minimalabstand der Paritätskodierung

Folgerung:
Paritätscodierung cp , Gerade Parität

Ändert sich ein Bit, so ändert sich auch das Paritätsbit.

Codewort b1, …, b4 Paritätsbit b5
1100 0
1110 1

 Der Minimalabstand dmin (c ) der Paritätscodierung cp :

 dmin (cp ) = 2
Wichtig für die Fehlererkennung!

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 64

Definition: Fehlererkennende Codierung

Eine Codierung c fester Länge heißt k-fehler erkennend,
wenn es dem Empfänger möglich ist,
bis zu k Einzelfehler je Codewort zu erkennen.

Folgerung:

Eine Codierung c fester Länge ist genau dann k-fehlererkennend,
Wenn folgende Beziehung zum Mindestabstand dmin:

dmin (c )  k+1

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 65

Fehlererkennende Codierung Codewort Paritäts
bit
Somit: 110 0001 1
• Paritätscodierung ist 1-fehlererkennend, 110 0010 1
110 0011 0
da dmin (cp ) = 2 110 0100 1
110 0101 0
• Wenn sich 1 Bit ändern, ist dies erkennbar! 110 0110 0
• Wenn sich 2 Bits ändern, ist dies nicht mehr 110 0111 1
110 1000 1
erkennbar!
• Korrektur ist jedoch schon bei der Änderung

von einem Bit nicht möglich.
Dazu fehlt die Information über die genaue
Position des defekten Bits in dem Codewort!

 Erweiterung der bisher besprochenen Parität ist also
notwendig.

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 66

1D-Paritätscodierung 1- Bit-Fehler

Codewort Paritätsb …
it
110 0001
110 0010 1
110 0011 1
110 0100 0
110 0101 1
110 0110 0
110 0111 0
110 1000 1
1

Fehler in der Tabelle erkennbar
Aber nicht lokalisierbar

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 67

Grundsätzliche Frage

Wie groß soll eigentlich der Block sein, für den
die Parität erstellt wird?

Vorteil: Große Blockgröße

Geringer Overhead durch das Paritätsbit
Berechnung der Parität erfolgt nicht so oft.

Vorteil: Kleine Blockgröße

Fehler in den Blöcken sind leichter zu erkennen.
Fehler heben sich nämlich seltener auf!
Berechnung der Parität ist schneller, da weniger Elemente .

 Allgemein wird eine Blockgröße von 4KByte bis 128 kByte
verwendet.

Achtung immer 2-er Potenz als Blockgröße verwenden!

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 68

2D Paritätskodierung

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 69

2D- Paritätscodierung Codewort Paritäts
bit
Verfeinerung der Fehlerüber- 110 0001
prüfung 110 0010 1
110 0011 1
Sender bildet Blöcke aus m 110 0100 0
Codewörtern der Länge n und 110 0101 1
ergänzt pro Zeile und Spalte 110 0110 0
je ein Paritätsbit. 110 0111 0
110 1000 1
Paritäts 000 1000 1
bit 1

Wie viele Einzelfehler werden jetzt erkennt?
Sind diese korrigierbar?

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 70

Allgemein: 2D-Paritätscodierung

Für Blöcke b11 … bmn  Bmn aus m Wörtern der Länge n heißt

die Codierung

cp2 : Bmn  Bmn+m+n+1 mit

b1 ... bmn  b1 ...bmnbmn+1 ...bmn+m+n+1

mit den m+n+1 angehängten Paritätsbits

n

bmn+k =  b(k 1)(ni) mod 2 für k  { 1, ... ,m}
i 1

m 1 mod 2 für l  { 1, ... ,n+1}

bmn+m+l =  bi(n1)l
i0

zweidimensionale Paritätscodierung oder kurz

2D-Paritätscodierung

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 71

2D-Paritätscodierung 1- Bit-Fehler

Fehler in einem Bit

Fehler in der Tabelle genau lokalisierbar

 Korrigierbar

Also:

 1-Bit Fehler erkannt,
 korrigierbar

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 72

2D-Paritätscodierung 2-Bit-Fehler

Fehler in einem Bit

Fehler in der Tabelle erkennbar,
Aber nicht lokalisierbar
(hier: zwei Möglichkeiten)
 >NICHT korrigierbar

Also:

 2-Bit Fehler erkennbar
 nicht korrigierbar

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 73

2D-Paritätscodierung: 2- und 3-Bit-Fehler

Links: Rechts:
 2 - Bit Fehler erkannt  2 - Bit Fehler erkannt
 nicht korrigierbar  nicht korrigierbar

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 74

2D-Paritätscodierung: 3- und 4-Bit-Fehler

Links: Rechts:
 3 - Bit Fehler  4 - Bit Fehler
 1-Bit „Fehler“ erkannt  Nicht erkannt
 nicht korrigierbar  nicht korrigierbar

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 75

2D-Paritätscodierung
Folgerung:

Die 2D-Paritätscodierung
 erkennt drei Einzelfehler je Block und
 kann einen Einzelfehler je Block korrigieren.

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 76

Definition: Fehlerkorrigierende Codierungen

Eine Codierung c fester Länge heißt
k-fehlerkorrigierend,
wenn es möglich ist, bis zu k unabhängige

Einzelfehler je Codewort zu korrigieren.

Folgerung

Eine Codierung c fester Länge ist genau dann k-
fehlerkorrigierend, wenn für ihren Minimalabstand d‘ gilt:

Wie gesehen: d‘min (c )  2k+1

2D-Paritätscodierung cp2 :
d‘min(cp2)  3  k  1  K = 1  cp2 ist 1-fehlerkorrigierend

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 77

Anwendung
Raid Systeme

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 78

Raid Allgemeines

Zusammenfassung

Raid – Systeme

Redundant array of independent disks
Früher (Redundant array of inexpensive disks)

Idee: Wie erhalten ich eine Festplatte mit mehr
Speicherkapazität,
wenn ich mehrere kleine Platten zur Verfügung habe?

Folgerung: Erzeugung verschiedener Systeme entsprechend
der Anforderungen aus mehreren unabhängigen Festplatten

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 79

Raid 0

Mehrere Platten (üblicherweise zwei) werden so
parallel geschaltet, dass sie sich beim kontinuierlichen
Lesen und Schreiben von Datenmengen abwechseln.

Diese "Striping" genannte Technik kann zum Beispiel
dazu genutzt werden, dass während des Lesens einer
Datenspur der Kopf der zweiten Platte schon auf der
neuen Spur positioniert wird.

Nachteil:
 Die Ausfallwahrscheinlichkeit wird ungefähr verdoppelt.
 Bei Ausfall einer Festplatte sind zudem alle Daten des RAID-

Systems verloren.
 RAID Level 0 wird nur dort eingesetzt, wo für lokale

Aufgaben extreme
Datenmengen in kürzester Zeit verarbeitet werden

müssen.

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 80

Raid 1

Mehrere Platten (üblicherweise zwei)
erhalten exakt dieselben Informationen („Mirroring").
Fällt eine Platte aus, kann sie (im laufenden Rechner)
ausgetauscht werden, während die verbliebenen
Platten weiterarbeiten.
Nach dem Anmelden der neuen Platte wird diese vom
RAID-Controller sofort mit den aktuellen Daten versorgt.
Erhält jede Festplatte einen eigenen Controller, so spricht
man von „Duplexing“
Die Wahrscheinlichkeit eines gleichzeitigen Ausfalls aller
Platten ist sehr klein .
RAID Level 1 ist ein Pflichtbestandteil wichtiger Server.
Nachteil:
 Die Festplattenkosten pro Datenmenge vervielfachen sich.

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 81

Raid 5

Die Paritätsinformation wird auf alle
Festplatten verteilt

Minimalanzahl der Festplatten: 3
Maximalanzahl: 32

Bei n gleichgroßen Einzelplatten ergibt sich eine
Gesamtkapazität vom n -1-fachen der Festplatte mit der
geringsten Speicherkapazität.

Bei Ausfall einer Festplatte muss für den Datenzugriff 1/(n-1)
der Daten nicht berechnet.

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 82

Raid 6

Weiterentwicklung von Raid 5.

Hier wird die 2-dimensionale Parität Codewort Paritäts
gerechnet und analog Raid 5 auf den bit
Festplatten abgespeichert.
110 0001 1
Minimalanzahl der Festplatten: 4 110 0010 1
110 0011 0
Bei n gleichgroßen Einzelplatten ergibt 110 0100 1
sich eine Gesamtkapazität vom 110 0101 0
n -2-fachen der Festplatte mit der 110 0110 0
geringsten Speicherkapazität. 110 0111 1
110 1000 1
Paritäts 000 1000 1
bit

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 83

Hot Spare / Hot Plugable

Hot Spare Festplatten:
in größeren Festplattensystemen
sind einzelne Festplatten speziell
gekennzeichnet.
Diese werden im Fehlerfall vom
Controller direkt anstelle der defekten Festplatte benutzt.

Hot Plugable:
Die Festplatte kann im Betrieb getauscht werden.

LVM Logical Volume Manager:
Unter Linux ist es möglich ein Raid 0-System in laufenden
Betrieb aufzusetzen und auch zu erweitern.

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 84

Vorteile/Nachteile Raid-5

 Aufbau großer Festplatten möglich
(Bsp.: 12 * 1 TB / 30 * 500 GB und größer)

 Verlust von 1/n des Speicherbereichs
3 Platten = 1/3 = 33%
10 Platten = 1/10 = 10 %
30 Platten = 1/30 = 3,33 %

 Alle Festplatten sollten gleich groß sein.
 Die Größe des Raids richtet sich nach der kleinsten

Festplatte.
Festplatten: 500 GB, 1TB, 1TB, 1TB, 2TB ergeben ein Raid-
5 mit:
4 * 500 GB Datenkapazität

(Raid 6: analoge Aussagen)

Hochschule Hannover Fak.IV /Abt. Informatik Bernd Laumann Grundlagen der Informatik Teil 3 WS2014/15 Seite 85














Click to View FlipBook Version