Вы находитесь на странице: 1из 22

eman ta zabal zazu

PROCESADORES DIGITALES DE
SEÑAL
DSP's

Sainz de Murieta Mangado, Joseba Andoni


Departamento de Ingeniería de Sistemas y Automática
eman ta zabal zazu

INDICE

1. Introducción
2. Algoritmos típicos para DSP
3. Recursos específicos en los DSP
4. Elección del DSP

2
eman ta zabal zazu

1.- INTRODUCCION

La gran mayoría de las señales implicadas en los procesos industriales son señales de
naturaleza analógica (temperatura, presión, distancia, espesor,...).
Hasta la década de los 80, el tratamiento de estas señales se realizaba con circuitos
analógicos realizados mediante amplificadores operacionales.

Estos dispositivos realizaban diversas operaciones matemáticas con la señal de entrada


en función de la configuración en la que se encontraran.
Es a partir de la década de los 90 cuando los avances tecnológicos permitieron
integrar en un chip los dispositivos necesarios para lograr un circuito integrado
especializado en el tratamiento matemático de las señales analógicas.
Se puede definir un DSP como un computador digital monochip orientado al
procesamiento de la información procedente del muestreo de una señal analógica y
optimizados para resolver un campo de aplicaciones concreto.
3
eman ta zabal zazu

1.- INTRODUCCION

MICROCONTROLADORES Y DSP
Cuando la tecnología permitió integrar en un solo chip todos los componentes
necesarios para construir un computador digital junto con una serie de recursos
específicos, apareció el microcontrolador.
Normalmente un microcontrolador tiene recursos limitados, es de propósito general y
suele estar empotrado en el sistema.
Un DSP es un circuito integrado que contiene un microcontrolador especializado en el
tratamiento de las aplicaciones derivadas del procesamiento digital de las señales
analógicas.

MICROCONTROLADOR DSP

Set de instrucciones multiciclo Set de instrucciones monociclo

Multiplicación multiciclo Multiplicación monociclo

8 o 16 bits 16 o 32 bits

RAM incorporada limitada RAM incorporada de gran tamaño

Punteros a datos restringidos Gran número de punteros a datos

Velocidad y algoritmos restringidos Gran velocidad y algoritmos complejos

4
eman ta zabal zazu

1.- INTRODUCCION

RECURSOS ESPECIFICOS DE LOS DSP


Existen una serie de recursos hardware comunes a la práctica totalidad de DSP
existentes en el mercado:
1.- Arquitectura Harvard
La necesidad de leer varios datos a la vez de cara a acelerar la implementación de los
algoritmos exige el acceso múltiple a memoria.
Las memorias de datos e instrucciones son independientes y cada una cuenta con sus
propios buses, lo que permite el acceso en paralelo a ambas.

BUS DE INSTR. BUS DE DATOS


MEMORIA MEMORIA
DE CPU DE
PROGRAMA DIRECCION DIRECCION DATOS

5
eman ta zabal zazu

1.- INTRODUCCION

RECURSOS ESPECIFICOS DE LOS DSP


2.- Multiplicadores Hardware rápidos
Este es un recurso imprescindible en los DSP ya que la mayoría de los algoritmos más
frecuentes empleados para el tratamiento digital de la señal están basados en
multiplicaciones.

3.- Dispositivos auxiliares integrados en el propio chip


Existen una serie de dispositivos como son los conversores A/D y D/A, los
comparadores, los puertos de comunicación, etc. que dado su frecuente empleo en los
procesos de tratamiento de señales, se integran dentro de la DSP.

4.- Instrucciones aritméticas potentes y rápidas

5.- Potentes y diversos modos de direccionamiento y manejo de punteros

6.- Instrucciones potentes de control de flujo de programa

6
eman ta zabal zazu

1.- INTRODUCCION

APLICACIONES
En el siguiente gráfico se muestra la distribución en el mercado de los DSP según sus
campos de aplicación en el año 2004. (Fuente: Forward Concepts)

8,4% Tecnología inalámbrica

Consumo
7,0% Varios

71,4% Tecnología no inalámbrica


5,7%
Computación

4,7% Automoción

2,8%

Como se observa, uno de los campos de mayor incidencia es el de las tecnologías


inalámbricas, ya que los algoritmos de encriptación y desencriptación de la voz, así
como los de modulación y demodulación de la voz propios de la telefonía móvil digital
y de la televisión digital por cable, están soportados por DSP.

7
eman ta zabal zazu

1.- INTRODUCCION

APLICACIONES
La complejidad del algoritmo, será un factor determinante en la elección del modelo
de DSP a emplear, pero también habrá que tener en cuenta la frecuencia de muestreo
requerida, y por consiguiente, la velocidad de trabajo del DSP.
APLICACIONES ALGORITMO

