ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded...

58
ELEN0040 - Electronique num´ erique Patricia ROUSSEAUX Ann´ ee acad´ emique 2014 - 2015

Transcript of ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded...

Page 1: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

ELEN0040 - Electronique numerique

Patricia ROUSSEAUX

Annee academique 2014 - 2015

Page 2: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Objectifs

I Maıtrise des techniques d’analyse et de synthese de systemesnumeriques

I Maıtrise du langage VHDL, langage de description materiellepermettant de representer l’architecture d’un systeme electroniquenumerique et de simuler son comportement

I Conception d’un systeme electronique simple

ELEN0040 0 - 2

Page 3: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Situation dans le cursus

Cours amont :

I INFO0061 : Organisation des ordinateurs

I MATH0013 : Algebre

Cours aval :

I ELEN0037 : Microelectronics and IC design

I ELEN0038 : Microsystems

I INFO0012 : Computation structures

I ELEN0075 : Electronique analogique

I INFO0064 : Embedded systems

ELEN0040 0 - 3

Page 4: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Plan du cours

1. Introduction - rappels : algebre booleenne, portes logiques

2. Circuits combinatoire simples, formes standards, simplification

3. Circuits combinatoires complexes :I decodeursI multiplexeursI circuits arithmetiques

4. Circuits sequentiels : bascules, flip-flops

5. Circuits sequentiels complexes : registres et compteurs

6. Technologie des circuits numeriques

7. Memoires

8. Systemes programmables

ELEN0040 0 - 4

Page 5: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Organisation pratiqueI Cours theorique : jeudi 13h45-15h15I 8 seances de repetitions : exercices d’analyse et synthese de circuits

combinatoires et sequentiels, langage VHDL : jeudi 15h30-17h30I 2 laboratoires

Encadrement :I cours theorique :

Patricia Rousseaux : Institut de mathematique, B37, local 0/64,e-mail : P.Rousseaux @ulg.ac.be

I repetitions :Delphine Cerica : Institut Montefiore, B28, local I85b, [email protected] :Quentin Massoz : Institut Montefiore, B28, local R143 , e-mail :[email protected]

I repetitions VHDL, labos, projet :Vincent Pierlot : Institut Montefiore, B28, local I.84a, e-mail :[email protected] Schmitz : Institut Montefiore, B28, local I.81a, e-mail :[email protected]

ELEN0040 0 - 5

Page 6: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Laboratoires

Presence OBLIGATOIREIntroduction au projet VHDL : conception, realisation et test d’un circuitelectronique simple

I 2 labos de 4h

I par groupe de 4 etudiants, un delegue par groupe

I durant le mois de marsI labo 1 : entre le lundi 23 fevrier et le vendredi 6 marsI labo 2 : entre le lundi 9 mars et le vendredi 20 mars

I Horaire a fixer avec les etudiants-moniteurs, selon disponibilites(doodle)

Details sur le projet : au cours des repetitions VHDL

ELEN0040 0 - 6

Page 7: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Materiel

I livre de reference :

Logic and Computer Design Fundamentals, Fourth edition,M. Morris Mano and Charles R. Kime, Prentice Hall, PearsonEducation

I Supports de l’expose oral : postes sur MyULg la veille du cours

I Supports des repetitions : voir site du cours

ELEN0040 0 - 7

Page 8: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Interrogations

Deux interrogations facultativesInterviennent pour 20% de la note finale si :

I realisees toutes les deux,

I font monter la note.

Matiere :

I Interro 1 : analyse et synthese de circuits combinatoires,programmation VHDL (code a completer)

I Interro 2 : analyse et synthese de circuits sequentiels,programmation VHDL (code a completer)

Documents autorises : uniquement les documents fournis

ELEN0040 0 - 8

Page 9: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Evaluation

I Interrogations : Int

I Labos : Lab

I Projet : Proj

I Examen :I Theorie : EtheoI Ecercices : Eexer

I Note :I Si Int > Eexer

Note = ( Lab + 3*Proj + 2* Int + 2*Etheo + 2*Eexer )/10I Si Int ≤ Eexer

Note = ( Lab + 3*Proj + 3*Etheo + 3*Eexer )/10

ELEN0040 0 - 9

Page 10: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Horaire

1 Je 5/2 Cours 12 Je 12/2 Cours 2 Repetition 13 Je 19/2 Cours 3 Repetition 2

+ Intro labo4 Je 26/2 Cours 4 Repetition VHDL 1

Labo 15 Je 5/3 Cours 5 Repetition VHDL 26 Je 12/3 Cours 6 Repetition 3

