Electronique Numérique ELECTRONIQUE NUMERIQUE
|
|
|
- Jean-Claude Morneau
- il y a 9 ans
- Total affichages :
Transcription
1 Elecronique Numérique ELETRONIUE NUMERIUE EISTI Guy lmouzni
2 Elecronique Numérique. Préambule. Préambule ELETRONIUE NUMERIUE Différenes soluions élecroniques :. câblée : - avanage : rapidié - inconvénien : soluion figée. microprocesseur/microconrôleur : - avanage : souplesse - inconvénien : leneur/coû. ordinaeur embarqué : - avanage : souplesse - inconvénien : leneur/coû. FPG (VHDL) : - avanage : souplesse - inconvénien : coû Plan du cours. Logique combinaoire. Foncions logiques combinaoires basiques. Technologie (a. + b.td + c.tp) - lgèbre de Boole - Représenaion des foncions logiques - Minimisaion des foncions logiques - Maérialisaion des foncions logiques - Technologie 2. Logique combinaoire 2. pplicaions (2a. + 2b.TD + 2c.TP) - Les pplicaions direces (odeur / Décodeur / Transcodeur / Muliplexeur / Démuliplexeur / ircuis arihméiques) - Les Réseaux Logiques Programmables (ROM / PROM / PL-GL / PL-PLD / FGP / RM / SI) 3. Logique séquenielle. Foncions logiques séquenielles basiques (3a. + 3b.TD + 3c.TP) - Les bascules synchrones (RST /D /T / JK) 4. Logique séquenielle 2. pplicaions (4a. + 4b.TD + 4c.TP) - Regisre - ompeur - Séquenceur 5. Le langage VHDL. Le langage (6a. + 6b.TD + 6c.TP) - Elémens du langage / Uniés de concepion / Sous-programmes / Types de données / Déclaraions & Spécificaions / Insrucions séquenielles / Insrucions concurrenes / Généricié / ribus / Paqueage (7a. + 7b.TD + 7c.TP) Modélisaion / Synhèse - Modélisaion (Regisre & ddiionneur / icuis linéaires / uomae d éas finis / LU / RM / ROM) - Synhèse (ircuis combinaoires / ircuis synchrones) nnexe 6. ircuis Programmables. 7. Microprocesseur (5a. + 5b.TD + 5c.TP/Exam) - Maériel (chiecure / Séquencemen des insrucions / LU / Regisres / Pile) - Logiciel (ssembleur / Jeu d insrucions / Modes d adressage / dressage des périphériques / Inerrupions) - Inerfaces - Microconrôleur (chiecure / Sysème de développemen / Familles de microconrôleurs) nnexe. Insrucions VHDL nnexe 2. ompilaeur VHDL LTER Max+Plus nnexe 3. Daashees 8. Proje. ours (durée h).. TDs (durée 2 h).. TPs (durée 2 h) : ils comporen une parie simulaion ainsi qu évenuellemen une parie réalisaion..
3 Elecronique Numérique. Préambule Bibliographie [] R. iriau & al. «VHDL langage, modélisaion, synhèse» PPUR [2] J. uvray «Elecronique des signaux échanillonnés e numériques» Dunod [3] G. Baudouin/F. Virolleau «Les processeurs de raiemen de signal: famille 325» Dunod [4] B. Beghyn «Le microconrôleur 68H» Hermès [5] Diesche/Ohsmann «Manuel des microconrôleurs 832/85/8535» Publironic [6] M. Gindre / D. Roux «Elecronique numérique» McGraw-Hill [7] R.D. Hersch «Informaique indusrielle: microprocesseurs/emps réel» PPUR [8] H. Lilen «Microprocesseurs : du IS au RIS» Dunod [9] E. Marin/J.L. Philippe «Ingénierie des sysèmes à microprocesseurs» Masson [] M. Meaudre J. Weber «VHDL du langage au circui, du circui au langage» Masson [] B. Mion «Inerfaces e bus microprocesseurs 68/687» Menor sciences [2] B. Mion «Microprocesseur 68» Menor sciences [3] B. Odan «Microconrôleurs 85/852» Dunod Tech [4]. Tavernier «Microconrôleurs» Radio [5] R.L. Tokheim «Les microprocesseurs» Série Schaum PPUR : Presses Polyechniques e Universiaires Romandes.
4 Elecronique Numérique. Logique combinaoire. Inroducion. LOGIUE OMBINTOIRE L élecronique logique ( élecronique numérique) me en jeu des signaux binaires (n ayan que 2 éas possibles) appelés bis e noés (éa logique bas) e (éa logique hau). Sysème logique p enrées Sysème Logique m sories e i s p m j i p j m Sysème logique combinaoire l insan discre n, une sorie e n s j, noée s n j, d un sysème logique combinaoire ne dépend que de ses enrées n,..., ep au même insan : (la seule connaissance des enrées suffi à déerminer les sories) n n n sj = f ( e,..., ep ) ( j m) Enrées logiques n ei e i i p p Sysème Logique ombinaoire m Sories logiques n s j s j j m Sysème logique séqueniel n n n l insan discre n, une sorie s j d un sysème logique séqueniel dépend de ses enrées e,..., ep mais aussi de n n l éa anérieur des sories ( s,..., sm ) qui peuven êre considérées comme des enrées secondaires, alors que les n n enrées e,..., ep son appelées primaires. (Noion de mémoire, car les sysèmes séqueniels son bouclés, ou encore récursifs) : (la seule connaissance des enrées (primaires) ne suffi pas à déerminer l éa des sories) n n n n n s = f ( e,..., e, s,..., s ) ( j m) j p m Enrées logiques n e i i p n s j Sories logiques anérieures p Sysème Logique Séqueniel m m 2 Sories logiques n s j j m m = m + m 2 Logique combinaoire. lgèbre de Boole.. Opéraeurs Fondamenaux (ET, OU, NON) En algèbre de Boole, une variable, ou une foncion, ne peu prendre que deux valeurs binaires que l'on noe symboliquemen e. l aide de variables binaires (donc à 2 éas) on peu néanmoins décrire des variables ayan un plus grand nombre d éas, en consiuan ces dernières comme des mos binaires. Un mo binaire es une associaion de variables binaires. insi un mo consiué de m bis ou variables binaires peu décrire 2 m combinaisons logiques. Ex: Mo binaire M formé de m = 3 variables logiques binaires a2, a, a M = a2 aa peu prendre 2 3 = 8 valeurs..
5 Elecronique Numérique. Logique combinaoire On défini les opéraeurs fondamenaux : (dans ou ce qui sui, x, a, b, c... représenen des variables binaires (bis)) qui vau si x = a) Le complémen ( opéraeur NON (NOT)) x de x qui vau si x = Un opéraeur peu êre associée à une représenaion géomérique issue de la héorie des ensembles que l'on appelle diagramme de Venn (ou d'euler) : a = a = a = b) La somme logique ( opéraeur OU (OR)) de deux variables booléennes. e opéraeur es noé par le signe + (mais aussi par le signe ou encore ) a+ b = si a ou b (ou les deux) vau e a + b = sinon. a+ b a b a b Le signe + n'a pas ici la significaion habiuelle, il es éviden en effe qu'en algèbre de Boole : + = Si une ambiguié peu exiser, il vau mieux alors uiliser la noaion usuelle de la héorie des ensembles : a b. On considère un plan dans lequel on délimie une région où la variable a vau e une aure région dans laquelle b vau. La somme logique a pour valeur dans la surface formée par la réunion des deux régions précédenes : a = b = a + b = c) Le produi logique ( opéraeur ET (ND)) de deux variables booléennes : e opéraeur es noé par le signe (mais aussi par le signe ou encore ou même pas de signe) a b = si a e b valen e a b = sinon. a b a b a b ab Le diagramme de Venn correspondan condui à écrire a b : a = b = a b =. 2
6 Elecronique Numérique. Logique combinaoire.2. Propriéés des opéraions logiques élémenaires ET, OU, NON a) Elémen neure : b) Elémen absorban : c) omplémen : a+ = a a = a a + = a = ( a) = a a+ a = a a = d) Idempoence : a+ a = a a a = a Les opéraions d'addiion e de muliplicaion logiques on les propriéés des opéraions de même nom en arihméique classique : commuaivié, associaivié, disribuivié : e) ssociaivié : f) ommuaivié : ( ) ( ) ( ) ( ) a+ b + c = a+ b+ c = a+ b+ c a b c = a b c = a b c a+ b = b+ a a b = b a g) Double disribuivié : ( ) ( ) ( ) ( ) a b+ c = a b+ a c (Disribuivie de par rappor a + ) a+ b c = a+ b a+ c + (en arihméique classique, on n a que la disribuivié de par rappor à + ) Parmi les relaions simples les plus uilisées nous cierons les relaions suivanes : h) bsorpion : a+ a b = a a ( a+ b) = a a+ a b = a+ b x a+ x a = x () ( 2) () 3 ( 4) Explicaions : a+ a b = a + b = a = a () : ( ) car : ( + b = ) (2) : a ( a+ b) = a a+ a b = a+ a b (e relaion précédene) (3) : a + a b) = ( a + a) ( a + b) (4) : x a + x a = x ( a + a) = x = x (Disribuivie de par rappor a ) ( (double disribuivié) a + a b) = ( a + b) = a + b (. : ee relaion es imporane car elle perme l'éliminaion d'une variable.. 3
7 Elecronique Numérique. Logique combinaoire.3. Les héorèmes de De Morgan Il définissen les relaions enre l'opéraion complémen e les deux aures opéraions de base (OU e ET). a+ b = a b généralisable à n variables a b = a+ b Le complémen d'une somme es égal au produi des complémens des ermes. Le complémen d'un produi es égal à la somme des complémens des ermes. es héorèmes peuven êre monrés à l aide des diagrammes de Venn ou encore des ables de vérié (cf. plus loin)..4. Principe de dualié Une équaion logique rese vraie si on remplace + par e par e réciproquemen. Ex. : a + b = b + a a b = b a ure exemple : a + = a =.5. ures foncions élémenaires de deux variables Les rois foncions précédenes suffisen à elles seules à effecuer oues les opéraions. On défini cependan quelques foncions annexes. a) Le OU exclusif (OR) La foncion aorb es noée a b. a b vau si a ou b vau, mais pas les deux à la fois: a b = a b = sinon. On a bien évidemmen la relaion : a b = a b. si a = e b = si e ou si a = e b = a b peu évidemmen s'exprimer à parir des opéraions élémenaires : a b = a b+ a b. pplicaion : crypographie On a les propriéés : x x = x x = x = x x = x x a a = x = x Soi à cryper la donnée x. La clé de crypage e de décrypage es a. L algorihme de crypage/décrypage es le OU exclusif enre la donnée e la clé de crypage/décrypage (ee méhode bien connue présene la paricularié d uiliser la même clé ainsi que le même algorihme pour le crypage e le décrypage). à cryper x clé a crypage x a décrypage x a a = ( ) x Le OU exclusif de deux variables a, b radui l'inégalié de ces deux variables. La foncion inverse, raduisan l'égalié, es la coïncidence, noée. : a. b = a b a. b = a b+ a b car : a b = a b+ a b = ( a+ b) ( a+ b) = a a+ a b+ a b+ b b = a b+ a b On a bien évidemmen la relaion : a. b = a. b. Le symbole uilisé pour le OU exclusif es idenique à celui désignan en arihméique une addiion modulo 2, il s'agi = = = = en effe de la même opéraion :. 4
8 Elecronique Numérique. Logique combinaoire b) Les foncions NOR e NND La foncion NOR es le complémen de OU (NOR NO OR) : a NOR b = a+ b (enre 2 variables a e b) On la noe souven simplemen : a NOR b On rouve parfois la noaion suivane inroduie par PIERE : a b La foncion NND (NO ND) es le «ET complémené» : a NND b = a b (enre 2 variables a e b) On la noe souven simplemen : a NND b On rouve parfois la noaion inroduie par PIERE : a b ou encore la noaion : a/ b La combinaison de ces diverses opéraions logiques enre plusieurs variables consiue ce que l'on appelle les foncions logiques. Par exemple, la foncion logique de 3 variables : f = f ( a, b, c) = a+ b c+ a b c.6. Représenaion des foncions logiques a) Diagramme de Venn 'es la représenaion issue de la héorie des ensembles. Ex. : a. b = a = b = b) hronogramme 'es la représenaion de la foncion logique en foncion du emps pour diverses valeurs des variables d'enrée. Ex. : a b a.b c) Table de vérié 'es le ableau des valeurs de la foncion pour oues les valeurs possibles des variables d'enrée. Ex. : Foncion NOT a a. 5
9 Elecronique Numérique. Logique combinaoire Foncion OR Foncion ND Foncion NOR Foncion NND Foncion OU exclusif Foncion oïncidence a b a + b a a a.b a b a NOR b a b a NND b a b a b a b a. b d) Diagramme de Karnaugh 'es une forme pariculière de la able de vérié. Le diagramme de Karnaugh se compose d'un recangle divisé en 2 n cases, n éan le nombre de variables de la foncion considérée. Dans chacune de ces cases les variables on une valeur déerminée e on y place un ou un suivan la valeur correspondane de la foncion. L'ordre des variables en abscisse e ordonnée es el que lorsque l'on passe d'une case à la case adjacene une seule variable es modifiée. 2 cases son adjacenes si elles son voisines vericalemen, horizonalemen ou en coin, mais oujours de elle sore qu une seule variable d enrée es modifiée lorsque l on passe d une case à une case adjacene.. 6
10 Elecronique Numérique. Logique combinaoire Diagramme de Karnaugh à 2 variables a, b. (2 2 = 4 cases) a b ici a = b = ici a = b = Représenons la foncion OU exclusif : s= a b sur ce diagramme : s b a s= a b = si si ou si a = e b = a = e b = e son les 2 cases suivan la 2 ème diagonale. Diagramme de Karnaugh à 3 variables a, b, c a bc a bc de ( 2 3 = 8 cases, il fau uiliser un recangle ayan par exemple 4 lignes e 2 colonnes, mais on peu prendre aussi 2 lignes e 4 colonnes. On remarquera que de la deuxième à la roisième ligne on passe de ( ) à ( ) e non ) à ( ) de façon à ne modifier qu une variable à la fois (code Gray). La foncion s= ab+ ca don la able de vérié es : a pour diagramme de Karnaugh : a b c ab ca s. 7
11 Elecronique Numérique. Logique combinaoire s a bc Diagramme de Karnaugh à 4 variables a, b, c, d (2 4 = 6 cases). On reombe sur un carré. ab cd a = b= b= a = b= b= ab cd c = d = d = c = d = d = L'ordre des variables es le même que le précéden : Exemple : s= abcd + abc On pourra, en éablissan la able de vérié, monrer que le diagramme de Karnaugh es celui ci : s ab cd Diagramme de Karnaugh à 5 variables a, b, c, d, e Lorsque l'on passe d'une case d'un diagramme de Karnaugh à la case adjacene, une seule variable es modifiée. vec 5 variables, il fau que chaque case soi adjacene à 5 cases ce qui n'es pas possible dans une représenaion plane. Il fau faire appel à un volume à 2 5 = 32 cases cubiques que l'on peu remplacer par un double ableau carré :. 8
12 Elecronique Numérique. Logique combinaoire e = e = cd ab ab ab cd cd ases adjacenes e = e = son La commodié d'emploi es alors rès réduie car il es plus délica de repérer deux cases adjacenes.. La siuaion es encore pire avec 6 variables où il fau ravailler avec un cube ou 4 ableaux carrés. u delà de 6 variables aucune représenaion n'es possible e il faudra faire appel à d'aures procédés (logiciel de minimisaion). Les diagrammes de Karnaugh permeen comme nous allons le voir de simplifier rès facilemen des foncions booléennes complexes. u delà de 5 variables des méhodes algébriques peuven oujours les remplacer mais beaucoup moins souples e d'un inérê conesable. e) Forme canonique Toue foncion logique peu êre mise sous forme canonique : - comme une somme de minermes ou encore, - comme un produi de maxermes. On appelle minerme ou foncion unié de n variables un produi de ces n variables ou de leur complémen. Par exemple B D es un minerme des 4 variables, B,, D mais D n'en es pas un, car il manque la variable B. Une foncion boolénne de p variables es décrie comme une somme canonique si elle es mise sous la forme d'une somme de minermes de ces p variables. On défini égalemen un produi canonique qui es le produi de sommes conenan chacune oues les variables. ( B + + D)( + B + + D )( + B + + D) + es un produi canonique des 4 variables, B,, D. On remarque que chaque parenhèse es un maxerme (complémen d'un minerme). Ex : + B + + D = B D Les diagrammes de Karnaugh permeen rès facilemen de mere une foncion logique sous canonique car chaque minerme correspond à un dans une seule case du diagramme. forme d'une somme.7. Minimisaion ( simplificaion) des foncions logiques Pourquoi simplifier une foncion logique? Pour donner lieu à une réalisaion maérielle la plus simple possible mean en jeu un nombre minimal de circuis logiques e de signaux logiques..7.. Méhode algébrique Uilisaion des propriéés des opéraions logiques élémenaires e des héorèmes de De Morgan. La mise en équaion d'un problème de logique peu conduire à une foncion boolénne assez complexe pouvan, par des opéraions algébriques simples, se mere sous une forme beaucoup plus condensée.. 9
13 Elecronique Numérique. Logique combinaoire Soi par exemple, la foncion logique : S= { + { B+ { B+ { D+ BD+ { + { B 23 2 En groupan les ermes 2 e 4: B+ D= ( B+ D) = BD en ajouan 5: BD+ BD= ( BD+ BD) = (8) il rese: S = { + { B+ { + { B+ { mais: 6 ( ) + + = + = il rese: S = { + { B+ { B 8 3 mais encore: 8, erme idenique à 8 donc inuile ( + = ) = ( + B) = 7 donc finalemen : S = + B (résula qui serai obenu aussi en faisan 3 + 7= B ) De façon générale de rès nombreuses foncions logiques son suscepibles d'êre simplifiées mais la forme la plus compace n'es pas oujours rouvée immédiaemen car la voie de simplificaion algébrique la plus rapide n'es pas évidene. Dans le cas de 5 variables au plus, les diagrammes de Karnaugh permeen d'effecuer cee simplificaion «auomaiquemen» Méhode graphique : Diagramme de Karnaugh La méhode de simplificaion de Karnaugh consise à mere à profi la relaion : x+ x= x pour donner une expression simplifiée de la foncion à l aide des opéraeurs fondamenaux. On recherche les ermes ne différan que par un seul faceur qui apparai complémené dans le premier e non complémené dans le second. es deux ermes s'ils fon parie d'une somme canonique corresponden dans le diagramme de Karnaugh à deux placés dans des cases adjacenes. On forme alors ce que l'on appelle une boucle d'ordre 2. Remarquons que deux cases doiven êre considérées comme adjacenes si l'on passe de l'une à l'aure en ne modifian qu'une seule variable, ce qui es le cas de deux cases placées réellemen côe à côe, mais aussi aux deux exrémiés d'une ligne. La simplificaion se fera en regroupan les en boucles d'ordre 2, 4, 8, ec... ordre 2 n. ases adjacenes Soi la foncion logique : S = B D + BD + B D + BD case S = B D + BD par la méhode algébrique..
14 Elecronique Numérique. Logique combinaoire a) Boucles d'ordre 2 S B D On peu former deux boucles aves les cases adjacenes 7 - e 2-4. La boucle 7 - donne un erme BD : en effe la variable qui change en passan d'une case à l'aure s'élimine : BD + BD = BD( + ) = BD La boucle 2-4 donne BD, donc : = + ou : S = B( D + D ) = B( D) S B D B D Les boucles d'ordre 2 fon disparaîre variable dans les minermes de la foncion. ee variable es celle qui varie dans ces boucles les variables resanes son celles qui son consanes dans ces boucles. Si on veu écrire e simplifier S, ous les du ableau doiven êre groupés en boucles (avec des boucles compan le plus grand nombre de ermes possibles, les boucles pouvan évenuellemen se recouper, du fai de la propriéé : x + x = x ) ou si ce n'es pas possible, compés individuellemen. b) Boucles imbriquées Soi la foncion logique : S= B D+ BD+ BD case 7 Deux boucles son possibles 7 - ou -, elles on la case en commun mais on peu appliquer la règle précédene comme si ces boucles éaien disjoines. En effe S ne change pas si on dédouble un de ses ermes. S= B D+ BD+ BD+ BD boucle 7 - boucle - B D BD BD S B D B D = BD + = + ( ).
15 Elecronique Numérique. Logique combinaoire c) Boucles d'ordre 4 Supposons que deux boucles d'ordre 2 soien adjacenes. Par exemple : 6-7 e - soi : BD+ BD+ BD+ BD 6 7 Les deux résulas peuven de nouveau se combiner e disparaî : Les quare cases ainsi groupées formen une boucle d'ordre 4 : B D + B D B D + B D = B D B D BD Une boucle d'ordre 4 n'es pas forcémen carrée. Par exemple : B D B Elle peu êre écarelée enre les deux bords ou même enre les quare coins : B D BD Elle peu êre en parie commune avec une boucle du deuxième ordre comme ci-dessous : S B D B D qui pourrai s'écrire : S= B D+ B D+ B D+ B D+ B D = D+ B Les boucles d'ordre 4 fon disparaîre 2 variables dans les minermes.. 2
16 Elecronique Numérique. Logique combinaoire d) Boucles d'ordre 8 Si deux boucles d'ordre 4 son adjacenes, on peu former une boucle d'ordre 8 pour laquelle rois variables disparaissen. Les deux boucles d'ordre 4 : ( ) e ( ) donnen : B + B = B : B D Elles son adjacenes e formen une boucle d'ordre 8 où seule la variable B es conservée. Les boucles d'ordre 8 fon disparaîre 3 variables dans les minermes. e) Boucles d'ordre 2 n Les boucles d'ordre 2 n regroupen 2 n variables e fon disparaîre n variables dans les minermes de la foncion. De façon générale, on a inérê à effecuer les plus grands regroupemens possibles ( boucles d'ordre le plus élevé) pour simplifier au maximum la foncion. f) Foncions Booléennes (ou φ ) Il exise des cas où oues les combinaisons possibles des n variables ne son pas uilisées, c'es la cas par exemple des 4 variables consiuan une érade en code DB (Décimal odé Binaire ou encore Binaire pur), les six pseudo érades ( à 5) son exclues : hiffre de à 9 ode DB : B D codes resans non uilisés Dans ces condiions pour simplifier une foncion booléenne de quare variables don le champ de variaion es limié, une valeur quelconque peu êre donnée à la foncion dans les cases inerdies de façon à consiuer des boucles d'ordre le plus élevé possible sur le diagramme de Karnaugh. Le signe (ou φ ) éan uilisé pour indiquer qu'un aussi bien qu'un convien. On parle souven de foncions φ booléennes. Soi par exemple à commander un voyan qui doi êre allumé lorsque les chiffres 4 ou 5 apparaissen e seulemen dans ces cas. Les chiffres son codés en DB sur quare fils, B, e D. La foncion booléenne L à créer ne doi valoir que lorsque les configuraions 4 () ou 5 () apparaissen. En oue rigueur : L = B D + B D correspondan au diagramme de Karnaugh ci-dessous sur lequel apparaî une boucle d'ordre 2 amenan ainsi la simplificaion : L = B.. 3
17 Elecronique Numérique. Logique combinaoire Mais les cases marquées d'une croix ( ou φ ) corresponden à des siuaions inerdies qui ne se présenerons jamais sur les quare fils (pseudo érades) e peuven êre choisies comme on veu ( Don' care (sans effe)). Les uilisés dans les regroupemens son mis à, les non uilisés son mis à. Ici on peu placer des dans les deux cases correspondan aux éas (2) e (3) de façon à former une boucle d ordre 4 : D B B menan ainsi une simplificaion opimale de L : L= B La lampe L s'allume dans les éas 4 e 5 demandés e aussi pour 2 e 3 ce qui n'a pas d'imporance puisque ces deux derniers éas ne se présenen jamais.. Ne jamais regrouper uniquemen des ensemble : ça ne simplifie pas la foncion mais la complique en ajouan un erme inuile à la foncion.. haque a une valeur indépendammen des aures.. Ne jamais affecer des valeurs différenes à un même, lors de différens regroupemens le faisan inervenir. omplémen sur la simplificaion : Si le ableau de Karnaugh compore plus de que de, on a alors inérê à regrouper les e non les pour exprimer S pluô que S. De même pour une simplificaion algébrique, la simplificaion peu se faire plus simplemen sur S pluô que S. Lorsque S es simplifiée au maximum, on obien alors simplemen S par complémenaion de S. 2. Maérialisaion des foncions logiques 2.. Logique posiive e logique négaive oue grandeur physique ayan seulemen deux valeurs possibles on peu associer une variable booléenne. En élecronique, les grandeurs considérées son esseniellemen le couran e la ension. Par exemple, la ension colleceur d'un ransisor NPN (T) alimené sous 5 Vols (cas de la famille logique TTL) e foncionnan en régime de commuaion (régime de foncionnemen en logique) peu valoir : V V c c = =+ 5 T si es sauré Vols si es bloqué T On peu par convenion admere que la variable booléenne associée à la ension V c vau si V c = + 5 V, si V c =. La valeur es associée à la valeur la plus élevée de V c ; on di alors que l'on a défini une logique posiive : = pour Vc = = pour Vc = + 5 Vols Le conraire, bien que moins couran, es égalemen possible. la logique es qualifiée alors de négaive : = pour Vc = = pour Vc = + 5 Vols Dans ce qui sui nous ravaillerons oujours en logique posiive.. 4
18 Elecronique Numérique. Logique combinaoire 2.2. Symboles logiques Une foncion (ou opéraeur) logique élémenaire ( fondamenal) es maérialisée par un circui logique appelé pore logique. Symboles logiques fondamenaux Opéraeur ncien symbole Nouveau symbole (ancien américain ; nouveau européen) ND B. B ou B B &. B ou B OR B + B B + B BUFFER ou DRIVER (Un Buffer réhausse au niveau hau une ension de niveau hau diminuée) NOT ou ou NND B B B & B NOR B + B B + B OR B + B B = + B NOR B + B B = + B Noe : Le pei cercle représene la complémenaion La flêche représene la complémenaion en plus du sens de l'informaion En l'absence de flêche, le signal circule impliciemen de la gauche vers la droie. Symboles logiques de pores élémenaires à 3 e 4 enrées Opéraeur ncien symbole Nouveau symbole ND 3 enrées B B B & B B OR 4 enrées +B++D B D D +B++D Symboles logiques de circuis muliples d une même pore élémenaire à 2 enrées Nouveaux symboles Opéraeurs ET ircui 74 4 pores ND 2 enrées Opéraeurs ET / OU ircui 745 B 2 2B 3 3B 4 4B & Y =. B 2Y = 2. 2B 3Y = 3. 3B 4Y = 4. 4B B 2 2B 3 3B 4 4B & & & & Y = (.B) + (2.2B) 2Y = (3.3B) + (4.4B) Symbole d une foncion logique à l aide des opéraeurs fondamenaux Exemple : Représenaion de la foncion logique : + B : B + B. 5
19 Elecronique Numérique. Logique combinaoire 2.3. aracérisiques fondamenales d'une pore logique Définiion des niveaux logiques : immunié au brui onsidérons le cas simple d'un inverseur en logique 5 vols, c'es un circui don la sorie es à 5 vols si l'enrée es au zéro e réciproquemen, ce qui ne défini sur la caracérisique de ransfer que les deux poins e B de la figure suivane. En réalié par suie de l'influence des aures circuis qui lui son connecés, les niveaux d'enrée e de sorie d'un el inverseur n'on jamais ces valeurs idéales e il y a lieu de considérer la courbe de ransfer complèe suivane : Sorie V s V HM V Hm V L V LM V Lm V LM V L V H V Hm V HM V e B Enrée En régime normal, la ension d'enrée au niveau zéro se rouve enre V Lm e V LM, la ension de sorie éan alors au niveau hau () enre V Hm e V HM. Si une impulsion parasie vien se superposer à la ension d'enrée, la ension de sorie resera compaible avec le niveau si le niveau V L n'es pas dépassé. Mi = VL VLM es la marge de brui admissible à l'enrée au niveau bas. De même, si l'enrée es au niveau, une impulsion parasie ne doi pas faire omber V e en dessous de V H. M = V V es la marge de brui admissible au niveau hau. Hm H es deux marges définissen ce que l'on appelle l'immunié au brui du circui Temps de propagaion Si le niveau d'enrée d'un circui change brualemen, son niveau de sorie ne varie qu'avec un cerain reard appelé emps de propagaion p. La figure suivane illusre le cas d'un inverseur. Les emps de propagaion son courammen de 3 ns e peuven, pour les circuis les plus rapides, êre inférieurs à ns. La fréquence maximale d'uilisaion au-delà de laquelle les signaux ne son plus resiués par les circuis (limie haue de la Bande Passane) es lié au emps de propagaion. V e V s p. 6
20 Elecronique Numérique. Logique combinaoire Tension d alimenaion Par exemple pour les familles TTL e MOS : Tolérance sur les niveaux TTL MOS Tension d'alimenaion Vcc 5 V ±.5 V Tension maxi d'enrée pour un niveau bas V IL.8 V L : Low Tension mini d'enrée pour un niveau hau V IH 2 V H : High Tension maxi de sorie pour un niveau bas V OL.4 V I : Inpu Tension mini de sorie pour un niveau hau V OH 2.4 V O : Oupu Puissance moyenne absorbée par pore : mw ouran moyen par pore : qq. m Tension d'alimenaion : à TTL elle peu êre de 3 à 8 Vols (série 4) (les nouvelles généraions plus performanes n'auorisen que 2 à 6 Vols). La puissance consommée es << TTL : de l'ordre de. mw couran rès faible < m. Les olérances sur les niveaux logiques son du même ordre qu en TTL Enrance (Fan in) e Sorance (Fan ou) La source qui impose à l'enrée d'un circui logique un niveau ou doi fournir un cerain couran. e couran es différen suivan l'éa. Il peu êre suivan le cas, maximal pour l'éa ou l'éa. Dans une même famille de circuis, ces valeurs son des consanes, sauf pour cerains circuis pariculiers don les exigences peuven êre plus imporanes. Enrance On appelle enrance d'un circui (ou fan in) la valeur du couran de commande d une enrée de ce circui exprimée en une unié qui es le couran de comande ypique de la famille (appelé charge). Ex. : un circui ayan une enrance de 2 consomme (ou fourni) un couran d'enrée double de celui d'un circui ordinaire de la même famille. Le couran unié correspond à ce qu'on appelle une «charge». Sorance Il es clair qu un circui logique ne peu garanir sa ension de sorie que si le nombre de charges qui lui son connecées es limié (un niveau logique de sorie chue à si le nombre de charges es rop élevé) : : circui logique Un circui logique peu d'aure par, sans que le niveau logique de sorie ne sore des limies permises, fournir un couran maximal I S max. Le rappor enre ce couran maximal e celui correspondan à une charge es appelé sorance du circui (ou fan ou, ou faceur pyramidal de sorie) : c'es le nombre maximal de charges que peu commander une sorie (à enrée uniaire) en garanissan les niveaux logiques. Ex. : à un circui ayan une sorance de, on peu connecer charges ou en garanissan les niveaux de sorie de cee pore. Le sens des courans es égalemen rès imporan. Une famille logique don les circuis doiven êre piloés par un couran enran es die à injecion de couran. Dans le cas conraire, on parle de logique à exracion de couran : Injecion de couran Exracion de couran. 7
21 Elecronique Numérique. Logique combinaoire De façon à évier l'acion des signaux parasies (fil anenne!) les enrées non uilisées d'un circui à enrées muliples doiven êre polarisées, soi en les relian aux aures, soi en les connecan à la source d'alimenaion ou à la masse suivan le cas. eci es pariculièremen imporan dans le cas des circuis ayan des couran d'enrée rès faible comme les circuis MOS. (Une enrée enl air a un éa indéerminé qui prend en général la valeur par effe d anenne) ircuis expansibles, ET e OU câblés Soi un circui ET à 2 enrées effecuan l'opéraion : Pour réaliser un circui ET à 4 enrées qui réaliserai : S = B S = B D on peu songer à uiliser 3 circuis ET à 2 enrées en faisan le produi des 2 produis pariels B e D :. B D B D BD Dans cerains cas on peu associer plus direcemen les sories des 2 circuis ET sans dommage pour les circuis. Si ceci es possible, les circuis son qualifiés d'expansibles : B D M ET câblé B D BD On a bien un ET à 4 enrées :. si B = e D = M = (pas de cour-circui). si B = e D = M = (pas de cour-circui). si B = e D = M = (cour-circui enre Vol e 5 Vols (en TTL) le résula es Vol, soi logique). si B = e D = M = (cour-circui enre Vol e 5 Vols (en TTL) le résula es Vol, soi logique) La joncion au poin M es appelée «ET câblé» Les familles logiques Toues les foncions booléennes peuven êre consruies à l'aide des rois opéraeurs fondamenaux ET, OU e complémen. e groupe de rois opéraeurs forme ce que l'on appelle un sysème logique comple. La maérialisaion des foncions logiques nécessie donc de pouvoir réaliser des sysèmes physiques remplissan ces rois foncions. Un sysème logique comple permean la consrucion de oue foncion peu cependan êre réalisé en uilisan un nombre plus faible de srucures de base. Par exemple, le groupe des deux foncions ET e complémen consiue un sysème logique comple. En effe, la foncion OU peu êre reconsiuée à parir de ces deux foncions seulemen comme le monren les héorèmes de De Morgan : soi : + B= ( + B) = B + B B B. 8
22 Elecronique Numérique. Logique combinaoire ircuis logiques à diodes Soien, deux diodes e une résisance connecées comme le monre la figure ci-après. dmeons d'abord que les diodes son parfaies, de résisance nulle dans le sens passan : ( Rd = V > ) Si l'une ou l'aure des enrées ou B es reliée à la masse ( ) pour. V =, la sorie V S =. La sorie V S n'es au poeniel hau (S = en logique posiive) que si V e V B son au poeniel hau. On a réalisé le produi logique S =. B : E = + 5 V PORTE ET (Diodes) V V B V S V B D D 2 R S V S + E + E D 2 bloquée mais D passane S à la masse D bloquée D 2 passane S à la masse V B D D 2 passanes S à la masse + E + E + E D D 2 bloquées V S = + E (pas de couran dans R ) De même avec le circui de la figure ci-dessous, la sorie ne vau + E que si ou B valen. (Somme logique + B) : D PORTE OU (Diodes) B D 2 S R Les pores à diodes son expansibles, en effe : R R / 2 R ompaiblié des pores ET e OU à diodes La mise en série de pores de ype différen pose un cerain nombre de difficulés liées au fai que les pores ET son à exracion de couran alors que les pores OU son à injecion de couran. Il fau leur adjoindre un élémen acif du ype ransisor qui peu par conre à lui seul consiuer un sysème comple comme dans la famille RTL.. 9
23 Elecronique Numérique. Logique combinaoire La famille RTL (Résisance Transisor Logic) Le ransisor perme rès simplemen d'obenir le complémen d'une variable logique. E PORTE OMPLEMENT (RTL) R 2 R T V S V Si V ( ) le ransisor T es bloqué e V E ( S ) = = S = + =. Si V = E, sous réserve que la condiion de sauraion : R R > soi saisfaie, T es sauré : VS =, S =. β 2 On a donc réalisé le complémen S =. Un ransisor associé à des résisances (d'où le nom de ce ype de circuis) perme de réaliser des opéraions ET e OU (ou plus exacemen des ET e OU complémenés soi des NOR e NND): E PORTE NOR (RTL) R T R B R 2 T 2 S Si V = VB = les deux ransisors son bloqués. Si l'une des ensions d'enrée vau +E, le ransisor correspondan se saure : V S =. D'où la able de vérié, correspondan à la foncion NOR : S = + B : B S Pour réaliser la pore ET, on peu uiliser deux inverseurs e un NOR conformémen à l'expression B = + B. Pour la pore NND, on peu faire appel au monage direc de la figure suivane, mais qui es peu uilisé car les enrées son mal découplées enre elles : E PORTE NND (RTL) T S = B B T2 La srucure de base en RTL es la pore NOR qui consiue à elle seule, comme on l'a vu plus hau, un sysème logique comple. On remarque enfin que la RTL es une logique à injecion de couran.. 2
24 Elecronique Numérique. Logique combinaoire Logique DTL (Diode Transisor Logic) Elle peu êre considérée comme l'associaion d'une logique à diodes e d'un ransisor inverseur. L'ensemble consiue alors un circui NND qui à lui seul forme un sysème logique comple. Le schéma de principe es présené sur la figure suivane : E PORTE NND (DTL) (principe) R R 2 B S = B Si V = VB = + E, les deux diodes son bloquées e T es sauré par le couran base raversan R ( V S ) V = la diode d'enrée parfaie bloque le ransisor ( V E) =. Si S =. En réalié si le poin es à la masse, l'anode de la diode correspondane es un poeniel voisin de.6 Vol qui es aussi le seuil de conducion du ransisor. Le monage ne peu foncionner que si le V BE limie de conducion du ransisor es plus élevé que la ension de conducion de la diode. ela pourrai se faire avec des diodes au germanium associé à un ransisor silicium (soluion incompaible avec l'inégraion du circui). Une soluion plus efficace consise à uiliser des diodes remonan le seuil de conducion du ransisor. Le circui réel es représené sur la figure suivane. Les deux diodes D4 e D5 remonen au voisinage de.8 Vols la ension en P nécessaire à la conducion de T. lors : si V =, V = 6 P. Vol T es bloqué, VS =+ E : E PORTE NND 3 enrées (DTL) B D D 2 R P D 4 D 5 T R 2 S = B D 3 Il n'exise pas de circui spécifiquemen NOR en DTL. La logique DTL es une logique à exracion de couran qui n'es donc pas compaible avec la RTL. omme pour la logique à diodes les pores son expansibles (on diminue la résisance de charge du ransisor).. 2
25 Elecronique Numérique. Logique combinaoire La logique TTL (Transisor Transisor Logic) (famille la plus répandue) Elle ne diffère de la DTL que par le remplacemen du réseau de diodes d'enrée par un ransisor spécial muliémeeurs. es une logique qui ne se conçoi qu'en circui inégrés, elle es de loin la plus courane acuellemen (série 54/74). omme en DTL, le circui de base es une pore NND. La figure suivane représene le monage de base du circui d'enrée, les diodes son remplacées par les joncions EB des ransisors. Les deux ransisors d'enrée on leurs bases e colleceurs reliés. + E + E PORTE NND (TTL) (schéma de base) T e T2 son oujours saurés T T3 S = B = B= -> sur la base de T3 -> T3 bloqué -> S= = B= -> cour-circui - -> sur la base de T3 -> T3 bloqué -> S= = B= -> cour-circui - -> sur la base de T3 -> T3 bloqué -> S= B T2 = B= -> sur la base de T3 -> T3 sauré -> S= Lors de leur fabricaion cere liaison peu aller jusqu'à la fusion oale conduisan à un ransisor muli-émeeur qui réalise la foncion ET. D'où le circui d'enrée de la figure suivane : E PORTE NND (TTL) (principe) S = B B Pour augmener les performances, le circui de sorie n'es pas un simple ransisor. En effe un el monage es rès mal adapé à l'aaque de charges capaciives. onsidérons en effe la figure suivane : + 5 V + 5 V V e T R V s + 5 V Décharge de dans T Recharge de par R Lorsque le niveau de sorie passe de + E à, le couran de décharge de raverse le ransisor qui en régime de sauraion se compore presque comme un commuaeur parfai. Lorsque le niveau de sorie passe de à + E ce qui correspond au bloquage du ransisor, la charge de doi se faire grâce à un couran raversan R, donc avec une consane de emps R appréciable. Pour diminuer le emps de monée il fau diminuer R ce qui augmene proporionnellemen la consommaion du circui. Pour augmener la viesse on fai appel à un deuxième ransisor moné à la place de R qui en se sauran branche direcemen à + E. Le monage présene quelques analogies avec le push-pull :. 22
26 Elecronique Numérique. Logique combinaoire Pore NND (TTL) 74 4 kω.6 kω 3 Ω T 3 T T 2 E = + 5 V + E B D T 4 S + E + E T 2 T 4 S kω as = B = Si V VB Un couran circule e T2 e T4 son saurés. T 2 éan sauré, sa ension colleceur es égale à sa ension émeeur soi environ.6 Vol. Or T 3 ne peu conduire (à cause de D ) que si sa base es porée à environ.2 V; il es donc bloqué. lors VS =, S =. nnulons l'une des ensions ou B (ou les deux). La résisance de 4 kω assure la sauraion de T ce qui amène à zéro le poeniel base de T 2 donc bloque T 2 e aussi T4. T3 se rouve alors sauré grâce à la résisance de.6 kω relian sa base à + E, la sorie es alors au niveau hau. e circui réalise donc bien la foncion NND : S = B. = =+5V, les diodes émeeur-base de T son bloquées, par conre la diode base-colleceur es conducrice. Le monage consiué par les deux ransisors de sorie T3, T4 es appelé «oem pole», (pour chacun des 2 éas logiques on a : T 3 bloqué e T 4 sauré, ou l'inverse). Il perme des ransiions rapides du niveau de sorie même sur charge capaciive. Le emps de ransi es courammen de ns. omme la logique DTL, la logique TTL es une logique à exracion de couran. Tolérance sur les niveaux TTL Tension d'alimenaion Vcc 5 V ±.5 V Tension maxi d'enrée pour un niveau bas V IL.8 V L : Low Tension mini d'enrée pour un niveau hau V IH 2 V H : High Tension maxi de sorie pour un niveau bas V OL.4 V I : Inpu Tension mini de sorie pour un niveau hau V OH 2.4 V O : Oupu Puissance moyenne absorbée par pore : mw ouran moyen par pore : qq. m TTL Schoky Dans la famille précédene les ransisors ravaillen en commuaion c'es à dire qu'ils son parfois saurés. Or un ransisor sauré socke des charges dans sa base qui doiven ensuie êre évacuées. eci limie foremen la viesse de commuaion. Pour augmener la viesse, il fau évier la sauraion, ceci peu se faire en plaçan une diode en parallèle sur l'espace base-colleceur, de façon à mainenir le colleceur à un poeniel rès légèremen inférieur à celui de la base : (T ne peu pas se saurer car D conduirai, ce qui amènerai la base à +.5 vol bloquan T) D T En réalié le gain de viesse n'es pas grand car la diode elle même socke des charges. La soluion es rouvée en remplaçan D par une diode Schoky. Une elle diode es consiuée par un conac méal semi-conduceur. Sa ension de conducion es de l'ordre de.4 Vol e elle es rès rapide car le phénomène de sockage es rès rédui.. 23
27 Elecronique Numérique. Logique combinaoire Dans un circui TTL le ransisor muli-émeeur d'enrée peu êre égalemen de ype Schoky (c'es à dire avec une diode Schoky en parallèle) ou remplacé par des diodes Schoky comme en DTL : PORTE NND (TTL S) + E ou avec enrée muli-émeeur : B S = B B Diode Shoky Le gain en viesse es imporan, les emps de ransi éan de quelques nanosecondes seulemen. Varianes du circui de sorie a) La sorie oem-pole perme d'inéressanes performances en viesse mais inerdi le ET e le OU câblés, l'inerconnexion direce des sories peu en effe conduire à la desrucion des circuis. Pour remédier à ce inconvénien, deux soluions on éé reenues : les sories open collecor e ri-sae. En sorie oem pole, la charge es fixée par consrucion. 2 ransiors en alerna de commuaion (un es bloqué quand l aure es sauré) en sorie augmenen la rapidié du circui. Sorie TOTEM POLE + E Schéma synopique d'une pore à sorie oem pole S ircui d'enrée ommande des inerrupeurs "" "" S Pore NND (TTL) 74 4 kω.6 kω 3 Ω T 3 T T 2 E = + 5 V B D T 4 S kω Symbole : (c es le symbole par défau) Exemple: Pore OU oem pole. 24
28 Elecronique Numérique. Logique combinaoire b) Sorie open collecor (colleceur ouver) Le oem pole es supprimé e remplacé par un seul ransisor don la résisance de colleceur n'es pas inégrée. Elle doi êre mise en place par l'uilisaeur (en foncion de son problème). Le colleceur du ransisor de sorie du circui logique n es pas connecé à une alimenaion dans le circui. es à l uilisaeur de placer la charge la mieux adapée selon la sorance désirée. Le OU e le ET câblés deviennen ainsi possible. De plus cerains circuis son prévus avec un ransisor de sorie pouvan supporer une ension de plusieurs dizaines de vols e son précieux comme généraeurs d'impulsions de grande ampliude. La sorie S peu avoir 2 éas ( ou ) selon que le ransisor de sorie es respecivemen sauré ou bloqué. Sorie OPEN OLLETOR + E ircui "open collecor" (7426) NND 2 enrées E = + 5 V 4 k.6 k R S R harge exérieure B S harge exérieure k Symbole : pplicaions : Exemple: Pore OU open collecor - hangemen de niveau logique (de TTL +5 Vols à + U Vols) + 5 V + U + 5 V + U - ommande de charge imporane + E Lampe - Réalisaion d une foncion câblée B S B S D S 2 & S = (+B) (+D) D S 2 S = (+B) (+D) Inerpréaion élecrique S = (+B) (+D) (+B) (+D). 25
29 Elecronique Numérique. Logique combinaoire c) Sorie ri-sae (3 éas) La charge es fixée par consrucion. Les 2 ransiors en alerna de commuaion du oem pole son désolidarisés pour donner en sorie 3 éas possibles : les 2 éas logiques e, e le 3ème éa (haue impédance) obenu lorsque les 2 ransisors de sorie son bloqués. La sorie peu donc se présener sous les 3 éas :, e l éa haue impédance (circui déconnecé). Sorie TRI-STTE + E ircui inverseur ri-sae E = + 5 Vols R R Signal Enrée de validaion S V 6 R 3 5 V Validaion R 4 Sur le schéma de l inverseur 3 éas, on peu commener le foncionnemen : Si V =, 6 es bloqué, le sysème foncionne comme un circui TTL classique : Si =, condui, la base de 2 es au zéro donc 2 es bloqué ainsi que 5, pendan que 3 es conduceur ainsi que, donc S = =. Si V =, 6 es sauré donc égalemen e comme plus hau 2 e 6 son bloqués, mais par la diode D reliée à la masse 3 es mainenu bloqué malgré le couran dans R2, 4 se rouve donc égalemen bloqué. N'impore quel poeniel peu êre imposé en S par un circui exérieur sans déériorer le circui. Il es ainsi possible de relier plusieurs sories à condiion qu'un seul circui soi validé à la fois. (OU e ET câblés possibles à condiion qu'un seul circui soi validé à la fois). Dans la famille TTL, une sorie passe dans l'éa haue impédance en désolidarisan les 2 inerrupeurs du oem pole : "" "" "" S = S = S = Haue Impédance (S déconnecée) éa "" "" "" éa "" "" 3ème éa (Haue Impédance) e ype de circui es rès uilisé dans les sysèmes logiques complexes dans lesquels les informaions circulen sur des lignes communes auxquelles son reliées de nombreux circuis. e son des BUS. On voi sur l'exemple de la figure suivane que pour faire circuler l'informaion de à B il suffi de valider seulemen les pores e 6, oues les aures pores devan êre «inhibées» (déconnecées par éa haue impédance) sous peine de cour-circui desruceur: (les pores à 6 pouvan êre des circuis drivers d eniés informaiques par ex., mémoire, périphérique d ordinaeur...). (driver piloe circui de commande, de conrôle, d inerface) 2 3 Enrée de validaion BUS B Symbole : Exemple: Pore OU ri-sae. 26
30 Elecronique Numérique. Logique combinaoire Remarque : Pour évier que plus de 2 eniés soien connecées simulanémen au bus (ce qui enraînerai des cours-circuis), un circui programmable spécialisé (conrôleur de bus) gère ces signaux de validaion La logique I 2 L L' I 2 L es une echnologie bipolaire rapide uilisée exclusivemen dans les circui inégrés rès complexes du ype microprocesseurs. La srucure fondamenale es représenée sur la figure suivane (avec un ransisor muli-colleceur) : +E PORTE I2L Injeceur de couran S Enrée S Les familles EL Dans les monages précédens les ransisors foncionnen au blocage e à la sauraion, or on sai qu'un ransisor sauré accumule dans sa base une charge qui doi êre éliminée pour obenir le blocage, ce qui prend un cerain emps. Pour augmener la viesse de foncionnemen, des familles logiques où les ransisors ne son jamais saurés on éé développées, c'es la cas de l'el (logique à émeeurs couplés) de Moorola. Pour permere la mise à la masse des colleceurs de l'éage de sorie, l'alimenaion es négaive (- 5 Vols) mais pour facilier la liaison avec d'aures logiques une alimenaion posiive es possible. Les niveaux logiques son : niveau hau () codé par -.8 Vol e niveau bas () codé par -.8 Vols Les familles MOS Le Transisor à Effe de hamp à jonion (FET) n'es pas uilisé pour consruire des circuis logiques, il n'en es pas de même du ransisor MOS, Transisor à Effe de hamp à grille isolée. Pour les ransisors MOS consruis acuellemen, la ension de seuil peu êre inférieure à 2 Vols, ce qui perme d'uiliser ces composans avec des ensions d'alimenaion de 3 Vols seulemen. La figure suivane représene un inverseur MOS. Sa srucure es analogue à celle de l'inverseur à ransisor bipolaire, sa caracérisique de ransfer peu êre racée à parir du réseau de caracérisiques du MOS pour une valeur donnée de la résisance de charge. La ransmission es d'auan plus bruale que la résisance es élevée. On voi que le sysème es compaible avec un niveau logique bas inférieur à 3 Vols, e hau supérieur à 7 Vols (pour Vols d'alimenaion). E + Vols R S I DS.5 R = kω 2 k 4 k V GS = + 6 V V GS = + 5 V V GS = + 4 V V GS = + 3 V V GS = + 2 V V DS V DS 4 kω R = kω Or en circui inégré, une résisance occupe d'auan plus de surface sur la "puce" que sa valeur es imporane. On a donc cherché à remplacer la résisance de charge par un second ransisor MOS. onsidérons un MOS canal N don la grille es reliée au drain, il consiue un dipôle don la caracérisique es racée sur la figure suivane. 'es à un décalage de ension près, celle d'une résisance qui peu êre uilisée come charge dans le monage inverseur. I V GS = 6 Vols 2 kω 5 V E I 5 V V DS 5. 27
31 Elecronique Numérique. Logique combinaoire La figure suivane représene le monage fondamenal de l'inverseur MOS dans lequel oue résisance a éé bannie. Nous ne déaillons pas ici les nombreuses varianes echnologiques mises au poin depuis quelques années e qui son en consane évoluion, (grille en aluminium e isolemen par de la silice, grille en silicium poly ou monocrisallin, isolemen par du nirure de silicium ayan une consane diélecrique élevée ec...). Inverseur MOS + E NOR MOS 4 enrées + E NND MOS + E S S B D B Une paricularié des MOS liée à leur impédance d'enrée rès élevée es la présence d'une capacié grille-subsra qui peu êre uilisée comme élémen de mémoire e limie les performances en viesse La famille MOS (aure grande famille avec la famille TTL) MOS pour MOS omplémenaires : MOS uilisés par paires : MOS canal N; MOS canal P. L'emploi simulané de MOS complémenaires perme de réaliser des circuis don la consommaion au repos es pariculièremen basse. La firme américaine R s'es spécialisée dans cee echnique e commercialise ces circuis logiques (série 4/4). Le circui fondamenal es l'inverseur ci-dessous. + E anal P V E V S anal N Lorsque V E # +E, niveau hau, le MOS-N ayan sa grille posiive es conduceur. Par conre le MOS-P es bloqué. Donc V S es pei (V S ) mais le couran consommé es nul, M 2 éan bloqué. Lorsque V E # niveau bas, le MOS-N es bloqué (il s'agi oujours de MOS à enrichissemen ayan un I DSS nul). Par conre, M 2 de ype P es conduceur e V S E. Là encore M éan bloqué, le couran consommé par la cellule es nul. Les deux ransisors ne son pas simulanémen conduceurs, le circui ne consomme donc rien à l'éa sable. Une consommaion apparaî seulemen en régime ransioire car il fau charger e décharger les capaciés de srucure. La consommaion ypique à viesse moyenne peu êre cen fois inférieure à celle de la cellule idenique à ransisors à joncions mais la viesse limie es acuellemen plus faible, ypiquemen MHz conre plus de 5 MHz pour des EL. Tension d'alimenaion : à TTL elle peu êre de 3 à 8 Vols (série 4) (les nouvelles généraions plus performanes n'auorisen que 2 à 6 Vols). La puissance consommée es << TTL : de l'ordre de. mw couran rès faible < m. Les olérances sur les niveaux logiques son du même ordre qu en TTL.. 28
32 Elecronique Numérique. Logique combinaoire Un des problèmes à maîriser a éé la proecion des enrées conre les surensions d'origine saique, la couche d'oxyde des grilles es en effe rès fragile. La soluion a éé rouvée en inégran des diodes au niveau des enrées. cuellemen ce sysème foncionne bien e enlève ou souci à l'uilisaeur concernan des manipulaions desrucrices. ircui de proecion d'enrée + V DD La figure suivane représene un NND à deux enrées. PORTE NND (MOS) + V DD B M M 2 S M 3 M 4 Si l'une des enrées es au zéro le MOS correspondan M ou M 2 de ype P es conduceur amenan S au +V DD. Si au conraire e B son à +V DD, M e M 2 son bloqués mais M, M conduceurs, fixen S au zéro. Un MOS n'ayan pas de ension d'offse les niveaux de sorie (sans charge) son rigoureusemen +V DD e zéro, les impédances de sorie éan les résisances des canaux, ces résisances son de l'ordre du kω. Le couran d'enrée es oujours rès faible, ypiquemen p, le couran suscepible d'êre délivré en sorie es au maximum de l'ordre du milliampère. u moins en foncionnemen len, la sorance es donc rès grande. Les consruceurs l'annoncen supérieure à omme pour la famille TTL, il y a 3 varianes pour le circui de sorie : oem pole, open drain, ri-sae. Les principaux circuis de la série 4 son les suivans : 4 uadruple NOR à deux enrées, 4 uadruple NND à deux enrées, 49 Six inverseurs (Buffer inverseur), 4 Six amplis non inverseurs (Buffer), 43 Double bascule D, 427 Double bascule JK, 442 uadruple bascule D (lache), 47 Décade DB à sories décodées, ec
33 Elecronique Numérique. Logique combinaoire Soi la pore analogique (46) représenée ci dessous : M P E S M 2 N I Vc ommande Si V =, M2 canal N es conduceur ainsi que M qui, grâce à l'inverseur I voi sa grille porée au ; les deux MOS se comporen alors comme leur résisance de conducion 2 Ω e Vou = Vin. Si au conraire V =, M e M 2 son bloqués, leur résisance de fuie éan supérieure à Ω. En plaçan un sysème de ce ype en sorie d'un circui logique, on obien le même résula qu'avec le monage ri-sae de la TTL. Le 46 peu êre uilisé avec des signaux d'enrée analogiques, son comporemen es celui d'un inerrupeur mécanique à commande élecrique : E E 46 S kω S Les circuis MOS son de plus en plus uilisés grâce à leur souplesse d'emploi : niveaux de sorie rès bien définis. - grande immunié au brui (mais en conre parie les impédances d'enrée favorisen la récepion de signaux parasies rayonnés). - possibilié de foncionnemen dans une large plage de ensions d'alimenaion. - rès faible consommaion. - Une dernière propriéé des MOS, liée à leur impédance d'enrée e comporemen en sorie e la possibilié de les uiliser dans les configuraions où ils foncionnen de façon pseudo-linéaire : amplificaeur, oscillaeurs, ec... vec les séries 4 e 4, on rouve aussi la série 74 don les circus son compaibles broche à broche avec ceux poran le numéro correspondan en logique TTL Les inerfaces enre familles Pour des raisons d incompaibilié enre les familles logiques, ous les circuis logiques connecés d un monage doiven êre de la même famille; dans le cas conraire, il fau en oure prévoir des circuis d inerfaçage. e son des circuis permean l'associaion de circuis logiques apparenan à des familles logiques différenes. Les cas les plus souven renconrés son : - l'aaque d'une logique lene, le plus souven TTL, par une logique ulra rapide (EL). L'inverse éan sans inérê. - une associaion de circuis TTL e MOS.. 3
34 Elecronique Numérique. Logique combinaoire Inerface MOS - TTL Il es éviden que l'alimenaion doi se faire en + 5 Vols à cause de la TTL aque d un circui MOS par un circui TTL +5 V +5 V +5 V R TTL MOS Une pore TTL oem pole fourni en sorie : - au plus.4 Vol au niveau - au moins 3.6 Vols au niveau Or sous 5 Vols, il fau pour le MOS au plus.5 Vols au niveau e au moins 3.5 Vols au niveau. En conséquence, la TTL piloe sans problème le MOS au niveau. es par conre un peu juse au niveau. On uilise alors une résisance R die de pull up (R de l odre de kω) qui remone le niveau hau de la TTL aque d une enrée TTL par une sorie MOS u niveau il n y a pas de problème car l enrée TTL se conene d un couran faible. Il n en es pas de même au niveau : pour une ension de.8 Vol max, il fau exraire d une enrée TTL un couran de.6 m. Or une pore MOS peu ou juse acceper.8 m pour cee valeur de ension. La liaison direce es donc impossible..8 m.6 m MOS TTL On peu alors uiliser un circui d inerface spécialisé ou même un ransisor inermédiaire (impliquan alors une inversion). + 5 Vols 4.7 k.2 m 22 k TTL MOS Inerface EL - TTL La difficulé es différene suivan que l'el es alimené enre e + 5 Vols ou enre - 5 Vols e. Dans le cas où une associaion avec des circuis TTL es prévue, la première soluion es généralemen reenue. Des circuis spécialisés ou des monages adapaeurs son proposés par le consruceur Symbolisme des opéraeurs logiques Forme des symboles Idenificaeur général () Enrées * * *2 *2 *3 *3 * * Sories *x : posiions possibles pour les spécificaions x pariculières à chaque enrée ou sorie.. 3
35 Elecronique Numérique. Logique combinaoire Idenificaeur général () Symbole Descripion & Foncion ET Foncion OU = Foncion OU Exclusif = Foncion oïncidence 2k Le nombre d enrées acivées doi êre pair (pour aciver la sorie) 2k+ Le nombre d enrées acivées doi êre impair (pour aciver la sorie) L enrée unique doi êre acive (pour aciver la sorie) Tampon (amplificaeur). Le sens du riangle indique le sens de propagaion du signal Elémen présenan un hysérésis (rigger de Schmi) /Y odeur, converisseur (DE/BD, BIN/7 segmens) MU Muliplexeur MU ou D Démuliplexeur Σ ddiionneur P- Sousraceur (omparaeur numérique) PG Généraeur de reenue anicipée π Muliplieur OMP omparaeur (ampliude analogique) LU Unié arihméique e logique Monosable programmable Monosable G Elémen asable (la forme d onde es opionnelle)!g Oscillaeur à démarrage synchrone G! Oscillaeur asable à arrê commandé SRG m Regisre à décalage (m = nombre de bis) TR m ompeur m bis (cycle de 2 m éas) TR DIV m ompeur de cycle = m ROM Mémoire more (Read Only Memory) RM Mémoire vive (Random ccess Memory) FIFO Mémoire vive à rangemen séqueniel file d aene (Firs In Firs Ou) Symbole exerne au conour du circui () ou ou omplémen logique en enrée (la flêche indique aussi le sens du signal) omplémen logique en sorie (la flêche indique aussi le sens du signal) Flux de données de la droie vers la gauche (impliciemen, il es de la gauche vers la droie) Flux bidirecionnel Enrée (sorie) analogique. 32
36 Elecronique Numérique. Logique combinaoire Symbole inerne au conour du circui pour les enrées (2) a b c EN m ou m + m - m } m T ] = G, V, N, Z,, S, R, EN, M, a b c G a b c a b c & & Enrée acive sur fron monan (en l absence du riangle inerne au circui l enrée es acive sur niveau hau) Enrée acive sur fron descendan) (en l absence du riangle inerne au circui l enrée es acive sur niveau bas) Enrée possédan un hysérésis élecrique Enrée de validaion (ENBLE) Enrée de décalage d un regisre; La flêche indique le sens m indique le nombre de décalage effecués Enrée de compage (+) ou de décompage (-); m précise l incrémen Enrées groupées, pondérées de à m Les combinaisons son repérées de à 2 m - Enrée de chargemen d un compeur à la valeur indiquée (ici ) Enrées groupées : elles réalisen indépendammen la même foncion Dépendance d une enrée envers une aure enrée Ici, les enrées a e c son dépendanes de l enrée b (même numéro) par la foncion : G : ET V : OU N : OU Exclusif Z : relaion d inerconnexion : relaion de conrôle (horloge) S : SET (Mise à ) R : RESET (Mise à ) EN : ENBLE (auorisaion) M : Sélecion d un mode de foncionnemen : Sélecion d une adresse. 33
37 Elecronique Numérique. Logique combinaoire Symbole inerne au conour du circui pour les sories (3) Sorie de echnologie colleceur ouver NPN ou assimilé (drain ouver ) Sorie de echnologie colleceur ouver NPN ou assimilé (drain ouver ) avec résisance de charge inégrée T = 5 e a b c = G, V, N, Z,, S, R, EN, M, a & G b c & a b c a b c Sorie de echnologie émeeur ouver (sans e avec charge inégrée) Sorie de echnologie rois éas ondiion d évoluion de la sorie : la sorie es posiionnée après reour de l enrée d horloge à son éa iniial (bascule à commande par impulsion) ondiion d évoluion de la sorie : la sorie es acive si le conenu du compeur es égal à la valeur indiquée (ici 5) Dépendance d une sorie envers une aure sorie Ici, les sories a e c son dépendanes de la sorie b (même numéro) par la foncion : G : ET V : OU N : OU Exclusif Z : relaion d inerconnexion : relaion de conrôle (horloge) S : SET (Mise à ) R : RESET (Mise à ) EN : ENBLE (auorisaion) M : Sélecion d un mode de foncionnemen : Sélecion d une adresse. 34
38 Elecronique Numérique. Logique combinaoire omplémens sur la dépendance - Si plusieurs ermes affecans poren le même numéro, les ermes son impliciemen liés par un OU : a b c G G a b c & - Un symbole précisan la foncion d un erme affecé es placé à droie du numéro du erme affecan : Terme affecan n Terme affecé D - Si une enrée (ou une sorie) es affecée par plusieurs ermes affecans, les numéros d idenificaion de chacun de ces ermes son écris séparés par des virgules e dans le même ordre que celui des relaions logiques affecanes : a b c G,2 D 2 a b c & D - Si l écriure d un numéro d idenificaion risque d inroduire une confusion, il peu êre remplacé par un aure caracère, par ex. une lere grecque : a b c α Gα α a b c G - Il es plus simple, lorsque des enrées de dépendance peuven êre groupées, d affecer à chacune d elles un poids, puis d idenifier une combinaison donnée par le nombre binaire correspondan : a b k } G m 2 m + borne inférieure borne supérieure Le nombre binaire (k...ba) 2 où (a) a le poids 2, (b) a le poids 2 ec... es alors compris enre e 2 m+. On précise alors les bornes d uilisaion effecive. - Lorsqu une enrée a plusieurs foncions, il es possible de préciser ces foncions sur une même figure, en séparan les ermes respecifs par des barres obliques (/) : a c G2 a 2 / b &. 35
39 Elecronique Numérique TD. Logique combinaoire TD. LOGIUE OMBINTOIRE. Modélisaion d une foncion logique - Simplificaion - Réalisaion Soi le sysème logique d'enrées P L e P P e de sorie S : P L P P Sysème S P L = s il pleu; P P = si présence de parapluie; P L = s il ne pleu pas. P P = si absence de parapluie. a) onsruire le sysème logique pour permere de sorir ( S = ) quand il ne pleu pas, ou quand il pleu e que l'on es muni d'un parapluie. onsruire égalemen S direcemen. b) Simplifier la foncion logique S : b) de façon algébrique b2) de façon graphique c) Donner le schéma élecrique symbolique de la foncion logique S. 2. Reconnaissance d une foncion logique d après un chronogramme On donne le chronogramme suivan décrivan les signaux, B e S en foncion du emps : B S a) uelle es la foncion logique f relian les variables logiques, B e S : S = f (, B) b) Donner le symbole élecrique de f. 3. Simplificaion d une foncion logique Soi la foncion logique à 4 variables, B,, D : S= BD + BD+ BD + BD+ BD Les mos suivans ( éas logiques du mo BD ) éan indéfinis ( indifférens pour la sorie S) car ces combinaisons d enrée n apparaîron jamais : B D, B D, BD, BD, BD e BD a) Simplifier la foncion S en regroupan les du diagramme de Karnaugh. En déduire la foncion logique S. b) Simplifier la foncion S en regroupan les. Rerouver le même résula qu'en a) pour la foncion S. TD.
40 Elecronique Numérique TD. Logique combinaoire 4. nalyse d un sysème logique combinaoire - Donner l expression de la variable logique S. - Indiquer le rôle du monage. B { { b 3 b2 b b a 3 a2 a a = = = = & S 5. Synhèse d un sysème logique combinaoire La commande des essuie-glace d un véhicule es assurée par un bouon de mise en marche M e un conac de fin de course F. La mise en roaion es provoquée par la mise à du bouon M, quelle que soi la posiion des essuieglace. L arrê es obenu si M = e si les essuie-glace son dans leur posiion de repos F =.. Proposer un monage chargé de générer la variable logique de commande des essuie-glace. 2. Donner l expression, associée à ce monage, de la variable logique. 6. Synhèse d une Foncion logique Soi la foncion logique s de 3 variables a, b, c : s = M( a, b, c). On défini le M de 3 variables a, b, c comme égal à : si parmi a, b, c le nombre de variables à l éa es plus élevé que celui à l éa sinon.. Donner l expression de la variable logique s en foncion des variables a, b e c. préparer pour les Travaux Praiques : 7. Réalisaion d une foncion logique à l aide de pores NND exclusivemen En uilisan exclusivemen des pores logiques NND, réaliser les foncions suivanes : a) NON (NOT) ( enrée) b) OU (OR) (2 enrées) c) ET (ND) (2 enrées) d) OU ou OU (OR) (2 enrées) e) NOU (NOR) (2 enrées) TD. 2
41 Elecronique Numérique TD. Logique combinaoire TD NNEE. LOGIUE OMBINTOIRE. Simplificaion d'une foncion logique Le verrou S d'une serrure élecronique sans mémoire (l ordre n impore pas) doi s'ouvrir dans les configuraions suivanes des clés logiques, B,, D : BD, BD, BD, BD, les condiions suivanes éan indifférenes (ces combinaisons d enrée ne peuven se produire du fai de la mécanique de la serrure) : BD, BD, BD, BD, BD e BD. - Donner, après simplificaion par exemple par la méhode de Karnaugh, l expression de la foncion logique S sous une forme auorisan une réalisaion à l aide d une seule pore logique. TD. 3
42 Elecronique Numérique TP. Logique combinaoire. Maériel nécessaire TP. LOGIUE OMBINTOIRE - limenaion sabilisée ( 2x[ -3 V] &&& _ + x[ 5 V] &&& _ ) - Mulimère - Monieur MS5 (plaquee de câblage) - âbles : 6 fils Banane, peis fils. - omposans : - 4 Résisances kω (/4 Wa) - 4 LEDs recangulaires (3 Veres, Rouge) - 3 mini-inerrupeurs ircuis logiques de la famille MOS 4 : - 47 : 4 OR à 2 enrées - 48 : 4 ND à 2 enrées - Logiciel de simulaion ircui Maker Simulaion (& âblage) : Pour des raisons de compaibilié, n uiliser que des circuis de la même famille (famille MOS 4 à ne pas mélanger avec la famille TTL 74xxx). 2. Noaion du TP Faire examiner par le professeur en fin de séance, les différenes paries du TP. 3. Eude Théorique On reprend l exercice du TD : 3.. Synhèse de la Foncion logique M Soi la foncion logique s de 3 variables a, b, c : s = M( a, b, c). On défini le M de 3 variables a, b, c comme égal à : si parmi a, b, c le nombre de variables à l éa es plus élevé que celui à l éa sinon.. Donner l expression de la variable logique s en foncion des variables a, b e c. Synhèse de la Foncion logique M - orrigé a b c s d où : s = abc + abc + abc + abc Simplificaion de s : - algébrique : s = c( ab + ab) + abc = c( a b) + abc - graphique (Karnaugh) : s = ab + bc + ac ab c TP.
43 Elecronique Numérique TP. Logique combinaoire 3.2. Réalisaion d une foncion logique à l aide de pores NND exclusivemen En uilisan exclusivemen des pores logiques NND, réaliser les foncions suivanes : a) NON (NOT) ( enrée) b) OU (OR) (2 enrées) c) ET (ND) (2 enrées) d) OU ou OU (OR) (2 enrées) e) NOU (NOR) (2 enrées) 4. Eude Expérimenale 4.. Synhèse de la Foncion logique M Simuler (avec le logiciel de simulaion) la foncion simplifiée : s = ab + bc + ac avec les circuis de la bibliohèque du logiciel de simulaion. Vérifier avec les LEDs la able de vérié éablie Réalisaion d une foncion logique à l aide de pores NND exclusivemen En uilisan exclusivemen des pores logiques NND, simuler les foncions suivanes (vérifier avec le logiciel de simulaion) : a) NON (NOT) ( enrée) b) OU (OR) (2 enrées) c) ET (ND) (2 enrées) d) OU ou OU (OR) (2 enrées) e) NOU (NOR) (2 enrées) Rangemen du pose de ravail Examen des différenes paries du TP e rangemen ( pour ou le TP sinon). NNEE : DOUMENTTION DES OMPOSNTS - LED NNEE K node K ahode TP. 2
44 Elecronique Numérique 2. Logique combinaoire 2. Les pplicaions direces.. odeur... Définiion 2. LOGIUE OMBINTOIRE 2 Un codeur es un disposiif qui radui les valeurs d'une enrée dans un code choisi. Par exemple, un clavier de console ou de machine à écrire compore n ouches. haque ouche, représenaive d'un caracère, es affecée d'un numéro. L'opéraion de codage consise à donner à chaque numéro (donc à chaque caracère) un équivalen binaire, c'es à dire un mo composé d'élémens binaires. "" B e B 2 e odeur s B i s N= i B m e m - n 2 n < m 2 m enrées seule enrée à la fois es acivée ( au niveau ) s n - n sories représenan le n de l'enrée acivée dans le code choisi (Dans la symbolique de ce schéma e conrairemen à la majorié des echnologies, une enrée «en l air» es au niveau logique ). Si i = 4 Soi N = S3S 2SS on a: S 3 =, S 2 =, S =, S = pour un codeur binaire (pur). Si seul le bouon numéro i es acionné, le nombre binaire à 4 élémens N = S3S 2SS es égal à i, dans le code choisi. Les ables de Karnaugh ( able pour chaque sorie) ne son pas uilisées car le nombre d'évenualiés es rédui ( seule enrée acivée)...2 Inérê du codage Si le nombre de bouons es de, codé en binaire pur, 4 variables suffisen. Pour un clavier classique, la cenaine de ouches se coden facilemen avec 7 variables binaires (en supposan oujours seule ouche acive à la fois). Le codage des informaions appore une réducion non négligeable du nombre de variables à raier...3. pplicaion : codeur prioriaire Si maladroiemen plusieurs bouons son enfoncés simulanémen, le codeur classique donne un résula erroné car il ne sai plus quel numéro doi êre codé. Un codeur prioriaire es un disposiif réalisan le codage du numéro le plus élevé dans le cas où plusieurs bouons seraien acionnés simulanémen. Si une seule commande es envoyée sur le codeur prioriaire, celui-ci foncionne comme un codeur classique. "" B e B 2 e odeur s prioriaire B i s N = j si j i B j B m e m - s n - Si 2 enrées ou plus son acivées simulanémen l'enrée sélecionnée pour le codage es celle ayan le numéro d'enrée le plus élevé. Sinon le codeur prioriaire se compore comme un codeur classique. 2.
45 Elecronique Numérique 2. Logique combinaoire Réalisaion praique des codeurs Dans sa version la plus générale, un codeur es un ensemble de circuis OU. Exemple : odeur Décimal DB (en anglais BD) Soi la able de codage suivane pour des enrées de e à e 9 : (code DB) e i es raduie par B D : e es raduie par sss2s3 = e es raduie par sss2s3 = e 2 es raduie par sss2s3 = e 3 es raduie par sss2s3 = e 4 es raduie par sss2s3 = e 5 es raduie par sss2s3 = e 6 es raduie par sss2s3 = e 7 es raduie par sss2s3 = e 8 es raduie par sss2s3 = e es raduie par s s s = 9 2s3 (clavier à ouches d un digicode) e le codage des sories : Réalisaion e s s s s 2 3 = e = e 8 4 = e 2 + e + e e 3 = e + e 3 + e + e 6 + e e + e 7 + e e 9 Représenaion symbolique OU e e 2 e 3 e 4 e 5 e 6 e e e 2 e 3 e 3 e 7 e 8 e 9 e 4 e 5 e 6 e 7 e 8 s 3 Marice à diodes ou à ransisors pour la réalisaion de ces conacs e 9 s s s 2 s 3 s s s 2 s
46 Elecronique Numérique 2. Logique combinaoire 2.2. Décodeur.2.. Définiion Un décodeur es un circui qui délivre une (ou des) informaion(s) lorsque la combinaison des variables binaires d enrée es représenaive du (ou des) mo(s)-code choisi(s). Un décodeur réalise la foncion inverse ( duale) du codeur. e e Décodeur s s Exemple : Décodeur 3 enrées / 8 sories e 2 e e e m - s n - Décodeur m enrées n 2 m n sories seule sorie à la fois es acivée s 7 s 6 s.2.2. Réalisaion des décodeurs La réalisaion des décodeurs se fai à parir d'une marice ET. L expression d une sorie s i d un décodeur es un minerme sur les enrées e i : s = m Exemple : Décodeur 3 enrées / 8 sories défini par (code DB des enrées : DB Décimal) : s = e e e s M s 2 = e e e 2 = e e e 7 2 i i Réalisaion Représenaion symbolique ET e e e 2 e e... e 2 s s s 7... s s s
47 Elecronique Numérique 2. Logique combinaoire pplicaions des décodeurs dressage d'une mémoire (décodage d adresses) (mémoire paginée) Représenons une mémoire comme un ableau d'élémens binaires. e ableau es divisé en lignes e en colonnes. Pour lire un mo mémoire, il fau lui envoyer le numéro de la ligne souhaiée : c'es son adresse. Une mémoire ayan 24 lignes, par exemple, nécessie bis d'adresse. Un décodeur inerne à la mémoire perme la sélecion d'une ligne e d'une seule à un insan donné. uorisaion accès ligne ligne adresse i décodeur binaire ligne i ligne 23 auorisaion accès mémoire (hip Selec) 8 élémens binaires par ligne = mo sorie ligne i Si un microprocesseur délivre une adresse sur 6 fils, il possède une capacié d'adressage (espace adressable) de 2 6 soi mos. Les 24 mos de la mémoire précédene occupen donc une faible parie de ce espace. Il es alors commode de parager celui-ci en 64 pages de 24 mos, chaque page pouvan correspondre à un boîier mémoire. La sélecion du numéro de page, donc du boîier correspondan (hip Selec), es effecué par le décodage de 6 bis parmi les 6 (en général les poids fors). Les bis resans permeen la sélecion inerne d'un mo mémoire. a 9... a adresse a... a 5 a 5... a 6 décodeur mémoire S sorie s i hip Selec La sorie s i du décodeur es connecée à l'enrée hip Selec (S). Si le nombre décimal équivalen à ( a L a ) 5 2 es différen de i, la mémoire ne délivre aucune informaion en sorie. Dans le cas conraire, la sorie de la mémoire es le conenu de la ligne don le numéro es fixé par les adresses ( a9 L a) avec i 63. vec i = 3, pour accéder à la mémoire, le microprocesseur doi envoyer une adresse a L a elle que : ( a a ) L = 3 ce qui correspond à des adresses : ( ) (... ) ( FFF ) H 9 2 H ( caracère Hexa 4 bis car 2 4 = 6 ) 3 72 dresse 4 95 ou bien : ( ) ( ) Généraion de foncion omme oue foncion logique s peu s'exprimer comme une somme de minermes : s = engendrer s, de faire un OU avec les sories s minerme). i = mi d un décodeur = i s i i m i, il suffi, pour s (une sorie de décodeur es un 2. 4
48 Elecronique Numérique 2. Logique combinaoire 2 Exemple : N e 2 e e s f( e, e, e ) = 2 e 2 e e Décodeur Binaire s s s 2 s 3 s 4 s s 5 s 6 s 7.3. Transcodeur Un ranscodeur es un disposiif permean de passer du nombre N écri dans un code au même nombre N écri dand le code Synhèse d'un ranscodeur Le nombre N dans le code s'exprime à l'aide des variables, B,, D par exemple, e dans le code 2 avec les variables, Y, Z. (Le nombre des variables dans chaque code n'es pas forcémen idenique). Le problème de la synhèse d'un ranscodeur revien à calculer chacune des sories, c'es à dire les variables de 2 (ici, Y, Z) en foncion des enrées ou variables du code (ici, B,, D), soi : = f(, B,, D) Y = f2 (, B,, D) Z = f, B,, D 3 ( ) Exemple : Transcodage d'un nombre N (code Gray) en code binaire pur de la moiié enière du nombre N : (le code de Gray es défini el qu seul bi change au passage d un mo au suivan) N BD ode Gray YZ Moiiè enière en binaire pur 2. 5
49 Elecronique Numérique 2. Logique combinaoire 2 es égale à si les variables BD prennen les valeurs,,,,,,, ou, ce que l'on peu reporer dans un ableau de Karnaugh pour obenir l'expression la plus simple de la foncion f. On procède de la même façon pour Y, Z ce qui donne : D B Y D B Z D B D'où le schéma : B = Y = B + B = B Z = B = Y = Z.3.2. pplicaion : ranscodeur BD / 7 segmens On appelle ranscodeur BD / 7 segmens le disposiif de ranscodage permean de passer du code BD (Décimal odé Binaire encore appelé binaire pur) ou du code Hexadécimal odé Binaire au code d'affichage du chiffre sur un afficheur 7 segmens. L'opéraion de décodage du chiffre es réalisé visuellemen (inerpréaion visuelle de la forme du chiffre formé par l'allumage des segmens). Soien a, b, c, d, e, f e g les variables correspondan aux 7 segmens. Si une variable es au niveau acif (par exemple ), le segmen correspondan es allumé. Les segmens son réparis comme l'indique la figure ci-après : a f g b e d c Les chiffres éan formés de la façon suivane : Le code à 7 segmens correspondan es donné par la able : N code BD code 7 segmens BD abcdefg La synhèse d'un décodeur 7 segmens s'effecue comme pour un ranscodeur classique. Le code 2 de représenaion du nombre N ayan 7 variables, il y a 7 foncions à calculer (a,b,c,d,e,f,g) en foncion des variables du code. N codé en BD B D a b c d e f g Transcodeur BD - 7 segmens 2. 6
50 Elecronique Numérique 2. Logique combinaoire 2.4. Muliplexeur (ou séleceur ou aiguilleur).4.. Définiion Un muliplexeur es un circui réalisan un aiguillage (recopie) de l'une des enrées de données (par la commande des enrées d'adresse) vers une sorie unique. Il y a sélecion d'une donnée parmi 2 n ( n enrées d adresses). 2 n enrées de données D7... D D n enrées d'adresse 2 MU 2 n S sorie S Exemples : Muliplexeur 2 : Muliplexeur 4 : D MU 2 S D D D 2 D 3 MU 4 S D Table de vérié : Table de vérié : S S D D D D D 2 D 3 Equaion de S : Equaion de S : S = D si = S = D si = S = D si = S = D si = S = D2 si = S = D si = soi : S = D + D 3 soi : S = D + D + D + 2 D 3 De façon générale, la sorie d un muliplexeur à n enrées d adresses s exprime en foncion des enrées de données D i e des minermes m i sur les enrées d adresses : S = n 2 i= D i m i 2. 7
51 Elecronique Numérique 2. Logique combinaoire Réalisaion Exemple : Muliplexeur 4 : Réalisaion D D D 2 D 3 Représenaion symbolique ET.4.3. pplicaions S Sélecion d'un bi parmi plusieurs bis & sélecion d'un mo binaire parmi plusieurs mos binaires OU D D D 2 D 3 Exemple: Sélecion d'un mo de 3 bis parmi les 4 mos de 3 bis : il fau auan de muliplexeurs qu'il y a de bis dans le mo (ici 3 muliplexeurs) : S Principe 4 mos de données,b,,d issus de 4 leceurs de bande par exemple B D Réalisaion B D S a 2 a a b 2 b b c 2 c c d 2 d d S 2 S S Source d'infos Source d'infos 2 Source d'infos 3 Source d'infos 4 MU S 2 MU MU S S Desinaion S = ou B ou ou D en foncion de la sélecion sur les fils d'adresses MU S s = a 2 e e = s = a S = e e = s = b S = B s = a s = b 2 s = b 2 2 Sélecion d'adresses e e s = c 2 e e = s = c S = e e = s = d S = D s = c s = d 2 s = d Transmission de plusieurs conversaions sur une seule ligne éléphonique (numérique) 2 2 s m ( ) s m s * m MU DEMU s * m s m Bloqueur + Filre Passe-bas s * N N s m ( ) 2 s m s * m 2 2 s * s * m 2 Bloqueur + Filre Passe-bas s m 2 Echanillonneurs T e Muliplexeur emporel Démuliplexeur emporel Enrées d'adresses 2. 8
52 Elecronique Numérique 2. Logique combinaoire Généraion (maérialisaion) d'une foncion logique La sorie d un muliplexeur s expriman comme une somme de minermes (forme canonique), e comme oue foncion logique peu se mere sous forme canonique, elle peu donc s exprimer comme la sorie d un muliplexeur. Exemple : foncion f de 2 variables a e b exprimée sous forme canonique (somme de minermes) : f ( a, b) = a b f (, ) + a b f (, ) + a b f (, ) + a b f (, ), = valeur pariculière foncion logique f lorsque a = i e b= j avec : f ( i j) uilisaion d'un muliplexeur à 4 enrées de données donc 2 enrées d'adresses : Exemple : opéraeur ET : ab = ab + ab + ab + ab = ab D + ab D + ab D2 + ab D3 f (, ) f (, ) f (, ) f (, ) D D D 2 D 3 MU 4 f ( a, b ) a b s = ab D = D = D = 2 D = 3 D D D 2 D 3 MU 4 s = a. b a b a b Exemple 2 : opéraeur OU exclusif : a b = ab + ab = ab + ab + ab + ab = ab D + ab D + ab D + ab D 2 3 f (, ) f (, ) f (, ) f (, ) D D D 2 D 3 a MU 4 b f ( a, b ) a b s = a b D = D = D = 2 D = 3 Le muliplexeur es un opéraeur programmable. Pour maérialiser par un muliplexeur une foncion de n variables, il fau un muliplexeur à 2 n donc n enrées d'adresses : MU 2 n onversion parallèle-série (regisre à décalage) D D D 2 D 3 a MU 4 b s = a b enrées de données Soi un mo binaire D= d 3 d 2 d d disponible en mode parallèle, c'es à dire sur quare fils, chaque fil éan affecé à un élémen binaire (bi) du mo. Pour ransmere les élémens binaires en série, c'es à dire les uns à la suie des aures sur un seul fil, il fau d'abord (en commençan par exemple par le LSB (Less Significan Bi), bi de plus faible poids) ransmere d, puis d, puis d 2 e enfin d 3. eci revien à sélecionner (ou aiguiller) l'un des élémens binaires de D sur le fil unique de sorie série. Le muliplexeur es capable d'effecuer cee âche si les combinaisons correspondanes son placées successivemen sur les commandes de sélecion. omme le monre le le chronogrammme ci-dessous : Dans le premier emps il fau que = = pour que S = D = d. Ensuie passe à ce qui impose S = D = d. Puis = e = d'où S = D2 = d2. E enfin = = alors S = D = d 3 3. Parallèle d d d 2 d 3 D D D 2 D 3 S Série S d d d d 2 3 Le mécanisme de changemen simulané d éa pour e doi êre fai à l aide d une synchronisaion (horloge). 2. 9
53 Elecronique Numérique 2. Logique combinaoire 2.5. Démuliplexeur.5.. Définiion Un démuliplexeur réalise l opéraion duale du muliplexeur : il aiguille donnée sur parmi 2 n ( n enrées d adresses). sories enrée de donnée d n enrées d'adresse 2 DEMU n 2 S 7... S S 2 n sories Les sories non aiguillées son non acivées. Par convenion on les suppose au niveau (en fai, cela peu êre ou ou z (haue impédance) suivan la echnologie uilisée par le consruceur). Exemple : Démuliplexeur 8 : Table de vérié : d 2 S i 2 DEMU 8 S 7... S S... S S S = =... 7 = d d d Equaion de S i : (exemple : S 3 ) S3 = 2 d De façon générale, la sorie S i d un démuliplexeur à n enrées d adresses s exprime en foncion de l enrée de donnée d e d un minerme m i sur les enrées d adresses : S i = m d.5.2. Réalisaion i Exemple : Démuliplexeur 8 : Réalisaion Représenaion symbolique ET 2 d... 2 d... S S S 7 S S S 7 2.
54 Elecronique Numérique 2. Logique combinaoire pplicaions onversion série/parallèle (regisre à décalage) d 3 d 2 d d MU 4 DEMU 4 Mémoire d 3 d 2 d d Parallèle a a Série a a Parallèle ffichage muliplexé Soi 4 chiffres à afficher, on peu afficher les chiffres l'un après l'aure rès vie pour donner l'impression de simulanéié à l'oeil..6. ircuis inégrés arihméiques.6.. ddiionneur 'es un circui réalisan l'addiion de deux nombres binaires. La able d'addiion de deux nombres à un élémen binaire es la suivane : b a r Le résula de l'opéraion compore deux paries : - la somme : - e la reenue générée r : b b a a = a b r = a b Le circui élémenaire réalisan cee opéraion es le demi-addiionneur : a b = & r La srucure de l'addiionneur de deux mos es alors répéiive. Une cellule élémenaire peu donc êre uilisée pour chaque poids. Elle es appelée addiionneur comple. L'addiion globale es réalisée par la mise en cascade des cellules au sens des reenues. 2.
55 Elecronique Numérique 2. Logique combinaoire 2 L'addiionneur comple es défini par la able de vérié ci-après : ( r i : reenue propagée de l éage précéden du mo; r i+ : reenue générée) plus arihméique Somme ( r, ) = a i + i i + b + r i i a i b i r i r i + i a i b i r i DD i r i + i a b i i r i r i + a b i i r i a b r r a b r ( a b ) = i i i i (diagonales de significaives de foncions OU) i i i i i i + = + e qui donne le schéma de réalisaion : r i a i b i = = i & & r i + L'addiion de deux mos de n bis nécessie n addiionneurs comples, la reenue appliquée sur les plus faibles poids es nulle e chaque reenue calculée es appliquée au chiffre de poids immédiaemen supérieur. a n - b n - a n - 2 b n - 2 r n - r n - 2 a b a b r r r = = a... a n - + b n -... b D D D D D D D D n n -... (+ arihméique) r n r n - r 2 n n - n - 2 ee soluion es inéressane d'un poin de vue du maériel parce que répéiive. Par conre, comme le résula d'une addiion ne peu pas êre obenu insananémen, le emps maximum mis pour obenir le résula es direcemen proporionnel au nombre d'addiionneurs. En effe, après le premier emps de calcul la reenue r es appliquée au second addiionneur. e n'es qu'après le second emps de calcul que la reenue r 2 es délivrée e ainsi de suie, jusqu'au dernier addiionneur. Pour cee raison, l'addiionneur ainsi réalisée pore le nom d'«addiionneur à propagaion de la reenue» ou «addiionneur à reenue série». 2. 2
56 Elecronique Numérique 2. Logique combinaoire 2 Pour éliminer ce inconvénien, la seconde echnique consise à calculer oues les reenues en parallèle, direcemen à parir des données sans même calculer les sommes parielles. Le circui ainsi réalisé es alors appelé «addiionneur à reenue anicipée». En reprenan le ableau de Karnaugh relaif au calcul de la reenue il vien : r ab r ( a b ) i i i i i i + = + + r i + a b i i r i fin d'évier des emps de calcul cumulaifs, il ne fau pas uiliser la relaion en an que relaion de récurrence, c'es à dire qu'il ne fau pas uiliser un résula de calcul pour le calcul suivan. Il fau sysémaiquemen recalculer chaque erme, ce qui donne, en posan S = a + b e p = ab : r = p + rs i i i i i i p r S r & τ τ 2 r = p + r S = p + p + r S S = p + p S + r S S De même : ( ) 2 p p S & r 2 S r & τ τ 2 r = p + r S = p + p + p S + r S S S = p + p S + r S S S e : r4 = p3 + r3 S3 = p3 + p2 S3 + p S2 S3 + p S S2 S3 + r S S S2 S3 E ainsi de suie : ( ) On consae que les emps de calcul des reenues son ous égaux. Ils corresponden au emps de ransi de l'informaion dans une pore ET ( τ ) e une pore OU ( τ 2 ) en cascade (le nombre d'enrée d'une pore n'affecan pas son emps de ransi). La srucure d'un addiionneur 4 bis uilisan la echnique de calcul anicipé des reenues es la suivane : a 3 b 3 a 2 b 2 a b a b r r 4 = r 4 alcul des P i e S i P 3 S 3 P 2 S 2 P S P S a 3 alcul des reenues r 3 r 2 r r b 3 a 2 b 2 a b a b alcul des sommes Forma des mos (en bis) omparaison des reenues propagée e anicipée Temps de calcul en ns (logique TTL série N) Propagaion de la reenue Reenue anicipée } avec addiionneur 4 bis inégré avec uilisaion d'un généraeur de reenue avec 2 généraeurs de reenue en cascade 2. 3
57 Elecronique Numérique 2. Logique combinaoire Sousracion Pour la sousracion, on se ramène à une addiion. Le nombre négaif es codé en code complémen à 2 : B B + + = (+ arihméique e non logique). B = + ( B) = + 2 B = + ( B + ).6.3. omparaeur Un comparaeur es un disposiif capable de déecer l'égalié de deux nombres e évenuellemen d'indiquer le nombre le plus grand ou le plus pei. Principe : Pour effecuer la comparaison de deux nombres e B, deux echniques son courammen uilisées : - la sousracion des deux nombres. Si le résula de l'opéraion - B es posiif, cela signifie que es supérieur à B. Si le résula es nul, les deux nombres son égaux. - une comparaison bi à bi. 'es cee méhode qui es uilisée dans la plupar des circuis inégrés commercialisés. La comparaison s'effecue poids à poids en commençan par le chiffre le plus significaif. Les nombres e B ayan le même forma, le nombre es forcémen supérieur à B si son élémen binaire le plus significaif (MBS) es supérieur au MSB de B. Si ces deux bis son égaux, la supériorié (ou l'infériorié) ne peu êre déerminée que par l'examen des bis de poids immédiaemen inférieur e ainsi de suie. L'examen des poids successifs s'arrêe dès que l'un des élémens binaires es supérieur ou inférieur à l'aure. Les deux nombres e B son égaux si, après avoir examiné ous les élémens binaires, il n'a pas éé déecé de supériorié ou d'infériorié. omparaeur donnan l'égalié des deux nombres 'es le comparaeur le plus simple. Deux nombres son égaux si ous les chiffres son égaux deux à deux. Pour déecer l'égalié de deux élémens binaires, un opéraeur OU exclusif complémené es indispensable. Un opéraeur ET indique la simulanéié de oues les inégaliés parielles. Soien deux nombres e B de quare élémens binaires chacun, = a 3 a 2 aa e B = bbbb 3 2 : = B si ( a = b ) ET ( a = b ) ET ( a = b ) ET ( a = b ) e qui donne le schéma : a 3 = b 3 a 2 b 2 a b = = & = B a b = 2. 4
58 Elecronique Numérique 2. Logique combinaoire 2 omparaeur comple Par analogie avec l'addiionneur, la concepion d'un comparaeur comple pour des nombres de quare élémens binaires peu se faire de deux façons différenes : - Première soluion : En cascade, c'es à dire avec propagaion des égaliés parielles. Les poids de e de B son comparés en commençan par le plus élevé. La comparaison sur les poids faibles ne peu êre faie que si ous les bis de poids plus élevés son égaux deux à deux. La cellule élémenaire de comparaison compore rois enrées, les élémens binaires a e b de même poids de chaque nombre e une enrée E pour auoriser la comparaison, ce qui donne la able de vérié ci-après : E a i b i a i = b i E i a i > b i S i a i < b i I i Pas de comparaison S i E i I i = = = si si si a > b i i a = b i i a < b i i S I ( ) ( ) ( ) ( ) = E a b i i i = E a b i i i E = E a b = Eab + Ea b = E S + I i i i i i i i i i D'où le schéma d'une cellule de comparaison, noée i : E a i & S i b i & E i & I i i 2. 5
59 Elecronique Numérique 2. Logique combinaoire 2 L'enrée d'auorisaion E es en fai la déecion d'égalié des élémens binaires de poids supérieurs; le schéma de l'ensemble es alors le suivan : = a 3 a 2 a B = b 3 b 2 b a 3 S 3 E 3 > B b 3 3 I 3 a 2 E S 2 b 2 2 E 2 I 2 < B a E S E = B b I Remarque : omme pour l'addiionneur à propagaion de la reenue, le résula de la comparaison apparaî après un emps direcemen lié au nombres de cellules à raverser à cause de la mise en cascade (calcul série). Pour palier ce inconvénien, c'es une srucure parallèle qu'il fau adoper. - Deuxième soluion : omparaison parallèle. Tous les élémens binaires de même poids son sysémaiquemen e simulanémen comparés. Le blocage s'effecue alors sur les résulas de chaque comparaison. La cellule élémenaire i devien : Blocage des poids > i & a i < b i < B & a i b i & a i = b i Blocage des poids < i & & > B Blocage des poids > i > a i b i Le blocage des sories b i > a (ou b < a ) se fai par une pore ET recevan oues les sories déecan les égaliés i i i bj aj i j > i. Le nombre d'enrées de cee pore augmene donc au fur e à mesure que l'on s'éloigne du MSB. L'informaion = B es fournie par une pore ET vérifian la simulanéié des égaliés parielles. = des poids supérieurs au rang ( ) 2. 6
60 Elecronique Numérique 2. Logique combinaoire 2 Le schéma du circui 7485 ci-après monre l'ensemble d'un comparaeur 4 bis cascadable. 3 B 3 > B 2 Symbole B 2 < B = B > B = B 3 } < = > comp < B = B > B 3 } B B < B B Les enrées a < b, a = b e a > b, dies enrées de mise en cascade, son représenaives des résulas des comparaisons sur les élémens binaires d'indice inférieur. insi, pour effecuer la comparaison de deux nombres de hui élémens binaires, on adope le monage ci-après : MSB N 3 } comp 3 } comp < = > < B = B > B < = > < B = B > B N < N 2 N = N 2 N > N 2 3 } B 3 } B N 2 MSB 2. 7
61 Elecronique Numérique 2. Logique combinaoire Généraeur de parié On appelle parié d'un mo binaire N le nombre de conenus dans ce mo; le mo a une parié paire si ce nombre de es pair. fin de rendre les ransmissions numériques plus robuses au brui, on adjoin un bi à ous les mos ransmis. e bi, di de parié, es choisi de façon à ce que le mo comple formé du mo e du bi de parié ai une parié paire (dans le cas de la parié paire). Le principe uilisé pour engendrer ce bi de parié repose sur la propriéé du OU exclusif : a b c L m vau si un nombre impair de variables es au niveau : N Bi de parié généré.6.5. Unié rihméique e Logique (UL / LU) e circui es uilisé dans quasimen ous les processeurs de calcul. 'es un opéraeur capable d'effecuer, comme son nom l'indique, un ensemble de raiemens arihméiques (addiion, sousracion, muliplicaion (par 2 par décalage d cran vers la gauche des bis du mo), division (par 2 par décalage d cran vers la droie des bis du mo) ec...) ou logiques (ET, OU...) sur des mos binaires de longueur donnée. Le choix de l'opéraion es déerminé par des bis de commande. 'es donc un opéraeur programmable. Il n'es pas inéressan de présener en déail l'archiecure inerne de l'lu, qui résule d'une grande parie des circuis déjà présenés. Par conre, il es imporan de comprendre l'acion de l'unié arihméique e logique sur les mos binaires (chemin des données...). Exemple d'unié logique e arihméique inégrée 748 Représenaion foncionnelle Symbole logique 4 Opérandes S Sélecion Opéraion 5 P G F Résula S S S 2 S 3 M n 4 I M 3 LU (... 5) P (... 5) G 6 ( P = ) (... 5) O P G = B n +4 4 B 4 4 B P P () F B (2) F 2 B 2 P (4) F 2 3 B 3 P (8) F
62 Elecronique Numérique 2. Logique combinaoire 2 e circui inégré uilise des mos de quare élémens binaires. inq fils de sélecion permeen un choix parmi 32 foncions groupées en 6 opéraions arihméiques e 6 opéraions logiques. Indépendammen de la foncion réalisée, ce circui dispose d'une sorie déecan l'égalié des données en enrée. Lors des opéraions arihméiques sur des nombres de plus de quare bis, il exise la possibilié de mise en cascade des boîiers avec la echnique de la propagaion de la reenue ( reenue enrane, 4 reenue sorane). Poids FORTS B Poids FIBLES B 4 Résula On peu égalemen uiliser la echnique de la reenue anicipée en uilisan un circui supplémenaire spécialisé dans le calcul des reenues (uilisaion de P e G) : LU P G LU P G LU P G LU P G P G P G P G P G Généraeur de reenue anicipée 2. Les réseaux logiques programmables 2.. Srucure Les réseaux logiques programmables son des circuis qui se programmen à parir d un logiciel qui, après saisie de l équaion logique, engendre un fichier JEDE (.JED). elui-ci perme la programmaion du composan par une care spécialisée. Une approche comme celle que propose le langage VHDL es similaire mais plus puissane car la programmaion se fai à l aide d un langage puissan par sa modularié. L enrée peu êre le source VHDL ou un fichier graphique des circuis logiques ou encore une machine d éas. Un compilaeur VHDL accepe l une ou l aure de ces enrées e perme même la généraion du code source VHDL à parir d une enrée à base de pores logiques ou de machines d éas. Toue foncion logique de n variables peu se mere sous la forme d une somme logique de produis logiques (somme de minermes) ou sous la forme d un produi logique de sommes logiques (produi de maxermes). uilisaion de 2 marices : - marice OU - marice ET Marice ET Marice ET Réalisaion Représenaion symbolique + V ET B R S = B B fusible inac fusible dérui S = B fusible inac Marice OU Réalisaion OU Marice OU Représenaion symbolique B S = + B R fusible inac fusible dérui S = + fusible inac 2. 9
63 Elecronique Numérique 2. Logique combinaoire 2 On adjoin parfois un circui de sorie à la marice OU : a) ircui d inversion (commandé par l enrée ) S i OR S i S i OR S i = = Pas d'inversion : S i = S Inversion : Si = S i b) ircui 3 éas (commandé par l enrée E de mise en haue impédance) i Marice OU S i E 2.2. Mémoire More (ROM) (Read only Memory) (elle conien un décodeur) Enrées d'adresses a a m - S OE ROM S : hip Selec (sélecion de boiier) acif à l'éa bas ( S = : boiier mémoire sélecioné) OE : Oupu Enable (conrôle l'acivié, la disponibilié des sories) acif à l'éa bas ( OE = : sories disponibles) d n - d Sories de données Pour chaque adresse apparaî une donnée pariculière définie par son adresse. Ex. : m = 4, n = 4, avec le conenu de mémoire : dresse Donnée a3 a2 aa d d d d ET a 3 a 2 a OU a... d 3 d 2 d d fusible inac Les ROMs son écries en usine selon l'applicaion voulue e son figées (pas d effacemen ni réécriure des données). Dans une ROM la marice ET es fixée e la marice OU es programmable. 2. 2
64 Elecronique Numérique 2. Logique combinaoire 2 apacié d'une ROM : courammen au minimum de l'ordre de 6 KOces = 2 4 Oces m = 4 (4 enrées d'adresse) n = 8 (8 sories de données) Rapidié d'une ROM : de l'ordre de ns (dépendan de la echnologie) 2.3. PROM - EPROM (Programmable ROM - Erasable PROM) PROM : ROM à programmer par l'uilisaeur EPROM : PROM effaçable (aux UV (UlraVioles)) e reprogrammable EEPROM : EPROM effaçable non pas aux UV mais élecriquemen. Dans une PROM (ou une EPROM, ou une EEPROM) la marice ET es fixée e la marice OU es programmable. ET fixée a 3 a 2 fusible remplacé par une liaison fusible inac a a OU programmable... d 3 d 2 d d 2.4. PL / GL (Programmable / Gae rray Logic) Les réseaux PLs e GLs on une srucure opposée à celle d'une PROM. La marice ET es programmable. La marice OU es fixée. Uilisaion des circuis PLs Un circui PL peu à lui seul assurer oues les foncions combinaoires convenionnelles. on peu à l'aide d'un réseau PL réaliser plusieurs pores élémenaires e ainsi remplacer plusieurs circuis inégrés. Exemples d applicaion : a) Réalisaion des pores élémenaires à l'aide d'un réseau PL Soi le réseau PL suivan, programmé pour figurer les pores combinaoires représenées : PL 2H6 2 V D 2 9 F 3 8 B G 4 7 E M 5 6 H N 6 5 O P 7 4 R 8 3 L I 9 2 K GND J L'éa inerne de la marice ET es alors la suivane : 2. 2
65 Elecronique Numérique 2. Logique combinaoire D B F E G H 5 M O N R P L 8 2 K I 9 J Légende Fusible inac Tous fusibles inacs Fusible dérui 2. 22
66 Elecronique Numérique 2. Logique combinaoire 2 b) Réalisaion d'un généraeur de parié B D B D B D B D B D Y B D B D B D Y = B D+ BD + B D + BD+ B D+ BD + B D + BD c) Réalisaion d'un muliplexeur 4 vers S S D S S D Z S S D 2 S S D 3 Z = S S D + S S D + S S D2 + S S D3 L éa inerne des fusibles es donné ci-après : 2. 23
67 Elecronique Numérique 2. Logique combinaoire Y B Z N D N D N D N D N S N S D Légende Fusible inac Tous fusibles inacs Fusible dérui Non onnecé N 2. 24
68 Elecronique Numérique 2. Logique combinaoire PL (Programmable Logic rray) ou PLD (Programmable Logic Device) ou PLD (omplex PLD) ou EPLD (Erasable PLD) Dans un réseau PL, les marices ET e OU son oues les deux programmables FPG (Field Programmable Gae rray) omposés d'une marice ET programmable, les réseaux FPG n'on pas de marice OU. haque produi es relié direcemen à une sorie. La densié peu aeindre le million de pores logiques par circui FPG. Uilisaion des FPGs Le FPG es un opéraeur programmable spécialisé dans le décodage. Exemple : Décodage des adresses fournies par un microprocesseur (microprocesseur MOTOROL 689) Iniialisaion RESET Bus de données Décodage erreur Horloge 689 ETL Bus d'adresses IR R / W E Décodage E F S ROM (E FFFF) 8 KOces F S RM ( 3FF) KOce R / W F 2 S I (8 9) 2 Oces E E R / W IR F 3 S R / W PI 2 (4 7) 4 Oces IR E F 4 S PI ( 3) 4 Oces R / W IR 2. 25
69 Elecronique Numérique 2. Logique combinaoire 2 Table du FPG Sories Niveau acif Variables d'enrée I I I2 I3 I4 I5 I6 I7 I8 I9 I IB I ID IE IF F décodage ROM F décodage RM F 2 décodage I F 3 décodage PI F 4 décodage PI 2 F 5 F 6 Non uilisé F 7 F 8 Légende : : Niveau bas - : Ea iniial des fusibles : Niveau hau : Variables n'éan pas uilisées RM (Random ccess Memory) Par opposiion aux ROMs, les mémoires vives (appeléées RM) peuven êre lues e écries. onrairemen aux PROMs, leur écriure n'es pas définiive dans le sens où le conenu des RMs es perdu à l'exincion de l'alimenaion élecrique. Le boîier des RMs possède, en plus de celui des ROMs, une enrée RW (Read/Wrie) : RW = lecure RW = écriure On disingue : - les RMs saiques, consiuées de Bascules élémenaires (Bascules D (cf. logique séquenielle)), - les RMs dynamiques, consiuées de condensaeurs (inégrables à plus grande échelle) mais qu il es nécessaire de rafraîchir périodiquemen pour en garder le conenu. - les mémoires flash rapides e ne nécessian pas d alimenaion pour sauvegarder leur conenu SI (pplicaion Specific Inegraed ircui) (omposan spécifique, dédié) Un composan SI es développé spécifiquemen pour une applicaion analogique, numérique ou mixe, e desiné à une exploiaion en nombre assez imporan. uelques millions de pores peuven êre inégrées dans un SI. Des formas de bibliohèques d SIs son développés (LFdvanced Library Forma, OVI Open Verilog Inernaional). Leur rendemen économique vau à la condiion d une producion à grande échelle oncepion de PLD, de FPG Des langages (compilaeurs) de concepion ( spécificaion), de simulaion e de programmaion de ces composans on éé développés (langage VHDL, Verilog,...). 2.. pplicaion Le synopique d une applicaion monéique d une care à puce (avec ou sans conac) es présenée à ire d exemple
70 Elecronique Numérique 2. Logique combinaoire 2 Borne de paiemen (sans conac) Borne de chargemen des drois Terminal de paiemen Données Inerface Enrée/Sorie Unié enrale RM Mémoire de ravail (ROM) Sysème d'exploiaion mécanisme de sécurié (EEPROM - RM) Informaions relaives au poreur e à l'applicaion dresses are à puce 2. 27
71 Elecronique Numérique TD 2. Logique combinaoire 2 TD 2. LOGIUE OMBINTOIRE 2 Transcodage. odeur de parié décimale (Transcodeur) Donner le schéma de réalisaion du codeur don la sorie es à si l enrée N (chiffre enre e 9 codé en BD) es paire e sinon. 2. Transcodeur BD - 7 segmens On désire afficher un chiffre de à 9 codé en BD (Décimal odé Binaire) sur 4 bis BD à l aide d un afficheur 7 segmens ( es le bi de plus for poids MSB). L affichage se fai de la façon suivane : a f g b e d c BD = a) Ecrire la able de ranscodage. b) Donner la foncion logique associée au segmen a. c) Donner la srucure de réalisaion du ranscodeur. Muliplexage 3. Muliplexeur pour foncion logique Un muliplexeur peu maérialiser une foncion logique quelconque: Ex: f ( a, b) = a + b Transmission 4. onsrucion d'un code déeceur d'erreur Les mos-code uilisés dans les ransmissions numériques on la srucure générale suivane : m bis d'informaion k bis de conrôle 2. Schéma de réalisaion? Le sysème de déecion d'erreur le plus simple consise à n'uiliser qu'un seul élémen binaire de conrôle (k = ). e élémen es déerminé de elle sore que le nombre de parmi les (m+k) bis d'informaion es pair (cas du conrôle de parié, di encore de parié paire), ou impair (cas du conrôle de parié impaire di encore de parié impaire). a) Emission : Déerminer un sysème capable de calculer ce élémen de conrôle dans le cas m = 3 e k = avec un conrôle de parié impaire. b) Récepion : Déerminer un sysème capable de déecer une erreur ( seul bi modifié au maximum) de ransmission dans ce même cas de figure : (on suppose que les bis de conrôle ne son pas modifiés) m 2 m m k perurbaion m 2 m m k déeceur d'erreur Emission Récepion T TD 2.
72 Elecronique Numérique TD 2. Logique combinaoire 2 5. Sysème de ransmission numérique avec correcion d'une erreur Dans un sysème de ransmission, on veu une ceraine sécurié, c'es à dire êre capable de déecer e de corriger une erreur. Pour cela on uilise un codage pariculier appelé «code de Hamming». Pour ransmere les quare élémens binaires correspondan à un chiffre du sysème décimal, on ajoue rois élémens binaires pour assurer des conrôles de parié. Soien k, k 2, k 3 les rois bis de conrôle e m, m 2, m 3 e m 4 les quare bis du message uile. La posiion relaive des bis k i e m j es donnée par le ableau : Numéro du bi k k 2 k 3 m m 2 m 3 m 4 On effecue rois ess de parié pour la déecion de l erreur : - le es de parié (es T sur k ) se fai sur les bis :, 4, 5, 7 - le es de parié (es T 2 sur k 2 ) se fai sur les bis : 2, 4, 6, 7 - le es de parié (es T 3 sur k 3 ) se fai sur les bis : 3, 5, 6, 7 On rappelle que le résula d un es de parié es égal à si le nombre de dans la zone considérée es pair (parié paire). La disposiion es choisie de elle façon que le nombre binaire (T 3 T 2 T ) 2 formé par les résulas des ess T, T 2 e T 3 donne la posiion du bi erronné.. Donner le schéma du disposiif «émeeur» permean de générer les bis k, k 2 e k Donner le schéma du disposiif «récepeur» permean de générer les bis T, T 2 e T Proposer un disposiif simple réalisan la correcion du bi erroné ( seul bi au maximum peu êre erroné ; on suppose que les bis de conrôle ne son pas modifiés). Perurbaions k T Emeeur k 2 Récepeur T 2 m m 2 m 3 m 4 k 3 m m 2 m 3 m 4 m' m' 2 m' 3 m' 4 T 3 m' m' 2 m' 3 m' 4 orreceur m m 2 m 3 m 4 ode de Hamming (pour N 9) N k k 2 k 3 m m 2 m 3 m Exemple Message émis N = 4 Perurbaions Message reçu Emeeur k k 2 Récepeur T T 2 m m 2 m 3 m 4 k 3 m m 2 m 3 erreur T 3 m 4 (T 3 T 2 T ) 2 = () 2 = (5) onclusion : le bi 5 (soi m 2 ) es erronné. TD 2. 2
73 Elecronique Numérique TD 2. Logique combinaoire 2 odage. odeur BD (déjà fai en cours) TD 2 NNEE. LOGIUE OMBINTOIRE 2 Donner le schéma de réalisaion du codeur en BD ( Binary oded Decimal) d'un chiffre N compris enre e 9. codeur à enrées : N 9 e 4 sories : B D ( : MSB (Mos Significan Bi)) Décodage 2. Décodeur BD (déjà fai en cours) Donner le schéma de réalisaion du décodeur d'un mo écri en BD sur 3 bis : décodeur à 3 enrées : e e e 2 e 8 sories : s à s 7 ( e 3. Décodeur d adresses (déjà fai en cours) e e e 2. : LSB (Less Significan Bi)) Soi un microprocesseur délivran une adresse sur 6 bis. Sa capacié d'adressage es donc : 2 6 = mos de la mémoire. Il es commode de parager cee mémoire en 64 pages de 24 mos, chaque page pouvan correspondre à un boîier mémoire. La sélecion du numéro de page, donc du boîier correspondan (hip Selec S) es effecuée par le décodage des 6 bis de poids for parmi les 6 bis. Les bis resan permean la sélecion inerne d'un mo mémoire : (de 8 bis par exemple) dresse 6 bis S Boîier mémoire n S Boîier mémoire n 8 Mo mémoire 8 bis Légende : 5 Décodeur d'adresses S Boîier mémoire n 63 8 n ou n n fils. (Bus) Donner la srucure du décodeur d'adresses. Transcodage 4. Transcodeur BD / parie enière (déjà fai en cours) Soi N écri en BD sur 4 bis BD. On désire obenir en sorie du ranscodeur un mo M de 3 bis YZ représenan en code BD la parie enière de la moiié du nombre N. Donner le schéma de réalisaion du ranscodeur. ( e : MSBs (Mos Significan Bis)) 5. Transcodeur hexadécimal - 7 segmens On désire afficher un caracère hexadécimal de à F ( à 9 puis à F) codé en hexadécimal sur 4 bis BD à l aide d un afficheur 7 segmens ( es le bi de plus for poids). L affichage se fai de la façon suivane : a f g b e d c B D E F a) Ecrire la able de ranscodage. b) Donner la foncion logique associée au segmen a. c) Donner la srucure de réalisaion du ranscodeur. TD 2. 3
74 Elecronique Numérique TD 2. Logique combinaoire 2 6. Transcodeur SV / à2 Soi N écri en code SV (Signe e Valeur bsolue) sur 3 bis B. On désire obenir en sorie du ranscodeur un mo M de 3 bis YZ représenan N en code à2 (omplémen à 2). ( e : MSBs (Mos Significan Bis)) N ode SV ode à2 B YZ Muliplexage 7. Muliplexeur de mo (déjà fai en cours) Donner le schéma de réalisaion du circui de sélecion d'un mo de 3 bis parmi 4 mos de 3 bis. 8. Muliplexeur pour foncion logique Soi la foncion logique y définie par sa able de Karnaugh. Uiliser un muliplexeur pour engendrer y : y a b c d MU 6 Remarque : il es aussi possible d'uiliser un MU 4 -> MU 4 s = y s = y 9. Muliplexeur pour conversion parallèle / série (déjà fai en cours) Donner le chronogramme de la séquence à envoyer sur les enrées d'adresses du muliplexeur pour converir le mo D3 D2 D D de parallèle en série. Démuliplexage. Démuliplexeur pour conversion série / parallèle (déjà fai en cours) Même quesion que précédemmen pour converir la séquence D D D2 D3 de série en parallèle. uelle foncion es en plus nécessaire? TD 2. 4
75 Elecronique Numérique TD 2. Logique combinaoire 2 ircuis arihméiques. ddiion - omparaison - Parié (déjà fai en cours) ddiion. Soien 2 bis a e b. Donner le circui élémenaire réalisan la somme arihméique enre a e b (appelé demiaddiionneur) : (/2 DD). 2. Soi en plus de ai e bi, le bi r i figuran la reenue de la somme élémenaire précédene enre ai e bi lorsque l'on désire faire la somme de 2 mos = a a La e B = b b Lb a) Donner le circui addiionneur comple (DD) enre a b r i i i n n 2 n n 2 e. b) Donner l'addiionneur à propagaion de reenue enre les mos e B. c) Donner l'addiionneur à reenue anicipée (plus rapide) enre les mos e B. omparaison 3. Soien 2 nombres = a a a a B = b b b b 3 2 e 3 2. Donner le circui don la sorie vau si les nombres e B son égaux. Parié 4. On appelle parié d'un mo binaire N le nombre de conenus dans ce mo : le mo a une parié paire si ce nombre de es pair. fin de rendre les ransmissions numériques plus robuses au brui, on adjoin à N (e à chaque mo ransmis) un bi di de parié, don la valeur es elle que le mo global formé de N e de ce bi de parié, ai une parié paire. Donner le circui généran ce bi de parié. TD 2. 5
76 Elecronique Numérique TP 2. Logique combinaoire 2. Maériel nécessaire TP 2. LOGIUE OMBINTOIRE 2 - Oscilloscope - Généraeur de signaux Basses Fréquences (GBF) - limenaion sabilisée ( 2x[ -3 V] &&& _ + x[ 5 V] &&& _ ) - Mulimère - Monieur MS5 (plaquee de câblage) - âbles : - T, BN-BN, BN-Banane, sonde oscilloscope, 6 fils Banane, peis fils. - omposans : - 7 Résisances kω (/4 Wa) - afficheur 7 segmens à cahodes communes : Réf.: HDSP-553 ( m) ou HDSP-753 (2 m). - ( minuerie NE 555 (circui compaible TTL e MOS)) - 5 LEDs recangulaires (4 Veres + Rouge) - 5 mini-inerrupeurs 2. Noaion du TP ircuis logiques de la famille MOS 4 : - 43 : 4 OR à 2 enrées - 47 : 4 OR à 2 enrées - 48 : 4 ND à 2 enrées - 45 : Transcodeur BD / 7 segmens : ompeur binaire - MU 4 - DEMU 4 Faire examiner par le professeur en fin de séance, les différenes paries du TP. 3. Eude Théorique ddiionneurs - odeurs - omparaeurs 3.. Technologie 2 grandes familles se dégagen principalemen : - la famille TTL (séries 74 e 54) qui maérialise un logique par une ension de + 5 Vols (à Vol près) - la famille MOS (séries 4 e 4) qui olère des ensions supérieures, mais pour laquelle on code en général égalemen un logique par une ension de + 5 Vols. Dans les 2 cas, le logique es maérialisé par une ension nulle (à Vol près). On rappelle qu une enrée d un circui laissée «en l air» ( non connecée) se compore comme une anenne, e prendra donc généralemen le niveau logique (du fai du rayonnemen élecromagnéique) ou bien le niveau logique en cas de récepion faible. Il es donc nécessaire de fixer les poeniels des enrées des pores uilisées pour les conrôler. Ne pas oublier qu une pore logique don la sorie es au niveau logique hau () se compore comme oujours comme un généraeur de ension avec résisance inerne. Le niveau (+ 5 Vols) es mainenu an que le couran de sorie ne dépasse pas l ordre de la dizaine de m, suffisan pour aaquer une LED par ex. On pourra inercaler une résisance ( kω) de limiaion de couran enre la sorie à visualiser e la LED, ou connecer direcemen la LED à la sorie du circui logique, la résisance inerne de la pore logique faisan office de limieur de couran sans perdre le niveau logique (pour une LED connecée en sorie). Simulaion (& âblage) : Pour des raisons de compaibilié, n uiliser que des circuis de la même famille (famille MOS 4 à ne pas mélanger avec la famille TTL 74xxx). TP 2.
77 Elecronique Numérique TP 2. Logique combinaoire Les addiionneurs a) Demi-addiionneur Soien a n e b n 2 bis à addiionner. L'expression binaire de (a n + b n ) s'écri (r n, s n ) où r n représene la reenue générée de l'opéraion e s n la somme. a n b n /2 DD s n r n - Donner la able de vérié du demi-addiionneur (i.e. pas de prise en compe de l évenuelle reenue r n- issue d un éage addiionneur précéden dans le cadre d une addiion de 2 mos binaires). - Tracer le ableau de Karnaugh des deux fonions r n e s n. - Donner les foncions logiques correspondanes r n e s n en uilisan de préférence des pores OU. - Donner le schéma symbolique de réalisaion. b) ddiionneur comple Soien a n e b n 2 bis à addiionner en enan compe ici de la reenue précédene r n- issue d un éage addiionneur précéden (dans le cadre d une addiion de 2 mos binaires). a n b n r n- DD s n r n - Donner la able de vérié de l addiionneur comple. - Tracer le ableau de Karnaugh des deux fonions r n e s n. - Donner les foncions logiques correspondanes r n e s n en faisan de préférence apparaîre des pores OU pluô qu en simplifian les foncions au maximum. - Donner le schéma symbolique de réalisaion. c) ddiionneur de 2 mos de 2 bis Soien 2 mos de 2 bis = a a e B = b b à addiionner (a, b : MSB). En uilisan les résulas précédens, donner les expressions des sories e de la reenue générée : s s e r de l addiionneur de 2 mos de 2 bis (s : «MSB») après avoir éabli sa able de vérié. B a a b b DD_MOT 2 mos de 2 bis r s s S - Donner le schéma symbolique de réalisaion Les codeurs Rappels Un code es la représenaion d un nombre el qu à chaque nombre corresponde une configuraion e une seule, e qu'à chaque configuraion ne corresponde qu'un seul nombre. En général, le codage d'un nombre décimal s'effecue en codan chaque chiffre qui le compose. Le nombre codé es obenu en juxaposan leurs représenaions. Pour coder en binaire les chiffres de à 9, il fau au moins 4 bis. Il exise de nombreuses possibiliés pour coder ces chiffres. ependan, seuls quelques uns revêen une grande imporance. Le ranscodage es une opéraion qui consise à passer d'un code à un aure code. TP 2. 2
78 Elecronique Numérique TP 2. Logique combinaoire 2 Transcodeur BD - 7 segmens Un afficheur 7 segmens es consiué de 7 LEDs ayan oues un poin commun : l'anode () ou la cahode (). Si l afficheur es à anodes communes, il es nécessaire d inverser ( de complémener) le signal à afficher pour qu une LED allumée corresponde à un logique. a f g b e c d - Donner la able de vérié d'un ranscodeur permean de passer du code BD (Décimal odé Binaire) au code permean l'affichage sur 7 segmens a à g d un mo BD de 4 bis ( : MSB). - Tracer les ableaux de Karnaugh de chaque segmen en simplifian les foncions au maximum, e en faisan apparaîre si-possible des OU exclusifs. - En déduire les foncions correspondanes. - Donner le schéma symbolique de réalisaion du ranscodeur Les comparaeurs On désire réaliser un monage permean de comparer 2 mos binaires de 2 bis = a a e B = b b (a, b : MSB). e monage doi permere d'idenifier les 3 cas suivans : > B, = B, < B. - Donner la able de vérié du monage. - Tracer les ableaux de Karnaugh des 3 foncions de comparaison en les simplifian au maximum. - Donner les foncions correspondanes. - Donner le schéma symbolique de réalisaion du comparaeur. Muliplexeur - Démuliplexeur 3.4. Muliplexeur a) Rappeler la définiion d un muliplexeur à 4 enrées de données D 3 D 2 D D, 2 enrées d adresses (D 3 e son les MSB) e de sorie s. b) Donner sa able de vérié. c) Donner l équaion de la sorie. d) Eablir le schéma logique permean de le réaliser en uilisan exclusivemen des pores logiques ET 4 enrées, OU 4 enrées e NON pluô que d uiliser un muliplexeur ou fai. e) Proposer un schéma, à base d une minuerie NE 555 moné en oscillaeur carré e d une bascule D, permean de réaliser dans le monage de la figure 3, la sélecion auomaique des adresses dans la séquence : =... noée : avec une fréquence de changemen d adresse (passage de à 2, de 2 à 3,...) d environ Hz. (On pourra s aider en raçan préalablemen le chronogramme des variables e supposées iniialemen à l éa bas) Démuliplexeur a) Rappeler la définiion d un muliplexeur à 4 sories de données D 3 D 2 D D, 2 enrées d adresses (D 3 e son les MSB) e d enrée e. b) Donner sa able de vérié. c) Donner l équaion des sories. d) Eablir le schéma logique permean de le réaliser en uilisan exclusivemen des pores logiques ET 4 enrées e NON pluô que d uiliser un démuliplexeur ou fai. TP 2. 3
79 Elecronique Numérique TP 2. Logique combinaoire 2 4. Eude Expérimenale 4.. Tes des composans En connecan le mini-inerrupeur alernaivemen à la masse e au + 5 Vols, on obien ainsi des ransiions franches permean de simuler une horloge lene de es des composans synchrones (compeur...). Teser chaque module d un circui séparémen des aures modules. ddiionneurs - odeurs - omparaeurs 4.. Les addiionneurs a) Demi-addiionneur (faculaif) Soien a e b 2 bis à addiionner. a s /2 DD b r Simuler le monage suivan [en simulaion numérique, remplacer l ensemble (résisance-led) par un simple logic display)] : /2 DD a b = s kω & r kω Vérifier la able de vérié du monage. b) ddiionneur comple Soien a e b 2 bis à addiionner en enan compe ici de la reenue précédene r. a s b DD r r Réaliser le monage suivan (simulaion) : [en simulaion numérique, remplacer l ensemble (résisance- LED) par un simple logic display)] DD a b = = s kω r r & kω & Vérifier la able de vérié du monage. TP 2. 4
80 Elecronique Numérique TP 2. Logique combinaoire 2 c) ddiionneur de 2 mos de 2 bis (simulaion) (faculaif) Soien 2 mos de 2 bis = a a e B = b b à addiionner (a, b : MSB). B a a b b DD_MOT 2 mos de 2 bis r s s S Le schéma synopique suivan uilise avanageusemen les éages précédens demi-addiionneur e addiionneur : DD_MOT a s b /2 DD r S a r DD s r b Réaliser le monage suivan (simulaion) : [en simulaion numérique, remplacer l ensemble (résisance-led) par un simple logic display)] DD_MOT /2 DD a b = s kω & r DD = s kω a b = & & r kω Vérifier la able de vérié du monage. TP 2. 5
81 Elecronique Numérique TP 2. Logique combinaoire Les codeurs a) (faculaif) - Vérifier le bon foncionnemen du ranscodeur BD/7 segmens déerminé dans la parie héorique pour le seul segmen a) (simulaion). b) - omparer avec le ranscodeur BD/7 segmens ou fai pour lequel on câblera (simulaion) ous les segmens (a à g). (Télécharger au préalable le daashee du circui Transcodeur BD/7 segmens). L afficheur 7 segmens (à cahodes communes) sera connecé direcemen aux sories du ranscodeur ou des pores logiques sans inercaler de résisances de limiaion de couran dans les LEDs de l afficheur, la limiaion se faisan déjà par la résisance inerne du ranscodeur ou des pores Les comparaeurs a) - (faculaif) omparer, à l aide du simulaeur, avec le monage suivan, réalisan la même opéraion de comparaison, mais pour lequel les foncions logiques décrivan les sories n on pas éé simplifiées au maximum (ne pas uiliser les LEDs émoins pour la simulaion) : [en simulaion numérique, remplacer l ensemble (résisance-led) par un simple logic display)] a = a a ( a : MSB) B = b b ( b : MSB) a b b > B kω < B kω a a b = B kω b Noe : Pluô que d uiliser des pores à 3 enrées, on pourra uiliser des pores à 2 ou 4 enrées : b) - (faculaif) Uiliser le simulaeur numérique pour eser le monage éabli en cours. TP 2. 6
82 Elecronique Numérique TP 2. Logique combinaoire 2 Muliplexeur - Démuliplexeur 4.4. Muliplexeur Schéma de principe : Généraeur GBF H : Fréquence 4 Hz H ompeur binaire incrémenal D D D 2 D 3 MU 4 > s D = H divisée par 2 R R R R R D = H divisée par 4 D = H divisée par 8 2 D = H divisée par 6 4 R = k Ω L L L 2 L 3 L Figure 3 Simuler le muliplexeur à 4 enrées réalisé selon le schéma vu en cours avec des pores élémenaires e l insérer dans le monage suivan : Schéma de simulaion : Pulser D = H divisée par 2 D = H divisée par 4 H Daa sequencer D D D 2 D 3 MU 4 > avec pores D 2 = H divisée par 8 D = H divisée par 6 logic swiches 4 Figure 3' L L L L 2 L 3 Oscilloscope =Insrumens / Digial / Scope logic display logic display logic display Horloge = Digial / Insrumens / Pulser logic display logic display s Schéma du MU 4 > vu en cours : D D D 2 D 3 S Un compeur binaire incrémenal es un circui séqueniel don le mo de sorie D 3 D 2 D D (D 3 = MSB) es incrémené (ou décrémené s il s agi d un décompeur ou compeur décrémenal) à chaque fois que l enrée d horloge H es acive (acivaion sur fron ou sur niveau). Le compeur uilisé, à synchronisaion sur fron monan de H, incrémene le mo D 3 D 2 D D à chaque fron monan de H. Le compage s effecue de façon circulaire : ainsi au mo succède le mo puis,,... L éa iniial du compeur peu êre, si on le désire, mais ça n es pas nécessaire dans l uilisaion que l on fai ici, réglé au mo voulu, par exemple. a) En essayan les différenes combinaisons d adresses, vérifier le bon foncionnemen du muliplexeur en comparan la sorie s à l enrée de donnée sélecionnée. b) (faculaif) ompléer le monage par le circui de sélecion auomaique des adresses avec comme valeurs de composans de la minuerie monée en asable : R = kω, R B = MΩ e = µf. TP 2. 7
83 Elecronique Numérique TP 2. Logique combinaoire Démuliplexeur Schéma de principe : Généraeur GBF H : Fréquence 2 Hz H e DEMU > 4 D D D 2 D 3 R R R R R R = k Ω L L L L 2 L 3 Figure 4 Simuler le démuliplexeur à 4 sories réalisé selon le schéma vu en cours avec des pores élémenaires e l insérer dans le monage suivan : Schéma de simulaion : Pulser H e D DEMU > 4 D avec pores D 2 D 3 L logic display Oscilloscope =Insrumens / Digial / Scope Horloge = Digial / Insrumens / Pulser logic swiches L L L 2 L 3 logic display logic display logic display logic display Figure 4' Schéma du DEMU > 4 vu en cours : e D D D 2 D 3 a) En essayan les différenes combinaisons d adresses, vérifier le bon foncionnemen du démuliplexeur en comparan une donnée de sorie à l enrée e. b) (faculaif) ompléer le monage par le circui de sélecion auomaique des adresses avec les mêmes valeurs de composans de la minuerie monée en asable : R = kω, R B = MΩ e = µf. Rangemen du pose de ravail Examen des différenes paries du TP e rangemen ( pour ou le TP sinon). NNEE : DOUMENTTION DES OMPOSNTS TP 2. 8
84 Elecronique Numérique TP 2. Logique combinaoire 2 - LED NNEE K node K ahode - Brochage de l'afficheur 7 segmens (cahodes communes K): Réf.: HDSP-553 ( m) ou HDSP-753 (2 m) g f GND a b a f g b e c Sorie ommande segmen Sorie ommande segmen... Sorie ommande segmen Sorie ommande segmen g b a a b... g K d p GND : masse (ahodes K communes) e d GND c p (Les pins 3 e 8 son connecées de façon inerne) - Minuerie NE 555 monée en asable ( oscillaeur) I NE 555 ou équivalen (SN ou SF 2555) V cc R V cc = + 5 Vols (Sorie) v 3 s NE R B = nf R doi êre différen de L'allure du signal de sorie es la suivane : v s V cc H T B Sachan que : H correspond à la charge de à ravers ( R R ) T = H + B =.693( R RB ) Rappor cyclique de v ( ) TP : H =.693( R R ) B correspond à la décharge de dans R B : B =.693 R B + 2 : période de v ( ) s f = /T B 44. R R ( + 2 ) H R + RB s : R = % = 5 % < R < % T R + 2RB R = 5 % pour R >> R R = % pour R B = B B + B : fréq. de v ( ) s
85 Elecronique Numérique 3. Logique séquenielle. RPPELS Sysème logique 3. LOGIUE SEUENTIELLE p enrées Sysème Logique m sories e i s p m j i p j m Sysème logique combinaoire l insan discre n, une sorie s j, noée s n j, d un sysème logique combinaoire ne dépend que de ses enrées n n e,..., ep au même insan : (la seule connaissance des enrées suffi à déerminer les sories) n n n sj = f ( e,..., ep ) ( j m) Enrées logiques n ei e i i p p Sysème Logique ombinaoire m Sories logiques n s j s j j m Exemple e s = e + e 2 e 2 Sysème logique séqueniel ( sysème logique combinaoire bouclé) n n n l insan discre n, une sorie s j d un sysème logique séqueniel dépend de ses enrées e,..., ep mais aussi de n n l éa anérieur des sories ( s,..., sm ) qui peuven êre considérées comme des enrées secondaires, alors que les n n enrées e,..., ep son appelées primaires. (Noion de mémoire, car les sysèmes séqueniels son bouclés, ou encore récursifs) : (la seule connaissance des enrées (primaires) ne suffi pas à déerminer l éa des sories) n n n n n s = f ( e,..., e, s,..., s ) ( j m) j Exemple Définiion p Enrées logiques n e i i p m n s j Sories logiques anérieures e s p e s Sysème Logique Séqueniel m m 2 Sories logiques n s j j m m = m + m 2 Supposons s = iniialemen (éa iniial lié à la echnologie employée) s = mémorisaion de (e = ) (dès que e passe à, s passe à e y rese ensuie e ). Bascule : circui séqueniel don les sories possèden 2 éas sables, ces sories éan complémenaires e. (Bascule Bisable Flip- flop) 3.
86 Elecronique Numérique 3. Logique séquenielle 2. EEMPLE FONDMENTL : L BSULE RS Soi le sysème séqueniel (bascule RS) : (R Rese Mise à / S Se Mise à ) R S ' pouvan êre représené plus simplemen : R S ' Soi la séquence d'enrée suivane : S R Supposons l éa iniial suivan des sories : Iniialemen : sorie au repos ( = ) e sorie =. On a : Phase S R Observaions (légende : : passe à : rese à) onclusion Phase Ea iniial sable : ; ; Mémorisaion de l éa précéden = Phase S donc donc ; Eas sables Phase S donc donc ; Eas sables Se de (Mise à de ) = Mémorisaion de l éa précéden = Phase R donc donc ; Eas sables Rese de (Mise à de ) = Phase S donc donc ; Eas sables ombinaison inerdie, car Phase léa de foncionnemen : l éa dépend de la rapidié relaive enre les 2 pores, car les 2 enrées S e R changen d éa simulanémen. (Si la pore NOR d enrée R es plus rapide que celle d enrée S, on a : = e =. Sinon on a : = e =. Dans les 2 cas, = ). Eas sables - La combinaison d enrées (S =, R = ) de la phase es à proscrire car elle ne condui pas à = (les bascules on leurs sories complémenées e ). - Les configuraions pour lesquelles les 2 enrées changen d éa simulanémen (comme à la phase ) son à proscrire car elles conduisen à un aléa de foncionnemen. 3. 2
87 Elecronique Numérique 3. Logique séquenielle Table de vérié de la bascule RS : ( n représene l éa sable de à l insan discre n; n- représene l éa sable de à l insan précédan la configuraion d enrée courane : c es donc l éa précéden de la sorie avan changemen des enrées aux nouvelles valeurs que son les valeurs couranes spécifiées. e changemen place à l éa n ). Resricion de foncionnemen : seule des 2 enrées doi changer d'éa à la fois. Si les 2 enrées changen d éa en même emps (impossible cependan en asynchrone) aléa pour S R n Foncion omplémenarié n- Mémorisaion = RESET (Mise à de ) = SET (Mise à de ) = ombinaison inerdie car ure réalisaion de la bascule RS avec des NND : S & R & ' La combinaison inerdie engendre = =, conrairemen à la réalisaion à pores NOR pour laquelle elle engendre = =. Symbole de la bascule RS R S ( n'es pas sysémaiquemen représené) La bascule RS es l'élémen de base de la logique séquenielle. 'es la seule bascule asynchrone. Foncionnemen asynchrone : En asynchrone, la sorie de la bascule change d'éa uniquemen en foncion des grandeurs d'enrée. Le sysème livré à lui-même, es ainsi plus rapide que les syèmes synchrones, mais il présene des emps de propagaion ( délais) difficiles à maîriser on préfère l'uilisaion de sysèmes synchrones. Foncionnemen synchrone : La prise en compe des enrées es condiionnée par une auorisaion donnée par un signal d'horloge. insi, les enrées du sysème son prises en compe (provoquan alors l éa de sorie correspondan) uniquemen s il y a auorisaion par l horloge (l horloge es alors die acive). Sinon (pas d auorisaion de la par de l horloge), les enrées son ignorées e leur changemen d éa ne peu enraîner le basculemen de la sorie : celle-ci demeure à son éa anérieur (mémoire). 3. 3
88 Elecronique Numérique 3. Logique séquenielle L auorisaion ( synchronisaion) de l horloge peu se faire de 3 façons : (exemple sur une bascule D ) - Synchronisaion sur niveau : il suffi d'appliquer le niveau logique convenable, di niveau acif, sur l enrée ( lach) d horloge, pour que la sorie de la bascule puisse réagir aux enrées de données : (H : signal d horloge (noé aussi K); D : enrée de donnée) D H Synchro. sur niveau hau Synchro. sur niveau bas ( posiive lach) ( negaive lach) - Synchronisaion sur fron : la sorie de la bascule réagira aux enrées de données à l insan où se produi un ou flanc ou ransiion fron ( une ransiion d éa) de l horloge. ( edge riggered) e fron acif peu êre monan ( posiif) ou descendan ( négaif) : D H Synchro. sur fron monan Synchro. sur fron descendan ( posiive edge riggered) ( negaive edge riggered) - Synchronisaion par impulsion : une impulsion de synchronisaion de l horloge es composée de 2 frons ( pulse riggered) (l un posiif e l aure négaif) : le er fron ser à la synchronisaion des enrées, le 2nd fron ser à la synchronisaion des sories. e ype de synchronisaion es uilisé pour les sysèmes maîre-esclave). D H Maîre-esclave sur niveau (hau) Maîre-esclave sur fron (monan) ( posiive pulse riggered) ( posiive pulse edge riggered) Un sysème consiué de plusieurs bascules synchrones es di synchrone si oues les bascules son piloées par une horloge e si cee horloge es idenique pour oues les bascules. 3. LES BSULES SYNHRONES 3.. La bascule RST ( bascule RS synchronisée) Du fai de la synchronisaion, elle consiue une amélioraion de la bascule RS asynchrone. Bien que plus lens que les sysèmes asynchrones (il fau aendre la validaion d horloge pour prendre en compe les données), les sysèmes synchrones on l avanage d inroduire un cerain déerminisme (prévision, régularié, maîrise des séquences) dans les raiemens, e son ainsi beaucoup plus uilisés que les sysèmes asynchrones. Exemple: Bascule RST synchronisée sur niveau hau de l horloge T (bascule RST lach > ): Symbole R T S. T = : la sorie ne change pas quelles que soien les enrées R e S. 'es le foncionnemen en mémoire. La bascule n'es pas synchronisée.. T = : la bascule es alors synchronisée. Sa sorie respece la able de foncionnemen de la bascule RS (asynchrone) avec les mêmes resricions. Table de foncionnemen de la bascule RST synchronisée sur niveau hau de l horloge T : ( signifie indifféremmen ou (valeur quelconque binaire)) Horloge T T S R n Foncion Horloge T inacive n- Mémorisaion Horloge T acive n- Mémorisaion Horloge T acive RESET (Remise à de ) Horloge T acive SET (Mise à de ) Horloge T acive Inerdi D H D H D H 3. 4
89 Elecronique Numérique 3. Logique séquenielle Exemple de foncionnemen (bascule RST lach > ) ommandes non prises en compe S R T synchronisé lach > Mémoire Mémoire Mémoire Mise à Mise à Le léger reard de par rappor à S e R émoigne du emps de réponse du circui non synchronisé onsiuion (bascule RST lach > ) Sop car combinaison inerdie (pour une RST lach <, il suffi de complémener l horloge) Ean donné que pour la combinaison R = S = avec T =, on a un foncionnemen indenique à la combinaison T = quels que soien R e S, il fau fabriquer deux variables r e s enrées d'une bascule RS asynchrone elles que les ables de vérié suivanes soien vérifiées : T S s T R r } Foncion mémoire Mise à Mise à eci es facilemen réalisé à l'aide d'une pore ET qui perme de bloquer les commandes R e S an que T =. Le schéma de la bascule RST synchronisée sur niveau hau de T peu donc êre le suivan : S & s & T R & r & Le circui ET suivi de l'inverseur peu avanageusemen êre remplacé par un opéraeur NND La bascule D Elle consiue un élémen mémoire. Elle supprime la configuraion inerdie de la bascule RST. Elle possède enrée de donnée D (Daa) e es réalisée à parir d'une bascule RST avec les enrées R e S liées par la relaion : D = S = R. Foncionnemen ee bascule dispose d'une seule enrée appelée D. Le signal de synchronisaion peu êre acif soi sur un niveau - la bascule es alors appelée D lach - soi sur un fron (bascule edge riggered). es l horloge de synchronisaion. Exemple D D D lach > (= synchro. sur niveau hau) D posiive edge riggered (= à fron > ou encore monan) 3. 5
90 Elecronique Numérique 3. Logique séquenielle vec une seule enrée on ne peu rouver que deux modes de foncionnemen : - le signal de synchronisaion es acif, la sorie recopie l'enrée D. - le signal de synchronisaion n'es pas acif, la sorie ne change pas. 'es le foncionnemen en mémoire. Lors du passage en posiion mémoire, la dernière valeur recopiée es mémorisée. Exemple avec une bascule D lach > D Mémoire Recopie Mémoire Recopie Le léger reard de par rappor à D émoigne du emps de propagaion à ravers la bascule Exemple avec une bascule D edge riggered synchronisée sur fron posiif D Mémoire Recopie Mémoire Mémoire Recopie Le léger reard de par rappor à la prise en compe de D émoigne du emps de propagaion à ravers la bascule onsiuion d'une bascule D lach > (pour une D lach <, il suffi de complémener l horloge) Une bascule D es issue d'une bascule RST avec les enrées R e S liées par la relaion : D = S = R Pendan la phase où l'horloge de synchronisaion es inacive, on a : n = n : foncion mémoire L'équaion de foncionnemen dans la phase d'acivié de l horloge es : n = S + R = Dn : foncion recopie Le schéma de réalisaion peu êre le suivan : D = S & & T Horloge R & & Table de vérié de la bascule D lach > Horloge D n Foncion ou encore : Horloge D n Foncion Horloge inacive n- Mémorisaion Horloge inacive n- Mémorisaion Horloge acive Recopie Horloge acive D Recopie Horloge acive Recopie 3. 6
91 Elecronique Numérique 3. Logique séquenielle onsiuion d'une bascule D > edge riggered (pour une D < edge riggered, il suffi de complémener l horloge) La discriminaion du fron, c'es à dire du changemen de niveau, ne s'effecue pas avec un circui dérivaeur mais par le jeu de rois mémoires inernes à la bascule La réalisaion simplifiée d'une bascule D > edge riggered es donné par : & & & Horloge & & D & Table de vérié de la bascule D > edge riggered Horloge D n Foncion ou encore : Horloge D n Foncion inacive ( ou ou ) n- Mémoire inacive ( ou ou ) n- Mémoire acive Recopie acive D Recopie acive Recopie L'analyse du foncionnemen de cee bascule peu êre faie comme s'il s'agissai d'un sysème séqueniel asynchrone ayan deux variables d'enrées D e. La bascule D impose une resricion pour le bon foncionnemen : Exemple : 3.3. La bascule T Foncionnemen pour une bascule D lach >, D ne doi pas changer d'éa pendan que = (sinon le problème d aléa asynchrone RS réapparaî, R e S changean simulanémen d éa) la bascule JK va apporer une amélioraion. Une bascule foncionnan suivan le ype T dispose d'une seule commande : l enrée d horloge (T). La sorie de la bascule change d'éa à chaque impulsion de la commande. Exemple d'un foncionnemen en ype T synchronisé sur fron monan : T T H 2 T H Le léger reard de par rappor à la prise en compe de T émoigne du emps de propagaion à ravers la bascule Remarque : Si le signal de commande es périodique de période T H (fréquence f), le signal de sorie es égalemen périodique mais de période 2T H (fréquence f 2 ). e mode de foncionnemen réalise une division par 2 de la fréquence. 3. 7
92 Elecronique Numérique 3. Logique séquenielle onsiuion L'équaion de foncionnemen es donnée par : n = n En effe, après chaque commande la sorie change d'éa, ce qui signifie qu'elle prend la valeur du complémen. Il n'es pas commercialisé de bascules T. Il fau les fabriquer à l'aide des aures bascules. Exemple : Transformaion d'une bascule D (> edge riggered) en bascule T (> edge riggered). L'équaion de la bascule D éan : = D, il suffi de relier l'enrée D à la sorie pour obenir : ( n ) = n n D T T > edge riggered Table de vérié de la bascule T lach > Horloge T T n Foncion Horloge T inacive n Mémorisaion Horloge T acive n omplémenaion Précauion d'usage Il ne fau pas réaliser un rebouclage qui provoque une insabilié de la sorie du monage. Par ex., avec une bascule D lach >, la durée du niveau acif () de l horloge doi êre de coure durée: lorsque l'horloge passe au niveau acif (), la sorie change après le emps nécessaire à la propagaion de l'informaion. omme la sorie es réunie à l'enrée D, le changemen de la sorie provoque un aure changemen de celle-ci après le même décalage emporel. D T T T lach > Temps de réacion de la sorie Rappel : Table de vérié de la bascule D lach > Horloge T T D n Foncion inacive n - Mémoire acive D Recopie 3.4. La bascule JK Foncionnemen 'es une bascule disposan de deux enrées, respecivemen appelées J e K. omme pour la bascule RS, l'enrée J ser à la mise à e l'enrée K à la remise à. La différence enre la bascule JK e la bascule RS réside dans le fai qu'il n'y a plus d'éa inerdi pour les enrées, au profi de la combinaison J = K = uilisée pour obenir un foncionnemen ype T. Bascule JK = bascule RS avec : J = S, K = R e la combinaison J = K = es non inerdie ( bascule T. ) e de ype = Exemple: Bascule JK synchronisée sur fron monan de l horloge H (bascule JK > edge riggered) : Symbole J H K La able de foncionnemen es la suivane (able de vérié) : 3. 8
93 Elecronique Numérique 3. Logique séquenielle Table de vérié (nalyse) ou encore, Horloge H H J K n Foncion H inacive ( ou ou ) n- Mémoire H acive n- Mémoire H acive RESET (Remise à de ) H acive SET (Mise à de ) H acive n omplémenaion (foncionnemen ype T) Table des ransiions (Synhèse) - (Horloge acive) Transiion n- n J K La able des ransiions es uile en synhèse car : - en analyse on regarde quel effe les enrées provoquen sur les sories (raisonnemen déducif), - en synhèse on regarde quelles enrées il fau appliquer en foncion des sories désirées (raisonnemen inducif) On remarque sur cee able de foncionnemen que la bascule JK peu se subsiuer à n'impore quelle aure bascule : - Bascule JK comme bascule RST : Il es facile de fabriquer une bascule RST en faisan la correspondance J = S, K = R e en s'inerdisan J = K = : S H J R K - Bascule JK comme bascule D : Dans le cas où J = K = D, on obien une bascule D : D J H K - Bascule JK comme bascule T : Si J = K = ou si D = (c'es à dire J = e K = ), la bascule JK foncionne suivan le ype T : J J H H K K 3. 9
94 Elecronique Numérique 3. Logique séquenielle onsiuion des bascules JK priori une bascule JK es fabriquée à parir d'une bascule RS synchrone où il es fai un rebouclage el que : = e = : S J R K K J T & & R S L'équaion de foncionnemen de la bascule RS devien : = S + R = J + K n n n n cause du foncionnemen en ype T, il y a le risque d'insabilié décri lors de l'éude de cee bascule. fin d'éliminer oue insabilié il exise plusieurs soluions : a) Limier la durée du foncionnemen auonome du sysème en réduisan la période de sensibilié. eci condui à rendre minimum la largeur de l'impulsion d'horloge. la limie, cee soluion consise à synchroniser la bascule sur un fron (soluion uilisable égalemen pour les bascules de ype RS ou D). b) Ouvrir la boucle du sysème. ee soluion impose l'uilisaion d'une mémoire inermédiaire pour conserver le résula précéden alors que la boucle es ouvere. 'es la srucure maîre-esclave ( SS enre 2 bascules). (Ex. bascule JK maîre-esclave : maîre bascule RS, esclave bascule D). ee srucure peu aussi êre uilisée pour les bascules de ype RS ou D. Iniialisaion d une bascule (exemple d une bascule JK) En plus des enrées de données, les bascules possèden des enrées dies asynchrones permean d iniialiser les sories, ou même de fixer celles-ci à un éa consan quelquesoi les enrées de données ou d horloge. Les enrées asynchrones a i de mise à e mise à souven acives à l éa bas (donc noées a i ) son elles que lorsque l ordre mise à par ex. es acivé, es placé à l éa quelles que soien les enrées d horloge e de données J, K. e son des commandes d effacemen e d iniialisaion (appelées aussi lear e Prese ou encore Rese e Se) qui peuven êre acivées pour fixer l éa iniial de la sorie e qui doiven ensuie êre inacivées pour permere le foncionnemen normal de la bascule. Un simple circui R connecé à l enrée Prese par ex. pour fixer l éa iniial peu êre uilisé : as d enrées asynchrones acives à l éa hau : (l iniialisaion se fai en un emps de l ordre de la onsan de emps R) l aide d un circui R, on acive l enrée asynchrone un cour insan au démarrage par un niveau hau, puis on ramène le signal asynchrone d iniialisaion à. ppliqué à l enrée lear, ceci iniialise à, mais appliqué à l enrée Prese, ceci iniialise à. chaque fois l enrée asynchrone non uilisée es placé à l éa inacif, soi l éa. (Le mainien prolongé d une enrée asynchrone à son niveau acif fixe consan : à si lear es acif, à si Prese l es). V = + 5 Vols U = V e R V = + 5 Vols U R lear Prese ini = U V "" furif U R Prese lear ini = iniialemen déchargé R iniialemen déchargé as d enrées asynchrones acives à l éa bas : l aide d un circui R, on acive l enrée asynchrone un cour insan au démarrage par un niveau bas, puis on ramène le signal asynchrone d iniialisaion à. ppliqué à l enrée lear, ceci iniialise à, mais appliqué à l enrée Pr ese, ceci iniialise à. chaque fois l enrée asynchrone non uilisée es placé à l éa inacif, soi l éa. (Le mainien prolongé d une enrée asynchrone à son niveau acif fixe consan : à si lear es acif, à si Pr ese l es). R V = + 5 Vols U = V e R ( ) R V = + 5 Vols U lear V Prese iniialemen déchargé ini = U V R "" furif U Prese V lear iniialemen déchargé ini = 3.
95 Elecronique Numérique 3. Logique séquenielle a) La bascule JK à déclenchemen sur fron Il exise dans les circuis acuellemen commercialisés deux façons de sélecionner un fron : - Le signal d'horloge es dérivé (exemple : 547) - Le signal d'horloge n'es pas dérivé. La discriminaion du fron s'effecue comme pour la bascule D edge riggered à l'aide de mémoires inernes. Par exemple le circui ype 54/74 9 qui es décri à l'aide du schéma suivan consiue une bascule JK qui es synchronisée sur les frons posiifs. On peu éudier son foncionnemen en considéran cee bascule comme un sysème séqueniel asynchrone à rois variables d'enrée (J, K, Horloge). Les enrées asynchrones a de mise à e mise à généralemen acives à l éa bas (donc noées a ) son elles que lorsque mise à par ex. es acivée, es placé à l éa quelles que soien les enrées d horloge e de données J, K. e son des commandes d effacemen e d iniialisaion (appelées aussi lear e Prese) qui peuven êre acivées pour fixer l éa iniial de la sorie e qui doiven ensuie êre inacivées pour permere le foncionnemen normal de la bascule. Un simple circui R connecé à l enrée Prese par ex. pour fixer l éa iniial = peu êre uilisé : R V = + 5 Vols U = V e R ( ) V = + 5 Vols U = V e R U Prese U V U R Prese U V iniialemen déchargé R iniialemen déchargé R (Enrée asynchrone) Mise à & & & Horloge J K & & & & (Enrée asynchrone) Mise à b) Srucure maîre-esclave (réalise une sore de «sas») La srucure maîre-esclave es une srucure à deux bascules synchrones. L'une, appelée le maîre, es placée à l'enrée, l'aure, l'esclave, de ype D es placée en sorie. Pour simplifier l'éude du foncionnemen de ce ensemble, la synchronisaion de chaque bascule es symbolisée par un inerrupeur qui se ferme pendan la phase acive de l'horloge. I M I E Maîre Esclave Les inerrupeurs I M I e son commandés par le niveau du signal d'horloge par rappor à un seuil déerminé. E 3.
96 Elecronique Numérique 3. Logique séquenielle Le signal d'horloge éan une impulsion, les niveaux correspondan aux seuils définissen 4 poins (5 zones disinces) : H B Seuil du maîre zone D Seuil de l'esclave Dans la zone emporelle les inerrupeurs du maîre e de l'esclave son respecivemen ouvers e fermés. Le maîre foncionne alors en mémoire, l'esclave recopie la sorie du maîre. H = I M I E I M H e M E I E H E = e M = e (éa anérieur) Pour accéder dans la zone 2, le seuil de l'esclave es franchi e l'inerrupeur correspondan change d'éa. L'esclave es alors séparé du maîre e foncionne en mémoire. H enre éas Bas e Hau I M I E I M e M E I E M = e E = e Dans la zone 3 l'esclave mémorise oujours la même informaion e le signal de sorie n'a pas encore changé. Par conre, le maîre prend en compe l'informaion d'enrée. H = I M H e I M M I E E I E H M = e E = e Dans la zone 4 le maîre es de nouveau isolé de l'enrée. Il a mémorisé la nouvelle valeur de la sorie ( e ). L'esclave rese encore isolé du maîre. par conséquen la valeur de la première sorie n'es pas encore modifiée. H enre éas Hau e Bas I M I E e 2 I M M I E E M = e E = e 'es seulemen dans la zone 5 que le maîre communique la nouvelle valeur à l'esclave qui la ransme en sorie. H = I M H e 2 I M M I E E I E H M = e E = e On peu remarquer qu'il n'exise pas de configuraion où les deux inerrupeurs son simulanémen fermés, ce qui perme d'effecuer un rebouclage sorie enrée sans craindre une insabilié (sysème de sas réalisé). D'aure par le décalage emporel enre les commandes des inerrupeurs I M e IE es inéviable puisqu'il es impossible d'obenir des signaux d'horloge capables de passer insananémen du niveau au niveau (ou inversemen). En d'aures ermes, on peu dire que la qualié des frons dv du signal d'horloge v() n'influence pas le d principe décri. Néanmoins, il fau que l'impulsion de l'horloge ai une durée suffisane compe enu de la viesse d'évoluion de la bascule. 3. 2
97 Elecronique Numérique 3. Logique séquenielle Enfin, on remarque que si le signal d'horloge es supérieur au seuil de l'esclave, alors l'inerrupeur I E es ouver. E si le signal d'horloge es supérieur au seuil du maîre, I M es fermé. Les deux inerrupeurs peuven donc êre commandés par des signaux complémenaires. ( H e H ; les phases 2 e 4 où les inerrupeurs son ouvers simulanémen son dûes à la ransiion H de e H de ). Le schéma d'une bascule RST maîre-esclave es donné par la figure suivane : S & & & & R & & & & T I M I E e M E La bascule JK maîre-esclave se dédui de la bascule précédene en réalisan le rebouclage S = J e R = K : J & & & & T K & & & & Suivan le mode de synchronisaion du maîre lors de la phase 3, il exise deux ypes de bascules maîre-esclave. En effe, l'acquisiion de la nouvelle valeur peu êre faie sur le fron monan du signal de synchronisaion ou sur son niveau. Pour disinguer ces deux ypes de bascules, on appelle bascule maîre-esclave à verrouillage la srucure don le maîre es synchronisé sur le fron monan de l'horloge. Enfin, il fau remarquer que la sabilié apporée à une bascule par une srucure maîre-esclave se fai au prix d un coû en emps de propagaion de la bascule. 3. 3
98 Elecronique Numérique 3. Logique séquenielle Tableau récapiulaif haque ype de bascule es donnée avec able de foncionnemen e parfois un ex. de I (circui inégré) (Texas Insr.). Bascule RS S R S R n n - Mémoire } Recopie de S Inerdi car = n n La bascule RS es sujee à des aléas de foncionnemen (sories imprévisibles) lorsque les 2 enrées S e R changen d'éa simulanémen. Bascule D Lach > D : Horloge D n n - Mémoire }Recopie D, 2 2 D 3 D 3, 4 4 D Exemple 7475 D 2 2 D 3 D D Bascule D > edge riggered D : Horloge Exemple 7474 PRE S LK D D LR R D n 2 PRE 2 Mémoire n - 2 LK 2 D }Recopie 2 2 LR Les enrées asynchrones Prese e lear, acives à l'éa bas, de mise à e à serven à l iniialisaion ou l effacemen Bascule T T T > edge riggered Table de vérié Horloge T T n Foncion Horloge T inacive n Mémorisaion Horloge T acive n omplémenaion Bascule JK > edge riggered J J K : Horloge K n n - Mémoire n - } } Recopie de J n - omplémen Exemple 749 PRE J S J LK K K LR 2 PRE 2 J 2 LK 2 K R LR Les enrées asynchrones Prese e lear, acives à l'éa bas, de mise à e à serven à l iniialisaion ou l effacemen 3. 4
99 Elecronique Numérique 3. Logique séquenielle Bascule JK maîre-esclave J K : Horloge J K n } n - Mémoire n - } Recopie de J n - omplémen J e K son calculés à l'aide d'une pore ET à 3 enrées. Le symbole indique que la sorie n'évolue qu'après le reour à l'éa iniial de l horloge. Bascule JK avec verrouillage de la donnée J K : Horloge J K n } n - Mémoire n - } Recopie de J n - omplémen PRE J J 2 J 3 LK K K 2 K 3 LR PRE J J 2 J 3 LK K K 2 K 3 LR Exemple 7472 S & & J K R J = J. J 2. J 2 K = K. K 2. K 2 Exemple 74 S & & J K R J = J. J 2. J 2 K = K. K 2. K 2 Par rappor à la bascule JK maîre-esclave, l'enrée de conrôle es munie du riangle, symbole d'une acivié sur un fron posiif, ce qui signifie que les enrées J e K son échanillonnés sur le fron monan de. Le résula n'es ransmis en sorie qu'après le reour à l'éa iniial de l'informaion d'horloge. Bascule RS maîre-esclave S R n S R : Horloge n - Mémoire n - } Recopie de Inerdi } S 3. 5
100 Elecronique Numérique TD 3. Logique séquenielle. Logique combinaoire e séquenielle TD 3. LOGIUE SEUENTIELLE Les sysèmes a, b, c, don le foncionnemen es décri par les chronogrammes suivans son-ils combinaoires ou séqueniels? a. H E S H E? S b. H B H B? S S c. H B H B? S S 2. Bascules ompléer les chronogrammes pour chacun des schémas suivans : a. H D H d. H J K H b. H D H e. H J K H c. H J K H f. H J K H Rappel Bascule D > edge riggered D : Horloge D n Mémoire n - }Recopie PRE LK D LR 2 PRE 2 LK 2 D 2 LR Exemple 7474 S D R 2 2 TD 3.
101 Elecronique Numérique TD 3. Logique séquenielle Bascule JK > edge riggered J K : Horloge J K n n - Mémoire n - } } Recopie de J n - omplémen PRE J LK K LR 2 PRE 2 J 2 LK 2 K 2 LR Exemple 749 S J K R Bascule RS à enrées complémenées On considère le sysème suivan, engendran les signaux x e y. Déerminer l allure du signal m issu de la bascule RS: + 5 V + 5 V R R x y R R R S m Sysème séqueniel Soi le sysème séqueniel : & J J B B & Z = K K B B H ompléer le chronogramme suivan ( e B son iniialemen à l éa ) e donner la séquence (auomae) des éas B du compeur: H Z TD 3. 2
102 Elecronique Numérique TD 3. Logique séquenielle TD 3 NNEE. LOGIUE SEUENTIELLE. Déecion synchrone d une séquence (serrure élecronique) Sur une ligne élecrique de ransmission L arriven des données binaires en série. haque bi es synchronisé, c es-àdire pris en compe, au fron monan d un signal d horloge H. La séquence binaire à déecer (clé) compe 4 bis noés a bcd. La déecion de la séquence a pour effe de placer quasi insananémen (c es-à-dire au emps de reard d une pore logique élémenaire près) après la déecion de la présence du 4ème bi de la séquence au fron monan d horloge, au niveau logique hau l éa d une ligne Z iniialemen à l éa bas (une impulsion de sorie Z =, de largeur sensiblemen égale à une demi-période d horloge, es produie).. Soluion à logique câblée () La synhèse d un sysème séqueniel à base de bascules JK auorise la déecion de la séquence e condui à l archiecure suivane : L J K J B K B B B & Z H.. ompléer le chronogramme fourni..2. En déduire la séquence a bcd à déecer. Soluion à logique câblée ().. Les bascules on un éa iniial bas : =, B =.2. Séquence à déecer : H Séquence à déecer a b c d???? L B Z 2. Soluion à logique câblée (2) Une synhèse plus inuiive uilisan un regisre à décalage es égalemen possible. On donne la able de foncionnemen du circui 7464 (regisre à décalage 8 bis) : TD 3. 3
103 Elecronique Numérique TD 3. Logique séquenielle L 7464 H G F E D B K B Table de foncionnemen 7464 Enrées Sories L (LER) K (LOK) B n B n n D n E n F n G n H n sauf n- B n-n-dn-en-fn-gn- H n- (fron monan) n- B n-n-dn-en-fn- G n- n- B n-n-dn-en-fn- G n- n- B n-n-dn-en-fn- G n- TD 3. 4
104 Elecronique Numérique TD 3. Logique séquenielle par 2.. ompléer le schéma élecrique (en compléan le câblage e en remplaçan chaque? par un bi ou, ou un opéraeur logique) pour permere la déecion de la séquence abcd Donner deux avanages foncionnels de cee soluion par rappor à la précédene. Soluion à logique câblée (2) 2.. L? Z?? 7464 H G F E D B???? a b c d H L K B 2.2. vanage vanage 2 3. Soluion à logique programmée () On uilise un microconrôleur pour la déecion de la séquence abcd. 3.. ompléer le schéma synopique en indiquan : - le circui inerne au microconrôleur réalisan l acquisiion des données de la ligne L - le ype d insrucion (symbolisée dans l Unié rihméique e Logique) au coeur du programme réalisan la déecion de la séquence. MIROONTRÔLEUR L? UL H M S? z PROM RM M : mo à déecer (4 bis) Sz : code de la séquence à déecer abcd : résula de la déecion (bi indicaeur) 3.2. uel avanage foncionnel peu-on aribuer à cee soluion par rappor à la précédene? Dire aussi quel peu êre l inconvénien principal de cee soluion par rappor aux précédenes. vanage 4. Soluion à logique programmée (2) Soluion VHDL. TD 3. 5
105 Elecronique Numérique TP 3. Logique séquenielle TP 3. LOGIUE SEUENTIELLE. Maériel nécessaire - Oscilloscope - Généraeur de signaux Basses Fréquences (GBF) - limenaion sabilisée ( 2x[ -3 V] _ + x[ 5 V] _ ) &&& &&& - Mulimère - Monieur MS5 (plaquee de câblage) - âbles : - T, BN-BN, BN-Banane, sonde oscilloscope, 6 fils Banane, peis fils. omposans - Résisance MΩ - ondensaeur nf - mini-inerrupeur (horloge manuelle) ircuis logiques de la famille MOS série 4 : : 2 Bascules JK posiive edge riggered 2. Noaion du TP Faire examiner par le professeur en fin de séance, les différenes paries du TP. Rappel : Iniialisaion d une bascule (exemple d une bascule JK) Les enrées asynchrones a de mise à e mise à généralemen acives à l éa bas (donc noées a ) son elles que lorsque mise à par ex. es acivée, es placé à l éa quelles que soien les enrées d horloge e de données J, K. e son des commandes d effacemen e d iniialisaion (appelées aussi lear e Prese ou encore Rese e Se) qui peuven êre acivées pour fixer l éa iniial de la sorie e qui doiven ensuie êre inacivées pour permere le foncionnemen normal de la bascule. Un simple circui R connecé à l enrée Prese par ex. pour fixer l éa iniial peu êre uilisé : as d enrées asynchrones acives à l éa hau : l aide d un circui R, on acive l enrée asynchrone un cour insan au démarrage par un niveau hau, puis on ramène le signal asynchrone d iniialisaion à. ppliqué à l enrée lear, ceci iniialise à, mais appliqué à l enrée Prese, ceci iniialise à. chaque fois l enrée asynchrone non uilisée es placé à l éa inacif, soi l éa. (Le mainien prolongé d une enrée asynchrone à son niveau acif fixe consan : à si lear es acif, à si Prese l es). V = + 5 Vols U = V e R V = + 5 Vols U R lear Prese ini = U V U R Prese lear ini = iniialemen déchargé R iniialemen déchargé as d enrées asynchrones acives à l éa bas : l aide d un circui R, on acive l enrée asynchrone un cour insan au démarrage par un niveau bas, puis on ramène le signal asynchrone d iniialisaion à. ppliqué à l enrée lear, ceci iniialise à, mais appliqué à l enrée Pr ese, ceci iniialise à. chaque fois l enrée asynchrone non uilisée es placé à l éa inacif, soi l éa. (Le mainien prolongé d une enrée asynchrone à son niveau acif fixe consan : à si lear es acif, à si Pr ese l es). TP 3.
106 Elecronique Numérique TP 3. Logique séquenielle R V = + 5 Vols U = V e R ( ) R V = + 5 Vols U lear V ini = U V U Prese V ini = Prese iniialemen déchargé R lear iniialemen déchargé Eude expérimenale Simulaion (& âblage) : Pour des raisons de compaibilié, n uiliser que des circuis de la même famille (famille MOS 4 à ne pas mélanger avec la famille TTL 74xxx). 3. Bascules JK () Eude héorique En raçan le chronogramme faisan figurer les signaux H (Horloge), e, prévoir la séquence (auomae) des éas du compeur 3 éas: ( Ea iniial supposé : = = ) J K J K Horloge Eude expérimenale - Réaliser le câblage e cadencer à l aide du mini-inerrupeur pour horloge. - Vérifier par la simulaion (ircui Maker) avec un Pulser pour horloge. (vec le logiciel de simulaion assez permissif, les enrées asynchrones d iniialisaion R e S des bascules JK laissées «en l air» son équivalenes à R= e S= ce qui iniialise la sorie de la bascule à. - En câblage, il faudrai câbler effecivemen R=, S=) - ompléer le schéma pour un éa iniial garani =. - Le compeur es-il auocorreceur? (Iniialiser les sories à un éa hors cycle normal de compage, par exemple = e observer si le compeur revien à son cycle normal de compage : si oui, le compeur es auocorreceur). Vérifier la héorie par la simulaion en raçan le chronogramme. Noe : En simulaion, l iniialisaion de la sorie = d une bascule JK s obien en jouan sur les enrées asynchrones d iniialisaion R e S de façon à envoyer un furif sur l enrée S, R éan à : logic swich commandé manuellemen J K S R S "" furif TP 3. 2
107 Elecronique Numérique TP 3. Logique séquenielle 4. Bascules JK (2) Le schéma du circui considéré es le suivan : J J K K Horloge - Par une éude héorique, prévoir à parir de l éa iniial =, la séquence (auomae) des éas compeur 4 éas (Tracer le chronogramme faisan figurer les signaux H (Horloge), e ). - Vérifier expérimenalemen par câblage e simulaion ce résula en visualisan avec des LEDs e avec le chronogramme les éas e du compeur e en uilisan le Généraeur Basse Fréquence (GBF) pour horloge en câblage (Pulser de ircui Maker pour la simulaion). Rangemen du pose de ravail Examen des différenes paries du TP e rangemen ( pour ou le TP sinon). du TP 3. 3
108 Elecronique Numérique 4. Logique séquenielle 2. LES REGISTRES.. Présenaion 4. LOGIUE SEUENTIELLE 2 Un regisre es d'abord un ensemble de cases ou cellules mémoire capables de socker une informaion ( un mo binaire). La posiion des cases mémoire enre elles es responsable de l'ordre des chiffres, c'es à dire de la srucure de l'informaion. Dans le sysème binaire, une case mémoire es définie à l'aide d'une bascule. Un regisre es donc un ensemble ordonné de bascules. De plus, l'inerconnexion enre les bascules perme ceraines manipulaions de l'informaion sockée..2. Foncionnemen Un regisre ser à mémoriser un mo ou un nombre binaire. Le schéma d'un el sysème compore auan de bascule ype D que d'élémens binaires à mémoriser. Toues les bascules son commandées par le même signal d'horloge. Exemple : regisre 4 bis Foncions hargemen en mémoire e Mémorisaion D D D 2 2 D 3 3 D D D D Horloge Rappel : Bascule D = n n = D = n si sinon horloge acive hargemen Mémoire Moyennan une inerconnexion enre les cellules, le regisre précéden devien capable d'opérer une ranslaion des chiffres ( bis) du nombre ( mo) iniialemen socké. Le déplacemen s'effecue soi vers la droie soi vers la gauche. Le regisre es alors appelé regisre à décalage. De nombreuses applicaions résulen de cee possibilié de décalage, par exemple : - la conversion série-parallèle d'une informaion numérique ; - les opéraions de muliplicaion e division par 2 ; - la ligne à reard numérique. Plus généralemen un regisre peu se représener par le schéma suivan : Foncions Décalage en plus Enrées parallèles E E E n - Enrée Série Gauche ESG Horloge SRG n (regisre à décalage n bis) Enrée Série Droie ESD ommandes Sorie série S S S n - (chargemen, décalage...) Sories parallèles 4.
109 Elecronique Numérique 4. Logique séquenielle 2 Les regisres disposan de oues ces enrées, sories e commandes son appelés regisres universels à n cellules. Tous les regisres acuellemen commercialisés n'on pas oues les possibiliés de commande du regisre universel esseniellemen à cause de la limiaion du nombre de broches disponibles par boîier. Les sories S L S n son les sories des bascules consiuan les cellules du regisre. Les signaux de commande du regisre permeen de : - Garder une informaion en mémoire. haque bascule conserve sa valeur malgrè les impulsions d'horloge. Exemple : S S S S S Ea iniial près une impulsion d'horloge - Décaler une informaion de la gauche vers la droie. Le conenu de la bascule de rang i es ransmis à celle de rang i + à chaque impulsion d'horloge. Exemple : Ea iniial ESG S S S 2 S 3 S 4 près une impulsion d'horloge ESG La sorie S de la première bascule prend alors la valeur de l'enrée du regisre appelé enrée série gauche (ESG). - Décaler une informaion de la droie vers la gauche. Le foncionnemen es semblable à celui décri ci-dessus en inversan le sens d'évoluion des élémens binaires de chaque sorie. La bascule de rang i prend la valeur de la sorie i + à chaque impulsion d'horloge. Exemple : Ea iniial S S S 2 S 3 S 4 ESD près une impulsion d'horloge ESD ee fois c'es la valeur de l'enrée série droie (ESD) qui es inscrie dans la dernière bascule S onsiuion d'un regisre Pour assurer correcemen la foncion de décalage, un regisre doi comporer des cellules consiuées de bascules de ype maîre-esclave ou à déclenchemen par fron (sans quoi le décalage n'es pas conrôlé). Le décalage n'es pas la seule foncion que doi pouvoir accomplir un regisre. 4. 2
110 Elecronique Numérique 4. Logique séquenielle La foncion décalage à droie La bascule D de rang i doi recopier la sorie de la bascule de rang i -. Son enrée D doi donc êre connecée à la sorie i -. Le schéma de l'inerconnexion enre les bascules es donné ciaprès : ESG D D D D D i i i + i + n n Horloge.3.2. La foncion décalage à gauche Si l'on suppose que la posiion de chaque bascule es fixe, c'es la câblage qui doi réaliser le décalage vers la gauche. Par conséquen, l'enrée D de la bascule de rang i es reliée à la sorie de rang i + : ESD D D D i - i - D i i i + i + D n n Horloge.3.3. La foncion mémoire Suivan la naure de la bascule uilisée dans chaque cellule, la foncion mémoire peu se réaliser de différenes façons. La able suivane donne la combinaison des enrées des bascules qui réalise la foncion mémoire : Type Enrées RS R = S = JK J = K = ou J = K = D D = Une aure soluion consise à inerdire l'acion de l'horloge en inercalan une pore ET en série. ee dernière soluion es à proscrire car elle crée un décalage enre les différens signaux d'horloge d'un même sysème à cause du emps de propagaion à ravers la pore ET (phénomène de Skew). Le foncionnemen du regisre n es alors plus synchrone avec les aures circuis du sysème. D D D D Horloge & Mémoire si = Décalage si = 4. 3
111 Elecronique Numérique 4. Logique séquenielle Ecriure asynchrone Il fau uiliser les enrées asynchrones (enrées prioriaires PreSe PRE de mise à e lear LR de mise à ) de chaque bascule pour forcer l'informaion qui doi êre écrie. Le forçage ne doi se faire qu'au momen de l'écriure, ce qui signifie qu'il es nécessaire d'ajouer des circuis à chaque bascule de façon à synchroniser les enrées de forçage par un ordre pariculier généralemen appelé ordre d'écriure ou de chargemen (LOD). La commande d'écriure es dans ce cas généralemen asynchrone. Le principe de la synchronisaion consise à ransformer une bascule asynchrone en une bascule D lach. Le schéma correspondan es donné par les figures ci-après : Ordre d'écriure Ordre d'écriure d & PRE d & PRE & LR & LR as d une bascule sensible sur les niveaux des enrées asynchrones. as d une bascule sensible sur les niveaux des enrées asynchrones. On remarque que l'uilisaion d'un opéraeur NND perme à la fois la synchronisaion avec l'ordre d'écriure e la complémenaion de l'informaion d'enrée d L'écriure synchrone La sorie d'une bascule D recopie son enrée au momen de la phase acive de l'horloge. Pour provoquer l'écriure d'une donnée en synchronisme avec l'horloge il fau placer cee donnée sur l'enrée D de la bascule. d D D Horloge ommande d'écriure ( ) ou de décalage ( ).3.6. L'iniialisaion ee iniialisaion consise à imposer pour oues les bascules du regisre la même valeur, en général, à l'aide d'une commande asynchrone. Le schéma d'un regisre disposan d'une remise à zéro RZ générale es donné par la figure ci-après : RZ Enrée Série LR LR LR D D D Horloge 4. 4
112 Elecronique Numérique 4. Logique séquenielle Schéma d'un regisre universel Pour permere la réalisaion de l'une des foncions possibles du regisre, l'inerconnexion enre les bascules doi êre modifiée. Le choix de cee inerconnexion es facilemen réalisé en uilisan un circui muliplexeur devan chaque enrée D des bascules. Le schéma d'un sysème commercialisé es donné par la figure suivane. On disingue facilemen les muliplexeurs réalisan la sélecion des inerconnexions e le blocage de l'horloge pour réaliser la foncion mémoire. e circui dispose égalemen d'une remise à zéro globale pour une évenuelle iniialisaion. horloge enrée série gauche S S 2 R S K B R S K B R S K D R S K D E R S K E F R S K F G R S K G H enrée série droie RZ R S K H 4. 5
113 Elecronique Numérique 4. Logique séquenielle 2 2. LES OMPTEURS (généralisaion de la noion de regisre) Un compeur es un ensemble de bascules don les sories formen un mo binaire e qui compe dans une séquence donnée à chaque coup d'horloge. Il es représené par un auomae d éas fini encore appelé machines d éas : c es l horloge qui fai passer d un éa au suivan, conrairemen au séquenceur don les changemens d éa son soumis aussi à des acions e des ransiions. 2.. Présenaion Les compeurs son des élémens esseniels de logique séquenielle ; ils permeen en effe d'éablir une relaion d'ordre de succession d'évènemens. Leur emploi ne se limie pas, loin de là, aux sysèmes arihméiques. Ils son uiles parou où il es souhaiable de définir facilemen une suie d'éas. L'élémen de base des compeurs es, comme pour les regisres, une bascule. L'éa du compeur es défini par le nombre binaire formé avec l'ensemble des sories des bascules. La synhèse d'un compeur consise à définir les niveaux logiques des commandes des bascules pour assurer le passage successif d'un éa à l'aure suivan l'ordre du cycle prévu (échelle de compage). Ils son classés en deux caégories suivan leur mode de foncionnemen. - Les compeurs asynchrones ou compeurs série. La caracérisique principale des compeurs asynchrones es la propagaion en cascade de l'ordre de changemen d'éa des bascules. L'horloge synchronise la ère bascule, don la sorie va synchroniser la bascule suivane. - Les compeurs synchrones ou compeurs parallèles. Le signal d'horloge synchronise oues les bascules simulanémen Les compeurs asynchrones Dans un compeur asynchrone, l'horloge déclenche la bascule B don la sorie ser de signal d'horloge à la bascule B 2. Plus généralemen, le signal d'horloge d'une bascule B i es issu d'une combinaison logique des sories des bascules B j (avec j inférieur à i). omme les sories changen en cascade après le signal d'horloge, il va exiser un désynchronisme dans l'évoluion des sories des bascules. eci jusifie le nom de ces compeurs ompeur binaire 'es le plus simple des compeurs asynchrones : les sories des bascules qui le composen évoluen, au ryhme de l'horloge, de manière à représener la succession croissane des nombres exprimés en base 2 (binaire pur). Ex.: ompeur binaire 4 bis : Les reards ne son pas représenés pour des raisons de lisibilié. Tous les éas possibles (6) son ici présens dans l auomae mais on peu inerrompre la séquence du compeur. N D B B 4 B 3 B 2 B Horloge ( LSB ) ( MSB ) : Sorie Bascule B B : Sorie Bascule B 2 : Sorie Bascule B 3 D : Sorie Bascule B N Si l'on affece les poids, 2, 4, 8 respecivemen aux sories, B,, D des bascules B, B2, B3, B4, le nombre binaire ainsi représené sui l'ordre croissan de à 5. Un compeur binaire m bis compe donc de à 2 m. 4. 6
114 Elecronique Numérique 4. Logique séquenielle 2 On remarque facilemen que la première bascule B () change d'éa à chaque impulsion d'horloge, que la sorie B change d'éa à chaque fois que la sorie présene une ransiion descendane ( ) e ainsi de suie. En d'aures ermes, la période de la sorie es égale au double de la période d'horloge, la période de B es égale à 2 fois celle de la sorie, ec... eci es facilemen réalisé en uilisan des bascules câblées en ype T, par exemple des bascules JK avec J = K =. Le schéma d'un compeur binaire es dans ce cas : B D Horloge J K B J J J K B2 K B3 K B4 fin d'illusrer le désynchronisme qui apparaî enre les sories, examinons la ransiion enre 7 e 8. e cas es pariculièremen perurbé puisque oues les sories changen. Horloge B D Eas ransioires La srucure en cascade implique l'accumulaion des reards enre la ransiion descendane de l'horloge e la sabilisaion des sories des bascules. omme les sories changen les unes après les aures, il apparaî des éas ransioires indésirables. Sur le chronogramme ci-dessus, ces différens éas son repérés par leur équivalen décimal. Pour un compeur asynchrone, si n bascules changen d'éa après une impulsion d'horloge, il exise (n -) éas ransioires. 4. 7
115 Elecronique Numérique 4. Logique séquenielle ompeur modulo N (Inerrupion de la séquence) On appelle compeur modulo N, un compeur décrivan la succession des nombres binaires compris enre e N -, c'es à dire la suie des chiffres d'une base N raduie en binaire. Par exemple, pour N =, la succession des éas du compeur es donnée par le cycle suivan (N = éas), alors que le cycle comple non inerrompu compe jusqu à 6 éas : Pour réaliser un el compeur il exise deux ypes de soluions : - Un rebouclage asynchrone, - Un condiionnemen des enrées des bascules. Rebouclage asynchrone Le compeur modulo N es dans ce cas considéré comme un compeur binaire m bis compan de à don le cycle es inerrompu à N = 2 m. En effe, enre e 9 par exemple, la succession des éas es idenique pour les deux ypes de compeurs : compeur binaire 4 bis e compeur modulo. Si, dans l'éa 9, une impulsion d'horloge es appliquée au compeur, celui-ci inscrira la combinaison en binaire. e éa es indésirable. Par conséquen, dès qu'il es déecé par décodage, une remise à zéro (lear LR) es auomaiquemen imposée au compeur pour saisfaire le cyle voulu. e qui donne le schéma suivan : 2 m Horloge LR LR LR LR J J 2 B J 3 J 4 D K B K B K 2 B 3 K B 4 & Remarques : - Le décodage de se limie à vérifier que B e D son à, les combinaisons à 5 ne devan pas apparaîre en foncionnemen normal. - Il ne fau pas limier la remise à zéro aux seules bascules qui son à. En effe, si seules les bascules B e D son remises à, le changemen d'éa de B provoque le changemen d'éa de. - Enfin cee soluion ne donne saisfacion que si oues les bascules on des emps de réacion semblables. 4. 8
116 Elecronique Numérique 4. Logique séquenielle 2 ondiionnemen des enrées Dans un compeur asynchrone il exise deux possibiliés de commander une bascule : - par acion sur l'horloge, - par acion sur les enrées des bascules. La succession des éas dans l exemple précéden (N = ) es donné par la able suivane dans laquelle le passage d'une ligne à la suivane es condiionné par une impulsion d'horloge. N D B La bascule change d'éa à chaque impulsion d'horloge. Elle es donc câblée en ype T. La bascule B change d'éa sur chaque ransiion de la sorie sauf pour la ransiion 9. Dans ce cas pariculier il fau agir sur les enrées de la bascule pour qu'elle ne change pas d'éa malgrè la ransision acive sur son horloge. Pour ous les éas de à 7 inclus il fau impéraivemen que les enrées soien elles que le foncionnemen correspondan soi du ype T. Pour la combinaison 9 il fau condiionner la bascule pour qu'elle rese en mémoire. Pour la combinaison 8 il exise un degré de liberé. Pour une bascule JK par exemple, la soluion consise à imposer les enrées : J = K = pour les éas à 7, e J = K = pour l'éa 9 e évenuellemen 8 La bascule change d'éa à chaque ransiion négaive de la sorie B. Enfin la bascule D ne peu pas êre commandée uniquemen par la sorie. En effe, cee sorie présene une ransiion négaive qui va provoquer le passage de 7 à 8 mais il n'exise pas d'aure ransiion négaive pour le changemen de 9 à. Il fau donc rouver un aure signal qui présene une ransiion négaive après l'éa 9 e après l'éa 7, pour commander la bascule de sorie D. Le signal fabriqué avec l'équaion logique + D saisfai cee condiion. + D Le schéma du compeur modulo réalisé par la méhode du condiionnemen des enrées es le suivan : H J K B D J J J K K K D & 4. 9
117 Elecronique Numérique 4. Logique séquenielle Les compeurs synchrones Les compeurs synchrones permeen d'une par d'éliminer les éas ransioires des sories e d'aure par de rendre possible l exécuion d un cycle quelconque. Pour saisfaire ces exigences e en pariculier la première, il es indispensable que oues les bascules soien synchronisées par le même signal : le signal d'horloge. En conséquence, il ne rese plus qu'un seul degré de liberé pour condiionner l'évoluion de chaque bascule. Les enrées synchrones de chaque bascule doiven êre calculées pour que le compeur suive la succession d'éa prévue. La synhèse d un compeur synchrone, qui consise à concevoir un sysème séqueniel à parir du cycle de foncionnemen souhaié, peu êre effecuée par exemple par la méhode de Marcus. Exemple : Réaliser la séquence suivane avec des bascules JK :, 8, 2, 4, 7,, 3, 6, 3, 9, 4,, 5, 2,,,... ompeur 5 éas ( 4 bascules) es nombres décimaux s'écriven en binaire avec 4 bis. En conséquence, cee séquence impose l uilisaion de quare bascules, d où la able suivane (uilisan la able des ransiions d une bascule JK) : Sories Enrées N B D J K J B K B J K J D K D : éa indifféren ( ou ) égalemen noé Rappel Table des ransiions Bascule JK (Synhèse) - (Horloge acive) Transiion n- n J K La combinaison (5 en décimal) n'apparaî jamais dans la séquence désirée. 'es donc une combinaison disponible pour la simplificaion e dans les ableaux de Karnaugh cee case sera remplie avec un. Squelee du circui (incomple) : Synhèse avec des bascules JK negaive edge riggered par exemple (l uilisaion de bascules JK posiive edge riggered es reviendrai au même) B D... J... JB B... J... JD D... K... KB... K... KD Horloge près simplificaion des éas équivalens e des foncions logiques, les enrées J e K des bascules on pour équaion (8 ables de Karnaugh d enrées, B,, D e de sorie J, K, J B, K B,..., J D, K D ) : ircui (final) J = D J J J B D = = B = K = D K K K J B D = = B = J B B J J D D K K B K K D Horloge = 4.
118 Elecronique Numérique 4. Logique séquenielle 2 uomae des éas du compeur On rerouve bien le cycle voulu : N =, 8, 2, 4, 7,, 3, 6, 3, 9, 4,, 5, 2,,,... avec la séquence des éas du compeur : BD = Exemple : alcul de J / K : alcul de J : (double able de Karnaugh) (simple able de Karnaugh) J / K B D J B D J = D + D = D Si, à la mise sous ension, le compeur se posiionne dans la combinaison inerdie compe enu du schéma, il y resera malgrè les impulsions d'horloge. Il fau donc prévoir une acion manuelle ou auomaique pour reourner dans le cycle (uilisaion des enrées asynchrones d iniialisaion S e R d une bascule JK). RZ Débu de cycle LR & J R J B K R B J R K B D S S S S K J D K R D Décodage de (5) pour rendre le compeur auocorreceur Horloge Un circui de décodage de la combinaison inerdie perme de remere le compeur dans son cycle (compeur auocorreceur) si par malheur cee combinaison apparaissai. Dans le schéma ci-dessus la remise en cycle es faie par une remise à zéro de oues les bascules puisque la combinaison ( ) apparien au cycle. Iniialisaion d un compeur L éa iniial d un compeur es défini à l aide des enrées asynchrones d iniialisaion (Prese e lear) Mise en cascade de compeur (ex : chronomère à plusieurs digis, chaque digi es un compeur les compeurs doiven êre connecés enre eux mise en cascade) Les compeurs commercialisés délivren bien évidemmen la valeur conenue dans le compeur, e évenuellemen une informaion supplémenaire permean la mise en cascade de plusieurs boîiers, soi RE cee sorie (égalemen appelée T : Terminal oun). La commande des différens boîiers de compage peu se faire suivan deux grands principes : - La mise en cascade asynchrone. La sorie RE (ripple coun enable) d'un boîier ser d'horloge du boîier suivan. Up / Down = Horloge B D P RE En B D P RE En B D P RE En uorisaion ompage La conséquence de la mise en cascade asynchrone es que les sories du second boîier son décalées dans le emps par rappor aux sories du premier. ' ' ' ' 4.
119 Elecronique Numérique 4. Logique séquenielle 2 - La mise en cascade synchrone. omme l'horloge es commune à ous les boîiers, il fau condiionner l'évoluion du second boîier par la commande (En ou E) d'auorisaion de compage. Up / Down Horloge B D P RE En ' ' B D P RE En B D P RE En 3. LES SEUENEURS (généralisaion de la noion de compeur) 3.. Présenaion Les séquenceurs son des sysèmes séqueniels don l'éa évolue en foncion d'évènemens (qui peuven êre divers : horloge, conac, inerrupion... e non plus seulemen l horloge comme pour les compeurs) appelés acions. La séquence des éas e des ransiions marquan les changemens d'éas (les acions) s'appelle un auomae ou séquenceur ou encore machine d éas. (Ex.: disribueur de boissons) On rouve principalemen des séquenceurs : - Dans les auomaismes ou processus auomaiques indusriels où ils jouen le rôle d'un auomae capable de diriger les opéraions qui doiven se dérouler dans un ordre prévu à l'avance; - Dans les calculaeurs où ils son chargés d'un rôle d'organisaeur de la succession des opéraions à réaliser selon un programme prééabli. Un séquenceur n'es qu'excepionnellemen seul. En général il commande un sysème. Dans la plupar des cas, ce dernier l'informe de son éa, par exemple la fin d'exécuion d'un âche, la présence d'un débordemen ou d'un résula nul, ec. Le séquenceur doi pouvoir, si nécessaire, prendre des décisions suivan l'éa du sysème. Séquenceur Sysème sous conrôle 3.2. Synhèse d'un séquenceur (câblé bascules JK) Exemple : Train élecrique Soi un rain élecrique devan effecuer 3 boucles, B, selecionnables par aiguillages p e q. Le passage dans une boucle es déecé par un conac (T) remonan après le passage du rain (le rain roule en marche avan uniquemen (pas de marche arrière) ou peu aussi se rouver à l arrê). T a Dépar p q B T b T c 4. 2
120 Elecronique Numérique 4. Logique séquenielle 2 iguillages : onacs : (T) Ea iniial : p q = : non devie : devie a b = : repos c : passage du rain(reombee a apres passage) Train au dépar sories p e q à Si on change d iinéraire, il fau refaire oue la synhèse ( nouveau circui à base de bascules JK) soluion programmable où seul le programme change. Les conacs a, b, c son exclusifs (le rain ne peu êre à la fois en a, en b e en c) uomae (des éas) Graphe de fluence pour l iinéraire désiré :, B, Transiion d'éa abc Ea Sories p q 2 3 Noe : Il y a changemen d éa chaque fois que les sories changen. Les éas son liés aux sories. Les ransiions son liées aux enrées : une modificaion des enrées provoque (évenuellemen) une ransiion d éa (modificaion des sories). Eude pour un second iinéraire désiré :, B, B, uomae (des éas) Graphe de fluence : Enrées du sysème : a, b, c Sories du sysème : p, q Transiion d'éa abc Ea Sories p q ( : ou : sans imporance) 4. 3
121 Elecronique Numérique 4. Logique séquenielle Table des éas : Ea résulan ransiion c b Sories éa a p q a b c Les cases vides son des (cases indifférenes) Simplificaion de la able : (Recherche des éas équivalens) 2 éas son équivalens s'ils on mêmes sories e mêmes ransiions. Eas pouvan êre équivalens : or 3 e 5 ne son pas équivalens 2-3 si 2-4 le son 2-4 si 3-5 le son 3-4 si 3-5 le son 2-4 ne le son pas 2-3 ne le son pas pas d'éas équivalens pas de simplificaion de la able (la simplificaion aurai condui à remplacer dans la able les éas équivalens à un éa donné par ce éa donné e réunir les ransiions correspondanes) ribuion des variables de sorie des bascules ( i ) : able des adresses On a d'auan plus besoin de variables i (sories de bascules) qu'il y a d'éas à adresser dans la proporion : n éas à adresser n = 2 m m variables i On doi donc avoir suffisammen de variables i pour adresser ous les éas : m n 2. Ici : n = 5 au moins m = 3 variables son nécessaires : 2 pour le codage des éas. ransiion c 2 b a éa p q
122 Elecronique Numérique 4. Logique séquenielle 2 Exemple Synhèse avec des bascules J K synchrones (possibilié aussi avec des bascules asynchrones) Table de Karnaugh des bascules J K i i ( bascule JK par variable ) 3 variables 3 bascules J K : 3 doubles ables de Karnaugh : K Ex : Table de Karnaugh de J2 K2 ( bi MSB) pour la sorie 2 rappel : ransiion J K J, J K, J K 2 2 J 2 K 2 c 2 b a J K 2 2 = 2 = 2 abc a bc sans simplifier au maximum car ici la able es à 6 variables (>4) méhode de Karnaugh inuilisable. J J J 2 2 K K K 2 H a b c Enrées q Sories p 4. 5
123 Elecronique Numérique 4. Logique séquenielle Equaion des sories : p q 2 D après la able : p = + q =
124 Elecronique Numérique 4. Logique séquenielle 2 LES SEUENEURS PROGRMMBLES. Uilisaion d'un compeur programmable 4 NNEE. LOGIUE SEUENTIELLE 2 Toue ransiion d'éa es du ype général : n (inhibiion) (chargemen) (données) Enable RZ Load Daa T ompeur programmable n + m ommandes appliquées : - on rese dans l'éa n : enable - on passe à n + : rien (foncionnemen normal du compeur) horloge - on passe à m : load daa - iniialisaion du compeur : RZ Plus de able de Karnaugh à calculer, ni enrées J K, mais il fau programmer les bonnes insrucions sur les enrées : Enable RZ Load Daa.. odage e décodage des acions - acions sur les sories : mise à mise à il suffi d'un bi mais il fau préciser sur quelle sorie pore l'acion : code opéraion ( bi) opérande insrucion code opéraion : : mise à : mise à opérande : : sorie s : sorie s 2 : sorie s 3 : sorie s 4 (exemple à 4 sories) 4. 7
125 Elecronique Numérique 4. Logique séquenielle 2 Ex : mise à de s 2 décodage de : décodeur décodeur mise à mise à S R s s 2 s 3 s 4... s s 2 s 3 s 4 rchiecure inerne du séquenceur programmable - opéraions - inhibiion condiionnelle - rupure de séquence (load) condiionnelle ou incondiionelle - mise à condiionnelle ou incondiionelle 5 opéraions : 3 bis pour le code opéraion opéraion : mise à d'une sorie mise à d'une sorie inhibiion condiionnelle rupure condiionnelle rupure incondiionnelle RZ condiionnelle RZ incondiionnelle opérande : sorie condiion adresse de rupure Ex : Rupure de séquence à l'adresse (condiionnel) décodage de : condiion codée sur 2 bis décodeur décodeur décod décodeur enrées d'adresse MU n adresse de rupure sau condiionnel Load Daa ompeur programmable 4. 8
126 Elecronique Numérique 4. Logique séquenielle 2 2. pplicaion sur l'exemple du rain élecrique codage : mise à de p acions : mnémorique : code binaire : 2 mise à de q Mise à de sories MZ a = a = 3 4 inhibiion condiionnelle a = mise à de p Mise à de sories MU Inhibiion condiionnelle INH Sau Incondiionnel JMP b = 5 inhibiion condiionnelle b = b = b = 6 inhibiion condiionnelle b = b = b = 7 inhibiion condiionnelle b = opérandes : Sorie p Sorie q P 8 mise à de p condiions : 9 mise à de q c = inhibiion condiionnelle c = a = b = c = b = B B sau incondiionnel à 2 adresse de sau 2 2 Programme : éa mnémorique code binaire MZ P MZ INH MU P INH B INH B INH B MZ P MU INH JMP
127 Elecronique Numérique 4. Logique séquenielle 2 Maérialisaion : mémoire a b c insrucion code opér. opérande décodeur MU Mise à Mise à inhibiion sau n S R p Enable Load Daa ompeur programmable 2 3 LES MIROPROESSEURS 3. Uilisaion d'un microprocesseur Srucure Bus d'adresses H Horloge Unié de onrôle ompeur ordinal Décodeur Regisre d'insrucion LU R W d Mémoire ccumulaeur Bus de données 4. 2
128 Elecronique Numérique 4. Logique séquenielle 2 ircuis associés µ p ( µ p micro - processeur) Bus d'a- dres- -ses Mémoire ROM Bus de don- -nées Mémoire RM Inerfaces d'enrées / sories Enrées Sories Le programme à exécuer (code machine) peu êre développé en langage assembleur (codes mnémoniques symbolisan les codes binaires) ou en langage évolué soumis à un compilaeur. Les microproceseurs les plus répandus son noammen à base d une archiecure 32 bis :. Penium de la famille INTEL,. série 68 de la famille MOTOROL. Des processeurs spécialisés on des performances (puissance, rapidié...) opimales pour des applicaions dédiées :.Traiemen du signal : processeur TMS de TES INSTRUMENTS.Graphisme... LES MIROONTROLEURS 4. Uilisaion d'un microconrôleur Un microconrôleur es un mini-sysème, consiué de l'ensemble microprocesseur avec RM, ROM, EEPROM, converisseurs N/N e inerfaces ( gesionnaires) d'enrées/sories séries/parallèles, inégré dans une même srucure (une même puce, un même circui de silicium). Des programmes peuven êre développés sur émulaeur (sysèmes de développemen) en langage assembleur du microconrôleur (ou même en langage évolué à l aide d un compilaeur), e exécués auour d un sysème d exploiaion logé égalemen dans la mémoire du microconrôleur. Du fai de la richesse de sa consiuion, un microconrôleur es bien un mini sysème e peu êre envisagé comme une soluion générale à une majorié d applicaions analogiques, numériques, mixes, informaiques, embarquées... ne nécessian pas une viesse exrême, pour laquelle il es préférable d uiliser des circuis câblés, ou à la rigueur, des circuis programmables FPG. Les microconrôleurs les plus répandus son noammen à base d une archiecure 8 bis :. 85 de la famille INTEL,. 68H de la famille MOTOROL,. les microconrôleurs PIS inéressans pour leurs faibles encombremen e coû. LES OMPOSNTS PROGRMMBLES 5. Les composans programmables L uilisaion de composans programmables (FPG), programmables via un compilaeur VHDL, présene l avanage par rappor aux circuis câblés (bascules, pores logiques) de la souplesse ou en n ayan pas l inconvénien de leneur d exécuion des aures soluions programmables puisque le composan programmable n exécue pas un programme mais es consiué de marices ET e OU programmées à voloné en bascules e pores logiques (synhèse effecuée par le compilaeur VHDL). 4. 2
129 Elecronique Numérique 4. Logique séquenielle 2 6. onclusion Logique câblée uilisaion de pores combinaoires e séquenielles. - vanage : rapidié du syème. - Inconvénien : srucure figée manque de souplesse pour une modificaion ou adapaion du sysème. Logique programmée uilisaion de séquenceur (compeur), d'un microprocesseur, d un microconrôleur ou d un composan programmable (FPG...). - vanage : plus souple à modifier e concevoir. - Inconvénien : plus len que la logique câblée à cause du emps de décodage des insrucions requis
130 Elecronique Numérique TD 4. Logique séquenielle 2. Regisres (nalyse) TD 4. LOGIUE SEUENTIELLE 2 nalyser le foncionnemen du monage suivan e compléer le chronogramme : ( e son à l éa iniial ) E D & S D H E H S Rappel Bascule D > edge riggered D : Horloge D n Mémoire n - }Recopie PRE LK D LR 2 PRE 2 LK 2 D 2 LR Exemple 7474 S D R ompeur asynchrone (nalyse) - Donner la succession des éas du compeur suivan, celui-ci éan supposé à l éa 2 = iniialemen : H J K J & K S R (les éas furifs ne son pas à prendre en compe - leur durée es rès peie devan la période d Horloge car due au emps de propagaion, au emps de réponse des circuis) - Le compeur es-il auocorreceur? 2 Rappel Bascule JK > edge riggered J K : Horloge J K n n - Mémoire n - } } Recopie de J n - omplémen PRE J LK K LR 2 PRE 2 J 2 LK 2 K 2 LR Exemple 749 S J K R 2 2 TD 4.
131 Elecronique Numérique TD 4. Logique séquenielle 2 3. ompeur synchrone (Synhèse) a) Synhéiser un compeur 2 bis synchrone avec des bascules JK posiive edge riggered, qui compe selon le cycle suivan (Iniialisaion à = ) : = b) Vérifier en faisan l analyse (chronogramme) c) ue se passe--il si on démarre à l éa =? Y-a--il auocorrecion? d) S il n y a pas auocorrecion, rendre le compeur auocorreceur en reprenan la synhèse a) e en éliminan les choix xx effecués dans les ables de Karnaugh pour les forcer selon le cycle auocorrigé. Rappel : Démarche de Synhèse. Se demander combien d éas n dans la séquence : n = 3 2. ombien de variables m de sorie uiliser : m 2 m < n 2 m = 2 3. ombien de bascules JK uiliser : m 4. Schéma squelee d un compeur synchrone à bascules JK : J J J J K K K K H 5. Tables de Karnaugh pour déerminer les enrées J K i i des bascules en se servan de la able des ransiions d une bascule JK : Transiion n- n J K TD 4. 2
132 Elecronique Numérique TD 4. Logique séquenielle 2 TD 4 NNEE. LOGIUE SEUENTIELLE 2. Séquenceur (commande de rain élecrique) On considère un rain élecrique devan effecuer 3 boucles, B, sélecionnables par les aiguillages p e q. Le passage dans une boucle es déecé par un conac ( T ) remonan après le passage du rain : T a Dépar B T b T c p q (Train en marche avan ou à l arrê; pas de marche arrière) Les conacs a, b, c représenen les enrées du sysème logique, avec la convenion : a, b, c = à l éa de repos; a, b, c = pendan le passage du rain. Les aiguillages p e q en consiuen les sories : p, q = si non déviaion; p, q = si déviaion. L iinéraire désiré es le suivan :, B, B, avec l éa iniial : Train en posiion de Dépar e les sories p e q son à. Eablir le graphe de fluence ( graphe des éas e ransiions) du sysème e effecuer la synhèse de ce sysème logique : - en uilisan des bascules JK (logique câblée) - à parir d un compeur programmable (logique programmée). 2. Séquenceur (serrure élecronique) On considère une serrure élecronique à 3 enrées x, x 2, x 3 e 2 sories y, y 2 : x x 2 x 3 Serrure y y 2 En séquence, une enrée x i ne peu êre acivée ( mise à ) qu une seule fois. un insan donné, seule enrée x i es à à la fois. Séquence à reconnaîre : x = puis x 2 = puis x 3 =, avec passages inermédiaires par, soi : x x 2 x 3 =. y à la fin de la séquence; y 2 pour oue aure séquence. ( signifie mise à e sabilisaion à ce éa, e non passage momenané à la valeur ). Ea iniial : x x 2 x 3 = e y y 2 = Eablir le graphe de fluence ( graphe des éas e ransiions) du sysème e effecuer la synhèse de ce sysème logique : - en uilisan des bascules JK (logique câblée) - à parir d un compeur programmable (logique programmée). TD 4. 3
133 Elecronique Numérique TD 4. Logique séquenielle 2 3. ompeurs synchrones en anneau e non bouclé (nalyse) Un compeur es di auocorreceur si, se rouvan dans un éa hors de son cycle normal de compage, il revien dans le cycle, évenuellemen en plusieurs coups d hologe.. ompeur en anneau à bascules JK Soi le compeur : J J B B J J D D K K B B K K D D H. Iniialisé à l éa DB =, racer le chronogramme des signaux D,, B,. 2. En déduire son cycle de compage (cycle normal de compage) représené comme une machine d éas (auomae d éas finis). 3. L éa iniial du compeur n es plus précisé. Donner pour les 6 éas iniiaux possibles DB du compeur, l éa DB immédiaemen fuur (au coup d horloge acif suivan l éa iniial). 4. Dire si le compeur es auocorreceur en jusifian vore réponse. 2. ompeur en anneau à bascules D (faculaif) Soi le compeur : D D B B D D D D B D H. Iniialisé à l éa DB =, racer le chronogramme des signaux D,, B,. 2. En déduire son cycle de compage (cycle normal de compage) représené comme une machine d éas (auomae d éas finis). 3. L éa iniial du compeur n es plus précisé. Donner pour les 6 éas iniiaux possibles DB du compeur, l éa DB immédiaemen fuur (au coup d horloge acif suivan l éa iniial). 4. Dire si le compeur es auocorreceur en jusifian vore réponse. 3. ompeur ouver à bascules D (faculaif) Soi le compeur : & D D B B D D D D B D H. Iniialisé à l éa DB =, racer le chronogramme des signaux D,, B,. 2. En déduire son cycle de compage (cycle normal de compage) représené comme une machine d éas (auomae d éas finis). 3. L éa iniial du compeur n es plus précisé. Donner pour les 6 éas iniiaux possibles DB du compeur, l éa DB immédiaemen fuur (au coup d horloge acif suivan l éa iniial). 4. Dire si le compeur es auocorreceur en jusifian vore réponse. TD 4. 4
134 Elecronique Numérique TP 4. Logique séquenielle 2 TP 4. LOGIUE SEUENTIELLE 2. Maériel nécessaire - Oscilloscope - Généraeur de signaux Basses Fréquences (GBF) - limenaion sabilisée ( 2x[ -3 V] _ + x[ 5 V] _ ) &&& &&& - Mulimère - Monieur MS5 (plaquee de câblage) - âbles : - T, BN-BN, BN-Banane, sonde oscilloscope, 6 fils Banane, peis fils. - omposans : - Résisances kω (/4 Wa) - Résisance MΩ - ondensaeur nf - LED - mini-inerrupeur (horloge manuelle) 2. Noaion du TP ircuis logiques de la famille MOS : 6 NOT : 2 Bascules JK posiive edge riggered Faire examiner par le professeur en fin de séance, les différenes paries du TP. Rappel : Iniialisaion d une bascule (exemple d une bascule JK) Les enrées asynchrones a de mise à e mise à généralemen acives à l éa bas (donc noées a ) son elles que lorsque mise à par ex. es acivée, es placé à l éa quelles que soien les enrées d horloge e de données J, K. e son des commandes d effacemen e d iniialisaion (appelées aussi lear e Prese ou encore Rese e Se) qui peuven êre acivées pour fixer l éa iniial de la sorie e qui doiven ensuie êre inacivées pour permere le foncionnemen normal de la bascule. Un simple circui R connecé à l enrée Prese par ex. pour fixer l éa iniial peu êre uilisé : as d enrées asynchrones acives à l éa hau : l aide d un circui R, on acive l enrée asynchrone un cour insan au démarrage par un niveau hau, puis on ramène le signal asynchrone d iniialisaion à. ppliqué à l enrée lear, ceci iniialise à, mais appliqué à l enrée Prese, ceci iniialise à. chaque fois l enrée asynchrone non uilisée es placé à l éa inacif, soi l éa. (Le mainien prolongé d une enrée asynchrone à son niveau acif fixe consan : à si lear es acif, à si Prese l es). U R Prese iniialemen déchargé V = + 5 Vols lear ini = U = V e U V R R U R Prese iniialemen déchargé V = + 5 Vols lear ini = as d enrées asynchrones acives à l éa bas : l aide d un circui R, on acive l enrée asynchrone un cour insan au démarrage par un niveau bas, puis on ramène le signal asynchrone d iniialisaion à. ppliqué à l enrée lear, ceci iniialise à, mais appliqué à l enrée Pr ese, ceci iniialise à. chaque fois l enrée asynchrone non uilisée es placé à l éa inacif, soi l éa. (Le mainien prolongé d une enrée asynchrone à son niveau acif fixe consan : à si lear es acif, à si U R lear iniialemen déchargé V = + 5 Vols V Prese ini = U = V e R ( ) U V R Pr ese l es). U R V lear iniialemen déchargé V = + 5 Vols Prese ini = TP 4.
135 Elecronique Numérique TP 4. Logique séquenielle 2 Simulaion (& âblage) : Pour des raisons de compaibilié, n uiliser que des circuis de la même famille (famille MOS 4 à ne pas mélanger avec la famille TTL 74xxx). 3. ompeurs Eude héorique Donner la succession des éas du compeur suivan (auomae des éas), avec la noaion 2, celui-ci éan supposé à l'éa iniial: 2 = : J J J 2 K K K H Eude expérimenale - Réaliser le câblage e cadencer à l aide du mini-inerrupeur pour horloge. - Effecuer la simulaion (ircui Maker) (prendre un pulser pour horloge). 4. Synhèse de ompeur 2 bis Eude héorique Synhéiser un compeur 2 bis synchrone avec des bascules JK posiive edge riggered, qui compe selon le cycle suivan : = Eude expérimenale - Réaliser le câblage e cadencer à l aide du mini-inerrupeur pour horloge. - Vérifier par la simulaion (ircui Maker) (prendre un pulser pour horloge). 5. Séquenceur Train élecrique (faculaif),, B a) Donner l auomae des éas correspondan à la rajecoire b) Effecuer la synhèse avec des bascules JK synchrones posiive edge riggered, permean de commander les aiguilleurs p e q. c) Vérifier par la simulaion. Rangemen du pose de ravail Examen des différenes paries du TP e rangemen ( pour ou le TP sinon). TP 4. 2
136 Elecronique Numérique 5. VHDL 5. VHDL Inroducion VHDL es l abréviaion de «Very high speed inegraed circuis Hardware Descripion Langage». L ambiion des concepeurs du langage es de fournir un ouil de descripion homogène des circuis, qui permee de créer des modèles de simulaion e de «compiler» le silicium (c es-à-dire synhéiser une foncion élecronique dans un circui programmable) à parir d un programme unique. Iniialemen réservé au monde des circuis numériques, VHDL es en passe d êre d une par éendu aux circuis analogiques, e d aure par raaché à un langage de plus hau niveau : Sysem. Deux des inérês majeurs du langage son : Des niveaux de descripion rès divers : VHDL perme de représener le foncionnemen d une applicaion an du poin de vue sysème que du poin de vue circui, en descendan jusqu aux opéraeurs les plus élémenaires. chaque niveau, la descripion (archiecure) peu êre srucurelle (porrai des inerconnexions enre des sous foncions), flo de données (porrai des signaux d enrées/sories) ou comporemenale (langage évolué). Son aspec «non propriéaire» : le développemen des circuis logiques a condui chaque fabriquan de composans programmables (FPGs : Field Programmable Gae rray...) à développer son propre langage de descripion. VHDL es en passe de devenir le langage commun à de nombreux sysèmes de O, indépendans ou liés à des produceurs de circuis, des (relaivemen) simples ouils d aide à la programmaion des PLs aux SIs, en passan par les FPGs. Hériier d D, VHDL es un gros langage. Hisorique u cours des 5 dernières années, les méhodes de concepion des foncions numériques on subi une évoluion imporane. Dans les années 7, la majorié des applicaions de la logique câblée éaien consruies auour de circuis inégrés sandard, souven pris dans la famille TTL. u débu des années 8 apparuren, parallèlemen, les premiers circuis programmables par l uilisaeur (PLs : Programmable rray Logic) du côé des circuis simples, e les circuis inégrés spécifiques (SIs : pplicaion Specific Inegraed ircui) pour les foncions complexes fabriquées en grande série. La complexié de ces derniers a nécessié la créaion d ouils logiciels de hau niveau qui son à la descripion srucurelle (schémas au niveau des pores élémenaires) ce que les langages évolués son au langage machine dans le domaine de la programmaion. Les premières généraions de circuis programmables éaien conçues au moyen de simples programmes de raducion d équaions logiques en able de fusibles. l heure acuelle, l écar de complexié enre circuis programmables e SIs s es resrein : on rouve une gamme coninue de circuis qui von des hériiers des premiers PLs, équivalens de quelques cenaines de pores, à des FPGs (Field Programmable Gae rray) ou des Ls (Logic ell rray) de quelques dizaines de milliers de pores équivalenes. Les ouils d aide à la concepion se son unifiés : un même langage, VHDL par exemple, peu êre employé quels que soien les circuis uilisés, des PLs aux SIs. La démarche de concepion d un circui es alors simple : on spécifie en langage VHDL les foncionnaliés du circui à réaliser en ermes d enrée/sorie. Le compilaeur VHDL engendre un fichier JEDE (.JED) auorisan une simulaion (visualisaion des signaux d enrée/sorie) en foncion du composan programmable choisi pour maérialiser le circui désiré. Enfin, Il ne rese plus qu à programmer ledi composan à l aide d une care spécialisée fournie par le consruceur de composans programmables (FPGs...). Les principaux consruceurs : ILIN, TEL, YPRESS, MENTOR GRPHIS, DENE, VIEW LOGI, LTER... fournissen leur propre compilaeur VHDL en grande parie porable (Warp de YPRESS, Max+Plus d LTER...). 5.
137 Elecronique Numérique 5. VHDL Méhodes de synhèse Le remplacemen, dans la plupar des applicaions, des foncions sandard complexes par des circuis programmables, s accompagne d un changemen dans les méhodes de concepion : on consae un «reour aux sources» : le concepeur d une applicaion élabore sa soluion en descendan au niveau des bascules élémenaires, au même ire que l archiece d un circui inégré. l uilisaion sysémaique d ouils de concepion assisée par ordinaeur (O), sans lesquels la âche serai irréalisable, rend caducs les fasidieux calculs de minimisaion d équaions logiques. Le concepeur peu se consacrer enièremen aux choix d archiecure qui son eux, esseniels. la complexié des foncions réalisables dans un seul circui pose le problème du es. Les ouils radiionnels de es de cares imprimées, du simple oscilloscope à la «planche à clous» en passan par l analyseur d éas logiques ne son plus d un grand secours, dès lors que la grande majorié des équipoenielles son inaccessibles de l exérieur. Là encore, la O joue un rôle esseniel. Encore fau-il que les soluions choisies soien analysables de façon sûre. ela inerdi formellemen ceraines asuces, parfois renconrées dans des schémas radiionnels de logique câblée, comme des commandes asynchrones uilisées auremen que pour une iniialisaion lors de la mise sous ension, par exemple. les langages de hau niveau comme VHDL privilégien une approche globale des soluions. Dès lors que l archiecure générale d une applicaion es arrêée, que les algorihmes qui décriven le foncionnemen de chaque parie son élaborés, le rese du ravail de synhèse es exrêmemen simple e rapide.. Principes généraux.. Descripion descendane : le «op down design» Une applicaion un an soi peu complexe es découpée en sous-ensembles qui échangen des informaions suivan un proocole bien défini. haque sous-ensemble es, à son our, subdivisé, e ainsi de suie jusqu aux opéraeurs élémenaires. Un sysème es consrui comme une hiérarchie d objes, les déails de réalisaion se précisan au fur e à mesure que l on descend dans cee hiérarchie. un niveau donné de la hiérarchie, les déails de foncionnemen inerne des niveaux inférieurs son invisibles. es le principe même de la programmaion srucurée. Plusieurs réalisaions d une même foncion pourron êre envisagées, sans qu il soi nécessaire de remere en cause la concepion des niveaux supérieurs; plusieurs personnes pourron collaborer à un même proje, sans que chacun ai à connaîre ous les déails de l ensemble. La concepion descendane consise à définir le sysème en paran du somme de la hiérarchie, en allan du général au pariculier. VHDL perme, par exemple, de eser la validié de la concepion d ensemble, avan que les déails des sous foncions ne soien complèemen définis. ire d exemple, l archiecure générale d un processeur peu êre évaluée sans que le mode de réalisaion de ses regisres inernes ne soi connu, le foncionnemen des regisres en quesion sera alors décri au niveau comporemenal. 5. 2
138 Elecronique Numérique 5. VHDL.. Simulaion e/ou synhèse VHDL a éé, iniialemen, connu comme un langage de simulaion, il es foremen marqué par ce hériage rès informaique, ce qui es parfois un peu dérouan pour l élecronicien, proche du maériel, qui n es pas oujours un spécialise des langages de programmaion. ions quelques exemples : onrairemen à ou PSL, VHDL es un langage qui comprend le «parallélisme», c es à dire que des blocs d insrucions peuven êre exécués simulanémen, par opposiion à séqueniellemen comme dans un langage procédural radiionnel. uan ce parallélisme es fondamenal pour comprendre le foncionnemen d un simulaeur logique, e peu êre dérouan pour un programmeur habiué au déroulemen séqueniel des insrucions qu il écri, auan il es éviden que le foncionnemen d un circui ne dépend pas de ordre dans lequel on éé éablies les connexions. L uilisaeur de VHDL gagnera beaucoup en ne se laissan pas enfermer dans l aspec langage de programmaion, en se souvenan qu il es en rain de créer un vrai circui. Les paries séquenielles du langage, car il y en a, doiven, dans ce conexe, êre comprises soi comme une facilié offere dans l écriure de ceraines foncions, soi comme le moyen de décrire des opéraeurs fondamenalemen séqueniels : les opéraeurs synchrones. La modélisaion correce d un sysème suppose de prendre en compe, au niveau du simulaeur, les imperfecions du monde réel. VHDL offre donc la possibilié de spécifier des reards, de préciser ce qui se passe lors d un confli de bus, ec. Pour simuler oues ces vicissiudes, le langage offre oue une gamme d ouils : signaux qui prennen une valeur inconnue, messages d erreurs quand un «circui» déece une violaion de se up ime, changemens d éas reardés pour simuler les emps de propagaion. Toues les consrucions associées de ce ype ne son évidemmen pas synhéisables! La difficulé principale es que, suivan les compilaeurs, la fronière enre ce qui es synhéisable e ce qui ne l es pas n es pas oujours la même, même pour des compilaeurs qui respecen la norme IEEE-76. van d uiliser un ouil de synhèse, le concepeur de circui a ou à gagner à lire rès aenivemen la présenaion du sous-ensemble de VHDL accepé par ce ouil. Trois classes de données exisen en VHDL : les consanes, les variables (affecaion par le symbole := ) e les signaux (affecaion par le symbole <= ). La naure des signaux ne présene aucune ambiguïé, ce son des objes qui véhiculen une informaion logique an du poin de vue simulaion que dans la réalié. Les signaux qui on échappé aux simplificaions logiques, apporées par l opimiseur oujours présen, son des vraies équipoenielles du schéma final. Les variables son desinées, comme dans ou langage, à socker emporairemen des valeurs, dans l opique d une uilisaion fuure, sans chercher à représener la réalié. erains compilaeurs considèren que les variables n on aucune exisence réelle, au niveau du circui, qu elles ne son que des ouils de descripion foncionnelle. D aures ransformen, évenuellemen (cela dépend de l opimiseur), les variables en cellules mémoires... Il es clair que VHDL, les ouils de synhèse e d opimisaion ne peuven pas ransformer un mauvais concepeur en un bon. e son de simples ouils supplémenaires qui peuven aider un ingénieur à réaliser plus rapidemen e plus efficacemen un maériel quand ils son uilisés correcemen. Il es oujours nécessaire de comprendre les déails physiques de la façon don es implémenée une réalisaion. L ingénieur doi «regarder par dessus épaule» de l ouil pour s assurer que le résula es conforme à ses exigences e à sa philosophie, e que le résula es obenu en un emps raisonnable. 5. 3
139 Elecronique Numérique 5. VHDL.2. Exemples Des auologies Les exemples de code source VHDL ci-dessous ne nous apprennen rien sur les propriéés des opéraeurs concernés, ils nous monren l aspec d un programme VHDL e nous rappellen que les opéraions NON, ET e OU son définies sur les objes de ype bi (apparenan à la classe signal) comme sur ceux de ype boolean, avec une convenion logique posiive ( TRUE, FLSE). -- inverseur (ceci es un commenaire) eniy inverseur is por (e : in bi ; -- les enrees s : ou bi) ; -- les sories end inverseur; archiecure daaflowlowlevel of inverseur is begin s <= no e ; end daaflowlowlevel; De même : -- operaeur e eniy e is por (e, e2 : in bi ; s : ou bi) ; end e ; archiecure daaflowlowlevel of e is begin s <= e and e2 ; end daaflowlowlevel; Ou encore : -- operaeur ou eniy ou is por (e, e2 : in bi ; s : ou bi) ; end ou ; archiecure daaflowlowlevel of ou is begin s <= e or e2 ; end daaflowlowlevel; On noera la srucure générale d un programme e le symbole «d affecaion» pariculier aux objes de naure signal (s, e, el, e2). La déclaraion eniy correspond au prooype d une foncion en langage, elle décri l ineracion enre l opéraeur e le monde environnan. La parie archiecure du programme correspond à la descripion inerne de l opéraeur, elle décri donc son foncionnemen. L archiecure peu êre de ype srucurel, flo de données ou comporemenal. Plusieurs archiecures peuven décrire une même enié. Les mos clés du langage son noés en non ialique ou en MJUSULES, c es une habiude de cerains, pas une obligaion. 5. 4
140 Elecronique Numérique 5. VHDL Des affecaions condiionnelles Dans les programmes qui suiven on voi apparaîre la noion de «hau niveau» du langage. Des expressions puremen booléennes son uilisées pour décrire le foncionnemen d un circui. Ici elles raduisen sricemen les ables de vérié, mais permeen évidemmen des consrucions beaucoup plus élaborées. -- inverseur eniy inverseur is por (e : in bi ; s : ou bi) ; end inverseur ; archiecure daaflowhighlevel of inverseur is begin s <= when (e = ) else ; end daaflowhighlevel; De même : -- operaeur e eniy e is por (e, e2 : in bi ; s : ou bi) ; end e ; archiecure daaflowhighlevel of e is begin s <= when (e = or e2 = ) else ; end daaflowhighlevel; ou encore : -- operaeur ou eniy ou is por (e, e2 : in bi ; s : ou bi) ; end ou ; archiecure daaflowhighlevel of ou is begin s <= when (e = and e2 = ) else ; end daaflowhighlevel; 5. 5
141 Elecronique Numérique 5. VHDL Des exemples de modèles comporemenaux Terminons cee première découvere de VHDL par 2 descripions d archiecure puremen comporemenales des opéraeurs ET e OU : eniy e is -- operaeur e por (e, e2 : in bi ; s : ou bi) ; end e ; archiecure behaviour of e is begin process (el, e2) begin if (e = or e2 = ) hen s <= ; else s <= ; end if ; end process ; end behaviour; ou encore : eniy ou is -- operaeur ou por (e : in bi_vecor ( o ); s : ou bi ); end ou ; archiecure behaviour of ou is begin process ( e ) begin case e is when "" => s <= ; when ohers => s <= ; end case ; end process ; end behaviour; Le rôle de l insrucion process es de décrire expliciemen un processus défini par un algorihme séqueniel ( non parallèle, conrairemen aux descripions srucurelle e flo de données). 5. 6
142 Elecronique Numérique 5. VHDL.3. L exérieur de la boîe noire : une «ENTITE» Dans une consrucion hiérarchique, les niveaux supérieurs n'on pas à connaîre les déails des niveaux inférieurs. Une foncion logique sera vue, dans cee opique, comme un assemblage de «boîes noires» don, synaxiquemen parlan, seules les modes d'accès son nécessaires à l'uilisaeur. La consrucion qui décri l'exérieur d'une foncion es l'enié (eniy). La déclaraion correspondane lui donne un nom e précise la lise des signaux d'enrée e de sorie (équivalen en langage du prooypage) : mon_circui enree enree2 enree3 enree4 sorie sorie2 sorie3 4 6 eniy mon_circui is por ( enree : in bi ; enree2, enree3 : in bi ; enree4 : in bi_vecor ( o 3 ) ; sorie, sorie2 : ou bi ; sorie3 : ou bi_vecor ( o 5 ) ) end mon_circui ; Dans l exemple qui précède, les noms des objes, qui dépenden du choix de l uilisaeur, son écris en ialique, les aures mos son des mos-clés du langage (ces derniers peuven indifféremmen êre écris en minuscules ou en MJUSULES). Les choix possibles pour le sens de ransfer son : in, ou, inou e buffer (une sorie qui peu êre «lue» par l inérieur du circui). Les choix possibles pour les ypes de données échangées son les mêmes que pour les signaux..4. Le foncionnemen inerne : une «RHITETURE» L'archiecure es la maérialisaion de la foncion définie dans l enié. Elle décri le foncionnemen inerne d'un circui auquel es aaché une enié. e foncionnemen peu êre décri de différenes façons : Descripion srucurelle Le circui es vu comme un assemblage de composans de niveau inférieur, c'es une descripion «schémaique». Souven ce mode de descripion es uilisé au niveau le plus élevé de la hiérarchie, chaque composan éan lui-même défini par un programme VHDL (enié e archiecure). Descripion comporemenale Le comporemen maériel du circui es décri par un algorihme, indépendammen de la façon don il es réalisé au niveau srucurel. Descripion par un flo de données Le foncionnemen du circui es décri par un flo de données qui von des enrées vers les sories, en subissan, éape par éape, des ransformaions élémenaires successives. e mode de descripion perme de reproduire l'archiecure logique, en couches successives, des opéraeurs combinaoires. Flo de données e représenaion comporemenale son rès voisines, dans les deux cas le concepeur peu faire appel à des insrucions de hau niveau. La première méhode uilise un grand nombre de signaux inernes qui conduisen au résula par des ransformaions de proche en proche. La seconde uilise des blocs de programme (les processus explicies), qui manipulen de nombreux signaux avec des algorihmes séqueniels. 5. 7
143 Elecronique Numérique 5. VHDL La synaxe générale d'une archiecure compore une parie de déclaraion e un corps de programme : archiecure exemple of mon_circui is parie déclaraive opionnelle : ypes, consanes, signaux locaux, composans. begin corps de l'archiecure. suie d'insrucions parallèles : affecaions de signaux ; processus explicies ; -- mais l inérieur d un processus es séqueniel blocs ; insanciaion (i.e. imporaion dans un schéma) de composans (appel de sousprogrammes). end exemple ;.5. Des algorihmes séqueniels décriven un câblage parallèle : les «PROESSUS» «Un processus es une insrucion concurrene (deux insrucions concurrenes son simulanées) qui défini un comporemen qui doi avoir lieu quand ce processus devien acif. Le comporemen es spécifié par une suie d'insrucions séquenielles exécuées dans le processus.» u es-ce que cela signifie? Trois choses :. Les différenes paries d'une réalisaion ineragissen simulanémen, peu impore l'ordre dans lequel un câbleur soude ses composans, le résula sera le même. Le langage doi donc comporer une conraine de «parallélisme» enre ses insrucions. ela implique des différences noables avec un langage procédural comme le langage. En langage VHDL : e a <= b ; c <= a + d ; c <= a + d ; a <= b ; représenen la même chose, ce qui es noablemen différen de ce qui se passerai en langage pour : e a = b ; c = a + d; c = a + d ; a = b ; Les affecaions de signaux, à l'exérieur d'un processus explicie, son raiées comme des processus ellemen élémenaires qu'il es inuile de les déclarer comme els. es affecaions son raiées en parallèle, de la même façon que plusieurs processus indépendans. 2. L'algorihmique fai grand usage d'insrucions séquenielles pour décrire le monde. VHDL offre cee facilié à l'inérieur d'un processus expliciemen déclaré. Dans le corps d un processus il sera possible d uiliser des variables, des boucles, des condiions, don le sens es le même que dans les langages séqueniels. Même les affecaions enre signaux son des insrucions séquenielles quand elles apparaissen à l inérieur d un processus. Seul sera visible de l'exérieur le résula final obenu à la fin du processus. 5. 8
144 Elecronique Numérique 5. VHDL 3. Les opéraeurs séqueniels, surou synchrones, mais pas exclusivemen eux, comporen «naurellemen» la noion de mémoire, qui es le fondemen de l'algorihmique radiionnelle. Les processus son la représenaion privilégiée de ces opéraeurs (ce n'es pas la seule, les descripions srucurelle e flo de données, plus proches du câblage du circui, permeen de décrire ous les opéraeurs séqueniels avec des opéraeurs combinaoires élémenaires. Pour les circuis qui comporen des bascules comme élémens primiifs, connus de l'ouil de synhèse, les deux seules façons d'uiliser ces bascules son les processus e leur insanciaion comme composans dans une descripion srucurelle). Mais aenion, la réciproque n'es pas vraie, il es parfaiemen possible de décrire un opéraeur puremen combinaoire par un processus, le programmeur uilise alors de ce obje la seule facilié d'écriure de l'algorihme. Oure les simples affecaions de signaux, qui son en elles mêmes des processus implicies à par enière, la descripion d'un processus obéi à la synaxe suivane (en pariculier, la srucure séquenielle «if hen» es à inclure obligaoiremen dan un processus) : Processus : synaxe générale avec lise de sensibilié (lise de paramères d acivaion du processus) [éiquee : ] process [ (lise de sensibilié) ] parie déclaraive opionnelle : variables noammen begin corps du processus insrucions séquenielles end process [ éiquee ] ; Les élémens mis enre croches son opionnels, ils peuven êre omis sans qu'il y ai d'erreur de synaxe. La lise de sensibilié es la lise des signaux qui déclenchen, par le changemen de valeur de l'un quelconque d'enre eux, l'acivié du processus (paramères ou argumens du processus). ee lise peu êre remplacée par une insrucion «wai» dans le corps du processus : la synaxe du processus devien alors la suivane : Processus : synaxe générale sans lise de sensibilié mais avec l insrucion «wai» [éiquee : ] process parie déclaraive opionnelle : variables noammen begin wai [on lise_de_signaux ] [ unil condiion] ; insrucions séquenielles end process [ éiquee ] ; L insrucion wai ee insrucion indique au processus que son déroulemen doi êre suspendu dans l'aene d'un événemen sur un signal (un signal change de valeur), e an qu'une condiion n'es pas réalisée. Sa synaxe générale es : wai [on lise_de_signaux ] [ unil condiion] ; On peu spécifier un emps d aene maximum (wai for emps), mais cee clause n es pas synhéisable. La lise des signaux don l'insrucion aend le changemen de valeur joue exacemen le même rôle que la lise de sensibilié du processus, mais l'insrucion wai ne peu pas êre uilisée en même emps qu'une lise de sensibilié. La endance, pour les évoluions fuures du langage, semble êre à la suppression des lises de sensibiliés, pour n'uiliser que les insrucions d'aene. Descripion d'un opéraeur séqueniel La représenaion des horloges : pour représener les opéraeurs synchrones de façon comporemenale, il fau inroduire l'horloge dans la lise de sensibilié, ou insérer dans le code du processus une insrucion «wai» explicie. Rappelons qu'il es inerdi d'uiliser à la fois une lise de sensibilié e une insrucion wai. uand on modélise un opéraeur qui compore à la fois des commandes synchrones e des commandes asynchrones, il fau, avec cerains compilaeurs, mere ces commandes dans la lise de sensibilié. 5. 9
145 Elecronique Numérique 5. VHDL Exemple : archiecure fsm of jk_raz is signal ea : bi ; begin q <= ea ; -- la déclaraion de q a eu lieu précédemmen dans l enié -- l éa va êre défini ci-dessous (parallélisme) -- l insrucion «q <= ea» e le processus son 2 insrucions concurrenes -- (parallèles) alors que l inérieur d un processus es séqueniel process (clock, raz) -- deux signaux d'acivaion exerne begin if (raz = '') hen -- raz asynchrone ea <= ''; elseif (clock = 'l' and clock 'even) hen -- fron monan d horloge case ea is when '' => if (j = '' ) hen ea <= ''; end if ; when '' => if (k = '' ) hen ea <= ''; end if ; end case ; end if ; end process ; end fsm ; Dans l exemple précéden, la priorié de la mise à zéro asynchrone, sur le foncionnemen synchrone normal de la bascule JK, apparaî par l ordre des insrucions de la srucure if... elseif. Le processus es uilisé là à la fois pour modéliser un opéraeur esseniellemen séqueniel, la bascule, e pour facilier la descripion de l effe de ses commandes par un algorihme séqueniel. Pour modéliser un comporemen puremen synchrone on peu indifféremmen uiliser la lise de sensibilié ou une insrucion wai : archiecure fsm_lise of jk_simple is signal ea : bi ; begin q <= ea ; -- la déclaraion de q a eu lieu précédemmen dans l enié process (clock) -- un seul signal d'acivaion begin if (clock = 'l' and clock 'even) hen case ea is when '' => if (j = 'l' ) hen ea <= 'l' ; end if; when 'l' => if (k = 'l' ) hen ea <= '' ; end if; end case ; end if ; end process ; end fsm_lise ; 5.
146 Elecronique Numérique 5. VHDL Ou, de façon sricemen équivalene, en uilisan une insrucion «wai» : archiecure fsm_wai of jk_simple is signal ea : bi ; begin q <= ea ; process -- pas de lise de sensibilié begin wai unil (clock = 'l') ; case ea is when '' => if (j = 'l' ) hen ea <= 'l' ; end if; when 'l' => if (k = 'l' ) hen ea <= '' ; end if ; end case ; end process ; end fsm_wai ; Descripion par un processus d un opéraeur combinaoire ou asynchrone Un processus perme de décrire un opéraeur puremen combinaoire ou un opéraeur séqueniel asynchrone, en uilisan une démarche algorihmique. Dans ces deux cas la lise de sensibilié, ou l'insrucion wai équivalene, es obligaoire; le caracère combinaoire ou séqueniel de l'opéraeur réalisé va dépendre du code inerne au processus. On considère un signal qui fai l'obje d'une affecaion dans le corps d'un processus : - si au bou de l'exécuion du processus, pour oues les combinaisons possibles des valeurs de la lise de sensibilié, la valeur de ce signal, obje d'une affecaion, es connue, l'opéraeur correspondan es combinaoire. - si ceraines des combinaisons précédenes de la lise de sensibilié conduisen à une indéerminaion concernan la valeur du signal examiné, obje d'une affecaion, ce signal es associé à une cellule mémoire (opéraeur séqueniel). Précisons ce poin par un exemple : 5.
147 Elecronique Numérique 5. VHDL eniy comb_seq is por ( el, e2 : in bi ; s_e, s_lach, s_edge : ou bi ) ; end comb_seq ; archiecure exproc of comb_seq is begin -- pore logique e e : process (e, e2) -- ou encore process (e) begin if ( e = 'l' ) hen s_e <= e2 ; else s_e <= '' ; -- équivalen à s_e <= e and e2 ; end if ; end process ; -- opéraeur combinaoire -- bascule D lach, e es la commande lach : process (e,e2) -- ou encore process (e) begin if ( e = '' ) hen s_lach <= e2 ; end if; -- si e = '' la valeur de s_lach es «inconnue» ( mémorisaion). end process ; -- opéraeur séqueniel -- bascule D edge, e es l horloge edge : process (e) -- ou encore process (e,e2) begin if ( e 'even and e = '') hen -- e agi sur un fron monan. s_edge <= e2 ; end if ; end process ; -- en dehors d un fron monan : mémorisaion de l éa précéden end exproc ; -- opéraeur séqueniel Dans l'exemple qui précède, le premier processus es combinaoire, le signal s_e a une valeur connue à la fin du processus, quelles que soien les valeurs des enrées e e e2. Dans le deuxième processus, l'insrucion «if» ne nous renseigne pas sur la valeur du signal s_lach quand e = ''. ee méconnaissance es inerpréée, par le compilaeur VHDL, comme un mainien de la valeur précédene, d'où la généraion d'une cellule mémoire don la commande de mémorisaion, e, es acive sur un niveau. Le roisième processus condui égalemen, e pour le même ype de raison, à la synhèse d'une cellule mémoire pour le signal s_edge. Mais la commande de mémorisaion es, cee fois, acive sur un fron, expliciemen menionné dans la condiion de l'insrucion «if» : e 'even. La façon don es raiée la commande de mémorisaion e dépend donc de l'écriure du es : niveau ou fron 5. 2
148 Elecronique Numérique 5. VHDL 2. Elémens du langage 2.. Les données appariennen à une classe e on un ype VHDL, hériier d'd, es un langage foremen ypé. Toues les données on un ype qui doi êre déclaré avan l'uilisaion (sauf, e c'es bien praique, les variables enières des boucles «for») e aucune conversion de ype auomaique (une souplesse e un piège immense du langage, par exemple) n'es effecuée. Pour passer du ype enier au ype bi_vecor, par exemple, il fau faire appel à une foncion de conversion. Une donnée apparien à une classe qui défini, avec son ype, son comporemen. Des données de deux classes différenes, mais de même ype, peuven échanger des informaions direcemen : on peu affecer la valeur d'une variable à un signal, par exemple (nous verrons ci-dessous que variables e signaux son deux classes différenes). La porée des noms es, en général, locale. Un nom déclaré à l'inérieur d'une archiecure, par exemple, n'es connu que dans celle-ci. Des objes globaux son possibles, on peu noammen définir des consanes, comme zero ou one, exérieures aux uniés de programmes que consiuen les couples enié-archiecure. l inérieur d une archiecure, les objes déclarés dans un bloc (délimié par les mos-clés begin e end) son visibles des blocs plus inernes uniquemen. Les objes déclarés dans une enié son connus de oues les archiecures qui s y rapporen. Les classes : signaux, variables e consanes Signaux Les signaux représenen les données physiques échangées enre des blocs logiques d'un circui. hacun d'enre eux sera maérialisé dans le schéma final par une équipoenielle e, évenuellemen, une cellule mémoire qui conserve la valeur de l'équipoenielle enre deux commandes de changemen. Les «pors» d'enrée e de sorie, aachés à une enié, par exemple, son une variéé de signaux qui permeen l'échange d'informaions enre différenes foncions. Leur uilisaion es similaire à celle des argumens d'une procédure en langage PSL, le sens de ransfer de l'informaion doi êre précisé. Synaxe de déclaraion (se place dans la parie déclaraive d'une archiecure - ou d un paqueage, voir plus loin) : signal noml, nom2 : ype ; ffecaion d'une valeur (se place dans le corps d'une archiecure ou d'un processus) : nom <= valeur_compaible_avec_le_ype ; La valeur affecée peu êre le résula d'une expression, simple ou condiionnelle (when), ou la valeur renvoyée par l'appel d'une foncion. l'exérieur d'un processus oues les affecaions de signaux son concurrenes, c'es donc une erreur (sémanique, pas synaxique) d'affecer plus d'une fois une valeur à un signal. L'affecaion d'une valeur à un signal radui, en fai, la connexion de la sorie d'un opéraeur à l'équipoenielle correspondane. Il s'agi là d'une opéraion permanene, une soudure sur une care, par exemple, qu'il es hors de quesion de modifier ailleurs dans le programme. Si un signal es l'obje d'affecaions muliples, ce qui revien à mere en parallèle plusieurs sories d'opéraeurs (rois-éas ou colleceurs ouvers, par exemple), il fau adjoindre à ce signal, pour les besoins de la simulaion, une foncion de résoluion qui perme de résoudre le confli (dans les applicaions de synhèse les pores à sories non sandard son généralemen inroduies dans une descripion srucurelle). 5. 3
149 Elecronique Numérique 5. VHDL Variables Les variables son des objes qui serven à socker un résula inermédiaire pour facilier la consrucion d un algorihme séqueniel. Elles ne peuven êre uilisées que dans les processus, les procédures ou les foncions e dans les boucles «generae» qui serven à créer des schémas répéiifs. Synaxe de déclaraion (se place dans la parie déclaraive d'un processus, d'une procédure ou d'une foncion) : variable noml, nom2 : ype [ := expression] ; L'expression faculaive qui apparaî dans la déclaraion précédene perme de donner à une variable une valeur iniiale choisie par l'uilisaeur. défau de cee expression le compilaeur, qui iniialise oujours les variables (le programmeur ne doi, noammen, pas s aendre à rerouver les variables d un processus dans l éa où il les avai laissées lors d une acivaion précédene de ce processus), uilise une valeur par défau qui dépend du ype déclaré. ffecaion d'une valeur : nom := valeur_compaible_avec_le_ype ; La valeur affecée peu êre le résula d'une expression ou la valeur renvoyée par l'appel d'une foncion. Les variables de VHDL jouen le rôle des variables auomaiques des langages procéduraux, comme ou PSL, elles on une porée limiée au module de programme dans lequel elles on éé déclarées, e son déruies à la sorie de ce module. La différence enre variables e signaux es que les premières n'on pas d'équivalen physique dans le schéma, conrairemen aux seconds. erains ouils de synhèse ne respecen malheureusemen pas cee disincion. On noera qu'il es possible d'affecer la valeur d'une variable à un signal, e inversemen, pourvu que les ypes soien compaibles. onsanes Les consanes son des objes don la valeur es fixée une fois pour oue. Exemples de valeurs consanes simples : '', '', "", 26, "azery" 26 es du ype enier. "" es du ype sring (chaîne de caracères). '' es du ype caracère. On peu créer des consanes nommées : consan nom : ype [ := valeur_consane] ; On noera que les veceurs de bis (bi_vecor) son raiés comme des chaînes, on peu préciser une base différene de la base 2 pour ces consanes : "37", O"2375" pour hexadécimal e ocal. De même, les valeurs enières peuven êre écries dans une aure base que a base : 6#BDEFO23#, 2## ou 2# #, pour plus de lisibilié. En général les nombres floans ne son pas accepés par les ouils de synhèse. Des ypes adapés à l'élecronique numérique VHDL connaî un nombre limié de ypes de base, qui reflèen le foncionnemen des sysèmes numériques (pour l'insan, VHDL es en passe de devenir un langage de descripion des circuis analogiques), e offre à l'uilisaeur de consruire à parir de ces ypes génériques : - des sous-ypes (sous-ensembles du ype de base), obenus en précisan un domaine de variaion limié de l'obje considéré, - des ypes composés, obenus par la réunion de plusieurs ypes de base ideniques (ableaux) ou de ypes différens (enregisremens). 5. 4
150 Elecronique Numérique 5. VHDL En plus des ypes prédéfinis e de leurs dérivés, l'uilisaeur a la possibilié de créer ses propres ypes sous forme de ypes énumérés. Les eniers VHDL manipule des valeurs enières qui corresponden à des mos de 32 bis, soi comprises enre e enion, sur les Ps qui son des machines don les eniers coninuen à hésier enre 6 e 32 bis, l'uilisaeur peu renconrer de désagréables surprises. Les nombres négaifs ne son pas oujours accepés dans la descripion des signaux physiques. Déclaraion : signal nom : ineger ; ou variable nom : ineger ; ou encore : consan nom : ineger ; que l on résume classiquemen par : signal variable consan nom : ineger ; le symbole signifian «ou». On peu spécifier une plage de valeurs inférieure à celle obenue par défau, par exemple : signal ea : ineger range o 23 ; perme de créer un compeur bis. La même consrucion perme de créer un sous-ype : subype ea_l is ineger range o 23 ; signal eal, ea2 : ea_l ; enion! La resricion d'éendue de variaion es uilisée pour générer le nombre de chiffres binaires nécessaires à la représenaion de l'obje, l'arihméique sous-jacene n'es (pour l'insan) pas raiée par les compilaeurs. ela veu dire que : signal chiffre : ineger range o 9 ; perme de créer un obje codé sur quare bis, mais : chiffre <= chiffre + l ; ne crée pas un compeur décimal. Pour ce faire il fau écrire expliciemen (compeur décimal) : if (chiffre < 9 ) hen chiffre <= chiffre + l ; else chiffre <= ; end if ; 5. 5
151 Elecronique Numérique 5. VHDL La déclaraion, au niveau le plus élevé d'une hiérarchie, de pors d'enrée ou de sorie comme nombres eniers pose un problème de conrôle par l'uilisaeur, de l'assignaion des broches physiques du circui final aux chiffres binaires générés. ee assignaion sera faie auomaiquemen par l'ouil de développemen. Si ce non conrôle es gênan, il es possible de ransformer un nombre enier en ableau de bis, via les foncions de conversion de la librairie associée à un compilaeur. Les ypes énumérés L uilisaeur peu créer ses propres ypes par simple énuméraion de consanes symboliques qui fixen oues les valeurs possibles du ype. Par exemple : ype drinksae is (zero, five, en, fifeen, weny, wenyfive, owedime); signal drinksaus : drinksae; Les bis Il s'agi là, évidemmen, du ype de base le plus uilisé en élecronique numérique. Un obje de ype bi peu prendre deux valeurs : '' e ''. Il s'agi, en fai, d'un ype énuméré prédéfini. Déclaraion : signal variable nom : bi ; e qui précède s'applique aux descripions synhéisables, pour les besoins de la simulaion de nombreux compilaeurs proposen un ype bi plus éoffé, pouvan prendre, par exemple, les valeurs '', '', '' ( pour inconnu) e 'Z' (pour haue impédance). es ypes son raduis, en synhèse, par des ypes bi ordinaires. De même la gesion des pores rois-éas, qui se fai par une descripion srucurelle, nécessie une exension du ype bi. Par exemple : eniy basc_ri_sae is por ( clk, oe : in bi; sor : inou xlz ); end basc_ri_sae ; -- ype xlz défini dans la librairie Toues ces exensions ne son, à priori, pas porables elles quelles. Mais les ouils de développemen VHDL son fournis avec les sources (en VHDL) de oues les exensions au langage de base, ce qui perme de porer d'un sysème à l'aure les librairies nécessaires. Les booléens ure ype énuméré, le ype booléen peu prendre deux valeurs: "rue" e "false". Il inervien esseniellemen comme résula d'expressions de comparaisons, dans des if, par exemple, ou dans les valeurs renvoyées par des foncions. Les ableaux parir de chaque ype de base on peu créer des ableaux, collecion d objes du même ype. L un des plus uilisés es le ype bi_vecor, défini dans la librairie sandard par : subype naural is ineger range o ineger 'high ; ype bi_vecor is array (naural range <>) of bi ; 5. 6
152 Elecronique Numérique 5. VHDL Dans l'exemple qui précède, le nombre d'élémens n'es pas précisé dans le ype, ce sera fai à l'uilisaion. Par exemple : signal ea : bi_vecor ( o 4) ; défini un ableau de cinq élémens binaires nommé éa. On aurai égalemen pu définir direcemen un sous-ype : ype cinq_bi is array ( o 4) of bi ; signal ea : cinq_bi ; Le nombre de dimensions d'un ableau n'es pas limié, les indices peuven êre définis dans le sens croissan (2 o 6) ou décroissan (6 downo 2) avec des bornes quelconques (mais cohérenes avec le sens choisi). On noera qu'il fau passer par une définiion de ype, ce qui n'es pas le cas en ou en PSL. Une fois défini, un obje composé peu êre manipulé collecivemen par son nom : signal eal : bi_vecor ( o 4) ; variable ea2 : bi_vecor ( o 4) ; ea <= ea2 ; -- parfaiemen correc Le compilaeur conrôle que les dimensions des deux objes son les mêmes. On remarquera, à parir de l'exemple précéden, que les classes des deux objes peuven êre différenes. On peu, bien sûr, ne manipuler qu'une parie des élémens d'un ableau : signal ea : bi_vecor ( o 4) ; signal sous_ea : bi_vecor ( o ) ; signal flag : bi; sous_ea <= ea ( l o 2 ) ; flag <= ea ( 3 ) ; Il es possible de fusionner deux ableaux (concaénaion) pour affecer les valeurs correspondanes à un ableau plus grand : signal ea : bi_vecor ( o 4) ; signal sous_ea2 : bi_vecor ( o ) ; signal sous_ea3 : bi_vecor ( o 2) ; ea <= sous_ea2 & sous_ea3 ; -- concaénaion. Les enregisremens Les enregisremens (record) définissen des collecions d'objes de ypes, ou de sous ypes, différens. Ils corresponden aux srucures du ou aux enregisremens de PSL. Définiion d'un ype : ype clock_ime is record hour : ineger range o 2 ; minue, seconde : ineger range o 59 ; end record; 5. 7
153 Elecronique Numérique 5. VHDL Déclaraion d'un obje de ce ype : variable ime_of_day : clock_ime ; Uilisaion de l'obje précéden : ime_of_day.hour := 3 ; ime_of_day.minue := 45 ; chrono := ime_of_day.seconde ; L'ensemble d'un enregisremen peu êre manipulé par son nom Les aribus précisen les propriéés des objes Déerminer, de façon dynamique, la aille d'un ableau, le domaine de définiion d'un obje scalaire, l'élémen suivan d'un ype énuméré, déecer la ransiion monane d'un signal, piloer l'opimiseur d'un ouil de synhèse, aribuer des numéros de broches à des signaux d'enrées-sories... ec. Les aribus permeen ou cela. Un aribu es une propriéé, qui pore un nom, associée à une enié, une archiecure, un ype ou un signal. ee propriéé, une fois définie, peu êre uilisée dans des expressions. L'uilisaion d'un aribu se fai au moyen d'un nom composé : le préfixe es le nom de l'obje auquel es raaché l'aribu, le suffixe es le nom de l'aribu. Préfixe e suffixe son séparés par une aposrophe «'». Nom_obje 'nom_de_l aribu Par exemple : hor 'even and hor = '' renvoie la valeur booléenne rue si le signal hor, de ype bi, vau après un changemen de valeur, ce qui revien à eser la présence d'une ransiion monane de ce signal. erains aribus son prédéfinis par le langage, d'aures son aachés à un ouil de développemen; l'uilisaeur, enfin, peu définir, e uiliser ses propres aribus. ribus prédéfinis dans le langage Les aribus prédéfinis permeen de déerminer les conraines qui pèsen sur des objes ou des ypes : domaine de variaion d'un ype scalaire, bornes des indices d'un ableau, élémens voisins d'un obje de ype énuméré, ec Ils permeen égalemen de préciser les caracérisiques dynamiques de signaux, comme la présence d'un fron, évoquée précédemmen. 5. 8
154 Elecronique Numérique 5. VHDL Le ableau ci-dessous précise le nom de quelques uns des aribus prédéfinis les plus uilisés, les caégories d objes qu ils permeen de qualifier e la valeur renvoyée par l aribu. aribu agi sur valeur reournée 'lef 'lef(n) ype scalaire ype ableau élémen de gauche borne de gauche de l'indice de la dimension n, n= par défau 'righ 'righ(n) ype scalaire ype ableau élémen de droie borne de droie de l'indice de la dimension n, n= par défau 'high 'high(n) ype scalaire ype ableau élémen le plus grand borne maximum de l'indice de la dimension n, n= par défau 'low 'low(n) ype scalaire ype ableau élémen le plus pei minimum de l'indice de la dimension n, n= par défau 'lengh(n) ype ableau nombre d'élémens de la dimension n, n= par défau 'pos(v) ype scalaire posiion de l'élémen v dans le ype 'val(p) ype scalaire valeur de l'élémen de posiion p dans le ype 'succ(v) ype scalaire valeur qui sui (posiion + ) l'élémen de valeur v dans le ype 'pred(v) ype scalaire valeur qui précède (posiion - ) l'élémen de valeur v dans le ype 'lefof(v) ype scalaire valeur de l'élémen juse à gauche de l'élémen de valeur v 'righof(v) ype scalaire valeur de l'élémen juse à droie de l'élémen de valeur v 'even signal valeur booléenne "TRUE" si la valeur du signal vien de changer 'base ous ypes renvoie le ype de base d'un ype dérivé 'range(n) ype ableau renvoie la plage de variaion de l'indice de la dimension n, défau n=, dans une boucle : "for i in bus 'range loop..." 'reverse_ range(n) ype ableau renvoie la plage de variaion, reournée (o downo), de l'indice de la dimension n, défau n= ribus spécifiques à un sysème haque sysème de développemen fourni des aribus qui aiden à piloer l'ouil de synhèse, ou le simulaeur, associé au compilaeur VHDL. es aribus, qui ne son évidemmen pas sandard, poren souven sur le piloage de l'opimiseur, permeen de passer au roueur des informaions concernan le brochage souhaié,... ec. Par exemple : aribue synhesis_off of som4 : signal is rue ; perme, avec le compilaeur «WRP», d'empêcher l'éliminaion du signal som4 par l'opimiseur. aribue pin_numbers of T_edge : eniy is "s:2 " ; perme, avec le même ouil, de préciser que le por s, de l'enié T_edge, doi êre placé sur la broche n 2 du circui. ribus définis par l'uilisaeur Synaxe : déclaraion aribue a_nom : ype ; spécificaion aribue nom_a of nom_obje : nom_classe is expression ; uilisaion nom_obje 'a_nom 5. 9
155 Elecronique Numérique 5. VHDL 2.3. Les opéraeurs élémenaires Les opéraeurs connus du langage son réparis en 6 classes, en foncion de leurs prioriés. Dans chaque classe les prioriés son ideniques; les parenhèses permeen de modifier l'ordre d'évaluaion des expressions, modifian ainsi les prioriés, e son obligaoires lors de l'uilisaion d'opéraeurs non associaifs comme l opéraeur «nand». Le ableau ci-dessous fourni la lise des opéraeurs classés par prioriés croissanes, de hau en bas : classe opéraeurs ypes d'opérandes résula opéraeurs logiques and or nand nor xor bis ou booléens bi ou booléen opéraeurs relaionnels = /= < <= > >= ous ypes booléen opéraeurs addiifs + - numériques numérique & ableaux (concaénaion) ableau signe + - numériques numérique opéraeurs muliplicaifs * / numériques (resricions) numérique mod rem eniers (resricions) enier opéraeurs divers no abs ** e ableau appelle quelques remarques : bi ou booléen numérique numériques (resricions) bi ou booléen numérique numérique - Les opéraeurs muliplicaifs e l'opéraeur d'exponeniaion (**) son soumis à des resricions, noammen en synhèse où seules les opéraions qui se résumen à des décalages son généralemen accepées. - eraines librairies sandard (in_mah e bv_mah) surdéfinissen (au sens des langages objes) les opéraeurs d'addiion e de sousracion pour les éendre au ype bi_vecor. - On noera que ous les opéraeurs logiques on la même priorié, il es donc plus que conseillé de parenhéser oues les expressions qui coniennen des opéraeurs différens de cee classe. - La priorié inermédiaire des opéraeurs unaires de signe inerdi l'écriure d'expressions comme «a * -b», qu'il fau écrire «a * (-b)» Insrucions concurrenes Les insrucions concurrenes inerviennen à l'inérieur d'une archiecure, dans la descripion du foncionnemen d'un circui. En raison du parallélisme du langage, ces insrucions peuven êre écries dans un ordre quelconque. Les principales insrucions concurrenes son : - les affecaions concurrenes de signaux, - les «processus» (décris précédemmen), - les insanciaions de composans - les insrucions «generae» - les définiions de blocs. ffecaions concurrenes de signaux ffecaion simple L affecaion simple radui une simple inerconnexion enre deux équipoenielles. L opéraeur d affecaion de signaux (<=) a éé vu précédemmen : nom_de_signal <= expression_du_bon_ype ; 5. 2
156 Elecronique Numérique 5. VHDL ffecaion condiionnelle L'affecaion condiionnelle perme de déerminer la valeur de la cible en foncion des résulas de ess logiques : cible <= source_ when condiion_booléenne_ else source_2 when condiion_booléenne_2 else... source_n ; On noera un danger de confusion enre l'opéraeur d'affecaion e l'un des opéraeurs de comparaison, l'insrucion suivane es synaxiquemen juse, mais fourni vraisemblablemen un résula for différen de celui escompé par son aueur : -- Résula bizarre : cible <= source_l when condiion else cible <= source_2; condiion es fausse. ffecaion sélecive -- <= es ici une comparaison enre cible e source_2! don le résula es affecé à cible si la En foncion des valeurs possibles d une expression, il es possible de choisir la valeur à affecer à un signal : wih expression selec cible <= source_l when valeur_ valeur_2..., source_2 when valeur_2 valeur_22..., source_n when ohers ; Un exemple ypique d'affecaion sélecive es la descripion d'un muliplexeur. Insanciaion de composan Le mécanisme qui consise à uiliser un sous-ensemble (une paire enié-archiecure), décri en VHDL, comme composan dans un ensemble plus vase es connu sous le nom d'insanciaion. Trois opéraions son nécessaires :.. Le couple enié-archiecure du sous-ensemble doi êre créé e annexé à une librairie de l'uilisaeur, par défau la librairie «work»..2. Le sous-ensemble précéden doi êre déclaré comme composan dans l'ensemble qui l'uilise, cee déclaraion reprend les élémens principaux de l'enié du sous-ensemble..3. haque exemplaire du composan que l'on souhaie inclure dans le schéma en cours d'élaboraion doi êre connecé aux équipoenielles de ce schéma, c'es le mécanisme de l'insanciaion. Synaxe de la déclaraion (.2.) : (simplifiée, nous omeons volonairemen ici la possibilié de créer des composans «génériques», c'es à dire don cerains paramères peuven êre fixés au momen de l insanciaion, une largeur de bus par exemple) componen nom_composan por ( lise_pors ) ; end componen ; -- même nom que l'enié -- même lise que dans l'enié ee déclaraion es à mere dans la parie déclaraive de l'archiecure du circui uilisaeur, ou dans un paqueage qui sera rendu visible par une clause «use». lnsanciaion d'un composan (.3.) : Eiquee : nom por map ( lise_d'associaion ) ; 5. 2
157 Elecronique Numérique 5. VHDL La lise d'associaion éabli la correspondance enre les équipoenielles du schéma e les pors d'enrée e de sorie du composan. ee associaion peu se faire par posiion, les noms des signaux à connecer doiven apparaîre dans l'ordre des pors auxquels ils doiven correspondre, ou expliciemen au moyen de l'opéraeur d'associaion «=>» : (..) archiecure exemple of xyz is componen e por ( a, b : in bi ; a_e_b : ou bi) ; end componen ; signal s_a, s_b, s_a_e_b, s, s2, s e_2 : bi ; begin -- uilisaion : e : e por map (s_a, s_b, s_a_e_b ) ; -- ou : e2 : e por map (a_e_b => s e_2, a => s, b => s2 ) ; end exemple ; En raison de sa simplicié, l'associaion par posiion es la plus fréquemmen employée. Generae Les insrucions «generae» permeen de créer de façon compace des srucures régulières, comme les regisres ou les muliplexeurs. Elles son pariculièremen efficaces dans des descripions srucurelles. Une insrucion generae perme de dupliquer un bloc d'insrucions concurrenes un cerain nombre de fois, ou de créer un el bloc si une condiion es vérifiée. Synaxe : -- srucure répéiive : eiquee : for variable in debu o fin generae insrucions concurrenes end generae [eiquee] ; ou : -- srucure condiionnelle : eiquee : if condiion generae insrucions concurrenes end generae [eiquee] ; Donnons à ire d'exemple le code d'un compeur modulo 6, consrui au moyen de bascules T, disposan d'une remise à zéro (raz) e d'une auorisaion de compage (en) acives à 'l' : eniy cn6 is por ( ck, raz, en : in bi ; s : ou bi_vecor ( o 3) ) ; end cn6 ; 5. 22
158 Elecronique Numérique 5. VHDL archiecure sruc of cn6 is signal ea : bi_vecor ( o 3) ; signal iner : bi_vecor ( o 3); componen T_edge -- supposé présen dans la librairie work por ( T, hor, zero : in bi; s : ou bi ) ; begin s <= ea ; gen_for : for i in o 3 generae gen_ifl : if i = generae iner() <= en ; end generae gen_ifl ; gen_if2 : if i > generae iner(i) <= ea(i - ) and iner(i - ) ; end generae gen_if2 ; compl_3 : T_edge por map (iner(i), ck, raz, ea(i)); composan T_edge end generae gen_for ; end sruc ; -- insanciaion (appel) du Block Une archiecure peu êre subdivisée en blocs, de façon à consiuer une hiérarchie inerne dans la descripion d'un composan complexe. Synaxe : eiquee : block [ ( expression_de_garde ) ] -- zone de déclaraions de signaux, composans, ec... begin -- insrucions concurrenes end block [ eiquee ] ; Dans des applicaions de synhèse, l'inérê principal des blocs es de permere de conrôler la porée e la visibilié des noms des objes uilisés (signaux noammen) : un nom déclaré dans un bloc es local à celui-ci Insrucions séquenielles Les insrucions séquenielles son inernes aux processus, aux procédures e aux foncions (pour les deux dernières consrucions voir paragraphes suivans). Elles permeen d'appliquer à la descripion d'une parie d'un circui une démarche algorihmique, même s'il s'agi d'une foncion puremen combinaoire. Les principales insrucions séquenielles son : - L'affecaion séquenielle d'un signal, qui uilise l'opéraeur «<=», a une synaxe qui es idenique à celle de l'affecaion concurrene simple. Seule la place, dans ou hors d'un module de programme séqueniel, disingue les deux ypes d'affecaion; cee différence, qui peu sembler mineure, cache des comporemens différens : alors que les affecaions concurrenes peuven êre écries dans un ordre quelconque, pour leurs correspondanes séquenielles, raremen uilisées hors d une srucure de conrôle, l ordre d écriure n es pas indifféren. - L'affecaion d'une variable, qui uilise l'opéraeur «: =», es oujours une insrucion séquenielle. - Les ess «if» e «case». - Les insrucions de conrôle des boucles «loop», «for» e «while»
159 Elecronique Numérique 5. VHDL Les insrucions de es Les insrucions de ess permeen de sélecionner une ou des insrucions à exécuer, en foncion des valeurs prises par une ou des expressions. On noera que, dans un processus, si oues les branches possibles des ess ne son pas expliciées, une cellule mémoire es générée pour chaque affecaion de signal. L'insrucion «if hen else endif» L'insrucion if perme de sélecionner une ou des insrucions à exécuer, en foncion des valeurs prises par une ou des condiions. Synaxe : if expression_logique hen insrucions séquenielles [ elsif expression_logique hen ] insrucions séquenielles [ else ] insrucions séquenielles end if ; Son inerpréaion es la même que dans les langages de programmaion classiques comme ou PSL. L'insrucion «case when end case» L'insrucion case perme de sélecionner une ou des insrucions à exécuer, en foncion des valeurs prises par une expression. Synaxe : case expression is when choix choix... choix => insrucion sequenielle ; when choix choix... choix => insrucion sequenielle ; when ohers => insrucion sequenielle ; end case ; «choix», pour «ou», e «when ohers» son synaxiquemen faculaifs. Les choix représenen différenes valeurs possibles de l expression esée; on noera que oues les valeurs possibles doiven êre raiées, soi expliciemen, soi par l'alernaive «ohers». hacune de ces valeurs ne peu apparaîre que dans une seule alernaive. ee insrucion es à rapprocher du «swich» de, ou de «case of» de PSL. Les boucles Les boucles permeen de répéer une séquence d'insrucions. Synaxe générale [ eiquee : ] [ schéma iéraif ] loop séquence d'insrucions ; end loop [ eiquee ] ; 5. 24
160 Elecronique Numérique 5. VHDL Trois caégories de boucles exisen en VHDL, suivan le schéma d'iéraion choisi : - Les boucles simples, sans schéma d'iéraion, don on ne peu sorir que par une insrucion «exi». - Les boucles «for», don le schéma d'iéraion précise le nombre d'exécuions. - Les boucles «while», don le schéma d'iéraion précise la condiion de mainien dans la boucle. Les boucles «for» [ eiquee : ] for paramere in minimum o maximum loop séquence d' insrucions end loop [ eiquee ] ; ou : [ eiquee : ] for paramere in maximum downo minimum loop séquence d' insrucions end loop [ eiquee ] ; Les boucles «while» [ eiquee : ] while condiion loop séquence d'insrucions end loop [ eiquee ] ; Les boucles «nex» e «exi» nex [ eiquee ] [ when condiion ] ; exi [ eiquee ] [ when condiion ] ; -- perme de passer à l iéraion suivane d une boucle. -- provoque une sorie de boucle. 3. Programmaion modulaire Small is beauiful : un gros programme ne peu êre écri, compris, esable e esé que s'il es subdivisé en peis modules que l'on me au poin indépendammen les uns des aures e rassemblés ensuie. VHDL offre, bien évidemmen, cee possibilié. haque module peu êre uilisé dans plusieurs applicaions différenes, moyennan un ajusage de cerains paramères, sans avoir à en réécrire le code. Les ouils de base de cee consrucion modulaire son les sous-programmes, procédures ou foncions, les paqueages e librairies, e les paramères génériques. 3.. Procédures e foncions Les sous programmes son le moyen par lequel le programmeur peu se consiuer une bibliohèque d'algorihmes séqueniels qu'il pourra inclure dans une descripion. Les deux caégories de sous programmes, procédures e foncions, diffèren par les mécanismes d'échanges d'informaions enre le programme appelan e le sous-programme. Les foncions Une foncion reourne au programme appelan une valeur unique, elle a donc un ype. Elle peu recevoir des argumens, exclusivemen des signaux ou des consanes, don les valeurs lui son ransmises lors de l'appel. Une foncion ne peu en aucun cas modifier les valeurs de ses argumens d'appel
161 Elecronique Numérique 5. VHDL Déclaraion : funcion nom [ ( lise de paramères formels ) ] reurn nom_de_ype ; orps de la foncion : funcion nom [ ( lise de paramères formels ) ] reurn nom_de_ype is [ déclaraions ] begin insrucions séquenielles end [ nom ] ; Le corps d'une foncion ne peu pas conenir d'insrucion wai, les variables locales, déclarées dans la foncion, cessen d'exiser dès que la foncion se ermine. Uilisaion : nom ( lise de paramères réels ) Lors de son uilisaion, le nom d'une foncion peu apparaîre parou, dans une expression, où une valeur du ype correspondan peu êre uilisée. Exemple Les librairies d'un compilaeur VHDL coniennen un grand nombre de foncions, don le programme source es fourni. L'exemple qui sui, issu de la librairie bv_mah du compilaeur WRP, incrémene de un veceur de bis. On peu l'uiliser, par exemple, pour créer un compeur binaire. Déclaraion : funcion inc_bv (a: bi_vecor) reurn bi_vecor ; orps de la foncion : funcion inc_bv (a: bi_vecor) reurn bi_vecor is variable s : bi_vecor (a 'range) ; variable carry : bi; begin carry := 'l' ; for i in a'low o a'high loop -- les aribus low e high déerminen les dimensions du veceur. s(i) := a(i) xor carry ; carry := a(i) and carry ; end loop ; reurn (s) ; end inc_bv ; 5. 26
162 Elecronique Numérique 5. VHDL Uilisaion dans un compeur : archiecure behavior of couner is begin process begin wai unil ( clk = 'l') ; if rese = 'l' hen coun <= "" ; elseif load = 'l' hen coun <= daain ; else coun <= inc_bv(coun) ; end if ; end process ; end behavior ; -- incremen du bi vecor Les procédures Une procédure, comme une foncion, peu recevoir du programme appelan des argumens : consanes, variables ou signaux. Mais ces argumens peuven êre déclarés de modes «in», «inou» ou «ou» (sauf les consanes qui son oujours de mode «in»), ce qui auorise une procédure à renvoyer un nombre quelconque de valeurs au programme appelan. Déclaraion : procedure nom [ ( lise de paramères formels ) ] ; orps de la procédure : procedure nom [ ( lise de paramères formels ) ] is [ déclaraions ] begin insrucions séquenielles end [ nom ] ; Dans la lise des paramères formels, la naure des argumens doi êre précisée : procedure exemple ( signal a, b : in bi; signal s : ou bi) ; Le corps d'une procédure peu conenir une insrucion wai, les variables locales, déclarées dans la procédure, cessen d'exiser dès que la procédure se ermine. Uilisaion : nom ( lise de paramères réels ) ; Une procédure peu êre appelée par une insrucion concurrene ou par une insrucion séquenielle, mais si l'un de ses argumens es une variable, elle ne peu êre appelée que par une insrucion séquenielle. La correspondance enre paramères réels (dans l'appel) e paramères formels (dans la descripion de la procédure) peu se faire par posiion, ou par associaions de noms : exemple ( enree, enree2, sorie ) ; ou : exemple ( s => sorie, a => enreel, b => enree2 ) ; 5. 27
163 Elecronique Numérique 5. VHDL 3.2. Les paqueages (packages) e les librairies Un paqueage (package) perme de rassembler des déclaraions e des sous-programmes, uilisés fréquemmen dans une applicaion, dans un module qui peu êre compilé à par, e rendu visible par l'applicaion au moyen de la clause use. Un paqueage es consiué de deux paries : la déclaraion, e le corps (body). - La déclaraion conien les informaions publiques don une applicaion a besoin pour uiliser correcemen les objes décris par le paqueage : esseniellemen des déclaraions, des définiions de ypes, des définiions de consanes... ec. (on peu rapprocher la parie visible d'un package des fichiers «*.h» du langage ; ces fichiers coniennen, enre aures, les prooypes des objes, variables ou foncions, uilisés dans un programme. La clause «use» de VHDL es un peu l'équivalen, dans cee comparaison, de la direcive #include <xxx.h> du langage ) - Le corps, qui n'exise pas obligaoiremen, conien le code des foncions ou procédures définies par le paqueage, s'il en exise. L'uilisaion d'un paqueage se fai au moyen de la clause use : use work.in_mah.all ; -- rend le paqueage in_mah, de la librairie work, visible dans sa oalié. Le mo clé work indique l'ensemble des librairies accessibles, par défau, au programmeur. e mo cache, noammen, des chemins d'accès à des réperoires de ravail. es chemins son gérés par le sysème de développemen, e l'uilisaeur n'a pas besoin d'en connaîre les déails. Le nom composé qui sui la clause use doi êre compris comme une suie de filres : «uiliser ous les élémens du module in_mah de la librairie work». Les paqueages prédéfinis Un compilaeur VHDL es oujours assori d'une librairie, décrie par des paqueages, qui offre à l'uilisaeur des ouils variés : - Définiions de ypes, e foncions de conversions enre ypes : VHDL es un langage obje, foremen ypé. ucune conversion de ype implicie n'es auorisée dans les expressions, mais une librairie peu offrir des foncions de conversion explicies, e redéfinir les opéraeurs élémenaires pour qu ils accepen des opérandes de ypes variés. Un bus par exemple, peu êre vu, dans le langage, comme un veceur (ableau à une dimension) de bis, e il es possible d éendre les opéraeurs arihméiques e logiques élémenaires pour qu ils agissen sur un bus, vu comme la représenaion binaire d un nombre enier. - Les blocs srucurels des circuis programmables, noammen les cellules d'enrées-sories, peuven êre déclarés comme des composans que l'on peu inclure dans une descripion. Une pore rois-éas, par exemple, sera vue, dans une archiecure, comme un composan don l'un des pors véhicule des signaux de ype pariculier : aux deux éas logiques vien se rajouer un éa haue impédance. L'emploi d'un el opéraeur dans un schéma nécessie, oure la descripion du composan, une foncion de conversion enre signaux logiques e signaux «rois-éas». - Un simulaeur doi pouvoir résoudre, ou indiquer, les conflis évenuels. Les signaux uilisés en simulaion ne son pas, pour cee raison, de ype binaire : on leur aache un ype énuméré plus riche qui rajoue aux simples valeurs '' e 'l' la valeur 'inconnue', des nuances de force enre les sories sandard e les sories colleceur ouver, ec. - La bibliohèque sandard offre égalemen des procédures d'usage général comme les moyens d'accès aux fichiers, les possibiliés de dialogue avec l'uilisaeur, messages d'erreurs, par exemple. L'exemple qui sui illusre l'uilisaion, e l'inérê des paqueages prédéfinis. Le programme décri le foncionnemen d'un circui qui effecue une division par 5 du signal d'horloge, en fournissan en sorie un signal de rappor cyclique égal à un demi. Pour obenir ce résula, on a uilisé la possibilié, offere par le paqueage «in_mah» du compilaeur WRP, de mélanger, dans des opéraions arihméiques e logiques, des élémens de ypes différens : les veceurs de bis e les eniers (VHDL es un langage obje qui perme de surcharger les opéraeurs. chaque opéraeur il es possible d'associer une foncion équivalene, ce qui perme de raier des opérandes e un résula de ypes différens de ceux qui son définis par défau)
164 Elecronique Numérique 5. VHDL -- div5.vhd eniy div5 is por ( hor : in bi ; s : ou bi ) ; -- sorie end div5 ; use work.in_mah.all ; -- rend le paqueage visible archiecure arih_bv of div5 is signal ea : bi_vecor ( o 5) ; begin s <= ea(5) ; process begin wai unil hor = 'l' ; if ea = 24 hen -- opéraeur "=" surchargé. ea <= i2bv(39,6) ; else ea <= ea + ; -- opéraeur "+" surchargé. end process ; end arih_bv ; end if ; -- foncion de conversion d un enier en bi_vecor de 6 bis. Pour assurer la porabilié des programmes, d'un compilaeur à un aure, les paqueages prédéfinis son fournis sous forme de fichiers sources VHDL. ee règle perme à un uilisaeur de passer d'un sysème de développemen à un aure sans difficulé, il suffi de recompiler les paqueages qui ne seraien pas communs aux deux sysèmes. Un aure exemple de paqueage prédéfini concerne la descripion des opéraeurs élémenaires connus d'un sysème. Pour synhéiser une applicaion, avec pour cible un circui de ype 22V par exemple, le sysème de développemen uilise un paqueage qui décri les composans disponibles dans ce circui. e paqueage es accessible à l'uilisaeur ; menionnons, en pariculier, que l'uilisaion d'une descripion srucurelle, en erme de composans insanciés, es indispensable pour uiliser les pores rois-éas de sorie du circui. Les paqueages créés par l'uilisaeur L'uilisaeur peu créer ses propres paqueages. ee possibilié perme d'assurer la cohérence des déclaraions dans une applicaion complexe, évie d'avoir à répéer un grand nombre de fois ces mêmes déclaraions e donne la possibilié de créer une librairie de foncions e procédures adapée aux besoins des uilisaeurs. La synaxe de la déclaraion d'un paqueage es la suivane : package idenificaeur is déclaraions de ypes, de foncions, de composans, d'aribus, clause use,... ec. end [ idenificaeur ] ; S'il exise, le corps du paqueage doi porer le même nom que celui qui figure dans la déclaraion : package body idenificaeur is corps des sous-programmes déclarés. end [ idenificaeur ] ; Dans l exemple qui sui on réalise un compeur au moyen de 2 bascules, dans une descripion srucurelle. La déclaraion du composan bascule es mise dans un paqueage : package T_edge_pkg is componen T_edge -- une bascule T avec mise à. por ( T, hor, raz : in bi ; s : ou bi ) ; end componen ; end T_edge_pkg ; 5. 29
165 Elecronique Numérique 5. VHDL Le compeur propremen di : eniy cn4 is por (ck, razero, en : in bi ; s : ou bi_vecor ( o ) ) ; end cn4 ; use work.t_edge_pkg.all ; -- rend le conenu du package précéden visible. archiecure sruc of cn4 is signal ea : bi_vecor ( o ) ; signal iner:bi; begin s <= ea ; iner <= ea() and en ; g : T_edge por map ( en, ck, razero, ea() ) ; g : T_edge por map ( iner, ck, razero, ea(l) ) ; end sruc ; Les librairies Une librairie es une collecion de modules VHDL qui on déjà éé compilés. es modules peuven êre des paqueages, des eniés ou des archiecures. Une librairie par défau, work, es sysémaiquemen associée à l'environnemen de ravail de l'uilisaeur. e dernier peu ouvrir ses propres librairies par la clause library : library nom_de_la_librairie ; La façon don on associe un nom de librairie à un, ou des chemins, dans le sysème de fichiers de l ordinaeur, dépend de l ouil de développemen uilisé Les paramères génériques Lorsque l'on crée le couple enié-archiecure d'un opéraeur, que l'on souhaie uiliser comme composan dans une consrucion plus large, il es parfois praique de pouvoir laisser cerains paramères modifiables par le programme qui uilise le composan. De els paramères, don la valeur réelle peu n'êre fixée que lors de l'insanciaion du composan, son appelés paramères génériques. Un paramère générique se déclare au débu de l'enié, e peu avoir une valeur par défau : generic ( nom : ype [ := valeur_par_defau ] ) ; La même déclaraion doi apparaîre dans la déclaraion de composan, mais au momen de l'insanciaion la aille peu êre modifiée par une insrucion «generic map», de consrucion idenique à l'insrucion «por map», précédemmen renconrée : eiquee : nom generic map ( valeurs ) por map ( lise_d'associaion ) ; Dans l'exemple ci-dessous, on réalise un compeur, sur 4 bis par défau, qui es ensuie insancié comme un compeur 8 bis. Bien évidemmen, le code du compeur ne doi faire aucune référence explicie à la valeur par défau. 5. 3
166 Elecronique Numérique 5. VHDL eniy compeur is generic ( aille : ineger := 4 ) ; por ( hor : in bi; sorie : ou bi_vecor ( o aille - ) ) ; end compeur ; use work.in_mah.a ; archiecure simple of compeur is signal ea : bi_vecor ( o aille - ) ; begin sorie <= ea ; process begin wai unil hor = 'l' ; ea <= ea + ; end process ; end simple; eniy comp8 is por ( ck : in bi; val : ou bi_vecor ( o 7) ) ; end comp8 ; archiecure large of comp8 is componen compeur generic ( aille : ineger ) ; por ( hor : in bi ; sorie : ou bi_vecor ( o aille ) ) ; end componen ; begin u : compeur generic map (8) por map ( ck, val ) ; end large ; Les paramères génériques prennen oue leur efficacié quand leur emploi es associé à la créaion de librairies de composans, décris par des paqueages. Il es alors possible de créer des foncions complexes au moyen de programmes consruis de façon hiérarchisée, chaque niveau de la hiérarchie pouvan êre mis au poin e esé indépendammen de l'ensemble. 4. Modélisaion e synhèse Langage de modélisaion des circuis inégrés complexes, VHDL es devenu un ouil de synhèse. Sans parler des logiciels de concepion d'sis sur saions de ravail, la plupar des fabricans de circuis programmables offren des soluions VHDL, plus ou moins complèes, qui ne nécessien qu'un équipemen de ype P. 4.. Tou ce qui es synhéisable doi êre simulable Tou module synhéisable es simulable, e les résulas de simulaions son ideniques à ceux que l'on observera dans le vrai circui. Telle es la règle, généralemen bien respecée. Mes des compilaeurs VHDL peuven cependan êre pris en défau, par des consrucions «à la limie», e ransformer par exemple des bascules edge (en simulaion) en bascules lach (dans le circui), e réciproquemen. Un programme bien consrui es cependan oujours compilé correcemen. 5. 3
167 Elecronique Numérique 5. VHDL 4.2. La réciproque n'es pas vraie mais... Toues les consrucions du langage ne son pas synhéisables, e il n'y a rien là que de ou à fai normal. eraines ne le son pas par naure, elles ne préenden pas avoir de sens dans un circui, d'aures ne le son pas pour un compilaeur VHDL donné, à une époque donnée, mais il ne serai pas absurde, dans le principe, qu elles le deviennen un jour. Tenan compe de ces remarques, nous classerons ci-dessous les caégories non synhéisables en 4 familles, illusrées par des exemples non exhausifs : - onsrucions non synhéisables par naure : les manipulaions de poineurs, les manipulaions de ypes non conrains (ableaux de dimensions non spécifiées - cela n'empêche cependan pas d'uiliser des foncions don les argumens son non conrains, il suffi qu'à l'élaboraion finale de l'unié de concepion, donc à l'appel de la foncion, les dimensions soien connues -, nombres sans limiaion de leur domaine de définiion), la modélisaion des reards, les ess de violaions de iming, les envois de messages sur la console, les lecures de direcives au clavier, les références au emps du simulaeur (le ype ime es refusé en an que el par de nombreux ouils de synhèse), les accès dynamiques aux fichiers. - onsrucions non synhéisables, mais accepées par plusieurs logiciels de synhèse comme ouils généraux de concepion : cerains accès aux fichiers. La lecure de fichiers de données perme, par exemple, d'iniialiser des ables ou des mémoires. Vues du code synhéisable, les données issues d'un fichier n'on de sens que si ce son des consanes. - onsrucions non synhéisables en raison de la complexié sous-jacene : esseniellemen les opéraions arihméiques. Tous les sysèmes imposen des limies aux opéraeurs e aux ypes d'opérandes accepés dans ce domaine. es limies varien grandemen d'un compilaeur à l'aure e progressen d'une version à l'aure d'un même compilaeur. Seule une lecure aenive de la documenaion spécifique de l'ouil perme de les connaîre. En ou éa de cause rappelons que les opéraions arihméiques «bruales» génèren rapidemen des schémas exrêmemen complexes, qui se heureron évenuellemen à la réalié du circui cible. - onsrucions non synhéisables qui fon appel à un sens caché. L'affaire es plus délicae : à la définiion de cerains objes es aaché une significaion qui piloe le synhéiseur, à condiion qu'on ai réussi à lui faire comprendre ce que l'on souhaie obenir. Prenons un exemple : pour réaliser une pore à sorie rois-éas il peu venir à l'espri de créer un ype e une foncion de conversion associée : package roisepkg is ype z l is ( '', 'l', 'Z' ) ; funcion o_z ( e, oe : bi ) reurn z l ; end package roisepkg ; package body roisepkg is funcion o_z l ( e, oe : bi ) reurn z l is begin if oe = '' hen if e = '' hen reurn '' ; else reurn '' ; end if ; else reurn 'Z' ; end if ; end o_z l ; end package body roisepkg ; use work.roisepkg.all ; eniy ri_buffer is por ( e, oe : in bi ; s : ou z ) ; end ri_buffer ; 5. 32
168 Elecronique Numérique 5. VHDL archiecure es of ri_buffer is begin s <= o_z l ( e, oe ) ; end es ; e programme es parfaiemen synhéisable, mais ne produi pas vraimen le résula escompé. Le ype énuméré es codé sur deux élémens binaires qui prennen 3 des 4 valeurs possibles ("", "", "" e "") en foncion des enrées, sans l'ombre d'éa haue impédance... La définiion d'un sous-ype, hériier du ype logique mulivalué sd_ulogic, change ou, dans le bon sens : library ieee ; use ieee.sd_logic_64.all ; package roisepkgieee is subype z l is sd_ulogic range '' o 'Z' ; funcion o_z l ( e, oe : bi ) reurn z l ; end package roisepkgieee ; package body roisepkgieee is funcion o_z l ( e, ce : bi ) reurn z l is begin -- même programme source que précédemmen end o_z l ; end package body roisepkgieee ; use work.roisepkgieee.all ; eniy ri_bufi is por ( e, oe : in bi ; s : ou z ) ; end ri_bufi ; archiecure es of ri_bufi is begin s <= o_z l ( e, oe ) ; end es ; Le circui synhéisé réalise bien un ampon rois-éas, don la sorie piloe une équipoenielle simple. L'éa haue impédance es commandé par l'enrée oe. En synhèse cerains ypes on un sens caché mais précis, le rôle de la norme IEEE 64 es de pousser ous les concepeurs de logiciels à enir le même langage. Les deux programmes précédens on évidemmen sricemen le même comporemen en simulaion, le conraire n'aurai aucun charme. Un compilaeur de synhèse peu réagir diversemen face à une insrucion non synhéisable : la raier comme une erreur, l'ignorer si le programme a malgré ou un sens, voire ne pas déecer le piège, ce qui es assurémen dangereux. Les resricions apporées par un logiciel à la norme du langage son bien évidemmen documenées. Penser «circui» Il y a quanié de programmes VHDL don les algorihmes seraien juses, s'ils éaien raduis en e exécués de poin d'arrê en poin d'arrê, pas à pas. Diviser un proje en (peis) blocs auonomes, nommer les signaux qui permeen à ces blocs de dialoguer, imaginer l'archiecure physique du circui en cours d'élaboraion représene une bonne parie du ravail iniial de concepion VHDL
169 Elecronique Numérique 5. VHDL De l'ordre dans les horloges Tous les ouils de synhèse aenden une idenificaion claire des signaux d'horloges. Les insrucions de es des frons doiven êre séparées de celles qui surveillen les commandes. Par exemple : eniy T_edge is por ( T, hor : in bi ; s : ou bi) ; end T_edge ; archiecure mauvaise of T_edge is signal ea : bi ; begin s <= ea ; process ( hor ) begin if hor 'even and hor = 'l' and T = 'l' hen ea <= no ea ; end if ; end process ; end mauvaise ; es une mauvaise bascule : la même insrucion recherche les frons monans d'horloge e ese la valeur de l'enrée T. La version correce du programme sépare ces deux acions, ce qui correspond d'ailleurs à la srucure physique du circui : archiecure bonne of T_edge is signal ea : bi ; begin s <= ea ; process ( hor ) begin if hor 'even and hor = 'l' hen if T = 'l' hen end if ; end if ; end process ; end bonne ; ea <= no ea ; -- recherche du fron -- acion synchrone La même remarque peu êre faie avec l'insrucion wai, si on l'uilise, elle ne doi exprimer que l'aene du fron acif de l'horloge, à l'exclusion de ou aure es. Rappelons ici que cerains compilaeurs de synhèse ne son pas rès regardans en ce qui concerne les lises de sensibiliés des processus. 'es évidemmen une mauvaise habiude que d'en profier pour faire de même. 5. onclusion VHDL es un langage qui peu déconcerer. au premier abord, le concepeur de sysèmes numériques, plus habiué aux raisonnemens radiionnels sur des schémas que familier des langages de descripion absraie. Il es vrai que le langage es complexe, e peu présener cerains pièges, la descripion des horloges en es un exemple. yan fai l'effor de «renrer dedans», l'uilisaeur découvre que ce ype d'approche es d'une rès grande souplesse, e d'une efficacié redouable. Des problèmes de synhèse qui pouvaien prendre des heures de calcul, dans une démarche radiionnelle, son raiés en quelques lignes de programme. N'oubliez jamais que vous êes en rain de créer un circui, e que le meilleur des compilaeurs ne peu que raduire la complexié sous-jacene de vos équaions, il n'augmenera pas la capacié de calcul des circuis que vous uilisez. Le simple programme de descripion d'un addiionneur 4 bis, comme le 74_283 : 5. 34
170 Elecronique Numérique 5. VHDL eniy addi is por ( a, b : in ineger range o 5 ; cin : in ineger range o ; som : ou ineger range o 3 ) ; end addi ; archiecure behavior of addi is begin som <= a + b + cin ; end behavior ; génère plus d'une cenaine de ermes, quand ses équaions son ramenées brualemen à une somme de produis logiques. harge rese à l'uilisaeur de piloer l'opimiseur de façon un peu moins sommaire que de demander la réducion de la somme à une expression canonique en deux couches logiques
171 Elecronique Numérique TD 5. VHDL TD 5. VHDL ompilaeur LTER MaxPlus+. Programme VHDL des Opéraeurs fondamenaux : NON, ET, OU. Descripions comporemenales 2. Programme VHDL de l Opéraeur OU exclusif. Descripion srucurelle 3. Programme VHDL d un Muliplexeur 2. Descripion comporemenale 2. Descripion flo de données 3. Descripion srucurelle 4. Programme VHDL d une Bascule D lach TD 5.
172 Elecronique Numérique TP 5. VHDL TP 5. VHDL ompilaeur LTER MaxPlus+. Programme VHDL d une Bascule RS (asynchrone) 2. Programme VHDL d une Bascule D (> edge riggered) 3. Programme VHDL d une Bascule T (> edge riggered) 3. Programme VHDL d une Bascule JK (> edge riggered) TP 5.
173 Elecronique Numérique ELETRONIUE NUMERIUE NNEE nnexe
174 Elecronique Numérique 6 nnexe. Les circuis programmables 6 nnexe. Les circuis programmables. Hisorique L'hisoire des circuis programmables commence, à peu de chose près, avec la décennie 8. la fin des années 7 le monde des circuis numériques se répari schémaiquemen en 4 grands groupes : - Les foncions sandard son uilisées pour les applicaions réalisées en logique câblée. Les caalogues TTL e MOS présenen plusieurs cenaines de foncions d'usage général, sous forme de circuis inégrés à grande échelle. - Les microprocesseurs, désormais d'usage couran, e son omniprésens dans les applicaions indusrielles. - Dans des applicaions rop complexes pour êre raisonnablemen raiées en logique câblée radiionnelle, e rop rapides pour avoir une soluion à base de microprocesseurs, on uilise des séquenceurs microprogrammés. - uand les volumes de producion imporans le jusifien, les circuis inégrés spécifiques (SIS) offren une alernaive aux cares câblées classiques. Le développemen des microprocesseurs simule une évoluion rapide des echnologies de réalisaion des mémoires à semi-conduceurs; les circuis logiques programmables on hérié direcemen des mémoires pour ce qui concerne les aspecs echnologiques. Leurs archiecures inernes son, en revanche, rès différenes.. Les grandes familles Indépendammen de sa srucure inerne e des déails de la echnologie concernée, une mémoire es caracérisée par son mode de programmaion e sa faculé de reenir l'informaion quand l'alimenaion es inerrompue. Les caégories de mémoires qui on donné naissance aux circuis programmables son : - Les mémoires de ype PROM (PROgrammable Memory) son programmables une seule fois au moyen d'un appareil spécial (programmaeur - uelle que soi la echnologie, la programmaion d'un circui consise à lui faire subir des niveaux de ension e de couran qui soren du cadre de son uilisaion normale. Typiquemen, les ensions mises en jeu von de (MOS) à 2 Vols (bipolaires), les courans correspondans de quelques dizaines à quelques cenaines de milliampères, pour des circuis alimenés sous 5 Vols en foncionnemen ordinaire). Les données qui y son inscries ne son pas modifiables. Elles conserven les informaions quand l'alimenaion es inerrompue. - Leur inconvénien majeur es l'impossibilié de modifier les informaions qu'elles coniennen. - Les mémoires de ype EPROM (Erasable PROgrammable Memory) son programmables par l'uilisaeur au moyen d'un programmaeur, effaçables par une exposiion aux rayons ulravioles e reprogrammables après avoir éé effacées. Elles aussi conserven les informaions quand l'alimenaion es inerrompue. Leur boîier doi êre équipé d'une fenêre ransparene, ce qui en augmene le coû. La modificaion de leur conenu es une opéraion longue qui nécessie des manipulaions : plusieurs minues pour l'effacemen des données anciennes, sur un premier appareil, e ransfer de nouvelles informaions sur un second appareil. - Les mémoires de ype EEPROM (Elecrically Erasable PROgrammable Memory), ou FLSH, son effaçables e reprogrammables élecriquemen. Non alimenées, elles conserven les informaions mémorisées. La diminuion des ensions à appliquer pour programmer les mémoires FLSH perme même de s'affranchir du programmaeur : il es inégré dans le circui. On parle alors de mémoires programmables in siu (ISP, pour In Siu Programming), c'es à dire sans démoner la mémoire de la care sur laquelle elle es implanée. Même programmables in siu, une mémoire FLSH foncionne dans un mode ou à fai du mode «uilisaion» quand elle es en cours de programmaion. Les echnologies FLSH son de loin les plus séduisanes pour les circuis programmables pas rop complexes. 6. nnexe.
175 Elecronique Numérique 6 nnexe. Les circuis programmables - Les mémoires RM (Random ccess Memory) saiques (l'adjecif saique s'oppose à dynamique. Les mémoires dynamiques socken les informaions dans des capaciés - inrinsèquemen liées aux srucures MOS - qui nécessien un processus dynamique de rafraîchissemen. Les cellules des mémoires saiques son des bisables, qui conserven leur éa an que l'alimenaion es présene) ou SRM, son consiuées de cellules accessibles, en mode normal, en lecure e en écriure. Elles son uilisées dans cerains circuis programmables complexes pour conserver la configuraion (qui défini la foncion réalisée) du circui. es mémoires perden leur informaion quand l'alimenaion es supprimée. Les circuis qui les uilisen doiven donc suivre un cycle d'iniialisaion à chaque mise sous ension. es circuis peuven êre reconfigurés dynamiquemen, changean ainsi de foncion à la demande, en cours d'uilisaion. omme ou domaine spécialisé, le monde des circuis programmables compore une erminologie, d'origine anglosaxonne le plus souven. Pour compliquer les choses, de nombreux ermes son, à l'origine, des noms propres, propriéés des sociéés qui son à la source des produis concernés. Les sigles uilisés dans la suie semblen communémen admis par la majorié des fabricans : - PLD (Programmable Logic Device) es un erme générique qui recouvre l'ensemble des circuis logiques programmables. Il es le plus souven employé pour désigner les plus simples d'enre eux (équivalen de quelques cenaines de pores logiques). - PLD (omplex Programmable Logic Device) désigne évidemmen un circui relaivemen complexe (jusqu'à une ou deux dizaines de milliers de pores), mais don l'archiecure dérive direcemen de celle des PLDs simples. - FPG (Field Programmable Gae rray) marque un sau dans l'archiecure e la echnologie, il désigne un circui qui peu êre rès complexe (jusqu'à cen mille pores équivalenes); la complexié des FPGs rejoin celle des SIs (pplicaion Specific Inegraed ircuis). Noons que la complexié d'un circui n'es pas mesurable simplemen : il ne suffi pas qu'un circui conienne un grand nombre de pores pour êre puissan; encore fau-il que ces pores soien uilisables dans une grande proporion. e dernier poin es à la fois un problème d'archiecure e de logiciels d'aide à la concepion. 2. u es-ce qu un circui programmable? Un circui programmable es un assemblage d opéraeurs logiques combinaoires e de bascules dans lequel la foncion réalisée n es pas fixée lors de la fabricaion. Il conien poeniellemen la possibilié de réaliser oue une classe de foncions, plus ou moins large suivan son archiecure. La programmaion du circui consise à définir une foncion parmi oues celles qui son poeniellemen réalisables. omme dans oue réalisaion en logique câblée, une foncion logique es définie par les inerconnexions enre des opéraeurs combinaoires e des bascules (synchrones, cela va presque sans dire), e par les équaions des opéraeurs combinaoires. e qui es programmable dans un circui concerne donc les inerconnexions e les opéraeurs combinaoires. Les bascules son le plus souven de simples bascules D, ou des bascules configurables en bascules D ou T. La réalisaion d'opéraeurs combinaoires uilise des opéraeurs génériques, c'es à eux que nous allons nous inéresser dans la suie. 2.. Des opéraeurs génériques Les opéraeurs combinaoires génériques qui inerviennen dans les circuis programmables proviennen soi des mémoires (réseaux logiques), soi des foncions sandard (muliplexeurs e ou exclusif). 6. nnexe. 2
176 Elecronique Numérique 6 nnexe. Les circuis programmables Réseaux logiques programmables Un réseau logique programmable (PL, pour Programmable Logic rray - que l'on ne confondra avec PL (Programmable rray Logic), qui désigne les PLDs de la sociéé MMI, ni avec GL (Gae rray Logic) nom déposé par la sociéé Laice) uilise le fai que oue foncion logique combinaoire peu se mere sous forme d'une somme (OU logique) de produis (ET logiques), c'es ce que l'on appelle classiquemen la première forme normale, ou forme disjoncive. Figure : Un PL simple Figure 2 : PL réalisan un OU Exclusif Le schéma de la figure représene une srucure de PL simple. La programmaion du circui consise à supprimer ceraines des connexions marquées d'une croix. Si une connexion es supprimée, une valeur consane 'l' es appliquée à l'enrée correspondane de la pore ET, c'es ce que symbolise le réseau de résisances relié à cee valeur consane. Un el schéma perme de réaliser n'impore quelle foncion booléenne s(el, e2), de 2 variables binaires el e e2, pourvu qu'elle ne dépasse pas 2 ermes (sauf précision conraire, nous uiliserons les valeurs el pour représener les éas possibles d'une variable binaire. Les opéraeurs ET e OU son définis avec la convenion FU e l VRI. Les circuis associen bien sûr les valeurs logiques à des niveaux élecriques; sauf précision conraire égalemen, nous prendrons une convenion logique posiive qui associe à un niveau logique hau (H pour High) e à un niveau logique bas (L pour Low)). En effe, si oues les connexions son présenes, en noan par + e *, les opéraeurs OU e ET respecivemen, s s'écri : s ( e, e2) = e* e* e2 * e2 + e* e* e2 * e2 qui vau rivialemen ''. Un opéraeur OU Exclusif, par exemple, obéi à l'équaion : e e2 = e* e2 + e* e2 d'où la programmaion du PL de la figure 2. Le plus simple des PLDs, un 6L8 par exemple, uilise des opéraeurs ET à 32 enrées e des opéraeurs OU à 8 enrées. Un schéma el que celui des figures précédenes deviendrai, dans de elles condiions, illisible. Pour évier ce écueil, les noices de circuis uilisen des symboles simplifiés, pour représener les réseaux logiques programmables. 6. nnexe. 3
177 Elecronique Numérique 6 nnexe. Les circuis programmables Figure 3 : Symbole d'un PL 2x4 (2x4 indique la dimension de la marice de fusibles : 2 lignes e 4 colonnes) La figure 3 représene le PL précéden avec ces symboles. Dans un el schéma, oues les enrées (e leurs complémens) peuven êre connecés à ous les opéraeurs ET par programmaion. Par référence à la première echnologie uilisée, ces connexions programmables poren le nom de fusibles, même quand leur réalisaion n'en compore aucun. uand il s'agi uniquemen d'illusrer la srucure d'un circui programmable, e non la réalisaion d'une foncion pariculière, les croix qui symbolisen les fusibles ne son même pas représenées. Dans cee évocaion simplifiée, le schéma de l'opéraeur OU Exclusif devien celui de la figure 4, dans laquelle une croix représene une connexion programmable mainenue, l'absence de croix une connexion supprimée. Muliplexeurs Un muliplexeur es un aiguillage d'informaions. Dans sa forme la plus simple, il compore 2 enrées de données, sorie e une de sélecion, conformémen au symbole de la figure 5. Le foncionnemen de ce opéraeur se décri rès simplemen sous une forme algorihmique : si sel = '' s in ; sinon (sel = 'l') s in ; Figure 4 : PL 2x4 réalisan un OU Exclusif Figure 5 : Un muliplexeur élémenaire erains consruceurs noen sur le symbole, comme nous l'avons fai, la valeur de l'enrée de sélecion en regard de l'enrée correspondane. La première uilisaion des muliplexeurs dans les circuis programmables es, évidemmen, de créer des chemins de données. La programmaion consise alors à fixer des valeurs aux enrées de sélecion. Une aure uilisaion de la même foncion consise à remarquer qu'un muliplexeur es, en soi, un opéraeur générique. Reprenan l'exemple précéden du OU Exclusif, on peu le décrire sous forme algorihmique : si e = '' e e2 e2 ; sinon (e = 'l') e e2 e 2 ; 6. nnexe. 4
178 Elecronique Numérique 6 nnexe. Les circuis programmables D'où une réalisaion possible de l'opéraeur OU Exclusif au moyen d'un muliplexeur dans le schéma de la figure 6. L'exemple précéden peu êre généralisé sans peine : un muliplexeur à n enrées de sélecion, soi 2 n enrées de données, perme de réaliser n'impore quelle foncion combinaoire de n+ enrées, pourvu que l'une, au moins, de ces enrées exise sous forme direce e sous forme complémenée. Dans un circui programmable don les «briques» de base son des muliplexeurs (c'es le cas de beaucoup de FPGs) la programmaion consise à fixer des chemins de données, c'es à dire à éablir des inerconnexions enre des cellules de calcul e des signaux d'enrée e de sorie. ee opéraion de créaion d'inerconnexions enre des cellules génériques s'appelle le rouage d'un circui; l'affecaion des cellules à des foncions souhaiées par l'uilisaeur s'appelle le placemen. Figure 6 : OU Exclusif réalisé par un muliplexeur OU Exclusif L opéraeur élémenaire OU Exclusif ou somme modulo 2, don nous avons rappelé l expression algébrique précédemmen, es disponible en an que el dans cerains circuis. e opéraeur inervien naurellemen dans de nombreuses foncions combinaoires reliées de près ou de loin à l'arihméique : addiions e sousracions, conrôles d'erreurs, crypages en ou genre, ec. Or ces foncions se prêen mal à une représenaion en somme de produis, car elles ne conduisen à aucune minimisaion de leurs équaions (au moyen de ableaux de Karnaugh, ou, de façon plus réalise, par des programmes de minimisaion qui uilisen des algorihmes comme celui de ueene e Mc luskey ou ESPRESSO). Un simple généraeur de parié sur 8 bis, qui rajoue un bi de parié à un oce de données, ne nécessie pas moins de 8 l28 ( 2 ) produis, quand il es «mis à pla», pour êre réalisé au moyen d'une couche de ETs e d'une couche de OUs. De nombreuses familles de circuis programmables disposen, en plus des PLs, d'opéraeurs ou OU Exclusifs pour facilier la réalisaion de ces foncions arihméiques. Une aure applicaion de l'opéraeur OU Exclusif es la programmaion de la polarié d'une expression. uand on calcule une foncion combinaoire quelconque sous forme disjoncive, il peu arriver qu'il soi plus économique, en nombre de produis nécessaires, de calculer le complémen de la foncion e de complémener le résula obenu. Par exemple, si (cba) représene l'écriure en base 2 d'un nombre N, compris enre e 7, on peu exprimer par une 2 équaion logique que N es premier avec 3 : prem 3 = c * b + b * a + c * a + c * a + c * b* a On peu égalemen remarquer que si N es premier avec 3 c'es qu'il n'es pas muliple de 3, soi : prem 3 = mul3 = c * b* a + c * b* a + c * b * a La deuxième forme, apparemmen plus complexe, nécessie un produi de moins que la première pour sa réalisaion, Dans des circuis où le nombre de produis disponibles es limié, cela peu présener un avanage. Un opéraeur OU Exclusif perme de passer, par programmaion, d'une expression à son complémen, comme l'indique la figure 7. omme ce opéraeur peu êre réalisé avec un muliplexeur, l'une ou l'aure de ces formes peu se rouver dans les noices! 6. nnexe. 5
179 Elecronique Numérique 6 nnexe. Les circuis programmables Figure 7 : Polarié programmée par un OU Exclusif Figure 8 : Les 3 ypes fondamenaux de bascules Bascules Les circuis programmables acuels offren ous la possibilié de créer des foncions séquenielles, synchrones dans leur immense majorié. La brique de base de oue foncion séquenielle es la bascule, cellule mémoire élémenaire suscepible de changer d'éa quand survien un fron acif de son signal d'horloge. Bascule D, T ou J-K? La première es oujours présene. omme ceraines foncions se réalisen plus simplemen avec la seconde (les compeurs par exemple), de nombreux circuis permeen, oujours par programmaion, de choisir enre bascule D e bascule T, voire enre l'un des 3 ypes de base (c'es un bon exercice de logique séquenielle élémenaire que de rouver le schéma de n'impore quel ype de bascule en uilisan n'impore quel aure ype). La figure 8 rappelle, par un diagramme de ransiions, le foncionnemen de ces 3 ypes de bascules. Le programmeur n'a, en réalié, que raremen à se préoccuper de ce genre de choix, les opimiseurs déerminan auomaiquemen le ype de bascule le mieux adapé à l'applicaion Des echnologies Premier crière de choix d'un circui programmable, la echnologie uilisée pour maérialiser les inerconnexions déermine les aspecs élecriques de la programmaion : mainien (ou non) de la foncion programmée en l'absence d'alimenaion, possibilié (ou non) de modifier la foncion programmée, nécessié (ou non) d'uiliser un appareil spécial (un programmaeur). Fusibles Première méhode employée, la connexion par fusibles, es en voie de dispariion. On ne la renconre plus que dans quelques circuis de faible densié, de concepion ancienne. 6. nnexe. 6
180 Elecronique Numérique 6 nnexe. Les circuis programmables Figure 9 : PLD élémenaire à fusibles La figure 9 en illusre le principe; oues les connexions son éablies à la fabricaion. Lors de la programmaion le circui es placé dans un mode pariculier par le programmaeur (e mode es acivé par une ension supérieure à la normale, appliquée sur une broche pariculière du circui. Dans ce mode, les aures broches serven à fournir au circui le numéro du fusible à déruire e à appliquer une impulsion qui provoque une surinensié dans ce fusible. Les caracérisiques déaillées des signaux à appliquer lors de la programmaion son consignées, pour chaque circui e pour chaque fabrican, dans une base de données d'algorihmes du programmaeur), mode dans lequel des impulsions de couran son aiguillées successivemen vers les fusibles à déruire. Pour programmer un circui, il fau ransférer dans le programmaeur une able qui indique par un chiffre binaire l'éa de chaque fusible : la able des fusibles. ee able es généralemen ransférée enre le sysème de O e le programmaeur sous forme d'un fichier au forma normalisé : le forma JEDE. L'exemple ci-dessous es un exrai du fichier JEDE, généré par un compilaeur VHDL, qui implémene un compeur binaire bis dans un circui de ype 22V : 22V* P24* Number of Pins* F5828* Number of Fuses* F* Noe : Defaul fuse seing * G* Noe : Securiy bi Unprogrammed* NOTE DEVIE 22V* NOTE PKGE PL22VG-5P* NOTE PINS hor:l oe:2 en:3 raz:4 compe_6:4 compe_8:5 compe_9:6 compe_3:7 * NOTE PINS compe_l:8 compe_:9 compe_2:2 compe_4:2 compe_7:22 * NOTE PINS compe_5:23 * NOTE NODES * L * Node hor () => BNK : * L44 * Node compe_5[23] => OE :,LOGI : 8 * L44 72EB* Noe: Fuse hecksum* nnexe. 7
181 Elecronique Numérique 6 nnexe. Les circuis programmables Pour chacun des 5828 fusibles de ce circui, un '' indique un fusible inac, un 'l' un fusible programmé. L'examen du débu de la able précédene me en évidence un défau majeur de cee echnologie : la programmaion dérui plus de fusibles qu'elle n'en conserve, e de loin. ela se radui par une mauvaise uilisaion du silicium, un emps de programmaion imporan (quelques secondes) e des conraines hermiques sévères imposées au circui lors de l'opéraion. ee echnologie n'es donc pas généralisable à des circuis dépassan quelques cenaines de pores équivalenes. Le leceur averi aura peu-êre remarqué, à la lecure de l'en-êe du fichier JEDE, qu'en réalié le circui précéden ne conien aucun fusible. Il s'agi en vérié d'un circui MOS à grille floane, mais l'ancienne erminologie es resée. MOS à grille floane Les ransisors MOS son des inerrupeurs (quand on les uilise en ou ou rien, le régime source de couran conrôlée relève du monde des foncions analogiques), commandés par une charge élecrique sockée sur leur élecrode de grille. Si, en foncionnemen normal, cee grille es isolée, elle conserve sa charge évenuelle éernellemen (l'éernié en quesion es garanie durer plus de 2 ans). Il rese au fondeur à rouver un moyen de modifier cee charge, pour programmer l'éa du ransisor. Le dépô d'une charge élecrique sur la grille isolée d'un ransisor fai appel à un phénomène connu sous le nom d'effe unnel : un isolan rès mince (une cinquanaine d'angsröms, = m) soumis à une différence de poeniel suffisammen grande (une dizaine de Vols, supérieure aux 3. 3 ou 5 Vols des alimenaions classiques) es parcouru par un couran de faible valeur, qui perme de déposer une charge élecrique sur une élecrode normalemen isolée. e phénomène, réversible, perme de programmer e d'effacer une mémoire. Figure : PLD simple à MOS La figure monre la srucure du PLD élémenaire précéden, dans lequel les fusibles son remplacés par des ransisors à grille isolée (echnologie FLSH). Les ransisors disposen de deux grilles, don l'une es isolée. Une charge négaive (des élecrons) déposée sur cee dernière, modifie la ension de seuil du ransisor commandé par la grille non isolée. uand cee ension de seuil dépasse la ension d'alimenaion, le ransisor es oujours bloqué (inerrupeur ouver). Une variane (plus ancienne) de cee srucure consise à mere deux ransisors en série, l'un à grille isolée, l'aure normal. Le ransisor à grille isolée es programmé pour êre oujours conduceur ou oujours bloqué; on rerouve exacemen la foncion du fusible, la réversibilié en plus. Le conrôle des dimensions géomériques des ransisors perme d'obenir des circuis fiables, programmables sous une dizaine de Vols, reprogrammables à voloné (plusieurs cenaines de fois), le ou élecriquemen. Les puissances mises en jeu lors de la programmaion son suffisammen faibles pour que les surensions nécessaires puissen êre générées par les circuis eux-mêmes. Vu par l'uilisaeur, le circui devien alors programmable in siu, c es-à-dire sans appareillage accessoire. Dans ces circuis, un auomae auxiliaire gère les algorihmes de programmaion e le dialogue avec le sysème de développemen, via une liaison série. 6. nnexe. 8
182 Elecronique Numérique 6 nnexe. Les circuis programmables Mémoires saiques (SRM) Dans les circuis précédens, la programmaion de l'éa des inerrupeurs, conservée en l'absence de ension d'alimenaion, fai appel à un mode de foncionnemen élecrique pariculier. Dans les echnologies à mémoire saique, l éa de chaque inerrupeur es commandé par une cellule mémoire classique à 4 ransisors (plus ransisor de programmaion), don le schéma de principe es celui de la figure. La modificaion de la configuraion d'un circui devien alors une opéraion logique quasi ordinaire, qui ne nécessie pas d'opéraion élecrique spéciale. es circuis permeen des reconfiguraions, parielles ou oales, en nombre illimié. Il es même envisageable de créer des foncions don cerains paramères son modifiables en cours de foncionnemen, comme des filres adapaifs par exemple. Le prix à payer pour cee souplesse es que les cellules SRM doiven êre rechargées à chaque mise sous ension e que chaque inerrupeur occupe plusieurs ransisors : l'inerrupeur lui-même e les ransisors de la cellule mémoire. nifusibles L'inverse d'un fusible es un anifusible. Le principe es, à l'échelle microscopique, celui de la soudure élecrique par poins. Un poin d'inerconnexion es réalisé au croisemen de 2 pises conducrices (méal ou semi-conduceur selon les procédés de fabricaion), séparées par un isolan de faible épaisseur. Une surension appliquée enre les 2 pises provoque un perçage définiif du diélecrique, ce qui éabli la connexion. Les poins d'inerconnexions on un diamère de l'ordre de la largeur d'une pise, c'es à dire de l'ordre du micron; il es donc possible de prévoir un rès grand nombre d'inerconnexions programmables. La résisance du conac créé es rès faible, de l'ordre d'une cinquanaine d'ohms ( fois moins que celle d'un ransisor MOS), d'où des reards liés aux inerconnexions rès faibles égalemen. Figure : ellule SRM Les circuis à anifusibles paragen, avec ceux à SRM, le somme de la gamme des circuis programmables en viesse e en densié d inégraion. Il es clair que ces circuis ne son programmables qu une fois Des archiecures Les différences de echnologies se doublen de différences d'archiecures. Nous enerons ici de mere en lumière des grands poins de repère, sachan que oue classificaion a un côé un peu réduceur. La plupar des circuis complexes panachen les archiecures. Somme de produis Toue foncion logique combinaoire peu êre écrie comme somme de produis, nous avons évoqué ce poin à propos des PLs. La parie combinaoire d'un circui programmable peu donc êre consruie en suivan cee démarche : chaque sorie es une foncion de oues les enrées. Si la sorie se rappore à un opéraeur séqueniel, les équaions programmables calculen la valeur de la commande d'une bascule en foncion des enrées e des éas de oues les bascules du circui : nous rerouvons l'archiecure maérielle d'une machine d'éas générique. Les PLDs de première généraion suivaien ce principe. 6. nnexe. 9
183 Elecronique Numérique 6 nnexe. Les circuis programmables La capacié de calcul de cee archiecure es limiée par le nombre maximum de produis réunis dans la somme logique, e, dans une moindre mesure, par le nombre de faceurs de chaque produi. Les valeurs ypiques son respecivemen de 6 e 44 pour un 22V. Très efficace pour la réalisaion d'opéraeurs relaivemen simples, cee archiecure n'es pas direcemen généralisable à des circuis complexes : pour augmener la capacié poenielle de calcul du circui, il fau augmener les dimensions des produis e des sommes logiques. Or même dans une foncion complexe, de nombreux sous-ensembles son simples; ces sous-ensembles monopoliseron inuilemen une grande parie des poenialiés du circui (L'archiecure du 22V conourne cee difficulé en uilisan des sommes de dimensions différenes (de 8 à 6). Mais celle soluion impose des conraines sur l'affecaion des broches aux sories d'une foncion : les broches cenrales son plus «puissanes» que les broches siuées aux exrémiés d'un boîier DIL. ela peu, par exemple, inerdire la modificaion d'une foncion en conservan le câblage exérieur). ellules universelles inerconnecées L'aure approché, radicalemen opposée, es de renoncer à la réducion en première forme normale des équaions logiques. On divise le circui en blocs logiques indépendans, inerconnecés par des chemins de rouage. Une foncion logique es récursivemen décomposée en opéraions plus simples, jusqu'à ce que les opéraions élémenaires renren dans une cellule. La figure 2 en fourni un exemple. Figure 2 : ellules logiques inerconnecées Les différences d'archiecures enre les circuis concernen le compromis fai enre capacié de calcul de chaque cellule e possibiliés d'inerconnexions : - ellules de grande aille, à la limie l'équivalen d'un PLD classique, e inerconnexions limiées. 'es schémaiquemen le choix fai pour les circuis PLDs, en echnologie FLSH. - l'aure exrême, cellules rès peies (une bascule e un muliplexeur de commande), avec des ressources de rouage imporanes. 'es ypiquemen le choix fai dans les FPGs à anifusibles, don la figure 2 es un exemple. - La soluion inermédiaire es, sans doue, la plus répandue : les cellules comporen ou 2 bascules e des blocs de calcul combinaoires qui raien de 6 à enrées. es cellules son opimisées pour accroîre l'efficacié de raiemen d'opéraions couranes, comme le compage ou l'arihméique. Les circuis FPGs à SRM son généralemen associés à de elles cellules de aille moyenne. 6. nnexe.
184 Elecronique Numérique 6 nnexe. Les circuis programmables ellules d'enrée-sorie Dans les circuis programmables de première généraion, les sories éaien associées de façon rigide à des noeuds inernes du circui : résula combinaoire, éa d'une bascule. Figure 3 : Macrocellule configurable Très vie es apparu l'inérê de créer des macrocellules d'enrée-sorie pourvues d'une ceraine capacié de reconfiguraion. La figure 3 reprend le schéma de principe des cellules d'un PLD 22V. Les 2 fusibles f e f permeen de configurer la macrocellule en enrée-sorie combinaoire bidirecionnelle, complémenée ou non (complémener une sorie perme, dans cerains cas, de simplifier les équaions logiques), ou en sorie regisre rois-éas. haque sorie du circui peu disposer de son propre mode, grâce aux 2 fusibles de configuraion. Les évoluions ulérieures renden indépendanes les macrocellules e les broches du circui, auorisan ainsi la créaion de bascules enerrées (burried flip flops) e d'enrées-sories bidirecionnelles, quel que soi le mode, regisre ou non, aaché à la sorie. Dans les archiecures à cellules universelles inerconnecées des FPGs, les cellules d'enrée-sorie son enièremen configurables e rouables, au même ire que les cellules de calcul. Elles disposen de leurs propres bascules de synchronisaion, en enrée e en sorie, indépendanes de celles des blocs logiques qui inerviennen dans la foncion programmée. Placemen e rouage Le placemen consise à aacher des blocs de calcul aux opéraeurs logiques d'une foncion e à choisir les broches d'enrées-sories. Le rouage consise à créer les inerconnexions nécessaires. Pour les PLDs simples, le placemen es relaivemen rivial e le rouage inexisan. Les compilaeurs génériques (i.e. indépendans du fondeur) effecuen rès bien ces deux opéraions. Dès les PLDs e plus encore pour les FPGs, ces deux opéraions deviennen plus complexes e nécessien un ouil spécifique du fondeur, qui seul a les compéences (pour la simple raison qu'il es seul à connaîre ses circuis dans leurs moindres déails). Le compilaeur VHDL ser, dans ces cas, de fronal homogène qui radui, après une première opimisaion, la descripion VHDL dans un langage srucurel adapé au logiciel spécifique (une ceraine porabilié demeure, même à ce niveau ; il exise des formas de fichiers communs à plusieurs fondeurs : les fichiers PL ou, plus souven, des fichiers dans un langage symbolique, EDIF pour Elecronic Daa Inerchange Forma for ne-liss; il s'agi d'un langage de descripion srucurelle, qui ressemble un peu à LISP, compris par la majorié des sysèmes de O). propos de la réro annoaion, les ouils des fondeurs (fabricans de circuis inégrés) fournissen en reour un modèle, VHDL ou VERILOG, du circui généré qui prend en compe les emps de propagaion inernes. 6. nnexe.
185 Elecronique Numérique 6 nnexe. Les circuis programmables 2.4. Des echniques de programmaion Le placeur-roueur ransforme la descripion srucurelle du circui en une able des fusibles consignée dans un fichier (JEDE dans les cas simples, LOF, POF auremen). Pour la peie hisoire, signalons que cee able peu conenir plusieurs cenaines de milliers de bis, un par «fusible». Tradiionnellemen, la programmaion du circui, opéraion qui consise à raduire la able des fusibles en une configuraion maérielle, se faisai au moyen d'un programmaeur, appareil capable de générer les séquences e les surensions nécessaires. La endance acuelle es de supprimer cee éape de manipulaion inermédiaire, manipulaion d'auan plus malaisée que l'augmenaion de la complexié des boîiers va de pair avec celle des circuis. uan il éai simple de concevoir des suppors à force d'inserion nulle pour des boîiers DIL (Dual In Line) de 2 à 4 broches espacées de 2.54 mm, auan il es difficile e coûeux de réaliser l'équivalen pour des PG (Pin Grid rray) e aures BG (Ball Grid rray), de 2 à plus de 3 broches réparies sur oue la surface du boîier, sans parler des boîiers miniaurisés, au pas de.65 mm, desinés au monage en surface (MS omposans Monés en Surface). Une difficulé du même ordre se renconre pour le es : il es devenu quasi impossible d'accéder, par des moyens radiionnels els que les poines de conac d'une «planche à clous», aux équipoenielles d'une care. De oue façon, les équipoenielles du circui imprimé ne représenen plus qu'une faible proporion des noeuds du schéma global : un circui de 25 broches peu conenir 25 bascules. Trois modes : foncionnemen normal, programmaion e es Foncionnemen normal, programmaion e es : l'idée s'es imposée d'incorporer ces rois modes de foncionnemen dans les circuis eux-mêmes, comme parie inégrane de leur archiecure. Pour le es de cares, une norme exise : le sandard IEEE 49., plus connu sous le nom de boundary scan du consorium JTG (Join Tes cion Group). Face à la quasi impossibilié de eser de l'exérieur les cares mulicouches avec des composans monés en surface, un mode de es a éé défini, pour les VLSI numériques. e mode de es fai appel à une machine d éas, inégrée dans ous les circuis compaibles JTG, qui uilise 5 broches dédiées : Tck, une enrée d horloge dédiée au es, différence de l horloge du rese du circui Tms, une enrée de mode qui piloe l'auomae de es Tdi, une enrée série Tdo, une sorie série Trs (opionnelle), une enrée de réiniialisaion asynchrone de l'auomae. L 'uilisaion première de ce sous-ensemble de es es la vérificaion de connexions d'une care, uand le mode de es es acivé, via des commande ad-hoc sur les enrées Tms e Trs, le foncionnemen normal du circui es inhibé. Les broches du circui son connecées à des cellules d'enrée-sorie dédiées au es (ypiquemen, une broche d'enrée-sorie bidirecionnelle es piloée par 6 bascules : un couple en enrée, un couple en sorie e un couple en commande de roiséas ; les bascules par paires permeen de décaler les données ou en mémorisan la configuraion précédene de chaque broche), chaque cellule es capable de piloer une broche en sorie e de capurer les données d'enrée, conformémen au schéma de principe de la figure 4. Toues les cellules de es son connecées en un regisre à décalage, an à l'inérieur d'un circui qu'enre les circuis, consiuan ainsi une chaîne de données, accessible en série, qui parcour l'ensemble des broches de ous le circuis compaibles JTG d'une care. Les opéraions de es son programmées via des commandes passées aux auomaes e des données enrées en série. Les résulas des ess son récupérables par la dernière sorie série. Les auomaes de es permeen d'aures vérificaions que celles des connexions : il es possible de les uiliser pour appliquer des veceurs de es inernes aux circuis, par exemple. 'es souven de cee façon que son effecués cerains des ess à la fabricaion. L'idée éai séduisane d'uiliser la même srucure pour configurer les circuis programmables. 'es ce qui es en rain de se faire : la plupar des fabricans proposen, ou annoncen des soluions plus ou moins dérivées de JTG pour évier à l'uilisaeur d'avoir recours à un appareillage exérieur (les pionniers en la maière furen les sociéés ILIN pour les echnologies SRM e LTTIE pour les echnologies FLSH). 6. nnexe. 2
186 Elecronique Numérique 6 nnexe. Les circuis programmables Programmables in siu Les circuis programmables in siu se développen dans le monde des PLDs e PLDs en echnologie FLSH. Du simple 22V à des composans de plus de pores équivalenes e 4 bascules (LTTIE, par exemple), il es possible de programmer (e de modifier) l'ensemble d'une care, sans démonage, à parir d'un por série de P. Figure 4 : Boudary scan Les echnologies FLSH conserven leur configuraion en l'absence d'alimenaion. Reconfigurables dynamiquemen Les FPGs à cellules SRM offren des possibiliés muliples de chargemen de la mémoire de configuraion : - hargemen auomaique, à chaque mise sous ension, des données sockées dans une mémoire PROM. Les données peuven êre ransmises en série, en uilisan peu de broches du circui, ou en parallèle oce par oce, ce qui accélère la phase de configuraion mais uilise, emporairemen du moins, plus de broches du circui. Plusieurs circuis d'une même care peuven êre configurés en coopéraion, leurs auomaes de chargemen assuren un passage en mode normal coordonné, ce qui es évidemmen souhaiable. - hargemen, en série ou en parallèle, à parir d'un processeur maîre. e ype de srucure auorise la modificaion rapide des configuraions en cours de foncionnemen. ee possibilié es inéressane, par exemple, en raiemen du signal. 3. PLDs, PLDs, FPGs : quel circui choisir? Dans le monde des circuis numériques les chiffres évoluen rès vie, beaucoup plus vie que les conceps. ee impression de mouvemen permanen es accenuée par les effes d'annonce des fabricans e par l'usage sysémaique de la publicié comparaive, rès en vogue dans ce domaine. Il semble que doiven se mainenir rois grandes familles : - Les PLDs e PLDs en echnologie FLSH, uilisan une archiecure somme de produis. La endance es à la généralisaion de la programmaion in siu, rendan inuile les programmaeurs sophisiqués. Réservés à des foncions simples ou moyennemen complexes, ces circuis son rapides (jusqu à environ 2 MHz) e leurs caracérisiques emporelles son praiquemen indépendanes de la foncion réalisée. Les valeurs de fréquence maximum de foncionnemen dans la noice son direcemen applicables. - Les FPGs à SRM, uilisan une archiecure cellulaire. Proposés praiquemen par ous les fabricans, ils couvren une gamme exrêmemen large de produis, an en densiés qu'en viesses. Reprogrammables indéfinimen, ils son devenus reconfigurables rapidemen (2 ns par cellule), en oalié ou pariellemen. 6. nnexe. 3
187 Elecronique Numérique 6 nnexe. Les circuis programmables - Les FPGs à anifusibles, uilisan une archiecure cellulaire à granularié fine. es circuis enden à remplacer une bonne parie des SIs prédiffusés. Programmables une fois, ils présenen l'avanage d'une rès grande rouabilié, d'où une bonne occupaion de la surface du circui. Leur configuraion es absolumen immuable e disponible sans aucun délai après la mise sous ension; c'es un avanage parfois inconournable. 3.. rières de performances Oure la echnologie de programmaion, capacié e viesse son les maîres mos pour comparer deux circuis. Mais quelle capacié, e quelle viesse? Puissance de calcul Les premiers chiffres accessibles concernen les nombres d'opéraeurs uilisables. Nombre de pores équivalenes Le nombre de pores es sans doue l'argumen le plus uilisé dans les effes d'annonce. En 997 par exemple, la barrière des pores a largemen éé franchie. Plus délicae es l'esimaion du nombre de pores qui seron inuilisées dans une applicaion, donc le nombre réellemen uile de pores. Nombre de cellules Le nombre de cellules es un chiffre plus facilemen inerpréable : le consruceur du circui a opimisé son archiecure, pour rendre chaque cellule capable de raier à peu près ou calcul don la complexié es en relaion avec le nombre de bascules qu'elle conien (une ou deux suivan les archiecures). Trois repères chiffrés : un 22V conien bascules, la famille des PLDs va de 32 bascules à quelques cenaines, e celle des FPGs s'éend d'une cenaine à quelques milliers. Dans les circuis à archiecure cellulaire, il es souven rès renable d augmener le nombre de bascules si cela perme d alléger les blocs combinaoires (pipeline ). Nombre d enrées-sories Le nombre de pors de communicaion enre l'inérieur e l'exérieur d'un circui peu varier dans un rappor deux, pour la même archiecure inerne, en foncion du boîier choisi. Les chiffres von de quelques dizaines à quelques cenaines de broches d'enrées-sories. apacié mémoire Les FPGs à SRM coniennen des mémoires pour socker leur configuraion. La plupar des familles récenes offren à l'uilisaeur la possibilié d'uiliser ceraines de ces mémoires en an que elles. Par exemple, la famille 4 de ILIN perme d'uiliser les mémoires de configuraion d'une cellule pour socker 32 bis de données; la cellule correspondane n'es évidemmen plus disponible comme opéraeur logique. Les capaciés de mémorisaion aeignen quelques dizaines de kilobis. Rouabilié Placemen e rouage son inimemen liés, e le souhai éviden de l'uilisaeur es que ces opéraions soien aussi auomaiques que possible. Le crière premier de rouabilié es l'indépendance enre la foncion e le brochage. erains circuis (mais pas ous) garanissen une rouabilié complèe : oue foncion inégrable dans le circui pourra êre modifiée sans modificaion du câblage exerne. Le rouage influe sur les performances dynamiques de la foncion finale. La poliique généralemen adopée es de prévoir des inerconnexions hiérarchisées : les cellules son regroupées en grappes (d'une ou quelques dizaines) foremen inerconnecées, des pises de communicaion relian les grappes enre elles. Les inerconnexions locales n'on que peu d'influence sur les emps de calcul, conrairemen aux inerconnexions disanes don l'effe es noable. 6. nnexe. 4
188 Elecronique Numérique 6 nnexe. Les circuis programmables priori c'es au placeur-roueur que revien la gesion de ces inerconnexions; à condiion que le programmeur ne lui complique pas inuilemen la âche. Un opimiseur a oujours du mal à découper des blocs de grandes ailles, il lui es beaucoup plus simple de placer des objes de peies dimensions. En VHDL cela s'appelle une consrucion hiérarchique; un ensemble complexe doi êre conçu comme l'assemblage d'uniés de concepions aussi simples que possibles. Figure 5 : Modèle de calcul de la fréquence maximum Viesse de foncionnemen Nous avons vu, à propos de la réro annoaion, que les comporemens dynamiques des FPGs e des PLDs simples présenen des différences marquanes. Les premiers on un comporemen prévisible, indépendammen de la foncion programmée; les limies des seconds dépenden de la foncion, du placemen e du rouage. Une difficulé de jeunesse des FPGs a éé la non reproducibilié des performances dynamiques en cas de modificaion, même mineure, du conenu d'un circui. Les logiciels d'opimisaion e les progrès des archiecures inernes on praiquemen supprimé ce défau; mais il rese que seule une analyse e une simulaion pos synhèse, qui prend en compe les paramères dynamiques des cellules, perme réellemen de prévoir les limies de foncionnemen d'un circui. Modèle général de déerminaion de fmax Le modèle général de déerminaion de la fréquence maximum d'un opéraeur séqueniel prend en compe les reards dans les circuis e les règles concernan les insans de changemen des enrées vis à vis des frons acifs de l'horloge. La figure 5 défini les emps les plus imporans : p i pour des emps de propagaion e su pour le emps de préposiionnemen d'une bascule. La fréquence maximum de foncionnemen inerne es donnée par : F / ( + + ) in = p2 p Pour le calcul de la fréquence maximum exerne, il convien de rajouer, dans la formule précédene, le emps de F / propagaion des cellules de sorie : ( ) su = ex p3 p2 p Dans un FPG le roueur analyse le schéma généré e en dédui les différens emps de propagaion, à parir d'un modèle des cellules élémenaires du circui. Dans le cas des PLDs simples e de beaucoup (pas ous) des PLDs, les noices fournissen direcemen les valeurs des fréquences maximum e/ou des emps de reard e de préposiionnemen enre les signaux appliqués aux broches du circui e les frons de l'horloge. su 6. nnexe. 5
189 Elecronique Numérique 6 nnexe. Les circuis programmables Syle de programmaion e performances Pour l aueur d un programme VHDL, quelques guides de programmaion son uiles : - Réfléchir au codage des éas, dans la concepion des machines d'éas. Les sories direces du regisre d'éa son préférables. - Subdiviser les blocs de calcul combinaoires en ranches séparées par des regisres; auremen di, penser aux archiecures pipeline. es archiecures génèren un reard global de plusieurs périodes d'horloge, mais permeen d'obenir des flos de données rapides (l'image classique es le principe de la fabricaion des voiures à la chaîne : même si une voiure sor oues les dix minues, il fau plus de dix minues pour fabriquer une voiure prise isolémen; le débi es rès supérieur à l'inverse du emps de fabricaion d'une seule voiure). - Savoir que les bibliohèques des fondeurs son riches en modules srucurels opimisés en foncion du circui cible : les modules LPM (Library of Parameerized Modules). - Les synhéiseurs infèren auomaiquemen des modules LPM, à parir de descripions comporemenales de hau niveau, sous réserve que le programmeur respece ceraines règles d'écriure ou indique expliciemen qu'il souhaie uiliser les librairies correspondanes. La noice de ous les compilaeurs explique la démarche à suivre. onsommaion Les premiers circuis programmables avaien pluô mauvaise répuaion sur ce poin. Tous les circuis acuels on fai d'imporans progrès en direcion de consommaions plus faibles. Le compromis viesse consommaion Règle générale des circuis numériques, encore plus vraie dans le monde des echnologies MOS que dans celui des echnologies bipolaires : pour aller vie il fau de la puissance. Les noices fournissen communémen des courbes de consommaion pour des élémens classiques, comme un compeur synchrone 6 bis, en foncion de la fréquence d'horloge. Le passage à 3.3 V des ensions d'alimenaion perme une économie non négligeable de puissance, pour les mêmes valeurs de couran. Les cellules de cerains circuis son programmables en deux modes : faible consommaion ou viesse maximum (bi urbo). Le gain de viesse se paye par une consommaion neemen plus élevée (praiquemen un faceur 2 pour un EPM 732 cadencé à 6 Mhz, par exemple). De façon générale, le couran moyen consommé par un circui es de la forme : F I = I + k n F n V L S S 2 où I représene le couran saique consommé au repos, n L le nombre moyen de cellules logiques qui commuen simulanémen à chaque fron d'horloge, n S le nombre moyen de sories qui commuen à chaque fron d'horloge, S la capacié de charge moyenne des sories, V l'excursion de la ension de sorie, F la fréquence d'horloge e k un coefficien de consommaion par cellule par Herz. uelques chiffres Un ordre de grandeur du paramère k précéden es, pour un FPG de la famile FLE 8 d'lter, de 5 par cellule. Un circui cadencé à 5 MHz, dans lequel cellules commuen, en moyenne, à chaque fron d'horloge, consomme, sans charge exérieure, un couran moyen de l'ordre de 75 m. e qui es loin d'êre négligeable. ire de confronaion, la valeur précédene doi êre comparée à la consommaion de 5 compeurs binaires (dans un compeur binaire deux cellules commuen, en moyenne, à chaque période d'horloge). Un compeur binaire de la famille TTL-S (il fau prendre des circuis de viesses comparables) consomme 35 m. Les chiffres parlen d'eux-mêmes. Toujours dans le même ordre, un PLD 22V rapide à cellules, consomme un couran de l'ordre de m. Dans ce dernier cas, la foncion programmée e la fréquence d'horloge n'on qu'une incidence faible sur le couran consommé. 6. nnexe. 6
190 Elecronique Numérique 6 nnexe. Les circuis programmables L'organisaion PREP Nombre de pores, de cellules, de bascules, fréquence maximum, dans quelle condiion? vec quel logiciel? Les comparaisons ne son pas simples. Le consorium PREP (Programmable Elecronics Performance orporaion) regroupe la plupar des fabricans de circuis programmables. e organisme a défini un ensemble de 9 applicaions, ypiques de l'usage couran des circuis programmables, qui serven de es à la fois pour les circuis e le sysème de développemen associé. Les fruis de la confronaion à ce bench-mark son fournis pour la plupar des PLDs e FPGs. es résulas coniennen des informaions de viesse, fréquences maximums inerne e exerne pour chaque es, e de capacié, nombre moyen d'exemplaires de chaque es que l'on peu insancier dans un circui. Les applicaions «ypes» Les 9 épreuves de es son : - Daapach : un chemin de données, sur un oce, franchi dans l ordre un muliplexeur 4 vers, un regisre ampon e un regisre a décalage arihméique (avec exension de signe). Le schéma ne compore praiquemen pas de calcul enre les bascules des regisres; les fréquences maximum obenues son à peu de choses près celles des circuis en boucle ouvere. Le nombre de veceurs d'enrée sollicie beaucoup les ressources de rouage. - ouner imer : un compeur 8 bis à chargemen parallèle parcour un cycle défini par une valeur de chargemen e une valeur finale. Un comparaeur provoque le rechargemen du compeur quand il a aein la valeur finale. Le schéma compore, oure le compeur, deux regisres, un comparaeur e un muliplexeur, le ou sur un oce. Le foncionnemen place le comparaeur dans la boucle de commande du compeur, limian par là sa fréquence maximum de foncionnemen. - Small sae machine : peie machine d'éas, 8 éas, 8 enrées, 8 sories. Beaucoup de PLDs arriven à la faire foncionner à leur fréquence maximum, les résulas son plus variables pour les FPGs. - Large sae machine : machine à 6 éas, 8 enrées e 8 sories. La plupar des PLDs doiven abandonner leur fréquence de foncionnemen maximum : le nombre de variables es rop grand pour auoriser les calculs en une seule passe dans la logique combinaoire. - rihmeic : un muliplieur de deux nombres de 4 bis, résula sur 8, suivi par un addiionneur accumulaeur sur 8 bis. La srucure en «somme de produis» des PLDs les rend rès inefficaces dans les problèmes d'arihméique. Les FPGs monren une supériorié archiecurale nee face à ces problèmes. - ccumulaeur : accumulaeur-addiionneur sur 6 bis. Un addiionneur de deux nombres de 6 bis es suivi par un regisre don le conenu es pris comme l'un des opérandes de l'addiion. e es génère un schéma moins complexe que le précéden. - 6-bi couner : un classique compeur 6 bis, à chargemen parallèle synchrone e remise à zéro asynchrone. 'es un peu un es de viesse pure dans une applicaion sandard. - 6-bi prescaled couner : compeur 6 bis à prédiviseur synchrone. Pour accélérer le compage, une echnique consise à raier à par l'éage de poids faible d'un compeur, quie à perdre la possibilié d'effecuer le chargemen parallèle en un seul cycle. Pour les PLDs il n'y a aucune différence avec l'épreuve précédene; pour les FPGs l'archiecure en peies cellules condui à une accéléraion nee du foncionnemen. 6. nnexe. 7
191 Elecronique Numérique 6 nnexe. Les circuis programmables Figure 6 : Moyennes des ess PREP - Décodeur d'adresses : un décodeur d'adresse génère 8 signaux de décodage mémorisés dans un regisre à parir d'un signal d'enrée sur 6 bis; il découpe ainsi l'espace d'adresses en 8 pages. Le raiemen de ce schéma favorise les circuis qui disposen de pores ET à grand nombre d'enrées. L'archiecure PLD se prêe mieux à cee épreuve que celle des FPGs. chacun son inerpréaion Les résulas à ces épreuves son généralemen présenés sous forme de ableaux comparaifs. haque consruceur veillan, évidemmen, à cier les résulas de la concurrence qui illusren sa propre supériorié. Une analyse générale, proposée par beaucoup de fabricans, consise à calcuer pour chaque circui les moyennes des fréquences maximums de foncionnemen, e des nombres d'insances de chaque épreuve implanable dans le circui. es deux chiffres fournissen une informaion globale de viesse e une informaion globale de capacié. Sans enrer dans des comparaisons chiffrées qui ne valen qu'à un insan donné, il es inéressan de délimier dans le plan fréquence/capacié les zones de prédilecion des différenes caégories de circuis programmables. 'es le sens de la figure 6. Les peis circuis son incapables de conenir les épreuves PREP, ils se concenren à une capacié moyenne nulle. Nous les avons malgré ou placé dans ce plan, bien que la comparaison enre des moyennes d'un côé e une informaion poncuelle de l'aure soi un peu rompeuse (il n'es pas difficile de rouver dans un daa book un exemple pariculier de monage avec lequel un FPG dépasse rès largemen les 2 MHz) Le rôle du «fier» Nous avons un peu exploré les aspecs maériels des circuis programmables. Terminons en rerouvan, à ravers quelques remarques, l aspec logiciel des choses. Un circui n es rien sans son logiciel de développemen ; un résula surprenan aux épreuves PREP nous en fourni un exemple. «Mise à pla» ou logique muli-couches? L'une de ces épreuves concerne l'arihméique : pour cee épreuve un PLD qui n'es ni moins performan que son concurren direc, ni plus pei, s'es vu aribuer, en 995, la noe zéro en fréquence maximum de foncionnemen. Un zéro dans une moyenne, cela pèse lourd. La règle es la synhèse auomaique, opimisaion comprise. Le fier du fondeur concerné s'es vraisemblablemen fourvoyé dans la mise à pla, sous forme somme de produis logiques, des opéraeurs arihméiques. La bonne approche éai, pour ce exemple, de conserver plus de couches logiques, au dérimen de la viesse. Les performances des FPGs ne se dégraden que rès progressivemen quand la complexié d'un schéma augmene; cee faculé es liée à leur archiecure à granularié fine, qui impose de oue façon de passer à des srucures mulicouches, même pour des foncions combinaoires de complexié moyenne. Les consruceurs de circuis on opimisé les passages de reenues d'une cellule à l'aure, qui auorisen des srucures de propagaion des reenues sans rop ralenir le sysème. 6. nnexe. 8
192 Elecronique Numérique 6 nnexe. Les circuis programmables erains logiciels donnen à l'uilisaeur le loisir de régler manuellemen le seuil de dédoublemen d'équaions logiques rop larges. Il es possible de spécifier le nombre maximum de faceurs dans un produi e le nombre maximum de ermes dans une somme, par exemple. e genre de réglages manuels peu, bien qu'un peu délica à manipuler, donner de bons résulas quand les choix auomaiques ne conviennen plus. Surface ou viesse Les opions de réglage sandard d'un fier permeen de privilégier la surface (de silicium) ou la viesse. Les deux choix son, en effe, souven conradicoires : pour diminuer la surface il fau augmener le nombre de couches, ce qui pénalise la viesse (la siuaion réelle es un peu plus complexe : quand on diminue le nombre de couches logiques, la sorance imposée aux opéraeurs augmene ; dans les echnologies MOS les emps de propagaion de ces opéraeurs dépenden beaucoup de leurs capaciés de charge, donc du nombre d'enrées qu'ils doiven commander; les fier conrôlen égalemen ce ype de conraines). Librairies de macro foncions Rappelons l imporance des librairies de modules opimisés en foncion du circui cible. L idéal es qu elles soien explorées auomaiquemen par l analyseur de code VHDL, mais cee recherche auomaique suppose que le code source ne brouille pas les cares. Le meilleur des compilaeurs ne peu donner que ce que le circui possède Ulime remarque : le meilleur des compilaeurs ne peu qu'organiser ce qui préexise dans un circui, il ne crée rien. Trivialemen, ener d'implaner un compeur 6 bis dans un 22V es un objecif inaccessible. e exemple en fera sourire plus d'un; ransposé à un circui de compression de la parole, à implaner dans un circui plus conséquen, le problème rese le même; même si l'analyse de faisabilié es plus ardue, elle doi pouran êre poursuivie. 6. nnexe. 9
193 Elecronique numérique VHDL Noes VHDL NOTES Licensing + ompilaion + Simulaion. Licensing - Obenion de la licence (fichier license.da). ller sur le sie hp:// 2. liquez ou en hau de la page sur licensing 3. liquez sur Ge licenses dans la rubrique Ge My License File 4. liquez ou en bas de la page sur M+PLUS II Sofware for Sudens and Universiies 5. ochez M+PLUS II Suden Ediion sofware Version.2,., or 9.23 puis oninue 6. Ener your hard disk volume serial number, obenu en apan dir /p dans une fenêre Terminal (exemple 62E4-574) puis oninue 7. Remplir les quesionnaires (donner une adresse valide, le rese es sans imporance) 8. Recuperer par mail le fichier license.da e l'inclure sous le compilaeur LTER Max++ Baseline par la commande : Opions License Seup Browse 9. Le fichier license.da a l'allure suivane : FETURE maxplus2web alerad 2.3 permanen uncouned 3DB58857B8 \ HOSTID=DISK_SERIL_NUM=82fc3d FETURE maxplus2vhdl alerad 2.3 permanen uncouned 4E79E88D5 \ HOSTID=DISK_SERIL_NUM=82fc3d FETURE maxplus2verilog alerad 2.3 permanen uncouned \ 5249FB66D HOSTID=DISK_SERIL_NUM=82fc3d 2. ompilaion - Fichier source d'exemple : inverseur.vhd pour le es du compilaeur LTER Max++ -- le fichier source.vhd doi porer le même nom que l enié eniy inverseur is por (e : in bi; s : ou bi); end inverseur; archiecure es of inverseur is begin s <= no e; end es; 3. Simulaion - Tuorial du compilaeur LTER Max++ Baseline. Ouvrir ou saisir le fichier inverseur.vhd 2. File Projec Se projec o curren file 3. ompilaion : Max+plusII ompiler ompile 4. Simulaion : 4.. File New Waveform Edior File Save (SF File) 4.2. Signaux a visualiser + Iniialisaion 4.3. Node Ener Nodes from SNF Lis 4.4. File End ime 4.5. Simulaion Run 4.6. File Projec Save, ompile and Simulaion : Sar + Open SF VHDL Noes.
194 Elecronique Numérique Projes ELETRONIUE NUMERIUE PROJETS Projes.
195 Elecronique Numérique Projes Projes d Elecronique - VHDL - ~ 3 élèves par groupe de proje. - Proje libre possible (soumis à l accord du professeur). - Proje à rendre à [email protected] sous forme de fichier zip (don le nom es le nom du proje suivi de ous les noms des membres du groupe de proje) avec sources + rappor élecronique (pdf) + documenaion évenuelle + programme exécuable évenuel. - Ouil VHDL obligaoire (sauf indicaion conraire) : Simulaion uniquemen. - Faculaif : Simulaion de la soluion VHDL sous ircui Maker (e réciproquemen, simulaion VHDL pour le proje sous ircui Maker). - Faculaif : Programmaion du FPG de la care de développemen VHDL LTER. - Examen oral individuel de souenance du proje (possibilié de noes différenciées pour les membres d un même proje). - Temps de réalisaion d un proje (emps moyen esimé) : 5 séances de 4h. - Souenance du proje au plus ard la semaine du 5 au 9 mai 26 - S inscrire (choix du proje + membres du groupe) au plus ard la semaine du 27 au 3 mars 26 L idée qui vien naurellemen à l espri es de choisir le codage en foncion des sories à générer.. ompeur synchrone 4 bis cadencé à la milliseconde, compan en décimal dans la séquence (décimal/binaire) : Un signal UpDown auorise la sélecion Incrémenaion/Décrémenaion du compeur. Un signal RZ perme d inerrompre la séquence de compage en ramenan à zéro les sories du compeur de façon asynchrone. Synhèse e Simulaion. Faculaif : ffichage du digi sur l afficheur de la care de développemen VHDL LTER. 2. Séquenceur (rain élecrique) :,, B Synhéiser e simuler la commande des aiguillages pour un parcours : du rain élecrique. Train élecrique Soi un rain élecrique devan effecuer 3 boucles, B, sélecionnables par aiguillages p e q. Le passage dans une boucle es déecé par un conac (T) remonan après le passage du rain (le rain roule en marche avan uniquemen (pas de marche arrière) ou peu aussi se rouver à l arrê). T a Dépar p q B T b iguillages (sories) : p q = : non devie : devie onacs (enrées) : (T) a b = : repos c : passage du rain(reombee a apres passage) Ea iniial : Train au dépar sories p e q à T c 2
196 Elecronique Numérique Projes 3. Serrure élecronique (digicode) : Décodage de la séquence (clé) de 4 digis (décimal/binaire) : 2 8 Dans ce ordre sur un clavier à 2 ouches : * # 4. ompeur synchrone modulo 6 (à ompage inerrupible en = ) L un des inérês principaux des bascules de ype T es qu elles permeen de générer de façon exrêmemen simple des compeurs binaires synchrones. Un compeur binaire es une foncion séquenielle don l éa inerne es un nombre enier naurel codé en binaire don chaque chiffre binaire es maérialisé par une bascule. chaque ransiion acive de l horloge ce nombre es incrémené de, quand le nombre maximum es aein, oues les bascules son à, la n séquence recommence à parir de. Si le nombre de bis uilisés es n, on parlera d un compeur modulo 2. La simple observaion d une able des eniers naurels écris en base 2 nous fourni la clé du problème : la bascule de rang i doi changer d éa quand oues les bascules de rang inférieur son à. Déduire une réalisaion VHDL d un compeur synchrone modulo 6 don on peu inerrompre le compage (en = ). 5. ommande de feux ricolores pour piéons Un passage pour piéons raverse une avenue : il es proégé par un feu ricolore qui foncionne à la demande des piéons : en l absence de oue demande, les feux son à l orange clignoan (un nombre Tor de secondes allumés, Tor secondes éeins). uand un piéon souhaie raverser l avenue, il es invié à appuyer sur un bouon, ce qui provoque le déclenchemen d une séquence (vue des voiures) : - orange fixe pendan 2Tor secondes, - rouge pendan Tr secondes, - ver pendan Tv secondes, pour laisser passer le flo de voiures pendan un minimum de emps, - reour à la siuaion par défau. Subdivisons la soluion du problème en sous-ensembles. 3 blocs foncionnels peuven êre idenifiés :. La commande des feux propremen die, les sories de 3 bascules du regisre d éa commandan direcemen l allumage, ou l exincion, des lampes rouge, vere e orange. 2. Une emporisaion qui, suie à une commande d iniialisaion, fourni les 3 durées Tor, Tr e Tv. 3. Une mémorisaion de l appel des piéons, qui évie de se poser des quesions concernan la durée pendan laquelle le demandeur appuie sur le bouon; une simple pression suffi, l appel es alors enregisré, quel que soi l éa d avancemen de la séquence de gesion des feux. Oure les commandes des feux propremen dies, le bloc principal fourni un signal d iniialisaion (cp) à la emporisaion, qui doi durer une période d horloge, e un signal d annulaion (raz) de la requêe, mémorisée, d un piéon. Nous sommes en rain de définir 3 processus qui se commanden e/ou s aenden muuellemen. Le danger de ce ype d archiecure, rès fréquene, es de générer des inerblocages : un processus en iniialise un second e aend une réponse de ce dernier. Si l demandeur oublie de relâcher la commande d iniialisaion, le sysème es bloqué. e ype de siuaion pore, en informaique, le doux nom d éreine faale (deadly embrace). La soluion adopée ici es d envoyer des signaux fugaces (amis synchrones!), ce qui oblige le demandeur à aendre la réponse dans un éa différen de celui où il a passé la commande d iniialisaion. Les signaux d enrée de ce bloc son la requêe (pie) e les 3 indicaions de durée Tor, Tr e Tv ; nous supposerons que ces dernières passen à, pendan une période d horloge, quand les durées correspondanes se son écoulées. onduisan au schéma synopique : hor svp ppel pie Tor Tr Tv Feux R O V cp raz Tempo Tor Tr Tv 3
197 Elecronique Numérique Projes 6. N + N N par dichoomie lgorihme Débu V = V M 2 ; V = V 2 ; i = m - NON V in V? OUI N [ i ]= ; V = V - V N [ i ]= ; V = V + V V V = 2 ; i = i - NON i = -? OUI Le résula es dans N [ ] STOP N [ m- ] N [ ] V in : Signal analogique d'enrée (on suppose : < V in < V M ) V M : Valeur maximale possible pour V in m : Nombre de bis pour le codage V : «Pesée» successive N : Mo binaire de sorie codé en binaire pur Principe On découpe l inervalle [, V M ] en 2 paries égales e on compare par rappor à V in Selon le résula, on me ou VM VM dans le bi de poids for de N puis on re-découpe en 2 inervalles égaux l inervalle [, ] si V in < (e 2 2 V M V 2 l inervalle, ] sinon) e on regarde à nouveau dans quel inervalle se siue [ M V in ec... V M V M 2 V M 4 Vin N algorihmique bi : bi : ou N = bm bm 2L b avec : i m e a pour valeur décimale ( en base ) : m : nombre de bis pour le codage. m m 2 m m 2 [ bm bm 2 Lb] = bm + bm + + b + b L 2 2 ( = bm 2 + bm L + b 2+ b) Le N a pour rôle de délivrer une ension Vs proporionnelle à N (en valeur décimale). MSB (Mos Significan Bi), le bi de plus for poids : b m LSB (Less Significan Bi), le bi de plus faible poids : b 4
198 Elecronique Numérique Projes 7. scenseur Gesion/ommande d un ascenseur d immeuble à n éages. 8. Disribueur auomaique Gesion/ommande d un disribueur auomaique de billes ou de boissons. 9. Regisre à décalage synchrone 8 bis Synhèse du composan ainsi décri :. LOK DE ES Regisre à décalage synchrone 8 bis B avec : DE = Roaion (d un cran de ous les bis du regisre) DE = Roaion (d un cran de ous les bis du regisre) DE = Enrée Série Gauche (du bi ES) e Décalage de ous les bis du regisre d un cran DE = Enrée Série Droie (du bi ES) e Décalage de ous les bis du regisre d un cran DE = hargemen > (du mo de 8 bis B) DE = RZ (Effacemen) ( > mo de 8 bis B = ) L horloge (LOK) es acive sur fron monan.. Suje libre (proposiion de la par des éudians). 5
199 Elecronique Numérique Projes NNEE Microprocesseur 4 bis en VHDL (voir annexe). 2 Microprocesseur 4 bis sous ircui Maker (voir annexe). 3 alcularice en VHDL. 4 onrôle (régulaion) en VHDL : algorihme PID numérique. 5 Filrage en VHDL : Filre numérique er ordre. 6 onversion nalogique-numérique (N) sofware par approximaions successives sous VHDL. 7 onversion nalogique-numérique (N) hardware par care basée auour du composan D7569JN. 8 Mini care d acquisiion-resiuion (N/N) à base de converisseur D7568JN + driver logiciel. 6
Recueil d'exercices de logique séquentielle
Recueil d'exercices de logique séquenielle Les bascules: / : Bascule JK Bascule D. Expliquez commen on peu modifier une bascule JK pour obenir une bascule D. 2/ Eude d un circui D Q Q Sorie A l aide d
Les circuits électriques en régime transitoire
Les circuis élecriques en régime ransioire 1 Inroducion 1.1 Définiions 1.1.1 égime saionnaire Un régime saionnaire es caracérisé par des grandeurs indépendanes du emps. Un circui en couran coninu es donc
Caractéristiques des signaux électriques
Sie Inerne : www.gecif.ne Discipline : Génie Elecrique Caracérisiques des signaux élecriques Sommaire I Définiion d un signal analogique page 1 II Caracérisiques d un signal analogique page 2 II 1 Forme
Intégration de Net2 avec un système d alarme intrusion
Ne2 AN35-F Inégraion de Ne2 avec un sysème d alarme inrusion Vue d'ensemble En uilisan l'inégraion d'alarme Ne2, Ne2 surveillera si l'alarme inrusion es armée ou désarmée. Si l'alarme es armée, Ne2 permera
TB 352 TB 352. Entrée 1. Entrée 2
enrées série TB logiciel d applicaion 2 enrées à émission périodique famille : Inpu ype : Binary inpu, 2-fold TB 352 Environnemen Bouon-poussoir TB 352 Enrée 1 sories 230 V Inerrupeur Enrée 2 Câblage sur
2. Quelle est la valeur de la prime de l option américaine correspondante? Utilisez pour cela la technique dite de remontée de l arbre.
1 Examen. 1.1 Prime d une opion sur un fuure On considère une opion à 85 jours sur un fuure de nominal 18 francs, e don le prix d exercice es 175 francs. Le aux d inérê (coninu) du marché monéaire es 6%
Rappels théoriques. -TP- Modulations digitales ASK - FSK. Première partie 1 INTRODUCTION
2 IUT Blois Déparemen GTR J.M. Giraul, O. Bou Maar, D. Ceron M. Richard, P. Sevesre e M. Leberre. -TP- Modulaions digiales ASK - FSK IUT Blois Déparemen du Génie des Télécommunicaions e des Réseaux. Le
Documentation Technique de Référence Chapitre 8 Trames types Article 8.14-1
Documenaion Technique de Référence Chapire 8 Trames ypes Aricle 8.14-1 Trame de Rappor de conrôle de conformié des performances d une insallaion de producion Documen valide pour la période du 18 novembre
Les solutions solides et les diagrammes d équilibre binaires. sssp1. sssp1 ssss1 ssss2 ssss3 sssp2
Les soluions solides e les diagrammes d équilibre binaires 1. Les soluions solides a. Descripion On peu mélanger des liquides par exemple l eau e l alcool en oue proporion, on peu solubiliser un solide
La rentabilité des investissements
La renabilié des invesissemens Inroducion Difficulé d évaluer des invesissemens TI : problème de l idenificaion des bénéfices, des coûs (absence de saisiques empiriques) problème des bénéfices Inangibles
MATHEMATIQUES FINANCIERES
MATHEMATIQUES FINANCIERES LES ANNUITES INTRODUCTION : Exemple 1 : Une personne veu acquérir une maison pour 60000000 DH, pour cela, elle place annuellemen au CIH une de 5000000 DH. Bu : Consiuer un capial
Oscillations forcées en régime sinusoïdal.
Conrôle des prérequis : Oscillaions forcées en régime sinusoïdal. - a- Rappeler l expression de la période en foncion de la pulsaion b- Donner l expression de la période propre d un circui RLC série -
Sciences Industrielles pour l Ingénieur
Sciences Indusrielles pour l Ingénieur Cenre d Inérê 6 : CONVERTIR l'énergie Compéences : MODELISER, RESOUDRE CONVERSION ELECTROMECANIQUE - Machine à couran coninu en régime dynamique Procédés de piloage
Cours d électrocinétique :
Universié de Franche-Comé UFR des Sciences e Techniques STARTER 005-006 Cours d élecrocinéique : Régimes coninu e ransioire Elecrocinéique en régimes coninu e ransioire 1. INTRODUCTION 5 1.1. DÉFINITIONS
CHAPITRE I : Cinématique du point matériel
I. 1 CHAPITRE I : Cinémaique du poin maériel I.1 : Inroducion La plupar des objes éudiés par les physiciens son en mouvemen : depuis les paricules élémenaires elles que les élecrons, les proons e les neurons
Thème : Electricité Fiche 5 : Dipôle RC et dipôle RL
Fiche ors Thème : Elecricié Fiche 5 : Dipôle e dipôle Plan de la fiche Définiions ègles 3 Méhodologie I - Définiions oran élecriqe : déplacemen de charges élecriqes q a mesre d débi de charges donne l
AMPLIFICATEUR OPERATIONNEL EN REGIME NON LINEAIRE
AMPLIFICATEUR OPERATIONNEL EN REGIME NON LINEAIRE Dans e hapire l'amplifiaeur différeniel inégré sera oujours onsidéré omme parfai, mais la ension de sorie ne pourra prendre que deux valeurs : V sa e V
CARACTERISTIQUES STATIQUES D'UN SYSTEME
CARACTERISTIQUES STATIQUES D'UN SYSTEE 1 SYSTEE STABLE, SYSTEE INSTABLE 1.1 Exemple 1: Soi un sysème composé d une cuve pour laquelle l écoulemen (perurbaion) es naurel au ravers d une vanne d ouverure
SYSTÈME HYBRIDE SOLAIRE THERMODYNAMIQUE POUR L EAU CHAUDE SANITAIRE
SYSTÈME HYBRIDE SOLAIRE THERMODYNAMIQUE POUR L EAU CHAUDE SANITAIRE Le seul ballon hybride solaire-hermodynamique cerifié NF Elecricié Performance Ballon hermodynamique 223 lires inox 316L Plaque évaporarice
Le mode de fonctionnement des régimes en annuités. Secrétariat général du Conseil d orientation des retraites
CONSEIL D ORIENTATION DES RETRAITES Séance plénière du 28 janvier 2009 9 h 30 «Les différens modes d acquisiion des drois à la reraie en répariion : descripion e analyse comparaive des echniques uilisées»
Exemples de résolutions d équations différentielles
Exemples de résoluions d équaions différenielles Table des maières 1 Définiions 1 Sans second membre 1.1 Exemple.................................................. 1 3 Avec second membre 3.1 Exemple..................................................
Cahier technique n 114
Collecion Technique... Cahier echnique n 114 Les proecions différenielles en basse ension J. Schonek Building a ew Elecric World * Les Cahiers Techniques consiuen une collecion d une cenaine de ires édiés
VA(1+r) = C 1. VA = C 1 v 1
Universié Libre de Bruxelles Solvay Business School La valeur acuelle André Farber Novembre 2005. Inroducion Supposons d abord que le emps soi limié à une période e que les cash flows fuurs (les flux monéaires)
F 2 = - T p K 0. ... F T = - T p K 0 - K 0
Correcion de l exercice 2 de l assisana pré-quiz final du cours Gesion financière : «chéancier e aux de renabilié inerne d empruns à long erme» Quesion : rappeler la formule donnan les flux à chaque échéance
NUMERISATION ET TRANSMISSION DE L INFORMATION
, Chapire rminale S NUMERISATION ET TRANSMISSION DE L INFORMATION I TRANSMISSION DE L'INFORMATION ) Signal e informaion ) Chaîne de ransmission de l informaion La chaîne de ransmission d informaions es
Finance 1 Université d Evry Val d Essonne. Séance 2. Philippe PRIAULET
Finance 1 Universié d Evry Val d Essonne éance 2 Philippe PRIAULET Plan du cours Les opions Définiion e Caracérisiques Terminologie, convenion e coaion Les différens payoffs Le levier implicie Exemple
Texte Ruine d une compagnie d assurance
Page n 1. Texe Ruine d une compagnie d assurance Une nouvelle compagnie d assurance veu enrer sur le marché. Elle souhaie évaluer sa probabilié de faillie en foncion du capial iniial invesi. On suppose
MIDI F-35. Canal MIDI 1 Mélodie Canal MIDI 2 Basse Canal MIDI 10 Batterie MIDI IN. Réception du canal MIDI = 1 Reproduit la mélodie.
/ VARIATION/ ACCOMP PLAY/PAUSE REW TUNE/MIDI 3- LESSON 1 2 3 MIDI Qu es-ce que MIDI? MIDI es l acronyme de Musical Insrumen Digial Inerface, une norme inernaionale pour l échange de données musicales enre
TD/TP : Taux d un emprunt (méthode de Newton)
TD/TP : Taux d un emprun (méhode de Newon) 1 On s inéresse à des calculs relaifs à des remboursemens d empruns 1. On noera C 0 la somme emprunée, M la somme remboursée chaque mois (mensualié), le aux mensuel
Programmation, organisation et optimisation de son processus Achat (Ref : M64) Découvrez le programme
Programmaion, organisaion e opimisaion de son processus Acha (Ref : M64) OBJECTIFS LES PLUS DE LA FORMATION Appréhender la foncion achas e son environnemen Opimiser son processus achas Développer un acha
Université Technique de Sofia, Filière Francophone d Informatique Notes de cours de Réseaux Informatiques, G. Naydenov Maitre de conférence, PhD
LA COUCHE PHYSIQUE 1 FONCTIONS GENERALES Cee couche es chargée de la conversion enre bis informaiques e signaux physiques Foncions principales de la couche physique : définiion des caracérisiques de la
Coaching - accompagnement personnalisé (Ref : MEF29) Accompagner les agents et les cadres dans le développement de leur potentiel OBJECTIFS
Coaching - accompagnemen personnalisé (Ref : MEF29) Accompagner les agens e les cadres dans le développemen de leur poeniel OBJECTIFS LES PLUS DE LA FORMATION Le coaching es une démarche s'inscrivan dans
Chapitre 2 L investissement. . Les principales caractéristiques de l investissement
Chapire 2 L invesissemen. Les principales caracérisiques de l invesissemen.. Définiion de l invesissemen Définiion générale : ensemble des B&S acheés par les agens économiques au cours d une période donnée
Sommaire de la séquence 12
Sommaire de la séquence 12 Séance 1........................................................................................................ Je prends un bon dépar.......................................................................................
Froid industriel : production et application (Ref : 3494) Procédés thermodynamiques, systèmes et applications OBJECTIFS LES PLUS DE LA FORMATION
Froid indusriel : producion e applicaion (Ref : 3494) Procédés hermodynamiques, sysèmes e applicaions SUPPORT PÉDAGOGIQUE INCLUS. OBJECTIFS Appréhender les différens procédés hermodynamiques de producion
Cahier technique n 141
Collecion Technique... Cahier echnique n 141 Les perurbaions élecriques en BT R. Calvas Les Cahiers Techniques consiuen une collecion d une cenaine de ires édiés à l inenion des ingénieurs e echniciens
Ned s Expat L assurance des Néerlandais en France
[ LA MOBILITÉ ] PARTICULIERS Ned s Expa L assurance des Néerlandais en France 2015 Découvrez en vidéo pourquoi les expariés en France choisissen APRIL Inernaional pour leur assurance sané : Suivez-nous
OBJECTIFS LES PLUS DE LA FORMATION
Formaion assurance-vie e récupéraion: Quand e Commen récupérer? (Ref : 3087) La maîrise de la récupéraion des conras d'assurances-vie requalifiés en donaion OBJECTIFS Appréhender la naure d un conra d
TRAVAUX PRATIQUES N 5 INSTALLATION ELECTRIQUE DE LA CAGE D'ESCALIER DU BATIMENT A
UIMBERTEAU UIMBERTEAU TRAVAUX PRATIQUES 5 ISTALLATIO ELECTRIQUE DE LA CAE D'ESCALIER DU BATIMET A ELECTROTECHIQUE Seconde B.E.P. méiers de l'elecroechnique ELECTROTECHIQUE HABITAT Ver.. UIMBERTEAU TRAVAUX
EVALUATION DE LA FPL PAR LES APPRENANTS: CAS DU MASTER IDS
EVALUATION DE LA FPL PAR LES APPRENANTS: CAS DU MASTER IDS CEDRIC TAPSOBA Diplômé IDS Inern/ CARE Regional Program Coordinaor and Gender Specialiy Service from USAID zzz WA-WASH Program Tel: 70 77 73 03/
Annuités. I Définition : II Capitalisation : ( Valeur acquise par une suite d annuités constantes ) V n = a t
Annuiés I Définiion : On appelle annuiés des sommes payables à inervalles de emps déerminés e fixes. Les annuiés peuven servir à : - consiuer un capial ( annuiés de placemen ) - rembourser une dee ( annuiés
CHAPITRE 13. EXERCICES 13.2 1.a) 20,32 ± 0,055 b) 97,75 ± 0,4535 c) 1953,125 ± 23,4375. 2.±0,36π cm 3
Chapire Eercices de snhèse 6 CHAPITRE EXERCICES..a), ±,55 b) 97,75 ±,455 c) 95,5 ±,475.±,6π cm.a) 44,, erreur absolue de,5 e erreur relaive de, % b) 5,56, erreur absolue de,5 e erreur relaive de,9 % 4.a)
THÈSE. Pour l obtention du grade de Docteur de l Université de Paris I Panthéon-Sorbonne Discipline : Sciences Économiques
Universié de Paris I Panhéon Sorbonne U.F.R. de Sciences Économiques Année 2011 Numéro aribué par la bibliohèque 2 0 1 1 P A 0 1 0 0 5 7 THÈSE Pour l obenion du grade de Doceur de l Universié de Paris
Chapitre 9. Contrôle des risques immobiliers et marchés financiers
Capire 9 Conrôle des risques immobiliers e marcés financiers Les indices de prix immobiliers ne son pas uniquemen des indicaeurs consruis dans un bu descripif, mais peuven servir de référence pour le conrôle
Impact du vieillissement démographique sur l impôt prélevé sur les retraits des régimes privés de retraite
DOCUMENT DE TRAVAIL 2003-12 Impac du vieillissemen démographique sur l impô prélevé sur les rerais des régimes privés de reraie Séphane Girard Direcion de l analyse e du suivi des finances publiques Ce
CHELEM Commerce International
CHELEM Commerce Inernaional Méhodes de consrucion de la base de données du CEPII Alix de SAINT VAULRY Novembre 2013 1 Conenu de la base de données Flux croisés de commerce inernaional (exporaeur, imporaeur,
No 1996 13 Décembre. La coordination interne et externe des politiques économiques : une analyse dynamique. Fabrice Capoën Pierre Villa
No 996 3 Décembre La coordinaion inerne e exerne des poliiques économiques : une analyse dynamique Fabrice Capoën Pierre Villa CEPII, documen de ravail n 96-3 SOMMAIRE Résumé...5 Summary...7. La problémaique...9
Risque associé au contrat d assurance-vie pour la compagnie d assurance. par Christophe BERTHELOT, Mireille BOSSY et Nathalie PISTRE
Ce aricle es disponible en ligne à l adresse : hp://www.cairn.info/aricle.php?id_revue=ecop&id_numpublie=ecop_149&id_article=ecop_149_0073 Risque associé au conra d assurance-vie pour la compagnie d assurance
B34 - Modulation & Modems
G. Pinson - Physique Appliquée Modulaion - B34 / Caracérisiques d'un canal de communicaion B34 - Modulaion & Modems - Définiions * Half Duplex ou simplex : ransmission un sens à la fois ; exemple : alky-walky
Filtrage optimal. par Mohamed NAJIM Professeur à l École nationale supérieure d électronique et de radioélectricité de Bordeaux (ENSERB)
Filrage opimal par Mohamed NAJIM Professeur à l École naionale supérieure d élecronique e de radioélecricié de Bordeaux (ENSERB) Filre adapé Définiions Filre adapé dans le cas de brui blanc 3 3 Cas d un
Files d attente (1) F. Sur - ENSMN. Introduction. 1 Introduction. Vocabulaire Caractéristiques Notations de Kendall Loi de Little.
Cours de Tronc Commun Scienifique Recherche Opéraionnelle Les files d aene () Les files d aene () Frédéric Sur École des Mines de Nancy www.loria.fr/ sur/enseignemen/ro/ 5 /8 /8 Exemples de files d aene
Mathématiques financières. Peter Tankov
Mahémaiques financières Peer ankov Maser ISIFAR Ediion 13-14 Preface Objecifs du cours L obje de ce cours es la modélisaion financière en emps coninu. L objecif es d un coé de comprendre les bases de
Les Comptes Nationaux Trimestriels
REPUBLIQUE DU CAMEROUN Paix - Travail Parie ---------- INSTITUT NATIONAL DE LA STATISTIQUE ---------- REPUBLIC OF CAMEROON Peace - Work Faherland ---------- NATIONAL INSTITUTE OF STATISTICS ----------
Relation entre la Volatilité Implicite et la Volatilité Réalisée.
Relaion enre la Volailié Implicie e la Volailié Réalisée. Le cas des séries avec la coinégraion fracionnaire. Rappor de Recherche Présené par : Mario Vázquez Velasco Direceur de Recherche : Benoî Perron
Le mécanisme du multiplicateur (dit "multiplicateur keynésien") revisité
Le mécanisme du muliplicaeur (di "muliplicaeur kenésien") revisié Gabriel Galand (Ocobre 202) Résumé Le muliplicaeur kenésien remone à Kenes lui-même mais il es encore uilisé de nos jours, au moins par
CANAUX DE TRANSMISSION BRUITES
Canaux de ransmissions bruiés Ocobre 03 CUX DE TRSISSIO RUITES CORRECTIO TRVUX DIRIGES. oyer Canaux de ransmissions bruiés Ocobre 03. RUIT DE FOD Calculer le niveau absolu de brui hermique obenu pour une
GESTION DU RÉSULTAT : MESURE ET DÉMESURE 1 2 ème version révisée, août 2003
GESTION DU RÉSULTAT : MESURE ET DÉMESURE 1 2 ème version révisée, aoû 2003 Thomas JEANJEAN 2 Cahier de recherche du CEREG n 2003-13 Résumé : Depuis une vingaine d années, la noion d accruals discréionnaires
3 POLITIQUE D'ÉPARGNE
3 POLITIQUE D'ÉPARGNE 3. L épargne exogène e l'inefficience dynamique 3. Le modèle de Ramsey 3.3 L épargne opimale dans le modèle AK L'épargne des sociéés dépend largemen des goûs des agens, de faceurs
Un modèle de projection pour des contrats de retraite dans le cadre de l ORSA
Un modèle de proecion pour des conras de reraie dans le cadre de l ORSA - François Bonnin (Hiram Finance) - Floren Combes (MNRA) - Frédéric lanche (Universié Lyon 1, Laboraoire SAF) - Monassar Tammar (rim
Article. «Les effets à long terme des fonds de pension» Pascal Belan, Philippe Michel et Bertrand Wigniolle
Aricle «Les effes à long erme des fonds de pension» Pascal Belan, Philippe Michel e Berrand Wigniolle L'Acualié économique, vol 79, n 4, 003, p 457-480 Pour cier ce aricle, uiliser l'informaion suivane
Copules et dépendances : application pratique à la détermination du besoin en fonds propres d un assureur non vie
Copules e dépendances : applicaion praique à la déerminaion du besoin en fonds propres d un assureur non vie David Cadoux Insiu des Acuaires (IA) GE Insurance Soluions 07 rue Sain-Lazare, 75009 Paris FRANCE
COURS GESTION FINANCIERE A COURT TERME SEANCE 3 PLANS DE TRESORERIE. François LONGIN www.longin.fr
COURS GESTION FINANCIERE A COURT TERME SEANCE 3 PLANS DE TRESORERIE SEANCE 3 PLANS DE TRESORERIE Obje de la séance 3 : dans la séance 2, nous avons monré commen le besoin de financemen éai couver par des
Ecole des HEC Université de Lausanne FINANCE EMPIRIQUE. Eric Jondeau
Ecole des HEC Universié de Lausanne FINANCE EMPIRIQUE Eric Jondeau FINANCE EMPIRIQUE La prévisibilié des rendemens Eric Jondeau L hypohèse d efficience des marchés Moivaion L idée de base de l hypohèse
CHAPITRE VIII : Les circuits avec résistances ohmiques
CHAPITRE VIII : Les circuits avec résistances ohmiques VIII. 1 Ce chapitre porte sur les courants et les différences de potentiel dans les circuits. VIII.1 : Les résistances en série et en parallèle On
Estimation des matrices de trafics
Cédric Foruny 1/5 Esimaion des marices de rafics Cedric FORTUNY Direceur(s) de hèse : Jean Marie GARCIA e Olivier BRUN Laboraoire d accueil : LAAS & QoSDesign 7, av du Colonel Roche 31077 TOULOUSE Cedex
Mémoire présenté et soutenu en vue de l obtention
République du Cameroun Paix - Travail - Parie Universié de Yaoundé I Faculé des sciences Déparemen de Mahémaiques Maser de saisique Appliquée Republic of Cameroon Peace Wor Faherland The Universiy of Yaoundé
LE PARADOXE DES DEUX TRAINS
LE PARADOXE DES DEUX TRAINS Énoné du paradoxe Déaillons ou d abord le problème dans les ermes où il es souen présené On dispose de deux oies de hemins de fer parallèles e infinimen longues Enre les deux
Les deux déficits, budgétaire et du compte courant, sont-ils jumeaux? Une étude empirique dans le cas d une petite économie en développement
Les deux déficis, budgéaire e du compe couran, sonils jumeaux? Une éude empirique dans le cas d une peie économie en développemen (Version préliminaire) Aueur: Wissem AJILI Docorane CREFED Universié Paris
Fonction dont la variable est borne d intégration
[hp://mp.cpgedpydelome.fr] édié le 1 jille 14 Enoncés 1 Foncion don la variable es borne d inégraion Eercice 1 [ 1987 ] [correcion] Soi f : R R ne foncion conine. Jsifier qe les foncions g : R R sivanes
CHAPITRE 4 RÉPONSES AUX CHOCS D INFLATION : LES PAYS DU G7 DIFFÈRENT-ILS LES UNS DES AUTRES?
CHAPITRE RÉPONSES AUX CHOCS D INFLATION : LES PAYS DU G7 DIFFÈRENT-ILS LES UNS DES AUTRES? Les réponses de la poliique monéaire aux chocs d inflaion mondiaux on varié d un pays à l aure Le degré d exposiion
N d ordre Année 2008 THESE. présentée. devant l UNIVERSITE CLAUDE BERNARD - LYON 1. pour l obtention. du DIPLOME DE DOCTORAT. (arrêté du 7 août 2006)
N d ordre Année 28 HESE présenée devan l UNIVERSIE CLAUDE BERNARD - LYON pour l obenion du DILOME DE DOCORA (arrêé du 7 aoû 26) présenée e souenue publiquemen le par M. Mohamed HOUKARI IRE : Mesure du
GUIDE DES INDICES BOURSIERS
GUIDE DES INDICES BOURSIERS SOMMAIRE LA GAMME D INDICES.2 LA GESTION DES INDICES : LE COMITE DES INDICES BOURSIERS.4 METHODOLOGIE ET CALCUL DE L INDICE TUNINDEX ET DES INDICES SECTORIELS..5 I. COMPOSITION
SURVOL DE LA LITTÉRATURE SUR LES MODÈLES DE TAUX DE CHANGE D ÉQUILIBRE: ASPECTS THÉORIQUES ET DISCUSSIONS COMPARATIVES
Ankara Üniversiesi SBF Dergisi, Cil 66, No. 4, 2011, s. 125-152 SURVOL DE LA LITTÉRATURE SUR LES MODÈLES DE TAUX DE CHANGE D ÉQUILIBRE: ASPECTS THÉORIQUES ET DISCUSSIONS COMPARATIVES Dr. Akın Usupbeyli
DE L'ÉVALUATION DU RISQUE DE CRÉDIT
DE L'ÉALUAION DU RISQUE DE CRÉDI François-Éric Racico * Déparemen des sciences adminisraives Universié du Québec, Ouaouais Raymond héore Déparemen Sraégie des Affaires Universié du Québec, Monréal RePAd
Pouvoir de marché et transmission asymétrique des prix sur les marchés de produits vivriers au Bénin
C N R S U N I V E R S I T E D A U V E R G N E F A C U L T E D E S S C I E N C E S E C O N O M I Q U E S E T D E G E S T I O N CENTRE D ETUDES ET DE RECHERCHES SUR LE DEVELOPPEMENT INTER NATIONAL Pouvoir
Document de travail FRANCE ET ALLEMAGNE : UNE HISTOIRE DU DÉSAJUSTEMENT EUROPEEN. Mathilde Le Moigne OFCE et ENS ULM
Documen de ravail 2015 17 FRANCE ET ALLEMAGNE : UNE HISTOIRE DU DÉSAJUSTEMENT EUROPEEN Mahilde Le Moigne OFCE e ENS ULM Xavier Rago Présiden OFCE e chercheur CNRS Juin 2015 France e Allemagne : Une hisoire
Calcul Stochastique 2 Annie Millet
M - Mahémaiques Appliquées à l Économie e à la Finance Universié Paris 1 Spécialié : Modélisaion e Méhodes Mahémaiques en Économie e Finance Calcul Sochasique Annie Mille 15 14 13 1 11 1 9 8 7 6 5 4 3
EPARGNE RETRAITE ET REDISTRIBUTION *
EPARGNE RETRAITE ET REDISTRIBUTION * Alexis Direr (1) Version février 2008 Docweb no 0804 Alexis Direr (1) : Universié de Grenoble e LEA (INRA, PSE). Adresse : LEA, 48 bd Jourdan 75014 Paris. Téléphone
Formation Administrateur Server 2008 (Ref : IN4) Tout ce qu'il faut savoir sur Server 2008 OBJECTIFS LES PLUS DE LA FORMATION
COMUNDICOMPETENCES-TECHNIQUESDEL INGÉNIEUR Formaion Adminisraeur Server 2008 (Ref : IN4) SUPPORT PÉDAGOGIQUE INCLUS. OBJECTIFS Gérer des ressources e des compes avec Acive Direcory e Windows Server 2008
Séquence 2. Pourcentages. Sommaire
Séquence 2 Pourcenages Sommaire Pré-requis Évoluions e pourcenages Évoluions successives, évoluion réciproque Complémen sur calcularices e ableur Synhèse du cours Exercices d approfondissemen 1 1 Pré-requis
CAHIER 13-2000 ANALYSE DES CHOCS D'OFFRE ET DE DEMANDE DANS LA ZONE CFA : UNE MÉTHODE STRUCTURELLE D'AUTORÉGRESSION VECTORIELLE
CAHIER 13- ANALYSE DES CHOCS D'OFFRE ET DE DEMANDE DANS LA ZONE CFA : UNE MÉTHODE STRUCTURELLE D'AUTORÉGRESSION VECTORIELLE Jean-Michel BOSCO N'GOMA CAHIER 13- ANALYSE DES CHOCS D'OFFRE ET DE DEMANDE DANS
N 2008 09 Juin. Base de données CHELEM commerce international du CEPII. Alix de SAINT VAULRY
N 2008 09 Juin Base de données CHELEM commerce inernaional du CEPII Alix de SAINT VAULRY Base de données CHELEM commerce inernaional du CEPII Alix de SAINT VAULRY N 2008-09 Juin Base de données CHELEM
Sélection de portefeuilles et prédictibilité des rendements via la durée de l avantage concurrentiel 1
ASAC 008 Halifax, Nouvelle-Écosse Jacques Sain-Pierre (Professeur Tiulaire) Chawki Mouelhi (Éudian au Ph.D.) Faculé des sciences de l adminisraion Universié Laval Sélecion de porefeuilles e prédicibilié
Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.
Logique binaire I. L'algèbre de Boole L'algèbre de Boole est la partie des mathématiques, de la logique et de l'électronique qui s'intéresse aux opérations et aux fonctions sur les variables logiques.
2009-01 EFFICIENCE INFORMATIONNELLE DES 1948-2008 UNE VERIFICATION ECONOMETRIQUE MARCHES DE L OR A PARIS ET A LONDRES, DE LA FORME FAIBLE
009-01 EFFICIENCE INFORMATIONNELLE DES MARCHES DE L OR A PARIS ET A LONDRES, 1948-008 UNE VERIFICATION ECONOMETRIQUE DE LA FORME FAIBLE Thi Hong Van HOANG Efficience informaionnelle des marchés de l or
IFT1215 Introduction aux systèmes informatiques
Introduction aux circuits logiques de base IFT25 Architecture en couches Niveau 5 Niveau 4 Niveau 3 Niveau 2 Niveau Niveau Couche des langages d application Traduction (compilateur) Couche du langage d
Séminaire d Économie Publique
Séminaire d Économie Publique Les niveaux de dépenses d'infrasrucure son-ils opimaux dans les pays en développemen? Sonia Bassi, LAEP Discuan : Evans Salies, MATISSE & ADIS, U. Paris 11 Mardi 8 février
L impact de l activisme des fonds de pension américains : l exemple du Conseil des Investisseurs Institutionnels.
L impac de l acivisme des fonds de pension américains : l exemple du Conseil des Invesisseurs Insiuionnels. Fabrice HERVE * Docoran * Je iens à remercier ou pariculièremen Anne Lavigne e Consanin Mellios
Le passage des retraites de la répartition à la capitalisation obligatoire : des simulations à l'aide d'une maquette
No 2000 02 Janvier Le passage des reraies de la répariion à la capialisaion obligaoire : des simulaions à l'aide d'une maquee Pierre Villa CEPII, documen de ravail n 2000-02 TABLE DES MATIÈRES Résumé...
Système binaire. Algèbre booléenne
Algèbre booléenne Système binaire Système digital qui emploie des signaux à deux valeurs uniques En général, les digits employés sont 0 et 1, qu'on appelle bits (binary digits) Avantages: on peut utiliser
Une union pour les employeurs de l' conomie sociale. - grande Conférence sociale - les positionnements et propositions de l usgeres
Une union pour les employeurs de l' conomie sociale - grande Conférence sociale - les posiionnemens e proposiions de l usgeres Juille 212 1 «développer l emploi e en priorié l emploi des jeunes» le posiionnemen
PREMIÈRE PARTIE LIQUIDITÉ ET MICROSTRUCTURE. La Liquidité - De la Microstructure à la Gestion du Risque de Liquidité
PREMIÈRE PARTIE LIQUIDITÉ ET MICROSTRUCTURE Erwan Le Saou - Novembre 2000. 13 La microsrucure des marchés financiers ne serai cerainemen pas au cenre d une liéraure abondane si le concep de liquidié n
Groupe International Fiduciaire. pour l Expertise comptable et le Commissariat aux comptes
Groupe Inernaional Fiduciaire pour l Experise compable e le Commissaria aux compes L imporan es de ne jamais arrêer de se poser des quesions Alber EINSTEIN QUI SOMMES-NOUS? DES HOMMES > Une ÉQUIPE solidaire
LASTO Appuis élastomère
LASTO Appuis élsomère LASTO BLOCK F Appuis de déformion non-rmés Swizerlnd www.mgeb.ch Chmps d pplicion e specs imporns Chmps d pplicion LASTO BLOCK F es un ppui de déformion non-rmé en élsomère qui es
Pour 2014, le rythme de la reprise économique qui semble s annoncer,
En France, l invesissemen des enreprises reparira--il en 2014? Jean-François Eudeline Yaëlle Gorin Gabriel Sklénard Adrien Zakharchouk Déparemen de la conjoncure Pour 2014, le ryhme de la reprise économique
Une assurance chômage pour la zone euro
n 132 Juin 2014 Une assurance chômage pour la zone euro La muualisaion au niveau de la zone euro d'une composane de l'assurance chômage permerai de doer la zone euro d'un insrumen de solidarié nouveau,
Evaluation des Options avec Prime de Risque Variable
Evaluaion des Opions avec Prime de Risque Variable Lahouel NOUREDDINE Correspondance : LEGI-Ecole Polyechnique de Tunisie, BP : 743,078 La Marsa, Tunisie, Insiu Supérieur de Finance e de Fiscalié de Sousse.
Algèbre binaire et Circuits logiques (2007-2008)
Université Mohammed V Faculté des Sciences Département de Mathématiques et Informatique Filière : SMI Algèbre binaire et Circuits logiques (27-28) Prof. Abdelhakim El Imrani Plan. Algèbre de Boole 2. Circuits
Impact des futures normes IFRS sur la tarification et le provisionnement des contrats d assurance vie : mise en oeuvre de méthodes par simulation
Impac des fuures normes IFRS sur la arificaion e le provisionnemen des conras d assurance vie : mise en oeuvre de méhodes par simulaion Pierre-Emmanuel Thérond To cie his version: Pierre-Emmanuel Thérond.
MODÈLE BAYÉSIEN DE TARIFICATION DE L ASSURANCE DES FLOTTES DE VÉHICULES
Cahier de recherche 03-06 Sepembre 003 MODÈLE BAYÉSEN DE TARFCATON DE L ASSURANCE DES FLOTTES DE VÉHCULES Jean-François Angers, Universié de Monréal Denise Desardins, Universié de Monréal Georges Dionne,
