Slides:



Advertisements
Présentations similaires
CHAPITRE 8 LES ALIMENTS 3/25/2017 Des fruits Madame Craven.
Advertisements

Tables de Karnaugh Table de vérité : Table de Karnaugh
t(s) U(v) CAN temps ,4v
t(s) U(v) CAN temps ,4v
« 1.7. Fonction mémoire et différents types de logiques »
« 1.5. Les fonctions logiques »
ARCHITECTURE INTERNE d’un MICROPROCESSEUR
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Orchestration de Web Services Module 5 Exercice Pratique à l'usage de l'environnement.
Cours 2 Microprocesseurs
Les opérateurs combinatoires
Introduction à la minimisation logique
Les circuits séquentiels
Algèbre de Boole Définitions :
Architecture des Ordinateurs
Architecture des Ordinateurs
Introduction à la logique

Tests et Validation du logiciel
Les microprocesseurs A. Objectifs de la séquence:
Fonctions Booléennes primaires
Architecture de machines Eléments de logique
Présentation Unité de codage
ALGEBRE DE BOOLE Mohamed Yassine Haouam
Le binaire L’historique.
3.1 Portes logiques et algèbre de Boole
Cours Systèmes logiques
Commande séquentielle d’un moteur
ARCHITECTURE GLOBALE CAPTAGE Traitement DES des données GRANDEURS
MACHINE DE MOORE SYNCHRONE SIMPLIFIÉE Professeur à l'UHP / ESIAL
TRAVAIL 3 : PRODUCTION MULTIMÉDIA
Logique Combinatoire Fonction OUI Fonction NON Fonction ET Fonction OU
Algèbre de Boole et les Boucles
Révisions Logique combinatoire
Les systèmes de numération
Le Langage Binaire.
Et l'énergie dans tout çà ….
Chapitre 4.
PLAN Introduction Demultiplexeur Multiplexeur Décodeur Codeur.
Architecture des ordinateurs
GIF-3002 SYSTÈMES MICRO- PROCESSEURS ET INTERFACES 4 et 5 Novembre 2009 Automne 2009 PLT Décodeurs dadresses, bases (8.5) U.S. Ganguly, Pr., responsable.
3.2 Circuits logiques de base
Fonction logique OUI a S 1 a S 1 a S S = a La sortie est toujours

Plan Formalismes • Algèbre de Boole • Tables de vérité

