3T1-EO Procesador digital de seal Un procesador digital de seales o DSP (sigla en ingls de digital signal processor) es un sistema basado en un procesador o microprocesador que posee un juego de instrucciones, un hardware y un software optimizados para aplicaciones que requieran operaciones numricas a muy alta velocidad. Debido a esto es especialmente til para el procesado y representacin de seales analgicas en tiempo real: en un sistema que trabaje de esta forma (tiempo real) se reciben muestras (samples en ingls), normalmente provenientes de un conversor analgico/digital (ADC). Se ha dicho que puede trabajar con seales analgicas, pero es un sistema digital, por lo tanto necesitar un conversor analgico/digital a su entrada y digital/analgico en la salida. Como todo sistema basado en procesador programable necesita una memoria donde almacenar los datos con los que trabajar y el programa que ejecuta. Si se tiene en cuenta que un DSP puede trabajar con varios datos en paralelo y un diseo e instrucciones especficas para el procesado digital, se puede dar una idea de su enorme potencia para este tipo de aplicaciones. Estas caractersticas constituyen la principal diferencia de un DSP y otros tipos de procesadores. Para adentrar en su funcionamiento se pondr el ejemplo de un filtro: el DSP recibir valores digitales o samples procedentes de la seal de entrada, calcula qu salida se obtendr para esos valores con el filtro que se le ha programado y saca esa salida. Un posible sistema basado en un DSP puede ser el siguiente:
La seal entrante entra directamente en un filtro antialiasing para evitar frecuencias superiores a la de muestreo del conversor analgico-digital. Despus se lleva a cabo el procesado digital en el mdulo DSP, para despus volverse a convertir en analgico y dar paso a la salida. Programacin Un DSP se puede programar tanto en ensamblador como en C. Cada familia de DSP tienen su propio lenguaje ensamblador y sus propias herramientas suministradas por el fabricante. Gracias a la colaboracin entre fabricantes, existen lenguajes de ms alto nivel (y por lo tanto, ms sencillos y rpidos de usar) que incorporan la capacidad de programar los DSP, en general pasando por un precompilado automtico en C. Son los casos de LabVIEW y Matlab. Aplicaciones Las aplicaciones ms habituales en las que se emplean DSP son el procesado de audio y vdeo; y cualquier otra aplicacin que requiera el procesado en tiempo real. Con estas aplicaciones se puede eliminar el eco en las lneas de comunicaciones, lograr hacer ms claras imgenes de rganos internos en los equipos de diagnstico mdico, cifrar conversaciones en telfonos celulares para mantener privacidad, analizar datos ssmicos para encontrar nuevas reservas de petrleo, hace posible las comunicaciones wireless LAN, el reconocimiento de voz, los reproductores digitales de audio, los modems inalmbricos, las cmaras digitales, y una larga lista de elementos que pueden ser relacionados con el proceso de seales. Arquitectura Un DSP est diseado teniendo en cuenta las tareas ms habituales del procesado digital: sumas, multiplicaciones y retrasos (almacenar en memoria). Los DSP abandonan la arquitectura clsica de Von Neumann, en la que datos y programas estn en la misma zona de memoria, y apuestan por la denominada Arquitectura Harvard. En una arquitectura Hardvard existen bloques de memoria fsicamente separados para datos y programas. Cada uno de estos bloques de memoria se direcciona mediante buses separados (tanto de direcciones como de datos), e incluso es posible que la memoria de datos tenga distinta anchura de palabra que la memoria de programa (como ocurre en ciertos microcontroladores). Los elementos bsicos que componen un DSP son: Conversores en las entradas y salidas Memoria de datos, memoria de programa y DMA. MACs: multiplicadores y acumuladores. ALU: Unidad aritmtico-lgica. Registros. PLL: Bucles enganchados en fase. PWM: Mdulos de control de ancho de pulso. De Wikipedia, la enciclopedia libre. o