Labo 27 Je 19/3 Cours 7 Repetition 48 Je 26/3 Cours 8 Repetition 59 Je 2/4 Cours 9 Interro 1

10 Je 23/4 Cours 10 Repetition 611 Je 30/4 Cours 11 Interro 212 Je 7/5 Reserve

ELEN0040 0 - 10

Page 11: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Un monde numerique ?

ELEN0040 0 - 11

Page 12: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Un monde numerique ?

ELEN0040 0 - 12

Page 13: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Un monde numerique ?

ELEN0040 0 - 13

Page 14: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Un monde numerique ?

ELEN0040 0 - 14

Page 15: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Continu/Numerique

I Le monde reel est un monde continu

I Le monde numerique est un monde discretise

ELEN0040 0 - 15

Page 16: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Pourquoi l’electronique numerique ?

I La numerisation d’un signal permet de se premunir du bruit

I Excellente conservation de l’integrite de l’information

I Possibilite de mise en oeuvre d’une arithmetique logique

I Possibilite de construction de machines programmables detraitement de l’information

I Possibilite de detection et de correction d’erreurs

I Necessite d’une conversion analogique numerique avant letraitement par le circuit numerique (echantillonnage)

I Apres le traitement, reconstruction du signal par une conversionnumerique/analogique (filtrage passe-bas)

ELEN0040 0 - 16

Page 17: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Exemple de signal - Conversion binaire

I En electronique numerique, le codage des informations utilise deuxniveaux de tension :

I le potentiel de reference du circuit VSS = 0VI un potentiel positif VDD

I On affecte une valeur binaire a chaque niveau de tension :

VSS ⇔ 0

VDD ⇔ 1

I Pour se premunir du bruit, aux deux niveaux logiques correspondentdeux plages de tension disjointes

I Le signal est interprete comme une suite de symboles logiques

ELEN0040 0 - 17

Page 18: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Systemes numeriques

Un systeme numerique transforme

I une sequence de donnees = entrees numeriques

I etant donne des informations numeriques internes = etat

I en une sequence de donnees numeriques = sorties

ELEN0040 0 - 18

Page 19: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Types de systemes numeriques

I Systemes combinatoires = circuits combinatoiresI pas d’etat interneI sortie = f(entree)I pas de “memoire”

I Systemes sequentiels = circuits sequentielsI l’etat du systeme est mis a jour

I a des instants precis, connus (horloge ou clock) : systemes synchronesI a des instants non precises : systemes asynchrones

I sortie(t) = f(entree(t),etat(t))I etat(t+1) = g(etat(t),entree(t))

ELEN0040 0 - 19

Page 20: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Exemples

Systeme combinatoire : Afficheur LED 7-segments d’un chiffre comprisentre 0 et 9

Entree : le chiffre a afficher, code sous forme binaire, par exemple,representation binaire non signeeIl faut donc 4 bits = 4 variables logiques d’entree, A, B,C , D

Sortie : l’etat allume/eteint ⇔ 0/1 de chacun des 7 segments7 bits de sortie = 7 variables logiques de sortie, a, b, c , d ,e, f , g

Afficher le chiffre 4 :ABCD = 0100 abcdefg = 0110011

ELEN0040 0 - 20

Page 21: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Systeme sequentiel : Controleur d’un distributeur de boisson

Entree : I valeur de la piece introduite.Des capteurs (poids, taille)permettent d’identifier la piece demonnaie introduite, l’informationanalogique (continue) est convertieen information numerique(conversion analogique/numerique,quantification) et codee sous formede variables binaires

I choix de la boisson

Etat : somme deja introduite

Sortie : ordre de delivrer la boisson

ELEN0040 0 - 21

Page 22: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

CHAPITRE 1

Rappels

ELEN0040 1 - 22

Page 23: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

1 Logique combinatoire1.1 Definitions1.2 Table de verite1.3 Relations fondamentales1.4 Formes canoniques

2 Les portes logiques2.1 Portes primitives : AND , OR , NOT2.2 Portes universelles : NAND , NOR2.3 Autres portes : XOR , NXOR

3 Realisation de fonctions

ELEN0040 1 - 23

Page 24: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Algebre de Boole

I Formalisme mathematique de la logique

I Manipule des variables qui ne peuvent prendre que deux valeurs :Vrai ou Faux = variable booleenne A

I Fondement de l’electronique numerique : variable booleenne =variable binaire : 0 ou 1

I L’algebre repose sur trois operateurs logiques de base :