Équations Logiques État Physique État Électrique État Logique L
Logique combinatoire & Logique séquentielle
Codage de l’information
Chapitre 2 : Représentation de l’information dans la machine
Représentation binaire de nombres entiers et opérations arithmétiques de base Sujets de ce thème
INF3500 : Conception et implémentation de systèmes numériques Pierre Langlois Représentation et opérations.
Le Système Binaire Introduction Les bases à connaitre Conversions
Advanced Boolean Equation Language
Chapitre 3 :Algèbre de Boole
Algèbre de Boole Définition des variables et fonctions logiques
Le codage des nombres binaires
Les réseaux logiques programmables
Rappel - analyse et synthèse de fonctions combinatoires
07/02/06 00:21 Yannick Herve, Wilfried Uhring, Jihad Zallat 1 Électronique Numérique Chapitre 2 Composant Combinatoires Formalisme graphique, Logique négative/positive,
Algèbre de Boole Définition des variables et fonctions logiques
UE MAREP Cours 1 : Algèbre de Boole et entiers naturels
CHAPITRE 8 Les booléens et les chaines de bits 1.
A. Lebrun. La base 2 Un nombre peut se représenter en base deux par une suite de 0 ou de 1. Chaque bit a un poids qui dépend de son rang Le format n impose.
Multiplexeurs A.Lebrun.
A. Lebrun. Théorème de Shannon Soit F une fonction logique de n variables xn F(x1,..,xi, xn)=xi.f(x1,…,1, xn)+xi.g (x1,…,0,,xn) F(x1,..,xi, xn)=(xi+g(x1,…,0,
L’électronique des ordinateurs Laurent JEANPIERRE IUT de CAEN – Campus 3.
1 Objectifs Apprendre la structure de quelques circuits combinatoires souvent utilisés ( demi additionneur, additionneur complet,……..). Apprendre comment.
Architecture de machines Eléments de logique
Fonctions Logiques & Algèbre de BOOLE
Transcription de la présentation:

Unité 4: Logique combinatoire Objectifs : À la fin de cette unité, vous comprendrez le fonctionnement des principaux éléments d'un ordinateur : décaleur, additionneur, unité logique et arithmétique. Pour y arriver, vous devrez avoir atteint les objectifs suivants : - décrire le fonctionnement et les propriétés des portes logiques, de circuits combinatoires simples tels que le décodeur, le multiplexeur et le démultiplexeur; - utiliser les théorèmes et les identités de l'algèbre de Boole pour synthétiser un circuit à partir de sa table de vérité et simplifier le résultat obtenu. 111

Digital Works Pour mieux profiter des unités 4 à 6, nous vous encourageons à utiliser le logiciel Digital Works, disponible gratuitement à l’adresse : http://www.mecanique.co.uk/digital-works/ Le logiciel est également disponible dans les laboratoires 3910 et 3966. Ce logiciel permet non seulement de dessiner les circuits, mais égale-ment de les faire fonctionner. Vous trouverez sur le site du cours à la page : http://www.ift.ulaval.ca/~marchand/ift17583/Exemples/Exemples2.html des fichiers implantant pratiquement tous les circuits du cours ainsi que quelques autres. 112

Unité 4: Logique combinatoire 5.1 Notion de circuit logique Fonctions logiques Une fonction logique est une fonction qui agit sur une ou plusieurs variables logiques. Une variable logique est une variable qui peut prendre l’une de deux valeurs : vrai ou faux, 1 ou 0. 113

Unité 4: Logique combinatoire 5.1 Notion de circuits logiques Les circuits logiques sont des circuits électroniques servant à effectuer physiquement des fonctions logiques. Circuits combinatoires Les signaux de sortie ne dépendent que des signaux d’entrée présents. Circuits séquentiels Circuits dans lesquels les signaux de sortie dépendent des signaux d’entrée appliqués antérieurement en plus des signaux d’entrée présents. 114

Unité 4: Logique combinatoire 5.2 Circuits combinatoires 5.2.1 Algèbre booléenne Georges Boole, en 1847, a défini une algèbre qui s’applique à des fonctions logiques de variables logiques. Nous verrons que toute fonction logique peut être réalisée à l’aide d’un petit nombre de fonctions logiques de base aussi appelées opérateurs logiques ou portes (gates). La fonction logique d’un circuit combinatoire peut se définir par le tableau de correspondance entre les états d’entrée et les états de sortie. Un tel tableau est appelé table de vérité. 115

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.1 Algèbre booléenne La table de vérité d’une fonction de n variables a autant de lignes que d’états d’entrée possibles, soit 2n. Pour chacun de ces états, la sortie peut prendre la valeur 0 ou 1. Donc, pour n variables, on a fonctions possibles. 116

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.2 Fonctions d’une variable Soit a une variable logique. On a quatre fonctions possibles : a Z0 Z1 Z2 Z3 0 0 0 1 1 1 0 1 0 1 Z0 = 0 : constante Z1 = a: identité Z2 = a : complément Z3 = 1 : constante La seule fonction non triviale est le complément, qu’on réalise au moyen de l’opérateur NON ou inverseur Z = a. 117

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.2 Fonctions d’une variable L’opérateur NON ou inverseur Table de vérité : a a 0 1 1 0 a a 118

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables Il y a 16 fonctions possibles de deux variables 00 01 10 11 ab 0 0 0 0 F0 = 0 Constante 0 0 0 0 1 F1 = a.b Fonction ET 0 0 1 0 F2 = a.b 0 0 1 1 F3 = a 0 1 0 0 F4 = a.b 0 1 0 1 F5 = b 0 1 1 0 F6 = ab Fonction XOR 0 1 1 1 F7 = a+b Fonction OU 119

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables 00 01 10 11 ab 1 0 0 0 F8 = a+b = a.b Fonction NOR 1 0 0 1 F9 = ab Fonction égalité 1 0 1 0 F10 = b 1 0 1 1 F11 = a+b 1 1 0 0 F12 = a 1 1 0 1 F13 = a+b 1 1 1 0 F14 = a.b = a + b Fonction NAND 1 1 1 1 F15 = 1 Constante 1 120

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables Fonction ET (AND) Table de vérité a b a.b 0 0 0 0 1 0 1 0 0 1 1 1 ET a b a.b 0 1 0 0 0 1 0 1 a b a.b 121

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables Fonction OU (OR) Table de vérité a b a+b 0 0 0 0 1 1 1 0 1 1 1 1 OU a b a+b 0 1 0 0 1 1 1 1 a b a+b 122

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables Application. Masquage d’un registre : Avec des portes ET, on peut mettre des bits à 0 de façon sélective. Avec des portes OU, on pourrait mettre des bits à 1 de façon sélective. Registre 1 1 0 1 1 1 0 0 1 1 1 0 0 1 1 1 1 1 1 Masque 123

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables On peut généraliser les fonctions logiques à trois variables ou davantage : a b c a.b.c 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 a b c a+b+c 0 0 0 0 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 1 124

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables Théorèmes fondamentaux de l’algèbre de Boole Identités a + 0 = a a . 0 = 0 a + 1 = 1 a . 1 = a Commutativité a + b = b + a a . b = b . a Distributivité a+(b.c) = (a+b).(a+c) a.(b+c) = a.b + a.c Associativité a+(b+c) = (a+b)+c = a+b+c a.(b.c) = (a.b).c = a.b.c Idempotence a + a = a a . a = a Complémentation a + a = 1 a . a = 0 De Morgan a.b = a + b a + b = a . b Autres a = a Absorption a + (a . b) = a a.(a + b) = a a + (a . b) = a + b (a + b).(a + b) = a 125

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables La fonction XOR (OU-exclusif ou OU-disjonctif) ou fonction inégalité Table de vérité a b a  b 0 0 0 0 1 1 1 0 1 1 1 0 a b a  b 0 1 0 0 1 1 1 0 a b ab 126

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables La fonction XOR. Propriétés : a  b = a.b + a.b a  b = a.b + a.b a  0 = a a  a = 0 a  1 = a a  a = 1 a  b = b  a (a  b)  c = a  (b  c) Réalisation : a b a  b 127

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables Minterm Un minterm est le produit logique de toutes les variables d’entrée apparaissant chacune sous la forme vraie (si la variable vaut 1) ou sous la forme complémentée (si la variable vaut 0). Ainsi, dans la table de vérité suivante, il y a quatre minterms : a b a  b 0 0 0 a . b 0 1 1 a . b 1 0 1 a . b 1 1 0 a . b 128

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables Maxterm Un maxterm est la somme logique de toutes les variables d’entrée apparaissant chacune sous la forme vraie (si la variable vaut 0) ou sous la forme complémentée (si la variable vaut 1). Ainsi, dans la table de vérité suivante, il y a quatre maxterms : a b a  b 0 0 0 a + b 0 1 1 a + b 1 0 1 a + b 1 1 0 a + b 129

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables Théorème Un circuit logique peut être représenté par la somme logique de tous les minterms pour lesquels la sortie est 1 ou par le produit logique de tous les maxterms pour lesquels la sortie est 0. Exemple : Le XOR peut être exprimé par a  b = a.b + a.b ou a  b = (a + b).(a + b) 130

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables Les fonctions NAND et NOR Le théorème précédent montre que tout circuit logique peut être réalisé avec trois types de portes : ET, OU et NON. On peut aussi les réaliser avec un seul type de porte si on utilise les portes complètes NAND ou NOR. NAND NOR a b a b a.b a+b 0 1 0 1 1 1 1 0 a b a.b b a 0 1 0 1 0 1 0 0 a+b 131

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.3 Fonctions de deux variables Les fonctions NAND et NOR En effet : a.b = a.b = a+b et a+b = a+b = a.b Aussi, puisque a.a = a et a+a = a = = a = = a 132

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Pour effectuer la synthèse d’un circuit combinatoire, on part de sa table de vérité. On en extrait les minterms des valeurs pour lesquelles la fonction est vraie (1) et on réalise cette fonction en faisant la somme logique de ces minterms, ou encore, on en extrait les maxterms des valeurs pour lesquelles la fonction est fausse (0) et on réalise cette fonction en faisant le produit logique de ces maxterms. Cette réalisation n’est pas toujours optimale. On aura donc la plupart du temps à simplifier les expressions au moyen de l’algèbre booléenne. 133

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Exemple : soit la table de vérité suivante : a b c f minterms 0 0 0 0 0 0 1 1 a.b.c 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 1 a.b.c 1 1 0 1 a.b.c 1 1 1 1 a.b.c f = a.b.c + a.b.c + a.b.c + a.b.c 134

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Simplification f = (a + a).b.c + a.b.(c + c) = b.c + a.b Circuit a b f c 135

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Simplification La simplification des équations logiques au moyen de l’algèbre booléenne n’est pas toujours simple, et on ne sait pas toujours si on a atteint une solution optimale. Les tables de Karnaugh permettent de systématiser ce processus. 136

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Tables de Karnaugh a b c f 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 0 1 1 0 1 1 1 1 1 Donc f = a.b + a.c c ab 0 1 00 0 1 01 0 1 11 1 1 10 0 0 a.c a.b 137

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Chaque boucle doit être rectangulaire et doit contenir le maximum possible de 1 qui soit une puissance de 2 : 1, 2, 4, 8, 16, etc. et ne contenir aucun 0. La boucle est caractérisée par les combinaisons qui sont vraies pour tous les éléments de la boucle. Les recouvrements sont possibles. c cd ab 0 1 ab 00 01 11 10 00 0 0 0 0 01 0 1 1 0 11 0 1 1 1 10 1 0 0 0 00 0 0 01 1 1 11 1 1 10 1 0 b.d b a.b.c a.c a.b.c.d 138

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Les boucles peuvent «faire le tour» de la table a b c f 0 0 0 0 0 0 1 1 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 1 1 1 0 0 1 1 1 0 Donc f = b.c c ab 0 1 00 0 1 01 0 0 11 0 0 10 0 1 b.c 139

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Les boucles peuvent «faire le tour» de la table cd ab cd b.d 00 01 11 10 00 1 0 0 1 01 0 0 0 0 11 0 0 0 0 10 1 0 0 1 ab 00 01 11 10 00 0 1 1 0 01 1 0 0 1 11 1 0 0 1 10 0 1 1 0 b.d b.d 140

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire États indifférents Dans certains cas, la sortie pour un état d’entrée donné est indifférente, soit parce que cet état d’entrée ne peut jamais se produire, soit parce que la sortie correspondante ne nous inté-resse pas. On inscrit alors un x dans la table de Karnaugh. On peut s’en servir pour minimiser le circuit comme si c’étaient des 1. cd ab 00 01 11 10 00 0 0 0 0 01 0 0 0 0 11 1 x x x 10 x 0 1 x a.b + a.c au lieu de a.b.c.d + a.b.c.d 141

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Synthèse d’un demi-additionneur binaire Table de vérité du demi-additionneur (qui ne tient pas compte d’une retenue antérieure) a b S R R = a.b 0 0 0 0 S = a.b + a.b = a  b 0 1 1 0 a.b 1 0 1 0 a.b 1 1 0 1 a.b a b S R 142

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Synthèse d’un additionneur binaire de 1 bit Table de vérité de l’additionneur 1 bit a b R S R’ R’ = a.b.R + a.b.R + a.b.R + a.b.R 0 0 0 0 0 S = a.b.R + a.b.R + a.b.R + a.b.R 0 0 1 1 0 On simplifie : 0 1 0 1 0 R’ = (a.b + a.b).R + a.b 0 1 1 0 1 R’ = (a  b).R + a.b 1 0 0 1 0 S = (a.b + a.b).R + (a.b + a.b).R 1 0 1 0 1 S = (a  b).R + (a  b).R 1 1 0 0 1 S = (a  b)  R 1 1 1 1 1 143

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Synthèse d’un additionneur binaire Réalisation au moyen de 2 demi-additionneurs Réalisation complète d’un additionneur 1 bit a abR R S S a a S ab b R (ab)R R’ b b R a.b R’ a b S (ab)R ab abR a.b R 144

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Additionneur à plusieurs bits A3 B3 A2 B2 A1 B1 A0 B0 Additionneur 1 bit a b R R’ S a b R R’ S a b R R’ S a b R R’ S S3 S2 S1 S0 145

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.4 Synthèse d’un circuit combinatoire Additionneur/soustracteur 4 bits B3 B2 B1 B0 1 = soustraction 0 = addition A3 A2 A1 A0 Additionneur 1 bit a b R R’ S a b R R’ S a b R R’ S a b R R’ S S3 S2 S1 S0 146

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.6 Multiplexeurs et démultiplexeurs Démultiplexeur 4 bits ou 1 vers 4 Ce circuit est utile pour choisir la destination d’un signal. x a.b.x a.b.x a.b.x a.b.x a b 147

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.6 Multiplexeurs et démultiplexeurs Multiplexeur 2 bits ou 2 vers 1 Ce circuit est utile pour choisir la source d’un signal. a S.a b z S.b S z = S.a + S.b 148

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.6 Multiplexeurs et démultiplexeurs Multiplexeur 4 bits ou 4 vers 1 x0 a.b.x0 x1 a.b.x1 z x2 a.b.x2 x3 a.b.x3 a b 149

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.6 Multiplexeurs et démultiplexeurs Décaleur de 1 bit vers la gauche D7 D6 D6 D5 D5 D4 D4 D3 D3 D2 D2 D1 D1 D0 D0 a b S z a b S z a b S z a b S z a b S z a b S z a b S z a b S z C S7 S6 S5 S4 S3 S2 S1 S0 150

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.6 Multiplexeurs et démultiplexeurs Décaleur à barillet D0-D31 Décaleur 1 bit S Décaleur 2 bits S Décaleur 4 bits S Décaleur 8 bits S Registre de commande 1 0 1 1 S0-S31 Nb. de décalages 151

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.6 Multiplexeurs et démultiplexeurs Utilisation d’un multiplexeur pour réaliser n’importe quelle fonction logique. Exemple : Table de vérité a b c f 0 0 0 1 0 0 1 0 0 1 0 0 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 0 1 1 1 1 c 1 1 2 3 MUX f a b 152

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.7 Décodeurs, codeurs, transcodeurs Codeur : code en binaire le numéro de la ligne activée. S1 S2 S4 S8 0 1 2 3 4 5 6 7 8 9 153

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.7 Décodeurs, codeurs, transcodeurs Décodeur 3 vers 8 1 Une seule sortie à la fois est 0 et est choisie par le code abc. a.b.c = 4 2 3 4 5 6 7 c c b b a a 154

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.7 Décodeurs, codeurs, transcodeurs Transcodeur BCD-excédent-3 Table de vérité: A B C D X Y Z T I 0 0 0 0 0 0 1 1 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 1 0 1 0 0 0 1 1 0 1 1 0 0 0 1 0 0 0 1 1 1 0 0 1 0 1 1 0 0 0 0 0 1 1 0 1 0 0 1 0 0 1 1 1 1 0 1 0 0 1 0 0 0 1 0 1 1 0 1 0 0 1 1 1 0 0 0 A B C D X Y Z T I 1 0 1 0 x x x x 1 1 0 1 1 x x x x 1 1 1 0 0 x x x x 1 1 1 0 1 x x x x 1 1 1 1 0 x x x x 1 1 1 1 1 x x x x 1 155

Unité 4: Logique combinatoire 5.2 Circuits logiques 5.2.7 Décodeurs, codeurs, transcodeurs Transcodeur BCD-excédent-3 CD CD CD AB 00 01 11 10 00 1 0 0 1 01 1 0 0 1 11 x x x x 10 1 0 x x AB 00 01 11 10 00 1 0 1 0 01 1 0 1 0 11 x x x x 10 1 0 x x AB 00 01 11 10 00 0 1 1 1 01 1 0 0 0 11 x x x x 10 0 1 x x T Z Y CD CD AB 00 01 11 10 00 0 0 0 0 01 0 1 1 1 11 x x x x 10 1 1 x x AB 00 01 11 10 00 0 0 0 0 01 0 0 0 0 11 1 1 1 1 10 0 0 1 1 T = D Z = CD + CD = CD Y = BCD+BC +BD X = A + BC +BD I = AB + AC X I 156

Unité 4: Logique combinatoire 5.2 Circuits logiques UAL élémentaire A B R F0 F1 A.B Unité logique A+B Sortie B A B R S R’ R’ 1 2 3 Additionneur A B Décodeur 2-4 Unité arithmétique Unité de commande 157

Unité 4: Logique combinatoire 5.2 Circuits logiques Logique à trois états Il faut souvent appliquer à un même fil la sortie de l’une ou l’autre d’un ensemble de sorties. Pour éviter l’interférence entre les différents circuits, par exemple une sortie qui tenterait d’appliquer 1 à une ligne alors qu’une autre sortie tenterait d’y appliquer 0, on utilise la logique trois états, dans laquelle la sortie peut être 0, 1, ou haute impédance (comme si elle n’état pas connectée). On ajoute une entrée Output Enable (OE) à chaque circuit et on n’en active qu’un à la fois. = OE OE 158

Unité 4: Logique combinatoire 5.2 Circuits logiques Logique programmable Les circuits de logique programmable PLA (Programmable Logic Array), PLD (Programmable Logic Devices), EPLD (Eraseble PLD), etc. sont basés sur le fait que toute fonction logique peut être exprimée comme une somme de minterms. Le circuit contient un réseau de portes logiques ET à n variables, et un réseau de portes logiques OU, suivi, le cas échéant, d’une couche de bistables. Des appareils spécialisés permettent la programmation du réseau. 159

Unité 4: Logique combinatoire 5.2 Circuits logiques Logique programmable combinatoire I1 Les jonctions en rouge sont éliminées (brûlées) sélectivement lors de la programmation. I2 In F0 F0 F1 F1 F2 F2 160

Unité 4: Logique combinatoire 5.2 Circuits logiques Logique avec ROM Il est possible de réaliser des circuits logiques au moyen de mémoires ROM (Read-Only Memory). Aucune simplification n’est nécessaire. Les entrées de la table de vérité servent d’adresse dans la ROM et le contenu de chaque adresse est la sortie désirée pour cette combinaison de variables d’entrée, la sortie pouvant avoir un ou plusieurs bits. 161

Unité 4: Logique combinatoire 5.2 Circuits logiques Logique avec ROM Exemple : transcodeur binaire à code Gray Table de vérité ABCD 0000 0001 0010 0011 0100 0101 0110 0111 EFGH 0000 0001 0011 0010 0110 0111 0101 0100 ABCD 1000 1001 1010 1011 1100 1101 1110 1111 EFGH 1100 1101 1111 1110 1010 1011 1001 1000 A E ROM 16 x 4 B F C G D H 162

Unité 4: Logique combinatoire Technologie des semiconducteurs Transistors Transistors bipolaires NPN PNP C C + - B B E E Transistors unipolaires (à effet de champ) D D n-channel + p-channel - MOSFET ou MOS, CMOS G G S S 163

Unité 4: Logique combinatoire Technologie des semiconducteurs Inverseur TTL Inverseur CMOS +5 V +5 V à +15 V entrée sortie 5 k sortie 10 k entrée 164

Unités 4 et 5 : Logique combinatoire Technologie des semiconducteurs NAND TTL NOR CMOS +5 V à +15 V +5 V +5 V A B A A.B B sortie 165