IP Library Granted Patent US 12700918
Granted Patent B2
US 12700918 · App. 18/421,998 · Granted Aug 4, 2026

Time offset measurement method, user device, satellite channel emulator and base station

Inventor: You-En Lin (Taichung City, TW)
Assignee: Industrial Technology Research Institute
H04B7/18539H04B7/18547H04W84/06
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 12700918
App. No.
18/421,998
Granted
Aug 4, 2026
Kind
B2
Abstract

A time offset measurement method suitable for Non-Terrestrial Network includes: listening to the first downlink signal and the second downlink signal through the user device to obtain the first reception time and the second reception time; using the known interval time as the unit time length to calculate multiple satellite distance difference values corresponding to multiple unit time lengths through a satellite distance function, obtaining multiple satellite movement time variations through dividing multiple satellite distance difference values by the electromagnetic wave propagation speed, generating a satellite movement function based on each sampling time and each of the satellite movement time variations corresponding to each sampling time; setting the reception time difference to calculate the corresponding sampling time through the satellite movement function as the downlink signal reception time; and obtaining the current distance between the user device and the satellite at the second reception time according to the ephemeris data.

Claims (60)

1 . A time offset measurement method suitable for a non-terrestrial network (NTN), comprising:

listening to, by a user device, a first downlink signal from a satellite to obtain a first reception time when the first downlink signal is received, listening to a second downlink signal from the satellite to obtain a second reception time when the second downlink signal is received, wherein the first downlink signal and the second downlink signal are signals with a known interval time, wherein the second reception time minus the first reception time and the known interval time is a reception time difference variation;

using the known interval time as a unit time length to calculate a plurality of satellite distance difference values corresponding to a plurality of the unit time lengths through a satellite distance function, obtaining a plurality of satellite movement time variations through dividing the plurality of satellite distance difference values by an electromagnetic wave propagation speed, generating a satellite movement function based on each of a plurality of sampling times and each of the plurality of satellite movement time variations corresponding to each of the plurality of sampling times; wherein the satellite distance function is a function of the plurality of sampling times corresponding to a plurality of receiving distances between the user device and the satellite;

using the reception time difference variation to calculate the corresponding sampling time through the satellite movement function as a downlink signal reception time;

obtaining a current distance between the user device and the satellite at the second reception time according to an ephemeris data, and using the current distance as the receiving distance of the satellite distance function to calculate the corresponding sampling time as an ephemeris broadcast time; and

calculating a broadcast time offset value, wherein the broadcast time offset value is the downlink signal reception time plus the known interval time minus the ephemeris broadcast time.

2 . The time offset measurement method according to claim 1 , further comprising:

determining a total time length during which the user device is able to receive the first downlink signal and the second downlink signal from the satellite;

obtaining a plurality of satellite coordinates of the satellite on a known satellite orbit at the plurality of sampling times within the total time length; and

calculating the plurality of receiving distances between the user device and the satellite at the plurality of sampling times according to the plurality of satellite coordinates to generate the satellite distance function.

3 . The time offset measurement method according to claim 1 , further comprising:

obtaining a plurality of satellite coordinates of the satellite at the plurality of sampling times based on a time stamp and a satellite position data in the ephemeris data; and

calculating the plurality of receiving distances between the user device and the satellite at the plurality of sampling times according to the plurality of satellite coordinates to generate the satellite distance function.

4 . The time offset measurement method according to claim 1 , wherein a satellite control center transmits the ephemeris data to an NTN base station (BS) early or late based on the broadcast time offset value.

5 . The time offset measurement method according to claim 1 , wherein a satellite control center transmits the ephemeris data to a satellite channel emulator early or late based on the broadcast time offset value.

6 . The time offset measurement method according to claim 1 , wherein the NTN BS adjusts a value of a time stamp in the ephemeris data in advance or backwards based on the broadcast time offset value to generate an adjusted ephemeris data.

7 . The time offset measurement method according to claim 1 , wherein the user device advances or delays a value of a time stamp used when estimating a satellite position based on the broadcast time offset value.

8 . A user device, comprising:

a network interface connected to an NTN and a satellite channel emulator for listening to a first downlink signal and a second downlink signal from a satellite and receiving a broadcast time offset value; and

a processor coupled to the network interface for:

obtaining a first reception time when the network interface receives the first downlink signal, and obtaining a second reception time when the network interface receives the second downlink signal, wherein the first downlink signal and the second downlink signal are signals with a known interval time, wherein the second reception time minus the first reception time and the known interval time is a reception time difference variation;

transmitting the first reception time, the second reception time and the reception time difference variation to the satellite channel emulator through the network interface;

receiving the broadcast time offset value from the satellite channel emulator through the network interface; and

calculating a satellite position according to an ephemeris data and determining an uplink timing advance or retard time based on the broadcast time offset value.

9 . The user device according to claim 8 , wherein the satellite channel emulator receives the first reception time and the second reception time, uses the known interval time as a unit time length to calculate a plurality of satellite distance difference values corresponding to a plurality of the unit time lengths through a satellite distance function, obtains a plurality of satellite movement time variations through dividing the plurality of satellite distance difference values by an electromagnetic wave propagation speed, generates a satellite movement function based on each of a plurality of sampling times and each of the plurality of satellite movement time variations corresponding to each of the plurality of sampling times, uses a reception time difference variation to calculate the corresponding sampling time through the satellite movement function as a downlink signal reception time, obtains a current distance between the user device and the satellite at the second reception time according to the ephemeris data received from a satellite control center, uses the current distance as the receiving distance of the satellite distance function to calculate the corresponding sampling time as an ephemeris broadcast time, and calculates the broadcast time offset value;

