CIRCUITS LOGIQUES NOTIONS FONDAMENTALES



Documents pareils
IFT1215 Introduction aux systèmes informatiques

Système binaire. Algèbre booléenne

Logique binaire. Aujourd'hui, l'algèbre de Boole trouve de nombreuses applications en informatique et dans la conception des circuits électroniques.

FONCTION COMPTAGE BINAIRE ET DIVISION DE FRÉQUENCE

La conversion de données : Convertisseur Analogique Numérique (CAN) Convertisseur Numérique Analogique (CNA)

ELP 304 : Électronique Numérique. Cours 1 Introduction

Architecture des ordinateurs TD1 - Portes logiques et premiers circuits

VIII- Circuits séquentiels. Mémoires

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

RESUME DE COURS ET CAHIER D'EXERCICES

2.1 Le point mémoire statique Le point mémoire statique est fondé sur le bistable, dessiné de manière différente en Figure 1.

Algèbre binaire et Circuits logiques ( )

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

Logiciel de Base. I. Représentation des nombres

Les opérations binaires

MPI Activité.10 : Logique binaire Portes logiques

Cours Premier semestre

Représentation des Nombres

Informatique Générale

Les portes logiques. Voici les symboles des trois fonctions de base. Portes AND. Portes OR. Porte NOT

QUESTION 1 {2 points}

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

Concevoir son microprocesseur

Conversion d un entier. Méthode par soustraction

V- Manipulations de nombres en binaire

2.4 Représentation graphique, tableau de Karnaugh

Les fonctions logiques

CONVERTISSEURS NA ET AN

MEMOIRES MAGNETIQUES A DISQUES RIGIDES

Le chiffre est le signe, le nombre est la valeur.

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

CHAPITRE VI ALEAS. 6.1.Généralités.

Le multiplexage. Sommaire

Organisation des Ordinateurs

Codage d information. Codage d information : -Définition-

La polarisation des transistors

I- Définitions des signaux.

CHAPITRE VIII : Les circuits avec résistances ohmiques

Patentamt JEuropaisches. European Patent Office Numéro de publication: Office européen des brevets DEMANDE DE BREVET EUROPEEN

UE 503 L3 MIAGE. Initiation Réseau et Programmation Web La couche physique. A. Belaïd

CLIP. (Calling Line Identification Presentation) Appareil autonome affichant le numéro appelant

Livret - 1. Informatique : le matériel. --- Ordinateur, circuits, codage, système, réseau. Cours informatique programmation.

Calculons avec Albert!

Logique séquentielle

Manipulations du laboratoire

Université Mohammed Khidher Biskra A.U.: 2014/2015

Cours Informatique 1. Monsieur SADOUNI Salheddine

Introduction : Les modes de fonctionnement du transistor bipolaire. Dans tous les cas, le transistor bipolaire est commandé par le courant I B.

Convertisseurs statiques d'énergie électrique

Une version javascript sera disponible directement dans le cours prochainement.

Fiche technique CPU 314SC/DPM (314-6CG13)

avec des nombres entiers

Chapitre 1 Régime transitoire dans les systèmes physiques

Electronique Numérique

Structures algébriques

- Instrumentation numérique -

Centrale de surveillance ALS 04

REALISATION D UNE CALCULATRICE GRACE AU LOGICIEL CROCODILE CLIPS 3.

DOCM Solutions officielles = n 2 10.

BCI - TPSP - Processeurs et Architectures Numériques

TD Architecture des ordinateurs. Jean-Luc Dekeyser

Cours d introduction à l informatique. Partie 2 : Comment écrire un algorithme? Qu est-ce qu une variable? Expressions et instructions

Cours d électricité. Circuits électriques en courant constant. Mathieu Bardoux. 1 re année

Acquisition et conditionnement de l information Les capteurs

Le transistor bipolaire

Série D65/D75/D72 Afficheurs digitaux modulaires

ARDUINO DOSSIER RESSOURCE POUR LA CLASSE

Algorithme. Table des matières

GPA770 Microélectronique appliquée Exercices série A

DM 1 : Montre Autoquartz ETA

Calcul matriciel. Définition 1 Une matrice de format (m,n) est un tableau rectangulaire de mn éléments, rangés en m lignes et n colonnes.

OPÉRATIONS SUR LES FRACTIONS

Recherche dans un tableau

Travaux pratiques. Compression en codage de Huffman Organisation d un projet de programmation

LE PROBLEME DU PLUS COURT CHEMIN

Date : Tangram en carré page

ELECTRONIQUE ANALOGIQUE

INITIATION AU LANGAGE C SUR PIC DE MICROSHIP

Utilisation du visualiseur Avermedia

Notice d'utilisation Afficheur multifonctions et système d'évaluation FX 360. Mode/Enter

Représentation d un entier en base b

Equipement. électronique

La programmation linéaire : une introduction. Qu est-ce qu un programme linéaire? Terminologie. Écriture mathématique

TD 11. Les trois montages fondamentaux E.C, B.C, C.C ; comparaisons et propriétés. Association d étages. *** :exercice traité en classe.

Conception et réalisation d'une pédale MIDI

1. Vocabulaire : Introduction au tableau élémentaire

I.1- DÉFINITIONS ET NOTIONS DE BASE

Chapitre 10 Arithmétique réelle

Chapitre 1 I:\ Soyez courageux!

LES NOMBRES DECIMAUX. I. Les programmes

Géométrie dans l espace Produit scalaire et équations

CIRCUIT DE CHARGE BOSCH

3 ÉLÉMENTS forment un LABoratoire.

EXERCICES DE REVISIONS MATHEMATIQUES CM2

