Sei sulla pagina 1di 29

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: FERNANDO PITA ALBIAC
- DNI: 12323898 S
- Centro asociado: CENTRO ASOCIADO DE PALENCIA

4: Código de la actividad que le ha correspondido realizar: A-E-1-098.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
P2>P0>P1 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 A Å B .
c) Si la prioridad es de P0 debe hacer la operación aritmética con arrastre A MINUS B.
d) Por último, si las señales son todas cero y ninguna es prioritaria entonces la ALU debe
ponerse a 1.

Diseñe el circuito del codificador 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).
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI: 12323898S

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


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

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 PSpice (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.

*******

2
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

6.- DISEÑO DE LOS DISTINTOS BLOQUES FUNCIONALES

6.1.- Diseño propuesto

Se procede al diseño de un circuito compuesto por los siguientes tres bloques funcionales
diferenciados:

 Bloque de prioridad, cuyo objetivo será transformar las señales P2, P1 y P0, de acuerdo con las
prioridades indicadas en el enunciado, en señales y1 e y0, con las que en el siguiente bloque
obtendremos las señales de entrada en la ALU.

 Bloque generador de señales ALU, el cual, en base a la lectura de las señales y1 e y0, generará las
señales de entrada en la ALU seleccionada.

 Unidad lógica (ALU), la cual deberá satisfacer las operaciones lógicas y aritméticas recogidas en el
enunciado.

La decisión de diferenciar un bloque de prioridad, del bloque generador de señales ALU obedece a
razones exclusivamente didácticas, no obstante, en situaciones reales ambos bloques podrían condensarse
generando un modelo con menor coste económico y con menor incidencia de los retardos.

6.2.- Primer bloque funcional: Bloque de prioridad

6.2.1.- Requerimientos de prioridad derivados del enunciado:

Señales de salida del


Prioridades del enunciado
bloque de prioridad
Prioridad
dominante P2 P1 P0 y1 y0
P2>P0>P1
P2 1 X X 1 1
P1 0 1 0 1 0
P0 0 X 1 0 1
Sin prioridad 0 0 0 0 0

6.2.2.- Tabla de la verdad completa:

Señales de salida del


Prioridades del enunciado
bloque de prioridad

Prioridad P2 P1 P0 y1 y0

Sin prioridad 0 0 0 0 0
P0 0 0 1 0 1
P1 0 1 0 1 0
P0 0 1 1 0 1
P2 1 0 0 1 1
P2 1 0 1 1 1
P2 1 1 0 1 1
P2 1 1 1 1 1
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

6.2.3.- Expresiones canónicas minterms de las funciones resultantes:

Función y1

P2 P1 P0 y1
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 0
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1

𝑦1 = 𝑃2 𝑃1 𝑃0 + 𝑃2 𝑃1 𝑃0 + 𝑃2 𝑃1 𝑃0 + 𝑃2 𝑃1 𝑃0 + 𝑃2 𝑃1 𝑃0

𝑦1 = 𝑚2 + 𝑚4 + 𝑚5 + 𝑚6 + 𝑚7 = 𝑚 (2,4,5,6,7)

Función y0

P2 P1 P0 y0
0 0 0 0
0 0 1 1
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1

𝑦0 = 𝑃2 𝑃1 𝑃0 + 𝑃2 𝑃1 𝑃0 + 𝑃2 𝑃1 𝑃0 + 𝑃2 𝑃1 𝑃0 + 𝑃2 𝑃1 𝑃0 + 𝑃2 𝑃1 𝑃0

𝑦0 = 𝑚1 + 𝑚3 + 𝑚4 + 𝑚5 + 𝑚6 + 𝑚7 = 𝑚 (1,3,4,5,6,7)

2
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

6.2.4.- Minimización mediante el uso de tablas de Karnaugh:

Función y1

P1P0

P2 00 01 11 10

0 1

1 1 1 1 1

𝑦1 = 𝑃2 + 𝑃1 𝑃0

Función y0

P1P0

P2 00 01 11 10

0 1 1

1 1 1 1 1

𝑦0 = 𝑃2 + 𝑃0

6.2.5.- Resumen de funciones obtenidas:

𝑦1 = 𝑃2 + 𝑃1 𝑃0

𝑦0 = 𝑃2 + 𝑃0

3
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

6.3.- Segundo bloque funcional: Bloque generador de señales ALU

6.3.1.- Objetivo: Transformar las señales de prioridad y1, y0, en las señales de entrada de la ALU (S3, S2,
S1, S0, M y Cn).

6.3.2.- Unidad lógica escogida para el ejercicio: ALU 74181 (dato activo en alta), con la hoja de
características siguiente.

4
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

6.3.3.- Relación de prioridades:

a.- PRIORIDAD P2: 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.

De acuerdo con dicha tabla, las señales de entrada de la ALU serán:

S3 S2 S1 SO M Cn
1 0 0 1 0 1

5
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

b.- PRIORIDAD P1: Si la prioridad es de la señal P1 entonces debe realizar la operación lógica A Å B.

De acuerdo con dicha tabla, las señales de entrada de la ALU serán:

S3 S2 S1 SO M Cn
1 0 0 1 1 X

6
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

c.- PRIORIDAD P0: Si la prioridad es de P0 debe hacer la operación aritmética con arrastre A MINUS B.

De acuerdo con dicha tabla, las señales de entrada de la ALU serán:

S3 S2 S1 SO M Cn
0 1 1 0 0 0

7
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

d.- SIN PRIORIDAD: Si las señales son todas cero y ninguna es prioritaria entonces la ALU debe ponerse a
1.

De acuerdo con dicha tabla, las señales de entrada de la ALU serán:

S3 S2 S1 SO M Cn
1 1 0 0 1 X

8
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

e.- Resumen de señales de entrada de la ALU

Señales de salida del


Señales de salida del bloque generador de señales de la ALU
Prioridad Operación bloque de prioridad
y1 y0 S3 S2 S1 S0 M Cn
Sin prioridad Lógica 1 0 0 1 1 0 0 1 X
P0 Aritmética Con acarreo A MINUS B 0 1 0 1 1 0 0 0
P1 Lógica A XNOR B 1 0 1 0 0 1 1 X
P2 Aritmética Sin acarreo A PLUS B 1 1 1 0 0 1 0 1

Seguidamente se determinarán los parámetros de cada función definitoria de cada una de las señales de salida del bloque generador de señales ALU.
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

6.3.4.- Expresiones lógicas de cada señal de entrada de la ALU.

a.- Para S3:

Tabla de verdad

y1 y0 S3
0 0 1
0 1 0
1 0 1
1 1 1

𝑆3 = 𝑦1 𝑦0 + 𝑦1 𝑦0 + 𝑦1 𝑦0

𝑆3 = 𝑦1 (𝑦0 + 𝑦0) + 𝑦1 𝑦0

𝑆3 = 𝑦1 + 𝑦1 𝑦0

𝑆3 = 𝑦1 + 𝑦0

b.- Para S2:

Tabla de verdad

y1 y0 S2
0 0 1
0 1 1
1 0 0
1 1 0

𝑆2 = 𝑦1 𝑦0 + 𝑦1 𝑦0

𝑆2 = 𝑦1 (𝑦0 + 𝑦0)

𝑆2 = 𝑦1

c.- Para S1:

Tabla de verdad

y1 y0 S1
0 0 0
0 1 1
1 0 0
1 1 0

𝑆1 = 𝑦1 𝑦0
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

d.- Para S0:

Tabla de verdad

y1 y0 S0
0 0 0
0 1 0
1 0 1
1 1 1

𝑆0 = 𝑦1 𝑦0 + 𝑦1 𝑦0

𝑆0 = 𝑦1 (𝑦0 + 𝑦0)

𝑆0 = 𝑦1

e.- Para M:

Tabla de verdad

y1 y0 M
0 0 1
0 1 0
1 0 1
1 1 0

𝑀 = 𝑦1 𝑦0 + 𝑦1 𝑦0

𝑀 = (𝑦1 + 𝑦1) 𝑦0

𝑀 = 𝑦0

11
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

f.- Para Cn:

Tabla de verdad

y1 y0 Cn
0 0 X
0 1 0
1 0 X
1 1 1

Diagrama de Karnaugh

y0
y1 0 1
0 X 0
1 X 1

Para obtener una mayor simplificación, he transformado en equivalente a “1” a uno de los valores
“X” (indiferentes), de esta manera obtengo la función:

𝐶𝑛 = 𝑦1

g.- Resumen de funciones:

𝑆3 = 𝑦1 + 𝑦0

𝑆2 = 𝑦1

𝑆1 = 𝑦1 𝑦0

𝑆0 = 𝑦1

𝑀 = 𝑦0

𝐶𝑛 = 𝑦1

12
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

6.4.- Tercer bloque funcional: ALU

6.4.1.- El tercer bloque lo constituye la unidad lógica, antes señalada, ALU 74181 (dato activo en alta), con
la hoja de características que ya ha sido mostrada.

6.4.2.- Palabras procesada por la ALU: La ALU puede procesar dos palabras de cuatro bit A (A3 A2 A1 A0)
y B (B3 B2 B1 B0).

6.4.3.- Señales de entrada de la ALU

a) Selection: S3, S2, S1 y S0

