Configurar CPLD ispMACH 4256ZE en Windows

3/Sep/2015 | Eder

Inicio » Tutoriales » Windows » Configurar CPLD ispMACH 4256ZE en Windows

De las tantas cosas que me ocurrieron este semestre, una de ellas fue cursar Arquitectura de Computadoras y perderle el miedo a los monstruos electrónicos que tarde o temprano iba a terminar cableando, ver cómo una pequeña placa se transforma en tremendo animal lleno de cables, LEDs, dip-switch, displays y transistores.

En realidad es bastante divertido ver cómo en el Metro la gente se le queda viendo a tu monstruosidad atiborrada de cables y por más que lo intenta no puede quitarle la mirada mientras se pregunta “¿para qué carajo servirá esa cosa?”.

Más allá del problema de armar físicamente el circuito, está el problema de que se te vaya a mojar por los tormentones que azotan la ciudad la computadora lo detecte y así puedas convertir tu enorme código en VHDL o Verilog en instrucciones para que el CPLD (Complex Programable Logic Device) pueda encender un LED.

El tutorial está dividido en tres secciones: la primera es para los usuarios de Linux (mejor dicho, Windows en máquina virtual), la segunda es para configurar propiamente el CPLD y la tercera son links para descargar utilidades y archivos PDF necesarios.

Sección 1: Configurar VirtualBox para detectar CPLD

Recomiendo utilizar Windows 7, aunque lo intenté en máquinas virtuales con Windows 8 y Windows XP y no tuve problema alguno.
Si ya tienes Windows instalado en tu laptop, salta a la siguiente sección.

En mi caso solamente tengo ArchLinux corriendo en mi laptop y ni a palos pienso instalar Windows allí, por lo que recurrí a la opción de instalar Windows 7 en una máquina virtual, así que los pasos son los siguientes:

  1. Descargar e instalar VirtualBox.
  2. Crear la máquina virtual e instalar sobre ella la versión de Windows recomendada anteriormente.
  3. Con la máquina virtual apagada, instalar el Oracle VM VirtualBox Extension Pack (para el soporte de dispositivos USB 2.0, indispensable para que el CPLD pueda ser detectado).
  4. En la configuración de la máquina virtual, anda a la sección USB y allí habilita la opción Habilitar controlador USB, del cual seleccionarás Controlador USB 2.0
  5. Arranca tu Windows virtualizado e instala sobre éste los Guest Additions.

Sección 2: Instalar drivers y programas necesarios

Es muy probable que los pasos sean los mismos para los FPGA MACHXO2 y MACHXO3, solo que en lugar de instalar ispLever Classic habrá que instalar Lattice Diamond.

La instalación de los drivers es muy importante ya que en la gran mayoría de los casos es un problemón que la computadora detecte el dispositivo, por lo que hay que hacer lo siguiente:

  1. Descargar ispLever Classic e instalar. En algún momento habrá qué instalar los drivers del ispLever; cuando nos pida que conectemos el CPLD, no hay qué conectarlo (eso lo haremos después).
  2. Reiniciar la PC o máquina virtual según sea el caso.
  3. Instalar los drivers FTDI D2XX que podemos descargar desde acá. Seleccionar la versión para Windows x86 o x64 de acuerdo a la arquitectura de nuestro Windows.
  4. Una vez terminada la instalación, conectar el CPLD a un puerto USB 2.0 (importante). En el caso de los usuarios de VirtualBox, habrá que activar el dispositivo desde el menú Dispositivos > USB > Lattice FTUSB Interface Cable para que lo reconozca nuestro Windows.
  5. Arrancar el ispVM System (software que nos permite grabar el binario sobre el CPLD) y checar que nuestro dispositivo sea detectado.

Con estos pasos nuestro CPLD debería ser detectado por nuestra computadora y listo para programarse.

Sección 3: Documentos adicionales

Hay un par de documentos extra creados por el profesor Gelacio Castillo (ESCOM – IPN) que explican a detalle cómo instalar ispLever Classic o Lattice Diamond así como la creación de nuestro primer proyecto para encender los LEDs de la tarjeta…esos documentos puedo pasarlos por correo a quien guste (obviamente con sus créditos correspondientes), aunque el mismo profesor es quien nos los manda a los alumnos inscritos en alguna de sus materias durante las primeras semanas del semestre.

Por cierto, acá está mi CPLD funcionando…

ispMACH-4256ZE

Saludos 🙂

Acerca de Eder
Software Engineer, estudiante politécnico del CECyT No. 3 y ESCOM-IPN.

Comentarios