wherein the satellite distance function is a function of the plurality of sampling times corresponding to a plurality of the receiving distances between the user device and the satellite;

wherein the broadcast time offset value is the downlink signal reception time plus the known interval time minus the ephemeris broadcast time.

10 . A satellite channel emulator comprising:

a memory disposed to store an ephemeris data;

a network interface connected to a satellite control center, a user device, and an NTN BS, disposed to receive a first reception time, a second reception time and a reception time difference variation from the user device, wherein the user device listens to a first downlink signal from a satellite to obtain the first reception time, which is a time when the first downlink signal is received, the user device listens to a second downlink signal from the satellite to obtain the second reception time, which is a time when the second downlink signal is received, wherein the first downlink signal and the second downlink signal are signals with a known interval time, wherein the reception time difference variation is the second reception time minus the first reception time and the known interval time;

a processor coupled to the memory and the network interface for:

using the known interval time as a unit time length to calculate a plurality of satellite distance difference values corresponding to a plurality of the unit time lengths through a satellite distance function, obtaining a plurality of satellite movement time variations through dividing the plurality of satellite distance difference values by an electromagnetic wave propagation speed, generating a satellite movement function based on each of a plurality of sampling times and each of the plurality of satellite movement time variations corresponding to each of the plurality of sampling times; wherein the satellite distance function is a function of the plurality of sampling times corresponding to a plurality of receiving distances between the user device and the satellite;

using the reception time difference variation to calculate the corresponding sampling time through the satellite movement function as a downlink signal reception time;

obtaining a current distance between the user device and the satellite at the second reception time according to the ephemeris data, and using the current distance as the receiving distance of the satellite distance function to calculate the corresponding sampling time as an ephemeris broadcast time; and

calculating the broadcast time offset value, wherein the broadcast time offset value is the downlink signal reception time plus the known interval time minus the ephemeris broadcast time.

11 . The satellite channel emulator according to claim 10 , wherein the user device determines a total time length during which the user device is able to receive the first downlink signal and the second downlink signal from the satellite, wherein the processor is further disposed to:

receive the total time length from the user device through the network interface;

obtain a plurality of satellite coordinates of the satellite on a known satellite orbit at the plurality of sampling times within the total time length; and

calculate the plurality of receiving distances between the user device and the satellite at the plurality of sampling times according to the plurality of satellite coordinates to generate the satellite distance function.

12 . The satellite channel emulator according to claim 10 , wherein the processor is further disposed to:

obtain a plurality of satellite coordinates of the satellite at the plurality of sampling times based on a time stamp and a satellite position data in the ephemeris data; and

calculate the plurality of receiving distances between the user device and the satellite at the plurality of sampling times according to the plurality of satellite coordinates to generate the satellite distance function.

13 . The satellite channel emulator according to claim 10 , wherein the processor is further disposed to:

transmit the broadcast time offset value to the satellite control center, and notify the satellite control center to transmit the ephemeris data to the NTN BS early or late based on the broadcast time offset value.

14 . The satellite channel emulator according to claim 10 , wherein the processor is further disposed to:

transmit the broadcast time offset value to the satellite control center, and notify the satellite control center to transmit the ephemeris data to the network interface early or late based on the broadcast time offset value.

15 . The satellite channel emulator according to claim 10 , wherein the processor is further disposed to:

transmit the broadcast time offset value to the NTN BS, and notify the NTN BS to adjust a time stamp in the ephemeris data in advance or backwards based on the broadcast time offset value to generate an adjusted ephemeris data.

16 . The satellite channel emulator according to claim 10 , wherein the processor is further disposed to:

notify the user device to calculate the satellite position according to the ephemeris data and determine an uplink timing advance or retard time based on the broadcast time offset value.

17 . A base station (BS) suitable for an NTN, comprising:

a memory disposed to store an ephemeris data;

a network interface connecting a satellite control center and a satellite channel emulator, and disposed to receive the ephemeris data from the satellite control center and a broadcast time offset value from the satellite channel emulator; and

a processor coupled to the memory and the network interface to obtain the ephemeris data and the broadcast time offset value, and adjusting a time stamp in the ephemeris data forward or backwards based on the broadcast time offset value to generate an adjusted ephemeris data,

wherein a user device listens to a first downlink signal from a satellite to obtain a first reception time, which is a time when the first downlink signal is received, the user device listens to a second downlink signal from the satellite to obtain a second reception time, which is a time when the second downlink signal is received, wherein the first downlink signal and the second downlink signal are signals with a known interval time,

wherein the satellite channel emulator uses the known interval time as a unit time length to calculate a plurality of satellite distance difference values corresponding to a plurality of the unit time lengths through a satellite distance function, obtains a plurality of satellite movement time variations through dividing the plurality of satellite distance difference values by an electromagnetic wave propagation speed, and generates a satellite movement function based on each of a plurality of sampling times and each of the plurality of satellite movement time variations corresponding to each of the plurality of sampling times,

wherein the satellite distance function is a function of the plurality of sampling times corresponding to a plurality of receiving distances between the user device and the satellite.

18 . The NTN BS according to claim 17 , wherein the satellite channel emulator receives the first reception time and the second reception time from the user device, wherein the second reception time minus the first reception time and the known interval time is a reception time difference variation,

wherein the satellite channel emulator uses a reception time difference variation to calculate the corresponding sampling time through the satellite movement function as a downlink signal reception time, obtains a current distance between the user device and the satellite at the second reception time according to the ephemeris data, uses the current distance as a receiving distance of the satellite distance function to calculate the corresponding sampling time as an ephemeris broadcast time, and calculates the broadcast time offset value;

wherein the broadcast time offset value is the downlink signal reception time plus the known interval time minus the ephemeris broadcast time.