ES2254134T3 - Metodo y aparato para la comunicacion de datos isocronos. - Google Patents

Metodo y aparato para la comunicacion de datos isocronos.

Info

Publication number
ES2254134T3
ES2254134T3 ES00902626T ES00902626T ES2254134T3 ES 2254134 T3 ES2254134 T3 ES 2254134T3 ES 00902626 T ES00902626 T ES 00902626T ES 00902626 T ES00902626 T ES 00902626T ES 2254134 T3 ES2254134 T3 ES 2254134T3
Authority
ES
Spain
Prior art keywords
time
transmission
data
packet
clock
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
ES00902626T
Other languages
English (en)
Inventor
Matthew P. J. Baker
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.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
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
Priority claimed from GBGB9903144.5A external-priority patent/GB9903144D0/en
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Application granted granted Critical
Publication of ES2254134T3 publication Critical patent/ES2254134T3/es
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40058Isochronous transmission
    • 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
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • H04J3/0661Clock or time synchronisation among packet nodes using timestamps
    • H04J3/0664Clock or time synchronisation among packet nodes using timestamps unidirectional timestamps
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40052High-speed IEEE 1394 serial bus
    • H04L12/40071Packet processing; Packet format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4305Synchronising client clock from received content stream, e.g. locking decoder clock with encoder clock, extraction of the PCR packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network
    • H04N21/43632Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network involving a wired protocol, e.g. IEEE 1394
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q11/00Selecting arrangements for multiplex systems
    • H04Q11/04Selecting arrangements for multiplex systems for time-division multiplexing
    • H04Q11/0428Integrated services digital network, i.e. systems for transmission of different types of digitised signals, e.g. speech, data, telecentral, television signals
    • H04Q11/0478Provisions for broadband connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5614User Network Interface
    • H04L2012/5616Terminal equipment, e.g. codecs, synch.
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5646Cell characteristics, e.g. loss, delay, jitter, sequence integrity
    • H04L2012/5649Cell delay or jitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5638Services, e.g. multimedia, GOS, QOS
    • H04L2012/5664Support of Video, e.g. MPEG

Abstract

Método de corrección de errores de temporización cuando se transmiten (6) datos isócronos por una red (1, 2, 3, 4) de comunicaciones basada en paquetes, en el que al menos algunos de los paquetes de datos contienen sellos de tiempo que le indican a un receptor (8) el tiempo en el que deberían procesarse los datos, caracterizado porque el método comprende las etapas de: a) insertar sellos de tiempo de transmisión en paquetes de datos isócronos que se refieren a un tiempo absoluto tal como lo define un reloj (7) de transmisión y que han de transmitirse por una red de transmisión, b) recibir (8) los paquetes de datos y detectar y grabar temporalmente los sellos de tiempo de transmisión en los mismos, c) proporcionar un reloj (9) de receptor que está sincronizado en frecuencia, pero no necesariamente en tiempo absoluto, con el reloj (7) de transmisión, d) almacenar el tiempo absoluto del reloj (9) de receptor cuando se recibe el primer paquete que contiene un sello de tiempo de transmisión, e)sumar (90) un desfase (91) de tiempo dado al tiempo almacenado del reloj de receptor, siendo el desfase mayor o igual que la variación máxima en tiempo entre sucesivos paquetes de datos recibidos, para definir el tiempo de salida del primero de los paquetes de datos recibidos, f) restar (89) el valor del sello de tiempo de transmisión en el primer paquete (87) de datos recibido del sello de tiempo de transmisión en cada paquete (88) de datos recibido posteriormente, y g) sumar (95) la diferencia (89) entre el sello de tiempo de transmisión del presente paquete de datos y el sello de tiempo de transmisión del primer paquete de datos al tiempo de salida del primer paquete de datos para definir el tiempo de salida del presente paquete.

Description