I OU = OR : note + , A + BI ET = AND : note ·, A.B ou AB, le point est omisI NON = NOT = complement d’une variable : A‘ ou A

I Fonction logique = combinaison de variables et d’operateurs,exemple : F (A,B,C ) = A + BC + AC

ELEN0040 1 - 24

Page 25: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Operateurs

I AND I OR

I NOTI si A = 1 → A = 0I si A = 0 → A = 1

ELEN0040 1 - 25

Page 26: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Table de veriteUne fonction booleenne peut etre definie par sa table de verite

Table de verite

Representation sous forme de tableau des valeurs de la fonction pour toutesles combinaisons possibles des valeurs de ses variables d’entree ou argu-ments.

Exemples :

F (A,B) = A + B

A B F0 0 00 1 11 0 11 1 1

F (A,B,C ) = A + BC + AC

A B C F0 0 0 00 0 1 10 1 0 00 1 1 11 0 0 11 0 1 11 1 0 11 1 1 1

ELEN0040 1 - 26

Page 27: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Axiomes

1. Commutativite A + B = B + A A.B = B.A

2. Elements neutres A + 0 = A A.1 = A

3. Distributivite A + (B.C ) = (A + B).(A + C ) A.(B + C ) = A.B + A.C

4. Complements A + A = 1 A.A = 0

ELEN0040 1 - 27

Page 28: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Proprietes fondamentales

5. Identites A + 1 = 1 A.0 = 0

6. Elements neutres A + 0 = A A.1 = A

7. Absorption A + (A.B) = A A.(A + B) = A

8. Associativite A + (B + C ) = (A + B) + C A.(B.C ) = (A.B).C= A + B + C = A.B.C

9. Involution A = A

10. Lois de De Morgan A + B = A.B A.B = A + B

ELEN0040 1 - 28

Page 29: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Mintermes et Maxtermesp-terme : produit booleen de variables booleennes differentes ou de

leur complement, exemples : ABC , ABCD

s-terme : somme booleenne de variables booleennes differentes oude leur complement, exemples : A + B, A + B + C

Pour un ensemble de n variables booleennes

Minterme

On appelle Minterme un p-terme de degre n dans lequel chaque variableou sa forme complementee est presente.

Exemples pour 4 variables A,B,C ,D : ABCD, ABCD, ....

Maxterme

On appelle Maxterme un s-terme de degre n dans lequel chaque variableou sa forme complementee est presente.

Exemples pour 4 variables A,B,C ,D : A+B +C +D, A+B +C + D,....

ELEN0040 1 - 29

Page 30: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Cas de deux variables

I Mintermes

A B m0 m1 m2 m3

AB AB AB AB0 0 1 0 0 00 1 0 1 0 01 0 0 0 1 01 1 0 0 0 1

I un seul 1 par colonne

I indice i du Minterme = codagebinaire de i

I22∑i=0

mi = 1

I Maxtermes

A B M0 M1 M2 M3

A + B B + A A + B A + B0 0 0 1 1 10 1 1 0 1 11 0 1 1 0 11 1 1 1 1 0

I un seul 0 par colonne

I indice i du Maxterme = codagebinaire de i

I22∏i=0

Mi = 0

ELEN0040 1 - 30

Page 31: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

D’une maniere generale :

I L’indice d’un Minterme ou Maxterme, exprime en nombre binaire,permet de decider si chaque variable apparaıt sous sa forme naturelleou complementee

I Pour un Minterme :I “1” → forme naturelle de la variable AI “0” → forme complementee de la variable A

I Pour un Maxterme :I “0” → forme naturelle de la variable AI “1” → forme complementee de la variable A

Exemples :

I 3 variablesm5 = ABC M6 = A + B + C

I 4 variables

m11 = ABCD M4 = A + B + C + D

ELEN0040 1 - 31

Page 32: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Relation entre Minterme et Maxterme

Par application de la loi de De Morgan :

m11 = ABCD = A + B + C + D = M11

Relation Minterme ↔ Maxterme

Mi = mi mi = Mi

ELEN0040 1 - 32

Page 33: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Formes canoniques

I Il existe deux formes canoniques permettant de representer toutefonction booleenne.

1. Somme de Mintermes (SOM - Sum Of Minterms) : forme canoniquedisjonctive totale (fonction non nulle)

2. Produit de Maxtermes (POM - Product Of Maxterms) : formecanonique conjonctive totale (fonction non egale a 1)

I Chacune de ces formes canoniques peut etre deduite facilement apartir de la table de verite de la fonction.

