Instituto Tecnológico Superior de Lerdo
Ingeniería en Electrónica
Practica # 2 Código VHDL en Quartus
Asignatura: Diseño Digital en VHDL Unidad U1
Nombre: Grado
Catedrático: M.C. Gabriela Reyes Valdez Fecha
I. Objetivo
✓ Aprender el manejo de la herramienta de diseño de circuitos Quartus.
✓ Crear un proyecto VHDL file
✓ Compilar la descripción del circuito hasta eliminar los errores de
descripción.
✓ Simular el comportamiento del circuito para comprobar que funciona
correctamente.
✓ Realizar análisis de las prestaciones del circuito para comprobar que las
variables físicas.
II. Marco Teórico
VHDL es un lenguaje de especificación definido por el IEEE, utilizado para describir
circuitos digitales y para la automatización de diseño electrónico.
VHDL es un acrónimo proveniente de la combinación de dos acrónimos:
✓ VHSIC (Very High Speed Integrated Circuit)-Circuitos
integrados de alta velocidad.
✓ HDL (Hardware Description Language)- Lenguaje de
descripción de Hardware.
Es decir lenguaje de descripción de hardware de circuitos integrados de muy alta
velocidad.
M.C GABRIELA REYES VALDEZ / INGENIERÍA EN ELECTRÓNICA 1
VHDL es un lenguaje con una sintaxis amplia y flexible que permite el modelado
estructural, en flujo de datos y de comportamiento hardware.
Un código VHDL se compone de tres secciones:
LIBRARY/Package :(declaración de bibliotecas o paquetes) Contiene una
lista de todas las bibliotecas o paquetes necesarios en el diseño.
ENTITY: (entidad) Especifica principalmente los puertos de entrada/salida,
más constantes genéricas (opcional).
ARCHITECTURE: (arquitectura) Contiene el código que describe como
debe funcionar el circuito.
III. Desarrollo
1. Crear un archivo VHDL en Quartus.
Para crear un archivo VHDL solo es necesario ir a File-New y escoger el
proyecto para un archivo de tipo VHDL.
M.C GABRIELA REYES VALDEZ / INGENIERÍA EN ELECTRÓNICA 2
2. Se creará un nuevo archivo de edición con extensión . vhdl en el cual se
colocará el código de programación:
✓ En VHDL el punto y coma (;) indica el fin de una declaración o sentencia,
mientras que el doble guion (--) indica comentario.
3. Sección de librerías:
✓ Paquete std_logic_1164. Es obligatorio disponer de esta librería en todos nuestros diseños.
Ya que extiende el paquete estándar de VHDL contemplando las situaciones a nivel de
función lógica , pero no existe un tratamiento a nivel interruptor . Este paquete define nueve
valores para los tipos de datos STD_ULOGIC y STD_LOGIC.
• ‘U’, no inicializado, es el valor por defecto.
• ‘X’, desconocido. Es el valor que toma en casos de conflicto.
• ‘0’, el valor lógico bajo.
• ‘1’, el valor lógico alto.
• ‘Z’, representa el estado de alta impedancia.
• ‘W’, estado desconocido débil.
• ‘L’, valor lógico bajo débil.
• ‘H’, valor lógico alto débil.
• ‘-‘, valor que no importa
M.C GABRIELA REYES VALDEZ / INGENIERÍA EN ELECTRÓNICA 3
La definición BIT resulta insuficiente para describir completamente el conjunto de valores
que cualitativamente toma una señal digital. De ahí que la librería IEEE proporciona el
paquete llamado “std_logic_1164”.
✓ Paquete std_logic_arith. Define los tipos SIGEND y UNSIGNED junto con sus operadores.
Este paquete es parcialmente equivalente a numeric_std.
Con este paquete disponemos de todos los operadores aritméticos (+,-,*,ABS) y
relacionales (<,>,<=,>=,= y /=).
✓ Paquete std_logic_unsigned. Introduce funciones que permiten operaciones aritméticas,
corrimientos y comparación con señales de tipo STD_LOGIC_VECTOR que actúan como
números sin signo.
4. Sección de Entidad
La parte principal de una entidad (ENTITY) es PORT, que es una lista de especificaciones
de todos los puertos de entrada y salida del circuito.
5. Sección Arquitectura
La arquitectura contiene una descripción de como el circuito debe de funcionar:
M.C GABRIELA REYES VALDEZ / INGENIERÍA EN ELECTRÓNICA 4
6. Guardar el documento:
Para guardar el documento ir a File-Save y darle como nombre al archivo el
nombre que le dimos a la entidad:
La extensión del archivo guardado será .vhd
7. Ahora nos vamos al Project Navigator y colocamos a la entidad en top Level.
8. Compilar el programa VHDL
9. Vincular Quartus con Questa Intel
10. Verificar el funcionamiento del programa en Questa Intel Starter FPGA para cada
uno de los estados de la Tabla de Verdad de la compuerta OR.
• En Questa podemos observar que en la ventana Object podemos verificar
los estados del paquete std_logic_1164.
• Después de la simulación sin agregar estados las señales de entrada y
salida se encuentran en estado U (no inicializado o valor por defecto)
M.C GABRIELA REYES VALDEZ / INGENIERÍA EN ELECTRÓNICA 5
11. Verificar y mencionar si aparece alguno de los nueve estados del paquete
std_logic_1164 al colocar los valores de entrada de la tabla de verdad al simular
el estado de la señal de salida:
A B Salida
0 0
0 1
1 0
1 1
Conclusión
M.C GABRIELA REYES VALDEZ / INGENIERÍA EN ELECTRÓNICA 6