Documentos de Académico
Documentos de Profesional
Documentos de Cultura
NRC: 5601
Diseño No. 3
GRUPO 1
INTEGRANTES:
● Lady Pasquel
● Celeste Santander
DEPARTAMENTO DE ELÉCTRICA, ELECTRÓNICA Y TELECOMUNICACIONES
SISTEMAS BASADOS EN MCU
DISEÑO No. 3
Unidad Aritmética Lógica: Operaciones lógicas
1. Objetivo general
Simular un circuito digital, usando el CI 74LS181 (ALU), que permita realizar operaciones lógicas y
aritméticas entre 2 números de binarios y presente todos los resultados en displays, así como el
nombre de la operación realizada en forma secuencial.
2. Objetivos específicos
● Emplear el material aprendido para poder simular el circuito solicitado tomando en cuenta las
características del datasheet del circuito integrado empleado, para poder comprender el
funcionamiento de la ALU, y obtener un circuito eficiente.
● Optimizar el circuito obteniendo el resultado deseado, y aplicar conocimientos con respecto a
memoria, generando una tabla de verdad que nos permita ubicar la información deseada con
el empleo de registros.
Diseñar un circuito MSI, al cual ingresan 2 números binarios (A y B) de 4 bits cada uno (el valor de
los números ingresados se debe visualizar en displays).
El circuito contiene un CI 74LS181 (ALU) para realizar diferentes operaciones aritméticas y lógicas
binarias entre los números ingresados y presentar el resultado en displays. Para el caso de la resta
aritmética, se debe tomar en cuenta su salida cuando hay números negativos, de modo que se debe
generar un circuito que corrija el número en complemento a dos, y adicional muestre su signo.
Adicionalmente, el circuito presentará la operación realizada por la ALU (OPERACIÓN 01,
OPERACIÓN 02, OPERACIÓN 03,....etc), la cual debe ser extraída de una memoria EEPROM y ser
visualizada secuencialmente en un display, para lo cual deberá utilizar registros.
4. Diagrama de bloques y explicación del diseño
Entradas: El diseño realizado emplea 3 dip switch, uno para el dígito A, uno para el dígito B
y otro para los selectores de la ALU 74LS181: Cn, M, S3, S2, S1, S0. En este caso, al tratarse
de lógica negativa para los dígitos A y B, y lógica positiva para el resto de swtich de
selectores.
Bloque Conversor Binario-Decimal de las Entradas: En este bloque tenemos los circuitos
conversores que toman los dígitos en lógica negativa y los representan en dos displays para
expresar los números en unidad y decimal.
ALU: El Bloque ALU, es donde está el circuito integrado 74LS181 y los circuitos para
mostrar el signo de los números negativos y el carry solo para las operaciones de suma. La
salida de este bloque son: Carry, Z3, Z2, Z1, Z0, y Fcs.
Bloque de memoria: En este bloque empleamos una memoria donde se ubica el número de
operación y la palabra OPERACIÓN, representando la salida en un display.
Imagen 2. Switch de A
Dígito B:
Imagen 3. Switch de B
Selectores:
Imagen 4. Selectores
Usando este tipo de lógica empleamos la siguiente tabla de operaciones proporcionada por el
datasheet de la ALU 73LS181.
Imagen 5. Tabla de funcionamiento ALU
LÓGICA NEGATIVA
En este bloque tenemos las entradas a la ALU, puestas en lógica negativa para las entradas A
y B, y en lógica positiva los selectores S3, S2, S1, S0, M, y Cn.
Dígito A:
Imagen 6. Switch de A
Dígito B:
Imagen 7. Switch de B
Selectores:
Imagen 8. Selectores
Estas entradas nos van a ayudar a escoger el tipo de operación que deseamos realizar con la
ALU. Las operaciones para lógica negativa son las siguientes:
Imagen 9. Tabla de funcionamiento ALU
En ambos casos lógica positiva y negativa el circuito es lo mismo, lo único que cambia es que
en lógica negativa se niegan las entradas antes de ingresar al circuito.
ALU
Para este bloque tenemos el empleo del circuito integrado 74LS181 que es el responsable de
hacer las operaciones de la ALU, y consta de parte lógica y aritmética, aunque el orden de la
operación varía según trabajemos las entradas de los dígitos A y B en lógica positiva o lógica
negativa.
Imagen 11. Conexión ALU
Las salidas de la ALU, son Y0, Y1 Y2 Y3 y Cn4 para lógica positiva y Y0’ Y1’ Y2’ Y3’ y
Cn4’ para lógica negativa, en ambos casos deben pasar por una corrección
CONDICIONES ADICIONALES
Analizando el datasheet del circuito integrado y el funcionamiento del circuito nos
encontramos con pequeños problemas en la salida para su conversión a binario, el primero es
el signo en negativo cuando se esté haciendo una resta aritmética, tal que se debe plantear una
función que solo active el signo negativo cuando se esté haciendo una operación resta y el
resultado de esa operación sea un número negativo. También se aplica lo mismo para la
operación carry, de la cual se pudo deducir que cuando no está haciendo una suma puede
encenderse o apagarse debido a que su lectura no es necesaria, ya que como tal si no suma la
respuesta se mantendrá en 4 bits.
LÓGICA POSITIVA
M Cn S3 S2 S1 S0 Fcarry FC
0 0 0 0 0 0 0 1 0
1 0 0 0 0 0 1 1 0
2 0 0 0 0 1 0 1 0
3 0 0 0 0 1 1 0 0
4 0 0 0 1 0 0 1 0
5 0 0 0 1 0 1 1 0
6 0 0 0 1 1 0 0 0
7 0 0 0 1 1 1 0 0
8 0 0 1 0 0 0 1 0
9 0 0 1 0 0 1 1 0
10 0 0 1 0 1 0 1 0
11 0 0 1 0 1 1 0 0
12 0 0 1 1 0 0 1 0
13 0 0 1 1 0 1 1 0
14 0 0 1 1 1 0 1 0
15 0 0 1 1 1 1 0 0
16 0 1 0 0 0 0 0 0
17 0 1 0 0 0 1 0 0
18 0 1 0 0 1 0 0 0
19 0 1 0 0 1 1 0 1
20 0 1 0 1 0 0 1 0
21 0 1 0 1 0 1 1 0
22 0 1 0 1 1 0 0 1
23 0 1 0 1 1 1 0 1
24 0 1 1 0 0 0 1 0
25 0 1 1 0 0 1 1 0
26 0 1 1 0 1 0 1 0
27 0 1 1 0 1 1 0 1
28 0 1 1 1 0 0 1 0
29 0 1 1 1 0 1 1 0
30 0 1 1 1 1 0 1 0
31 0 1 1 1 1 1 0 1
32 1 x x x x x x 0
LÓGICA NEGATIVA
De la misma forma, se deben generar funciones para el carry y el número negativo. Para el
carry la función nos entregará el resultado del carry solo cuando se esté haciendo una suma,
para empezar, eso solo sucederá con operaciones aritméticas, tal que funciona solo cuando M
este en bajo.
Lo mismo sucede con la función del signo para que se haga el complemento a dos de los
números negativos. Y de la misma manera solo trabaja con M en bajo ya que se trata
exclusivamente de operaciones aritméticas.
M Cn S3 S2 S1 S0 Fcarry FC
0 0 0 0 0 0 0 0 1
1 0 0 0 0 0 1 0 1
2 0 0 0 0 1 0 0 1
3 0 0 0 0 1 1 0 0
4 0 0 0 1 0 0 1 0
5 0 0 0 1 0 1 1 0
6 0 0 0 1 1 0 0 1
7 0 0 0 1 1 1 0 0
8 0 0 1 0 0 0 1 0
9 0 0 1 0 0 1 1 0
10 0 0 1 0 1 0 1 0
11 0 0 1 0 1 1 0 0
12 0 0 1 1 0 0 1 0
13 0 0 1 1 0 1 1 0
14 0 0 1 1 1 0 1 0
15 0 0 1 1 1 1 0 0
16 0 1 0 0 0 0 0 0
17 0 1 0 0 0 1 0 0
18 0 1 0 0 1 0 0 0
19 0 1 0 0 1 1 0 0
20 0 1 0 1 0 0 1 0
21 0 1 0 1 0 1 1 0
22 0 1 0 1 1 0 0 1
23 0 1 0 1 1 1 1 0
24 0 1 1 0 0 0 1 0
25 0 1 1 0 0 1 1 0
26 0 1 1 0 1 0 1 0
27 0 1 1 0 1 1 1 0
28 0 1 1 1 0 0 1 0
29 0 1 1 1 0 1 1 0
30 0 1 1 1 1 0 1 0
31 0 1 1 1 1 1 0 0
32 1 x x x x x x 0
En general las salidas de este bloque ya sea en lógica positiva o lógica negativa van a ser: Z3
Z2 Z1 Z0, que se dirigen al bloque de conversión binario decimal para representar su valor
decimal en displays, y Fc para el signo.
0 0 0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 1 0 0 0 0 0 0 0 1
2 0 0 0 1 0 0 0 0 0 0 0 1 0
3 0 0 0 1 1 0 0 0 0 0 0 1 1
4 0 0 1 0 0 0 0 0 0 0 1 0 0
5 0 0 1 0 1 0 0 0 0 0 1 0 1
6 0 0 1 1 0 0 0 0 0 0 1 1 0
7 0 0 1 1 1 0 0 0 0 0 1 1 1
8 0 1 0 0 0 0 0 0 0 1 0 0 0
9 0 1 0 0 1 0 0 0 0 1 0 0 1
10 0 1 0 1 0 0 0 0 1 0 0 0 0
11 0 1 0 1 1 0 0 0 1 0 0 0 1
12 0 1 1 0 0 0 0 0 1 0 0 1 0
13 0 1 1 0 1 0 0 0 1 0 0 1 1
14 0 1 1 1 0 0 0 0 1 0 1 0 0
15 0 1 1 1 1 0 0 0 1 0 1 0 1
16 1 0 0 0 0 0 0 0 1 0 1 1 0
17 1 0 0 0 1 0 0 0 1 0 1 1 1
18 1 0 0 1 0 0 0 0 1 1 0 0 0
19 1 0 0 1 1 0 0 0 1 1 0 0 1
20 1 0 1 0 0 0 0 1 0 0 0 0 0
21 1 0 1 0 1 0 0 1 0 0 0 0 1
22 1 0 1 1 0 0 0 1 0 0 0 1 0
23 1 0 1 1 1 0 0 1 0 0 0 1 1
24 1 1 0 0 0 0 0 1 0 0 1 0 0
25 1 1 0 0 1 0 0 1 0 0 1 0 1
26 1 1 0 1 0 0 0 1 0 0 1 1 0
27 1 1 0 1 1 0 0 1 0 0 1 1 1
28 1 1 1 0 0 0 0 1 0 1 0 0 0
29 1 1 1 0 1 0 0 1 0 1 0 0 1
30 1 1 1 1 0 0 0 1 1 0 0 0 0
31 1 1 1 1 1 0 0 1 1 0 0 0 1
Primera condición:
Aquí se observa que las variables obtenidas X4 y X5 permiten formar los número 1d, 2d o 3d
en el display de decenas de acuerdo a las condiciones planteadas anteriormente, y las
variables X3 X2 X1 Z0 permiten formar los valores en el display de unidades tomando en
cuenta que Z0 se acciona directo sin necesidad de alguna modificación.
Para representar al signo en caso la respuesta sea un número en signo negativo tenemos el
siguiente circuito:
Imagen 25. Conexión final de conversión
Dispuesta esta decisión y para optimizar costos se decidió formar las letras y números
respectivos en binario independientemente y representarlos en el display con ayuda de un ci
74LS48 que es un decodificador BCD a 7 segmentos para poder dividir las 8 salidas de la
memoria en dos salidas de 4 correspondientes a cada display.
OP 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 00 90
0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 01 00
OP 0 0 0 0 0 1 0 1 0 0 1 0 0 0 0 02 90
1 0 0 0 0 0 1 1 0 0 0 1 0 0 0 0 03 10
OP 0 0 0 0 1 0 0 1 0 0 1 0 0 0 0 04 90
2 0 0 0 0 1 0 1 0 0 1 0 0 0 0 0 05 20
OP 0 0 0 0 1 1 0 1 0 0 1 0 0 0 0 06 90
3 0 0 0 0 1 1 1 0 0 1 1 0 0 0 0 07 30
OP 0 0 0 1 0 0 0 1 0 0 1 0 0 0 0 08 90
4 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 09 40
OP 0 0 0 1 0 1 0 1 0 0 1 0 0 0 0 0A 90
5 0 0 0 1 0 1 1 0 1 0 1 0 0 0 0 0B 50
OP 0 0 0 1 1 0 0 1 0 0 1 0 0 0 0 0C 90
6 0 0 0 1 1 0 1 0 1 1 0 0 0 0 0 0D 60
OP 0 0 0 1 1 1 0 1 0 0 1 0 0 0 0 0E 90
7 0 0 0 1 1 1 1 0 1 1 1 0 0 0 0 0F 70
OP 0 0 1 0 0 0 0 1 0 0 1 0 0 0 0 10 90
8 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 11 80
OP 0 0 1 0 0 1 0 1 0 0 1 0 0 0 0 12 90
9 0 0 1 0 0 1 1 1 0 0 1 0 0 0 0 13 90
OP 0 0 1 0 1 0 0 1 0 0 1 0 0 0 0 14 90
10 0 0 1 0 1 0 1 0 0 0 0 0 0 0 1 15 01
OP 0 0 1 0 1 1 0 1 0 0 1 0 0 0 0 16 90
11 0 0 1 0 1 1 1 0 0 0 1 0 0 0 1 17 11
OP 0 0 1 1 0 0 0 1 0 0 1 0 0 0 0 18 90
12 0 0 1 1 0 0 1 0 0 1 0 0 0 0 1 19 21
OP 0 0 1 1 0 1 0 1 0 0 1 0 0 0 0 1A 90
13 0 0 1 1 0 1 1 0 0 1 1 0 0 0 1 1B 31
OP 0 0 1 1 1 0 0 1 0 0 1 0 0 0 0 1C 90
14 0 0 1 1 1 0 1 0 1 0 0 0 0 0 1 1D 41
OP 0 0 1 1 1 1 0 1 0 0 1 0 0 0 0 1E 90
15 0 0 1 1 1 1 1 0 1 0 1 0 0 0 1 1F 51
OP 0 1 0 0 0 0 0 1 0 0 1 0 0 0 0 20 90
16 0 1 0 0 0 0 1 0 1 1 0 0 0 0 1 21 61
OP 0 1 0 0 0 1 0 1 0 0 1 0 0 0 0 22 90
17 0 1 0 0 0 1 1 0 1 1 1 0 0 0 1 23 71
OP 0 1 0 0 1 0 0 1 0 0 1 0 0 0 0 24 90
18 0 1 0 0 1 0 1 1 0 0 0 0 0 0 1 25 81
OP 0 1 0 0 1 1 0 1 0 0 1 0 0 0 0 26 90
19 0 1 0 0 1 1 1 1 0 0 1 0 0 0 1 27 91
OP 0 1 0 1 0 0 0 1 0 0 1 0 0 0 0 28 90
20 0 1 0 1 0 0 1 0 0 0 0 0 0 1 0 29 02
OP 0 1 0 1 0 1 0 1 0 0 1 0 0 0 0 2A 90
21 0 1 0 1 0 1 1 0 0 0 1 0 0 1 0 2B 12
OP 0 1 0 1 1 0 0 1 0 0 1 0 0 0 0 2C 90
22 0 1 0 1 1 0 1 0 0 1 0 0 0 1 0 2D 22
OP 0 1 0 1 1 1 0 1 0 0 1 0 0 0 0 2E 90
23 0 1 0 1 1 1 1 0 0 1 1 0 0 1 0 2F 32
OP 0 1 1 0 0 0 0 1 0 0 1 0 0 0 0 30 90
24 0 1 1 0 0 0 1 0 1 0 0 0 0 1 0 31 42
OP 0 1 1 0 0 1 0 1 0 0 1 0 0 0 0 32 90
25 0 1 1 0 0 1 1 0 1 0 1 0 0 1 0 33 52
OP 0 1 1 0 1 0 0 1 0 0 1 0 0 0 0 34 90
26 0 1 1 0 1 0 1 0 1 1 0 0 0 1 0 35 62
OP 0 1 1 0 1 1 0 1 0 0 1 0 0 0 0 36 90
27 0 1 1 0 1 1 1 0 1 1 1 0 0 1 0 37 72
OP 0 1 1 1 0 0 0 1 0 0 1 0 0 0 0 38 90
28 0 1 1 1 0 0 1 1 0 0 0 0 0 1 0 39 82
OP 0 1 1 1 0 1 0 1 0 0 1 0 0 0 0 3A 90
29 0 1 1 1 0 1 1 1 0 0 1 0 0 1 0 3B 92
OP 0 1 1 1 1 0 0 1 0 0 1 0 0 0 0 3C 90
30 0 1 1 1 1 0 1 0 0 0 0 0 0 1 1 3D 03
OP 0 1 1 1 1 1 0 1 0 0 1 0 0 0 0 3E 90
31 0 1 1 1 1 1 1 0 0 0 1 0 0 1 1 3F 13
OP 1 0 0 0 0 0 0 1 0 0 1 0 0 0 0 40 90
32 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 41 23
OP 1 0 0 0 0 1 0 1 0 0 1 0 0 0 0 42 90
33 1 0 0 0 0 1 1 0 0 1 1 0 0 1 1 43 33
OP 1 0 0 0 1 0 0 1 0 0 1 0 0 0 0 44 90
34 1 0 0 0 1 0 1 0 1 0 0 0 0 1 1 45 43
OP 1 0 0 0 1 1 0 1 0 0 1 0 0 0 0 46 90
35 1 0 0 0 1 1 1 0 1 0 1 0 0 1 1 47 53
OP 1 0 0 1 0 0 0 1 0 0 1 0 0 0 0 48 90
36 1 0 0 1 0 0 1 0 1 1 0 0 0 1 1 49 63
OP 1 0 0 1 0 1 0 1 0 0 1 0 0 0 0 4A 90
37 1 0 0 1 0 1 1 0 1 1 1 0 0 1 1 4B 73
OP 1 0 0 1 1 0 0 1 0 0 1 0 0 0 0 4C 90
38 1 0 0 1 1 0 1 1 0 0 0 0 0 1 1 4D 83
OP 1 0 0 1 1 1 0 1 0 0 1 0 0 0 0 4E 90
39 1 0 0 1 1 1 1 1 0 0 1 0 0 1 1 4F 93
OP 1 0 1 0 0 0 0 1 0 0 1 0 0 0 0 50 90
40 1 0 1 0 0 0 1 0 0 0 0 0 1 0 0 51 04
OP 1 0 1 0 0 1 0 1 0 0 1 0 0 0 0 52 90
41 1 0 1 0 0 1 1 0 0 0 1 0 1 0 0 53 14
OP 1 0 1 0 1 0 0 1 0 0 1 0 0 0 0 54 90
42 1 0 1 0 1 0 1 0 0 1 0 0 1 0 0 55 24
OP 1 0 1 0 1 1 0 1 0 0 1 0 0 0 0 56 90
43 1 0 1 0 1 1 1 0 0 1 1 0 1 0 0 57 34
OP 1 0 1 1 0 0 0 1 0 0 1 0 0 0 0 58 90
44 1 0 1 1 0 0 1 0 1 0 0 0 1 0 0 59 44
OP 1 0 1 1 0 1 0 1 0 0 1 0 0 0 0 5A 90
45 1 0 1 1 0 1 1 0 1 0 1 0 1 0 0 5B 54
OP 1 0 1 1 1 0 0 1 0 0 1 0 0 0 0 5C 90
46 1 0 1 1 1 0 1 0 1 1 0 0 1 0 0 5D 64
OP 1 0 1 1 1 1 0 1 0 0 1 0 0 0 0 5E 90
47 1 0 1 1 1 1 1 0 1 1 1 0 1 0 0 5F 74
Finalmente el último inconveniente que se encontró fue el de representar la letra “P” con un
decodificador por lo que se aplicó una condición adicional en este caso.
Resulta que el número más similar a la letra “P” generado por el decodificador es el 9 así que
la condición establece que siempre que la localidad de la memoria necesite representar una
“P” se escriba un 9 y se encienda el led “e” en lugar del led “c”
A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 P g f e d c b a
- 0 0 0 0 0 0 0 0 40 0 0 0 0 1 0 0 0 0 0 0 0 0 140 4 0
O 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 1 1 1 0 0 1 3 F
P 0 0 0 0 0 0 0 0 0 0 1 0 0 1 1 1 0 0 1 1 0 0 2 7 3
E 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 1 1 0 0 1 0 0 3 7 9
R 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 0 4 5 0
A 0 0 0 0 0 0 0 0 0 1 0 1 0 1 1 1 0 1 1 1 0 0 5 7 7
C 0 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 1 0 0 1 0 0 6 3 9
I 0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 0 0 0 7 0 6
O 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 1 1 1 1 1 0 0 8 3 F
N 0 0 0 0 0 0 0 0 1 0 0 1 0 1 0 1 0 1 0 0 0 0 9 5 4
- 0 0 0 0 0 0 0 0 1 0 1 0 0 1 0 0 0 0 0 0 0 0 A 4 0
N 0 0 0 0 0 0 0 0 1 0 1 1 0 1 0 1 0 1 0 0 0 0 B 5 4
° 0 0 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 0 C 6 3
0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 1 1 1 1 1 1 0 0 D 3 F
0 0 0 0 0 0 0 0 0 1 1 1 0 0 0 1 1 1 1 1 1 0 0 E 3 F
- 0 0 0 0 0 0 0 0 1 1 1 1 0 1 0 0 0 0 0 0 0 0 F 4 0
- 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 4 0
O 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 1 1 1 1 1 0 1 1 3 F
P 0 0 0 0 0 0 0 1 0 0 1 0 0 1 1 1 0 0 1 1 0 1 2 7 3
E 0 0 0 0 0 0 0 1 0 0 1 1 0 1 1 1 1 0 0 1 0 1 3 7 9
R 0 0 0 0 0 0 0 1 0 1 0 0 0 1 0 1 0 0 0 0 0 1 4 5 0
A 0 0 0 0 0 0 0 1 0 1 0 1 0 1 1 1 0 1 1 1 0 1 5 7 7
C 0 0 0 0 0 0 0 1 0 1 1 0 0 0 1 1 1 0 0 1 0 1 6 3 9
I 0 0 0 0 0 0 0 1 0 1 1 1 0 0 0 0 0 1 1 0 0 1 7 0 6
O 0 0 0 0 0 0 0 1 1 0 0 0 0 0 1 1 1 1 1 1 0 1 8 3 F
N 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 1 0 1 0 0 0 1 9 5 4
- 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0 0 0 0 0 0 0 1 A 4 0
N 0 0 0 0 0 0 0 1 1 0 1 1 0 1 0 1 0 1 0 0 0 1 B 5 4
° 0 0 0 0 0 0 0 1 1 1 0 0 0 1 1 0 0 0 1 1 0 1 C 6 3
0 0 0 0 0 0 0 0 1 1 1 0 1 0 0 1 1 1 1 1 1 0 1 D 3 F
1 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 1 1 0 0 1 E 0 6
- 0 0 0 0 0 0 0 1 1 1 1 1 0 1 0 0 0 0 0 0 0 1 F 4 0
- 0 0 0 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 2 0 4 0
O 0 0 0 0 0 0 1 0 0 0 0 1 0 0 1 1 1 1 1 1 0 2 1 3 F
P 0 0 0 0 0 0 1 0 0 0 1 0 0 1 1 1 0 0 1 1 0 2 2 7 3
E 0 0 0 0 0 0 1 0 0 0 1 1 0 1 1 1 1 0 0 1 0 2 3 7 9
R 0 0 0 0 0 0 1 0 0 1 0 0 0 1 0 1 0 0 0 0 0 2 4 5 0
A 0 0 0 0 0 0 1 0 0 1 0 1 0 1 1 1 0 1 1 1 0 2 5 7 7
C 0 0 0 0 0 0 1 0 0 1 1 0 0 0 1 1 1 0 0 1 0 2 6 3 9
I 0 0 0 0 0 0 1 0 0 1 1 1 0 0 0 0 0 1 1 0 0 2 7 0 6
O 0 0 0 0 0 0 1 0 1 0 0 0 0 0 1 1 1 1 1 1 0 2 8 3 F
N 0 0 0 0 0 0 1 0 1 0 0 1 0 1 0 1 0 1 0 0 0 2 9 5 4
- 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 0 0 0 0 0 0 2 A 4 0
N 0 0 0 0 0 0 1 0 1 0 1 1 0 1 0 1 0 1 0 0 0 2 B 5 4
° 0 0 0 0 0 0 1 0 1 1 0 0 0 1 1 0 0 0 1 1 0 2 C 6 3
0 0 0 0 0 0 0 1 0 1 1 0 1 0 0 1 1 1 1 1 1 0 2 D 3 F
2 0 0 0 0 0 0 1 0 1 1 1 0 0 1 0 1 1 0 1 1 0 2 E 5 B
- 0 0 0 0 0 0 1 0 1 1 1 1 0 1 0 0 0 0 0 0 0 2 F 4 0
- 0 0 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 3 0 4 0
O 0 0 0 0 0 0 1 1 0 0 0 1 0 0 1 1 1 1 1 1 0 3 1 3 F
P 0 0 0 0 0 0 1 1 0 0 1 0 0 1 1 1 0 0 1 1 0 3 2 7 3
E 0 0 0 0 0 0 1 1 0 0 1 1 0 1 1 1 1 0 0 1 0 3 3 7 9
R 0 0 0 0 0 0 1 1 0 1 0 0 0 1 0 1 0 0 0 0 0 3 4 5 0
A 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 0 1 1 1 0 3 5 7 7
C 0 0 0 0 0 0 1 1 0 1 1 0 0 0 1 1 1 0 0 1 0 3 6 3 9
I 0 0 0 0 0 0 1 1 0 1 1 1 0 0 0 0 0 1 1 0 0 3 7 0 6
O 0 0 0 0 0 0 1 1 1 0 0 0 0 0 1 1 1 1 1 1 0 3 8 3 F
N 0 0 0 0 0 0 1 1 1 0 0 1 0 1 0 1 0 1 0 0 0 3 9 5 4
- 0 0 0 0 0 0 1 1 1 0 1 0 0 1 0 0 0 0 0 0 0 3 A 4 0
N 0 0 0 0 0 0 1 1 1 0 1 1 0 1 0 1 0 1 0 0 0 3 B 5 4
° 0 0 0 0 0 0 1 1 1 1 0 0 0 1 1 0 0 0 1 1 0 3 C 6 3
0 0 0 0 0 0 0 1 1 1 1 0 1 0 0 1 1 1 1 1 1 0 3 D 3 F
3 0 0 0 0 0 0 1 1 1 1 1 0 0 1 0 0 1 1 1 1 0 3 E 4 F
- 0 0 0 0 0 0 1 1 1 1 1 1 0 1 0 0 0 0 0 0 0 3 F 4 0
- 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 4 0 4 0
O 0 0 0 0 0 1 0 0 0 0 0 1 0 0 1 1 1 1 1 1 0 4 1 3 F
P 0 0 0 0 0 1 0 0 0 0 1 0 0 1 1 1 0 0 1 1 0 4 2 7 3
E 0 0 0 0 0 1 0 0 0 0 1 1 0 1 1 1 1 0 0 1 0 4 3 7 9
R 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 1 0 0 0 0 0 4 4 5 0
A 0 0 0 0 0 1 0 0 0 1 0 1 0 1 1 1 0 1 1 1 0 4 5 7 7
C 0 0 0 0 0 1 0 0 0 1 1 0 0 0 1 1 1 0 0 1 0 4 6 3 9
I 0 0 0 0 0 1 0 0 0 1 1 1 0 0 0 0 0 1 1 0 0 4 7 0 6
O 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 1 1 1 1 1 0 4 8 3 F
N 0 0 0 0 0 1 0 0 1 0 0 1 0 1 0 1 0 1 0 0 0 4 9 5 4
- 0 0 0 0 0 1 0 0 1 0 1 0 0 1 0 0 0 0 0 0 0 4 A 4 0
N 0 0 0 0 0 1 0 0 1 0 1 1 0 1 0 1 0 1 0 0 0 4 B 5 4
° 0 0 0 0 0 1 0 0 1 1 0 0 0 1 1 0 0 0 1 1 0 4 C 6 3
0 0 0 0 0 0 1 0 0 1 1 0 1 0 0 1 1 1 1 1 1 0 4 D 3 F
4 0 0 0 0 0 1 0 0 1 1 1 0 0 1 1 0 0 1 1 0 0 4 E 6 6
- 0 0 0 0 0 1 0 0 1 1 1 1 0 1 0 0 0 0 0 0 0 4 F 4 0
.
.
Y la tabla continúa hasta la OPERACION 47 completando 1017 localidades.
6. Diagrama electrónico
LÓGICA POSITIVA
7. Lista de elementos
8. Conclusiones y recomendaciones
CONCLUSIONES
Mediante la práctica hecha obtuvimos un circuito funcional empleando la ALU 74LS181 que
nos permitió observar su funcionamiento para resolver operaciones lógicas y aritméticas entre
dos dígitos A y B, y selectores S3 S2 S1 S0 M y Cn. De la misma manera se pudo observar su
funcionamiento cuando los dígitos cambiaron de lógica positiva a lógica negativa, mediante
el datasheet, descubriendo que las operaciones tenían un cambio en su orden. Mediante dicho
cometido pudimos obtener y comprender las salidas presentadas en donde para su conversión
descubrimos la necesidad de generar funciones que permitan su decodificación correcta, una
función que nos permita realizar el complemento a dos solo en caso sea un número negativo,
tal que se realizó una tabla de verdad que se mantenía en alto sólo cuando se estuviera
haciendo una operación de RESTA aritmética. Y de igual manera se consideró una función
para el carry, para que solo cuando se realizara una SUMA aritmética se considere la salida
Cn4 de la ALU. De esa manera se consiguieron las salidas Carry Z3 Z2 Z1 Z0, siendo Carry
el más significativo, y la salida Fcs, para el signo que se encendería solo cuando el resultado
sea un número negativo. De tal manera se realizó el circuito optimizando el número de
integrados y que cumpla con el objetivo planteado.
Usar una memoria facilita la implementación y análisis de un problema ya que basta con
invertir tiempo en designar todas las posibles respuestas que se pueden obtener de un
requerimiento y que la memoria soporte para programarla e implementarla además de que
ocupa poco espacio físico dentro de un circuito, sin embargo su desventaja se ve en el precio
y al momento de tener que grabar el programa en la memoria de forma física ya que implica
otros artefactos adicionales para completar esta función. Aquí se destaca una ventaja enorme
que tienen los simuladores de circuitos con los usuarios pues nos permiten comprender el
funcionamiento sin la necesidad de implementarlo.
RECOMENDACIONES
Se recomienda el análisis adecuado del datasheet proporcionado por el fabricante para poder
comprender de mejor manera el funcionamiento de la ALU 74LS181, su respuesta y sus
cambios cuando se trabaja en diferente lógica. De modo que no se tenga problemas para
comprender el resultado que nos entrega y tener una labor más sencilla si se desea representar
la salida en decimal como en el caso ocurrido.
Dentro de la simulación, se sugiere ir ejecutando el programa cada cierto tiempo en el caso de
que ocurra algún bug con un elemento o no se encuentre la librería del mismo.
9. Referencias
http://profesores.fi-b.unam.mx/guevarod/practicas/dd/varios/TTL_Databook.pdf
https://drive.google.com/drive/u/0/search?q=type:pdf%20owner:rarios%40espe.edu.ec