Difference between revisions of "Aufgaben:Exercise 3.6: State Transition Diagram"

From LNTwww
 
(20 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{quiz-Header|Buchseite=Kanalcodierung/Codebeschreibung mit Zustands– und Trellisdiagramm}}
+
{{quiz-Header|Buchseite=Channel_Coding/Code_Description_with_State_and_Trellis_Diagram}}
  
[[File:P_ID2648__KC_A_3_6.png|right|frame|Einfacher Rate–1/2–Faltungscodierer]]
+
[[File:P_ID2648__KC_A_3_6.png|right|frame|Simple realization of a rate $1/2$ convolutional encoder]]
Eine Beschreibungsmöglichkeit für Faltungscodierer bietet das so genannte <i>Zustandsübergangsdiagramm</i>- Beinhaltet der Coder $m$ Speicherregister &#8658; Einflusslänge $\nu = m + 1$, so gibt es nach der aktuellen Speicherbelegung verschiedene Zustände $S_{\mu}$ mit $0 &#8804; \mu &#8804; 2^m \, &ndash;1$, wobei für den Index gilt:
+
A description possibility for convolutional encoders is provided by the so-called&nbsp; "state transition diagram".
 +
*If the encoder contains&nbsp; $m$&nbsp; memory registers &nbsp; &#8658; &nbsp; influence length&nbsp; $\nu = m + 1$,&nbsp; then there are different states&nbsp; $S_{\mu}$&nbsp; with&nbsp; $0 &#8804; \mu &#8804; 2^m -1$,&nbsp; where holds for the index:
 
:$$\mu = \sum_{l = 1}^{m} \hspace{0.1cm}2^{l-1} \cdot u_{i-l}
 
:$$\mu = \sum_{l = 1}^{m} \hspace{0.1cm}2^{l-1} \cdot u_{i-l}
 
\hspace{0.05cm}.$$
 
\hspace{0.05cm}.$$
  
Diese Art der Coderbeschreibung soll auf den oben skizzierten Faltungscodierer der Rate $R = 1/2$ angewendet werden.
+
*This type of code description is to be applied to the convolutional coder of rate&nbsp; $R = 1/2$&nbsp; outlined above.
  
''Hinweis:''
 
* Die Aufgabe gehört zum Kapitel [[Kanalcodierung/Codebeschreibung_mit_Zustands%E2%80%93_und_Trellisdiagramm| Codebeschreibung mit Zustands&ndash; und Trellisdiagramm]].
 
  
  
  
===Fragebogen===
+
<u>Hints:</u>
 +
*This exercise belongs to the chapter&nbsp; [[Channel_Coding/Code_Description_with_State_and_Trellis_Diagram| "Code Description with State and Trellis Diagram"]].
 +
 
 +
