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

From LNTwww
 
(4 intermediate revisions by 2 users not shown)
Line 2: Line 2:
  
 
[[File:P_ID3032__KC_Z_4_8_v3.png|right|frame|Interleaver description]]
 
[[File:P_ID3032__KC_Z_4_8_v3.png|right|frame|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).
+
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 &nbsp;'''RSC&ndash;Coder'''&nbsp; (<i>Recursive Systematic Convolutional Encoder</i>)&nbsp; &ndash; and only such make sense &ndash; <i>interleaving</i> 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 &nbsp; &#8658; &nbsp; there are output sequences with very small Hamming weight.
+
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.
  
If the bits of such input sequences are distributed over a wide range in the second coder, the problem can be (largely) eliminated by the interaction of both component decoders in the case of iterative symbol-wise decoding.
+
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.
  
 
A general distinction is made between  
 
A general distinction is made between  
* '''Block interleaver''' and
+
* '''block interleaver''' and
* '''Random interleaver'''.
 
  
 +
* '''random interleaver'''.
  
In <i>block interleaving</i>&nbsp; one fills a matrix with&nbsp; $S$&nbsp; columns and&nbsp; $Z$&nbsp; rows column by column and reads the matrix row by row. This deterministically scrambles a block of information with&nbsp; $I_{\rm max} = S \cdot Z$&nbsp; bits.
 
  
On the right, two interleavers are indicated and in graphical form by the assignment&nbsp; $I_{\rm Out}(I_{\rm In})$. These quantities represent the "index of the output sequence" and the "index of the input sequence", respectively. It holds:
+
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 the subtask&nbsp; '''(1)'''&nbsp; it is asked whether this is&nbsp; <i>block interleaving</i>&nbsp; oor&nbsp; <i>random interleaving</i> &nbsp;. Letztere werden im&nbsp; [[Channel_Coding/The_Basics_of_Turbo_Codes#Second_requirement_for_turbo_codes:_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.
  
  

Latest revision as of 13: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.