• Aucun résultat trouvé

InterrogationN 1:Logiquecombinatoire ◦ Correction

N/A
N/A
Protected

Academic year: 2022

Partager "InterrogationN 1:Logiquecombinatoire ◦ Correction"

Copied!
10
0
0

Texte intégral

(1)

Digital Electronics

Ann´ee acad´emique 2016-2017

Correction

Interrogation N 1 : Logique combinatoire

Pr: M.Kraft

Assistants: D.Cerica

Q.Massoz

T.Schmitz

(2)

Question 1 : Analyse combinatoire

QP

Q

HA S C Y

Z

MUX 4-1 S0 S1

F E0

E1 E2 E3 Y

Z X1

1 01

23 45 67 22

21 20

DEC 3-8

FA S C W W Y W W Y

HA S C A

X

K K

1

1 A+X

A+X AX

A+X

1

0

Y X+Y Ʃm(0,1,4,5,6,7)

Y C

C 0

W+W+Y=Y X

=OR

=OR 1 C

C QP QP

=NOT

Figure 1 – Annotations de l’analyse du circuit.

La sortie du circuit F correspond `a la sortie du MUX 4-1. Commen¸cons par calculer les bits de s´election S0 etS1 de ce multiplexeur. L’analyse du circuit est annot´ee en rouge sur la figure 1.

Calcul de S0 et S1

Les sorties duHA,SHA etCHA, sont donn´ees par SHA = A⊕X CHA = AX

Le bit de s´election S1 combine les sorties duHA via une porte OR S1 = A⊕X+AX

= AX+AX+AX

= X+A+AX

= A+X

Afin de trouverS0, analysons le mini-circuit `a 2 ´etages (encadr´e en vert sur la figure) com- pos´es de 2 portes XOR et d’une porte NXOR. Les portes XOR et NXOR du 1er ´etage ont les mˆemes entr´ees1 et renvoient donc en sortie2 respectivement K et K. La porte XOR du 2`eme

(3)

´

etage poss`edeK etK en entr´ee et renvoie donc toujours ”1” en sortie.

Le bit de s´election S0 est la sortie d’une porte OR S0 = 1 +S1

= 1

Testons les diff´erentes combinaisons des bits de s´election S0 = 1 et S1 =A+X S1.S0 = 0

S1.S0 = A.X S1.S0 = 0 S1.S0 = A+X

Les entr´eesE0 etE2 sont inutiles3 car elles n’interviennent pas dans l’expression de la sortie F. Seuls les calculs deE1 et E3 sont utiles. En effet,F est donn´e par

F = S1.S0.E0 +S1.S0.E1 +S1.S0.E2 +S1.S0.E3

= 0 +A.X.E1 + 0 + (A+X).E3 Calcul de E1

Les entr´ees duDEC 3-8 sontX (car 1⊕X=X =X),Y etZ, o`uX est le bit de poids fort et Z le bit de poids faible. Pour rappel, un d´ecodeur est un g´en´erateur de mintermes. Ici, les sorties sont compl´ement´ees !

Le bit d’entr´eeE1 peut ˆetre exprim´e comme une somme de mintermes E1 = P

m(0,1,4,5,6,7)

En effet, plusieurs transformations du circuit permettent d’obtenir une porte OR `a 6 entr´ees (= les 6 sorties/mintermes du DEC 3-8) :

— la porte XOR peut ˆetre remplac´ee par une porte NOT car 1⊕X =X

— une porte NAND dont les entr´ees sont compl´ement´ees est ´equivalent `a une porte OR car A.B =A+B

Ainsi, les 3 portes NAND (avec leurs entr´ees compl´ement´ees) peuvent ˆetre remplac´ees4 par 3 portes OR. Le sch´ema simplifi´e du circuit est visible `a la figure 2. Finalement, les 3 portes OR peuvent ˆetre combin´ees en une porte OR `a 6 entr´ees.

L’expression bool´eenne deE1 est obtenue via une table de Karnaugh (voir figure 3) E1 = X+Y

3. Pour info,E0 = 1 etE2 = 0

4. 2 transformations sur 3 sont encadr´ees en rouge sur la figure 1

(4)

Y Z

01 23 45 67 22

21 20

DEC 3-8 X

E1

Figure2 – Sch´ema simplifi´e duDEC 3-8.

1 1 1 1

1 1 X

Y

Z

E1=X+Y

Figure 3 – Table de Karnaugh du bit d’entr´eeE1.

Calcul de E3

Le bit d’entr´eeE3 est donn´e par la porte OR

E3 = CF A.CF A+SF A

= 0 +W ⊕W ⊕Y

= (W ⊕W)⊕Y

= 0⊕Y

= Y

Sortie du circuit F

La sortie duMUX 4-1,F, est donn´e par

F = A.X.E1 + (A+X).E3

= A.X.(X+Y) + (A+X).Y

= A.X.X+A.X.Y +A.Y +X.Y

= A.X.Y +A.Y +X.Y Sa table de v´erit´e est visible `a la table 1.

