Subido por Gabo33

Articulo FFT

Anuncio
Resumen:
En aplicaciones biomédicas integradas, los algoritmos de análisis de espectro, como
la transformada rápida de Fourier (FFT), son cruciales para la detección de patrones y
han sido el foco de una investigación continua. En sistemas profundamente
integrados, como los marcapasos cardíacos, el procesamiento de señales basado en
FFT generalmente se calcula mediante un circuito integrado específico de la
aplicación (ASIC) para lograr un funcionamiento de baja potencia. Este informe
propone un enfoque de diseño basado en datos para una solución FFT ASIC, que
aprovecha el rango limitado de datos que encuentran estos sistemas integrados. Las
optimizaciones propuestas en este resumen utilizan el concepto simple de hash y
tabla de búsqueda para reducir efectivamente el número de operaciones aritméticas
requeridas para realizar la FFT de una señal de electrocardiograma (ECG). Al reducir
el consumo de energía dinámica y la huella energética general de la computación
FFT, el diseño propuesto tiene como objetivo lograr una mayor duración de la batería
de un marcapasos cardíaco. El diseño se sintetiza utilizando una biblioteca de células
estándar de 90 nm y se simula la actividad de conmutación de nivel de puerta para
obtener resultados precisos de consumo de energía. Las optimizaciones propuestas
lograron un bajo consumo de energía de 27,72 nJ por FFT, que es un 14,22% más
bajo que un FFT estándar de 128 puntos radix-2 cuando se probó con datos de ECG
reales recopilados de PhysioNet.
SECCIÓN I.
Introducción
La transformada de Fourier es sin duda uno de los algoritmos de procesamiento de
señales más influyentes, particularmente para aplicaciones biomédicas [1] , [2] . Los
avances del muestreo de señales digitales y la aparición de la transformada discreta de
Fourier (DFT) permiten a los investigadores biomédicos analizar los componentes de
frecuencia de las señales fisiológicas y detectar propiedades ocultas para identificar
anomalías físicas. Tales métodos han sido particularmente efectivos para analizar
señales fisiológicas como el electrocardiograma (ECG) [3] - [4] [5]. Una aplicación
práctica del análisis de señales mencionado anteriormente se puede encontrar dentro
de un marcapasos cardíaco implantable, que es un dispositivo encargado de la
monitorización continua de las señales del ECG para detectar anomalías del ritmo
cardíaco [6] . En caso de un ritmo intrínseco lento o falta de conducción normal del
impulso, el marcapasos genera estimulaciones eléctricas para estimular el músculo
cardíaco y mantener una frecuencia cardíaca adecuada. Un marcapasos tiene que
funcionar en un entorno con una gran limitación de energía y puede durar un período
muy largo (~ 7 a 10 años) con una sola batería [7] . Por lo tanto, el sistema integrado
dentro de un marcapasos cardíaco necesita procesar la señal de ECG con la máxima
eficiencia energética para garantizar una duración de batería suficientemente
larga. Una arquitectura de sistema típica para un marcapasos cardíaco se muestra
enFigura 1 .
Figura 1.
Diagrama del sistema integrado dentro de un marcapasos cardíaco. El coprocesador de señales
resaltado en naranja es responsable del procesamiento continuo de los datos de ECG
muestreados y es el objetivo de este informe.
Ver todo
Un procesador central supervisa el funcionamiento general, mientras que un
coprocesador dedicado ejecuta el algoritmo de procesamiento de señales. El
coprocesador de señales (resaltado en naranja en la Fig. 1 ) es responsable de calcular
la transformada rápida de Fourier (FFT) o algoritmos de análisis de espectro
similares [8] , [9] . Esto motiva el esfuerzo detrás de optimizar el diseño de un
coprocesador FFT. Este informe presenta un método de cálculo FFT con eficiencia
energética y su implementación VLSI que requiere un área de chip y hardware
adicional mínima, pero logra una actividad de conmutación de circuitos y un consumo
de energía dinámicos significativamente reducidos.
SECCION II.
Teoría y Motivación
La FFT es un algoritmo eficiente para calcular la DFT y se prefiere en aplicaciones
prácticas ya que tiene una complejidad de solo O ( N Iniciar sesión2norte ) [10] . Se
calcula un par de muestras de señales de valor complejo utilizando una estructura de
mariposa en el algoritmo FFT. En el hardware subyacente, cada mariposa realiza
cuatro multiplicaciones y seis adiciones en el formato de representación numérico
elegido. Los coeficientes reales e imaginarios de las variables complejas se pueden
representar en representación de coma flotante, coma fija o coma flotante en bloque
(BFP). Se prefiere el concepto de numeración BFP, donde se requiere precisión de
cálculo y alto rango dinámico sin la complejidad añadida de implementaciones de
punto flotante completo [11] . La representación BFP es atractiva para aplicaciones de
procesador de señal digital (DSP), ya que puede proporcionar la precisión y el rango
dinámico requeridos por algoritmos como FFT que utilizan aritmética de punto
fijo [12].
A diferencia del punto flotante IEEE-754, el esquema BFP asigna un solo exponente a
un conjunto de números. En esta disposición, se puede utilizar hardware de punto fijo
para realizar operaciones aritméticas tales como multiplicación y suma en el bloque de
mantisa. Después de cada operación, el exponente común asociado con el bloque debe
escalarse para ajustarse al número más grande del conjunto de mantisas.
A. Patrones de datos de ECG
La detección y clasificación de anomalías en el ECG es clave para identificar varios
tipos de latidos cardíacos anormales conocidos como arritmia. El proceso de
clasificación requiere la extracción de ciertas características espectrales del
ECG [17] , [18] . El proceso de extracción y clasificación de características basadas en
FFT continúa durante todo el ciclo de vida operativo del marcapasos, consumiendo
una parte significativa de la energía disponible. Por lo tanto, es muy deseable la
optimización de la energía en el algoritmo FFT.
Un ECG es un registro digital de los impulsos eléctricos del corazón capturados
mediante electrodos sensores. La figura 2 muestra un registro de ECG digital de 11 bits
trazado contra el tiempo. Los datos son casi periódicos con cada latido del corazón y
muestran la conocida onda P, intervalo PR, complejo QRS, segmento ST, onda T y el
período de reposo [15] . El análisis estadístico muestra que las muestras fuera del
complejo QRS tienen un rango estrecho de valores (0 a 60) y una desviación estándar
baja (18,3). Por lo tanto, dos muestras seleccionadas al azar fuera del complejo QRS
tendrán una alta probabilidad de tener el mismo valor. Esto es válido para todos los
ciclos de la señal de ECG en condiciones normales.
Figura 2.
Gráfico de muestras de ECG digitales de 11 bits de la base de datos de ECG a largo plazo del
MIT-BIH [16] . Los marcadores indican varios segmentos de una señal de ECG. Excluyendo el
complejo QRS, el rango de valores de señal está limitado entre 0 y 60.
Ver todo
Para este resumen, junto con una muestra de ECG normal, se recopilaron cuatro tipos
de registros de ECG anormales de la base de datos de arritmias MIT-BIH [20] , [26] ,
que cubren los casos más comunes de arritmia. Los registros incluyen bradicardia
sinusal (SBR), bloqueo AV (BAV), fibrilación auricular (AFIB) y aleteo auricular
(AFL). La huella estadística de estos registros de ECG no ideales de 11 bits se resume
en la Tabla I. SBR y AVB presentan una desviación estándar baja ya que el corazón no
genera sus impulsos de estimulación natural en estas condiciones. Los valores de estas
condiciones indican que en los casos más comunes de uso de marcapasos, los valores
de muestra encontrados por el sistema tendrán una alta probabilidad de repetirse a lo
largo del tiempo. Para los dos casos restantes de AFIB y AFL, la tasa de cambio es algo
mayor debido a la naturaleza de las condiciones. Los valores calculados para la
desviación estándar fueron 42,9 y 13,5 para AFIB y AFL, respectivamente. Aunque no
se encuentra comúnmente, el análisis del rendimiento de la FFT propuesta durante el
procesamiento de AFIB y AFL se suma a la robustez y escalabilidad del enfoque
presentado en este resumen.
TABLA I Estadísticas de los registros de ECG normales y anormales
Debido a los valores repetidos observados, cuando una secuencia de entrada de
cualquiera de estos registros de ECG se procesa a través de un algoritmo FFT, tiene
lugar un número significativo de operaciones aritméticas redundantes. Para ilustrar la
redundancia, se utilizaron muestras de todos los registros de ECG como entrada a un
simulador BFP FFT de 128 puntos que utiliza el formato de datos Q15. En cada etapa
de la FFT, se registraron los operandos para el paso de multiplicación dentro del
cálculo de la mariposa. Se contó la aparición de combinaciones de operandos únicos y
solo se tuvieron en cuenta las cinco combinaciones repetidas principales. Fig. 3muestra
el porcentaje de multiplicaciones repetidas con respecto al total de multiplicaciones en
cada etapa. Las cinco primeras entradas repetidas en las primeras cuatro etapas
contribuyen al 38,3% de la multiplicación total en promedio. Al identificar las cinco
multiplicaciones principales que ocurren en cada etapa y almacenar su resultado para
futuras búsquedas, se evitará un número significativo de operaciones de multiplicación
y conmutación de circuitos. Utilizando una tabla de búsqueda (LUT) relativamente
pequeña de cinco entradas, este concepto de optimización se puede implementar para
reducir el consumo de energía dinámica para una FFT de 128 puntos. El concepto de
búsqueda de resultados en FFT ha sido posible en la implementación de
software [18]basado en aritmética de punto flotante de precisión simple IEEE-754. Sin
embargo, la utilización de esta técnica para BFP requiere una técnica de hash novedosa
y amplía la efectividad a algoritmos FFT de conjuntos de muestras más grandes.
Fig. 3.
Gráfico de barras que muestra el porcentaje de multiplicaciones repetidas de las siete etapas en
la FFT de 128 puntos provenientes de las cinco primeras entradas repetidas.
Ver todo
SECCIÓN III.
Diseño propuesto
El diseño del circuito integrado específico de la aplicación FFT (ASIC) se estructura en
torno a una unidad de cálculo de mariposa. Un sumador con signo de 16 bits y un
multiplicador con signo de 16 bits para el cálculo de BFP son los únicos bloques
aritméticos en la unidad de cálculo de mariposa, controlada por una máquina de
estados finitos. El diagrama del módulo de mariposa se muestra en la Fig.4. Como se
indicó anteriormente, el multiplicador en la unidad de mariposa tiene acceso a una
memoria de búsqueda de cinco entradas, que está diseñada para proporcionar los
resultados de la multiplicación para los operandos más frecuentes. Realizar una
búsqueda en la tabla requiere un algoritmo hash eficiente para generar un índice de
búsqueda. En esta implementación, se utilizó una función hash XOR plegada para
generar un índice para la LUT. La función hash XOR es popular por su simplicidad y
excelente distribución no uniforme del valor hash para minimizar posibles
conflictos [19] . Cada entrada al multiplicador se pasó a la función hash para generar
un índice a la LUT. La función hash XOR calculó un valor hash de 4 bits haciendo
XOR-ing los cuatro nibbles (4 bits) que existen en un número de 16 bits. El área
requerida para sintetizar el multiplicador habilitado para búsqueda y la función hash
fue5523 μ metro2 , simplemente un 9,7% más grande que el multiplicador de cabina
estándar utilizado en un circuito FFT estándar.
Figura 4.
Diagrama de bloques de la unidad de mariposa. Una unidad de mariposa aritmética estándar
BFP.
Ver todo
A. Arquitectura y rendimiento del sistema
La arquitectura del FFT ASIC está diseñada alrededor del módulo de mariposa
optimizado. Los principales componentes de soporte necesarios para el escalado de
exponentes de BFP en cada etapa incluyen un cambiador con signo, un contador de
exponente y un contador de bits iniciales. El módulo de cálculo de mariposa está
diseñado para generar dos resultados complejosXI[ n ] y XI[ n + 1 ] y la variable
máxima de 16 bits dentro XI[ n ] y XI[ n + 1 ] . La salida máxima de cada mariposa se
almacena y se compara con los valores anteriores para encontrar la magnitud máxima
generada en cada etapa de FFT. Antes del inicio de la siguiente etapa, el contador de
bits principal usa esta magnitud máxima para encontrar el espacio libre que se puede
usar para cambiar y escalar las variables de entrada a la siguiente etapa. El escalado
mejora la precisión y permite un rango dinámico más alto en el proceso general. El
valor de escala se usa para configurar la palanca de cambios para que cambie todos los
datos leídos de los bancos de memoria. Con cada turno, el valor del contador de
exponentes se actualiza de acuerdo con el valor de escala al final de cada etapa. La
implementación se adhiere a la naturaleza "in situ" del algoritmo FFT, lo que significa
que el resultado de cada etapa se volverá a escribir en la memoria para sobrescribir los
datos originales. Los factores de giro necesarios para los cálculos se calculan
previamente y se almacenan en dos módulos de memoria de solo lectura. La
arquitectura general del sistema se da enFigura 5 .
Figura 5.
Diagrama de bloques simplificado de todo el coprocesador FFT. Basado en una sola unidad de
mariposa, este circuito itera a través de la operación de mariposa de cada etapa
secuencialmente.
Ver todo
Cada operación de mariposa requirió 12 ciclos de reloj para completarse. Además de la
operación de mariposa, la lectura de datos de entrada, el escalado y la escritura en la
memoria requirieron otros seis ciclos de reloj, lo que resultó en 18 ciclos de reloj en
total. Para una FFT de 128 puntos, un total de64 × 7 = 448. se llevan a cabo
operaciones de mariposas, lo que resulta en 448 × 18 = 8064. ciclos por FFT. La
elección de una frecuencia de reloj máxima de 100 MHz permite que el cálculo se
complete dentro de 8.064μ s , que es insignificante dentro de la ventana de
acumulación de muestra.
SECCION IV.
Resultados y análisis
Se implementaron dos diseños separados, con y sin la optimización propuesta, para la
comparación. La síntesis y los diseños de los diseños se realizaron utilizando la
biblioteca genérica Synopsys 90-nm [20] . Se habilitaron técnicas de bajo consumo
como la sincronización del reloj y el uso de bibliotecas de vt mixtas. Se realizaron la
simulación posterior a la ruta y la verificación de las reglas de diseño para garantizar la
funcionalidad correcta antes de simular la lista de conexiones posterior a la ruta para
estimar el consumo de energía. La actividad de conmutación durante la simulación se
capturó en formato de intercambio de actividad de conmutación, que se utilizó junto
con la información parasitaria utilizada en PrimeTime PX (PTPX) para determinar el
consumo de energía basado en la actividad a un voltaje de funcionamiento de 1,2 V y
una velocidad de reloj de 100,0 MHz. El desglose jerárquico del poder se muestra en
la Tabla II.. La implementación del diseño optimizado fue posible dentro de un área de
chips de 198404 μ metro2 (0,19 mm 2 ).
TABLA II Desglose jerárquico del poder
Para representar una carga de trabajo práctica, se utilizaron datos de ECG del mundo
real para simular su funcionamiento. Se utilizaron como entradas cinco conjuntos
diferentes de conjuntos de datos de ECG ideales y no ideales. El informe de análisis de
potencia promedio fue informado por PTPX. El consumo de energía dinámico
informado fue un 14,22% más bajo que el diseño FFT no optimizado. El tiempo
requerido para terminar cada cálculo fue8,06 μ s , lo que arroja un consumo de
energía promedio de 27,72 nJ para una sola FFT. El consumo de energía por FFT para
diferentes conjuntos de entrada se muestra en la Fig.6 .
Figura 6.
Energía por FFT. El circuito FFT optimizado proporciona una solución de mayor eficiencia
energética para procesar varias señales de ECG.
Ver todo
A. Comparación con el trabajo existente
El enfoque de reducción de potencia de FFT presentado en este informe se compara
con las soluciones de FFT de última generación de diferentes disciplinas y se muestra
en la Tabla III . La energía de cada diseño se normaliza para eliminar el efecto de
diferentes parámetros de diseño. Se utilizó una escala lineal utilizando la longitud de
bits de datos, el tamaño de característica más pequeño, un número total de
operaciones de mariposa y una escala exponencial del voltaje para escalar la energía
por FFT de cada diseño. Los resultados normalizados destacan claramente los efectos
beneficiosos de las optimizaciones frente a otros métodos de cálculo FFT. Aunque una
FFT basada en eDRAM puede lograr resultados ligeramente mejores, lo hace con una
mayor utilización del área y riesgo de falla de retención de memoria [23]. Ambas
propiedades no son deseables en una aplicación de marcapasos compacta y crítica para
la vida.
TABLA III Comparación con las implementaciones de FFT de última generación
B. Aplicación en dispositivos cardíacos
Con un perfil de energía más pequeño, el nuevo FFT ASIC puede beneficiar a los
dispositivos biomédicos implantables alimentados por batería para mantener un
tiempo de ejecución más prolongado. En un marcapasos, la transformada de Fourier es
uno de los cálculos principales que se ejecutan de forma continua en tiempo real. Por
lo tanto, en tales aplicaciones, se espera que la reducción de energía extienda
significativamente la vida útil de la batería. El sistema integrado en un marcapasos
cardíaco normalmente alberga otros componentes del circuito, como un ADC, uno o
más filtros analógicos, una bomba de carga para generar un voltaje más alto, un
generador de pulsos para generar estimulaciones cardíacas y un DSP para calcular FFT
y otras tareas de procesamiento de señales. [6] . Basado en la hoja de datos de un
marcapasos moderno [7], un marcapasos normalmente consume un 67% de energía
para el análisis de ECG y un 33% de energía para la estimulación durante la
estimulación continua unicameral. Con base en estas distribuciones de energía y la
energía FFT obtenida en este resumen, se calculan y se presentan en la Tabla IV la
descomposición total de energía y la vida útil de la batería de un marcapasos . El
tiempo de ejecución de la batería se calcula en función de una capacidad de batería de
3,36 Wh de [7] y una frecuencia típica de detección y operación de estimulación de 1
kHz [24]. La energía de cada operación de estimulación se utiliza para calcular el
número absoluto de operaciones posibles hasta que la batería alcanza su estado de fin
de servicio. Suponiendo que la detección y la estimulación continuas ocurren cada 1 ms
(frecuencia de 1 kHz), se calculó que la duración de la batería para la FFT
predeterminada es de 9,9 años. Los marcapasos disponibles comercialmente tienen
una duración de la batería en el rango de 7 a 10 años, y varía con la gravedad del
problema cardíaco y el requisito de estimulación correspondiente [7] , [25]. Usando el
FFT ASIC presentado en este informe, el consumo de energía del algoritmo de
detección se puede mejorar en un 14.22%, extendiendo el tiempo de ejecución
general. Dado que la lógica de detección y las operaciones FFT están activas durante
toda la vida útil del marcapasos, el ahorro de energía general se suma para ofrecer un
tiempo de ejecución significativamente mejorado.
TABLA IV Duración estimada de la batería de un marcapasos mediante el esquema de detección
basado en FFT
SECCIÓN V.
Conclusión
El procesamiento eficiente de datos biológicos, como las muestras de ECG, es una tarea
desafiante en entornos con recursos limitados. Asegurar la eficiencia algorítmica y
reducir el consumo de energía requiere optimizaciones específicas de la aplicación del
hardware, junto con técnicas de implementación y síntesis de bajo consumo. Cuando
se utiliza el conocimiento del dominio de los datos de ECG durante el desarrollo de la
arquitectura del sistema, se hace posible una mayor comprensión y un diseño
óptimo. En este resumen, se propuso y desarrolló una arquitectura FFT altamente
eficiente analizando estadísticamente la naturaleza de FFT para calcular señales de
ECG. Con base en los hallazgos, se propusieron modificaciones a la unidad de
mariposa para desarrollar un ASIC FFT eficiente que minimice efectivamente su huella
de energía. La reutilización de resultados aritméticos intermedios mediante el uso de
LUT y operaciones BFP redujo la actividad de conmutación general y el consumo
dinámico de energía en un 14,22% en varios casos de uso. La baja energía de cálculo de
27,72 nJ por 128 FFT directamente conducirá a una mayor duración de la batería en
los marcapasos cardíacos en miniatura alimentados por batería.[26] del
futuro. Aunque este enfoque novedoso para el cálculo de FFT se presentó para datos de
ECG, el concepto de perfilar una señal y poblar las LUT apropiadas se puede aplicar a
cualquier conjunto de datos que exhiba la probabilidad de muestras repetidas. Estas
propiedades se observan en aplicaciones portátiles populares, como monitores de
frecuencia cardíaca y rastreadores de actividad física. Otros algoritmos de
procesamiento de señales estrechamente relacionados, como la transformada de
Fourier de corta duración o la transformada de ondas discretas, también pueden
beneficiarse de dicha optimización basada en la computación dinámica cuando se
procesan señales con un rango de datos limitado y valores recurrentes.
RECONOCIMIENTO
El contenido es responsabilidad exclusiva de los autores y no necesariamente
representa las opiniones oficiales de los Institutos Nacionales de Salud.
Descargar