ES2233603T3 - Dispositivo de recepcion de paquetes de datos. - Google Patents

Dispositivo de recepcion de paquetes de datos.

Info

Publication number
ES2233603T3
ES2233603T3 ES01903848T ES01903848T ES2233603T3 ES 2233603 T3 ES2233603 T3 ES 2233603T3 ES 01903848 T ES01903848 T ES 01903848T ES 01903848 T ES01903848 T ES 01903848T ES 2233603 T3 ES2233603 T3 ES 2233603T3
Authority
ES
Spain
Prior art keywords
samples
transfer
signal
packages
package
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
ES01903848T
Other languages
English (en)
Inventor
Maurice Lemoine
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
EADS Telecom SAS
Original Assignee
EADS Telecom SAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by EADS Telecom SAS filed Critical EADS Telecom SAS
Application granted granted Critical
Publication of ES2233603T3 publication Critical patent/ES2233603T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/062Synchronisation of signals having the same nominal but fluctuating bit rates, e.g. using buffers
    • H04J3/0632Synchronisation of packets and cells, e.g. transmission of voice via a packet network, circuit emulation service [CES]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6472Internet
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6481Speech, voice
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/64Hybrid switching systems
    • H04L12/6418Hybrid transport
    • H04L2012/6489Buffer Management, Threshold setting, Scheduling, Shaping

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)
  • Seal Device For Vehicle (AREA)
  • Maintenance And Management Of Digital Transmission (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Circuits Of Receivers In General (AREA)

Abstract

Dispositivo de recepción de paquetes de datos, cada uno de los cuales contiene información de codificación de una señal en tiempo real y un encabezamiento que comporta una información de fecha del paquete en relación con el reloj de muestreo de la señal, que comprende: - medios de memorización de muestras (11): - medios de tratamiento de los paquetes (8) para registrar, en los medios de memorización, una fila de espera de muestras de señal obtenidas a partir de los paquetes recibidos de manera asíncrona, estando ordenadas las muestras de la fila de espera conforme a las informaciones de fechado contenidas en los paquetes; - medios de transferencia de muestras (12) para formar, al ritmo de un reloj local, un flujo de muestras síncrono (U¿) que representa la señal en tiempo real, sucesivamente transferidas por bloques desde la fila de espera, caracterizado porque: - medios de regulación (10) para controlar los medios de transferencia, de manera que limitan las variaciones del número de muestras de la fila de espera, insertando o suprimiendo muestras en el flujo síncrono con respecto a los que se han leído en la fila de espera, en función de la evolución del número de muestras registradas por los medios de tratamiento de paquetes en las muestras de memorización en el curso de periodos definidos con respecto a dicho reloj local, siendo el número de muestras insertadas o suprimidas en la fila de espera en el curso de la transferencia de cada bloque sensiblemente más reducido que el número de muestras obtenidas a partir de un paquete.

Description

Dispositivo de recepción de paquetes de datos.
La presente invención se refiere a las transmisiones en forma de paquetes de señales en tiempo real.
Las señales en cuestión pueden ser en especial señales fónicas. La transmisión numérica de una señal fónica requiere un muestreo de una señal a nivel de un dispositivo de toma de sonido o, más generalmente, a nivel de un emisor. En una aplicación en tiempo real, por ejemplo, para telefonía, el reloj del receptor está sincronizado con el del emisor, con la finalidad de evitar los problemas de desviación temporal. Estas consideraciones se aplican igualmente a otros tipos de señales en tiempo real, por ejemplo, señales de vídeo.
Se han desarrollado protocolos que permiten transmitir señales en tiempo real en redes de programas. En el caso de las redes que funcionan según el protocolo IP ("Internet Protocol"), se trata en especial del protocolo RTP ("Real Time Protocol"), que funciona con el protocolo UDP ("User Datagram Protocol") en capa de transporte.
Cada paquete RTP contiene un encabezamiento que comporta un número de secuencia del paquete y una información de fechado del paquete en relación con el reloj de muestreo de la señal. Esta información facilita una fecha de una parte de señal codificada en la parte útil del paquete, expresada en número de ciclos del reloj de muestreo de la señal, o de otro reloj sincronizado con éste. El número de secuencia permite reconstituir la secuencia de los paquetes emitidos si no han sido recibidos en orden y detectar paquetes faltantes. Si falta la recepción de uno o varios paquetes consecutivos, la información de fechado permite determinar el número de muestras de señal que faltan y, por lo tanto, el número de muestras de substitución a insertar en el flujo de señal en tiempo real reconstituido. La información de datación o fecha puede ser utilizada para sincronizar el receptor.
La sincronización requiere habitualmente una regulación de la frecuencia del reloj local del receptor, lo que requiere circuitos que sería deseable poder evitar, particularmente cuando el dispositivo que recibe los paquetes los retransmite de manera sincronizada hacia otras unidades.
La Patente US-A-5 623 483 describe un receptor de paquetes que lleva una señal en tiempo real, que puede eliminar o añadir periódicamente un paquete con la finalidad de compensar desviaciones del reloj con respecto al emisor. Una eliminación o inserción de este tipo de un paquete provoca una degradación perceptible de la señal en tiempo real.
La solicitud de Patente EP-A-0 743 773 describe un decodificador de palabras que recibe tramos de señal codificada por un método predictivo (CELP, "code excited linear prédiction") con la finalidad de reducir el caudal de transmisión entre el codificador y el decodificador. En función del número de tramos acumulados en un tampón de recepción, el decodificador puede modificar el tratamiento de la trama corriente con la finalidad de compensar desviaciones de reloj con respecto al codificador. Esta modificación puede consistir en suprimir o añadir subtramas CELP o incluso muestras de la señal decodificada. Manipular de este modo la señal en función del número de tramas llegadas en el tampón de entrada hace el decodificador muy sensible al ritmo de llegada de las tramas. Si éste es irregular, lo que ocurre frecuentemente con redes de datagramas del tipo IP o análogo, el decodificador genera numerosas correcciones no pertinentes puesto que éstas no son debidas a una desviación de frecuencia de reloj.
La presente invención tiene como objetivo dar respuesta eficaz a las necesidades indicadas.
La presente invención propone, por lo tanto, un dispositivo de recepción de paquetes de datos conteniendo cada uno de ellos informaciones de codificación de una señal en tiempo real y un encabezamiento que presenta una información de fechas del paquete en relación con un reloj de muestreado de la señal, que comprende:
-
medios de memorización de las muestras;
-
medios de tratamiento de los paquetes para registrar, en los medios de memorización, una fila de espera de muestras de señal obtenidas a partir de paquetes recibidos de manera asíncrona, estando ordenadas las muestras de la fila de espera de acuerdo con las informaciones de fecha contenidas en los paquetes;
-
medios de transferencia de muestra para formar, según el ritmo de un reloj local, un flujo de muestras síncrono que representa la señal en tiempo real, transferidos sucesivamente por bloques desde la fila de espera;
-
medios de regulación para controlar los medios de transferencia de manera que se limiten las variaciones del número de muestras de la fila de espera, insertando o suprimiendo muestras en el flujo síncrono con referencia a las que se han leído en la fila de espera, en función de la evolución del número de muestras registradas por los medios de tratamiento de paquetes en los medios de memorización en el curso de los períodos detenidos de manera relativa a dicho reloj local, siendo el número de muestras insertadas o suprimidas en la fila de espera en el curso de transferencia de cada bloque sensiblemente más reducido que el número de muestras obtenidas a partir de un paquete.
Con las frecuencias de muestreado habituales, la supresión o añadidura de una muestra de señal de audio es casi inaudible. El dispositivo según la invención lo aprovecha para regular el flujo de muestras restituido de manera síncrona con el reloj local, sin tener que depender de la frecuencia de este reloj. Esta regulación se efectúa observando el llenado de los medios de memorización de muestras, con la finalidad de suprimir algunas muestras cuando se registra un exceso de muestras como respuesta a la recepción de los paquetes, y para añadir cuando por el contrario los medios de memorización de muestras tienen tendencia a vaciarse. La observación del número de muestras registradas se efectúa después del tratamiento de los paquetes recibidos, lo que evita tener que modificar este tratamiento. Esto permite, además, realizar la regulación de manera más fina, en función de un número de muestras y no en función del número de paquetes recibidos, el cual fluctúa en razón de la recepción asíncrona de los paquetes.
Las muestras son añadidas, preferentemente, o suprimidas de manera aislada. No obstante, podrían ser añadidas o suprimidas por grupos pequeños, a condición de que las dimensiones de estos grupos sea muy reducida con respecto al número de muestras resultante del tratamiento de un paquete, con la finalidad de que la manipulación continúe siendo poco perceptible.
Otras particularidades y ventajas de la presente invención aparecerán en la descripción adjunta de los ejemplos de realización no limitativos, haciendo referencia a los dibujos adjuntos, en los cuales:
- la figura 1 es un esquema sinóptico de un sistema de transmisión que presenta un dispositivo de recepción según la invención;
- las figuras 2 y 3 son organigramas de procedimientos aplicados por el dispositivo de recepción de la figura 1, respectivamente, en la recepción de un paquete y en la transferencia de un bloque de muestras del flujo de salida;
- la figura 4 es un esquema sinóptico de otro sistema de transmisión que presenta un dispositivo de recepción según la invención.
La figura 1 muestra un dispositivo emisor (1) y un dispositivo receptor (2) que comunican con intermedio de una red (3) de tipo IP.
En el ejemplo considerado, el emisor (1) presenta un codificador de audio (4), que trata una señal de palabra muestreada a una frecuencia F_{e}, por ejemplo, de 8 kHz. La frecuencia de muestreado utilizada por el codificador (4) es generada por división de frecuencia a partir de un oscilador de cuarzo (5) cuya frecuencia nominal es, por ejemplo, de 2,048 MHz.
En el ejemplo de la figura 1, el codificador de palabra (4) es un codificador G.711 normalizado por la Unión Internacional de Telecomunicaciones (UIT). Este codificador facilita muestras en tiempo real codificadas en MIC (modulación por impulsos codificados, o PCM, ley A o ley \mu), estando codificada cada muestra sobre un octeto (caudal de 64 kbit/s).
El flujo de salida \phi del codificador (4) es suministrado a un interfaz (6) del emisor (1), que inserta las muestras codificadas en los paquetes RTP emitidos en datagramas IP sobre la red (3) con destino del receptor (2).
De manera clásica, cada datagrama emitido presenta un encabezamiento IP, seguido de un encabezamiento UDP y un encabezamiento RTP. El encabezamiento IP indica en especial la dirección IP del emisor (1) y la del receptor (2). El encabezamiento UDP indica un número de puerta lógica UDP del emisor (1), afectado al codificador (4) y un número de puerta UDP correspondiente del receptor (2). El encabezamiento RTP contiene un número de secuencia NP del paquete, codificado en 16 bits, y una información TS de fechado del paquete. La información de fechado TS, codificada en 32 bits corresponde al rango de la primera muestra del paquete en el flujo de salida \phi del codificador (4), módulo 2^{32}. Después de los encabezamientos, la parte útil del paquete RTP comprende N muestras de la señal MIC codificada, correspondiendo a Nx125 \mus de palabra.
En la realización considerada anteriormente a título ilustrativo, el número N es constante, por ejemplo N = 40, y el emisor (1) no pone en práctica un mecanismo de supresión de silencio (que consiste en no transmitir, o transmitir a un caudal más bajo, cuando no se ha detectado actividad vocal en la señal de palabra tratada por el codificador -4-). En este caso particular, los datos TS y NP son redundantes puesto que se encuentran en una relación fija N. Como consecuencia, es equivalente para el receptor (2) fundarse sobre la información de fechado TS o sobre el número de secuencia NP.
El receptor (2) comprende igualmente un interfaz (8) con la red IP (3) para tratar los datagramas IP recibidos desde el emisor (1) y extraer de los mismos las muestras de señal.
En la arquitectura representada en la figura 1, el interfaz (8) está conectado al bus (9) de un microprocesador (10), al cual están conectados también una memoria RAM (11) y un dispositivo síncrono (12) que recibe un flujo de muestras \phi'.
El dispositivo síncrono (12) puede ser en especial un decodificador G.711 asociado a un dispositivo de restitución del sonido para restituir la palabra en tiempo real al usuario. Igualmente, puede ser un dispositivo de interfaz con un enlace síncrono sobre el cual se remiten las muestras G.711.
El dispositivo síncrono (12) está pilotado por un oscilador de cuarzo (13), cuya frecuencia nominal de oscilación puede ser idéntica a la del oscilador (5) del emisor, con la finalidad de tener en cuenta las muestras de señal a la frecuencia F_{e}. Teniendo en cuenta las tolerancias de los elementos de cuarzo habitualmente utilizados (aproximadamente 30 ppm sobre la frecuencia de oscilación) y de la gama de temperatura a la que pueden estar sometidos, cada frecuencia de oscilación puede presentar un desplazamiento que llega hasta 120 Hz con respecto a la frecuencia nominal de 2,048 MHz. La desviación máxima entre el emisor y el receptor es entonces, aproximadamente, de 240 Hz/2,048 Mhz, lo que representa un desplazamiento de una muestra de señal aproximadamente cada 8.500 muestras. Si se deja acumular este desplazamiento se producirán perturbaciones en la señal restituida por el receptor. Se prevén, por lo tanto, medidas compensadoras.
La memoria RAM sirve para contener una fila de espera de paquetes recibidos de manera asíncrona en el interfaz (8) antes de ser transferidas de manera síncrona hacia el dispositivo (12). La memoria (11) presenta L direcciones numeradas de 0 a L-1, pudiendo contener cada una un octeto. A título de ejemplo, L = 8.000, lo que representa una capacidad de un segundo de palabra.
El interfaz (8) y el dispositivo (12) son unidades periféricas con respecto al procesador (10) que las controla para que efectúen ciclos de acceso directo en memoria (DMA, "Direct Memory Access") para escribir y leer, respectivamente, muestras en la memoria (11).
El procesador (10) controla el interfaz (8) para que efectúe ciclos de escritura DMA en la memoria (11), comprendiendo cada ciclo, por ejemplo, la escritura de L octetos a partir del lugar 0 hasta el lugar L-1. Estos ciclos DMA se suceden de manera tal que las escrituras en la memoria (11) se efectúan de manera circular.
El interfaz (8) aplica un procedimiento para constituir la fila de espera, es decir, poner los paquetes en el orden de los números de secuencia, y escribir sus muestras en la memoria de los paquetes (11). Si se reciben paquetes demasiado tarde, el interfaz (8) los suprime. Además, los paquetes que no se han recibido en tiempo útil son sustituidos por paquetes de sustitución (por ejemplo, repetición del paquete anterior o paquete de silencio).
La figura 2 muestra un ejemplo de un procedimiento de este tipo que se puede ejecutar por el interfaz (8) con recepción de un paquete RTP que lleva el número de secuencia NP. En este ejemplo, el interfaz (8) presenta una memoria tampón que tiene Q lugares capaces de memorizar cada uno de ellos los octetos de datos de un paquete, es decir, la capacidad de NxQ octetos. En las indicaciones de la figura 2:
-
NS indica el número de secuencia del siguiente paquete que se debe escribir en la memoria (11) (NS = 0 en el inicio);
-
occ(i) es un bit que indica para 0 \leq i < Q, si el paquete de número de secuencia NS+i ha llegado (occ(i) = 1) o no (en la iniciación, occ(i) = 0 para 0 \leq i < Q);
-
la Lista (i) contiene, para 0 \leq i < Q, un entero comprendido entre 0 y Q-1 que designa el emplazamiento de la memoria tampón en la que están registradas las muestras del paquete NS +i si occ(i) = 1 (en el inicio, Lista (i) = i para 0 \leq i < Q);
-
\alpha es un entero igual al número de paquetes recibidos en espera de transferencia hacia la memoria (11) (en el inicio, \alpha = 0);
-
TDATA indica los N octetos del último paquete transferido en la memoria (11), almacenados en un registro para formar los eventuales paquetes de sustitución (en el inicio, se pueden tomar octetos nulos en TDATA, lo que corresponde a un paquete de silencio);
-
q designa un emplazamiento disponible en la memoria tampón para escribir los N octetos del siguiente paquete recibido (en la iniciación, q = 0).
En la recepción del paquete NP, los N octetos de datos del paquete son escritos en el emplazamiento q de la memoria tampón, y la variable \delta se toma igual a la separación NP-NS entre el número de secuencia del paquete recibido y el número de secuencia del paquete siguiente a transferir (etapa -20- de la figura 2).
Si \delta < 0 (prueba -21-), el paquete es recibido demasiado tarde para ser transferido en la memoria (11), de manera que se suprime. El procedimiento de la figura 2 se termina entonces volviendo a espera de recepción del paquete siguiente, que será escrito por encima del paquete suprimido en el emplazamiento
q.
El paquete puede ser tenido en cuenta cuando \delta \geq 0 en la prueba (21). Entonces el entero \alpha es incrementado en una unidad en la etapa (22).
Si \delta < Q (prueba -23-), las variables occ(\delta) y Lista (\delta) reciben, respectivamente, los valores 1 y q en la etapa (24) para identificar el emplazamiento del paquete NS+\delta. Después de la etapa (24), la variable \alpha es comparada a Q en la etapa (25). Si \alpha < Q, la memoria tampón no está saturada, de manera que ningún paquete es transferido hacia la memoria (11). En este caso, el procedimiento pasa a las etapas (26) a (28) para cambiar el valor del indicador q. Estas etapas (26) a (28), que terminan el procedimiento del procedimiento 2, consisten simplemente en elegir para el indicador q una Lista (i) tal que 0 \leq i < Q y occ(i) = 0.
Si \delta \geq Q en la prueba (23), o si \alpha \geq Q en la prueba (25), el interfaz (8) transfiere uno o varios paquetes hacia la memoria (11). En el ejemplo de la figura 2, esto se efectúa en un bucle (30-37) inicializado por i = 0 en la etapa (30).
Si el paquete de rango NP-\delta+i ha sido bien recibido (occ(i)=1 en la prueba -31-), los N octetos de este paquete son leídos en el emplazamiento de Lista(i), cargados en el registro TDATA en la etapa (32), y después son transferidos en modalidad DMA hacia la memoria (11) en la etapa (33). Además, el bit occ(i) es llevado a 0, y el entero \alpha es disminuido en una unidad.
Si el paquete de rango NP-\delta+i no ha sido recibido (occ(i)=0 en la prueba -31-) se transfiere un paquete de sustitución correspondiente a los N octetos del registro TDATA hacia la memoria (11) en la etapa (34), y el entero \alpha es disminuido en una unidad, sin descender por debajo del valor base \alpha = 1. Los N octetos TDATA son puestos a cero a continuación en la etapa (35). Con este método, el paquete de sustitución del rango NS corresponde a la repetición del paquete NS-1 si éste ha sido correctamente recibido, y a un paquete de silencio en caso contrario.
Después de la etapa (33) o (35), el número de secuencia NS es incrementado en una unidad en la etapa (36), y el índice i es igualmente incrementado, módulo Q. A la salida de la etapa (36), si NP > NS+Q-1 (prueba -37-), el procedimiento vuelve a la etapa (31) para transferir otro paquete hacia la memoria (11). En caso contrario, se efectúa un desfasado en las tablas de Lista y occ para su puesta al día, en un bucle (38-41). En la inicialización (38) de este bucle, j = 0 y el índice i conserva el valor que tenía a la salida de la última iteración del bucle (30-37). En la etapa (39), los valores Lista (i) y occ(i) son transferidos en Lista(j) y occ(j). Si j < Q-1 (prueba -40-), la etapa siguiente (41) consiste en incrementar j unidades, así como i módulo Q. Cuando j = Q-1, en la prueba (40), el desfasado de las tablas Lista y occ se ha terminado, y \delta es comparado a Q en la etapa (42). Si \delta < Q, el tratamiento consecutivo a la recepción del paquete NP se termina por la puesta al día del indicador q en las etapas (26) a (28) precitadas. Si \delta \geq Q, esta puesta al día del indicador q está precedida en la etapa (43) por la escritura de los valores respectivos 1 y q en las variables occ(Q-1) y Lista (Q-1).
La lectura de las muestras de señal en la memoria (11), que forma el flujo de señal \Phi' se efectúa igualmente en los ciclos de transferencia DMA, efectuados por el dispositivo síncrono (12) bajo el control del procesador (10). En el curso de cada ciclo, el dispositivo (12) transfiere un bloque de M octetos leídos en la memoria (11) a su cadencia de muestras deducida de la frecuencia de oscilación del cuarzo (13). El contador de dirección de lectura es incrementado en una unidad (módulo L) para cada muestra leída, de manera que la memoria (11) es leída igualmente con un direccionado circular. Al final de la transferencia DMA de cada bloque, el dispositivo (12) dirige al procesador (10) una señal de interrupción. Como respuesta a esta señal, el procesador (10) inicializa el ciclo siguiente de transferencia DMA y facilita las órdenes correspondientes al dispositivo (12).
El procedimiento aplicado por el procesador (10) para controlar estos ciclos de transferencia DMA puede ser conforme al mostrado en la figura 3. En las notaciones de la figura 3:
-
NS_{0} designa el número de paquetes que, una vez que han sido escritos en la memoria (11), provocan el inicio de la transferencia de muestras hacia el dispositivo síncrono (12);
-
P es un indicador que designa la dirección de inicio de la transferencia DMA efectuada por el dispositivo síncrono (12) bajo el control del procesador (10);
-
M designa el número de octetos de un bloque de muestras transferido en el curso de un ciclo DMA por el dispositivo (12);
-
t designa el número de octetos que han sido registrados en la memoria (11) hasta el momento en el que el procesador (10) inicia un ciclo de transferencia DMA hacia el dispositivo síncrono (12);
-
\Delta es un entero que mide la desviación a recuperar entre los números de muestras escritos y leídos en la memoria (11): cuando \Delta > 0, hay un exceso de muestras en la memoria (11) con respecto a las transferidas en el flujo \Phi', y cuando \Delta < 0, hay más bien un déficit de muestras registradas en la memoria (11).
El procedimiento representado en la figura 3 es puesto en marcha cuando se han descrito NS_{0} paquetes en la memoria (11) (prueba -50-) lo que el procesador (10) puede verificar consultando el valor corriente de la variable NS del procedimiento según la figura 2, o con referencia a la dirección de escritura corriente en la memoria (11) por el interfaz (8). Las variables P y \Delta son inicializadas entonces a 0 en la etapa (51).
En la etapa (52), el procesador (10) controla un ciclo de lectura en modalidad DMA por el dispositivo síncrono (12), para que sea transferido en el flujo \Phi' un bloque de M octetos a partir de la dirección P módulo L. En la etapa siguiente (53), el indicador de dirección P es aumentado en M unidades, módulo L y la variable t recibe el valor N.NS, correspondiendo a la dirección en la memoria (11) del siguiente octeto que se ha descrito por el interfaz (8). Esta etapa (53) termina el tratamiento efectuado por el procesador (10) con respecto al bloque corriente del flujo \Phi'.
El procesador (10) espera a continuación la recepción de la señal de interrupción por la cual el dispositivo síncrono (12) indica que ha terminado la transferencia del bloque corriente (etapa -54-).
A la recepción de esta señal de interrupción, el procesador (10) determina en la etapa (56) el número de octetos que el interfaz (8) ha escrito en la memoria (11) durante la lectura del último bloque de M muestras (comprendiendo en ellas los paquetes de sustitución). Este número \Delta es igual a N.NS-t, con el nuevo valor corriente del número de secuencia NS (o con la nueva dirección de acceso DMA por el interfaz (8), igual a N.NS). En la etapa (57), la desviación \Delta es actualizada añadiéndole la cantidad d-M que represente el aumento (o la reducción si d-M<0) de la fila de espera durante la transferencia del bloque anterior.
Si el nuevo valor de \Delta es inferior a un umbral negativo o nulo -\Deltamax (prueba -58-), el indicador de inicio de transferencia DMA desde la memoria (11) es reducido en Z octetos, es decir, que el número P es disminuido en Z unidades módulo L, y la desviación \Delta es aumentada en Z unidades en la etapa (59). Si el nuevo valor de \Delta es superior al umbral +\Deltamax (prueba -60-), el indicador de inicio de transferencia DMA desde la memoria (11) es avanzado en Z unidades, es decir, que el número P es aumentado en Z unidades módulo L, y la separación \Delta es disminuida en Z unidades en la etapa (61). Cuando -\Deltamax\leq\Delta\leq\Deltamax, o después de la etapa (59) ó (61), el procesador (10) realiza la etapa (52) antes citada para controlar la transferencia DMA de un bloque de M octetos a partir de la dirección P módulo L. El valor del umbral \Deltamax puede ser nulo.
Si el reloj de emisión y el reloj de recepción son síncronos, y si los paquetes de RTP han sido recibidos con un intervalo temporal inferior a la dimensión de la zona tampón del interfaz (8), la separación \Delta sigue siendo siempre nula, y la formación del flujo síncrono \Phi' resulta de las transferencias DMA sucesivas de bloques de M octetos a partir de direcciones regularmente separadas.
Si existe una desviación entre los relojes de emisión y de recepción, habrá ciclos de transferencia DMA en la salida de los cuales \Delta<-\Deltamax ó \Delta>\Deltamax.
Cuando \Delta<-\Deltamax (no se han recibido suficientes paquetes con respecto a la cadencia de flujo \Phi'), las últimas Z muestras son repetidas al principio del bloque siguiente, lo que será difícilmente audible si Z es un número pequeño.
Cuando \Delta>+\Deltamax, la memoria (11) tiende a llenarse con mayor rapidez de lo que se vacía, y el desplazamiento del indicador P en la etapa (61) provoca la supresión de Z muestras en el flujo \Phi' para compensar esta desviación.
En la realización preferente, se toma Z = 1.
Se puede tomar M = L, consistiendo entonces la transferencia DMA para el dispositivo (12) en leer la totalidad de la memoria (11). Se debe observar que el número M no es necesariamente constante. Se podría tomar, por ejemplo, M = L + Z cuando \Delta<-\Deltamax y M = L-Z cuando \Delta>\Deltamax. En este último caso, las Z muestras duplicadas o suprimidas se encuentran al inicio del próximo bloque transferido si el indicador P es gestionado, tal como indica en la figura 3, o al final de este bloque si se toma sistemáticamente P = 0.
La realización anterior se basa en paquetes de dimensión constante (N octetos), sin mecanismo de supresión de silencio. En este caso, la información de fechado TS contenida en cada paquete RTP es redundante con el número de secuencias NP (puesto que TS = N.NP), lo que explica que sólo NP haya sido tomado en cuenta en el ejemplo descrito anteriormente. Si la dimensión de los paquetes es variable y/o si un mecanismo de supresión de silencio ha sido utilizado por el emisor, las direcciones de escritura en la memoria (11) por el interfaz (8), y por lo tanto, las diferencias d medidas para regular el flujo \Phi' son determinadas simplemente sobre la base de las informaciones TS obtenidas en los paquetes recibidos.
En la variante de realización representada en la figura 4, la señal numérica contenida en los paquetes RTP no consiste directamente en muestras de señal en tiempo real, sino que representa tramas de señal codificadas, generadas por un codificador. Estas tramas pueden ser producidas por un codificador ("vocodeur") normalizado por la UIT, G.729 en el ejemplo representado (o también G.723, etc.). El codificador (4') del emisor (1) dispone de muestras de señal en tiempo real, numerado de manera síncrona con un reloj de muestra obtenido por división de la frecuencia de oscilación del cuarzo (5), y las transforma en tramas codificadas síncronas con este reloj. La numeración de la señal puede haber sido efectuada a nivel del emisor con un reloj salido del oscilador (5) (caso en el que el emisor (1) es un terminal de telefonía sobre IP, por ejemplo) o puede haber sido efectuada por un convertidor alejado, estando sincronizados los relojes de muestra en el convertidor y del codificador (4') (caso en el que el emisor (1) forma un interfaz entre una red IP y un enlace numérico síncrono, por ejemplo).
A nivel del dispositivo receptor (2), el interfaz IP (8) transfiere la parte útil de los paquetes RTP de la misma manera que anteriormente en una memoria (11A) que contiene tramas codificadas. En función del llenado de esta memoria (11A), el procesador (10) controla la decodificación de las tramas memorizadas para reconstituir muestras de la señal en tiempo real transferidas en otra memoria (11B). Esta decodificación es efectuada de manera asíncrona, por el propio procesador (10) o por un decodificador G.729 periférico (15) conectado al bus (9). El dispositivo síncrono (12) puede leer entonces las puestas de señal en la memoria (11B) de la misma manera que anteriormente. Más bien que ser simplemente recopiadas, las tramas de sustitución pueden ser determinadas, de manera conocida en sí misma, por una interpoblación de los parámetros del codificador efectuada por el decodificador.
El proceso de regulación anteriormente descrito es puramente lógico, lo que evita tener un circuito especial para adecuarse a la frecuencia del oscilador (13) del dispositivo síncrono (12). La regulación del flujo \Phi', que evita las desviaciones temporales con respecto al flujo \Phi formado a nivel del emisor (1), resulta de una medición de la cantidad de señal recibida (comprendiendo los paquetes de sustitución) en el curso de períodos definidos con respecto al reloj local generado por el oscilador (13). Cada uno de estos periodos corresponde a la transferencia DMA de un bloque hacia el dispositivo (12).
Como variante, cada uno de dichos períodos podría corresponder a la transferencia DMA de un número dado K de bloques, lo que permite hacer la media de las fluctuaciones del número d de muestras registradas por el interfaz (8) en la memoria (11) en el curso de los períodos definidos con respecto al reloj local, debidos al carácter irregular de la recepción de los datagramas IP (en el ejemplo anterior, K = 1).

Claims (7)

1. Dispositivo de recepción de paquetes de datos, cada uno de los cuales contiene información de codificación de una señal en tiempo real y un encabezamiento que comporta una información de fecha del paquete en relación con el reloj de muestreo de la señal, que comprende:
-
medios de memorización de
\hbox{muestras (11):}
-
medios de tratamiento de los paquetes (8) para registrar, en los medios de memorización, una fila de espera de muestras de señal obtenidas a partir de los paquetes recibidos de manera asíncrona, estando ordenadas las muestras de la fila de espera conforme a las informaciones de fechado contenidas en los paquetes;
-
medios de transferencia de muestras (12) para formar, al ritmo de un reloj local, un flujo de muestras síncrono (\Phi') que representa la señal en tiempo real, sucesivamente transferidas por bloques desde la fila de espera,
caracterizado porque:
-
medios de regulación (10) para controlar los medios de transferencia, de manera que limitan las variaciones del número de muestras de la fila de espera, insertando o suprimiendo muestras en el flujo síncrono con respecto a los que se han leído en la fila de espera, en función de la evolución del número de muestras registradas por los medios de tratamiento de paquetes en las muestras de memorización en el curso de periodos definidos con respecto a dicho reloj local, siendo el número de muestras insertadas o suprimidas en la fila de espera en el curso de la transferencia de cada bloque sensiblemente más reducido que el número de muestras obtenidas a partir de un paquete.
2. Dispositivo, según la reivindicación 1, en el que los medios de regulación comprenden un procesador (10), y en el que los medios de tratamiento de paquetes (8) y los medios de transferencia (12) están dispuestos para acceder a los medios de memorización (11) en modalidad de acceso directo en la memoria, bajo el control de dicho procesador.
3. Dispositivo, según la reivindicación 2, en el que dichos períodos definidos con respecto al reloj local corresponden a la lectura, por los medios de transferencia (12), de un número determinado de bloques de muestras en los medios de memorización (11), en forma de acceso directo en la memoria bajo el control del procesador (10).
4. Dispositivo, según la reivindicación 2 ó 3, en el que la inserción o la supresión de muestras en la fila de espera por el procesador (10) representa un desfase de dirección de inicio de lectura en modalidad de acceso directo en memoria por los medios de transferencia (12).
5. Dispositivo, según la reivindicación 2 ó 3, en el que la inserción o la supresión de muestras en la fila de espera por el procesador (10) comporta la regulación del número de muestras leídas en forma de acceso directo en la memoria por los medios de transferencia (12).
6. Dispositivo, según cualquiera de las reivindicaciones anteriores, en el que el número de muestras insertadas o suprimidas en la fila de espera por los medios de regulación (10) en el curso de la transferencia de cada bloque es de 0 ó 1.
7. Dispositivo, según cualquiera de las reivindicaciones anteriores, en el que el encabezamiento de cada paquete comporta un número de secuencia del paquete, y en el que los medios de tratamiento de paquetes (8) están dispuestos para analizar los números de secuencia contenidos en los paquetes recibidos con la finalidad de ordenar las muestras de la fila de espera, en base a los números de secuencia, insertar las muestras de sustitución en la fila de espera para compensar paquetes no recibidos en tiempo útil y suprimir paquetes recibidos de forma tardía.
ES01903848T 2000-01-03 2001-01-02 Dispositivo de recepcion de paquetes de datos. Expired - Lifetime ES2233603T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0000016A FR2803466B1 (fr) 2000-01-03 2000-01-03 Dispositif de reception de paquets
FR0000016 2000-01-03

Publications (1)

Publication Number Publication Date
ES2233603T3 true ES2233603T3 (es) 2005-06-16

Family

ID=8845579

Family Applications (1)

Application Number Title Priority Date Filing Date
ES01903848T Expired - Lifetime ES2233603T3 (es) 2000-01-03 2001-01-02 Dispositivo de recepcion de paquetes de datos.

Country Status (7)

Country Link
EP (1) EP1245099B1 (es)
AT (1) ATE284106T1 (es)
AU (1) AU3182101A (es)
DE (1) DE60107533T2 (es)
ES (1) ES2233603T3 (es)
FR (1) FR2803466B1 (es)
WO (1) WO2001050692A1 (es)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10201310A1 (de) * 2002-01-15 2003-07-24 Siemens Ag Verfahren und System zur Datenumsetzung
EP2129170B1 (en) 2008-05-30 2012-02-29 Oticon A/S Low latency, high quality link for audio transmission

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5623483A (en) * 1995-05-11 1997-04-22 Lucent Technologies Inc. Synchronization system for networked multimedia streams
US5699481A (en) * 1995-05-18 1997-12-16 Rockwell International Corporation Timing recovery scheme for packet speech in multiplexing environment of voice with data applications

Also Published As

Publication number Publication date
ATE284106T1 (de) 2004-12-15
EP1245099A1 (fr) 2002-10-02
FR2803466A1 (fr) 2001-07-06
FR2803466B1 (fr) 2003-07-04
DE60107533D1 (de) 2005-01-05
EP1245099B1 (fr) 2004-12-01
AU3182101A (en) 2001-07-16
DE60107533T2 (de) 2005-12-15
WO2001050692A1 (fr) 2001-07-12

Similar Documents

Publication Publication Date Title
ES2254134T3 (es) Metodo y aparato para la comunicacion de datos isocronos.
ES2226226T3 (es) Disposicion de sincronizacion para una señal de video comprimida.
JPS61281648A (ja) 多重アクセス動作を有するデイジタル通信におけるランダム・アクセス動作用のコ−ダ・パケツト化器
TW463506B (en) A method for storing digital audio and/or video programs
CN2927563Y (zh) 运动图像分发系统和运动图像分发服务器
KR100373942B1 (ko) 신호처리시스템
HU229538B1 (en) A method and device for encoding, transferring and decoding a non-pcm bitstream a digital versatile disc device and a multi-channel reproduction apparatus
JP5065254B2 (ja) 順方向エラー訂正コードをデコードするためのシステム及び方法
DE60331415D1 (de) Zeitscheibenzeichengabe für das digitale Breitband-Rundsenden
EP0564627A1 (en) METHOD FOR PROCESSING DATA TRANSMISSION FRAME OF VARIABLE LENGTH WITH A CHANNEL CONTROL AND FOR WRITING THE FRAME IN A CYCLIC Buffer.
JP2007221326A (ja) 伝送レート調整装置および伝送レート調整方法
JPH0343813B2 (es)
US4472803A (en) Digital transmitting system
ES2233603T3 (es) Dispositivo de recepcion de paquetes de datos.
RU2007108072A (ru) Способ сохранения сообщений в памяти сообщений и соответствующая память сообщений
JP2930339B2 (ja) データ伝送装置及び該装置用の送信及び受信機部
JPS61198988A (ja) 画像符号化伝送装置
CA2224808A1 (en) Method of re-sending incorrectly transmitted data
TWI246058B (en) Program recording/reproducing method and aparatus
GB1567796A (en) Regeneration of asynchronous data characters
CN107613320B (zh) 一种传输流复用的插包控制方法及系统
JP2001274762A (ja) 多重化装置
JP4815780B2 (ja) オーバーサンプリングシステム、デコードlsi、およびオーバーサンプリング方法
ES2235910T3 (es) Procedimiento para la gestion de la descodificacion y de la restitucion de una señal sonora en un sistema de transmision asincrona.
JPH052834A (ja) マルチメデイア情報蓄積方法及び装置