FPGA Libre
EnglishEspañolS.F. Summary
Hosted by:
Get Free FPGA development tools at SourceForge.net. Fast, secure and Free Open Source software downloads

Kéfir (Kit Educativo con FPGA, Inclusivo y Reciclable) es un kit de desarrollo económico basado en la FPGA Lattice iCE40HX4K-TQ144.

¿Qué es Kéfir?:

Kéfir es un proyecto para realizar kits de desarrollo educativos basados en FPGAs.

Se proponen como objetivos del proyectos los siguientes pilares:

  • Inclusivo: buscando un costo que lo haga accesible, y que al menos una versión del mismo pueda ser construida utilizando las tecnologías de soldadura disponibles en la región.
  • Reciclable: buscando que el kit propiamente dicho, y el cable de configuración, puedan ser reusados para fines diferentes al de difundir la tecnología FPGA.

El primer resultado de este proyecto es la placa Kéfir I. Esta placa se basa en una FPGA iCE40HX4K-TQ144 de Lattice. Las características principales de esta familia de FPGAs se dicuten aquí.

A los fines de reducir los costos de fabricación, y complejidad del PCB, se optó por una placa básica, con la menor cantidad de componentes posibles. Al mismo tiempo se separó la funcionalidad de configuración (y parte de la fuente de alimentación) en una placa separada. Esta placa puede usarse para configurar otras FPGAs, realizar depuración con CPUs AVR y ARM y otras tareas similares. La placa que contiene dicha funcionalidad se denomina MILK.

Con el objetivo de permitir expandir las funcionalidades de Kéfir I, reutilizando placas ya existentes, se decidió que tuviera conectores compatibles con Arduino y conectores PMOD. Esto no sólo permite reutilizar shields de Arduino sino que abre otra posibilidad interesante: reciclar Kéfir I como una placa compatible con Arduino. Esto último requiere de etapas que aún no han sido realizadas.

Kéfir foto top


Características técnicas:

  • FPGA:
    • Lattice iCE40HX4K-TQ144 (3520 LUT4s, FFs y carry; 2 PLLs; 80 kib SRAM; 107 GPIOs)
    • Memoria de configuración: Winbond W25X40CL (SPI, 4 Mib, quedan casi 3 Mib libres)
    • Reloj: zócalo para colocar un oscilador tipo DIP-8/14. (evitando usar 1 PLL todo el tiempo)

  • PCB: (FR4 1,6 mm de espesor)
    • Capas: 2
    • Separación mínima: 8 mils
    • Ancho mínimo de pistas: 10 mils
    • Diámetro vías: 40 mils
    • Agujero vías: 0,51 mm
    • Nota I: la FPGA tiene un paso de 0,5 mm
    • Nota II: todos los componentes pueden soldarse con soldador (no QFN, no BGA, etc.)

  • Conectores: (GPIO 3,3 V)
    • Tiene los conectores de ChipKit, que son los de Arduino UNO, pero con el doble de I/Os. Un total de 42 GPIOs.
    • 2 PMOD de 12 pines (8 I/Os + 2 GND + 2 Vcc c/u)
    • 2 conectores de 20 pines para configuración y comunicación con la PC. Estos conectores están pensados para conectar con MILK.

  • Interfaz de usuario:
    • Botones: ninguno físico, tiene 4 CapSense.
    • LEDs: 4 LEDs de uso general (+ power + DONE).

  • Entradas analógicas: (MCP3008)
    • 8 canales de 10 bits
    • Frecuencia máxima de sampleo 100 ks/s

  • USB:
    • Conector tipo B
    • Driver TUSB1106 (LS/FS)
    • Adicionalmente MILK provee comunicación con la PC (SPI, I2C, RS-232, etc.)

  • Alimentación:
    • Desde el USB a través de MILK
    • Opcionalmente puede alimentarse con 3,3 V


¿Se verificó su funcionamiento?:

