Beruflich Dokumente
Kultur Dokumente
Introducción:
En la presente guía se hará una introducción al sistema Quartus Prime CAD, pautas para la
programación en código VHDL, el proceso de diseño es ilustrado paso a paso, para
implementar un programa simple en un FPGA, Cyclone IV.
La presente guía hace uso del diseño mediante VHDL (Very High Speed Integrated Circuits).
Las capturas de pantalla han sido realizadas en Quartus Prime 16.1 Lite Edition
Inicio
Después de la instalación del programa Quartus Prime, en este caso es la versión lite,
procedemos a la creación del proyecto. Para lo cual realizaremos los siguientes pasos:
Paso 1:
Iniciamos el Quartus Prime desde el menú de inicio o escritorio, tiene que aparecer una
ventana similar a la Figura 1. De no ser así la instalación no se realizó correctamente, o no se
ha adquirido la licencia aún, esto para versión Estándar.
1
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Paso 2:
En la ventana que se abrirá, seleccionamos <New Quartus Prime Project>, y hacemos clic en
<OK> como se muestra en la Figura 3.
2
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Se debe de abrir una ventana como la Figura 4, en esta se muestra la introducción y algunas
consideraciones para los siguientes pasos. Hacemos clic en <Next>.
Figura 4: Introducción
Paso 3
3
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Paso 4
En la siguiente ventana observamos dos opciones para tipo de proyecto: Empty Project y
Project Template. El primero es un proyecto en blanco, tenemos que especificar librerías y
demás, en segundo está basado en una plantilla la cual puede ser creada o descargada
En este caso crearemos un proyecto en blanco, dejaremos en <Empty Project> como muestra
la Figura 6 y haremos clic en <Next>.
En la siguiente ventana (ver Figura 7) es para agregar alguna librería que se tenga.
Procederemos a obviar y hacer clic en <Next>.
4
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Paso 5
La siguiente ventana (ver Figura 9), es para agregar alguna herramienta, obviaremos este paso
y clic en <Next>.
5
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
6
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Programación VHDL
Paso 1
Ahora procederemos a crear un archivo para escribir nuestro código VHDL, para lo cual
hacemos clic en el menú principal: <File>, <New> como se muestra en la Figura 12
Procedemos a crear el archivo VHDL tal como se muestra en la Figura 13, luego hacemos clic
en <OK>.
7
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Después de lo anterior se tiene que generar una ventana como la Figura 14, una ventana para
escribir el código VHDL.
Paso 2
Hacemos clic en el menú principal <File>, <Save As> y guardamos con el nombre deseado en
formato de archivos VHDL (VHDL Files), es recomendable que el archivo Top sea del mismo
nombre que el proyecto, en este caso “guía_practica” (ver Figura 15).
8
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Paso 3
Para facilitar en la escritura de código VHDL, Quartus Prime tiene una herramienta muy útil
para que empiezan a programar o ayuda en el formato de escritura, este es “Insert Template”.
Para entrar a esta herramienta hacemos clic en el menú <Edit>, <Insert Template> del menú
principal. Y aparecerá una ventana igual a la Figura 17.
9
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Paso 4
En la ventana (ver Figura 18) se puede encontrar diversas plantillas para facilitar la escritura,
como estamos en codificación VHDL vamos a esta parte haciendo clic en <VHDL>, y
observaremos varias opciones.
Hacemos clic en cada una de las librerías que usaremos, en este caso Library Clause, Use
Clause, Entity y Architecture. Luego hacemos clic en <Insert> para cada una de las librerías.
Como se ve en la Figura 19, la ventana de edición quedó cargada con las plantillas. Es
importante que la operación se realice en orden, es decir, primero Library Clause, luego Use
Clause, y así sucesivamente.
10
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Paso 5
En este paso eliminamos los comentarios para que la plantilla se pueda observar
completamente.
En la Figura 20 se muestra el orden que los comandos deben de seguir: primero la librería
principal (library ieee), luego las sub-librerías que se utilizarán; segundo la entidad y sus
puertas, especificando el tipo de entrada y salida; y finalmente la arquitectura o
funcionamiento del programa.
11
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Paso 6
12
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
En caso no bote errores, se mostrará como la Figura 23, de no ser así, corregir los errores
haciendo doble clic en las líneas rojas. Generalmente son errores de sintaxis
Simulación
Antes de pasar a la implementación en la tarjeta FPGA es recomendable realizar una
simulación, para ver la respuesta para los casos mas representativos.
Paso 1
Se crea un archivo de verificación, para este ejemplo usaremos University Program VWF, que
es un vector de onda. Hacemos clic en <File>, <new> y en la ventana que aparece (ver Figura
24) seleccionamos University Program VWF.
13
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Paso 2
Clic en el menú <Edit>, <Set End Time> de Simulation Waveform Editor para poner el tiempo
final de la simulación como se muestra en la Figura 26
Después de hacer clic en <OK> se debe de mostrar una ventana similar a la Figura 25 pero
hasta 100ns.
14
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Paso 3
Clic en el menú <Edit>, <Insert>, <Insert Node or Bus> de la ventana de simulación para
escoger las puertas para la simulación.
Después de hacer <OK> en la Figura 27, la Figura 28 aparece, tenemos que hacer clic en <List>
para que encuentre los nodos; debe mostrarse como la Figura 28
15
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Procedemos a seleccionar las puertas para la simulación, haciendo clic en el ítem deseado del
cuadro izquierdo y luego haciendo clic en los íconos resaltados de la Figura 29. Al final debe
mostrarse una ventana similar a la Figura 29.
En la Figura 29 hacemos <OK> y retornamos a la ventana de Insert Node or Bus (ver Figura 30),
acto seguido hacemos en <OK>.
16
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Paso 4
La ventana que aparece debe ser similar al de la Figura 31. Es aquí donde editaremos la señal
digital de entrada para obtener todos los casos de la tabla de verdad que se presentó
anteriormente.
Seleccionar la porción que queremos cambiar de valor lógico y hacer clic en los iconos que se
han resaltado, en este caso el ‘0’ o ‘1’ dependiendo, tal como se muestra en la Figura 32
17
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Clic en <File>, <Save> para guardar nuestro vector de simulación y ponemos “guía_practica” o
cualquier nombre que se desee.
Paso 5
En caso haya error, cambiar el nombre del archivo <File>, <Save As> a un nombre diferente al
archivo de “guía_practica”, sucede que a veces no reconoce el mismo nombre del archivo
principal.
18
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Vista RTL
En la pantalla principal de Quartus Prime hacemos clic derecho en el archivo “guía_practica”
tal como se muestra en la Figura 35, luego clic en <Locate Node>, <Locate in RTL Viewer>
Finalmente se observará las puertas digitales que se han utilizado para obtener el resultado de
la tabla de verdad (ver Figura 36).
En este caso han salido las compuertas digitales conocidas y en combinación simple, pero no
siempre sucede de esta forma; en codificaciones complejas, la vista RTL del circuito hace
combinaciones largas e innecesarias para obtener el resultado. Para optimizar esto, la
codificación en VHDL nos brinda herramientas o métodos de programación que se verán en
una próxima guía.
19
Guía de programación de VHDL en Quartus Prime Franco H. Enriquez Q.
Bibliografía:
Quartus Prime Introduction Using VHDL Designs – Intel FPGA to versión QP 16.1
20