fundamentos del procesamiento digital de señales

download fundamentos del procesamiento digital de señales

of 28

Transcript of fundamentos del procesamiento digital de señales

Fundamentos de procesamiento digital de seal Introduccin a DSP Ventajas del Procesamiento Digital Conversin analgico-digital Muestreo y Aliasing. Procesadores digitales de Seal.

[email protected]

Qu es DSP? DSP: Es una disciplina identificada por el acrnimo en Ingls de Digital Signal Processing. Comprende los fundamentos matemticos y algortmicos que describen como procesar, en un ambiente de computo digital, informacin asociada a seales provenientes del mundo real. Digital: Sistema electrnico (digital) que opera con datos discretos representados en binario y de precisin finita. Seal: Un parmetro variable por medio del cual la informacin es transmitida en un sistema electrnico Procesamiento: la realizacin de operaciones en los datos mediante una secuencia de instrucciones programadas de acuerdo a un algoritmo que modifica dichos datos o extrae informacin de los mismos. DSP: Es el dispositivo identificado por el acrnimo Digital Signal Processor. Implementa ciertas soluciones especializadas de hardware que aceleran la ejecucin de los algoritmos de [email protected]

Un poco de historia 1948: Claude Shannon, A mathematical theory of communication Bell System Tech Journal 1948 1956: Texas instruments desarrolla un procesador digiral para datos ssmicos. 1965: James Cooley & John Tukey: algoritmo FFT 1970: Bishnu Atal: Linear predictive coding. 1980s: Primeros DSPs de Texas intruments, Intel, NEC. 1990:MPEG-1 layer 3 (MP3) 2000s: MPEG-7 (Multimedia Content Description Interface)[email protected]

Procesamiento Digital de Seal

[email protected]

Conceptos bsicos Algunas ventajas sobre procesamiento analgico Simplicidad y Versatilidad Los sistemas pueden ser programados Portabilidad a diferente hardware Estabilidad y Repetitibilidad Fcilmente duplicable No cambia con la temperatura Utilizacin de una representacin o formato digital Admiten cdigos de deteccin de errores Se pueden realizar funciones especiales

[email protected]

Conceptos bsicos Se pretende cambiar o analizar informacin qu es medida como una secuencia discreta de nmeros. El procesamiento con un DSP es un campo del procesamiento digital en general que se caracteriza por Las seales vienen del mundo real Necesidad de trabajar en tiempo real Necesidad de medir seales y convertirlas en nmeros Las seales son discretas: Informacin entre muestreos se pierde

[email protected]

Conceptos bsicosBases matemticas Modelado de seales continuas. Series y Transformada de Fourier, Transformada de Laplace, filtros analgicos. Convolucin y Correlacin Sistemas muestreados, cuantificacin de seales: ruido de cuantificacin Modelado de seales muestreadas: la Transformada Z Transformada discreta de Fourier (DFT), transformada discreta del coseno (DCT), otras transformaciones (Wavelet,Hartley,..)

Mtodos algortmicos: Transformada rpida de Fourier (FFT) otros algoritmos tpicos: (Ej: Algoritmo de Goertzel, ...) Diseo de filtros [email protected]

Representacin de seales en el dominio de tiempos y en el de frecuencias

[email protected]

Seales reales: conceptos bsicos

Las seales reales son la combinacin de muchas frecuencias Ancho de Banda = 2 f m Espectro = Contenido en frecuencias.

[email protected]

Tratamiento de seales

La mayora de los fenmenos naturales macroscpicos estn asociados a seales continuas: temperatura, radiacin, sonido, velocidad y direccin del viento, humedad, .. Lo mismo sucede con muchos fenmenos fsicos usados en aplicaciones tecnolgicas: fuerza, velocidad de giro, potencia, etc... Sin embargo, a veces es til definir seales imaginarias (usando nmeros complejos) para facilidad de [email protected]

Tratamiento de seales Las seales reales son analgicas Transductor Conversor a seal elctrica A-D cuantizacin muestreo DSP Manipulacin digital

[email protected]

Conversin A/DMuestreo temporal => Periodo TM Cuantificacin => Nmero de bits N

[email protected]

Cuantificacin

[email protected]

Muestreo Tomar una medida a intervalos peridicos. Periodo de muestro fijo. Estimar el valor del precio de la accin en el tiempo que no disponemos de datos.Tiempo ( Das)

Valor (pesetas)

Periodo de Muestreo: tiempo entre medidas. Tiempo de Muestreo: tiempo empleado en tomar una medida.

[email protected]

