23
Ann´ ee 2015-2016 Camille LEROUX Electronique Num´ erique EN 218 Fili` ere : TELECOM 2 eme ann´ ee Semestre : 7 Septembre 2015 Bascules D Flip-Flop Exercice 1 : Le verrou D : ”D-Latch” La structure d’un D-latch CMOS est donn´ ee en figure 1. Ce latch contient deux interrupteurs (T1, T2) et deux inverseurs (I1, I2). Le signal de commande E* est obtenu par inversion de E (inverseur I3). Figure 1: D-LATCH en technologie CMOS Question 1 En consid´ erant des temps de commutation nuls (t p temps de propagation, t r temps de mont´ ee et t f temps de descente), compl´ eter les chronogramme de la figure 2. ´ Etablir la table de transition de ce latch. Question 2 ´ Elaborer un latch avec une remise ` a z´ ero prioritaire (reset). Exercice 2 : La bascule D : ”D-Flip-Flop” La figure 3 repr´ esente une structure maˆ ıtre-esclave de la bascule D constitu´ ee de deux D-latch mis en s´ erie. Question 1 Compl´ eter les chronogrammes de la figure 4 (t p = t r = t f = 0) et ´ etablir la table de transition de la bascule D. Question 2 Modifier la structure de la bascule D pour disposer d’une remise ` a z´ ero asynchrone. 1

Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

  • Upload
    ngonhan

  • View
    285

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Annee 2015-2016 Camille LEROUX

Electronique Numerique

EN 218

Filiere : TELECOM 2eme annee Semestre : 7

Septembre 2015

Bascules D Flip-Flop

Exercice 1 : Le verrou D : ”D-Latch”

La structure d’un D-latch CMOS est donnee en figure 1. Ce latch contient deux interrupteurs (T1, T2) et deuxinverseurs (I1, I2). Le signal de commande E* est obtenu par inversion de E (inverseur I3).

Figure 1: D-LATCH en technologie CMOS

Question 1 En considerant des temps de commutation nuls (tp temps de propagation, tr temps de montee et

tf temps de descente), completer les chronogramme de la figure 2. Etablir la table de transition de ce latch.

Question 2 Elaborer un latch avec une remise a zero prioritaire (reset).

Exercice 2 : La bascule D : ”D-Flip-Flop”

La figure 3 represente une structure maıtre-esclave de la bascule D constituee de deux D-latch mis en serie.

Question 1 Completer les chronogrammes de la figure 4 (tp = tr = tf = 0) et etablir la table de transition dela bascule D.

Question 2 Modifier la structure de la bascule D pour disposer d’une remise a zero asynchrone.1

Page 2: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Figure 2: Chronogramme D-latch a completer

Figure 3: Bascule D (D-Flip-Flop) maıtre-esclave

Question 3 Modifier la structure de la bascule D pour disposer d’une remise a zero synchrone.

Question 4 On boucle la sortie Q* sur l’entree D. Quelle fonction a-t-on realise ? A quelle frequence maximalepeut fonctionner un tel montage ?

Exercice 3 : Additionneur serie

Question 1 Rappeler l’architecture d’un additionneur a deux entrees de 4 bits en utilisant les fonctions debase de l’electronique numerique (portes logiques elementaires, full adder et multiplexeurs).

Question 2 On souhaite maintenant effectuer la meme operation avec un seul full adder. Proposer unearchitecture qui permette de realiser une telle structure. Quels sont les avantages et les inconvenients d’un tellearchitecture ?

2

Page 3: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Figure 4: Chronogramme bascule D (a completer)

3

Page 4: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre
Page 5: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Annee 2015-2016 Camille LEROUX

Electronique Numerique

EN 218

Filiere : TELECOM 2eme annee Semestre : 7

Septembre 2015

Les registres

Exercice 1 : QCM

Question 1: Chaque etage d’un registre a decalage represente une capacite de stockage de :

• un bit

• deux bits

• quatre bits

• huit bits

Question 2: Dans quel type de registre a decalage la sortie (Q ou Q*) d’un etage n’est pasconnectee a l’entree de l’etage voisine ?

• entree parallele / sortie serie

• entree serie / sortie parallele

• entree serie / sortie serie

• entree parallele / sortie parallele (registre tampon)

Question 3: Soit un registre a decalage de 8 bits a entree serie / sortie parallele. Si ce registrene dispose pas d’une entree RAZ (remise a zero), combien de cycles d’horloges sont necessairespour qu’un zero applique a son entree garantisse une telle reinitialisation ?

1

Page 6: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

• 1

• 7

• 8

• 9

Question 4: Soit un registre a decalage de 4 bits a entree parallele / sortie serie. Si un mot (de4 bits) a ete charge dans ce registre, combien de cycles d’horloges sont necessaires avant que lepremier bit du mot charge apparaisse sur la sortie ?

• 0

• 1

• 2

• 3

Question 5: Avec une frequence d’horloge de 200 kHz, huit bits peuvent etre charges sequentiellementdans un registre a decalage en :

• 4 µs

• 40 µs

• 400 µs

• 40 ms

Question 6: Un registre a decalage de 8 bits a entree serie / sortie serie est utilise avec unefrequence d’horloge de 2 MHz pour realiser un retard de temps de :

• 16 µs

• 8 µs

• 4 µs

• 2 µs

Question 7: Quand un registre a decalage de 8 bits a entree serie / sortie serie est utilise pourrealiser un retard de temps de 20 ?s, la frequence d’horloge doit etre reglee a :

• 40 KHz

• 50 KHz

• 400 KHz2

Page 7: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

• 500 KHz

Question 8: Un registre a decalage de 8 bits, a entree serie / sortie parallele, est declenche parune horloge de 4 MHz pour retarder un flux de donnees numeriques sequentielles de 1,25 µs.Quelle est la sortie qui assure ce delai ?

• Q5

• Q6

• Q7

• Q8

Exercice 2 : Circuit arithmetiqueSoit le circuit synchrone suivant compose de bascules D et de multiplexeurs.

Question 1: Completez le chronogramme suivant.

Question 2: Quelle fonction arithmetique est realisee par ce circuit ? En vous appuyant sur lechronogramme, expliquez les etapes de fonctionnement du circuit.

Question 3: Modifiez le circuit pour que celui-ci effectue une division par une puissance de 2.

Exercice 3 : Linear Feedback Shift Register (LFSR)

Question 1: Soit les circuit de la figure 1. En supposant que les bascules D qui le composesont initialisees a la valeur ”0001”, decrivez l’evolution du contenu des bascules au cours dutemps. Quelle est la propriete de la sequence generee ?

Question 2: Meme question pour le circuit 2.3

Page 8: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Figure 1: Circuit 1

4

Page 9: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Figure 2: Circuit 2

5

Page 10: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre
Page 11: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

IPB ENSEIRB-MATMECA

Département Télécommunications

2ième Année - 2015/2016

EN218 - Architecture des systèmes numériques

Série de travaux dirigés sur le thème

LES COMPTEURS SYNCHRONES

Exercice 1 : Décompteur synchrone – synthèse

Question 1

Faire la synthèse d?un décompteur à cycle complet sur 3 bits. En déduire les équations

d?un décompteur modulo 2n.

Question 2

Faire la synthèse d’un décompteur binaire modulo 6 synchrone passant par les états (en

décimal) 5, 4, 3, 2, 1 et 0. Remarques ?

Question 3

Comment peut-on modifier ce décompteur pour lui ajouter une commande de remise à zéro

synchrone (statique) ?

Question 4

Proposer une modification de ce schéma, incluant une nouvelle entrée statique CE (Chip

Enable), autorisant ou inhibant le décomptage ou le chargement parallèle (blocage du compteur

dans l’état présent).

1

Page 12: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Exercice 2 : Analyse système synchrone

Soit le schéma suivant :

Question 1

A l’aide d’un chronogramme et en considérant Q0 = Q1 = Q2 = 0 à l’instant initial, donner

la fonction du montage ci-dessus.

Question 2

Quelle est la particularité du code engendré par les sorties Q0, Q1, Q2 des bascules?

Question 3

En remplaçant B1 par (n − 2) bascules connectées de manière identique, généraliser le

résultat de la première question.

Question 4

Que se passe-t-il si l’état initial est Q0 = Q2 = 0 et Q1 = 1 ? Comment peut-on modifier

ce montage pour retrouver le fonctionnement normal (sans utiliser les entrées prioritaires de

remise à zéro ou à un) ?

2

Page 13: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

IPB ENSEIRB-MATMECA

Département Télécommunications

2ième Année - 2015/2016

EN218 - Architecture des systèmes numériques

Série de travaux dirigés sur le thème

LES MACHINES À ÉTATS FINIS (FSM)

Exercice 1 : BUS et gestion périphérique

Deux cartes logiques C1 et C2 ont accès à un même bus B:

Carte

C1

Carte

C2

Bus

B

D1 D2

P1 P2

Chacune des deux cartes demande sa connexion au bus en activant une entrée D qui est main-

tenue à 1 jusqu’à la fin de l’utilisation du bus. Lorsque le bus établit la connexion avec l’une

des cartes, le signal P correspondant est activé. Ce signal reste à 1 pendant toute la durée

de la liaison. La carte qui a utilisé le bus en dernier n’est pas prioritaire en cas de demande

simultanée du bus. (à l’initialisation C1 est prioritaire)

Sachant qu’une demande de connexion doit être servie le plus rapidement possible, réaliser un

automate synchrone, dont les entrées sont D1 et D2 et les sorties P1 et P2, qui permet de gérer

l’accès au bus.

Question 1

Etablir un graphe d’états permettant de décrire le comportement de l’automate.

Question 2

Tracer les chronogrammes dans les deux cas suivants :

✓ Une demande de connexion de la carte C1 (D1=1, D2=0)

1

Page 14: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

✓ Deux demandes simultanées de connexion au bus (D1=D2=1)

Tous les signaux (horloge, entrées, sorties, état présent, état futur) de la machine à états finis

doivent être tracés.

2

Page 15: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Annee 2016-2017 Camille LEROUX

Electronique Numerique

EN 218

Filiere : TELECOM 2eme annee Semestre : 7

Novembre 2016

Implantation materielle de l’algorithme de Viterbi

Avertissement : Ce document n’a pas pour ambition d’expliquer de maniere exhaustive la theorie liee aucodes convolutifs et au decodage de Viterbi. L’objectif est ici de comprendre le fonctionnement du decodeur envue de son implantation materielle. Les personnes interessees par la theorie pourront se referer a [1][2].

1 Le codeur convolutif

Un codeur convolutif peut etre vu comme une machine sequentielle a etats finis, dont l’evolution est com-mandee par la suite des bits du message que l’on veut transmettre. A chaque cycle, une information est emisesur l’evolution de l’etat interne du codeur. Ces informations seront transmises, via un canal bruite, aurecepteur qui determinera a posteriori l’evolution du codeur la plus probable (au sens mathematique du terme)en fonction des symboles recus. En reconstituant ainsi l’evolution probable du codeur, le recepteur sera capablede retrouver la sequence des bits qui l’ont fait evoluer, c’est a dire le message a transmettre.

Le codeur etudie sera constitue d’un registre a decalage d’une profondeur de 3 bits (Fig. 1); le codeur pourradonc prendre 23 = 8 etats possibles. Nous pouvons naturellement representer l’etat du codeur par le contenude 3 bascules D, par exemple l’etat du codeur de la figure 1 sera note E011.

Figure 1: Codeur dans l’etat E011.

1.1 Diagramme de transition du codeur : le treillis

Nous allons tout d’abord etudier l’evolution de l’etat interne du codeur en fonction des bits a transmettre.Supposons que le codeur soit dans l’etat EABC a l’instant t. A l’instant t + 1, le codeur sera a l’etat E0AB sile bit suivant a transmettre est 0, ou a l’etat E1AB dans le cas contraire (Cf fig. 2). Nous pouvons caracteriser

1

Page 16: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Figure 2: Transition de l’etat E011 a l’etat E101.

graphiquement l’ensemble des transitions possibles du codeur par un diagramme de transition ou treillis, commeindique dans la figure 3.

Figure 3: Diagramme de transition du codeur convolutif.

Par definition, les etats du codeur seront appeles noeuds du treillis (que l’on notera toujours EABC et lestransistions entre deux noeuds successifs seront appeles branches. Dans notre exemple (codeur sur 3 bits), cesbranches sont au nombre de 16.

Remarque : Chaque noeud EABC est connecte aux noeuds E0AB et E1AB . Chaque noeud EABC est a commeantecedent les noeuds EBC0 et EBC1.

La suite des etats du codeur peut se caracteriser par un chemin dans le treillis representant les etats suc-cessifs du codeur. Reciproquement, a chaque chemin dans le treillis correspond une suite d’etats du codeur etdonc, une suite de bits a transmettre (Cf fig. 4). Il suffit donc au recepteur de reconstituer le chemindes etats du codeur dans le treillis pour determiner la suite des bits transmis.

1.2 Signature d’une transition

Le codeur calcule une caracteristique des transitions du codeur sur deux bits y1y2, comme indique dans lafigure 5. La transition E011 → E101 aura comme signature le couple y1 = 0, y2 = 1, ou, de facon abrege, Y01.Cette caracteristique sera transmise, via un canal bruite, au recepteur. Le tableau 1 donne de facon exhaustivel’ensemble des caracteristiques des 16 transitions possibles.

En partant de l’etat E011, la transmission des bits 1001 (Cf fig. 4) s’effectuera donc par la transmission descaracteristiques: Y01,Y01,Y01,Y00.

Le fonctionnement du codeur peut se definir comme un chemin dans un treillis. A chaque transition (cor-respondant a une information sur un bit), le codeur transmet une information redondante: la caracteristique dela transition (deux bits). Le rendement du codeur sera donc de 1/2.

2

Page 17: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Figure 4: Exemple de chemin dans le treillis.

Figure 5: Generation de la signature d’une transition.

2 Canal de transmission

La transmission des bits y1 et y2 s’effectue via un canal analogique bruite. A la sortie du canal, le demodulateurne prendra pas de decision definitive (0 ou 1) sur la signification du signal analogique recu, mais le quantifierasur huit niveaux (soit trois bits de quantification) comme indique dans le tableau 2.Nous parlerons de decision ”ponderee” ou ”souple” codee sur 3 bits.

En reception, nous recevons donc deux symboles y1 et y2 codes chacun sur trois bits. Nous pouvons representerl’ensemble des couples y1y2 et y1y2 possibles par un diagramme bidimenseionnel comme montre sur la figure 6.

A partir de cette representation bidimensionnelle, nous pouvons definir une distance entre les symboles recus y1y2et les caracteristiques des transitions possibles: Y00,Y01,Y10 et Y11. Ces distances seront appelees metriquesde branches et notees d(y1y2, Yy1y2

). On peut demontrer que les metriques de branches sont inversementproportionnelles a la probabilite Pr(y1y2|Yy1y2

), ce qui correspond a la notion intuitive de proximite. Le lecteurpourra trouver une justification theorique de cette propriete dans [2].Nous avons dans l’exemple de la figure 6:

d(y1y2, Y00) =√32 + 52 = 5.83

d(y1y2, Y01) =√

32 + (7− 5)2 = 3.61

d(y1y2, Y10) =√(7− 3)2 + 52 = 6.40

d(y1y2, Y11) =√(7− 3)2 + (7− 5)2 = 4.47

3

Page 18: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Etat initial Etat final Caracteristique Etat initial Etat final CaracteristiqueE000 E000 Y00 E001 E000 Y11

E010 E001 Y01 E011 E001 Y10

E100 E010 Y10 E101 E010 Y01

E110 E011 Y11 E111 E011 Y00

E000 E100 Y11 E001 E100 Y00

E010 E101 Y10 E011 E101 Y01

E100 E110 Y01 E101 E110 Y10

E110 E111 Y00 E111 E111 Y11

Table 1: Caracteristique des 16 transitions possibles dans le trellis.

Niveau du signal analogique Signification ”logique”000 0 fort001 0 moyen fort010 0 moyen faible011 0 faible100 1 faible101 1 moyen faible110 1 moyen fort111 1 fort

Table 2: Quantification du signal recu.

3 Decodeur de Viterbi

Le decodeur va proceder en calculant, pour chaque symbole recu, les chemins les plus probables dans le treillispermettant d’arriver a chacun des noeuds.

3.1 Principe de fonctionnement

Au depart, le decodeur ne connait pas l’etat dans lequel se trouve le codeur. Tous les noeuds sont equi-probables,on leur attribue une metrique de noeud, notee Mabc, nulle. Apres reception du premier symbole, il est pos-sible de commencer a faire des hypotheses sur la transition du codeur ayant conduit a l’emission du symbole recu.

Soit y1y2 = (011, 101) le symbole recu a t = 1. Examinons le noeud E000 et ses deux antecedents: E000 etE001.

La transition de E000 → E000 a comme caracteristique Y00. La metrique de cette branche sera donc d(y1y2, Y00) =5.83. De meme, la metrique de branche correspondant a la transition E001 → E000 sera d(y1y2, Y11) = 4.47. Ladeuxieme transition a la metrique la plus petite: c’est donc la plus probable. La nouvelle metrique de noeudde E000 sera 4.47 et la decision prise sera notee notee b (basse) pour indiquer que la branche basse arrivant aunoeud a ete selectionnee (Cf fig. 7). Dans le cas contraire, on notera la decision par h (haut).En procedant de meme pour chacun des noeuds, nous obtenons le treillis de la figure 8:Remarque : En attribuant le bit 0 a h et le bit 1 a b, nous pouvons reconstituer exactement l’evolution la plusprobable du codeur. En effet, si h (branche haute) est la decision du noeud a l’instant t alors son antecedentest EBC0, si la decision est b (branche basse), l’antecedent est EBC1.

Pour chaque symbole recu, le decodeur recommence le meme calcul en tenant compte des nouvelles metriquesde noeuds :

Soit y1y2 = (001, 110) le symbole recu a t = 2. Nous obtenons alors :

d(y1y2, Y00) =√12 + 62 = 6.08

d(y1y2, Y01) =√

12 + (7− 6)2 = 1.41

d(y1y2, Y10) =√(7− 1)2 + 62 = 8.48

d(y1y2, Y11) =√(7− 1)2 + (7− 6)2 = 6.08

Examinons le noeud E000 a t = 2 et ses deux antecedents : E000 et E001.

4

Page 19: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Figure 6: Reception de y1y2 = (011, 101).

Figure 7: Selection de la branche basse pour le noeud E000.

Transition E000 → E000 : M000(t = 1) + d(y1y2, Y00) = 4.47 + 6.08 = 10.55Transition E001 → E000 : M001(t = 1) + d(y1y2, Y11) = 3.61 + 6.08 = 9.69

La transition E001 → E000 a la metrique la plus petite, elle est donc selectionnee. La nouvelle metriquedu noeud E000 est 9.69 et sa decision a t = 2 est b. En procedant de meme pour chacun des noeuds, nousobtenons le treillis de la figure 9:

3.2 Le chemin survivant

Nous appelerons chemin survivant d’un noeud le chemin genere en partant du noeud et en remontant le treillis,en suivant systematiquement les branches seleectionnees rencontrees. Par exemple, dans la figure 9, a t=2, lechemin survivant du noeud E010 sera: 010 → 101 → 011.

Le chemin survivant d’un noeud est le chemin du treillis le plus probable (au sens ou il min-imise la distance entre la suite des signatures des transistions du chemin et la suite des symbolesrecus) permettant d’acceder au noeud.

Soit (3,5); (1,6); (4,7); (2,0); (2,7); (7,6); (1,7); (0,6); (7,2); (1,6); (2,3); (1,4) la suite des 12 premiers symbolesrecus -exprimes en decimal- par le decodeur. Le tableau 1 donne les metriques de noeud aux instants t = 1 ett = 12.A partir de t = 12, il ne reste qu’un seul chemin survivant entre les instants t = 1 et t = 7, cela nous permet deconnaitre les sept premiers bits transmis 1, 1, 0, 1, 0, 0, 1 (voir la figure 11.b).

On peut constater que les chemins survivants convergent vers un chemin unique avec une tres grande proba-bilite, apres une remontee du treillis sur une longueur L suffisamment grande (de l’ordre de 20 pour le decodeurconsidere). On peut demontrer que ce noeud de convergence est la meilleure des solutions en fonction des L

symboles suivants recus. Il s’agit de l’etat decode.

5

Page 20: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

Figure 8: Etat du treillis a t = 1.

Figure 9: Etat du treillis a t = 2.

Un chemin survivant est defini tres naturellement par la suite des decisions rencontrees lors de sa remonteedans le treillis. Par exemple, le chemin survivant issu du noeud E100 a l’instant t = 11 peut s’exprimer par lasuite des decisions: b,h,h,b,h,h,h,h,b,h,b (voir fig. 11.a. La figure 10 explicite le procede de reconstitution dece chemin survivant.

6

Page 21: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

(a) Chemins survivants a t = 11.

(b) Chemins survivants a t = 12.

Figure 10: Chemins survivants a t = 11 et t = 12.

7

Page 22: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

t = 1 t = 2 t = 3 t = 4 t = 5 t = 6 t = 7 t = 8 t = 9 t = 10 t = 11 t = 12E000 4.47 9.69 8.02 10.0 17.3 20.7 27.8 29.1 29.1 30.7 34.3 30.6E001 3.61 5.02 9.02 13.9 19.7 24.0 22.0 24.9 24.6 31.4 23.9 38.3E010 3.61 5.02 9.89 17.7 16.9 21.0 23.9 16.2 30.0 19.4 35.1 28.4E011 4.47 9.69 8.89 14.7 22.6 14.0 28.0 26.7 29.2 36.4 32.9 34.2E100 4.47 9.69 12.7 11.0 15.0 18.3 26.7 28.0 32.2 30.7 35.0 28.0E101 3.61 5.89 12.6 14.9 16.7 22.9 15.0 29.1 18.0 30.7 25.3 36.1E110 3.61 5.89 13.5 17.6 13.0 22.1 19.3 24.2 31.1 26.5 35.2 32.5E111 4.47 9.69 12.7 15.5 20.5 21.5 27.5 25.3 30.3 36.4 30.1 36.8

Table 3: Evolution des metriques de noeuds dans le temps.

t = 1 t = 2 t = 3 t = 4 t = 5 t = 6 t = 7 t = 8 t = 9 t = 10 t = 11 t = 12E000 b b b h h b h b b b h bE001 h h h b h h h h h h h hE010 b b b h b h b b h b b bE011 h h h b h h h h h b h bE100 h b h b h h h b b b b bE101 b b h h b h b b h b h bE110 h h b b h h h b b b h bE111 b h b h b b b h b b h b

4 Exercices d’applications sur l’algorithme

Les exercices suivants permettront de mieux comprendre le fonctionnement de l’algorithme de Viterbi.

Exercice 1

Soit {x0, x1, x2, x3, x4, x5, x6, x7, ...} = (10011010...) les premiers bits d’un message a transmettre:

1. Reconstituer le chemin dans le treillis

2. Quelle est l’influence du noeud initial ?

3. En partant du noeud E000, reconstituer la suite des caracteristiques a transmettre.

4. On suppose que le message code precedent est module par une BPSK. Determinez la sequence de symbolesmodules qui seront transmis sur le canal.

5. Le message code et module est transmis sur un canal a bruit blanc additif Gaussien (AWGN). Apresquantification (sur 3 bits) des symboles recus, on recoit les couples de valeurs suivantes:

(6, 3), (5, 2), (1, 7), (1, 0), (3, 6), (5, 4), (0, 6), (0, 4).

6. Determinez le ou les symboles qui ont ete suffisamment bruites pour introduire une erreur de transmission.

7. Pour les deux premiers couple de valeurs, calculez les metriques de branches associees.

8. Dessinez deux sections de trellis et reportez y les valeurs des metriques de branches

9. En supposant que les metriques de noeuds sont a 0 a t = 0, determinez la valeur des metriques de noeudsa t = 2.

10. Determinez sur le trellis les chemins survivants a t = 2

Exercice 2

A partir de la table des decisions des noeuds ci-dessous, retrouver le premier etat decode (on supposera que tousles chemins survivants ont converge)

8

Page 23: Figure 4: Chronogramme bascule D (a` compl´eter)cleroux.vvv.enseirb-matmeca.fr/EN218/TD/poly_TD_EN218.pdf · Exercice 1 : Le verrou D : ”D-Latch ... Un codeur convolutif peut ˆetre