La placa Kéfir I fue fabricada en Argentina y luego los componentes soldados manualmente (utilizando un soldador PACE con punta fina y un videoscopio). Se probaron las siguientes descripciones de hardware:

  1. Destello de un LED a 1 Hz a partir de reloj de 24 MHz (46 celdas)
  2. Funcionamiento de los 4 CapSense señalizando en los LEDs (39/50 celdas)
  3. Adquisición del A/D a 55 ks/s representando los 4 LSB/MSB en los LEDs (45 celdas)
  4. CPU compatible con el AVR ATtiny22 enviando "Hello world!" por RS-232 a 115.200 b/s (1012 celdas)
  5. USB device que se reporta como joystick, los CapSense son los botone del joystick, Low Speed (978 celdas)
  6. USB device que se reporta como joystick, los CapSense son los botone del joystick, Full Speed (970 celdas)
  7. USB device que permite leer los CapSense y encender los LEDs usando WISHBONE, Full Speed (1046 celdas)

Todas las implementaciones funcionaron satisfactoriamente. Se detectaron niveles inusuales de ruido en las aplicaciones que utilizaban los CapSense. Por estas razones se hizo una revisión del diseño que elimina dicho problema (r1.14).


¿Donde puedo conseguir Kéfir I?:

Kéfir I es un proyecto de hardware abierto, por lo que toda la información de diseño puede descargarse de este sitio.

En la actualidad no hay ningún proveedor que ofrezca versiones de Kéfir I ya armadas. Es nuestra intención fomentar la existencia de fabricantes ya que entendemos que no es eficiente pretender que cada usuario fabrique su propio circuito. Por esta razón alentamos a potenciales fabricantes a ponerse en contacto con nosotros.

Es completamente legal que una Universidad o equipo de entusiastas forme un grupo a los fines de realizar una pequeña tanda de fabricación, bajando así los costos. A tales fines invitamos a los interesados a coordinarse utilizando la lista de correo de Kéfir.

En el caso de voluntarios que puedan comprometerse a colaborar con el proyecto tenemos algunos circuitos impresos y/o componentes disponibles para que puedan armar su propia placa. En el caso de estudiantes universitarios que deban realizar su PPS (Práctica Profesional Supervisada) es posible realizarla en el INTI trabajando en este proyecto. En cualquiera de estos casos por favor contactarse con nosotros.


Niveles de tensión soportados:

Es muy importante tener en cuenta que los pines de entrada salida de la placa funcionan con 3,3 V y no toleran 5 V.

Se decidió dejar la protección de estos pines fuera de la placa principal, ya que el tipo y grado de protección dependen del uso que se le de. En caso de utilizar la placa en un ambiente educativo hostil se recomienda utilizar shields de Arduino que incluyan protecciones adecuadas. El diseño de los mismos es muy simple.


Licenciamiento:

Kéfir I es un proyecto de hardware abierto, por lo que toda la información de diseño puede descargarse de este sitio.

La licencia actual del proyecto es Licencia Creative Commons Atribución - Compartir Igual 4.0 Internacional. Esto permite el uso comercial, pero si se realizan cambios deberán compartirse con la misma licencia.


Circuito:

Kéfir I fue desarrollado usando KiCad.


KiCad:

KiCad es una herramienta de software libre para el diseño de circuitos electrónicos. Los esquemáticos y PCBs de Kéfir I fueron realizados utilizando KiCad "Build: (22-Jun-2014 BZR 4027)-stable" que es la versión incluida en Debian GNU/Linux 8.


¿Con qué software se puede usar?:

Basicamente hay dos conjuntos de herramientas que pueden usarse:

  1. Las herramientas gratuitas (pero privativas) del fabricante, que soportan VHDL y Verilog (Más información).
  2. Herramientas de Software Libre, que soportan Verilog y un entorno de desarrollo visual (Más información).

Kéfir I está soportada por ambos conjuntos de herramientas.


Ejemplos de uso:

Esta sección contiene diferentes ejemplos de como usar la funcionalidad de la placa:

  1. Botones capacitivos: este ejemplo muestra como utilizarlos en VHDL y Verilog. Los ejemplos muestran el uso con diferentes herramientas (iCEcube2/Diamond Programmer, IceStorm, Xil Tools, APIO, APIO IDE y icestudio). Se puede navegar on-line o descargar.


Contacto:

Para preguntas generales puede usar la lista de correo de Kéfir.

Para preguntas específicas puede contactar a Salvador E. Tropea o por teléfono al +54-11-4724-6300 interno 6919.


webmaster.

Valid HTML 4.01! Valid CSS! GIMP Any browser! SourceForge.net Logo

Copyright © 2005-2016 proyecto FPGALibre.
Generated using CAL v0.2.0 and ARENA v0.1.0 on lun nov 21 13:56:51 ART 2016