You are on page 1of 11

05.

562 • Fonaments de Computadors • PAC2 • 2012-13 • Estudis d’Informàtica Multimèdia i Telecomunicació

PAC2 - Segona prova d'avaluació continuada

Presentació
Després de conèixer els sistemes de representació de la informació, aquesta PAC es
focalitza en els circuits lògics combinacionals. Les funcions lògiques ens permeten
descriure la funcionalitat d’un circuit i mitjançant les portes lògiques i els blocs
combinacionals podem implementar-les en un circuit. Tot això, no es podria fer sense
saber mecanismes de minimització, com mapes de Karnaugh, que ens permeten
reduir les dimensions del circuit que s’ha d’implementar.

Competències
- Conèixer i saber aplicar l'àlgebra de Boole per a la manipulació de funcions lògiques.
- Tenir nocions tecnològiques dels circuits digitals i entendre la relació entre els circuits
digitals i les funcions lògiques.
- Conèixer i saber utilitzar les portes lògiques i els mòduls combinacionals en el
disseny de circuits lògics.

Objectius
-Saber aplicar les operacions bàsiques i els axiomes de l'àlgebra de Boole.
-Saber representar les funcions lògiques mitjançant Taules de veritat.
-Saber representar les funcions lògiques mitjançant expressions algebraiques.
-Saber analitzar un circuit combinacional.
-Saber realitzar un cronograma a partir d’un circuit digital combinacional.
-Saber sintetitzar una funció a dos nivells.
-Saber dissenyar un circuit combinacional senzill usant blocs combinacionals dels
materials.

Recursos
Els recursos que es recomana fer servir per aquesta PAC són els següents:
Bàsics: El mòdul 3 dels materials.
Complementaris: KeMap, VerilUOC, VerilChart i el Wiki de l'assignatura.

Criteris de valoració
 Raoneu la resposta en tots els exercicis. Les respostes sense justificació
no rebran puntuació.
 La valoració esta indicada en cadascun dels subapartats.

1 de 11
05.562 • Fonaments de Computadors • PAC2 • 2012-13 • Estudis d’Informàtica Multimèdia i Telecomunicació

Format i data de lliurament


 Per a dubtes i aclariments sobre l’enunciat, adreceu-vos al consultor responsable
de la vostra aula.
 Cal lliurar la solució en un fitxer PDF fent servir una de les plantilles lliurades
conjuntament amb aquest enunciat.
 S’ha de lliurar a través de l’aplicació de Lliurament i registre d’AC de l’apartat
Avaluació de la vostra aula.
 La data límit de lliurament és el 10 d´abril (a les 24 hores).

Descripció de la PAC a realitzar


Solució

Exercici 1 [25%]
Es vol dissenyar un circuit (NEG) que calculi l'oposat d'un nombre enter. El nombre a
l'entrada (E) es representa en Ca2 i en 4 bits. El nombre a la sortida (S) s'ha de
representar en signe i magnitud i en n bits (sn-1, sn-2, ..., s1, s0).

4 n
E NEG S

Es demana:

a) [5%] Quants bits ha de tenir S per poder representar correctament l'oposat del
nombre que hi hagi a l'entrada?
El rang de nombres enters en Ca2 que es pot representar amb 4 bits és [-8,7], això
fa que el rang de la sortida sigui [-7,8]. Per poder-ho representar en signe i
magnitud es necessiten 5 bits, n = 5.

b) [5%] Ompliu la taula de veritat següent que implementa la funcionalitat descrita en


aquest exercici. Poseu tantes columnes a la sortida si com bits hagueu contestat a
l'apartat anterior.

2 de 11
05.562 • Fonaments de Computadors • PAC2 • 2012-13 • Estudis d’Informàtica Multimèdia i Telecomunicació

e3 e2 e1 e0 si
0 0 0 0
0 0 0 1
0 0 1 0
0 0 1 1
0 1 0 0
0 1 0 1
0 1 1 0
0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 1

Per facilitar la implementació de la funcionalitat descrita, afegim a la taula dues


columnes més, on hi posem els valors decimals d’E i S.

e3 e2 e1 e0 E S s4 s3 s2 s1 s0
0 0 0 0 0 0 0 0 0 0 0
0 0 0 1 1 -1 1 0 0 0 1
0 0 1 0 2 -2 1 0 0 1 0
0 0 1 1 3 -3 1 0 0 1 1
0 1 0 0 4 -4 1 0 1 0 0
0 1 0 1 5 -5 1 0 1 0 1
0 1 1 0 6 -6 1 0 1 1 0
0 1 1 1 7 -7 1 0 1 1 1
1 0 0 0 -8 8 0 1 0 0 0
1 0 0 1 -7 7 0 0 1 1 1
1 0 1 0 -6 6 0 0 1 1 0
1 0 1 1 -5 5 0 0 1 0 1
1 1 0 0 -4 4 0 0 1 0 0
1 1 0 1 -3 3 0 0 0 1 1
1 1 1 0 -2 2 0 0 0 1 0
1 1 1 1 -1 1 0 0 0 0 1

