**Advertisement**

By a

Patent number 8629791 is assigned to

The following quote was obtained by the news editors from the background information supplied by the inventors: "A. Technical Field

"The present invention pertains generally to data processing, and relates more particularly to data compression and decompression.

"B. Background of the Invention

"Data compression is the encoding of a data set so that fewer bits are necessary to represent the encoded data. Data compression is important for data communication, because the smaller compressed data sets require fewer resources for storage and also require less bandwidth for data transmission than would be required for the original uncompressed data sets.

"Efficient data compression should address key issues. For example, it is possible to employ a data compression scheme that will result in information loss as the data are encoded. To maintain precision, a lossless data compression scheme is required. Data compression processing may require a large amount of computing resources such as memory, and the computing resources requirement may not scale when large data sets are being compressed. It is important for an application to employ efficient data compression methods in order to avoid excessive computing resources requirements.

"In order to use data in a compressed data set, the compressed data set must first be decompressed (decoded). Data decompression is based on the same scheme that was used for data compression. In a typical communication system, a client device performs data compression on a transmitted compressed data package that it has received. Recently, a large variety of consumer electronics devices are being used as client devices, and these devices have limited computing resources. It is important that a data decompression scheme be both lossless and efficient to enable the widest variety of client devices to be used in data communication."

In addition to the background information obtained for this patent, VerticalNews journalists also obtained the inventor's summary information for this patent: "Embodiments of the present invention enable compression and decompression of data. Applications of the present invention are its use in embodiments of systems for compression and decompression of GPS long-term Ephemeris (LTE) data, although the present invention is not limited to such applications. In embodiments, the LTE data may be grouped so that each group contains the data values of a parameter that are taken at different recording timings for a given satellite. In embodiments, the ordered data set associated with each group may be compressed individually according to a compression scheme based on the distribution of the values within the group. In embodiments, an ordered data set may be compressed by using a multi-order differencing scheme. In such a scheme, a set of the differences may be compressed instead of the original values because the differences have much smaller magnitudes than the original values. More than one level (order) of differences may be applied to a data set. In embodiments, a multi-order differencing scheme determines how many levels (orders) of differencing may be applied to an original data set before it is compressed. In embodiments, the particular scheme being applied may be determined by data type, parameter type, and distribution of the original or difference values. In embodiments, the original data may be recovered from a compressed data set based on the type of multi-order differencing scheme used to generate the compressed data.

"In embodiments, a method for compressing GPS LTE data may comprise grouping the GPS LTE data per parameter with data values of the corresponding parameter taken at different timings, designating a set of original data values for a parameter in the GPS LTE data to associate with a multi-ordered difference scheme, and using such scheme to compress the set of data values.

"The method may further comprise determining other values including one or more reference values, a set of first-order difference values, a set of second-order difference values, a set of third-order difference values, and/or a set of third-order difference values. The method may further comprise determining bit lengths, each of which encodes one or more of the determined values. The method may further comprise storing a compressed data record that includes some or all of the determined values and bit lengths.

"In some embodiments, the parameter associated with the multi-order difference scheme includes one or more of the following: 'health', 'uraidx', 'Omega0', 'af0', 'af1', 'e', 'm0', 'asqrt', 'omega', 'crs', 'crc', 'cus', 'cuc', 'cis', 'cic', 'omegadot', 'deltan', 'idot', and 'i0'.

"The present invention may further be embodied in a method for compressing a long-term Ephemeris (LTE) data, the method including: grouping the LTE data parameter with data values of the corresponding parameter taken at different timings; designating a set of original data values for a parameter in the LTE data to associate with a multi-order difference scheme; and using the multi-order difference scheme associated with the parameter to compress the set of original data values.

"This method may further include: determining a reference value, the reference value being an original value of the parameter; determining a set of first-order difference values, the first-order difference values being difference values between neighboring original values of the parameter; determining a reference value bit length to encode the reference values; determining a difference value bit length to encode the first-order difference values; and storing a compressed data record, the compressed data record including the reference value bit length, the difference value bit length, the reference value, and the set of first-order difference values; wherein the parameter associated with the multi-order difference scheme includes a value of either 0 or 1.

"This method may further include: determining a first reference value, the first reference value being an original value of the parameter; determining a set of first-order difference values, the first-order difference values being difference values between neighboring original values of the parameter; determining a second reference value, the second reference value being a first-order difference value within the set of first-order difference values; determining a set of second-order difference values, the second-order difference values being difference values between neighboring first-order difference values of the parameter; determining a first reference value bit length to encode the first reference value; determining a second reference value bit length to encode the second reference value; determining a second-order difference value bit length to encode the second-order difference values; and storing a compressed data record, the compressed data record including the first reference value bit length, the second reference value bit length, the second-order difference value bit length, the first reference value, the second reference value, and the set of first-order difference values; wherein the parameter associated with the multi-order difference scheme includes values which are smaller than a prescribed value and distributed within a prescribed range.

