Anda di halaman 1dari 35

Sistemas Digitales

Informe previo 3

Alumnos: Ramos Soto , Juan Carlos


Cruz Llata, Julio Cesar

Profesor: Galvez Legua, Mauricio


Sección: M1
Ciclo: 2018-2
LABORATORIO 3: CIRCUITOS ARITMÉTICOS Y LÓGICOS PARA EL MANEJO
DE DATOS

El Algebra de Boole:

Es un sistema matemático que utiliza variables y operadores lógicos. Las variables


pueden valer 0 o 1. Y las operaciones básicas son OR(+) y AND(·).
Luego se definen las expresiones de conmutación como un número finito de variables y
constantes, relacionadas mediante los operadores (AND y OR).
En el álgebra de Boole se cumplen las siguientes Leyes:
1) Conmutatividad: X + Y = Y + X X · Y = Y · X 2) Asociatividad: X + (Y + Z) = (X +
Y ) + Z X · (Y · Z) = (X · Y ) · Z
3) Distributividad: X + (Y · Z) = (X + Y ) · (X + Z )
4) Elementos Neutros (Identidad): X + 0 = X X · 1 = X
5) Complemento: X + X = 1 X · X = 0
6) Dominación: X + 1 = 1
X·0=0
7) Idempotencia: X + X = X
X·X=X
8) Doble complemento: X´´ = X
9) Absorción: X + X · Y = X
X · (Y + X) = X
Demostración: X + X · Y = (X · 1) + (X · Y ) = X · (1 + Y ) = X

10) DeMorgan: (A · B)´ = A´ + B´


(A + B) = A´ · B´
SUMADOR
Semisumador:
El semisumador suma dos dígitos binarios simples A y B, denominados sumandos, y
sus salidas son Suma (S) y Acarreo (C). La señal de acarreo representa un
desbordamiento en el siguiente dígito en una adición de varios dígitos. El diseño más
simple de semisumador, representado a la derecha, incorpora una puerta XOR para S y
una puerta AND para C. Dos semisumadores pueden ser combinados para hacer un
sumador completo, añadiendo una puerta OR para combinar sus salidas de acarreo. 1 La
tabla de verdad para el semisumador se detalla seguidamente:

Sumador completo:
Un sumador completo suma números binarios junto con las cantidades de acarreo. Un
sumador completo de un bit añade tres bits, a menudo escritos como A, B y Cin siendo
A y B son los sumandos y Cin es el acarreo que proviene de la anterior etapa menos
significativa. 1 El sumador completo suele ser un componente de una cascada de
sumadores, que suman 8, 16, 32, etc. números binarios de bits. El circuito produce una
salida de dos bits, al igual que el semisumador, denominadas acarreo de salida (Cout) y
suma S.
RESTADOR
Restador: En la diferencia, cada bit del sustraendo se resta de su correspondiente bit del
minuendo para formar el bit de la diferencia. El préstamo ocurre cuando el bit del
minuendo es menor al bit del sustraendo, de tal forma que se presta un 1 de la siguiente
posición significativa.
La resta se implementa mediante un sumador. El método consiste en llevar al minuendo
a una de las entradas y el sustraendo en complemento 2 a la otra entrada.
Restador Medio:
El circuito combinacional que realiza la resta de dos bits se denomina Restador medio.
El circuito tiene dos entrada binarias y dos salidas. En el circuito las entradas son
A(minuendo) y B(sustraendo) y la salida S corresponde a la diferencia y Co al
préstamo de salida.

Restador Completo:
El Restador completo realiza la resta entre dos bits, considerando que se ha prestado un
1 de un estado menos significativo. Las entradas A, B y C denotan el minuendo, el
sustraendo y el bit prestado. Las salidas S y Co representan a la diferencia y el
préstamo.
MULTIPLEXORES

Los multiplexores son circuitos combinacionales con varias entradas y una salida de
datos, y están dotados de entradas de control capaces de seleccionar una de las entradas
de datos para permitir su transmisión desde la entrada seleccionada a la salida que es
única.
La entrada seleccionada viene determinada por la combinación de ceros (0) y unos (1)
lógicos en las entradas de control. La cantidad de entradas de control que necesitaremos
para seleccionar, será el resultado de elevar el 2 a una potencia. Así, por ejemplo, a un
multiplexor de 8 entradas le corresponderán 3 de control.