ELEN0040 1 - 33

Page 34: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Exemple : fonction OU Exclusif : XOR

Fonction de deux variables egale a 1 si une et une seule des deuxvariables est egale a 1.

A⊕ B = AB + AB

Table de verite

A B A⊕ B0 0 00 1 1 ← m1

1 0 1 ← m2

1 1 0

A⊕ B = m1 + m2

A B A⊕ B0 0 0 ← M0

0 1 11 0 11 1 0 ← M3

A⊕ B = M0.M3 = (A + B).(A + B)

A⊕ B = m0 + m3

A⊕ B = m0 + m3 = m0.m3 = M0.M3

ELEN0040 1 - 34

Page 35: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Regle

I Somme de Mintermes :

I reperer tous les Mintermes = 1 dans la table de veriteI addtionner ces Mintermes (OR)

I Produit de Maxtermes :

I reperer tous les Maxtermes = 0 dans la table de veriteI multiplier ces Mintermes (AND)

ELEN0040 1 - 35

Page 36: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Autre exemple

F1 = m1 + m4 + m7 = x y z + xy z + xyz

ELEN0040 1 - 36

Page 37: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Ecrire F1 sous forme de POM

F1 = M0.M2.M3.M5.M6

= (x + y + z).(x + y + z).(x + y + z).(x + y + z).(x + y + z)

ELEN0040 1 - 37

Page 38: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Transformer une expression logique

Exemple : F = A + BC

I Somme de Mintermes :Utiliser les relations A + A = 1, A.1 = A et A + A = A et ladistributivite de l’operateur “. “

A + BC = A.(B + B) + (A + A).BC

= AB.(C + C ) + AB.(C + C ) + ABC + ABC

= ABC + ABC + ABC + ABC + ABC + ABC

= ABC + ABC + ABC + ABC + ABC

= m1 + m4 + m5 + m6 + m7

ELEN0040 1 - 38

Page 39: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

I Produit de Maxtermes :Utiliser les relations A.A = 0, A + 0 = A et A.A = A et ladistributivite de l’operateur “+ “

A + BC = (A + B).(A + C )

= (A + B + CC ).(A + BB + C )

= (A + B + C ).(A + B + C ).(A + B + C ).(A + B + C )

= (A + B + C ).(A + B + C ).(A + B + C )

= M0.M2.M3

I On remarque que cette expression fait intervenir tous les Maxtermesdont l’indice ne faisait pas partie de la representation sous forme deSOM.

ELEN0040 1 - 39

Page 40: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

1 Logique combinatoire1.1 Definitions1.2 Table de verite1.3 Relations fondamentales1.4 Formes canoniques

2 Les portes logiques2.1 Portes primitives : AND , OR , NOT2.2 Portes universelles : NAND , NOR2.3 Autres portes : XOR , NXOR

3 Realisation de fonctions

ELEN0040 1 - 40

Page 41: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Les portes logiques

Porte logique = Logic Gate

Une porte logique est un circuit electronique de base qui se comportecomme un ensemble “d’interrupteurs” qui permettent ou non le passagedu courant. Elle opere sur des entrees numeriques, realise une operationlogique de base et fournit la sortie numerique correspondante.

Exemple : la porte AND = mise en serie de deux interrupteurs

Z = X + Y

Entrees :

I logique “0” :interrupteur ouvert

I logique “1” :interrupteur ferme

Sortie :

I logique “0” : lampeallumee, le courantcircule

I logique “1” : lampeeteinte, le courantne circule pas

ELEN0040 1 - 41

Page 42: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Diagramme temporel

Les signaux d’entree et de sortie peuvent etre representes par undiagramme temporel qui traduit symboliquement l’evolution temporelledes variables d’entree et de sortie.

ELEN0040 1 - 42

Page 43: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Delai de transitionEn pratique :

I Le changement de l’etat de la sortie ne se produit pasinstantanement suite a une modification d’une ou plusieurs entrees.Il y existe un delai de propagation du signal dans le circuit = gatedelay tG .

I Ce delai peut dependre :1. du type de porte2. de la technologie utilisee pour realiser physiquement le circuit

electronique (TTL, CMOS, voir labos)3. du nombre de signaux d’entree4. du sens de la modification du signal d’entree : 0→ 1 ou 1→ 0

I Pour un circuit numerique elabore, comportant l’interconnexion deplusieurs portes, le calcul du delai total est lie aux types de portesutilisees ainsi qu’au nombre de niveaux de portes.

I Le delai est un critere important a prendre en compte lors de larealisation d’un circuit (voir optimisation).