Eléments constitutifs et synthèse des convertisseurs statiques. Convertisseur statique CVS. K à séquences convenables. Source d'entrée S1

LibreOffice Calc : introduction aux tableaux croisés dynamiques

VOCALYS LITE.

Modules d automatismes simples

Comment tracer une droite représentative d'une fonction et méthode de calcul de l'équation d'une droite.

Guide abrégé ME301-2

Transcription:

CIRCUITS LOGIUES NOTIONS FONDAMENTALES Différence entre système analogique et logique Analogique : les signaux sont décrits par des fonctions mathématiques continues Logique : Chaque paramètre ne peut prendre que deux valeurs 0 ou 1 (vrai ou faux). C'est un système binaire Variable d'entrée binaire Variable de sortie binaire Exemple : Sécurisation du démarrage d'un véhicule Le véhicule ne peut démarrer que si un certain nombre de conditions sont remplies (celà suppose, bien entendu la présence de capteurs appropriés). Contacts Portière : P Ouverte = 0 Fermée = 1 électriques Ceinture : C Non Bouclée = 0 Bouclée = 1 Feux : F Eteints = 0 Allumés = 1 Photo-capteur Jour ou nuit : L Nuit = 0 Jour = 1 Conditions de sécurité La fonction D (démarrage) ne prendra la valeur 1 que si les conditions de sécurité sont remplies. D = f(p, C, F, L) 1

Nous pouvons exprimer la fonction D par un texte comportant des ET et des OU Le démarrage sera alors possible si: les portières sont fermées ET les ceintures de sécurité bouclées ET si les feux sont allumés ET qu'il fait nuit OU si les feux sont éteints ET qu'il fait jour Ce qui peut aussi s'écrire: D = 1 si P=1 et C=1 et ((F=1 et L=0) ou (F=0 et L=1)) Algèbre de Boole (détermination des fonctions logiques) La fonction OU (Union, réunion, addition ou somme logique, OR) somme algébrique Notation : + ou (que l'on prononce OU), f(x,y) = x+y X Y OU 0 0 0 0 1 1 1 0 1 1 1 1 2

