jueves, 10 de enero de 2008

Introdución

En la Universidad Politécnica de Valencia, España se agregó un curso al programa de doctorado de Ingeniería Electrónica que se llama "Tratamiento Digital de la Señal en FPGA”. En el cual a lo largo de todo el curso se realiza el diseño y la implementación de un analizador de espectros digital, por lo cual se tratan temas como la FFT, Cordic, entre otros. De forma tal que se logre implementar eficientemente algoritmos de DSP en dispositivos reprogramables como los FPGA.

Para lograr este objetivo el curso esta dividido en bloques, y cada uno de estos bloques es una clase del curso, en la cual el estudiante recibe orientación teórica y realiza una práctica.

Un punto importante en la realización del analizador de espectros es poder medir la eficiencia del sistema, por lo cual se debía tomar un parámetro a medir que pudiera mostrar la eficiencia de la implementación del sistema, pero cuando se utiliza como plataforma de desarrollo los DSP no es posible medir la eficiencia de la implementación de un algoritmo. Ante esta necesidad se opto por realizar el diseño del analizador de espectros utilizando un dispositivo programable FPGA, los cuales son reprogramables y tienen un flujo de diseño e implementación más corto y sencillo que otras alternativas de hardware. Con la elección de este dispositivo programable se logra medir la eficiencia de la implementación en función del tamaño de la ruta de datos elegida.

Estructura del Analizador de Espectros

Los Analizadores de espectros digitales permiten visualizar las componentes espectrales de las señales presentes en la entrada, pudiendo ser cualquier tipo de onda, ya sea eléctrica, acústica u óptica. Para esto utiliza la transformada rápida de Fourier (FFT), la cual es un proceso matemático que transforma una señal en sus componentes espectrales. Por lo tanto se puede decir que en este tipo de analizadores espectrales el corazón del sistema es la FFT, ya que su tamaño determina la resolución en frecuencia del espectro. Cabe destacar que todas estás funciones se realizan en el FPGA.

Dentro de la estructura del analizador de espectro también se encuentran otros componentes como el circuito mezclador, los filtros diezmadores mediabanda, el módulo de enventanado, entre otros. Ver figura 1

FPGA y Software utilizado

Una FPGA (Field Programable Gate Array) es un array de celdas que contienen lógica configurable y elementos de memoria. Las FPGA son reprogramables, y por tanto pueden ser modificadas muy fácilmente. Esto provee gran flexibilidad y reduce riesgos en comparación con los ASICs (Application-Specific Integarted Circuit), que no son reprogramables. En resumen, las FPGA combinan la velocidad hardware con la flexibilidad software, unido a una relación precio/rendimiento más favorable que para los ASICs. Para el desarrollo del analizador de espectros se utilizó la plataforma de prototipado Xtreme DSP de Nallatech, la cual dispone de una placa madre BenOne con un módulo BenADDA. La placa incluye dos conversores analógico/digitales AD6644 de 14 bits a 65 MSPS, dos conversores digital/analógico AD9772A de 14 bits a 160 MSPS y un dispositivo FPGA virtex II XC2V6000 en paquete FF1152. Ver Figura 2.

Figura. 2: Placa de montaje del FPGA



Entre los software utilizados en el desarrollo del analizador de espectros se encuentran el System Generador, el cual permite modelar DSPs complejos con Simulink y transformarlos en un proyecto de Xilinx ISE para la implementación del sistema en FPGA. Una de las principales ventajas de este software son las componentes de las bibliotecas, las cuales simplifican notablemente el proceso de diseño al generar de forma automática un proyecto para FPGAs con el modelo realizado. El otro software utilizado es el FUSE el cual se usa para la programación del dispositivo FPGA

Importancia de la Utilización del FPGA en el Analizador de Espectros

La principal ventaja que ofrece la utilización de un dispositivo FPGA en el diseño del analizador de espectros digital es la capacidad de poder medir la eficiencia del sistema a través del tamaño de la ruta de datos elegida, por esta razón se utilizó la herramienta computacional System Generador, la cual facilita el modelado de sistemas de precisión finita en un punto fijo, permitiendo definir el tamaño del data-path (ruta de datos) de las distintas arquitecturas.


De igual forma se utilizaron otras herramientas computacionales como Simulink, Matlab, y Xilink Ise, con la finalidad de pode utilizar varios algoritmos y lograr medir la eficiencia de la implementación dependiendo de la precisión elegida en la ruta de datos. Esta gran ventaja que presenta la utilización de un FPGA en el diseño de un analizador de espectros rompe con los patrones tradiciones que se realizaban en diferentes cursos de doctorado de ingeniería electrónica, que trataban de tener el mismo fin, ya que sin el uso de este dispositivo no se lograba medir la eficiencia de los algoritmos bajo la plataforma DSP.