Difference between revisions of "Aufgaben:Exercise 3.4: Systematic Convolution Codes"

From LNTwww
 
(21 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{quiz-Header|Buchseite=Kanalcodierung/Algebraische und polynomische Beschreibung}}
+
{{quiz-Header|Buchseite=Channel_Coding/Algebraic_and_Polynomial_Description}}
  
[[File:P_ID2629__KC_A_3_4.png|right|frame|Vorgegebene Filterstrukturen]]
+
[[File:EN_KC_A_3_4.png|right|frame|Predefined filter structures]]
Man spricht von einem systematischen Faltungscode der Rate $R = 1/2$  ⇒  $k = 1, \ n = 2$, wenn das Codebit $x_i^{(1)}$ gleich dem momentan anliegenden Informationsbit $u_i$ ist.  
+
One speaks of a  "systematic convolutional code"  of rate  $R = 1/2$   ⇒   $k = 1, \ n = 2$,  if the code bit  $x_i^{(1)}$  is equal to the currently applied information bit  $u_i$.  
  
Die Übertragungsfunktionsmatrix eines solchen Codes lautet:
+
*The transfer function matrix of such a code is:
 
:$${\boldsymbol{\rm G}}(D) = \big ( \hspace{0.05cm} 1\hspace{0.05cm} , \hspace{0.2cm} G^{(2)}(D) \hspace{0.05cm}\big )  
 
:$${\boldsymbol{\rm G}}(D) = \big ( \hspace{0.05cm} 1\hspace{0.05cm} , \hspace{0.2cm} G^{(2)}(D) \hspace{0.05cm}\big )  
 
  \hspace{0.05cm}.$$
 
  \hspace{0.05cm}.$$
  