Table de vérité de la fonction OU Vs = Ve si I1 ou I2 est fermé Vs = 0 si I1 et I2 sont ouverts Réalisation de la fonction OU avec des diodes: x s y La fonction ET (Intersection, produit logique, AND) produit algébrique Notation : ou (que l'on prononce ET), f(x,y) = x y X Y ET 0 0 0 0 1 0 1 0 0 1 1 1 Table de vérité de la fonction ET I1 I2 Ve Vs Vs = Ve si et seulement si I1 et I2 sont fermés Réalisation de la fonction ET avec des diodes 3

x s y + 5 V A côté des fonctions OU et ET il existe une autre fonction fondamentale: la fonction NON La fonction NON (négation, complément, inversion, NOT) Notation : f(x) = x (dire x barre) X = 0 NON X = 1 X = 1 NON X = 0 X NON X 0 1 1 0 Table de vérité de la fonction NON La fonction NON ne peut pas être réalisée avec des diodes. Considérons un transistor et le diagramme de sortie Ic = f(vce): 4

E RB RC IC E/Rc Saturation Blocage E VCE Cherchons alors la valeur de Rb pour laquelle le transistor est saturé. Pour ce faire on confond le point de saturation avec le point d'intersection de la droite de charge et de l'axe Ic. Pour Vce = 0 on a : Ic = E/Rc Donc : ßIb = E/Rc Ib = E/ßRc Par ailleurs : Rb.Ib + Vbe = E Si on néglige Vbe alors: Rb = ßRc Donc pour tout Rb tel que Rb ßRc on a Vce = 0 Dans ces conditions le transistor se comporte comme un interrupteur ouvert. 5

A l'inverse, si Ib = 0 c'est à dire si l'on déconnecte Rb de l'alimentation E, alors Ic = 0 et par conséquent Vce = E. On est au point de blocage. Le transistor se comporte alors comme un interrupteur fermé. Choisissons maintenant Rb ßRc et faisons le schéma suivant : E = 5V RC RB X = 0V ou 5V S = X (5V ou 0V) Lorsque X varie de 0 à 5 V le transistor passe de l'état bloqué (S = 5V) à l'état saturé (S = 0V). Extension des fonctions ET et OU Les fonctions ET et OU s'étendent à plus de deux variables X Y Z ET OU 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 Exemple de table de vérité pour 3 variables des fonctions ET et OU A partir des fonctions ET, OU et NON on peut définir n'importe quelle fonction aussi complexe soit elle. 6

Pour simplifier les montages d'autres fonctions ont été définies et existent précablées, ce sont : La fonction NI (NON OU, NOT OR, NOR) C'est la fonction OU inversée: f ( X, Y)= X+ Y X Y OU NOR 0 0 0 1 0 1 1 0 1 0 1 0 1 1 1 0 Table de vérité de la fonction NOR La fonction NON ET (NOT AND, NAND) C'est la fonction ET inversée : f ( X, Y) = X. Y X Y ET NAND 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 Table de vérité de la fonction NAND 7

La fonction OU EXCLUSIF f( X, Y)= X Y X Y OU EXCLUSIF 0 0 0 0 1 1 1 0 1 1 1 0 Toutes ces fonctions existent au catalogue des constructeurs. Cependant en général, lorsqu'il s'agit de systèmes complexes, la fonction que doit remplir le circuit est elle aussi complexe et n'existe généralement pas précablée. Cette fonction peut être: soit totalement définie soit incomplètement définie X Y Z f(x,y,z) 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 0 1 0 0 1 1 0 1 1 1 1 0 0 1 1 1 0 Exemple de fonction complètement définie 8

X Y Z f(x,y,z) 0 0 0 0 0 0 1 * 0 1 0 1 0 1 1 0 1 0 0 * 1 0 1 1 1 1 0 0 1 1 1 1 Exemple de fonction incomplètement définie. On note par * ces valeurs non définies peu importantes pour le fonctionnement du système (X = 1 ou 0 indifféremment) 9

Propriétés des opérateurs ET, OU et NON. uelques identités remarquables sont à connaître: Fonctions Identités Commentaires X= X X + 0 = X X + 1 = 1 1 variable X 0 = 0 X 1 = X X + X = X X X = X X +X=1 X + X = 1 X. X=0 2 variables X + Y = Y + X X Y = Y X 3 variables X+Y+Z=(X+Y)+Z = X+(Y+Z) X Y Z= (X Y) Z = X (Y Z) 3 variables X (Y+Z) = X Y + X Z X+ (Y Z) = (X+Y) (X+Z) COMMUTATIVITE ASSOCIATIVITE DISTRIBUTIVITE Il existe d'autre part des théorèmes généraux qui permettent la manipulation des fonctions logiques: Théorème de De Morgan X + Y+ Z+... = XY.. Z... X. Y. Z... = X+ Y+ Z+... Théorème de Shannon f ( X, Y, Z, +,.) = f( X, Y, Z,., + ) f(x,y,z,+, ) = f(x,y,z,,+) Ces théorèmes sont à manipuler avec précaution Exemple : Soit à calculer f = X+ Y. Z 10

On posera A = Y. Z Ce qui donne : X + A= XA. = XY.. Z= X.( Y+ Z) = X. Y+ X. Z Dans la suite nous oublierons parfois le symbole produit 11

Une fonction quelconque peut s'exprimer avec les seuls opérateurs ET, OU et NON. Le problème est donc de trouver la bonne combinaison. Nous allons distinguer deux manières 1 - ECRITURE CANONIUE 2 - METHODE DE KARNAUGH 1 - ECRITURE CANONIUE Cela peut se faire en utilisant des fonctions produits ou des fonctions sommes. Nous allons traiter cette méthode dans le cas de trois variables X, Y et Z, ce qui nous donne 8 combinaisons possibles. a) Fonctions produits Pour chacune des 8 combinaisons possibles on définit une fonction Pi égale au ET des variables X ou X, Y ou Y et Z ou Z. On a donc 8 fonctions Pi qui sont : P0 = X.Y.Z, P1= X.Y.Z, P2 = X.Y.Z, P3 = X.Y.Z, P4 = X.Y.Z, P5 = X.Y.Z, P6 = X.Y.Z, P7 = X.Y.Z On obtient alors le tableau suivant : P0 P1 P2 P3 P4 P5 P6 P7 F X Y Z X.Y. Z X.Y.Z X.Y. Z X.Y.Z X. Y. Z X. Y.Z X.Y. Z X.Y.Z 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 1 1 0 0 0 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0 0 0 0 0 0 1 La fonction F est donc définie comme : F = P1 ou P3 ou P4 12

= P 1 + P3+ P4= XY.. Z+ X. Y. Z+ XY.. Z = Somme canonique des produits b) Fonctions sommes Pour chacune des 8 combinaisons possibles on définit une fonction Si égale au OU des variables X ou X, Y ou Y et Z ou Z. On a donc 8 fonctions Si qui sont : S0 = X+ Y+ Z, S1= X+ Y+ Z, S2 = X+ Y+ Z,S3 = X+ Y+ Z, S4 = X+ Y+ Z, S5 = X+ Y+ Z, S6 = X+ Y+ Z, S7 = X+ Y+ Z De la même manière que pour les fonctions produits on dresse un tableau de toutes les combinaisons possibles S0 S1 S2 S3 S4 S5 S6 S7 F X Y Z X + Y+ Z X + Y+ Z X + Y+ Z X + Y+ Z X + Y+ Z X + Y+ Z X Y+ Z + 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 1 1 0 1 1 1 1 1 1 0 0 1 0 1 1 0 1 1 1 1 1 1 0 1 1 1 1 1 0 1 1 1 1 1 1 0 0 1 1 1 1 0 1 1 1 0 1 0 1 1 1 1 1 1 0 1 1 0 1 1 0 1 1 1 1 1 1 0 1 0 1 1 1 1 1 1 1 1 1 1 0 Ainsi la fonction F est maintenant définie comme : F = S0 ET S2 ET S5 ET S6 ET S7 = (X + Y+ Z) (X+ Y+ Z) (X+ Y+ Z) (X+ Y+ Z) (X+ Y+ Z) = Produit canonique des sommes 13 + X Y+ Z C'est en général la première forme canonique (somme des produits) qui est la plus utilisée. Cependant le résultat n'est pas sous la forme la plus simple. Il faut donc simplifier l'expression de la fonction.

La simplification à l'aide de l'algèbre de Boole est en général malaisée car elle suppose des astuces de calcul. Exemple : Soit à simplifier : F = X.Y.Z + X.Y.Z + X.Y.Z + X.Y.Z Il faut alors remarquer que X.Y.Z + X.Y.Z + X.Y.Z = X.Y.Z On peut alors écrtire : F = (X.Y.Z + X. Y. Z) + (X.Y.Z + X.Y.Z) + (X.Y.Z + X.Y.Z) et en faisant une mise en facteur : F = Y.Z (X + X) + X.Z (Y + Y) + X.Y (Z + Z) = Y.Z + X.Z + X.Y Plutôt que d'utiliser les formes canoniques on utilise en général la méthode de Karnaugh. 1 - METHODE DE KARNAUGH Cette méthode est basée sur l'utilisation de l'identité remarquable a.x + a.x = Il s'agit d'une méthode graphique qui consiste à mettre en évidence tous les termes produits d'une fonction qui ne diffèrent que par l'état d'une seule variable. On appelle ces termes les termes adjacents. Par exemple, dans le cas de 4 variables les deux produits X.Y.Z.T et X.Y.Z.T sont adjacents. Comme dans le cas de la première forme canonique on fait la somme des produits en regroupant les termes adjacents. L'utilisation de l'identité remarquable ci-dessus permet alors d'éliminer un produit ainsi qu'une variable (ici la variable T). a Donc X.Y.Z.T + X.Y.Z.T = X. Y. Z La méthode utilise des tableaux dont le nombre de cases correspond au nombre total des combinaisons produits de toutes les variables d'entrée. 14

