tutorial quartus ii

12
UNIVERSIDAD NACIONAL DE INGENIERIA FACULTAD DE INGENIERIA ELECTRICA Y ELECTRONICA TUTORIAL DE HERRAMIENTA EDA QUARTUS II DE ALTERA OBJETIVO El objetivo de este tutorial es ganar familiaridad con la entrada de diseño usando el lenguaje de descripción de hardware VHDL, el proceso de compilación, y el entorno de simulación de la herramienta EDA Quartus II de Altera. TAREAS Usted va a crear un diseño que implementa una ALU (Unidad Aritmética y Lógica). Previamente, se ha creado el archivo de especificación del diseño en lenguaje VHDL, el cual puede generarse con un editor como el NOTEPAD, aunque la herramienta Quartus II cuenta con su propio editor de texto. La extensión del archivo debe ser vhd. Deberá verificar los resultados de las simulaciones funcionales y de tiempos en dos familias de dispositivos de Altera. Invocar a la herramienta EDA Quartus II: Inicio Programas Altera Design Suite 6.1 Quartus II 6.1 Quartus II 6.1 Web Edition Lo indicado en color rojo es el nombre del Grupo de programas con el cual se ha instalado la herramienta Quartus II en la PC. Seleccionar adecuadamente el nombre, en base a lo instalado en su PC. Una vez culminada la carga de la aplicación en el computador, debe aparecer un entorno como se muestra en la figura 1. Figura 1.- Entorno de trabajo de la herramienta EDA Quartus II 6.1 Web Edition La figura 1 muestra el entorno que se conoce como el “Look & Feel” de Max+Plus II. Para obtener este entorno, seleccionar en la barra de menús: Tools Customize Entonces aparecerá una ventana de diálogo similar a la que se muestra en la figura 2. Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pág. 1

Upload: lagof

Post on 22-Nov-2015

53 views

Category:

Documents


3 download

