Processor memory system

US9836412B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9836412-B2
Application numberUS-201514707166-A
CountryUS
Kind codeB2
Filing dateMay 8, 2015
Priority dateAug 13, 2004
Publication dateDec 5, 2017
Grant dateDec 5, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A plurality of processing elements (PEs) include memory local to at least one of the processing elements in a data packet-switched network interconnecting the processing elements and the memory to enable any of the PEs to access the memory. The network consists of nodes arranged linearly or in a grid to connect the PEs and their local memories to a common controller. The processor performs memory accesses on data stored in the memory in response to control signals sent by the controller to the memory. The local memories share the same memory map or space. The packet-switched network supports multiple concurrent transfers between PEs and memory. Memory accesses include block and/or broadcast read and write operations, in which data can be replicated within the nodes and, according to the operation, written into the shared memory or into the local PE memory.

First claim

Opening claim text (preview).

The invention claimed is: 1. A multiprocessor system, comprising: a plurality of processing elements having a corresponding plurality of physical local memories, the plurality of processing elements including a first processing element having a first physical local memory and a first processor, and a second processing element having a second physical local memory; a packet-switched interconnection network to receive memory addresses from each of the plurality of processing elements, the interconnection network also to couple each of the plurality of processing elements to a respective corresponding physical local memory for accessing data stored therein, the interconnection network also to couple each of the plurality of processing elements to each of the physical local memories of other of the plurality of processing elements for accessing data stored therein; the first processing element to reference a first memory location in the first physical local memory by passing, to the interconnection network, a first global memory address formed by combining the physical location in the first physical local memory, a first identifier associated with the first processing element, and a first processor identifier associated with the first processor; the first processing element to reference a second memory location in the second physical local memory by passing, to the interconnection network, a second global memory address formed by combining, in the same manner as the first global memory address was formed, the physical location in the second physical local memory, a second identifier associated with the second processing element, and the first processor identifier. 2. The multiprocessor system of claim 1 , wherein a first range of addresses passed to the interconnection network by each of the plurality of processing elements is referencing memory locations in the physical local memory of the respective processing element. 3. The multiprocessor system of claim 2 , wherein a second range of addresses passed to the interconnection network by each of the plurality of processing elements is referencing memory locations in the physical local memory of a different processing element. 4. The multiprocessor system of claim 3 , wherein the first range of addresses and the second range of addresses are contiguous. 5. The multiprocessor system of claim 1 , wherein the second processing element includes a second processor. 6. The multiprocessor system of claim 3 , wherein a third range of addresses between the first range of addresses and the second range of addresses reference to an external shared memory. 7. A method of accessing local memories in a multi-processor system having an interconnection network, comprising: referencing, by a plurality of processing elements that include a corresponding plurality of physical local memories, memory locations by passing global memory addresses to the interconnection network, the global memory addresses formed by combining a physical location in a physical local memory, an identifier associated with a processing element that includes the physical local memory, and a processor identifier associated with a processor; receiving global memory addresses from each of the plurality of processing elements; based on a first plurality of global memory addresses that include an identifier associated with a processing element that is making the access, coupling each of the plurality of processing elements to a respective corresponding physical local memory of the processing element making the access for accessing data stored therein; and, based on a second plurality of global memory addresses that include identifiers associated with processing elements that are not making the access, coupling each of the plurality of processing elements to each of the physical local memories of processing elements that are not making the access for accessing data stored therein. 8. The method of claim 7 , wherein the interconnect network includes and an end node coupled to an external memory. 9. The method of claim 8 , wherein the external memory comprises non-local shared memory. 10. The method of claim 7 , wherein a first range of addresses passed to the interconnection network by each of the plurality of processing elements references memory locations in the physical local memory of the respective processing element. 11. The method of claim 10 , wherein a second range of addresses passed to the interconnection network by each of the plurality of processing elements references memory locations in the physical local memory of a different processing element. 12. The method of claim 11 , wherein the first range of addresses and the second range of addresses are contiguous. 13. The method of claim 11 wherein the first range of addresses and the second range of addresses are non-contiguous. 14. The method of claim 11 , wherein a third range of addresses between the first range of addresses and the second range of addresses reference to an external shared memory. 15. A packet-switched interconnection network, comprising: a first at least one interface to a plurality of processing elements having a corresponding plurality of physical local memories, the plurality of processing elements including a first processing element having a first physical local memory and a first processor, and a second processing element having a second physical local memory, the interconnection network also to couple each of the plurality of processing elements to a respective corresponding physical local memory for accessing data stored therein, the interconnection network also to couple each of the plurality of processing elements to each of the physical local memories of other of the plurality of processing elements for accessing data stored therein; the first processing element to reference a first memory location in the first physical local memory by passing, to the first at least one interface, a first global memory address formed by combining the physical location in the first physical local memory, a first identifier associated with the first processing element, and a first processor identifier associated with the first processor; the first processing element to reference a second memory location in the second physical local memory by passing, to the first at least one interface, a second global memory address formed by combining, in the same manner as the first global memory address was formed, the physical location in the second physical local memory, a second identifier associated with the second processing element, and the first processor identifier; and, a second at least one interface to couple the interconnection network to an external memory. 16. The interconnection network of claim 15 , wherein a first range of addresses passed to the interconnection network by each of the plurality of processing elements is to reference memory locations in the physical local memory of the respective processing element. 17. The interconnection network of claim 16 , wherein a second range of addresses passed to the interconnection network by each of the plurality of processing elements is to reference memory locations in the physical local memory of a different processing element. 18. The interconnection network of claim 17 , wherein the first range of addresses and the second range of addresses are contiguous. 19. The interconnection network of claim 17 , wherein the first range of addresses and the second range of addresses are non-contiguous. 20. The

Assignees

Inventors

Classifications

  • Virtual address space management · CPC title

  • One dimensional arrays, e.g. rings, linear arrays, buses · CPC title

  • Multiprogramming arrangements · CPC title

  • Direct connection machines, e.g. completely connected computers, point to point communication networks (coupling between buses G06F13/4004) · CPC title

  • G06F12/109Primary

    for multiple virtual address spaces, e.g. segmentation (G06F12/1036 takes precedence) · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9836412B2 cover?
A plurality of processing elements (PEs) include memory local to at least one of the processing elements in a data packet-switched network interconnecting the processing elements and the memory to enable any of the PEs to access the memory. The network consists of nodes arranged linearly or in a grid to connect the PEs and their local memories to a common controller. The processor performs memo…
Who is the assignee on this patent?
Rambus Inc
What technology area does this patent fall under?
Primary CPC classification G06F15/8015. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 05 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).