b) Variable de control de modo de funcionamiento: M

c) Arrastre o carry: Cn

6.3.4.- Señales de salida de la ALU

a) Salidas en F, una palabra de 4 bits (F3 F2 F1 F0).

b) Acarreo: CN+4

13
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

7.- IMPLEMENTACIÓN DE CADA UNO DE LOS BLO QUES FUNCIONALES EN EL SIMULADOR


PSpice

7.1.- Implementación del bloque de prioridad

7.1.1.- Esquema:

7.1.2.- Puertas empleadas:

Número Función Código


1 NOT 7404
1 AND 7408
2 OR 7432

7.1.3.- Cronograma resultante:

14
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

7.1.4.- Verificación del funcionamiento:


Tabla teórica de verdad

Prioridad
P2 P1 P0 y1 y0
dominante
Sin prioridad 0 0 0 0 0
P0 0 0 1 0 1
P1 0 1 0 1 0
P0 0 1 1 0 1
P2 1 0 0 1 1
P2 1 0 1 1 1
P2 1 1 0 1 1
P2 1 1 1 1 1

Lecturas coincidentes obtenidas del cronograma

Resultado de la verificación

Satisfactorio.

15
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

7.2.- Implementación del bloque generador de señales ALU

7.2.1.- Esquema:

7.2.2.- Puertas empleadas:

