ETML
ELECTRONIQUE NUMERIQUE Cours destiné aux Automaticiens
Yves Darbellay
Bibliographie Electronique Automobile de l’AMAD. Circuits numériques Ronald J.Tocci Techniques numériques série Schaum
00 TITRENUM_04/ 10 TITRENUM_04/ 10 JUILLET 2006
ETML
Introduction :
1
1. INTRODUCTION 1.1 Représentation des grandeurs Nombreux sont les systèmes qui utilisent des grandeurs en entrée, les traitent et délivrent en sortie des commandes ou des informations pour l'utilisateur. Les grandeurs peuvent être représentées représentées de deux façons :
•
Représentation analogique
•
Représentation numérique
1.1.1 La représentation analogique La plupart des capteurs transforment une grandeur physique (température, pression...) en grandeur électrique. De même, le microphone transforme la pression acoustique en grandeur électrique proportionnelle. Caractéristique Caractéristique des grandeurs analogiques : Elles peuvent prendre toutes les valeurs en variant graduellement entre deux limites, par exemple une automobile peut avoir une vitesse variant entre 0 et 220 km/h.
1.1.2 La représentation numérique La grandeur mise sous forme numérique n'est plus proportionnelle à la grandeur d'entrée. Elle s'exprime par symboles ou codes (chiffres) par exemple: le tachymètre (se prononce "takimetre") d'une automobile, s'il est numérique, indique une valeur par pas de 1 km/h : la progression est discontinue; s'il est analogique (à aiguille), la progression est continue. La représentation numérique est donc DISCONTINUE.
1.2 Les systèmes numériques Les dispositifs travaillant avec des valeurs discontinues sont dits systèmes numériques (calculatrices, ordinateurs, voltmètre numérique, machines-outils à commande numérique). Ils sont programmables, rapides, capables de garder des données en mémoire. Ce sont ces systèmes que nous allons étudier dans le présent cours, les systèmes analogiques sont traités dans le cours ELECTRONIQUE ANALOGIQUE.
01 INTRONUM_04/ 10 INTRONUM_04/ 10 JUILLET 2006
Page 1
ETML
Systèmes de numération :
2
2. SYSTEMES DE NUMERATION 2.1 Introduction Le nombre de symboles utilisés caractérise le numéro de la base. Celui que nous connaissons le mieux est le système décimal mais nous allons aussi définir les systèmes binaire, octal, hexadécimal.
2.2 Le système décimal ou base 10 Comporte 10 symboles : 0, 1, 2, 3, 4, 5, 6, 7, 8 et 9. Pour le distinguer d'un autre système, on peut préciser la base d'un nombre en plaçant cette dernière en indice à la fin du nombre. Exemple : 1981 peut s’écrire 1981 10 Ce nombre se décompose ainsi :
milliers 10
centaines
3
10
1
dizaines
2
10
9
1
8
unités 10
0
1
0
Remarque : 10 = 1 3
2
1
1981 10 = 1 · 10 + 9 · 10 + 8 · 10 + 1 · 10
0
Autre exemple : 27,46 dizaines
unités
dixièmes
centièmes
10 1
10 0
10 -1
10 -2
2
7
4
6
1
0
27,46 10 = 2 · 10 + 7 · 10 + 4 · 10
-1
+ 6 · 10
-2
2.3 Le système binaire naturel Les systèmes électriques et électroniques sont caractérisés par deux états : •
interrupteur : ouvert ou fermé
•
transistor : bloqué ou saturé
De cette constatation est née l'idée d'utiliser le système à base 2 ou système binaire. La base 2 n'utilise que deux symboles : 0 et 1.
02 NUMERAT_04/ 10 NUMERAT_04/ 10 JUILLET 2006
Page 1
ETML
Système de numération :
2
L'équivalence avec les circuits électriques se fera ainsi : 0= interrupteur ouvert aucun courant ne peut circuler, la lampe est éteinte correspond au transistor bloqué. 1 = interrupteur fermé le courant peut circuler, la lampe est allumée correspond au transistor saturé.
Si l'on écrit : 10110 2 4
Que signifie cela ? 3
2
1
0
10110 2 = 1· 2 + 0 · 2 + 1 · 2 + 1 · 2 + 0 · 2 = 22 10 Compléter la liste des 16 premiers nombres binaires
Equivalent
2
3
2
2
2
1
2
0
Décimal
Page 2
8
4
2
1
0
0
0
0
0
1
0
0
0
1
2
0
0
1
0
3
.....
.....
.....
.....
4
.....
.....
.....
.....
5
.....
.....
.....
.....
6
.....
.....
.....
.....
7
.....
.....
.....
.....
8
.....
.....
.....
.....
9
.....
.....
.....
.....
10
.....
.....
.....
.....
11
.....
.....
.....
.....
12
.....
.....
.....
.....
13
.....
.....
.....
.....
14
.....
.....
.....
.....
15
.....
.....
.....
.....
02 NUMERAT_04 / NUMERAT_04 / 10 10 JUILLET 2006
ETML
Systèmes de numération :
2
Définissons maintenant ce qu'est un bit, mot que nous utiliserons fréquemment de BINARY DIGIT c'est l'unité élémentaire d'information logique. Il peut valoir 1 ou 0. Voici un mot de 8 bits 2
7
1
2
6
0
2
5
2
1
4
1
2
3
0
2 0
2
2 1
MSB
1
2
0
1 LSB
LSB = bit de poids le plus faible (à droite) MSB = bit de de poids le plus fort (à gauche) LSB = Least significant bit MSB = Most significant bit Le poids des bits dépend de leur rang dans l'écriture : ème
2
3 depuis la droite : 2 = 4 : poids de 4 ème 5 6 depuis la droite : 2 = 32 : poids de 32 etc...
2.3.1 La conversion décimal
binaire
Nous utiliserons la méthode des divisions successives. Principe : on divise le nombre décimal par la base 2, puis le quotient obtenu de nouveau par 2 jusqu'à ce qu'il devienne NUL. Les restes successifs lus de BAS EN HAUT représentent le nombre binaire. Exemple : Transformer 88 10 en binaire 88 44 22 11 5 2 1
: : : : : : :
2 2 2 2 2 2 2
= = = = = = =
44 22 11 5 2 1 0
Rest Restee Rest Restee Rest Restee Rest Restee Rest Restee Rest Restee Rest Restee
0 0 0 1 1 0 1
LSB LSB
MSB MSB
Alors 88 10 = 1011000 2 Important : •
Ne pas oublier la dernière ligne pour avoir le quotient 0.
•
Ne pas oublier de lire de BAS en HAUT.
02 NUMERAT_04/ 10 NUMERAT_04/ 10 JUILLET 2006
Page 3
ETML
Système de numération :
2
Pour la conversion de la partie fractionnaire il est possible d’utiliser la méthode des produits successifs. Principe: Le nombre décimal fractionnaire est multiplié par 2. La partie entière de ce produit représente le premier bit après la virgule. La partie fractionnaire de ce premier produit est à son tour multipliée par 2. La partie entière de ce produit représente le deuxième bit après la virgule. L’opération de conversion continue de la même manière jusqu’à ce que le produit obtenu soit égal à 1.0. Exemple: 0.84375 10 à convertir en binaire. 0.84375 ⋅ 2
= 1.6875
0.6875
⋅2
= 1.375
0.375
⋅2
= 0.75
0.75
⋅2
= 1.5
0.5
⋅2
= 1.0
0.84375 10
=
0, 1 1 0 1 1 2
2.3.2 Conversion binaire
décimal
Il suffit de faire la somme de tous les poids des bits à 1. Les poids des bits à 0 ne sont pas pris. Exemple : soit 10110010 2 à transformer en décimal. Décomposons 2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
128
64
32
16
8
4
2
1
1
0
1
1
0
0
1
0
↓
↓
↓
↓
128
+ 32
+ 16
+2
0
= 178 10
Exemple : soit 0.101 2 à convertir en décimal. Décomposons 2
-1
2
-2
-3
2
0.5
0.25
0.125
1
0
1
↓
↓
0.5
+ 0.125
Cas très utilisé : 2
Page 4
10
= 0.625 10
= 102410 = "kilo" binaire
02 NUMERAT_04 / NUMERAT_04 / 10 10 JUILLET 2006
ETML
Systèmes de numération :
2
2.4 Le système octal Etant donné le peu d'emploi de ce système, nous le citons pour information. Le système octal utilise 8 symboles numériques, les chiffres 0 à 7. C'est donc l a base 8. Par exemple :
651 8
= =
6·8 384
2
+5·8 + 40
1
0
+1·8 +1 = 425 10
Son avantage réside dans sa facilité de conversion en binaire : Chaque chiffre octal est directement équivalent à 3 bits soit
donc
6
5
18
↓ 110
↓ 101
↓ 001
651 8 = 110101001 2
Inversement, l'équivalent octal d'un nombre binaire s'obtient en séparant ses chiffres en tranches de 3, en partant de la droite, et en écrivant l'équivalent octal de chacune de ces tranches. Exemple : 1011101 2 en octal 001
011
101 2
↓ 1
↓ 3
↓ 5
02 NUMERAT_04/ 10 NUMERAT_04/ 10 JUILLET 2006
d'où 1011101 2 = 135 8
Page 5
ETML
Système de numération :
2
2.5 Le système hexadécimal Il est très employé, surtout en informatique. C'est un système numérique ayant pour base 16. On l'utilise pour l'écriture condensée de nombres binaires. Le seul inconvénient est l'utilisation de nouveaux symboles pour les chiffres supérieurs à 9. Les 16 symboles sont les suivants : •
Dix chiffres de 0 à 9.
•
Six lettres majuscules de A à F
Les symboles hexadécimaux A à F correspondent aux valeurs décimales 10 à 15. Un caractère hexadécimal représente un mot binaire de 4 bits. Cette écriture est de loin plus pratique qu'une suite de 1 et de 0.
Exemple :
01101011 2 = 6B 16 11111111 2 = FF 16
2.5.1 Conversion hexadécimal Exemples :
356 16
2 AF 16
décimal
= 3 ·16 = 768
2
= 2 ·16 = 512
2
+ 5 ·16 + 80
+10 ·16 + 160 2
A3F.C 16 = 10 ·16 +3 ·16 = 2560 + 48
2.5.2 Conversion décimal
1
1
1
+ 6 ·16 +6
0
= 854 10
+ 15 ·16 + 15
0
+ 15 ·16 + 15
0
= 687 10 + 12 ⋅ 16 + 0.75
-1
= 2623.75 10
hexadécimal
Comme en binaire on procédait par divisions successives par deux, on va ici opérer par des divisions successives par 16 en conservant les mêmes principes. Exemple : 423 : 16 26 : 16 1 : 16
Convertir 423 10 en hexadécimal = = =
26 reste 1 reste 0 reste
7 10 1
LSB ↑ MSB
423 10 = 1A7 16 Pour la partie fractionnaire, on procède par produits successifs par 16. Exemple:
Convertir 0.2265625 10 en hexadécimal
0.2265625
⋅ 16 = 3.625
0.625
⋅ 16 = 10.0
0.2265625 10
Page 6
= 0.3A 16
02 NUMERAT_04 / NUMERAT_04 / 10 10 JUILLET 2006
ETML
Systèmes de numération :
2.5.3 Conversion hexadécimal
2
binaire
Cette conversion est très simple. Chaque symbole hexadécimal est remplacé par son équivalent binaire de 4 bits. Exemple : 9F3 16 à convertir en binaire 9 1001
F 1111
3 0011
9F3 16 = 100111110011 2 Exemple : AC1.3B 16 à convertir en binaire A 1010
C 1100
1 0001
. .
3 0011
B 1011
AC1.3B 16 = 101011000001 . 0011 1011 2
2.5.4 Conversion binaire
hexadécimal
C'est l'inverse de la précédente, donc avec autant de simplicité, on divise le nombre binaire par tranches de 4 chiffres depuis la droite, puis on substitue à chaque groupe son équivalent hexadécimal. Exemple : 110110100111 2 à convertir en hexadécimal 1101 D
1010 A
0111 7
Donc 110110100111 2 = DA7 16 Exemple : 10011010101.10001 10011010101.10001 2 à convertir en hexadécimal 100 4
1101 D
0101 5
. .
1000 8
1 8
Donc 10011010101.10001 10011010101.10001 2 = 4D5 . 88 16
02 NUMERAT_04/ 10 NUMERAT_04/ 10 JUILLET 2006
Page 7
ETML
Système de numération :
2
2.5.5 Table d'équivalence décimal - binaire - hexadécimal Base 10 décimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
Page 8
Base 2 binaire 0 1 10 11 100 101 110 111 1000 1001 1010 1011 1100 1101 1110 1111 10000 10001 10010 10011 10100 10101 10110 10111 11000 11001 11010 11011 11100 11101 11110 11111 100000
Base 16 hexadécimal 0 1 2 3 4 5 6 7 8 9 A B C D E F 10 11 12 13 14 15 16 17 18 19 1A 1B 1C 1D 1E 1F 20
02 NUMERAT_04 / NUMERAT_04 / 10 10 JUILLET 2006
ETML
Systèmes de numération :
2
2.6 Exercices 2.6.1 Convertir les binaires suivants en décimal a) 001100
2
e) 101010
b) 000011
2
f) 111111 2
j) 11100.011 2
c) 011100
2
g) 100001
2
k) 110011.10011 2
h) 111000 2
l) 1010101010.1 2
d) 111100 2
2
i) 11110001111 2
2.6.2 Convertir les décimaux suivants en binaire a) 64 10
d) 145 10
g) 34.75 10
b) 100 10
e) 255 10
h) 25.25 10
c) 111 10
f) 500 10
i) 27.1875 10
2.6.3 Convertir les octaux suivants en décimal a) 42 8
c) 1057 8
e) 37.123 8
b) 376 8
d) 11.11 8
f) 45.765 8
2.6.4 Convertir les octaux suivants en binaire a) 3 8
c) 16.3 8
e) 37.6 8
b) 72 8
d) 20.1 8
f) 11.4 8
2.6.5 Convertir les binaire suivants en octal a) 011 2
c) 111.001 2
e) 110110.11011 2
b) 111000 2
d) 1011.011 2
f) 11000.1001 2
2.6.6 Convertir les hexadécimaux suivants en décimal a) C 16
c) D3.E 16
e) 888.8 16
b) 67E 16
d) 1111.1 16
f) EBA.C 16
2.6.7 Convertir les décimaux suivants en hexadécimal a) 8 10
e) 80 10
i) 204.125 10
b) 10 10
f) 2560 10
j) 255.875 10
c) 14 10
g) 3000 10
k) 631.25 10
d) 16 10
h) 62500 10
l) 10000.00390625 10
02 NUMERAT_04/ 10 NUMERAT_04/ 10 JUILLET 2006
Page 9
ETML
Système de numération :
2
2.6.8 Convertir les hexadécimaux suivants en binaire a) B 16
d) A64 16
g) AB.F 16
b) E 16
e) 1F.C 16
h) 123.8 16
c) 1C 16
f) 239.4 16
i) 2AB.C4 16
2.6.9 Convertir les binaire suivants en hexadécimal a) 1001.1111 2
c) 110101.011001 2
e) 10100111.111011 2
b) 10000001.1101 2
d) 10000.1 2
f) 1000000.0000111 2
Page 10
02 NUMERAT_04 / NUMERAT_04 / 10 10 JUILLET 2006
ETML
Les codes binaires :
3
3. LES CODES BINAIRES 3.1 Introduction L'action de faire correspondre à des nombres, des lettres ou des mots un groupe spécial de symboles s'appelle CODAGE et le groupe de symboles s'appelle un CODE. En fait, le binaire est déjà un codage par rapport au décimal. Nous allons examiner quelques codes que nous utiliserons plus tard.
3.2 Le code BCD BCD est la contraction de Binary Coded Decimal se traduisant par décimal codé binaire. L'homme étant habitué au système décimal, il a été nécessaire de créer un code permettant de conserver les avantages du système décimal sans sacrifier la simplicité de conversion directe en binaire. Le BCD n'utilise que les 10 premières combinaisons. Pour chaque chiffre décimal, nous avons besoin de 4 bits. Attention : Ne pas confondre le BCD avec le binaire naturel. Exemple : 347 10 à convertir en BCD 3
4
710
mais
↓ 0011
↓ 0100
↓ 0111BCD
34710 ↓ 101011011 2
347 10= 0011 0100 0111 en BCD et 101011011 en binaire 3.2.1 Table des codes BCD
Equivalent décimal 0 1 2 3 4 5 6 7 8 9
03 CODAGE_04/ 10 CODAGE_04/ 10 JUILLET 2006
BCD 8 0 0 0 0 0 0 0 0 1 1
4 0 0 0 0 1 1 1 1 0 0
2 0 0 1 1 0 0 1 1 0 0
1 0 1 0 1 0 1 0 1 0 1
Page 1
ETML
Les codes binaires :
3
3.3 Le code majoré de 3 (excédent 3) ou EXCESS-3 ou XS-3 Apparenté au code BCD, on a parfois recours au code XS-3 en raison de la simplification qu'il apporte à certains calculs arithmétiques : On a ajouté 3 à chaque terme BCD, ce qui donne un effet miroir complémentaire entre 4 et 5. 3.3.1 Table du code XS3
Décimal 0 1 2 3 4 5 6 7 8 9
XS 3 0 0 0 0 0 1 1 1 1 1
0 1 1 1 1 0 0 0 0 1
1 0 0 1 1 0 0 1 1 0
1 0 1 0 1 0 1 0 1 0
3.4 Le code de de Gray ou binaire réfléchi C'est un code à distance minimale car on passe d'une ligne à la suivante en ne changeant qu'un seul bit. On ne peut affecter aucun poids aux bits dans les groupes codés : ce code est non pondéré. 3.4.1 Table des codes Gray de 0 à 15
Décimal 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Page 2
Gray 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 0
0 0 1 1 1 1 0 0 0 0 1 1 1 1 0 0
0 1 1 0 0 1 1 0 0 1 1 0 0 1 1 0
03 CODAGE_04 / CODAGE_04 / 10 10 JUILLET 2006
ETML
Les codes binaires :
3.4.2 Conversion binaire
3
Gray
•
Le bit de gauche du code Gray est le même que le bit de gauche du nombre binaire.
•
Ajouter le MSB du nombre binaire à son voisin immédiat et reporter la somme en négligeant une retenue éventuelle sur la ligne inférieure correspondante au code Gray.
•
Continuer l’addition des bits à leur voisin de droite et reporter les sommes ainsi obtenues jusqu’à atteindre attein dre le LSB.
•
Le nombre en code Gray comportera toujours le même nombre de bits que le binaire original.
Exemple : soit à convertir le binaire 10110
1 ↓ 1
1 0 + ↓ 1
0 1 + ↓ 1
3.4.3 Conversion Gray
1 1 + ↓ 0
1 0 + ↓ 1
Nombre binaire
Code Gray
binaire
•
Le bit de gauche du nombre binaire est le même que le bit de gauche du code Gray.
•
Ajouter le MSB du nombre binaire obtenu au voisin de droite immédiat du code Gray.
•
Continuer les additions jusqu’à atteindre le LSB.
Exemple : soit à convertir le code Gray 1001
1 ↓ 1
1 0 + ↓ 1
1 0 + ↓ 1
1 1 + ↓ 0
Code Gray
Binaire
3.5 Le code code ASCII ASCII est la contraction de American Standard Code for Information Interchange. C'est un code alphanumérique utilisé dans les mini-ordinateurs et micro-ordinateurs. Il permet de coder : 26 lettres minuscules • •
26 lettres majuscules
•
10 chiffres
•
environ 25 caractères spéciaux et signes
Chaque code comporte 7 bits. Le code ASCII est employé dans la transmission d'informations alphanumériques entre un ordinateur et des dispositifs d'entrée/sortie externes (clavier, imprimante, écran, etc..)
03 CODAGE_04/ 10 CODAGE_04/ 10 JUILLET 2006
Page 3
ETML
Les codes binaires :
3
3.5.1 Table ASCII (liste partielle)
Caractère A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9 blanc . ( + $ * ) / , =
Page 4
ASCII à 7 éléments 100 0001 100 0010 100 0011 100 0100 100 0101 100 0110 10 0 0111 100 1000 100 1001 100 1010 100 1011 100 1100 100 1101 100 1110 100 1111 101 0000 101 0001 101 0010 101 0011 101 0100 101 0101 101 0110 101 0111 101 1000 101 1001 101 1010 011 0000 011 0001 011 0010 011 0011 011 0100 011 0101 011 0110 011 0111 011 1000 011 1001 010 0000 010 1110 010 1000 010 1011 010 0100 0101010 010 1001 010 1101 010 1111 010 1100 011 1101
Hexadécimal 41 42 43 44 45 46 47 48 49 4A 4B 4C 4D 4E 4F 50 51 52 53 54 55 56 57 58 59 5A 30 31 32 33 34 35 36 37 38 39 20 2E 28 2B 24 2A 29 2D 2F 2C 3D
03 CODAGE_04 / CODAGE_04 / 10 10 JUILLET 2006
ETML
LES CODES BINAIRES :
3
3.6 Exercices 3.6.1 Convertir les BCD suivants en décimal
a) 00010111
c) 010101000011
e) 0001000000000000.0101
b) 10000110
d) 00110010.10010100
f) 1010
3.6.2 Convertir les décimaux suivants en BCD
a) 6
c) 99.9
e) 145.6
b) 13
d) 872.8
f) 21.001
3.6.3 Convertir les décimaux suivants en XS3
a) 9
c) 37
e) 650
b) 18
d) 42
f) 689
3.6.4 Convertir les BCD suivants en XS3
a) 0001
c) 01100000
e) 10000100
b) 0111
d) 00101001
f) 00111100
3.6.5 Convertir les XS3 suivants en décimal
a) 0011
c) 11001011
e) 10000101
b) 01100100
d) 10011010
f) 00010000
3.6.6 Convertir les binaires suivants en code Gray
a) 1010
c) 10001
e) 10011
b) 10000
d) 10010
f) 11100
3.6.7 Convertir les codages Gray suivants en binaire
a) 0100
c) 10101
e) 11100
b) 11111
d) 110011
f) 101010
3.6.8 Codage ASCII
Donner la liste des codages ASCII correspondants à l’émission par un clavier du message:
PAY(ER) F.10.0
Page 5
03 CODAGE_04 / CODAGE_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4. SYSTEMES LOGIQUES COMBINATOIRES
4.1 Les fonctions logiques de base Pour étudier les systèmes logiques, il est nécessaire de posséder: •
•
Un outil mathématique, c'est l'algèbre de Boole. Dans cet ensemble de lois mathématiques, il n'y a que deux constantes que nous désignerons par 0 et 1. Ces symboles 0 et 1 représentent deux ETATS et non deux chiffres. On utilise aussi H pour high (haut) et L pour low (bas). Un outil physique physique pour matérialiser matérialiser les fonctions de base utilisées, ce sont les circuits logiques.
Les variables sont des grandeurs qui ne peuvent prendre que deux états (0 ou 1). Comme en algèbre ordinaire, on symbolise ces variables par des lettres, par exemple : •
variables d'entrée : A, B, C, D, X, Y, etc...
•
variables de sortie :
F S L M
⇒ ⇒ ⇒ ⇒
Fonction Sortie Lampe Moteur, etc...
Une expression booléenne est une association de variables liées par des signes d'opérations Exemple: S = A · B + C Lire S égale A et B ou C car en algèbre de Boole · = ET, + = OU (sera expliqué plus loin) Lorsque l'état des sorties d'un système logique ne dépend uniquement que de l'état des entrées et non du passé du système, on parle de LOGIQUE COMBINATOIRE, dans le cas contraire, on parle de LOGIQUE SEQUENTIELLE.
4.2 La table de vérité (en abrégé TdV) Elle permet de connaître systématiquement les états que peut prendre une fonction logique pour TOUTES les combinaisons des variables. Pour n variables, nous aurons 2 n combinaisons différentes. Exemples: •
Pour 1 variable, la TdV TdV aura 21 = 2 lignes
•
Pour 2 variables, la TdV aura 2 2 = 4 lignes
•
Pour 3 variables, la TdV aura 2 3 = 8 lignes
•
Pour 4 variables, la TdV aura 2 4 = 16 lignes
La partie gauche de la table de vérité contient TOUTES les combinaisons des variables (entrées). La partie droite contient la valeur prise par l'expression pour chaque combinaison (sortie).
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 1
ETML
Systèmes logiques combinatoires
: 4
Pour la réalisation de la TdV, on remarque que la variable A (poids faible) change à chaque ligne, la variable B change toutes les deux lignes, C toutes les quatre lignes, etc... Exemple: TdV à trois variables C
B
A
S
0
0
0
1
0
0
1
1
0
1
0
0
0
1
1
1
1
0
0
0
1
0
1
0
1
1
0
0
1
1
1
1
Conseil: dans la partie gauche, toujours placer la variable de plus faible poids le plus à droite, puis placer les autres variables vers la gauche dans l'ordre croissant des poids. Cette disposition évitera des ennuis par la suite.
Variables État de d'entrée la sortie
4.3 Les opérateurs logiques de base Définissons tout d'abord le BLOC LOGIQUE: C'est un symbole qui exprime une relation d'opération entre les entrées et les sorties sans représenter un circuit physique. Nous utiliserons les symboles de la norme US-MIL ainsi que les symboles de la norme CEI (commission électrotechnique internationale). La préférence sera donnée à cette dernière norme, beaucoup plus précise dès que la complexité des circuits augmente. La norme CEI est incluse dans les logiciels DAO pour circuits électroniques tels ORCAD, P-CAD, etc... 4.3.1 La fonction Inversion aussi appelée fonction NON (NO) (INV) (inversion)
On l'exprime en plaçant une barre au-dessus du symbole à inverser. Exemple:
qu'on lit "A barre" ou aussi "Non A". Variable non surmontée d'une barre Variable surmontée d'une barre A
⇒ ⇒
forme vraie forme inverse ou complémentée
: Toute entrée d'un circuit logique non raccordée (entrée en l'air) se met dans l'état "1" et est sensible aux parasites (effet d'antenne). On prendra donc garde de ne jamais laisser une entrée inutilisée en l’air, même si la porte n’est pas utilisée.
Attention
Page 2
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.3.1.1 Symboles de l'inversion
NORME MIL A
A
NORME CEI
A
A 1
A
A
1
A
A 1
A
A
1
A
A
Remarque: En norme CEI, la pointe du triangle sur la ligne indique la direction de propagation de l'information. 4.3.1.2 TdV de l'inverseur
A
S= A
0
.....
1
.....
4.3.1.3 Formes d’ondes d’ondes correspondantes correspondantes
A S
1 0 1 0
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 3
ETML
Systèmes logiques combinatoires
: 4
4.3.1.4 Exemple de circuit circuit intégré pour l’inverseur l’inverseur
74LS04 Ce numéro peut être décomposé en trois parties. •
74
Numéro de la série TTL (Transistor Transistor Logic).
•
LS
Indication de la technologie utilisée: Schottky faible consommation.
•
04
Numéro indiquant le contenu de l’IC: 6 inverseurs avec le brochage suivant. VCC 14
13
12
11
10
9
8
1
2
3
4
5
6
7
GND
La patte 7 doit être reliée au GND (Ground, terre, 0 V). La patte 14 doit être reliée au VCC, soit +5 V pour la série 74. Les six inverseurs contenus dans un IC 74LS04 ne fonctionnent que si l’IC est correctement alimenté en 5 V entre les pattes 7 et 14. Prendre garde à la numérotation des inverseurs. 4.3.2 La fonction ET (AND)
Cette opération est appelée multiplication ou produit logique. On l'exprime par un point (qui se lit ET), par des parenthèses ou par des variables qui se suivent, comme en algèbre: A·B·C
(A + B) C
AB + CD
ou encore : A ∩ B ∩ C 4.3.2.1 Symboles logiques d’une porte ET
MIL
CEI A
A S=A⋅B B
Page 4
B
&
S=A⋅B
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.3.2.2 TdV de la porte ET
B
A
S=A·B
0
0
.....
0
1
.....
1
0
.....
1
1
.....
4.3.2.3 Formes d’ondes d’ondes correspondantes correspondantes
1
A
0 1
B
0 1
S
0 4.3.2.4 Exemple de circuit intégré intégré pour la porte ET
74LS08 Ce numéro est décomposé de la même manière que le 74LS04. •
08
Numéro indiquant le contenu de l’IC: 4 portes ET avec le brochage suivant. VCC
B4
A4
S4
B3
A3
S3
14
13
12
11
10
9
8
1
2
3
4
5
6
7
A1
B1
S1
A2
B2
S2
GND
Prendre garde à la numérotation des portes. 4.3.3 La fonction OU (OR)
Cette opération est appelée addition ou somme logique. Pour l'indiquer, on utilise le signe + (se lit "ou"). A+B ou encore A ∪ B 04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 5
ETML
Systèmes logiques combinatoires
: 4
4.3.3.1 Symboles logiques d’une porte OU
MIL
CEI
A
A
S=A+B
B
B
≥
1
S=A+B
4.3.3.2 TdV de la porte OU
B
A
S=A+B
0
0
.....
0
1
.....
1
0
.....
1
1
.....
4.3.3.3 Formes d’ondes d’ondes correspondantes correspondantes
1
A
0 1
B
0 1
S
0 4.3.3.4 Exemple de circuit circuit intégré pour la porte OU
74LS32 Ce numéro est décomposé de la même manière que le 74LS04. •
32
Numéro indiquant le contenu de l’IC: 4 portes OU avec le brochage suivant. VCC
B4
A4
S4
B3
A3
S3
14
13
12
11
10
9
8
1
2
3
4
5
6
7
A1
B1
S1
A2
B2
S2
GND
Prendre garde à la numérotation des portes.
Page 6
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.3.4 La fonction NON-ET (NAND)
C'est l'association de la porte ET avec un inverseur. Le résultat de la fonction ET est inversé en sortie.
A⋅ B 4.3.4.1 Symboles logiques d’une porte NON-ET
MIL A
CEI A
S=AB
B
&
B
S=AB
ou
A B
&
S=AB
4.3.4.2 TdV de la porte NON-ET
B
A
S=A⋅B
0
0
.....
0
1
.....
1
0
.....
1
1
.....
4.3.4.3 Formes d’ondes d’ondes correspondantes correspondantes
A B S
1 0 1 0 1 0
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 7
ETML
Systèmes logiques combinatoires
: 4
4.3.4.4 Exemple de circuit circuit intégré pour la porte porte NON-ET
74LS00 Ce numéro est décomposé de la même manière que le 74LS04. •
00
Numéro indiquant le contenu de l’IC: 4 portes NON-ET avec le brochage suivant. VCC
B4
A4
S4
B3
A3
S3
14
13
12
11
10
9
8
1
2
3
4
5
6
7
A1
B1
S1
A2
B2
S2
GND
Prendre garde à la numérotation des portes. 4.3.5 La fonction NON-OU ou NI (NOR)
C'est l'association de la porte OU avec un inverseur. Le résultat de la fonction OU est inversé en sortie. A+ B
4.3.5.1 Symboles logiques d’une porte NON-OU
MIL A B
CEI A B
S=A+B
≥
1
S=A+B
ou
A B
≥
1
S=A+B
4.3.5.2 TdV de la porte NON-OU
Page 8
B
A
A+B
0
0
.....
0
1
.....
1
0
.....
1
1
.....
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.3.5.3 Formes d’ondes d’ondes correspondantes correspondantes
1
A
0 1
B
0 1
S
0 4.3.5.4 Exemple de circuit circuit intégré pour la porte porte NON-OU
74LS02 Ce numéro est décomposé de la même manière que le 74LS04. •
02
Numéro indiquant le contenu de l’IC: 4 portes OU avec le brochage suivant. VCC
S4
B4
A4
S3
B3
A3
14
13
12
11
10
9
8
1
2
3
4
5
6
7
S1
A1
B1
S2
A2
B2
GND
Prendre garde à la numérotation des portes. 4.3.6 La fonction OU EXCLUSIF (XOR)
La porte OU EXCLUSIF a un niveau haut à sa sortie lorsqu’il y a un nombre impair de 1 aux entrées. Pour une porte OU EXCLUSIF à deux entrées, la sortie est haute si une entrée ou l’autre est à 1, mais pas les deux à la fois. A⋅B+A⋅B=A⊕B 4.3.6.1 Symboles logiques d’une porte OU EXCLUSIF
MIL A
CEI S=A⊕B
B
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
A
=1
S=A⊕B
B
Page 9
ETML
Systèmes logiques combinatoires
: 4
4.3.6.2 TdV de la porte OU EXCLUSIF
B
A
A⊕B
0
0
.....
0
1
.....
1
0
.....
1
1
.....
4.3.6.3 Formes d’ondes d’ondes correspondantes correspondantes
1
A
0 1
B
0 1
S
0 4.3.6.4 Exemple de circuit circuit intégré pour la porte porte OU EXCLUSIF
74LS86 Ce numéro est décomposé de la même manière que le 74LS04. •
86 Numéro indiquant le contenu de l’IC: 4 portes OU EXCLUSIF avec le brochage suivant. VCC
B4
A4
S4
B3
A3
S3
14
13
12
11
10
9
8
1
2
3
4
5
6
7
A1
B1
S1
A2
B2
S2
GND
Prendre garde à la numérotation des portes.
Page 10
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.3.7 La fonction NON-OU EXCLUSIF ou NI EXCLUSIF (XNOR)
La porte NON-OU EXCLUSIF a un fonctionnement exactement opposé à celui du circuit OU EXCLUSIF. A⋅B+A⋅ B= A⊕B 4.3.7.1 Symboles logiques d’une porte NON-OU EXCLUSIF
MIL A
CEI A
S=A⊕B
=1
B
B
A
ou
=1
S=A⊕B
B
4.3.7.2 TdV de la porte NON-OU EXCLUSIF
B
A
A⊕B
0
0
.....
0
1
.....
1
0
.....
1
1
.....
4.3.7.3 Formes d’ondes d’ondes correspondantes correspondantes
A B S
1 0 1 0 1 0
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 11
ETML
Systèmes logiques combinatoires
: 4
4.3.7.4 Exemple de circuit circuit intégré pour la porte porte NON-OU EXCLUSIF EXCLUSIF
74LS266 Ce numéro est décomposé de la même manière que le 74LS04. •
266 Numéro indiquant le contenu contenu de l’IC: 4 portes NON-OU EXCLUSIF avec le brochage suivant. VCC
B4
A4
S4
Y3
B3
A3
14
13
12
11
10
9
8
1
2
3
4
5
6
7
A1
B1
S1
S2
A2
B2
GND
Prendre garde à la numérotation des portes.
4.4 Opérations booléennes
Page 12
OU
ET
NON
0 + 0 = .....
0 ⋅ 0 = .....
0 = ... .......
0 + 1 = .....
0 ⋅ 1 = .....
1 = .....
1 + 0 = .....
1 ⋅ 0 = .....
1 + 1 = .....
1 ⋅ 1 = .....
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.5 Mise sous forme algébrique des circuits logiques Tout circuit logique, quelle que soit sa complexité, peut être décrit au moyen des opérations booléennes. 4.5.1 Exemple de mise sous forme algébrique A
B
C
D
1
1
.............
&
& .............
&
.............
≥
.............
1
.............
.............
4.6 Évaluation des sorties des circuits logiques Quand on connaît l’expression booléenne de la sortie d’un circuit, il est possible de trouver le niveau logique correspondant à n’importe lesquelles des valeurs se trouvant aux entrées du circuit. 4.6.1 Exemple d’évaluation
Déterminons le niveau logique de la sortie du schéma du paragraphe 4.5.1. A=1 B=0 C=0 D=1
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 13
ETML
Systèmes logiques combinatoires
: 4
4.7 Détermination d’un niveau de sortie d’après d’après un diagramme diagramme Le niveau d’une sortie pour des entrées données se détermine également directement d’après le diagramme du circuit, sans qu’il soit nécessaire de recourir à l’expression booléenne. Cette méthode est particulièrement indiquée lors de dépannage de circuits logiques. 4.7.1 Exemple
Déterminons l’état de la sortie S, si les quatre entrées sont à 0. A
&
.....
1
.....
B C
≥
1
.....
≥
1
S = .....
D =1
.....
4.8 Construction de circuits à partir d’expressions booléennes Il est possible de tracer directement un diagramme logique à partir d’une expression booléenne. booléenne. 4.8.1 Exemple
Tracer le circuit qui matérialise l’expression
Page 14
S = AC + B C + ABC
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.9 Théorèmes de Boole 1. x ⋅ 0 = ..... 2. x ⋅ 1 = ..... 3. x ⋅ x =... =....... 4. x ⋅ x = ..... 5. x + 0 = . . . . . 6. x + 1 = . . . . . 7. x + x = . . . . . 8. x + x = ..... 9. x + y = y + x 10. x ⋅ y = y ⋅ x 11. x + ( y + z ) = ( x + y ) + z = x + y + z 12. x ( y z ) = ( x y ) z = x y z 13.x(y+z)=xy+xz 14.(w+x)(y+z)=wy+wz+xy+xz 15.x+xy=x 16.x + yz = (x + y) (x + z) 17.x + x y = x + y
4.10 Théorèmes de De Morgan Morgan Les théorèmes du mathématicien De Morgan se révèlent d’une grande utilité pour simplifier des expressions comprenant des sommes ou des produits de variables complémentés. •
(X + Y) = X ⋅ Y
•
(X ⋅ Y) = X + Y
4.10.1 Exemple d’utilisation des théorèmes de De Morgan
Simplifier l’expression z = (A + C) ⋅ (B + D)
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 15
ETML
Systèmes logiques combinatoires
: 4
4.10.2 Exemple d’utilisation des théorèmes de De Morgan
Simplifier l’expression z = (A + (B ⋅ C))
4.10.3 Exemple d’utilisation des théorèmes de De Morgan
Simplifier l’expression z = (A + BC) ⋅ (D + EF)
4.10.4 Conséquences Conséquences des théorèmes de De Morgan
Le premier théorème •
(X + Y) = X ⋅ Y
peut se traduire schématiquement
X Y
≥
1
X+Y
≡
X Y
&
X⋅Y = X + Y
La fonction NOR peut donc être représentée de deux manières.
Page 16
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
Le deuxième théorème •
(X ⋅ Y) = X + Y
peut se traduire schématiquement
X Y
&
X
≡
X⋅Y
Y
≥
1
X + Y = X⋅Y
La fonction NAND peut donc être représentée de deux manières.
4.11 Universalité de la porte NAND Toute expression logique est réalisable en ne recourant qu’à des portes NAND.
&
&
≡ &
≡
&
≡
&
&
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 17
ETML
Systèmes logiques combinatoires
: 4
De même toute expression logique est réalisable en ne recourant qu’à des portes NOR. ≥
1
≥
1
≥
≥
≡ ≥
1
≡
≥
1
≡
1
1
4.12 Simplification des circuits logiques 4.12.1 Forme canonique
C’est la forme sous laquelle nous allons exprimer les équations à simplifier. Voici quelques exemples: •
ABC + ABC
•
AC + BC + AB + D
•
A B + CD + A D + EF + G H
Il est à noter, que dans la forme canonique, le signe de complémentation (barre) ne peut pas surmonter plus d’une variable d’un terme. On ne peut pas avoir par exemple: •
BCD
•
ACD
4.12.2 Simplification algébrique
Ces simplifications sont faites en utilisant les théorèmes de De Morgan et de Boole.
Page 18
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.12.2.1 Exemple
Simplifier le circuit suivant: C
B
A 1 &
& ≥
1
1
x
1
&
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 19
ETML
Systèmes logiques combinatoires
: 4
4.12.2.2 Exemple
Simplifier l’expression
z = ABC + ABC + A BC
4.12.2.3 Exemple
Simplifier l’expression
Page 20
z = (A + B)(A + B + D)D
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.12.2.4 Exemple
Simplifier l’expression
z
=
A C (A B D ) + A BC D + A BC
4.13 Conception de circuits logiques logiques combinatoires Cette conception peut se faire de la manière suivante: 1. Construire la table de vérité selon la donnée du problème. 2. Ecrire l’expression Booléenne relative à la Tdv. 3. Simplifier l’équation. 4. Simulation 5. Réaliser le schéma de l’équation simplifiée. 6. Mise en service et dépannage. 4.13.1 Construction de la Tdv
Il s’agit de traduire une donnée de problème ou un cahier des charges d’un client en une Tdv. On prendra donc soin d’analyser toutes les possibilités des variables d’entrées. C’est certainement le point le plus important de la conception. Une Tdv ne peut être correcte que si les données sont parfaitement comprises. 4.13.2 Ecriture de l’expression Booléenne
Cette écriture peut se faire sous deux formes: 1. Somme de produits. 2. Produit de sommes.
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 21
ETML
Systèmes logiques combinatoires
: 4
4.13.2.1 Somme de produits ou forme minterme
Toutes les lignes de la Tdv comportant un « 1 » à la sortie sont additionnées logiquement pour donner l’expression Booléenne. C
B
A
Y
0
0
0
0
0
0
1
1
0
1
0
0
0
1
1
0
1
0
0
0
1
0
1
0
1
1
0
0
1
1
1
1
ABC
ABC
y = ABC + A B C 4.13.2.2 Produit de sommes ou ou forme maxterme
Toutes les lignes de la Tdv comportant un « 0 » à la sortie sont multipliées logiquement. Pour ces lignes, toutes les variables d’entrée sont inversées et additionnées logiquement. C
B
A
Y
0
0
0
0
0
0
1
1
0
1
0
1
0
1
1
1
1
0
0
1
1
0
1
0
1
1
0
1
1
1
1
1
A+B+C
A +B+C
y = (A + B +C) ⋅ ( A + B + C ) Pour cet exemple, l’expression sous la forme minterme est plus longue et donc moins avantageuse. Chaque cas doit être analysé afin de choisir la meilleure forme.
Page 22
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.13.3 Simplification de l’équation
Cette simplification peut se faire de manière algébrique, en utilisant les théorèmes de Boole et de De Morgan. L’équation y = ABC + ABC + ABC + ABC peut par exemple être simplifiée de la manière suivante: Le terme A B C comporte deux variables communes avec chacun des autres termes. L’algèbre de Boole nous autorise à ajouter deux autres termes A B C et de mettre en facteur: y = ABC + ABC + ABC + ABC + ABC + ABC y = BC(A + A) + AC(B + B) + AB(C + C) y=BC+AC+AB y = C (B + A) + A B Le chapitre suivant nous montrera une autre méthode pour la simplification de ces équations. 4.13.4 Schéma de l’équation simplifiée
Il s’agit de convertir l’équation obtenue en un schéma réalisable. Par exemple pour l’équation obtenue au chapitre 4.13.3 : y=BC+AC+AB Le schéma comporte 3 portes ET à 2 entrées et une porte OU à 3 entrées. C
B
A &
&
≥
1
y
&
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 23
ETML
Systèmes logiques combinatoires
: 4
Dans la série TTL, les portes NON-ET sont les plus répandues. Pour cette raison nous allons transformer le schéma obtenu ci-dessus de manière à n’utiliser que des portes NAND. Nous utiliserons le théorème de De Morgan pour cette transformation: C
B
A &
&
≥
y
1
&
Les 3 AND à 2 entrées sont transformées en NAND en ajoutant un cercle aux sorties. Pour rétablir l’égalité logique, il faut ajouter un cercle d’inversion aux entrées de la porte OR. La porte OR ayant ces entrées inversées n’est autre qu’une des représentations d’une porte NAND à deux entrées. Sur le schéma définitif, on laissera de préférence cette représentation qui illustre bien la forme originelle d’une somme de produit. 4.13.5 Mise en service et dépannage
Il ne reste plus qu’à réaliser le câblage pratique, pour ce faire on indique sur le schéma les numéros des bornes de chaques portes utilisées: C
B
A
D1a 1
&
3
2 D1b 4
&
D2a 13 1 2
6
5
≥
1
12
y
D1c 9
&
8
10 D1d 12 D1 = 74LS00 D2 = 74LS10
13
&
D2b 11
3 4 5
≥
1
D2c 6
9 10 11
≥
1
8
Alimentation D1 à D2: VCC pin 14 GND pin 7
Page 24
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.14 Tables de Karnaugh L’algèbre de Boole est la base de la simplification de tous les circuits logiques. Une des méthodes de simplification les plus simples à mettre en oeuvre est la méthode des tables ou diagrammes de Karnaugh. C’est une méthode de simplification graphique fondée sur l’application de l’algèbre de Boole. Elle comporte les étapes suivantes: 1. Déduire un minterme de la Tdv. 2. Reporter les " 1 " sur la table de Karnaugh. 3. Faire des boucles de groupes adjacents de 2, 4, 8, 2 X " 1 " sur la table de Karnaugh. 4. Eliminer la ou les variables qui apparaissent avec leur complément à l’intérieur d’une boucle et garder les variables restantes. 5. Additionner logiquement les groupes qui restent pour former le minterme simplifié. 4.14.1 Exemple pour deux entrées
B
A
S
0
0
0
0
1
1
1
0
1
1
1
1
B
B
A A
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 25
ETML
Systèmes logiques combinatoires
: 4
4.14.2 Exemple pour trois entrées
C
C
B
A
S
0
0
0
0
0
0
1
1
0
1
0
1
0
1
1
1
1
0
0
0
1
0
1
1
1
1
0
0
1
1
1
1
C
C
AB AB AB
Ou
B A
AB
Page 26
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.14.3 Exemple pour quatre entrées
CD
CD
D
C
B
A
S
0
0
0
0
0
0
0
0
1
1
0
0
1
0
0
0
0
1
1
1
0
1
0
0
0
0
1
0
1
1
0
1
1
0
1
0
1
1
1
1
1
0
0
0
0
1
0
0
1
1
1
0
1
0
0
1
0
1
1
1
1
1
0
0
0
1
1
0
1
1
1
1
1
0
0
1
1
1
1
1
CD
C
CD
AB AB AB
Ou
B A
AB D
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 27
ETML
Systèmes logiques combinatoires
: 4
4.14.4 Quelques bouclages particuliers
C
C
1
1
1
B
B
A
A 1
1
1 D
S = ........................... .............................
S = .......................... ..............................
C
1
A
1
1
1
1
C 1
B
B A 1
D S = ........................... .............................
1 D
S = ............................ ............................
4.14.5 Etats indéterminés
Si dans une Tdv, une ligne correspond à un cas indéterminé, la sortie peut prendre la valeur " 0 " ou " 1 ". On utilisera dans les tables de Karnaugh un " X " ou " Φ" qui pourra être pris soit pour un " 1 " soit pour un " 0 ". Par exemple si A est le fin-de-course droite de la table d’une fraiseuse et B le fin-de-course gauche, toutes les lignes de la Tdv où A = B = 1 auront leur sortie à un état indéterminé. 4.14.6 Tables de Karnaugh à maxtermes
1. Déduire un maxterme de la Tdv (Attention à la forme inversée). 2. Reporter les " 1 " sur la table de Karnaugh à maxtermes. 3. Faire des boucles de groupes adjacents de 2, 4, 8, 2 X " 1 " sur la table de Karnaugh. 4. Eliminer la ou les variables qui apparaissent avec leur complément à l’intérieur d’une boucle et garder les variables restantes. 5. Multiplier logiquement les groupes qui restent pour former le maxterme simplifié.
Page 28
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.14.6.1 Exemple
D
C
B
A
S
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
1
1
1
0
1
0
0
1
0
1
0
1
1
0
1
1
0
1
0
1
1
1
1
1
0
0
0
0
1
0
0
1
1
1
0
1
0
0
1
0
1
1
1
1
1
0
0
1
1
1
0
1
1
1
1
1
0
1
1
1
1
1
1 C
C+D C+D C+D C+D A+B A+B A+B
Ou
B A
A+B D
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 29
ETML
Systèmes logiques combinatoires
: 4
4.15 Exercices 4.15.1 Exercice sur la fonction AND 4.15.1.1 Compléter le diagramme des temps Y1 4.15.1.2 Compléter le diagramme des temps Y2 si l’entrée A est court-circuitée à la masse. 4.15.1.3 Compléter le diagramme des temps Y3 si l’entrée A est court-circuitée au V CC .
A
B
A & B
C
Y
C
Y1
Y2
Y3
Page 30
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.15.2 Exercice sur la fonction OR 4.15.2.1 Compléter le diagramme des temps Y1 4.15.2.2 Compléter le diagramme des temps Y2 si l’entrée A est court-circuitée à la masse. 4.15.2.3 Compléter le diagramme des temps Y3 si l’entrée A est court-circuitée au V CC .
A
B
A B
C
>=1
Y
C
Y1
Y2
Y3
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 31
ETML
Systèmes logiques combinatoires
: 4
4.15.3 Exercice sur la fonction NAND 4.15.3.1 Compléter le diagramme des temps Y1 4.15.3.2 Compléter le diagramme des temps Y2 si l’entrée A est court-circuitée à la masse. 4.15.3.3 Compléter le diagramme des temps Y3 si l’entrée A est court-circuitée au V CC . 4.15.3.4 Compléter le diagramme des temps Y4 si A et C sont court-circuitées au V CC . CC 4.15.3.5 Compléter le diagramme des temps Y5 si A et C sont court-circuitées au GND.
A
B
A B
C
&
Y
C
Y1
Y2
Y3
Y4
Y5
Page 32
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.15.4 Exercice sur la fonction NOR 4.15.4.1 Compléter le diagramme des temps Y1 4.15.4.2 Compléter le diagramme des temps Y2 si l’entrée A est court-circuitée à la masse. 4.15.4.3 Compléter le diagramme des temps Y3 si l’entrée A est court-circuitée au V CC . 4.15.4.4 Compléter le diagramme des temps Y4 si A et C sont court-circuitées au V CC . CC 4.15.4.5 Compléter le diagramme des temps Y5 si A et C sont court-circuitées au GND.
A
B
A B
C
>=1
Y
C
Y1
Y2
Y3
Y4
Y5
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 33
ETML
Systèmes logiques combinatoires
: 4
4.15.5 Exercice sur les fonctions XOR et XNOR 4.15.5.1 Compléter le diagramme des temps
A
=1 S
B
4.15.5.2 Remplir la Tdv et trouver trouver l’application proposée. proposée.
Nombre binaire
{
A1
=1
A0 & Y
Nombre binaire
A1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Page 34
{
B1
=1
B0
A0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
B1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
B0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Y ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... .......
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.15.5.3 Remplir la Tdv et trouver trouver l’application proposée. proposée.
=1
D2
=1
D1
P
D0
D2
D1
D0
P
0
0
0
.......
0
0
1
.......
0
1
0
.......
0
1
1
.......
1
0
0
.......
1
0
1
.......
1
1
0
.......
1
1
1
.......
4.15.5.4 Compléter le diagramme des temps
A B
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
=1 S
Page 35
ETML
Systèmes logiques combinatoires
: 4
4.15.5.5 Remplir la Tdv et trouver trouver l’application proposée. proposée.
P
=1
D2
=1
D1
=1 E
D0
Page 36
P
D2
D1
D0
E
0
0
0
0
.......
0
0
0
1
.......
0
0
1
0
.......
0
0
1
1
.......
0
1
0
0
.......
0
1
0
1
.......
0
1
1
0
.......
0
1
1
1
.......
1
0
0
0
.......
1
0
0
1
.......
1
0
1
0
.......
1
0
1
1
.......
1
1
0
0
.......
1
1
0
1
.......
1
1
1
0
.......
1
1
1
1
.......
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.15.6 Exercices de mise sous forme algébrique 4.15.6.1 Donner l’équation l’équation du circuit
1
A
>=1
1
1
&
B
Y
C
4.15.6.2 Donner l’équation l’équation du circuit
A
B
C
D 1
1
1
&
&
>=1
Y
&
4.15.7 Exercices d’évaluation des sorties ses circuits logiques
A partir de l’équation trouvée dans l’exercice 4.15.6.2 évaluer la sortie du circuit si A = 1, B = 0, C = 1 et D = 1.
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 37
ETML
Systèmes logiques combinatoires
: 4
4.15.8 Exercices de détermination d’un niveau de sortie d’après un diagramme
Déterminer le niveau de la sortie du circuit suivant si A = 0, B = 0, C = 1, D = 1. A
B
C
D 1
1
1
>=1
>=1
& Y
>=1
4.15.9 Exercices de construction de circuits à partir d’expressions booléennes booléennes
Construire les circuits a) Y = AB(C + D)
b) Y = (A + B + CDE) + BCD
Page 38
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.15.10 Exercices de simplification algébrique 4.15.10.1 Simplifier les expressions
a) Y = (M + N)(M + P)( N + P) b) Y = ABC + ABC + BCD c) Y = ABC d) Y = A + BC e) Y = ABCD f) Y = A(B + C)D g) Y = (M + N)(M + N) h) Y = ABCD 4.15.11 Exercices de transformation de circuit en portes NAND et NOR 4.15.11.1 Construire les circuits puis les transformer en utilisant que des portes NAND
a) X = BC + AC + AB b) Y = A + BCD c) Z = P + QR d) S = AB + AB e) P = A B + AB f) Q = AB + AB g) U = AB + C + DE h) V = A + BC + D 4.15.11.2 Construire les circuits puis les transformer en utilisant que des portes NOR
a) X = (A + B)(C + D) b) Y = (A + B)C(D + E) c) Z = A(B + C)D
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 39
ETML
Systèmes logiques combinatoires
: 4
4.15.12 Exercices de simplification par Karnaugh 4.15.12.1 Simplifier les expressions en utilisant les diagrammes de Karnaugh
a) X = ABC + ABC + ABC + ABC + ABC b) Y = (C + D) + ACD + ABC + ABCD + ACD c) Z = ABCD + ABCD + ABCD + ABCD + ABCD + ABCD 4.15.12.2 Donner les équations équations simplifiées par Karnaugh relatives aux Tdv
a) Table à mintermes D 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Page 40
C 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
A 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
X 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 1
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
b) Table à mintermes D 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
C 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
A 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Y 1 0 0 0 1 1 0 0 1 0 0 0 1 1 0 0
Z 1 0 0 0 1 0 0 0 0 1 0 0 1 0 1 0
Page 41
ETML
Systèmes logiques combinatoires
: 4
c) Table à maxtermes D 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Page 42
C 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
B 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1
A 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1
Y 1 1 0 1 1 1 1 0 1 1 1 0 1 1 1 1
Z 1 0 1 1 1 0 1 1 0 1 1 0 1 0 1 0
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Systèmes logiques combinatoires
: 4
4.15.13 Exercices de conception
a) Concevoir un circuit logique dont la sortie est au niveau haut seulement quand au moins deux des trois entrées A, B et C sont au niveau bas. b) Un nombre binaire de 4 bits est noté A 3A2A1A0 où A 3, A2, A1 et A0 représentent chacun des bits, A0 étant le LSB. Concevoir un circuit logique qui donne une sortie haute quand le nombre binaire est supérieur à 0010 et inférieur à 1000. c) Trois cellules photoélectriques sont éclairées par trois rayons lumineux (Une par rayon). Elles sont à l’état haut lorsqu’elles sont éclairées et à l’état bas dans le noir. Ces rayons clignotent de manière séquentielle. Concevoir un circuit logique qui produit un signal haut quand les trois rayons sont allumés ou éteints en même temps. d) Quatre grandes cuves dans une usine de fabrication de produits chimiques contiennent différents liquides chauffés. Des capteurs de niveau servent à déceler le dépassement d’un niveau préétabli dans les cuves A et B. Des capteurs thermométriques surveillent la température des cuves C et D pour qu’elles ne descendent pas sous une valeur de consigne. Supposer que les capteurs de niveau sont à " 0 " quand le niveau est correct et à " 1 " quand il est trop haut. Supposer que les capteurs thermométriques sont à " 0 " quand la température est acceptable et à " 1 " quand elle est trop basse. Concevoir un circuit logique qui sonne l’alarme quand se produisent en même temps un niveau trop haut dans A ou B et une température trop basse dans C ou D. e) Ce schéma illustre un circuit d’alarme d’une automobile qui détecte diverses situations non souhaitables. Les trois contacts donnent respectivement l’état de la porte du conducteur, de l’allumage et des phares. Concevoir un circuit logique ayant ces trois contacts comme entrées et comme sortie une alarme à un si: •
Les phares sont allumés et l’allumage est coupé.
•
La porte est ouverte et le contact d’allumage est mis.
+5 V Ouvert
Porte
Fermé
+5 V ON
Allumage
Logique
OFF
+5 V ON
Circuit
Alarme
Phares
OFF
04 COMBIN_04/ 10 COMBIN_04/ 10 JUILLET 2006
Page 43
ETML
Systèmes logiques combinatoires
: 4
4.15.14 Exercices de conception: Un encodeur à priorité.
Un encodeur est utilisé avec un microprocesseur. Il comporte 3 entrées et 2 sorties. Les entrées sont INT1, INT2, INT3 ; elles sont appelées signaux d’interruption et sont utilisées pour gérer un événement spécial (une alarme par exemple). Les deux sorties sont C 0 et C 1, elles indiquent la valeur de l’interruption à ‘1’. Par exemple si INT1 est à "1" et tous les autres à "0" alors C1=0 et C0=1. Si plusieurs signaux d’interruption sont à "1" les sorties indiquent la valeur du signal qui a la plus grande priorité. L’ordre des priorités est INT 3 puis INT2 et enfin INT1.
Page 44
04 COMBIN_04 / COMBIN_04 / 10 10 JUILLET 2006
ETML
Les bascules :
5. LES BASCULES Faisant suite à notre étude de la logique combinatoire, nous abordons maintenant la logique SEQUENTIELLE.
5.1 La logique séquentielle Souvenons-nous qu'en logique combinatoire, nous avions la situation suivante : •
A chaque état des variables d'entrée correspond un seul état des variables de sortie et inversement.
La situation est différente avec les circuits séquentiels : •
A un état des variables d'entrée peut correspondre plusieurs états différents des variables de sortie parce que le circuit se souvient de ses états précédents. Les circuits séquentiels complexes sont constitués de circuits séquentiels élémentaires et de circuits combinatoires. Parmi les principaux, citons : •
Les fonctions mémoires
•
Les fonctions de comptage
La fonction mémoire élémentaire est réalisée par les BASCULES. Sorties mémorisées
Entrées Entrées
Logique
Sorties
combinatoire
Schéma-bloc d'un circuit combinatoire
Logique Mémoire
Sorties mémorisées
combinatoire
Schéma-bloc d'un circuit séquentiel
5.2 Les bascules Les bascules, aussi appelées "flip-flop" sont les éléments de base des systèmes séquentiels. Elles sont capables de MEMORISER une information logique donnée sous forme d'IMPULSION. Une bascule a deux sorties dont l'une est l'inverse de l'autre. Elles se notent Q et Q . •
•
Q est appelée sortie normale
Q est appelée sortie inversée
•
On dit que la bascule est à "1" (niveau HAUT) si Q = 1 et Q = 0
•
On dit que la bascule est à "0" (niveau BAS) si Q = 0 et Q = 1
•
La bascule comprend une ou plusieurs entrées. Ces dernières déterminent le passage en sortie d'un état à un autre (basculement).
05 BASCULE_04/ 10 BASCULE_04/ 10 JUILLET 2006
Page 1
5
ETML •
•
Les bascules :
5
Lorsqu'une impulsion modifie l'état de la sortie, la sortie reste dans cet état après l'impulsion : c'est la mémoire de la bascule. La bascule n'a que deux états de sortie : •
Q = 0 et Q = 1
•
Q = 1 et Q = 0
•
Les états Q =1 et Q =1 ou Q = 0 et Q = 0 ne peuvent exister dans un fonctionnement normal. Q
Sortie normale
Q
Sortie inversée
Entrées
5.3 La bascule RS R signifie RESET ou Remise à Zéro (RAZ) S signifie SET ou Remise à un (RAU) 5.3.1 Schémas à portes NAND
S
S
Q
&
Q
R
&
R
Q
Q
5.3.2 Symbole général
Page 2
S
S
Q
R
R
Q
05 BASCULE_04 / BASCULE_04 / 10 10 JUILLET 2006
ETML
Les bascules :
5
5.3.3 TdV
R
S
Q
Q
0 0 1 1
0 1 0 1
..... ..... ..... .....
..... ..... ..... .....
5.3.4 Fonctionnement •
•
On a au départ S = 1 et R = 1 Q = 0, Q = 1 Si on donne une impulsion S = 0, le système bascule et Q = 1, Q = 0, cet état reste mémorisé après l'impulsion de commande.
•
Une nouvelle impulsion 0 sur S ne changera rien.
•
Une impulsion 0 sur R fait basculer les sorties et Q = 0, Q = 1.
•
Une nouvelle impulsion 0 sur R ne change rien.
•
Si on applique simultanément 0 sur S et R , les sorties Q et Q sont à un mais ne mémorisent pas cet état instable; la première impulsion qui disparaît laisse la priorité à l'autre. Si elles disparaissent en même temps, c'est le hasard et le temps de commutation des composants qui vont déterminer Q et Q . R = S = 0 est INTERDIT.
5.3.5 Application : l'interrupteur sans rebondissement
&
Q
&
Q
Ce système donne en sortie une commutation franche. De plus, avec les deux sorties Q et Q , on dispose d'une sortie qui recopie la position de l'interrupteur et d'une sortie qui recopie l'inverse de la position de l'interrupteur.
05 BASCULE_04/ 10 BASCULE_04/ 10 JUILLET 2006
Page 3
ETML
Les bascules :
5
5.3.6 Diagramme des temps ou chronogramme
Il permet de connaître à tout instant l'état des sorties en fonction des états d'entrées
S
S
Q
R
R
Q
1
S 0 1
R 0 Q
1 0 1
Q 0
5.3.7 Le signal d'horloge
Les bascules que nous venons d'étudier sont dites asynchrones, c'est-à-dire : •
Les sorties peuvent changer d'état à tout moment quand une ou plusieurs entrées changent et sans aucune autre dépendance.
Dans un système synchrone, un signal supplémentaire appelé signal d'horloge (en anglais CLOCK ou CLOCK PULSE) et noté CLK va imposer le moment exact ou la sortie change d'état. Le signal d'horloge est une suite d'impulsions carrées ou rectangulai r ectangulaires res
1 0
Page 4
05 BASCULE_04 / BASCULE_04 / 10 10 JUILLET 2006
ETML •
•
Les bascules :
5
Le moment où la sortie change d'état s'appelle TRANSITION La transition peut se faire pendant que le signal d'horloge est égal à 1 mais le plus souvent : •
•
Quand le signal d'horloge passe de 0 à 1, on parle alors de front montant (positive edge) Quand le signal d'horloge passe de 1 à 0, on parle alors de front descendant (negative edge)
Nous trouverons sur les schémas les symboles suivants sur l'entrée d'horloge :
LATCH
LATCH
CLK
CLK
C1
C1
C1
C1
Le signal de sortie peut changer d'état en fonction des modifications des signaux d'entrée pendant que l'impulsion d'horloge vaut 1. On parlera alors de bascule transparente (LATCH). Même situation que précédemment mais pendant que l'impulsion d'horloge vaut 0.
La bascule est activée seulement pendant le front montant de l'horloge (POSITIVE EDGE TRIGGERED) (Entrée dynamique)
La bascule est activée seulement pendant le front descendant de l'horloge (NEGATIVE EDGE TRIGGERED) (Entrée dynamique)
Il est à noter que la majorité des systèmes numériques existants sont synchrones. On parlera alors de systèmes SEQUENTIELS par opposition aux systèmes combinatoires combinatoires déjà étudiés.
05 BASCULE_04/ 10 BASCULE_04/ 10 JUILLET 2006
Page 5
ETML
Les bascules :
5
5.4 La bascule RS synchronisée 5.4.1 Schéma à portes NAND &
S
&
Q
LATCH & &
Q
R 5.4.2 Fonctionnement
La sortie ne peut changer d'état que si on a une impulsion S = 1 ou R = 1 pendant que LATCH = 1. S = R = 1 interdit pendant que LATCH = 1. 5.4.3 Symboles généraux
S
1S
LATCH
C1
R
1R
Q
CLK Q
Correspond au schéma ci-dessus.
S
1S
LATCH
C1
R
1R
R
1S
Q
C1 1R
Q
Transition pour front positif d'horloge.
Q
S CLK
Q
Bascule transparente transparente pour LATCH = 0
Page 6
S
R
1S
Q
C1 1R
Q
Transition pour front négatif d'horloge.
05 BASCULE_04 / BASCULE_04 / 10 10 JUILLET 2006
ETML
Les bascules :
5
5.5 La bascule D 5.5.1 Schéma à portes NAND D
& &
Q LATCH & &
Q
1
La version représentée ci-dessus est une bascule D transparente (D LATCH). 5.5.2 Symboles généraux
D LATCH
1D
D
C1
CLK
1D
Q
C1 Q
Q
Bascule D transparente. (D LATCH)
Bascule D avec transition sur front positif
5.5.3 TdV de la bascule D
D
Q
0 1
..... ..... ..... .....
Q
L'entrée est recopiée à la sortie Q en synchronisation avec l'horloge 5.5.4 Fonctionnement de la bascule D
Le fonctionnement est identique à la bascule RS synchronisée mais dans ce cas, il n'y a pas le désavantage de l'état interdit R = S = 1. Cette bascule est couramment utilisée dans les compteurs et les registres à décalage ou pour saisir des données passagères. Une impulsion sur CLK mémorise sur Q l'information se trouvant sur D.
05 BASCULE_04/ 10 BASCULE_04/ 10 JUILLET 2006
Page 7
ETML
Les bascules :
5
5.6 La bascule JK 5.6.1 Symboles de la bascule JK
J
1J
LATCH
C1
K
1K
Q
J CLK K
Q
Bascule JK transparente
1J
Q
C1 1K
Q
Bascule JK déclenchée par front descendant
5.6.2 Equation de la bascule JK
La sortie de cette bascule peut être obtenue en utilisant l'équation suivant.
Q
+
=
JQ + KQ
Nous désignons par Q l'état de la sortie avant la transition et par Q + l'état de la sortie après la transition. Nous pouvons remplir la TdV de la JK en utilisant cette équation. 5.6.3 TdV de la bascule JK
1) 2) 3) 4)
J
K
Q+
0 0 1 1
0 1 0 1
..... ..... ..... .....
Nous constatons : •
Ligne 1): Il n'y a pas de changement, la sortie reste stable
•
Ligne 2) et 3): La sortie Q après transition copie l'état de J
•
Page 8
Ligne 4): À chaque transition, Q est inversé, la bascule fonctionne en diviseur par 2. Dans ce mode, on parle de bascule bistable. bistable.
05 BASCULE_04 / BASCULE_04 / 10 10 JUILLET 2006
ETML
Les bascules :
5
5.6.4 Universalité de la bascule JK
La bascule JK peut être considérée comme la bascule universelle. Les entrées J et K remplissent les mêmes fonctions que les entrées R et S de la bascule RS, la mise de J et K à "1" ne pose par contre aucun problème. Le schéma suivant nous montre le câblage de la bascule JK fonctionnant comme une bascule D. D
Q
1J CLK
C1 Q
1K
Le schéma ci-dessous nous montre l'utilisation de la bascule JK en bascule bistable. VCC
Q
1J CLK
C1 Q
1K
Q T
≡
Q
5.6.5 La remise à 0 et la remise à 1 (CLEAR et PRESET)
Certaines bascules sont équipées d'entrées d'entrées pour la remise r emise à 0 ou à 1 ou les deux. Ces entrées sont asynchrones. Elles sont alors prioritaires sur les autres entrées dont l'horloge et agissent immédiatement. J
Q
1J
CLK
1K
CLR
R
Bascule JK avec clear
05 BASCULE_04/ 10 BASCULE_04/ 10 JUILLET 2006
Q
Q
S
CLK
C1
K
PRE
C1
D
1D
CLR
R
Q
Bascule D avec clear et Preset
Page 9
ETML
Les bascules :
5
5.7 Exercices 5.7.1 Exercice sur la bascule RS
S
S
R
R
Dessiner le chronogramme des sorties Q et Q . Q
5.7.1.1 1
S 0 1
R 0 1 Q 0 1
Q 0
5.7.1.2
1
S 0 1
R 0 1 Q 0 1
Q 0
Page 10
05 BASCULE_04 / BASCULE_04 / 10 10 JUILLET 2006
ETML
Les bascules :
5.7.2 Exercice sur la bascule RS synchronisée
Dessiner le chronogramme des sorties Q et Q .
S
1S
LATCH
C1
R
1R
5
Q
Q
5.7.2.1
S
1 0 1
R 0 1 LATCH 0 1 Q 0 1
Q 0
5.7.2.2
S
1 0 1
R 0 1 LATCH 0 1 Q 0 1
Q 0
05 BASCULE_04/ 10 BASCULE_04/ 10 JUILLET 2006
Page 11
ETML
Les bascules :
Dessiner le chronogramme des sorties Q et Q .
S CLK R
1S
5
Q
C1 1R
Q
5.7.2.3 1 S 0 1 R 0 1 CLK 0 1 Q 0 1
Q 0
5.7.2.4 1 S 0 1 R 0 1 CLK 0 1 Q 0 1
Q 0
Page 12
05 BASCULE_04 / BASCULE_04 / 10 10 JUILLET 2006
ETML
Les bascules :
Dessiner le chronogramme des sorties Q et Q .
S CLK R
1S
5
Q
C1 1R
Q
5.7.2.5 1 S 0 1 R 0 1 CLK 0 1 Q 0 1
Q 0
5.7.2.6 1 S 0 1 R 0 1 CLK 0 1 Q 0 1
Q 0
05 BASCULE_04/ 10 BASCULE_04/ 10 JUILLET 2006
Page 13
ETML
Les bascules :
5.7.3 Exercice sur la bascule D
Dessiner le chronogramme des sorties Q et Q .
D CLK
1D
5
Q
C1 Q
5.7.3.1 1 D 0 1 CLK 0 1 Q 0 1
Q 0
5.7.3.2 1 D 0 1 CLK
1 Q 0 1
Q 0
Page 14
05 BASCULE_04 / BASCULE_04 / 10 10 JUILLET 2006
ETML
Les bascules :
5.7.4 Exercice sur la bascule D transparente
Dessiner le chronogramme des sorties Q et Q .
D
1D
LATCH
C1
5
Q
Q
5.7.4.1
1 D
0 1 LATCH
0 1 Q
0 1 Q
0
5.7.4.2 1 D 0 1 LATCH 0 1 Q 0 1
Q 0
05 BASCULE_04/ 10 BASCULE_04/ 10 JUILLET 2006
Page 15
ETML
Les bascules :
5.7.5 Exercice sur la bascule D
Dessiner le chronogramme des sorties Q et Q .
D CLK
1D
5
Q
C1 Q
5.7.5.1 1 D 0 1 CLK 0 1 Q 0 1
Q 0
5.7.5.2 1 D 0 1 CLK 0 1 Q 0 1
Q 0
Page 16
05 BASCULE_04 / BASCULE_04 / 10 10 JUILLET 2006
ETML
Les bascules :
5.7.6 Exercice sur la bascule D
Dessiner le chronogramme des sorties Q et Q .
D CLK
1D
5
Q
C1 Q
5.7.6.1 1 D 0 1 CLK 0 1 Q 0 1
Q 0
5.7.6.2 1 D 0 1 CLK 0 1 Q 0 1
Q 0
05 BASCULE_04/ 10 BASCULE_04/ 10 JUILLET 2006
Page 17
ETML
Les bascules :
5.7.7 Exercice sur la bascule JK
Dessiner le chronogramme de la sortie Q.
J CLK K
1J
5 Q
C1 1K
Q
5.7.7.1 1 J 0 1 K 0 1 CLK 0 1 Q 0
5.7.7.2 1 J 0 1 K 0 1 CLK 0 1 Q 0
Page 18
05 BASCULE_04 / BASCULE_04 / 10 10 JUILLET 2006
ETML
Les bascules :
5.7.8 Exercice sur la bascule JK avec CLR et PRE
Dessiner le chronogramme de la sortie Q.
PRE
S
J
1J
CLK
5
Q
C1
K
1K
CLR
R
Q
5.7.8.1 1 PRE 0 1 CLR 0 1 J 0 1 K 0 1 CLK 0 1 Q 0
5.7.8.2 1 PRE 0 1 CLR 0 1 J 0 1 K 0 1 CLK 0 1 Q 0
05 BASCULE_04/ 10 BASCULE_04/ 10 JUILLET 2006
Page 19
ETML
Les bascules :
5
5.7.9 Application des bascules: discriminateur de sens
Capteur S1
Noir = 1
Capteur S2
Blanc = 0
Diagramme temporel pour une rotation à droite 1 S1 0 1 S2 0
Diagramme temporel pour une rotation à gauche 1 S1 0 1 S2 0
Réaliser un montage dons la sortie est à 1 pour une rotation à droite et à 0 pour une rotation à gauche. (Ce montage peut être réalisé en utilisant une seule bascule étudiée au chapitre 5.
Page 20
05 BASCULE_04 / BASCULE_04 / 10 10 JUILLET 2006
ETML
Les compteurs :
6
6. LES COMPTEURS 6.1 Introduction Les compteurs sont des circuits électroniques numériques importants. Ce sont des circuits logiques séquentiels et sont construits en utilisant des bascules. Les caractéristiques principales des compteurs numériques sont les suivantes: •
Capacité maximum de comptage
•
Comptage direct ou décomptage
•
Fonctionnement synchrone ou asynchrone
•
Fonctionnement permanent ou à arrêt automatique
6.2 Compteur à propagation Les compteurs numériques ne comptent qu’en binaire ou en code binaire. Par exemple un compteur 0 à 15 en décimal a la séquence suivante en binaire: 0000-0001-0010-0011-0100-0101-0110-01 0000-0001-0010-0011-0100-0101-0110-0111-1000-1001-1010 11-1000-1001-1010-1011-1100-1101-111 -1011-1100-1101-1110-11110-11110000- ... Un tel compteur est appelé modulo 16. Le modulo d’un compteur est sa capacité, on utilise parfois l’abréviation mod (Un compteur mod 16).
6.2.1 Schéma d’un compteur modulo 16 à bascules JK 1
QA
1
1J CLK
1
1J
C1 1
QB
Q
1
1
1J
C1
1K
QC
1J
C1
1K Q
1
QD
C1
1K Q
1
1K Q
6.2.2 Chronogramme CLK
QA
QB
QC
QD
06 COMPTEUR_04/ 10 COMPTEUR_04/ 10 JUILLET 2006
Page 1
ETML
Les compteurs :
6
6.2.3 Fonctionnement Les quatre bascules JK sont montées en mode .......................... et leurs sorties sont appliquées aux entrées d'horloge du flip-flop suivant. Le déclenchement des bascules se propage dans le compteur, pour cette raison on parle de compteur à propagation. Il s'écoule un certain temps entre le front descendant de l'horloge et le déclenchement des flipflops suivants, c'est donc un type de compteur asynchrone, dans la mesure où toutes les bascules ne déclenchent pas exactement en accord avec les impulsions d'horloge. Notons encore, que chaque cellule divise la fréquence de son entrée par deux.
6.2.4 Exercice sur le compteur asynchrone Compléter le chronogramme et donner la séquence du compteur ci-dessous. 1
QA
1
1J CLK
QB 1J
C1 1
1
QC
Q
1
QD
1J
C1
1K
1 1J
C1
1K Q
1
C1
1K Q
1K
1
Q
CLK
QA
QB
QC
QD
6.2.5 Exercice sur le compteur asynchrone Compléter le chronogramme et donner la séquence du compteur ci-dessous.
1
QA
1
1J CLK 1
1
1J
C1 1K
QB
CLR
1
1K CLR
1
1J
C1
Q
QC
1J
C1
Q
1
1K CLR
QD
C1
Q
1
1K CLR
Q
&
Page 2
06 COMPTEUR_04 / COMPTEUR_04 / 10 10 JUILLET 2006
ETML
Les compteurs :
6
CLK
QA
QB
QC
QD
6.3 Compteurs parallèles Comme il a été mentionné, l'inconvénient présenté par le compteur à propagation asynchrone est le délai qui existe au cours des basculements successifs. Ce délai peut être supprimé en montant les flip-flops de manière à ce que toutes les entrées d'horloge soient reliées entre elles et au signal d'horloge. De cette manière le fonctionnement de ce type de compteur est synchrone.
6.3.1 Schéma d’un compteur modulo ........... à bascules JK
1
QA Q
J
QB J
K
QC J
C1
C1 1
Q
&
K
Q C1
K
CLK
6.3.2 Chronogramme CLK
QA
QB
QC
06 COMPTEUR_04/ 10 COMPTEUR_04/ 10 JUILLET 2006
Page 3
ETML
6
Les compteurs :
6.4 Conception de compteurs compteurs synchrones La conception de compteurs synchrones peut être faite en utilisant des bascules JK. L'exemple suivant illustre une méthode de recherche du circuit à partir d'un cycle donné.
6.4.1 Cycle du compteur La première étape consiste à poser le cycle que l'on désire obtenir, par exemple:
1
3
7
5
6.4.2 Tdv du compteur A partir de l'équation du flip-flop JK, il est possible de trouver les états de J et de K en fonction + de Q et Q (état futur).
Q
+
=
+
J Q + KQ
Q
Q
J
K
0
0
.....
.....
0
1
.....
.....
1
0
.....
.....
1
1
.....
.....
De ce tableau, il est maintenant possible de remplir la Tdv du compteur:
QC
QB
QA
QC
0
0
1
0
1
1 1
+
+
QB
QA
0
1
1
1
0
1
1
1
+
JC
KC
JB
KB
JA
KA
1
.....
.....
.....
.....
.....
.....
0
1
.....
.....
.....
.....
.....
.....
1
1
1
.....
.....
.....
.....
.....
.....
0
0
1
.....
.....
.....
.....
.....
.....
Toutes les autres lignes sont des états indéterminés. Il est maintenant possible de trouver après simplification les équations des entrées J et K des bascules JK.
Page 4
06 COMPTEUR_04 / COMPTEUR_04 / 10 10 JUILLET 2006
ETML
Les compteurs :
6
6.4.3 Simplification des entrées J et K Pour l’exemple ci-dessus, nous trouvons: JA = ..........
JB = ..........
JC = ..........
KA = ..........
KB = ..........
KC = ..........
6.4.4 Schéma logique du compteur 1 - 3 - 5 - 7
6.4.5 Contrôle des états indéterminés Il reste maintenant une dernière étape dans la conception de notre compteur, consistant à vérifier les états indéterminés. Cette étape est importante, le compteur pouvant s’engager dans une boucle indésirable, ne répondant pas au cahier des charges. Pour notre exemple nous pourrions avoir un cycle " parasite " 2 - 4 -2 - ... Nous allons remplir la Tdv complète de notre compteur: +
+
QC
QB
QA
QC
QB
QA
0
0
0
.....
.....
0
0
1
.....
0
1
0
0
1
1
+
JC
KC
JB
KB
JA
KA
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
1
.....
.....
.....
.....
.....
.....
.....
.....
.....
0
0
.....
.....
.....
.....
.....
.....
.....
.....
.....
1
0
1
.....
.....
.....
.....
.....
.....
.....
.....
.....
1
1
0
.....
.....
.....
.....
.....
.....
.....
.....
.....
1
1
1
.....
.....
.....
.....
.....
.....
.....
.....
.....
06 COMPTEUR_04/ 10 COMPTEUR_04/ 10 JUILLET 2006
Page 5
ETML
Les compteurs :
6
Marche à suivre: a) Remplir J et K selon les l es équations trouvées ( 6.4.3 ) +
b) Remplir Q en utilisant l’équation de la JK ( 6.4.2 ) c) Extraire le cycle complet du compteur, par exemple sous la forme utilisée dans 6.4.1.:
Cette solution n'est pas unique et nous allons supposer que les équations trouvées sont: JA = 0
JB = 1
JC = QB
KA = 0
KB = 1
KC = QB
6.4.6 Schéma logique du compteur 1 - 3 - 5 - 7
Page 6
06 COMPTEUR_04 / COMPTEUR_04 / 10 10 JUILLET 2006
ETML
Les compteurs :
6
6.4.7 Contrôle des états indéterminés +
+
QC
QB
QA
QC
QB
QA
0
0
0
.....
.....
0
0
1
.....
0
1
0
0
1
1
+
JC
KC
JB
KB
JA
KA
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
.....
1
.....
.....
.....
.....
.....
.....
.....
.....
.....
0
0
.....
.....
.....
.....
.....
.....
.....
.....
.....
1
0
1
.....
.....
.....
.....
.....
.....
.....
.....
.....
1
1
0
.....
.....
.....
.....
.....
.....
.....
.....
.....
1
1
1
.....
.....
.....
.....
.....
.....
.....
.....
.....
Cycle complet du compteur:
06 COMPTEUR_04/ 10 COMPTEUR_04/ 10 JUILLET 2006
Page 7
ETML
Les compteurs :
6
6.4.8 Exercice sur les compteurs parallèles utilisant des bascules JK Réaliser un compteur dont le cycle est 1 - 2 - 3 - 1 - ... si S = 0 et le cycle 1 - 3 - 2 - 1 - ... si S = 1. (S est une entrée donnant le sens du compteur)
6.4.9 Exercice sur les compteurs parallèles utilisant des bascules D Réaliser un compteur dont dont le cycle est 1 - 2 - 3 - 1 ...
Page 8
06 COMPTEUR_04 / COMPTEUR_04 / 10 10 JUILLET 2006
ETML
Logique programmable :
7
7. Logique Logique programmable 7.1
Introduction
Circuits Logiques Programmables = Programmable Logic Devices =
PLD
L'apparition de circuits logiques programmables a considérablement bouleversé la conception des systèmes numériques électroniques. Grâce à cette technique, il est maintenant possible de résoudre un problème numérique avec un minimum de circuits intégrés et un maximum de flexibilité. La personnalisation d'une application est maintenant possible sans pour autant redévelopper la partie matérielle, donc à moindre frais. Historiquement, les premiers circuits logiques programmables ont été au début des années 60, les matrices à diodes avec leurs fusibles. L'utilisation de PLDs s'est de plus en plus répandue ces dix dernières années et aujourd'hui (2006) il est rare de ne pas rencontrer de tel circuit sur un nouveau développement numérique. Afin de bien pouvoir comparer les différentes techniques, nous allons résoudre le même problème en utilisant tout d'abord les circuits numériques traditionnels puis en utilisant un PLD. La même approche sera faite pour un système combinatoire et pour un système séquentiel.
7.2
Concept de base 1
Un circuit de logique programmable (PLD) est un circuit intégré qui peut être programmé afin d'exécuter des fonctions logiques spécifiques. La plupart des PLDs sont constitués de deux réseaux de portes logiques, un réseau AND suivi d'un réseau OR. Les équations des fonctions programmées sont écrites sous la forme minterme ou somme de produits. (Voir cours d'électronique numérique - Systèmes logiques combinatoires).
1
Extrait d' Electronique Electronique Industrielle Fernand Dominé ETML
07 PLD_04/ 10 PLD_04/ 10 JUILLET 2006
Page 1
ETML 7.3
Logique programmable :
7
Convention de notation 1
La structure des PLDs étant très différente de celle des portes TTL ordinaires, de nouvelles notations logiques ont été développées. Exemple: S = A ⋅ B ⋅ C A B C A B C
S
=
A
⋅
B⋅ C
X X X
Représentation Représentation standard
S
=
A
⋅
B⋅C
Représentation Représentation pour PLD
•
•
•
•
La porte AND est appelée une ligne de produits. Les lignes verticales sont les entrées du PLD. Les "X" représentent des fusibles. Les fusibles relient les entrées du PLD aux entrées de la porte AND
Lors de la programmation d'un PLD un fusible indésirable est ouvert et le " X" disparaît. Exemple: S = A ⋅ B Fusible programé (Ouvert) A B C
S
X X
=
A
⋅
B
Fusible non-programmé (Intact)
1
Extrait d' Electronique Industrielle Fernand Dominé ETML
Page 2
07 PLD_04 / PLD_04 / 10 10 JUILLET 2006
ETML 7.4
Logique programmable :
7
Les différents types de PLDs
Nous pouvons citer trois types de base de PLDs:
7.4.1
PROM: Programmable Read Only Memories.2
Ce sont des PLDs en lecture seule, qui peuvent servir à stocker des programmes fixes ou être utilisées pour des applications logiques. Dans ce cas, le réseau AND est fixe et le réseau OR est programmable.
A
B Fusible OR
AB AB AB AB
Hard AND
F1
F2
F3
F4
Sur cet exemple les sorties ont pour équations: F1 = ............................................. .................................................................... .............................................. ....................................... ................ F2 = ............................................. .................................................................... .............................................. ....................................... ................ F3 = ............................................. .................................................................... .............................................. ....................................... ................ F4 = ............................................. .................................................................... .............................................. ....................................... ................
2
Extrait de Programmable Logic Devices Databook and Design Guide National Semiconductor
07 PLD_04/ 10 PLD_04/ 10 JUILLET 2006
Page 3
ETML 7.4.2
Logique programmable :
7
PLA: Programmable Logic Array.3
Les deux réseaux AND et OR sont programmable.
A
B Fusible OR
A AB B AB
Fusible AND
F1
F2
F3
F4
Sur cet exemple les sorties ont pour équations: F1 = ........................................... .................................................................. .............................................. ......................................... .................. F2 = ........................................... .................................................................. .............................................. ......................................... .................. F3 = ........................................... .................................................................. .............................................. ......................................... .................. F4 = ........................................... .................................................................. .............................................. ......................................... ..................
3
Extrait de Programmable Logic Devices Databook and Design Guide National Semiconductor
Page 4
07 PLD_04 / PLD_04 / 10 10 JUILLET 2006
ETML 7.4.3
Logique programmable :
7
PAL: Programmable Array Logic.4
Le réseau AND est programmable et le réseau OR est fixe.
A
B Hard OR
A
AB
A B AB AB
Fusible AND F1
F2
F3
F4
Sur cet exemple les sorties ont pour équations: F1 = ............................................. .................................................................... .............................................. ....................................... ................ F2 = ............................................. .................................................................... .............................................. ....................................... ................ F3 = ............................................. .................................................................... .............................................. ....................................... ................ F4 = ............................................. .................................................................... .............................................. ....................................... ................
4
Extrait de Programmable Logic Devices Databook and Design Guide National Semiconductor
07 PLD_04/ 10 PLD_04/ 10 JUILLET 2006
Page 5
ETML
Logique programmable :
7.5
Explication de la marche à suivre
7.5.1
Exemple
7
Pour illustrer les procédures à suivre pour la programmation d'un PLD, prenons un exemple simple. Réalisons un circuit à deux entrées et quatre sorties dont les équations sont:
A
B
7.5.2
?
F1
=
A
F2
=
AB
F3
=
A
F4
=
AB
+
B +
AB
Choix du PLD
Il faut maintenant choisir un PLD permettant de réaliser notre problème. Il faut donc qu'il ait au 5 moins 2 entrées et 4 sorties. Prenons par exemple de notre stock un PAL de la marque AMD:
PAL CE 16 V 8 H - 25 Type de la famille Technologie: CMOS Eletrically Erasable Nombre d'entrées Type des sorties V = Versatile (Bidirectionnelles) Nombre de flip-flops Puissance H = Half Power (90 mA) Vitesse -25 = 25 ns tPD
Ce PLD comporte donc 16 entrées dont 8 peuvent être utilisées en sortie ou entrée-sortie.
5
Voir PAL Device Data Book and Design Guide AMD
Page 6
07 PLD_04 / PLD_04 / 10 10 JUILLET 2006
ETML 7.5.3
Logique programmable :
7
Compilation
Il s'agit maintenant de déterminer les fusibles à "griller". Ce travail pourrait être fait à la main mais serrait considérable. C'est pourquoi il existe plusieurs programmes capables de générer une liste de fusibles à "griller" à partir de: •
Equations booléennes
•
Table de vérité
•
Graphes d'état
•
Logigrammes
•
VHDL
•
...
Au terme de cette compilation, un fichier contenant les informations nécessaires à la programmation du PLD est généré. Il peut être de type t ype "JEDEC" et portant l'extension .JED.
7.5.4
Programmation
Il s'agit maintenant d'utiliser le fichier contenant les fusibles à griller pour programmer notre PLD. Cette opération peut être faite sur un programmeur universel, commandé par un logiciel. Il faudra alors choisir le bon type du PLD, charger le fichier "JEDEC" et programmer le PLD.
7.5.5
Applications
La conception d'un circuit électronique numérique combinatoire ou séquentiel ne se fait aujourd'hui qu'à l'aide de logique programmable. Le prix du développement et du hardware, l'économie de volume ainsi que la facilité de mise en application sont les principaux avantages de cette technique. De même une conception particulière peut être très simplement modifiée pour un autre client, et cela uniquement par une nouvelle programmation et sans aucune modification du hardware.
07 PLD_04/ 10 PLD_04/ 10 JUILLET 2006
Page 7
ETML
Le circuit intégré 555 :
8
8. LE CIRCUIT INTEGRE 555 Appelé MINUTERIE ou TIMER, ce circuit intégré est très polyvalent. Ses deux fonctionnements de base sont: •
Multivibrateur monostable
•
Multivibrateur astable
L’origine du nom " 555 " vient du diviseur interne de tension, constitué de trois résistances de 5 k Ω. Ce diviseur permet de définir deux seuils, 1/3 V CC et 2/3 VCC.
8.1 Brochage Masse / Ground - 1
8 - Vcc
Enclenchement / Trigger - 2
7 - Décharge / Discharge
Sortie / Output - 3
6 - Seuil / Threshold
Réinitialisation / Reset - 4
5 - Tension de commande Control Voltage
La tension d'alimentation Vcc peut être comprise entre 4,5 et 18 V
8.2 Schéma bloc VCC
VCC > 2/3 VCC
5k Control voltage
-
Treshold
S
+
Q
5k + Trigger
R Preset Q
5k
Output
< 1/3 VCC Reset
Discharge
GND
08 555_04/ 10 555_04/ 10 JUILLET 2006
Page 1
ETML
8
Le circuit intégré 555 :
8.4.2 Fonctionnement Au repos
borne 3 =0V bornes 6 et 7 = 0 V borne 2 = VCC
Dès que l'on envoie une impulsion < 1/3 Vcc sur 2, la sortie 3 passe à 1. Le condensateur C se charge à travers R car le transistor Q est bloqué. Au moment où U C atteint 2/3 Vcc, la sortie 3 revient à 0, le transistor Q conduit et le condensateur est déchargé, on se retrouve à l'état de repos. La durée d'impulsion se calcule par
t = 1,1 · R · C avec t en [s] R en [Ω] C en [F] Remarque: Dans tous les cas, la durée de l'impulsion Trigger sur borne 2 devra être plus courte que l'impulsion de sortie.
8.4.3 Diagramme des temps. (pour Vcc = 5 V) Trigger (2) VCC
1/3 VCC Output (3) VCC
Threshold (6) Discharche (7)
t
t
2/3 VCC
t
08 555_04/ 10 555_04/ 10 JUILLET 2006
Page 3
ETML
Le circuit intégré 555 :
8
8.3 Description des bornes du circuit circuit •
1 - GND = masse. Cette patte doit être reliée à la l a masse de l’alimentation.
•
2 - TRIGGER = enclenchement. Cette entrée sert à l’enclenchement du circuit, elle provoque un état de sortie haut. Le niveau de repos de l’entrée TRIGGER doit être haut. L’enclenchement a lieu si la tension descend au-dessous de 1/3 V CC (1/2 Vref si une tension est appliquée à la broche 5). La durée de la temporisation ne peut être inférieure à la durée de l’impulsion d’enclenchement.
•
3 - OUTPUT = sortie. Cette sortie peut délivrer ou absorber un courant de 200 mA.
•
4 - RESET = remise à zéro. Cette entrée permet de remettre à zéro la sortie et provoque la mise en conduction du transistor de décharge, ce qui revient à mettre la broche 7 à la masse. Si cette entrée RESET n’est pas utilisée, on la connectera au V CC afin d’éviter des remises à zéro intempestives du 555 par des parasites.
•
5 - CONTROL VOLTAGE = tension de référence. Cette entrée permet de modifier les seuils 1/3 V CC et 2/3 VCC. Les seuils deviennent ½ V ref et Vref . Si cette entrée n’est pas utilisée, on placera un condensateur entre cette broche et la masse (10 nF). Il aura pour effet de stabiliser la tension interne de référence.
•
6 - THRESHOLD = seuil. Entrée du comparateur 2/3 V CC. Lorsque la tension de cette entrée dépasse 2/3 V CC (Vref si une tension est appliquée à la broche 5) la sortie est remise à zéro et la broche 7 est mise à la masse.
•
7 - DISCHARGE = décharge. En fin de temporisation ou après une impulsion de RESET, la sortie passe à l’état bas et un transistor interne NPN, émetteur à la masse, devient conducteur. Cette broche 7 est utilisée pour la décharge du condensateur externe de temporisation.
•
8 - + VCC = Alimentation du circuit entre + 4,5 et 18 V.
8.4 Le fonctionnement en monostable L’application du 555 en monostable (ou temporisateur) est à l’origine de la conception du circuit. Elle permet des temporisations d’une durée de 1 µs à 1 h.
8.4.1 Schéma VCC R
4
8
6 C
7
3
555
2
5 1
Page 2
10nF
08 555_04 / 555_04 / 10 10 JUILLET 2006
ETML
8
Le circuit intégré 555 :
8.4.4 Exemple d’application comme monostable Le 555 peut détecter, s’il est branché comme sur cet exemple, une impulsion manquante dans un train d’impulsions de fréquence fixe et connue. La sortie est à l’état haut tant que la tension de la capacité ne dépasse pas les 2/3 V CC. Chaque impulsion d’entrée décharge le condensateur et enclenche la temporisation (t = 1.1 ⋅ R ⋅ C). Il suffit qu’une impulsion soit absente du train pour que le condensateur se charge et que la sortie passe momentanément à l’état bas, annonçant ainsi l’erreur. Une erreur se produira également si la fréquence devient trop basse. On peut ainsi détecter par exemple une vitesse de rotation d’un moteur trop l ente.
VCC R
4
8
6 7 Entrée
C
3
555
2
5 1
10nF
Trigger (2) VCC
1/3 VCC Output (3) VCC
Threshold (6) Discharche (7)
t
t
2/3 VCC
t
Sur cet exemple, si R = 1 k Ω et C = 100 nF et que le train d’impulsions soit généré par un capteur donnant 1000 impulsions par tour, quel doit être la vitesse minimum du moteur pour que le circuit ne donne pas d’erreur?
Page 4
08 555_04 / 555_04 / 10 10 JUILLET 2006
ETML
Le circuit intégré 555 :
8
8.5 Le fonctionnement en astable 8.5.1 Schéma VCC RA 4
8
7
RB
3
555 6
C
2
5 1
8.5.2 Fonctionnement •
Dès qu'il est mis sous tension, ce système génère des signaux rectangulaires. Supposons la sortie 3 au niveau 1 donc le transistor Q 1 est bloqué. Le condensateur se charge à travers RA + RB.
•
Quand UC atteint 2/3 VCC, la sortie 3 passe à 0 V, le transistor Q 1 est conducteur.
•
Le condensateur se décharge à travers R B
•
Quand UC descend en dessous de 1/3 V CC, la bascule RS est remise à 0 par l'entrée 2 et la sortie repasse à 1. C se recharge à travers R A + RB et le cycle recommence
Remarque: le condensateur se charge à travers R A + RB mais se décharge seulement à travers R B. Donc, pour une période, la sortie restera plus longtemps à 1 qu'à 0. On produit un signal rectangulaire.
08 555_04/ 10 555_04/ 10 JUILLET 2006
Page 5
ETML
Le circuit intégré 555 :
8
Nous appellerons le temps où la sortie est égale à 1 "t ch" pour temps de charge et le temps où la sortie est égale à 0 "t dech" pour temps de décharge. Ainsi on obtient:
tch = 0,7 (RA + RB) · C tdech = 0,7 · R B · C
avec
et la période
T = tch + tdech = 0,7 (RA + 2 RB) · C
ce qui donne la fréquence
f =
1 T
=
1.43 ( R A + 2 RB ) ⋅ C
t en [s] C en [F] R en [Ω] T en [s] f en [Hz]
Attention: la fréquence maximum à laquelle laquelle le 555 peut fonctionner en astable est 200 kHz
Nous pouvons exprimer le rapport cyclique ou le facteur de forme du signal de sortie par:
D=
t ch T
⋅ 100
ou D=
RA + RB RA + 2RB
⋅ 100
avec D en [%] tch et T en [s] RA et RB en [Ω]
Page 6
08 555_04 / 555_04 / 10 10 JUILLET 2006
ETML
9
Les Mémoires :
9 LES MÉMOIRES 9.1
Terminologie des mémoires
Bit :
‘Binary digit’, c’est l’unité logique ; il peut prendre la valeur 1 ou 0.
Cellule mémoire : Cellule électrique qui stocke un seul bit. Exemple : bascule, condensateur , point aimantable sur bande ou disque magnétique. Mot mémoire :
Groupe de bits correspondant à une instruction ou à une donnée. Par exemple un registre formé de 8 bascules peut être considéré comme un mot mémoire de 8 bits. La longueur des mots s’échelonne habituellement de 4 à 128 bits selon le type de microprocesseur.
Octet ( byte ) :
Mot de 8 bits. C’est la longueur de mot la plus usuelle.
Capacité :
Quantité de bits que la mémoire peut mémoriser. Exemple1 : une mémoire de 4 Mbytes mémorise 4 •106 • 8 = 32 •106 bits. Exemple2 : une mémoire de 4096 mots de 14 bits mémorise 57344 bits.
Adresse :
Nombre permettant de localiser physiquement un mot en mémoire. Adresse Contenu de la mémoire 0 0 Mot 0 0 1 Mot 1 1 0 Mot 2 1 1 Mot 3 …etc... …etc...
Temps d’accès : Durée pour pour faire une opération de lecture, ce temps est désigné pat tACC. 9.2 Fonctionnement d’une mémoire électronique:
Les mémoires sont des circuits intégrés de forte densité d’intégration capables de stocker de l’information sous forme binaire. Elles sont réalisées en technologie bipolaire ou CMOS (voir les § 16.3 à 16.7) . Il y a, en ce qui concerne leur organisation, deux grandes familles : les mémoires à accès parallèle ou sériel. Dans les mémoires sérielles il existe plusieurs protocoles de communication, les plus répandus étant I2C-Bus, SPI-Bus, Microwire-Bus. Vcc Bus d’Adresses
Vcc Bus de Données
CS R/W
OE
Gnd Mémoire parallèle 09 MEMOIRES_04/ 10 _04/ 10 JUILLET 2006
Clk Serial Data&Adr In/Out Chip Enable Gnd 2
Mémoire sériel sér ielle le (I C-Bus)
Page 1
ETML
Les Mémoires :
Avantages Inconvénients
9.2.1
Mémoire parallèle Grande capacité. Très rapide. Encombrement ; nécessite beaucoup de signaux de commande
9
Mémoire sérielle Encombrement très réduit ; nécessite peu de signaux de commande ; bonne immunité aux parasites Très lente
Architecture des mémoires
Sélection de Rangée A0 A1
OE
Rangée 0
Decodeur 1:4
Registre 4
Registre 0 E
CS
E
E
E Bus de données
Rangée 1 Registre 1 Rangée 2
E
Registre 5 E
Tampon de sortie
E
E
Rangée 3 D7 D6 D5 D4 D3 D2 D1 D0
Sélection de Colonne A2 A3
Colonne 0 Colonne 1
Decodeur 1:4
Colonne 2 Colonne 3
Cette architecture est présente aussi bien dans une mémoire parallèle que dans le cœur d’une mémoire sérielle.
9.2.2
Signaux de commande des mémoires parallèles /CS
/CS
Adresse
Adresse
/OE R/W Données
/OE R/W
tCSA Dout
Cycle de lecture
09 MEMOIRES_04/ 10 _04/ 10 JUILLET 2006
tCW
Données
Din
Cycle d’écriture
Page 2
ETML 9.2.3
Les Mémoires :
9
2
Signaux de commande des mémoires sérielles ( protocole I C-Bus)
SCL = Serial clock
SCL SDA
MSB
R/W
SDA = Serial Data In/Out
ACK
Start
Stop R/W = 0 : Ecrit riture
R/W = 1 : Lecture
Cycle Cycle de lecture ou o u d’écriture
9.3 Mémoires vives : RAM
RAM = « Random Access Memory », c-à-d. mémoire à accès aléatoire. Cette appelation qui paraît désuète aujourd’hui rappelle que les RAM furent les premières mémoires à accès aléatoire contrairement aux bandes magnétiques par exemple qui ont un accès purement séquentiel. Les RAM sont des mémoires vives dans lesquelles on peut lire ou écrire des données.Elles servent au stockage temporaire d’informations numériques. Leur conteneu peut changer changer continuellement à mesure de l’exécution du programme. Elles doivent donc être rapides pour ne pas ralentir le fonctionnement de l’ordinateur. Ce sont des mémoires dites volatiles car elles perdent leur contenu aussitôt que l’on coupe leur tension d’alimentation. Il arrive assez fréquement que l’on utilise une pile ou une batterie pour éviter de perdre leur contenu à la mise hors tension. C’est le cas par exemple pour la mémoire de l’horloge interne des ordinateurs personnels. On rencontre deux grandes familles de RAM : les RAM statiques appelées SRAM et les RAM dynamiques appelées DRAM. 9.3.1
SRAM
Les SRAM sont des mémoires qui conservent leur information indéfiniment aussi longtemps qu’elles sont alimentées. Elles peuvent être fabriquées en technologie bipolaire ou MOS, quoique la majorité se trouve en technologie MOS. Les bipolaires sont plus rapides mais consomment plus et sont de moins grande capacité à surfaces de silicium égales. Dans le cadre de ce cours nous étudierons les RAM en technologie NMOS et CMOS
Dans cette technologie Q1 à Q6 sont des transistors NMOS ( tous les transistors sont des MOS canal-N). On a donc Q3 et Q4 montés en résistances ce qui entraîne une consommation en courant relativement importante.
09 MEMOIRES_04/ 10 _04/ 10 JUILLET 2006
Page 3
ETML
Les Mémoires :
9
Ligne de mot Vcc Q3
Q4
Q5 Ligne de Donnée D
Q6 Q1
Q2
SRAM en technologie NMOS Ligne de Donnée /D
Gnd
Les opérations de lecture et écriture se font en ouvrant Q5 et Q6 par la ligne de mot (Word Line). Lors de l’écriture on vient forcer la gate de Q2 à travers Q5 respectivement celle de Q1 à travers Q6. L’utilisation de la technologie CMOS (Complementary MOS) permet de supprimer le principal défaut de cette cellule SRAM, à savoir sa consommation en courant. Les tensions sont stables aussi longtemps que l’alimentation est présente. Montage amélioré : Ligne de mot Vcc Q3 P P Q4 Q5 Ligne de Donnée D
Q6 Q1 N N Q 2
SRAM en technologie CMOS Ligne de Donnée /D
Gnd
Dans cette technologie Q1 et Q2 sont des transistors NMOS ; Q3 et Q4 sont des PMOS. Q1 et Q4 conduisent alors que Q2 et Q3 sont bloqués ou inversément. On n’a donc aucune consommation de courant statique. CMOS = « Complementary Metal Oxyde Semiconducteur », on utilise donc à la fois des transistors MOS canal-N et des MOS canal-P. Les SRAM sont les mémoires les plus rapides que l’on trouve sue le marché.
09 MEMOIRES_04/ 10 _04/ 10 JUILLET 2006
Page 4
ETML 9.3.2
9
Les Mémoires :
DRAM
Les mémoires vives dynamiques (dynamic RAM) sont fabriquées en technologie MOS ; elles ont une grande capacité, une faible consommation et une assez grande vitesse ( mais plus lentes que les SRAM). Contrairement aux SRAM qui conservent leurs données dans dans des bascules, les DRAM stockent les informations binaires ( 0 ou 1) dans des condensateurs MOS très petits ( quelques pF). Ces minuscules condensateurs se déchargent dans le temps et nécessitent d’être périodiquement rechargés. On parle alors du rafraîchissement des DRAM. Cette opération est nécessaire toutes les 5 à 50 ms selon le type ( le plus long étant le mieux). Ceci est un désavantage, car il faudra une circuiterie supplémentaire par rapport à la SRAM . Pour les DRAM de petite capacité (< 64kbytes), le contrôleur de mémoire dynamique, qui renferme l’électronique de rafraîchissement, se trouve intégrée sur la même puce; de l’extérieur ces RAM dynamiques s’utilisent comme des RAM statiques. Pour les DRAM de grande capacité, le contrôleur de mémoire dynamique sera externe, rendant ces mémoires un peu plus difficiles à mettre en œuvre. L’avantage des DRAM provient de la simplicité de la structure de leurs cellules. Les DRAM occupent environ 4 fois moins de surface que les DRAM ( donc 4 fois moins chères à capacité égales ou 4 fois plus de capacité à surface égale). Parallèlement elles consomment 2 à 6 fois moins que les SRAM à capacités égales. Ces mémoires se retrouvent partout où l’on a besoin de grande capacité de stockage et de faible consommation. Une cellule DRAM est est constituée de deux éléments : un transistor MOS et un condensateur. Ligne de mot S1
Q1
Ligne de Donnée
Donnée In
VREF=VDD /2
S2
+
S3
Cd
S4 Donnée Out
Cs
fermés
Écriture : S1 & S2
Représentation symbolique d’une DRAM
sont
Lecture : S2 & S3 & S4 fermés
Sur la figure ci-contre, on a une mémoire DRAM de 4bits.
Ligne de Donnée In/Out ϕ Y0
Cycle de lecture du bit 0 : 1.’Ligne de mot 0’ à (Vdd+Vt) ⇒ M0 & M1 conduisent 2.On ferme les switches ϕA0 & ϕA1 : Régéneration de tous les bits sur la ligne de mot 0 ⇒ VS=0V si la valeur binaire était 0 ⇒ VS=Vdd si la valeur binaire était 1 3.On ouvre les switches ϕA0 & ϕA1 ⇒ Les datas de M0 & M1 ont été régénérés 4.On ferme le switch ϕY0 ⇒ Bit 0 disponible sur ligne de donnée 5.On ouvre switch ϕY0 6.’Ligne de mot 0’ à 0 V ⇒ M0 & M1 sont bloqués 09 MEMOIRES_04/ 10 _04/ 10 JUILLET 2006
VP=VDD /2
ϕ Y1
-
VP=VDD /2
ϕ A0
ϕ A1
Ligne de mot 0 M0
Matrice de Cellules
M1 Cs
Cs
Ligne de mot 1 M2
M3 Cs
Cs
Page 5
ETML
Les Mémoires :
9
Cycle d’écriture du bit 0 : ’Ligne de mot 0’ à (Vdd+Vt) ⇒ M0 & M1 conduisent 2.On ferme les switches ϕA0 & ϕA1 : Régéneration de tous les bits sur la ligne de mot 0 ⇒ VS=0V si la valeur binaire était 0 ⇒ VS=Vdd si la valeur binaire était 1 3. On ferme le switch ϕY0 ⇒ on va écrire le bit 0 à la valeur désirée 4. ‘Ligne de mot 0’ à 0 V ⇒ M0 & M1 bloqués
9.3.3
Tableau d’utilisation des RAM
RAM statiques : SRAM Oscilloscopes à mémoires numériques Analyseurs logiques Instruments d’acquisitions de données Mémoires de cartes video
RAM dynamiques : DRAM Mémoires principale de travail des ordinateurs personnels, des stations de travail, des terminaux informatiques, des serveurs.
9.3.4 Tableau d’utilisation des RAM dans les ordinateurs
Technologie de RAM Static RAM (SRAM) DRAM
Application dans les ordinateurs Mémoire cache
Mémoire principale, mémoire vidéo bon marché FPM (Fast Page Mémoire principale, Mode) DRAM mémoire vidéo bon marché EDO (Extended Mémoire principale, Data Out) mémoire vidéo bon marché DRAM EDRAM Mémoire cache (Enhanced DRAM) NVRAM Mémoires de téléphones, (Nonvolatile configuration de modems RAM) Enhanced Mémoire principale Synchronous DRAM (ESDRAM) Direct Rambus Mémoire principale DRAM (DRDRAM) RAMDAC Carte vidéo VRAM (Video Mémoire vidéo très chère RAM)
09 MEMOIRES_04/ 10 _04/ 10 JUILLET 2006
Temps d’accès Nb. de Caractéristiques ports Rapide
1
Lente
1
RAM chargée en permanence ; plus chère que la DRAM Constamant rechargée
Lente
1
Type de RAM très répandu
20% plus rapide que FPM DRAM
1
15 ns pour SRAM 35 ns pour DRAM
1
Lectures simultanées (une peut commencer alors que la précédente se termine. Très courament utilisée. Contient 256 bytes de DRAM dans une SRAM plus grande
Rapide
1
RAM alimentée par batterie
Rapide (>100MHz)
2
--
800MHz (équipée d’un bus de 16 bits) Rapide 2 fois plus rapide que DRAM
1
--
1 2
Double port : une nouvelle image peut être stockée en RAM pendant que la précédente est envoyée à l’écran
Page 6
ETML 9.4
Les Mémoires :
9
Mémoire mortes : ROM (Read Only Memory)
Il s’agit de mémoires à semi-conducteurs qui gardent en permanence des données ou dont les données sont très rarement modifiées. En utilisation normale, les données inscrites dans une mémoire morte sont inaltérables, elles peuvent seulement être lues (read only). Dans certains types de mémoires mortes les données sont introduites durant le procédé de fabrication (MROM : Masquable ROM). Dans le cas d’autres mémoires mortes, les données peuvent être introduites électriquement. On donne le nom de programmation ou de grillage au processus d’introduction des données dans une mémoire morte. Certaines mémoires mortes ne peuvent jamais avoir d’autres données que celles qui ont été programmées ; d’autres peuvent être effacées et reprogrammées aussi souvent qu’on le désire. Les mémoires mortes sont destinées à stocker des données et des informations qui ne doivent pas changer durant le fonctionnement d’un système. La principale utilisation est le stockage des programmes dans les micro-ordinateurs. Toutes les mémoires mortes sont rémanentes, c’est-à-dire qu’elles gardent leurs données lorsqu’elles ne sont plus sous tension. Lorsqu’on accède en lecture à une mémoire morte, il existe un temps d’accès (ou retard), entre le moment où on applique une adresse aux entrées de la mémoire et le moment où il apparaît une donnée sur les sorties. Ce temps d’accès est une mesure de la vitesse de fonctionnement de la mémoire morte. 9.5
Mémoires PROM (Programmable (Programmable ROM)
Les fabricants ont développé des ROM programmables à l’aide de liaisons fusibles. La structure à liaisons fusibles d’une PROM est constituée de cellules mémoires dont les connexions sont ouvertes ou fermées pour représenter un 1 ou un 0. Chacune de ces connexions est un petit fil fusible mis là par le fabricant. L’utilisateur peut choisir de griller n’importe laquelle de ces liaisons fusibles pour enregistrer en mémoire les données voulues. On fait donc fondre les petites connexions en appliquant au dispositif une tension bien précise qui produit l’intensité nécessaire pour faire fondre la petite connexion qui s’ouvre alors comme lorsqu’un fusible grille. Dès que le filament est fondu, il est impossible de revenir en arrière. Afin de programmer les PROM, il existe des programmateurs dans lesquels il est possible de charger le code à partir d’un ordinateur par exemple, et ensuite le programmateur se charge de faire griller les liaisons.
Figure 11-11 TOCCI p.633
09 MEMOIRES_04/ 10 _04/ 10 JUILLET 2006
Page 7
ETML
Les Mémoires :
9
9.6 Mémoire EPROM ( EPROM : Erasable PROM )
Une EPROM peut être programmée par un utilisateur, mais il est possible de l’effacer et de la reprogrammer aussi souvent qu’on le désire. La programmation d’une EPROM fait intervenir des niveaux de tension spéciaux (10 à 25V) sur des entrées précise de la puce pendant une durée déterminée (50 ns). Pour faire revenir la mémoire dans son état initial, on expose la fenêtre transparente du circuit intégré à une lumière ultra violette (UV). Cette action remet toutes les cellules à 1. Il sera donc à nouveau possible de la programmer. La programmation peut durer quelques minutes et l’effacement demande une exposition aux UV de 15 à 30 minutes. 2
9.7 Mémoire EEPROM ( E PROM : Electrically Erasable PROM )
Une EEPROM est une une EPROM qui a la faculté de pouvoir pouvoir être effacée électriquement. Avantage de l’EEPROM par rapport à l’EPROM :
9.8
•
Effaçable électriquement directement sur le circuit (tension de 21V produite à partir du 5V).
•
Reprogrammation de mots individuellement.
•
Effaçage rapide (10 ms contre 30 minutes !)
•
Programmation rapide (impulsion de 10 ms contre 50 ms)
Applications des mémoires mortes
Les différentes mémoires mortes (ROM, PROM, EPROM, EEPROM) se trouvent dans diverse applications : • •
•
• •
Stockage de programme pour micro-ordinateur : microprogramme, firmware, BIOS. Mémoire d’amorçage pour micro-ordinateur : petit programme stocké en ROM qui charge le système d’exploitation en RAM à partir d’un disque. Tables de données : tables trigonométriques ou tables de conversion de codes. Données qui ne changent jamais au cours de l’application. Générateur de caractères. Générateur de fonctions : permet de générer des formes d’ondes à partir part ir de valeurs préalablement stockées et d’un convertisseur digital-analogique.
A noter que les microcontroleurs actuels contiennent presque toujours une partie de mémoire EEPROM directement sur la même puce de silicium, ainsi que de la RAM.
09 MEMOIRES_04/ 10 _04/ 10 JUILLET 2006
Page 8
ETML
Les Mémoires :
9
Mémoire FLASH
Les mémoires FLASH rassemblent les avantages des mémoires ROM, des RAM ainsi que des disques durs. Basse consommation
ROM
RAM FLASH
Non volatile
9.8.1
HDD
Réinscriptible
Technologie
Les mémoires Flash existent en différents types d’architecture. Selon cette architecture, elles sont accessibles de manière séquentielle ou aléatoire, elles nécessitent une tension de programmation plus élevée que la tension d’utilisation, elles sont plus ou moins rapides. Le but de ce qui suit est de comprendre le principe de fonctionnement d’une cellule seule. Gate de contrôle
Gate flottante Nœud d’accumulation d’accumulation Drain
Source n
p
n
Substrat Vpp
p
La programmation de la cellule consiste piéger des électrons dans la gate flottante en appliquant une tension positive sur la gate flottante et 0V sur le substrat (injection d’électrons par le pôle négatif).
Ground Programmation
Ground
p 09 MEMOIRES_04/ 10 _04/ 10 JUILLET 2006
Vpp
Effacement
L’effacement de la cellule consiste à éliminer les électrons dans la gate flottante en appliquant une tension positive sur le substrat
Page 9
ETML
Les Mémoires :
9
et 0V sur la gate flottante (extraction d’électrons par le pôle négatif).
9.9
Equipement de stockage à grosse capacité
CD-ROM ( 760 MBytes, Disques durs ( jusqu’à 15 Gbytes), disquettes (jusqu’à 100 Mbytes) 9.10 Pour mémoire !
On peut citer la bande magnétique, les mémoires à torres
09 MEMOIRES_04/ 10 _04/ 10 JUILLET 2006
Page 10