1introduccion_rtsp

Upload: rodolfoygaby-pina-mendoza

Post on 25-Feb-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/25/2019 1Introduccion_RTSP

    1/15

    1ProcesamientoDigitaldeSealesenTiempoReal

    TIEMPO REAL

    La definicin de tiempo real depende directamente del tipo de aplicacin.

    Por ejemplo, en una aplicacin de audio se requiere una frecuencia de muestreo de40 KHz y asumimos que son necesarias 100 instrucciones en serie para completarlas acciones de la aplicacin.

    Se usa un microprocesador de DSP con un tiempo de ciclo de 30 ns, entonces entres microsegundos (30 ns x 100) se completa el clculo requerido.

    La tasa de muestreo de la seal de entrada es de 25 ms, esto es, al procesador lellega una muestra cada 25 ms.

    Por lo tanto, la aplicacin estar trabajando en tiempo real mientras el tiempo deespera (o tiempo activo) entre muestras sea mayor que o igual a cero.

    tiempodemuestras=1/40KHz=25microsegundos

    tiempodeespera

    tiempodecmputo

    instrucciones

    3

    microsegundos

    muestran muestran+1

    100

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    2/15

    2ProcesamientoDigitaldeSealesenTiempoReal

    PROCESAMIENTO DIGITAL DE SEALES EN TIEMPO REAL (PDSTR)REAL-TIME DIGITAL SIGNAL PROCESSING (RTDSP)Conceptos tomados del texto: Ackenhusen John G., Real-time signal processing, PrenticeHall, 1999.

    Aplicaciones de Procesamiento Digital de Seales

    Buscan extraer informacin til de seales las cuales estn representadas por secuenciasde nmeros (o muestras).

    La bsqueda de informacin se hace mediante algoritmos ejecutndose en hardware digital.

    En una aplicacin de Procesamiento de Seales en Tiempo Real (PSTR o RTSP),generalmente las muestras de la seal arriban a la entrada del sistema digital de acuerdo aun intervalo de tiempo, hasta que un conjunto de muestras, un FRAME (o segmento), ha

    arribado para iniciar su procesamiento.

    Realizar el procesamiento del frame requiere de un cierto tiempo computacional.

    El PSTR termina el procesamiento de la salida asociada al frame en un tiempo que noexcede la duracin del frame.

    Para lograr lo anterior, en ocasiones el sistema de PSTR tendr que realizar algunasacciones que lo permitan, como modificaciones al hardware o modificaciones al algoritmo oa ambos.

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    3/15

    3ProcesamientoDigitaldeSealesenTiempoReal

    1. DEFINICIN DE TIEMPO REAL

    Tenemos una seal discreta en el tiempo representada por la secuencia de nmeros [x(n)], -< n< .

    Tx

    Figura 1. Una secuencia discreta.

    La secuencia [x(n)] proviene de una seal continua muestreada en incrementos uniformesde tiempo Tx. Entonces, la muestra ndex(n)sucede en t = nTx.

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    4/15

    4ProcesamientoDigitaldeSealesenTiempoReal

    Podemos definir una coleccin de Isealesdiscretas en el tiempo: , 0 1. Unaaplicacin de DSP transforma el conjunto de seales en un segundo conjunto deseales , 0 1.

    Figura 2. Mapeo del conjunto de sealesxi(n) al conjunto de seales yk(m).

    Los subndices iy kpueden ser diferentes, esto es, diferente nmero de entradas ysalidas.

    El tiempo en la seal de entrada puede ser diferente al tiempo en la seal desalida. Sin embargo ambos son constantes durante los intervalos de anlisis.

    El sistema de DSP est realizando una transformacin sobre el conjunto de sealespara obtener las seales de sa dli a :

    . (1)

    DSP

    x0(n) y

    x1(n)

    xI-1(n)

    0(m

    y1(m

    yK-1(m

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    5/15

    5ProcesamientoDigitaldeSealesenTiempoReal

    El caso de un rango limitado de contribuyendo a cada muestra y el rango avanza ensu deslizamiento con , 1.

    T(xn, n=0,1,,L-1) T(xn, n=L,1,,2L-1) T(xn, n=2L,1,,3L-1)

    n

    Tc Ty

    x(n)

    y(m) 1 2 3

    Figura 3. Pro samiento por frames, una muestra de salida depende e as de entrada.ce d Lmuestr

    1 depende del conjunto de muestras de entrada . , , , Las muestras de entrada se extienden del tiempo 0a 1. Un frame de

    longitud .

    En cualquier computadora, la transformacin utilizando muestras de requiere unintervalo de tiempo de computacin , despus de la llegada de la ltima muestra delframe1.

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    6/15

    6ProcesamientoDigitaldeSealesenTiempoReal

    Para un procesamiento por frames donde una muestra de salida depende de L muestras deentrada, Ty = LTx, la seal de entrada se divide en frames.

    Tenemos varios casos que involucran comparar el Tccontra el tiempo de muestreo Tx:

    Si Tc< LTx; Ly Tcson fijos, el sistema estar ejecutando su algoritmo de maneracontinua por un periodo de tiempo infinito sin problema.

    Si Tc> LTx; el sistema no puede estar ejecutndose continuamente. Funciona en unmodo conocido como pulsado pulsed donde la entrada se detiene antes que elretardo de la salida aumente mucho.

    Si Tc= LTx; Umbral, es la lnea de separacin entre tiempo real y no tiempo real. Los

    sistemas que tienen TcLTx, operan en tiempo real, y los sistemas que operan en Tc> LTx, no operan en tiempo real.

    Conclusin. La condicin de Procesamiento en Tiempo Real depende de treselementos:

    1. Periodo de la muestra de entrada,,2. La complejidad de la transformacin, ,3. La velocidad de la(s) computadora(s) que calcu lan , medido como .

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    7/15

    7ProcesamientoDigitaldeSealesenTiempoReal

    2. NIVELES ESTRUCT ES DE PROCESAMIENTOURAL

    La salida del sistema , es en base a SEGMENTOS (FRAMES) transformados de muestras :

    , 0,1, 1; 0,1, , 1 , 1, , 1 1.

    ; (2)

    Los sistemas de procesamiento de seales pueden clasificarse en base a COMO y

    CUANDO ocurre el cmputo de las muestras que producen relativo al tiempo dellegada de las muestras .

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    8/15

    8ProcesamientoDigitaldeSealesenTiempoReal

    PROCESAMIEN O E FLUJO (STREAM PROCESSING)T DA la llegada de , todo el cmputo que requiere el uso de esta muestra se termina yse descarta antes de que llegue la muestra 1. A este esquema de completartodos los clculos con una muestra de entrada, antes de que llegue la siguiente muestra se

    conoce como Procesamiento de Flujo. Despus del procesamiento del flujo de de talesmuestras, el clculo de se termina y sale del sistema.

    PROCESAMIENTO DE BLOQUES (BLOCK PROCESSING)

    Cada muestra de entrada se almacena en memoria antes de que ocurra cualquierprocesamiento en ella y despus de que arribaron muestras, se procesan para producir lamuestra de salida . A este esquema se le conoce como Procesamiento de Bloques.

    El procesamiento de flujo y de bloques descritos son los extremos en el espectro de

    procesamiento de seales.

    PROCESAMIENTO VECTORIAL (VECTOR PROCESSING)

    Esta tcnica puede operar en modo Flujo o en modo Bloque, tiene varias seales deentrada y/o salida, las cuales se calculan al mismo tiempo (>1 y/o >1).

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    9/15

    9ProcesamientoDigitaldeSealesenTiempoReal

    2.1 DETALLES DEL PROCESAMIENTO DE FLUJO

    Al arribo de cada muestra se llevan a cabo un conjunto de clculos idnticoscon cada unade ellas y terminan los clculos antes de que arribe la muestra siguiente (Figura 4).

    Figura 4. Procesamiento de flujo.

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    10/15

    10ProcesamientoDigitaldeSealesenTiempoReal

    Ejemplo: La ecuacin general de diferencias para describir filtros digitales. .

    ==

    +=M

    k

    k

    N

    k

    k knxbknyany01

    )()()( (3)

    En la Figura 5 se presenta la representacin general de la ecuacin (3). Al arribo de cadamuestra de entrada los valores en la estructura se actualizan y se genera una salida.

    Figura 5. Filtro digital IIR (Infinite Impulse Response).

    Se necesita memoria () para valores de entrada pasados y valores de salida.

    Es posible presentar en forma de flujo una operacin que normalmente se representa enecuaciones como una operacin de bloques.

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    11/15

    11ProcesamientoDigitaldeSealesenTiempoReal

    Ejemplo: La suma de cuadrados de una seal en un segmento de Nmuestras, esto es, laENERGA del segmento de seal,

    =

    =1

    0

    )()(N

    n

    nxnxR (4)

    Para evaluar la expresin en esquema de flujo, hacemos uso de una variable r para unaacumulacin intermedia y la actualizamos cada vez que arriba una muestra:

    Inicializacin: r= 0, (5)

    For n=0,1,...,N-1: r= r+x(n)x(n), (6)

    Terminacin: R= r. (7)

    En muchas aplicaciones el acumulador (registro donde se almacena r) se multiplexa en eltiempo con varios otros procesos diferentes a la operacin de suma de cuadrados yentonces habr un overhead(costo adicional)al tener que salvar a, y leer de memoria loscontenidos de rcuando toman y dejan al acumulador los otros procesos.

    Ventajas: Todos los resultados se mantienen siempre actualizados. El retardo entre una muestra de entrada y una de salida guarda su mnimo terico. La memoria para entradas y salidas se mantiene en el mnimo terico del algoritmo. Por

    ejemplo, la memoria requerida para la ecuacin (3) es solamente la necesaria para las

    Mmuestrasxde entrada y las Nmuestras yde salida.

    Desventaja: El procesador debe ser lo suficientemente rpido para calcular todo antes de que llegue

    la siguiente muestra. El mover datos a y de memoria hace esto ms difcil. En (6) semuestra que para cada muestra de entrada, rdebe traerse de memoria y almacenarsede nuevo despus de la suma dex(n)x(n), esto implica un overhead adicional.

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    12/15

    12ProcesamientoDigitaldeSealesenTiempoReal

    2.2 DETALLES DEL PROCESAMIENTO DE BLOQUES

    El procesamiento es sobre un grupo almacenado de muestras. Como todos los datos estndisponibles simultneamente, el procesamiento puede acceder las muestras de maneraaleatoria en lugar de restringirse al acceso secuencial.

    En la Figura 6 se muestra un ejemplo de cmo es la secuencia de procesamiento parabloques de Nmuestras.

    Figura 6. Procesamiento en bloques de N muestras.

    En la Figura 6 se muestra la existencia de concurrencia de dos procesos, uno dealmacenamiento de los datos de entrada y uno de cmputo de los datos en el bloque paragenerar las muestras de salida.

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    13/15

    13ProcesamientoDigitaldeSealesenTiempoReal

    El traslape de bloques de datos de entrada genera un esquema ms complicado. Cadamuestra est en varios bloques y contribuye a salidas adyacentes. En la Figura 7 semuestra un traslape de bloque, as cada muestra contribuye en la generacin de dossalidas. Note que estn activas al mismo tiempo dos operaciones de entrada yalmacenamiento, una para el bloque y otra para el bloque 1 y dos operaciones de

    procesamiento de clculo.

    Figura 7. Procesamiento de bloques con traslape.

    Las tcnicas de procesamiento de bloques se pueden usar cuando Ty>>Tx, esto es, paraalgoritmos cuya razn de muestreo de salida es menor que la de entrada.

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    14/15

    14ProcesamientoDigitaldeSealesenTiempoReal

    Ejemplo: Suma de cuadrados de un segmento. Modificando el problema descrito en lasecuaciones 4 a 7:

    =

    =1

    0

    )()(N

    n

    nxnxR (4)

    Inicializacin: r= 0, (8)

    Ejecute una vez: r= r+ , (9)

    =

    1N

    0n

    x(n)x(n)

    Terminacin: R= r. (10)

    La variable r estara en un registro acumulador de acceso rpido a lo largo de todo elproceso. As se elimina el overheadde leer y escribir rde y a memoria para cada muestraque llega.

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

  • 7/25/2019 1Introduccion_RTSP

    15/15

    Dr.JavierVegaPineda InstitutoTecnolgicodeChihuahua

    15ProcesamientoDigitaldeSealesenTiempoReal

    Existen clculos que estn ms orientados al procesamiento en bloques, por ejemplo elclculo de la Medianade los datos en un segmento. La mediana de un segmento se calcula,ordenando Lmuestrasx(n) en magnitud ascendente formamosX1,X2,...,XL. La mediana es:

    /, para L impar,

    / //2 , para L par,y

    El ordenamiento es ms fcil si estn presentes todas las muestras, que si se ajustancuando va llegando muestra por muestra.

    Tambin es posible la conversin de un esquema en flujo a uno de bloques. Es posibleagregando memoria para todas las muestras del bloque y agregando un tiempo de retardode al menos un segmento de duracin usado para acumular las muestras.