IP Library › Granted Patent US 10,326,629
Granted Patent B2
US 10,326,629 · App. 15/783,198 · Granted Jun 18, 2019

System and method for encoding and decoding data

Inventor: Naman Rajiv Mody (Bangalore, IN)
Assignee: SASKEN TECHNOLOGIES LTD
H04L27/2627H03M13/015H03M13/611H04L27/04H04L27/20H04L27/3433H04L27/3488
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 10,326,629
App. No.
15/783,198
Granted
Jun 18, 2019
Kind
B2
Abstract

A method for encoding K bits of data, wherein K is a multiple of N is provided. The method includes a first step of mapping N consecutive bits of the K bits of data, starting from either its least significant bit or its most significant bit, to a point within a quadrant out of 2 N quadrants of an N-dimensional space. The method includes a second step of mapping the subsequent contiguous N consecutive bits of the K bits of data, to a point within a sub-quadrant out of 2 N quadrants of the N dimensional space within the previous quadrant. The method includes repeating the second step until all K bits of data have been mapped. The method includes a third step of obtaining N coordinate values of N consecutive bits of the data mapped last, wherein the N coordinate values represent the encoded code word for the K bits of data.

Claims (83)

1. A method of encoding K bits of data, using a constellation encoder, wherein K is a multiple of N where N is any positive integer greater than 1, the method comprising:

a first step of mapping N consecutive bits of the K bits of data, starting from either its least significant bit (LSB) or its most significant bit (MSB), to a point within a quadrant out of 2 N quadrants of an N-dimensional space;

a second step of mapping the subsequent contiguous N consecutive bits of the K bits of data, to a point within a sub-quadrant out of 2 N quadrants of the N dimensional space within the previous quadrant;

repeating the second step until all K bits of data have been mapped; and

a third step of obtaining N coordinate values of N consecutive bits of the data mapped last, wherein the N coordinate values represent the encoded code word for the K bits of data.

2. The method of claim 1 , wherein N consecutive bits of the K bits of data starting either from the LSB or MSB or the subsequent contiguous N bits of data are mapped to a point in N dimensional space, wherein the coordinates of the point comprise N real values.

3. A method of modulating one or more carrier signals wherein the method comprises modulating one or more of an amplitude and a phase of the one or more carrier signals, proportional to the values of the encoded code word of claim 1 .

4. The method of claim 3 , wherein the number of signals modulated is equal in number to half of N wherein N is even.

5. The method of claim 3 , wherein the number of signals modulated is equal to a number that is half of a number that is one greater than N, wherein N is an odd number.

6. The method of claim 3 , wherein the number of signals modulated is equal to N wherein the amplitude and phase of the N signals are proportional to the values of the coordinates of two contiguous N consecutive bits of the K bits of data, wherein N is an odd number.

7. The method of transmitting K bits of data wherein the method comprises driving one or more antennae with the one or more modulated carrier signals of claim 3 .

8. A method of retrieving K bits of data, using a constellation decoder, from the encoded code word transmitted according to claim 7 , wherein the method comprises the steps of:

a. receiving the N signal values; wherein the received N signal values are modulated signals using the encoded code word for the K bits of data;

b. determining N signs of the received N signal values; wherein the N signs are determined in a sequence received;

c. using the pattern of the signs in the sequence, determining a quadrant of an N dimensional space determined by the pattern of signs;

d. de-mapping the determined quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space for determining first N bits of K bits of data;

e. comparing each signal value with a corresponding predetermined threshold and based on the results of the comparison determining a sub-quadrant of the quadrant determined in step d;

f. de-mapping the determined sub-quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space for determining subsequent N bits of K bits of data;

g. determining new threshold values for comparing the signal values based on the sub-quadrant previously determined,

h. comparing the signal values with the new threshold values;

i. determining a sub-quadrant of the previous sub-quadrant based on the results of the comparisons;

j. de-mapping the determined sub-quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space; and

k. repeating the steps g, h, i, and j until all K bits are retrieved.

9. A method of retrieving K bits of data, using a constellation decoder, from the encoded code word transmitted according to claim 7 , wherein the method comprises the steps of:

a. receiving the N signal values; wherein the received N signal values are modulated signals using the encoded code word for the K bits of data;

b. determining N signs of the received N signal values; wherein the N signs are determined in a sequence received;

c. using the pattern of the signs in the sequence, determining a quadrant of an N dimensional space determined by the pattern of signs;

d. de-mapping the determined quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space for determining first N bits of K bits of data;

e. modifying the values of the signals such that a point in N dimensional space defined by coordinates having the value with their respective signs is transposed to a quadrant of the N dimensional space having all N coordinates being positive,

f. comparing the modified amplitudes with predefined threshold values to determine a sub-quadrant of N dimensional space within the quadrant of N dimensional space with all N coordinates being positive;

g. de-mapping the determined quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space

h. repeating the steps e, f, and g in sequence, ((K/N)−1) times to retrieve all the K bits.

10. A method of retrieving K bits of data, using a constellation decoder, from the encoded code word transmitted according to claim 7 , wherein the method comprises the steps of:

a. receiving the N signal values; wherein the received N signal values are modulated signals using the encoded code word for the K bits of data;

b. determining N signs of the received N signal values; wherein the N signs are determined in a sequence received;

c. using the pattern of the signs in the sequence, determining a quadrant of an N dimensional space determined by the pattern of signs;

d. de-mapping the determined quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space for determining first N bits of K bits of data;

