Claims
- 1. In a multiple-cluster computer system in which a cluster includes a processor and a local memory and wherein said local memory is part of a system address space of said computer system, such that said local memory is accessible by said processor and by resources remote to said cluster, an apparatus for controlling accesses to said local memory comprising:
- a local memory controller coupled to said processor and to said local memory and being configured to control accesses to said local memory by said processor;
- a cluster controller coupled to said local memory controller and to said resources remote to said cluster and being configured to control accesses to said local memory by said resources;
- said cluster controller including a look-up table of local memory locations which can be accessed by said remote resources, said look-up table including a portion which stores address tags associated with said local memory locations access by a remote resource to a first location in said local memory being permitted when said first location is not being accessed by another remote resource;
- said cluster controller being further configured to arbitrate for access to said local memory from said local memory controller in response to an access request by said remote resource;
- said cluster controller also being configured to control access to said local memory by said processor via said local memory controller, wherein an attempted access by said processor to a location in said local memory is permitted when said location is not being accessed by one of said remote resources;
- a data cache which contains data accessed from locations remote to said cluster for use by said processor, wherein said cluster controller is further configured to obtain data from remote locations when requested by said processor and to retain address of said remote locations of data stored in said data cache, such that data from remote location are stored in said data cache for use by said processor.
- 2. The apparatus of claim 1 wherein addresses of remote locations of data stored in said data cache are retained in a separate look-up table.
- 3. The apparatus of claim 2 wherein said data cache comprises a 4-way set associative cache.
- 4. The apparatus of claim 1 wherein said local cluster comprises a plurality of processors, each of said processors being to said local memory and to said data cache.
- 5. In a multiple-cluster computer system in which a cluster includes a processor and a local memory and wherein said local memory is part of a system address space of said computer system, such that said local memory is accessible by said processor and by resources remote to said cluster, a method of controlling accesses to said local memory, comprising the steps of:
- receiving, by a cluster controller associated with said cluster, an access request to a memory location from a resource remote to said cluster, said cluster controller having a look-up table which includes address tags associated with locations of said local memory previously accessed by said resources remote to said cluster;
- consulting said look-up table to determine whether said memory location has been accessed by said resource;
- denying said access request if said memory location has been previously accessed by said resource otherwise,
- arbitrating for access to said local memory by said resource via a memory controller coupled to said local memory;
- controlling access of said local memory by said processor by utilizing said look-up table in said cluster controller, wherein an access by said processor to a certain memory location in said local memory is first checked by said cluster controller and said cluster controller permits said local memory controller to allow said access only when said certain memory location is not being accessed by one of said resources remote to said cluster, such that access conflicts to said local memory by said processor and said resources remote to said cluster are controlled;
- permitting, by said cluster controller an access by said processor to a certain memory location in said local memory when said certain memory location is not accessed by one of said resources.
- 6. The method of claim 5 wherein said cluster further comprises a data cache, and further comprising the steps of:
- obtaining data by said cluster controller from locations remote to said cluster in response to a request from said processor;
- storing said data in said data cache; and
- retaining addresses, in said cluster controller, of said locations remote to said cluster from which said data was obtained.
- 7. The method of claim 6 wherein said cluster controller further comprises a separate look-up table which retains said addresses of said locations remote to said cluster.
- 8. The method of claim 5 wherein said local cluster further comprises a plurality of processors, each of which is coupled to said local memory.
Parent Case Info
This is a continuation of application Ser. No. 08/367,443, filed Dec. 28, 1994, now abandoned.
US Referenced Citations (12)
Non-Patent Literature Citations (1)
Entry |
"The Metaflow Architecture", IEEE Micro., by Val Popescu, Merle Schultz, John Spracklen, Gary Gibson, Bruce Lightner and David Isaman, 1991 pp. 10-13 & pp. 63-73. |
Continuations (1)
|
Number |
Date |
Country |
Parent |
367443 |
Dec 1994 |
|