Universidad del Norte División de ingenierías
Departamento de Ingeniería Eléctrica y Electrónica.
Las Tecnologías FPAA y FPGA como complemento.
Gerson Arturo Guerrero RamosC: 200020782
Electrónica II.
Ensayo.
Noviembre 12 del 2010
Introducción.
Desde un inicio, tratar el procesamiento de señales, había que trasladarse a un
mundo digital en donde casi que por obligación se tenía que manejar con
microprocesadores; cuando se necesitaba esa versatilidad ofrecida por un
dispositivo reprogramable, era necesario el uso de dispositivos lógicos
programables (CPLD’s) y los FPGA (Field Programmable Gate Arrays).
Luego de esto, los FPAA aparecieron en el escenario como una alternativa
interesante, pero aun con ciertas limitaciones con respecto a los FPGA; por otro
lado, el desarrollo de sistemas más sofisticados se concebían más fácilmente
implementando FPAA’s para ciertas aplicaciones.
Para algunas aplicaciones en donde se incluya un procesamiento de
señales, los FPGA’s serían muy indicados, pero los FPAA’s, claramente también
podrían convertirse en una solución alternativa. En cualquiera de los dos casos,
indistintamente de la aplicación, ambas tecnologías pueden ser usadas, pero será
necesario obtener una idea general de las ventajas y limitaciones que poseen
cada una de estas tecnologías. Con el fin, no de compararlas, como se ha venido
planteando, en donde se pretende ubicar una tecnología mejor que la otra, si no,
con el fin de saber identificar los potenciales de cada una y aprovechar al máximo
sus aportes puntuales en cada aplicación.
FPAA y FPGA bajo un mismo marco de referencia.
En la actualidad los FPAAs tienen su arquitectura basada en el uso de dispositivos
con compuertas flotantes, esto con el fin de aumentar el número de elementos
dentro de un mismo chip añadiéndole más eficiencia en comparación con los DSP
(Procesadores Digitales de señales), según estudios realizados por la CADSP
cooperative analog-digital signal processing) (Hall, Twigg, Hasler, & Anderson, 23-
26 Mayo 2004). En la Figura 1 se observa la evolución, proyección a futuro y la
optimización en el manejo de la potencia consumida en los DSP y en los FPAA.
2
Es decir, desde el punto de vista de eficiencia, el desarrollo de los FPAA ha
tenido avances importantes en la disminución de potencia disipada por área
superficial del dispositivo.
Siguiendo con el paralelo entre las dos tecnologías, según estudios de la
Berkeley Design Technology Inc. (BDTI), el desarrollo de los FPGA han tenido una
reducción de costos mayor al 95% comparado con los DSP.
Tomando como referencias, los estudios realizados por (Selow & Heitor S.
Lopes, 2003) en donde implementan un sistema de control, usando FPGA’s y
luego FPAA’s, con el fin de comparar cada una de las ventajas y desventajas que
ofrecen estas tecnologías.
Figura 1. Datos obtenidos de estudios de CADSP, muestra la potencia consumida en los
DSP, junto con la estrella que indica los datos obtenidos en estudios en los FPAA’s.
Implementando FPGA.
El estudio de un sistema de control, se hace usando conceptos en donde
intervienen variables complejas, en donde las entradas y salidas en un FPGA son
cadenas de bits, y es necesaria una conversión de valores haciendo
truncamientos en los datos, y transformando el diagrama de bloques del sistema
de control, en una diagrama de bloques equivalentes para los FPGAs, al
implementar dicho diagrama en un FPGA, solamente se usa el 13% de la
capacidad del dispositivo, en la Figura 2. Se muestra el diagrama de bloques
usado para la programación y posterior implementación del sistema de control en
el FPGA.
3
Figura 2. Diagrama de bloques de implementado en la FPGA
Implementando FPAA.
En el caso de los FPAA no existe la necesidad de realizar ningún tipo de
transformación, permitiendo agilizar la etapa de diseño, debido a que al programar
un FPAA existen bloques listos para implementarse, solamente se necesitan
ingresar los valores para la respuesta de cada bloque
Simulación.
Con el fin de realizar una idea del comportamiento que se obtiene al implementar
un mismo sistema de control usando FPGAs y luego usando FPAA se adjuntan
dos Figuras (Figura 3) y la Tabla obtenidas de estudios realizados (Selow & Heitor
S. Lopes, 2003) a través de simulaciones. De estas implementaciones se puede
deducir el efecto que tiene el hecho de aproximar los coeficientes del sistema de
control a datos manejables por el FPGA, además de la dificultad que posee el
programar el FPGA con respecto a la FPAA. Sin embargo, la capacidad de cada
dispositivo son parámetros bastante relevantes a la hora de implementar una u
otra tecnología, debido a que al implementar un FPGA solamente se consumió el
13% de la capacidad del dispositivo, mientras que para el mismo proyecto fue
necesario el uso de dos FPAA’s.
4
Figura 3 Simulación implementando FPGA usando Quartus II. (Izquierda), Simulación
implementando FPAA usando AnadigmDesigner (derecha).
Parámetros de diseño FPGA FPAAFacilidad de implementación + +++Capacidad +++ -Consumo de potencia + -Herramientas de desarrollo +++ +++Frecuencia de operación +++ +Ganancia +++ +
Tabla 1 Caracteristicas comparativas de cada tecnología.
Conclusión.
Tomando como marco de referencia lo datos mencionados anteriormente, se
obtuvo una idea de las principales características que poseen estas dos
tecnologías.
Muchos intentan presentar estas tecnologías como si alguna de ellas fuera
la evolución de la anterior, y no es prudente generalizar este concepto, pues, no
es del todo cierto. Si es válido mencionar las ventajas que presentó el utilizar un
dispositivo FPAA en el sistema de control antes mencionado, no se pueden omitir
todas las falencias que también posee (como el número de dispositivos usados).
Igualmente, los FPGA son dispositivos que son masivamente usados para
implementar diseños, y es claro que sus principales ventajas se encuentran en la
capacidad u cantidad de operaciones dentro de un mismo dispositivo, entre otras;
su principal desventaja se encuentra en la complejidad a la hora del diseño. Por lo
cual, antes de mencionar que una tecnología es mejor que la otra, primero que
5
nada se debe obtener un criterio que permita establecer las ventajas que me
aportarían en la implementación de un diseño en una tecnología u en la otra.
Es decir, cada tecnología se trata por separado, en donde los campos de
operación de cada uno de ellas divergen y solo se interceptan en ciertos puntos;
entre más nos alejemos del foco de uso de una, será mejor implementar la otra, es
decir, entre ellas no se anulan, si no que se complementan.
Figura 4. Cada tecnología es distinta a la otra, entre menos provechoso sea usar FPGA, mas
provechoso será usar un FPAA y en sentido contrario, en el intercepto, se es necesario
tener un criterio para escoger la mejor opción.
Trabajos citados[1]
Hall, T., Twigg, C., Hasler, P., & Anderson, D. (23-26 Mayo 2004). Application performance of elements in a floating-gate FPAA. International Sympsium on Volume 2 , 589-92.[2] O.Hammami, L. a. (2008). A combined FPAA-FPGA plataform for Mixed-Signals Design Space. IEEE , 2-3.
[3] Selow, R., & Heitor S. Lopes, C. R. (2003). A comparison of FPGA and FPAA technologies for a signal
processing apliaction. IEEE , 5.
[4] Twigg*, C. M., D. Gray, J., & E. Haster, P. (2007). Programmable Floating Gate FPAA Switches Are Not
Dead Weight. IEEE , 2.
6