Cable JTAG USB:
MILK es un cable USB muy versátil que pude usarse como cable JTAG, pero también como cable SPI, RS-232, etc. Este cable fue desarrollado por el proyecto FPGA Libre. Toda la información de diseño y uso puede encontrase acá: MILK
Cable Opendous FT2232H JTAG:
Antiguamente usamos este cable, pero lo reemplazamos por MILK. De todas maneras es una opción, por lo que mantenemos esta información. Opendous FT2232H JTAG es un cable simple, que se puede conectar al puerto USB de una PC. Se trata de un diseño open hardware, bajo licencia Creative Commons Attribution Licensed, y está hecho en KiCad. Es posible hacer que las herramientas de Xilinx lo vean como un viejo cable Parallel III (DLC5). Esto está soportado a partir de la versión 0.5.3 de iMPACT Helper, donde de no encontrarse otro cable conectado, lo asigna automáticamente al LPT2. Alternativamente al iMPACT de Xilinx, se puede utilizar UrJTAG para transferir el bitstream (convertido a formato svf, Serial Vector Format) a la FPGA o una PROM. La versión 0.10+r2007 incluida en Debian 8 soporta la selección de canal a utilizar (este cable utiliza el segundo). En caso de usar un Debian GNU/Linux Wheezy se puede descargar una versión con dicho soporte aquí. Ver nota sobre como configurar UrJTAG. Toda la información de diseño: Proyecto en GitHub. Esquemático en formato PDF: Esquemático
Nota:
En UrJTAG el comando cable para identificar al Opendous es:
cable jtagkey vid=0x0403 pid=0x6010 interface=1
|
Cable JTAG Paralelo:
Durante mucho tiempo usamos un cable compatible con el cable Parallel III de Xilinx, también conocido como DLC5. Este es un cable simple y barato que se puede conectar al puerto paralelo de una PC. Los esquemáticos y el circuito impreso de este cable (en formato KiCad): DLC5. El esquemático en formato PDF: PDF
| Impreso del lado de las soldaduras |
| | Impreso del lado de los componentes |
|
| Cable conectado a una placa con Spartan 2 |
|
Nota:
UrJtag soporta al cable DLC5 (y su clon). El comando cable para identificarlo es:
cable DLC5 ppdev /dev/parport0
|
iMPACT helper:
Este paquete incluye dos cosas. Por un lado una biblioteca dinámica que permite correr el iMPACT sin la necesidad de instalar los módulos del kernel y por el otro un juego de scripts que permiten automatizar y simplificar el proceso de transferencia del bitstream a la FPGA o la memoria de configuración. El script más simple es denominado make_impact.pl y basta con especificarle el .bit que deseamos transferir a la FPGA. Para descargarlo: Fuentes iMPACT Helper v0.8.0 (Src) Versión Debian GNU/Linux: iMPACT Helper v0.8.0 (AMD64) Para mayor información sobre la biblioteca dinámica: XILINX JTAG tools on Linux without proprietary kernel modules
Tarjeta S2PROTO:
Como parte del proyecto FPGA Libre se abordó el diseño e implementación de un circuito impreso con FPGA, pensado para ser utilizado en ámbitos de desarrollo e instituciones educativas. Cabe mencionar que existen varios circuitos publicados con FPGAs, sin embargo ninguno de los observados cumplía con los objetivos y pautas de diseño propuestos:
- Utilizar herramientas de software libre para permitir la modificación del
circuito sin forzar la adquisición de costosos programas de diseño de PCBs.
- Seleccionar componentes que puedan soldarse en forma manual.
- Seleccionar, dentro de lo posible, componentes que puedan obtenerse
fácilmente en el país.
- Circuito simple, sencillo y de funcionalidades básicas.
- Circuito impreso de fabricación nacional.
- Dispositivo FPGA con capacidad suficiente para permitir realizar prácticas y
desarrollos de baja y mediana complejidad.
- Bajo costo. Si bien es imposible competir con productos fabricados en grandes
cantidades, existen otros factores a tener en cuenta a la hora de abordar la
fabricación de hardware como por ejemplo la capacidad para adaptar y
modificar los circuitos, los altos costos de importación (monetarios y
administrativos) para pocas unidades, el grado de independencia tecnológica,
la experiencia adquirida, etc.
Algunas de las principales características del circuito son:
- Diseño brindado bajo licencia GPL para permitir su libre utilización,
implementación, modificación y comercialización.
- Diseño ensamblado y probado.
- Desarrollado y probado con herramientas de software libre: KiCad y GNU jtag.
- Impreso doble faz de 12x10 cm de fácil fabricación en el país y posibilidad
de montaje manual de los componentes.
- Soporte para dispositivos Xilinx Spartan II PQ208 (hasta XC2S150 equivalente
a 150.000 compuertas).
- Puerto de niveles RS-232 para implementar transmisión y recepción serie.
- Puerto JTAG compatible con el cable Parallel III de Xilinx, también conocido
como DLC5. Circuito realizado en KiCad, y también disponible en el proyecto
FPGA Libre.
- 152 pines de I/O disponibles para el usuario distribuidos en cinco conectores.
Estos permiten conectar plaquetas adicionales con pulsadores, leds, displays,
etc.
- Conector USB tipo B y driver para soportar niveles estándares USB.
- Alimentación simple de 5 V CC.
El esquemático en formato PDF: PDF
Análisis de costos: Listado
El paquete con todos los archivos de diseño, la documentación y los gerber
están disponibles para descargarlos en: S2PROTO v4.0
| Circuito impreso ensamblado |
| |
|
Tarjeta S3PROTO-MINI:
Continuando con las ideas abordadas en la S2PROTO se encaró un proyecto con
Spartan III y encapsulado BGA. El primer resultado es la S3PROTO-MINI.
La tarjeta S3PROTO-MINI es una plataforma básica y simple de hardware libre
para desarrollo con FPGA. Posee un dispositivo Xilinx Spartan 3E (XC3S1600E)
con encapsulado BGA de 320 pads.
Utiliza el módulo de alimentación triple S3Proto, también disponible como
hardware libre.
Características principales.
Esquemático.
La información completa con los archivos de diseño se puede obtener en:
http://sourceforge.net/projects/fpgalibre/files/S3Proto-Mini/
|
|
Tarjeta Kéfir I:
También parte del proyecto FPGA Libre, es una placa basada en FPGAs iCE40 de Lattice. Toda la información relacionada con esta placa puede encontrarse aquí: Kéfir I
Tarjeta PHR:
Los integrantes del Centro Universitario de Desarrollo en Automoción y Robótica (CUDAR) de la Universidad Tecnológica Nacional - Facultad Regional Córdoba (UTN - FRC) llevan adelante el proyecto Plataforma de Hardware Reconfigurable (PHR). Esta placa utiliza una FPGA Spartan 3A de 200k gates y es un diseño abierto, publicado en OpenCores, que utiliza como fuente de alimentación al módulo S3-Power, el mismo usado por la S3PROTO-MINI.
Avnet S3A Eval Kit:
El kit Avnet Spartan 3A Eval Kit proveido por Avnet es un kit económico y poderoso. El mismo posee una Spartan 3A de 400k gates. Uno de los problemas con este kit es que el mismo no incluye memorias de configuración accesibles a través de la cadena JTAG. Por esta razón herramientas como el iMPACT no se pueden usar para guardar una configuración permanente. Para solucionar esto Avnet provee un software llamado AvProg, pero el mismo sólo soporta Windows. Basándonos en software preexistente y la documentación provista por Avnet desarrollamos un software que puede usarse para reemplazar el AvProg en sistemas GNU/Linux. El mismo se denomina ASTriAEKiPro y puede descargarse desde aquí. Fuentes: ASTriAEKiPro 1.2.2 Versión Debian GNU/Linux: ASTriAEKiPro 1.2.2 (AMD64)
LEON Monitor:
Flemon es una herramienta para depurar un sistema LEON/GRLIB. Se comunica con la AHBUART (AMBA Serial Debug Interface) para obtener la información disponible brindada por los IP cores del sistema. También permite grabar un binario elf en la memoria flash de la tarjeta de desarrollo. Flemon es un software experimental en desarrollo. Fuentes: Flemon 0.2 Versión Debian GNU/Linux: Flemon 0.2
|