- Definiciones y descripción general de sumador
- Tipos de sumador
- Media víbora
- Sumador completo
- Sumador BCD
Definiciones:
Un sumador es un dispositivo que suma dos números y produce el resultado. Un sumador binario es algo que se ocupa de la suma de números binarios.
Un sumador binario es un dispositivo digital y se necesita para cálculos digitales. La operación realizada en un sumador binario, obedece a las reglas de la suma binaria. Aquí dos bits correspondientes a 2n se añaden y el resultante se añade luego al acarreo de los 2n-1 dígito.
Las reglas de suma binaria se establecen a continuación. Aquí 0 es lógica baja y 1 es lógica alta. A y B son dos entradas.
A | B | Y = A + B |
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 (llevar 1) |
Ejemplo de operaciones de suma:
- 11111 + 1011 + 101 + 10 + 1
- 11111+ 1011 = 101010
- 101010 + 101 = 101111
- 110001 + 1 = 110010
Entonces la respuesta es 110010
Tipos de víbora
Esta operación de adición se implementa mediante varios circuitos digitales. Son -
- Media víbora
- Sumador completo
- Sumador BCD
Un sumador binario no solo realiza operaciones de suma, sino que también se utiliza en otras aplicaciones digitales. Decodificación de direcciones, cálculo de índices son algunas de sus aplicaciones.
Media víbora
Un medio sumador es un tipo de sumador binario que agrega un bit de datos y produce el resultado. Tiene dos entradas laterales a través de las cuales suministramos los valores lógicos digitales y tiene dos salidas a través de las cuales recibimos el resultado de la operación. El resultado se puede mostrar en un solo dígito. La salida muestra el dígito en la suma que tiene el mismo significado que los dígitos individuales agregados. La otra salida muestra el bit de acarreo.
Tabla de la verdad de Half Adder
El funcionamiento del medio sumador se muestra en la siguiente tabla de verdad.
A | B | Suma | Llevar | Suma de A y B |
0 | 0 | 0 | 0 | 00 |
0 | 1 | 1 | 0 | 01 |
1 | 0 | 1 | 0 | 01 |
1 | 1 | 0 | 1 | 10 |
Ahora, en la tabla de verdad, podemos observar que las primeras tres filas pueden representar la suma usando un solo dígito. En la última fila, la suma se representa con dos dígitos, ya que tiene 1 como acarreo. Aquí la suma es cero y el acarreo 1 debe llevarse a la posición de mayor importancia siguiente.
Suma = A ′ B + AB ′
Llevar = AB
¿Entonces
Suma = A XOR B
Llevar = A Y B
Para implementar la lógica, necesitamos una puerta XOR y una puerta AND. La puerta XOR y la puerta AND también se pueden fabricar utilizando puertas universales como NAND y NOR. Por lo tanto, se puede diseñar un medio sumador utilizando solo puertas universales.
La siguiente imagen muestra A y B como la entrada y S como la suma y C como el acarreo.
Sumador completo
Otro tipo de sumador binario es el sumador completo. También agrega datos binarios y produce la salida. Ahora, cuando se agregan dos números binarios, excepto el dígito menos significativo, hay un arrastre como Ci-1 y llevar a cabo como Ci. El sumador completo está diseñado para manejar un equipaje de mano para cada etapa. Así es como un pedido completo supera la deficiencia del medio sumador en el manejo del equipaje de mano.
Tabla de verdad de sumador completo
Ai | Bi | Ci-1 | Si | Ci |
0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 1 | 0 |
0 | 1 | 0 | 1 | 0 |
0 | 1 | 1 | 0 | 1 |
1 | 0 | 0 | 1 | 0 |
1 | 0 | 1 | 0 | 1 |
1 | 1 | 0 | 0 | 1 |
1 | 1 | 1 | 1 | 1 |
Circuito sumador completo
Si = Ai Bi Ci-1 + Ai Bi Ci-1 + Ai Bi Ci-1 + Ai Bi Ci-1 + (Uni Bi + Ai Bi) Ci-1 + (Uni Bi + Ai Bi) Ci-1
Y el transporte viene como:
Ci = Ai Bi Ci-1 + Ai Bi Ci-1 + Ai Bi Ci-1 + Ai Bi Ci-1
O, Ci = (Uni Bi + Ai Bi) Ci-1 + (Uni Bi + Ai Bi) Ci-1
O, Ci = Ai Bi + (Uni Bi + Ai Bi) Ci-1
Ahora, considere que un medio sumador tiene entradas A y B. La suma de salida es S y el acarreo es C. Ahora, la expresión de Si y Ci se puede obtener a partir de las expresiones de Suma y acarreo del circuito de medio sumador.
Si = SCi-1 + SCi-1
Ci = C + SCi-1
Ahora, para implementar un sumador completo usando medios sumadores, necesitamos dos medios sumadores y una puerta OR. Las implementaciones de sumadores completos que utilizan medios sumadores se representan en la siguiente figura.
Como podemos ver en la figura que el primer medio sumador (marcado como-) tiene la entrada Ai y Bi. La segunda mitad del sumador (marcada como-) tiene entradas de C i-1 y la salida de la primera mitad del sumador es S. La salida de la segunda mitad del sumador es Si y SCi-1.
Ahora, SCi-1 representa el llevar a cabo. El acarreo del primer medio sumador que es C y el acarreo del segundo medio sumador que es SCi-1 se alimentan como entrada de una puerta OR. La salida de la puerta OR es la ejecución final del circuito sumador completo.
Sumadores binarios paralelos
Se necesita un sumador completo para la adición de bits en cada etapa de la suma, excepto la adición de los dígitos menos significativos; por otro lado, se necesitan dos medios sumadores para completar un sumador completo. Sigue la regla de que la suma de dos números de n bits requerirá 2 * m -1 número de medio sumador y m-1 números de puertas OR. Este tipo de sumadores binarios se conoce como sumadores binarios paralelos. La velocidad de funcionamiento de este tipo de sumadores es muy rápida. Es por eso que se prefieren en los dispositivos informáticos modernos.
Agreguemos 101 y 111 como ejemplo de sumador binario paralelo. La figura que se muestra a continuación representa la suma.
El primer medio sumador (marcado como-1) agrega los bits 1 y 1 del extremo derecho para producir la suma binaria 0 y el acarreo 1 de acuerdo con las reglas de la suma binaria. La salida del medio sumador se alimenta a la entrada del primer sumador completo (marcado como-2). Las otras dos entradas del primer sumador completo son los dos bits siguientes que son 0 y 1. Las salidas del primer sumador completo son 0 como suma y 1 como acarreo. Además, se introducen en la entrada del segundo sumador completo. Las otras dos entradas son 1 y 1. Las salidas del segundo sumador completo son 1 como suma y 1 como acarreo. Entonces, el resultado de la suma es 1100.
Ahora, un punto a tener en cuenta es que en lugar de un medio sumador en la posición del dígito menos significativo, se puede usar un sumador completo con su entrada de acarreo hecha 0.
Sumador BCD
El término BCD en el sumador BCD significa decimal codificado en binario. BCD es un tipo especial de codificación binaria donde cada dígito tiene un cierto número de bits para su representación. El BCD de los primeros 10 valores decimales se muestra en la tabla.
Dígito decimal | BCD | |||
0 | 0 | 0 | 0 | 0 |
1 | 0 | 0 | 0 | 1 |
2 | 0 | 0 | 1 | 0 |
3 | 0 | 0 | 1 | 1 |
4 | 0 | 1 | 0 | 0 |
5 | 0 | 1 | 0 | 1 |
6 | 0 | 1 | 1 | 0 |
7 | 0 | 1 | 1 | 1 |
8 | 1 | 0 | 0 | 0 |
9 | 1 | 0 | 0 | 1 |
El sumador BCD tiene dos entradas que varían de 0 a 9. La salida varía de 0 a 18 y si se considera el acarreo anterior, el rango será de hasta 19.
La tabla para el sumador BCD se muestra a continuación.
De la tabla anterior, podemos observar que del 1 al 9 el binario y el BCD es el mismo. De 10 a 19 números decimales, tanto el binario como los códigos son diferentes.
El diagrama de circuito de un sumador BCD se muestra a continuación.
- En el diagrama anterior hay un sumador binario de cuatro bits que tiene la entrada como suma y leyenda. También tiene entrada de carry.
- El sumador binario da salida a la suma y una salida de acarreo.
- Ahora, usando la salida y el acarreo, el circuito está diseñado para encontrar el acarreo final.
- La salida se alimenta además a un sumador de 4 bits.
- Ahora, el circuito está diseñado para hacer que el 1st y séptimath bit del número añadido como 0 y también el 2nd y séptimard poco para hacer lo mismo que Carry. Cuando el acarreo es 1, el circuito se diseña de tal manera que el agregado será 0110. Se agrega 6 con augend para obtener el BCD.
Ejemplo de BCD
0110 + = 0101 1011
Ahora bien, esto no es válido como BCD. El número es mayor que 9. Entonces, tenemos que sumar 6 al resultado.
El resultado final será = 1011 + 0110 =
1011 + = 0110 10001
Entonces la respuesta final será 10001
¡Conozca los sustractores! ¡Haga clic aquí!
Implementación VHDL de Half sumador y Sumador completo
MODELADO DE FLUJO DE DATOS ADDADOR MEDIO BINARIO
biblioteca IEEE;
utilice IEEE.std_logic_1164.all;
la entidad half_adder_dataflow es
Puerto (a: en STD_LOGIC;
b: en STD_LOGIC;
s: fuera STD_LOGIC;
c: fuera STD_LOGIC);
terminar half_adder_dataflow;
arquitectura El comportamiento de half_adder_dataflow es
comenzar
s <= a XOR b;
c <= a Y b;
terminar Conductual;
MODELADO DE COMPORTAMIENTO DE SUJETADOR MEDIO BINARIO:
entidad SUDIPTA_ROY_HALFADD es
Puerto (A: en STD_LOGIC;
B: en STD_LOGIC;
C: fuera STD_LOGIC;
S: fuera STD_LOGIC;
Z: fuera STD_LOGIC);
final SUDIPTA_ROY_HALFADD;
arquitectura El comportamiento de SUDIPTA_ROY_HALFADD es
comenzar
proceso (A, B)
comenzar
si (A = '0 ′ y B =' 0 ′) entonces
S <= '0';
C <= '0';
elsif (A = '0 ′ y B =' 1 ′) entonces
S <= '1';
C <= '0';
elsif (A = '1 ′ y B =' 0 ′) entonces
S <= '0';
C <= '1';
más
S <= '1';
C <= '1';
terminara si;
proceso finalizado;
terminar Conductual;
MODELADO DE FLUJO DE DATOS COMPLETO
biblioteca IEEE;
utilice IEEE.STD_LOGIC_1164.ALL;
entidad SUDIPTA_ROY_FULLADD es
Puerto (A: en STD_LOGIC;
B: en STD_LOGIC;
Cin: en STD_LOGIC;
S: fuera STD_LOGIC;
Coche: fuera STD_LOGIC);
fin SUDIPTA_ROY_FULLADD;
El flujo de datos de arquitectura de SUDIPTA_ROY_FULLADD es
comenzar
S <= (A xor B) xor Cin;
Car <= (A y B) o (B y Cin) o (Cin y A);
finalizar el flujo de datos;
MODELADO DE COMPORTAMIENTO COMPLETO
entidad SAERI_DATT_FULLADD es
Puerto (A: en STD_LOGIC;
B: en STD_LOGIC;
Cin: en STD_LOGIC;
S: fuera STD_LOGIC;
Coche: fuera STD_LOGIC);
terminar SAERI_DATT_FULLADD;
arquitectura El comportamiento de SAERI_DATT_FULLADD es
comenzar
proceso (A, B, Cin)
comenzar
si (A = '0 ′ y B =' 0 ′ y Cin = '0 ′) entonces
S <= '0';
Coche <= '0 ′;
elsif (A = '0 ′ y B =' 0 ′ y Cin = '1 ′) entonces
S <= '1';
Coche <= '0 ′;
elsif (A = '0 ′ y B =' 1 ′ y Cin = '0 ′) entonces
S <= '1';
Coche <= '0 ′;
elsif (A = '0 ′ y B =' 1 ′ y Cin = '1 ′) entonces
S <= '0';
Coche <= '1 ′;
elsif (A = '1 ′ y B =' 0 ′ y Cin = '0 ′) entonces
S <= '1';
Coche <= '0 ′;
elsif (A = '1 ′ y B =' 0 ′ y Cin = '1 ′) entonces
S <= '0';
Coche <= '1 ′;
elsif (A = '1 ′ y B =' 1 ′ y Cin = '0 ′) entonces
S <= '0';
Coche <= '1 ′;
más
S <= '1';
Coche <= '1 ′;
terminara si;
proceso finalizado;
terminar Conductual;
Hola, soy Sudipta Roy. He realizado B. Tech en Electrónica. Soy un entusiasta de la electrónica y actualmente me dedico al campo de la Electrónica y las Comunicaciones. Tengo un gran interés en explorar tecnologías modernas como la IA y el aprendizaje automático. Mis escritos están dedicados a proporcionar datos precisos y actualizados a todos los estudiantes. Ayudar a alguien a adquirir conocimientos me produce un inmenso placer.
Conectémonos a través de LinkedIn –