Podemos decir que la función de un multiplexor consiste en seleccionar una entrada de


entre un número de líneas de entrada y transmitir el dato de un canal de información
único. Por lo tanto, es equivalente a un conmutador de varias entradas y una salida.
INTEGRADOS USADOS EN EL PROBLEMA 15

74LS373
Es un latch transparente de tipo D octal con salidas de 3 estados.
Diseñado específicamente para conducir cargas altamente capacitivas o de baja
impedancia. La alta impedancia de 3 estados y el aumento de la unidad de alto nivel
lógico proporcionan a estos registros la capacidad de conectarse directamente y
conducir las líneas de autobús en un sistema organizado por el autobús sin necesidad de
interfaz o componentes de extracción.
Los ocho latch del LS373 son latch de tipo D transparentes, lo que significa que
mientras la entrada de habilitación (C o CLK) es alta, las salidas Q siguen las entradas
de datos (D). Cuando C o CLK se toma bajo, la salida se enclava en el nivel de los datos
que se configuraron.

74LS244
Es un controlador de línea y búfer octal con salidas de 3 estados. Está diseñado
específicamente para mejorar tanto el rendimiento como la densidad del controlador de
dirección de memoria de tres estados, el controlador de reloj y los receptores y
transmisores orientados a bus. El diseñador tiene la opción de combinaciones
seleccionadas de salidas inversoras y no inversas y entradas simétricas, de bajo control
de salida (G) \ activas y entradas de control de salida complementarias (G y G \).
1. Simular en Proteus y explicar cómo funciona el siguiente circuito.

SIMULACION EN PROTEUS-CK1
Se trata de un comparador de 4 bits.
Primero se trata de obtener una resta de A y B, para eso se necesita el complemento a 1
de B y se le agrega un acarreo de entrada.
Cuando la resta es igual a 0000(Salida del sumador) significa que los números son
iguales y debido a que en las compuertas or la salida será 0, esto activara la salida que
indica que son iguales y desactivara las otras dos.
Lo siguiente es ver el acarreo de salida del sumador este será 1 cuando la resta
represente a un número positivo y será 0 cuando el número sea negativo.
2. Simular en Proteus y explicar cómo funciona el siguiente circuito:

SIMULACION EN PROTEUS-CK2

Se trata de un visualizador de un numero hexadecimal en dos displays.


Cuando el número es menor que “1010” en la salida del sumador se obtendrán los
mismos datos que en la entrada y el acarreo será “0”.
Antes de llegar al sumador y cuando la entrada sea mayor que “1010”, los datos (A3,
A2, A1) serán mayor e igual que “101”.
Usando un “or” y un “and” se puede obtener un “11” cuando la entrada sea mayor o
igual que “1010”; la salida del sumador será a partir del “000” en (S3,S2,S1)debido a
que la menor suma es “101 + 11=1000”;debido a esto el acarreo(S4) pasará a “1” en el
display de mayor peso.
3. Simular en Proteus y explicar cómo funciona el siguiente circuito:

SIMULACION EN PROTEUS-CK3

Se trata de un visualizador de un numero hexadecimal en dos displays usando


comparador.
Antes de llegar al comparador y cuando la entrada sea mayor e igual que “1010”, los
datos (A2, A1, A0) serán mayor e igual que “101”, esto generará un “1” en la salida del
comparador (A>B) debido a que se está comparando con el “100”, caso contrario si el
número es menor o igual que “100” generará un “0” en el display de mayor peso.
Al momento de llegar al sumador sabemos que si el numero es menor que “1010” la
salida es el mismo número.
Si el numero es mayor e igual que “1010” entonces los valores de (A3,A2,A1) será
mayor e igual a “101”, al cual se le tendrá que agregar un “11” para que en la salida se
obtenga a partir de “000”.
4.Simular en Proteus y explicar cómo funciona el siguiente circuito:

SIMULACION EN PROTEUS-CK4

Se observa que es un sumador de 4 bits hasta “19” visualizado en 2 displays.


