Chap2&3 Combinatoire 2006

of 38/38
I.U.T. de VELIZY UNIVERSITE DE VERSAILLES-SAINT-QUENTIN-EN-YVELINES RESEAUX ET TELECOMUNICATIONS Cours Informatique : module I2 Logique et circuits combinatoires chapitres 2 et 3 Emmanuelle Peuch
  • date post

    25-Jun-2015
  • Category

    Documents

  • view

    111
  • download

    6

Embed Size (px)

Transcript of Chap2&3 Combinatoire 2006

UNIVERSITE DE VERSAILLES-SAINT-QUENTIN-EN-YVELINES

I.U.T. de VELIZY

RESEAUX ET TELECOMUNICATIONS

Cours Informatique : module I2

Logique et circuits combinatoires chapitres 2 et 3

Emmanuelle Peuch

INTRODUCTIONUn circuit logique est dit combinatoire si l'tat de ses sorties est fonction uniquement de l'tat prsent de ses entres. Ainsi, chaque combinaison des entres correspond une seule combinaison des sorties.

Dans cette partie nous allons tout d'abord prsenter les oprateurs combinatoires de base (oprateurs logiques de base). Puis nous ferons un rappel sur l'algbre de Boole, ce qui nous permettra ensuite d'aborder une mthode de synthse d'un systme logique combinatoire. Dans un deuxime temps, nous aborderons les fonctions combinatoires usuelles telles le transcodage, le multiplexage, les oprateurs arithmtiques simples (additionneurs binaires, comparateurs binaires,...). En parallle, nous introduirons la description de fonctions logiques sous forme de programmes en VHDL. Le VHDL, langage de description de haut niveau, est un outil d'aide la conception qui conduit la programmation de circuits programmables, tels les CPLD, les FPGA.

Chapitre 2 : Oprateurs logiques de base - Mthode de synthse dun systme logique combinatoire ------------ p. 2

Chapitre 3 : Fonctions combinatoires usuelles - Introduction au langage VHDL ---- p. 17

IUT Vlizy R&T / Emmanuelle Peuch

2

Chapitre 2 : Table des matires

TABLE DES MATIERES CHAPITRE 2

1 Les oprateurs logiques de base - Logigrammes associs ________ 4 2 Algbre de Boole ________________________________________ 6 3 Synthse des systmes logiques combinatoires ________________ 7 3.1 Table de vrit _______________________________________ 7 3.2 Mise en quation des fonctions logiques avec optimisation ____ 8 3.2.1 Premire mthode : criture partir de la table de vrit __ Erreur ! Signet non dfini. 3.2.2 Deuxime mthode : utilisation des tableaux de Karnaugh ________________9 3.3 Ralisation lectronique ______________________________ 13

IUT Vlizy R&T / Emmanuelle Peuch

3

Chapitre 2

Oprateurs logiques de base Mthode de synthse d'un systme logique combinatoire

1 Les oprateurs logiques de base - Logigrammes associs ET logique :

0

&0

0

La sortie est l'tat haut quand les entres sont simultanment l'tat haut. L'tat logique 1 est l'lment neutre pour le ET logique: A.1 = 1.A = A

OU logique :

0

>=10

0

La sortie est ltat haut quand lune au moins des entres est ltat haut, et ltat bas quand les entres sont simultanment ltat bas. IUT Vlizy R&T / Emmanuelle Peuch 4

Chapitre 2

Ltat 0 est lment neutre pour le OU logique : A+0 = A

Inverseur logique (fonction NON ou PAS):

1

Il y a inversion du niveau logique dentre.

0

&0

0

IUT Vlizy R&T / Emmanuelle Peuch

5

Chapitre 20

>=10

0

0

=10

0

2 Algbre de Boole

Rgles gnrales

Commutativit

Associativit

Distributivit

Lois spciales

Lois de De Morgan

A(BC) = (AB)C A.B = B.A = A.B.C A+(B+C) = (A+B)+C A+B = B+A A+(B.C)=(A+B).(A+C) = A+B+C A(A+B) = A A(B+C) = A.B+AC. A+A.B = A