e. based on the signal values along with their signs, calculating new threshold values;

f. comparing the signal values with the new threshold values to determine a sub-quadrant of N dimensional space within the previous quadrant to which the point belongs;

g. de-mapping the determined quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space;

h. repeating the steps e, f, and g in sequence (K/N−1) times for retrieving all the K bits.

11. Apparatus for encoding data for communication to a receiver, the apparatus comprising:

a constellation encoder configured for encoding K bits of data, wherein K is a multiple of N where N is any positive integer greater than 1, and, wherein the constellation encoder is configured for:

performing a first step of mapping N consecutive bits of the K bits of data, starting from either its least significant bit (LSB) or its most significant bit (MSB), to a point within a quadrant out of 2 N quadrants of an N-dimensional space;

performing a second step of mapping the subsequent contiguous N consecutive bits of the K bits of data, to a point within a sub-quadrant out of 2 N quadrants of the N dimensional space within the previous quadrant;

repeating the second step until all K bits of data have been mapped; and

performing a third step of obtaining N coordinates of N consecutive bits of the data mapped last, wherein the N coordinate values represent the encoded code word for the K bits of data.

12. The apparatus of claim 11 , wherein N consecutive bits of the K bits of data starting either from the LSB or MSB or the subsequent contiguous N bits of data are mapped to a point in N dimensional space, wherein the coordinates of the point comprise N real values.

13. The apparatus of claim 11 , further comprising a modulator configured for modulating one or more carrier signals wherein the method comprises modulating one or more of an amplitude and a phase of the one or more carrier signals, proportional to the values of the encoded code word of claim 11 .

14. The apparatus of claim 11 , wherein the number of signals modulated is equal in number to half of N wherein N is even.

15. The apparatus of claim 11 , wherein the number of signals modulated is equal to a number that is half of a number that is one greater than N, wherein N is an odd number.

16. The apparatus of claim 11 , wherein the number of signals modulated is equal to N wherein the amplitude and phase of the N signals are proportional to the values of the coordinates of two contiguous N consecutive bits of the K bits of data, wherein N is an odd number.

17. The apparatus of transmitting K bits of data by driving one or more antennae with the one or more modulated carrier signals of claim 13 .

18. An apparatus for retrieving K bits of data from the encoded code word transmitted according to claim 17 , wherein the apparatus comprises a receiver configured for:

a. receiving the N signal values; wherein the received N signal values are modulated signals using the encoded code word for the K bits of data;

b. determining N signs of the received N signal values; wherein the N signs are determined in a sequence received;

c. using the pattern of the signs in the sequence, determining a quadrant of an N dimensional space determined by the pattern of signs;

d. de-mapping the determined quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space for determining first N bits of K bits of data;

e. comparing each signal value with a corresponding predetermined threshold and based on the results of the comparison determining a sub-quadrant of the quadrant determined in step d;

f. de-mapping the determined sub-quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space for determining subsequent N bits of K bits of data;

g. determining new threshold values for comparing the signal values based on the sub-quadrant previously determined,

h. comparing the signal values with the new threshold values;

i. determining a sub-quadrant of the previous sub-quadrant based on the results of the comparisons;

j. de-mapping the determined sub-quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space; and

k. repeating the steps g, h, i, and j until all K bits are retrieved.

19. An apparatus for retrieving K bits of data from the encoded code word transmitted according to claim 17 , wherein the apparatus comprises a receiver configured for:

a. receiving the N signal values; wherein the received N signal values are modulated signals using the encoded code word for the K bits of data;

b. determining N signs of the received N signal values; wherein the N signs are determined in a sequence received;

c. using the pattern of the signs in the sequence, determining a quadrant of an N dimensional space determined by the pattern of signs;

d. de-mapping the determined quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space for determining first N bits of K bits of data;

e. modifying the values of the signals such that a point in N dimensional space defined by coordinates having the value with their respective signs is transposed to a quadrant of the N dimensional space having all N coordinates being positive,

f. comparing the modified amplitudes with predefined threshold values to determine a sub-quadrant of N dimensional space within the quadrant of N dimensional space with all N coordinates being positive;

g. de-mapping the determined quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space; and

h. repeating the steps e, f, and g in sequence, ((K/N)−1) times to retrieve all the K bits.

20. An apparatus for retrieving K bits of data from the encoded code word transmitted according to claim 17 , wherein the apparatus comprises a receiver configured for:

a. receiving the N signal values; wherein the received N signal values are modulated signals using the encoded code word for the K bits of data;

b. determining N signs of the received N signal values; wherein the N signs are determined in a sequence received;

c. using the pattern of the signs in the sequence, determining a quadrant of an N dimensional space determined by the pattern of signs;

d. de-mapping the determined quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space for determining first N bits of K bits of data;

e. based on the signal values along with their signs, calculating new threshold values;

f. comparing the signal values with the new threshold values to determine a sub-quadrant of N dimensional space within the previous quadrant to which the point belongs;

g. de-mapping the determined quadrant to N bits of data based on the mapping used to encode N bits to a point in one quadrant of N dimensional space; and

h. repeating the steps e, f, and g in sequence (K/N−1) times for retrieving all the K bits.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2017
From: MODY, NAMAN RAJIV
To: SASKEN TECHNOLOGIES LTD
Reel/Frame 043859/0264 →
Priority Claims (1)
IN 201741017628 · May 19, 2017 · national
Continuity (1)
Related Publication 20180337812A1 · Nov 22, 2018