Primero se compara cuando la suma (S4,S3,S2,S1) sea mayor que “1001” o el acarreo
de la suma sea 1 el cual generará un “1” en el display del mayor peso; caso contrario
tendrá un “0”.
La salida del segundo sumador será igual que su entrada mientras que la primera suma
sea menor que “1010”; si la suma es mayor o igual que “1010” se sumará con “110”
para que en la salida se inicie desde “0000”.
5. Simular en Proteus y explicar cómo funciona el siguiente circuito:

SIMULACION EN PROTEUS-CK5

Mientras la entrada de control sea un “0” lógico, el circuito funcionará como un


sumador desde “0” hasta “F” visualizado en un display.
En las salidas del “xor” serán siempre los mismos datos de entrada, por lo cual en la
salida de los sumadores será la suma inicial de los números.
El display de signo no se encenderá en este caso ya que depende de la negación del
acarreo de la suma principal y el dato de control “0”.
Cuando la entrada de control sea un “1” lógico, el circuito funcionará como un restador
con signo visualizado en 2 displays.
Primero se obtiene el complemento a “1111” del dato restador y se suma con el dato
principal con un acarreo de entrada, para obtener un numero de 4 bits que al obtener su
complemento a “1111” +”1”(acarreo de entrada del segundo sumador) se obtiene la
diferencia de los números de entrada sin signo.
La obtención del signo depende de la negación del acarreo y el dato de control “1”
El acarreo de salida del primer sumador es “1” cuando el dato restador es mayor que
dato principal, caso contrario es “0”.
6. Diseñar y simular en Proteus un circuito sumador-restador de dos números de 8
bits.
Usaremos dos sumadores (74LS83) para poder conectar los 8 bits de cada número, e
implementamos una entrada de control en el cual un “0” lógico, hará que el circuito
funcione como un sumador y un “1” lógico, como un restador.

Análisis de un circuito restado


Como se observo en el aula virtual para representar un número negativo se toma su
complemento a 1 y se le suma un 1 lógico (complemento a 2).

Como se observa el acarreo de salida del sumador es 1 cuando la resta representa un


número positivo y 0 cuando el número es negativo.

Para poder pasar o negar el bit de entrada usamos un xor , con un pin de entrada como
selector .
SIMULACION EN PROTEUS-CK6

CIRCUITO SUMADOR ( “0” logico en la variable de control )

CIRCUITO RESTADOR ( “1” logico en la variable de control )

CASO 1 : DIFERENCIA POSITIVA


CIRCUITO RESTADOR ( “1” logico en la variable de control )

CASO 2 : DIFERENCIA NEGATIVA

En este caso el led esta apagado, entonces el resultado es negativo y lo que se puede
visualizar en la barra de leds es su complemento a 2 , representado con 8 bits.

Ejemplo: 3 - 4 = - 1 ,
4 = 00000100
Complemento a 2 de 4
11111100
Efectuamos
00000011
+11111100
11111111
Complemento a 2 de 11111111
00000001
Entonces 11111111 es el complemento a 2 de 00000001 en 8 bits.
Observación: En un restador el acarreo de salida es 1 cuando la resta representa un
número negativo y 0 cuando el número es positivo.
7. Simular en Proteus y explicar cómo funciona el siguiente circuito Decodificador
de Teclado Matricial. Determinar en el simulador, la frecuencia de clock para que
funcione adecuadamente.

SIMULACION EN PROTEUS-CK7

Este circuito trata sobre la visualización en un display al presionar un teclado


hexadecimal.
Primero se usa un contador el cual es alimentado por una fuente de onda cuadrada con
altas frecuencias, así mismo las 2 salidas de menor prioridad del contador están
conectadas a un decoder 74HC139 activa con salidas en bajo el cual esta conectada al
teclado hexadecimal; al tener frecuencias altas al presionar el teclado se obtendrán las
salidas del teclado casi instantáneamente.
Luego para obtener la posición en el cual se ha presionado el teclado, se niega las
salidas de la salida del decodificador y se conectan al 74LS373 el cual funcionará solo
cuando se presione el teclado, luego se codifica la salida del 74LS373 guardado
sabiendo así los 2 bits de mayor prioridad.
Para los 2 bits de menor prioridad se niegan las salidas del teclado hexadecimal y se
conectan al 74LS343 el cual funcionará solo cuando se presione el teclado, luego se
codifica la salida del 74LS373 guardado.
Obteniendo así el numero hexadecimal presionado y visualizado en un display.
8. Diseñar y simular en Proteus circuito multiplicador combinacional de dos
dígitos de 3 bits cada uno. Emplear el sumador 7482.

