IP Library › Granted Patent US 9,996,483
Granted Patent B2
US 9,996,483 · App. 15/092,554 · Granted Jun 12, 2018

N-base numbers to physical wire states symbols translation method

Inventor: Radu Pitigoi-Aron (San Jose, CA)
Assignee: QUALCOMM Incorporated
G06F13/102G06F13/20G06F13/385G06F13/4068G06F13/4295
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 9,996,483
App. No.
15/092,554
Granted
Jun 12, 2018
Kind
B2
Abstract

System, methods and apparatus are described that facilitate a device to encode/decode data in a data communications interface coupled to a plurality of wires. The device determines a value of a sequence of data bits allocated to a frame, converts the value into a sequence of symbols associated with the frame, and transmits the sequence of symbols to a receiver. The device performs the converting by calculating base-N coefficients of a base-N number polynomial for the frame based on the value, where N is greater than 2, calculating base-2 coefficients of a base-2 number polynomial for each symbol according to a respective base-N coefficient corresponding to each symbol, determining changes of states of the plurality of wires for each symbol according to the base-2 coefficients respectively calculated for each symbol, and generating the sequence of symbols based on the changes of states of the plurality of wires for each symbol.

Claims (123)

1. An apparatus for encoding data in a data communications interface, comprising:

a communication interface circuit coupled to a plurality of wires; and

a processing circuit coupled to the communication interface circuit and configured to:

determine a value of a sequence of data bits allocated to a frame,

convert the value into a sequence of symbols associated with the frame, wherein the processing circuit configured to convert is configured to:

calculate base-N coefficients of a base-N number polynomial for the frame based on the value, where N is an integer greater than 2, and where the base-N coefficients respectively correspond to symbols of the sequence of symbols,

calculate base-2 coefficients of a base-2 number polynomial for each symbol of the sequence of symbols according to a respective base-N coefficient corresponding to each symbol,

determine changes of states of the plurality of wires for each symbol of the sequence of symbols according to the base-2 coefficients respectively calculated for each symbol, and

generate the sequence of symbols based on the changes of states of the plurality of wires for each symbol, and

transmit the sequence of symbols to a receiver.

2. The apparatus of claim 1 , wherein the processing circuit is further configured to:

receive a binary string of data to be encoded; and

respectively allocate subsets of the binary string of data to a plurality of frames, wherein the sequence of data bits is a subset of the binary string of data.

3. The apparatus of claim 1 , wherein the processing circuit configured to convert the value into the sequence of symbols is further configured to:

calculate a first pair of base-2 coefficients of a first base-2 number polynomial according to a first base-N coefficient corresponding to a first symbol of the sequence of symbols;

determine the changes of states of the plurality of wires for the first symbol according to the first pair of base-2 coefficients;

calculate a second pair of base-2 coefficients of a second base-2 number polynomial according to a second base-N coefficient corresponding to a second symbol of the sequence of symbols; and

determine the changes of states of the plurality of wires for the second symbol according to the second pair of base-2 coefficients.

4. The apparatus of claim 3 , wherein:

each of the first pair and second pair of base-2 coefficients includes a first value and a second value;

the first value indicates a change in state or no change in state between a current state of a first wire and a previous state of the first wire; and

the second value indicates a change in state or no change in state between a current state of a second wire and a previous state of the second wire.

5. The apparatus of claim 4 , wherein:

the first value represents an exclusive-NOR (XNOR) operation between the current state of the first wire and the previous state of the first wire; and

the second value represents an exclusive-NOR (XNOR) operation between the current state of the second wire and the previous state of the second wire.

6. The apparatus of claim 4 , wherein:

when the first value is 0, a change in state between the current state of the first wire and the previous state of the first wire is indicated,

when the first value is 1, no change in state between the current state of the first wire and the previous state of the first wire is indicated,

when the second value is 0, a change in state between the current state of the second wire and the previous state of the second wire is indicated, and

when the second value is 1, no change in state between the current state of the second wire and the previous state of the second wire is indicated.

7. The apparatus of claim 6 , wherein the processing circuit configured to generate the sequence of symbols is configured to:

determine that the first wire is to be pulled down to a LOW level when the change in state between the current state of the first wire and the previous state of the first wire is indicated for the first symbol.

8. The apparatus of claim 7 , wherein the processing circuit configured to generate the sequence of symbols is further configured to:

pull down the first wire to the LOW level when no change in state between the current state of the first wire and the previous state of the first wire is indicated for the second symbol; and

refrain from pulling down the first wire to the LOW level when the change in state between the current state of the first wire and the previous state of the first wire is indicated for the second symbol.

