efrei/communications-numeriques/main.tex

261 lines
12 KiB
TeX

\documentclass[a4paper,french,12pt]{article}
\title{Communications Numériques}
\author{}
\date{Dernière compilation~: \today{} à \currenttime}
\usepackage{styles}
\usepackage{tikz}
\usetikzlibrary{shapes}
\usepackage{circuitikz}
\DeclareFontFamily{U}{wncy}{}
\DeclareFontShape{U}{wncy}{m}{n}{<->wncyr10}{}
\DeclareSymbolFont{mcy}{U}{wncy}{m}{n}
\DeclareMathSymbol{\Sh}{\mathord}{mcy}{"58}
\begin{document}
\maketitle
\tableofcontents
\clearpage
\section{Introduction}
\subsection{Transmission synchrone / asynchrone}
\subsubsection{Transmission synchrone}
À la réception, l'horloge regénérée définit la cadence.
Les transitions de l'horloge coïncident avec celle des données constituées d'un flux ininterrompu de bits.
\begin{center}
\begin{tikzpicture}[scale=1, transform shape]
\foreach \i in {1,2,3,4,6,7,8,9}{\draw [dashed] (\i,-2.7) -- (\i,0.7);}
\foreach \i in {0,5,10}{\draw [dashed,very thick] (\i,-3) -- (\i,0.7);}
\node at (-1.5,0) {\parbox{2cm}{\centering Horloge regénérée}};
\draw [-latex] (0,0) -- (11,0);
\node at (-1.5,-2) {\parbox{2cm}{\centering Données synchrones}};
\draw [-latex] (0,-2) -- (11,-2);
\foreach \i in {0,1,...,9}{
\draw [red,very thick] (\i,0.5) -- (\i+0.5,0.5) -- (\i+0.5,0) -- (\i+1,0) -- (\i+1,0.5);
}
\draw [red,very thick]
(0,-2) -- (1,-2) --
(1,-1.5) -- (3,-1.5) --
(3,-2) -- (4,-2) --
(4,-1.5) -- (5,-1.5) --
(5,-2) -- (7,-2) --
(7,-1.5) -- (10,-1.5) -- (10,-2)
;
\foreach \i in {0,3,5,6}{\node at (\i+0.5,-2.4) {0};}
\foreach \i in {1,2,4,7,8,9}{\node at (\i+0.5,-2.4) {1};}
\node at (2.5,-3) {1\up{er} caractère};
\node at (7.5,-3) {2\up{ème} caractère};
\end{tikzpicture}
\end{center}
\subsubsection{Transmission asynchrone}
À la réception, l'arrivée des données \emph{démarre} l'horloge.
La transition initiale d'un paquet de données de longueur déterminée définit la transition initiale de l'horloge.
À la fin du paquet de données, cette horloge s'interrompt.
\begin{center}
\begin{tikzpicture}[scale=1, transform shape]
\node (d) at (-1.5,0.5) {Données};
\draw (0,1) -- (2,1) -- (2,0) node[currarrow,pos=0.5,sloped] {}
-- (4,0) -- (4,1) -- (5,1) -- (5,0) -- (6,0) -- (6,1) -- (8,1)
;
\draw [dashed] (8,1) -- (9,1);
\draw (9,1) -- (10,1) -- (10,0) node[currarrow,pos=0.5,sloped] {} -- (11,0);
\node (h) at (-1.5,-1.25) {Horloge};
\draw (0,-1.5) -- (2,-1.5) -- (2,-1) node[currarrow,pos=0.5,sloped] {};
\foreach \i in {2,3,...,6}{
\draw (\i,-1) -- (\i+0.5,-1) -- (\i+0.5,-1.5) -- (\i+1,-1.5);
}
\foreach \i in {3,4,5,6}{
\draw (\i,-1.5) -- (\i,-1);
}
\draw (7,-1.5) -- (8,-1.5);
\draw [dashed] (8,-1.5) -- (9,-1.5);
\draw (9,-1.5) -- (10,-1.5) -- (10,-1) node[currarrow,pos=0.5,sloped] {};
\foreach \i in {10,11}{
\draw (\i,-1) -- (\i+0.5,-1) -- (\i+0.5,-1.5) -- (\i+1,-1.5);
}
\draw (11,-1.5) -- (11,-1);
\path
(1.8,0.5) edge [->,>=latex,bend right] (1.8,-1.25)
(9.8,0.5) edge [->,>=latex,bend right] (9.8,-1.25)
;
\end{tikzpicture}
\end{center}
Pour ``réveiller'' le récepteur, l'émetteur émet une trame de \emph{wake up}.
En effet, le récepteur, pour économiser des resources, écoute de temps en temps.
À la réception d'une trame de \emph{wake up}, elle doit se mettre en place, ce qui peut prendre du temps.
Elle reçoit donc une trame \emph{sync word}, après laquelle elle s'attend à recevoir le premier bit de charge utile (\emph{payload}).
Même à fréquence identique, l'horloge d'émission (période de $T$) et l'horloge à la réception (période de $T + \Delta T$) ne sont jamais complètement identiques.
Ce décalage s'accumule au fil du temps, ce qui est gênant.
Quand on échantillonne les bits reçus, on va avoir deux cas~:
\begin{enumerate}
\item $\Delta T > 0$~: on va perdre des bits à l'échantillonnage.
\item $\Delta T < 0$~: on va échantillonner plusieurs fois le même bit.
\end{enumerate}
Si on envoie peu de bits (8 bits $< \Delta T$), ce problème est négligeable.
Il faut donc synchroniser les horloges tous les 8 bits.
\section{Structure générale d'une chaîne de transmission numérique}
\subsection{Système de transmission en bande de base (\emph{base band})}
Le signal est directement transmis sur le canal de transmission.
% TODO: add schéma de système de transmission de bande de base
\begin{center}
\begin{tikzpicture}[scale=0.8, transform shape]
\node [ellipse,draw] (source) at (0,0) {Source};
\node [rectangle,draw] (c) at (3,0) [label=below:Chiffrement] {C};
\node [rectangle,draw] (r) at (6,0) [label=below:Compression] {R};
\node [rectangle,draw] (e) at (9,0) [label=below:\parbox{2cm}{\centering Encodage\\Détecteur\\Correcteur\\d'erreurs}] {E};
\node [rectangle,draw] (b) at (12,0) [label=below:Embrouillage] {B};
\node [rectangle,draw] (v) at (15,0) [label=right:Codage numérique] {V};
\node [diamond,draw] (canal) at (15,-3) {canal};
\node [rectangle,draw] (v1) at (15,-6) [label=right:Décodage numérique] {V--1};
\node [rectangle,draw] (b1) at (12,-6) [label=below:Désembrouillage] {B--1};
\node [rectangle,draw] (e1) at (9,-6) {E--1};
\node [rectangle,draw] (r1) at (6,-6) [label=below:Décompression] {R--1};
\node [rectangle,draw] (c1) at (3,-6) [label=below:Déchiffrement] {C--1};
\node [ellipse,draw] (utilisation) at (-1,-6) {Utilisation};
\draw [-latex] (source) -- (c) node[above, midway]{$\{sk\}$};
\draw [-latex] (c) -- (r) node[above, midway]{$\{dk\}$};
\draw [-latex] (r) -- (e) node[above, midway]{$\{ck\}$};
\draw [-latex] (e) -- (b) node[above, midway]{$\{bk\}$};
\draw [-latex] (b) -- (v) node[above, midway]{$\{\alpha k\}$};
\draw [-latex] (v) -- (canal) node[right, midway]{$e(t)$};
\draw [-latex] (canal) -- (v1) node[right, midway]{$r(t)$};
\draw [-latex] (v1) -- (b1) node[above, midway]{\{$\alpha k_e$\}};
\draw [-latex] (b1) -- (e1) node[above, midway]{$\{bk_e\}$};
\draw [-latex] (e1) -- (r1) node[above, midway]{$\{ck_e\}$};
\draw [-latex] (r1) -- (c1) node[above, midway]{$\{dk_e\}$};
\draw [-latex] (c1) -- (utilisation) node[above, midway]{$\{sk_e\}$};
\end{tikzpicture}
\end{center}
\subsection{Système de transmission en bande transposée (\emph{broad band})}
\subsection{Intérêt de la transmission numérique}
Le passage du signal dans un canal qui est déformant (filtrage) et bruyant est un problème de la transmission analogique.
\begin{equation*}
r(t) = (e(t) + n(t)) * h(t)
\end{equation*}
\begin{itemize}
\item $n(t)$ est le bruit blanc gaussien.
\item $h(t)$ est la réponse impulsionnelle du filtre caractérisant le canal de transmission.
\end{itemize}
En général, il est impossible de retrouver $e(t)$ à partir de $r(t)$.
Il faut que $e(t)$ possède des propriétés particulières connues et invariantes dans le temps pour espérer estimer $e(t)$ à partir de $r(t)$.
Un signal numérique possède ces propriétés~: seulement deux valeurs possibles et des changements de valeurs tous les $nT$.
Il est alors beaucoup plus simple de regénérer le signal émis d'après le signal reçu.
\paragraph{Méthode d'estimation}
\begin{enumerate}
\item repérer les transitions du signal
\item à partir de ces transitions, regénérer un signal d'horloge
\item grâce à cette horloge, venir échantillonner à un instant choisi la valeur du signal
\item % TODO: finish
\end{enumerate}
\subsection{Définitions}
\paragraph{Débit brut (rate)~: $D$}
\begin{itemize}
\item nombre de symboles émis pendant l'unité de temps
\item coïncide avec la fréquence d'horloge
\item si les symboles sont binaires, on parle de \emph{débit binaire brut} (bit rate) et l'unité est le bit/s
\end{itemize}
\paragraph{Débit moyen ou statistique ou entropique (average, statistic, or entropic rate)}
\begin{equation*}
H_m = \sum p_i \log_m\left(\frac{1}{p_i}\right)
\end{equation*}
\paragraph{Rapidité de modulation (baud rate)~: $R$}
C'est l'inverse du temps entre deux transitions du signal qui circule sur la ligne de transmission.
\begin{itemize}
\item transition de niveau (bande de base)
\item transition d'amplitude, de fréquence ou de phase (bande transposée)
\item l'unité est le BAUD
\end{itemize}
\paragraph{Valence}
\begin{itemize}
\item nombre $V$ (parfois $M$) d'états significatifs du signal numérique
\item états~:
\begin{itemize}
\item valeur constante (bande de base)
\item amplitude, fréquence, ou phase (bande transposée)
\end{itemize}
\item cas où le signal numérique a des caractéristiques constantes durant toute le durée de l'état (même valeur, même amplitude, fréquence, ou phase)
\end{itemize}
\begin{equation*}
R = \frac{D}{\log_2(V)}
\end{equation*}
\paragraph{Polarité (polarity)}
\begin{itemize}
\item définition pour les signaux numériques non modulés
\item signal unipolaire~: toutes les valeurs sont soit positives ou nulles, soit négatives ou nulles
\item signal antipolaire~: valeurs symétriques deux à deux par rapport à 0, mais sans la valeur 0
\item % TODO: finish
\end{itemize}
\section{Expressions temporelles et spectrales}
\subsection{Expression spectrale}
\paragraph{Formule de Bennett}
\begin{equation*}
S_{xx}(f) = S_{gg}(f) \left[\frac{\sigma_a^2}{T} + \frac{\overline{a}^2}{T^2} \;\Sh\left(\frac{f}{1/T}\right) \right]
\end{equation*}
\paragraph{Propriétés requises}
\begin{enumerate}
\item Le spectre ne doit pas avoir de composante continue.
\item Le spectre doit être décroissant et tendre vers 0 aux basses fréquences.
\item Le spectre doit avoir un support le plus étroit possible.
\item Le spectre doit comprendre des raies à la fréquence d'horloge et à ses multiples.
\item le rythme d'horloge doit pouvoir être conservé à court terme.
\item Le spectre instantané doit être proche du spectre théorique.
\item Le signal doit posséder une redondance de manière à pouvoir tester sa vraisemblance.
\end{enumerate}
\end{document}