8447957

Coprocessor Interface Architecture and Methods of Operating the Same

PublishedMay 21, 2013
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
18 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A system, comprising: a bus; a processor circuit coupled to the bus; a memory circuit; a multi-channel memory controller coupled between the bus and the memory circuit; and a first coprocessor coupled to the processor circuit, the first coprocessor further being coupled to the multi-channel memory controller via a first interface that bypasses the processor circuit and the bus, wherein the memory controller comprises an address generator circuit that calculates a series of sequential addresses for the memory circuit in response to data received from the coprocessor specifying a sequential access pattern, and that calculates a series of non-sequential addresses for the memory circuit in response to data received from the coprocessor specifying a non-sequential access pattern.

2

2. The system of claim 1 , wherein: the system comprises an integrated circuit (IC) that includes the processor circuit, the memory circuit, the multi-channel memory controller, and the first coprocessor; and the bus comprises an on-chip peripheral bus of the IC.

3

3. The system of claim 1 , wherein: the system comprises an integrated circuit (IC) that includes the memory circuit, the multi-channel memory controller, the first coprocessor, and the bus; and the processor circuit is implemented in a separate physical structure not included in the IC.

4

4. The system of claim 1 , further comprising: a second coprocessor coupled to the processor circuit, the second coprocessor further being coupled to the multi-channel memory controller via a second interface that bypasses the processor circuit and the bus.

5

5. The system of claim 1 , wherein: the first coprocessor is coupled to the processor circuit via a first serial interface; and the first coprocessor is coupled to the multi-channel memory controller via a second serial interface.

6

6. The system of claim 1 , wherein the processor circuit comprises a microprocessor.

7

7. The system of claim 6 , wherein the system comprises a programmable logic device (PLD), and the processor circuit comprises a microprocessor included as hard-coded logic in the PLD.

8

8. The system of claim 6 , wherein the system comprises a programmable logic device (PLD), and the processor circuit comprises a microprocessor implemented using programmable logic elements of the PLD.

9

9. The system of claim 1 , wherein the address generator circuit is coupled between the coprocessor and the multi-channel memory controller, the first interface traversing the address generator circuit.

10

10. The system of claim 1 , wherein the address generator circuit calculates a series of linear addresses for the memory circuit in response to data received from the coprocessor specifying a linear access pattern and calculates a series of non-linear addresses for the memory circuit in response to data received from the coprocessor specifying a non-linear access pattern.

11

11. A method of operating a coprocessing system, wherein the system comprises a first processor circuit, a second processor circuit, a memory controller, and a memory circuit, the method comprising: sending a command and an access pattern from the first processor circuit to the memory controller via a first communications link; decoding the access pattern in the memory controller to produce a series of addresses corresponding to locations in the memory circuit; wherein the series of addresses produced comprises a series of sequential addresses in response to the access pattern received from the first processor circuit specifying a sequential access pattern, and the series of addresses produced comprises a series of non-sequential addresses in response to the access pattern received from the first processor circuit specifying a non-sequential access pattern; sending a series of read requests from the memory controller to the memory circuit and fetching in response a stream of data from the memory circuit at the locations corresponding to the series of addresses; and providing the stream of data from the memory controller to the second processor circuit via a second communications link independent from the first communications link, the stream of data bypassing the first processor circuit.

12

12. The method of claim 11 , wherein the first processor circuit comprises a main processor, and the second processor circuit comprises a coprocessor.

13

13. The method of claim 11 , wherein the first processor circuit comprises a first coprocessor, and the second processor circuit comprises a second coprocessor.

14

14. The method of claim 11 , wherein the series of addresses produced comprises a series of linear addresses in response to the access pattern received from the first processor circuit specifying a linear access pattern, and the series of addresses produced comprises a series of non-linear addresses in response to the access pattern received from the first processor circuit specifying a non-linear access pattern.

15

15. A method of operating a coprocessing system, wherein the system comprises a first processor circuit, a second processor circuit, a memory controller, and a memory circuit, the method comprising: sending a command and an access pattern from the first processor circuit to the memory controller via a first communications link; sending a stream of data from the second processor circuit to the memory controller via a second communications link independent from the first communications link; decoding the access pattern in the memory controller to produce a series of addresses corresponding to locations in the memory circuit; wherein the series of addresses produced comprises a series of sequential addresses in response to the access pattern received from the first processor circuit specifying a sequential access pattern, and the series of addresses produced comprises a series of non-sequential addresses in response to the access pattern received from the first processor circuit specifying a non-sequential access pattern; and sending a series of data write requests from the memory controller to the memory circuit and writing the stream of data to the locations in the memory circuit corresponding to the series of addresses, the stream of data bypassing the first processor circuit.

16

16. The method of claim 15 , wherein the first processor circuit comprises a main processor, and the second processor circuit comprises a coprocessor.

17

17. The method of claim 15 , wherein the first processor circuit comprises a first coprocessor, and the second processor circuit comprises a second coprocessor.

18

18. The method of claim 15 , wherein the series of addresses produced comprises a series of linear addresses in response to the access pattern received from the first processor circuit specifying a linear access pattern, and the series of addresses produced comprises a series of non-linear addresses in response to the access pattern received from the first processor circuit specifying a non-linear access pattern.

Patent Metadata

Filing Date

Unknown

Publication Date

May 21, 2013

Inventors

Jorge Ernesto Carrillo
Navaneethan Sundaramoorthy
Sivakumar Velusamy
Ralph D. Wittig
Vasanth Asokan

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “COPROCESSOR INTERFACE ARCHITECTURE AND METHODS OF OPERATING THE SAME” (8447957). https://patentable.app/patents/8447957

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.