Número Función Código


2 NOT 7404
1 AND 7408
1 OR 7432

7.2.3.- Cronograma resultante:

16
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

7.2.4.- Verificación del funcionamiento:


Tabla teórica de verdad

Señales de
Señales de salida del bloque
Prioridad entrada del Tipo de operación
(señales de entrada en la ALU)
bloque
y1 y0 S3 S2 S1 S0 M Cn
P2 1 1 Aritmética Sin acarreo A PLUS B 1 0 0 1 0 1
P1 1 0 Lógica A XNOR B 1 0 0 1 1 X
P0 0 1 Aritmética Con acarreo A MINUS B 0 1 1 0 0 0
SP 0 0 Lógica 1 1 1 0 0 1 X

Lecturas coincidentes obtenidas del cronograma

Resultado de la verificación

Satisfactorio.

17
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

7.3.- Implementación de la ALU

7.3.1.- Esquema:

7.3.2.- Unidad lógica empleada: ALU 74181

7.3.3.- Cronograma resultante:

18
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

7.3.4.- Verificación del funcionamiento:

Tabla teórica de verdad

SEÑALES DE ENTRADA DE LA ALU SEÑALES DE SALIDA DE LA ALU


PRIORIDAD S3 S2 S1 S0 M Cn F3 F3 F1 F0 CN+4
P2 1 0 0 1 0 1 0 0 0 1 X
P1 1 0 0 1 1 X 0 0 1 0 X
P0 0 1 1 0 0 0 0 1 0 1 0
SP 1 1 0 0 1 X 1 1 1 1 X

Lecturas coincidentes obtenidas del cronograma

Resultado de la verificación

Satisfactorio.

19
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

8.- DESCRIPCIÓN DE LOS PARÁMETROS USADOS EN LA IMPLEMENTACIÓN FINAL DE CADA


BLOQUE

8.1.- Primer bloque funcional: Bloque de prioridad

Tiempos generadores de pulsos usados en la prueba


DigClock P2-Ck P1-Ck P1-Ck
On time 4 ms 2 ms 1 ms
Off time 4 ms 2 ms 1 ms

Parámetros Análisis Setup – Transient


Print Step 0 ms
Final Time 8 ms

8.2.- Segundo bloque funcional: Bloque generador de señales ALU

Tiempos generadores de pulsos usados en la prueba


DigClock y1-Ck y0-Ck
On time 4 ms 2 ms
Off time 4 ms 2 ms

Parámetros Análisis Setup – Transient


Print Step 0 ms
Final Time 8 ms

8.3.- Tercer bloque funcional: ALU

Tiempos generadores de pulsos usados en la prueba


DigClock S3-Ck S2-Ck S1-Ck S0-Ck M-Ck Cn-Ck
On time 32 ms 16 ms 8 ms 4 ms 2 ms 1 ms
Off time 32 ms 16 ms 8 ms 4 ms 2 ms 1 ms

Parámetros Análisis Setup – Transient


Print Step 0 ms
Final Time 64 ms

20
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

9.- IMPLEMENTACIÓN DEL CIRCUITO COMPLETO EN EL SIMULADOR PSpice

9.1.- Esquema

9.2.- Parámetros de verificación

9.2.1.- Prioridades de verificación:

P (P2 P1 P0) = (1 0 1), (0 1 1), (0 0 1), (0 0 0)

- Prioridad P2: (1 0 1)

- Prioridad P0: (0 1 1) y (0 0 1)

- Sin prioridad: (0 0 0)

