0% encontró este documento útil (0 votos)
578 vistas18 páginas

Lab 3 N2 Sistemas Digitales

Este documento describe 4 circuitos lógicos y aritméticos simulados en Proteus. El primer circuito compara los valores de A y B usando un sumador. El segundo muestra un mensaje en displays de 7 segmentos usando un MUX. El tercero convierte un número binario a BCD. El cuarto es un sumador-restador de números BCD de 8 bits que muestra el resultado también en BCD.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
578 vistas18 páginas

Lab 3 N2 Sistemas Digitales

Este documento describe 4 circuitos lógicos y aritméticos simulados en Proteus. El primer circuito compara los valores de A y B usando un sumador. El segundo muestra un mensaje en displays de 7 segmentos usando un MUX. El tercero convierte un número binario a BCD. El cuarto es un sumador-restador de números BCD de 8 bits que muestra el resultado también en BCD.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Laboratorio # 3

LABORATORIO 3A: CIRCUITOS ARITMÉTICOS Y LÓGICOS PARA EL


MANEJO DE DATOS

Christian Huapaya Contreras, Danaee Toledo Zevallos, Anthony Mayhuay Rashta, Einstein Marino
Rafaile García
Universidad Nacional de Ingeniería- Facultad de Ingeniería Eléctrica y Electrónica.
Christian_10_97@[Link], dana15tz@[Link],
anthonymayhuay@[Link],erafaile1001@[Link],

1. Simular en Proteus y explicar cómo funciona el siguiente circuito.

Fig. 1 Simulación cuando A>B

se observa que al sumador 74LS83 los cuatro bits de A y el complemento de de D y sumado 1 lo que
el sumador efectúa la resta A y B (A-B) .
Es el caso que A>B en la salida del sumador se obtendrá la diferencia de A y B y un acarreo entonces
para detectar este caso se realiza utilizamos un OR y lo ubicamos en la salida del sumador y como por
lo menos existe un uno lógico activo y también hay un acarreo osea hay un uno lógico luego estas dos
salidas lo conectamos a un AND. Entonces en este caso solo cuando A>B siempre habrá un acarreo y
también en la salida del sumador entonces se activará el led que indica que A>B
Fi
g. 2 Simulación para A=B

En el caso cuando A=B se observa que siempre es la salida del sumador se obtendrá un cero lógico
entonces para que se active el led que nos indica que A = B solo bastaría con añadir convertidor en la
salida del OR

Fig. 3 Simulación para A<B

En este último caso cuando A<B el sumador al operar lo siguiente: s= A +B+ 1 se obtendrá por lo
menos un uno lógico en la salida pero ya no ya no habrá acarreo ósea en el acarreo es un cero lógico.
Entonces para activar el led que indique A<B conectaremos un converso en el acarreo más las salida
del OR que se conectó en la salida del sumador esto se lleva a un AND que este va conectado al led
2. Empleando MUX 74151, diseñe y simule en Proteus un circuito que permita visualizar en un
display de 7 segmentos el siguiente mensaje, en donde se indica que grupo es:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

D I G I T A L - G R U P O - 0 3

Fig. 4 Simulación del problema 2


Fig. 5 Función que realiza 74LS151

Fig. 6 Tabla de lógica


Para la la simulación de este problema se observa la tabla lógica y se construye el circuito tomando
en cuenta la función que realiza 74LS151 ya este lo simplifica mucho la solución del problema

3. Implementar y explicar cómo funciona el decodificador de un número binario de 8 bits a BCD


(Ejemplo 51 del aula virtual)

Figura. 7 Representación de un número binario a BCD