A + B = A.B

A.B = A + B

Les lois de De Morgan sont trs utiles pour calculer le complment dune expression. Exemple : ( A + B ).C = A + B + C = ( A.B ) + C

IUT Vlizy R&T / Emmanuelle Peuch

6

Chapitre 2

Rgles particulires

A.1 = A

A+0 = A

A=A

A+ A = 1

A.A = 0

A.A = A

A+A = A

3 Synthse des systmes logiques combinatoires

Cahier des charges

Table de vrit

Mise en quation (avec optimisation)

Synthse (ralisation lectronique)

3.1 Table de vritA partir du cahier des charges, on construit la table de vrit. La table de vrit reprsente ltat de la variable de sortie pour chacune des combinaisons des n variables dentre (2n lignes). Elle permet donc de dcrire le fonctionnement dun systme combinatoire.

Exercice

Trois interrupteurs A, B et C commandent lallumage de 2 lampes R et S suivant les conditions suivantes : - ds quun ou plusieurs interrupteurs sont activs la lampe R doit sallumer, - la lampe S ne doit sallumer que si au moins 2 interrupteurs sont activs.

Ecrivons les tables de vrit qui correspondent ce cahier des charges : C 0 0 0 B 0 0 1 A 0 1 0 R S

IUT Vlizy R&T / Emmanuelle Peuch

7

Chapitre 2

0 1 1 1 1

1 0 0 1 1

1 0 1 0 1

3.2 Mise en quation des fonctions logiques avec optimisation 3.2.1 Mthode algbriqueIl est possible de dterminer lquation de fonctionnement du systme combinatoire en recherchant toutes les valeurs pour lesquelles la sortie vaut 1 (la sortie est vraie). Lquation de fonctionnement est alors gale la somme logique (OU logique) de toutes les combinaisons pour lesquelles la sortie vaut 1. Pour chacun de ces cas (sortie 1), on crit le produit (ET logique) de toutes les variables dentre : - en notant la variable si sa valeur vaut 1, - en notant la variable complmente si sa valeur vaut 0. Puis on simplifie lexpression logique obtenue en utilisant les proprits de lalgbre de Boole. Pour cela, on essaie de faire apparatre des termes de la forme (A+ A ) puisque A+ A = 1 et que B.1 = B.

Remarque : lorsque les tats 0 sont moins nombreux que les tats 1, il est avantageux dcrire le complment de la somme logique des lignes o la variable de sortie prend la valeur 0.

Exercice

Mise en quation des sorties R et S et simplification des quations logiques obtenues

Equation de S : S = CBA + CBA + CBA + CBA =IUT Vlizy R&T / Emmanuelle Peuch

8

Chapitre 2

Equation de R :

Cette mthode peut convenir pour les cas o le nombre de variables dentre ne dpasse pas 2 ou 3. On prfre utiliser, en gnral, la mthode des tableaux de Karnaugh.

3.2.2 Deuxime mthode : utilisation des tableaux de KarnaughLe tableau de Karnaugh est une reprsentation particulire de la table de vrit. Les cases du tableau reprsentent les valeurs de la fonction de sortie pour toutes les valeurs possibles des variables dentre.

Construction du tableau : Les cases reprsentant ltat des variables dentre doivent tre adjacentes, c'est--dire que le passage dune case lautre se fait par changement dune seule variable la fois.

BC A 0 1

00

01

11

10

IUT Vlizy R&T / Emmanuelle Peuch

9

Chapitre 2

Cette disposition fait apparatre les simplifications de la fonction binaire : on met en vidence, de faon graphique, la proprit AB + A B = A . Ainsi, lorsquon regroupera deux cellules adjacentes, on ne conservera que les variables dentre qui ne changent pas dtat. Dans les cases on ninscrit que la valeur 1 (cases o la sortie prend ltat 1). Voici quelques exemples :

BC 00 01 11 10 A 0 1 1 1

On regroupe toutes les cases adjacentes (cases adjacentes dans lesquelles la sortie S est 1 !) et on lit les coordonnes de chaque regroupement.

