Title: INF1500 Logique des systmes numriques
1INF1500 Logique des systèmes numériques
Pierre LANGLOIS, Karim HADJIAT Département de
génie informatique École Polytechnique de
Montréal juillet 2006
2Plan de la présentation
- Introduction Systèmes numériques et analogiques
- Niveaux dabstraction des systèmes numériques
- Introduction à la logique booléenne
- Variables, fonctions, et expressions booléennes
- Conception de circuits logiques à partir
dexpressions en français -
- Portes logiques
- Formes canoniques et expansions en mintermes et
maxtermes
3Chapitre 1 introduction
Référence Roth 5e éd., section 1.1
- 1.1 Systèmes numériques et analogiques
- Dans ce cours, on parle de systèmes numériques
- Depuis 1945 environ, les systèmes numériques ont
progressivement remplacé les systèmes analogiques
dans une foule d'applications, dont - Les calculs
- Le traitement de linformation
- Les systèmes de contrôle
- La reproduction et la transmission de sons et de
la parole - La reproduction et la transmission dimages et
de séquences vidéo et, - Les systèmes de communications.
4Chapitre 1 introduction
- Les systèmes numériques se distinguent des
systèmes analogiques de plusieurs façons - les systèmes numériques traitent de linformation
discrète (plutôt que continue) dans le temps - les systèmes numériques traitent de linformation
discrète (plutôt que continue) en grandeur - les systèmes numériques sont plus fiables
- les systèmes numériques peuvent produire des
résultats exacts et, - il est possible de créer deux systèmes numériques
identiques, i.e. il y a peu ou pas de dépendance
sur les variations de production. - À la base dun système numérique, on utilise
le système binaire, qui implique toujours un
choix entre deux valeurs seulement. Par exemple
une tension de 0 V ou 5 V, courant de 0 mA ou 10
mA, lampe allumée ou éteinte. Si on désire
quantifier une quantité analogique, il est
nécessaire de faire un choix entre des valeurs
discrètes.
5Chapitre 1 introduction
- 1.2 Niveaux dabstraction des systèmes numériques
- On parle en général de trois niveaux
dabstraction pour les systèmes numériques - Le niveau système e.g. microprocesseur, mémoire,
unités dentrée-sortie, bus - Le niveau des portes logiques les portes de base
(ET, OU, NON, etc.), les circuits combinatoires
(multiplexeurs, encodeurs, additionneurs,
multiplicateurs, etc.), et les éléments à mémoire
(bascules et loquets) et, - Le niveau des circuits e.g. transistors, diodes,
résistances, condensateurs et inductances. - Le cours INF1500 se concentre sur le niveau des
portes logiques. - 1.3 Question de révision
- Expliquer les différences entre un système
numérique et un système analogique.
6Chapitre 2 introduction à la logique booléenne
- Références Roth 5e éd., unités 2 et 4
- 2.1 Variables booléennes
- Une variable booléenne peut prendre une
seule de deux valeurs vrai ou faux. On peut
interpréter ces deux valeurs de différentes
façons selon le contexte. Quelques exemples sont
donnés ici
- En général, on utilise linterprétation
numérique.
7Chapitre 2 introduction à la logique booléenne
2.2 Fonctions booléennes de base NON, ET, OU
8Chapitre 2 introduction à la logique booléenne
- Circuits électriques ou hydrauliques
correspondants - Exemples
9Chapitre 2 introduction à la logique booléenne
- 2.3 Equations et expressions booléennes
- 2.3.1 Notes de base
- On peut écrire une expression booléenne complexe
en combinant plusieurs variables et constantes
ainsi que les opérations NON, ET, OU - On peut utiliser des parenthèses
- Toute expression booléenne peut être décrite
complètement soit par - Un groupe de variables et/ou constantes séparés
par des symboles dopérations logiques - Un diagramme de portes logiques ou,
- Une table de vérité.
10Chapitre 2 introduction à la logique booléenne
- 2.3.2 Préséance des opérations
- Parenthèses
- NON
- ET
- OU
- 2.3.3 Tables de vérité
- Une table de vérité montre la valeur dune
expression booléenne pour toutes les combinaisons
possibles des valeurs des variables qui la
composent - On établit la liste des combinaisons possibles
des variables dans un ordre croissant et, - La table de vérité dune expression à n
variables contient 2n rangées. - 2.3.4 Egalité entre équations
- Définition On dit que deux expressions
booléennes sont égales si elles ont la même
valeur pour toutes les combinaisons dentrées
possibles, donc si leurs tables de vérité sont
identiques.
11Chapitre 2 introduction à la logique booléenne
2.3.5 Exercice F1 AB' C F2 (A
C)(B' C)
Que peut-on conclure en comparant ces deux tables
de vérité ?
12Chapitre 2 introduction à la logique booléenne
- 2.3.6 Autres exemples
- Donner la table de vérité ainsi que le
diagramme de portes logiques pour les équations
booléennes suivantes - F A B'
- F A'B
- F A(B C)
- F AB C
- F A B'C
- F AB B'C ABCC
13Chapitre 2 introduction à la logique booléenne
- 2.4 Conception de circuits logiques à partir
dexpressions en français - Référence Roth 5e éd., section 4.1 pp. 84-85
- Forme générale (statut ou action à prendre) si
(combinaison de conditions) - Exemple Jachèterai une voiture si jai un
permis de conduire et que jai au moins 10000 en
banque. - Étapes à suivre
- Identifier laction à prendre et lui assigner une
variable - Identifier chaque condition dans lexpression, et
leur assigner chacune une variable - Ecrire lexpression en tenant compte des
opérateurs logiques - Solution jachèterai une voiture F
- jai un permis de conduire P
F PB - jai au moins 10000 en banque B
14Chapitre 2 introduction à la logique booléenne
- 2.4.1 Exercices
- Donner léquation correspondante ainsi que
le réseau de portes logiques correspondant - Lalarme sonnera si le système est enclenché et
que la porte nest pas fermée ou bien sil est
plus tard que 18 heures et que la fenêtre nest
pas fermée. - Lalarme sonnera si le système est enclenché et
(que la porte nest pas fermée ou bien sil est
plus tard que 18 heures et que la fenêtre nest
pas fermée). - Marie regardera la télévision ce soir si ses
devoirs sont finis et que cest lundi soir. - Julio étudiera ce soir sil a un examen demain ou
sil ny a rien de bon à la télé, mais pas si
cest jeudi, vendredi ou samedi. - Il faut lancer les opérations de déneigement sil
est tombé au moins 15 cm de neige ou bien si il
est tombé plus de 5 cm de neige et quon nattend
pas dautres chutes de neige pour au moins 24
heures.
15Chapitre 2 introduction à la logique booléenne
2.5 Toutes les portes logiques à une et deux
entrées Il y a 16 possibilités de fonctions
logiques à deux variables x et y, tel que montré
dans la table de vérité combinée suivante. Les
fonctions F0 et F15 sont des constantes, alors
que les fonctions F3, F5, F10 et F12 se réduisent
à des fonctions à une seule variable. Il ne reste
donc que 10 fonctions de deux variables
proprement dites.
16Chapitre 2 introduction à la logique booléenne
Les portes logiques à une et deux entrées les
plus usitées sont données ici. Les portes sont
organisées en deux colonnes, selon quil y ait ou
non un symbole dinversion (une bulle) à la
sortie. Le symbole dinversion peut toujours être
remplacé par un inverseur.
17Chapitre 2 introduction à la logique booléenne
Bien que ce soit moins usité, on peut aussi
placer le symbole dinversion à lune ou aux deux
entrées de la porte logique (ainsi quà sa
sortie). On obtient alors plusieurs combinaisons
possibles, dont en voici quatre exemples. On
verra plus tard les équivalences résultantes.
18Chapitre 2 introduction à la logique booléenne
2.6 Portes logiques à plus de deux
entrées Toutes les portes logiques, sauf le NON
et lidentité, peuvent avoir plus de deux
entrées. En voici quelques exemples
19Chapitre 2 introduction à la logique booléenne
- 2.7 Analyse de réseaux de portes logiques
- Le problème étant donné un réseau de portes
logiques, donner son expression logique
correspondante. - Procédure
- 1. Identifier les entrées et la sortie.
- 2. Assigner une variable à la sortie de chaque
porte logique, sauf la sortie finale. - 3. En commençant le plus près des entrées,
exprimer chaque variable par sa fonction
logique. - Exemple
20Chapitre 2 introduction à la logique booléenne
2.7.1 Exercices Pour chacun des circuits de la
page suivante, donner lexpression logique
correspondant à la fonction logique F.
21Chapitre 2 introduction à la logique booléenne
22Chapitre 2 introduction à la logique booléenne
23Chapitre 2 introduction à la logique booléenne
2.8 Formes canoniques et expansions en mintermes
et maxtermes Référence Roth, 5e éd., sections
4.3, 4.4 et 4.6 2.8.1 formes canoniques À
partir dune table de vérité, on peut facilement
donner la valeur de la fonction logique
correspondante par lune des deux formes
canoniques une somme de produits ou un produit
de sommes. Pour obtenir la somme de produits, on
énumère les termes de la fonction qui
correspondent à une valeur de 1 de celle-ci.
Chaque terme est composé dun produit (ET
logique) de chaque variable de la fonction. Une
variable ayant la valeur 0 dans la rangée
correspondante est complémentée. Pour obtenir le
produit des sommes, on énumère les termes de la
fonction qui correspondent à une valeur de 0 de
celle-ci. Chaque terme est composé dune somme
(OU logique) de chaque variable de la fonction.
Une variable ayant la valeur 1 dans la rangée
correspondante est complémentée.
24Chapitre 2 introduction à la logique booléenne
Exemple
somme de produits F ABC ABC ABC
ABC produit de sommes F (A B C)(A B
C)(A B C)(A B C)
25Chapitre 2 introduction à la logique booléenne
2.8.2 mintermes et maxtermes Chaque terme dans
lexpansion en somme de produits est un minterme,
dénoté par mi , où i est le numéro de la rangée
correspondante à ce terme. Chaque terme dans
lexpansion en produit de sommes est un maxterme,
dénoté par Mi où i est le numéro de la rangée
correspondante à ce terme.
26Chapitre 2 introduction à la logique booléenne
Le tableau suivant donne lexpression des
mintermes et maxtermes pour une fonction à trois
variables
Pour lexemple précédent, on a alors F m1
m2 m3 m6 ? ( m1 , m2 , m3 , m6 ) M0
M4 M5 M7 ? ( M0 , M4 , M5 , M7 )
27Chapitre 2 introduction à la logique booléenne
- Observations
- On constate que les index présents dans la somme
de mintermes ne le sont pas dans le produit de
maxtermes, et vice-versa. - On observe que mi Mi.
- Consulter les tableaux 4-3 et 4-4, Roth 5e éd.,
pp. 92-93, pour les valeurs complémentées dune
expansion en mintermes ou maxtermes. - Résumé
- Pour obtenir une fonction, on prend la somme des
mintermes où la fonction vaut 1, ou le produit
des maxtermes où la fonction vaut 0. - Pour obtenir linverse dune fonction, on prend
la somme des mintermes où la fonction vaut 0, ou
le produit des maxtermes où la fonction vaut 1.
28Chapitre 2 introduction à la logique booléenne
2.8.3 Exercices Dans chaque cas, donner le
produit de sommes de la fonction F la somme de
produits de la fonction F le produit de sommes de
la fonction F' la somme de produits de la
fonction F'
29(No Transcript)
302.9 Exemple de conception dun circuit Un
comité composé de quatre personnes a besoin dun
mécanisme de vote secret pour les amendements sur
la constitution du comité. Un amendement est
approuvé si au moins 3 personnes votent
pour. Concevoir un circuit logique qui accepte 4
entrées représentant les votes. La sortie du
circuit indique si au moins 3 des entrées sont
vraies .
- Etape 1 donner la table de vérité
- Etape 2 donner la fonction logique en
expansion de mintermes ou de maxtermes - F
- Etape 3 donner le circuit logique
correspondant
31Chapitre 2 introduction à la logique booléenne
- 2.10 Questions de révision
- Dessiner un circuit électrique équivalent aux
portes logiques ET et OU. - Compléter lexercice de la section 2.3.5 des
notes de cours. - Compléter les exercices de la section 2.3.6 des
notes de cours. - Compléter les exercices de la section 2.4.1 des
notes de cours. - Compléter les exercices de la section 2.7.1 des
notes de cours. - Compléter les exercices de la section 2.8.3 des
notes de cours. - Compléter lexemple de la section 2.9 des notes
de cours. - Répondre à la question 4.1, p. 101 de Roth
(réponse en annexe du livre). - Répondre à la question 4.2, p. 102 de Roth
(réponse en annexe du livre). - Répondre à la question 4.7, p. 103 de Roth
(réponse en annexe du livre).