TRANSCRIPT

  • UNIVERSIDAD NACIONAL DE INGENIERIA

    FACULTAD DE INGENIERIA ELECTRICA Y ELECTRONICA

    TUTORIAL DE HERRAMIENTA EDA QUARTUS II DE ALTERA OBJETIVO El objetivo de este tutorial es ganar familiaridad con la entrada de diseo usando el lenguaje de descripcin de hardware VHDL, el proceso de compilacin, y el entorno de simulacin de la herramienta EDA Quartus II de Altera. TAREAS Usted va a crear un diseo que implementa una ALU (Unidad Aritmtica y Lgica). Previamente, se ha creado el archivo de especificacin del diseo en lenguaje VHDL, el cual puede generarse con un editor como el NOTEPAD, aunque la herramienta Quartus II cuenta con su propio editor de texto. La extensin del archivo debe ser vhd. Deber verificar los resultados de las simulaciones funcionales y de tiempos en dos familias de dispositivos de Altera. Invocar a la herramienta EDA Quartus II: Inicio Programas Altera Design Suite 6.1 Quartus II 6.1 Quartus II 6.1 Web Edition Lo indicado en color rojo es el nombre del Grupo de programas con el cual se ha instalado la herramienta Quartus II en la PC. Seleccionar adecuadamente el nombre, en base a lo instalado en su PC. Una vez culminada la carga de la aplicacin en el computador, debe aparecer un entorno como se muestra en la figura 1.

    Figura 1.- Entorno de trabajo de la herramienta EDA Quartus II 6.1 Web Edition La figura 1 muestra el entorno que se conoce como el Look & Feel de Max+Plus II. Para obtener este entorno, seleccionar en la barra de mens: Tools Customize Entonces aparecer una ventana de dilogo similar a la que se muestra en la figura 2.

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 1

  • Figura 2.- Seleccin del Look & Feel en herramienta Quartus II Solo seleccionar lo indicado en la figura 2, y apretar el botn Aceptar. En ese momento, se cerrar la herramienta Quartus II. Volverla a ejecutar y aparecer el Look & Feel de Max+Plus II con el cual se trabajar. Generar un directorio de trabajo en una unidad lgica del disco duro, por ejemplo C:\Altera\Trabajos\ALU. Una vez creado el directorio de trabajo, debe crearse un proyecto usando la herramienta Quartus II. Para esto, ir a la barra de men y seleccionar: File New Project Wizard como se muestra en la figura 3. Luego de establecer la seleccin, van a aparecer una serie de pantallas para definir al proyecto (figuras 4 a 9).

    Figura 3.- Creando un nuevo proyecto (1 de 7) Entonces aparece una primera pantalla para definir el proyecto (ver figura 4). A continuacin apretar el botn Next >

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 2

  • Figura 4.- Creando un nuevo proyecto (2 de 7)

    A continuacin, aparece una nueva ventana donde debe especificarse la ubicacin del proyecto y el nombre del proyecto. Deber seleccionarse como ubicacin del proyecto la unidad de disco duro y subcarpeta de trabajo que fuera definida para este tutorial. Como nombre del proyecto, escoger ALU, y como nombre del top level design entity, alu_v1. Ver la figura 5.

    Figura 5.- Creando un nuevo proyecto (3 de 7)

    Para el siguiente paso, indicar los archivos de diseo que forman parte del proyecto. En este caso seleccionar el archivo alu_v1.vhd a partir de la ventana de dilogo seleccionando el botn que contiene ... de File Name y apretar el botn Add... . Para esto, el archivo debe haberse creado previamente en el directorio de trabajo. El contenido del archivo alu_v1.vhd es el que se muestra a continuacin: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; -- The following package is needed so that the STD_LOGIC_VECTOR signals -- A and B can be used in unsigned arithmetic operations. USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY alu_v1 IS PORT ( S: IN STD_LOGIC_VECTOR(2 DOWNTO 0); -- select for operations A, B: IN STD_LOGIC_VECTOR(3 DOWNTO 0); -- input operands F: OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); -- output END alu_v1; ARCHITECTURE Behavior OF alu_v1 IS BEGIN PROCESS(S, A, B)

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 3

  • BEGIN CASE S IS WHEN "000" => -- pass A through F -- AND F -- OR F -- NOT A F -- add F -- subtract F -- increment F -- decrement F (ver figura 6).

    Figura 6.- Creando un nuevo proyecto (4 de 7)

    A continuacin, seleccionar la familia de dispositivo para el proyecto. En este caso seleccionar la Familia MAX7000S dentro de la ventana de dilogo Family y el dispositivo EPM7128SLC84-15 dentro de la lista de dispositivos disponibles (Available devices) y apretar el botn Next > como se muestra en la figura 7.

    Figura 7.- Creando un nuevo proyecto (5 de 7)

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 4

  • A continuacin, se deben seleccionar las herramientas EDA de otros fabricantes para la entrada de diseo/sntesis (EDA design entry/sntesis tool), herramienta de simulacin (EDA simulation tool) y herramienta de anlisis de tiempos (EDA timing anlisis tool). En este caso no se seleccionar ninguna, ya que se trabajarn con las propias herramientas del Quartus II. Apretar el botn Next > .

    Figura 8.- Creando un nuevo proyecto (6 de 7)

    En la ltima pantalla, aparece el resumen de lo seleccionado para el proyecto. Apretar el botn Finish.

    Figura 9.- Creando un nuevo proyecto (7 de 7)

    Una vez definido el entorno del proyecto puede apreciarse en el lado izquierdo (Project Navigator) el nombre del proyecto, y el dispositivo seleccionado. Dndole doble clic al smbolo alu_v1 debajo de la pirmide en la ventana del Project Navigator aparece una vista similar a la figura 10. A fin de poder tener las ventanas mnimas de trabajo, en caso no se obtenga la figura 10 mostrada, seleccionar lo siguiente a partir de la barra de men: View Utility Windows Project Navigator View Utility Windows Status View Utility Windows Messages Entonces podr darle doble clic al smbolo alu_v1 en la ventana Project Navigator con lo que se podr apreciar la figura 10. En este momento se gener una archivo ALU.qpf el cual especifica el proyecto en curso. La extensin qpf especifica Quartus Project File.

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 5

  • Figura 10.- Entorno de trabajo de Quartus II una vez definido el proyecto Si el archivo alu_v1.vhd no hubiera sido creado a la hora de crear el proyecto ALU, crearlo a partir de la barra de men seleccionando File New En este momento aparece una ventana de dilogo. Seleccionar la opcin VHDL File, como se muestra en la figura 11, y apretar el botn OK.

    Figura 11.- Creando un nuevo archivo VHDL Una vez tipeado el contenido que se indicara lneas arriba, salvar el mismo como alu_v1.vhd,

    seleccionando para esto el smbolo del diskette , o File Save en la barra de men. Una vez salvado el archivo, se procede a compilarlo. Primero se verificar que el archivo no tenga inconsistencias, y luego se compilar. Para analizar las inconsistencias invocar a lo siguiente: En la barra de men seleccionar Processing Analyze Current File como se muestra en la figura 12.

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 6

  • Figura 12.- Analizar archivo actual por inconsistencias.

    Si no se encontraran errores, debera obtenerse un resultado similar al que se muestra en la figura 13. Apretar el botn Aceptar. De encontrase errores, corregirlos.

    Figura 13.- Anlisis exitoso del archivo actual

    A continuacin, procedemos a compilar el diseo actual, basado en el archivo alu_v1.vhd. Para esto, seleccionar de la barra de men: Processing Start Compilation A continuacin aparece una ventana del Compiler Tool en donde se muestra el progreso de cada mdulo (Analysis & Synthesis, Fitter, Assembler, y Timing Analyzer). Ver la figura 14.

    Figura 14.- Progreso de la compilacin

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 7

  • Si la compilacin ha sido exitosa se obtiene un mensaje de aviso indicndolo, como se muestra en la figura 15. Apretar el botn Aceptar.

    Figura 15.- Compilacin exitosa del proyecto

    Si se desea, puede visualizar cada uno de los reportes generados por cada uno de los mdulos mencionados anteriormente, para un mayor anlisis. Para acceder en cualquier momento a los reportes, seleccionar en la barra de men Processing Compilation Report Previo a la simulacin del proyecto, debemos verificar el modo de simulacin como ha sido compilado el proyecto. Esto se puede verificar a partir de la barra de men, seleccionando Assignments Settings y ubicndonos en la seccin Simulator (ver figura 16).

    Figura 16.- Asignaciones para el proyecto alu_v1

    Para una simulacin funcional debemos seleccionar Simulation mode = Functional, y para una simulacin de tiempos seleccionar Simulation mode = Timing. Si la simulacin deseada es Functional y el modo de simulacin es Timing, habr que cambiarlo, y volver a compilar el proyecto, antes de simular el proyecto. Para simular el proyecto, hay que generar las seales de estmulo y esto se consigue con la herramienta Waveform Editor. Esta se puede invocar de dos maneras:

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 8

  • a) Ir a la barra de men, y seleccionar MAX+PLUS II Waveform Editor b) Ir a la barra de men, y seleccionar File New Seleccionar tab Other Files

    Vector Waveform File Entonces aparecer un entorno de trabajo para ingreso de las seales de entrada y salida para la simulacin, como la que se muestra en la figura 17.

    Figura 17.- Entorno para ingreso de seales de entrada y salida para simulacin

    Seleccionar el tamao de la grilla a 1 ns (Edit Grid Size), y seleccionar el fin de simulacin a 1 us (Edit End Time) como se muestra en la figura 18.

    Figura 18.- Seleccionando tamao de grilla y fin de simulacin A continuacin, para ingresar las seales del diseo a simular, seleccionar a partir de la barra de men Edit Insert Node or Bus y apretar botn Node Finder como se muestra en la figura 19. En el cuadro de dilogo para ingreso de los nodos, seleccionar en el cajn Filter la opcin Pins: all y apretar el botn List, y seleccionar los nodos de entrada y salida del diseo de manera individual apretando el botn >, o seleccionar todos a la vez apretando el botn >>. Para nuestro caso, seleccionar las seales de bus A, B, S y F y no las seales individuales. Ver la figura 20. Luego de esto, apretar OK , y OK.

    Figura 19.- Ventana de ingreso de nodos o bus

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 9

  • Figura 20.- Seleccin de nodos del proyecto

    Dibujar las formas de onda que aparecen en la figura 21 y salvar el archivo seleccionado el

    cono del diskette o a partir de File Save as... como alu_v1.vwf (Vector Waveform File). Los cambios en la seal A sern cada 100 ns, los de la seal B sern cada 150 ns, mientras que los de la seal S cada 50 ns. No se pueden seleccionar cambios en F, desde que es una seal de salida. Los resultados de F se obtendrn con la simulacin. Para observar la

    simulacin completa, seleccionar con el ratn, la lupa (zoom tool), y en el fondo de pantalla de las seales de tiempo, apretar varias veces el botn derecho del ratn, hasta apreciar el rango completo de simulacin (se hace zoom out). Si se aprieta el botn izquierdo del ratn se ampla el detalle de tiempos, haciendo un zoom in. Para dibujar las seales

    indicadas, debe seleccionarse el botn de la flecha (selection tool).

    Figura 21.- Seales de entrada para la simulacin del proyecto.

    Una manera fcil de generar las seales indicadas en la figura 21 es seleccionando una seal en particular, por ejemplo A, tocndola con el botn izquierdo del ratn, con lo que se obtendr

    un fondo celeste para esta seal. A continuacin, seleccionar el botn count value con lo que aparecer una ventana de dilogo con dos tabs. Para el tab Counting y para el tab Timing seleccionar lo indicado en la figura 22.

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 10

  • Figura 22.- Ingreso de valores de conteo para seal A (bus) Para la seal B, la cuenta empieza en el valor 8, que es el Start Value del tab Counting de la figura 21, y un valor de 150 ns en Count every del tab Timing de la figura 21. Para la seal S, la cuenta empieza en el valor 0, que es el Start Value del tab Counting de la figura 21, y un valor de 50 ns en Count every del tab Timing de la figura 21. A continuacin guardar todos los cambios de este archivo de formas de onda, volviendo a

    seleccionar el cono del diskette . A continuacin, realizar la simulacin del proyecto, seleccionando de la barra de men

    Processing Start Simulation o seleccionar el cono de la PC . Si la simulacin es exitosa, se obtiene una vista como se muestra en la figura 23. En este caso se simul en modo Timing, pero para este tutorial, primero hacerlo en modo funcional, y luego en modo Timing. Para la simulacin en modo funcional, escoger la opcin Functional en cuadro de dilogo Simulation mode y apretar el botn Generate Functional Simulation Netlist de la ventana Simulator Tool previo a la simulacin (figura 23), generndose automticamente una nueva compilacin. Notar que debe estar seleccionada la opcin Ovewrite simulation input file with simulation results. Si la simulacin fue exitosa apretar el botn Aceptar y seleccionar el botn Open, pidiendo confirmacin de modificar el archivo de simulacin. En este caso, apretar el botn Si.

    Figura 23.- Simulacin exitosa del proyecto

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 11

  • En la figura 23 se muestran los resultados de la simulacin en modo Timing. Puede apreciarse que existen retardos de tiempo en la seal F, ante los distintos estmulos de las seales A, B y S.

    Figura 23.- Resultado de la simulacin de tiempos del proyecto alu_v1 Por otro lado, en la figura 24 se muestran los resultados de la simulacin en modo Functional. Puede apreciarse que no existen retardos de tiempo en la seal F, teniendo una simulacin ideal o del tipo funcional, donde no se incluyen las caractersticas de tiempo del dispositivo seleccionado.

    Figura 24.- Resultado de la simulacin funcional del proyecto alu_v1 Tomar nota de los resultados de las simulaciones funcional y de tiempos del proyecto. Igualmente analizar los reportes generados seleccionando a partir de la barra de men la opcin Processing Compilation Report Finalemente, crear el smbolo del proyecto, seleccionando de la barra de men File Create/Update Ceate Symbol Files for the current File. Con esto se genera el archivo alu_v1.bsf (Block Symbol File), el cual puede ser usado en caso de usar un entorno de entrada de diseo en forma grfica, conectando cajas negras o bloques. Adicionalmente, para el proyecto en curso, cambiar el dispositivo al EPF10K20RC240-4 de la familia FLEX10K, volver a compilar el diseo y evaluar los resultados de las simulaciones funcional (Functional) y de tiempo (Timing). El cambio de dispositivo se hace seleccionando en la barra de men Assigments Device Para salir del entorno de Quartus II, cerrar el proyecto con File Close Project y luego File Exit. Si se desea generar un nuevo proyecto, cerrar el proyecto actual, y seguir todos los pasos indicados anteriormente. Para volver a cargar un proyecto, usar File Open Project, o desde la ventana del Explorador de Windows, en la carpeta del proyecto, dar doble clic al archivo de extensin qpf. Se recomienda generar carpetas independientes por cada proyecto.

    Tutorial de Herramienta EDA Quartus II Ing. MSc. Aurelio Morales Villanueva Pg. 12

    TUTORIAL DE HERRAMIENTA EDA QUARTUS II DE ALTERAInicio ( Programas ( Altera Design Suite 6.1 ( Quartus II 6.1 ( Quartus II 6.1 Web EditionTools ( Customize