De lo visto en el aula virtual :


Sean los números:
A= a2a1a0
B=b2b1b0
Efectuamos la multiplicación:

Donde:

P1 = a0b0
P2 = a1b0
P3 = a2b0
P4 = a0b1
P5 = a1b1
P6 = a2b1
P7 = a0b2
P8 = a1b2
P9 = a2b2
En total se obtienen 9 multiplicaciones de bit por bit (3 x 3) y 2 sumas usando el acarreo
del anterior para el siguiente sumando, hacemos uso del 7482 (sumador completo de 2
bits) y complementamos con un sumador completo.

SIMULACION EN PROTEUS-CK8
9. Empleando MUX 74151, diseñe y simule en Proteus un circuito decodificador de
HEX (un número binario de cuatro bits) al sistema de letras indicado en la
siguiente tabla. Las letras deben ser visualizadas en un display cátodo común:

Letras de la “a” a la “o”.

Hacemos la tabla de salidas y de entradas:

Entrada Salida
X3 X2 X1 X0 a b c d e f g
0 0 0 0 1 1 1 0 1 1 1
0 0 0 1 0 0 1 1 1 1 1
0 0 1 0 1 0 0 1 1 1 0
0 0 1 1 0 1 1 1 1 0 1
0 1 0 0 1 0 0 1 1 1 1
0 1 0 1 1 0 0 0 1 1 1
0 1 1 0 1 0 1 1 1 1 0
0 1 1 1 0 1 1 0 1 1 1
1 0 0 0 0 0 0 0 1 1 0
1 0 0 1 0 1 1 1 1 0 0
1 0 1 0 0 1 0 1 1 1 1
1 0 1 1 0 0 0 1 1 1 0
1 1 0 0 1 1 1 0 1 1 0
1 1 0 1 0 0 1 0 1 0 1
1 1 1 0 1 0 1 0 1 0 1
1 1 1 1 1 1 1 1 1 1 0

Ya que el MUX 74151 es de 8 entradas y una línea de salida


Haremos (X2, X1, X0) las 3 líneas de control.
Tendremos que usar 6 MUX 74151 ya que la salida “e” estará a 5 volts.
Entonces haciendo de pendiente las salidas a la entrada de máximo peso (X3).

Se genera una nueva tabla:

Entrada Salida
X2 X1 X0 a b c d e f g
0 0 0 ̅̅̅̅
𝑋3 ̅̅̅̅
𝑋3 ̅̅̅̅ GND
𝑋3 5V 5V ̅̅̅̅
𝑋3
0 0 1 GND X3 5V 5V 5V ̅̅̅̅
𝑋3 ̅̅̅̅
𝑋3
0 1 0 ̅̅̅̅
𝑋3 X3 GND 5V 5V 5V X3
0 1 1 GND 𝑋3̅̅̅̅ ̅̅̅̅
𝑋3 5V 5V X3 ̅̅̅̅
𝑋3
1 0 0 5V X3 X3 ̅̅̅̅
𝑋3 5V 5V ̅̅̅̅
𝑋3
1 0 1 ̅̅̅̅
𝑋3 GND X3 ̅̅̅̅̅̅
GND 5V ̅̅̅̅
𝑋3 5V
1 1 0 5V GND 5V ̅̅̅̅
𝑋3 5V ̅̅̅̅
𝑋3 X3
1 1 1 X3 5V 5V X3 5V 5V ̅̅̅̅
𝑋3

SIMULACION EN PROTEUS-CK9
10. Diseñar en Proteus un decodificador de teclado empleando el CI 74C922. El
código que genera el CI es conocido como código SCAN. Utilice un decoder
74LS154 para implementar la lógica necesaria que permita visualizar en un
display de 7 segmentos cátodo común dicho código SCAN (0 al F).

Sea la tabla del código SCAN:

