SDigitalesPEC1 ABB

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 7

lOMoARcPSD|5921113

PRIMERA ACTIVIDAD EVALUABLE

1: Asignatura: FUNDAMENTOS de SISTEMAS DIGITALES

2: Título de la Actividad:
Diseño, Implementación, Simulación y Validación de un Circuito en Lógica Combinacional

3: Datos personales:
- Nombre y Apellidos: Carmen Sofía Morillo Arellan
- DNI: Y7468073X
- Centro asociado: Los Llanos de Aridane, La Palma

4: Código de la actividad que le ha correspondido realizar: A-E-1-073.doc

5: Enunciado.

Enunciado

Disponemos de tres señales P2, P1 y P0 con las que queremos controlar el funcionamiento de una
Unidad Aritmético Lógica, pero la programación de la ALU no depende directamente de estas
señales sino de la prioridad de estas señales. Así, el criterio de prioridad de las señales es
P1>P0>P2 y las operaciones de las palabras de 4 bits que debe realizar la ALU son las siguientes:
a) Si la prioridad es de la señal P2, la operación que debe realizar es la operación aritmética sin
acarreo A PLUS B.

b) Si la prioridad es de la señal P1 entonces debe realizar la operación lógica AB .


c) Si la prioridad es de P0 entonces debe hacer la operación aritmética con arrastre
(A+B) PLUS 1.
d) Si las señales son todas cero (ninguna es prioritaria) entonces la ALU debe ponerse a 1.

Diseñe el circuito codificador con prioridad y úselo para controlar las operaciones de la ALU que se
han especificado.

SOLUCIÓN:

6: Diseño de los distintos bloques funcionales (para cada uno de los bloques debe presentar:
la tabla de verdad teórica, las expresiones lógicas de las variables de salidas y explicar el
diseño realizado).

7: Implementación de cada uno de los bloques funcionales en el simulador (para cada


uno de los bloques debe presentar: el esquema, el cronograma resultante y la verificación
de que su funcionamiento es el deseado).

1
lOMoARcPSD|5921113

Morillo Arellan, Carmen Sofía


Y7468073X

8: Descripción de los parámetros usados en la implementación final de cada bloque (debe


presentar los tiempos de los generadores de pulsos que ha usado para probar cada uno de los
circuitos).

9: Implementación del circuito completo en el simulador (debe unir todos los bloques y
presentar: el esquema, el cronograma resultante y la verificación de que la ALU realiza
las operaciones pedidas de acuerdo con las condiciones de control).

Para la verificación debe usar las palabras:


P (P2P1P0) = (101), (011), (001), (000)
Y como datos sobre los que opera la ALU, las palabras:
A (A3A2A1A0) = (1011)
B (B3B2B1B0) = (0110)
10: Comentarios: Explique los problemas/dificultades encontrados y la forma y
procedimiento por el que los ha resuelto.

*******
Como indica el enunciado, la ALU depende de la prioridad de las señales P0, P1 y P2, dispuestas
de la siguiente manera: P1>P0>P2. Para el diseño del codificador de prioridades tenemos las
entradas P0, P1 y P2 y 8 posibles salidas, representadas por Y0 y Y1 que indicarán la operación a
realizar por la ALU.
P0 P1 P2 Y0 Y1 Operación de la ALU
0 0 0 0 0 1
0 0 1 0 1 A PLUS B (sin acarreo)
0 1 0 1 1 NOT(AB)
0 1 1 1 1 NOT(AB)
1 0 0 1 0 (A+B) PLUS 1 (con arrastre)
1 0 1 1 0 (A+B) PLUS 1 (con arrastre)
1 1 0 1 1 NOT(AB)
1 1 1 1 1 NOT(AB)

A través de dos diagramas de Karnaugh de tres variables podemos construir las fórmulas
mínimas de Y0 y Y1:
𝑌0 = 𝑃0 + 𝑃1
𝑌1 = 𝑃0 + 𝑃̅1 ⋅ 𝑃2

2
lOMoARcPSD|5921113