c) [5%] Expresseu algebraicament la funció s1 com a suma de mintermes.


Ens fixem en la columna s1 i només seleccionem els mintermes amb valor 1:
s1(e3,e2,e1,e0) = e3’·e2’·e1·e0’ + e3’·e2’·e1·e0 + e3’·e2·e1·e0’ + e3’·e2·e1·e0 +
e3·e2’·e1’·e0 + e3·e2’·e1·e0’ + e3·e2·e1’·e0 + e3·e2·e1·e0’

3 de 11
05.562 • Fonaments de Computadors • PAC2 • 2012-13 • Estudis d’Informàtica Multimèdia i Telecomunicació

d) [5%] Realitzeu un circuit que calculi s1 utilitzant només un MUX de 4 entrades de


control.
NOTA: Teniu disponible aquest exercici dins de VerilUOC.
Per implementar la funció s1 amb un multiplexor amb 4 entrades de control (tantes
com variables té la funció), connectem a les entrades de control del multiplexor les
4 variables, i a les 16 entrades de dades el valor que pren la funció per a cada
combinació de les entrades.
0 -
0
1
1
0
0
1
1
0 s1
1
1
0
0
1
1
0 + + -

e3 e 2 e 1 e 0

e) [5%] Realitzeu un circuit que calculi s1 utilitzant un MUX de 3 entrades de control i


les portes que considereu necessàries.
NOTA: Teniu disponible aquest exercici dins de VerilUOC. En aquest cas, VerilUOC
també accepta la solució de l’exercici anterior, ja que l’eina comprova si els circuits
són funcionalment equivalents. No s’acceptarà com a solució correcta un circuit
amb un MUX de més de 3 entrades.

Si ens fixem en la taula de veritat veiem que la sortida s1 només depèn de les
entrades e3, e1 i e0. També es pot veure que sols depèn d’aquestes entrades si
obtenim l’expressió mínima mitjançant Karnaugh. Per tant connectem a les entrades
de control del multiplexor aquestes 3 variables i a les 8 entrades de dades el valor
que la funció pren per a cada combinació d’aquestes 3 variables. No cal cap porta
addicional.

0 -
0
1
1
s1
0
1
1
0 +

+ -

e3 e 1 e 0

4 de 11
05.562 • Fonaments de Computadors • PAC2 • 2012-13 • Estudis d’Informàtica Multimèdia i Telecomunicació

Exercici 2 [20%]
a) [7%] Donada la taula de veritat següent, escriviu l’expressió algebraica mínima a
dos nivells de la funció f, calculant-la mitjançant el mètode de Karnaugh:

x y z w f
0 0 0 0 1
0 0 0 1 1
0 0 1 0 1
0 0 1 1 1
0 1 0 0 0
0 1 0 1 1
0 1 1 0 0
0 1 1 1 1
1 0 0 0 1
1 0 0 1 0
1 0 1 0 1
1 0 1 1 0
1 1 0 0 1
1 1 0 1 0
1 1 1 0 0
1 1 1 1 1

NOTA: Teniu disponible l’exercici a KeMAP per verificar-lo. Per evitar un mal ús de
l’eina, en cas que es realitzin més de 10 intens, la nota de l’exercici es reduirà al
50%. Us recomanem fer proves amb KeMAP amb altres exercicis abans de fer el
de la PAC.

El mapa de Karnaugh per a la funció f és el següent:

xy
00 01 11 10
zw
00 1 0 1 1

01 1 1 0 0

11 1 1 1 0

10 1 0 0 1

I obtenim la següent expressió mínima: f = x’ · w + x · z’ · w’ + y · z · w + y’ · w’

5 de 11
05.562 • Fonaments de Computadors • PAC2 • 2012-13 • Estudis d’Informàtica Multimèdia i Telecomunicació

b) [13%] Donada la taula de veritat següent, sintetitzeu de manera mínima a dos


nivells la funció g mitjançant el mètode de Karnaugh, i implementeu el resultat amb
portes lògiques:

x y z w g
0 0 0 0 0
0 0 0 1 1
0 0 1 0 1
0 0 1 1 1
0 1 0 0 X
0 1 0 1 1
0 1 1 0 0
0 1 1 1 X
1 0 0 0 0
1 0 0 1 0
1 0 1 0 1
1 0 1 1 0
1 1 0 0 0
1 1 0 1 X
1 1 1 0 X
1 1 1 1 1

NOTA: Teniu disponible l’exercici a VerilUOC i a KeMAP per verificar-lo. Respecte


a KeMAP, per evitar un mal ús de l’eina, en cas que es realitzin més de 10 intens,
la nota de l’exercici es reduirà al 50%. Us recomanem fer proves amb KeMAP amb
altres exercicis abans de fer el de la PAC.

El mapa de Karnaugh per a la funció g és el següent:

xy
00 01 11 10
zw
00 0 X 0 0

01 1 1 X 0

11 1 X 1 0

10 1 0 X 1

I obtenim la següent expressió mínima: g = x’ · w + y · w + y’ · z · w’

6 de 11
05.562 • Fonaments de Computadors • PAC2 • 2012-13 • Estudis d’Informàtica Multimèdia i Telecomunicació