Soit ici S = On peut constituer des regroupements de 1, 2, 4, 8, 16,. cases adjacentes. Et les bords de la table sont adjacents (comme si le tableau tait enroul sur un cylindre).

BC 00 01 11 10 A 0 1 1 1 1 1

S=

BC 00 01 11 10 A 0 1 1 1 1 1

S=

BC 00 01 11 10 A 0 1S=

1

1

1

1

00 01 11IUT Vlizy R&T / Emmanuelle Peuch

10

Chapitre 2

BC A 0 1 1 1

10S=

1 1

BC 00 01 11 10 A 0 1 1

S=

Une ou plusieurs cases peuvent tre communes plusieurs regroupements. La confection des groupes cesse lorsque tous les 1 appartiennent au moins lun dentre eux.

BC 00 01 11 10 A 0 1 1 1 1 1

S=

1

BC 00 01 11 10 A 0 1 1 1 1 1 1 1

S=

La simplification peut ne pas tre unique :

BC 00 01 11 10 A 0 1 1 1 1 1 1

S = B.C + A.C + A.B

1

IUT Vlizy R&T / Emmanuelle Peuch

11

Chapitre 2

OU ALORS

BC 00 01 11 10 A 0 1S = A.C + A.B + B.C

1 1

1

1 1

1

Quand certaines combinaisons des variables sont sans effets sur la valeur de la fonction de sortie S, on dit que ce sont des tats indiffrents. On les note par une croix ou par un dans le diagramme de Karnaugh et on les utilise partiellement ou totalement pour simplifier S :

BC 00 01 11 10 A 0 1 1 1 1

S = B + A.C

Exercice

Mise en quation des sorties R et S et simplification des quations logiques obtenues par la mthode des tableaux de Karnaugh

Rappelons la table de vrit des sorties R et S : C 0 0 0 0 1 B 0 0 1 1 0 A 0 1 0 1 0 R 0 1 1 1 1 S 0 0 0 1 012

IUT Vlizy R&T / Emmanuelle Peuch

Chapitre 2

1 1 1

0 1 1

1 0 1

1 1 1

1 1 1

Pour la sortie R il nest pas ncessaire de tracer le tableau de Karnaugh (voir 1re mthode). Pour la sortie S, le tableau nous donne :

BC 00 01 11 10 A 0 1 1 1S=

1

1

3.3 Ralisation lectroniqueLa ralisation dune fonction boolenne se fait soit partir dune association de portes logiques lmentaires, soit partir de circuits spcialiss.

Exercice

Ralisation partir de portes logiques lmentaires.

R = A+B+C S = A.C + B.C + A.BA B C

S

R

IUT Vlizy R&T / Emmanuelle Peuch

13

Chapitre 2

ANNEXE

IUT Vlizy R&T / Emmanuelle Peuch

14

Chapitre 2

Circuit intgr : portes logiques ET 74HC08

Circuit intgr :

Botier comprenant 4 portes ET : diagramme fonctionnel

Circuit intgr : portes logiques NON 74HC04 / caractristiques lectriques

IUT Vlizy R&T / Emmanuelle Peuch

15

Chapitre 2

Unit en Volts

Unit en ns

IUT Vlizy R&T / Emmanuelle Peuch

16

Chapitre 2

IUT Vlizy R&T / Emmanuelle Peuch

17

Chapitre 3 : table des matires

TABLE DES MATIERES CHAPITRE 3I. Les circuits arithmtiques ___________________________ 191 2 3 Introduction _________________________________________ 19 Etude de ladditionneur 1 bit ____________________________ 19 Description VHDL dun additionneur de deux mots de 3 bits ____ 24

II. Les multiplexeurs (circuit daiguillage) _______________ 251 2 Description gnrale___________________________________ 25 Description VHDL _____________________________________ 26 2.1 2.2 Avec des instructions daffectation conditionnelles concurrentes 26 Les applications du multiplexage : _____________________ 28

III.1 2 3 4

