IP Library Granted Patent US 8,769,214
Granted Patent B2
US 8,769,214 · App. 13/609,949 · Granted Jul 1, 2014

External memory controller node

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,769,214
App. No.
13/609,949
Granted
Jul 1, 2014
Kind
B2
Abstract

A memory controller to provide memory access services in an adaptive computing engine is provided. The controller comprises: a network interface configured to receive a memory request from a programmable network; and a memory interface configured to access a memory to fulfill the memory request from the programmable network, wherein the memory interface receives and provides data for the memory request to the network interface, the network interface configured to send data to and receive data from the programmable network.

Claims (28)

1. A computing machine comprising:

a memory;

a first computational node embodied in a first integrated circuit and a second computational node embodied in a second integrated circuit, each computational node configured to make requests for memory accesses for selected data to the memory via a stride parameter, the first and second computational nodes being heterogeneous from each other;

a network coupled to the memory and the first and second computational nodes; and

a memory controller node coupled to the memory and the network and configured to receive requests for memory accesses by the computational nodes to the memory for selected data stored in the memory and generate row and column memory addresses corresponding to stored data and use the stride parameter to access the requested data selected from some of the data stored at the row and column memory addresses from the requests.

2. The computing machine of claim 1 , wherein the memory stores video data addressable by the row and column memory addresses.

3. The computing machine of claim 1 , wherein at least one of the computational nodes is a processor.

4. The computing machine of claim 1 , wherein at least one of the computational nodes is a hardware accelerator.

5. The computing machine of claim 4 , wherein the data address generator is configurable by parameters from a port on the memory controller to generate the sequence of addresses.

6. The computing machine of claim 1 further comprising a data address generator that generates sequences of addresses for both reading from and writing to the memory by the computational nodes.

7. The computing machine of claim 6 , wherein a data address generator mode is selected from one of bit reverse addressing, circular addressing, data reordering, data interlacing, data de-interlacing, rectangular block, and rectangular pixel block modes.

8. The computing machine of claim 1 , wherein the interconnection network includes a crosspoint switch.

9. The computing machine of claim 1 , further comprising a third computational node in a cluster of computational nodes, wherein the first and second computational nodes are part of another cluster of computational nodes and wherein the network includes a hierarchy of crosspoint switches to facilitate communication between the third computational node and one of the first or second computational nodes.

10. A computing machine comprising:

a memory;

a plurality of computational nodes embodied in an integrated circuit and each configured to make requests for memory accesses to the memory and setting control and status parameters, at least two of the computational nodes being heterogeneous from each other;

a network coupled to the plurality of computational nodes, the network embodied in the integrated circuit; and

a memory controller node coupled to the network and the memory, the memory controller node configured to receive requests for memory accesses by the computational nodes to the memory and generate memory addresses from the requests.

11. The computing machine of claim 10 , wherein at least one of the computational nodes is a processor.

12. The computing machine of claim 10 , wherein at least one of the computational nodes is a hardware accelerator.

13. The computing machine of claim 10 further comprising a data address generator that generates sequences of addresses for both reading from and writing to the memory by the computational nodes.

14. The computing machine of claim 13 , wherein the sequences of addresses are selected based on a data address generator mode.

15. The computing machine of claim 14 , wherein the data address generator mode is selected from one of two-dimensional addressing, circular addressing, data reordering, data interlacing, data de-interlacing, rectangular block, and rectangular pixel block modes.

16. The computing machine of claim 13 , wherein one of the plurality of computational nodes desiring access to a memory location obtains the address of the memory location from the data address generator.

17. The computing machine of claim 13 , wherein the data address generator is configurable by parameters from a port on the memory controller to generate the sequence of addresses.

18. The computing machine of claim 10 , wherein at least one of the computational nodes performs Fast Fourier transforms or other interleaved or “butterfly” computations.

19. The computing machine of claim 10 , wherein the memory controller generates row and column memory addresses from the requests.

20. The computing machine of claim 10 , wherein the plurality of computational nodes are organized in clusters of computational nodes and wherein the network includes a hierarchy of crosspoint switches to facilitate communication between a computational node in one cluster with a computational node in another cluster.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 17, 2019
From: QST HOLDINGS, LLC
To: CORNAMI, INC.
Reel/Frame 050409/0253 →