ELEN0040 1 - 43

Page 44: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Portes primitives : AND , OR , NOT

Les portes AND et OR peuvent comporter plus de deux entrees :

Z = X1.X2 · · ·Xn Z = X1 + X2 + · · ·Xn

ELEN0040 1 - 44

Page 45: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Portes “universelles” NAND , NOR

Chacune des portes NAND et NOR est une porte universelle : toutefonction logique peut etre realisee a partir de seules portes NAND ou deseules portes NOR

ELEN0040 1 - 45

Page 46: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Portes universelles

I Les operations de base AND et OR peuvent etre realisees a partir deporte NAND ou NOR

I Portes NAND :

I Portes NOR : a vous de jouer....

ELEN0040 1 - 46

Page 47: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Autres realisations

I Porte NAND

I Porte NOR

ELEN0040 1 - 47

Page 48: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Interet pratique des portes NAND et NOR

I Implementation directe en technologie CMOS

I Bonne performance en terme de vitesse (delai) et de taille(dimension de la puce electronique)

I Exemple : porte NAND, technologie CMOSPorte n − NAND a n entrees : 2n transistors suffisentPorte n − AND : 2n + 2 transistors

ELEN0040 1 - 48

Page 49: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Technologie CMOS

Voir cours electronique analogique, Bac 3

ELEN0040 1 - 49

Page 50: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Portes NAND et CMOS

Porte NOT : 2 transistors

Porte 2-NAND : 2× 2 = 4transistors

ELEN0040 1 - 50

Page 51: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Portes “ou exclusif” : XOR , XNOR

L’operation XNOR se note egalement : X � Y

Fonctions utiles pour realiser : (voirchapitres ulterieurs)

I des additionneurs, soustracteurs

I compteurs

I test de parite et generateurs debits de parite

I Identites :

ELEN0040 1 - 51

Page 52: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

XOR : realisations

I portes primitives :X ⊕ Y = XY + Y X

I portes NAND :

ELEN0040 1 - 52

Page 53: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Fonctions paires et impairesI Fonctions XOR et XNOR a plus de deux entrees

Fonction impaire : egale a 1 pour un nombre impair de 1 desvariables d’entree = XORExemple a 3 variables :

X ⊕ Y ⊕ Z = XY Z + XY Z + X Y Z + XYZ

Fonction paire : egale a 1 pour un nombre pair de 1 des variablesd’entree = XNORExemple a 3 variables :

X�Y�Z = X ⊕ Y ⊕ Z = X Y Z+XYZ+XY Z+XY Z

I Realisation :

F = X ⊕Y ⊕Z = (X ⊕Y )⊕Z

ELEN0040 1 - 53

Page 54: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

1 Logique combinatoire1.1 Definitions1.2 Table de verite1.3 Relations fondamentales1.4 Formes canoniques

2 Les portes logiques2.1 Portes primitives : AND , OR , NOT2.2 Portes universelles : NAND , NOR2.3 Autres portes : XOR , NXOR

3 Realisation de fonctions

ELEN0040 1 - 54

Page 55: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

Table de verite, expression et diagramme logiques

Exemple :

Une meme fonction logique peut etre representee par sa table de verite,une expression ou un diagramme logique

ELEN0040 1 - 55

Page 56: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

I La table de verite est uniqueI Il peut exister plusieurs expressions logiques pour une meme

fonction : simplification, utilisation des regles de l’algebre de BooleI Cela donne lieu a plusieurs diagrammes logiques ⇒ differentes

realisations en termes de circuit, optimisation de circuitsI Forme canonique disjonctive totale : SOM, autre realisation de FI Plus grande complexite dans ce cas

F = X + Y Z

= m1 + m4 + m5 + m6 + m7

= X Y Z + XY Z + XY Z + XY Z + XYZ

ELEN0040 1 - 56

Page 57: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

References

I Logic and Computer Design Fundamentals, 4/E, M. Morris ManoCharles Kime , Course materialhttp ://writphotec.com/mano4/

I Cours d’electronique numerique, Aurelie Gensbittel, BertrandGranado, Universite Pierre et Marie Curiehttp ://bertrand.granado.free.fr/Licence/ue201/coursbeameranime.pdf

ELEN0040 1 - 57

Page 58: ELEN0040 - Electronique numérique...I ELEN0075 : Electronique analogique I INFO0064 : Embedded systems ELEN0040 0 - 3 Plan du cours 1.Introduction - rappels : alg ebre bool eenne,

ELEN0040 1 - 58