enseignants: fakhreddine ghaffari ([email protected]) olivier romain...

Click here to load reader

Upload: percevel-colin

Post on 03-Apr-2015

107 views

Category:

Documents


3 download

TRANSCRIPT

  • Page 1
  • Enseignants: Fakhreddine GHAFFARI ([email protected]) Olivier ROMAIN ([email protected]) Anne Universitaire 2012/2013 Fakhreddine GHAFFARI Olivier ROMAIN Electronique Numrique 1 Electronique Numrique ENSL1 (S1) 1 re anne IUT GEII
  • Page 2
  • Plan du cours Electronique Numrique 2 I. Chapitre 1: Introduction 1.Historique 2.Technologie 3.Bases de numration II. Chapitre 2: Lalgbre de Boole et les fonctions logiques 1.Les lois et rgles de lalgbre binaire 2.Les fonctions binaires lmentaires 3.Ecriture et simplification des fonctions logiques III. Chapitre 3: Les circuits logiques 1.Les circuits dencodage et de dcodage 2.Les circuits multiplexeurs et dmultiplexeurs Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 3
  • Plan du cours Electronique Numrique 3 IV.Chapitre 4: Les circuits arithmtiques 1.Les circuits additionneurs 2.Les circuits multiplieurs/diviseurs V. Chapitre 5: La logique squentielle 1.Llment de base : la bascule Asynchrone 2.Les bascules Synchrones 3.Les registres Synchrones Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 4
  • Chapitre 1: Introduction Electronique Numrique 4 Quest ce que llectronique Numrique ? Pourquoi et quoi a sert ? 2 grands types de systmes lectroniques : Les dispositifs lectroniques ANALOGIQUES (amplification, filtrage, antennes, GSM, etc.) Les dispositifs lectroniques NUMERIQUES (tous les autres systmes, informatique, TNT, rception numrique, etc.) Dans les systmes analogiques, on utilise les lois physiques du composant pour effectuer des oprations sur les grandeurs, exemple (qui doit devenir bien connu !) : Avantages : simplicit, rapidit et prcision Inconvnients : peu de souplesse, pas de programmation , forte sensibilit au bruit et aux variations Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 5
  • Introduction (suite) Fakhreddine GHAFFARI Philippe GUERINEAU Electronique Numrique 5 Dans les systmes lectroniques numriques, les grandeurs sont transformes en nombres et les composants sont plus facilement utilisables Tout se fait avec des Interrupteurs Les premiers ordinateurs ont t fabriqus, avec des lampes (anctre du transistor) et des relais lectromcaniques (des interrupteurs commands). Exemple : 1946 : Cration de l'ENIAC (Electronic Numerical Integrator and Computer) La programmation de ce calculateur s'effectue en recablant entre eux, ses diffrents lments. Compos de 19000 tubes, il pse 30 tonnes, occupe une surface de 72 m2 et consomme 140 kilowatts. Horloge : 100 KHz. Vitesse : environ 330 multiplications par seconde, soit beaucoup moins bien quune simple calculatrice. Be carefull : On ne remplace pas tout, de lanalogique au numrique ! Certaines fonctions restent seulement ralisables en analogique (ex : les antennes, les applications damplifications et de hautes tensions, etc.)
  • Page 6
  • Electronique Numrique 6 Llectronique numrique : Avantages : souplesse, volutivit, insensibilit au rayonnement et au bruit, Inconvnients : manque de prcision (encore aujourdhui), pas assez rapide Les systmes lectroniques modernes savent intgrer des parties analogiques aux parties numriques, exp : processeur de calcul + tte RF analogique = tlphonie portable. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 7
  • Un peu de Technologie Electronique Numrique 7 Un peu de technologie : La base de tous les systmes lectroniques numriques est le transistor, utilis comme un interrupteur command (le remplaant du relais lectromcanique des annes 1930). Il y a eu diffrentes technologies, et diffrents types de transistors. Aujourdhui, la technologie dominante sur le march est la technologie MOS (Metal Oxyde Silicon) et CMOS (Complementary MOS). Le Transistor MOS: commande interrupteur drain source Grille En fonction de la tension lectrique applique sur la grille, le transistor est quivalent (entre drain et source) un interrupteur presque parfait, ouvert ou ferm. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 8
  • Rcapitulatif Electronique Numrique 8 => Un dispositif lectronique numrique est constitu uniquement de transistors (les transistors complmentaires CMOS), qui sont utiliss comme des interrupteurs (entre source et drain) commands par la tension applique sur la grille. => Remarque : la technologie CMOS volue trs rapidement en faisant diminuer dun facteur 2 la taille des transistors, tous les 18 mois, pour atteindre aujourdhui plusieurs milliards de transistors sur une seule puce de silicium de quelque centaines de mm Toutes les grandeurs (tensions) lintrieur dun systme lectronique numrique (les tensions de grille de commande ou les tensions de sortie qui, elles mmes commandent dautres transistors) ne prennent que 2 tats : - tat 0 => tension VSS, (GND), 0V, = 0 - tat 1 => tension VDD, (VCC), quelque Volts, = 1 => Un systme 2 tats est un systme BINAIRE, dans lequel on applique Une algbre particulire => lalgbre de BOOL avec ses lois spcifiques. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 9
  • 1) Reprsentation des nombres en binaire Electronique Numrique 9 Parmi la vaste quantit dobjets mathmatiques sur lesquels on peut essayer de faire des calculs lectroniquement, nous nous intresserons qu deux catgories seulement : Les nombres entiers non signs : signs : ( 2, 50, 34, 10, 1, 123, ) ( -2, 50, -34, -10, 1, -123, ) Les nombres fractionnaires virgule fixe ou prcision finie virgule flottante ou nombres flottants ou, maladroitement, les nombres prcision infinie. Fakhreddine GHAFFARI Olivier ROMAIN Les bases de numration
  • Page 10
  • Reprsentation des nombres entiers Electronique Numrique 10 Dune manire gnrale, un nombre entier (positif) N peut scrire (se reprsenter) dans une base quelconque (B entier) de la manire suivante : => N est le nombre mathmatique (abstrait), => B est la base de reprsentation, => Ci sont les coefficients de la reprsentation de N dans la base B, => n correspond au nombre maximum de coefficients utiliss pour reprsenter N. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 11
  • Reprsentation dun nombre dcimal Electronique Numrique 11 en base 10 (dcimal ) en base 8 ( octal ) en base 2 (binaire ) Donc le nombre : se reprsente par : 145 en base 10 (dcimal), 221 en base 8 (octal), 10010001 en base 2 (binaire). Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 12
  • Reprsentation en binaire Electronique Numrique 12 En binaire, on peut donc reprsenter nimporte quel entier N avec M bits : Sur M bits, les nombres entiers positifs reprsentables sont limits : Exemple : Sur 4 bits => Sur 8 bits=> Sur 16 bits=> Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 13
  • Reprsentation en binaire (suite) Electronique Numrique 13 Cette reprsentation conduit naturellement au code binaire naturel : => on affecte chaque indice de la base un poids, en partant du plus faible ( droite) pour atteindre le plus fort ( gauche), tout comme en dcimale avec : les units, les dizaines, les centaines, C0 N (dcimal) 0 1 0 (=0) 1 0 0 0 1 2 3 1 1 0 0 0 0 1 1 1 1 0 0 0 01 11 1 7 6 5 4 0 0 0 0 0 0 0 0 C3C2C1 0000 2 .. Exemple : Soit N = 1010011 en binaire, quelle est sa valeur dcimale ? N(2) = 1010011 Do N(10) = 64+16+2+1=83 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 14
  • Exemple en octal Electronique Numrique 14 De mme, dans nimporte quelle base, exemple en octal : C0 N (dcimal) 0 1 0 1 0 0 2 3 2 3 0 0 0 0 4 60 07 5 7 6 5 4 C1 01 8 11 21 9 9 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 15
  • Reprsentation dans des bases multiples Electronique Numrique 15 Lorsque les nombres reprsents en binaire sont un peu trop longs , on prendra lhabitude de les reprsenter dans des bases multiples, afin de minimiser lexpression : 1 0 0 1 0 0 0 1en base 2 2 1 0 1en base 4 9 1en base 16 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 16
  • Choix de la base Electronique Numrique 16 Nimporte quelle reprsentation binaire dun nombre peut se rcrire de faon plus compacte en regroupant les bits : 2 par 2 pour la reprsentation en base 4 = 3 par 3 pour la reprsentation en base 8 = 4 par 4 pour la reprsentation en base 16 = Par habitude, on utilise couramment les bases : 2 (binaire) et 16 (hexadcimal). En base 16, il faut inventer des chiffres compris entre : 0 et 15 : 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F 10 11 1213 14 15 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 17
  • Reprsentation des nombres fractionnaires Electronique Numrique 17 Pour reprsenter les nombres rels fractionnaires, se pose le problme (comme en dcimal) de la prcision de reprsentation => jusqu quelle dcimale voulons nous reprsenter les nombres ? Autrement dit, quelle est la prcision (le quantum) de nos calculs ? 2 possibilits prcision fixe lavance (virgule fixe) prcision variable (virgule flottante => prcision infinie ) Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 18
  • Reprsentation en virgule fixe Electronique Numrique 18 On sinspire de la reprsentation dcimale : Si on dcide de toujours garder 3 chiffres aprs la virgule : on est en virgule fixe. La prcision maximale de reprsentation est : Cette reprsentation est strictement quivalente la reprsentation des entiers, un facteur dchelle prs. Nombre entierFacteur dchelle Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 19
  • Exemple dopration virgule fixe Electronique Numrique 19 Addition entire En binaire, on utilise la mme mthode : sur N bits :, avec : N = E + F E bitsF bits Partie entire sur E bits Partie fractionnaire sur F bits Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 20
  • Autre exemple Electronique Numrique 20 Partie entire sur 4 bitsPartie fractionnaire sur 5 bits Or : 13.65625 = 437 / 32 = 1101,10101 Ces 2 expressions sont rigoureusement identiques Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 21
  • Addition virgule fixe Electronique Numrique 21 13,65625 + 22,12501101,10101 10110,00100 100011,11001 + = Problme : comment trouver la reprsentation, en virgule fixe la mieux adapte au nombre rel donn ? 0,92 x 2 = 1.84 1 0,84 x 2 = 1.68 1 0,68 x 2 = 1.36 1 0,36 x 2 = 0.72 0 Exemple : 9,92La partie entire sur 4 bits : 1001 La partie fractionnaire sur 4 bits : 1110 Finalement : 9,92 va scrire : 1001,1110 => donc sur cod sur 8 bits 1001,1110 est exactement gal : 9,875 => cest la valeur arrondie : prs de 9,92 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 22
  • Transcodage dune base B vers la base 10 Electronique Numrique 22 Il suffit de calculer en base 10 la somme totale des puissances pondres de la base B. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 23
  • Transcodage Dcimal vers une base B Electronique Numrique 23 Mthode par soustractions successives Fakhreddine GHAFFARI Olivier ROMAIN Cette mthode utilise le dveloppement polynomial Algorithme Dresser une table donnant les valeurs des diffrentes puissances de la base B dans laquelle on convertit le nombre dcimal Au nombre dcimal donn, retrancher la plus grande puissance de B possible Rpter le processus partir des restes obtenus Remarque Cette mthode ne sapplique quaux nombres entiers
  • Page 24
  • Transcodage Dcimal vers une base B Electronique Numrique 24 Exemple Fakhreddine GHAFFARI Olivier ROMAIN Convertir 6718 (base 10) en octal:
  • Page 25
  • Transcodage Dcimal vers une base B Electronique Numrique 25 Mthode par divisions (ou multiplications) Fakhreddine GHAFFARI Olivier ROMAIN Mthode plus simple, plus rapide Convient aux nombres entiers et fractionnaires Tout nombre N, priori non entier, sera converti en considrant: Dune part sa partie entire, laquelle on appliquera la mthode des divisions successives Dautre part sa partie fractionnaire, laquelle on appliquera la mthode des multiplications successives
  • Page 26
  • Transcodage Dcimal vers une base B Electronique Numrique 26 Fakhreddine GHAFFARI Olivier ROMAIN Conversion de la partie entire Diviser le nombre convertir par la base du nouveau systme Conserver le reste Rpter le processus partir du nouveau quotient obtenu Arrter si le quotient est nul crire les restes partir du dernier et de gauche droite pour btenir le nombre en base B Exemple: convertir 358(10) en base 8
  • Page 27
  • Transcodage Dcimal vers une base B Electronique Numrique 27 Fakhreddine GHAFFARI Olivier ROMAIN Autre exemple: Convertir 254(10) vers la base 2 et vers la base 16?
  • Page 28
  • Transcodage Dcimal vers une base B Electronique Numrique 28 Fakhreddine GHAFFARI Olivier ROMAIN Conversion de la partie fractionnaire: Multiplier le nombre convertir par la base du nouveau systme Soustraire et conserver sa partie entire Rpter le processus partir de la nouvelle partie fractionnaire Arrter quand la prcision dsire est atteinte Exemple: convertir 0,732(10) en base 8
  • Page 29
  • Transcodage du binaire vers une base 2 et vice versa Electronique Numrique 29 Fakhreddine GHAFFARI Olivier ROMAIN Binaire vers Octal: Algorithme: Grouper les bits par blocs de 3 partir du bit de poids faibles Convertir ensuite directement ces blocs en octal Exemple: Octal vers Binaire: Algorithme: Traduire chaque chiffre du nombre en base 8 en nombre de 3 bits en base 2 Exemple:
  • Page 30
  • Transcodage du binaire vers une base 2 et vice versa Electronique Numrique 30 Fakhreddine GHAFFARI Olivier ROMAIN Binaire vers Hexadcimal: Algorithme: Grouper les bits par blocs de 4 partir du bit de poids faibles Convertir ensuite directement ces blocs en hexadcimal Exemple: Hexadcimal vers Binaire: Algorithme: Traduire chaque chiffre du nombre en base 16 en nombre de 4 bits en base 2 Exemple:
  • Page 31
  • Transcodage du Base i vers Base j Electronique Numrique 31 Fakhreddine GHAFFARI Olivier ROMAIN Les bases i et j sont toutes les deux des puissances de 2. On utilise alors la base 2 comme base relais : Les bases i et j ne sont pas toutes les deux des puissances de 2. On utilise alors la base 10 comme base relais
  • Page 32
  • Reprsentation binaire des nombres signs Electronique Numrique 32 Il existe plusieurs faons de reprsenter les nombres signs (positifs et ngatifs) La 1 ire manire consiste sinspirer de la reprsentation dcimale (-5) en reprsentant le signe (+ ou -) suivi de la valeur absolue 1 0 1 1 0 1 3 => 11 => -2 => 10 => Le signe (+ ou -) qui est une information binaire, est reprsent par 1 bit de plus (le bit de signe) avec le codage suivant : Bit de signe = 0 => nombre positif Bit de signe = 1 => nombre ngatif Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 33
  • Nombres signs : 1 ire mthode Electronique Numrique 33 1 ire consquence : il faut 1 bit supplmentaire pour reprsenter les nombres (quils soient positifs ou ngatifs) Au lieu de : positifs : ngatifs : Ltendue des valeurs est divise par 2 => la moiti pour les nombres positifs et lautre pour les nombres ngatifs. 2 ime consquence : il y a 2 reprsentations possibles du nombre : 0 => +0 ou -0 !!! Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 34
  • Nombres signs : 1 ire mthode (suite) Electronique Numrique 34 3 ime consquence : toute larithmtique binaire s applique sans changements sur les nombres positifs, mais pas sur les nombres ngatifs !!! Lors dune soustraction / addition, il faut dabord calculer le signe du rsultat en comparant les bits de signe et les valeurs absolues, comme en dcimal. (+5) + (-3) = + (5-3) (-10)+ (+5)= - (10-5) (-5)+(-10)= - (10+5) Cest assez compliqu !! Toutes ces consquences font quon utilise jamais cette reprsentation Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 35
  • Reprsentation en code complment 2 Electronique Numrique 35 Cette reprsentation exploite la rgle lmentaire de lalgbre de Boole : Lorsque le nombre A est cod sur N bits, cette rgle devient : Do : Or, ne se reprsente pas sur N bits (tous les nombres sont modulo 2) => Ou encore : Exemple : Rsultat = 0 sur le format du mot (cest--dire : 4 bits) La reprsentation de : - 7 sur 4 bits est donc : Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 36
  • Calcul de CC2 Electronique Numrique 36 Calculer loppos dun nombre en CC2 (code complment 2) revient donc calculer loppos (bit bit : cest le CC1) auquel il faut ajouter : 1 Cette rgle (de calcul) sapplique aussi bien pour calculer loppos dun nombre positif que pour calculer loppos dun nombre ngatif !! Exemple : calculons loppos de : -7 On retrouve bien videmment le nombre positif : +7 !! Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 37
  • Consquence du CC2 Electronique Numrique 37 1 ire consquence : il ny a quune seule reprsentation du 0 2 ime consquence : lorsque les nombres sont strictement positifs, toutes les oprations (addition, soustraction, multiplication, division) sappliquent normalement : 3 ime consquence : les oprations (addition, soustraction, multiplication, division) sappliquent galement sur les nombres ngatifs : Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 38
  • Consquence du CC2 (suite) Electronique Numrique 38 L aussi, on utilise un bit de plus pour reprsenter le signe => rduction de la dynamique : On a : valeurs positives ou nulle, soit 8 valeurs dans un format 4 bits (7 valeurs strictement positives et la valeur nulle ) On a : valeurs ngatives, soit 8 valeurs dans un format 4 bits Reprsentation du codage CC2 dans un format : 4 bits a0 Non signs 0 1 0 1 0 0 0 1 2 3 1 1 0 0 0 0 1 1 1 1 0 0 0 01 11 1 7 6 5 4 0 0 0 0 0 0 0 0 a3a2a1 00081 190 0 1 10 11 1 1 0 0 0 1 1 1 1 1 1 1 0 0 0 01 11 1 15 14 13 121 1 1 1 Signs CC2 0 1 2 3 7 6 5 4 -8 -7 -6 -5 -2 -3 -4 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 39
  • CC2 : gnralisation Electronique Numrique 39 Dune manire gnrale, sur N bits on peut reprsenter : en binaire naturel en Code Complment 2 : CC2 Cette reprsentation est utilise dans tous les ordinateurs pour reprsenter les entiers signs. Inconvnient : les relations dordre entre les entiers signs sont difficiles tablir, surtout autour du 0 0 Ce nombre est proche de 0, pourtant tous les bits sont 1 !! => Plus on sloigne de la reprsentation binaire naturelle du 0, plus la valeur reprsente en est proche !! Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 40
  • Le binaire dcal Electronique Numrique 40 a0 CC2 0 1 0 1 0 0 0 1 2 3 1 1 0 0 0 0 1 1 1 1 0 0 0 01 11 1 7 6 5 4 0 0 0 0 0 0 0 0 a3a2a1 000-81 10 0 1 1 1 0 0 0 1 1 1 1 1 1 1 0 0 0 01 11 1 1 1 1 1 Signs CC2 0 1 2 3 7 6 5 4 -8 -7 -6 -5 -2 -3 -4 -8 -7 -6 -5 -2 -3 -4 0 1 2 3 7 6 5 4 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 41
  • Calcul du CC2 : astuce Electronique Numrique 41 Pour calculer loppos dun nombre => en partant de la droite, on recopie les bits du nombre jusquau 1 ier 1 rencontr, ensuite on inverse les bits restants. Exemple : calculons loppos de : 2 20010 -21110 Sens de lecture Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 42
  • Electronique Numrique 42 Invente par le mathmaticien Georges BOOLE (1815-1864), lalgbre de BOOLE dfinit les rgles de calcul pour les oprations possibles sur des nombres binaires ( 2 tats) Une variable BOOLEENNE ne peut prendre que 2 tats : VRAI (TRUE) ou FAUX (FALSE) on parle de logique boolenne (ou de logique binaire), lorsquon associe des valeurs numriques aux tats : VRAI est quivalent 1 , quon appelle souvent : niveau 1. FAUX est quivalent 0 , quon appelle souvent : niveau 0. Il nexiste que 3 oprations lmentaires dans la logique boolenne : - opration NON (NOT) : cette opration revient fournir le complment de la valeur dentre (on parle galement dinversion) Si A = 1 alors S = 0 Si A = 0 alors S = 1 Chapitre 2: Algbre de Boole et fonctions logiques Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 43
  • Opration OU (OR) Electronique Numrique 43 -opration OU (OR) : cette opration revient fournir la somme logique des valeurs dentre (on parle galement dunion) : S = A + B => on prononce : S = A OU B (et non pas : S = A plus B) -Dfinition : S = 1 si au moins une des entres est gale 1, sinon S = 0 Correspondance lectrique : Mise en parallle Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 44
  • Opration ET (AND) Electronique Numrique 44 Mise en srie -opration ET (AND) : cette opration revient fournir le produit logique des valeurs dentre (on parle galement dintersection) : S = A B => on prononce : S = A ET B -Dfinition : S = 1 si toutes les entres sont gales 1, sinon S = 0 Correspondance lectrique : Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 45
  • Lois et rgles Electronique Numrique 45 Les oprations ET et OU sont commutatives : Les oprations ET et OU sont associatives : Lopration ET est distributive : Lopration OU est galement distributive ! : Attention : comme vous le savez, la distributivit de la somme nest vrai Quen algbre binaire !!! Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 46
  • Rgles et axiomes Electronique Numrique 46 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 47
  • Rgles (suite) Electronique Numrique 47 Dmonstration : en utilisant laxiome : A.1 = A A + A.B = (A.1) + (A.B) => on doit reconnatre la distributivit inverse du ET (A.1) + (A.B) = A. (1+B) = A => CQFD Dmonstration : on doit reconnatre la distributivit du OU => CQFD Montrer que : (A + B). (A+C) = A+BC Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 48
  • Thorme de DE MORGAN Electronique Numrique 48 A et B sont 2 variables binaires : On a : ; le complment du produit est gal la somme des complments On a : ; le complment de la somme est gal au produit des complments Application du thorme de DE MORGAN : Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 49
  • Les fonctions binaires lmentaires Electronique Numrique 49 Les N variables de la fonction Toutes les combinaisons Possibles des N variables La fonction calculer La valeur de la fonction, pour chaque combinaison des N variables dentre La table de vrit rpertorie toutes les valeurs que peut prendre la fonction, en fonction de toutes les combinaisons possibles des N variables dentre. La table de vrit: Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 50
  • Table de vrit, 1 et 2 variables Electronique Numrique 50 AS 1 seule variable => 2 combinaisons => 2 lignes dans la table de vrit 0 1 2 Variables => 4 combinaisons => 4 lignes dans la table de vrit AS 0 1 B 0 0 0 1 1 1 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 51
  • Table de vrit, 3 et plus variables Electronique Numrique 51 3 Variables => 8 combinaisons => 8 lignes dans la table de vrit AS 0 1 B 0 0 0 1 1 1 C 0 0 0 0 1 1 1 1 0 0 0 01 11 1 Gnralisation : une fonction binaire N variables peut prendre valeurs distinctes (possibles) donc => lignes dans sa table de vrit Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 52
  • Comment construire une table de vrit? Electronique Numrique 52 On insre autant de colonnes que de variables dentre de la fonction On insre autant de lignes que les : combinaisons. On implmente les variables dans la table, en commenant par la colonne de droite. On commence par la combinaison : tout 0 , sur la 1 ire ligne Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 53
  • Fonction : NON (NOT) Electronique Numrique 53 Table de vrit : Dfinition : ralise le complment logique de lentre (on parle galement dinversion logique). AS 0 1 1 0 1 variable => 2 lignes Dsignation : on prononce S = A bar Symbole : AS Ancienne norme Schma en transistors MOS : 1 SA Norme Europenne PMOS NMOS A S S = 1A =0A = 1S = 0 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 54
  • Fonction : ET (AND) Electronique Numrique 54 Table de vrit : Dfinition : vrai si toutes les entres sont vraies, sinon : faux. Dsignation : S = A.B on prononce S = A ET B Symbole : A S Ancienne norme & S Norme Europenne AS 0 1 0 0 B 0 0 0 1 0 1 1 1 B A B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 55
  • Fonction : OU (OR) Electronique Numrique 55 Table de vrit : Dfinition : vrai si au moins une des entres est vraie, sinon : faux. Dsignation : S = A + B on prononce S = A OU B Symbole : A S Ancienne norme 1 S Norme Europenne AS 0 1 0 1 B 0 0 0 1 1 1 1 1 B A B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 56
  • Fonction : NON ET (NAND) Electronique Numrique 56 Table de vrit : Dsignation : on prononce S = (A ET B) bar Symbole : A S Ancienne norme Schma en transistors MOS ? : & S Norme Europenne AS 0 1 1 1 B 0 0 0 1 1 0 1 1 B A B A B B S Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 57
  • Fonction : NON OU (NOR) Electronique Numrique 57 Table de vrit : Dsignation : on prononce S = (A OU B) bar Symbole : A S Ancienne norme Schma en transistors MOS : 1 S Norme Europenne AS 0 1 1 0 B 0 0 0 1 0 0 1 1 B A B B S A A B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 58
  • Fonction OU Exclusif (XOR) Electronique Numrique 58 Table de vrit : Symbole : A S Ancienne norme =1 S Norme Europenne AS 0 1 0 1 B 0 0 0 1 1 0 1 1 B A B Dsignation : on prononce S = (A xor B) dfinition : VRAI si un nombre impair dentres, VRAIE Application : La fonction est couramment utilise pour connatre la parit de plusieurs variables binaires => nous verrons cet exemple un peu plus tard. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 59
  • Fonction NON OU Exclusif (XNOR ) Electronique Numrique 59 Table de vrit : Symbole : A S Ancienne norme =1 S Norme Europenne AS 0 1 1 0 B 0 0 0 1 0 1 1 1 B A B Dsignation : on prononce S = (A xor B) bar dfinition : VRAI si un nombre pair dentres, VRAIE Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 60
  • Lecture dune fonction CMOS Electronique Numrique 60 Pour lire (ou raliser) une fonction CMOS, ralise partir dun rseau de transistor NMOS et dun rseau de transistors PMOS S = (complment du rseau NMOS) ou bien (rseau PMOS directement ) Exemple : A B B S Rseau PMOS => Rseau NMOS => Do : Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 61
  • Fonctions complmentes Electronique Numrique 61 Toutes les fonctions logiques (ou binaires) peuvent sexprimer partir des fonctions lmentaires : NON, ET et OU. En technologie CMOS il est plus facile de raliser les fonctions complmentes (NAND et NOR). A partir de ces fonctions lmentaires, on peut re-construire toutes les autres => en CMOS les portes NAND et NOR (surtout les NAND) sont des portes universelles NON ET OU Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 62
  • Fonctions partir de NOR Electronique Numrique 62 NON OU ET Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 63
  • Equivalence des expressions et des reprsentations graphiques Electronique Numrique 63 Toutes les fonctions boolennes peuvent se reprsenter graphiquement en utilisant les symboles standards. Tout schma avec des portes logiques peut scrire sous la forme dune fonction logique Les deux reprsentations sont quivalentes. Exemple: Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 64
  • Symboles gnraux Electronique Numrique 64 Remarque : On peut trouver, dans certains cas, des symboles plus gnraux : A B C Permet une reprsentation graphique plus compacte Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 65
  • Formes dcriture Electronique Numrique 65 Il existe 2 faons diffrentes dcrire une fonction boolenne : Sous forme de somme de produits (SDP) Sous forme de produit de sommes (PDS) Ces 2 formes dexpression sont duales Exemple : => Somme de produits => Produit de sommes Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 66
  • Lecture : sdp ou pds Electronique Numrique 66 Lors de la construction dun systme numrique, on se donne gnralement la table de vrit de la fonction raliser A partir de la table de vrit, on peut extraire directement lexpression de la fonction sous forme dune somme de produit ou dun produit de somme Af 0 1 0 0 B 0 0 0 1 1 0 1 1 C 0 0 0 0 1 1 1 1 0 0 0 01 11 1 0 1 1 1 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 67
  • Lecture sdp Electronique Numrique 67 Af 0 1 0 0 B 0 0 0 1 1 0 1 1 C 0 0 0 0 1 1 1 1 0 0 0 01 11 1 0 1 1 1 mintermes Cest une somme de produits standards car chaque terme contient toutes les variables du domaine de dfinition de la fonction : ce sont des mintermes Le principe de lecture sous forme dune somme de produits (sdp) est dnumrer les combinaisons dentre qui rendent la fonction VRAIE. Dans une somme, si lun des termes est VRAI alors la somme est VRAIE Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 68
  • Lecture pds Electronique Numrique 68 Puisquil existe une relation de dualit entre les sommes et les produits (DE MORGAN), on peut exprimer aussi la fonction sous la forme dun produit de sommes, => On numre les combinaisons dentre qui rendent la fonction FAUSSE en complmentant les variables Revenons notre exemple : A f 0 1 0 0 B 0 0 0 1 1 0 1 1 C 0 0 0 0 1 1 1 1 0 0 0 01 11 1 0 1 1 1 Cest un produit de sommes standards car chaque terme contient toutes les variables du domaine de dfinition de la fonction, ce sont des maxtermes. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 69
  • Sdp pds Electronique Numrique 69 Les deux formes dexpression sont strictement quivalentes, on peut passer de lune lautre par lapplication du thorme de DE MORGAN. Toutefois, le nombre de termes peut tre diffrents ; cest le principe de la simplification des fonctions logiques. Exemple : Af 0 1 1 0 B 0 0 0 1 0 1 1 1 Lecture sdp : Lecture pds : Remarque : on se doit de reconnatre la fonction : XNOR Dmonstration de lquivalence : On obtient bien : fpds = fsdp => CQFD Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 70
  • Reprsentation du XOR Electronique Numrique 70 Schma 5 portes Les 2 formes sont quivalentes et minimales Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 71
  • Fsdp (ou Fpds) table de vrit Electronique Numrique 71 On peut galement passer dune somme de produits (ou dun produit de sommes) une table de vrit : Exemple :Le domaine de dfinition est : A,B,C => Il faut transformer lexpression pour nutiliser que des mintermes Af 0 1 0 1 B 0 0 0 1 0 0 1 1 C 0 0 0 0 1 1 1 1 0 0 0 01 11 1 0 1 1 1 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 72
  • Simplification Electronique Numrique 72 La simplification de lcriture dune fonction logique permet de la raliser en utilisant plus ou moins de portes lmentaires (ET, OU, NON, etc) Moins de portes : Moins de fils, moins de transistors, Moins de courant, moins de consommation, Moins de surface, plus rapide. Donc ASSUREMMENT GAGNANT !!! Il est donc important de rduire, simplifier, les fonctions logiques. La simplification dune fonction consiste rduire le nombre de termes ou, dune faon gnrale, rduire le nombre de variables dans les termes (maxtermes ou mintermes) La simplification dune fonction consiste appliquer les rgles de base de lalgbre de boole et/ou le thorme de DE MORGAN Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 73
  • Simplification : exemple Electronique Numrique 73 Af 0 1 1 0 B 0 0 0 1 1 1 1 1 C 0 0 0 0 1 1 1 1 0 0 0 01 11 1 1 1 0 0 Or, Fsdp peut se simplifier : Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 74
  • Simplification difficile ! Electronique Numrique 74 Malheureusement, appliquer les rgles de lalgbre de Boole sur des expressions trs compliques (plus de 4 ou 5 variables), peut devenir difficile, voire impossible et on est pas sr darriver toujours la meilleure simplification. Pour pallier ce problme on va utiliser la technique de rduction par les tableaux de KARNAUGH Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 75
  • Tableau de KARNAUGH Electronique Numrique 75 Dans une table de vrit, la simplification dune fonction consiste supprimer une variable (exp : ) Cela consiste donc regrouper les 1 de la table 2 par 2 (suppression d1 variable, 4 par 4 (suppression de 2 variables), 8 par 8, etc. Pour faciliter ces regroupements, on utilise une reprsentation diffrente : les tableaux de KARNAUGH Le tableau de Karnaugh est une reprsentation (comme son nom lindique), en 2 dimensions, cest--dire en lignes / colonnes. On distribuera les variables sur les lignes et les colonnes, de faon ce quil ny ait quune seule variable qui change quand on passe dune case du tableau une des cases adjacentes. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 76
  • Construction tableau : 1, 2 et 3 variables Electronique Numrique 76 A=0 A=1 f A=0 A=1 f B=0 B=1 A=0 B=0 A=1 B=0 f C=0 C=1 A=1 B=1 A=0 B=1 f C A Tableau 1 variable => 2 cases Tableau 2 variables => 4 cases Tableau 3 variables =>8 cases Reprsentations identiques B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 77
  • Construction tableau : gnralisation Electronique Numrique 77 Si une fonction est dfinie laide de N variables, la table de vrit comportera : lignes, le tableau de Karnaugh correspondant comportera cases. Do la reprsentation pour une fonction dfinie avec 4 variables dentre : Do la reprsentation pour une fonction dfinie avec 5 variables dentre : f E D C B A f C D A B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 78
  • Exemple tableau de Karnaugh Electronique Numrique 78 Soit la fonction : 10 fsdp 00 C 11 11 B On remplit le tableau de Karnaugh avec les 1 de la fonction et on le complte avec des 0 On peut voir sur cet exemple que lon peut faire un groupement de 4 cases adjacentes => cela nous amnera supprimer 2 variables dans lexpression de la fonction A Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 79
  • Groupements dans un tableau de Karnaugh Electronique Numrique 79 Nous lavons dj dit : la simplification revient supprimer un maximum de variables dans lexpression de la fonction, cest pour cela (faire des groupements) que le tableau de Karnaugh est trs utile, un groupement de 2 cases reviendra supprimer 1 variables, un groupement de 4 cases reviendra supprimer 2 variables, un groupement de 8 cases reviendra supprimer 3 variables, un groupement de 16 cases reviendra supprimer 4 variables, un groupement de cases reviendra supprimer K variables, Si une fonction est dfinie avec N variables, et que lon fait un groupement de : cases, alors la simplification fera que la fonction sexprimera en fonction de : N K variables. Vous laurez compris, simplifier au maximum revient chercher faire des groupements de taille maximale. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 80
  • Groupements dans un tableau de Karnaugh (suite) Electronique Numrique 80 pour faire tous les groupements possibles dans le tableau de Karnaugh, il faut considrer le tableau qui se replie sur lui-mme, en horizontal comme en vertical, il faut systmatiquement penser ces 2 symtries cylindriques, on peut mme parler, en gnralisant de symtrie sphrique. Rcapitulatif : Dans lobjectif darriver la simplification optimale (la meilleure), il faut suivre la rgle suivante : Faire un nombre minimal de groupements de taille maximale. Les groupements se font obligatoirement avec des cases adjacentes, donc pas en diagonale, la taille des groupements est en puissance de 2 (1 variable binaire = 2 tats), Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 81
  • Exemple de groupements Electronique Numrique 81 Soit la fonction : f, dfinie partir de 3 variables (A, B et C) 10 f 00 C 11 11 A Il reste des 1 (et tant que) il faut nouveau chercher faire un groupement de taille maximale => 4 cases : NON => 2 cases : OUI (grce la symtrie horizontale) => 1 groupement de 2 cases => expression en fonction de 2 variables (toujours le : N K) => gr(2) = Dans ce cas la taille maximale est : 4 cases => expression du groupement en fonction de : 1 variable (rappelez vous du : N K) Pour lire un groupement (donner son expression) : on liste les variables qui ne changent pas dtat dans le groupement => ici cest la variable : B, qui ne change pas dans le groupement) => gr(4) = B Au final : F = B + B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 82
  • Exemple (suite) Electronique Numrique 82 10 f 00 C 11 11 B Une autre ide : grouper les 0 => cela revient exprimer le complment de la fonction Gr(2)1 = Gr(2)2 = Do lexpression de : Donc : On trouve bien videmment le mme rsultat, ce qui montre que cette ide peut se rvler efficace dans certains cas, peu de 0 . A Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 83
  • Exemple (suite) Electronique Numrique 83 10 f 00 C 11 11 A Gr(2)1 Gr(2)2 = On peut aussi retrouver avec les regroupements de 0 la Fpds => B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 84
  • Autre exemple Electronique Numrique 84 11 f 01 C 00 01 A Gr(2)1 Gr(2)2 = Pas de groupement possible => cette case sexprime en fonction de toutes les variables Gr(1) B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 85
  • Chevauchement des groupements Electronique Numrique 85 1 f 1 D 1 1 A 1 11 1 1 Les groupement peuvent se chevaucher, cest le cas ici avec le groupement de 4 cases (vert) et le groupement de 2 cases (bleu) Nous pouvons donc exprimer la fonction f: B C 0 0 0 0 00 0 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 86
  • Cas indtermins Electronique Numrique 86 Lorsque certaines combinaisons sont indiffrentes, ou lorsque ces cas ne peuvent se produire, les valeurs correspondantes de la fonction sont ni 0 , ni 1 , elles sont notes : X Af 0 1 1 X B 0 0 0 1 1 1 1 1 C 0 0 0 0 1 1 1 1 0 0 0 01 11 1 X X 0 0 1X 00 C 11 XX f A Remarque : les valeurs indiffrentes peuvent tre considres comme des 0 ou des 1 (mais pas les 2 !!!), selon les possibilits de groupements (le plus grand possible). Des lors quune valeur X aura t utilise dans un groupement (de 1 pour une Fsdp, de 0 pour une Fpds), alors la valeur X est dfinitivement transforme dans tout le tableau B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 87
  • Fonction plusieurs variables Electronique Numrique 87 A S2 0 1 0 0 B 0 0 0 1 1 1 1 1 C 0 0 0 0 1 1 1 1 0 0 0 01 11 1 0 0 1 1 0 0 1 1 1 0 1 1 S1 Lorsque le cahier des charges (besoin du client !) donne un systme contenant plusieurs sorties, dfinies avec les mmes entres, alors on ajoute autant de colonnes droite que de variables de sorties supplmentaires la table de vrit, et on crera autant de tableau de Karnaugh que de variables de sortie. 00 11 C 11 S1 A 00 00 11 C 11 S2 A 10 B B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 88
  • Fonction plusieurs sorties (suite) Electronique Numrique 88 00 11 C 11 S2 A 10 Dans cet exemple il y avait une autre possibilit de groupements : 1 & =1 S1 S2 C B A B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 89
  • Exemples reconnatre Electronique Numrique 89 01 f 10 C A 10 f 01 C A 01 10 C 01 f A 10 01 01 C 01 f A 01 B B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 90
  • Exemples reconnatre (suite 1) Electronique Numrique 90 00 11 C 11 f A 00 01 10 C 10 f A 01 11 00 C 00 f A 11 10 01 C 01 f A 10 B B B B Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 91
  • Exemples reconnatre (suite 2) Electronique Numrique 91 1 f 1 D 1 1 A 1 1 1 1 0 f 0 D A 0 0 BB C C Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 92
  • Les circuits logiques Electronique Numrique 92 Maintenant que nous pouvons interprter le cahier des charges dun systme logique combinatoire (une table de vrit 1 ou plusieurs sorties) et simplifier les expressions logiques (par les rgles de lalgbre de Boole ou par lutilisation des tableaux de Karnaugh) pour enfin dessiner (ou construire) le systme laide des portes lmentaires : ET, OU, ). Que peut-on faire avec a ? => Tout simplement construire (concevoir, designer ) des dispositifs de plus en plus complexes en associant des sous-ensembles entre eux : Sous-ens 1 Sous-ens 2 Sous-ens 3 etc Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 93
  • Fonctions gnrales Electronique Numrique 93 Parmi ces sous-ensembles, certains ralisent des fonctions assez gnrales que lon va retrouver assez systmatiquement : Les codeurs, Les dcodeurs, Les multiplexeurs, Les dmultiplexeurs. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 94
  • Les circuits dencodage et de dcodage Electronique Numrique 94 Dune faon gnrale, les codeurs (encodeurs) et les dcodeurs se reprsentent de la faon suivante :... N entres M sorties Les M sorties reprsentent le numro de lentre active considre Exemple : Si lentre numro 5 est active (par exemple au niveau 1 ), alors les sorties de lencodeur reprsentent la valeur : 5 Lencodeur Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 95
  • Le dcodage Electronique Numrique 95... M entres N sorties Dans le dcodeur, cest la sortie correspondant au numro prsent lentre, qui sera active. Le dcodeur On voit apparatre ici la notion de numro, et donc de nombre, reprsent par un certain nombre de signaux logiques. Il existe plusieurs manires de reprsenter les nombres en logique binaire : Le code binaire naturel, le code GRAY (ou binaire rflchi), le code BCD (Dcimal Cod Binaire). Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 96
  • Codage des nombres en binaire Electronique Numrique 96 Lorsque nous utilisons plusieurs variables Boolennes (ou binaires) pour reprsenter un nombre, on parle de codage en bits (Binary elements). Par convention, les bits sont numrots et scrivent de la faon suivante : : un nombre cod par 4 bits Bit de poids le plus fort (MSB) Bit de poids le plus faible (LSB) Comme en dcimal Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 97
  • Le code binaire naturel Electronique Numrique 97 a0 Nombre quivalent 0 1 0 1 0 0 0 1 2 3 1 1 0 0 0 0 1 1 1 1 0 0 0 01 11 1 7 6 5 4 0 0 0 0 0 0 0 0 a3a2a1 00081 Cest la numrotation utilise par dfaut dans les tables de vrit. Le nombre reprsente le n de la ligne dans la table. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 98
  • Le code de GRAY (binaire rflchi) Electronique Numrique 98 a0 Nombre quivalent 0 1 0 1 0 0 1 0 2 3 1 1 0 0 0 0 1 1 1 1 1 1 0 10 00 1 7 6 5 4 0 0 0 0 0 0 0 0 a3a2a1 10081 Cest le code utilis dans les tableaux de Karnaugh, car entre chaque ligne de la table, seulement une variable change, on a ainsi cr des cases adjacentes dans le tableau de Karnaugh. Rgle de formation du code de Gray : Soit un nombre N en binaire pur, pour obtenir son quivalent : n en binaire rflchi, il suffit deffectuer lopration suivante : Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 99
  • Construction du code de Gray Electronique Numrique 99 Rgle de formation du code de Gray : Soit un nombre N en binaire pur, pour obtenir son quivalent : n en binaire rflchi, il suffit deffectuer lopration suivante : Exemple : Soit N : 0111, nous avons alors : 2N = 1110, On effectue le ou exclusif : 0111 1110 ------- 1001 On effectue la division par 2 : Nous avons alors, pour N = 0111 en binaire pur, n = 0100 en binaire rflchi. Remarque : multiplier par 2 revient dcaler dun rang vers la gauche, tandis que diviser par 2 revient dcaler dun rang vers la droite Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 100
  • Codage en BCD Electronique Numrique 100 Le codage en BCD (Binary Coded Decimal), dcimale cod en binaire, consiste ne reprsenter que les nombres dcimaux par paquet de 4 bits (quartet) : a0 Nombre dcimal 0 1 0 1 0 0 0 1 2 3 1 1 0 0 0 0 1 1 1 1 0 0 0 01 11 1 7 6 5 4 0 0 0 0 0 0 0 0 a3a2a1 00081 190 0 1 X (10) X (11) 1 1 0 0 0 1 1 1 1 1 1 1 0 0 0 01 11 1 X (15) X (14) X (13) X (12)1 1 1 1 Puisque nous utilisons 4 bits pour coder, nous avons 16 possibilits de nombre distincts, et en dcimale nous nen utilisons que 10, cest pourquoi les 6 dernires sont interdites dans le code BCD 6 combinaisons interdites Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 101
  • Codage BCD plusieurs chiffres Electronique Numrique 101 Pour reprsenter un nombre dcimal 2 chiffres en BCD, on utilisera 2 paquets de 4 bits (2 quartets) Exemple : 3 4 dcimal 00110100 Ce codage est surtout utilis pour laffichage des nombres des nombres dcimaux, son efficacit nest pas grande puisquil nutilise pas toutes les possibilits du codage) Lorsquun nombre est reprsent par N valeurs binaires, on dit quil est cod sur : N bits. On le reprsente de la faon suivante : N Nombre Il y a N bits, => donc N signaux binaires => donc N fils lectriques En binaire naturel comme en code gray, un nombre cod sur N bits peut prendre toutes les valeurs comprises entre : 0 et, (soit nombres diffrents, on en verra un peu plus sur les nombres cods en binaire Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 102
  • La fonction dcodage Electronique Numrique 102...... N entres sorties Le circuit dcodeur : N Code binaire naturel On peut donc maintenant tablir la table de vrit dun dcodeur (binaire) Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 103
  • Dcodeur 1 et 2 entres Electronique Numrique 103 0 1 e s0 s1 e0 0 1 0 0 0 1 1 1 e1 e 0 1 s1 0 1 s0 1 0 Do : 0 3 e s0 s3 2 1 s1 2 s2 0 0 0 0 1 0 0 1 s3s0 1 0 0 1 0 0 0 0 s1 Do : Dcodeur 1 entre et 2 sorties Dcodeur 2 entres et 4 sorties => On peut, bien sur, construire nimporte quel dcodeur de la mme manire, dailleurs une dfinition usuelle du dcodeur est : 1 sortie active parmi les : possibles. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 104
  • Les circuits dencodage Electronique Numrique 104...... entres N sorties Lencodeur Le circuit dencodage (lencodeur) ralise la fonction inverse du dcodeur : Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 105
  • Encodeurs 1 et 2 sorties Electronique Numrique 105 e1 s0 0 1 0 0 0 1 1 1 s1 s 0 1 e1 0 1 e0 1 0 e2 0 0 0 0 1 0 0 1 e3e0 1 0 0 1 0 0 0 0 e1 encodeur 2 entres et 1 sortie e0 s encodeur 4 entres et 2 sorties e3 e0 s e1 e2 2 Attention : Attention : ne pas reprsenter toutes les combinaisons possibles ! Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 106
  • Encodeur prioritaire Electronique Numrique 106 Lencodeur prioritaire a t cr pour pallier le fait que plusieurs entres peuvent tre actives simultanment : s0 0 1 0 0 0 1 1 1 s1 e2 0 0 0 0 1 X 0 1 e3e0 1 X 0 1 X X X X e1 X : signifie que lon ne tient pas compte de cette valeur (dont care) Lentre : e1 est prioritaire sur : e0 Lentre : e3 est la plus prioritaire 000000 Il peut exister la combinaison : aucune entre active. Dans ce cas, cest le constructeur qui dcide de la valeur des sorties Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 107
  • Multiplexage et dmultiplexage Electronique Numrique 107 Ces circuits trs largement utiliss permettent de raliser des oprations daiguillage. e0 e1 sel s Si sel = 0 alors s = e0 Si sel = 1 alors s = e1 Ceci est un multiplexeur : 2 vers 1 Pour raliser la fonction multiplexeur lmentaire, on utilise 2 proprits intressantes des portes : ET et OU. - la valeur 0 est llment nul de la fonction ET - la valeur 0 est llment neutre de la fonction OU - la valeur 1 est llment neutre de la fonction ET Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 108
  • lment neutre Electronique Numrique 108 Si sel = 0 alors s = 0 Si sel = 1 alors s = e & e sel s 0 0 0 1 se 0 1 0 0 0 1 1 1 1 e0 e1 s 0 1 1 1 se0 0 1 0 0 0 1 1 1 e1 Si e0 = 0 alors s = e1 Si e1 = 0 alors s = e0 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 109
  • Multiplexeur 2 vers 1 Electronique Numrique 109 0 1 0 1 s sel 0 0 0 0 e0 0 1 0 0 0 1 1 1 e1 0 0 1 1 1 1 1 1 0 1 0 0 0 1 1 1 On peut crire cette table plus simplement : 0 1 0 1 s sel 0 0 1 1 e0 0 1 X X X X 0 1 e1 Encore plus simplement : e0e0 e1 s 0 1 sel Tableau de Karnaugh associ : 01 00 sel 10 s e1 11 e0 & e1 & e0 1 s 1 sel La porte ET sert dinterrupteur (de slecteur) Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 110
  • Multiplexeurs N vers 1 Electronique Numrique 110 e0 en bits de slection s N entres 1 seule sortie e1...... Dans le cas gnral (simple), N est une puissance de 2, ce qui donne : - Pour 4 entres => 2 bits de slection - Pour 8 entres => 3 bits de slection - Pour 16 entres => 4 bits de slection Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 111
  • Multiplexeurs 4 vers 1 Electronique Numrique 111 e0 e3 s e1 e2 00 01 10 11 sel0sel1 e0 e1 e2 e3 s sel0 0 1 0 1 e0 X X X X X X X e1 sel1 0 0 1 1 e2 X e1 X X e2 X X e3 S = e0 si sel[1.0] = 00 S = e1 si sel[1.0] = 01 S = e2 si sel[1.0] = 10 S = e3 si sel[1.0] = 11 On peut raliser facilement ce multiplexeur avec des portes ET, 1 porte OU et 1 dcodeur 2 entres 4 sorties Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 112
  • Ralisation du multiplexeur 4 vers 1 Electronique Numrique 112 & & & & 1 0 1 2 3 s sel1 e0 e1 e2 e3 Le dcodeur et les portes ET permettent la slection de lentre, tandis que la porte OU assure le mlange sel0 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 113
  • Dmultiplexeurs 1 vers N Electronique Numrique 113 s0 sn bits de slection N sorties 1 seule entre s1...... Lentre est dirige vers la sortie correspondant au numro prsent sur les entres de slection. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 114
  • Dmultiplexeurs 1 vers 4 Electronique Numrique 114 s0 sn sel0 e s1 s3 s2 sel1 0 0 0 0 s3 sel0 0 0 1 1 e 0 1 0 1 sel1 0 0 0 0 0 0 0 0 s2 0 0 0 1 s1 0 1 0 0 s0 0 0 0 1 0 0 1 1 0 1 0 1 1 1 1 1 0 1 0 0 0 0 0 0 0 0 0 0 En plus compact : 0 0 0 e s3 sel0 0 0 1 1 sel1 0 0 0 0 0 0 e 0 s2 0 e 0 0 s1 e 0 0 0 s0 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 115
  • Dmultiplexeurs 1 vers 4 (suite) Electronique Numrique 115 & & & & 0 1 2 3 s0 sel1 e s1 s2 s3 sel0 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 116
  • Multiplexeurs / dmultiplexeurs parallles Electronique Numrique 116 On a vu les quations et les schmas des circuits mux/demux travaillant sur des signaux binaires 1 bit. Dans certains cas, on dsire raliser les fonctions mux/demux travaillant sur des mots de plusieurs bits : A sel0 E B D C sel1 N N N N N E est un mot dentre de N bits, cest--dire compos des bits : EN, ., E2, E1, E0 A est un mot de sortie de N bits, cest--dire compos des bits : AN, ., A2, A1, A0 Il en est de mme pour les mots de sortie : B, C et D 0 0 0 e s3 sel0 0 0 1 1 sel1 0 0 0 0 0 0 e 0 s2 0 e 0 0 s1 e 0 0 0 s0 Rappel: 1 demux 1 vers 4 sur 1 bit, Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 117
  • Electronique Numrique 117 0 0 0 E D sel0 0 0 1 1 sel1 0 0 0 0 0 0 E 0 C 0 E 0 0 B E 0 0 0 A Dans ce cas, le dmultiplexeur possde la table de vrit suivante : Se traduit par : Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 118
  • Dmultiplexeur 1 vers 4 mots de N bits lectronique Numrique 118 Un dmultiplexeur 1 vers 4 4 bits est construit avec 4 dmultiplexeurs 1 vers 4 1 bit en parallle (les entres de slection tant les mmes). sel0 sel1 D3 C3 B3 A3 sel0 sel1 D2 C2 B2 A2 sel0 sel1 D1 C1 B1 A1 sel0 sel1 D0 C0 B0 A0 E3E2E1E0 E D3 D2D1D0 D C3 C2C1C0 C B3 B2B1B0 B A3 A2A1A0 A Ce qui est vrai pour le circuit dmultiplexeur est valable de la mme manire avec les multiplexeurs. 1 Mux 16 bits 8 vers 1 = 16 Mux 1 bit 8 vers 1. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 119
  • Chapitre 3 : les circuits arithmtiques Electronique Numrique 119 Lalgbre de Boole (algbre binaire) et les portes logiques lmentaires permettent la ralisation des circuits qui effectuent des calculs sur des nombres. => cest le cas, naturellement, de nimporte quel microprocesseur dont le rle, entre autre, est deffectuer des calculs. => Ces calculs seffectuent sur des nombres mathmatiques quil est donc ncessaire de reprsenter en binaire. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 120
  • Calculs algbriques sur entiers positifs Electronique Numrique 120 Sur les reprsentations binaires naturelles des entiers positifs tous les calculs algbriques sont possibles : Addition, soustraction, multiplication et division Exemple : Problme : En base 2, le chiffre 2 nexiste pas, pour pallier ce problme, on va propager vers la gauche une ventuelle retenue => cest ainsi que vous avez appris compter lcole primaire ! Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 121
  • Exemple daddition Electronique Numrique 121 0 1 1 0 1 1 1 0 0 111 0 1 1 0 00 37 => 100101 => 23 => 010111 => 001111 Retenue => + = Mthode : faire laddition bit bit, en commenant par le LSB et en propageant sil y a lieu, la retenue sur le rang suprieur. Effectuer lopration : a + b = c revient faire lopration suivante : (a + b) + ri = ri + b + a = c Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 122
  • Opration de multiplication Electronique Numrique 122 0 1 1 0 1 1 0 00 101 101 * = 000 + + 11011 000 Exemple : 3=> *5=> Remarque : Si A et B sont au format : N bits, alors le produit A*B sera au format : 2N bits Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 123
  • Opration de soustraction Electronique Numrique 123 0 1 1 0 1 1 0 10 5 => 101 => 3 => 011 => 010 Retenue => - = La retenue de soustraction qui se propage vers le rang suprieur nomme : borrow Nous verrons plus tard, la ralisation de la division des entiers Lorsquon ralise des soustractions, il se peut que le rsultat soit ngatif, => Problme => comment coder des nombres ngatifs ? Effectuer lopration : a - b = c revient faire lopration suivante : (a - b) - ri = a - b - ri = c Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 124
  • Le circuit additionneur Electronique Numrique 124 Ladditionneur lmentaire (demi additionneur) On veut faire lopration : a + b = c, cela donne la table de vrit suivante : 0 1 1 ? c b 0 1 0 0 0 1 1 1 a Pour la dernire ligne de cette table de vrit, on voit que le rsultat nest pas suffisant => il faut rajouter une sortie qui reprsente la retenue, a propager sur le rang dindice suprieur 0 0 0 1 r b 0 1 0 0 0 1 1 1 a 0 1 1 0 c On doit donc rajouter la sortie : retenue (r), ce qui donne la table de vrit suivante : Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 125
  • Demi additionneur Electronique Numrique 125 A partir de la table de vrit, on obtient aisment les quations du circuit : Do le schma de portes : =1 a b c & r Remarque : ce circuit est un demi additionneur 1 bit, cest pourquoi on va ds maintenant indicer les entres et les sorties =1 & Ce circuit possde une retenue sortante, pour construire un additionneur Nbits, ce circuit doit donc possder une retenue entrante, do le nom dadditionneur complet. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 126
  • Additionneur 1 bit complet Electronique Numrique 126 Lopration effectue est maintenant : Table de vrit : 0 0 0 1 ri+1 aiai 0 1 0 0 0 1 1 1 bibi 0 1 1 0 i 0 1 1 1 0 1 0 0 0 1 1 1 1 0 0 1 riri 0 0 0 0 1 1 1 1 01 10 ri 01 i ai 10 bi 00 01 ri 10 ri+ 1 ai 11 bi La rgle de Karnaugh na pas t utilise entirement, de faon a rutiliser une porte existante dans lautre sortie et ainsi optimiser le circuit final Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 127
  • Schma de ladditionneur 1 bit complet Electronique Numrique 127 =1 >=1 =1 & & Do le symbole gnrique : Add1bit Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 128
  • Additionneur Nbits Electronique Numrique 128 Pour raliser un additionneur N bits, il suffit dutiliser N additionneurs 1 bit (complet) Add1bit .. 0 Remarque : dans un additionneur Nbits, on ne peut pas calculer la dernire sortie (bit de poids fort) sans avoir au pralable calculer toutes les autres sorties !!! => Le chemin parcouru par la retenue propage est le chemin critique Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 129
  • soustracteur Electronique Numrique 129 Ladditionneur complet fonctionne indiffremment avec des nombres strictement positifs comme avec des nombres signs en CC2. Cette particularit nous permet donc de faire des soustractions partir dadditionneurs. Or : -B en CC2 sexprime sous la forme :(CC2 = CC1 + 1) Faire la soustraction : A B revient faire : Pour faire une soustraction, il suffit donc de rentrer une retenue (la 1 ire ) 1 et dinverser tous les bits du 2 ime oprande Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 130
  • soustracteur N bits Electronique Numrique 130 Add1bit .. 1 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 131
  • Additionneur / soustracteur N bits Electronique Numrique 131 Lobjectif maintenant est dobtenir un oprateur programmable, cest capable de faire addition ou soustraction la demande. Pour cela on va utiliser des portes XOR, pour les entres du 2 ime oprande et la retenue entrante =1 a ADD/sous c C = a si la cde ADD/sous est 0 C = si la cde ADD/sous est 1 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 132
  • Additionneur / soustracteur N bits Electronique Numrique 132 Add1bit =1 Add1bit =1 Add1bit =1 ADD/sous 0 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 133
  • Le circuit multiplicateur Electronique Numrique 133 Une multiplication, en binaire, peut se faire comme en dcimal, par des additions avec dcalages successifs : 0 1 1 0 1 1 0 00 101 101 * = 000 + + 11011 000 5 3 0 00 Insertion d1 zro droite => correspond un dcalage gauche pour le rang : Insertion de 2 zros droite => correspond 2 dcalage gauche pour le rang : Retenue propage, de laddition Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 134
  • La multiplication, dune manire gnrale Electronique Numrique 134 Soient les mots de 3 bits : A[2..0] et B[2..0], alors le produit : Cest bien une somme 3 termes (mots de 3 bits) : - Chaque terme est gal au multiplicande si bi = 1 0 si bi = 0 - Chaque terme est multipli par : => ceci correspond un dcalage gauche Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 135
  • Exemple de multiplicateur 3 bits Electronique Numrique 135 +++ +++ Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 136
  • Multiplicateur en valeur signe Electronique Numrique 136 +++ +++ Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 137
  • La logique squentielle Electronique Numrique 137 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 138
  • La logique squentielle Electronique Numrique 138 Les circuits que nous avons vu jusqu maintenant sont des circuits que lon dit combinatoires , cest-a-dire que leurs sorties ne dpendent que des entres Circuit combinatoire E0 E1 .. S = f(ei) Ces circuits ne suffisent pas raliser tous les systmes, quelquefois nous avons besoin de fabriquer des circuits dont les sorties dpendent des entres ET de ltat prcdent du systme. Circuit squentiel A B S S = 1 si A change avant B S = 0 si B change avant A En gnral, la sortie dpend des entres et des valeurs prcdentes de la sortie elle-mme. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 139
  • Logique squentielle (suite) Electronique Numrique 139 Circuit squentiel A B S => Les sorties sont reboucles en entre ! Bien videmment, les sorties reboucles reprsentent ltat prcdent du systme, notez que ce rebouclage ne peut pas tre instantan, cest pourquoi on peut reprsenter un systme squentiel comme cela : Circuit squentiel A B S Delta T Ce delta T, indique le dcalage temporel obligatoire entre la sortie un instant donn, et cette mme sortie un instant prcdent. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 140
  • Llment de base : la bascule asynchrone Electronique Numrique 140 Dfinition : Une bascule est dfinie par les 3 fonctionnalits suivantes : - Une fonctionnalit qui traduit la mise 0 de la sortie, note : MA0, - Une fonctionnalit qui traduit la mise 1 de la sortie, note : MA1, - Une fonctionnalit de mmorisation de la sortie, note : MEMO, dans ce cas ltat de la sortie 1 instant donn : Qt est gal ltat prcdent : Qt-1 Ces fonctionnalits seront mises en uvre en fonction des informations prsentes sur les entres Une bascule possde 2 sorties ( ) qui doivent tre complmentaires, alors que la mmoire nen possde quune. Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 141 tat interdit Fonction : MA1 (sur Q1) Fonction : MA0 (sur Q1) Fonction : MEMO observations Fonction : MA1 Fonction : MEMO Affectation des entres : Quand A = 0, alors il y a : MA1, on attribue cette fonction lentre A et on la note : S/ ( S/ car entre active "0" ). Quand B = 0, alors il y a : MA0, on attribue cette fonction lentre B et on la note : R/ ( R/ car entre active "0" ). Fakhreddine GHAFFARI Olivier ROMAIN">
  • Bascule R/S Nand Electronique Numrique 141 Schma : Avant de faire la table de vrit, dtaillant le fonctionnement, on peut remarquer que si les entres A et B sont : "0", alors les sorties Q1 et Q2 seront au mme tat ("1") et n'auront aucune influence sur le fonctionnement de cette bascule. On dit, dans ce cas que le niveau actif des entres est : 0, en consquence de quoi on notera les entres barres. 1 1 0 0 Q1 B 0 1 0 0 0 1 1 1 A 1 0 1 1 Q2 1 1 1 1 0 1 0 0 Q1=Q2 => tat interdit Fonction : MA1 (sur Q1) Fonction : MA0 (sur Q1) Fonction : MEMO observations Fonction : MA1 Fonction : MEMO Affectation des entres : Quand A = 0, alors il y a : MA1, on attribue cette fonction lentre A et on la note : S/ ( S/ car entre active "0" ). Quand B = 0, alors il y a : MA0, on attribue cette fonction lentre B et on la note : R/ ( R/ car entre active "0" ). Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 142
  • Rcapitulatif : bascule R/S/ (nand) Electronique Numrique 142 Pour reprsenter le fonctionnement de la bascule, on utilise trs frquemment les chronogrammes R/ S/ Q Q/ Etat non dfini : UNDEFINED (U) MA0MA1 On doit remarquer que lon a jamais ensemble les entres actives (ici : 0 ) Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 143
  • Bascule RS (nor) Electronique Numrique 143 Schma : Avant de faire la table de vrit, dtaillant le fonctionnement, on peut remarquer que si les entres A et B sont : 1 , alors les sorties Q1 et Q2 seront au mme tat ( 0 ) et n'auront aucune influence sur le fonctionnement de cette bascule. On dit, dans ce cas que le niveau actif des entres est : 1, en consquence de quoi on notera les entres vraies. 0 1 0 0 Q1 B 1 1 1 0 0 0 1 0 A 0 0 1 1 Q2 1 1 1 0 0 0 0 0 Q1=Q2 => tat interdit Fonction : MA1 (sur Q1) Fonction : MA0 (sur Q1) Fonction : MEMO observations Fonction : MA1 Fonction : MEMO Affectation des entres : Quand A = 1, alors il y a : MA0, on attribue cette fonction lentre A et on la note : R Quand B = 1, alors il y a : MA1, on attribue cette fonction lentre B et on la note : S Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 144
  • Rcapitulatif : bascule RS (nor) Electronique Numrique 144 Pour reprsenter le fonctionnement de la bascule, on utilise trs frquemment les chronogrammes R S Q Q/ Etat non dfini : UNDEFINED (U) MA0MA1 On doit remarquer que lon a jamais ensemble les entres actives (ici : 1 ) Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 145
  • Le cas interdit => dommage ! Electronique Numrique 145 Pour viter davoir se poser la question sur ltat interdit, on va crer une nouvelle bascule, dont ltat interdit sera remplac par une nouvelle fonctionnalit : TOOGLE (changement dtat) => cest la bascule JK Schma : Q Q/ K J >=1 & & Les portes : AND, en entre, permettent dviter les combinaisons interdites en entre de la bascule RS Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 146
  • La bascule JK Electronique Numrique 146 Q Q/ K J >=1 & & Rint Sint 0 0 0 1 Rint J 1 1 0 0 1 1 1 1 K 1 0 1 0 0 1 0 0 1 1 0 0 Sint Qt/ 0 0 1 1 0 1 1 0 Qt 1 1 0 0 0 1 0 1 Qt-1 0 1 0 0 0 0 0 0 0 0 MA1 MEMO MA1 MA0 fonction MEMO MA0 MEMO 1 1 0 0 0 1 On peut voir dans cette table de vrit, que les entres internes de la bascule RS ne sont jamais simultanment gales 1 , mme dans le cas ou les entres (J et K) de la bascule JK le sont ! On doit galement remarquer, que dans le cas ou les entres J et K sont actives ( 1 ), la sortie Qt devient le complment delle mme linstant prcdent (Qt-1) On a donc remplac, dans la bascule JK, ltat interdit de la bascule RS, par un changement dtat => Qt = (Qt-1)/ Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 147
  • La bascule T Electronique Numrique 147 Si on relie ensemble les entres J et K, dune bascule JK, on obtient la bascule : T (Toggle) 0 1 T Qt/ Qt-1 Qt Qt-1/ Qt-1 fonction MEMO TOGGLE Q Q/ T >=1 & & Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 148
  • Les bascules synchrones Electronique Numrique 148 Les systmes squentiels introduisent la notion dtat futur et dtat pass => donc la notion du temps. On est donc amen introduire le concept dhorloge => cest le rythme du systme 0 1 Horloge priode Une horloge est un signal binaire dont les changements dtat sont rguliers dans le temps (priodique => notion de frquence et de priode). La priode de lhorloge donne lunit de temps lmentaire, du systme. Les systmes lectroniques squentiels synchrones sont des systmes dont les changements sont aligns (synchroniss) sur une horloge Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 149
  • La bascule D Latch Electronique Numrique 149 Q Q/ H D >=1 & & 1 si H = 0 alors les entres de la bascule RS sont 0 => la fonction de la bascule est : mmorisation (Qt = Qt-1) Q Q/ Symbole : D H >=1 si H = 1 alors on utilise la bascule RS comme un dispositif changement dtat X 0 D Qt/ Qt-1 Qt 0 Qt-1/ 1 fonction MEMO MA0 0 1 H 1 10 MA1 1 La sortie recopie lentre : D, lorsque le signal dhorloge est 1 , sinon elle mmorise ltat prcdent Ce sont les valeurs (0 ou 1) de lhorloge qui valident le fonctionnement de la bascule => bascule active sur un niveau Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 150
  • Bascule synchronise sur front Electronique Numrique 150 Pour raliser une bascule qui ragit sur front (montant ou descendant) de lhorloge, on va cascader 2 bascules D Latch, qui ragiront sur des niveaux diffrents de lhorloge, comme indiqu ci-aprs : H D >=1 & & 1 Q Q/ >=1 & & 1 maitreesclave Une bascule D maitre, sensible au niveau 0 de H Une bascule D esclave, sensible au niveau 1 de H Une bascule D, qui ragit sur front montant Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 151
  • Bascule D positive Edge Triggered , avec portes Nand Electronique Numrique 151 H D & & 1 Q Q/ & & 1 maitreesclave & & & & D Q1 Q2 0 1 H La sortie Q1 recopie lentre D lorsque H = 0, La sortie Q2 recopie Q1 lorsque H = 1 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 152
  • Entres de forage asynchrone Electronique Numrique 152 On trouve trs souvent sur les bascules synchrones, des entres de forage, qui permettent de mettre 1 ou 0 , en priorit sur lhorloge, cest pourquoi on parle dentres de forage asynchrone => pour cela il faut agir sur les portes de sortie des bascules (et non pas sur les portes de synchronisation), => - l entre de forage 0 sappelle : RESET - l entre de forage 1 sappelle : SET H D & & 1 Q Q/ & 1 maitreesclave & & & & & RESET/ SET/ Q Q/ Symbole : D H Set/ Reset/ Attention : il ne faut pas rendre actives simultanment les entres de forage asynchrones Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 153
  • Synthse bascule D sur front Electronique Numrique 153 Q Q/ D H Q D H X 0 D Qt/ Qt-1 Qt 0 Qt-1/ 1 fonction MEMO MA0 0 H 1 10 MA1 X Qt-1Qt-1/ MEMO 1 Par verrouillage esclave Par verrouillage maitre X 0 D Qt/ Qt-1 Qt 0 Qt-1/ 1 fonction MEMO MA0 0 H 1 10 MA1 X Qt-1Qt-1/ MEMO 1 Par verrouillage maitre Par verrouillage esclave Active sur front montant Active sur front Descendant Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 154
  • Bascule JK sur front Electronique Numrique 154 0 0 K Qt/ Qt-1 Qt 0 Qt-1/ 1 fonction MA0 0 1 J 1 10 MA1 1 1 Qt-1/ Qt-1 TOGGLE 0 Par verrouillage maitre Par verrouillage esclave Q Q/ J H K 0 H 1 MEMO X Qt-1 Qt-1/ X X X 0 1 1 0 MEMO Qt-1Qt-1/ MEMO Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 155
  • Application : diviseur de frquence par 2 Electronique Numrique 155 La figure suivante montre le montage effectuer pour transformer une bascule D sur front (Edge Triggered), en diviseur de frquence par 2 : Q Q/ D H clock Q/ Q La donne D mmorise en sortie Q lors dun front montant de lhorloge est Q/ (Q/ relie D) => Quelque soit ltat logique de la sortie Q avant le top dhorloge, la bascule passera ltat complmentaire lors du front montant dhorloge Q/,D Q 0 1 H Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 156
  • Chronogrammes des systmes synchrones Electronique Numrique 156 Comme on peut le voir sur les chronogrammes prcdents, il faut respecter certaines conditions pour que le systme fonctionne correctement. Ces conditions sont : -Le pr-positionnement (setup time) de la donne avant le front actif => temps pendant lequel la donne doit rester stable. -Le maintien de la donne (hold time) aprs le front actif => temps pendant lequel la donne doit tre maintenue au mme niveau D Q 0 1 H ts td th Zoom sur une transition :Ts : temps de pr- positionnement de la donne : Tsetup Th : temps de maintien de la donne : Thold Td : temps de propagation (retard) de la sortie : Tdelay Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 157
  • Les registres Electronique Numrique 157 Un registre est un lment de mmorisation. Le registre possde une entre horloge qui synchronise ses changements dtats : QD H La bascule D est un lment de mmorisation sur front dhorloge, de la valeur de lentre : D Ce registre recopie, sur tous les fronts montant de lhorloge H les valeurs de D prsents avant les fronts Pour une utilisation programmable, il faut pouvoir slectionner les fronts qui seront actifs, pour cela : QD H & H CE On ajoute une entre (CE : Clock Enable), afin de valider lentre Horloge (H) Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 158
  • Registre avec validation Electronique Numrique 158 Si CE = 0 => pas de fronts dhorloge Si CE = 1 => fonctionnement normal D CE 0 1 H Q Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 159
  • Registre N bits Electronique Numrique 159 On ralise des registres N bits, en utilisant N bascules en parallle, avec : -mme horloge, -mme entre de validation (CE) QD H CE QD H QD H QD H .. D0 D1 D2 Dn-1 Q0 Q1 Q2 Qn-1 H CE => cest de cette manire que sont raliss les lments de mmorisation lintrieur dun microprocesseur (les registres) Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 160
  • Registre dcalage Electronique Numrique 160 Un registre dcalage est un ensemble de N bascules D (synchrones, sur front), associes en srie (en cascade), selon le schma suivant : QD H QD H QD H QD H D H Q0Q1 Q2 Qn-1 Lentre : D, va propager de bascule en bascule, chaque top dhorloge Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 161
  • Exemple : Registre dcalage droite 4 bits Electronique Numrique 161 QD H QD H Q D H QD H D H Q0Q1 Q2 Q3 Q0 Q1 0 1 D Q2 0 1 H Q3 val 01248 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 162
  • Exemple : Registre dcalage gauche 4 bits Electronique Numrique 162 QD H QD H QD H QD H D H Q0 Q1 Q2 Q3 Q2 0 1 D Q1 0 1 H Q0 val 08421 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 163
  • Les compteurs Electronique Numrique 163 Un compteur est un circuit squentiel qui permet de dnombrer des impulsions appliques sur son entre dhorloge et de transfrer aux sortie linformation binaire chaque impulsion : changement dtat, entre 2 impulsions : tat stable Q3 MR H CE Q2 Q1 Q0 Symbole dun compteur 4 bits -MR : Master Reset -CE : Count Enable => sert valider le circuit ou interrompre le comptage Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 164
  • Compteur asynchrone Electronique Numrique 164 La particularit des compteurs asynchrones est que la sortie d'une bascule devient en mme temps une entre de la bascule suivante, d'o un temps de propagation mal dtermin, qui se cumule sur la dernire sortie et de plus il est possible de passer par des tats interdits lors d'un changement dtat dsir. Q Q/ D H Q D H Q D H . Q0Q1Qn-1Qn-2 CK En consquence, nous ntudierons pas la synthse des compteurs asynchrones, ceux-ci tant de moins en moins utiliss dans l'industrie (vous aurez confirmation de cela dans le cours : FPGA). 78467 CK Q0 Q1 Q2 Q3 val Loupe sur la transition : 7=>8 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 165
  • Compteur synchrone Electronique Numrique 165 Structure dun compteur synchrone : -N bascules pour N sorties, -Les entres des bascules sont calcules en fonction des sorties ltat prcdent -Bien sur, toutes les bascules ragissent avec la mme horloge Q Q/ J H K ?? . Q Q/ J H K ?? . Qi Qi+1 H Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 166
  • Synthse dun compteur synchrone Electronique Numrique 166 Exemple d'un compteur binaire -> dcimal -> Il y a donc une squence de : 10, il y aura donc 4 bascules ( il reste 6 cases dans le tableau de Karnaugh, que l'on pourra utiliser comme on veut ( 0 ou 1 ), on note d'ailleurs : dans cette case ). -> on exprime les Ji et Ki en fonction de lvolution dsire des sorties : QA QD. Sachant que : X reprsente nimporte quelle valeur, il nest peut tre pas ncessaire de faire un tableau de Karnaugh pour JA et KA JA = KA = 1 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 167
  • Synthse (suite) Electronique Numrique 167 01 JB 01 D xx xx A 00 B C xx KB xx D 10 10 A xx B C 00 JC xx D 10 xx A 00 B C xx KC 00 D xx 10 A xx B C Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 168
  • Synthse (suite 2) Electronique Numrique 168 00 JD 00 D 00 10 A xx B C xx KD xx D xx xx A 01 B C Q Q/ J H K Q J H K & QAQB H 1 1 Q Q/ J H K QC Q Q/ J H K & QD & Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 169
  • Autre mthode de synthse Electronique Numrique 169 La mthode de MARCUS, consiste introduire une variable de commutation, note : Xi, qui prendra la valeur 1 en cas de changement, sinon 0 QtQt+1Xi 000 011 101 110 Xi est donc form d'un OU exclusif entre Qt et Qt+1. -> on choisit de faire la synthse du compteur l'aide de bascules JK Qt+1 = JQt/ + K/Qt -> on ramne tout l'instant : t. Xi = Qt Qt+1/ + Qt/Qt+1 = Qt ( JQt/ + K/Qt )/ + Qt/( JQt/ + K/Qt ) = Qt ( (JQt/)/ (K/Qt)/ ) + JQt/ = Qt ( J/+Qt) (K+Qt/) ) + JQt/ = ( J/Qt + Qt ) (K+Qt/) + JQt/ = J/QtK + QtK + JQt/ Xi = KQt + JQt/ Mthode ( dite de : MARCUS ) -> en fonction de la squence dsire, remplir un tableau des : Xi = f(Qi) -> ne pas forcment simplifier l'expression des Xi, il faut veiller avoir dans l'expression de Xi, la variable : Qi et galement la variable : Qi/ Exemple : on va refaire par cette mthode le compteur binaire => dcimal Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 170
  • Synthse par la mthode de MARCUS Electronique Numrique 170 XAXA 0 0 1 0 0 1 1 0 0 0 1 0 1 0 1 0 1 0 1 QB QA 0 0 0 0 0 0 0 0 1 1 0 0 0 0 1 1 1 1 0 0 QD QC 1 1 1 1 1 1 1 1 1 1 1 XBXB 0 1 0 1 0 1 0 1 0 0 XCXC 0 0 0 1 0 0 0 1 0 0 XDXD 0 0 0 0 0 0 0 1 0 1 XA = 1 Xi = KQt + JQt/ XA = KAQA + JAQA/ JA = KA = 1 XB = QA Xi = KQt + JQt/ XB = QAQB + QAQB/ JB = KB = QA Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 171
  • Synthse Marcus (suite) Electronique Numrique 171 00 XC 00 D 10 10 A 00 B C 00 KD 00 D 00 10 A 01 B C Bien videmment le schma est rigoureusement identique => on aura pu observer une plus grande efficacit et rapidit ! Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 172
  • Compteur en anneau Electronique Numrique 172 Cest un compteur spcifique, utilisant la structure dun registre dcalage, afin de propager un 1 Un compteur en anneau, compos de N bascules pourra gnrer N tats distincts. Attention : un tel compteur doit tre initialis sur une des valeurs du cycle. QD H QD H QD H QD H H Q0Q1 Q2 Q3 La squence de ce compteur sera : 0001 (1), 0010 (2), 0100 (4), 1000 (8). >=1 Q1 Q2 Q3 Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 173
  • Electronique Numrique 173 Compteur Jonhson Electronique Numrique 173 Cest un compteur spcifique, utilisant la structure dun registre dcalage, afin de propager un 0 Un compteur Jonhson, compos de N bascules pourra gnrer 2.N tats distincts. Attention : un tel compteur doit tre initialis sur une des valeurs du cycle. QD H QD H QD H QD H H Q0Q1 Q2 Q3 La squence de ce compteur sera : 0001, 0011, 0111, 1111, 1110, 1100, 1000, 0000. Q3 Q2 Q1 0 1 CK Q0 val 013715141280 Q/ Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 174
  • Systme de prise en compte vnementielle Electronique Numrique 174 Ce systme doit se dclencher sur un vnement (asynchrone), et doit perdurer jusqu ce quun autre vnement (interne au systme) se produise. Exemple : quand un vnement externe se produit, un signal reste valide tant que 5 coups dhorloge ne sont pas apparus. Signal 0 1 CK event Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 175
  • Prise en compte de lvnement Electronique Numrique 175 Lvnement est par dfinition asynchrone, il faut donc commencer par le synchroniser sur lhorloge de rfrence du systme, pour cela 2 possibilits : QD H event CK Qsynchro Cette mthode peut poser des problmes, de setup time ou de hold time Cest pourquoi il vaut mieux privilgier cette 2 ime mthode : QD H CK Qsynchro 1 QD H Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 176
  • Validit par comptage interne Electronique Numrique 176 Une fois que lvnement est synchronis il faut autoriser un compteur et des que le compteur a atteint la valeur dsire => il y a reset de la bascule de prise en compte de lvnement et du compteur Compteur 4 bits Bloc combinatoire ( = 5) MR CE H Q0 Q3 CK Qsynchro 0 FinCpt Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 177
  • Prise en compte vnement (suite) Electronique Numrique 177 event QD H CK Qsynchro 1 QD H Compteur 4 bits Bloc combinatoire ( = 5) MR CE H Q0 Q3 CK FinCpt reset Qsynchro 0 1 CK event FinCpt Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 178
  • Verrouillage vnement interne Electronique Numrique 178 On peut voir sur ces chronogrammes, que le signal FinCpt, ne dure que trs peu (1 temps de propagation), ceci nest jamais trs bon dans un systme squentiel, aussi il vaut mieux verrouiller ce signal : CK QD H FinCpt QD H reset Vers : compteur et bascules Attention : dans ce cas, limpulsion de reset dure quasiment un priode dhorloge => comptage 1 !! Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 179
  • Systme complet Electronique Numrique 179 event QD H CK Qsynchro 1 QD H Compteur 4 bits Bloc combinatoire ( = 5) MR CE H Q0 Q3 CK FinCpt reset Q D H Q D H CK Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 180
  • Systme vnementiel : autre solution Electronique Numrique 180 Dans ce systme, lvnement interne dclenchant la fin de la squence est ralis partir dun compteur => on peut trs bien imaginer un registre dcalage, pour dnombrer les priodes dhorloge ncessaires, de plus dans ce cas, les signaux intermdiaires sont disponibles pour une utilisation event QD H CK Qsynchro 1 QD H registre dcalage MR Din H Q0 Qn-1 CK FinCpt reset Q D H Q D H CK Signaux internes Fakhreddine GHAFFARI Olivier ROMAIN
  • Page 181
  • En bref : Electronique Numrique 181 A vous de jouer Fakhreddine GHAFFARI Olivier ROMAIN