Usaremos un keypad

Coordenadas :

7 = (Y1, X1) 8 =(Y2, X1) 9 =( Y3, X1) ÷=( Y4, X1)


4 = (Y1, X2) 5 =( Y2, X2) 6 =( Y3, X2) x =( Y4, X2)
1 = (Y1, X3) 2 =( Y2, X3) 3 =( Y3, X3) - =( Y4, X3)
on = (Y1,X4) 0 =( Y2, X4) “=“ =( Y3, X4) + =( Y4, X4)
Para visualizar en un display de 7 segmentos cátodo común dicho código
SCAN (0 al F)
Hacemos la tabla de salidas y de entradas:

Entrada Salida
D C B A a b c d e f g
0 0 0 0 1 1 1 1 1 1 0
0 0 0 1 0 1 1 0 0 0 0
0 0 1 0 1 1 0 1 1 0 1
0 0 1 1 1 1 1 1 0 0 1
0 1 0 0 0 1 1 0 0 1 1
0 1 0 1 1 0 1 1 0 1 1
0 1 1 0 1 0 1 1 1 1 1
0 1 1 1 1 1 1 0 0 0 0
1 0 0 0 1 1 1 1 1 1 1
1 0 0 1 1 1 1 1 0 1 1
1 0 1 0 1 1 1 0 1 1 1
1 0 1 1 0 0 1 1 1 1 1
1 1 0 0 1 0 0 1 1 1 0
1 1 0 1 0 1 1 1 1 0 1
1 1 1 0 1 0 0 1 1 1 1
1 1 1 1 1 0 0 0 1 1 1

Sea el decoder 74154 , de salidas bajas.

Sea :
Y0= 𝐷 + 𝐶 + 𝐵 + 𝐴

Y1=𝐷 + 𝐶 + 𝐵 + 𝐴

Y2=𝐷 + 𝐶 + 𝐵 + 𝐴
Y3=𝐷 + 𝐶 + 𝐵 + 𝐴

Y4= 𝐷 + 𝐶 + 𝐵 + 𝐴

Y5=𝐷 + 𝐶 + 𝐵 + 𝐴

Y6=𝐷 + 𝐶 + 𝐵 + 𝐴

Y7=𝐷 + 𝐶 + 𝐵 + 𝐴

Y8= 𝐷 + 𝐶 + 𝐵 + 𝐴

Y9=𝐷 + 𝐶 + 𝐵 + 𝐴

Y10=𝐷 + 𝐶 + 𝐵 + 𝐴

Y11=𝐷 + 𝐶 + 𝐵 + 𝐴

Y12= 𝐷 + 𝐶 + 𝐵 + 𝐴

Y13=𝐷 + 𝐶 + 𝐵 + 𝐴

Y14=𝐷 + 𝐶 + 𝐵 + 𝐴

Y15=𝐷 + 𝐶 + 𝐵 + 𝐴

Entonces:

a = Y1 Y4 Y11 Y13

b= Y5 Y6 Y11 Y12 Y14 Y15

c= Y2 Y12 Y14 Y15

d= Y1 Y4 Y7 Y10 Y15

e = Y1 Y3 Y4 Y5 Y7 Y9

f = Y1 Y2 Y3 Y7 Y13

g= Y0 Y1 Y7 Y12
SIMULACION EN PROTEUS-CK10
11. Simular en Proteus, explicar el siguiente circuito de conversión paralelo a
serial. Configure el generador de funciones a una onda cuadrada unipolar de 0
voltios a 5 voltios y 1Khz de frecuencia.

SIMULACION EN PROTEUS-CK11

Se trata de un convertidor paralelo a serial de 11 datos, que inicia en x0 y termina en


x10.
El x9 es la paridad de los datos (x1,x2,x3,x4,x5,x6,x7,x8) tal y como se ve en la gráfica
del osciloscopio.
Se limitó la cantidad de datos usando un contador 74HC193 conectado a un
decodificador 74HC154.
12. Diseñar en Proteus e implementar un circuito multiplicador combinacional de
dos dígitos hexadecimales (4 bits) cada uno. Se sugiere hacer uso del sumador
7483. Los dos dígitos hexadecimales y el resultado deben visualizarse en leds o
barra de leds.

