IP Library › Granted Patent US 10,592,441
Granted Patent B2
US 10,592,441 · App. 15/960,356 · Granted Mar 17, 2020

Bus communication enhancement based on identification capture during bus arbitration

Inventors: Lalan Jee Mishra (San Diego, CA); Christopher Kong Yee Chun (Austin, TX); Richard Dominic Wietfeldt (San Diego, CA); Mohit Kishore Prasad (San Diego, CA)
Assignee: QUALCOMM Incorporated
G06F13/1605G06F13/1673G06F13/4291G06F2213/0016
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,592,441
App. No.
15/960,356
Granted
Mar 17, 2020
Kind
B2
Abstract

Systems, methods, and apparatus for communicating datagrams over a serial communication link are provided. A receiving device captures a sending device address during bus arbitration and receives a datagram subsequent to the bus arbitration. The datagram includes at least a register address and a payload. The receiving device obtains an address region specific to the sending device within a register space of the receiving device based on the captured sending device address and the register address included in the datagram and writes the payload of the datagram to the register space according to the obtained address region.

Claims (89)

1. A method performed at a receiving device for receiving a datagram from a sending device via a bus, comprising:

capturing a sending device address during bus arbitration;

receiving the datagram subsequent to the bus arbitration, the datagram including at least a register address and a payload;

obtaining an address region specific to the sending device within a register space of the receiving device based on the captured sending device address and the register address included in the datagram; and

writing the payload of the datagram to the register space according to the obtained address region.

2. The method of claim 1 , wherein the obtaining the address region includes:

obtaining a page address within the register space based on the captured sending device address; and

obtaining a page location within the page address based on the register address included in the datagram.

3. The method of claim 2 , wherein the writing the payload includes:

writing the payload of the datagram to the obtained page address and page location.

4. The method of claim 2 , wherein the obtaining the page address includes:

concatenating the captured sending device address with a base-offset value.

5. The method of claim 4 , wherein:

the captured sending device address has a length of 4-bits;

the base-offset value has a length of 4-bits; and

the page address has a length of 8-bits.

6. The method of claim 2 , wherein the page location is equivalent to the register address included in the datagram.

7. The method of claim 6 , wherein the page location and the register address included in the datagram have a length of 8-bits.

8. The method of claim 1 , wherein the capturing the sending device address includes:

detecting a start of the bus arbitration;

detecting the sending device winning the bus arbitration; and

capturing the sending device address based on the sending device winning the bus arbitration.

9. The method of claim 1 , wherein the capturing the sending device address includes:

storing the sending device address in a buffer.

10. The method of claim 8 , further including:

detecting that a bus ownership session of the sending device has ended; and

releasing the sending device address when the bus ownership session of the sending device has ended.

11. The method of claim 1 , wherein the sending device is a request-capable slave (RCS).

12. The method of claim 1 , wherein the sending device is a bus master.

13. A receiving device for receiving a datagram from a sending device via a bus, comprising:

a bus interface; and

a processing circuit configured to:

capture a sending device address during bus arbitration,

receive the datagram subsequent to the bus arbitration, the datagram including at least a register address and a payload,

obtain an address region specific to the sending device within a register space of the receiving device based on the captured sending device address and the register address included in the datagram, and

write the payload of the datagram to the register space according to the obtained address region.

14. The receiving device of claim 13 , wherein the processing circuit configured to obtain the address region is configured to:

obtain a page address within the register space based on the captured sending device address; and

obtain a page location within the page address based on the register address included in the datagram.

15. The receiving device of claim 14 , wherein the processing circuit configured to write the payload is configured to:

write the payload of the datagram to the obtained page address and page location.

16. The receiving device of claim 14 , wherein the processing circuit configured to obtain the page address is configured to:

concatenate the captured sending device address with a base-offset value.

17. The receiving device of claim 16 , wherein:

the captured sending device address has a length of 4-bits;

the base-offset value has a length of 4-bits; and

the page address has a length of 8-bits.

18. The receiving device of claim 14 , wherein the page location is equivalent to the register address included in the datagram, and

wherein the page location and the register address included in the datagram have a length of 8-bits.

19. The receiving device of claim 13 , wherein the processing circuit configured to capture the sending device address is configured to:

detect a start of the bus arbitration;

detect the sending device winning the bus arbitration; and

capture the sending device address based on the sending device winning the bus arbitration.

20. The receiving device of claim 13 , wherein the processing circuit configured to capture the sending device address is configured to:

store the sending device address in a buffer.

21. The receiving device of claim 19 , the processing circuit configured to:

detect that a bus ownership session of the sending device has ended; and

release the sending device address when the bus ownership session of the sending device has ended.

22. A receiving device for receiving a datagram from a sending device via a bus, comprising:

means for capturing a sending device address during bus arbitration;

means for receiving the datagram subsequent to the bus arbitration, the datagram including at least a register address and a payload;

means for obtaining an address region specific to the sending device within a register space of the receiving device based on the captured sending device address and the register address included in the datagram; and

means for writing the payload of the datagram to the register space according to the obtained address region.

23. The receiving device of claim 22 , wherein the means for obtaining the address region is configured to:

obtain a page address within the register space based on the captured sending device address; and

obtain a page location within the page address based on the register address included in the datagram.

24. The receiving device of claim 23 , wherein the means for writing the payload is configured to:

write the payload of the datagram to the obtained page address and page location.

25. The receiving device of claim 23 , wherein the means for obtaining the page address is configured to:

concatenate the captured sending device address with a base-offset value.

26. The receiving device of claim 25 , wherein:

the captured sending device address has a length of 4-bits;

the base-offset value has a length of 4-bits; and

the page address has a length of 8-bits.

27. The receiving device of claim 23 , wherein the page location is equivalent to the register address included in the datagram, and

wherein the page location and the register address included in the datagram have a length of 8-bits.

28. The receiving device of claim 22 , wherein the means for capturing the sending device address is configured to:

detect a start of the bus arbitration;

detect the sending device winning the bus arbitration;

capture the sending device address based on the sending device winning the bus arbitration; and

store the sending device address in a buffer.

29. The receiving device of claim 28 , further including:

means for detecting that a bus ownership session of the sending device has ended; and

means for releasing the sending device address when the bus ownership session of the sending device has ended.

30. A processor-readable storage medium having one or more instructions which, when executed by at least one processor or state machine of a processing circuit of a receiving device for receiving a datagram from a sending device, cause the processing circuit to:

capture a sending device address during bus arbitration;

receive the datagram subsequent to the bus arbitration, the datagram including at least a register address and a payload;

obtain an address region specific to the sending device within a register space of the receiving device based on the captured sending device address and the register address included in the datagram; and

write the payload of the datagram to the register space according to the obtained address region.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 24, 2018
From: MISHRA, LALAN JEE; CHUN, CHRISTOPHER KONG YEE; WIETFELDT, RICHARD DOMINIC; PRASAD, MOHIT KISHORE
To: QUALCOMM INCORPORATED
Reel/Frame 046438/0678 →
Continuity (2)
Provisional Application 62504455 · May 10, 2017
Related Publication 20180329838A1 · Nov 15, 2018