Morillo Arellan, Carmen Sofía


Y7468073X

Lo que nos permitirá realizar el siguiente diseño:

Utilizamos un Digclock para cada señal con diferentes tiempos que se pueden observar en la
imagen del diseño del circuito en OrCAD y para poder ver todas las posibles combinaciones
corremos la simulación por 8.0us. Cuando las señales están en alta diremos que representan el valor
1 y cuando están en baja representan el valor 0.

P0 P1 P2 Y0 Y1 Time [us]
0 0 0 0 0 0-1
0 0 1 0 1 1-2
0 1 0 1 1 2-3
0 1 1 1 1 3-4
1 0 0 1 0 4-5
1 0 1 1 0 5-6
1 1 0 1 1 6-7
1 1 1 1 1 7-8

El cronograma resultante coincide con la tabla de verdad teórica antes realizada.

Ahora debemos poner las entradas de control de la ALU en función de Y0 y Y1 que representan
nuestro codificador de prioridad. Para esto realizamos un diagrama de Karnaugh de 2 variables para
3
lOMoARcPSD|5921113

Morillo Arellan, Carmen Sofía


Y7468073X

cada entrada, tomando como referencia la siguiente tabla de verdad:

Y0 Y1 S3 S2 S1 S0 M CN1 Operación de la ALU


0 0 1 1 0 0 1 X 1
0 1 1 0 0 1 0 1 A PLUS B (sin acarreo)
1 1 0 1 0 0 1 X NOT(AB)
1 1 0 1 0 0 1 X NOT(AB)
1 0 0 0 0 1 0 0 (A+B) PLUS 1 (con arrastre)
1 0 0 0 0 1 0 0 (A+B) PLUS 1 (con arrastre)
1 1 0 1 0 0 1 X NOT(AB)
1 1 0 1 0 0 1 X NOT(AB)

Las X en CN1 representan que no importa si CN1 está en alta o en baja porque se realizara una
operación lógica.

Como S1 está siempre en baja, utilizaremos un power LO, el resto de las entradas en función de Y0
y Y1 son:

𝑆3 = 𝑌̅0
𝑆2 = 𝑌̅0 𝑌̅1 + 𝑌0 𝑌1
𝑆1 = 0
𝑆0 = 𝑌0 ⊕ 𝑌1
𝑀 = 𝑌̅0 𝑌̅1 + 𝑌0 𝑌1
𝐶𝑁1 = 𝑌0 + 𝑌1

Lo que nos permite realizar el siguiente diseño:

4
lOMoARcPSD|5921113

Morillo Arellan, Carmen Sofía


Y7468073X

En el cronograma podemos ver Y0, Y1, S0, S2, S3 y CN1 porque M=S2 y S1=0 y por lo tanto no
aparecen en el cronograma. Recordando que cuando las señales están en alta representan 1 y en
baja representan 0, tenemos la siguiente interpretación:

Y0 Y1 S3 S2 S0 CN1 Time [us]


0 0 1 1 0 1 0-1
0 1 1 0 1 1 1-2
1 1 0 1 0 1 2-3
1 1 0 1 0 1 3-4
1 0 0 0 1 0 4-5
1 0 0 0 1 0 5-6
1 1 0 1 0 1 6-7
1 1 0 1 0 1 7-8

Podemos comprobar que la interpretación del cronograma coincide con la tabla de verdad teórica.

Teniendo las señales de entrada y control, podemos conectar al circuito la ALU 74181. Como nos
indica el enunciado, para verificar su buen funcionamiento usaremos las palabras A (A3A2A1A0) =
(1011) y B (B3B2B1B0) = (0110), por lo cual en el diseño pondremos los bits menos significativos
con un power LO y para A3 usaremos el digclock DSTM3, para A1 usaremos el digclock DSTM2,
para A0 usaremos el digclock DSTM1, para B2 usaremos el digclock DSTM5 y para el B1 usaremos
el digclock DSTM4, todos ellos con un offtime de 0.5us y un ontime de 0.5us.

