300 likes | 819 Views
Code NRZ ( Non Return to Zero). 2.3.2. Code NRZI ( Non Return to Zero Inverted) 2.3.3. Code RZ ( Return to Zero ) 2.3.4. Code Biphase ( ou "Manchester") 2.3.5. Code FM ( Frequency Modulation), de Miller 2.3.6. Code CMI ( Coded Mark Inversion). 2.3.7. Code Biphase Différentiel. 2.3.8. Codes suffixés "M" ou "S". 2.3.9. Quelques exemples de spectres
E N D
TRANSMISSION NUMERIQUE 1. SYSTEMES ET CANAUX DE TRANSMISSIONS 1.1. Un système complet pour la transmission numérique 1.2. Intérêts de la transmission numérique 1.3. Définitions 2. CODAGE DE VOIE - CODAGE NUMERIQUE 2.1. Expressions temporelles et spectrales 2.2. Propriétés requises: 2.3. Codes de voie bivalents. 2.3.1. Code NRZ ( Non Return to Zero). 2.3.2. Code NRZI ( Non Return to Zero Inverted) 2.3.3. Code RZ ( Return to Zero ) 2.3.4. Code Biphase ( ou "Manchester") 2.3.5. Code FM ( Frequency Modulation), de Miller 2.3.6. Code CMI ( Coded Mark Inversion). 2.3.7. Code Biphase Différentiel. 2.3.8. Codes suffixés "M" ou "S". 2.3.9. Quelques exemples de spectres : 2.4. Codes de voie trivalent {ak}={0,1}. 2.4.1. Code AMI ( Alterned Mark Inversion). 2.4.2. Code HDB3 ( High Density Bipolar). 2.5. Codes à transformation de valence. 2.5.1. Code 4B3T. 1. SYSTEMES ET CANAUX DE TRANSMISSIONS 1.1. Un système complet pour la transmission numérique Il s'agit de transmettre, sur un canal de transmission, des signaux numériques cadencés par une horloge de période fixée.
Ces signaux peuvent prendre un nombre fini de valeurs ( 2 assez souvent, on parle alors de signal binaire) et les transitions entre ces valeurs ne peuvent arriver qu'à des instants précis, équidistants dans le temps et en rapport avec l'horloge. On dit qu'il s'agit d'une transmission synchrone si le flux de données créant le signal numérique est ininterrompu, la cadence d'horloge étant alors de même. On dit qu'il s'agit d'une transmission asynchrone si les données sont transmises par "petits paquets", l'en-tête de ce paquet indiquant alors au récepteur la cadence d'horloge ( le cas le plus fréquent est la transmission asynchrone d'un mot de 7 ou 8 bits, précédés d'un bit de départ: transition initiale marquant l'instant initial).On peut bien sûr concevoir un amalgame de ces deux principes c'est le cas de la transmission de trames de données qui sont des " grands paquets" dont l'émission est à priori asynchrone ( le début de la trame est quelconque dans le temps), alors que le signal constituant cette trame est synchrone dont régi par une horloge ( engendrée à l'aide d'une séquence d'en-tête. Fig.1: Tranmission synchrone : les transitions de H conditionnent celles des Données. Fig.2: Transmission asynchrone : la transition initiale des Données initialise une horloge qui dure le temps d'un paquet. Fig3: Transmission d'une trame : l'horloge démarre et se synchronise sur l'en-tête des données, mais celle-ci sont ensuite conditionnées par cette horloge. Ces différents cas impliquent essentiellement une conception différente du récepteur. En particulier lors d'une transmission asynchrone, il n'est pas nécessaire que l'horloge de réception soit stable à long terme, ni même, à la limite, de fréquence exactement identique à celle de l'horloge d'émission; ce n'est bien sûr pas le cas dans une transmission synchrone ou dans le cas d'une transmission de trame que l'on considère désormais comme une transmission synchrone.
Dans tous les cas ( sauf bien entendu liaison de très courte distance) les données seront transmises en série (un seul signal) et non accompagnées d'un autre signal d'horloge. Ce dernier devra donc être régénéré au niveau du récepteur. Nous allons donc pouvoir construire un système de transmission numérique synchrone, à priori ( le mode asynchrone étant plus simple à traiter, il ne sera pas développé ici). Il faut bien sûr tenir compte du canal de transmission et de ses défauts et limitations. Les différents canaux physiques de transmissions sont : ? : les câbles : paires torsadées, câble coaxial, paires blindées .. ? : la transmission électromagnétique hertzienne en espace libre : "faisceaux hertziens", "transmission sans fil" … ? : la transmission optique en espace libre : "liaison infrarouge"… ? : la transmission optique guidée dans des fibres optiques. Pour les cas ? ,? et ? , le signal transmis doit nécessairement avoir un spectre limité centré dans une fréquence "porteuse". Pour le cas ? , le signal peut avoir un spectre à priori quelconque, dans la limite de bon fonctionnement du câble. Ainsi un signal numérique ayant un spectre centré sur la fréquence "0" est dit " BANDE DE BASE" ( BASE BAND), alors qu'un signal numérique ayant un spectre étroit centré sur un fréquence "porteuse" fo est dit "BANDE TRANSPOSEE" (BROAD BAND). Afin de décrire un système complet de transmission, nous allons partir d'un modèle de canal, puis décrire les opérations successives nécessaires à la transmission correcte d'une information numérique issue d'une source délivrant des symboles appartenant à un alphabet fini et sortant de la source à un rythme régulier. Le canal de transmission sera supposé linéaire ( ce qui est pratiquement toujours le cas dans la réalité). Il est donc modélisable par un filtre linéaire que nous supposerons, dans un premier temps, invariant dans le temps ( cette dernière condition sera levée plus tard partie 2.9 Par ailleurs, le canal amène des perturbations d'origines diverses ( bruit thermique, rayonnements divers, diaphonie entre canaux…). Ce défaut sera modélisé par une source de bruit additive ( car le canal est linéaire) munie d'une loi de probabilité gaussienne à priori ( en dehors de tout autre renseignement) et d'une densité spectrale de puissance constante ( "bruit blanc gaussien"). Ce canal est dit a bruit blanc gaussien ,additive white gaussien noise , AWGN)
Fig.4 : modélisation du canal de transmission C(f) est un filtre passe-bas dans le cas d'un signal à bande de base ou bien un filtre passe- bande dans le cas d'un signal à bande transposée. Nous allons nous placer dans le cas le plus complet, vis à vis du système, qu'est le cas de bande transposée. Le signal numérique d'origine a toujours un spectre centré sur la fréquence 0, il faut donc lui faire subir une transposition de fréquence : il s'agit d'une MODULATION NUMERIQUE ( DIGITAL MODULATION) ainsi nommée car le signal modulant est numérique. Cette opération est aussi nommée CODAGE DE LIGNE. Nous désignerons par "L" le bloc qui assure cette fonction et par "L-1" celui qui réalise l'inverse ( démodulation). Ces opérations s'apparentent à celles des techniques de modulations analogiques. Elles sont décrites au paragraphe 3. Le signal numérique précité doit représenter les symboles délivrés par la source. Ceci nécessite une opération de mise en correspondance des symboles ou de suite de symboles avec des valeurs ou des suites de valeurs définissant ainsi le signal. Il s'agit d'une fonction de codage. Cette opération se nomme CODAGE NUMERIQUE ( DIGITAL CODING) ou encore CODAGE DE VOIE. Nous désignerons par "V" et "V-1" respectivement cette opération et son inverse ( décodage ou "restitution" DATA RECOVERY). Nous avons évoqué plus haut le fait que nous nous intéressions à une transmissions synchrone; il faut donc impérativement restituer le rythme d'horloge à la réception( sachant qu'aucun autre signal numérique informatif n'est transmis). Ainsi l'opération "V-1" doit être accompagnée d'un système de récupération d'horloge ( CLOCK REGENERATION). Cette opération sera désignée symboliquement par "H-1". La source émet à priori des séquences quelconques de symboles et en particulier, il peut arriver qu'elle transmette pendant un certain temps le même symbole ( période d'inactivité ou d'attente ou message récurrent…), ceci va entraîner un signal numérique ayant des propriétés particulières à ce moment ce qui risque d'entraîner un comportement atypique du canal ( à cause du filtrage) . Afin d'éviter un tel risque, il est très courant de faire subir au message, avant codage, un embrouillage ( SCRAMBLING) destiné à rendre ce message pseudo- aléatoire ( PSEUDO-RANDOM), c'est-à-dire aléatoire à court terme, même s'il est déterministe à long terme. Cette opération sera détaillée au paragraphe 2.8, nous la noterons "B" et "B-1" son inverse ( désembrouillage DESCRAMBLING). Ainsi les blocs B,V et L, ainsi que leurs inverses sont conçus de façon à ce que l'information puisse "passer" dans le canal, compte tenu du filtrage de celui-ci. Il faut à présent se protéger contre les erreurs dues aux perturbations apportées par le canal. C'est le rôle d'un encodage particulier basé sur le principe de redondance et de vraisemblance : encodage détecteur et/ou
correcteurs d'erreurs ( ERROR DETECTING / CORRECTING CODE). Cette opération sera notée "E" et "E-1" son inverse ( détection et/ou correction) et sera détaillée dans un cours particulier. La source peut également travailler à un rythme trop important pour la capacité du canal envisagé. On a alors recours à un procédé de compression de données ( DATA COMPRESSION). Divers algorithmes sont utilisés et font l'objet de cours particuliers. Cette opération sera notée "R" et son inverse "R-1" ( "R" comme réduction de rythme) Enfin on peut souhaiter que la transmission présente une certaine sécurité dans la confidentialité: il faut donc rendre l'information incompréhensible pour un destinataire non désiré. C'est l'objet du cryptage que nous noterons "C" et "C-1" son inverse ( décryptage). Nous sommes donc présent en mesure de décrire fonctionnellement un système complet de transmission numérique ( voir schéma ci-après). 1.2. Intérêts de la transmission numérique Le problème posé par une transmission numérique est son passage dans un canal qui est déformant ( filtrage) et bruyant. Ainsi : r(t) = (e(t)+n(t))*h(t) A partir de r(t), il est en général impossible de retrouver e(t): en effet, n(t) est un processus aléatoire d'une part et l'on ne sait pas faire l'opération de déconvolution avec h(t) en règle générale. Toutefois, si e(t) possède des propriétés particulières connues et invariantes dans le temps, on peut espérer estimer e(t) à partir de r(t). Or, un signal analogique, en général, ne possède pas de propriétés particulières ( sauf dans le cas où il est périodique de période connue où l'estimation est alors possible : on dit alors que l'on "extrait" le signal). Un signal numérique synchrone, par contre, possède deux propriétés fondamentales : ? : il présente des transitions de niveaux à des instants synchrones avec l'horloge, et il ne peut pas en présenter ailleurs. ? : en dehors de ces transitions, le signal conserve une valeur constante appartenant à un ensemble fini de valeurs connues. Ces propriétés induisent une méthode d'estimation : ? : repérer les transitions de signal. ? : à partir de ces transitions, régénérer un signal d'horloge. ? : grâce à ce signal d'horloge, venir échantillonner à un instant choisi la valeur du signal reçu.
? : comparer cette valeur échantillonnée aux valeurs possibles et décider alors de l'attribution d'une de ces valeurs. ? : reconstruire alors le signal numérique grâce à l'ensemble des valeurs retrouvées et à l'horloge. Fig.5 : régénération d'un signal numérique. L'exemple ci-dessus met en évidence la parfaite régénération su signal ( à un retard systématique près), montrant ainsi le "gommage" des déformations et du bruit ( technique impossible à mettre en œuvre pour un signal analogique) Voilà donc l'intérêt majeur de la transmission numérique : la possibilité de régénérer le signal, donc l'information après chaque transmission ( alors que le signal analogique ne peut que se dégrader). Toutefois cette technique d'échantillonnage présente un défaut : à l'instant d'échantillonnage, le signal peut prendre une valeur malencontreusement proche d'une valeur possible, mais fausse, sous l'effet du bruit principalement. Si cela arrive, il y aura une erreur. Or nous savons qu'il existe un système de codage permettant par la suite de détecter, voire de corriger cette ou ces erreurs. Ce codage ne peut être mis en évidence qu'en numérique ( et plus particulièrement
en binaire grâce à l'alternative 0/1).Voilà un deuxième avantage de la transmission numérique qui viens d'ailleurs compléter et renforcer le premier. Enfin, les techniques de cryptage et de compression ne sont vraiment envisageables qu'avec une information numérique. 1.3. Définitions DEBIT BRUT [RATE] : nombre de symbole émis pendant l'unité de temps ( en général la seconde). Ce nombre coïncide avec la valeur de la fréquence d'horloge. Si les symboles sont binaires on parle de débit binaire brut (BIT RATE) et l'unité est le bit/s, le mot "bit" étant pris au sens "binary digit" DEBIT MOYEN ou STATISTIQUE [AVERAGE or STATISTIC RATE] : il s'agit alors du débit entropique de la source = valeur de l'entropie par unité de temps = quantité moyenne d'information émise par unité de temps. Si les symboles sont binaires, l'unité est toujours le bit/s, mais le mot "bit" est pris au sens d'unité de mesure de quantité d'information ( soit le logarithme en base 2 de l'inverse de la probabilité d'un symbole). RAPIDITE DE MODULATION [BAUD RATE] : c'est l'inverse de la durée la plus courte d'une portion de signal caractérisant un symbole ( ou le cas échéant, un groupe de symboles). La portion de signal considéré se nomme " signal élémentaire". Ce signal élémentaire est soit une constante ( signal numérique bande de base) soit une fonction sinusoïdale d'amplitude et de fréquence localement constantes et sans saut de phase ( signal numérique modulé) . Cette caractéristique se mesure en BAUD ( dimension s-1) et se désigne par "R". VALENCE [VALENCE] : nombre d'états significatifs du signal numérique. Les états pouvant être une valeur constante ou une amplitude, fréquence ou phase. " Significatif" veut dire représentatif du symbole et permettant à lui seul de le reconnaître POLARITE [POLARITY] : indique si toutes les valeurs sont positives ou négatives ou symétriques. Cette définition ne s'applique qu'aux signaux numériques non modulés. - signal unipolaire : toutes les valeurs ≥ 0 ou ≤ 0. - signal antipolaire : valeurs symétriques deux à deux par rapport à 0, mais sans la valeur 0 - signal bipolaire : comme antipolaire mais avec la valeur 0. ( un signal antipolaire permet ainsi de distinguer une absence de transmission et la transmission d'un message constant qui correspondrait à la séquence 0000000…….)
Fig.6 : Exemple de rapidité de modulation. Fig.7 : Différents types de polarité. 2. CODAGE DE VOIE - CODAGE NUMERIQUE 2.1. Expressions temporelles et spectrales
Le codage numérique est une application qui, à un symbole ( ou une suite de symboles), fait correspondre une fonction du temps, bornée dans le temps et s'étendant en principe ( sauf cas exceptionnels) uniquement sur la durée d'existence du symbole ( ou de la suite de symbole). On notera ak le symbole ( ou la suite) et x k(t) le signal correspondant à ak . Plus généralement, à la suite { ak } correspondra un signal : Nous définissons ainsi une opération linéaire et le codeur peut ainsi être représenté par le filtre linéaire : Fig.8 : Filtre linéaire. Le symbole ak n'existe que durant le temps T, si 1/T est de débit brut de la source. La suite { ak } est ainsi une suite de valeurs discrètes apparaissant tous les T, on peut donc lui associer un signal a(t) grâce à la distribution temporelle "peigne": Notre codeur devient alors un système linéaire que nous supposerons invariant dans le temps, qui à a(t) répond x(t). On peut donc le modéliser par sa réponse impulsionnelle que l'on nomme "FORMANT" du code et que l'on note g(t): Fig.9 : Formant. Alors :
Ceci est une expression générale d'un signal numérique de période T ( de débit brut égal à 1/T) codé par un formant g(t). Cette fonction g(t) est définie dans l'intervalle [0;T[. Fig.10 : Exemple de Formant. Il s'agit à présent d'exprimer le spectre de x(t). Or x(t) est un signal à priori non borné dans le temps, donc à énergie infinie ( et donc à puissance moyenne totale finie) et de caractère aléatoire car la suite { ak } est aléatoire à priori. Par contre g(t) est un signal déterministe borné, à énergie finie. Compte tenu de ces propriétés, nous pouvons calculer la densité spectrale de puissance DSP de x(t) grâce au théorème de Wiener-Kinchine ( en notant Sxx(f) cette DSP et Rxx(τ ) la fonction d'autocorrélation statistique de x(t), fonction aléatoire) : Sxx(f) = F( Rxx(τ ) ) Rxx(τ ) = E( x(t).x(t- τ ) ) La suite { ak } étant aléatoire, il faut définir ses moments : En supposant que les " ak " forment une suite stationnaire au sens large. L'expression de Rxx(τ ) est une moyenne statistique donc une moyenne d'ensemble, elle est donc obtenue à partir d'expériences aléatoires indépendantes réalisées à partir de plusieurs sources " ak " les mêmes caractéristiques statistiques et de débit 1/T, mais bien sûr pouvant être décalées les unes des autres dans le temps ( ie décalage Φ étant lui même une variable aléatoire définie dans [0;T[ et de loi uniforme ).
Fig.11 : Sources " ak ". Ainsi : E(ak.al) = E(ak.ak+n) = Raa(n), en notant n le décalage entre k et l. E(g(…) . g(…)) est une intégrale entre 0 et T, sur la variable Φ , que l'on peut sommer sur k pour obtenir la fonction d'autocorrélation de la fonction g(t) , par le truchement d'un changement de variable :
Or, Raa(n) exprime le degré de corrélation des éléments de la suite {ak}. Dans la plupart des cas, on est en présence d'une source dite "sans mémoire". Dans ce cas : Car les " ak " sont indépendants et la suite {ak} est stationnaire. Il a donc paru intéressant de faire apparaître dans l'expression de Rxx(τ ) le terme ( ) qui s'annulera dans ce cas ( très courant) d'une source sans mémoire. D'autre part : Rgg(τ +nT) = Rgg(τ )*δ (t+nT) On obtient alors : Soit en prenant la transformée de Fourier : Cette formule est connue sous le nom de formule de "BENNETT". Dans le cas où la source est "sans mémoire" : Il est à remarquer que le deuxième terme de cette dernière formule "manque de rythme" grâce à la fonction ϖ1/T(f) qui représente les raies spectrales d'horloge. Aussi une condition nécessaire pour que l'horloge soit implicite dans x(t) est que a ≠ 0. Cette condition n'est pas suffisante, il faut en plus que les 0 de Sgg(f) ne soient pas tous aux abscisses k/T, car Sgg(f) est facteur de la fonction peigne. 2.2. Propriétés requises: Le système de codage sert à attribuer à chaque symbole de la source un signal élémentaire xk(t).L'ensemble est donc un signal x(t) de DSP Sxx(f). Il peut être intéressant de choisir la fonction de codage ( donc le formant g(t)) de manière à donner à x(t) et/ou à Sxx(f) des propriétés particulières qui seraient utiles lors de la transmission sur le canal qui , rappelons- le, est déformant et bruyant à priori. Voici donc un certain nombre de propriétés requises qui sont explicitées et justifiées ensuite :
a : le spectre ne doit pas avoir de composantes continues b : le spectre doit être décroissant et tendre vers à aux basses fréquences c : le spectre doit avoir un support le plus étroit possible d : le spectre doit comprendre des raies à la fréquence d'horloge et à ses multiples e : le rythme d'horloge doit pouvoir être conservé à court terme f : le spectre instantané doit être proche du spectre théorique g : le signal doit posséder une redondance de manière à pouvoir tester sa vraisemblance h : le système de codage doit être simple Propriété a : le spectre ne doit pas avoir de composante continue, revient à dire que la valeur moyenne du signal doit être nulle ( en effet la transformée de Fourier inverse de x0.δ (f) est x0, valeur moyenne de x(t) qui s'écrit : x(t) = x0+x'(t) avec <x'(t)>=0.Cette propriété est utile car il est impossible de concevoir un canal de transmission sans aucun traitement électronique dès que la distance émetteur-récepteur dépasse quelques kilomètres. Or si un tel traitement existe ( amplification, génération, …) il est bien rare de ne pas trouver dans le système de traitement un condensateur série ou un transformateur en cascade… qui supprime la valeur moyenne. Propriétés b : cette propriété complète en fait la précédente. Un système de traitement est souvent affecté d'une fonction de filtrage de type "passe-haut", donc il existe une fréquence de coupure basse. Si la DSP est faible ( ou mieux nulle), en dessous de cette fréquence basse, peu d'information sera perdue et le signal sera donc peu déformé. Fig.12 :illustration de la propriété b Propriétés c : Le spectre doit avoir un support le plus étroit possible, car tout système de traitement possède, en plus d'une fréquence de coupure basse, une fréquence de coupure haute, au delà de laquelle il ne fonctionne plus correctement. Ainsi ce système de traitement se comporte-t-il comme un filtre passe-bande. Comme le montre le dessin ci-dessous, il y a donc une fréquence autour de laquelle on peut considérer que le système est parfait : module quasi constant de la fonction de transfert et phase quasi linéaire ( donc fonction quasi équivalente à un retard pur). On a donc tout intérêt à ce que le spectre soit le plus étroit possible et centré sur cette fréquence Fo.
Fig.13 :illustration de la propriété c. Propriétés d : cette propriété permet au signal numérique x(t) de posséder implicitement le signal d'horloge, condition nécessaire à une bonne récupération d'horloge au niveau du récepteur ( bloc "H-1" partie 1.1). Propriétés e : on prouve la propriété d précédente en analysant la DSP Sxx(f) : nous avons vu la condition pour que cette DSP contienne la fonction ϖ1/T (f ("raies d'horloge).Toutefois, la DSP résulte d'un calcul faisant intervenir une transformée de Fourier , soit donc une moyenne sur le temps. Il n'est ainsi pas évident que le système de récupération d'horloge qui fonctionne bien entendu en temps réel, puisse à chaque instant fournir un signal d'horloge synchrone avec les données, même si, "en moyenne", il existe spectralement ces raies d'horloge. Le dessin suivant montre un contre exemple. Ainsi, cette propriété sera satisfaite si le signal numérique x(t) présente assez souvent des transitions de niveaux, synchrones avec l'horloge, l'idéal étant bien entendu qu'il y ait au moins une transition par symbole.
Fig.14 : contre-exemple Propriété f : il s'agit du même type de préoccupation que pour la propriété précédente, mais cette fois pour le signal x(t) lui-même. En effet on vérifiera les propriétés a, b, c et d sur Sxx(f) alors que le traitement du signal x(t) s'effectue en temps réel. Il faudrait donc s'assurer qu'à chaque instant, le "spectre instantané" réponde aussi à ces propriétés. Le spectre instantané est celui qu'affiche les " analyseurs de spectres" et peut être défini par : Il faut donc vérifier que X(f,to,∆ t) ≈ X(f) ∀ to, à ,∆ t donné. C'est une notion de stabilité de spectre. Ceci peut s'approcher par la vérification de la stabilité du signal x(t), c'est à dire que l'allure de x(t) ne dépend pas de la séquence des " ak ".
Fig. 15 : illustration de la propriété f. Les signaux "α " et "β " ne répondent pas à cette propriété, "γ " y répond. Propriété g : il s'agit de s'assurer à la réception que le signal reçu est "vraisemblable", ie qu'il correspond bien aux règles édictées par le codeur. Le but est de faire une simple détection de défaut et non pas de remplacer le système de détection-correction d'erreurs, beaucoup plus performant et basé sur la vraisemblance du message et non du signal. Cette propriété est tout à fait facultative. Elle se base en règle générale sur des alternances de valeurs. Propriété h : Sans commentaire! Sauf que le codeur et le décodeur doivent fonctionner en temps réel même pour des débits élevés, donc on n'a pas le temps de réaliser des opérations très complexes. Nous allons à présent illustrer par un catalogue non exhaustif de codes employés dans la pratique. Nous indiquerons à chaque fois la valeur de la rapidité de modulation et la satisfaction ou non aux propriétés énoncées plus haut. Une propriété p non satisfaite sera notée et presque satisfaite . On noteta toujours T la période d'horloge, donc 1/T est le débit brut. Les symboles seront binaires ak=0 ou 1. 2.3. Codes de voie bivalents. 2.3.1. Code NRZ ( Non Return to Zero). C'est un code antipolaire de niveau. Propriétés : R=D=1/T Essentiellement codage simple Il existe un code NRZ unipolaire, c'est la représentation électrique binaire classique (0;+5V), mais alors : Efficacité spectrale modem : 1 bit/s/Hz 2.3.2. Code NRZI ( Non Return to Zero Inverted) C'est un code antipolaire de transition
Propriétés : R=D=1/T Remarque : b est vérifiée a condition que P(0) = P(1), pas de très longues suites de 0 2.3.3. Code RZ ( Return to Zero ) C'est un code unipolaire. Propriétés : R=2D=2/T Remarque : e est vérifiée si P(1) > P(0). Essentiellement codage destiné à assurer une bonne restitution de l'horloge, le signal R2 est autoporteur de son horloge 2.3.4. Code Biphase ( ou "Manchester") C'est un code antipolaire. H est ici antipolaire. R=2D=2/T Propriétés : R=2D=2/T Essentiellement codage destiné à régler le problème de la transmission aux basses fréquences. Efficacité spectrale : 0.5 bit/s/Hz 2.3.5. Code FM ( Frequency Modulation), de Miller
Code FM: Ceci fait qu'une suite de "1" entraîne un signal de fréquence instantanée égale à la fréquence d'horloge, alors qu'une suite de "0" un signal de fréquence instantanée égale à la moitié de la fréquence d'horloge; d'où le nom donné à ce code. Code MFM ( Modified FM) ou code de Miller : Idem au code FM sauf que l'on supprime la transition initiale pour les "1", ainsi que celle pour un "0" qui suivent immédiatement un "1". Le but est de diminuer en valeur instantanée la rapidité de modulation. Code M2FM ou code de Miller 2 Idem au code MFM sauf que l'on supprime une fois sur deux la transition initiale pour une suite de "0". Cette procédure de modification a pour but de "ralentir" les variations du signal et de resserrer le spectre, ainsi on obtient les propriété suivantes : Propriétés : R=2D=2/T 2.3.6. Code CMI ( Coded Mark Inversion). C'est un code antipolaire à mémoire Il est autoporteur de l'horloge et introduit la notion de redondance ( deux valeurs différentes +/- V pour un symbole) Propriétés : R=2D=2/T 2.3.7. Code Biphase Différentiel.
C'est un code de type biphase dans lequel le signal élémentaire reste identique à lui-même si "0" et s'inverse si "1". L'intérêt d'un tel code est de s'affranchir de la phase de la l'horloge. En effet, d'après la définition du code Biphase, le signal élémentaire est comparéà H ou respectivement de la valeur "0" ou "1". Si le système de récupération d'horloge permet de constuire un signal H synchrone avec le message, il peut substituer une erreur de phase, voire une inversion de celle-ci, ce qui entrainerait alors une inversion 0/1. Le code différentiel se référant au symbôle précédant s'affranchit d'un tel problème, une fois que le 1er symbole est décodée de façon certaine.( Ceci est réalisée par une séquence d'en-tête particulière dite de "synchronisation" par exemple 10000001). pour décider 2.3.8. Codes suffixés "M" ou "S". Il s'agit des codes NRZ-M, NRZ-S, Biphase-M, Biphase-S en particulier. Ces notations sont anciennes et signifient "M" = Mark, soit "1"; "S" = Space, soit "0". Ce sont des codes de transition. NRZ-M : NRZ-S: Rôles inversés pour "0" et "1" Biphase-M: Transition systématique en t=0 puis : Biphase-S: Rôles inversées pour "0" et "1". 2.3.9. Quelques exemples de spectres :
Fig 16 : exemples de spectres. 2.4. Codes de voie trivalent {ak}={0,1}.
On décrit deux codes trivalents bipolaires à symboles binaires. 2.4.1. Code AMI ( Alterned Mark Inversion). Propriétés : 2.4.2. Code HDB3 ( High Density Bipolar). Idem à l'AMI, sauf pour une suite de plus de 3 zéros. Le 4ème zéro éventuel est alors substitué, en le représentant comme un 1 mais en violant la règle d'alternance des signes ( on note 0000 -> 000V). Afin de conserver une valeur moyenne nulle au signal, on est amené à alterner la polarité des "viols", ce qui peut entraîner ( et cela est systématique pour une très longue série de 0", l'emploi d'une autre substitution, de même polarité que le viol et placé en tête de groupe des 4 symboles 0 terme dit de bourrage ( 0000 -> B00V). On distingue le HDB3-NRZ et le HDB3-RZ suivant que les "1" sont respectés respectivement par un niveau ≠ 0 durant T ou T/2. Propriétés : Nota : Ce code ne contient pas d'horloge explicitement, mais la procédure de codage est telle que, quelque soit le contenu du message, on trouve un nombre important de transitions en début de symbole ( cas HDB3-NRZ). De plus HDB3-RZ redressé double alternance est similaire à un code RZ, qui est autoporteur d'horloge, ce qui permet de modifier un peu les propriétés énoncées plus haut : . Ceci montre le grand intérêt de ce code. 2.5. Codes à transformation de valence. Le but est ici de diminuer la rapidité de modulation, sans modifier le débit binaire de la source. On réalise pour cela une transformation de valence ( séquence à valence 2 -> séquence plus courte à valence >2). On les appelle aussi " codes arithmétiques". La condition de faisabilité est que le nombre de possibilité de séquences de valence >2 soit supérieur ou égal au nombre de possibilités de séquences de valence 2. Le code sera désigné par nBmX ce qui signifie qu'à n éléments binaires on fera correspondre (pas nécessairement de façon unique) m éléments d'un alphabet X-aire. La condition de faisabilité s'écrit :
Xm≥ 2n Nous allons détailler deux codes employés dans la pratique 4B3T et 2B1Q. 2.5.1. Code 4B3T. Séquence de 4 symboles binaires <-> Séquences de 3 symboles ternaires 24=16 < 27=33 La séquence 3T sera codée sous forme bipolaire (+V,0,-V). Compte tenu du nombre de possibilité, il est possible d'affecter à certaines séquences 4B plusieurs séquences 3T. Le but recherché est d'assurer une valeur moyenne à court terme la plus faible possible, toujours pour permettre une bonne transmission sur le canal. Le critère de choix est d'approcher 0 pour la valeur de la somme cumulée [DIGITAL SUM VALUE :DSV] . Pour cela, on affecte respectivement les valeurs +V,0,-V. On calcule alors, pour chaque nouvelle séquence, la somme de toutes les valeurs rencontrées depuis le début de la transmission ( ou tout au moins de la trame considérée) Voici à titre d'illustration un tableau de codage 4B3T en notant "+", "0" et "-V". On note Σ0 la somme locale qui sera ajoutée à la somme cumulée précédente. ?0 Séquences Séquences 4B4B Séquences 3T 1ère ou seule solution 2ème solution 0000 +++ --- +/- 3 0001 --0 ++0 +/- 2 0010 --+ ++- +/- 1 0011 -0- +0+ +/- 2 0100 -00 +00 +/- 1 0101 -0+ 0 0110 -+- +-+ +/- 1 0111 -+0 0 1000 -++ +-- +/- 1 1001 0-- 0++ +/- 2 1010 0-0 0+0 +/- 1 1011 0-+ 0 1100 00- 00+ +/- 1 1101 0+- 0 1110 +-0 0
1111 +0- 0 EXCLUS 000 Il n'y a bien sûr qu'une seule solution proposée si ?0=0. Si ?0 est différent de 0, les deux solutions donnent deux résultats opposés. version du 21/05/99