a) Exemples 2 variables (2 2 cases) 3 variables (2 3 cases) 0 1 Y 0 1 X 0 1 Z 00 01 11 10 XY Il faut noter que l'on ne change q'une seule variable en passant d'une case à la suivante. 4 variables (2 4 cases) ZT 00 01 11 10 00 01 11 10 XY Si l'on a plus de 4 variables on juxtapose alors des tableaux de 4 variables Comment passe-t-on de la table de vérité définissant la fonction au tableau de Karnaugh? 15

b) Passage au tableau de Karnaugh Le passage est très simple. Il consiste à écrire des 1 dans les cases du tableau de Karnaugh qui correspondent aux combinaisons où la fonction vaut 1. Dans toutes les autres cases on mettra des 0. Pour mieux comprendre réalisons un exemple d'une fonction de 4 variables. Soit la table de vérité de la fonction, F, suivante: X Y Z T F 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 0 0 1 1 0 0 1 0 0 0 0 1 0 1 1 0 1 1 0 0 0 1 1 1 0 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 1 0 1 1 1 1 1 0 0 0 1 1 0 1 1 1 1 1 0 0 1 1 1 1 0 On remplit le tableau de Karnaugh de la manière suivante: ZT 00 01 11 10 XY 00 1 0 0 1 01 0 1 1 1 11 0 0 0 1 10 1 0 0 1 16

On procède ensuite de la manière suivante : a) on réalise les groupements de termes adjacents égaux à 1. Attention on ne peut les grouper q'en un multiple de 2. On essaie d'avoir le minimum de groupements. Les mêmes termes peuvent participer à plusieurs groupements (car x + x + x = x) 2. Dans un groupement de deux termes on élimine la variable qui a changé d'état. On ne conserve alors que le produit des variables qui n'ont pas changé 3. idem pour les groupement de 4 termes ou de 8 termes. 4. L'expression logique finale de la fonction F est la réunion (OU) des groupements après l'élimination des variables qui avaient changé d'état. Dans le cas de l'exemple précédent les groupements sont les suivants: ZT 00 01 11 10 XY 00 1 0 0 1 01 0 1 1 1 11 0 0 0 1 10 1 0 0 1 X.Y.T Les termes en jaune donnent : Les termes en rouge donnent : Y. Z.T Les termes en violet donnent : X. Y La fonction F est donc définie comme : F = X.Y.T + Y.Z.T + X.Y 17

SYMBOLES GRAPHIUES DES FONCTIONS LOGIUES NON, NOT x x ET, AND a b ab OU, OR a b a+b NON ET, NAND a b ab NON OU, NOR a b a+b SEPARATEUR, BUFFER x x OU EXCLUSIF, XOR a b a b 18

LES DIFFERENTES FACONS DE REPRESENTER LES NOMBRES Différentes bases possibles: Base 2 Base 8 Base 10 Base 16 BCD (Décimal codé binaire) Exemple : Soit le nombre 1253 en base 10 10 5 10 4 10 3 10 2 10 1 10 0 1 2 5 3 En base 2 il s'écrira ; 2 12 2 11 2 10 2 9 2 8 2 7 2 6 2 5 2 4 2 3 2 2 2 1 2 0 1 0 0 1 1 1 1 1 1 0 1 Chaque colonne est représentée par une donnée (0 ou 1) appelée bit En base 2 les nombres seront codés sur un certain nombre de bits On a ainsi le codage sur 4 bits qui correspond aux nombres de 0 à 15 le codage sur 8 bits qui correspond aux nombres de 0 à 255 le codage sur 12 bits qui correspond aux nombres de 0 à 4095 19

le codage sur 16 bits qui correspond aux nombres de 0 à 65535 le codage sur 32 bits qui correspond aux nombres de 0 à 4294967294 Les ordinateurs actuels travaillent sur des combinaisons élevées (16, 32, 64 bit). On voit bien qu'en base 2 on ne pourra pas représenter tous les nombres et que la précision dépendra du nombre de bit utilisés pour représenter l'information. Par ailleurs, il n'y a pas que les nombres à représenter. Il y a aussi toutes sortes de caractères, alphabet, symboles de calculs divers (+,-,x,,...), signes de ponctuation (, ; :!?...)ainsi que des caractères dits de service. Il existe un certain nombre de codes mais il en est un qui est très utilisé, c'est le code ASCII (= CCITT N 5) qui est un code à 7 bits. b6 b5 b4 b3 b2 b1 b0 chiffre 1 1 1 0 0 0 0 1 chiffre 9 1 1 0 1 0 0 1 lettre e 0 1 1 1 0 1 0 signe + 0 1 0 1 1 0 1 Un des problèmes qui se pose souvent est le changement de code. Nous allons indiquer la procédure en utilisant l'exemple de la conversion de binaire en BCD. Le BCD est un code qui permet de gérer les afficheurs. 20

