EP2808802A2

Multi-processor computer architecture incorporating distributed multi-ported common memory modules

Abstract

A multi-processor computer architecture incorporating distributed multi-ported common memory modules wherein each of the memory modules comprises a control block functioning as a cross-bar router in conjunction with one or more associated memory banks or other data storage devices. Each memory module has multiple I/O ports and the ability to relay requests to other memory modules if the desired memory location is not found on the first module. A computer system in accordance with the invention may comprise memory module cards along with processor cards interconnected using a baseboard or backplane having a toroidal interconnect architecture between the cards.

EP2808802A2, drawing sheet 1
Sheet 1 of 4

Term

Projected expiry 2 May 2034.

  1. Priority
  2. Filed
  3. Published
  4. Today
  5. Projected expiry

22 claims: 9 independent, 13 dependent

  1. 1
    A multi-processor computer system comprising:N processor cards, each of said processor cards being affixed in an array of N processor card slots;and M multi-ported common memory modules, each of said multi-ported common memory modules being affixed in an array of M memory module card slots said N processor card slots and said M memory module card slots being toroidally interconnected and wherein N is an integer greater than 1.
  2. 5
    The multi-processor computer system of any one of the preceding claims wherein each of said M multi-ported common memory modules comprises at least one memory storage device for operative coupling to each of said N processor cards by a controller.
  3. 9
    The multi-processor computer system of any one of the preceding claims wherein said arrays of processor card slots and memory module card slots comprises a portion of either a baseboard or backplane.
  4. 10
    A method for processing data requests from an array comprising a plurality of interconnected processors and memory modules, said method comprising:directing a data request to a first one of said plurality of memory modules;servicing said data request if said data resides on said first one of said plurality of memory modules, otherwise directing said data request to a second adjacent one of said plurality of memory modules;and returning said data requested to a direct coupled processor if said data request originated with one of said plurality of processors, otherwise returning said data requested to a direct coupled one of said plurality of processors if a source ID of said data request is associated with said servicing one of said plurality of memory modules, otherwise returning said data requested to a previous one of said plurality of memory modules.
  5. 13
    A multi-processor computer system comprising:a plurality of processor blocks;and a multiplicity of multi-ported common memory modules, a processor port of each of said memory modules being associated with a corresponding one of said processor blocks, said memory modules being operational to relay memory access requests from a first one of said processor blocks directed to a corresponding first one of said memory modules to another one of said multiplicity of memory modules if a requested memory location is not found on said first one of said memory modules.
  6. 18
    The multi-processor computer system of any one of claims 13 to 17 wherein said multiplicity of multi-ported common memory modules comprises a shared or non-shared common memory system for said plurality of processor blocks.
  7. 19
    The multi-processor computer system of any one of claims 13 to 18 wherein each of said multi-ported common memory modules comprise at least one of semiconductor or disk-based data storage devices.
  8. 20
    The multi-processor computer system of any one of claims 13 to 19 wherein said multi-ported common memory modules are operational to perform at least one of returning:2D data in transpose order;2D sub-volumes out of a larger 2D set of data;2D planes out of 3D volumes;or 3D sub-volumes out of a larger 3D volume, or to perform gather-scatter DMA operations comprising at least one of providing for read/write operations a list of addresses and constant or a list of addresses and lengths, or to perform linked list DMA operations comprising following a linked list set of addresses to a final set of data read.
  9. 21
    The multi-processor computer system of any one of claims 13 to 20 wherein said multi-ported common memory modules are operational to return records of unknown length, or an address where data is written.