Les dcodeurs - dmultiplexeurs _________________ 29

Description gnrale des dcodeurs n vers 2n _______________ 29 Description gnrale des dmultiplexeurs __________________ 30 Les dcodeurs BCD dcimaux et BCD 7 segments ____________ 32 Description VHDL _____________________________________ 34

IV. Les encodeurs ______________________________________ 361 2 Description gnrale___________________________________ 36 Description VHDL _____________________________________ 38

IUT Vlizy R&T / Emmanuelle Peuch

18

Chapitre 3

Fonctions combinatoires usuelles Introduction au langage VHDL

I. Les circuits arithmtiques1 IntroductionUn circuit arithmtique est un dispositif qui peut raliser des additions, des soustractions, des multiplications,. sur des nombres binaires. Nous ne prsenterons, dans ce chapitre, que ladditionneur binaire. Ltude de cette fonction arithmtique nous servira de support pour prsenter les bases du langage VHDL (langage de description). Nous allons donc dcrire ladditionneur binaire en langage VHDL pour ensuite limplanter dans un circuit architecture programmable (cette dernire phase sera tudie lors des sances de travaux pratiques).

2 Etude de ladditionneur 1 bitLaddition de deux mots de 1 bit est effectue par un circuit appel demi additionneur. Sa table de vrit est donne ci-dessous :A B S (somme) R (Retenue) B 0 0 1 1 A 0 1 0 1 S 0 1 1 0 R 0 0 0 1

Demi additionneur 1 bit: vue externe

La table de vrit du demi-additionneur nous permet den tirer les quations logiques suivantes : S=AB R=A.BVue interne

VHDLA xor B (Ou exclusif) A and B (Et logique) A or B (Ou logique)

IUT Vlizy R&T / Emmanuelle Peuch

19

Chapitre 3

Les quations logiques conduisent la ralisation suivante :A B0

=10

S (somme)

0

0

&0

R (Retenue)

0

Ecriture de la description VHDL

Les types de donnes (ici std_logic) p.18

Oprateurs de base et leur niveau de priorit p 21

IUT Vlizy R&T / Emmanuelle Peuch

20

Chapitre 3

Si nous additionnons deux mots de plusieurs bits, il faut alors tenir compte de la retenue de la prcdente addition de 1 bit. Le circuit a donc trois entres, deux sorties, et est appel additionneur 1 bit (additionneur complet mono bit):Ai Bi RiAdditionneur 1 bit: vue externe

S i (somme) R i+1(Retenue)

Ri 0 0 0 0 1 1 1 1

Bi 0 0 1 1 0 0 1 1

Ai 0 1 0 1 0 1 0 1

Si 0 1 1 0 1 0 0 1

R i+1 0 0 0 1 0 1 1 1

Les quations logiques des sorties sont alors : Si = Ri Ai Bi Ri+1 = Ai . Bi + Ri.(Ai Bi) quation 1 Ou alors Ri+1 = Ai . Ri + Ri. Bi + Ai . Bi quation 2

Vue interne

Description comportementale (quation 2) : criture VHDL

IUT Vlizy R&T / Emmanuelle Peuch

21

Chapitre 3

Description structurelle (quation 1) : utilisation de deux cellules demi additionneur

IUT Vlizy R&T / Emmanuelle Peuch

22

Chapitre 3

Ai Bi

0

=10

S10 0

=10

0

S i (somme)

0

&0

S2

0

&0

Ri

0 0

S3

0

>=10

R i+1(Retenue)

0

Figure 1 Nous crirons cette description VHDL lors de la premire sance de travaux pratiques.

Autre description comportementale partir du schma de la figure 1 : utilisation de lobjet signal

Nous allons utiliser des nuds intermdiaires S1, S2 et S3 qui sont appels des signaux en VHDL (objet du langage VHDL). entity add is Port (Ai,Bi,Ri: in std_logic; S,R: out std_logic ); end add; -- description flot de donnes --avec deux demi -additionneur architecture version_2 of add is -- Dclaration des signaux signal S1, S2, S3 : std_logic; begin S2