Impl´ementation de F avec un nombre minimum de portes NOR

Afin d’impl´ementer F avec un nombre minimum de portes NOR, F doit ˆetre exprim´e sous la forme d’un produit de somme optimal. A cette fin, nous utilisons la table de Karnaugh sur F (pour obtenir F = somme de produit optimal) suivi du th´eor`eme De Morgan (pour obtenir

(5)

A X Y F F mi

0 0 0 1 0 0

0 0 1 0 1 1

0 1 0 0 1 2

0 1 1 1 0 3

1 0 0 0 1 4

1 0 1 1 0 5

1 1 0 0 1 6

1 1 1 1 0 7

Table 1 – Table de v´erit´e de F etF.

Via la table de Karnaugh (voir figure 4), nous obtenons F = A.Y +X.Y +A.X.Y

1 1

1 A

X

Y

1 F=AY+XY+AXY

Figure4 – Table de Karnaugh de F.

L’application du th´eor`eme De Morgan permet d’obtenir l’expression deF sous forme d’une produit de somme

F = (A+Y).(X+Y).(A+X+Y)

Le double compl´ement de F, F, nous donne directement l’impl´ementation de F avec un nombre minimum de portes NOR (visible figure 5)

F = F

= (A+Y).(X+Y).(A+X+Y)

= (A+Y) + (X+Y) + (A+X+Y)

(6)

F A Y

X Y

A X Y

Figure5 – Impl´ementation de F avec un nombre minimum de portes NOR.

(7)

Question 2 : Synth` ese combinatoire

La solution pr´esent´ee ci-dessous n’est qu’une des diff´erentes solutions possibles.

Entr´ees (4 bits) CAV =

(1 si le capteur avant signale un choc 0 sinon

CAR=

(1 si le capteur arri`ere signale un choc 0 sinon

G1 G0 =









00 si le gyroscope ne d´etecte aucune acc´el´eration critique 01 si le gyroscope d´etecte une acc´el´eration critique selon x 10 si le gyroscope d´etecte une acc´el´eration critique selon y 11 si le gyroscope d´etecte une acc´el´eration critique selon z

Rq : Le gyroscope ne peut d´etecter une acc´el´eration que dans une dimension `a la fois. C’est pourquoi le signal renvoy´e par le gyroscope peut ˆetre cod´e sur 2 bits.

Sorties (2 bits)

S1 S0 =









00 si on ne gonfle aucun airbag 01 si on gonfle l’airbag avant 10 si on gonfle l’airbag arri`ere 11 si on gonfle les airbags lat´eraux

Rq1 : Les airbags lat´eraux r´epondent `a la mˆeme commande et sont vus tous les deux par le syst`eme comme un et un seul airbag.

