[Geben Sie hier die Überschrift ein] - MPC
[Geben Sie hier die Überschrift ein] - MPC
[Geben Sie hier die Überschrift ein] - MPC
- TAGS
- mpc.belwue.de
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>MPC</strong>-WORKSHOP JULI 2012<br />
r(x)<br />
berechnet. j = 0,<br />
1 ... ist <strong>ein</strong> Iterationszähler und<br />
L ( j)<br />
ist der Grad des Fehlerstellenpolynoms in der jten<br />
Iteration. Ist <strong>die</strong> Anzahl der Fehler kl<strong>ein</strong>er oder<br />
gleich t 1 , wird <strong>die</strong> Diskrepanz Null für alle Iterationen<br />
j ≤ 2t1 1.<br />
Ist <strong>die</strong> Diskrepanz Δ ( j)<br />
Null für alle Iterationen<br />
j = 2t1-1,..., 2t-1<br />
so haben wir <strong>ein</strong> gültiges Codewort<br />
vˆ (x) ∈ C .<br />
Da <strong>die</strong> Berechnung der Diskrepanz Teil des BMA<br />
ist, kann <strong>die</strong> parallele Implementierung auch für <strong>die</strong><br />
Prüfung in den Iterationen j ≥ 2t1 -1<br />
verwendet werden.<br />
Die parallele Implementierung des BMA benötigt<br />
daher lediglich 2t 1 Multiplikationen, <strong>die</strong> bei <strong>ein</strong>em<br />
GF(2 )<br />
14 jedoch <strong>ein</strong>e sehr hohe Komplexität besitzen.<br />
C. Durchschnittliche Anzahl von Iterationen<br />
Die Anzahl der Iterationen <strong>ein</strong>es parallelen oder seriellen<br />
BMA ist konstant und wird durch <strong>die</strong> Fehlerkorrekturfähigkeit<br />
festgelegt. Bei der gemischten parallelen<br />
und seriellen Implementierung hängt <strong>die</strong> Anzahl<br />
der Iterationen von der tatsächlichen Anzahl der<br />
Fehler ab. In <strong>die</strong>sem Abschnitt beschreiben wir, wie<br />
<strong>die</strong> durchschnittliche Anzahl von Iterationen bestimmt<br />
werden kann. Des Weiteren zeigen wir, wie man <strong>ein</strong><br />
optimales t 1 bestimmt.<br />
Sei p( t1<br />
, ε ) <strong>die</strong> bedingte Wahrsch<strong>ein</strong>lichkeit, dass<br />
<strong>die</strong> Anzahl der aufgetretenen Fehler größer als t 1 ist,<br />
gegeben dass mindestens <strong>ein</strong> Fehler auftrat. Die bedingte<br />
Wahrsch<strong>ein</strong>lichkeit hängt von t 1 und der Bitfehlerwahrsch<strong>ein</strong>lichkeit<br />
ε des BSC ab. Die durchschnittliche<br />
Anzahl der Iterationen ist dann<br />
⎢ t + t1<br />
⎥<br />
2<br />
N = ⎢ + p(<br />
t1,<br />
ε ) t<br />
2<br />
⎥<br />
⎣ ⎦<br />
für den binären BCH-Code und<br />
2<br />
N = t + t + 2 p(<br />
t , ε ) t<br />
1<br />
für den nicht binären Code. Für den BSC kann ( t , ε )<br />
angenähert werden durch<br />
Syndrome<br />
parallel<br />
computer BMA<br />
1<br />
S(x)<br />
Abbildung 6: Decoder Architektur für zweistufigen BMA.<br />
p 1<br />
serial<br />
BMA<br />
Buffer<br />
sel<br />
σ(x)<br />
Chien<br />
search<br />
e(x)<br />
n ⎛n<br />
⎞ i 2<br />
∑ ( 1 ) t<br />
i t 1 ⎜<br />
i ⎟<br />
⎟ε<br />
− ε<br />
= 1+<br />
p(<br />
t1,<br />
ε ) ≈<br />
⎝ ⎠<br />
n<br />
1−<br />
( 1−<br />
ε )<br />
wobei der Zähler <strong>die</strong> Wahrsch<strong>ein</strong>lichkeit ist, dass <strong>die</strong><br />
Anzahl der Fehler größer t 1 ist. Der Nenner ist <strong>die</strong><br />
Wahrsch<strong>ein</strong>lichkeit, dass mindestens <strong>ein</strong> Fehler auftritt.<br />
Die mittlere Anzahl von Iterationen sollte <strong>die</strong> Bedingung<br />
N ≤ 2t<br />
erfüllen, um zu gewährleisten, dass<br />
der mittlere Durchsatz nicht reduziert wird.<br />
Um <strong>die</strong> Performanz <strong>ein</strong>er parallel/seriellen BMA<br />
Implementierung darzustellen, betrachten wir <strong>ein</strong> typisches<br />
Beispiel für Flashspeicher. Um <strong>ein</strong>e Sektorgröße<br />
von 1kByte zur Verfügung zu stellen, benötigen wir<br />
<strong>ein</strong>e Codedimension k = 8288 . Dies b<strong>ein</strong>haltet <strong>die</strong><br />
Datenbits sowie zusätzliche Bits, <strong>die</strong> vom Flash-<br />
Controller benötigt werden. Für <strong>die</strong> Zuverlässigkeit<br />
gilt <strong>die</strong> Anforderung, dass <strong>ein</strong> Sektor mit <strong>ein</strong>er Wahr-<br />
-16<br />
sch<strong>ein</strong>lichkeit von höchstens pblock<br />
≤ 10 fehlerhaft<br />
s<strong>ein</strong> darf. In <strong>die</strong>sem Beispiel betrachten wir nun<br />
drei verschiedene BCH-Codes mit unterschiedlichen<br />
Fehlerkorrekturfähigkeiten. Die Parameter sind in<br />
Tabelle 1 zusammengefasst. Da <strong>die</strong> Bitfehlerwahrsch<strong>ein</strong>lichkeit<br />
mit zunehmender Anzahl der Schreibund<br />
Löschzyklen zunimmt, betrachten wir <strong>die</strong> höchste<br />
tolerierbare Bitfehlerwahrsch<strong>ein</strong>lichkeit. In Tabelle I<br />
ist der Wert ε t <strong>die</strong> maximale Bitfehlerwahrsch<strong>ein</strong>lichkeit,<br />
bei der <strong>die</strong> Blockfehlerwahrsch<strong>ein</strong>lichkeit<br />
16<br />
von 10 -<br />
<strong>ein</strong>gehalten werden kann. Der Wert t1 ,opt<br />
ist der optimale Wert für t 1 , bei dem <strong>die</strong> mittlere Iterationsanzahl<br />
minimal ist. Die Verbesserung im Vergleich<br />
zu <strong>ein</strong>er parallelen Implementierung ist in<br />
Abbildung 7 dargestellt. Diese zeigt <strong>die</strong> Reduktion der<br />
Iterationsanzahl t- N für verschiedene Werte von t 1<br />
und t .<br />
37