26
Faculté des Sciences de Gabes Département d’informatique 16/10/2016 Cours Circuits Logiques 1 16/10/2016 1 Khaled Hassine [email protected] Par : Khaled Hassine CHAPITRE HAPITRE II II – LOGIQUE OGIQUE COMBINATOIRE OMBINATOIRE 16/10/2016 2 Khaled Hassine Quelques circuits combinatoires Analyse d’un logigramme Introduction Récapitulatif PLAN 16/10/2016 3 Conception de circuit combinatoire Khaled Hassine Quelques circuits combinatoires Analyse d’un logigramme Introduction Récapitulatif PLAN 16/10/2016 4 Conception de circuit combinatoire Khaled Hassine

CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 1

16/10/2016 1Khaled Hassine

[email protected]

Par :

Khaled Hassine

CCHAPITREHAPITRE IIII –– LLOGIQUEOGIQUECCOMBINATOIREOMBINATOIRE

16/10/2016 2Khaled Hassine

Quelques circuits combinatoires

Analyse d’un logigramme

Introduction

Récapitulatif

PLAN

16/10/2016 3

Conception de circuit combinatoire

Khaled Hassine

Quelques circuits combinatoires

Analyse d’un logigramme

Introduction

Récapitulatif

PLAN

16/10/2016 4

Conception de circuit combinatoire

Khaled Hassine

Page 2: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 2

Introduction

Les opérateurs que nous avons vus précédemmentsont des opérateurs élémentaires dits booléens carils réalisent les opérations logiques de l'algèbre deBoole.

Pour ces circuits, l'apparition des données à l'entréed'un opérateur entraîne immédiatement en sortie, lepassage à l'état défini par la fonction de l'étatlogique correspondant.

16/10/2016 Khaled Hassine 5

Objectifs

Présenter la méthode de conception d'un circuitcombinatoire.

On étudiera en particulier quelques circuitscombinatoires usuels à savoir l'additionneur,

les multiplexeurs et démultiplexeurs,

les codeurs et décodeurs.

16/10/2016 Khaled Hassine 6

Quelques circuits combinatoires

Analyse d’un logigramme

Introduction

Récapitulatif

PLAN

16/10/2016 7

Conception de circuit combinatoire

Khaled Hassine

Etapes de conception d’un circuitcombinatoire

La génération de l'expression booléennecorrespondant à la fonction logique désirée connue parles valeurs d'entrée et les valeurs de sortie desvariables.

La simplification de cette expression en vue d'obtenirle circuit le plus simple possible.

Éventuellement, la recherche d'une expressionpermettant de réaliser le circuit combinatoirecorrespondant (appelé aussi logigramme) avec un jeurestreint d'opérateurs donnés.

16/10/2016 Khaled Hassine 8

Page 3: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 3

Etapes de conception Génération Simplification Jeu restreint d’opérateurs

16/10/2016 Khaled Hassine 9

Etapes de conception Génération Simplification Jeu restreint d’opérateurs

16/10/2016 Khaled Hassine 10

Expression Booléenne

Toute fonction logique, donnée par une table devérité ou par une expression littéraire, peut êtrereprésentée par une expression booléenne utilisantles trois opérateurs de base de l'algèbre de Boole(ET, OU, NON).

16/10/2016 Khaled Hassine 11

Exemple : F fonction à 4 variables

A B C D F A B C D F

0 0 0 0 1 1 0 0 0 1

0 0 0 1 1 1 0 0 1 1

0 0 1 0 0 1 0 1 0 0

0 0 1 1 0 1 0 1 1 0

0 1 0 0 0 1 1 0 0 0

0 1 0 1 0 1 1 0 1 0

0 1 1 0 0 1 1 1 0 0

0 1 1 1 0 1 1 1 1 0

16/10/2016 Khaled Hassine 12

Page 4: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 4

Exemple

La première ligne de ce tableau (partie de gauche)exprime que F est vrai si A = B = C = D=0. Cecipeut être formulé par :

16/10/2016 Khaled Hassine 13

1 DCBA

Expression Booléenne

Le même raisonnement donne que F=1 si :

Ceci s’écrit plus simplement comme suit :

16/10/2016 Khaled Hassine 14

1

1

1

1

A B C D

ou A B C D

ou A B C D

ou A B C D

1 1F Si ABCD ABCD ABCD ABCD

