Sistemas Digitales
Sistemas Digitales
Sistemas Digitales
INDUSTRIAL
SISTEMAS DIGITALES
TEMA 10: CIRCUITOS ARITMETICOS
10.1. INTRODUCCIÓN
El público general piensa que los dispositivos digitales son máquinas de calcular
rápidas y precisas. La calculadora y computadora digital son probablemente la razón
de ello. Los circuitos aritméticos son comunes en muchos sistemas digitales y se verá
que con sencillos circuitos lógicos combinacionales (puertas lógicas conectadas) se
pueden realizar operaciones de: sumar, restar, multiplicar y dividir. Este capítulo cubre
la aritmética binaria y la forma en que se realiza con circuitos lógicos.
1
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
los sistemas digitales. En esta sección se presentan el semisumador y el sumador
completo.
10.3.1. EL SEMI-SUMADOR
Recordemos las reglas básicas de la suma binaria expuestas en el Capítulo 2:
Todas estas operaciones se realizan mediante un circuito lógico denominado
semi-sumador.
Un semi-sumador admite dos dígitos binarios en sus entradas y genera dos dígitos
binarios en sus salidas: un bit de suma y un bit de acarreo.
Los semi-sumadores se representan mediante el símbolo lógico de la Figura
2
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Tabla 1. Tabla de verdad de un semi-sumador
Recuerde que la operación OR-exclusiva se implementa con puertas AND, una puerta
OR e inversores.
El sumador completo tiene que sumar dos bits de entrada y un acarreo de entrada.
Del semi-sumador sabemos que la suma de los bits de entrada A y B es la operación
OR-exclusiva de esas dos variables, A B. Para sumar el acarreo de entrada (Cin) a
los bits de entrada, hay que aplicar de nuevo la operación OR-exclusiva,
obteniéndose la siguiente ecuación para la salida de suma del sumador completo:
∑= (A B) Cin
3
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Tabla 2. Tabla de verdad un sumador-completo
Esto significa que para implementar la función del sumador completo se pueden
utilizar dos puertas OR exclusiva de 2 entradas. La primera tiene que generar el
término AB, y la segunda tiene como entradas la salida de la primera puerta XOR y
el acarreo de entrada, como se ilustra en la Figura.
Esta desventaja no la posee el circuito serie, este último solamente se debe acoplar
con bloques en cascada de acuerdo a la cantidad de bits de salida que se requieran.
4
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Figura 6. Sumadores con acarreo anticipado
5
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
La suma de 4 bits da un resultado en módulo 16. La suma en decimal es módulo 10.
La corrección de un decimal de peso superior se obtiene al sumar 6 cuando el
resultado excede de 9.
Primer aproximación de la implementación en Hardware
6
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Suma en BCD de dos dígitos: Arquitectura
7
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Figura 9. Circuito lógico de un sumador BCD de un digito
8
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
10.4. CIRCUITO SUMADOR PARALELO MSI 7483.
Existen circuitos integrados sumadores de la familia TTL que pueden sumar dos datos
binarios de cuatro bits cada uno en forma paralela; a su vez, cada chip puede ser
acoplado a través de los acarreos de entrada y salida para realizar expansión de los
bits del circuito sumador. Los circuitos 7483 y 74283 son equivalentes y realizan ésta
operación aritmética de cuatro bits. Los sumandos son: A3A2A1A0, B3B2B1B0 y el
acarreo de entrada C0 que es el bit menos significativo; la salida del chip se obtiene en
S3S2S1S0 además del bit más significativo de la suma llamado acarreo de salida C 4.
La figura 5.38 muestra el diagrama del circuito integrado sumador paralelo de cuatro
bits 7483; el resultado máximo de la suma se obtiene cuando todos los bits de las
entradas valen uno: A3A2A1A0 = 1111; B3B2B1B0 = 1111 y C0 = 1. Este resultado es 31
en binario: C4 = 1; S3S2S1S0 = 1111.
9
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
10.6. APLICACIONES DE LOS CIRCUITOS SUMADORES 7483 Y 74182.
Los circuitos integrados MSI 7483 y 74182 sirven para sumar datos binarios de cuatro
y más bits; también, agregando algunos dispositivos y compuertas digitales en el
circuito, se pueden obtener restadores, comparadores o convertidores de código
numérico. Con dos o más chips 7483 se hacen expansiones superiores a cuatro bits
en el tamaño de los datos a ser procesados, formando circuitos acoplados en
cascada. Las expansiones realizadas con el 74182 se implementan utilizando la
técnica de acarreo anticipado obteniendo menor tiempo de respuesta en el
procesamiento de los datos.
A continuación se muestran algunas de éstas aplicaciones con los integrados descritos
anteriormente.
10
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
La salida del circuito de la figura 5.41 debe ser tomada desde C4 como bit más
significativo del código BCD y S3S2S1S0 como los cuatro bits del grupo menos
significativo BCD. De este modo, la señal N es alta solo cuando X3 y X2 son uno lógico
ó cuando respectivamente X3 y X1, también lo son; las combinaciones diferentes a
éstas indican que la entrada está en el rango de 0 a 9 por lo que N es baja y por lo
tanto no se suma el factor de corrección seis al dato de entrada.
La figura 16 muestra un circuito que complementa a dos el dato que entra por
Z3Z2Z1Z0. Las cuatro compuertas OR-exclusivas invierten el dato Z3Z2Z1Z0 cuando la
señal C tiene un nivel lógico alto; al mismo tiempo C0 recibe también un nivel alto lo
11
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
que determina que el resultado sea complemento a dos del dato de entrada. La otra
entrada del 7483 está cableada a cero por lo que solamente en el circuito de salida
queda el resultado del cambio de signo. La fórmula aplicada es la siguiente:
A-Z =0 - Z = -Z =𝑍 +1. En la figura 5.44 se muestra un Sumador-Restador binario de
cuatro bits con corrector de resultado negativo en complemento a dos.
Figura 17. Sumador restador de cuatro bits con corrección de complemento a dos.
El Sw, se abre para que op tenga un nivel alto; cuando C 4, del primer sumador, tiene
un nivel bajo, Q se coloca en alto indicando que X<Y, por lo que el resultado, de la
12
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
resta del primer 7483 será negativo y estará complementado a dos. El segundo chip
7483 se encarga de complementar de nuevo el dato con lo cual es transformado en
binario normal. Expansión de sumadores con el 7483 y 74182.
Las operaciones aritméticas de cuatro bits no satisfacen las necesidades de los
sistemas de desarrollo, sistemas de cómputo, etc. Se necesitan resultados más
amplios en número de bits 8, 16, 32 y hasta 64 son requeridos por los sistemas y
computadoras actuales. De esta forma, se hace necesario la expansión de bits en los
circuitos realizados con chips sumadores; sin sacrificar la velocidad de transferencia
de información entre los distintos dispositivos y circuitos integrados.
La figura 5.45 muestra un circuito sumador de 12 bits con tres 7483 acoplados en
cascada; donde el acarreo de salida C4 de un chip se une con el acarreo de entrada
C0 del siguiente. La salida posee 12 bits (Z11. . . . .Z0) más el acarreo C12. Las
entradas del sumador son: (M11. . . . . M0) y (N11. . . . . N0) respectivamente.
13
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Figura 19. Sumador de 16 bits con dos niveles CLA utilizando cinco 74182 y
compuertas.
La figura 19 muestra una expansión de 16 bits, con la técnica de acarreo anticipado
utilizando para ello cinco chips 74182, compuertas AND y OR-exclusivas.
14
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
El circuito tiene dos niveles de lógica en el CLA, sin embargo, no posee acarreo de
salida C16; éste último puede obtenerse colocando otro nivel CLA con un circuito
integrado 74182. La ventaja de este circuito es la velocidad con que se ejecutan las
operaciones aritméticas.
La figura 6-15(a) muestra el símbolo de bloque para una ALU que esta disponible
como un 74LS382 (TTL) y como un 74HC382 (CMOS). Este CI de 20 terminales
opera sobre dos números de entrada de cuatro bits (A3A2A1A0 y B3B2B1B0) para
producir un resultado de salida de cuatro bits (F3F2F1F0). Esta ALU puede realizar
ocho operaciones distintas. En cualquier momento, la operación que se vaya a
realizar dependerá del código de entrada que se aplique a las entradas de selección
de función S2S1S0. La tabla en la figura 6-15(b) muestra las ocho operaciones
disponibles.
Enseguida describiremos cada una de estas operaciones.
OPERACIÓN BORRAR Cuando S2S1S0 = 000, la ALU borrará todos los bits de
la salida F, de manera que F3F2F1F0 = 0000.
OPERACIÓN DE SUMA Cuando S2S1S0 = 011, la ALU sumara A3A2A1A0 y
B3B2B1B0 para producir su suma en F3F2F1F0. Para esta operación, CN es el
acarreo hacia la posición del LSB y debe hacerse 0. CN+4 es la salida de
acarreo que proviene de la posición del MSB. OVR es la salida indicadora de
desbordamiento; detecta un desbordamiento cuando se utilizan números con
signo. OVR será 1 cuando una operación de suma o de resta produzca un
resultado demasiado grande como para caber en cuatro bits (incluyendo el bit
de signo).
OPERACIONES DE RESTA Cuando S2S1S0 = 001, la ALU restara el numero
en la entrada A del numero en la entrada B. Cuando S 2S1S0 = 010, la ALU
restara B de A. En cualquier caso, la diferencia aparecerá en F3F2F1F0.
Observe que las operaciones de resta requieren que la entrada CN sea 1.
15
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Figura 20. (a) Símbolo de bloque para el chip ALU 74LS382/HC382; (b) tabla de
funciones que muestra como las entradas de selección (S) determinan la operación
que se va a realizar sobre las entradas A y B.
OPERACIÓN XOR Cuando S2S1S0 = 100, la ALU realizara una operación XOR
bit por bit sobre las entradas A y B. Esto se ilustra a continuación para
A3A2A1A0 = 0110 y B3B2B1B0 =1100.
A3 B3 = 0 1 = 1 = F3
A2 B2 = 1 1 = 0 = F2
A1 B1 = 1 0 = 1 = F1
A0 B0 = 0 0 = 0 = F0
10.8. MULTIPLICADOR
Existenvariosmétodosbásicosparaelcálculodelamultiplicacióndedosnúmeros(A,B)deNb
its:
Almacenamiento de los 22∗𝑁 resultadosposiblesenunamemoria ROM y utilizarlos
2*N bits para el direccionamiento.
16
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Calcularlos2𝑁 funcioneslógicasyrealizarlasumacorrespondiente. En base a la
codificación anterior optimizar teniendo en cuenta una relación de dependencia
entre los números A y B y el resultado M.
La multiplicación consiste en una serie de operaciones AND entre los distintos bits y
una serie de sumas.
Se requieren de 2𝑁 compuertas AND.
Se requiere de N sumadores de N bits
Problema: Extensión del signo.
Problema: Tratamiento del signo del operando B.
17
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Figura 21. Diagrama de bloques de un multiplicador binario de 4 bits
18
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Figura 22. Tabla de la verdad y mapas K para diseñar el circuito comparador.
Realizando las simplificaciones respectivas, con los grupos formados, en los tres
mapas de Karnaugh las funciones quedan reducidas así:
19
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Figura 23. Comparador de dos bits realizado con compuertas.
20
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Las entradas IA>B, IA=B e IA<B son menos significativas que las entradas A y B del chip;
por lo cual se deben realizar expansiones en cascada tomando los bits acoplados en
estas líneas como menos significativos. La figura 5.50 muestra una expansión en
cascada realizada con este circuito integrado para formar un comparador de ocho bits
con entradas que van desde X0 hasta X7 y Y0 hasta Y7.
21
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Un circuito que se puede implementar con el 7485 es un comparador que simula el
juego aleatorio con 16 valores numéricos posibles por participante, el diseño debe
mostrar el valor de quién gana o pierde. La figura 27 muestra la solución de este
problema.
Figura 27. Circuito que muestra el ganador en una jugada con 16 valores por jugador.
22
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
El circuito multiplexor 74157 selecciona cual de los dos jugadores tiene el valor mayor
ó menor; esto depende de la posición de Sw. Si j=0 entonces el valor que se muestra
en el display es el menor de los dos; por el contrario, si j=1 se verá en él siete
segmentos el resultado mayor. Los valores que pueden colocar los jugadores van
desde cero hasta quince; sin embargo, para visualizar esto el led rojo se enciende.
Por otra parte, el led del punto decimal enciende cuando las jugadas son iguales.
Cada jugada puede ser simulada por dos contadores binarios independientes con
start / stop cada uno.
La figura 28 muestra un comparador de cuatro bits implementado con el sumador
7483, configurado como restador, y la mitad del decodificador 74139. Las compuertas
OR colocadas a la salida del sumador permiten detectar la igualdad entre M y N
colocando en nivel alto la entrada B del 74139; ésto permite diferenciar la condición
de mayor o igual cuando C4 vale uno lógico.
23
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
acuerdo con la paridad prefijada por el transmisor y receptor. La figura 29 muestra un
circuito de generación y chequeo de tres bits realizado con compuertas según la
siguiente tabla de la verdad:
24
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
paridad par y, paridad impar con C igual a uno lógico. Este mismo circuito es utilizado
como receptor para chequear la paridad de un dato; es necesario acoplar dos
circuitos de éstos para tener un sistema completo de generación y chequeo de
paridad par o impar. La figura 5.55 muestra un sistema generador y chequeador de
paridad de tres bits realizado con compuertas digitales, el tipo de paridad par e impar
puede ser seleccionada cerrando o abriendo Sw1 y Sw2, tanto en el generador como
en el detector. En el circuito detector se ha agregado una compuerta OR-Exclusiva
para seleccionar el tipo de paridad; además de esto la figura también presenta el
diagrama en bloques del sistema de generación y detección de paridad de tres bits.
25
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
10.10.2. GENERADOR Y DETECTOR DE PARIDAD 74180 Y 74280.
Es un circuito integrado generador y detector de paridad par e impar con ocho bits de
entrada (A, B, C, D, E, F, G, H); dos entradas que sirven para configurar el tipo de
paridad (Ieven, Iodd) y dos líneas de salida (even, odd). Sirve para transmitir un byte de
información más el bit de paridad; donde, el valor par (even) e impar (odd) está
determinada por la tabla de funcionamiento del chip, dado en la figura 5.56.
Figura 31. Descripción del chip generador y detector de paridad de 9 bits 74180.
26
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
10.10.3. APLICACIONES DE LOS CIRCUITOS INTEGRADOS 74180 Y 74280.
Estos chips tienen aplicaciones específicas en la generación y detección de errores
de paridad con distancia uno; también pueden ser acoplados en cascada para
aumentar el tamaño de la palabra. Tienen aplicaciones en los Sistemas de
transferencia de información a través de buses de computadoras, Control de
transmisiones de datos digitales de un lugar remoto, y muchas otras aplicaciones. El
chip 74280 fue diseñado para reemplazar exactamente a su antecesor 74180; cae
perfectamente en la misma base con la diferencia del pin tres que no debe ser
conectado en el chasis (Nc: no conection). A continuación se muestran algunas
aplicaciones y expansiones realizadas con estos circuitos integrados.
27
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
circuito completo llegue hasta 82 bits. La figura 34 muestra otra expansión en cascada
hecha con tres circuitos integrados 74280 y su equivalente realizado con el chip
74180.
Figura 34. Generador detector de paridad de 24 bits con los chips 74280 y 74180.
Figura 35. Circuito que chequea errores de transmisión de un bit en el código ASCII.
Si el número de bits en nivel lógico uno del sistema de generación y chequeo de la
figura 35 es impar el led D1 enciende indicando que hubo error de un bit en la
28
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
transmisión del código ASCII. No obstante, el cambio de dos bits en las líneas de
transferencia (Vía de comunicación) no afecta al detector de paridad el cual no
indicará error de paridad. Este circuito también puede ser configurado para que
indique error si el número de bits en uno es par. De la misma forma se puede hacer
un diseño equivalente utilizando los circuitos integrados 74180.
29
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
Tabla 6. Posiciones del error de paridad Hamming 7 bits y generación del código.
EJERCICIOS PROPUESTOS
EJERCICIO 1.- Diseñe con el 7483 un sumador de dos datos BCD de cuatro bits cada
uno; el resultado debe estar expresado en BCD natural.
EJERCICIO 3.- Diseñe con el 7483 un sumador restador de dos datos de ocho bits
cada dato; la salida debe tener el resultado en binario normal e indicar el signo menos
con el encendido de un led.
EJERCICIO 5.- Diseñe con el 7483 un sumador que muestre en displays 7 segmentos
el resultado de la operación en decimal.
EJERCICIO 7.- Implementar un comparador de dos bits por dato X1X0 e Y1Y0 con
tres entradas (IX>Y, IX=Y, IX<Y) para expansión.
EJERCICIO 8.- Diseñar con el circuito integrado 7485 un sistema digital que compare
tres datos de cuatro bits cada uno.
EJERCICIO 9.- Diseñar un circuito que muestre el resultado de dos jugadores cuando
lanzan los dados aleatoriamente.
EJERCICIO 11.- Implementar un circuito que compare tres datos (A, B, C) de cuatro
bits cada uno. El circuito debe indicar con diodos leds el dato mayor y por otra parte,
señalizar el momento cuando los tres valores son iguales (A=B=C).
30
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
EJERCICIO 12.- Realizar un circuito que compare dos datos de cinco bits cada uno.
El diseño se debe realizar con un solo chip 7485.
EJERCICIO 15.- Realizar el diseño de un comparador de 9 bits con dos chips 7485.
EJERCICIO 17.- Diseñe un restador de seis bits; el resultado debe estar en binario
normal y con señalización de signo negativo.
31
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
EJERCICIO 18.- Diseñar e implementar un sumador - restador con el chip 7483 y
compuertas digitales que visualice con diodos leds, en la salida, el resultado de la
operación. El circuito debe tener un Sw que conmute la operación aritmética del
siguiente modo: (Suma --> Sw=0) y (Resta --> Sw=1).
EJERCICIO 19.- Realizar un circuito que transforme un valor binario de cinco bits de
entrada en un código normal BCD. El valor equivalente debe ser mostrado en displays
siete segmentos y debe ser visualizado hasta el número “19”. Utilizar para esto un
chip 7483 o 74283 más las compuertas necesarias.
EJERCICIO 20.- Implementar con el 7483 un circuito que pueda complementar a dos
un dato entrante de ocho bits.
EJERCICIO 21.- Diseñar e implementar con 7483 o 74283 un circuito digital que
permita convertir un código entrante BCD de cinco bits en código binario normal.
EJERCICIO 23.- Diseñe dos generadores de paridad de nueve bits: uno par y el otro
impar; haga el diagrama con un solo chip 74180.
EJERCICIO 25.- Modificar el circuito de la figura 5.61 para que muestre en displays
el valor numérico de la posición del bit con error.
32
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
EJERCICIO 31.- Implementar un detector de errores de paridad par o impar de un bit
donde se puedan recibir palabras con un tamaño de dos bytes, más el bit de paridad.
33
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
debe pulsarse para realizar la jugada. En la tabla se indican los porcentajes ganados
o perdidos. Sin embargo, no deben ser representados en la salida del circuito digital.
34
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES
con el máximo rigor: especifique entradas, salidas y cómo están unidos los
bloques entre sí.
4) Complete la implementación del SISTEMA, a partir del diseño anterior,
considerando el código aportado por el DIRE. Conéctelo con las salidas.
5) Dados los siguientes códigos, se abriría la puerta, sonaría la alarma o ambas
cosas? Justifique su respuesta.
SUBDIRE_A → 110
SUBDIRE_B → 11
DIRE → 10110
EJERCICIO 38.- Para entrar en un recinto hay que pasar dos puertas P1 y P2. Para
entrar por P1 hay que introducir una clave compuesta por un digito BCD mayor o igual
que 6, y para pasar por la puerta P2 hay que introducir una clave compuesta por un
numero que este entre tres unidades por arriba o por debajo de la mitad del número
correspondiente a la clave introducida en la puerta P1. Por ejemplo, si la clave
corresponde al número 8, se entra por P1 y se debe introducir una clave entre 1 (4-3)
y 7 (4+3) para entrar por P2. Diseñar el circuito lógico correspondiente utilizando
comparadores, sumadores y puertas AND y OR.
35
DOCENTE: Ing. Marco Serrano Quispe SISTEMAS DIGITALES