IP Library Granted Patent US 9,811,499
Granted Patent B2
US 9,811,499 · App. 15/486,217 · Granted Nov 7, 2017

Transcoding and transmission over a serial bus

Inventors: Shoichiro Sengoku (San Diego, CA); George Alan Wiley (San Diego, CA); Joseph Cheung (San Diego, CA)
Assignee: QUALCOMM Incorporated
G06F13/4291G06F13/364
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,811,499
App. No.
15/486,217
Granted
Nov 7, 2017
Kind
B2
Abstract

System, methods and apparatus are described that offer improved performance of a serial bus used for Inter-Integrated Circuit (I2C) and/or camera control interface (CCI) operations. Other described devices may be configured as a bus master or as a slave. In one method, a transmitter may generate a transition number from a set of bits, convert the transition number into a sequence of symbols, and transmit the sequence of symbols in the signaling state of a two-wire serial bus. Timing information may be encoded in the transitions between symbols of consecutive pairs of symbols in the sequence of symbols. For example, each transition may cause a change in the signaling state of at least one wire of the two-wire serial bus. A receiver may derive a receive clock from the transitions in order to receive and decode the sequence of symbols.

Claims (76)

1. A method of data communication operable on a transmitting device comprising:

at a first device, encoding a data word in a set of transition numbers;

at the first device, converting the set of transition numbers into a sequence of symbols, wherein timing information is encoded in transitions between symbols in the sequence of symbols; and

transmitting, from the first device, the sequence of symbols on a two-wire serial bus when the two-wire serial bus is operated in a first mode of operation, wherein each transition between consecutive symbols causes a change in a signaling state of the two-wire serial bus,

wherein the sequence of symbols is ignored by a second device coupled to the two-wire serial bus while the two-wire serial bus is in the first mode of operation, and

wherein the second device is configured for communicating on the two-wire serial bus using a second mode of operation of the two-wire serial bus.

2. The method of claim 1 , wherein each transition number in the set of transition numbers corresponds to ternary digit.

3. The method of claim 2 , wherein converting the set of transition numbers into the sequence of symbols comprises:

providing the ternary transition number to a transcoder, wherein a most significant ternary digit in the set of transition numbers is provided to the transcoder first, a least significant digit of the ternary transition number is provided to the transcoder last, and intermediate digits between the most significant digit and the least significant digit are provided to the transcoder in order of decreasing significance.

4. The method of claim 2 , wherein converting the set of transition numbers into the sequence of symbols comprises:

providing the ternary transition number to a transcoder, wherein a least significant ternary digit in the set of transition numbers is provided to the transcoder first, a most significant digit of the ternary transition number is provided to the transcoder last, and intermediate digits between the least significant digit and the most significant digit are provided to the transcoder in order of increasing significance.

5. The method of claim 2 , wherein four signaling states are defined for the two-wire serial bus, and wherein each ternary digit in the set of transition numbers selects a next symbol to be transmitted on the two-wire serial bus from one of three available symbols, each of the three available symbols being different from a current symbol being transmitted on the two-wire serial bus.

6. The method of claim 1 , wherein timing information encoded in the sequence of symbols enables a receiver to generate a receive clock from the sequence of symbols.

7. The method of claim 1 , wherein the two-wire serial bus is a multi-purpose bus that supports communication using Inter-Integrated Circuit (I2C) protocols in the second mode of operation.

8. The method of claim 7 , wherein transmitting the sequence of symbols on the two-wire serial bus comprises:

providing an I2C repeated start condition between sequences of symbols transmitted on the two-wire serial bus in the first mode of operation,

wherein timing of the start condition causes a reset of receive logic in a device configured for communications using the I2C protocols.

9. The method of claim 7 , wherein transmitting the sequence of symbols on the two-wire serial bus comprises:

transmitting a first command on the two-wire serial bus;

transmitting the sequence of symbols on the two-wire serial bus after the first command has been transmitted; and