F ABCD ABCD ABCD ABCD

Somme des produits

Nous obtenons ainsi une première expression de F ditesomme des produits (ou de minterm). Cette façon, trèsgénérale, d'écrire une fonction booléenne est aussi appeléesomme canonique de produits.

Par convention, on pose : , …

16/10/2016 Khaled Hassine 15

DCBAM 0 DCBAM 1

0 1 8 9( , , , ) ( , , , )

( , , , ) (0,1,8,9)

F A B C D M M M M

F A B C D M

Autre forme

La même méthode nous permet de calculer lecomplément de F comme suit :

et par application des lois de De Morgan, on obtient:

16/10/2016 Khaled Hassine 16

F ABC D ABCD ABC D ABCD ABC D ABCD

ABC D ABCD ABC D ABCD ABC D ABCD

( ) ( ) ( ) ( )

( ) ( ) ( ) ( )

( ) ( ) ( ) ( )

ABCD ABCD ABCD ABCD ABCD ABCDF F

ABCD ABCD ABCD ABCD ABCD ABCD

A B C D A B C D A B C D A B C D

A B C D A B C D A B C D A B C D

A B C D A B C D A B C D A B C D

Page 5: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 5

Produit des sommes

Nous obtenons ainsi une deuxième expression dite produitdes sommes (ou de Maxterm). Cette écriture est appeléeproduit canonique de sommes. Par convention, on pose :

On peut ainsi écrire la fonction F comme suit :

