Video-tutorial de la semana

viernes, 13 de agosto de 2010

Ejemplo #2 (VHDL-FPGA) Programación de la tarjeta DE2 de Altera

Siguiendo con la serie de video-tutoriales, de lógica programable, se presenta ahora como programar la tarjeta DE2 de la compañía Altera usando el programa realizado en el ejemplo #1 el de la compuerta XOR que se edito y simulo en el software Active-HDL.

La tarjeta DE2 de Altera
La figura siguiente muestra los componentes de la tarjeta DE2

Como corazón de la tarjeta se usa un FPGA de la familia Cyclone II de Altera, el cual se puede observar fácilmente en la figura anterior, tiene muchos componentes esta tarjeta, poco a lo largo del blog se verá como programar algunos componentes, en este ejemplo se usa solamente un LED y dos Switch.


Programación de un FPGA

Recuerde el flujo de diseño que yo uso para programar el FPGA:

   1. Editar, compilar y simular usando el software Active-HDL.
   2. Programar el FPGA de Altera, usando el software Quartus II (obviamente también de la empresa Altera).
   3. Probar el funcionamiento de la práctica.

En la entrada anterior de este blog se mostró en el Ejemplo #1, el paso 1 del flujo de diseño, se uso el Active-HDL para editar compilar y simular un programa en VHDL, el programa era el de una simple compuerta XOR, ahora se muestra como se programa ese ejemplo.

Programar la tarjeta DE2 usando el Software Quartus II de Altera

Ahora se muestra el paso #2 del flujo de diseño, programar el FPGA.

Primero se obtiene el software Quartus II de la compañía Altera que nos permite programar sus FPGAs, se usa la versión Web Edition en su versión , totalmente gratuita y sin necesidad de licencia para su uso, se puede descargar del siguiente enlace:


Hay que tener paciencia el software pesa más de 2 gigas, de hecho yo lo baje, lo instale y por alguna razón no lo pude ejecutar en mi máquina, así que tuve que bajar la versión 9.2 con el service pack 2, no hay un enlace directo o al menos no lo encontre, pero la página de altera trae la opció para buscar, justo ahi se puede buscar el enlace para bajar el Quartus II 9.1

Antes de iniciar recuerde que el programa en VHDL ya esta realizado, se hizo en el Active-HDL, lo que se necesita es conocer la ruta donde esta guardado para después seleccionarlo en el Quartus II, la imagen siguiente muestra la ruta exacta donde Active-HDL almaceno el archivo fuente de VHDL para la compuerta XOR.


En la figura se observa la ruta, por otro lado, la tarjeta DE2 requiere la primera vez que se conecta los controladores, afortunadamente estos ya vienen en el Quartus así que automáticamente se instalan.

Finalmente se requiera conocer las conexiones de la tarjeta DE2, esto se puede ver fácilmente en el manual de usario de la tarjeta DE2 dando clic en el siguiente enlace la puedes bajar:


En el documento se observa que terminal del FPGA se va a usar para nuestro diseño, recuerde el diseño es una compuerta XOR, que tiene dos entradas (A y B) y una salida (X), las dos entradas se agregaran a switch y la salida a un LED, la figura siguiente muestra donde están ubicados los switches en la tarjeta y el LED

Ya que se identificaron los switch y leds se procede a ver el manual de usuario de la DE2 para saber que terminal del FPGA está conectado a esos componentes, para los switch son las terminales que se muestran en la imagen siguiente:


La imagen siguiente muestra las terminales del FPGA para el LED que se va a usar:


Con esto ahora si se tiene todo para programar el FPGA de la tarjeta DE2, el siguiente video tutorial muestra como se programa la DE2 usando el Quartus II.


10 comentarios:

  1. Muchisimas gracias, he estado batallando con esto por una semana... muy completo y facil de entender el tutorial.
    Gracias !

    ResponderEliminar
  2. He programado algunas cosas utilizando este metodo y me ha funcionado muy bien, ahora la pregunta es la siguiente...
    Tienen algún tutorial o material sobre como progrmar con NIOS II este mismo board, por que he seguido el tutorial que viene en el CD que traía mi board y no he logrado hacerlo funcionar y me da este problema al tratarlo de programar.
    Estoy usando el tutorial Hellow World

    Using cable "USB-Blaster [USB-0]", device 1, instance 0x00 Pausing target processor: not responding.
    Resetting and trying again: FAILED Leaving target processor paused

    De antemano, muchisimas gracias.

    ResponderEliminar
  3. Oye que crees no tenemos nada ahorita sobre el NIOS, es que lamentablemente nos hemos alejado un poquito de la lógica programable, por los microcontroladores de 8 y 16 bits, por eso ya no seguimos con los tutoriales.. lamento no poder audarte..

    ResponderEliminar
    Respuestas
    1. Ya veo... de igual forma, muchisimas gracias.
      Con lo que hay aquí he podido trabajar para lograr mis cometidos, solo preguntaba por que me habría gustado aprender sobre NIOS.
      Da gusto ver que siguen dando soporte al blog después de tanto...
      Saludos y sigan así, lo hacen muy bien.

      Eliminar
    2. Gracias por tus animos, si tenemos planeado trabajar con FPGA, CPLD, VHDL, pero un poco mas adelante, ahorita tenemos muchos proyectos pero con microcontroladores, pero en la mente esta seguir con la lógica programable, pero ya no desde este blog, ahora lo hacemos desde aca: www.sidmx.com, saludos desde Irapuato

      Eliminar
  4. Cuanto sale la placa del FPGA en argentina??

    ResponderEliminar
    Respuestas
    1. No esa tarjeta, al parecer ya no la venden, una parecida: http://www.altera.com/education/univ/materials/boards/de0-nano/unv-de0-nano-board.html cuesta $119.43 dlares americanos.. aca en México.. para Argentina quiza unos 30 dolares de envio, aunque no estoy seguro... saludos

      Eliminar
  5. Es muy util trabajar con FPGA, pero debemos saber la programacion en Quartus y VHDL, aqui les dejo un link para que lo chequen.
    Saludos.

    Tutorial quartus-fpga facil

    ResponderEliminar
  6. Alguien ha trabajado con la ALTERA NEEK, si es asi me podria ayudar a inicializar correctamente el LCD-TACTIL?? para visualizar un mensaje

    ResponderEliminar