Como configurar la Kéfir I usando iCEcube2 + Diammond programmer (paso a paso)

  1. Ejecutamos iCEcube2, por ejemplo /opt/iCEcube2.2016.02/iCEcube2, y elegimos New project:

  2. Como nombre de proyecto usamos Kefir_Capsense y como directorio del proyecto la carpeta icecube2_pap incluida en esta distribución. Como familia elegimos iCE40 y como dispositivo HX4K, nos aseguramos que el encapsulado sea TQ144. El resto de los valores los dejamos como vienen:

  3. Seleccionamos el botón Next del diálogo y nos aparecerá uno nuevo para seleccionar los fuentes de nuestro proyecto. Seleccionamos el archivo kefir_capsense.v de la carpeta Verilog de esta distribución y lo agregamos a la lista (>>):

  4. Ahora sintetizamos nuestro proyecto corriendo Synplify Pro (doble click):

  5. Una vez que la síntesis haya concluido seleccionamos Constraint Files de la sección Add P&R Files:

  6. Acá agregamos el archivo kefir_i.pcf de la carpeta constraints:

  7. Ahora hacemos doble click en Run P&R y así realizamos el place and route de nuestro proyecto:

  8. El resultado final será algo similar a lo siguiente:

  9. Para configurar la FPGA debemos usar otra herramienta, el Diammond Programmer. Primero conectamos Kéfir al USB (a través de Milk), luego lo ejecutamos, por ejemplo: /usr/local/programmer/3.4/bin/lin/programmer.

    Finalmente seleccionamos la opción Create a new blank project:

    Nota: por momentos parecerá que está colgado, pero veremos que el LED de alimentación de Milk destella. En la versión 3.7 no se ve esto.

  10. Si todo funciona correctamente el programa seleccionará como cable al HW-USBN-2B (FTDI), sino podemos probar con el botón de Detect Cable. Luego seleccionamos FTUSB-1 como Port.

    A continuación seleccionamos donde dice Device Family:

  11. En el diálogo que aparece seleccionamos el modo SPI Flash Programming.
    Como Programming file elegimos el bitstream generado por iCEcube2. Este archivo está un tanto enterrado entre todo lo que generó iCEcube2, el mismo se puede encontrar dentro de la carpeta del proyecto como: Kefir_Capsense_Implmnt/sbt/outputs/bitmap/Kefir_Capsense_bitmap.bin.
    Luego seleccionamos la memoria flash de la placa: Vendor WinBond Device W25X40.
    Finalmente le damos OK:

    Este es un ejemplo de donde encontraremos el .bin:

  12. Ahora presionamos el botón de Program (el de la flechita verde):

  13. Si todo sale bien obtendremos algo similar a lo siguiente:

Volver