El enunciado también nos pide que verifiquemos para las palabras P (P2P1P0) = (101), (011), (001),
(000), por lo cual seguiremos utilizando 8us como tiempo de simulación para asegurarnos de poder
ver las interpretaciones requeridas.

5
lOMoARcPSD|5921113

Morillo Arellan, Carmen Sofía


Y7468073X

La palabra P (P2P1P0) = (101) da las señales a la ALU que permite realizar la operación (A+B)
PLUS 1 con arrastre. Tenemos la siguiente tabla de verdad teórica, recordando que cuando
tenemos un acarreo CN+4 se pone en baja:

P2 P1 P0 A3 A2 A1 A0 B3 B2 B1 B0 F3 F2 F1 F0 CN+4
1 0 1 1 0 1 1 0 1 1 0 0 0 0 0 0

Si observamos el cronograma en la parte que va de 5.5us a 6.0us, observamos que la palabra de


salida tiene todos sus bits en baja, hasta el acarreo, confirmando que tiene uno. Esto coincide con la
tabla de verdad.

La palabra P (P2P1P0) = (011) da las señales a la ALU que permite realizar la operación NOT(AB).
Tenemos la siguiente tabla de verdad teórica:

6
lOMoARcPSD|5921113

Morillo Arellan, Carmen Sofía


Y7468073X

P2 P1 P0 A3 A2 A1 A0 B3 B2 B1 B0 F3 F2 F1 F0 CN+4
0 1 1 1 0 1 1 0 1 1 0 1 1 0 1X

Si observamos el cronograma de 6.5 us a 7us podemos observar que para dichas palabras
F3=H, F2=H, F1=L, F0=H (Despreciamos el valor de CN+4 porque es una operación lógica) y esto
coincide con la tabla de verdad.

La palabra P (P2P1P0) = (001) da las señales a la ALU que permite realizar la operación (A+B)
PLUS 1 con arrastre. Tenemos la siguiente tabla de verdad:

P2 P1 P0 A3 A2 A1 A0 B3 B2 B1 B0 F3 F2 F1 F0 CN+4
0 0 1 1 0 1 1 0 1 1 0 0 0 0 0 0

En el cronograma podemos encontrar dicha interpretación de 4.5us a 5us, donde volvemos a tener
la palabra F de salida en baja y su acarreo también en baja, lo que es de esperarse porque la ALU
vuelve a hacer la operación de la palabra P (P2P1P0) = (101).

La palabra P (P2P1P0) = (000) da las señales a la ALU que permite ponerla a 1. Tenemos la
siguiente tabla de verdad teórica:

P2 P1 P0 A3 A2 A1 A0 B3 B2 B1 B0 F3 F2 F1 F0 CN+4
0 0 0 1 0 1 1 0 1 1 0 1 1 1 1X

Si observamos el cronograma de 0.5us a 1us podemos observar como la palabra de salida está toda
en alta, sin contar el acarreo ya que es una operación lógica, lo que coincide con la operación
requerida por la ALU.

Como extra, para verificar que la ALU esté realizando todas las operaciones que se nos indican en
el enunciado correctamente, tomaremos la palabra P (P2P1P0) = (100) da las señales a la ALU que
permite realizar la operación A PLUS B sin acarreo. Tenemos la siguiente tabla de verdad teórica:

P2 P1 P0 A3 A2 A1 A0 B3 B2 B1 B0 F3 F2 F1 F0 CN+4
1 0 0 1 0 1 1 0 1 1 0 0 0 0 1X

De 1.5us a 2us en el cronograma podemos observar que para dichas palabras F3=L, F2=L, F1=L,
F0=H (Despreciamos el valor de CN+4 porque la operación es sin acarreo) y esto coincide con la
tabla de verdad.

Pasar de la teoría a la práctica represento una dificultad que gracias a las clases en vivo en el canal
de youtube pude solventar. Otra dificultad fue la correcta interpretación del cronograma, saber cuál
era la señal de salida correcta a interpretar, problema que pude resolver buscando un manual de
usuarios del programa.

También podría gustarte