El algoritmo a usar es conocido como “recorre y suma 3”, ya que se usa corrimientos y sumas de
números binarios. Para la conversión es necesario tener dos registros, el primero donde tengamos el
número en binario que deseemos convertir a BCD y el segundo en donde quedará guardado el
número expresado en BCD.
En nuestro caso, el número de bits de entrada es 8, por ende, el número máximo a expresar es 255, el
cual necesita un registro de 12 bits.
A continuación explicaremos el funcionamiento del algoritmo
1. Inicializar el registro del número decimal en ceros.
2. Colocamos el bit más significativo del número en binario en la posición menos significativa
del número decimal.
3. Revisamos si el número en el registro decimal es mayor o igual a cinco, si es el caso sumamos
tres (0011), en caso contrario no realizamos nada.
4. Realizamos un corrimiento a la izquierda .Repetimos desde el paso 2 el número de bits del
registro binario menos una vez.
5. Realizar el paso 2
Pero lo anterior es un algoritmo, nosotros necesitamos saber cómo interpretarlo para su debida
simulación.
Sea el número binario a ingresar: A7A6A5A4A3A2A1A0
En primer lugar observamos que recién cuando desplazamos los tres primeros bits (A 7A6A5), podemos
determinar si el número en el registro decimal es mayor igual a cinco. Para determinar esto
realizaremos las siguientes operaciones lógicas.

Fig. 8 Determinación del valor del bit D5


De la figura anterior observamos que si los tres primeros bit representan un número mayor o igual a
cinco el valor del bit D5 será 1, de lo contrario su valor será 0. ¿Y para qué sirve determinar el valor
de este bit? La respuesta es sencilla, si revisamos nuestro algoritmo, en el paso 3, nos indica que
sumemos tres (0011) si el número en cuestión es mayor o igual a cinco. Al momento de simular
usaremos un sumador de 4 bits. Los números a sumar serían los siguientes 0A 7A6A5 y 00D5D5

Fig. 9 Sumador 1
Nuestro nuevo número será B2B1B0, que si D5 es 0 (A7A6A5 menor a 5) seguiría siendo el mismo
número (A7A6A5).
Realizaremos una iteración más cuando desplazamos A4
Fig. 10 Determinación del bit D4
Este bit D4 cumple la misma función que el bit D5. También emplearemos un sumador

Fig. 11 Sumador 2
Y seguiremos realizando esos pasos el número de bits del registro binario menos una vez, es decir 7
veces en total.

Fig. 12 Simulación del ejercicio 3

4. Diseñar y simular en Proteus e implementar un circuito sumador-restador de dos números de 8 bits.


Los números están en formato BCD (cada dígito debe ser menor a 10) y la visualización también debe
ser en formato BCD y mostrarse en display de 7 segmentos (para la visualización emplear el circuito
de ejercicio 5). Ejemplo:

Fig. 13 Simulación ejemplo de SUMA Fig. 14 Simulación ejemplo de RESTA


Para comenzar la realización del circuito se tomó como primer número D1U1 y segundo número
D2U2, donde de “D” vendría a ser el orden de las decenas y “U” el orden de las unidades. Como se
sabe por conocimiento básico de suma y resta para obtener el resultado primero se relaciona U1 y U2
y luego D1 y D2, para lo cual hay que tener en cuenta los siguientes casos:
1er--->la suma dada tiene que expresarse en BCD
2do--->Cuando la suma de U1 y U2 sea mayor a 10.
3er-->Cuando en la Resta, U1 < U2.
4to--->Debido al 2do caso la Resta de D1 y D2 tenemos que restarle 1 más
5to--->Este más que un caso es una consideración de diseño ya que queremos que debido a una
entrada queremos que sume o reste nuestro circuito , para nuestro caso haremos que cuando le
entreguemos una entrada de 0 nuestro circuito sume y cuando le asignemos una entrada de 1 nuestro
circuito reste.

Para 1er y 2do caso tomaremos los siguientes circuitos del aula virtual y los juntaremos “Sumador
en BCD” y “04 sumador restador completo 7483” quedando de la siguiente manera.
Fig. 15 Simulación ejemplo de SUMA en el sumador restador

Fig. 16 Simulación ejemplo de RESTA en el sumador restador

Como se puede apreciar las 2 figuras adjuntas el circuito funciona correctamente tanto como para la
suma como para la resta (el cual está representado la suma con un bit 0 y para la resta con un bit 1).
-Cuando la suma de “8” y “7” este es 15 entonces para el resultado aparecerá el número “5” llevando
un 1 el cual se sumará al acarreo del segundo circuito para las decenas.
-Cuando la resta de “8” y”7”este es 1 entonces para el resultado aparecerá el número “1”.