transmitting a second command on the two-wire serial bus,

transmitting data on the two-wire serial bus in accordance with an Inter-Integrated Circuit (I2C) protocol after the second command has been transmitted.

10. The method of claim 1 , further comprising:

changing from the first mode of operation to the second mode of operation after a control sequence is transmitted on the two-wire serial bus.

11. An apparatus comprising:

a first device including:

a bus interface adapted to couple the apparatus to a two-wire serial bus operable to be shared with a plurality of other devices; and

a processing circuit coupled to the bus interface, the processing circuit configured to:

encode a data word in a set of transition numbers;

convert the set of transition numbers into a sequence of symbols, wherein timing information is encoded in transitions between symbols in the sequence of symbols; and

transmit the sequence of symbols on a two-wire serial bus when the two-wire serial bus is operated in a first mode of operation, wherein each transition between consecutive symbols causes a change in a signaling state of the two-wire serial bus, and

wherein the sequence of symbols is ignored by a second device coupled to the two-wire serial bus while the two-wire serial bus is in the first mode of operation, and

wherein the second device is configured for communicating on the two-wire serial bus using a second mode of operation of the two-wire serial bus.

12. The apparatus of claim 11 , wherein each transition number in the set of transition numbers corresponds to ternary digit.

13. The apparatus of claim 12 , wherein the processing circuit is configured to convert the set of transition numbers into the sequence of symbols by:

providing the ternary transition number to a transcoder, wherein a most significant ternary digit in the set of transition numbers is provided to the transcoder first, a least significant digit of the ternary transition number is provided to the transcoder last, and intermediate digits between the most significant digit and the least significant digit are provided to the transcoder in order of decreasing significance.

14. The apparatus of claim 12 , wherein the processing circuit is configured to convert the set of transition numbers into the sequence of symbols by:

providing the ternary transition number to a transcoder, wherein a least significant ternary digit in the set of transition numbers is provided to the transcoder first, a most significant digit of the ternary transition number is provided to the transcoder last, and intermediate digits between the least significant digit and the most significant digit are provided to the transcoder in order of increasing significance.

15. The apparatus of claim 12 , wherein four signaling states are defined for the two-wire serial bus, and wherein each ternary digit in the set of transition numbers selects a next symbol to be transmitted on the two-wire serial bus from one of three available symbols, each of the three available symbols being different from a current symbol being transmitted on the two-wire serial bus.

16. The apparatus of claim 11 , wherein timing information encoded in the sequence of symbols enables a receiver to generate a receive clock from the sequence of symbols.

17. The apparatus of claim 11 , wherein the two-wire serial bus is a multi-purpose bus that supports communication using Inter-Integrated Circuit (I2C) protocols in the second mode of operation.

18. The apparatus of claim 17 , wherein the processing circuit is configured to transmit the sequence of symbols on the two-wire serial bus by:

providing an I2C repeated start condition between sequences of symbols transmitted on the two-wire serial bus in the first mode of operation,

wherein timing of the start condition causes a reset of receive logic in a device configured for communications using the I2C protocols.

19. The apparatus of claim 17 , wherein the processing circuit is configured to transmit the sequence of symbols on the two-wire serial bus by:

transmitting a first command on the two-wire serial bus;

transmitting the sequence of symbols on the two-wire serial bus after the first command has been transmitted; and

transmitting a second command on the two-wire serial bus,

transmitting data on the two-wire serial bus in accordance with an Inter-Integrated Circuit (I2C) protocol after the second command has been transmitted.

20. The apparatus of claim 11 , wherein the processing circuit is configured to:

change from the first mode of operation to the second mode of operation after a control sequence is transmitted on the two-wire serial bus.

21. A method of data communication comprising:

deriving at a first device, a receive clock from transitions in signaling state of a two-wire serial bus when the two-wire serial bus is operated in a first mode of operation;