*Reference is made in particular to the section&nbsp; [[Channel_Coding/Code_Description_with_State_and_Trellis_Diagram#State_definition_for_a_memory_register|"State definition for a memory register"]].
 +
 
 +
 
 +
 
 +
===Questions===
 
<quiz display=simple>
 
<quiz display=simple>
{Multiple-Choice
+
{How many states does this convolutional encoder have?
 +
|type="{}"}
 +
${\rm Number \ of \ states} \ = \ ${ 2 }
 +
 
 +
{Do you get from any state to all other states?
 +
|type="()"}
 +
+ Yes.
 +
- No.
 +
 
 +
{What statements hold for the transition from&nbsp; $s_i = S_1$&nbsp; to&nbsp; $s_{i+1} = S_0$?
 
|type="[]"}
 
|type="[]"}
+ correct
+
+ The current information bit must be&nbsp; $u_i = 0$&nbsp;.
- false
+
- The current information bit must be&nbsp; $u_i = 1$&nbsp;.
 +
+ The associated code sequence is&nbsp; $\underline{x}_i = (01)$.
 +
- The associated code sequence is&nbsp; $\underline{x}_i = (10)$.
  
{Input-Box Frage
+
{What statements hold for the transition from&nbsp; $s_i = S_1$&nbsp; to&nbsp; $s_{i+1} = S_1$?
|type="{}"}
+
|type="[]"}
$xyz \ = \ ${ 5.4 3% } $ab$
+
- The current information bit must be&nbsp; $u_i = 0$&nbsp;.
 +
+ The current information bit must be&nbsp; $u_i = 1$&nbsp;.
 +
- The associated code sequence is&nbsp; $\underline{x}_i = (01)$.
 +
+ The associated code sequence is&nbsp; $\underline{x}_i = (10)$.
 +
 
 +
{Which information sequences are possible?
 +
|type="[]"}
 +
+ $\underline{u} = (1, \, 1, \, 0, \, 0, \, 1 \, 1, \, \text{...}\hspace{0.05cm})$,
 +
+ $\underline{u} = (1, \, 0, \, 1, \, 0, \, 1, \, 0, \, \text{...}\hspace{0.05cm})$.
 +
 
 +
{Which code sequences are possible?
 +
|type="[]"}
 +
+ $\underline{x} = (11, \, 10, \, 01, \, 00, \, 11, \, 10, \, \text{...}\hspace{0.05cm})$,
 +
- $\underline{x} = (11, \, 00, \, 10, \, 01, \, 11, \, 00, \, \text{...}\hspace{0.05cm})$.
 
</quiz>
 
</quiz>
  
===Musterlösung===
+
===Solution===
 
{{ML-Kopf}}
 
{{ML-Kopf}}
'''(1)'''&nbsp;  
+
[[File:P_ID2649__KC_A_3_6a_neu.png|right|frame|Equivalent circuit diagram of the encoder under consideration]]
'''(2)'''&nbsp;  
+
'''(1)'''&nbsp; As can be seen from the accompanying equivalent circuit diagram,&nbsp; the encoder contains only one memory element &nbsp; <br>&#8658; &nbsp; memory&nbsp; $m = 1$.&nbsp; Thus there are&nbsp; $2^m \ \underline{= 2}$&nbsp; states,&nbsp; viz.
'''(3)'''&nbsp;  
+
* the state $S_0 \ \Rightarrow \ u_{i&ndash;1} = 0$,
'''(4)'''&nbsp;  
+
 
'''(5)'''&nbsp;  
+
* the state $S_1 \ \Rightarrow \ u_{i&ndash;1} = 1$.
{{ML-Fuß}}
+
 
 +
 
 +
'''(2)'''&nbsp; From each state go&nbsp; $2^k = 2$&nbsp; arrows to different states.
 +
*Since there are only two states,&nbsp; the answer <u>YES</u> is correct.
 +
 
 +
 
 +
'''(3)'''&nbsp; Correct are the&nbsp; <u>solutions 1 and 3</u>:
 +
*The information bit&nbsp; $u_i$&nbsp; present at time&nbsp; $i$&nbsp; is with respect to the following time $(j = i + 1)$&nbsp; the previous bit&nbsp; $(u_{j&ndash;1})$.
 +
 +
*Thus&nbsp; $s_{i+1} = u_i$&nbsp; holds.&nbsp; Only with&nbsp; $u_i = 0$&nbsp; does one get&nbsp; from&nbsp; $s_i = S_1$&nbsp; to&nbsp; $s_{i+1} = S_0$ &nbsp; &#8658; &nbsp; <u>Proposed solution 1</u>.
 +
 
 +
*From&nbsp; $s_i = S_1$ &nbsp; &#8658; &nbsp; $u_{i&ndash;1} = 1$&nbsp; follows further &nbsp; &#8658; &nbsp; <u>Proposed solution 3</u>:
 +
:$${x}_i^{(1)} = u_i = 0\hspace{0.05cm},\hspace{0.2cm}{x}_i^{(2)} = u_i + u_{i-1}= 0+1 = 1 
 +
\hspace{0.3cm}\Rightarrow \hspace{0.3cm}\underline{x}_i = (0\hspace{0.05cm},\hspace{0.05cm} 1\hspace{0.05cm})
 +
\hspace{0.05cm}. $$
 +
*The proposed solution 4 could have been ruled out from the beginning.&nbsp; The graph on the specification sheet clearly shows that the coder is systematic:&nbsp; $x_i^{(1)} = u_i$.&nbsp;
 +
 
 +
*The combination&nbsp; $u_i = 0$&nbsp; and&nbsp; $\underline{x}_i = (1, 0)$&nbsp; would contradict this.
 +
 
 +
 
 +
 
 +
[[File:P_ID2650__KC_A_3_6d.png|right|frame|State and trellis diagram for the encoder under consideration]]
 +
'''(4)'''&nbsp; Correct are the&nbsp; <u>solutions 2 and 4</u>:
 +
*Using a similar solution path as in subtask&nbsp; '''(3)''',&nbsp; one arrives at the result that the current information bit must be&nbsp; $u_i = 1$.
 +
 
 +
*The corresponding code sequence is&nbsp; $\underline{x}_i = (10)$.
 +
 +
*This results in the following state transition diagram&nbsp; $($left$)$&nbsp; and the trellis diagram that can be derived from it:
 +
 
 +
*Red arrows indicate the information bit&nbsp; $u_i = 0$,&nbsp; while blue arrows indicate&nbsp; $u_i = 1$.
 +
 
 +
 
 +
'''(5)'''&nbsp; <u>Both proposed solutions</u>&nbsp; are correct.&nbsp; There are no other constraints&nbsp; $($except binary$)$&nbsp; for the information sequences.
  
  
 +
'''(6)'''&nbsp; Correct is the&nbsp; <u>proposed solution 1</u>.&nbsp; Starting from the state&nbsp; $S_0$&nbsp; one comes
 +
* with&nbsp; $u_1 = 1$&nbsp; to the state&nbsp; $S_1$,&nbsp; output&nbsp; "$11$",
 +
* with&nbsp; $u_2 = 1$&nbsp; to the state&nbsp; $S_1$,&nbsp; output&nbsp; "$10$",
 +
* with&nbsp; $u_3 = 0$&nbsp; to state&nbsp; $S_0$,&nbsp; output&nbsp; "$01$",
 +
* with&nbsp; $u_4 = 0$&nbsp; to state&nbsp; $S_0$,&nbsp; output&nbsp; "$00$",
 +
* with&nbsp; $u_5 = 1$&nbsp; to state $S_1$,&nbsp; output&nbsp; "$11$",
 +
* with&nbsp; $u_6 = 1$&nbsp; to the state $S_1$,&nbsp; output&nbsp; "$10$".
  
[[Category:Aufgaben zu  Kanalcodierung|^3.3 Codebeschreibung mit Zustands– und Trellisdiagramm
 
  
 +
In contrast,&nbsp; the second code sequence is not possible:
 +
* The output&nbsp; "$11$"&nbsp; means that one started at&nbsp; $S_0$&nbsp; and comes with&nbsp; $u_1 = 1$&nbsp; to the state&nbsp; $S_1$.
  
 +
* But in the state&nbsp; $S_1$&nbsp; then only the outputs&nbsp; "$01$"&nbsp; and&nbsp; "$10$"&nbsp; are possible, but not&nbsp; "$00$".
 +
{{ML-Fuß}}
  
  
  
^]]
+
[[Category:Channel Coding: Exercises|^3.3 State and Trellis Diagram^]]

Latest revision as of 14:42, 12 November 2022

Simple realization of a rate $1/2$ convolutional encoder

A description possibility for convolutional encoders is provided by the so-called  "state transition diagram".

  • If the encoder contains  $m$  memory registers   ⇒   influence length  $\nu = m + 1$,  then there are different states  $S_{\mu}$  with  $0 ≤ \mu ≤ 2^m -1$,  where holds for the index:
$$\mu = \sum_{l = 1}^{m} \hspace{0.1cm}2^{l-1} \cdot u_{i-l} \hspace{0.05cm}.$$
  • This type of code description is to be applied to the convolutional coder of rate  $R = 1/2$  outlined above.



Hints:


Questions

1

How many states does this convolutional encoder have?

${\rm Number \ of \ states} \ = \ $

2

Do you get from any state to all other states?

Yes.
No.

3

What statements hold for the transition from  $s_i = S_1$  to  $s_{i+1} = S_0$?

The current information bit must be  $u_i = 0$ .
The current information bit must be  $u_i = 1$ .
The associated code sequence is  $\underline{x}_i = (01)$.
The associated code sequence is  $\underline{x}_i = (10)$.

4

What statements hold for the transition from  $s_i = S_1$  to  $s_{i+1} = S_1$?

The current information bit must be  $u_i = 0$ .
The current information bit must be  $u_i = 1$ .
The associated code sequence is  $\underline{x}_i = (01)$.
The associated code sequence is  $\underline{x}_i = (10)$.

5

Which information sequences are possible?

$\underline{u} = (1, \, 1, \, 0, \, 0, \, 1 \, 1, \, \text{...}\hspace{0.05cm})$,
$\underline{u} = (1, \, 0, \, 1, \, 0, \, 1, \, 0, \, \text{...}\hspace{0.05cm})$.

6

Which code sequences are possible?

$\underline{x} = (11, \, 10, \, 01, \, 00, \, 11, \, 10, \, \text{...}\hspace{0.05cm})$,
$\underline{x} = (11, \, 00, \, 10, \, 01, \, 11, \, 00, \, \text{...}\hspace{0.05cm})$.


Solution

Equivalent circuit diagram of the encoder under consideration

(1)  As can be seen from the accompanying equivalent circuit diagram,  the encoder contains only one memory element  
⇒   memory  $m = 1$.  Thus there are  $2^m \ \underline{= 2}$  states,  viz.

  • the state $S_0 \ \Rightarrow \ u_{i–1} = 0$,
  • the state $S_1 \ \Rightarrow \ u_{i–1} = 1$.


(2)  From each state go  $2^k = 2$  arrows to different states.

  • Since there are only two states,  the answer YES is correct.


(3)  Correct are the  solutions 1 and 3:

  • The information bit  $u_i$  present at time  $i$  is with respect to the following time $(j = i + 1)$  the previous bit  $(u_{j–1})$.
  • Thus  $s_{i+1} = u_i$  holds.  Only with  $u_i = 0$  does one get  from  $s_i = S_1$  to  $s_{i+1} = S_0$   ⇒   Proposed solution 1.
  • From  $s_i = S_1$   ⇒   $u_{i–1} = 1$  follows further   ⇒   Proposed solution 3:
$${x}_i^{(1)} = u_i = 0\hspace{0.05cm},\hspace{0.2cm}{x}_i^{(2)} = u_i + u_{i-1}= 0+1 = 1 \hspace{0.3cm}\Rightarrow \hspace{0.3cm}\underline{x}_i = (0\hspace{0.05cm},\hspace{0.05cm} 1\hspace{0.05cm}) \hspace{0.05cm}. $$
  • The proposed solution 4 could have been ruled out from the beginning.  The graph on the specification sheet clearly shows that the coder is systematic:  $x_i^{(1)} = u_i$. 
  • The combination  $u_i = 0$  and  $\underline{x}_i = (1, 0)$  would contradict this.


State and trellis diagram for the encoder under consideration

(4)  Correct are the  solutions 2 and 4:

  • Using a similar solution path as in subtask  (3),  one arrives at the result that the current information bit must be  $u_i = 1$.
  • The corresponding code sequence is  $\underline{x}_i = (10)$.
  • This results in the following state transition diagram  $($left$)$  and the trellis diagram that can be derived from it:
  • Red arrows indicate the information bit  $u_i = 0$,  while blue arrows indicate  $u_i = 1$.


(5)  Both proposed solutions  are correct.  There are no other constraints  $($except binary$)$  for the information sequences.


(6)  Correct is the  proposed solution 1.  Starting from the state  $S_0$  one comes

  • with  $u_1 = 1$  to the state  $S_1$,  output  "$11$",
  • with  $u_2 = 1$  to the state  $S_1$,  output  "$10$",
  • with  $u_3 = 0$  to state  $S_0$,  output  "$01$",
  • with  $u_4 = 0$  to state  $S_0$,  output  "$00$",
  • with  $u_5 = 1$  to state $S_1$,  output  "$11$",
  • with  $u_6 = 1$  to the state $S_1$,  output  "$10$".


In contrast,  the second code sequence is not possible:

  • The output  "$11$"  means that one started at  $S_0$  and comes with  $u_1 = 1$  to the state  $S_1$.
  • But in the state  $S_1$  then only the outputs  "$01$"  and  "$10$"  are possible, but not  "$00$".