Method and apparatus for clock synchronization in a wireless network
First Claim
1. A method of synchronizing a local clock value in a wireless receiver receiving a data unit containing synchronization information, the method comprising:
- receiving a first data unit containing synchronization information transmitted by a first transmitter having a local clock value;
copying a local free-running clock at a known reference point in time relative to the time the first data unit was received to generate a local timestamp;
extracting the synchronization information from the received first data unit; and
calculating an offset to the free-running clock using the extracted synchronization information and the local timestamp, the calculating in non real-time, such that the sum of the calculated offset and the value of the free-running clock provides a local clock value for the receiver, and such that the receiver'"'"'s local clock value is approximately synchronized in time to the local clock value of the first transmitter.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for synchronizing a local clock value in a wireless receiver receiving a data unit containing synchronization information. The method includes receiving a first data unit containing synchronization information, extracting the synchronization information from the received first data unit, copying a local free-running clock at a known reference point in time relative to the time the first data unit was received to generate a local timestamp; and calculating an offset to the free-running clock using the extracted synchronization information and the local timestamp, the calculating in non real-time, such that the sum of the calculated offset and the value of the free-running clock provides a local clock value that is approximately synchronized in time. The apparatus implementing the method is part of a node of a wireless station, and provides a time synchronization function, typically at the MAC layer.
161 Citations
78 Claims
-
1. A method of synchronizing a local clock value in a wireless receiver receiving a data unit containing synchronization information, the method comprising:
-
receiving a first data unit containing synchronization information transmitted by a first transmitter having a local clock value;
copying a local free-running clock at a known reference point in time relative to the time the first data unit was received to generate a local timestamp;
extracting the synchronization information from the received first data unit; and
calculating an offset to the free-running clock using the extracted synchronization information and the local timestamp, the calculating in non real-time, such that the sum of the calculated offset and the value of the free-running clock provides a local clock value for the receiver, and such that the receiver'"'"'s local clock value is approximately synchronized in time to the local clock value of the first transmitter. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A clock synchronization method in a wireless node of a wireless network, the wireless node including a receiver, the method comprising:
-
generating an offset to the value of a free-running clock such that a local time reference determined as the sum of the value of the free-running clock and the generated offset is approximately synchronized to a previous timestamp in a previously received data unit containing a previous timestamp, the generating forming a determined offset; and
receiving a new data unit containing a new timestamp at the receiver;
extracting the new timestamp from the received new data unit containing the new timestamp;
updating the determined offset after the receipt of the new data unit using the extracted new timestamp and the value of the free-running clock at a known reference point in time relative to the time the new data unit was received. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27)
-
-
28. A method of transmitting a data unit containing synchronization information from a wireless node of a wireless network, the wireless node including a transmitter, the method comprising:
-
determining an offset to the value of a local free-running clock at a known reference point in time relative to the time a data unit for transmission is to be transmitted;
generating a timestamp corresponding to the sum of the value of the local free-running clock at the known reference point and the determined offset;
inserting the generated timestamp into the data unit for transmission at a known point in the data unit; and
transmitting the data unit for transmission containing the inserted timestamp. - View Dependent Claims (29, 30, 31, 32)
-
-
33. An apparatus to synchronize a clock in a wireless receiver, the apparatus comprising:
-
a free-running clock;
means for receiving a first data unit containing synchronization information;
means for copying the free-running clock contents at a known reference point in time relative to the time the data unit was received to generate a local timestamp, the copying means coupled to the free-running clock;
means for extracting the synchronization information from the received first data unit to form an extracted timestamp, the extracting means coupled to the receiving means;
means for calculating an offset to the free-running clock using the extracted timestamp and the local timestamp, the calculating means coupled to the extracting means and the copying means, such that the sum of the calculated offset and the value of the free-running clock provides a local clock value that is approximately synchronized in time. - View Dependent Claims (34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49)
-
-
50. An apparatus for transmitting a data unit containing synchronization information from a wireless node of a wireless network, the wireless node including a transmitter, the apparatus comprising:
-
a local free-running clock;
means for copying the value of the free-running clock at a known reference point in time relative to the time a data unit for transmission is to be transmitted, the means for copying coupled to the local free-running clock, the copying providing a local timestamp;
means for generating a timestamp, the generating means including means for determining an offset to the local timestamp, the timestamp corresponding to the sum of the local timestamp and the determined offset, the generating means coupled to the copying means;
means for inserting the generated timestamp into the data unit for transmission at a known point in the data unit, the inserting means coupled to the timestamp generating means; and
means for transmitting the data unit for transmission containing the inserted timestamp, the transmitting means coupled to the timestamp insertion means. - View Dependent Claims (51, 52, 53, 54)
-
-
55. A MAC controller for a wireless node of a wireless network to operate according to a MAC protocol, the MAC protocol including periodic transmission in the network of a data unit that includes synchronization information, the MAC controller comprising:
-
a MAC administrator coupled to a data link layer interface;
receive hardware coupled to the physical layer interface and to the MAC administrator, the receive hardware being to receive one or more data units including a first data unit containing synchronization information and to provide the first received data unit to the MAC administrator; and
a free-running clock coupled to the receive hardware and to the MAC administrator to provide a copy of the free running clock value to the receive hardware and to the MAC administrator, wherein the receive hardware accepts the value of the free running clock value at a known reference point in time relative to the time the first data unit was received to form a local timestamp and provides the local timestamp to the MAC administrator;
wherein the MAC administrator is to extract the synchronization information from the provided received first data unit to form an extracted timestamp, and to determine an offset to the free running clock value using the extracted timestamp and the local timestamp, such that the sum of the determined offset and the value of the free-running clock provides a local clock value that is approximately synchronized in time. - View Dependent Claims (56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74)
-
-
75. A MAC controller for a wireless station of a wireless network to operate according to a MAC protocol, the MAC controller comprising:
-
a free-running clock;
a MAC administrator coupled to a data link layer interface; and
transmit hardware coupled to the physical layer interface, to the MAC administrator, and to the free-running clock, the transmit hardware to transmit one or more data units under control of the MAC administrator, wherein the MAC administrator is to determine an offset to the value of the local free-running clock at a known reference point in time relative to the time a data unit for transmission is to be transmitted, and to provide the second offset and the data unit to the transmit hardware;
wherein the free-running clock is also to provide a copy of the free running clock value to the transmit hardware;
wherein the transmit hardware further is to accept the second data unit and the second offset from the MAC administrator and to accept the value of the free-running clock at the second known reference point in time in order to form a second local timestamp, to insert a second timestamp into the second data unit, the second timestamp value being the sum of the second offset and the second local timestamp, and to cause the physical layer interface to transmit the second data unit containing the second timestamp, the transmitting being the time the data unit for transmission is to be transmitted. - View Dependent Claims (76, 77)
-
-
78. A carrier medium carrying computer readable code segments to instruct a processor of a processing system of a wireless station of a wireless data network to carry out a time synchronization method, the carrier medium comprising
(a) one or more code segments to instruct the processor to accept a first data unit from receive hardware, the first data unit received at the receive hardware and containing synchronization information; -
(b) one or more code segments to instruct the processor to extract the synchronization information from the received first data unit; and
(c) one or more code segments to instruct the processor to determine an offset to the value of a free-running clock at a known reference point in time relative to the time the first data unit was received, the offset determining using the extracted synchronization information and the free running clock value at the known reference point, the calculating in non real-time, such that the sum of the calculated offset and the value of the free-running clock provides a local clock value that is approximately synchronized in time and monotonic in time.
-
Specification