using the receive clock at the first device to receive a sequence of symbols that is transmitted on the two-wire serial bus in accordance with the first mode of operation, wherein the transitions in signaling state of the two-wire serial bus correspond to transitions between symbols in the sequence of symbols;

generating, at the first device, a set of transition numbers from the sequence of symbols, wherein the set of transition numbers has multiple single-digit numbers, with each single-digit number representing a transition between a pair of consecutive symbols in the sequence of symbols; and

decoding, at the first device, a data word from the set of transition numbers,

wherein, while the two-wire serial bus is in the first mode of operation, the sequence of symbols is ignored by a second device coupled to the two-wire serial bus, and

wherein the second device is configured for communicating on the two-wire serial bus using a second mode of operation of the two-wire serial bus.

22. The method of claim 21 , wherein each number in the set of transition numbers is a single-digit ternary number.

23. The method of claim 22 , wherein four signaling states are defined for the two-wire serial bus, and wherein single-digit ternary number represents a relationship between a pair of consecutive signaling states on the two-wire serial bus.

24. The method of claim 22 , wherein each symbol in the sequence of symbols is one of four symbols defined by signaling state of the two-wire serial bus, and wherein each single-digit ternary number defines a relationship between a pair of consecutive symbols in the sequence of symbols.

25. The method of claim 21 , wherein the two-wire serial bus is a multi-purpose bus that supports communication using Inter-Integrated Circuit (I2C) protocols in the second mode of operation, and wherein the sequence of symbols is preceded in transmission by a command that causes the two-wire serial bus to enter the first mode of operation.

26. An apparatus comprising:

a first device including:

a bus interface adapted to couple the apparatus to a two-wire serial bus operable to be shared with a plurality of other devices;

a clock recovery circuit configured to derive a receive clock from transitions in signaling state of a two-wire serial bus; and

a processing circuit coupled to the bus interface, the processing circuit configured to:

use the receive clock to receive a sequence of symbols that is transmitted on the two-wire serial bus in accordance with a first mode of operation, wherein the transitions in signaling state of the two-wire serial bus correspond to transitions between symbols in the sequence of symbols;

generate a set of transition numbers from the sequence of symbols, wherein the set of transition numbers has multiple single-digit numbers, with each single-digit number representing a transition between a pair of consecutive symbols in the sequence of symbols; and

decode a data word from the set of transition numbers,

wherein, while the two-wire serial bus is in the first mode of operation, the sequence of symbols is ignored by a second device coupled to the two-wire serial bus, and

wherein the second device is configured for communicating on the two-wire serial bus using a second mode of operation of the two-wire serial bus.

27. The apparatus of claim 26 , wherein each number in the set of transition numbers is a single-digit ternary number.

28. The apparatus of claim 27 , wherein four signaling states are defined for the two-wire serial bus, and wherein each single-digit ternary number represents a relationship between a pair of consecutive signaling states on the two-wire serial bus.

29. The apparatus of claim 27 , wherein each symbol in the sequence of symbols is one of four symbols defined by signaling state of the two-wire serial bus, and wherein each single-digit ternary number defines a relationship between a pair of consecutive symbols in the sequence of symbols.

30. The apparatus of claim 26 , wherein the two-wire serial bus is a multi-purpose bus that supports communication using Inter-Integrated Circuit (I2C) protocols in the second mode of operation, and wherein the sequence of symbols is preceded in transmission by a command that causes the two-wire serial bus to enter the first mode of operation.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 12, 2017
From: SENGOKU, SHOICHIRO; WILEY, GEORGE ALAN; CHEUNG, JOSEPH
To: QUALCOMM INCORPORATED
Reel/Frame 041987/0862 →
Continuity (5)
Continuation 14302359 · Jun 11, 2014
Provisional Application 61834151 · Jun 12, 2013
Provisional Application 61836777 · Jun 19, 2013
Provisional Application 61886002 · Oct 2, 2013
Related Publication 20170220518A1 · Aug 3, 2017