Der in der oberen Grafik dargestellte <b>Coder A</b> ist sicher nicht systematisch, da für diesen $G^{(1)}(D) &ne; 1$ gilt. Zur Herleitung der Matrix $\mathbf{G}(D)$ verweisen wir auf ein [[Kanalcodierung/Algebraische_und_polynomische_Beschreibung#Anwendung_der_D.E2.80.93Transformation_auf_Rate.E2.80.931.2Fn.E2.80.93Faltungscoder| früheres Beispiel]], in dem für unseren Standard&ndash;Rate&ndash;1/2&ndash;Coder mit Gedächtnis $m = 2$ ermittelt wurde:
+
*The encoder &nbsp;$\rm A$&nbsp; shown in the upper graph is certainly not systematic,&nbsp; since for this&nbsp; $G^{(1)}(D) &ne; 1$&nbsp; holds.&nbsp; To derive the matrix&nbsp; $\mathbf{G}(D)$&nbsp; we refer to an&nbsp; [[Channel_Coding/Algebraic_and_Polynomial_Description#Application_of_the_D-transform_to_rate-1. 2Fn-convolution_encoders|$\text{earlier example}$]],&nbsp; where for our standard rate&ndash;1/2&nbsp; encoder with memory&nbsp; $m = 2$&nbsp; the transfer function matrix was determined:
:$${\boldsymbol{\rm G}}(D) \hspace{-0.15cm} & = & \hspace{-0.15cm} \big ( \hspace{0.05cm} G^{(1)}(D)\hspace{0.05cm} , \hspace{0.2cm} G^{(2)}(D) \hspace{0.05cm}\big ) =\\
+
:$${\boldsymbol{\rm G}}(D) \hspace{-0.15cm} \ = \ \hspace{-0.15cm} \big ( \hspace{0.05cm} G^{(1)}(D)\hspace{0.05cm} , \hspace{0.2cm} G^{(2)}(D) \hspace{0.05cm}\big ) = \big ( \hspace{0.05cm} 1 + D + D^2\hspace{0.05cm} , \hspace{0.2cm} 1 +  D^2 \hspace{0.05cm}\big )  
& = & \hspace{-0.15cm} \big ( \hspace{0.05cm} 1 + D + D^2\hspace{0.05cm} , \hspace{0.2cm} 1 +  D^2 \hspace{0.05cm}\big )  
 
 
  \hspace{0.05cm}.$$
 
  \hspace{0.05cm}.$$
  
Der <b>Coder A</b> unterscheidet sich gegenüber diesem Beispiel nur durch Vertauschen der beiden Ausgänge. Lautet die Übertragungsfunktionsmatrix eines Codes
+
:The encoder &nbsp;$\rm A$&nbsp; differs from this example only by swapping the two outputs.  
 +
*If the transfer function matrix of a code is
 
:$${\boldsymbol{\rm G}}(D) = \big ( \hspace{0.05cm} G^{(1)}(D)\hspace{0.05cm} , \hspace{0.2cm} G^{(2)}(D) \hspace{0.05cm}\big )  
 
:$${\boldsymbol{\rm G}}(D) = \big ( \hspace{0.05cm} G^{(1)}(D)\hspace{0.05cm} , \hspace{0.2cm} G^{(2)}(D) \hspace{0.05cm}\big )  
 
  \hspace{0.05cm},$$
 
  \hspace{0.05cm},$$
  
so gilt für die äquivalente systematische Repräsentation dieses Rate&ndash;1/2&ndash;Faltungscodes allgemein:
+
:then the equivalent systematic representation of this rate&ndash;1/2&nbsp; convolutional code holds in general:
 
:$${\boldsymbol{\rm G}}_{\rm sys}(D) = \big ( \hspace{0.05cm} 1\hspace{0.05cm} , \hspace{0.2cm} {G^{(2)}(D)}/{G^{(1)}(D)} \hspace{0.05cm}\big )  
 
:$${\boldsymbol{\rm G}}_{\rm sys}(D) = \big ( \hspace{0.05cm} 1\hspace{0.05cm} , \hspace{0.2cm} {G^{(2)}(D)}/{G^{(1)}(D)} \hspace{0.05cm}\big )  
 
  \hspace{0.05cm}.$$
 
  \hspace{0.05cm}.$$
  
In der Teilaufgabe (3) ist zu prüfen, welcher der systematischen Anordnungen (entweder <b>Code B</b> oder <b>Code C</b> oder auch beide) äquivalent zum Code A ist.
 
  
''Hinweis:''  
+
In subtask&nbsp; '''(3)''',&nbsp; check which of the systematic arrangements is equivalent to encoder &nbsp;$\rm A$?
* Die Aufgabe bezieht sich auf die Thematik von [[Kanalcodierung/Algebraische_und_polynomische_Beschreibung| Kapitel 3.2]].
+
*Either encoder &nbsp;$\rm B$,
  
 +
*or encoder &nbsp;$\rm C$&nbsp;
 +
 +
*or both.
  
  
===Fragebogen===
+
 
 +
 
 +
 
 +
 
 +
Hints:
 +
* This exercise belongs to the chapter&nbsp; [[Channel_Coding/Algebraic_and_Polynomial_Description| "Algebraic and Polynomial Description"]].
 +
 
 +
* Reference is made in particular to the sections&nbsp;
 +
:* [[Channel_Coding/Algebraic_and_Polynomial_Description#Transfer_Function_Matrix|"Transfer Function Matrix"]]&nbsp; and&nbsp;
 +
:* [[Channel_Coding/Algebraic_and_Polynomial_Description#Equivalent_systematic_convolutional_code|"Equivalent systematic convolutional code"]].
 +
 
 +
 
 +
 
 +
===Questions===
 
<quiz display=simple>
 
<quiz display=simple>
{Multiple-Choice
+
{What is the transfer function matrix of &nbsp;$\rm A$?
 +
|type="()"}
 +
+ $\mathbf{G}(D) = (1 + D^2, \ 1 + D + D^2)$,
 +
- $\mathbf{G}(D) = (1 + D + D^2, \ 1 + D^2)$,
 +
- $\mathbf{G}(D) = (1, \ 1 + D + D^2)$.
 +
 
 +
{What is the equivalent systematic transfer function matrix?
 +
|type="()"}
 +
- $\mathbf{G}_{\rm sys}(D) = (1 + D + D^2, \ 1 + D^2)$,
 +
- $\mathbf{G}_{\rm sys}(D) = (1, \ 1 + D + D^2)$,
 +
+ $\mathbf{G}_{\rm sys}(D) = (1, \ (1 + D + D^2)/(1 + D^2))$.
 +
 
 +
{Which encoder is equivalent to &nbsp;$\rm A$&nbsp; and systematic?
 
|type="[]"}
 
|type="[]"}
+ correct
+
- Encoder &nbsp;$\rm B$&nbsp;,
- false
+
+ encoder &nbsp;$\rm C$&nbsp;.
 
 
{Input-Box Frage
 
|type="{}"}
 
$xyz \ = \ ${ 5.4 3% } $ab$
 
 
</quiz>
 
</quiz>
  
===Musterlösung===
+
===Solution===
 
{{ML-Kopf}}
 
{{ML-Kopf}}
'''(1)'''&nbsp;  
+
'''(1)'''&nbsp; Correct is the&nbsp; <u>proposed solution 1</u>:
'''(2)'''&nbsp;  
+
*Proposition 2 would result if the two outputs were swapped,&nbsp; that is,&nbsp; for the [[Channel_Coding/Algebraic_and_Polynomial_Description#Application_of_the_D-transform_to_rate-1.2Fn-convolution_encoders|"rate&ndash;1/2 standard code"]] mostly considered in the theory section.
'''(3)'''&nbsp;  
+
 
'''(4)'''&nbsp;  
+
*Proposition 3 applies to a systematic code &nbsp; &#8658; &nbsp; $\underline{x}^{(1)} = \underline{u}$.&nbsp; However,&nbsp; the coder&nbsp;$\rm A$&nbsp; considered here  does not exhibit this property.
'''(5)'''&nbsp;  
+
 +
 
 +
 
 +
'''(2)'''&nbsp; To go from a nonsystematic&nbsp; $(n, \ k)$&nbsp; code with matrix&nbsp; $\mathbf{G}(D)$&nbsp; to the equivalent systematic code &nbsp; &#8658; &nbsp; matrix&nbsp; $\mathbf{G}_{\rm sys}(D)$,&nbsp; one must generally split&nbsp; $\mathbf{G}(D)$&nbsp; into a&nbsp; $k &times; k$&nbsp; matrix&nbsp; $\mathbf{T}(D)$&nbsp; and a remainder matrix&nbsp; $\mathbf{Q}(D)$.
 +
 
 +
*The desired result is then with the&nbsp; $k &times; k$&nbsp; identity matrix&nbsp; $\mathbf{I}_k$:
 +
:$${\boldsymbol{\rm G}}_{\rm sys}(D) = \big ( \hspace{0.05cm} {\boldsymbol{\rm I}}_k\hspace{0.05cm} ; \hspace{0.1cm} {\boldsymbol{\rm T}}^{-1}(D) \cdot  {\boldsymbol{\rm Q}}(D)\hspace{0.05cm}\big )
 +
\hspace{0.05cm}.$$
 +
 
 +
*We assume here the&nbsp; $\mathbf{G}(D)$&nbsp; matrix for the coder &nbsp;$\rm A$.&nbsp; Because of&nbsp; $k = 1$&nbsp; here both&nbsp; $\mathbf{T}(D)$&nbsp; and $\mathbf{Q}(D)$&nbsp; have dimension&nbsp; $1 &times; 1$,&nbsp; so strictly speaking they are not matrices at all:
 +
:$${\boldsymbol{\rm G}}(D) = \big ( \hspace{0.05cm} {\boldsymbol{\rm T}}(D)\hspace{0.05cm} ; \hspace{0.2cm}  {\boldsymbol{\rm Q}}(D)\hspace{0.05cm}\big )
 +
\hspace{0.3cm} \Rightarrow \hspace{0.3cm}{\boldsymbol{\rm T}}(D) = \big ( 1+D^2\big )\hspace{0.05cm} , \hspace{0.2cm}
 +
{\boldsymbol{\rm Q}}(D) = \big ( 1+D+D^2\big )\hspace{0.05cm} .$$
 +
 
 +
*For the two elements of the systematic transfer function matrix,&nbsp; we obtain:
 +
:$$G^{(1)}(D) \hspace{-0.15cm} \ = \ \hspace{-0.15cm} {\boldsymbol{\rm T}}(D) \cdot {\boldsymbol{\rm T}}^{-1}(D) = 1 C,\hspace{0.8cm}
 +
G^{(2)}(D) \hspace{-0.15cm} \ = \ \hspace{-0.15cm} {\boldsymbol{\rm Q}}(D) \cdot {\boldsymbol{\rm T}}^{-1}(D) = \frac{1+D+D^2}{1+D^2}$$
 +
:$$\Rightarrow \hspace{0.3cm}{\boldsymbol{\rm G}}_{\rm sys}(D) = \big ( \hspace{0.05cm} 1\hspace{0.05cm} , \hspace{0.1cm} \frac{1+D+D^2}{1+D^2} \hspace{0.05cm}\big )
 +
\hspace{0.05cm}.$$
 +
 
 +
So the&nbsp; <u>last proposed solution</u>&nbsp; is correct:
 +
*Proposed solution 1 does not describe a systematic code.
 +
 +
*A code according to solution suggestion 2 is systematic,&nbsp; but not equivalent to the coder &nbsp;$\rm A$&nbsp; according to the given circuit and transfer function matrix&nbsp; $\mathbf{G}(D)$.
 +
 
 +
 
 +
'''(3)'''&nbsp; The generator function matrix of encoder &nbsp;$\rm B$&nbsp; is:
 +
:$${\boldsymbol{\rm G}}_{\rm B}(D) = \big ( \hspace{0.05cm} 1\hspace{0.05cm} , \hspace{0.2cm} {1+D+D^2} \hspace{0.05cm}\big )  
 +
\hspace{0.05cm}.$$
 +
 
 +
*So this encoder is not equivalent to encoder &nbsp;$\rm A$.
 +
 
 +
*Let us now consider the encoder &nbsp;$\rm C$.&nbsp; Here the second matrix element of&nbsp; $\mathbf{G}(D)$:
 +
:$$w_i \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u_i + w_{i-2} \hspace{0.25cm} \circ\!\!-\!\!\!-^{\hspace{-0.25cm}D}\!\!\!-\!\!\bullet\hspace{0.25cm}
 +
{U}(D) =  W(D) \cdot (1 + D^2 ) \hspace{0.05cm},\hspace{0.8cm}
 +
x_i^{(2)} \hspace{-0.15cm} \ = \ \hspace{-0.15cm} w_i + w_{i-1} + w_{i-2} \hspace{0.25cm} \circ\!\!-\!\!\!-^{\hspace{-0.25cm}D}\!\!\!-\!\!\bullet\hspace{0.25cm}
 +
{X}^{(2)}(D) =  W(D) \cdot (1 +D + D^2 )$$
 +
:$$\Rightarrow \hspace{0.3cm} G^{(2)}(D) = \frac{{X}^{(2)}(D)}{{U}(D)} = \frac{1+D+D^2}{1+D^2}\hspace{0.05cm}.$$
 +
 
 +
*This corresponds exactly to the result of subtask&nbsp; '''(2)''' &nbsp; &#8658; &nbsp; <u>Proposed solution 2</u>.
 
{{ML-Fuß}}
 
{{ML-Fuß}}
  
  
  
[[Category:Aufgaben zu  Kanalcodierung|^3.2 Algebraische und polynomische Beschreibung^]]
+
[[Category:Channel Coding: Exercises|^3.2 Polynomial Description^]]

Latest revision as of 19:34, 10 November 2022

Predefined filter structures

One speaks of a  "systematic convolutional code"  of rate  $R = 1/2$   ⇒   $k = 1, \ n = 2$,  if the code bit  $x_i^{(1)}$  is equal to the currently applied information bit  $u_i$.

  • The transfer function matrix of such a code is:
$${\boldsymbol{\rm G}}(D) = \big ( \hspace{0.05cm} 1\hspace{0.05cm} , \hspace{0.2cm} G^{(2)}(D) \hspace{0.05cm}\big ) \hspace{0.05cm}.$$
  • The encoder  $\rm A$  shown in the upper graph is certainly not systematic,  since for this  $G^{(1)}(D) ≠ 1$  holds.  To derive the matrix  $\mathbf{G}(D)$  we refer to an  $\text{earlier example}$,  where for our standard rate–1/2  encoder with memory  $m = 2$  the transfer function matrix was determined:
$${\boldsymbol{\rm G}}(D) \hspace{-0.15cm} \ = \ \hspace{-0.15cm} \big ( \hspace{0.05cm} G^{(1)}(D)\hspace{0.05cm} , \hspace{0.2cm} G^{(2)}(D) \hspace{0.05cm}\big ) = \big ( \hspace{0.05cm} 1 + D + D^2\hspace{0.05cm} , \hspace{0.2cm} 1 + D^2 \hspace{0.05cm}\big ) \hspace{0.05cm}.$$
The encoder  $\rm A$  differs from this example only by swapping the two outputs.
  • If the transfer function matrix of a code is
$${\boldsymbol{\rm G}}(D) = \big ( \hspace{0.05cm} G^{(1)}(D)\hspace{0.05cm} , \hspace{0.2cm} G^{(2)}(D) \hspace{0.05cm}\big ) \hspace{0.05cm},$$
then the equivalent systematic representation of this rate–1/2  convolutional code holds in general:
$${\boldsymbol{\rm G}}_{\rm sys}(D) = \big ( \hspace{0.05cm} 1\hspace{0.05cm} , \hspace{0.2cm} {G^{(2)}(D)}/{G^{(1)}(D)} \hspace{0.05cm}\big ) \hspace{0.05cm}.$$


In subtask  (3),  check which of the systematic arrangements is equivalent to encoder  $\rm A$?

  • Either encoder  $\rm B$,
  • or encoder  $\rm C$ 
  • or both.




Hints:

  • Reference is made in particular to the sections 


Questions

1

What is the transfer function matrix of  $\rm A$?

$\mathbf{G}(D) = (1 + D^2, \ 1 + D + D^2)$,
$\mathbf{G}(D) = (1 + D + D^2, \ 1 + D^2)$,
$\mathbf{G}(D) = (1, \ 1 + D + D^2)$.

2

What is the equivalent systematic transfer function matrix?

$\mathbf{G}_{\rm sys}(D) = (1 + D + D^2, \ 1 + D^2)$,
$\mathbf{G}_{\rm sys}(D) = (1, \ 1 + D + D^2)$,
$\mathbf{G}_{\rm sys}(D) = (1, \ (1 + D + D^2)/(1 + D^2))$.

3

Which encoder is equivalent to  $\rm A$  and systematic?

Encoder  $\rm B$ ,
encoder  $\rm C$ .


Solution

(1)  Correct is the  proposed solution 1:

  • Proposition 2 would result if the two outputs were swapped,  that is,  for the "rate–1/2 standard code" mostly considered in the theory section.
  • Proposition 3 applies to a systematic code   ⇒   $\underline{x}^{(1)} = \underline{u}$.  However,  the coder $\rm A$  considered here does not exhibit this property.


(2)  To go from a nonsystematic  $(n, \ k)$  code with matrix  $\mathbf{G}(D)$  to the equivalent systematic code   ⇒   matrix  $\mathbf{G}_{\rm sys}(D)$,  one must generally split  $\mathbf{G}(D)$  into a  $k × k$  matrix  $\mathbf{T}(D)$  and a remainder matrix  $\mathbf{Q}(D)$.

  • The desired result is then with the  $k × k$  identity matrix  $\mathbf{I}_k$:
$${\boldsymbol{\rm G}}_{\rm sys}(D) = \big ( \hspace{0.05cm} {\boldsymbol{\rm I}}_k\hspace{0.05cm} ; \hspace{0.1cm} {\boldsymbol{\rm T}}^{-1}(D) \cdot {\boldsymbol{\rm Q}}(D)\hspace{0.05cm}\big ) \hspace{0.05cm}.$$
  • We assume here the  $\mathbf{G}(D)$  matrix for the coder  $\rm A$.  Because of  $k = 1$  here both  $\mathbf{T}(D)$  and $\mathbf{Q}(D)$  have dimension  $1 × 1$,  so strictly speaking they are not matrices at all:
$${\boldsymbol{\rm G}}(D) = \big ( \hspace{0.05cm} {\boldsymbol{\rm T}}(D)\hspace{0.05cm} ; \hspace{0.2cm} {\boldsymbol{\rm Q}}(D)\hspace{0.05cm}\big ) \hspace{0.3cm} \Rightarrow \hspace{0.3cm}{\boldsymbol{\rm T}}(D) = \big ( 1+D^2\big )\hspace{0.05cm} , \hspace{0.2cm} {\boldsymbol{\rm Q}}(D) = \big ( 1+D+D^2\big )\hspace{0.05cm} .$$
  • For the two elements of the systematic transfer function matrix,  we obtain:
$$G^{(1)}(D) \hspace{-0.15cm} \ = \ \hspace{-0.15cm} {\boldsymbol{\rm T}}(D) \cdot {\boldsymbol{\rm T}}^{-1}(D) = 1 C,\hspace{0.8cm} G^{(2)}(D) \hspace{-0.15cm} \ = \ \hspace{-0.15cm} {\boldsymbol{\rm Q}}(D) \cdot {\boldsymbol{\rm T}}^{-1}(D) = \frac{1+D+D^2}{1+D^2}$$
$$\Rightarrow \hspace{0.3cm}{\boldsymbol{\rm G}}_{\rm sys}(D) = \big ( \hspace{0.05cm} 1\hspace{0.05cm} , \hspace{0.1cm} \frac{1+D+D^2}{1+D^2} \hspace{0.05cm}\big ) \hspace{0.05cm}.$$

So the  last proposed solution  is correct:

  • Proposed solution 1 does not describe a systematic code.
  • A code according to solution suggestion 2 is systematic,  but not equivalent to the coder  $\rm A$  according to the given circuit and transfer function matrix  $\mathbf{G}(D)$.


(3)  The generator function matrix of encoder  $\rm B$  is:

$${\boldsymbol{\rm G}}_{\rm B}(D) = \big ( \hspace{0.05cm} 1\hspace{0.05cm} , \hspace{0.2cm} {1+D+D^2} \hspace{0.05cm}\big ) \hspace{0.05cm}.$$
  • So this encoder is not equivalent to encoder  $\rm A$.
  • Let us now consider the encoder  $\rm C$.  Here the second matrix element of  $\mathbf{G}(D)$:
$$w_i \hspace{-0.15cm} \ = \ \hspace{-0.15cm} u_i + w_{i-2} \hspace{0.25cm} \circ\!\!-\!\!\!-^{\hspace{-0.25cm}D}\!\!\!-\!\!\bullet\hspace{0.25cm} {U}(D) = W(D) \cdot (1 + D^2 ) \hspace{0.05cm},\hspace{0.8cm} x_i^{(2)} \hspace{-0.15cm} \ = \ \hspace{-0.15cm} w_i + w_{i-1} + w_{i-2} \hspace{0.25cm} \circ\!\!-\!\!\!-^{\hspace{-0.25cm}D}\!\!\!-\!\!\bullet\hspace{0.25cm} {X}^{(2)}(D) = W(D) \cdot (1 +D + D^2 )$$
$$\Rightarrow \hspace{0.3cm} G^{(2)}(D) = \frac{{X}^{(2)}(D)}{{U}(D)} = \frac{1+D+D^2}{1+D^2}\hspace{0.05cm}.$$
  • This corresponds exactly to the result of subtask  (2)   ⇒   Proposed solution 2.