9. A method of encoding data in a data communications interface coupled to a plurality of wires, comprising:

determining a value of a sequence of data bits allocated to a frame;

converting the value into a sequence of symbols associated with the frame, wherein the converting includes:

calculating base-N coefficients of a base-N number polynomial for the frame based on the value, where N is an integer greater than 2, and where the base-N coefficients respectively correspond to symbols of the sequence of symbols,

calculating base-2 coefficients of a base-2 number polynomial for each symbol of the sequence of symbols according to a respective base-N coefficient corresponding to each symbol,

determining changes of states of the plurality of wires for each symbol of the sequence of symbols according to the base-2 coefficients respectively calculated for each symbol,

generating the sequence of symbols based on the changes of states of the plurality of wires for each symbol; and

transmitting the sequence of symbols to a receiver.

10. The method of claim 9 , further including:

receiving a binary string of data to be encoded; and

respectively allocating subsets of the binary string of data to a plurality of frames, wherein the sequence of data bits is a subset of the binary string of data.

11. The method of claim 9 , wherein the converting the value into the sequence of symbols includes:

calculating a first pair of base-2 coefficients of a first base-2 number polynomial according to a first base-N coefficient corresponding to a first symbol of the sequence of symbols;

determining the changes of states of the plurality of wires for the first symbol according to the first pair of base-2 coefficients;

calculating a second pair of base-2 coefficients of a second base-2 number polynomial according to a second base-N coefficient corresponding to a second symbol of the sequence of symbols; and

determining the changes of states of the plurality of wires for the second symbol according to the second pair of base-2 coefficients.

12. The method of claim 11 , wherein:

each of the first pair and second pair of base-2 coefficients includes a first value and a second value;

the first value indicates a change in state or no change in state between a current state of a first wire and a previous state of the first wire; and

the second value indicates a change in state or no change in state between a current state of a second wire and a previous state of the second wire.

13. The apparatus of claim 12 , wherein:

the first value represents an exclusive-NOR (XNOR) operation between the current state of the first wire and the previous state of the first wire; and

the second value represents an exclusive-NOR (XNOR) operation between the current state of the second wire and the previous state of the second wire.

14. The method of claim 12 , wherein:

when the first value is 0, a change in state between the current state of the first wire and the previous state of the first wire is indicated,

when the first value is 1, no change in state between the current state of the first wire and the previous state of the first wire is indicated,

when the second value is 0, a change in state between the current state of the second wire and the previous state of the second wire is indicated, and

when the second value is 1, no change in state between the current state of the second wire and the previous state of the second wire is indicated.

15. The method of claim 14 , wherein the generating the sequence of symbols includes:

determining that the first wire is to be pulled down to a LOW level when the change in state between the current state of the first wire and the previous state of the first wire is indicated for the first symbol.

16. The method of claim 15 , wherein the generating the sequence of symbols further includes:

pulling down the first wire to the LOW level when no change in state between the current state of the first wire and the previous state of the first wire is indicated for the second symbol; and

refraining from pulling down the first wire to the LOW level when the change in state between the current state of the first wire and the previous state of the first wire is indicated for the second symbol.

17. An apparatus for encoding data in a data communications interface coupled to a plurality of wires, comprising:

means for determining a value of a sequence of data bits allocated to a frame;

means for converting the value into a sequence of symbols associated with the frame, wherein the means for converting is configured to:

calculate base-N coefficients of a base-N number polynomial for the frame based on the value, where N is an integer greater than 2, and where the base-N coefficients respectively correspond to symbols of the sequence of symbols,

calculate base-2 coefficients of a base-2 number polynomial for each symbol of the sequence of symbols according to a respective base-N coefficient corresponding to each symbol, and

determine changes of states of the plurality of wires for each symbol of the sequence of symbols according to the base-2 coefficients respectively calculated for each symbol,

generate the sequence of symbols based on the changes of states of the plurality of wires for each symbol; and

means for transmitting the sequence of symbols to a receiver.

18. The apparatus of claim 17 , further including:

means for receiving a binary string of data to be encoded; and

means for respectively allocating subsets of the binary string of data to a plurality of frames, wherein the sequence of data bits is a subset of the binary string of data.

19. The apparatus of claim 17 , wherein the means for converting the value into the sequence of symbols is configured to:

calculate a first pair of base-2 coefficients of a first base-2 number polynomial according to a first base-N coefficient corresponding to a first symbol of the sequence of symbols;

determine the changes of states of the plurality of wires for the first symbol according to the first pair of base-2 coefficients;