Prdida de Informacin Tomar muestras a intervalos NO peridicos en los puntos de inters La interpretacin de informacin es ms difcil. Periodo de muestro fijo Se pierde informacin?Precio de venta

Valor (pesetas)

Precio de venta

Valor (pesetas)

Es ms fcil de interpretar.

La CLAVE es la Frecuencia de [email protected]

Eleccin del periodo de muestreo

[email protected]

Problema de mltiples Alias

[email protected]

Problema de mltiples Alias

[email protected]

Problema de mltiples Alias

[email protected]

Problema de mltiples Alias

[email protected]

Problema de mltiples Alias

[email protected]

Seales 2D: ImgenesUna imagen digital es una imagen f(x,y) que ha sido discretizada o cuantificada en las coordenadas espaciales y en su brillo. As pues una imagen digital se puede considerar como una matriz cuyos ndices de filas y columnas (NxM) identifican a un punto en la imagen y el valor de la matriz en ese punto ser el nivel de gris en ese punto (caso de una imagen monocroma con varios niveles de gris). Perdida de informacin al capturar una imagen: Discretizacin a pxeles (muestreo). Resolucin Rango limitado de valores de intensidad luminosa (cuantificacin).

Muestreo y cuantificacinEl muestreo de la imagen tiene el efecto de reducir la resolucin espacial de la misma. La diapositiva siguiente muestra el efecto de captar una misma imagen a diferentes resoluciones. Todas ellas han sido transformadas al mismo tamao para su visualizacin:

De izquierda a derecha y de arriba a abajo. Muestreo a 256 x 256, 128 x 128, 64 x 64 y 32 x 32 pxeles

CuantificacinEl efecto de la cuantificacin viene dado por la imposibilidad de tener un rango infinito de valores de medida para la intensidad de brillo de los pxeles.

Efecto de la cuantificacin: De izquierda a derecha, 8 bits, 1 bits y 4 bits. bits

Muestreo y cuantificacin Muestreo y cuantificacin no uniforme un esquema adaptativo donde el proceso de muestreo depende de las caractersticas de la imagen. En general se requiere un muestreo ms preciso en las cercanas las transiciones ms bruscas de niveles de gris que en las regiones ms suaves donde se puede aplicar un muestreo ms burdo. El aplicar este mtodo supone un estudio previo de las caractersticas de la imagen. Aliasing espacial Para que una frecuencia de muestreo sea correcta, esta ha de ser, al menos, el doble de la frecuencia espacial de la imagen que se est muestreando. Si no se respeta se produce lo que se conoce como Aliasing, apareciendo artificios y visualizndose frecuencias que no existan en la imagen original

Bibliografa en Web The Scientist and Engineer's Guide to Digital Signal Processing by Steven W. Smith California Technical Publishing ISBN 0-9660176-3-3 (1997) http://www.dspguide.com/ http://www.bores.com/

[email protected]

Procesadores digitales de Seal Estructura tpica de un sistema DSP Caractersticas y ventajas de los DSPs Arquitecturas/tipos de DSPs Aplicaciones de los DSPs

[email protected]

Procesamiento Digital de Seal

La entrada es una seal analgica Se convierte la seal analgica a digital Procesar matemticamente la representacin de la seal Volver a convertir de digital a analgica Dar como salida una seal analgica Procesamiento en tiempo Real de la representacin Matemtica de la [email protected]

Procesamiento Digital de Seal Por qu usar procesamiento digital de seales?

[email protected]

Estructura de un sistema DSP: Filtro IIRSistema muy utilizado, permite por ejemplo aislar las seales con una caractersticas de frecuencia especficas

Funcin de transferencia

Ecuacin en diferencias

H (z) =

b0 + b1 z 1 + b2 z 2 1 + a1 z 1 + a 2 z 2x(n)

y(n) = a( k ) y(n k ) + b( k ) x(m k )k =1 k =0

N

M

Diagrama de flujo+ Z-1 + -a1 Z-1 -a2 b2 b1 + b0 + y(n)

[email protected]

Por qu es necesario un procesador de propsito especfico? Estas operaciones requieren muchos clculos de la forma: A = B*C + D Esta ecuacin simple involucra una multiplicacin y una operacin de suma La instruccin de multiplicacin de un procesador de propsito general es muy lenta en comparacin con la instruccin de suma El microprocesador Motorola 68000 necesita 10 ciclos de reloj para una suma 74 ciclos de reloj para una multiplicacin

[email protected]