Décimal Binaire BCD b3 b2 b1 b0 d7 d6 d5 d4 d3 d2 d1 d0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0 1 2 0 0 1 0 0 0 0 0 0 0 1 0 3 0 0 1 1 0 0 0 0 0 0 1 1 4 0 1 0 0 0 0 0 0 0 1 0 0 5 0 1 0 1 0 0 0 0 0 1 0 1 6 0 1 1 0 0 0 0 0 0 1 1 0 7 0 1 1 1 0 0 0 0 0 1 1 1 8 1 0 0 0 0 0 0 0 1 0 0 0 9 1 0 0 1 0 0 0 0 1 0 0 1 10 1 0 1 0 0 0 0 1 0 0 0 0 11 1 0 1 1 0 0 0 1 0 0 0 1 12 1 1 0 0 0 0 0 1 0 0 1 0 13 1 1 0 1 0 0 0 1 0 0 1 1 14 1 1 1 0 0 0 0 1 0 1 0 0 15 1 1 1 1 0 0 0 1 0 1 0 1 Pour résoudre ce changement de code (transcodage) nous allons utiliser la méthode de Karnaugh. Dans ce système les variables sont les colonnes b0 à b3 et chaque colonne d0 à d7 est une fonction qu'il faut évaluer. La fonction qui correspond à la colonne d0 est évidente puisqu'elle correspond à la colonne b0. Evaluons maintenant la colonne d1: b1b0 00 01 11 10 b3b2 00 0 0 1 0 01 0 0 1 0 11 1 1 0 0 10 1 1 0 0 21

d1 = b 1 b 3 + b 1 b 2 b 3 b3 b1 d1 b2 Schéma de cablage de la fonction d1 De même: d 2 = b 2 b 3 + b 1 b 2 d 3 = b 1 b 2 b 3 d 4 = b 2 b 3 + b 1 b 3 22

A - Représentation des nombres A1 - Nombres entiers non signés OPERATIONS ARITHMETIUES On représente alors les nombre sur un cetain nombre de bits Par exemple sur 3 bits: Décimal Binaire 0 0 0 0 1 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 1 On voit tout de suite que pour représenter un grand nombre entier on aura besoin d'un très grand nombre de bits A2 - Nombre signés : ± N Il va falloir attibuer 1 bit pour le signe. Le nombre signé sera donc sous la forme: 1 bit de signe + n bits pour la valeur absolue du nombre à représenter Exemple d'un nombre signé repésenté sur 3 bits On choisit comme convention : Signe + valeur 0 Signe - valeur 1 23

Signe Binaire Décimal 0 0 0 + 0 0 0 1 + 1 0 1 0 + 2 0 1 1 + 3 1 0 0-0 1 0 1-1 1 1 0-2 1 1 1-3 On s'aperçoit tout de suite d'un problème de taille. Il existe deux valeurs pour représenter 0! Comment s'en sortir? Nous allons voir que le complément à 2 permet de résoudre ce problème. Nous allons tout d'abord définir ce que sont les compléments. i - complément à 1 d'un nombre binaire Soit A un nombre de n bits, a i A s'écrit: A = a n-1 a n-2...a 1 a 0 Le complément à 1 de A est le nombre A' tel que : A' + A = 2 n - 1 Cela équivaut donc pour trouver le nombre A' à inverser tous les bits du nombre A. A' = a n 1an 2...a1a0 On peut le vérifier aisément: 24

A a n 1 a n 2...a 1 a 0 + A' a n 1an 2...a1a0 1 1... 1 1 ii - Complément à 2 d'un nombre binaire Soit A un nombre de n bits, le complément à 2, A" de A est tel que: A + A" = 2 n Comme l'on avait: A' + A = 2 n - 1, alors A" = A' + 1 Ce que l'on vérifie aisément : A a n 1 a n 2...a 1 a 0 + A' a n 1an 2...a1a0 + 1 = 2 n 0 0... 0 0 Donc A + A" = 0 à 2n près. Ceci indique que A" est l'opposé de A A3 - Représentation des nombres en complément à 2 Comme dans le cas précédent nous allons représenter sur 3 bits Signe Binaire Décimal 0 0 0 + 0 0 0 1 + 1 0 1 0 + 2 0 1 1 + 3 1 1 1-1 Complément 1 1 0-2 à 2 1 0 1-3 1 0 0-4 25

Vérification : +1-1 +1 est représenté par: 001 Son inverse (complément à 2) est: 111 (c.à.d. 110 + 1) +2-2 +2 est représenté par: 010 Son inverse (complément à 2) est: 110 (c.à.d. 101 + 1) Ce qui est important c'est que le 0 n'a plus qu'une seule représentation. A4 - Représentation d'un nombre fractionnaire Le nombre sera représenté par n bits qui seront partagés en: n1 bits pour la partie entière n2 bits pour la partie fractionnaire 1 bit pour le signe Exemples: a) Signe Entière Fract. 0 1 1 0 1 0 S 2 2 2 1 2 0 2-1 2-2 0 1 1 0 1 0 + 6 0,5 Le résultat est donc + 6,5 26

b) Soit à trouver Signe Entière Fract. 1 1 1 1 0 1 Le bit de signe étant égal à 1 il s'agit d'un nombre négatif. Afin de trouver sa valeur absolue je cherche son opposé c'est à dire que je calcule son complément à 2. C'est: 000011 S 2 2 2 1 2 0 2-1 2-2 0 0 0 0 1 1 + 0 0,75 Le nombre recherché est donc - 0,75. Exemple d'additions et de soustractions en utilisant le complément à 2 Je veux additionner 2 et 3. Ce sont deux nombre positifs qui s'écrivent: S Nombre 2 0 010 3 0 011 5 0 101 Je veux soustraire 3 de 2 (2-3). Cela revient à ajouter le nombre négatif -3 au nombre positif + 2. S Nombre 2 0 010-3 1 101 Compl. à 2 de +3-1 1 111 Le résultat, 1111 est bien le complément à 2 de +1. 27