Audio profesional y aplicaciones industriales Cancelación de ruido


Equipos musicales de audio Ecualización de ruido
Telefonía móvil digital y televisión digital Modulación / Demodulación
PC multimedia y robótica Síntesis del habla
Estaciones multimedia, robótica y telefonía Reconocimiento del habla
Telefonía móvil digital, comunicaciones Codificación/Decodificación de la voz
Telefonía móvil digital, comunicaciones Encriptación/Desencriptación de la voz
Seguridad, multimedia Identificación del hablante
Seguridad, multimedia y robótica Visión artificial
Fotografía y video digital Compresión/Descompresión de imágenes
Multimedia, video, navegación Composición de imágenes

Radar, sonar, audio Estimación espectral


8
eman ta zabal zazu

1.- INTRODUCCION

APLICACIONES
Existen aplicaciones que soportan algoritmos muy complejos y velocidades de
muestreo reducidas (modelado atmosférico, modelado sísmico,…), otras, por el
contrario, requieren velocidades de muestreo muy altas y algoritmos relativamente
sencillos (radio, video, radar,…) y otras aplicaciones requieren velocidades de
muestreo y complejidad de algoritmos intermedias (control industrial, reconocimiento
del habla, módems,…)
GRAN CONSUMO

TV/Audio dígital, cámaras digitales, robots domésticos, sintetizadores digitales,…

INSTRUMENTACION Y CONTROL

Filtros digitales, analizadores de espectros, control de robots, control de motores,…

AUTOMOCION

Control de airbag, chequeos, control de velocidad de crucero, suspensión activa, inyección,…

AUDIO/VIDEO

Rotación 3D, visión artificial, reconocimiento de patrones, compresión/descompresión,…

TELECOMUNICACIONES

Cancelación de eco, multiplexación de canales, encriptación, videoconferencia, móviles,…


9
eman ta zabal zazu

1.- INTRODUCCION

ALTERNATIVAS A LOS DSP


• Circuitos electrónicos analógicos
• Procesadores digitales de propósito general mejorados
• Hardware a medida

EL FUTURO
• Procesadores de propósito general mejorados
Programación en alto nivel. 1mm2/MOP , 50mW/MOP, 100MIPS÷500MIPS.

• DSP de propósito general


Programación en ensamblador. 0.1mm2/MOP , 3mW/MOP

• DSP para aplicaciones específicas


Programación en microcódigo. 0.02mm2/MOP , 0.5mW/MOP, hasta 1000MIPS

• ASIC a medida
No programables. 0.001mm2/MOP , 0.02mW/MOP, más de 1000MIPS

10
eman ta zabal zazu

2.- ALGORITMOS TIPICOS PARA DSP: DISEÑO DE FILTROS

En múltiples aplicaciones existe una primera etapa encargada de la conversión de la


señal analógica a digital.
A continuación, el DSP se encarga del procesamiento matemático apropiado para la
finalidad de cada aplicación.
Y finalmente existe una tercera etapa que vuelve a transformar la señal digital, ya
procesada por el DSP, en analógica.

SEÑAL ANALOGICA SEÑAL ANALOGICA


DE ENTRADA DE SALIDA
(CON RUIDO) (SIN RUIDO)
CAD DSP CDA

El CAD toma muestras de la señal analógica x(t) cada cierto tiempo T obteniéndose de
esta forma muestras x(nT) que se codifican con n bits.

xa(t) x(n) xq(n)


MUESTREO CUANTIFICACION CODIFICACION
SEÑAL SEÑAL
ANALOGICA DIGITAL

11
eman ta zabal zazu

2.- ALGORITMOS TIPICOS PARA DSP: DISEÑO DE FILTROS

Según la operación que deba realizar el DSP sobre la señal digitalizada, se emplean
diversos algoritmos.
El filtrado es una operación clásica, por ejemplo, en los sistemas de sonido de alta
fidelidad, en los que cada uno de los altavoces responde sólo a un determinado rango
de frecuencias.

FILTRO GRAVES

PASA-BAJO
CD

SELECTOR FILTRO MEDIOS


DVD AMPLIFICADOR
DE CANAL PASA-BANDA

RADIO
FILTRO AGUDOS

PASA-ALTO

12
eman ta zabal zazu

2.- ALGORITMOS TIPICOS PARA DSP: DISEÑO DE FILTROS

Inicialmente los filtros se realizaron aprovechando las diferentes impedancias que


