tutorial para programar en xilinxx

23
Tutorial 1 FPGA Xilinx Spartan3 TUTORIAL PROGRAMACION DE FPGA EN SOFTWARE XILINX-ISE WEBPACK El objetivo del tutorial, es enseñar al alumno el uso y programación de los FPGA’s. Por medio del VHDL (Very high speed integrated circuit Hardware Description Language), el software Xilinx-ISE WEBPACK para su implementación y el software Digilent ExPort, este último para descargarlo al dispositivo FPGA. Se realizará un sumador de 3 bits, como se muestra a continuación I. Se expresa la ecuación. C B A Suma + + = II. Se realiza la tabla de verdad en base a la ecuación con todas sus posibilidades: donde “n” son el número de variables de entrada. 4 2 2 n = = 8 4 2 1 2 1 A B C SC S 0 0 0 0 0 0 0 1 0 1 0 1 0 0 1 0 1 1 1 0 1 0 0 0 1 1 0 1 1 0 1 1 0 1 0 1 1 1 1 1 III. Se reduce la ecuación, utilizando las reglas del algebra booleana. ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) C B A S C B A C B A S BC C B A C B C B A S ABC C B A C B A C B A S C B A BC SC C B C B A A A BC SC ABC C AB C B A BC A SC = + = + + + = + + + = + = + + + = + + + = 1 Electrónica Digital M.C. Lidia Rascón M.

Upload: juan-guillermo-medina-prieto

Post on 08-Apr-2015

2.186 views

Category:

Documents


2 download

DESCRIPTION

Manual para programar FPGA's, en Xilinix.ISE WEBPACK

TRANSCRIPT

Page 1: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

TUTORIAL

PROGRAMACION DE FPGA EN SOFTWARE XILINX-ISE WEBPACK

El objetivo del tutorial, es enseñar al alumno el uso y programación de los FPGA’s. Por medio del VHDL (Very high speed integrated circuit Hardware Description Language), el software Xilinx-ISE WEBPACK para su implementación y el software Digilent ExPort, este último para descargarlo al dispositivo FPGA. Se realizará un sumador de 3 bits, como se muestra a continuación

I. Se expresa la ecuación.

CBASuma ++=

II. Se realiza la tabla de verdad en base a la ecuación con todas sus posibilidades: donde “n” son el número de variables de entrada. 42 2n = = 8

4 2 1 2 1

A B C SC S0 0 0 0 00 0 1 0 10 1 0 0 10 1 1 1 01 0 0 0 11 0 1 1 01 1 0 1 01 1 1 1 1

III. Se reduce la ecuación, utilizando las reglas del algebra booleana.

( ) ( )( )

( ) ( )( ) ( )( )CBAS

CBACBAS

BCCBACBCBASABCCBACBACBAS

CBABCSCCBCBAAABCSCABCCABCBABCASC

⊕⊕=⊕+⊕=

+++=

+++=

⊕+=+++=

+++=

1 Electrónica Digital M.C. Lidia Rascón M.

Page 2: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

IV. A continuación se configura la programación en el software Xilinx-ISE WEBPACK Primero es recomendable crear una carpeta en la unidad C, para guardar cada proyecto que se realice, ya que al no existir un orden los archivos que se generan pudiesen guardarse en otras ubicaciones y al momento de ejecutarse, al no encontrarse los archivos en la carpeta creada en C, pudiese generar un error.

1. Se crea la carpeta en la unidad C.

La carpeta se llamará “Tutorial

Sumador”.

2. Se abre el programa (start → programs → Xilinx ISE Design Suite → Project Navigator).

2 Electrónica Digital

3. Se inicia un nuevo proyecto.

M.C. Lidia Rascón M.

Page 3: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

4. Se nombra el proyecto, para fines practicos lo llamamos

SUMADOR_TUTORIAL.

Se busca la carpeta en donde se desea

guardar el proyecto, en nuestro caso

utilizamos la carpeta creada en C,

“Tutorial Sumador”.

Nombre del proyecto.

5. Se selecciona las opciones de acuerdo a las caracteristicas del FPGA y se le da clic en “Next”.

3

Electrónica Digital M.C. Lidia Rascón M.

Page 4: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

6. Se selecciona “New Source”.

7. Se selecciona el modulo VHDL y se escribe un nombre al archivo, que en este caso se nombrara igual SUMADOR_TUTORIAL y se selecciona ”Next”.

4 Electrónica Digital M.C. Lidia Rascón M.

Page 5: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

8. Se introducen las variables y se definen cuales son entradas y salidas en la columna de “Description” y por último se selecciona “Next”.

En esta opción elije si es entrada o

salida.

9. Se termina de configurar el proyecto y se da clic en “Finish”.

5 Electrónica Digital M.C. Lidia Rascón M.

Page 6: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

10. A continuación aparece la pantalla, donde muestra si se desea crear el directorio del proyecto, donde se selecciona la opción “Yes”.

11. Se selecciona “Next”.

6 Electrónica Digital

M.C. Lidia Rascón M.

Page 7: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

12. Se selecciona nuevamente “Next”.

13. Se finaliza el proyecto, seleccionando la opción “Finish”.

7 Electrónica Digital M.C. Lidia Rascón M.

Page 8: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

14. Se selecciona “OK” en la pantalla emergente titulada “Adding Source Files…”. (En versiones anteriores puede no aparecer la siguiente pantalla.)

15. Se observa las Iibrerias predeterminadas.

8 Electrónica Digital M.C. Lidia Rascón M.

Page 9: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

16. Se escriben las ecuaciones del sumador de 3 bits en el lenguaje VHDL en el cuerpo del programa (begin-end).

Cuerpo del programa

17. Se compila el programa en la ventana de “processes”, en “Synthesize- XST” se da doble clic para compilar el programa y emergerá una pantalla donde se aceptan los cambios.