Aquesta funció l’implementem amb el següent circuit:

Exercici 3 [25%]
Donat el circuit lògic combinacional següent:

@+ M out
ROM1
s0
@-
s1 e1
s2
+ e2
3 s3 2
E e1 S
s4
- e0
s5
s6
@+ M out e0
s7
ROM2 c
1 @-

on el contingut de les memòries ROM és:

@ ROM1[@] ROM2[@]
0 10 10
1 11 10
2 01 11
3 00 00

Es demana:

a) [20%] Ompliu la taula de veritat següent que especifica la sortida S en funció de


l'entrada E, calculant prèviament els valors intermedis ja indicats a la taula (entrada
ROM1, sortida ROM1, entrada ROM2, sortida ROM2, entrada de control MUX).

7 de 11
05.562 • Fonaments de Computadors • PAC2 • 2012-13 • Estudis d’Informàtica Multimèdia i Telecomunicació

E Ent.ROM1 Sort.ROM1 Ent.ROM2 Sort.ROM2 Ent.Cont. S


e2 e1 e0 + - + - + - + - Mux s1 s0
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1

Per facilitar el càlcul de l’entrada de control al multiplexor, afegim a la taula dues


columnes addicionals, a una hi posem la sortida de la porta XOR i a l’altra la sortida
de la porta NOR.

E Sort. Sort. Ent.ROM1 Sort.ROM1 Ent.ROM2 Sort.ROM2 Ent.Cont. S


e2 e1 e0 XOR NOR + - + - + - + - Mux s1 s0
0 0 0 0 1 1 1 0 0 0 1 1 0 0 1 0
0 0 1 0 1 0 0 1 0 0 1 1 0 0 1 0
0 1 0 1 1 0 1 1 1 0 1 1 0 1 1 1
0 1 1 1 1 0 1 1 1 0 1 1 0 1 1 1
1 0 0 0 0 0 1 1 1 0 1 1 0 0 1 0
1 0 1 0 0 0 1 1 1 0 1 1 0 0 1 0
1 1 0 0 1 0 1 1 1 1 1 0 0 0 0 0
1 1 1 0 1 0 1 1 1 1 1 0 0 0 0 0

b) [5%] Completeu el cronograma següent a partir del comportament que té l'esmentat


circuit lògic.

8 de 11
05.562 • Fonaments de Computadors • PAC2 • 2012-13 • Estudis d’Informàtica Multimèdia i Telecomunicació

En un circuit combinacional les sortides només depenen de les entrades. Per tant
mirem a la taula de veritat els valors de s1 i s0 pels diferents valors que agafen les
entrades al cronograma.

Exercici 4 [30%]
Dissenyeu un circuit lògic F que disposa d'una entrada E de 8 bits, que representa un
nombre natural, i calcula a la sortida S, també un nombre natural, la següent funció:

8 ?
E F S

S = F(E) = 9*E si E>=13


S = F(E) = 7*E si E<13

Indiqueu clarament la mida dels busos que useu en el disseny. Es valorarà que
minimitzeu el nombre de blocs i portes usats.
NOTA: Teniu disponible l’exercici a VerilUOC.

Per escollir la sortida S ho fem amb un multiplexor d’una entrada de control a la qual hi
connectem la sortida d’un comparador on hem comparat l’entrada E amb la constant
13. Les entrades de dades són les demanades a l’enunciat, 7*E i 9*E, amb busos de
12 bits, ja que el rang de 9*E és [0..2295] (2295 = 255 * 9).
Per augmentar la mida d’un bus ho fem agregant-li bits a 0 per l’esquerra.

9 de 11
05.562 • Fonaments de Computadors • PAC2 • 2012-13 • Estudis d’Informàtica Multimèdia i Telecomunicació

Encara que no tenim disponible cap bloc específic per multiplicar per qualsevol
nombre, podem multiplicar per potències de 2, ja sigui agregant bits a 0 per la dreta o
usant decaladors a l’esquerra.
Per tant, per obtenir 9*E fem 8*E + E, decalant E tres bits a l’esquerra o agregant-li 3
bits a 0 per la dreta i a continuació sumant-li E. De forma similar, per fer 7*E, fem 8*E -
E. Per fer la resta ho fem sumant el complement a dos d’ E, usant un bloc NOT i
sumant-li 1 (entrada Cin del sumador a 1).
A continuació podem veure dos dissenys diferents del bloc F amb VerilUOC:
1-Augmentem la mida dels bus a 12 bits abans de fer els càlculs. Per calcular 8*E
usem un decalador

10 de 11
05.562 • Fonaments de Computadors • PAC2 • 2012-13 • Estudis d’Informàtica Multimèdia i Telecomunicació

2- Per multiplicar per 8, agreguem a E 3 bits a 0 per la dreta, a continuació operem


amb 11 bits i finalment agreguem un bit per l’esquerra. En el cas de la suma li
agreguem la sortida Cout del sumador i en cas de resta com que són nombres naturals
i el subtrahend (E) és més petit que el minuend (8*E) li agregem un 0.

11 de 11

You might also like