Qu es un DSP? Es un microprocesador con un juego de instrucciones dedicado al procesado digital de seal: Mayor paralelismo Juego de instrucciones orientado a MAC y = ax1 + bx2 + cx3 + ... Filosofa microcontrolador: CPU + memoria interna + perifricos Es raro que tengan conversores A/D o D/A

[email protected]

Procesadores DSP DSP tpico

[email protected]

DSP vs microprocesador genrico En qu difiere un DSP de una CPU tradicional? por sus aplicaciones de software: aplicaciones cclicas, de duracin acotada, donde se requiere altsima eficiencia de ejecucin uso de Assembler y dialectos especiales del lenguaje C para optimizar el cdigo algoritmos usuales: filtrado convolucin (interaccin de dos seales) correlacin (comparacin entre seales)[email protected]

DSP vs microprocesador genrico En qu difiere un DSP de una CPU tradicional? por sus recursos de hardware: disponibilidad de modos de direccionamiento especializados (Ej: bit-reversal, colas circulares) varias unidades de procesamiento operando en forma concurrente (MAC, Barrel Shift,... operaciones aritmticas especiales: algunos DSPs con unidades FP. esquema de Timing e Interrupciones mucho ms orientado a acciones en tiempo real pocos o nulos recursos que generan latencias, como memoria virtual, caches, [email protected]

DSP vs microprocesador genricoEn qu difiere un DSP de una CPU tradicional? por sus recursos de hardware: Arquitecturas tipo HARVARD con mapas de datos e instrucciones separados Dos o ms mapas de memoria de datos que permiten leer concurrentemente operandos y coeficientes Manejo especializado de punteros de direcciones a travs de unidades de clculo dedicadas Opciones para la digitalizacin y captura de seales con intervalos regulares (DMA) Recursos internos o dispositivos perifricos especializados para la conversin A/D y D/A de seales, as como para el filtrado anti-alias y la reconstruccin

[email protected]

DSP vs microprocesador genrico En qu difiere un DSP de una CPU tradicional? por sus recursos de hardware: Elevada capacidad de procesamiento aritmtico de datos en tiempo real, con elevada precisin, para evitar problemas de redondeo y truncamiento Etapas Multiplicadora/Acumuladora (MAC) apta para resolver ecuaciones del tipo A = A + (B x C) en un nico ciclo Circuitos BS (Barrel Shifter) para desplazar un dato varios bits a derecha/izquierda en un nico ciclo de instruccin Una ALU operando en forma independiente al MAC y al BS Cdigos de operacin para controlar MAC, ALU y BS en una nica instruccin (varias operaciones concurrentes )[email protected]

Procesadores DSP Evolucin de los procesadores DSP

[email protected]

Procesadores DSP TiposMultiprocesadores DSP en un chip TMS320C80 TMS320C6000 TI TMS320C4x Motorola 96000 AT&T DSP32C Analog Devices ADSP21000 TI TMS320C2x Motorola 56000 AT&T DSP16 Analog Devices ADSP2100

Procesadores 32Bit- Floating Point

Procesadores 16Bit- Fixed Point

[email protected]

Consideraciones para optimizar un DSP#1: La CPU se disea considerando la aplicacin DSP. Un entorno que permite la ejecucin eficiente de operaciones de un proceso DSP, tal como realizar MAC en un ciclo. #2: Buses mltiples para un flujo eficiente de instrucciones y de datos Sistema de gestin de datos que permite un procesamiento eficiente de vectores y streams de datos en tiempo real. (Arquitectura Harvard) #3: Conjunto de instrucciones muy especifico para conseguir gran potencia de calculo en DSP. (Highly-tuned instruction set) Instrucciones sofisticadas que se pueden ejecutar en muy pocos ciclos , con menos cdigo y menor consumo de potencia.

[email protected]

Caractersticas de los Procesadores DSP Muchos registros Permiten guardar datos temporalmente Registros enteros y de punto flotante Generador eficiente de direcciones Poseen registros de direcciones Usualmente se genera en operaciones de fetch o store Operaciones tpicas *rP *rP++ *rP-*rP++rI ( registro indirecto) *rP++rIreverse ( util para algoritmo FFT)

- Buffers [email protected]

Procesadores DSP Arquitectura Harvard Un bus instrucciones, otro para datos Usualmente permiten usar ambos para operandos Normalmente memoria cache para instrucciones Requiere gran cantidad de pines

[email protected]

Procesadores DSP Formato de datos Enteros 0 10 1 00 1 1-27 26 25 24 23 22 21 20 = 26 + 24 + 21 + 20 = 83

Coma fija: el punto decimal est prefijado ( nmeros