Método y aparato para la comunicación de datos isócronos.
La invención se refiere a un método de corrección de errores de temporización cuando se transmiten datos isócronos a través de una red de comunicación basada en paquetes, en la que al menos algunos de los paquetes de datos contienen sellos de tiempo que le indican a un receptor el momento en el que deberían procesarse los datos, y al aparato para llevar a cabo tal método.
En los sistemas de comunicación digital, es habitual dividir en paquetes la información que hay que enviar desde un dispositivo transmisor a un dispositivo receptor. Tales paquetes pueden retardarse por una longitud de tiempo finita y variable mientras atraviesan el sistema de comunicación.
La transmisión de datos isócronos a través de un sistema de comunicación requiere el mantenimiento de una relación de temporización precisa entre el dispositivo transmisor y el dispositivo receptor a fin de preservar la calidad de los servicios que utilizan el sistema de comunicación. Tales datos isócronos pueden, por ejemplo, transportar servicios de vídeo o de audio. Si el sistema de comunicación no mantiene la relación de temporización entre el dispositivo transmisor y el dispositivo receptor, puede ser incapaz de proporcionar una calidad aceptable de un servicio de audio y/o vídeo en el extremo receptor de la transmisión.
Un ejemplo de una aplicación de este tipo es la transmisión de señales digitales de audio y/o vídeo que se codifican según normas MPEG (Moving Picture Experts Group). El reloj binario del decodificador MPEG en el dispositivo de presentación debe funcionar a la misma velocidad que el reloj binario del dispositivo que codificó originalmente los datos según la norma MPEG. A fin de lograr esto, las normas MPEG requieren que el dispositivo codificador coloque un sello de tiempo, conocido como Referencia del reloj del programa (PCR – Program Clock Reference) o Referencia del reloj del sistema (SCR – System Clock Reference), sobre algunos de los paquetes de datos MPEG. El dispositivo decodificador detecta y lee los valores PCR y SCR y los utiliza para enviar señales a su reloj interno a fin de controlar la velocidad del mismo.
Tal relación de temporización puede mantenerse si el dispositivo transmisor transmite los paquetes de datos a la misma velocidad a la que se requiere que la aplicación en tiempo real en el extremo receptor del sistema de comunicación procese dichos paquetes, y la longitud de tiempo que se retarda cada paquete durante la transmisión a través del sistema de comunicación es la misma para cada paquete.
Sin embargo, en los sistemas de comunicación digital reales, tales como un bus IEEE1394, una red Hiperlan (Red de área local de radio de alto rendimiento), AMT (Asynchronous Transfer Mode -Modo de transferencia asíncrono) o un sistema UMTS (Universal Mobile Telecommunications System– Sistema universal de telecomunicaciones móviles), la longitud de tiempo que se retarda cada paquete puede variar de paquete en paquete. En el caso de una transmisión de datos MPEG codificados, una variación de este tipo en el retardo de transmisión tiene como resultado el suministro de señales de conexión erróneas al reloj interno del decodificador.
Un método que se ha propuesto para superar los efectos de la fluctuación de fase de transmisión es usar una memoria intermedia en el dispositivo receptor, memoria intermedia en la que los paquetes recibidos destinados a la aplicación se almacenan temporalmente. Los paquetes se llevan luego de la memoria intermedia a la parte de la aplicación del dispositivo receptor, o a la siguiente etapa en un sistema de comunicación, a una velocidad determinada por un algoritmo que tiene la cantidad de datos contenidos en la memoria intermedia como una entrada. En ausencia de características adicionales, este enfoque presenta desventajas que pueden incluir el tamaño y, por tanto, el coste de la memoria intermedia requerida y el nivel de precisión de la velocidad de salida de datos de la memoria intermedia.
Análogamente, la patente WO 95/14337, concedida a Codex Corporation, describe un método de suavización adaptativa para aplicaciones de voz en paquetes. El método comprende monitorizar el tiempo que un paquete espera en una memoria intermedia y regular el tiempo en el que se reproducen paquetes de voz futuros. La monitorización implica crear un histograma de tiempos de espera y analizar periódicamente el histograma para regular el tiempo de reproducción. Este enfoque tiene la desventaja de algoritmos de postprocesamiento y un almacenamiento/mantenimiento de datos relativamente complejos.
Otro método propuesto, que asegura resolver el problema de la fluctuación de fase de transmisión, se da a conocer en la patente estadounidense Nº 5.790.543. Esta publicación da a conocer el uso de un reloj adicional en el dispositivo receptor que es independiente del reloj de transmisión, esto es, el reloj del receptor no está sincronizado con el reloj del transmisor. La diferencia entre los sellos de tiempo de paquetes sucesivos, que representa la diferencia en tiempos de llegada esperados de los paquetes sucesivos, se resta de la diferencia entre los valores del reloj independiente adicional en los instantes en los que llegaron los paquetes. A esta última diferencia se hace referencia entonces como al tiempo real entre llegadas de los paquetes. Se asegura que el resultado de este proceso de resta representa la fluctuación de fase incurrida por los paquetes de datos durante la transmisión a través del sistema de comunicación. Sin embargo, el presente solicitante cree que este procedimiento no tendrá como resultado una corrección precisa de ninguna fluctuación de fase en los datos transmitidos.
Otro método de superación de la fluctuación de fase de transmisión, cuando en cada dispositivo del sistema de comunicación está contenido un reloj distinto, es mantener estos relojes distintos en sincronismo utilizando paquetes trasmitidos a través del sistema de comunicación. Para lograr esto, un dispositivo transmisor puede añadir un sello de tiempo adicional a algunos o todos los paquetes de datos isócronos, el cual representa el valor futuro del reloj distinto en el dispositivo transmisor transcurrido un intervalo predeterminado tras el tiempo en el que el paquete de datos está listo para la transmisión. Tal sello de tiempo puede ser entonces detectado y leído por el dispositivo receptor. El tiempo correcto sin fluctuación de fase en el que el paquete de datos debería entregarse a la aplicación es el tiempo en el que el valor del sello de tiempo en el paquete es igual al valor del reloj sincronizado en el dispositivo receptor. El intervalo predeterminado debe ser tal que el sello de tiempo corresponda a un tiempo no anterior al tiempo actual en el receptor. Este método puede usarse, por ejemplo, cuando se transmiten datos isócronos en un bus IEEE1394 empleando el formato Paquete isócrono común (CIP – Common Isochronous Paquet) definido en la norma IEC1883 e ilustrado en la figura 1. Cada dispositivo en el bus IEEE1394 contiene un reloj de 24,576 MHz que funciona por libre, totalmente independiente, para el que un ciclo dura 40,69 ns. Este periodo se conoce como "tic". Cada dispositivo que es capaz de manejar datos isócronos en el bus IEEE1394 también contiene un Registro de tiempo de ciclo (CTR – Cycle Time Register), cuyo formato se muestra en la figura 2, que contiene una representación en 32 bits del tiempo actual. Este registro es actualizado cada 40,69 ns por el reloj de 24,576 MHz. Además, uno de los dispositivos en el bus IEEE1394 es especificado como el "Maestro de ciclo" por un mecanismo definido en el bus IEEE1394. Para mantener el sincronismo entre los CTR de todos los dispositivos en el bus IEEE1394, el Maestro de ciclo transmite un paquete "Comienzo de ciclo" después de cada 3072 tics de media. El paquete "Comienzo de ciclo" contiene el valor actual del CTR en el Maestro de ciclo. La recepción de un paquete de Comienzo de ciclo por un dispositivo no Maestro de ciclo que contiene un CTR se interpreta como una orden de escribir el valor contenido en el paquete de Comienzo de ciclo en el CTR del dispositivo receptor. Los paquetes de datos isócronos que se transmiten desde un dispositivo transmisor en el bus IEEE1394 en el formato CIP se etiquetan con un sello de tiempo. Este sello de tiempo representa la suma de un desfase fijo y el valor del CTR en el dispositivo transmisor en el momento en el que el paquete es presentado para la transmisión por el codificador u otra fuente de datos isócronos. Cuando el dispositivo receptor recibe un paquete de este tipo, mantiene el paquete en una memoria intermedia hasta que el valor del sello de tiempo del paquete es igual al valor del CTR en el dispositivo receptor. En ese momento, el paquete puede ser procesado por la aplicación en el dispositivo receptor. Resulta evidente que este enfoque depende de que los valores absolutos de los CTR sean iguales en todos los dispositivos capaces de isocronía en el bus IEEE1394 y también de que el valor del desfase fijo, que se añade a los sellos de tiempo, sea más grande que el retardo de transmisión total entre el dispositivo transmisor y el dispositivo receptor. Estas dependencias se convierten en una desventaja importante cuando se conectan juntos varios buses IEEE1394 mediante un puente de comunicación, por ejemplo, según la norma IEEEp1394.1. En este último ejemplo, aunque los CTR en todos los dispositivos capaces de isocronía en un bus IEEE1394 particular están sincronizados tanto en frecuencia, como el valor absoluto según el CTR en el Maestro de ciclo en ese bus particular, no obstante, los valores absolutos de los CTR en buses distintos pueden no ser iguales. Además, puede introducirse un retardo indefinido adicional mientras los paquetes cruzan el puente entre los buses IEEE1394. Por tanto, se hace necesario en el puente entre buses, tal como se define en la norma IEEEp1394.1, detectar los sellos de tiempo CIP en los paquetes de datos isócronos y modificarlos para reflejar tanto la diferencia absoluta entre los valores de CTR en lados opuestos del puente, como el retardo con el que se encuentran los paquetes de datos isócronos al transmitirse a través del puente a fin de que, cuando los paquetes de datos isócronos se reciban en el dispositivo receptor, los sellos de tiempo representen todavía un tiempo en el futuro según el CTR en el dispositivo receptor. Además, el formato CIP normalmente incluye dos sellos de tiempo distintos, los cuales necesitan modificarse ambos de manera similar. Las desventajas de este enfoque incluyen el retardo adicional inherente en el proceso de modificación de los sellos de tiempo en los puentes, el efecto adverso sobre la complejidad y, por tanto, el coste de tales puentes y el hecho de que incumple el modelo OSI reconocido (figura 3) para el funcionamiento según buenas prácticas de los sistemas de comunicaciones según un protocolo de apilamiento que consta de diferentes capas.
Es un objeto de la invención permitir la provisión de un método de corrección de errores de temporización cuando se transmiten datos isócronos por una red de comunicación basada en paquetes, en la que al menos algunos de los paquetes de datos contienen sellos de tiempo que le indican a un receptor el tiempo en el que deberían procesarse los datos, en el que se mitiguen al menos algunas de las desventajas de los métodos de la técnica anterior. Otro objeto de la invención es permitir la provisión de un aparato para llevar a cabo tal método.
La invención proporciona un método de corrección de errores de temporización cuando se transmiten datos isócronos por una red de comunicaciones basada en paquetes, en la que al menos algunos de los paquetes de datos contienen sellos de tiempo que le indican a un receptor el tiempo en el que deberían procesarse los datos, comprendiendo el método las etapas de:
a) insertar sellos de tiempo en paquetes de datos isócronos que se refieren a un tiempo absoluto tal como lo define un reloj de transmisión y que han de transmitirse a través de una red de transmisión,
b) recibir los paquetes de datos y detectar y grabar los sellos de tiempo en los mismos,
c) proporcionar un reloj de receptor que está sincronizado en frecuencia, pero no necesariamente en tiempo absoluto, con el reloj de transmisión,
d) almacenar el tiempo absoluto del reloj de receptor cuando se recibe el primer paquete que contiene un sello de tiempo,
e) sumar un desfase de tiempo dado al tiempo almacenado del reloj de receptor, siendo el desfase mayor o igual que la variación máxima en tiempo entre los sucesivos paquetes de datos recibidos, para definir el tiempo de salida del primero de los paquetes de datos recibidos,
f) restar el valor del sello de tiempo en el primer paquete de datos recibido del sello de tiempo en cada paquete de datos recibido posteriormente, y
g) sumar la diferencia entre el sello de tiempo del presente paquete de datos y el sello de tiempo del primer paquete de datos al tiempo de salida del primer paquete de datos para definir el tiempo de salida del presente paquete.
Por tanto, el método según la invención no depende de los valores absolutos de los sellos de tiempo, sino que, en vez, puede comenzar el procesamiento de paquetes de datos recibidos un tiempo dado tras dado la recepción del primer paquete, y el tiempo de procesamiento de cada paquete subsiguiente está definido por la diferencia entre el sello de tiempo en el paquete inicial y el sello de tiempo en el presente paquete. Al garantizarse que la frecuencia de reloj en el receptor está enganchada a la del reloj en el transmisor y que el tiempo dado es mayor o igual que la variación máxima en el tiempo entre sucesivos paquetes recibidos, puede garantizarse que los tiempos de procesamiento de los paquetes recibidos estén sincronizados con el reloj en el codificador.
Para realizar un método según la invención, un dispositivo receptor se conecta por medio de un sistema de comunicación a un dispositivo transmisor. El dispositivo receptor, que es capaz de recibir y procesar datos isócronos, contiene un reloj que está sincronizado en frecuencia, pero no necesariamente en valor absoluto, con un reloj similar en el dispositivo transmisor, por medio de un sistema de comunicación.
El dispositivo transmisor añade sellos de tiempo a algunos o todos los paquetes de datos en un flujo de datos isócronos para la transmisión, por medio del sistema de comunicación, al dispositivo receptor. Los sellos de tiempo pueden representar o bien el valor del reloj en el dispositivo transmisor, o bien la suma del valor del reloj en el dispositivo transmisor y un desfase constante fijo, que puede ser positivo o negativo. Si se emplea un desfase fijo de este tipo, la presente invención no requiere que el valor del desfase se comunique a un dispositivo receptor.
El dispositivo receptor tiene un medio para detectar los sellos de tiempo y para registrar el valor de los mismos. Cuando el primer paquete de datos de un flujo isócrono es recibido desde el sistema de comunicación por el dispositivo receptor, el dispositivo receptor registra el tiempo, t_{1}, de su reloj interno sincronizado y también el valor, T_{1}, del sello de tiempo en el paquete de datos. Este paquete se coloca entonces en una memoria intermedia durante un tiempo \Delta, donde \Delta se elige para que sea mayor que la fluctuación de fase máxima que es más probable que se produzca en un sistema de comunicación de este tipo. Tras el tiempo \Delta, el paquete se suministra desde la memoria intermedia a la siguiente etapa del dispositivo receptor o sistema de comunicación.
Cuando cada paquete subsiguiente del flujo de datos es recibido desde el sistema de comunicación por el dispositivo receptor, el dispositivo receptor detecta y registra el valor Tn del sello de tiempo del paquete antes de colocar el paquete en la memoria intermedia. Se da salida al paquete enésimo del flujo desde la memoria intermedia en un momento definido por t_{1} + \Delta + (T_{n} – T_{1}).
Por consiguiente, se elimina cualquier fluctuación de fase que pueda haber sido introducida por el sistema de comunicación por medio de relacionar cada sello de tiempo absoluto con el reloj interno del dispositivo receptor, que se sincroniza por medio del sistema de comunicación con un reloj interno en el dispositivo transmisor.
El método de la presente invención resulta particularmente ventajoso para superar la fluctuación de fase en un sistema de comunicación que utiliza sellos de tiempo que están relacionados con el valor absoluto de un reloj, en el que el reloj está sincronizado en frecuencia, pero no necesariamente en valor absoluto, con un reloj en un dispositivo receptor en el sistema de comunicación que emplea señales enviadas por el sistema de comunicación. En particular, el método de la presente invención no requiere conocimiento del retardo máximo que pueden experimentar los paquetes de datos que están transmitiéndose a través del sistema de comunicación. Sin embargo, en común con todos los mecanismos de la técnica anterior, para la corrección de la fluctuación de fase requiere un conocimiento de la diferencia entre los retardos máximo y mínimo experimentados por los paquetes de datos en un flujo particular. Además, el método según la presente invención no requiere ninguna modificación en los sellos de tiempo durante la transmisión de los paquetes de datos, ni al recibirse los paquetes de datos en un dispositivo receptor. El método de la presente invención presenta la ventaja de la simplicidad en el sentido de que sólo requiere que se lleven a cabo una resta y una suma por paquete para todos los paquetes subsiguientes al primer paquete de un flujo a fin de superar cualquier fluctuación de fase y de emitir los paquetes con una temporización sustancialmente correspondiente a la temporización original con la que se pusieron en cola en el dispositivo transmisor los paquetes para la transmisión. Además, al evitar cualquier requisito de modificación de los sellos de tiempo durante el proceso de transmisión, la presente invención permite observar el modelo OSI estratificado para el diseño según buenas prácticas de sistemas de comunicaciones. El método presenta la ventaja de superar con fiabilidad la fluctuación de fase por medio de un reloj ya presente que se sincroniza en frecuencia por medio del sistema de comunicación, y, consiguientemente, puede evitarse la deriva a largo plazo.
La invención proporciona además un aparato para corregir errores de temporización cuando se transmiten datos isócronos a través de una red de comunicación basada en paquetes, en la que al menos algunos de los paquetes de datos contienen sellos de tiempo que le indican a un receptor el tiempo en el que deberían procesarse los datos, comprendiendo el aparato un medio para insertar sellos de tiempo de transmisión en paquetes de datos isócronos que se refieren a un tiempo absoluto, tal como es definido por un reloj de transmisión, y han de transmitirse por una red de transmisión, un medio para recibir los paquetes de datos y detectar y grabar temporalmente los sellos de tiempo de transmisión en los mismos, un reloj de receptor que está sincronizado en frecuencia, pero no necesariamente en tiempo absoluto, con el reloj de transmisión, un medio para almacenar el tiempo absoluto del reloj de receptor cuando se recibe el primer paquete que contiene un sello de tiempo de transmisión, un medio para sumar un desfase de tiempo dado al tiempo almacenado del reloj de receptor, siendo el desfase mayor o igual que la variación máxima en tiempo entre los sucesivos paquetes de datos recibidos, para definir el tiempo de salida del primero de los paquetes de datos recibidos, un medio para restar el valor del sello de tiempo de transmisión en el primer paquete de datos recibido del sello de tiempo de transmisión en cada paquete de datos recibido posteriormente, y un medio para sumar la diferencia entre el sello de tiempo de transmisión del presente paquete de datos y el sello de tiempo de transmisión del primer paquete de datos al tiempo de salida del primer paquete de datos para definir el tiempo de salida del presente paquete.
Tal aparato se construye para llevar a cabo un método según la invención y permite el uso del método en la transmisión de datos desde un dispositivo transmisor hasta un dispositivo receptor de manera isócrona sin requerir que la red de comunicación funcione de forma isócrona.
Las anteriores y otras características y ventajas de la invención resultarán evidentes a partir de la siguiente descripción, a título de ejemplo, de una realización de la invención con referencia a los dibujos adjuntos, en los que:
la figura 1 muestra formatos de paquete definidos en las normas IEEE1394 e IEC61883,
la figura 2 muestra el formato del Registro de tiempo de ciclo,
la figura 3 muestra el modelo ISO estratificado para sistemas de comunicaciones,
la figura 4 muestra en forma esquemática de bloques un sistema de comunicación que incluye dos sistemas de buses IEEE1394 interconectados adecuados para llevar a cabo el método según la invención,
la figura 5 muestra en forma esquemática de bloques una fuente de datos codificados según las normas MPEG para la transmisión por el sistema de comunicación de la figura 4,
la figura 6 muestra en forma esquemática de bloques un dispositivo transmisor para transmitir datos MPEG por el sistema de comunicación de la figura 4,
la figura 7 muestra en forma esquemática de bloques parte de un Maestro de ciclo para el bus IEEE1394, y
la figura 8 muestra en forma esquemática de bloques un dispositivo receptor para recibir los datos codificados según MPEG transmitidos por el sistema de comunicación.
La figura 4 muestra en forma esquemática de bloques una realización del aparato según la presente invención en la que puede conseguirse un método para corregir errores de temporización cuando se transmiten datos isócronos a través de una red de comunicación basada en paquetes. Tal como se muestra en la figura 4, el sistema de comunicación comprende unos primer y segundo buses 1 y 2 IEEE1394 que están acoplados por medio de un puente 3 de transmisión. El reloj de sistema en el bus 1 está sincronizado en frecuencia con el reloj en el bus 2 por medio de una disposición 4 de enganche en frecuencia. Una fuente 5 de datos codificados según MPEG está conectada a un dispositivo 6 transmisor que toma los datos codificados según MPEG y los inserta en paquetes para la transmisión por el bus 1. Un Maestro 7 de ciclo que sincroniza todos los relojes en los dispositivos acoplados al bus 1 al reloj en el Maestro de ciclo está acoplado también al bus 1. Un receptor 8 está acoplado al bus 2 para recibir los paquetes que contienen los datos codificados según MPEG y transmitidos por el dispositivo 6 transmisor. Un Maestro 9 de ciclo adicional está conectado al bus 2 y define los relojes para todos los dispositivos unidos al bus 2, incluyendo el receptor 8 para recibir y procesar los paquetes de datos recibidos. Este Maestro 9 de ciclo está sincronizado en frecuencia a la salida del Maestro 7 de ciclo, pero no en tiempo absoluto. En la presente realización, la fuente 5 de datos suministra señales de vídeo o de audio codificadas según MPEG al dispositivo 6 transmisor, y el dispositivo receptor incluye un decodificador MPEG. No es esencial para la invención que los datos se codifiquen según una norma MPEG o que el dispositivo receptor incluya un decodificador. Por ejemplo, el dispositivo receptor podría simplemente grabar los datos codificados según MPEG u otra norma para la reproducción en un dispositivo adicional que incluya tal decodificador.
La figura 5 muestra una realización de una fuente de señales codificadas según MPEG que puede utilizarse en el sistema de comunicación de la figura 4. Comprende una cámara 50 de vídeo cuya salida se suministra a un codificador 51 MPEG que comprende un procesador 52, un módulo 53 de sellos de tiempo y un generador 54 de reloj. La salida del codificador 51 MPEG puede suministrarse directamente a una salida 56 que está conectada al transmisor 6 o puede emplearse para producir un original digital de una grabación en cinta o en disco que se reproducirá por medio de un reproductor 55 de discos o de cintas. Tal como se ha expuesto anteriormente, se requiere que el codificador 51 MPEG coloque un sello de tiempo conocido como una Referencia de reloj de programa (PCR) o una Referencia de reloj de sistema (SCR) sobre cada paquete de datos MPEG. Este sello de tiempo se detecta en el receptor y se utiliza para garantizar una decodificación isócrona de la señal codificada según MPEG. Estos sellos de tiempo PCR y/o SCR MPEG se insertan en el flujo de datos una duración indefinida antes de cualquier transmisión que emplee el bus IEEE1394.
Tanto el dispositivo 6 transmisor como el dispositivo 8 receptor son dispositivos IEEE1394 capaces de transmisión isócrona y contienen un Registro de tiempos de ciclo (CTR) que se sincroniza en frecuencia por medio de la recepción de un paquete de Comienzo de ciclo, tal como se ha descrito anteriormente, pero no se sincronizan en tiempo absoluto si hay presente algún puente de transmisión en el sistema de comunicación, esto es, si una pluralidad de buses IEEE1394 están conectados entre sí. El CTR en cada dispositivo sigue incrementándose entre la recepción de paquetes de Comienzo de ciclo por medio de un reloj local de 24,576 MHz que funciona sin sincronizar. El dispositivo 6 transmisor procesa los datos codificados según MPEG a una velocidad determinada directa o indirectamente por sellos de tiempo incluidos en la codificación MPEG. El procesamiento por los dispositivos transmisores incluye añadir un sello de tiempo adicional, denominado en lo sucesivo sello de tiempo de transmisión, a cada paquete de datos codificados según MPEG. El sello de tiempo de transmisión es igual al valor del CTR del dispositivo transmisor en el instante en el que el paquete se pone en cola en el dispositivo transmisor para presentarse al sistema de comunicación para la transmisión al dispositivo receptor. La adición de este sello de tiempo de transmisión a cada paquete de datos puede formar parte de la encapsulación del paquete de datos en un paquete del formato CIP que puede estar de acuerdo con la norma IEC61883.
La figura 6 muestra en forma esquemática de bloques un dispositivo transmisor adecuado para llevar a cabo este proceso. Comprende una entrada 60 a la que está conectada la salida de la fuente 5 de datos. El flujo de datos de entrada se pasa a un procesador 61 CIP que encapsula el paquete de datos MPEG en un paquete de datos en formato CIP. Este se pasa a través de un módulo 62 de sellos de tiempo que inserta el sello de tiempo de transmisión en la cabecera del paquete de origen, tal como se ilustra en la figura 1. Estos paquetes se suministran entonces a un procesador IEEE1394 cuya salida se suministra a través de una memoria 64 intermedia a un terminal 69 de salida que está conectado al bus 1. El dispositivo 6 transmisor también recibe paquetes de Comienzo de ciclo del Maestro 7 de ciclo por el bus 1 en la entrada 68. Los paquetes de Comienzo de ciclo se suministran a un Procesador 67 de comienzo de ciclo que controla un Registro 65 de tiempos de ciclo en el dispositivo transmisor. El Registro de tiempos de ciclo, con todos los otros dispositivos, es cronometrado por un reloj de 24,576 MHz sin sincronizar. La salida del Registro de tiempos de ciclo produce una señal de reloj que es capaz de añadir un sello de tiempo a los paquetes de datos, y puesto que el dispositivo transmisor está subordinado al Maestro de ciclo, este sello de tiempo será válido para todos los dispositivos conectados al bus 1.
En la figura 7 se muestra una realización del Maestro de ciclo, y comprende un Registro 70 de tiempos de ciclo accionado por un reloj 71 de 24,576 MHz. El Registro 70 de tiempos de ciclo abastece a un Generador 72 de comienzos de ciclo. La salida del Generador de comienzos de ciclo se suministra a través de una salida 73 al bus 1. Todos los Registros de tiempos de ciclo esclavos incluyen un Procesador de comienzos de ciclo que detecta la señal producida por el Generador 72 de comienzos de ciclo y sincroniza el Registro de tiempos de ciclo en la unidad esclava, en este caso particular, el dispositivo 6 transmisor, con el Registro de tiempos de ciclo en el Maestro 7 de ciclo.
En algún momento tras la adición del sello de tiempo de transmisión a un paquete dentro del dispositivo 6 transmisor, puede empezar a transmitirse el paquete a través del sistema de comunicación al dispositivo 8 receptor. Un paquete puede encontrarse con retardos arbitrarios mientras se transmite a través del sistema de comunicación, especialmente cuando hay presente algún puente 3 que conecta buses IEEE1394 distintos. Además de los retardos arbitrarios encontrados por la transmisión a través de cualquier puente de transmisión, existen retardos arbitrarios adicionales encontrados por un retardo de tiempo variable antes de que un paquete pueda aceptarse en el bus. Este retardo puede diferir de paquete a paquete hasta una cierta cantidad máxima de fluctuación de fase, que puede especificarse o calcularse para cualquier tecnología de comunicación dada. Cuando se utiliza un método según la presente invención, este sello de tiempo de transmisión que se ha insertado en los paquetes transmitidos no se modificará adicionalmente en cualquier etapa posterior en el proceso de comunicación.
Tal como se ha expuesto anteriormente, las frecuencias de reloj en los diversos buses interconectados se sincronizan en frecuencia. Sin embargo, esto no significa que los Registros de tiempos de ciclo en los dispositivos transmisor y receptor muestren el mismo tiempo. Como analogía, resultará evidente que el tiempo en varios sitios en la superficie de la tierra se incrementa a exactamente la misma velocidad que viene determinada por la velocidad de rotación de la tierra, pero el tiempo absoluto en posiciones de longitud diferentes variará, por ejemplo, el tiempo universal coordinado es una hora diferente del tiempo europeo central.
En la figura 8 se muestra en forma esquemática de bloques una realización de un dispositivo receptor adecuado para el uso como el dispositivo 8 receptor. Tiene una entrada 81 que está conectada al bus 2. Esta entrada recibe paquetes de Comienzo de ciclo del Maestro 9 de ciclo que se suministran a un procesador 82 de comienzos de ciclo que se emplea para sincronizar el Registro 83 de tiempos de ciclo del dispositivo 8 receptor con el Registro de tiempos de ciclo en el Maestro 9 de ciclo. Un reloj 84 de 24,576 MHz cronometra el Registro 83 de tiempos de ciclo. La entrada 81 también está conectada a un detector 85 de sellos de tiempo que detecta la presencia de sellos de tiempo de transmisión en la señal recibida. Por tanto, el detector 85 de sellos de tiempo lee y graba el valor T_{1} del sello de tiempo de transmisión en el paquete de datos y coloca el paquete de datos en una memoria 86 intermedia. El tiempo del primer sello de tiempo en una transmisión se engancha en un primer enganche 87 de sello de tiempo, y cada sello de tiempo subsiguiente en el flujo de transmisión se engancha en un segundo enganche 88 de sello de tiempo. Las salidas de los enganches 87 y 88 se suministran a unas primera y segunda entradas de un circuito 89 restador. Cuando se recibe el primer paquete de un flujo de datos, el dispositivo receptor lee el tiempo t_{1} de su Registro de tiempos de ciclo en el instante en el que se recibe el paquete. Este tiempo se suministra a la primera entrada de un circuito 90 sumador cuya segunda entrada recibe un valor de desfase dado que se elige para que sea mayor o igual que la mayor fluctuación de fase de tiempo introducida por el sistema de comunicación entre los varios paquetes que están recibiéndose. El resultado de la suma se suministra a un enganche 92 como un valor T_{0}. Para el primer paquete de una transmisión, este valor T_{0} se suministra a la primera entrada de un comparador 93 cuya segunda entrada recibe la salida del Registro 83 de tiempos de ciclo. Por tanto, cuando el Registro 83 de tiempos de ciclo llega al tiempo t_{0}, entonces el controlador 94 de salida emitirá desde la memoria 86 intermedia al primer paquete de datos, y se pasará a la siguiente etapa dentro del dispositivo receptor.
Cuando el siguiente paquete llega al dispositivo receptor, el detector 85 de sellos de tiempo detecta el sello de tiempo y lo engancha en el enganche 88 y pasa el paquete de datos al interior de la memoria 86 intermedia. El restador 89 resta entonces el valor T_{1}, que es el sello de tiempo de transmisión del primer paquete de datos, del valor T_{n}, que es el sello de tiempo del paquete actual que está recibiéndose. El resultado de esta resta se suma entonces al tiempo T_{0} y se presenta a la primera entrada del comparador 93. Por tanto, el tiempo T_{0} + (T_{n} – T_{1}) es el tiempo al que tiene que llegar el Registro 83 de tiempos de ciclo antes de que el controlador 94 de salida lea el paquete de la memoria 86 intermedia en las siguientes etapas del receptor.
Resultará evidente que usando este procedimiento, el dispositivo receptor suma un tiempo dado al tiempo t_{1} en el que se detectó el primer sello de tiempo de transmisión tal como fue fijado por el tiempo en el Registro 83 de tiempos de ciclo en ese instante y suma un tiempo dado que es suficiente para permitir cualquier fluctuación de fase en el sistema de comunicación. El paquete en la memoria 86 intermedia se pasa entonces al resto del receptor cuando el Registro de tiempos de ciclo alcanza el tiempo T_{0} que es igual al tiempo t_{1} + \Delta, es decir, el tiempo registrado por el Registro 83 de tiempos de ciclo en el instante en el que se detectó el primer sello de tiempo de paquete más el valor \Delta de desfase. Cuando llega cada sello de tiempo de transmisión subsiguiente, el valor del primer sello de tiempo de transmisión se resta del valor del sello de tiempo de transmisión subsiguiente y se suma al tiempo T_{0} para determinar cuándo se lee el paquete de la memoria 86 intermedia. Por tanto, no se requiere en ninguna etapa que el dispositivo receptor modifique ninguno de los sellos de tiempo de transmisión.
Puesto que el Registro 83 de tiempos de ciclo en el dispositivo receptor está sincronizado con el Registro de tiempos de ciclo en el dispositivo transmisor, los paquetes de datos se pasan en consecuencia a la siguiente etapa dentro del dispositivo receptor con sustancialmente la misma relación de temporización entre paquetes que aquella a la que fueron procesados por el dispositivo transmisor. La diferencia en tiempos absolutos no es importante. Cualquier información de cabecera CIP u otras cabeceras de paquete de transmisión pueden eliminarse de los paquetes recibidos o bien antes o bien después de que los paquetes se coloquen en la memoria 86 intermedia. La siguiente etapa del dispositivo receptor puede ser un decodificador 96 MPEG que contenga un reloj 97 adicional, un circuito 98 decodificador, un detector 99 de sellos de tiempo y un enganche/restador 100. El reloj 97 adicional es el reloj de decodificador y es totalmente independiente tanto del Registro de tiempos de ciclo, como del reloj de 24,576 MHz sin sincronizar en el dispositivo receptor. El decodificador MPEG puede usar ahora las PCR o las SCR en los paquetes sustancialmente sin fluctuación de fase recibidos para sincronizar por métodos convencionales el reloj de decodificador a sustancialmente la misma velocidad que el reloj en el codificador MPEG que codificó los datos originalmente. Por tanto, se permite al decodificador MPEG decodificar y presentar los datos a un dispositivo 101 de visualización que también puede formar parte del dispositivo receptor a sustancialmente la velocidad correcta.
Resultará evidente que es necesario para la presente invención que los relojes en los buses 1 y 2 estén enganchados en frecuencia, aunque no tienen que estar enganchados en tiempo absoluto. Esto requiere que el puente 3 de transmisión incluya una disposición 4 de enganche en frecuencia que enganche la frecuencia de los relojes en los dos buses 1 y 2 diferentes. Esto puede conseguirse de una variedad de maneras. Una es enviar una ráfaga corta de señales que no contenga información a intervalos de tiempo definidos con precisión, permitiendo así sincronizar los relojes en ambos lados del puente de transmisión. Un método alternativo es enviar un mensaje a través del puente que contenga información de tiempo. Este mensaje puede enviarse a un intervalo de tiempo relativamente aleatorio ya que el mensaje hará que los relojes adopten el mismo tiempo cada vez que se envíe el mensaje a través del puente de transmisión. La manera en que se sincronizan los relojes en los buses interconectados no es importante para implementar la invención. Es simplemente un requisito que los relojes estén sincronizados así en frecuencia.
Aunque la invención se haya descrito utilizando el ejemplo de datos MPEG transmitidos utilizando disposiciones de buses IEEE1394, no está limitada a tal sistema de comunicación. Es aplicable a la transmisión de cualquier dato isócrono por una red de transporte de paquetes en la que pueda producirse una fluctuación de fase. Es aplicable además donde pueda haber un intervalo de tiempo definido sin precisión entre las funciones de codificación y de decodificación, lo que significa que un sello de tiempo recibido puede tener un tiempo anterior que el tiempo real tal como se ha medido en el dispositivo receptor.
Resultará evidente para el experto en la técnica que pueden realizarse muchas modificaciones en la realización descrita, que simplemente es un ejemplo de cómo puede llevarse a cabo la invención. Por ejemplo, al determinar el tiempo en el que el receptor debería comenzar a procesar los datos recibidos, sería posible sumar el tiempo entre llegadas de cada paquete al tiempo de proceso del paquete anterior. En este caso, en lugar de almacenar el tiempo de llegada del primer paquete del flujo, es necesario almacenar el tiempo de llegada del paquete anterior.
A partir de la lectura de la presente descripción, a los expertos en la técnica les resultarán evidentes otras modificaciones. Tales modificaciones pueden implicar otras características que ya sean conocidas en el diseño y uso de sistemas de comunicación y de las partes componentes de los mismos y que pueden utilizarse en lugar o además de las características ya descritas en la presente memoria. Aunque se han formulado reivindicaciones en esta solicitud de combinaciones particulares de características, debería entenderse que el alcance de la descripción de la presente solicitud también incluye cualquier característica novedosa o cualquier combinación novedosa de características descrita en la presente memoria ya sea explícita o implícitamente o cualquier generalización de una o más de aquellas características que serían obvias para los expertos en la técnica, se refieran o no a la misma invención tal como se reivindica actualmente en cualquier reivindicación y mitiguen o no cualquiera o todos los mismos problemas técnicos que la presente invención. Por la presente memoria, los solicitantes avisan de que pueden formularse nuevas reivindicaciones de tales características y/o combinaciones de tales características durante el proceso de la presente solicitud o de cualquier solicitud adicional derivada de la misma.

Claims (16)

1. Método de corrección de errores de temporización cuando se transmiten (6) datos isócronos por una red (1, 2, 3, 4) de comunicaciones basada en paquetes, en el que al menos algunos de los paquetes de datos contienen sellos de tiempo que le indican a un receptor (8) el tiempo en el que deberían procesarse los datos, caracterizado porque el método comprende las etapas de:
a) insertar sellos de tiempo de transmisión en paquetes de datos isócronos que se refieren a un tiempo absoluto tal como lo define un reloj (7) de transmisión y que han de transmitirse por una red de transmisión,
b) recibir (8) los paquetes de datos y detectar y grabar temporalmente los sellos de tiempo de transmisión en los mismos,
c) proporcionar un reloj (9) de receptor que está sincronizado en frecuencia, pero no necesariamente en tiempo absoluto, con el reloj (7) de transmisión,
d) almacenar el tiempo absoluto del reloj (9) de receptor cuando se recibe el primer paquete que contiene un sello de tiempo de transmisión,
e) sumar (90) un desfase (91) de tiempo dado al tiempo almacenado del reloj de receptor, siendo el desfase mayor o igual que la variación máxima en tiempo entre sucesivos paquetes de datos recibidos, para definir el tiempo de salida del primero de los paquetes de datos recibidos,
f) restar (89) el valor del sello de tiempo de transmisión en el primer paquete (87) de datos recibido del sello de tiempo de transmisión en cada paquete (88) de datos recibido posteriormente, y
g) sumar (95) la diferencia (89) entre el sello de tiempo de transmisión del presente paquete de datos y el sello de tiempo de transmisión del primer paquete de datos al tiempo de salida del primer paquete de datos para definir el tiempo de salida del presente paquete.
2. Método según la reivindicación 1, en el que los datos son datos codificados según MPEG y los sellos de tiempo de transmisión son distintos e independientes de cualquier sello de tiempo MPEG.
3. Método según la reivindicación 2, en el que los datos se transmiten utilizando el Formato de paquetes isócronos comunes definido en la norma IEC61883.
4. Método según cualquier reivindicación anterior, en el que el sistema de comunicación funciona según una norma IEEE1394.
5. Método según cualquiera de las reivindicaciones 1 a 3, en el que el sistema de comunicación funciona en Modo de transferencia asíncrono.
6. Método según cualquiera de las reivindicaciones 1 a 3, en el que el sistema de comunicación funciona según una norma del Sistema universal de telecomunicaciones móviles.
7. Aparato para corregir errores de temporización cuando se transmiten datos isócronos a través de una red (1, 2, 3, 4) de comunicación basada en paquetes, en el que al menos algunos de los paquetes de datos contienen sellos de tiempo que le indican a un receptor (8) el tiempo en el deberían procesarse los datos, caracterizado porque el aparato comprende un medio (62) para insertar sellos de tiempo de transmisión en paquetes de datos isócronos que se refieren a un tiempo absoluto tal como es definido por un reloj (66) de transmisión, un medio (69) para transmitir los paquetes de datos por una red (1, 2, 3) de transmisión, un medio (8) para recibir los paquetes de datos y detectar (85) y grabar (86) temporalmente los sellos de tiempo de transmisión en el mismo, un reloj (84) de receptor que está sincronizado en frecuencia, pero no necesariamente en tiempo absoluto, con el reloj (86) de transmisión, un medio (87) para almacenar el tiempo absoluto del reloj de receptor cuando se recibe el primer paquete que contiene un sello de tiempo de transmisión, un medio (90) para sumar un desfase (91) de tiempo dado al tiempo almacenado del reloj de receptor, siendo el desfase mayor o igual que la variación máxima en tiempo entre sucesivos paquetes de datos recibidos, para definir el tiempo (94) de salida del primero de los paquetes de datos recibidos, un medio (89) para restar el valor del sello (87) de tiempo de transmisión en el primer paquete de datos recibido del sello (88) de tiempo de transmisión en cada paquete de datos recibido posteriormente, y un medio (95) para sumar la diferencia (89) entre el sello de tiempo de transmisión del presente paquete de datos y el sello de tiempo de transmisión del primer paquete de datos al tiempo de salida del primer paquete de datos para definir (93) el tiempo (94) de salida del presente paquete.
8. Aparato según la reivindicación 7, en el que el medio para insertar los sellos de tiempo de transmisión comprende un Registro (70) de tiempos de ciclo.
9. Aparato según la reivindicación 8, en el que una pluralidad de dispositivos (6) transmisores y/o receptores que contienen cada uno un Registro (70) de tiempos de ciclo están conectados a un bus (1) IEEE1394 y uno de los Registros de tiempos de ciclo forma un Maestro (7) de ciclo que transmite un paquete de Comienzo de ciclo a los otros Registros de tiempos de ciclo para mantenerlos todos en sincronismo.
10. Aparato según la reivindicación 9, en el que el sistema de comunicación comprende una pluralidad de buses (1, 2) IEEE1394 acoplados por al menos un puente (3) de transmisión, en el que los Maestros (7, 9) de ciclo en cada bus (1, 2) están sincronizados en frecuencia.
11. Aparato según la reivindicación 10, en el que el al menos un puente (3) está dispuesto para funcionar según la norma IEEEp1394.1.
12. Aparato según la reivindicación 7, en el que el sistema de comunicación emplea un Modo de transferencia asíncrono.
13. Aparato según la reivindicación 7, en el que el sistema de comunicación es un Sistema universal de telecomunicaciones móviles.
14. Aparato según cualquiera de las reivindicaciones 7 a 13, en el que los datos son señales de audio y/o de vídeo codificadas según una norma MPEG.
15. Aparato según la reivindicación 14, en el que el medio de transmisión incluye un codificador (5) MPEG.
16. Aparato según la reivindicación 14 o la reivindicación 15, en el que el receptor (8) incluye un decodificador (96) MPEG.
ES00902626T 1999-02-12 2000-01-24 Metodo y aparato para la comunicacion de datos isocronos. Expired - Lifetime ES2254134T3 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB9903144 1999-02-12
GBGB9903144.5A GB9903144D0 (en) 1998-08-05 1999-02-12 Method and apparatus for communicating isochronous data

Publications (1)

Publication Number Publication Date
ES2254134T3 true ES2254134T3 (es) 2006-06-16

Family

ID=10847591

Family Applications (1)

Application Number Title Priority Date Filing Date
ES00902626T Expired - Lifetime ES2254134T3 (es) 1999-02-12 2000-01-24 Metodo y aparato para la comunicacion de datos isocronos.

Country Status (11)

Country Link
US (2) US6661811B1 (es)
EP (1) EP1072166B1 (es)
JP (1) JP4896293B2 (es)
KR (1) KR100605238B1 (es)
CN (1) CN1270579C (es)
AT (1) ATE313929T1 (es)
CA (1) CA2328437C (es)
DE (1) DE60024932T2 (es)
ES (1) ES2254134T3 (es)
TW (1) TW498649B (es)
WO (1) WO2000048421A1 (es)

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6751228B1 (en) * 1999-03-23 2004-06-15 Yamaha Corporation Packet handler of audio data by isochronous mode
WO2001043325A1 (en) * 1999-12-08 2001-06-14 Broadcom Homenetworking, Inc. Synchronized transport across non-synchronous networks
FI108489B (fi) 1999-12-30 2002-01-31 Nokia Corp Synkronointi pakettivõlitteisessõ tietoliikennejõrjestelmõssõ
JP2001230821A (ja) * 2000-02-16 2001-08-24 Sony Corp データ中継装置および方法、並びに提供媒体
US7254116B2 (en) * 2000-04-07 2007-08-07 Broadcom Corporation Method and apparatus for transceiver noise reduction in a frame-based communications network
US6895009B1 (en) * 2000-04-07 2005-05-17 Omneon Video Networks Method of generating timestamps for isochronous data
US6816492B1 (en) * 2000-07-31 2004-11-09 Cisco Technology, Inc. Resequencing packets at output ports without errors using packet timestamps and timestamp floors
US6888806B1 (en) * 2000-11-22 2005-05-03 Motorola, Inc. Method and system for scheduling packets for transmission from a wireless communication platform
US7142566B1 (en) * 2001-02-15 2006-11-28 Cisco Systems Canada Co. Jitterless processing of bitstreams
CN1462559A (zh) * 2001-05-14 2003-12-17 皇家菲利浦电子有限公司 通过无抖动解码的atm网络的mpeg数据包传输
US6836514B2 (en) * 2001-07-10 2004-12-28 Motorola, Inc. Method for the detection and recovery of errors in the frame overhead of digital video decoding systems
US7043651B2 (en) 2001-09-18 2006-05-09 Nortel Networks Limited Technique for synchronizing clocks in a network
JP3932452B2 (ja) * 2001-09-27 2007-06-20 ソニー株式会社 通信装置および方法、並びにプログラム
KR100782234B1 (ko) * 2001-10-08 2007-12-05 엘지전자 주식회사 피브이알에서의 방송장애구간 자동처리 방법
EP1444832A1 (en) * 2001-11-14 2004-08-11 Matsushita Electric Industrial Co., Ltd. Method for correcting clock frequency, receiving apparatus, reproducing apparatus, and program
CN1432984A (zh) 2002-01-18 2003-07-30 株式会社半导体能源研究所 发光器件
US7151945B2 (en) * 2002-03-29 2006-12-19 Cisco Systems Wireless Networking (Australia) Pty Limited Method and apparatus for clock synchronization in a wireless network
GB2387516B (en) * 2002-04-11 2005-03-09 Cambridge Broadband Ltd Communication system
DE10218425A1 (de) * 2002-04-24 2003-11-06 Grundig Ag I Ins Verfahren und Vorrichtung zum Synchronisieren eines Empfängers mit einem Sender bei einer Datenübertragung über ein asynchrones Netzwerk
US7526000B2 (en) * 2002-07-19 2009-04-28 Koninklijke Philips Electronics N.V. Jitter compensation method for systems having wall clocks
CN100352225C (zh) * 2002-07-30 2007-11-28 雅马哈株式会社 有效利用网络资源的数据传输装置
JP3702261B2 (ja) * 2002-09-30 2005-10-05 株式会社東芝 タイムスタンプ補正回路および補正方法
EP1455472A1 (en) * 2003-03-07 2004-09-08 STMicroelectronics Limited Timing control for packet streams
JP3858002B2 (ja) * 2003-05-23 2006-12-13 三洋電機株式会社 無線伝送システム
US8275910B1 (en) * 2003-07-02 2012-09-25 Apple Inc. Source packet bridge
US7712004B1 (en) * 2003-09-30 2010-05-04 Emc Corporation Method of and system for error checking in a data storage system
GB2425915B (en) * 2003-11-19 2008-01-02 Nimcat Networks Inc Time and data synchronization between networks devices
JP4694969B2 (ja) * 2004-01-07 2011-06-08 パナソニック株式会社 データ受信装置
US7525952B1 (en) * 2004-01-07 2009-04-28 Cisco Technology, Inc. Method and apparatus for determining the source of user-perceived voice quality degradation in a network telephony environment
JP2005284600A (ja) * 2004-03-29 2005-10-13 Toshiba Corp タイムスタンプ補正装置及びタイムスタンプ補正システム
DE102004018200A1 (de) * 2004-04-15 2005-11-10 Deutsche Thomson-Brandt Gmbh Verfahren zum Verarbeiten einer Folge von Datenpaketen in einer Empfängervorrichtung sowie Empfängervorrichtung
US7710965B2 (en) * 2004-11-23 2010-05-04 Broadlogic Network Technologies Inc. Method and system for multi-program clock recovery and timestamp correction
US7809131B1 (en) * 2004-12-23 2010-10-05 Arcsight, Inc. Adjusting sensor time in a network security system
WO2006109699A1 (ja) * 2005-04-08 2006-10-19 Matsushita Electric Industrial Co., Ltd. 転送装置
KR100757465B1 (ko) * 2005-07-22 2007-09-11 삼성전자주식회사 시간 정보를 이용하여 아날로그 영상 및 음성신호의 동기제어를 수행하는 a/v 기기 및 그 동기 제어방법
CN100428691C (zh) * 2005-12-22 2008-10-22 中山大学 一种数字家庭网络的时间同步装置及同步方法
US7626942B2 (en) * 2006-11-22 2009-12-01 Spectra Link Corp. Method of conducting an audio communications session using incorrect timestamps
JP5079342B2 (ja) * 2007-01-22 2012-11-21 ルネサスエレクトロニクス株式会社 マルチプロセッサ装置
US8171166B1 (en) * 2007-06-24 2012-05-01 Arris Group, Inc. Method and a computer program product for modifying or generating a multiple program transport stream
US8040923B2 (en) 2007-07-05 2011-10-18 Infineon Technologies Ag Communication methods and apparatuses
JP5212374B2 (ja) 2007-09-28 2013-06-19 富士通株式会社 エラー判定装置およびエラー判定方法
US7860125B2 (en) * 2008-01-28 2010-12-28 Cisco Techology, Inc. Flexible time stamping
GB2477367B8 (en) * 2008-01-28 2016-06-29 Cisco Tech Inc Flexible time stamping
US20090257455A1 (en) * 2008-04-15 2009-10-15 Tellabs Operations, Inc. Method and apparatus for synchronizing timing of signal packets
US8396133B2 (en) 2009-04-21 2013-03-12 Qualcomm Incorporated Synchronizing video frames without hardware timestamps
DK2497211T3 (en) * 2009-10-29 2017-03-06 ERICSSON TELEFON AB L M (publ) Method and device for optimizing transport of a synchronization package
US8514329B2 (en) 2011-05-31 2013-08-20 Motorola Mobility Llc Jitter estimation for MPEG receivers
WO2013099026A1 (ja) * 2011-12-28 2013-07-04 富士通株式会社 ノード装置および時刻同期方法
CN102740131B (zh) * 2012-07-09 2015-12-02 深圳市香江文化传播有限公司 基于实时传输协议的网络电视直播方法及系统
EP2882120B1 (en) * 2013-12-06 2016-03-09 ADVA Optical Networking SE A method and apparatus for mitigation of packet delay variation
US9680507B2 (en) * 2014-07-22 2017-06-13 Qualcomm Incorporated Offset selection for error correction data
KR102272339B1 (ko) 2014-11-17 2021-07-02 삼성전자주식회사 컨텐트들을 표시하는 방법 및 이를 위한 전자 장치
CN108227561A (zh) * 2017-12-08 2018-06-29 中国航空工业集团公司成都飞机设计研究所 一种多余度系统数据采集的时标对齐方法
US11927950B2 (en) * 2018-07-27 2024-03-12 Rockwell Automation Technologies, Inc. System and method of communicating safety data over high availability industrial control systems
CN111447026B (zh) * 2019-01-17 2021-09-14 华为技术有限公司 处理数据的方法和处理数据的装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5495482A (en) 1989-09-29 1996-02-27 Motorola Inc. Packet transmission system and method utilizing both a data bus and dedicated control lines
CA2055396C (en) * 1990-11-14 1998-08-18 Hidetoshi Toyofuku Delay distortion suppressing system for asynchronous transfer mode (atm) communication system
US5287182A (en) * 1992-07-02 1994-02-15 At&T Bell Laboratories Timing recovery for variable bit-rate video on asynchronous transfer mode (ATM) networks
US5486864A (en) 1993-05-13 1996-01-23 Rca Thomson Licensing Corporation Differential time code method and apparatus as for a compressed video signal
EP0683945B1 (en) * 1993-11-19 2002-10-30 Codex Corporation Method for adaptive smoothing delay for packet voice applications
US5790543A (en) 1995-09-25 1998-08-04 Bell Atlantic Network Services, Inc. Apparatus and method for correcting jitter in data packets
US5640388A (en) 1995-12-21 1997-06-17 Scientific-Atlanta, Inc. Method and apparatus for removing jitter and correcting timestamps in a packet stream
US6160805A (en) * 1996-09-30 2000-12-12 Motorola, Inc. Method for synchronizing a session timer
US6243395B1 (en) * 1996-11-06 2001-06-05 Sony Corporation Method and apparatus for transferring ATM cells via 1394-serial data bus
KR100241325B1 (ko) * 1996-11-06 2000-02-01 윤종용 엠펙-2 디코더의 클럭 복원 장치 및 그 복원 방법
US6266384B1 (en) * 1997-05-19 2001-07-24 Sarnoff Corporation Method and apparatus for time base recovery and processing
US6418150B1 (en) * 1998-02-20 2002-07-09 Apple Computer, Inc. Method and apparatus for calibrating an IEEE-1394 cycle master
US6680944B1 (en) * 1998-03-09 2004-01-20 Sony Corporation Apparatus for and method of predictive time stamping of isochronous data packets transmitted over an IEEE 1394-1995 serial bus network
US6335931B1 (en) * 1998-05-29 2002-01-01 Finisar Corporation System for synchronizing network data transmission and collection
US6278710B1 (en) * 1998-09-10 2001-08-21 Agilent Technologies, Inc. Enhancements to time synchronization in distributed systems
US6327274B1 (en) * 1998-09-15 2001-12-04 Nokia Telecommunications, Inc. Method for estimating relative skew between clocks in packet networks
US6259677B1 (en) * 1998-09-30 2001-07-10 Cisco Technology, Inc. Clock synchronization and dynamic jitter management for voice over IP and real-time data
US6449291B1 (en) * 1998-11-24 2002-09-10 3Com Corporation Method and apparatus for time synchronization in a communication system
US6510150B1 (en) * 1998-12-21 2003-01-21 Koninklijke Philips Electronics N.V. Method of MAC synchronization in TDMA-based wireless networks
US6452950B1 (en) * 1999-01-14 2002-09-17 Telefonaktiebolaget Lm Ericsson (Publ) Adaptive jitter buffering

Also Published As

Publication number Publication date
JP4896293B2 (ja) 2012-03-14
CA2328437A1 (en) 2000-08-17
US20040153716A1 (en) 2004-08-05
CA2328437C (en) 2007-09-25
EP1072166A1 (en) 2001-01-31
US7508845B2 (en) 2009-03-24
CN1270579C (zh) 2006-08-16
EP1072166B1 (en) 2005-12-21
DE60024932D1 (de) 2006-01-26
CN1300517A (zh) 2001-06-20
TW498649B (en) 2002-08-11
KR100605238B1 (ko) 2006-07-28
DE60024932T2 (de) 2006-08-24
KR20010042630A (ko) 2001-05-25
ATE313929T1 (de) 2006-01-15
JP2003519448A (ja) 2003-06-17
WO2000048421A1 (en) 2000-08-17
US6661811B1 (en) 2003-12-09

Similar Documents

Publication Publication Date Title
ES2254134T3 (es) Metodo y aparato para la comunicacion de datos isocronos.
KR100360134B1 (ko) 신호처리시스템
ES2226226T3 (es) Disposicion de sincronizacion para una señal de video comprimida.
KR100358398B1 (ko) 패킷전송방식
KR100373942B1 (ko) 신호처리시스템
EP1052793B1 (en) Method and device for synchronisation between two networks
CN109787703B (zh) 一种时间戳的修正方法、时钟同步方法及系统
JP3516206B2 (ja) データストリーム処理装置および方法、並びにプログラム格納媒体
WO2019036943A1 (zh) 一种报文处理的方法和网络设备
JP2000216800A (ja) デ―タ中継装置および方法、並びに提供媒体
KR20010082637A (ko) 데이터 중계장치 및 방법, 및 제공매체
US20050180732A1 (en) Transfer apparatus
KR20060112176A (ko) 통신 시스템 및 방법, 정보 처리 장치 및 방법 및 프로그램
JP3499818B2 (ja) タイムスタンプのオフセット調整方法及びそれを用いたパケット伝送装置
KR100817248B1 (ko) Ieee 1394 버스로 전송되는 mpeg 기록된 데이터를판독하는 방법 및 장치
KR20030087075A (ko) 레코딩될 비트스트림에 대한 스터핑 데이터의 삽입을제어하는 방법 및 장치
JP3546799B2 (ja) データ送受信装置
JP3604895B2 (ja) 伝送システムにおける受信インターフェース装置
JP2003037574A (ja) ストリーム送信装置および受信装置、ならびに送受信方法
JPH11215144A (ja) 時刻情報をもつディジタルデータの再現装置
JPH06350649A (ja) ブロックデータの伝送方法及び同期方法
JP3578156B2 (ja) パケット受信装置
JP2000358006A (ja) 通信装置、通信方法、および記録媒体
JP2002064521A (ja) 送信装置および送信方法、並びにプログラム格納媒体
JPH11215109A (ja) メモリ装置