Apparatus and method for correcting jitter in data packets
First Claim
1. An apparatus for measuring jitter in a transport stream of data packets, comprising:
- a time stamp detector detecting time stamp values located within said transport stream, each time stamp value identifying an expected arrival time of a corresponding interval portion of said transport stream;
a counting portion, responsive to a clock signal independent of the transport stream, for identifying an actual arrival time for each said corresponding interval portion of said transport stream;
a detecting circuit detecting jitter in each data packet stream segment by executing a correlation of the corresponding expected arrival time and the corresponding actual arrival time with an accumulation of expected and actual arrival times of previously-received data packet stream segments.
5 Assignments
0 Petitions
Accused Products
Abstract
An arrangement (apparatus and method) for detecting jitter caused during transport of digitally-coded information, such as MPEG-encoded data packets, and for correcting time stamp reference values in accordance with the detected jitter. The disclosed arrangement detects program clock reference (PCR) values from an MPEG-encoded transport stream, where each PCR value represents an expected arrival time of a corresponding stream segment. An actual arrival time for the corresponding stream segment is determined in response to detection of the corresponding PCR value and an independent clock signal. The expected arrival time of the stream segment and the actual arrival time are correlated with an accumulation of expected and actual arrival times of previously-received data packet stream segments in order to determine the jitter and the desired expected arrival time of the corresponding stream segment. The jitter is corrected by a combination of adaptive buffering techniques and restamping the PCR value with corrected values coinciding with the actual arrival time of the stream segments. The disclosed arrangement may be implemented in a receiver system, or as part of the network node that minimizes the effects of cell delay variation in an ATM network.
206 Citations
46 Claims
-
1. An apparatus for measuring jitter in a transport stream of data packets, comprising:
-
a time stamp detector detecting time stamp values located within said transport stream, each time stamp value identifying an expected arrival time of a corresponding interval portion of said transport stream; a counting portion, responsive to a clock signal independent of the transport stream, for identifying an actual arrival time for each said corresponding interval portion of said transport stream; a detecting circuit detecting jitter in each data packet stream segment by executing a correlation of the corresponding expected arrival time and the corresponding actual arrival time with an accumulation of expected and actual arrival times of previously-received data packet stream segments. - View Dependent Claims (2, 3)
-
-
4. A method for measuring jitter in a transport stream of MPEG-encoded data packets, comprising the steps of:
-
receiving a clock signal independent from the transport stream; detecting program clock reference (PCR) values from said transport stream, each PCR value identifying an expected arrival time of a corresponding interval portion of said transport stream; identifying an actual arrival time for each said corresponding interval portion of said transport stream in response to said independent clock signal; determining a desired actual arrival time for said each corresponding interval portion in response to an accumulation of respective PCR values and actual arrival times of prior portions of the transport stream; and calculating said jitter based on a difference between each actual arrival time and the corresponding actual arrival time. - View Dependent Claims (5)
-
-
6. A broadband receiver for receiving a data stream carrying asynchronous transfer mode (ATM) cells from a broadband network, comprising:
-
an ATM stream selector for capturing a selected group of said ATM cells on the basis of a selected identifier value; an ATM adaptation layer processor for recovering from said group of said ATM cells a digital data stream carrying time stamp values, each time stamp value representing an expected arrival time of a corresponding digital data stream segment from said digital data stream; and a cell delay variation correction circuit comprising; (1) a segment delay detection circuit determining an actual arrival time of the corresponding digital data stream segment by detection of the corresponding time stamp value relative to an independent clock signal, the delay detection circuit calculating an approximated relation between actual arrival times and corresponding time stamp values from previously-received digital data stream segments, and (2) a digital data stream correction circuit, responsive to the actual arrival time and the approximated relation, outputting said digital data stream as a corrected data packet stream having time stamps identifying an expected arrival time substantially coinciding with an actual time duration of the corresponding data packet stream segment of said corrected data packet stream, said corrected data packet stream being output for decompression to obtain information for use by a subscriber. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A converter for converting a data stream of asynchronous transfer mode (ATM) cells carrying MPEG-encoded data into an MPEG-encoded packet stream, comprising:
-
an ATM stream selector for capturing a selected group of said ATM cells on the basis of a selected identifier value; an ATM adaptation layer processor for recovering from said group of said ATM cells said MPEG-encoded packet stream carrying program clock reference (PCR) values, each PCR value representing an expected arrival time of a corresponding segment from said MPEG-encoded packet stream; and a cell delay variation correction circuit comprising; (1) a segment delay detection circuit determining an actual arrival time of the corresponding digital data stream segment by detection of the corresponding PCR value relative to an independent clock signal, the delay detection circuit calculating an approximated relation between actual arrival times and corresponding PCR values from previously-received digital data stream segments, and (2) a digital data stream correction circuit, responsive to the actual arrival time and the approximated relation, outputting said digital data stream as a corrected data packet stream having PCR values identifying an expected arrival time substantially coinciding with an actual time duration of the corresponding data packet stream segment of said corrected data packet stream, said corrected data packet stream being output for decompression to obtain information for use by a subscriber. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A digital entertainment terminal (DET) for receiving an MPEG-encoded packet stream after transport via an asynchronous transfer mode (ATM) network, comprising:
-
an MPEG stream alignment circuit for receiving the transported MPEG-encoded packet stream and outputting an aligned MPEG stream having program clock reference (PCR) values corrected based on PCR values of previously-received MPEG-encoded packet streams; a clock synchronization circuit for outputting a clock pulse in accordance with the PCR values of said aligned MPEG stream; and an MPEG decoder for decoding said aligned MPEG stream in accordance with the clock pulse. - View Dependent Claims (43, 44, 45, 46)
-
-
23. A digital entertainment terminal (DET) for receiving an MPEG-encoded packet stream after transport via an asynchronous transfer mode (ATM) network, comprising:
-
an MPEG stream alignment circuit for receiving the transported MPEG-encoded packet stream and outputting an aligned MPEG stream having program clock reference (PCR) values corrected based on PCR values of previously-received MPEG-encoded packet streams; a clock synchronization circuit for outputting a clock pulse in accordance with the PCR values of said aligned MPEG stream; and an MPEG decoder for decoding said aligned MPEG stream in accordance with the clock pulse, wherein said MPEG stream alignment circuit comprises; a time stamp detector for detecting the PCR values within said transported MPEG-encoded packet stream, each PCR value representing an expected arrival time of a corresponding data packet stream segment; a timing circuit, responsive to an independent clock signal, for determining an actual arrival time for each said corresponding data packet stream segment; a detecting circuit for detecting jitter in said data packet stream on the basis of an estimated relation between the PCR values of previously-received MPEG-encoded packet streams and the corresponding actual arrival times; and a data packet stream correction circuit, responsive to the detected jitter, outputting said aligned MPEG stream as a corrected data packet stream having PCR values identifying an expected arrival time substantially coinciding with an actual time duration of the corresponding data packet stream segment of said corrected data packet stream. - View Dependent Claims (24, 25, 26, 27, 28, 29)
-
-
30. A method for recovering timing in a coded data transport stream having jitter caused by delays generated during network transport, comprising the steps of:
-
receiving an independent clock signal; detecting time stamp values from said coded data transport stream, each time stamp value identifying an expected arrival time of a corresponding interval portion of said coded data transport stream; identifying an actual arrival time for each said time stamp value in accordance with said independent clock signal; calculating an approximated relation between time stamp values and corresponding actual arrival times of previously-received portions of said coded data transport stream; and correcting said coded data transport stream in response to the approximated relation and the actual arrival time to have time stamp values identifying an expected arrival time that substantially coincides with an actual time duration of the corresponding segment of the corrected coded data transport stream. - View Dependent Claims (31, 32, 33, 34, 35, 36, 37)
-
-
38. An ATM network node for supplying broadband data received as ATM cell streams having respective VPI/VCI values, comprising:
-
an ATM processor receiving said ATM cell streams carrying said broadband data, said ATM processor assembling protocol data units (PDU'"'"'S) from said ATM cell streams on the basis of a corresponding VPI/VCI and outputting a first stream of broadband data generated from the assembled payload data units, said first stream of broadband data exhibiting transport delay variations due to cell delay variations and time stamp values representing an expected arrival time of a corresponding packet stream segment of said first stream of broadband data; and a cell delay variation processor for processing said first stream of broadband data to eliminate said transport delay variations and output a digitally-coded transport stream of said broadband data, said digitally-coded transport stream carrying time stamp values corresponding to an actual arrival time of corresponding transport stream segments of said digitally-coded transport stream. - View Dependent Claims (39, 40, 41)
-
-
42. A method comprising:
-
detecting a first time stamp value at the beginning of a segment in a digital data transport stream subjected to differential delays; in response to the first time stamp value, recording a first actual arrival time value; measuring a delay imposed on the segment by calculating a difference between the first actual arrival time value and an estimated actual arrival time value, the estimated actual arrival time value based on a correlation between detected time stamp values and corresponding recorded actual arrival time values from previously received segments of the digital data transport stream; processing the segment to compensate for the measured delay imposed on the segment; and decoding the processed segment at a clock rate synchronized by time stamp values contained in the segment.
-
Specification