Practica Final: Diseno y Programacion de Circuitos
Logicos
Ing. G. Ramírez Solís
• JUAN JOSE VARGAS SAUCEDO
• LUIS DNIEL GRACIA RAMIREZ
• MIGUEL ALEJANDRO URRUTIA MARTINEZ
Noviembre 2024
Objetivo
En esta practica, los estudiantes aprendieran a disenar y programar diferentes circuitos
logicos basicos utilizando un lenguaje de descripcion de hardware (HDL), como VHDL o
Verilog, con el fin de construir un medio sumador, sumador completo, medio restador,
restador completo y un comparador que realice tres operaciones: igual a, mayor que y menor
que.
Materiales Necesarios
• Computadora con Quartus Prime instalado.
• Tarjeta FPGA o cualquier dispositivo de simulacion adecuado.
• Conexion a internet (para acceder a documentacion y recursos).
• Lenguaje de Descripcion de Hardware: VHDL o Verilog.
Instrucciones Generales
1. Para cada uno de los circuitos logicos, desarrollar un algoritmo o seudocodigo para
implementar el circuito utilizando un lenguaje de descripcion de hardware (VHDL o Verilog).
2. Simular cada uno de los disenos utilizando el simulador de Quartus o Vivado para verificar
su funcionamiento. 3. Implementar el diseno en una tarjeta FPGA y realizar las pruebas
necesarias. 4. Asegurate de comentar el codigo de manera adecuada, explicando como
funciona cada componente. 5. Para cada circuito, proporciona una breve descripcion de su
funcionamiento y la relacion con su implementacion en HDL.
1
Diseño de los Circuitos
1. Medio Sumador
Un medio sumador es un circuito que suma dos bits de entrada, generando dos salidas: la
suma y el acarreo. La tabla de verdad es la siguiente:
A B Suma Acarreo
0 0 0 0
0 1 1 0
1 0 1 0
1 1 0 1
**Algoritmo:**
• La Suma se obtiene mediante una operacion XOR entre los dos bits de entrada: S =
A⊕B.
• El Acarreo se obtiene mediante una operacion AND entre los dos bits de entrada:
C = A∧B.
**Consejos:**
• El uso de la operacion XOR es fundamental para obtener el bit de suma.
• La operacion AND es necesaria para generar el acarreo.
2
•
2. Sumador Completo
Un sumador completo suma tres bits de entrada: dos bits de datos y un bit de acarreo de la
operacion anterior. Genera dos salidas: la suma y el acarreo de salida. La tabla de verdad es:
A B C in Suma C out
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
**Algoritmo:**
• La Suma se obtiene con la operacion XOR entre los tres bits: S = (A⊕B) ⊕C in.
• El Acarreo de salida se obtiene mediante la siguiente expresion: C out = (A ∧ B) ∨ (C in
∧ (A⊕B)).
**Consejos:**
• Recuerda que el acarreo de salida depende de dos condiciones: si ambos bits de entrada
son 1, o si el acarreo de entrada se activa por la suma de los bits A y B.
3
•
3. Medio Restador
Un medio restador realiza la resta de dos bits. La salida es el bit de diferencia y el bit de
prestamos. La tabla de verdad es:
A B Diferencia Prestamo
0 0 0 0
0 1 1 1
4
1 0 1 0
1 1 0 0
**Algoritmo:**
• La Diferencia se obtiene con la operacion XOR entre los dos bits: D = A⊕B.
• El Prestamo se obtiene con la operacion AND entre la negacion de A y B: P = ¬A∧B.
**Consejos:**
• La operacion XOR es util para calcular la diferencia.
• El prestamo se genera cuando B es 1 y A es 0, por lo que la operacion AND es esencial.
5
•
4. Restador Completo
Un restador completo toma tres bits de entrada: dos bits de datos y el bit de prestamos de la
operacion anterior. Genera dos salidas: la diferencia y el prestamo de salida. La tabla de
verdad es:
A B B in Diferencia B out
0 0 0 0 0
0 0 1 1 1
0 1 0 1 1
0 1 1 0 1
1 0 0 1 0
1 0 1 0 0
1 1 0 0 0
1 1 1 1 1
**Algoritmo:**
• La Diferencia se obtiene con la operacion XOR entre los tres bits: D = (A⊕B)⊕B in.
• El Prestamos de salida se obtiene con la siguiente expresion: B out = (¬A∧(B ∨ Bin))∨ (B
∧B in).
**Consejos:**
• La diferencia se calcula de manera similar al medio restador, pero con el bit de
prestamos adicional.
6
• La salida de prestamos depende de la combinacion de las tres entradas.
5. Comparador (Igual a, Mayor que, Menor que)
El comparador ahora debe realizar tres operaciones: igual a, mayor que y menor que. Este
comparador compara dos numeros binarios de 1 bit y genera tres salidas:
7
• Igual a: Verdadero si ambos bits son iguales.
• Mayor que: Verdadero si el primer bit es mayor que el segundo.
• Menor que: Verdadero si el primer bit es menor que el segundo.
La tabla de verdad es:
A B Igual a Mayor que Menor
que
0 0 1 0 0
0 1 0 0 1
1 0 0 1 0
1 1 1 0 0
**Algoritmo:**
• Igual a: E = A⊕B
• Mayor que: M = A∧¬B
• Menor que: L = ¬A∧B
**Consejos:**
• La operacion XOR es utilizada para detectar si los dos bits son iguales.
8
• El bit mayor que se detecta si el primer bit es 1 y el segundo es 0. • El bit menor que se
detecta si el primer bit es 0 y el segundo es 1.
9
Conclusión
En esta practica final, se consolidaron los conocimientos adquiridos sobre diseno y
programacion de circuitos logicos, aplicando principios fundamentales de la electronica
digital. A traves de la implementacion y simulacion de circuitos, se logro comprender la
importancia de optimizar disenos, analizar su comportamiento y garantizar su funcionalidad
en diferentes condiciones.
El uso de herramientas de programacion, como VHDL, permitio traducir conceptos teoricos
en soluciones practicas y eficientes, destacando la relacion entre el diseno logico y la
implementacion física en hardware programable. Ademas, el proceso de depuracion y prueba
reafirmo la relevancia de seguir metodologías estructuradas y de validar cada etapa del
desarrollo.
En conclusion, esta experiencia no solo fortalecio habilidades tecnicas, sino que tambien
fomento un enfoque crítico y metodico hacia el diseno digital, sentando bases solidas para
proyectos mas complejos en el ambito de la ingeniería electronica y computacional.
10