SIMULACION EN PROTEUS-CK12

Se trata de un multiplicador de 2 números de 4 bits.


Se usó como base lo visto en el aula virtual, en este caso para 4 bits.

En total se obtuvieron 16 multiplicaciones de bit por bit (4 x 4) y 3 sumas usando el


acarreo del anterior para el siguiente sumando, luego se obtiene el resultado.
13. Simular en Proteus e implementar el siguiente circuito basado en un MUX
74151 para controlar la velocidad de un pequeño motor DC con reductor,
mediante la técnica de PWM (Pulse Width Modulation). Configure al generador
de funciones a las siguientes frecuencias y vea como trabaja el motor DC: 1, 10,
100 y 1000hz.

SIMULACION EN PROTEUS-CK13
A 1Hz

A 1 hz el periodo de x0 es de 8s.
La velocidad inicial del motor fue de 0.13 kRPM.

Notamos que la velocidad del motor varia entre 0.22 kRPM y 0.29 kRPM.
Teniendo como máximo cuando el periodo de x0 inicia y luego disminuye lentamente
hasta que vuelve a tener un nuevo impulso.
A 10Hz

El motor inició con 0.04kRPM pero luego fue disminuyendo hasta quedarse
prácticamente inmóvil.
A 100 Hz

El motor gira lentamente a 0.02 Krpm

A 1000 Hz

El motor gira a 0.15 kRPM.


Mientras más tiempo esté la salida Y del MUX en nivel alto (5v) el motor girará más
rápido.
14.Diseñar en Proteus e implementar un decodificador de teclado empleando el
74C922. El código que genera el CI es conocido como código SCAN. Adicione a
cada una de las cuatro salidas del 74C922 una resistencia y un led para visualizar
la salida.

Sea la tabla del código SCAN:

Usaremos un keypad

Coordenadas :

7 = (Y1, X1) 8 =(Y2, X1) 9 =( Y3, X1) ÷=( Y4, X1)


4 = (Y1, X2) 5 =( Y2, X2) 6 =( Y3, X2) x =( Y4, X2)
1 = (Y1, X3) 2 =( Y2, X3) 3 =( Y3, X3) - =( Y4, X3)
on = (Y1,X4) 0 =( Y2, X4) “=“ =( Y3, X4) + =( Y4, X4)
SIMULACION EN PROTEUS-CK14

En la imagen mostrada fue presionado el 5 en el teclado hexadecimal.


15. Diseñar en Proteus e implementar un circuito que transmita datos BCD en
forma bidireccional entre “extremo A” y “extremo B” empleando un bus de
comunicaciones de 4 bits. Cada “extremo” debe tener: (4 ptos)
 4 switch (DIP Switch)
 1 display de 7 segmentos (cátodo común).
 1 pulsador en cada “extremo” para indicar que se quiere transmitir 4 bits.
Si configuramos el DIP Switch del “extremo A” al valor 0011 y presionamos su
respectivo pulsador de transmisión, el dato se transmitirá al “extremo B” y se
visualizará en el display de 7 segmentos el dígito 3. Lo mismo sucede si colocamos
un valor binario en los DIP Switch de B y presionamos su respectivo pulsador de
transmisión, el dato debe visualizarse en el display del “extremo A”.
Para almacenar los 4 bits que envía un “extremo” debe emplear el latch 74LS373.
Para implementar la direccionalidad emplee el CI 74LS244 o CI 74LS245.
Inicialmente se tiene los datos de entrada cada uno en su respectivo display y sin
guardar ningún dato en los 74LS373:

SIMULACION EN PROTEUS-CK15
Ahora presionaremos el switch1 y el dato A se transmitirá al display 2 y se guardará en
el 74LS373 respectivo.

Dejamos de presionar el switch1 y quedará como el principio, pero con el dato1


guardado en su 74LS373 respectivo.
Ahora presionaremos el switch2 y se transmitirá el dato 2 al display 1 y se guardará el
dato en el 74LS373 respectivo.

Dejamos de presionar el switch 2 y todo quedará como al principio, pero con los 2 datos
guardaos en sus 74LS373 respectivos.

Anda mungkin juga menyukai