presentaban ante las variaciones de frecuencia los elemento R-L-C. (FILTROS
PASIVOS)
Debido al tamaño y los problemas que conllevaban las bobinas, se pasó a
implementar los filtros mediante amplificadores operacionales. (FILTROS
ACTIVOS).
También este tipo de filtros presentaba algunos problemas (falta de repetibilidad,
sensibilidad a los parámetros ambientales, dificultad para realizar
modificaciones,…) los cuales propiciaron la aparición de los procesadores digitales
como elemento fundamental de los filtros digitales.
Los DSP pueden soportar los algoritmos correspondientes a dos tipos de filtros
digitales:
– FIR: Filtros de respuesta finita al impulso
– IIR: Filtros de respuesta infinita al impulso

13
eman ta zabal zazu

2.- ALGORITMOS TIPICOS PARA DSP: DISEÑO DE FILTROS

FILTROS FIR
Estos filtros se caracterizan por presentar una respuesta al impulso con un
número finito de coeficientes.
Su ecuación en diferencias y su función de transferencia vienen dadas por:
k M −1
y n = ∑ bk ⋅ x (n − k ) H (z ) = ∑ bk ⋅ z −k

0 k=0

Existen diferentes formas de implementar un filtro FIR siendo una de ellas la


denominada forma directa:
x(n) x(n-1) x(n-2) x(n-(M-1))
Z-1 Z-1 Z-1

h(0) h(1) h(2) h(M-1)

+ + +

El algoritmo es un conjunto de productos que se van acumulando al sumarse.


Hay que muestrear la señal analógica de entrada, digitalizarla y registrar las
muestras que se obtienen del CAD.
14
eman ta zabal zazu

2.- ALGORITMOS TIPICOS PARA DSP: DISEÑO DE FILTROS

FILTROS IIR
Estos filtros se caracterizan por presentar una respuesta al impulso con un
número infinito de coeficientes.
Su ecuación en diferencias y su función de transferencia vienen dadas por:

N M ∑ bk ⋅ z −k

y n = − ∑ ak ⋅ y (n − k ) + ∑ bk ⋅ x (n − k ) H (z ) = k=0
N
k =1 k =0
1 + ∑ ak ⋅ z − k
k =1

Existen diferentes formas de implementar un filtro IIR incluyendo estructuras en


forma directa, estructuras en forma de cascada, estructuras en celosía y
estructuras en celosía escalonada.

15
eman ta zabal zazu

3.- RECURSOS ESPECÍFICOS EN LOS DSP

Los DSP, dado que están dedicados a resolver complejos algoritmos de


tratamiento de señales, tienen como primer requerimiento una elevada potencia
de procesamiento, que se traduce en un alto valor de MIPS.
Para poder conseguir elevadas frecuencias de muestreo, en la arquitectura de los
DSP se ha fomentado el paralelismo y la posibilidad de atender a varias
instrucciones al mismo tiempo mediante la segmentación (pipe-line).
Disponen instrucciones potentes, rápidas y flexibles para resolver las
operaciones matemáticas más comunes (p.e. la instrucción MAC que multiplica,
suma y almacena en un único ciclo máquina).
La lectura y almacenamiento de muestras digitales a gran velocidad, exige
memorias rápidas y de acceso múltiple para poder realizar en un solo ciclo
operaciones potentes.
Se dispone de modos de direccionamiento especiales para poder manejar los
operandos de memoria.
Se incluyen también instrucciones altamente eficientes para el control de flujo
del programa.

16
eman ta zabal zazu

3.- RECURSOS ESPECÍFICOS EN LOS DSP

PARALELISMO DEL PROCESADOR


Muchos de los algoritmos empleados en los DSP requieren de accesos múltiples a
memoria por lo que basándose en la arquitectura Harvard (espacios separados
para memoria de datos y para memoria de direcciones) la mayoría de los DSP
incorporan modificaciones para maximizar el paralelismo.
Así por ejemplo, los DSP TMS320C54x de Texas Instruments presentan la
siguiente arquitectura:
Un bus de instrucciones
BUS PB
DE
INSTRUCCIONES PAB
Consta del bus PB de 16 líneas para las
instrucciones y del bus PAB, también de
CB 16 líneas, para las direcciones de las
BUS
DE instrucciones a las que accede.
DATOS
SISTEMA
CAB
DE
BUS DB
DE BUSES Tres buses de datos
DATOS DAB
De 16 líneas cada uno (CB, DB y EB) que
EB
BUS transportan los datos y otros tres (CAB,
DE
DATOS
DAB y EAB) que llevan las direcciones de
EAB
los datos a acceder.
17
eman ta zabal zazu

3.- RECURSOS ESPECÍFICOS EN LOS DSP

SEGMENTACION O PIPELINE
El cauce o flujo del procesador se divide en varias etapas independientes que
pueden operar con instrucciones diferentes.
Por ejemplo, en los TMS320C54x de Texas Instruments, el flujo del procesador se
encuentra dividido en seis etapas:

PREBUSQUEDA
La dirección de la siguiente instrucción a
T ejecutar se carga en PAB
PREBUSQUEDA
BUSQUEDA

CAUCE DEL PROCESADOR


BUSQUEDA Se carga la instrucción a través de PB
T
DECODIFICACION
T DECODIFICACION Se decodifica el código de instrucción
ACCESO A OPERANDOS
ACCESO Las direcciones de los datos a leer se cargan en
T
OPERANDOS los buses de direcciones CAB y DAB.
LECTURA
T LECTURA
Se cargan los datos direccionados a través de
CB y DB.
T EJECUCION
EJECUCION
Se ejecuta la instrucción y el resultado que se
encuentra en EB se escribe en EAB. 18
eman ta zabal zazu

3.- RECURSOS ESPECÍFICOS EN LOS DSP

POTENCIACION DEL CAMINO DE DATOS


Se hace referencia al camino de datos como la unidad del procesador en la que se
manipulan los datos para efectuar la operación que conlleva cada instrucción.
Uno de los recursos más importantes del camino de datos es la ALU.
Los DSP disponen también de un multiplicador – sumador hardware, el MAC.

Por ejemplo, en el DSP


TMS320C542, el camino de
datos está formado por el
bloque MAC, la ALU, un
registro avanzado de
desplazamiento, dos
acumuladores (ACC A y ACC B)
y la unidad de
direccionamiento compuesta
por varios registros capaces de
soportar el direccionamiento
indirecto.

19
eman ta zabal zazu

3.- RECURSOS ESPECÍFICOS EN LOS DSP

MEMORIAS DE ACCESO MULTIPLE


Muchos DSP disponen de varios tipos de memoria, como por ejemplo una ROM no
volátil (puede ser FLASH) para contener código y constantes, otra tipo SRAM de
acceso único por ciclo máquina y otra tipo DRAM que permite dos accesos por
ciclo, permitiendo así hasta cuatro accesos a memoria por ciclo máquina.
MODOS DE DIRECCIONAMIENTO ESPECIALES
Para poder trabajar en tiempo real con señales analógicas que se tienen que
digitalizar, es preciso contar con una gran velocidad de lectura escritura en
memoria para poder aplicar los algoritmos sin que éstos provoquen retrasos.
Muchas DSP cuentan con buffers FIFO con dos punteros, uno de lectura y otro de
escritura.
Para acelerar el proceso de comprobación de
cuando se ha llegado al final de un buffer, los
DSP suelen disponer de un modo de
direccionamiento denominado direccionamiento
circular o direccionamiento modular.
Algunos DSP disponen también del
direccionamiento denominado bit reverse,
especialmente indicado para el cálculo de la
transformada rápida de Fourier (FFT).
20
eman ta zabal zazu

3.- RECURSOS ESPECÍFICOS EN LOS DSP

INSTRUCCIONES ESPECIFICAS DE CONTROL DE BUCLES


Muchos algoritmos necesitan de la realización de pequeños bucles repetitivos
normalmente precedidos por una comparación.
Para mejorar la velocidad de ejecución de estos bucles, muchos DSP llevan
incorporado un hardware específico que implementa ciertas instrucciones de
control.
JUEGO DE INSTRUCCIONES ORIENTADO
La mayoría de los DSP disponen de un repertorio de instrucciones especialmente
orientadas a solucionar de forma rápida los algoritmos más usuales para los que
ha sido diseñado el DSP (multiplicación, movimiento de bloques de memoria,
lectura y escritura de tablas,…)
PERIFERICOS E INTERFACES INTEGRADOS
Es fundamental para un DSP el disponer de facilidad de comunicación con
sistemas externos así como disponer de convertidores A/D y D/A.
Así, la mayoría de los DSP suelen llevar integrados temporizadores, puertos de
comunicación, canales DMA, puerta de interface con un procesador host,
generados de impulsos, conversores A/D y D/A, etc.

21
eman ta zabal zazu

4.- ELECCION DEL DSP

En el mercado existen cada vez más tipos de DSP con diferentes características
por lo que será muy importante la correcta elección del DSP más apropiado para
cada aplicación.
A la hora de seleccionar el DSP más apropiado será necesario tener en cuenta
aspectos como:
• Modo de funcionamiento
• Tamaño
• Facilidad de uso (programación, interconexión, depuración,…)
• Periféricos
• Memoria
• Consumo
• Encapsulado
• Coste
• …
En muchos productos orientados a fabricación de grandes series, será el coste el
factor determinante, a pesar incluso de que sea menos flexible o más difícil de
programar.

22

Вам также может понравиться