Introducción aDSP Parte 1 - sase.com.ar · Introducción aDSP Parte 1 Ing. LucioJ. Martinez...

Post on 20-Aug-2020

1 views 0 download

Transcript of Introducción aDSP Parte 1 - sase.com.ar · Introducción aDSP Parte 1 Ing. LucioJ. Martinez...

Introducción aIntroducción a DSP Parte 1DSP Parte 1

Ing. LucioIng. Lucio J. Martinez GarbinoJ. Martinez Garbino

Page 1

luciojmg@cae.cnea.gov.arluciojmg@cae.cnea.gov.ar

Sistema Analógico

Filtro Analógico-El sistema queda definido por su topología (circuito) y losvalores de los componentes físicos (R, L, C, Amp-Op, etc.)

2

Sistema DigitalElementos básicos de un sistema de procesamiento digital

-Filtro Anti-Alias

-Conversor Analógico-Digital (ADC)

-Procesador de Señales (DSP)

-Conversor Digital-Analógico

3

-Conversor Digital-Analógico

-Filtro de Reconstrucción

Procesamiento Digital Vs Analógico

La diferencia fundamental entre un sistema deprocesamiento analógico y un sistema digital, radica en queen un sistema analógico el comportamiento del mismoqueda definido completamente por la topología de uncircuito y los valores de los componentes, mientras que enun sistema digital, el comportamiento quedafundamentalmente definido por un ALGORITMO y losparámetros del mismo almacenados en memoria.

4

parámetros del mismo almacenados en memoria.

Ventajas del Procesamiento DigitalVs. Analogico

- Flexibilidad. Fácilmente modificable y actualizable.

- Fácilmente reproducible. No depende de la tolerancia de loscomponentes.

5

- Confiabilidad. No envejece ni sufre desvíos por causasambientales.

- Complejidad. Facilita la implementación de sistemascomplejos en un solo chip.

Cadena de Procesamiento Digital Tipica

6

Acondicionamiento y adquisición de señal

7

Muestreo de señales continuas

8

El problema de AliasCondición de Nyquist

FsBWFs .2≥

BWFs .2≥

9

FsBWFs .2≥

Cuantizacion de Amplitud

Conversión Analógico a Digital

-Cuantización en amplitud (nº de bits, Vref)

-Discretización del tiempo (Ts=1/Fs)

10

Procesador Digital de Señales

11

Procesador Digital de Señales

Un procesador digital de señal es un dispositivo concapacidad de procesamiento en línea, o en tiempo real, deinformación que presenta, a la vez, características demicrocontrolador y microprocesador.

Posee una CPU de gran potencia de cálculo preparada para eltratamiento digital de señales en tiempo real y para larealización del mayor número de operaciones aritméticas en

12

realización del mayor número de operaciones aritméticas enel menor tiempo posible.

Por tanto, su circuitería interna ha sido optimizada para laimplementación de funciones tales como el filtrado, lacorrelación, el análisis espectral, etc., de una señal digital deentrada al sistema.

Que podemos hacer con un DSP ?

- Prácticamente cualquier sistema lineal y no lineal

- Filtros Digitales IIR – FIR

- Sistemas Adaptativos (algoritmos tipo LMS)

13

- Moduladores y demoduladores

- Algoritmos matematicamente intensivos (FFT-DCT-WT)

Implementacion de un sistema LTI en Tiempo Continuo

-Un sistema LTI en tiempo continuo esta definido por surespuesta al impulso h(t)

-La respuesta del mismo se puedehallar mediante una ecuaciondiferencial y/o su integral

14

∫+∞

∞−−= τττ dthxthtx )().()(*)(

diferencial y/o su integralde convolucion

)()(.)(

txtyadt

tdy =+

Implementacion de un sistema LTI en tiempo discreto

-Un sistema LTI en tiempo discreto queda definido por surespuesta al impulso h[n]- La respuesta del sistema se puede hallar mediante suecuacion en diferencias

15

- Cuando todos los coeficientes Ap (p=1...N) son nulos(FIR) las ecuaciones anteriores se transforman en laconvolucion en tiempo discreto

Convolucion Discreta(Filtro FIR)

- Ejemplo de convolucion discreta

- Filtro FIR Direct Form 1

16

- Filtro FIR Direct Form 1

Procesamiento En tiempo Real

- La definicion de Tiempo real es fuertemente dependientede la aplicacion (se debe trabajar mas rapido que laevolucion del sistema)

- El tiempo de algoritmo (Ta) debe ser menor que el tiempode muestreo (Ts=1/Fs)

- El tiempo de algoritmo nos impone un limite a la maxima

17

- El tiempo de algoritmo nos impone un limite a la maximafrecuencia que el sistema puede trabajar

- Podemos aumentar el Ta, mediante el procesamiento enbloques (a expensas de mayor latencia en el sistema)

Filtro Fir Muestra a Muestra

Void ADC_ISR(void){ // rutina de interrupcion del ADC// interrumpe cada Ts = 1/Fs

int ADC_New;

ADC_New = func_ReadADC(); // leo muestra nueva del ADC

func_UpdateDelayLine( VecSamples , ADC_New); // Actualizo linea de demora

int Mult;int Acum = 0; // inicializo acumulador en cero

18

int Acum = 0; // inicializo acumulador en cerofor(i=0 ; i< N ; i++){

Mult = VecSamples[i] * VecFilter[i] // calculo producto parcialAcum = Acum + Mult ; // acumulo producto parcial

}

func_WriteDAC( Acum ); // saco por el DAC el nuevo valor de salida del filtro

}

Catacteristicas Deseables de un DSP

- Operaciones aritmeticas optimizadas y combinaciones deestas (1 ciclo de reloj)

- Modos de direccionamiento especiales :- Buffers circulares- Bit reversal- Zero overhead loops

- Set de intrucciones :

19

- Set de intrucciones :- MAC con registro acumulador extendido (bits de guarda)- shift aritmetico- artimetica con saturacion- modos de redondeo- normalizacion y escalamiento- extension de signo

- Intrucciones especiales para:- Video- Audio- control

La operacion mas importante en DSP

20

MAC

- MAC- Bits de guarda-Casting Acum -> Reg

21

Aritmetica con Saturacion y redondeo-RedondeoRound to nearest (biased-mode)Convergent (unbiased-mode)truncation

- Saturacion

22

Modos de Direccionamiento

- Direccionamiento circular

23

Buffers Circulares

Reg Base: indica la direccion de la base del buffer

Reg Largo: indica el largo del buffer

Reg Indice: posicion actual en el buffer

24

Reg Indice: posicion actual en el buffer

Reg Incremento: incremento del puntero indice

Modos de Direccionamiento

- Bit Reversal (FFT)

25

Hardware Loops (ZOL)

-Zero Overhead Loop

Reg Inicio: indica la direccion de la primera instrucciondel Loop

Reg Fin: indica la direccion de la ultima instruccion del

26

Reg Fin: indica la direccion de la ultima instruccion delLoop

Reg Repetición: Cantidad de iteraciones del Loop

PreguntasPreguntas

27

PreguntasPreguntas

Gracias por su atenciónGracias por su atención

luciojmg@cae.cnea.gov.arluciojmg@cae.cnea.gov.ar

28