t = 1 t = 2 t = 3 t = 4 t = 5 t = 6 t = 7 t = 8 t = 9 t = 10E000 b h h b h h b h h bE001 h b b b h h b b b bE010 h h h h h h h h b bE011 h b b h b h b b b hE100 h b b h h b h b h bE101 h b b b b h b b b hE110 h h h h h h h h h bE111 b h h b b h b b b h

Exercice 3

1. Que peut-on dire de l’evolution temporelle de la metrique d’un noeud ? Comment evolue la quantiteMin(t)=Minimum{Metriques de noeud a un instant t} en fonction du temps ?

2. Dans le cas d’une transmission sans bruit, que vaut Min(t) ?

3. Que peut-on dire sur la fonction D(t)=Max(t)-Min(t) ?

4. Trouver une borne a D(t).

5 Exercices d’applications sur l’architecture

Exercice 1 - Unite de calcul des metriques de branches

1. Determiner les equations du traitement qui doit etre effectue dans ce bloc (distance Euclidienne).

2. Proposer une architecture combinatoire

3. Proposer une architecture a base de memoires

4. On remplace les calculs de distance Euclidiennes par des distance de Manhattan, proposer l’architecturecorrespondante.

5. Sachant que y1 et y2 sont codes sur 3 bits, determiner quelle doit etre la precision des metriques debranches.

Exercice 2 - Unite de calcul des metriques de noeuds

1. Determiner les equations du traitement qui doit etre effectue dans ce bloc

2. Determiner la precision des metriques de noeuds.

3. Proposer une architecture pour cette unite de calcul.

4. Pour eviter tout debordement des metriques de noeuds, lorsque toutes les metriques depassent la valeurmediane (64), il faut soustraire la valeur 64 a chacune des metriques de noeuds. Proposer une fonctioncombinatoire qui permette de reechelonner les metriques.

Exercice 3 - Unite de calcul du chemin survivant

Proposer une architecture a base de registres et de multiplexeurs

References

[1] A.J. Viterbi ”Errors bounds for convolutionnal codes and an asymptotically optimum decoding algorithm”IEEE Transaction on Information THeory, Vol. IT-13 pp 260-269, Apr. 1967.

[2] ”Architecture VLSI pour le decodage Viterbi”, There de l’Ecole Nationale Superieure desTelecommunications, Juin 1991.

9