REALISATION ELECTRIUE DES FONCTIONS LOGIUES Les fonctions logiques, comme nous l'avons déjà vu, peuvent être réalisées avec des résistances, des diodes et/ou des transistors. + 5 V E1 S E2 + 5 V Diode-Transistor logic (DTL) E1 E2 S Transistor-Transistor logic (TTL) 28

Si elle est réalisée en éléments discrets, une porte logique a une taille de plusieurs centimètres carrés. En 1965, sont apparus les premiers circuits intégrés. Il s'agit de boitiers qui comportent un certain nombre de broches. Les boitiers les plus courants comportent 14, 16, 18, 20, 24, 28, 40 broches disposées en deux rangées parallèles. Un boitier 14 broches (très courant) mesure 20 x 8 mm 2. Ces boitiers comportent un certain nombre de portes logiques. Exemple : Le 7400 (quatre portes NAND) + Vcc 14 8 Repère 1 7 Masse Série standard Famille Type de boitier } SN 74 LS 00 N } } } } Usage professionnel N du boitier dans la famille ici ce sont des NAND 29

On classe les circuits selon leur densité d'intégration. C'est donc quelquechose qui a évolué avec le temps. Ce sont : SSI Small Scale Integration (quelques portes par boitier) MSI Medium Scale Integration (quelques dizaines de portes) LSI Large Scale Integration (100 à 1000 portes) VLSI Very Large Scale Integration (> 1000 portes) Les familles de Circuits Intégrés La famille TTL Pendant longtemps la plus développée. Elle cosntitue un standard. Ses caractéristique s moyennes sont : retard ~ 10 ns par porte consommation ~ 10 mw Il existe un certain nombre de sous-familles (la ou les lettres au milieu de la dénomination du boitier: Famille Sous-famille Utilisation Retard/porte Conso/porte TTL H Rapide 6 22 TTL L Low power 33 1 TTL S Schottky 3 19 TTL LS Low power Schottky 10 2 30

La famille ECL (Emitter Coupled Logic) Les transistors ne travaillent pas dans le régime bloqué-saturé. Ils travaillent dans le régime linéaire. C'est une logique extrêmement rapide ( 1 ns) mais elle pose de gros problèmes d'interconnexions. La famille MOS (Metal Oxyde Semiconductor) Du fait de la petite taille des transistors l'échelle d'intégration est extrêmement élevée. La consommation est aussi très faible. Elle est cependant un peu plus lente que la TTL la plus rapide. La famille CMOS (Complementary MOS) On retrouve beaucoup des circuits de la TTL. Avantage du MOS: faible consommation et vitesse très proche de la TTL-LS. Dans toute la suite du cours on ne s'intéressera qu'à la famille TTL Les circuits TTL sont alimentés sous 5 Volt. Convention logique Il s'agit de la concordance entre potentiels et états logiques. 2 possibilités Logique positive 0 V 0 logique 5 V 1 logique Logique négative 0 V 1 logique 5 V 0 logique 31

Différents types de portes Portes à sortie collecteur ouvert: + 5 V E1 E2 S Porte NAND à collecteur ouvert Ce type de porte peut servir à différentes fonctions: Commande d'une charge externe + V 5V (potentiel de charge) Etage de sortie de la porte 32

Le potentiel de charge peut être soit le potentiel d'alimentation (5V) soit une tension plus élevée ( 30V). Un courant assez important peut être débité (~ 40-100 ma). Fonction ET cablée On connecte toutes les sorties entre elles et l'on met en commun le circuit de charge. a b Sortie bloqué bloqué Vcc saturé bloqué 0 bloqué saturé 0 saturé saturé 0 C'est équivalent à la transmission d'une information parmi n. + V 5V (potentiel de charge) Etage de sortie de la porte 1 a S Etage de sortie de la porte 2 b Réalisation d'une fonction ET cablée 33

Porte à sortie 3 états Ces portes permettent de réunir les circuits par leurs sorties. Les 3 états sont : état 1 basse impédance état 0 basse impédance état déconnecté haute impédance A C Y Utilisation Pour rentrer et sortir des données sur une même ligne A Vers circuit C Y C Y A 34

Portes à entrées trigger de Schmitt Signal d'entrée Zone de basculement de l'état 1 vers l'état 0 Signal d'entrée Zone de basculement de l'état 1 vers l'état 0 Zone de basculement de l'état 0 vers l'état 1 Signal de sortie Signal de sortie Cas d'un inverseur classique Cas d'un inverseur trigger de Schmitt Représentation des portes trigger de Schmitt 35

1 - Systèmes combinatoires LES SYSTEMES LOGIUES On ne regarde que les états des sorties à l'équilibre, c'est à dire indépendamment du temps. On s'arrange simplement pour que les données aient le temps de se propager à travers les portes. L'état des sorties ne dépend que de l'état des entrées. 2 - Systèmes séquentiels Le fonctionnement dépend du temps. L'état final qui est stable dépend de l'ordre dans lequel les signaux sont appliqués. 3 - Les fonctions combinatoires usuelles Nous n'allons étudier que la fonctionnalité des circuits 3.1 La comparaison (ex : 74LS85) 15 13 12 10 1 14 11 9 A3 A2 A1 A0 B3 B2 B1 B0 85 A>B A=B A<B 5 6 7 Résultats A>BIN A=BIN A<BIN 4 3 2 Entrées de cascadage Ce circuit peut être utilisé seul ou associé avec d'autres boitiers identiques pour comparer des mots de plus de 4 bits. Dans le cas ou le boitier est isolé (c'est à dire que l'on ne compare que des mots de 4 bits) les entrées de cascadage doivent être connectées comme suit : Entrée A<B à 0, Entrée A>B à 0 et entrée A=B à 1 36

Exemple de comparaison de deux mots de 8 bits Bits de poids forts } } A B 15 13 12 10 1 14 11 9 A3 A2 A1 A0 B3 B2 B1 B0 A>BIN 4 85 A=BIN A>B 5 A=B 6 A<B 7 3 A<BIN 2 } Sortie comparée de A et de B Bits de poids faibles } } A B 15 13 12 10 1 14 11 9 A3 A2 A1 A0 B3 B2 B1 B0 A>BIN 85 A=BIN 4 3 A>B 5 A=B 6 A<B 7 A<BIN 2 +5V 3.2 - Décodeur binaire } } Entrées d adressage Entrées de validation Y0 1 A Y1 2 B Y2 3 C Y3 138 Y4 5 G2B Y5 4 G2A Y6 6 G1 Y7 15 14 13 12 11 10 9 7 }Sorties Entrées Validation Adresse Sorties G1 G2A+G C B A 2B Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 x 1 x x x 1 1 1 1 1 1 1 1 1 x x x x 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 0 0 0 1 1 0 1 1 1 1 1 1 1 0 0 1 0 1 1 0 1 1 1 1 1 1 0 0 1 1 1 1 1 0 1 1 1 1 1 0 1 0 0 1 1 1 1 0 1 1 1 1 0 1 0 1 1 1 1 1 1 0 1 1 1 0 1 1 0 1 1 1 1 1 1 0 1 1 0 1 1 1 1 1 1 1 1 1 1 0 37

