IP Library Granted Patent US 8,996,736
Granted Patent B2
US 8,996,736 · App. 13/950,713 · Granted Mar 31, 2015

Clock domain crossing serial interface, direct latching, and response codes

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 8,996,736
App. No.
13/950,713
Granted
Mar 31, 2015
Kind
B2
Abstract

Aspects of a clock domain crossing serial interface, direct latching over the serial interface, and response codes are described. In various embodiments, a data communication command received over a serial interface is identified, and an address received over the serial interface is resolved to access a register bank. In a write operation, depending upon whether the address falls within a direct latch address range of the register bank, data may be directly latched into a direct latch register of the register bank or into a first-in-first-out register. For both read and write operations, reference may be made to a status register of the serial interface to identify or mitigate error conditions, and wait times may be relied upon to account for a clock domain crossing. After each of the read and write operations, a response code including a status indictor may be communicated.

Claims (49)

1. A method, comprising:

identifying a data communication command received over a serial interface;

resolving an address received over the serial interface to access a register bank;

communicating data over the serial interface;

decoding the address to obtain information associated with the address; and

based on the information associated with the address and at least some content of the data communication command, communicating a write error response code over the serial interface; and

accounting for a clock domain crossing in association with communicating the data.

2. The method of claim 1 , wherein resolving the address comprises:

decoding the address to determine whether the address falls within a direct latch address range of the register bank; and

when the address falls within the direct latch address range, directly latching the data into a direct latch register of the register bank based on a clock signal of the serial interface.

3. The method of claim 1 wherein resolving the address comprises:

decoding the address to determine whether the address falls within a direct latch address range of the register bank; and

when the address does not fall within the direct latch address range, storing the data into a first-in-first-out (FIFO) register.

4. The method of claim 3 , further comprising writing data from the FIFO register to the register bank.

5. The method of claim 1 , further comprising: when the data communication command comprises a write command, communicating the data over the serial interface for writing to the register bank; and

after a wait time, communicating a response code over the serial interface.

6. The method of claim 1 , wherein decoding the address to obtain information comprises decoding the address to determine whether the address falls within a direct latch address range of the register bank, wherein the at least some content of the data communication command comprises a write command, and wherein communicating the write error response code over the serial interface further comprises: determining whether a first-in-first-out (FIFO) register is full; and

when the FIFO register is full, communicating the write error response code.

7. The method of claim 1 , further comprising, when the data communication command comprises a read command and the address overlaps with data in a first-in-first-out (FIFO) register waiting to be written to the register bank, communicating a read error response code.

8. The method of claim 1 , further comprising generating a multiplexed output clock, for writing to and reading from the register bank, based on at least one of a current system operating state and a refresh control signal from a host processor.

9. The method of claim 8 , wherein generating the multiplexed output clock comprises multiplexing between a clock of the serial interface and a system clock.

10. A system, comprising:

a communications interface configured to identify a data communication command received over a serial interface; and

a register control circuit configured to:

resolve an address received over the serial interface to access a register bank;

communicate data over the serial interface;

decode the address to obtain information associated with the address; and

account for a clock domain crossing in association with data communication over the serial interface,

wherein the communications interface is configured to communicate one of a write error response code or a read error response code, when a write or read error condition occurs.

11. The system of claim 10 , wherein the register control circuit further:

decodes the address to determine whether the address falls within a direct latch address range of the register bank; and

directly latches the data into a direct latch register of the register bank based on a clock signal of the serial interface when the address falls within the direct latch address range.

12. The system of claim 10 , wherein the register control circuit further:

decodes the address to determine whether the address falls within a direct latch address range of the register bank; and

stores the data into a first-in-first-out (FIFO) register when the address does not fall within the direct latch address range.

13. The system of claim 10 , further comprising a clock multiplexer that generates a multiplexed output clock, for writing to and reading from the register bank, based on at least one of a current system operating state and a system refresh control signal from a host processor.

14. The system of claim 13 , wherein the clock multiplexer multiplexes between a clock of the serial interface and a system clock.

15. A method, comprising:

identifying a data communication command received over a serial interface;

decoding an address to determine whether the address falls within a direct latch address range of a register bank;

when the address does not fall within the direct latch address range of the register bank, storing the data into a first-in-first-out (FIFO) register:

communicating the data over the serial interface; and

accounting for a clock domain crossing when directly latching the data into a direct latch register of the register bank based on a clock signal of the serial interface.

16. The method of claim 15 , further comprising, after a wait time, communicating a response code over the serial interface.

17. The method of claim 15 , further comprising generating a multiplexed output clock, for writing to and reading from the register bank, based on at least one of a current system operating state and a refresh control signal from a host processor.

18. The method of claim 15 , wherein the address is received over the serial interface, and further comprising when the data communication command comprises a read command, communicating data over the serial interface after a wait time.

19. The method of claim 15 , further comprising when the data communication command comprises a write command and the address does not fall within the direct latch address range, determining whether a first-in-first-out (FIFO) register is full; and

when the FIFO register is full, communicating a write error response code.

20. The method of claim 15 , further comprising writing data from the FIFO register to the register bank.

Assignments (7)
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENT NUMBER 9,385,856 TO 9,385,756 PREVIOUSLY RECORDED AT REEL: 47349 FRAME: 001. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Mar 22, 2019
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 051144/0648 →
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE PREVIOUSLY RECORDED ON REEL 047229 FRAME 0408. ASSIGNOR(S) HEREBY CONFIRMS THE THE EFFECTIVE DATE IS 09/05/2018. Recorded Oct 29, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047349/0001 →
MERGER Recorded Oct 4, 2018
From: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
To: AVAGO TECHNOLOGIES INTERNATIONAL SALES PTE. LIMITED
Reel/Frame 047229/0408 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 3, 2017
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: BROADCOM CORPORATION
Reel/Frame 041712/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2017
From: BROADCOM CORPORATION
To: AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD.
Reel/Frame 041706/0001 →
PATENT SECURITY AGREEMENT Recorded Feb 11, 2016
From: BROADCOM CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037806/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 26, 2013
From: ALARCON, VERONICA; NABHANE, WALID; FULLERTON, MARK NORMAN; KOTHARI, LOVE; PATEL, RONAK SUBHAS; HSIEH, CHIH-TSUNG; LEE, HAO-ZHENG
To: BROADCOM CORPORATION
Reel/Frame 031079/0765 →