9 Electrónica Digital

M.C. Lidia Rascón M.

Page 10: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

10 Electrónica Digital

18. Si apareciese algún o algunos WARNINGS, se recomienda volver a compilar con un clic derecho en “Synthesize- XST” y en “rerun”.

19. En la ventana de “processes”, a

continuación se despliegua el árbol de “Synthesize- XST” y se selecciona dando doble clic en “View RTL Schematic” para ver su diagrama esquemático.

20. Aparece la vista del diagrama, si se le da doble clic dentro del cuadro que

encierra la compuerta, aparecen los diagramas de sus componentes. Si se da doble clic fuera del recuadro que encierran las compuertas, regresará a su forma simplificada.

M.C. Lidia Rascón M.

Page 11: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

21. Forma del diagrama desarrollado.

22. En la primer ventana de “Synthesis/Implementation”(en versiones

posteriores a la versión 9.02 sólo aparece como “Implementation”), dar un clic derecho y agregar nueva fuente (New Source) para crear los diagramas de tiempo para la simulación.

11 Electrónica Digital M.C. Lidia Rascón M.

Page 12: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

Nota: Para poder agregar una nueva fuente, en la ventana de “Processes”, la pestaña de “Source” debe estar seleccionado.

23. Se selecciona la opción “Test Bench WaveForm” y al archivo se nombra

diferente que el archivo anterior, en este caso se nombró “SUMTUT”.

12

Electrónica Digital M.C. Lidia Rascón M.

Page 13: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

24. Se asocia este archivo con el anterior dando clic en “Next”.

25. Se finaliza la asociación.

13 Electrónica Digital M.C. Lidia Rascón M.

Page 14: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

26. Se asiganan los parametros. Para el caso se da un tiempo de reloj alto y bajo de 10 nanosegundos durante el cambio de fase y un tiempo total de simulación de 100 ns.

Ventana con datos predeterminados.

Se selecciona el término LSB

Se selecciona la opción “Dual

Edge”

Se deselecciona la opción

14 Electrónica Digital M.C. Lidia Rascón M.

Page 15: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

27. Se acomoda y realiza los cambios necesarios para crear el diagrama de

tiempos con las señales de entrada, de acuerdo a las entradas de la tabla de verdad.

28. Se guardan los cambios.

29. En la ventana de source, en el menu de “Sources for:” se selecciona “Behavioral Simulation” y en la ventana “processes”, se selecciona la opción “Simulate behavioral Model” se da doble clic, para ver el comportamiento de las salidas.

15 Electrónica Digital M.C. Lidia Rascón M.

Page 16: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

30. Si aparece esta pantalla, regresa al paso anterior y se ejecuta de nuevo en

“rerun”, acepatando los cambios. 31. Para correr la simulación, oprime el botón que se ecuentra en la barra de

16 Electrónica Digital M.C. Lidia Rascón M.

Page 17: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

herramientas .

32. Se regresa nuevamente al despliegue de la ventana de “Sources” y se

33. Se selecciona la opción “Implementation Constraints File” y se nombra el archivo como el primero.

selecciona la opción “Synthesis/Implementation”, y se un clic derecho en cualquier parte de la ventana para agregar una nueva fuente “New Source”.

17 Electrónica Digital M.C. Lidia Rascón M.

Page 18: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

34. Se finaliza.

18 Electrónica Digital M.C. Lidia Rascón M.

Page 19: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

35. En la ventana de “processes” se selecciona la opción “Edit Constraints (Text)”. Aquí se declara las entradas y salidas de acuerdo a la hoja de especificaciones de la compuerta.Una vez realizado se guardan los cambios.

19 Electrónica Digital

36. Se selecciona la opción “Generate Programming File” y se da doble clic para

generar el archivo.bit, que se usa para la configuracion del FPGA.

Entradas y salidas del circuito, según la hoja de datos del FPGA.

Nota: Se debe seleccionar esta parte para poder ver la opción “Generate Programming File”, de lo contrario no aparecerá.

M.C. Lidia Rascón M.

Page 20: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

37. Por último aparce una ventana de diálogo y se cierra, por tanto nuestro programa queda finalizado.

38. El archivo .bit se guarda en la carpeta que se creo en C.

20 Electrónica Digital M.C. Lidia Rascón M.

Page 21: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

V. A continuación se presenta el modo de programación del circuito.

1. Se abre el programa (start → programs → Digilent → Adept → ExPort).

2. Se agrega el archivo para programar el circuito en “Add File...”, en el menú o

el icono de acceso directo.

21 Electrónica Digital

M.C. Lidia Rascón M.

Page 22: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

22 Electrónica Digital

. Se busca el archivo .bit en la carpeta creada para el sumador en la unidad C

. Una vez abierto aparece disponible en la ventana de “Configuration Files”. A

3

y se abre.

continuación se selecciona el archivo del menú y se da clic en el botón de “Initialize Chain”.

4

M.C. Lidia Rascón M.

Page 23: Tutorial Para Programar en Xilinxx

Tutorial 1 FPGA Xilinx Spartan3

23 Electrónica Digital

5. Se busca el nombre de nuestro archivo agregado y se da clic en “Program Chain”, para hacer la descarga al circuito del FPGA.

. Por último, emerge un mensaje diciendo que el dispositivo ha sido

program

7. program rcuito.

Autores del tu

EdDiego Alonso López Medina Juan Ángel Ibarra Moreno

6ado exitosamente y se la da “OK”..

Así se concluye este tutorial, donde se enseño una forma sencilla de ar un FPGA, desde sus ecuaciones hasta descarga final al ci

torial: M.C. Lidia Rascón M.

uardo Martínez Mejía

M.C. Lidia Rascón M.