Difference between revisions of "Aufgaben:Exercise 4.08Z: Basics about Interleaving"

From LNTwww
m (Text replacement - "„" to """)
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 
{{quiz-Header|Buchseite=Kanalcodierung/Grundlegendes zu den Turbocodes}}
 
{{quiz-Header|Buchseite=Kanalcodierung/Grundlegendes zu den Turbocodes}}
  
[[File:P_ID3032__KC_Z_4_8_v3.png|right|frame|Zur Interleaver–Beschreibung]]
+
[[File:P_ID3032__KC_Z_4_8_v3.png|right|frame|Interleaver description]]
Interleaving&nbsp; (deutsch: &nbsp;<i>Verwürfelung</i>)&nbsp; ist zum Beispiel bei einem Kanal mit Bündelfehlercharakteristik erforderlich, um die Fehler innerhalb des Bündels über einen genügend großen Bereich so zu verteilen, dass diese anschließend weitgehend korrigiert (oder zumindest erkannt) werden können.
+
Interleaving is required,&nbsp; for example,&nbsp; for a channel with burst error characteristics in order to distribute the errors within the burst over a sufficiently large area so that they can subsequently be largely corrected&nbsp; $($or at least detected$)$.
  
Für Turbocodes, die auf so genannten &nbsp;'''RSC&ndash;Coder'''&nbsp; (<i>Recursive Systematic Convolutional Encoder</i>)&nbsp; basieren &ndash; und nur solche machen Sinn &ndash; ist <i>Interleaving</i> auch beim AWGN&ndash;Kanal essentiell, da es dann auch stets (einige) Eingangssequenzen gibt, die in der Ausgangsfolge nach etlichen Einsen nur noch Nullen liefern, und zwar bis ins Unendliche &nbsp; &#8658; &nbsp; es gibt Ausgangsfolgen mit sehr kleinem Hamming&ndash;Gewicht.
+
For turbo codes based on so-called &nbsp;'''RSC encoder'''&nbsp; $($"Recursive Systematic Convolutional Encoder"$)$&nbsp; &ndash; and only such make sense &ndash; interleaving is essential also with the AWGN channel,&nbsp; because then there are also always $($some$)$ input sequences,&nbsp; which deliver only&nbsp; "zeros"&nbsp; in the output sequence after quite a few&nbsp; "ones",&nbsp; and that to infinity &nbsp; &#8658; &nbsp; there are output sequences with very small Hamming weight.
  
Verteilt man im zweiten Coder die Bits solcher Eingangssequenzen über einen weiten Bereich, so kann bei iterativer symbolweiser Decodierung das Problem durch das Zusammenspiel beider Komponentendecoder (weitgehend) beseitigt werden.
+
If the bits of such input sequences are distributed over a wide range in the second encoder,&nbsp; the problem can be largely eliminated by the interaction of both component decoders in the case of iterative symbol-wise decoding.
  
Man unterscheidet allgemein zwischen
+
A general distinction is made between
* '''Block&ndash;Interleaver''' und
+
* '''block interleaver''' and
* '''Random&ndash;Interleaver'''.
 
  
 +
* '''random interleaver'''.
  
Bei <i>Block&ndash;Interleaving</i>&nbsp; füllt man eine Matrix mit&nbsp; $S$&nbsp; Spalten und&nbsp; $Z$&nbsp; Zeilen spaltenweise und liest die Matrix zeilenweise aus. Damit wird ein Informationsblock mit&nbsp; $I_{\rm max} = S \cdot Z$&nbsp; Bit deterministisch verwürfelt.
 
  
Rechts sind zwei Interleaver angegeben und zwar in grafischer Form durch die Zuordnung&nbsp; $I_{\rm Out}(I_{\rm In})$. Diese Größen stehen für den "Index der Ausgangsfolge" bzw. für den "Index der Eingangsfolge". Es gilt:
+
In block interleaving&nbsp; one fills a matrix with&nbsp; $N_{\rm C}$&nbsp; columns and&nbsp; $N_{\rm R}$&nbsp; rows column-by-column and reads the matrix row-by-row.&nbsp; This deterministically scrambles a block of information with&nbsp; $I_{\rm max} = N_{\rm C} \cdot N_{\rm R}$&nbsp; bits.
:$$1 \le I_{\rm Out} \le I_{\rm max} \hspace{0.05cm}, \hspace{0.5cm}
 
1 \le I_{\rm In} \le I_{\rm max} \hspace{0.05cm}. $$
 
  
In der Teilaufgabe&nbsp; '''(1)'''&nbsp; ist gefragt, ob es sich hierbei um&nbsp; <i>Block&ndash;Interleaving</i>&nbsp; oder um&nbsp; <i>Random Interleaving</i> &nbsp;handelt. Letztere werden im&nbsp; [[Channel_Coding/Grundlegendes_zu_den_Turbocodes#Zweite_Voraussetzung_f.C3.BCr_Turbocodes:_Interleaving|Theorieteil]]&nbsp; allerdings nur in aller Kürze besprochen.
+
On the right,&nbsp; two interleavers are indicated and in graphical form by the assignment&nbsp; $I_{\rm Out}(I_{\rm In})$.&nbsp; These quantities represent the&nbsp; "output sequence index"&nbsp; and the&nbsp; "input sequence index",&nbsp; respectively.&nbsp; It holds:
 +
:$$1 \le I_{\rm Out} \le I_{\rm max} \hspace{0.05cm},$$
 +
:$$1 \le I_{\rm In} \le I_{\rm max} \hspace{0.05cm}. $$
  
 +
In the subtask&nbsp; '''(1)'''&nbsp; it is asked whether this is&nbsp; "block interleaving"&nbsp; or&nbsp; "random interleaving".&nbsp; The latter are discussed in the&nbsp; [[Channel_Coding/The_Basics_of_Turbo_Codes#Second_requirement_for_turbo_codes:_Interleaving|"theory section"]]&nbsp; but only very briefly.
  
  
  
  
''Hinweis:''
 
* Die Aufgabe bezieht sich auf das Kapitel&nbsp; [[Channel_Coding/Grundlegendes_zu_den_Turbocodes| Grundlegendes zu den Turbocodes]].
 
  
*Aber auch in anderen $\rm LNTwww$&ndash;Büchern wird Interleaving behandelt, unter anderem im Buch "Beispiele von Nachrichtensystemen" mit Bezug zum
+
<u>Hints:</u>
:* Standard&nbsp; <i>Digital Subscriber Line</i> (DSL) &nbsp; &#8658; &nbsp; [[Examples_of_Communication_Systems/Verfahren_zur_Senkung_der_Bitfehlerrate_bei_DSL#Interleaving_und_De.E2.80.93Interleaving| Interleaving und De&ndash;Interleaving]],
+
* The exercise refers to the chapter&nbsp; [[Channel_Coding/The_Basics_of_Turbo_Codes| "Basics of Turbo Codes"]].
:* 2G&ndash;Mobilfunksystem&nbsp; GSM &nbsp; &#8658; &nbsp; [[Examples_of_Communication_Systems/Gesamtes_GSM%E2%80%93%C3%9Cbertragungssystem#Komponenten_der_Sprach.E2.80.93_und_Daten.C3.BCbertragung| Komponenten der Sprach&ndash; und Datenübertragung]],
 
:* 3G&ndash;Mobilfunksystem&nbsp; UMTS &nbsp; &#8658; &nbsp; [[Examples_of_Communication_Systems/Nachrichtentechnische_Aspekte_von_UMTS#Kanalcodierung| Kanalcodierung]],
 
:* 4G&ndash;Mobilfunksystem&nbsp; LTE &nbsp; &#8658; &nbsp; [[Mobile_Communications/Die_Anwendung_von_OFDMA_und_SC-FDMA_in_LTE#Funktionsweise_von_SC.E2.80.93FDMA| Funktionsweise von SC&ndash;FDMA]]&nbsp; (im Buch "Mobile Kommunikation").
 
  
 +
*But other&nbsp; $\rm LNTwww$&nbsp; books also discuss interleaving,&nbsp; including the book&nbsp; "Examples of Communication Systems"&nbsp; with reference to the
 +
:* standard digital subscriber line</i> $\rm (DSL)$ &nbsp; &#8658; &nbsp; [[Examples_of_Communication_Systems/Methods_to_Reduce_the_Bit_Error_Rate_in_DSL#Interleaving_und_De.E2.80.93Interleaving| "Interleaving and Deinterleaving"]],
 +
:* 2G mobile communication system&nbsp; $\rm GSM$ &nbsp; &#8658; &nbsp; [[Examples_of_Communication_Systems/Entire_GSM_Transmission_System#Komponenten_der_Sprach.E2.80.93_und_Daten.C3.BCbertragung| "Components of voice and data transmission"]],
 +
:* 3G mobile communication system&nbsp; $\rm UMTS$ &nbsp; &#8658; &nbsp; [[Examples_of_Communication_Systems/Telecommunications_Aspects_of_UMTS#Kanalcodierung_bei_UMTS| "Channel Coding"]],
 +
:* 4G mobile communication system&nbsp; $\rm LTE$ &nbsp; &#8658; &nbsp; [[Mobile_Communications/The_Application_of_OFDMA_and_SC-FDMA_in_LTE#Functionality_of_SC-FDMA| "Functionality of SC-FDMA"]]&nbsp; $($in the boo&nbsp; "Mobile Communications"$)$.
  
  
  
===Fragebogen===
+
 
 +
===Questions===
 
<quiz display=simple>
 
<quiz display=simple>
{Welche Interleaver&ndash;Art ist in der Grafik auf der Angabenseite dargestellt?
+
{What interleaver type is shown in the graphic on the details page?
 
|type="()"}
 
|type="()"}
+ Block&ndash;Interleaving,
+
+ Block interleaving,
- Random&ndash;Interleaving.
+
- Random interleaving.
  
{Wieviele Zeilen&nbsp; ($Z$)&nbsp; und Spalten&nbsp; ($S$)&nbsp; hat die obere "Interleaver&ndash;Matrix 1"?
+
{How many rows&nbsp; ($N_{\rm R}$)&nbsp; and columns&nbsp; ($N_{\rm C}$)&nbsp; does the upper "Interleaver matrix 1" have?
 
|type="{}"}
 
|type="{}"}
$Z \ = \ ${ 4 }  
+
$N_{\rm R} \ = \ ${ 4 }  
$S \ = \ ${ 3 }  
+
$N_{\rm C} \ = \ ${ 3 }  
  
{Es gelte&nbsp; $\underline{u} = (1001'0001'1101'1101'0010'0111)$. Wie beginnt die verwürfelte Folge&nbsp; $\underline{u}_{\pi}$? <br>&nbsp; &nbsp; ''Hinweis:'' &nbsp; Die Hochkommata dienen nur als Lesehilfe.
+
{It holds &nbsp; $\underline{u} = (1001'0001'1101'1101'0010'0111)$.&nbsp; How does the scrambled sequence&nbsp; $\underline{u}_{\pi}$ begin?&nbsp; &nbsp; Note: &nbsp; The quotation marks serve only as a reading aid.
 
|type="()"}
 
|type="()"}
 
- $\underline{u}_{\pi} = (110'100'100'011'111'110'010'001' \text{...}\ )$,
 
- $\underline{u}_{\pi} = (110'100'100'011'111'110'010'001' \text{...}\ )$,
 
+ $\underline{u}_{\pi} = (101'001'000'111'100'101'011'101'\text{...}\ )$.
 
+ $\underline{u}_{\pi} = (101'001'000'111'100'101'011'101'\text{...}\ )$.
  
{Die verwürfelte Folge sei&nbsp; $\underline{u}_{\pi} = (100'100'011'101'110'100'100'111)$. Wie lautet die Folge nach dem De&ndash;Interleaving?
+
{The scrambled sequence be&nbsp; $\underline{u}_{\pi} = (100'100'011'101'110'100'100'111)$.&nbsp; What is the sequence after de-interleaving?
 
|type="()"}
 
|type="()"}
 
+ $\underline{u} = (1101'0010'0011'1111'1001'0001'\text{...}\ )$,
 
+ $\underline{u} = (1101'0010'0011'1111'1001'0001'\text{...}\ )$,
Line 60: Line 61:
 
</quiz>
 
</quiz>
  
===Musterlösung===
+
===Solution===
 
{{ML-Kopf}}
 
{{ML-Kopf}}
[[File:P_ID3041__KC_Z_4_8b_v2.png|right|frame|4×3–Interleaver–Matrix]]  
+
[[File:P_ID3041__KC_Z_4_8b_v2.png|right|frame|$4×3$&nbsp; interleaver matrix]]  
'''(1)'''&nbsp; Aus der regelmäßigen Struktur der Funktion $I_{\rm Out}(I_{\rm In})$ erkennt man, dass es sich um einen Blockinterleaver handelt &nbsp;&#8658;&nbsp; <u>Antwort 1</u>.
+
'''(1)'''&nbsp; From the regular structure of the function&nbsp; $I_{\rm Out}(I_{\rm In})$&nbsp; one can see that it is a block interleaver &nbsp; &#8658; &nbsp; <u>Response 1</u>.
 +
 
 +
 
 +
'''(2)'''&nbsp; The index&nbsp; "1"&nbsp; is output as the first character.&nbsp; Further applies:
 +
* The index 5 is output as the second character &nbsp; &#8658; &nbsp; $\underline{N_{\rm R} = 4}$.
  
 +
* The index 2 is output as the fourth character &nbsp; &#8658; &nbsp; $\underline{N_{\rm C} = 3}$.
  
'''(2)'''&nbsp; Der Index "1" wird als erstes Zeichen ausgegeben. Weiter gilt:
 
* Der Index 5 wird als zweites Zeichen ausgegeben &nbsp;&#8658;&nbsp; $\underline{Z = 4}$.
 
* Der Index 2 wird als viertes Zeichen ausgegeben &nbsp;&#8658;&nbsp; $\underline{S = 3}$.
 
  
 +
The upper graph shows for the&nbsp; $4×3$&nbsp; interleaver matrix:
 +
* the column-by-column write&nbsp; $($red$)$,
 +
 +
* the row-by-row readout&nbsp; $($green$)$.
  
Die obere Grafik zeigt für die 4×3–Interleaver&ndash;Matrix:
 
* das spaltenweise Beschreiben (rot),
 
* das zeilenweise Auslesen (grün).
 
  
  
 +
[[File:P_ID3042__KC_Z_4_8c_v3.png|right|frame|Interleaving]]
 +
'''(3)'''&nbsp; Correct is&nbsp; <u>the proposed solution 2</u>:
 +
*The matrix is written column-by-column and read row-by-row.
 +
 +
*After&nbsp; $12$&nbsp; bits,&nbsp; the matrix is cleared and the procedure starts again.
  
[[File:P_ID3042__KC_Z_4_8c_v3.png|right|frame|Zum Interleaving]]
+
*The graphic shows that the solution suggestion 2 is correct.  
'''(3)'''&nbsp; Richtig ist der <u>der Lösungsvorschlag 2</u>:
 
*Die Matrix wird spaltenweise beschrieben und zeilenweise ausgelesen.
 
*Nach 12 Bit wird die Matrix gelöscht und die Prozedur beginnt von Neuem.
 
*Die Grafik zeigt, dass nun der Lösungsvorschlag 2 richtig ist.  
 
 
<br clear=all>
 
<br clear=all>
[[File:P_ID3043__KC_Z_4_8d_v1.png|right|frame|Zum De–Interleaving]]
+
[[File:P_ID3043__KC_Z_4_8d_v1.png|right|frame|De–interleaving]]
'''(4)'''&nbsp; Richtig ist der <u>der Lösungsvorschlag 1</u>:
+
'''(4)'''&nbsp; Correct is&nbsp; <u>the proposed solution 1</u>:
*Beim De&ndash;Interleaving wird die Matrix zeilenweise beschrieben und spaltenweise ausgelesen.  
+
*In de-interleaving,&nbsp; the matrix is written row-by-row and read column-by-column.
*Die Grafik zeigt, dass hier der Lösungsvorschlag 1 richtig ist.
+
 +
*The graphic shows that here the solution suggestion 1 is correct.
  
  
Line 93: Line 99:
  
  
[[Category:Channel Coding: Exercises|^4.3 Grundlegendes zu den Turbocodes^]]
+
[[Category:Channel Coding: Exercises|^4.3 About the Turbo Codes^]]

Latest revision as of 14:53, 14 December 2022

Interleaver description

Interleaving is required,  for example,  for a channel with burst error characteristics in order to distribute the errors within the burst over a sufficiently large area so that they can subsequently be largely corrected  $($or at least detected$)$.

For turbo codes based on so-called  RSC encoder  $($"Recursive Systematic Convolutional Encoder"$)$  – and only such make sense – interleaving is essential also with the AWGN channel,  because then there are also always $($some$)$ input sequences,  which deliver only  "zeros"  in the output sequence after quite a few  "ones",  and that to infinity   ⇒   there are output sequences with very small Hamming weight.

If the bits of such input sequences are distributed over a wide range in the second encoder,  the problem can be largely eliminated by the interaction of both component decoders in the case of iterative symbol-wise decoding.

A general distinction is made between

  • block interleaver and
  • random interleaver.


In block interleaving  one fills a matrix with  $N_{\rm C}$  columns and  $N_{\rm R}$  rows column-by-column and reads the matrix row-by-row.  This deterministically scrambles a block of information with  $I_{\rm max} = N_{\rm C} \cdot N_{\rm R}$  bits.

On the right,  two interleavers are indicated and in graphical form by the assignment  $I_{\rm Out}(I_{\rm In})$.  These quantities represent the  "output sequence index"  and the  "input sequence index",  respectively.  It holds:

$$1 \le I_{\rm Out} \le I_{\rm max} \hspace{0.05cm},$$
$$1 \le I_{\rm In} \le I_{\rm max} \hspace{0.05cm}. $$

In the subtask  (1)  it is asked whether this is  "block interleaving"  or  "random interleaving".  The latter are discussed in the  "theory section"  but only very briefly.



Hints:

  • But other  $\rm LNTwww$  books also discuss interleaving,  including the book  "Examples of Communication Systems"  with reference to the



Questions

1

What interleaver type is shown in the graphic on the details page?

Block interleaving,
Random interleaving.

2

How many rows  ($N_{\rm R}$)  and columns  ($N_{\rm C}$)  does the upper "Interleaver matrix 1" have?

$N_{\rm R} \ = \ $

$N_{\rm C} \ = \ $

3

It holds   $\underline{u} = (1001'0001'1101'1101'0010'0111)$.  How does the scrambled sequence  $\underline{u}_{\pi}$ begin?    Note:   The quotation marks serve only as a reading aid.

$\underline{u}_{\pi} = (110'100'100'011'111'110'010'001' \text{...}\ )$,
$\underline{u}_{\pi} = (101'001'000'111'100'101'011'101'\text{...}\ )$.

4

The scrambled sequence be  $\underline{u}_{\pi} = (100'100'011'101'110'100'100'111)$.  What is the sequence after de-interleaving?

$\underline{u} = (1101'0010'0011'1111'1001'0001'\text{...}\ )$,
$\underline{u} = (1010'0100'0111'1001'0101'1101' \text{...}\ )$.


Solution

$4×3$  interleaver matrix

(1)  From the regular structure of the function  $I_{\rm Out}(I_{\rm In})$  one can see that it is a block interleaver   ⇒   Response 1.


(2)  The index  "1"  is output as the first character.  Further applies:

  • The index 5 is output as the second character   ⇒   $\underline{N_{\rm R} = 4}$.
  • The index 2 is output as the fourth character   ⇒   $\underline{N_{\rm C} = 3}$.


The upper graph shows for the  $4×3$  interleaver matrix:

  • the column-by-column write  $($red$)$,
  • the row-by-row readout  $($green$)$.


Interleaving

(3)  Correct is  the proposed solution 2:

  • The matrix is written column-by-column and read row-by-row.
  • After  $12$  bits,  the matrix is cleared and the procedure starts again.
  • The graphic shows that the solution suggestion 2 is correct.


De–interleaving

(4)  Correct is  the proposed solution 1:

  • In de-interleaving,  the matrix is written row-by-row and read column-by-column.
  • The graphic shows that here the solution suggestion 1 is correct.