"Alternatively, the present method may include: determining a first reference value, the first reference value being an original value of the parameter; determining a set of first-order difference values, the first-order difference values being difference values between neighboring original values of the parameter; determining a second reference value, the second reference value being one of the first-order difference values of the parameter; determining a set of second-order difference values, the second-order difference values being difference values between neighboring first-order difference values of the parameter; determining a second-order difference value bit length to encode the second-order difference values; designating a bit length associated with the parameter as the bit length for the first reference value and the second reference value; and storing a compressed data record, the compressed data record including the bit length for the first and second reference values, the second-order difference value bit length, the first reference value, the second reference value, and the set of second-order difference values; wherein the parameter associated with the multi-order difference scheme includes values which are distributed within straight line segment having different magnitudes.

"Further alternatively, the present method may include: determining a first reference value, the first reference value being an original value of the parameter; determining a set of first-order difference values, the first-order difference values being difference values between neighboring original values of the parameter; determining a set of second-order difference values, the second-order difference values being difference values between every two first-order difference values of the parameter; determining a second reference value and a third reference value, the second reference value and the third reference value being first-order difference values within the set of first-order difference values; determining a second-order difference value bit length to encode the second-order difference values; designating a bit length associated with the parameter as the bit length for the first reference value; determining a bit length for the second reference value and the third reference value; and storing a compressed data record, the compressed data record including the bit length for the first reference value, the bit length for the second and third reference values, the second-order difference value bit length, the first reference value, the second reference value, the third reference value, and the set of second-order difference values; wherein the parameter associated with the multi-order difference scheme includes values which are distributed within two interlaced straight lines having different magnitudes whose difference is smaller than a prescribed value.

"The preferred method may also include: determining a first reference value, the first reference value being an original value of the parameter; determining a set of first-order difference values, the first-order difference values being difference values between neighboring original values of the parameter; determining a second reference value, the second reference value being a first-order difference value within the set of first-order difference values; determining a set of second-order difference values, the second-order difference values being difference values between the second reference value and the first-order difference values of the parameter; determining a set of third-order difference values, the third-order difference values being difference values between every two second-order difference values; determining a third reference value and a fourth reference value, the third and fourth reference values being designated from the set of second-order difference values; determining a set of fourth-order difference values, the fourth-order difference values being difference values between every four third-order difference values; determining fifth, sixth, seventh, and eighth reference values designated from the set of third-order difference values; determining a fourth-order difference value bit length to encode the fourth-order difference values; designating a bit length associated with the parameter as the bit length for the first reference value; determining a bit length for the second reference value and the third reference value, and determining a bit length for the fifth, sixth, seventh, and eighth reference values; and storing a compressed data record, the compressed data record including the bit length for the first reference value, the bit length for the second and third reference values, the bit length for the fifth, sixth, seventh, and eighth reference values, the fourth-order difference value bit length, the first through the eighth reference values, and the set of fourth-order difference values; wherein the parameter associated with the multi-order difference scheme includes values which are distributed within two interlaced straight lines having different magnitudes whose difference is not smaller than the prescribed value.

"Alternatively, the preferred method may include: designating four original values as first, second, third, and fourth reference values; determining a set of first-order difference values, the first order difference values being difference values between every four original values of the parameter; designating four first-order difference values within the set of first-order difference values as fifth, sixth, seventh, and eighth reference values, respectively; determining a set of second-order difference values, the second-order difference values being difference values between every four first-order difference values within the set of the first-order difference values; designating a second-order difference value as a ninth reference value; determining a set of third-order difference values, the third-order difference values being difference values between neighboring second-order difference values; determining a third-order difference value bit length to encode the third-order difference values; designating a bit length associated with the parameter as the bit length for the first, second, third, and fourth reference values; determining a bit length for the fifth, sixth, seventh, and eighth reference values; determining a bit length for the ninth reference value; and storing a compressed data record, the compressed data record including the bit length for the first, second, third and fourth reference values, the bit length for the fifth, sixth, seventh and eighth reference values, the bit length for the ninth reference value, the third-order difference value bit length, the first through the ninth reference values, and the set of third-order difference values; wherein the parameter associated with the multi-order difference scheme includes values which are distributed within four interlaced sine curves.

"The present invention may further be embodied in an apparatus for compressing a long-term Ephemeris (LTE) data, the apparatus including: grouping section that groups the LTE data parameter with data values of the corresponding parameter taken at different timings; designating section that designates a set of original data values for a parameter in the LTE data to associate with a multi-order difference scheme; and compressing section that compresses the LTE using the multi-order difference scheme associated with the parameter to compress the set of original data values.

"The present invention may further be embodied in an apparatus for decompressing a long-term Ephemeris (LTE) data, the apparatus including: a value extractor that extracts at least one reference value and a set of difference values from the compressed data record; and a value calculator that calculates an uncompressed set of data values based on the at least one reference value and the set of difference values.

"Some features and advantages of the invention have been generally described in this summary section; however, additional features, advantages, and embodiments are presented herein or will be apparent to one of ordinary skill in the art in view of the drawings, specification, and claims hereof. Accordingly, it should be understood that the scope of the invention shall not be limited by the particular embodiments disclosed in this summary section."

URL and more information on this patent, see: Xiao, Jing. Data Compression by Multi-Order Differencing. U.S. Patent Number 8629791, filed

Keywords for this news article include: Information Technology,

Our reports deliver fact-based news of research and discoveries from around the world. Copyright 2014, NewsRx LLC