Method, apparatus, and system for signal prediction
First Claim
1. A method of predicting data comprising:
- receiving data including a plurality of received subframes;
predicting future data based on at least the received data;
storing the predicted future data; and
incrementing a timestamp associated with one among the plurality of received subframes by a predetermined value.
1 Assignment
0 Petitions
Accused Products
Abstract
An apparatus, method, and system for predicting subframes of Global Positioning System (GPS) signals. The apparatus include a processor capable of determining whether a subframe is an almanac subframe, setting a timehead and adding it to a time-of-week (TOW), setting a telemetry (TLM) message based on value of the TOW, generating a Cyclic Redundancy Code (CRC) for a predicted subframe, and a memory for storing the predicted subframe. The memory may vary in size based on the number of predicted subframes. The processor is further capable of determining whether the value of the TOW is less than the number of seconds in a week, calculating a position of the predicted subframe in the memory, and setting a valid flag.
-
Citations
38 Claims
-
1. A method of predicting data comprising:
-
receiving data including a plurality of received subframes;
predicting future data based on at least the received data;
storing the predicted future data; and
incrementing a timestamp associated with one among the plurality of received subframes by a predetermined value. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
testing a fixed string of received data; and
correcting the tested fixed string if the test indicates that such correction is necessary.
-
-
4. The method of predicting data according to claim 3, wherein the timestamp has a predetermined maximum value, the method further including:
-
detecting that the timestamp is at the predetermined maximum value; and
correcting the timestamp in response to detecting that the timestamp is at the predetermined maximum value.
-
-
5. The method of predicting data according to claim 1, wherein the predicted future data includes parity bits, the method further including:
recalculating the parity bits of the predicted future data based on the state of the other bits in the predicted future data.
-
6. The method of predicting data according to claim 1, wherein the predicted future data includes checksum bits, the method further including:
regenerating the checksum bits of the predicted future data based on the state of the other bits in the predicted future data.
-
7. The method of predicting data according to claim 1, wherein storing the predicted future data includes storing the predicted future data in a predetermined location of a buffer.
-
8. The method of predicting data according to claim 7, wherein storing the predicted future data further includes selecting said predetermined location based on the incremented timestamp.
-
9. The method of claim 1, wherein the incrementing a timestamp associated with one among the plurality of received subframes by a predetermined value is performed after said storing the predicted future data.
-
10. The method of claim 1, wherein the incrementing a timestamp associated with one among the plurality of received subframes by a predetermined value is perform contemporaneously with at least on of said receiving, storing, and predicting.
-
11. A method of providing predicted data, said method comprising:
-
receiving data from a transmitter;
incrementing a timestamp associated with the received data by a predetermined value predicting future data based on the received data with incremented timestamp;
storing the predicted future data to a buffer;
receiving a prediction request defining a time interval;
obtaining predicted future data corresponding to the time interval from the buffer; and
transmitting the predicted future data.
-
-
12. A method comprising:
-
receiving a subframe of a GPS signal;
storing the received subframe in a buffer; and
predicting a next corresponding subframe by changing a TOW and regenerating a CRC of the received subframe; and
incrementing a timestamp associated with the received subframe by a predetermined value. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. An apparatus comprising:
-
a processor capable of;
receiving a subframe of a GPS signal;
storing the received subframe in a buffer; and
predicting a next corresponding subframe by changing a TOW and regenerating a CRC of the received subframe; and
a memory for storing the predicted subframe. - View Dependent Claims (19, 20, 21, 22, 23)
-
-
24. A method of predicting subframes of GPS signals, comprising:
-
determining whether a subframe is an almanac subframe;
setting a timehead based on whether the subframe is an almanac subframe;
adding the set timehead to TOW;
setting a TLM message based on a value at the TOW;
generating a CRC for a predicted subframe; and
storing the predicted subframe in a buffer. - View Dependent Claims (25, 26, 27, 28)
-
-
29. A method of updating almanac data of an SV at a central site, comprising:
-
extracting a page ID of a subframe;
determining whether the page ID is valid based on a first criteria;
extracting old and new TOWs from a buffer based on the validity of the page ID based on the first criteria;
determining whether the old TOW and a last almanac update time are the same;
resetting an almanac update table based on whether the old TOW and the last almanac update time are the same;
determining whether the new TOW and the last almanac time are the same;
ending the almanac update process based on whether the new TOW and the last almanac update time are the same;
determining whether the page ID is valid based on second criteria;
ending the almanac update process based on whether the page ID is valid based on the second criteria;
determining whether the subframe is valid in the almanac update table;
storing the subframe in the almanac update table, setting a valid flag for the subframe, and beginning a subframe prediction process based on whether the subframe is valid in the almanac update table; and
extracting all valid subframe from the almanac update table and substituting words 2-10 in the predicted subframes for this SV and performing the subframe prediction process based on whether the subframe is valid in the almanac update table.
-
-
30. A method of determining whether a subframe prediction is feasible at a central site, comprising:
-
receiving a subframe from an SV;
determining whether a certain bit of a word of the subframe is zero;
storing the subframe in a buffer if it is determined that the bit of the word is zero;
inverting all bits in the received subframe and storing them in the buffer if it is determined that the bit of the word is not zero;
determining whether a subframe header is valid;
ending the process and waiting for a next subframe based on whether the subframe header is valid;
checking CRC validity for all words;
ending the process and waiting for the next subframe based on whether the CRC for all the words is valid;
checking a TLM message to see if it is different from a last TLM message received;
setting the TLM message as a regular TLM message based on whether the TLM message is different from the last TLM received;
storing the TLM message as the last TLM message received;
determining whether there is a valid prediction for this subframe;
performing a subframe prediction based on whether there is a valid prediction for this subframe;
determining whether there received and predicted TOW match;
performing the subframe prediction based on whether the received and predicted TOW match;
determining whether the is a perfect match between the received and predicted subframes based on whether the received and predicted TOW match;
determining an errorcode and logging an error based on whether there is a perfect match between the received and the predicted subframes;
determining whether the subframe is an almanac subframe;
performing an almanac update based on whether the subframe is an almanac subframe; and
performing the subframe prediction.
-
-
31. An apparatus for predicting subframes of GPS signals at a central site, comprising:
-
a processor capable of;
determining whether a subframe is an almanac subframe;
setting a timehead based on whether the subframe is an almanac subframe;
adding the set timehead to a TOW;
setting a TLM message based on a value of the TOW;
generating a CRC for a predicted subframe; and
a memory for storing the predicted subframe. - View Dependent Claims (33, 34, 35)
-
-
32. An apparatus for predicting subframes of GPS signals of 31, wherein a size of the memory may vary based on a number of predicted subframes.
-
36. An apparatus for updating almanac data of an SV at a central site, comprising:
-
a memory for storing subframes; and
a processor capable of;
extracting a page ID of a subframe;
determining whether the page ID is valid based on a first criteria;
extracting old and new TOWs from a buffer based on a validity of the page ID based on the first criteria;
determining whether the old TOW and a last almanac update time are the same;
resetting an almanac update table based on whether the old TOW and the last almanac update time are the same;
determining whether the new TOW and the last almanac time are the same;
ending the almanac update process based on whether the new TOW and the last almanac update time are the same;
determining whether the page ID is valid based on a second criteria;
ending the almanac update process based on whether the page ID is valid based on the second criteria;
determining whether the subframe is valid in the almanac update table;
storing the subframe in the almanac update table, setting a valid flag for the subframe, and beginning a subframe prediction it process based on whether the subframe is valid in the almanac update table; and
extracting all valid subframe from the almanac update table and substituting words 2-10 in the predicted subframes for this SV and performing the subframe prediction process based on whether the subframe is valid in the almanac update table.
-
-
37. An apparatus for determining whether a subframe prediction is feasible at a central site, comprising:
-
a memory for storing subframes; and
a processor capable of;
retrieving a subframe from the memory;
determining whether a certain bit of a word in the subframe is zero;
storing the subframe back into the memory if it is determined that the bit of the word is zero;
inverting all bits in the retrieved subframe and storing them back into the memory if it is determined that the bit of the word is not zero;
determining whether a subframe header is valid;
ending the process and waiting for a next subframe based on whether the subframe header is valid;
checking CRC validity for all words;
ending the process and waiting for the next subframe based on whether the CRC for all the words is valid;
checking a TLM message to see if it is different from a last TLM message received;
setting the TLM message as a regular TLM message based on whether the TLM message is different from the last TLM received;
storing the TLM message in the memory as the last TLM message received;
determining whether there is a valid prediction for this subframe;
performing subframe prediction based on whether there is a valid prediction for this subframe;
determining whether the received and predicted TOW match;
performing the subframe prediction based on whether the received and predicted TOW match;
determining whether there is a perfect match between the received and predicted subframes based on whether the received and predicted TOW match;
determining an errorcode and logging an error based on whether there is a perfect match between the received and the predicted subframes;
determining whether the sub frame is an almanac subframe;
performing an almanac update based on whether the subframe is an almanac subframe; and
performing the subframe prediction.
-
-
38. A system comprising:
-
a receiver to receiver GPS signals and to transmit information;
a processor capable of;
receiving the information from the receiver including a subframe of a GPS signal;
storing the receive subframe in a buffer; and
predicting a next corresponding subframe by changing a TOW and regenerating a CRC of the received subframe; and
a memory for storing the predicted subframe.
-
Specification