You are on page 1of 4

Departamento de Electrónica, Sistemas e Informática.

Sistemas Digitales

Aplicación de Compuertas Lógicas para Resolver Problemas Prácticos y Circuitos
Aritméticos
La siguiente tabla de verdad representa el funcionamiento de un circuito sumador de tres bits: a,
b, c. Las salidas del sumador son dos bits: Carry y Suma, juntas representan el valor de la suma
de los 3 bits de entrada. Las salidas Carry y Suma son dos funciones independientes entre sí,
pero dependientes de a, b, c. Las dos salidas leídas juntas deben representar el valor de la suma
de los tres bits de entrada (a, b, c).
Entradas del
circuito
Son tres cada
una de un bit

Salidas del Circuito
Son dos bits las dos
salidas
Juntas forman el
resultado de la suma

a

b

c

Carry

Suma

Comentario

0

0

0

0

0

cero + cero + cero = 00 cero expresado en
dos bits

0

0

1

0

1

cero+cero+uno= 01
expresado en dos bits

uno

en

binario

0

1

0

0

1

cero+uno+cero= 01
expresado en dos bits

uno

en

binario

0

1

1

1

0

cero +uno+uno = 10
expresado en dos bits

dos

en

binario

1

0

0

0

1

uno+cero+cero = 01
expresado en dos bits

uno

en

binario

1

0

1

1

0

no+cero+uno = 10 dos en binario expresado
en dos bits

1

1

0

1

0

uno+uno+0 = 10
en dos bits

1

1

1

1

1

uno+uno+uno= 11 tres en binari expresado
en dos bits

dos en binario expresado

Desarrolla el diseño del circuito sumador de 3 bits (full_adder) aplicando los siguientes pasos que
debes incluir en tu reporte:

1

Departamento de Electrónica, Sistemas e Informática.
Sistemas Digitales
Dibuja la Caja Negra del circuitos sumador

Encuentra la ecuación booleana Canónica (o estándar)
(a,b,c).

de Carry (a,b,c) y de Suma

Suma= ( a∗ b∗c ) + ( a∗b∗ c ) + ( a∗ b∗ c ) +( a∗b∗c)

Carry=( a∗b∗c ) + ( a∗ b∗c ) + ( a∗b∗ c )+(a∗b∗c )
Captura las ecuaciones de Suma y Carry en lenguaje Verilog y Compílalo. Reporta el
código cuanto esté libre de “bugs”
module T3(
input a,
input b,
input c,
output carry,
output suma
);
assign suma = ((~a&~b&c)|(~a&b&~c)|(a&~b&~c)|(a&b&c));
assign carry = ((~a&b&c)|(a&~b&c)|(a&b&~c)|(a&b&c));
endmodule

2

Departamento de Electrónica, Sistemas e Informática.
Sistemas Digitales
Reporta el diagrama RTL que genera la herramienta de Xilinx un nivel dentro de la
caja negra. Verifica que el circuito representado con los símbolos de las compuertas
corresponden con tu ecuación canónica.

Prueba tu diseño en la Basys2: utiliza 3 switches para las entradas y dos leds para las
salidas. Realiza un video con el que verifiques que las salidas Carry_Suma
corresponde a la suma de los tres bis en las entradas. Pega un link a tu video en tu
reporte.
https://www.youtube.com/watch?v=qHSKKwmNHMo

3

Departamento de Electrónica, Sistemas e Informática.
Sistemas Digitales
Usando algebra de Boole reduce las ecuaciones canonícas del inciso b) para llegar a
su expresión mínima, repórtalas y anexa el desarrollo algebraico que hiciste para
llegar a las ecuaciones mínimas. Puedes hacer el desarrollo a mano, solo le sacas una
foto clara y legible o escaneas y lo pegas como imagen en tu reporte de archivo
Word. Reporta las dos ecuaciones reducidas. (Consulta el material de nuestro curso
en Moodle o cualquier otra página web que encuentres y te resulte de utilidad).

Prueba tu diseño reducido (ecuaciones de Cary y Suma reducidas) en la Basays2 y
verifica que el funcionamiento es idéntico al circuito del inciso e).
assign suma = a^b^c;
assign carry = ((b&c)|(a(b^c)));
Reporta referencias o sitios web consultados.
https://en.wikipedia.org/wiki/Adder_%28electronics%29
Reporta conclusiones y reflexiones sobre los aprendizajes
Para esta práctica tuve que usar más mis conocimientos de lógica matemática para poder
analizar los resultados de una tabla de verdad y traducirlos a una ecuación. Como también tuve
que ejercitar la reducción de ecuaciones booleanas.
Entrega este mismo documento Word con el nombre T3_nombre_apellido.doc* Usa
este mismo archivo para las preguntas y agrega las respuestas.

4