Introducción a los Procesadores Digitales de Señal (DSP) Tratamiento Digital de Señales ETSI Telecomunicaciones Universidad de Valladolid Curso 2005-2006 Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
0. Índice Introducción Arquitecturas de procesadores DSP 1.1 Procesado discreto 1.2 Ventajas 1.3 Inconvenientes 1.4 Definición de Tiempo real 1.5 Tipos de procesadores 1.6 Análisis tipo de procesadores (EEES) 1.7 Modelo de referencia Arquitecturas de procesadores DSP 1.8 Arquitectura básica 1.8 Tipos de arquitectura 1.10 Arquitectura de referencia 1.11 Clasificación DSP 1.12 Criterios de selección 1.13 Formas de presentación Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
OLD INFO 1.1 Procesado discreto DSP Y = ai * xi DAC x Y ADC La mayoría de los algoritmos se expresan mediante MAC: count i = 1 Y = ai * xi for (i = 1; i < count; i++){ sum += m[i] * n[i]; } Muestro discreto de una señal continua: A t OLD INFO Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.2 Ventajas Implementación digital Extensión de algoritmos Amplio abanico de procesadores digitales: PIC, PPG, DSP, FPGA, ASIC etc. Extensión de algoritmos Implementan todos los algoritmos continuos Implementan algoritmos no realizables en el dominio continuo Filtro FIR con fase lineal. Filtros adaptativos Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.2 Ventajas Fiabilidad y Repetibilidad Los sistemas analógicos utilizan componentes analógicos: AO, resistencias, condensadores y bobinas, cuyos parámetros varían debido a las tolerancias, la temperatura, cambios de alimentación y vibraciones mecánicas, y el paso del tiempo, afectando al comportamiento global del sistema analógico Necesitan calibraciones y recalibraciones Sistemas discretos: dos sistemas son idénticos, un sistema siempre funciona igual Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.2 Ventajas Flexibilidad Reducción de costes Cambiar una aplicación. Corregir una aplicación Actualizar parámetros de una aplicación en tiempo real Reducción de costes Reducción del número de circuitos Menor tiempo de desarrollo Menor coste ( recursos humanos ) Menor consumo de potencia Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
Las señales de alta frecuencia no pueden procesarse debido a: 1.3 Inconvenientes Las señales de alta frecuencia no pueden procesarse debido a: Limitación Conversores A/D velocidad de muestreo precisión / SNR ( nº bits ) coste Limitación potencia de procesado FPGA -> amplia fmax Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.4 Definición de tiempo real Los procesadores DSP tienen que realizar tareas en tiempo real …¿y como se define el concepto de tiempo real? La definición de tiempo real depende del tipo de aplicación Ejemplo: un filtro FIR con 100 coeficientes funciona en tiempo real si el DSP puede realizar el siguiente calculo entre dos muestras consecutivas de señal: Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.4 Definición de tiempo real Tiempo de espera Tiempo de procesado n n+1 Tiempo de muestreo Se define una aplicación en tiempo real si: Tiempo de espera 0 Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.5 Tipos de procesadores Microcontroladores : PIC, DSPIC Microprocesador de propósito general Microprocesadores Power PC (RISC) Procesador de señal de propósito general (DSP) Procesador especifico FPGA (Xilinx) Procesadores ASIC Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.6 Análisis Tipo de procesadores ACTIVIDAD EEES Para cada tipo de procesador analizar las ventajas e inconvenientes Parámetros de análisis Potencia de calculo Capacidad de memoria Tipos de software y algoritmos Tamaño chip Capacidad de Programación Tiempo de desarrollo Coste de producción Coste de desarrollo Se trabajará en grupos y los resultados se exponen el día 08/03/06 Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.7 Modelo de referencia Arquitecturas N procesadores Arquitecturas mixtas DSP + RISC DSP + FPGA DDC: downconverter FFT FPGA FPGA FPGA A/D FPGA DSP Power PC Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.8 Arquitectura básica CONTROLADOR DMA SECUENCIADOR PROGRAMA DECODIFICADOR INSTRUCCIONES E/S SERIE PARA CODEC MEMORIA DE PROGRAMA UNIDAD CALCULO DIRECCIONES MEMORIA DE DATOS MULTIPLICADOR E/S PARALELO UNIDAD ARITMETICO LOGICA REGISTROS PROPOSITO GENERAL MEMORIA DE COEFICIENTES Arquitectura: Definición de bloques y su interconexión Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.9 Tipos de Arquitecturas Von Neumann a*b = 3 ciclos Harvard Dato e instrucción se obtienen en un solo ciclo a*b = 2 ciclos Referencia: The Scientist and Engineer's Guide to Digital Signal Process. Cap 28: Digital signal processor Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.9 Tipos de Arquitecturas Super Harvard Cache de instrucciones 2º dato en la memoria de programa Controlador I/O DMA ( autónomo, Memoria interna – externa) Puertos serie alta velocidad Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.10 Arquitectura de referencia Generadores de direcciones ALU secundarias, modo bit-reversed, pre/post indexación, Multiplicador ALU Desplazador (shifter): Escalado, mul/div 2 n Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.11 Clasificación DSP PROCESADORES DE PUNTO FIJO Representación de los datos en punto fijo ( p.e 16 bit) Arquitecturas muy rápidas Bajo coste Margen dinámico reducido y precisión media Programación con Técnicas de escalado (overflow) Bajo consumo PROCESADORES EN PUNTO FLOTANTE Representación de los datos en punto flotante Arquitecturas de velocidad media Coste medio Alto margen dinámico y alta precisión Programación sencilla Consumo medio Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.12 Criterios de selección: Punto Fijo vs Punto flotante Numero de bits del A/D Mayor 10-12 bits => flotante (audio) 8 bits => fijo (radar, video) Complejidad algoritmo Simple => fijo (filtro) Complejo => flotante (FFT) Coste Basado en el producto: fijo (bajo) Basado en el desarrollo: flotante (bajo) Es la aplicación la que determina el tipo de DSP a utilizar con el fin de optimizar las prestaciones y el coste Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA
1.13 Forma de presentación Nucleo (core) Procesador Tarjeta (board) Registros, multiplicadores, ALU, generador de direcciones y secuenciador Ejemplo: Core starcore SC140 Procesador Core + memoria + interfaces I/O Tarjeta (board) Procesador + memoria externa + PCB Copyright 2006 © Prof. Alberto Izquierdo Tratamiento Digital de Señales ETSI Telecomunicaciones. UVA