481 lines
19 KiB
TeX
481 lines
19 KiB
TeX
|
|
||
|
\chapter{Einschrittiger Code}
|
||
|
|
||
|
\begin{description}
|
||
|
\item[Einschrittiger Code] Zahlencode, bei dem sich zwischen zwei jeweils aufeinander folgenden Werten nur genau eine Stelle ändert! Beispiel: Gray-Code\index{Einschrittiger Code}
|
||
|
\end{description}
|
||
|
|
||
|
\section{Gray-Code}\index{Gray-Code}
|
||
|
|
||
|
Der Gray-Code gehört weder zu den Stellenwertsystemen noch zu den Abzählsystemen!
|
||
|
|
||
|
\begin{table}[h]
|
||
|
\centering
|
||
|
\begin{tabular}{c|c}
|
||
|
Gray-Code & Dezimalsystem \\
|
||
|
\midrule
|
||
|
0\textcolor{blue}{000} & 0 \\
|
||
|
0001 & 1 \\
|
||
|
0011 & 2 \\
|
||
|
0010 & 3 \\
|
||
|
0\textcolor{green}{110} & 4 \\
|
||
|
0111 & 5 \\
|
||
|
0101 & 6 \\
|
||
|
0\textcolor{red}{100} & 7 \\
|
||
|
\end{tabular}
|
||
|
\begin{tabular}{c|c}
|
||
|
Gray-Code & Dezimalsystem \\
|
||
|
\midrule
|
||
|
1\textcolor{red}{100} & 8 \\
|
||
|
1101 & 9 \\
|
||
|
1111 & 10 \\
|
||
|
1\textcolor{green}{110} & 11 \\
|
||
|
1010 & 12 \\
|
||
|
1011 & 13 \\
|
||
|
1001 & 14 \\
|
||
|
1\textcolor{blue}{000} & 15 \\
|
||
|
\end{tabular}
|
||
|
\caption{4-stelliger Gray-Code}
|
||
|
\label{tbl:gray_code}
|
||
|
\end{table}
|
||
|
|
||
|
Es gibt zwei Varianten zur Bildung:
|
||
|
|
||
|
\begin{enumerate}[noitemsep]
|
||
|
\item Die Position \enquote{0} wird durch eine Folge von \enquote{0}-Symbolen repräsentiert und die jeweils nächste Position ergibt sich, indem wir die nächste (\enquote{rechteste}) Stelle ändern, bei welcher sich kein bislang verwendetes Bitmuster ergibt.
|
||
|
\item Erweiterung eines n-stelligen Gray-Code auf $n+1$ Stellen, indem bei den ersten $2^n$ Positionen eine \enquote{0} vorangestellt wird und bei den neuen $2^n$ Positionen die bisherigen Bitmuster in umgekehrter Reihenfolge mit vorangestellter \enquote{1} verwendet werden (siehe \autoref{tbl:gray_code}).
|
||
|
\end{enumerate}
|
||
|
|
||
|
\textbf{Anwendung einschrittiger Codes (Gray-Code):} \newline
|
||
|
Immer dann, wenn bei fortlaufenden Zahlenwerten (und deren paralleler Übertragung) falsche Zwischenwerte aufgrund unterschiedlicher Verzögerung der einzelnen Stellen verhindert werden soll, wird Gray-Code verwendet.
|
||
|
|
||
|
\textbf{Nachteil von Gray-Code}:\newline
|
||
|
Die Wertebestimmung ist kompliziert und es gibt keine praktisch sinnvoll anwendbare Rechenregeln.
|
||
|
|
||
|
|
||
|
\chapter{Signalcodierung}
|
||
|
|
||
|
Bei Signalcodierung geht es \textit{nicht} darum, \textit{was} codiert wird, sondern darum, \textit{wie} codiert wird! Und zwar als Signal, \dash als eine physisch messbare Größe.
|
||
|
|
||
|
Mögliche Signale:
|
||
|
\begin{itemize}[noitemsep]
|
||
|
\item Spannung ($V$)
|
||
|
\item Stromstärke ($A$)
|
||
|
\item Licht
|
||
|
\item Schall
|
||
|
\item elektromagnetische Wellen
|
||
|
\item Druck (Pneumatik, Hydraulik)
|
||
|
\item \ldots
|
||
|
\end{itemize}
|
||
|
|
||
|
Insbesondere elektrische Signale, also Spannung und Stromstärke sind für uns interessant.
|
||
|
|
||
|
\section{Elektrische Signale}
|
||
|
\subsection{Spannung}
|
||
|
|
||
|
\begin{figure}[h]
|
||
|
\centering
|
||
|
\begin{tikzpicture}[scale=0.9]
|
||
|
\draw[ultra thick]
|
||
|
(0,1.5) -- (0,2.5) -- (5,2.5) -- (5,1.5) node[below]{Empfänger};
|
||
|
\draw[ultra thick]
|
||
|
(0,1) -- (0,0) -- (5,0) -- (5,1);
|
||
|
\draw
|
||
|
(0,1.5) node[below]{Sender};
|
||
|
\path[thick, ->]
|
||
|
(1,0) edge (1,2.5);
|
||
|
\draw (1,1.25) node[right]{5V};
|
||
|
\end{tikzpicture}
|
||
|
\caption{Elektrische Signale zwischen Sender und Empfänger}
|
||
|
\label{fig:strom_spannung}
|
||
|
\end{figure}
|
||
|
|
||
|
\begin{figure}[h]
|
||
|
\begin{align}
|
||
|
U&=R\cdot I \\
|
||
|
\label{eq:URI}
|
||
|
P&=U\cdot I \\
|
||
|
Q&=C\cdot U
|
||
|
\end{align}\vspace{-7mm}
|
||
|
\caption{Wichtige Formeln für elektrische Signale}
|
||
|
\end{figure}
|
||
|
|
||
|
In \autoref{fig:strom_spannung} beträgt die Spannung zwischen Sender und Empfänger $5V$. Tatsächlich liegt sie aber unter $5V$, da die Leitung selbst ein Widerstand $R$ ist und aus \autoref{eq:URI} hervorgeht, dass diese für die Berechnung der Spannung ausschlaggebend ist, genauso wie der Strom $I$.
|
||
|
|
||
|
Außerdem kann es zu Spannungsänderungen durch elektromagnetische Störstrahlung kommen!
|
||
|
|
||
|
\textit{Doch welche Spannung wird genutzt und welche Werte bedeuten was?}\newline
|
||
|
Hierfür wird \zB der \acs{TTL} Pegel genutzt\footnote{siehe \url{https://de.wikipedia.org/wiki/Transistor-Transistor-Logik}} (eingeführt Anfang der 1960er Jahre von Texas Instruments, um standardisierte Pegelwerte und interoperable Bausteine zu ermöglichen).\newline
|
||
|
\hspace*{5mm}$0 \hat{=} 0V$ \quad und \quad $1 \hat{=} 5V$
|
||
|
|
||
|
Innerhalb des Rechners sind heute eher niedrigere Spannungshübe üblich (\zB $3,3V$, $1,6V$), jedoch sind diese störanfälliger gegen Störeinstrahlung! Der Vorteil ist ein schnelleres Erreichen einer Spannung nahe der Nennspannung (kapazitive Wirkung).\newline
|
||
|
Nachteil größerer Spannungen ist zudem ein höherer Energieverbrauch und damit auch eine höhere Wärmeentwicklung und eine niedrigere Lebenserwartung der Bauteile.
|
||
|
|
||
|
\subsection{Strom}
|
||
|
|
||
|
Dem gegenüber steht der Strom: Es gibt keine Anfälligkeit für Störungen oder Spannungsabfälle durch hohe Leitungswiderstände $\Rightarrow$ beim Empfänger fließt immer der gleiche Strom wie beim Sender (denn in einem geschlossenen Stromkreis ist der Strom $I$ immer gleich).
|
||
|
|
||
|
Nachteil: Es gibt einen viel höheren Energieverbrauch (um den Strom fließen lassen zu können, auch bei hohem Leitungswiderstand ist eine sehr hohe Spannung notwendig, \ldots).
|
||
|
|
||
|
$\Rightarrow$ In Rechnern sind deshalb Spannungen die üblichen Signale (heutzutage kleine Spannungen).
|
||
|
|
||
|
|
||
|
|
||
|
\section{Übertragung von mehr als 1~Bit}
|
||
|
|
||
|
\begin{itemize}[noitemsep]
|
||
|
\item gleichzeitig/parallel: \zB mehrere Leitungen (Raum-Multiplex)
|
||
|
\item sequenziell/nacheinander: \zB getaktete Übertragung. Es kann eine Taktleitung geben, die die Dauer/den Takt für die Übertragung vorgibt (siehe \autoref{fig:takt})
|
||
|
\end{itemize}
|
||
|
|
||
|
\begin{figure}[h]
|
||
|
\centering
|
||
|
\begin{tikzpicture}[scale=0.9]
|
||
|
\draw[ultra thick]
|
||
|
node[left]{Takt} (0,0)--(1,0)--(1,1)--(2,1)--(2,0)--(3,0)
|
||
|
--(3,1)--(4,1)--(4,0)--(5,0)--(5,1)--(6,1)
|
||
|
--(6,0)--(7,0)--(7,1)--(8,1)--(8,0)--(9,0);
|
||
|
\end{tikzpicture}
|
||
|
|
||
|
\begin{tikzpicture}[scale=0.9]
|
||
|
\draw[ultra thick]
|
||
|
node[left]{Daten} (0,0)--(1,0)--(1,1)--(2,1)
|
||
|
--(3,1)--(4,1)--(4,0)--(5,0)--(5,1)--(6,1)
|
||
|
--(6,0)--(7,0)--(8,0)--(9,0);
|
||
|
\draw
|
||
|
(1.25,0.5) node[right]{1}
|
||
|
(2.25,0.5) node[right]{1}
|
||
|
(3.25,0.5) node[right]{1}
|
||
|
(4.25,0.5) node[right]{0}
|
||
|
(5.25,0.5) node[right]{1}
|
||
|
(6.25,0.5) node[right]{0}
|
||
|
(7.25,0.5) node[right]{0}
|
||
|
(8.25,0.5) node[right]{0};
|
||
|
\end{tikzpicture}
|
||
|
\caption{Getaktete Signale}
|
||
|
\label{fig:takt}
|
||
|
\end{figure}
|
||
|
|
||
|
\section{Getaktete Übertragung}
|
||
|
|
||
|
Es werden vier Verfahren zur getakteten Übertragung aufgezeigt. Für jedes Verfahren werden folgende vier Eigenschaften beschrieben:
|
||
|
|
||
|
\begin{description}
|
||
|
\item[a) \acf{TRG}]\footnote{siehe auch \url{https://de.wikipedia.org/wiki/Taktr\%C3\%BCckgewinnung}}\index{Taktrückgewinnung}\hfill\newline
|
||
|
Möglichkeit, beim Empfänger den Takt des Senders nur aus den empfangenen Daten zu resynchronisieren. Grundsätzlich ist dies immer dann möglich, wenn ein Pegelwechsel zu einem vorgegebenen Zeitpunkt stattfindet.
|
||
|
|
||
|
|
||
|
\item[b) \acf{BBB}]\index{Bandbreitenbedarf} \hfill\newline
|
||
|
\textit{Aussage: Jeder Übertragungskanal ist bandbreitenbeschränkt.}
|
||
|
|
||
|
\textbf{Shannon/Nyquist-Theorem}\index{Shannon-Theorem}\newline
|
||
|
Schrittrate $=$ doppelte Bandbreite (bei Datenübertragung/bei Frequenzabtastung).
|
||
|
|
||
|
Der \acf{BBB} gibt an, welche Bandbreite\footnote{siehe auch \url{https://de.wikipedia.org/wiki/Bandbreite}} bei einer bestimmten Schrittrate und Signalcodierungsverfahren auf dem Übertragungskanal benötigt wird (zu ersehen aus der höchsten Frequenz auf der Leitung bei einem beliebigen Bitmuster).
|
||
|
|
||
|
|
||
|
\item[c) \acf{GSF}]\index{Gleichstromfreiheit} \hfill\newline
|
||
|
Im Mittel sollen \enquote{0V} auf der Leitung liegen, um eine Potentialverschiebung beim Empfänger zu verhindern (Pseudoargument für \acs{GSF}: keine Energieübertragung vom Sender zum Empfänger).
|
||
|
|
||
|
Grundvoraussetzung für \acs{GSF} sind (bei fast jedem Verfahren) symmetrische Pegel, \zB $5V\hat{=}1$ und $-5V\hat{=}0$.
|
||
|
|
||
|
|
||
|
\item[d) \acf{SSH}]\index{Störsicherheit} \hfill\newline
|
||
|
Unanfälligkeit des Verfahrens gegenüber Spannungsänderungen auf der Leitung, welche von außen induziert werden $\Rightarrow$ direkt abhängig von der Anzahl zu unterscheidender Spannungspegel.
|
||
|
\end{description}
|
||
|
|
||
|
|
||
|
\subsection{1. \acf{NRZ}}\index{NRZ}
|
||
|
|
||
|
Während der gesamten Takt-/Schritt-/Bitzeit wird der Pegel angelegt, welcher dem zu übertragenden Bit (\enquote{0} oder \enquote{1}) entspricht.
|
||
|
|
||
|
\subsubsection{a) \acl{TRG} bei \acs{NRZ}}
|
||
|
|
||
|
Immer bei \enquote{10}- oder \enquote{01}-Folgen im Datenstrom \newline
|
||
|
Keine \acs{TRG} bei \acs{NRZ}, falls über längere Zeit nur \enquote{0} oder nur \enquote{1} übertragen werden.
|
||
|
|
||
|
Abhilfe, um TRG bei NRZ immer vor einer gewissen Anzahl von Bits zu ermöglichen:
|
||
|
|
||
|
\textit{\uline{1. Startbitsequenz}} \zB \enquote{01} vor jedem Byte/ jeder 8-Bit-Folge
|
||
|
|
||
|
Frage: \textit{Wie genau müssen dann die Uhren laufen?}\newline
|
||
|
Die Uhren dürfen während der gesamten Sequenz (Startbitsequenz + Daten) um maximal $\frac{1}{2}$ Schrittzeit voneinander abweichen.
|
||
|
|
||
|
Jeder der beiden (Sender \& Empfänger) darf jeweils nur um $\frac{1}{4}$ Schrittzeit vom Normaltakt abweichen!
|
||
|
|
||
|
$Abweichung_{erlaubt_{max}} = \frac{\frac{1}{4} Schrittzeit}{(2+8) Schrittzeit} = \frac{\frac{1}{4}}{10} = 2,5\%$
|
||
|
|
||
|
Falls die Uhren ungenauer sind $\Rightarrow$ häufigeres Senden der Startbitsequenz.
|
||
|
|
||
|
Nachteil: kleinere Nettodatenrate (= Verhältnis Nutzdaten zu Schritten).
|
||
|
|
||
|
Schrittrate = Baudrate\footnote{siehe \url{https://de.wikipedia.org/wiki/Baud}} \index{Baudrate} \newline
|
||
|
Nutzrate = Bitrate\index{Nutzrate}
|
||
|
|
||
|
$\text{Bitrate} = \frac{\text{Anzahl Nutzdatenbit}}{\text{Anzahl Schritte}} \cdot \text{Baudrate} = \frac{8}{2+8} = 80\% \cdot \text{Baudrate}$\index{Bitrate}
|
||
|
|
||
|
|
||
|
\textit{\uline{2. Bitstuffing}} (\enquote{Bitstopfen})\footnote{siehe \url{https://de.wikipedia.org/wiki/Bitstopfen}}]\index{Bitstuffing}\hfill\newline
|
||
|
Nach jeweils $n$ ($n$ ist eine feste, vorgegebene Zahl, \zB $n=4$) gleichen Nutzdatenbits wird ein Bit mit dem entgegengesetzten Wert eingefügt (\enquote{eingestopft}).
|
||
|
|
||
|
0010000\uline{1}0011101111\uline{0}1111\uline{0}0000\uline{1}11 \quad $\Rightarrow$ \quad Die unterstrichenen Zahlen werden \enquote{eingestopft}.
|
||
|
|
||
|
Beim Empfänger wird nach $n$ gleichen Bits das nächste empfangene Bit als Stopfbit aus dem Nutzdatenstrom entfernt, sofern es den entgegengesetzten Wert hat.\newline
|
||
|
Bei gleichem Wert $\Rightarrow$ Fehlermeldung!
|
||
|
|
||
|
Vorteil: In jedem Fall bessere Nettodatenrate als bei Startbitsequenz: Im Besten Fall Nettodatenrate = Schrittrate. Im schlechtesten Fall Nettodatenrate = $\frac{n}{n+1}\cdot Schrittrate$
|
||
|
|
||
|
Nachteile:
|
||
|
\begin{itemize}[noitemsep]
|
||
|
\item komplexes Verfahren und damit fehleranfällig
|
||
|
\item keine konstante Nutzdatenrate
|
||
|
\end{itemize}
|
||
|
|
||
|
Bitstuffing wird nicht nur verwendet, um TRG zu ermöglichen, sondern auch, um bestimmte Bitmuster in den Nutzdaten auszuschließen $\Rightarrow$ \enquote{Frame Delimiter} bei Ethernet.
|
||
|
|
||
|
|
||
|
\subsubsection{b) \acl{BBB} bei \acs{NRZ}}
|
||
|
|
||
|
Halbe Schrittrate, also minimal (H. Shannan/Nyquist) -- entspricht der Frequenz beim Bitmuster \enquote{1010101010\ldots}.
|
||
|
|
||
|
|
||
|
\subsubsection{c) \acl{GSF} bei \acs{NRZ}}
|
||
|
|
||
|
Die \acl{GSF} ist bei \acs{NRZ} erfüllt, falls \#\enquote{1} $=$ \#\enquote{0} ist, bzw. falls \enquote{1} und \enquote{0} im Datenstrom gleichverteilt sind und es symmetrische Pegel sind! $\Rightarrow$ Davon können wir oft nicht ausgehen!
|
||
|
|
||
|
\begin{Hinweis}
|
||
|
Bei Verschlüsselung kann davon ausgegangen werden, dass Nullen und Einsen gleich verteilt sind, da dadurch keine Häufigkeitsanalyse möglich ist! Hier wäre eine \acl{GSF} möglich.
|
||
|
\end{Hinweis}
|
||
|
|
||
|
|
||
|
\subsubsection{d) \acl{SSH} bei \acs{NRZ}}
|
||
|
|
||
|
Die \acl{SSH} ist bei \acs{NRZ} optimal, da nur zwei Spannungen unterschieden können werden müssen.
|
||
|
|
||
|
|
||
|
\subsection{2. \acf{RZ}}
|
||
|
|
||
|
\begin{figure}[h]
|
||
|
\centering
|
||
|
\begin{tikzpicture}[scale=0.9]
|
||
|
\draw
|
||
|
(0.25,2) node[right]{1}
|
||
|
(1.25,2) node[right]{0}
|
||
|
(2.25,2) node[right]{1}
|
||
|
(3.25,2) node[right]{0}
|
||
|
(4.25,2) node[right]{1}
|
||
|
(5.25,2) node[right]{1}
|
||
|
(6.25,2) node[right]{1}
|
||
|
(7.25,2) node[right]{0}
|
||
|
(8.25,2) node[right]{0}
|
||
|
(9.25,2) node[right]{0}
|
||
|
(10.25,2) node[right]{0}
|
||
|
(11.25,2) node[right]{1}
|
||
|
(12.25,2) node[right]{1};
|
||
|
|
||
|
\draw[ultra thick]
|
||
|
(0,0.5) node[left]{NRZ} (0,1)--(1,1)--(1,0)--(2,0)--(2,1)--(3,1)--(3,0)--
|
||
|
(4,0)--(4,1)--(5,1)--(7,1)--(7,0)--(11,0)--(11,1)--(13,1)--(13,0);
|
||
|
|
||
|
\draw[ultra thick]
|
||
|
(0,-1.5) node[left]{RZ} (0,-1)--(0.5,-1)--(0.5,-2)--(2,-2)--(2,-1)--
|
||
|
(2.5,-1)--(2.5,-2)--(4,-2)--(4,-1)--(4.5,-1)--(4.5,-2)--(5,-2)--(5,-1)--
|
||
|
(5.5,-1)--(5.5,-2)--(6,-2)--(6,-1)--(6.5,-1)--(6.5,-2)--(11,-2)--(11,-1)--
|
||
|
(11.5,-1)--(11.5,-2)--(12,-2)--(12,-1)--(12.5,-1)--(12.5,-2)--(13,-2);
|
||
|
|
||
|
\path[thick,red!80!black,<->]
|
||
|
(2,0.7) edge (3,0.7)
|
||
|
(1,0.3) edge (3,0.3);
|
||
|
|
||
|
\draw[red!80!black] (2.5,1.1) node[above] {Schrittzeit}
|
||
|
(2,-0.6) node[above] {Periodendauer};
|
||
|
|
||
|
\path[thick,red!80!black,<->]
|
||
|
(4,-1.3) edge (5,-1.3)
|
||
|
(4,-1.7) edge (5,-1.7);
|
||
|
|
||
|
\draw[red!80!black] (4.5,-1) node[above] {Schrittzeit}
|
||
|
(4.5,-2.6) node[above] {Periodendauer};
|
||
|
\end{tikzpicture}
|
||
|
\caption{NRZ und RZ im Vergleich}
|
||
|
\label{fig:nrz_rz_vergleich}
|
||
|
\end{figure}
|
||
|
|
||
|
Im Unterschied zu \acs{NRZ} wird bei \acs{RZ} jede Schrittzeit in zwei Hälften eingeteilt. Während der ersten Hälfte wird derselbe Pegel wie bei \acs{NRZ} übertragen, während der zweiten Hälfte wird jedoch immer der \enquote{0}-Pegel übertragen! Dies wird in \autoref{fig:nrz_rz_vergleich} dargestellt.
|
||
|
|
||
|
|
||
|
\subsubsection{a) \acl{TRG} bei \acs{RZ}}
|
||
|
|
||
|
\acl{TRG} gibt es bei jeder \enquote{1}. Nur bei nur \enquote{0} gibt es keine \acs{TRG}.
|
||
|
|
||
|
\textit{\uline{1. Startbitsequenz}}\newline
|
||
|
Ein einfaches Startbit \enquote{1} reicht aus!
|
||
|
|
||
|
\textit{\uline{2. Bitstuffing}} \newline
|
||
|
Stopfbit nur nach $n$ \enquote{0}-Bit notwendig!
|
||
|
$\Rightarrow$ Jeweils nur noch ungefähr halber Overhead gegenüber Einsatz bei \acs{NRZ}!
|
||
|
|
||
|
|
||
|
\subsubsection{b) \acl{BBB} bei \acs{RZ}}
|
||
|
Ganze Schrittrate, also doppelt so viel wie nötig (entspricht der Frequenz beim Bitmuster \enquote{1111111\ldots}). \newline
|
||
|
\autoref{fig:nrz_rz_vergleich} zeigt beispielhaft die unterschiedliche Schrittzeit und Periodendauer zwischen \acs{NRZ} und \acs{RZ}.
|
||
|
|
||
|
|
||
|
\subsubsection{c) \acl{GSF} bei \acs{RZ}}
|
||
|
|
||
|
\acl{GSF} bei \acs{RZ}:
|
||
|
\begin{itemize}[noitemsep]
|
||
|
\item bei symmetrischem Pegel: nur \enquote{1}
|
||
|
\item bei \enquote{single-ended}-Pegeln: nur \enquote{0}
|
||
|
\item bei \#\enquote{1} $=$ \#\enquote{0}: andere Pegel notwenig, \zB $1\hat{=}7,5V$, $0\hat{=}-2,5V$
|
||
|
\end{itemize}
|
||
|
|
||
|
De facto nie \acs{GSF} bei \acs{RZ}.
|
||
|
|
||
|
\subsubsection{d) \acl{SSH} bei \acs{RZ}}
|
||
|
|
||
|
Die \acl{SSH} ist bei \acs{RZ} optimal, da nur zwei Spannungen unterschieden können werden müssen.
|
||
|
|
||
|
|
||
|
\subsection{3. \acf{AMI}}\index{Alternate Mark Inversion}
|
||
|
|
||
|
\begin{figure}[h]
|
||
|
\centering
|
||
|
\begin{tikzpicture}[scale=0.9]
|
||
|
\draw
|
||
|
(0.25,0.5) node[right]{0}
|
||
|
(1.25,0.5) node[right]{1}
|
||
|
(2.25,0.5) node[right]{0}
|
||
|
(3.25,-0.5) node[right]{1}
|
||
|
(4.25,0.5) node[right]{0}
|
||
|
(5.25,0.5) node[right]{1}
|
||
|
(6.25,-0.5) node[right]{1}
|
||
|
(7.25,0.5) node[right]{1}
|
||
|
(8.25,0.5) node[right]{0}
|
||
|
(9.25,0.5) node[right]{0}
|
||
|
(10.25,0.5) node[right]{0};
|
||
|
|
||
|
\draw[ultra thick]
|
||
|
(0,0) node[left]{AMI} (0,0)--(1,0)--(1,1)--(2,1)--(2,0)--(3,0)--(3,-1)--
|
||
|
(4,-1)--(4,0)--(5,0)--(5,1)--(6,1)--(6,-1)--(7,-1)--(7,1)--(8,1)--(8,0)--
|
||
|
(11,0);
|
||
|
|
||
|
\end{tikzpicture}
|
||
|
\caption{\acl{AMI}}
|
||
|
\label{fig:ami}
|
||
|
\end{figure}
|
||
|
|
||
|
Ähnlich wie \acs{NRZ} mit \enquote{single-ended} Pegeln, aber Einsen (\enquote{1}) werden abwechselnd mit jeweils entgegengesetzten symmetrischen Regeln (\zB $+5V$ und $-5V$) übertragen. \autoref{fig:ami} zeigt dies.
|
||
|
|
||
|
|
||
|
\subsubsection{a) \acl{TRG} bei \acs{AMI}}
|
||
|
Bei jeder \enquote{1} (wie bei \acs{RZ}, entsprechend Startbit bzw. Bitstuffing).
|
||
|
|
||
|
|
||
|
\subsubsection{b) \acl{BBB} bei \acs{AMI}}
|
||
|
Halbe Schrittrate, also minimal (laut H. Shannan/Nyquist).
|
||
|
|
||
|
\subsubsection{c) \acl{GSF} bei \acs{AMI}}
|
||
|
Nach jeder zweiten \enquote{1} (also bei einer geraden Anzahl an Einsen). $\Rightarrow$ Der Gleichstrom-Anteil ist bei entsprechend großer Anzahl Bit vernachlässigbar).
|
||
|
|
||
|
\subsubsection{d) \acl{SSH} bei \acs{AMI}}
|
||
|
Die \acl{SSH} ist bei \acs{AMI} schlecht, da für ein Bit drei Spannungen notwendig sind.
|
||
|
|
||
|
|
||
|
\subsection{4. Manchester-Codierung}
|
||
|
|
||
|
\begin{figure}[h]
|
||
|
\centering
|
||
|
\begin{tikzpicture}[scale=0.9]
|
||
|
\path[black,ultra thick,->]
|
||
|
(0,0) node[left]{Manchester}
|
||
|
|
||
|
(0,0) edge (0.5,1)
|
||
|
(1,1) edge (1.5,0)
|
||
|
(2,0) edge (2.5,1)
|
||
|
(3,1) edge (3.5,0)
|
||
|
(4,0) edge (4.5,1)
|
||
|
(5,0) edge (5.5,1)
|
||
|
(6,1) edge (6.5,0)
|
||
|
(7,1) edge (7.5,0);
|
||
|
|
||
|
\path[blue!50!black,thick,->]
|
||
|
(4.75,1) edge (4.75,0)
|
||
|
(6.75,0) edge (6.75,1);
|
||
|
|
||
|
\end{tikzpicture}
|
||
|
\caption{Manchester-Codierung}
|
||
|
\label{fig:manchester}
|
||
|
\end{figure}
|
||
|
|
||
|
Datenbit wird über einen Pegelwechsel zur Mitte der Schrittzeit definiert.
|
||
|
|
||
|
Steigende Flanke $\hat{=}$ \enquote{1}, Fallende Flanke $\hat{=}$ \enquote{0} (kann auch umgekehrt definiert sein. \textit{Hinweis:} Flanke $=$ Pegelwechsel)
|
||
|
|
||
|
|
||
|
Gegebenenfalls muss ein weiterer Pegelwechsel zu Beginn der Schrittzeit eingefügt werden (siehe blaue Pfeile in \autoref{fig:manchester}).
|
||
|
|
||
|
\subsubsection{a) \acl{TRG} bei Manchester}
|
||
|
|
||
|
Immer (bei allen übertragenen Daten) in jeder Schrittzeit möglich (aber: Abweichung darf insgesamt nur $\frac{1}{4}$~Schrittzeit betragen).
|
||
|
|
||
|
|
||
|
\subsubsection{b) \acl{BBB} bei Manchester}
|
||
|
|
||
|
Entspricht der Schrittrate und damit doppelt so viel wie nötig (Frequenz tritt bei \enquote{111111\ldots} und \enquote{00000\ldots} auf).
|
||
|
|
||
|
|
||
|
\subsubsection{c) \acl{GSF} bei Manchester}
|
||
|
|
||
|
Immer (bei symmetrischen Pegeln), da sich die Pegel in der ersten und zweiten Hälfte jeder Schrittzeit ausgleichen.
|
||
|
|
||
|
|
||
|
\subsubsection{d) \acl{SSH} bei Manchester}
|
||
|
|
||
|
Optimal, da nur zwei Pegel verwendet werden.
|
||
|
|
||
|
\bigskip
|
||
|
|
||
|
\begin{table}[ht]
|
||
|
\subsection{Vergleich der Signalcodierungsverfahren}
|
||
|
|
||
|
\centering
|
||
|
\begin{tabular}{p{20mm}|p{30mm}|p{49mm}|p{19mm}|p{22mm}}
|
||
|
& \acs{TRG}
|
||
|
& \acs{GSF} (Grundvoraussetzung: symmetrische Pegel)
|
||
|
& \acs{BBB}
|
||
|
& \acs{SSH}
|
||
|
\\ \midrule
|
||
|
|
||
|
\acs{NRZ}
|
||
|
& \textcircled{--} \textcircled{--} bei jeder \enquote{01}- oder \enquote{10}-Folge
|
||
|
& \textcircled{--} bei $\#1=\#0$ ($1$ und $0$ gleichverteilt)
|
||
|
& \textcircled{+} halbe Schrittrate
|
||
|
& \textcircled{+} optimal (2 Pegel)
|
||
|
\\ \midrule
|
||
|
|
||
|
\acs{RZ}
|
||
|
& \textcircled{--} bei jeder \enquote{1}
|
||
|
& \textcircled{--}\textcircled{--} nur 1 (bei symmetrischen Pegeln) bzw. nur 0 (bei single-ended Pegel) bzw. komischen Pegelverhältnis (bei $\#1=\#0$)
|
||
|
& \textcircled{--} ganze Schrittrate
|
||
|
& \textcircled{+} optimal (2 Pegel)
|
||
|
\\ \midrule
|
||
|
|
||
|
\acs{AMI}
|
||
|
& \textcircled{--} bei jeder \enquote{1}
|
||
|
& \textcircled{+} bei jeder zweiten $1$, also praktisch immer
|
||
|
& \textcircled{+} halbe Schrittrate
|
||
|
& \textcircled{--} schlechter (3 Pegel)
|
||
|
\\ \midrule
|
||
|
|
||
|
Manchester
|
||
|
& \textcircled{+} immer
|
||
|
& \textcircled{+} \textcircled{+} wirklich immer
|
||
|
& \textcircled{--} ganze Schrittrate
|
||
|
& \textcircled{+} optimal (2 Pegel)
|
||
|
\\
|
||
|
\end{tabular}
|
||
|
\caption{Vergleich der Signalcodierungsverfahren}
|
||
|
\end{table}
|
||
|
|