Rq2 : On ne peut gonfler qu’un des 4 airbags `a la fois. C’est pourquoi cette commande peut ˆetre cod´ee sur 2 bits.

Lois de fonctionnement (´etape facultative) :

Rq : On consid`ere que les capteurs avant et arri`ere ne signaleront jamais de choc en mˆeme temps.

⇒ Si CAV CAR G1G0 =1 1XX −→ S1 S0 =XX

1) si le capteuravant(resp.arri`ere) se d´eclenche et que le gyroscope d´etecte une acc´el´eration selon x ou y, on gonfle l’airbagavant(resp. arri`ere) ;

⇒ Si CAV CAR G1G0 =1 0 0 1 ou 1 0 1 0 −→ S1 S0=0 1 Si CAV CAR G1G0 = 01 0 1 ou 0 11 0 −→ S1 S0 =1 0

(8)

2) si une acc´el´eration selonz est d´etect´ee, on ne gonflera aucun airbag ;

⇒ Si CAV CAR G1G0 = XX1 1 −→ S1 S0 =0 0

3) si seule une acc´el´eration selony est d´etect´ee, on gonflera les airbagslat´eraux;

⇒ Si CAV CAR G1G0 = 0 01 0 −→ S1 S0 =1 1 4) si seule une acc´el´eration selonx est d´etect´ee, on gonflera l’airbagavant;

⇒ Si CAV CAR G1G0 = 0 00 1 −→ S1 S0 =0 1 5) dans les autres cas, on ne gonfle pas d’airbag.

Si CAV CAR G1G0 = XX0 0 −→ S1 S0= 0 0

Table de v´erit´e

CAV CAR G1 G0 S1 S0 mi Ei(S0)

0 0 0 0 0 0 0

0 0 0 1 0 1 1 G1⊕G0

0 0 1 0 1 1 2

0 0 1 1 0 0 3

0 1 0 0 0 0 4

0 1 0 1 1 0 5 0

0 1 1 0 1 0 6

0 1 1 1 0 0 7

1 0 0 0 0 0 8

1 0 0 1 0 1 9 G1⊕G0

1 0 1 0 0 1 10

1 0 1 1 0 0 11

1 1 0 0 X X 12

1 1 0 1 X X 13 0

1 1 1 0 X X 14

1 1 1 1 X X 15

Table 2 – Table de v´erit´e relative `a la question de synth`ese

Equations simplifi´ees des sorties S1 S0 Par Karnaugh (voir figure 6), on obtient :

S1 =CAV G1 G0+CAR G1 G0

(9)

G

1

C

AV

1 X

S

1

= C

AV

G

1

G

0

+ C

AR

G

1

G

0

1

1

G

0

S

0

= C

AR

G

1

G

0

+ C

AR

G

1

G

0

1

C

AR

G

1

C

AV

G

0

C

AR

X

X

X X X X X

1

1 1

Figure6 – Tables de Karnaugh pour les sortiesS1 etS0 du syst`eme

Impl´ementation de la sortie S0 `a l’aide d’un multiplexeur 2-1

Vu la derni`ere colonne de la table de v´erit´e (et l’´equation simplifi´ee par Karnaugh), on peut impl´ementer la sortieS0 `a l’aide d’un multiplexeur 2-1 ayant pour entr´ee de s´election la variable CAR. Cette impl´ementation est illustr´ees `a la figure 7.

0 1

2

0

G

1

⊕G

0

0 S

0

Mux 2-1 0

1

C

AR

Figure 7 – Impl´ementation de la sortieS0 `a l’aide d’un multiplexeur

(10)

Question 3 : VHDL

R´epondez aux questions suivantes :

— Qu’est ce qu’une entit´e, qu’est ce qu’une architecture ?

— Une entit´e d´ecrit les entr´ees/sorties (contenant)

— Une architecture d´ecrit le comportement de l’entit´e (contenu)

— Qu’elle est la diff´erence entre un port de type buffer et un port de typeinout?

— Un buffer est une sortie dont on peut relire la valeur.

— Inout est un port qui peut ˆetre utilis´e comme une entr´ee ou comme une sortie.

— Compl´etez le code ci dessous pour que les 2 architectures soient identiques et repr´esentent la fonction O = A.B+C .

e n t i t y O f u n c t i o n i s p o r t (

O : o u t s t d l o g i c ; A : i n s t d l o g i c ; B : i n s t d l o g i c ; C : i n s t d l o g i c ) ;

end O f u n c t i o n ;

a r c h i t e c t u r e O f u n c t i o n a r c h 1 o f O f u n c t i o n i s s i g n a l X : s t d l o g i c ;

b e g i n

g a t e 0 : and2 p o r t map(A, B ,X ) ; g a t e 1 : o r 2 p o r t map(X, C,O ) ;

end a r c h i t e c t u r e O f u n c t i o n a r c h 1 ;

a r c h i t e c t u r e O f u n c t i o n a r c h 2 o f O f u n c t i o n i s b e g i n

O<= (A and B) o r C ;

end a r c h i t e c t u r e O f u n c t i o n a r c h 2 ;

Références

Documents relatifs

Dans le cas pr´ esent, la part du cuisinier serait de trois pi` eces, mais les pirates se querellent et six d’entre eux sont tu´ es, ce qui porte la part du cuisinier ` a quatre

Mesure produit et th´ eor` eme de Fubini.. 1

Une m´ ethode classique pour obtenir des r´ esultats sur une int´ egrale d´ ependant d’un param` etre est de sortir, par tous les moyens possibles, le param` etre de

On peut heureusement en construire un certain nombre en conjugant S : aSa −1 est un p−sous-groupe de G, car il est en bijection avec S (un oeil averti remarquera mˆ eme que c’est

C’est une consid´ eration qui d´ epend encore de la base, c’est ` a dire de la matrice de changement de base P , mais on peut la ramener ` a une consid´ eration ind´ ependante de

[r]

La deuxi` eme partie qui d´ emontre le th´ eor` eme de Cantor-Bernstein est facultative, moins dans l’esprit du programme ECS (mais bien dans l’esprit d’une ´ epreuve maths 2

Autrement dit, on consid` ere des tirages de p ´ el´ ements de E avec remise, mais sans tenir compte de l’ordre.. Le nombre de r´ esultats possible est