Pero para el 3er caso (cuando U1 < U2) para la suma no habría ningún problema el inconveniente
surge en la resta ya que el resultado no es el esperado según la siguiente figura que se mostrará a
continuación
Fig. 17 Simulación ejemplo de RESTA resultado no querido
Nos damos cuenta que el número mostrado en la resta es “2” suponiendo los números (A5)-(C7) el
resultado debería ser “8” prestando una unidad de las decenas para que hacia sea “15”- “7”. Para lo
cual planteamos la siguiente Solución:

Haciendo varias pruebas nos damos cuenta que siempre el número que nos da el circuito más el
número que queremos es igual a 10 es decir: n + p = 10
Donde:
n: El número que tenemos
p: El número que queremos
Para llegar al número querido hacemos uso del siguiente algoritmo el cual luego con los sumadores
74LS83 podremos adicionar al circuito

Fig. 18 Algoritmo requerido

Luego haciendo uso de los sumadores llegamos al siguiente circuito (debido al espacio se tomó foto a
la adición del circuito).
Fig. 19 Simulación del algoritmo requerido

Se puede notar en el screenshot que primero se le adiciona 6 o 0, esto depende si estamos trabajando
con la suma o resta o si el número a operar es U1 < U2, Luego se le sacamos complemento a 2 del
número dado con el cual se usarán XOR (74LS86) y finalmente se sumará “1” con otro sumador de
esta manera en la parte de las unidades está terminado y ya nos bota lo que queríamos al comienzo.

Ahora para la parte de las decenas tenemos que agregar el acarreo que se llevó cuando la suma de U1
y U2 sea mayor igual a 10 o cuando tuvimos que prestar 1 de las decenas en la resta ya que U1 < U2
por lo que se hace lo siguiente en el circuito.

Fig. 20 Simulación Parte de la suma de decenas


Como se ve en la figura al acarreo del sumador se le ha agregado una compuerta OR el cual la
entrada LLEVAN es cuando la suma de unidades es mayor o igual a 10 y es por eso que lleva uno
cuando se suman las decenas.
Finalmente hay que adicionar cuando U1<U2
Creamos el Deducimos el siguiente algoritmo
En nuestro circuito D1-D2=m
Pero si U1<U2 entonces m’=m-1, donde m’ es el número que nos debería salir para la resta
Finalmente por complemento a 2.m’= m+14+1=m+15

Fig. 21 Algoritmo de suma de 15


Como se ve en los ejemplos del algoritmo el sumador nos botara valor de 18 o 20 con el acarreo de
salido pero si tomamos solamente los 4 primero bits estaríamos obteniendo 2 y 4 que es como si
estuviéramos restando 1 (-1).

Fig. 22 Simulación del algoritmo de resta 1


Como se muestra en la simulación al circuito se le adiciona un sumador para sumar 15 siempre y
cuando U1<U2 sino sólo sumará 0 .

Fig. 23 Simulación de la suma de D1 y D2


Finalmente en el mismo circuito se ve que si la suma de D1 y D2 es mayor o igual a 10 la salida
“LLEVAN2” irán de frente al decoder de la centena.

5. Diseñar, simular en Proteus e implementar un circuito multiplicador combinacional de dos dígitos


hexadecimales de 4 bits cada uno (emplear thumbswitch en el Proteus). El resultado debe visualizarse
en BCD en tres display de 7 segmentos.

Fig. 24 Simulación de un multiplicador de 2 números de 4 bits.


Para el análisis de esta simulación, tenemos que tener en cuenta el acarreo de cada suma y las
funciones lógicas que se obtienen para cada uno.
El resultado obtenido sale en binario, y para llevarlo a BCD se usará la simulación del problema
anterior.

Fig. 25 Multiplicación cifra a cifra de cada número.

6. Diseñar y simular en Proteus una calculadora digital para dos dígitos binarios de 4 bits cada uno
(utilice thumbswitch): NUM1 y NUM2. La calculadora debe realizar las siguientes operaciones, las
cuales deben ser visualizadas en BCD (tres display de 7 segmentos cada uno).
● Suma: NUM1 + NUM2.
● Resta: NUM1 – NUM2
● Multiplicación: NUM1*NUM2
● Cuadrado: NUM1*NUM1
Cada operación se indica mediante un switch. Prever la lógica necesaria para evitar que se pueda
solicitar más de una operación al mismo tiempo.

