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

From LNTwww
 
(27 intermediate revisions by 4 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|Interleaver–Beschreibung für drei Beispiele]]
+
[[File:P_ID3032__KC_Z_4_8_v3.png|right|frame|Interleaver description]]
Interleaving (deutsch: <i>Verwürfelung</i>) 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 RSC&ndash;Coder (<i>Recursive Systematic Convolutional Encoder</i>) basieren &ndash; und nur solche machen Sinn, 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 Coder 2 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 <font color="#cc0000"><span style="font-weight: bold;">Block&ndash;Interleaver</span></font> und <font color="#cc0000"><span style="font-weight: bold;">Random&ndash;Interleaver</span></font>. Bei <i>Block&ndash;Interleaving</i> füllt man eine Matrix mit $S$ Spalten und $Z$ Zeilen spaltenweise und liest die Matrix zeilenweise aus. Damit wird ein Informationsblock mit $I_{\rm max} = S \cdot Z \ \rm Bit$ deterministisch verwürfelt.
+
A general distinction is made between
 +
* '''block interleaver''' and
  
Rechts sind zwei Interleaver angegeben und zwar in grafischer Form durch die Zuordnung $I_{\rm Out}(I_{\rm In})$. Diese Größen stehen für &bdquo;Index der Ausgangsfolge&rdquo; bzw. für &bdquo;Index der Eingangsfolge&rdquo;. Es gilt:
+
* '''random interleaver'''.  
:$$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 Aufgabe (1) ist gefragt, ob es sich hierbei um <i>Block&ndash;Interleaving</i> oder <i>Random Interleaving</i> handelt. Letztere werden im [[Kanalcodierung/Grundlegendes_zu_den_Turbocodes#Zweite_Voraussetzung_f.C3.BCr_Turbocodes:_Interleaving|Theorieteil]] in aller Kürze besprochen.
 
  
''Hinweise:''
+
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.
* Die Aufgabe bezieht sich auf das Kapitel [[Kanalcodierung/Grundlegendes_zu_den_Turbocodes| Grundlegendes zu den Turbocodes]].
 
* Aber auch in anderen LNTwww&ndash;Büchern wird Interleaving behandelt, u.A. im Buch &bdquo;Beispiele von Nachrichtensystemen&rdquo; mit Bezug zum
 
* Standard <i>Digital Subscriber Line</i> (DSL) &nbsp;&#8658;&nbsp; [[Beispiele_von_Nachrichtensystemen/Verfahren_zur_Senkung_der_Bitfehlerrate_bei_DSL#Interleaving_und_De.E2.80.93Interleaving| Interleaving und De&ndash;Interleaving]],
 
* 2G&ndash;Mobilfunksystem GSM &nbsp;&#8658;&nbsp; [[Beispiele_von_Nachrichtensystemen/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 UMTS &nbsp;&#8658;&nbsp; [[Beispiele_von_Nachrichtensystemen/Nachrichtentechnische_Aspekte_von_UMTS#Kanalcodierung| Kanalcodierung]],
 
* 4G&ndash;Mobilfunksystem LTE &nbsp;&#8658;&nbsp; [[Kapitel 4.3]] (im Buch &bdquo;Mobile Kommunikation&rdquo;).
 
  
 +
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.
  
===Fragebogen===
+
 
 +
 
 +
 
 +
 
 +
<u>Hints:</u>
 +
* The exercise refers to the chapter&nbsp; [[Channel_Coding/The_Basics_of_Turbo_Codes| "Basics of Turbo Codes"]].
 +
 
 +
*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"$)$.
 +
 
 +
 
 +
 
 +
 
 +
===Questions===
 
<quiz display=simple>
 
<quiz display=simple>
{Multiple-Choice
+
{What interleaver type is shown in the graphic on the details page?
|type="[]"}
+
|type="()"}
+ correct
+
+ Block interleaving,
- false
+
- Random interleaving.
  
{Input-Box Frage
+
{How many rows&nbsp; ($N_{\rm R}$)&nbsp; and columns&nbsp; ($N_{\rm C}$)&nbsp; does the upper "Interleaver matrix 1" have?
 
|type="{}"}
 
|type="{}"}
$xyz \ = \ ${ 5.4 3% } $ab$
+
$N_{\rm R} \ = \ ${ 4 }
 +
$N_{\rm C} \ = \ ${ 3 }  
 +
 
 +
{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="()"}
 +
- $\underline{u}_{\pi} = (110'100'100'011'111'110'010'001' \text{...}\ )$,
 +
+ $\underline{u}_{\pi} = (101'001'000'111'100'101'011'101'\text{...}\ )$.
 +
 
 +
{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="()"}
 +
+ $\underline{u} = (1101'0010'0011'1111'1001'0001'\text{...}\ )$,
 +
- $\underline{u} = (1010'0100'0111'1001'0101'1101' \text{...}\ )$.
 
</quiz>
 
</quiz>
  
===Musterlösung===
+
===Solution===
 
{{ML-Kopf}}
 
{{ML-Kopf}}
'''(1)'''&nbsp;  
+
[[File:P_ID3041__KC_Z_4_8b_v2.png|right|frame|$4×3$&nbsp; interleaver matrix]]
'''(2)'''&nbsp;  
+
'''(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>.
'''(3)'''&nbsp;  
+
 
'''(4)'''&nbsp;  
+
 
'''(5)'''&nbsp;  
+
'''(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}$.
 +
 
 +
 
 +
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$)$.
 +
 
 +
 
 +
 
 +
[[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.
 +
 
 +
*The graphic shows that the solution suggestion 2  is correct.
 +
<br clear=all>
 +
[[File:P_ID3043__KC_Z_4_8d_v1.png|right|frame|De–interleaving]]
 +
'''(4)'''&nbsp; Correct is&nbsp; <u>the proposed solution 1</u>:
 +
*In de-interleaving,&nbsp; the matrix is written row-by-row and read column-by-column.
 +
 +
*The graphic shows that here the solution suggestion 1 is correct.
 +
 
 +
 
 
{{ML-Fuß}}
 
{{ML-Fuß}}
  
  
  
[[Category:Aufgaben zu  Kanalcodierung|^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.