The present invention relates to a Global Navigation Satellite System (GNSS) receiving scheme, and more particularly, to a receiver and related method for synchronizing data segments transmitted by a GNSS signal.
Generally speaking, a GNSS receiver, such as a GPS (Global Positioning System) receiver, is utilized for receiving navigation data carried by GNSS signals transmitted from various satellites. The GNSS receiver can therefore be located at once according to the received navigation data from the different satellites. Using a GPS receiver as an example, after receiving a GPS signal, it is necessary for the GPS receiver to demodulate the GPS signal and to perform bit synchronization upon the demodulated GPS signal to generate a bit stream. The GPS receiver then performs subframe synchronization upon the bit stream to generate subframes by using preamble bits in the bit stream, so the navigation data can be identified from information carried by the subframes.
However, there exists a problem. Preamble bits in a subframe are positioned before the other bits in the subframe; that is, the preamble bits are starting bits of the subframe. Moreover, in GPS the preamble bits are eight bits and therefore only account for a very small part of the subframe, which has 300 bits. If the GPS receiver misses the preamble bits after it is powered on, it may need to wait several seconds in order to receive the next preamble bits of the next subframe for subframes synchronization. For example, under the worst condition, if the GPS receiver misses the preamble bits due to any bit error of the preamble bits, it is necessary for the GPS receiver to wait almost six seconds to receive the next preamble bits since the required transmission time for each word is equal to 0.6 second and each subframe has ten words. Therefore, the traditional subframe synchronization scheme of a GPS receiver is inefficient. Under this situation, users experience longer time to wait for the first fix after powering on the GPS receiver.
It is therefore one of the objectives of the present invention to provide a receiver and related method for synchronizing data segments (subframes) transmitted via a GNSS signal by comparing a reference time data with TOW bits, to solve the above-mentioned problem.
According to an embodiment of the claimed invention, a method for synchronizing data segments transmitted by a Global Navigation Satellite System (GNSS) signal is disclosed. Each of the data segments has a plurality of data units including a data unit containing a plurality of bit positions defined for carrying time information. The method comprises: identifying a specific data unit from a specific data segment; and comparing a reference time data with a plurality of bits of the specific data unit at the bit positions to synchronize the data segments in the GNSS signal.
According to an embodiment of the claimed invention, a receiver for synchronizing data segments transmitted by a GNSS signal is disclosed. Each of the data segments has a plurality of data units including a data unit containing a plurality of bit positions defined for carrying time information. The receiver comprises a data unit checking circuit and a synchronization circuit. The data unit checking circuit is utilized for identifying a specific data unit from a specific data segment. The synchronization circuit is coupled to the data unit checking circuit and utilized for comparing a reference time data with a plurality of bits of the specific data unit at the bit positions to synchronize the data segments in the GNSS signal.
These and other objectives of the present invention will no doubt become obvious to those of ordinary skill in the art after reading the following detailed description of the preferred embodiment that is illustrated in the various figures and drawings.
Certain terms are used throughout the description and following claims to refer to particular components. As one skilled in the art will appreciate, electronic equipment manufacturers may refer to a component by different names. This document does not intend to distinguish between components that differ in name but not function. In the following description and in the claims, the terms “include” and “comprise” are used in an open-ended fashion, and thus should be interpreted to mean “include, but not limited to . . . ”. Also, the term “couple” is intended to mean either an indirect or direct electrical connection. Accordingly, if one device is coupled to another device, that connection may be through a direct electrical connection, or through an indirect electrical connection via other devices and connections.
Please refer to
In this embodiment, the GNSS signal is a GPS signal, and the data segments are subframes. The data units are words in the subframes, and the time information is meant to be a time of week (TOW) count message. That is, the specific data unit is a hand over word (HOW) word, and the value represented by the bits of the specific data unit at the bit positions is meant to be a value represented by the TOW count message (i.e. TOW bits) in the HOW word. The method disclosed in this description, of course, can also be applied to other GNSS receivers based on the GLONASS navigation system, Beidou navigation system, Galileo positioning system, or other current and proposed global navigation systems. These applications also obey the spirit of the present invention.
As regards GPS navigation data, a frame in the GPS navigation data is comprised of five kinds of subframes, where each of the subframes includes a telemetry (TLM) word including preamble bits, an HOW word, and other words defining various satellite orbit parameters. Please refer to
Please refer to
The subframe integrity check(s) is/are used for checking to see if the created synchronizer A/B certainly records the bit positions of the preamble/TOW bits in the bit stream. This is because information carried by the GPS signal may be erroneous due to noise. Without the subframe integrity check(s), this may cause a bit value represented by the information erroneously to become the value represented by the preamble bits or the TOW bits. Accordingly, by the subframe integrity check(s), it can be ensured that the created synchronizer A/B records the bit positions of the preamble/TOW bits in the bit stream instead of positions of bits represented by any erroneous information. Taking an example of the subframe integrity check(s) for the synchronizer A, the GNSS receiver 100 records TOW bits in a word next to the specific word (i.e. the TLM word) and then checks to see if bits of the next subframe at the same bit positions, which are recorded by the synchronizer A, match the preamble bits. Since the created synchronizer A means that the specific word is a TLM word, bit positions of TOW bits in a next subframe can be located. The GNSS receiver 100 can also check to see if a value represented by the TOW bits of the next subframe is equal to one plus the value represented by the recorded TOW bits in the current subframe.
Similarly, when performing the subframe integrity check(s) for the synchronizer B, the GNSS receiver 100 can check to see if a value represented by the WN bits is valid for subframe 1. The GNSS receiver 100 also checks to see if bits of a next subframe at a starting position match the preamble bits and checks to see if a value represented by the TOW bits of the next subframe is equal to one plus the value represented by the TOW bits that are recorded by the GNSS receiver 100. Of course, these subframe integrity checks mentioned above are not intended to be limitations of the present invention. Other different subframe integrity checks can also be applied to this embodiment. Additionally, the subframe integrity check(s) is/are flexible and therefore can be modified or excluded from the above-described Steps.
It should be noted that the above-mentioned reference time data in this embodiment is the result of a collaboration between the internal timing source 120 and the time translator 125. The internal timing source 120 provides a reference clock to generate reference clock information, and the time translator 125 translates the reference clock information into the reference time data. For example, the reference clock can be an RTC (real time clock) oscillating circuit, and the reference clock information is real-time; the time translator 125 translates the real-time outputted from the RTC oscillating circuit into the reference time data. However, in another embodiment, the internal timing source 120 can be excluded from the internal time data generator 115. Required reference clock information is retrieved from an external timing source (for example, from an internet server or a base station of a wireless network) to the GNSS receiver 100, and the time translator 125 translates the retrieved reference clock information into reference time data. Of course, in other embodiments, if an external time data generator (not in the GNSS receiver 100) able to generate reference time data directly exists, the internal time data generator 115 is not required and therefore can be excluded from the GNSS receiver 100. The GNSS receiver 100 will directly retrieve the reference time data from the external time data generator.
Those skilled in the art will readily observe that numerous modifications and alterations of the device and method may be made while retaining the teachings of the invention.