16/10/2016 Khaled Hassine 17

)(0 DCBAP )(1 DCBAP

2 3 4 5 6 7 10 11 12 13 14 15( , , , ) ( , , , , , , , , , , , )F A B C D P P P P P P P P P P P P( , , , ) (2,3,4,5,6,7,10,11,12,13,14,15)F A B C D P

Remarques

Il est clair, à partir de cet exemple, que toute fonction logique peuts'exprimer sous forme de produit de sommes ou somme de produits.

On peut représenter directement la fonction F en utilisant lesopérateurs de base. Ceci nécessite 4 portes ET à 4 entrées et uneporte OU aussi à 4 entrées pour la somme des produits et 4 portesOU à 4 entrées et une porte ET à 4 entrées pour le produit dessommes.

Ces représentations à l'état brut ne sont pas les formes optimales(en terme de nombre de portes utilisées). La représentationoptimale n'est obtenue qu'après simplification de l'expressiontrouvée. Ceci peut se faire selon deux approches : la méthodealgébrique ou la méthode graphique.

16/10/2016 Khaled Hassine 18

Etapes de conception Génération Simplification Jeu restreint d’opérateurs

16/10/2016 Khaled Hassine 19

Deux méthodes

Méthode algébrique : Basé sur les théorèmes fondamentaux de l’algèbre de

Boole

Méthode graphique : Tableau de Karnaugh

16/10/2016 Khaled Hassine 20

Page 6: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 6

La méthode algébrique

Consiste à utiliser les théorèmes de base de l'algèbre deBoole.

Par exemple, l'expression de la fonction définieprécédemment mise sous forme de somme de produits :

se simplifie de la manière suivante :

16/10/2016 Khaled Hassine 21

DCBADCBADCBADCBAF

( )( )

( )

F A B C A B C D D

B C A A B C

La méthode graphique

Permet souvent de rendre plus apparent lessimplifications à réaliser. Cette méthode se base surun tableau dit de Karnaugh.

La méthode de simplification de Karnaugh reposesur l'identité :

16/10/2016 Khaled Hassine 22

ABBABAAB )(

Méthode de Karnaugh

Basée sur l'inspection visuelle de tableauxdisposés de façon telle que les cases adjacentes enligne et en colonne ne diffèrent que par l'étatd'une variable et une seule.

Si une fonction dépend de n variables, il y a 2n

produits possibles. Chacun de ces produits(Minterms) est représenté par une case dans untableau.

D’une case à une autre, une et une seule variablechange d’état.

16/10/2016 Khaled Hassine 23

Principe de la méthode

Le passage de la table de vérité au tableau de Karnaughconsiste à remplir chaque case avec la valeur de lafonction pour le produit correspondant.

Il est possible de n'indiquer que les 1. Chaque case d'un tableau correspond aux seuls

Minterms prenant la valeur 1 pour la combinaisonidentifiée par la ligne et la colonne.

Chaque ligne et chaque colonne forme une structurecyclique continue : chaque case a toujours quatrevoisins qu'il faut éventuellement chercher à l'autreextrémité de la ligne ou de la colonne.

16/10/2016 Khaled Hassine 24

Page 7: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 7

Notion de binaire réfléchi

Au niveau de ce tableau, d'une ligne à sa suivante etd'une colonne à sa suivante, une seule variablechange d'état.

Un tel code est dit binaire réfléchi. Cesdispositions permettent de réaliser facilement lessimplifications.

Les cases extrêmes (00 et 10) sont aussi adjacentesen ligne (de droite à gauche) et en colonne (de hauten bas).

16/10/2016 Khaled Hassine 25

Binaire réfléchi

16/10/2016 Khaled Hassine 26

00 01 11 10

00

01

11

10

00 1010

Le passage de 10 à 00 respecte bien le codebinaire réfléchi, ce qui se traduit par unereprésentation enroulée du tableau

Cellules adjacentes

xy

zt

00 01 11 10

00

01

11

10

16/10/2016 Khaled Hassine 27

xy

zt

00 01 11 10

00

01

11

10

Démarche de simplification

La simplification selon la méthode de Karnaugh consiste àrassembler les cases adjacentes contenant des 1 par groupes de 2, 4ou 8 termes.

En effet, lors de la simplification, pour chaque case du tableau à 1, ilfaut chercher le regroupement (qui comporte le plus grandnombre de 1) qui l'englobe.

Ces regroupements doivent se constituer de 2n cases adjacentes,toutes à 1.

On s'arrête lorsqu'on a couvert toutes les cases à 1 de notre tableaude Karnaugh.

Dans le cas où le nombre de 0 est très inférieur au nombre de 1, onregroupe les 0, ce qui permet d'obtenir le complément de F et parapplication des lois de De Morgan, on déduit F.

16/10/2016 Khaled Hassine 28

Page 8: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 8

Exemple

Considérons, le groupement vertical de deux casescorrespondant à : xyt et xyt.

Il correspond à la somme de deux termes :

Il est possible de factoriser le produit xy :

La variable t qui prend les deux valeurs 0 et 1 dansle groupement disparaît. Il ne reste que le produitdes variables x et y, qui gardent ici la valeur 1.

16/10/2016 Khaled Hassine 29

txyxytG

xyttxyG )(

Principe …

On cherche à avoir le minimum de groupements, chaquegroupement rassemblant le maximum de termes. Dans un groupement de deux termes, on élimine donc la variable qui

change d'état et on conserve le produit des variables qui ne changent pas. Dans un groupement de quatre on élimine les deux variables qui changent

d'état. Dans un groupement de huit on élimine trois variables, etc.

Une même case peut intervenir dans plusieurs groupements carC + C = C.

Pour les cases isolées, on ne peut éliminer aucune variable. Onconserve donc le Minterm caractérisant la case.

L'expression logique finale est la réunion des groupements aprèsélimination des variables qui changent d'état.

16/10/2016 Khaled Hassine 30

Exemple 1 : cas de trois variables

x y z F

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 116/10/2016 Khaled Hassine 31

zxyzxyF

Exemple 1 : tableau de Karnaugh

16/10/2016 Khaled Hassine 32

Page 9: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 9

Exemple 2 : cas de quatre variables

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

16/10/2016 Khaled Hassine 33

x y z t F

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

tzytyyxF

Exemple 2 : tableau de Karnaugh

16/10/2016 Khaled Hassine 34

Remarques

Il n'existe pas une seule simplification possibled'une fonction logique.

Dans certains cas, la valeur de la fonction peut êtreindifféremment à 1 ou 0. Ce cas est appelé: "Don’tcare conditions or can’t happen" et généralementreprésentée par un X.

Exemple : codeur DCB.

16/10/2016 Khaled Hassine 35

Etapes de conception Génération Simplification Jeu restreint d’opérateurs

16/10/2016 Khaled Hassine 36

Page 10: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 10

Utilisation d'un nombre restreintd'opérateurs de base

Les concepteurs de circuits intégrés imposent souventde réduire le nombre de circuits de base.

La possibilité de décomposer une fonction logique enproduit de sommes ou en somme de produits entraînequ'elle peut être réalisée à partir de trois opérateurs debase ET, OU, PAS.

Ceci démontre le fait que ces derniers forment ungroupe complet.

A la rigueur, on peut réduire à deux le nombred'opérateurs nécessaires à la réalisation de toutefonction logique.

16/10/2016 Khaled Hassine 37

Utilisation de 2 opérateurs de base

16/10/2016 Khaled Hassine 38

A

B

A

B

AB

A+B

Nouveau groupe complet

On peut définir deux nouvelles fonctions à deux variablesdont les opérateurs forment chacun un groupe complet. fonction incompatibilité à laquelle correspond l'opérateur

NAND fonction NI à la quelle correspond l'opérateur NOR

16/10/2016 Khaled Hassine 39

AB

BAAB AB

A + B = A B

Exercice

Concevoir la fonction Majorité à trois entrées quiprend 1 si la majorité de ces entrées sont à l'état 1.

16/10/2016 Khaled Hassine 40

Page 11: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 11

Table de vérité de la fonctionmajorité

A B C M

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 1

16/10/2016 Khaled Hassine 41

Simplification

16/10/2016 Khaled Hassine 42

( )

( ) ( )

( ) ( )

M ABC ABC ABC ABC BC A A ABC ABC

BC ABC ABC B C AC ABC B C A ABC

BC A B BC BC A B C AB BC AC

Quelques circuits combinatoires

Analyse d’un logigramme

Introduction

Récapitulatif

PLAN

16/10/2016 43

Conception de circuit combinatoire

Khaled Hassine

Etapes de l’analyse

L'analyse d'un circuit combinatoire consiste àretrouver la fonction d'un circuit dont on connaît lelogigramme.

La démarche à suivre pour ce faire est la suivante : en procédant des entrées vers les sorties, donner pour

chaque opérateur l'expression de sa sortie en fonction deses entrées jusqu'à l'obtention d'une expression pourchaque fonction (sortie) réalisée par le circuit ;

donner éventuellement la table de vérité correspondante ; en déduire le rôle du circuit.

16/10/2016 Khaled Hassine 44

Page 12: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 12

Exemple

16/10/2016 Khaled Hassine 45

E0E1

E2

S

D’après l’expressionfinale simplifiée, ilfaut que le nombred'entrées a l'état 1soit impaire pouravoir S à 1. Ce circuitpeut alors servir devérificateur ou degénérateur deparité impaire. Quelques circuits combinatoires

Analyse d’un logigramme

Introduction

Récapitulatif

PLAN

16/10/2016 46

Conception de circuit combinatoire

Khaled Hassine

Motifs

L'ordinateur est composé de plusieurs circuitscombinatoires.

Dans cette partie, on s'intéresse à quelquesexemples qui jouent un rôle important dans unemachine informatique.

On cite : le codeur, le décodeur, le multiplexeur, le démultiplexeur, l’additionneur, ...

16/10/2016 Khaled Hassine 47

Exemples de circuits Additionneur SoustracteurMultiplexeur Démultiplexeur Décodeur – codeur - transcodeur

16/10/2016 Khaled Hassine 48

Page 13: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 13

Exemples de circuits Additionneur SoustracteurMultiplexeur Démultiplexeur Décodeur – codeur - transcodeur

16/10/2016 Khaled Hassine 49

Demi-additionneur

L'addition et la soustraction sont les deuxopérations arithmétiques de base.

16/10/2016 Khaled Hassine 50

A B S R

0 0 0 0

0 1 1 0

1 0 1 0

1 1 0 1

A et B : des entréesS : la sommeR : la retenue

S A B

R AB

Logigramme

16/10/2016 Khaled Hassine 51

A

B

Demi additionneur(Half Adder)

S

R

R

S

A

B

Additionneur 2 bits complet

Afin de tenir compte de la retenue des bits de poidsinférieurs, un additionneur (Full Adder) doitcomporter trois entrées et deux sorties. A, B : les entrées représentent les bits à additionner

R : le report de la retenue de l'addition des bits de poidsinférieurs.

S : sortie représentant le résultat de la somme

C : sortie représentant la retenue.

16/10/2016 Khaled Hassine 52

Page 14: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 14

Table de vérité

16/10/2016 Khaled Hassine 53

AdditionneurFull Adder

A

R

S

C

B

A B R S C

0 0 0 0 0 0

1 0 0 1 1 0

2 0 1 0 1 0

3 0 1 1 0 1

4 1 0 0 1 0

5 1 0 1 0 1

6 1 1 0 0 1

7 1 1 1 1 1

1 1 1 1 1

1( )

N N N N N

N

S ABR ABR ABR ABR A B R

C ABR ABR ABR ABR AB R A B

Remarques

AB est la retenue générée par l'étage demiadditionneur

R(AB) la retenue propagée par l'étageadditionneur.

Cette équation permet d'obtenir un additionneur parassociation de demi additionneur.

16/10/2016 Khaled Hassine 54

Additionneur complet à base dedémi-additionneur

16/10/2016 Khaled Hassine 55

DemiadditionneurHalf Adder

DemiadditionneurHalf Adder

A

B

R

C

S

Additionneur N bits

L'addition de nombres comptant plusieurs bits peutse faire : en série (bit après bit) ou

en parallèle (tous les bits simultanément).

On suppose pour ce faire que A et B sont codés surN (=n+1) bits : A = an an-1 ... a1 a0

B = bn bn-1 ... b1 b0

16/10/2016 Khaled Hassine 56

Page 15: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 15

Additionneur parallèle 4 bits àpropagation de retenue

16/10/2016 Khaled Hassine 57

Additionneur parallèle 4 bits àretenue anticipée

16/10/2016 Khaled Hassine 58

Additionneur parallèle 4 bits àretenue anticipée

16/10/2016 Khaled Hassine 59

Additionneur parallèle 16 bits àretenue anticipée

16/10/2016 Khaled Hassine 60

Page 16: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 16

Additionneur série

16/10/2016 Khaled Hassine 61

AdditionneurFull Adder

A

Rn-1

S

C

B

Fonction retard

Additionneur BCD : schéma bloc

16/10/2016 Khaled Hassine 62

A0

Cin : Carry In

A1A2

A3

B0

B1

B3

B2

S0

Cout : Carry Out

S1

S2S3

Particularités BCD

Lors de l'addition de deux nombres en BCD, différentscas sont possibles : le résultat de l'addition est inférieur à 10 auquel cas la

méthode de sommation est identique à la sommation en base2, (par exemple si A = 0100 et B = 0011 alors A+B = 0111)

le résultat de l'addition est supérieur à 9 auquel cas unecorrection est nécessaire par l'ajout de 6 (le nombre de cas dela base 16 non directement représentable dans le systèmeBCD) au résultat (par exemple si A = 0111 et B = 0110 alorsA+B = 1101 et avec l'ajout de 6 on obtient 1 0011 quireprésente 13).

16/10/2016 Khaled Hassine 63

Comment peut-on s'assurer que lerésultat est supérieur à 9 ?

Si le résultat de l'addition est supérieur à 15 et on aobtenu une retenue (les cas 7+9, 8+8, 8+9 et 9+9).Dans ces cas, bien que les 4 premiers bits sontinférieurs à 9, le résultat nécessite une correction.Ces cas se distinguent par la présence d'uneretenue générale.

Si le résultat de l'addition est compris entre 10 et15.

16/10/2016 Khaled Hassine 64

Page 17: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 17

Cas où le résultat est compris entre10 et 15

Nombre W8 W4 W2 W1

10 1 0 1 0

11 1 0 1 1

12 1 1 0 0

13 1 1 0 1

14 1 1 1 0

15 1 1 1 1

16/10/2016 Khaled Hassine 65

Wi représente lepoids dans lesystème BCD

)( 248 WWWF

Résumé des cas de correction

En combinant les différents cas de figure ci-dessusprésentés, il faut corriger le résultat selon lafonction logique suivante :

16/10/2016 Khaled Hassine 66

)( 248 WWWCout

Logigramme de l’additionneur BCD

16/10/2016 Khaled Hassine 67

FA8

A3 B3

FA4

A2 B2

FA2

A1 B1

FA1

A0 B0

S0

FA

S1

FA

S2

FA

S3

Cout

0

Cin

Exemples de circuits Additionneur SoustracteurMultiplexeur Démultiplexeur Décodeur – codeur - transcodeur

16/10/2016 Khaled Hassine 68

Page 18: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 18

Demi-Soustracteur

16/10/2016 Khaled Hassine 69

A B D C

0 0 0 0

0 1 1 1

1 0 1 0

1 1 0 0

D A B

C AB

Additionneur soustracteur

16/10/2016 Khaled Hassine 70

2 1 1

1 2 1

n

n

A A A A

A B A B A B

Unité arithmétique et logique

16/10/2016 Khaled Hassine 71

Exemples de circuits Additionneur SoustracteurMultiplexeur Démultiplexeur Décodeur – codeur - transcodeur

16/10/2016 Khaled Hassine 72

Page 19: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 19

Définition

Le multiplexeur est un circuit combinatoire à plusieurs entrées etn'autorise qu'une seule d'entre elles en sortie. Pour sélectionner l'unedes entrées, on a besoin de n lignes de sélection. Ces lignes peuventsélectionner jusqu'à 2n entrées et permettent ainsi de coder en base 2le numéro de l'entrée sélectionnée.

Le multiplexeur est aussi appelé circuit de transmission multipleen parallèle et ceci veut dire envoyer un nombre N de données surun nombre plus petit de canaux de transmission.

Si n est le nombre de lignes d'entrées d'un multiplexeur alors lenombre de lignes de sélection est [log2(n)[ (le plus petit entiernaturel supérieur ou égal à log2(n)).

16/10/2016 Khaled Hassine 73

Utilisation

Le multiplexage est un dispositif qui permet de transmettre sur uneseule ligne des informations en provenance de plusieurs sources ouà destination de plusieurs cibles.

De ce fait, une application intéressante des multiplexeurs est laconversion parallèle série. En effet, en supposant une informationcodée sur un octet, il suffit de la présenter sur les lignes d'entréesd'un multiplexeur 8 entrées. En faisant varier les valeurs de troislignes de sélection, de 000 à 111, on récupère en sortie les 8 bits del'octet en entrée l'un à la suite de l'autre.

16/10/2016 Khaled Hassine 74

Exemple de multiplexeur à 2 lignesde sélection

E B A Y

0 0 0 X0

0 0 1 X1

0 1 0 X2

0 1 1 X3

1 0 0 0

1 0 1 0

1 1 0 0

1 1 1 0

16/10/2016 Khaled Hassine 75

3210 XEABXEBAXEBAXEBAY

E : ligne d’activationXi : lignes d’entréeA, B : Lignes de sélectionY : La sortie

Mise en cascade de Multiplexeurs

Il existe, sous forme de circuits intégrés, desmultiplexeurs avec 2, 4 ou 16 lignes d’entrée.

Pour constituer des multiplexeurs d'ordre supérieur,on peut cascader des multiplexeurs.

16/10/2016 Khaled Hassine 76

Page 20: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 20

Exemple : mise en cascadede multiplexeurs

Un multiplexeur à 32 entréesréalisé à partir de quatremultiplexeurs à 8 entrées etd'un multiplexeur à 4 entrées.

On doit positionner les poidsfaibles dans les multiplexeursen entrées et les poids fortsdans les multiplexeurs ensorties.

Les poids correspondant aucircuit est : DE ABC (C estle poids faible et D est lepoids fort).

16/10/2016 Khaled Hassine 77

Conception des fonctions logiques enutilisant des multiplexeurs

Un multiplexeur à N lignes de sélection permet decâbler n'importe quelle fonction logique à Nvariables. En effet, le multiplexeur permet d'avoirtoutes les combinaisons possibles à partir de Nvariables.

Pour concevoir un circuit logique d'une fonction à nvariables F(Xn-1, ..., X1, X0), on utilise un multiplexeurde 2n-1x1 et on suit pour cela les étapes suivantes :

On exprime la fonction logique moyennant cesMinterm selon la forme somme de produits.

16/10/2016 Khaled Hassine 78

Conception des fonctions logique enutilisant des multiplexeurs …

On conçoit un tableau de 3 lignes et 2n-1+1 colonnesnumérotées comme suit (ces numéros représententle Minterms):

16/10/2016 Khaled Hassine 79

I0 I1 I2

0 1 21nX

1nX 12 n 12 1 n 22 1 n 12 n

12 1nI

12 1 n

Conception des fonctions logiques enutilisant des multiplexeurs …

On encercle tous les Minterms représentant la fonction. On dessine le schéma en bloc du multiplexeur 2n-1x1. On examine toutes les colonnes :

toute colonne ayant deux cercles sera reliée à 1 toute colonne n'ayant pas de cercles sera reliée à 0 toute colonne ayant un seul cercle dans la case de dessus sera

reliée à toute colonne ayant un seul cercle dans la case de dessous

sera reliée à Les lignes de sélection sont reliées respectivement à Xn-

2, ..., X1, X0.

16/10/2016 Khaled Hassine 80

1nX

1nX

Page 21: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 21

Exemple

16/10/2016 Khaled Hassine 81

Concevoir la fonction suivante en utilisant un multiplexeur

)15,13,10,9,7,2,0(),,,( MtzyxFLe nombre de variables de la fonction est 4, il faut alors utiliserun multiplexeur 23x1.

I0 I1 I2 I3 I4 I5 I6 I7

0 1 2 3 4 5 6 7

8 9 10 11 12 13 14 15

x

x

Logigramme à base de multiplexeur

16/10/2016 Khaled Hassine 82

tzy

x 1 0

I0I1I2I3I4I5I6I7

F

Exemples de circuits Additionneur SoustracteurMultiplexeur Démultiplexeur Décodeur – codeur - transcodeur

16/10/2016 Khaled Hassine 83

Définition

Un démultiplexeur est un circuit comptant uneentrée et N sorties et qui met en relation cette entréeavec une sortie et une seule.

Le choix de la ligne de sortie est assuré par deslignes de sélection (ou encore d'adresse ou decommande).

Pour pouvoir sélectionner cette sortie, le code portépar ces lignes identifie la ligne de sortie à utiliser.

Ce circuit est très proche d'un décodeur.

16/10/2016 Khaled Hassine 84

Page 22: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 22

Table de vérité d’un démultiplexeur4 sorties

16/10/2016 Khaled Hassine 85

E B A Y0 Y1 Y2 Y3 Produit

0 0 0 D 0 0 0

0 0 1 0 D 0 0

0 1 0 0 0 D 0

0 1 1 0 0 0 D

1 0 0 0 0 0 0 0

1 0 1 0 0 0 0 0

1 1 0 0 0 0 0 0

1 1 1 0 0 0 0 0

DEBA

DEBADEBA

DEAB

Logigramme d’un démultiplexeur 4sorties avec ligne d’activation

16/10/2016 Khaled Hassine 86

Mise en cascade de démultiplexeurs

Il existe sous forme de circuits intégrés desdémultiplexeurs avec 2, 4 ou 16 lignes de sortie.

Tout comme pour les multiplexeurs, on peutcascader plusieurs démultiplexeurs pour obtenir undémultiplexeur d'ordre supérieur.

16/10/2016 Khaled Hassine 87

Exemple

16/10/2016 Khaled Hassine 88

Un démultiplexeur à 32sorties réalisé à partir dequatre démultiplexeurs à 8sorties et d'undémultiplexeur à 4 sorties.

Page 23: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 23

Exemples de circuits Additionneur SoustracteurMultiplexeur Démultiplexeur Décodeur – codeur - transcodeur

16/10/2016 Khaled Hassine 89

Définition

Le décodeur fait correspondre à un code en entrée(sur n lignes) une seule sortie active (à 1) parmi les2n sorties possibles.

Le codeur assure la fonction inverse. A une entréeactive parmi 2n entrées, il fait correspondre ensortie un code sur n lignes.

Le transcodeur fait correspondre à un code A enentrée sur n lignes, un code B en sortie sur mlignes.

16/10/2016 Khaled Hassine 90

Exemple de codeur

16/10/2016 Khaled Hassine 91

Soit par exemple, à réaliser un codeur à 8 entrées qui permet defournir en sortie le code octal de l'entrée sélectionnée. Ce codeur a3 sorties, soit S0, S1, S2.

E0 E1 E2 E3 E4 E5 E6 E7 S2 S1 S0

1 0 0 0 0 0 0 0 0 0 0

0 1 0 0 0 0 0 0 0 0 1

0 0 1 0 0 0 0 0 0 1 0

0 0 0 1 0 0 0 0 0 1 1

0 0 0 0 1 0 0 0 1 0 0

0 0 0 0 0 1 0 0 1 0 1

0 0 0 0 0 0 1 0 1 1 0

0 0 0 0 0 0 0 1 1 1 1

Equation des sorties

S0 = E1 + E3 + E5 + E7

S1 = E2 + E3 + E6 + E7

S2 = E4 + E5 + E6 + E7

16/10/2016 Khaled Hassine 92

Page 24: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 24

Exemple de décodeur

Le décodeur est un circuit qui a p variables binairesen entrée et n = 2p variables binaires en sortie.

Chaque sortie correspond à une configurationbinaire d'entrée.

On associe généralement la sortie S0 à laconfiguration binaire d'entrée dont tous les bits sontà 0 et la sortie Sn-1 à la configuration binaired'entrée dont tous les bits sont à 1.

16/10/2016 Khaled Hassine 93

Décodeur 8 sorties

16/10/2016 Khaled Hassine 94

E2 E1 E0 S0 S1 S2 S3 S4 S5 S6 S7

0 0 0 1 0 0 0 0 0 0 0

0 0 1 0 1 0 0 0 0 0 0

0 1 0 0 0 1 0 0 0 0 0

0 1 1 0 0 0 1 0 0 0 0

1 0 0 0 0 0 0 1 0 0 0

1 0 1 0 0 0 0 0 1 0 0

1 1 0 0 0 0 0 0 0 1 0

1 1 1 0 0 0 0 0 0 0 1

Ligne d’activation

On ajoute souvent au décodeur une entrée E(Enable ou Activation) telle que si E = 0, toutes lessorties sont à 1 quelle que soit la configurationbinaire en entrée et si E = 1 le circuit fonctionnenormalement.

16/10/2016 Khaled Hassine 95

0 0 1 2

1 0 1 2

2 0 1 2

3 0 1 2

S E E E E

S E E E E

S E E E E

S E E E E

4 0 1 2

5 0 1 2

6 0 1 2

7 0 1 2

S E E E E

S E E E E

S E E E E

S E E E E

Décodeur 2 entrées

16/10/2016 Khaled Hassine 96

Un décodeur est un démultiplexeur dont l'état d'entrée esttoujours 1.

F0

F1

S0

S1

S2

S3

Page 25: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 25

Application des codeurs etdécodeurs

Dans un système numérique, les instructions, toutcomme les nombres, sont transportées sous forme demots binaires. Par exemple un mot de 4 bits peutpermettre d'identifier 16 instructions différentes :l'information est codée.

Très souvent l'équivalent d'un commutateur à 16positions permet de sélectionner l'instructioncorrespondant à un code. Ce processus est appelédécodage.

La fonction de décodage consiste à faire correspondre àun code présent en entrée sur n lignes une seule sortieactive parmi les N = 2n sorties possibles.

16/10/2016 Khaled Hassine 97

Transcodeur DCB

Le code DCB (ou en anglais BCD : Binary Coded Decimal)transforme les nombres décimaux en remplaçant chacun deschiffres décimaux par 4 chiffres binaires.

Cette représentation conserve donc la structure décimale :unités, dizaines, centaines, milliers, etc…

Chaque chiffre est codé sur 4 bits. Par exemple le nombre décimal 294 sera codé en DCB :

0010 1001 0100. Ce type de codage permet, par exemple, de faciliter

l'affichage en décimal du contenu d'un compteur. Pour cefaire, on peut utiliser des afficheurs lumineux à septsegments.

16/10/2016 Khaled Hassine 98

Transcodeur DCB et afficheur 7segments

16/10/2016 Khaled Hassine 99

La fonction de chacun des transcodeurs est de positionner à 1 leslignes de sortie correspondant aux segments à allumer selon de codeporté par les quatre lignes d'entrée. De manière générale, untranscodeur fait correspondre à un code A en entrée sur n lignes, uncode B en sortie sur m lignes.

Quelques circuits combinatoires

Analyse d’un logigramme

Introduction

Récapitulatif

PLAN

16/10/2016 100

Conception de circuit combinatoire

Khaled Hassine

Page 26: CHAPITRE II – LOGIQUE COMBINATOIRE 2 - Logique combinatoire.pdf · 2016-10-16 · le circuit le plus simple possible. Éventuellement, la recherche d'une expression permettant de

Faculté des Sciences de GabesDépartement d’informatique

16/10/2016

Cours Circuits Logiques 26

Correction des examens 2015-2016

Cf. TD 2.

Correction des exercices 5, 6 et 7.

16/10/2016 Khaled Hassine 101 16/10/2016 102Khaled Hassine