calculate a second pair of base-2 coefficients of a second base-2 number polynomial according to a second base-N coefficient corresponding to a second symbols of the sequence of symbols; and

determine the changes of states of the plurality of wires for the second symbol according to the second pair of base-2 coefficients.

20. The apparatus of claim 19 , wherein:

each of the first pair and second pair of base-2 coefficients includes a first value and a second value;

the first value indicates a change in state or no change in state between a current state of a first wire and a previous state of the first wire; and

the second value indicates a change in state or no change in state between a current state of a second wire and a previous state of the second wire.

21. The apparatus of claim 20 , wherein:

the first value represents an XNOR operation between the current state of the first wire and the previous state of the first wire; and

the second value represents an XNOR operation between the current state of the second wire and the previous state of the second wire.

22. The apparatus of claim 20 , wherein:

when the first value is 0, a change in state between the current state of the first wire and the previous state of the first wire is indicated,

when the first value is 1, no change in state between the current state of the first wire and the previous state of the first wire is indicated,

when the second value is 0, a change in state between the current state of the second wire and the previous state of the second wire is indicated, and

when the second value is 1, no change in state between the current state of the second wire and the previous state of the second wire is indicated.

23. The apparatus of claim 22 , wherein the means for converting configured to generate the sequence of symbols is configured to:

determine that the first wire is to be pulled down to a LOW level when the change in state between the current state of the first wire and the previous state of the first wire is indicated for the first symbol.

24. The apparatus of claim 23 , wherein the means for converting configured to generate the sequence of symbols is further configured to:

pull down the first wire to the LOW level when no change in state between the current state of the first wire and the previous state of the first wire is indicated for the second symbol; and

refrain from pulling down the first wire to the LOW level when the change in state between the current state of the first wire and the previous state of the first wire is indicated for the second symbol.

25. An apparatus for decoding data in a data communications interface, comprising:

a communication interface circuit coupled to a plurality of wires; and

a processing circuit coupled to the communication interface circuit and configured to:

receive a sequence of symbols in a frame, the sequence of symbols representing a sequence of data bits allocated to the frame,

convert the sequence of symbols into a value of the sequence of data bits, wherein the processing circuit configured to convert is configured to:

evaluate changes of states of the plurality of wires based on the sequence of symbols,

calculate symbol values for the sequence of symbols based on the changes of states, wherein the symbol values respectively correspond to base-N coefficients of a base-N number polynomial, where N is an integer greater than 2, and

calculate a result of the base-N number polynomial according to the base-N coefficients to determine the value of the sequence of data bits, and

recover the sequence of data bits by expressing the value in a binary format.

26. The apparatus of claim 25 , wherein the sequence of data bits is a subset of a binary string of data to be decoded, and wherein subsets of the binary string are respectively allocated to a plurality of frames.

27. The apparatus of claim 25 , wherein each symbol of the sequence of symbols includes current states of the plurality of wires, and wherein the processing circuit configured to evaluate the changes of states of the plurality of wires is configured to perform for each symbol:

an exclusive-NOR (XNOR) operation between a current state of a first wire and a previous state of the first wire to determine a first state value; and

an exclusive-NOR (XNOR) operation between a current state of a second wire and a previous state of the second wire to determine a second state value.

28. The apparatus of claim 27 , wherein the processing circuit configured to evaluate the changes of states of the plurality of wires is further configured to:

determine that the first state value is 0 when a change in state occurs between the current state of the first wire and the previous state of the first wire;

determine that the first state value is 1 when no change in state occurs between the current state of the first wire and the previous state of the first wire;

determine that the second state value is 0 when a change in state occurs between the current state of the second wire and the previous state of the second wire; and

determine that the second state value is 1 when no change in state occurs between the current state of the second wire and the previous state of the second wire.

29. The apparatus of claim 27 , wherein the first state value and the second state value of a symbol correspond to a pair of base-2 coefficients of a base-2 number polynomial corresponding to the symbol.

30. The apparatus of claim 29 , wherein the processing circuit configured to calculate the symbol values of the sequence of symbols is configured to:

calculate a result of the base-2 number polynomial of each symbol of the sequence of symbols according to a respective pair of base-2 coefficients corresponding to each symbol; and

determine a symbol value for each symbol according to the result of the base-2 number polynomial respectively calculated for each symbol.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 29, 2016
From: PITIGOI-ARON, RADU
To: QUALCOMM INCORPORATED
Reel/Frame 039044/0253 →
Continuity (2)
Provisional Application 62145693 · Apr 10, 2015
Related Publication 20160299855A1 · Oct 13, 2016