Fig. 26 Simulación del problema 6

Para desarrollar del circuito utilizamos sumador y como el circuito tenía que cumplir varias funciones
como sumar restar y multiplicar por condición del problema utilizamos multiplexores.
LABORATORIO 3B: CIRCUITOS PARA EL INGRESO DE DATOS Y SU
ALMACENAMIENTO EN REGISTROS
1. Diseñar y simular en Proteus un ALU de 8 bits empleando 74181. Los valores de los dos
operandos de 8 bits, deben ser ingresados mediante thumbswitch. Adicionalmente los selectores de
funciones y de modo deben ser ingresados mediante logicstate. El resultado debe visualizarse en
display virtuales de Proteus.
S: Selecciona la operación a usar.
M: Selecciona si las operaciones serán del tipo lógicas o aritméticas (M=1, M=0) respectivamente.
Cn: Entrada de un acarreo anterior.
Cn+4: Acarreo de salida, se puede colocar en cascada para conectarlo con otros 74LS181.

Fig. 27 Simulación de un ALU usando 74LS181.

Fig. 28 Funcionamiento de las entradas del 74LS181.


2. Diseñar, simular en Proteus e implementar un decodificador de teclado empleando el 74C922.
Adicione a cada una de las cuatro salidas del 74C922 una resistencia y un led para visualizar la salida.
Que indica el pin DA?
Este pin indica el momento en que una tecla es presionada dando el entregando el valor de 1 en la
salida del pin DA el tiempo que se esté presionando cuando este se deja de presionar vuelve a su
estado normal de 0.

Fig. 29 Simulación del problema 2

Fig. 30 Simulación del problema 2 adicionando las resistencias y leds para ver el cambio
3. Al circuito anterior, diseñar, simular en Proteus e implementar un circuito basado en el decoder
74LS154, que permita visualizar en un display de 7 segmentos (ánodo o cátodo común), el carácter
que representa cada tecla del teclado matricial 4x4. Considerar que la tecla * representa al carácter F y
la tecla # representa al carácter E. Por ejemplo: si presiona la tecla 5, en el display se debe visualizar
el carácter 5.
Basándonos en el circuito anterior y usando un decoder 74LS154 podemos realizar lo pedido.
El 74LS154 es un decodificador de 4 a 16 líneas y sus salidas se habilitan en ceros.
Lo primero que hacemos es elaborar la tabla de verdad. Para ello debemos “calcular” cuantas entradas
son: como tenemos 16 combinaciones, entonces tenemos cuatro entradas digitales

Tabla 1. Tabla de verdad del ejercicio 3


Como el decoder produce ceros cuando son activados, entonces trabajaremos con Max-Términos.
Fig. 31 Simulación del ejercicio 3

4. Empleando el siguiente circuito (Ejemplo 3 del aula virtual) y todo lo aprendido, diseñar y simular
en Proteus una calculadora que tenga las siguientes funcionalidades:
● Ingreso por teclado, de dos números de dos dígitos BCD cada uno de ellos (NUM1 y NUM2).
o Estos números deben ser almacenados en latch.
o Solo se almacena en los latch, los dígitos decimales (teclas del 0 al 9).
● Al presionar la tecla *, se reinicia el teclado y se borra (pone a cero) todo lo almacenado en
los latch y lo visualizado en los display de 7 segmentos.
Las operaciones aritméticas implementadas son:
o Tecla A: NUM1 + NUM2
o Tecla B: NUM1 - NUM2
o Tecla C: NUM1 * NUM2
Fig. 32 Simulación del problema 4

Para la simulación del siguiente circuito se tomó en cuenta el la simulación del problema 6A las
variables que realizamos fueron:
● Ingresar los números de 4 bits por teclado
● los números que fueron ingresado fueron almacenados en 74LS373
Cuando presionamos la tecla (*) se reinicia esto quiere decir que almacenamos un nuevo valor en la
memoria (todos ceros) entonces cualquier operación que realice ya sea multiplicación o suma
siempre en los led se visualizar cero .
Para hacer que con la teclado (*) reinicie solo basta con identificar los bits que lo identifica y solo
realizar funciones lógicas convenientemente lo que el problema nos pida

También podría gustarte