lunes, 8 de febrero de 2010

Todo son facilidades... o casi

Desde que el "Time To Market" es un término ubicuo, los fabricantes de dispositivos electrónicos intentan ofrecer medios que reduzcan el tiempo en que un usuario está en condiciones de trabajar con un determinado componente o sistema ("Learning Curve" por citar otro térmico estándar).

Compiladores de lenguajes de alto nivel, librerías de casi cualquier función imaginable, incluyendo funciones DSP en los procesadores DSP eran habituales en los componentes que he empleado.

En las FPGA sucede algo similar. Existen "componentes" prediseñados que se pueden integrar fácilmente. Estos componentes cubren un amplio espectro de necesidades, desde un simple contador hasta un completo procesador de 32 bits son piezas que se pueden tomar para ser integradas en una FPGA.

Los kits de desarrollo, que incluyen la pieza que se somete a evaluación y estudio junto con las herramientas necesarias para comenzar a trabajar y abundante software de prueba con documentación detallada y alguna específica para seguir paso a paso, acortan el tiempo de aprendizaje.

Tal es así que apenas acabo de poner mis manos sobre el nuevo KIT de la altera Cyclone III, y ya he instalado las herramientas, he desarrollado mi primera aplicación (eso sí, copiada de unas instrucciones para seguir paso a paso) y he desarrollado mi segunda aplicación (esta mía) consistente en un oscilador programable (gracias a las librerías).

El desarrollo es simple, pero presenta algunos inconvenientes. Como en el caso de determinadas librerías, no se dispone del código fuente. He conseguido hacer algo pero no sé cómo lo he hecho. No he tenido tiempo para mucho más, pero he intuido cómo desarrollar un DUC o un DDC, una interfaz serie, incluso un microprocesador... ¡sin tener ni idea de cómo está hecho!.

Las facilidades están bien, pero hay que saber usarlas. En cierta ocasión, ayudando en la depuración de una aplicación que se desarrolló para Linux, llegué a la conclusión de que el problema estaba en un determinado "driver". "No puede ser" me dijo el desarrollador. "¿Por que'? contesté yo. "Porque ese driver lo he bajado de Internet" respondió. Por supuesto, el problema estaba en el driver. Sin comentarios.

La tendencia actual a la reutilización puede producir diseños rápidos, e incluso en muchos casos altamente fiables, pero conocer los más mínimos detalles de cuanto afecta a un diseño es el único modo de resolver problemas complejos.

De todos modos, aunque cambiaré mi forma de trabajo para disponer de toda la información, el kit me sirve para dar estos primeros pasos en apenas unas horas. Así que sigue siendo un equipo válido. Y espero tener esta noche un transmisor SSB basado en un tono de audio y DUC completo, todo ello en la FPGA. Aún no dispongo del necesario convertidor DAC de alta velocidad para la salida de HF, pero... esto me da pie para un próximo comentario técnico.

No hay comentarios:

Publicar un comentario