Tecnológico Nacional de México Campus Minatitlán
Nombre de los estudiantes:
Eder Alonso Hernández
Edgar Daniel Martin
Mateos
Felipe Nivon
Nombre de la materia: Diseño Digital con VHDL
Carrera: Ingeniería Electrónica
Semestre: 5
Docente: MANUEL GRACIDA AGUIRRE
Practica: 3
INTRODUCCION, Enfoque general
"Este reporte presenta el diseño e implementación de un contador binario de 4
bits, capaz de operar tanto en modo ascendente como descendente. El diseño ha
sido desarrollado utilizando el lenguaje de descripción de hardware VHDL y
simulado en el entorno de desarrollo Vivado. El objetivo principal de este proyecto
es comprender los fundamentos de la programación en VHDL y aplicarlos a la
creación de circuitos digitales secuenciales. Adicionalmente, se busca validar el
funcionamiento del contador en una plataforma FPGA, específicamente en una
tarjeta BASYS 3."
Nociones Teóricas para el Diseño de un Contador Binario
Ascendente/Descendente
Conceptos Básicos
Contador: Un circuito secuencial digital diseñado para generar una secuencia de
estados de salida predefinida. En este caso, estamos interesados en un contador
binario, que representa números en formato binario.
Flip-Flop: Un circuito secuencial elemental que puede almacenar un bit de
información. Es la unidad básica de construcción de los registros y los contadores. Los
flip-flops más comunes son los tipo D, T, JK y SR.
VHDL (Very High-Speed Integrated Circuit Hardware Description Language): Un
lenguaje de descripción de hardware utilizado para modelar sistemas digitales a nivel
de hardware. Permite describir la estructura y el comportamiento de un circuito de
manera textual.
FPGA (Field-Programmable Gate Array): Un circuito integrado programable que
permite implementar diseños digitales de forma flexible. La configuración de la FPGA
se define mediante un bitstream generado a partir de la descripción del diseño en
VHDL.
Funcionamiento del Contador
Conteo Ascendente: En cada flanco de subida del reloj, el valor del contador se
incrementa en uno, hasta alcanzar el valor máximo.
Conteo Descendente: En cada flanco de subida del reloj, el valor del contador se
decrementa en uno, hasta alcanzar el valor mínimo.
Reset: Una señal de control que fuerza al contador a volver a su valor inicial
(generalmente cero).
Control de Dirección: Una señal de control adicional que determina si el contador debe
contar hacia arriba o hacia abajo.
Diseño en VHDL
Entidad: Define el módulo VHDL, especificando sus puertos de entrada y salida.
Arquitectura: Describe el comportamiento interno del módulo. En el caso del
contador, se utiliza un proceso sensible al reloj y al reset para actualizar el valor del
contador en cada flanco de subida del reloj.
Flip-Flops: Se utilizan flip-flops tipo D para almacenar el valor actual del contador. Las
entradas de los flip-flops se calculan en función del valor actual y de las señales de
control.
Lógica Combinacional: Se utiliza para generar las señales de control de los flip-flops y
para implementar cualquier lógica adicional necesaria.
Simulación y Síntesis
Simulación: Permite verificar el funcionamiento del diseño antes de implementarlo en
hardware. Se aplica un conjunto de estímulos (valores de entrada) al diseño y se
observa la respuesta (valores de salida).
Síntesis: El proceso de transformar la descripción del diseño en VHDL en una
configuración específica para una FPGA. Las herramientas de síntesis generan un
bitstream que puede cargarse en la FPGA.
Conceptos Adicionales Relevantes
Tabla de verdad: Una tabla que muestra todas las posibles combinaciones de entradas
y las correspondientes salidas de un circuito digital.
Mapa de Karnaugh: Una herramienta gráfica utilizada para simplificar expresiones
booleanas.
Diagrama de tiempos: Una representación visual de las señales digitales en función del
tiempo.
Optimización: El proceso de mejorar el diseño en términos de área, velocidad y
consumo de potencia.
Resumen de la Práctica
En esta práctica, diseñarás un contador binario de 4 bits que puede contar hacia arriba o hacia
abajo. Utilizarás VHDL para describir el comportamiento del contador y Vivado para simularlo
y sintetizarlo para una FPGA BASYS 3. Aprenderás los conceptos básicos de diseño digital,
como el funcionamiento de los flip-flops, la creación de tablas de verdad y la utilización de
herramientas de diseño electrónico.
DESARROLLO
SOURCES
Uniendo el Sistema Digital
Reloj Digital
Contador Binario
Esquema
Simulacion
CONCLUSION
*“En este proyecto se diseñó e implementó un contador binario ascendente/descendente de 4
bits utilizando VHDL y una FPGA BASYS 3. Los resultados de la simulación demostraron que el
contador funciona correctamente en ambos modos, cumpliendo con las especificaciones
establecidas. La implementación en hardware también fue exitosa, validando el diseño en un
entorno real.
A través de este proyecto se consolidaron los conocimientos sobre diseño digital,
especialmente en lo que respecta al diseño de circuitos secuenciales y la utilización de
herramientas de diseño electrónico. Se aprendió a modelar el comportamiento de un circuito
en VHDL, a simular su funcionamiento y a sintetizarlo para una FPGA.
Como posibles mejoras futuras, se podría explorar la implementación de un contador con
mayor número de bits, la incorporación de funcionalidades adicionales como la carga de un
valor inicial o la detección de overflow/underflow, y la optimización del diseño para reducir el
consumo de recursos de la FPGA.”*
FUENTES:
Libros de Texto
Diseño de Circuitos Digitales de M. Morris Mano: Un clásico en el campo del diseño
digital que cubre los fundamentos de los circuitos secuenciales, incluyendo contadores
y flip-flops.
Diseño de Sistemas Digitales de Rabaey: Otro libro de referencia que ofrece una
visión más moderna del diseño digital, con énfasis en la síntesis y la implementación
en FPGA.