×

Scalable multiprocessor system and cache coherence method implementing store-conditional memory transactions while an associated directory entry is encoded as a coarse bit vector

  • US 6,748,498 B2
  • Filed: 01/07/2002
  • Issued: 06/08/2004
  • Est. Priority Date: 06/10/2000
  • Status: Expired due to Fees
First Claim
Patent Images

1. A multiprocessor computer system including a plurality of nodes, each node including:

  • an interface to a local memory subsystem, the local memory subsystem storing a multiplicity of memory lines of information and a directory;

    a memory cache for caching a multiplicity of memory lines of information, including memory lines of information stored in a remote memory subsystem that is local to another node;

    a protocol engine implementing a negative acknowledgment free cache coherence protocol, the protocol engine including a memory transaction array for storing an entry related to a memory transaction, the entry including a memory transaction state, the memory transaction concerning a memory line of information; and

    logic for processing the memory transaction, including advancing the memory transaction when predefined criteria are satisfied and storing a state of the memory transaction in the memory transaction array;

    wherein the protocol engine is configured to support a store-conditional memory transaction initiated by a requesting node for exclusive ownership of an identified memory line of information stored in the remote memory subsystem that is local to a first node in the plurality of nodes, and wherein the store-conditional memory transaction succeeds if the directory in the memory subsystem local to the first node unambiguously indicates that the requesting node is exclusive owner of the memory line of information;

    the store-conditional memory transaction succeeds if the directory in the memory subsystem local to the first node unambiguously indicates that the requesting node is sharing the memory line of information;

    the store-conditional memory transaction succeeds if the directory in the memory subsystem local to the first node ambiguously indicates that the requesting node is sharing the memory line of information and the requesting node is in fact sharing the memory line of information; and

    the store-conditional memory transaction fails if the directory in the memory subsystem local to the first node unambiguously indicates that the requesting node is not sharing the memory line of information.

View all claims
  • 3 Assignments
Timeline View
Assignment View
    ×
    ×