Instalación de Icestudio

Preámbulos

Antes de nada recomendaros fehacientemente un enlace con, no sólo la instalación de Icestudio, sino que además es toda una introducción a la electrónica digital realizado por "Obijuan", clic aquí o aquí. El contenido de la presente página está dedicado a personas que por alguna razón u otra tienen algún problema que no consigue resolver, ya sea con los drivers de la FPGA o el programa Icestudio.

La instalación está enfocada para usuarios de Windows, sin embargo en entornos Linux (proyecto original) y Mac, salvo algunas excepciones, es muy parecido. Voy a explicar cada paso con su imagen correspondiente para que te sirva de guía. Se recomienda instalar la última versión de Icestudio y la podrás encontrar aquí (escoge la que pone "Nigthly", lo verás un poco más abajo).

Explico dos instalaciones. La primera es la instalación de la FPGA, pero esta instalación sólo es compatible para FPGA que tienen el chip FTDI FT2232H.

La segunda parte, más abajo, se explica la instalación de Icestudio. Hoy en día Icestudio ya viene con instalador, pero como comentaba más arriba, si tienes algún problema durante la instalación puedes venir aquí y hacerlo a mano siguiendo los pasos que indico.

Instalación de tu FPGA con FT2232H.

  • Antes de comenzar vamos a ahorrarnos algunos problemas. Si tienes un FTDI conectado a un puerto USB, desenchúfalo, nuestra placa entrenadora también lo tiene y si lo quitamos del medio habrá menos confusión, tanto para ti como para los controladores de Windows.

  • Si te es posible trata de usar siempre el mismo puerto USB para la FPGA. Se puede conectar luego a otro puerto, pero no durante la instalación. Y es posible que si quieres cambiar de puerto USB una vez instalado todo, tengas que dar un paso más cada vez que lo hicieses, pero es un paso muy sencillo, se trata de ejecutar Zadig, más abajo se explica el procedimiento.

  • Durante la instalación es necesario estar conectado a Internet.

  • Voy a poner como ejemplo una placa entrenadora de FPGA llamada IceZUM, que tiene un FTDI doble llamado FT2232H. No conozco todas las FPGAs que son compatibles con Icestudio pero si tiene ese chip para comunicarse con el PC todo lo que comento a continuación sería válido.

  • Asegúrate de que tu cable USB es de datos, esto es más importante de lo que parece y te ahorrarás muchos quebraderos de cabeza. Algunos cables USB sólo son de alimentación y no poseen los dos cables de datos pese a que exteriormente parece uno normal. La única forma de comprobarlo es probándolo con algo que conozcas y puedas hacer pruebas de comunicaciones; por ejemplo, si además de cargar el móvil el PC te lo reconoce como un dispositivo externo, eso significa que hay comunicación, por tanto los datos circulan.

Antes de enchufar por primera vez tu FPGA al PC has de estar conectado a Internet. Una vez enchufada Windows buscará automáticamente el controlador, que en este caso es doble. Ten paciencia si tarda. Las imágenes que utilizo pertenecen a Windows 8.1, en Windows 10 no te saldrá esta primera imagen, es un proceso oculto.

Descarga el programa Zadig y sigue los pasos que ves en las siguientes imágenes: haces clic en "Options", luego en "List All Devices".

Después haces clic sobre: "Lattice FTUSB Interface Cable (Interface 0)"

Nota: En las nuevas versiones de FPGA de la IceZUM, viene con este nombre: IceZUM Alhambra v1.1 - B01-033 (Interface 0). Sea como fuere, asegúrate de que hace referencia a tu FPGA y a "Interface 0".

Luego haces clic en la ventanilla para elegir el controlador y escoges el que pone "libusbK (v3.0.7.0)", le das a "Replace Driver" .

Una vez hecho lo de Zadig, en "Administrador de dispositivos" veremos lo siguiente: (Este paso no es necesario.)

Instalación de Icestudio.

