fbpx

Expresate

Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:

Altium 10 y Xilinx ...
 
Avisos
Vaciar todo

Altium 10 y Xilinx Spartan 3AN

11 Respuestas
4 Usuarios
0 Likes
10.4 K Visitas
beamspot
Respuestas: 1132
Topic starter
(@beamspot)
Noble Member
Registrado: hace 17 años

Hola:

Hace dos semanas que por fin me he metido en uno de mis temas más obsesivos y fetiche: las FPGA. Como no había manera de encontrar el momento de empezar a hacer algo real, en el curro me he 'autoimpuesto' un proyecto con una Xilinx Spartan 3AN, para así tener la excusa y a la vez la necesidad de meterme en este mundo desconocido para mí.

Resulta que como hace años que trabajo con Altium, y ésta hace mucha propaganda sobre la capacidad de trabajar de manera embebida con las FPGA de cualquier fabricante desde su propio sistema, decidí hacer el proyecto directamente desde Altium, tanto la PCB (obvio) como la parte de FPGA. Si tenemos en cuenta que el JTAG para FPGA venía de regalo con la licencia de Altium 2010 Summer edition, pues la decisión parecía obvia: no tengo ninguna experiencia en los programas propios de ningún fabricante de FPGA.

Pues después de un par de semanas, me he dado cuenta que ha sido un grave error. Aunque la captura de esquemas y la edición de VHDL desde Altium es tan buena como me parecía esperar, la integración de su FPGA y sus herramientas deja bastante que desear. De hecho, parece que el soporte para su propio JTAG es poco más que un mini parche. Y la fuente de algunos problemas.

En mi caso particular, resulta que tengo problemas primero debido a que el contacto del JTAG deja bastante que desear, a nivel de conector, lo cual hace que no siempre detecte correctamente la FPGA. En segundo lugar, y más problemático, es que no programa correctamente la FPGA, y encima no me deja configurar o grabar los datos de configuración en la Flash interna (una de las particularidades de las Spartan 3AN, y principal motivo por el que he escogido este modelo). Tiene que ser un problema meramente de SW o de gestión del JTAG de Altium, pues el mismo bitfile, programado con la Platform Cable USB de Xilinx, con el ISE iMPACT funciona perfecto.

Mientras que desde Altium no puedo borrar ni configurar (ni por extensión, programar) la flash interna, poniendo problemas de comunicación con la misma, desde el iMPACT, funciona perfecto. No sólo eso, si no que el mismo programa que funciona con el iMPACT, compilado desde el Altium, al intentar programar lo mismo desde el Altium, no va. Y mira que es simplemente un reloj con un divisor que hace parpadear un LED...

Si añadimos que las herramientas de depuración, en Altium, se hacen a través de un 'software JTAG' separado que usa 4 pines más, mientras que en Xilinx (y parece ser que también desde Altera), las mismas herramientas se usan a través el mismo JTAG de programación, ahorrando así cuatro pines. No es que haya problemas de pines de I/O en las FPGA, precisamente, pero ya hay que preveer un conector de depuración más grande. E inútil.

Así pues, recomiendo que la gente no trabaje con Xilinx y Altium a la vez, utilizando para las FPGA siempre las herramientas del fabricante. Lo peor es que ahora tendré que aprender a usar el ISE Webpack y/o el Vivado Design Suite Webpack edition de Xilinx, que parece ser muchos más complicado (quizás más potente?) que las herramientas de Altera. Si añadimos que el compañero que tiene experiencia con FPGA sólo usa Altera, que es lo que más conoce (como siempre, uno se mantiene en lo que ya conoce, si le funciona), me temo que tengo una dura curva de aprendizaje por delante. Tiempo valioso del que apenas dispongo en estos momentos, y en el trabajo, pues tampoco están muy contentos con esta situación...

Responder
10 respuestas
beamspot
Respuestas: 1132
Topic starter
(@beamspot)
Noble Member
Registrado: hace 17 años

Pues no, no he trabajado nunca con el Coregen. Apenas estoy aprendiendo a dar los primeros pasos con FPGA. Espero que en la Uni ya te hayan enseñado algo de esto.

Por otro lado, HDMI es una secta satánica donde tienes que echar unas gotas de tu sangre, un pelo de la cabeza de tu tatarabuela y encender una vela a don Juan Tenorio, con un video en YouTube, lo mandas todo por carta, y quizás te envíen el protocolo por correo certificado a contrareembolso de tu vivienda habitual y unos cuantos años de tu futuro sueldo. Nada fácil de poner en marcha.

Las DDR pueden parecer muy chulas, pero utilizarlas no lo es tanto.

Y si para colmo, te tiene que currar el diseño de la PCB... bueno, entonces se puedes gastar varios sueldos en poner velas o en aprender lo suficiente sobre rutado de pistas (diferenciales y single ended), con el tuneado de longitud de las mismas, etc. Vamos, que hacer una PCB con DDR's y HDMI (con señales en los cientos de MHz, y de más de un GHz de ancho de banda del HDMI) es cualquier cosa menos fácil y rápida. Nada para novatos. Incluso difícil para profesionales.

Aún así tómatelo con un granito de sal, que el que suscribe a duras penas puede conseguir una comunicación SPI decente en estos momentos.

Responder
Página 3 / 3
Compartir: