IP Library Granted Patent US 8,483,244
Granted Patent B2
US 8,483,244 · App. 12/774,893 · Granted Jul 9, 2013

Timing recovery over packet networks

Inventor: Kamran Rahbar (Kanata, CA)
Assignee: Microsemi Semiconductor ULC
H04J3/0697H04L7/0008
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 8,483,244
App. No.
12/774,893
Filed
May 6, 2010
Granted
Jul 9, 2013
Kind
B2
Art Unit
2468
USPC
370/519
Abstract

In a method of recovering timing information over packet networks, raw network delays are measured using timing packets sent between a transmitter and receiver. The expected delay is predicted using a minimum statistics adaptive filter to track local minima of measured time delays over a smoothing window. Only those incoming timing packets which meet a particular criterion relative to the expected delay within a smoothing window are selected, and a local clock is adjusted based on the measured timing delays from the selected timing packets.

Claims (50)

1. A method of recovering timing information over packet networks, comprising:

measuring raw network time delays from timing packets of a single stream sent between a transmitter and a receiver over a packet network;

predicting a current delay estimate using a minimum statistics adaptive filter to track local minima of the measured raw network time delays over a series of successive smoothing windows of L received timing packets of the single stream, by:

maintaining a first variable tracking a local minimum measured raw network time delay within a smoothing window,

maintaining a second variable representing the current delay estimate, said second variable being regularly updated within each smoothing window and being set equal to a minimum between the current value thereof and the measured raw network time delay for the current timing packet,

after L received timing packets at the start of a new smoothing window setting said second variable equal to the current value of said first variable and subsequently updating the value of said first variable, and

adaptively varying the value of L based on estimated delay variations between the transmitter and the receiver to change the tracking characteristics of the minimum statistics adaptive filter;

selecting those incoming timing packets of the single stream within the smoothing window which meet a particular criterion relative to the current delay estimate; and

making frequency adjustments determined from the measured raw network time delays of the selected timing packets of the single stream for a local clock at the receiver.

2. A method as claimed in claim 1 , wherein the selected incoming timing packets are identified by determining the difference between the measured raw network time delay and the current delay estimate and comparing this difference with a threshold.

3. A method as claimed in claim 1 , wherein the second variable is updated for each incoming timing packet within the smoothing window.

4. A method as claimed in claim 1 , further comprising resampling the output of the minimum statistics adaptive delay filter to change the sampling rate.

5. A method as claimed in claim 1 , wherein the frequency adjustments are filtered in a loop filter of a phase locked loop.

6. A method as claimed in claim 1 , wherein the incoming timing packets are timestamped relative to the local clock on arrival and the measured delays are determined by comparing timestamps applied at the transmitter with timestamps applied at the receiver.

7. A method as claimed in claim 1 , wherein the first variable is z 1 _min(k) and the second variable is z_min(k), and z(k) is raw delay estimate for timing packet k, and the following loop is implemented:

set z_min(k) = minimum (z_min(k−1),z(k))

set z1_min(k) = minimum(z1_min(k−1),z(k))

IF win_cnt = L

  increment win_cntr

ELSE

  set z_min(k) = Z1_min)k)

  z1_min(k) = z(k)

  win_cntr = 0

where win_cntr is a counter value and k is an integer.

8. A method as claimed in claim 1 , wherein said first variable is updated to the value of the raw measured timing delay of the current packet at the start of said new smoothing window.

9. A timing recovery unit for recovering timing information over packet networks, comprising:

a block for measuring raw network time delays from timing packets of a single stream sent between a transmitter and a receiver over a packet network;

a minimum statistics adaptive filter to track local minima of the measured raw network time delays over a smoothing window to predict a current delay estimate over a series of successive smoothing windows of L received timing packets of the single stream, and wherein the minimum statistics filter is configured to:

maintain a first variable tracking a local minimum raw network time delay within a smoothing window,

maintain a second variable representing the current delay estimate, said second variable being regularly updated within each smoothing window and being set equal to a minimum between the current value thereof and the measured raw network time delay for the current timing packet,

after L received timing packets at the start of a new smoothing window, to set the second variable equal to the current value of the first variable and subsequently update the value of said first variable, and

to adaptively vary the size of smoothing window based on estimated delay variations between the transmitter and the receiver to change the tracking characteristics of the minimum statistics adaptive filter;

a selection block for selecting those incoming timing packets of the single stream within the smoothing window which meet a particular criterion relative to the current delay estimate; and

a phase locked loop for outputting a local clock at the receiver using frequency adjustments determined from the measured raw network time delays of the selected timing packets of the single stream.

10. A timing recovery unit as claimed in claim 9 , wherein the selection block determines the difference between the measured raw network time delay of incoming timing packets and the predicted delay and compares this difference with a threshold to select the packets meeting the particular criterion.

11. A timing recovery unit as claimed in claim 9 , wherein the second variable is updated for each incoming timing packet within the smoothing window.

12. A timing recovery unit as claimed claim 9 , further comprising a resampling unit for resampling the output of the minimum statistics adaptive delay filter.

13. A timing recovery unit as claimed in claim 9 , wherein the phase locked loop includes a loop filter that filters the frequency adjustments.

14. A timing recovery unit as claimed in claim 9 , further comprising a timestamp block for timestamping the incoming timing packets relative to the local clock on arrival, and a subtraction block for determining the measured delays by subtracting the timestamps applied at the transmitter from the timestamps applied at the receiver.

15. A timing recovery unit as claimed in claim 9 , wherein the minimum statistics adaptive filter implements the following loop:

set z_min(k) = minimum (z_min(k−1),z(k))

set z1_min(k) = minimum(z1_min(k−1),z(k))

IF win_cnt = L

  increment win_cntr

ELSE

  set z_min(k) = z1_min(k)

  z1_min(k) = z(k)

  win_cntr = 0

wherein the first variable is z 1 _min(k), the second variable is z_min(k), win_cntr is a counter value, and k is an integer, and z(k) is raw delay estimate for timing packet k.

16. A timing recovery unit as claimed in claim 9 , wherein the minimum statistics adaptive filter is configured to update said first variable to the value of the raw measured timing delay of the current packet at the start of said new smoothing window.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Jan 19, 2016
From: BANK OF AMERICA, N.A.
To: MICROSEMI CORPORATION; MICROSEMI CORP.-ANALOG MIXED SIGNAL GROUP, A DELAWARE CORPORATION; MICROSEMI SOC CORP., A CALIFORNIA CORPORATION; MICROSEMI SEMICONDUCTOR (U.S.) INC., A DELAWARE CORPORATION; MICROSEMI FREQUENCY AND TIME CORPORATION, A DELAWARE CORPORATION; MICROSEMI COMMUNICATIONS, INC. (F/K/A VITESSE SEMICONDUCTOR CORPORATION), A DELAWARE CORPORATION; MICROSEMI CORP.-MEMORY AND STORAGE SOLUTIONS (F/K/A WHITE ELECTRONIC DESIGNS CORPORATION), AN INDIANA CORPORATION
Reel/Frame 037558/0711 →
SECURITY AGREEMENT Recorded Apr 22, 2015
From: MICROSEMI CORPORATION; MICROSEMI CORP.-ANALOG MIXED SIGNAL GROUP; MICROSEMI SEMICONDUCTOR (U.S.) INC.; MICROSEMI SOC CORP.; MICROSEMI FREQUENCY AND TIME CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 035477/0057 →
CHANGE OF NAME Recorded Jun 3, 2013
From: MICROSEMI SEMICONDUCTOR CORP.
To: MICROSEMI SEMICONDUCTOR ULC
Reel/Frame 030532/0241 →
CHANGE OF NAME Recorded May 29, 2013
From: ZARLINK SEMICONDUCTOR INC.
To: MICROSEMI SEMICONDUCTOR CORP.
Reel/Frame 030508/0183 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 21, 2010
From: RAHBAR, KAMRAN
To: ZARLINK SEMICONDUCTOR INC.
Reel/Frame 024562/0971 →
Priority Claims (1)
GB 0908884.0 · May 22, 2009 · national
Continuity (1)
Related Publication 20100296406A1 · Nov 25, 2010