Descarga el instalador de Icestudio desde esta web: https://icestudio.io/#lk-download.

Si todavía no hemos descargado el programa, ahora es el momento y descargamos la última versión de Icestudio. Hecho esto nos vamos al ejecutable (lo que que hayas descargado) y se instalará. Hacemos doble clic sobre el ejecutable (icestudio.exe). Cuando se abra el programa sigue estos pasos con imágenes comentadas.

Cuando ya lo tengas abierto le das a la opción "Tools" y después "Install toolchain", esto sólo se hace una vez (después de instalar, como acabamos de hacer).

¡Ya está todo configurado y listo para trabajar!

Vamos a hacer una primera prueba, un "¡hola mundo!" estilo FPGA que es encender un simple led. Elegimos nuestro tipo de placa entrenadora de FPGA, en mi caso es una IceZUM. Esto hazlo siempre que cargues un esquema nuevo o cuando creas un esquema nuevo.

Elegimos nuestra placa entrenadora.

Vamos a hacer un "Hola mundo" hardware que es simplemente poner a 1 un led.

En el menú le damos a "Const" (de constante) ----> Bits -----> "1" ó a cualquiera que haga esa referencia.

Vamos a sacar una salida. Le damos a "Basic" ----> Output.

Por defecto sale con el nombre "out" pero le cambiaremos el nombre.

Y le ponemos la palabra "led" que es lo que vamos a encender. Esto no es importante pero es más informativo.

Y elegimos el led que queramos encender de los 8 que tiene la IceZum, yo he elegido el primero, el led0.

Conectamos las cajitas "1" y "led". Ya tenemos nuestros simple primer circuito. Ahora toca subirlo a la FPGA. Pero si es la primera vez hemos de instalar el driver para nuestra FPGA, en este caso es la Alhambra, le hemos de dar a "Tools" -----> "Driver" ------> "Enable" y seguir los pasos que puse sobre Zadig más arriba. Hecho esto, una sola vez (si no cambias de puerto USB en Windows), ya podemos subir nuestro circuito.

Subimos nuestro diseño a la FPGA, dándole a "Tools" y después a "Verify", más tarde a "Build" y finalmente a "Upload". Te sube el diseño y hace lo que le has pedido. Es importante hacer eso tres pasos, porque en cada uno de ellos (Verify y Build") verifica que todo está correcto y si hubiese algún fallo o inconsistencia te saldría un mensaje de error para avisarte.

¡Fin!

Otras consideraciones:

  • Si decidieras cambiar tu entrenadora FPGA de puerto USB primero prueba a ver si te funciona en ese otro puerto USB, si al tratar de subir el "bitstream" (Upload) Icestudio te da el mensaje de que no existe FPGA conectada entonces sólo has de repetir el paso de ejecutar Zadig y seguir esos pasos, nada más. En las últimas versiones de Icestudio viene con el programa Zadig incorporado, para ejecutarlo sólo has de hacer lo siguiente: le das a Tools, después a Drivers y por último a Enable. Tardará un rato en ejecutarse Zadig, ten paciencia, porque ha de descomprimirse.

  • Si investigas un poco dentro de los menús de Icestudio verás que puedes cambiar de idioma.

  • ¿Necesitas ayuda? haz clic aquí y busca entre los mensajes que hay publicados, arriba del todo, donde pone "Buscar temas", para ver si ya existe tu consulta o problema. En el caso de que no haya un hilo sobre tu consulta, abre uno nuevo.

  • Icestudio está de momento en fase beta, por tanto es normal que algunas funciones las veas extrañas. Lleva un tiempo familiarizarse con el programa.

  • Te recomiendo fehacientemente seguir el curso de Obijuan, porque ahí explica todo paso a paso, y entre otras cosas cómo añadir y crear bibliotecas de circuitos, periféricos, etc. Icestudio por defecto sólo viene con lo más básico para evitar que el instalador pese demasiado.