9.2.2.- Palabras sobre las que opera la ALU:

A (A3 A2 A1 A0) = (1 0 1 1)

B (B3 B2 B1 B0) = (0 1 1 0)

21
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

9.2.3.- Parámetros empleados en la verificación :

Tiempos generadores de pulsos usados en la prueba


DigClock P2-Ck P1-Ck P1-Ck
On time 4 ms 2 ms 1 ms
Off time 4 ms 2 ms 1 ms

Parámetros Análisis Setup – Transient


Print Step 0 ms
Final Time 8 ms

9.3.- Cronograma resultante

Nota: La expresión “eqS0eqCn” quiere decir: y1 = S0 = Cn

22
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

9.4.- Verificación de que la ALU realiza las operaciones pedidas de acuerdo con las condiciones de
control

9.4.1.- Lecturas obtenidas del cronograma:

Nota: La expresión “eqS0eqCn” quiere decir: y1 = S0 = Cn

23
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

9.4.2.- Resumen de entradas y salidas de verificación:

SEÑALES DE ENTRADA DE LA ALU SEÑALES DE SALIDA DE LA ALU


Prioridad P2 P1 P0 Operación S3 S2 S1 S0 M Cn F3 F3 F1 F0 CN+4
P2 1 0 1 Aritmética Sin acarreo A PLUS B 1 0 0 1 0 1 0 0 0 1 X
P0 0 1 1 Aritmética Con acarreo A MINUS B 0 1 1 0 0 0 0 1 0 1 0
P0 0 0 1 Aritmética Con acarreo A MINUS B 0 1 1 0 0 0 0 1 0 1 0
Sin prioridad 0 0 0 Lógica 1 1 1 0 0 1 X 1 1 1 1 X
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

9.4.3.- Verificaciones individualizadas:

a.- PRIORIDAD P2 – P(P2 P1 P0) = (1 0 1): 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.

OPERACIÓN ARITMÉTICA TEÓRICA

A 1 0 1 1

B 0 1 1 0

A PLUS B Sin acarreo 0 0 0 1

LECTURA DE LA ALU

F 0 0 0 1

b.- PRIORIDAD P0 – P(P2 P1 P0) = (0 1 1 ) Y P(P2 P1 P0) = (0 0 1 ): Si la prioridad es de P0 debe hacer la


operación aritmética con arrastre A MINUS B.

OPERACIÓN ARITMÉTICA TEÓRICA

A 1 0 1 1

B 0 1 1 0

A MINUS B Con acarreo 0 1 0 1

Acarreo 0

LECTURAS DE LA ALU

F 0 1 0 1

CN+4 0
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

c.- SIN PRIORIDAD: Si las señales son todas cero y ninguna es prioritaria entonces la ALU debe ponerse a
1.

OPERACIÓN LÓGICA TEÓRICA

A 1 0 1 1

B 0 1 1 0

Sin prioridad 1 1 1 1

LECTURA DE LA ALU

F 1 1 1 1

9.4.4.- Resumen de verificaciones: Todas las verificaciones han resultado satisfactorias, probando la validez
del circuito lógico diseñado.

26
Apellidos, nombre: PITA ALBIAC, FERNANDO
DNI:12323898S

10.- COMENTARIOS

1. Como ya ha sido señalado anteriormente, por razones didácticas, he diseñado de forma


diferenciada un bloque funcional específico para el procesamiento del criterio de prioridad (Bloque
de prioridad) y un segundo bloque destinado a la generación de la señales de entrada de la ALU
(Bloque generador de señales ALU), no obstante, en situaciones reales ambos bloques podrían
condensarse generando un modelo con menor coste económico y con menor incidencia de los
retardos derivada del ahorro de algunas puertas.

2. En las diferentes tablas de verdad he utilizado el símbolo “X” en aquellas situaciones en que era
indiferente que una variable adoptara el valor “1” o el valor “0”.

3. En un diagrama de Karnaugh en el que existían valores X, he transformado uno de ellos en “1” para
obtener una mayor simplificación.

4. Respecto a las dificultades habidas en el diseño del circuito, cabe señalar:

a. Las inherentes al manejo del programa PSpice que, hasta ahora, era desconocido para mí.

b. Ligado a lo anterior, una confusión sufrida en la identificación de la ALU, ya que inicialmente


utilicé una hoja de características de ALU 74181 – Activa en baja, obteniendo unos
resultados que no eran coherentes con los obtenidos al seleccionar en PSpice una ALU
74181 – Activa en alta.

c. Por añadidura, cuando comencé la práctica desconocía por completo el sentido de los
relojes en los circuitos lógicos, lo cual me hacía más difícil la comprensión de su
funcionamiento.

27

Potrebbero piacerti anche