3.3 Décodage BCD - 7 segments a b c d e f g Rb0 Afficheur 7 segments Effacement des entrées BCD} } Commande des segments 7 1 A 2 B C 6 D 3 LT 5 RBI 4 BI/RBO 247 13 A B 12 11 C 10 D 9 E 15 F 14 G Effacement des sorties 3.4 Multiplexage But: aiguiller n bits d'information sur 1 bit Exemple: le 74LS151 Validation Entrées Adresse { { 7 12 13 14 15 1 2 3 4 9 10 11 EN 7 6 5 4 3 2 1 0 C B A 151 Y W 5 6 { Sorties 38

Entrées Adresse Val Sorties C B A S Y W * * * 1 0 1 0 0 0 0 d0 d 0 0 0 1 0 d1 d 1 0 1 0 0 d2 d 2 0 1 1 0 d3 d 3 1 0 0 0 d4 d 4 1 0 1 0 d5 d 5 1 1 0 0 d6 d 6 1 1 1 0 d7 d 7 3.5 Démultiplexage C'est l'opération inverse du multiplexage. On peut utiliser le circuit décodeur binaire 74LS138. Entrée Adresse { 6 4 5 3 2 1 G1 G2A G2B 138 C B A Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 7 9 10 11 12 13 14 15 { Sorties L'information présente sur G1 sera transmise à une des sorties Yi, l'indice i étant défini par le mot de trois bits ABC. Ex: ABC = 000 l'information présente en G1 sera transmise en Y0. 3.6 Additionneur (ex: 74LS82; additionneur 2 bits) Entrée A { Entrée B { Retenue entrante 13 14 3 2 5 B1 A1 B0 A0 Cin 82 1 0 Cout 12 1 10 { Sortie A+B Retenue sortante 39

3.7 Multiplieur Commande d arrondi{ { { Multiplicateur { Multiplicande Validation A7 A6 A5 A4 A3 A2 A1 A0 B7 B6 B5 B4 B3 B2 B1 B0 Y15 Y14 Y13 Y12 Y11 Y10 Y9 Y8 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 Nombres signés ou non { Sorties 3.8 Bloc de calcul arithmétique et logique A B { { A3 A2 A1 A0 B3 B2 B1 B0 382 F3 F2 F1 F0 Co S0S1S2 { { Résultat de l opération Débordement et retenue sortante { Code de fonction S2 S1 S0 Opération 0 0 0 F = 0000 0 0 1 F = B - A Opérateurs 0 1 0 F = A - B 0 1 1 F = A + B arithmétiques 1 0 0 F = A B Opérateurs 1 0 1 F = A B 1 1 0 F = A B logiques 1 1 1 F = 1111 40

Il existe 4 fonctions de base LES FONCTIONS SEUENTIELLES SIMPLES a) Le bistable b) La bascule c) Le monostable d) L'astable (ou multivibrateur ou oscillateur) Le bistable: De manière générale un bistable est caractérisé par deux états de sortie stables (0 et 1) qui sont commandables à partir des entrées. Le bistable RS Entrées Mise à 1 Mise à 0 { S { R Sorties Le fonctionnement se décrit par une table de vérité qui présente la particularité d'avoir en entrée non seulement les variables d'entrée R et S mais aussi la fonction. cette table donnela nouvelle valeur de la sortie + à partir des valeurs de R, S et. S R + Cas 0 : R = S = = 0 + = S + = 0 + 0 = 1 + = + + R = 1 + 0 = 0 41

Si un bistable RS se trouve dans l'état 0, il conserve cet état si les entrées R et S sont maintenues à 0 Cas 1 : R = S = 0 = 1 + = S + = 0 + 1 = 0 + = + + R = 0 + 0 = 1 Si un bistable RS se trouve dans l'état 1 il conserve cet état si les entrées R et S sont maintenues à 0. Les cas O et 1 sont les cas de maintien. Cas 2 : R = 0 S = 1 = 0 + = S + = 1 + 0 = 0 + = + + R = 0 + 0 = 1 Si un bistable RS est dans l'état 0, il passera à l'état 1 si on applique 1 sur l'entrée S. Etc Le fonctionnement du bistable RS est résumé dans le tableau suivant: Cas n R S + Commentaires 0 0 0 0 0 Maintien 1 0 0 1 1 Maintien 2 0 1 0 1 Mise à 1 3 0 1 1 1 Mise à 1 4 1 0 0 0 Mise à 0 5 1 0 1 0 Mise à 0 6 1 1 0 * Non exploité 7 1 1 1 * Non exploité Fonctionnement dynamique du bistable RS 42

S R + S R t PLH ~ 30 ns t PHL1 t PLH1 t PLH2 t PLH ~ 30 ns t PHL2 Remarque : Le bistable RS peut aussi être réalisé avec des pôrtes NAND. Le bistable D Comme dans le cas du bistable RS il y a deux entrées et deux sorties. Dans le cas du bistable D les entrées sont appelées D (pour data) et CK (pour clock) et les sorties et. 43

Données Horloge D Ck { Sorties D CK D CK + 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 1 1 1 1 1 Table de vérité du bistable D S R t PLH t PHL 44

Problème de l'utilisation du bistable D Soit par exemple le circuit suivant : Réseau combinatoire d entrée D D Ck Ck Réseau combinatoire d entrée Ce système ne peut pas marcher correctement. En effet, pendant le temps où l'horloge est à 1, ce qui est en D passe en ce qui implique que le réseau combinatoire d'entrée va calculer de nouvelles fonctions. Pour que ça marche il faut remplacer le bistable par un circuit qui n'est actif que pendant un temps très court (flanc montant ou descendant de l'horloge, par exemple). Ces circuits portent le nom de BASCULES 45

Les bascules Il existe 3 types de bascules: la bascule RS (n'est pas employée seule) la bascule JK la bascule D La bascule JK Horloge (agit sur le flanc montant) Mise à 1 (synchrone) Mise à 0 (synchrone) S/ J C K R/ Preset (asynchrone) Mise à 1 (synchrone) Horloge J { Sorties C Clear (asynchrone) (agit sur le flanc descendant) Mise à 0 (synchrone) S/ K R/ Preset (asynchrone) { Sorties Clear (asynchrone) Preset Clear Clock J K + + Remarque Mode 0 1 * * * 1 0 Mise à 1 1 0 * * * 0 1 Mise à 0 asynchrone 0 0 * * * 1 1 Instable 1 1 0 0 Maintien Mode 1 1 0 1 0 1 Mise à 0 1 1 1 0 1 0 Mise à 1 synchrone 1 1 1 1 Commutation 1 1 * * maintien 46

Clear Preset Mode asynchrone Horloge J K Commutation Maintien Mise à 0 Mise à 1 Mode synchrone La bascule D 47

Preset (mise à 1) Donnée Horloge S D C R { Sorties Clear (mise à 0) Preset Clear CK D + + Remarques Mode 0 1 * * 1 0 Mise à 1 1 0 * * 0 1 Mise à 0 Asynchrone 0 0 * * 1 1 Instable Mode 1 1 0 0 1 Mise à 0 1 1 1 1 0 Mise à 1 Synchrone 1 1 0 ou 1 * Maintien Table de vérité de la bascule D D Horloge Diagramme de fonctionnement de la bascule D Le boitier 74LS74 contient 2 bascules D. 48

3.Le monostable +5V Entrées{ 2 1 123 B A 3 CLR 14 CX 15 R/C 10 9 B A 11 CLR 6 CX 7 R/C 13 4 5 12 { {{ Sorties Entrées Sorties Clear A B 0 * * 0 1 * 1 * 0 1 * * 0 0 1 1 0 1 1 0 1 Table de vérité du monostable L'astable ou le multivibrateur ou l'oscillateur Ce circuit fournit un signal périodique de durée d et de période T. d/t s'appelle le rapport cyclique. On peut réaliser des astables à partir de : e) Un inverseur trigger de Schmitt R 49

b) Deux monostables 1 0 +5V 2 1 B A CLR CX R/C 123 3 CLR 14 CX 15 R/C 10 B 9 A 11 6 7 13 4 5 12 Le premier monostable excite le second qui lui même excite le premier. c) Une chaîne d'inverseurs rebouclés avec un quartz d) Des boitiers oscillateurs: 74LS326, 555 50

FONCTIONS SEUENTIELLES COMPLEXES Une fonction séquentielle complexe doit gérer plusieurs éléments d'information à la fois. On donne le nom de registre à l'ensemble des opérations requises pour effectuer la fonction. En général un registre comporte: Un groupe de bascules alimentées par une horloge, Un réseau combinatoire d'entrée (il sert à élaborer les commandes d'excitation des bascules), Un réseau combinatoire de sortie (il donnel'état de sortie du registre à partir de l'état des bascules et des commandes de sortie). Informations d entrée Commande des entrées Horloge Réseau d entrée Bascules Commande des bascules Commande des sorties Réseau de sortie Sortie des bascules Sorties 51

Le fonctionnement du registre se décrit par une table de vérité qui comporte: En entrée Etat ancien des bascules Information d'entrée Commande d'entrée Commande de sortie Horloge En sortie Etat futur des bascules Etat de sortie du registre Les registres peuvent avoir différentes fonctions: Fonction de mémorisation Fonction de comptage Fonction de décalage. 52

LES COMPTEURS +5V S D S D S D S D C R C R C R C R 1 0 X Y Z T Exemple de compteur binaire 4 bits Horloge X Y Z T 53