Patent US5787476A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5787476A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for maintaining coherency of virtual-to-physical memory translations in a multiprocessor computer

Assignee: Morgan Stanley and Co LLC
•
Filing: 1995-05-05
•
Granted: 1998-07-28
•
Expires: 2015-05-05
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A multiprocessor computer system and method for maintaining coherency between virtual-to-physical memory translations of multiple requestors in the system. A poison bit is associated with a memory block in the system. The poison bit is set to indicate that a virtual-to-physical memory translation for the memory block is stale. An exception is generated in response to an access by one of the requestors to the memory block if the poison bit is set, thereby indicating to the requestor that the virtual-to-physical memory translation entry for the memory block is stale. The virtual-to-physical memory translation for the memory block is then updated with a virtual memory translation corresponding to a new physical location for the memory block. In an embodiment having a cache-based multiprocessor system, the method further comprises the step of invalidating all cached copies of the memory block. In this case, the invalidating step and the setting step must be performed as an atomic operation.

Inventors

  • 👤 James P. Laudon
  • 👤 Daniel E. Lenoski

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-02 08:33
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0806; G06F12/0813; G06F12/10; G06F12/1027; G06F12/1072; G06F2212/00; G06F2212/68; G06F2212/682

Claims Analysis

Total Claims: 11
Claim 1
Independent Claim 139 words
In a multiprocessor computer system, a method for maintaining coherency between virtual-to-physical memory translations of multiple processors in the system, wherein each of the multiple processors includes a cache memory and a translation-lookaside buffer to store virtual-to-physical memory translations, the method comprising the steps of; (1) associating a poison state with each memory block in the system; (2) setting the poison state for a memory block to indicate that a virtual-to-physical memory translation for said memory block is stale; (3) generating an exception in response to an access by one of the processors to said memory block if said poison state is set, thereby indicating to the processor that said virtual-to-physical memory translation for said memory block is stale; (4) copying said memory block to a new physical location; and (5) locking said virtual-to-physical memory translation during said copying.
Claim 2
Dependent Claim 139 words
In a multiprocessor computer system, a method for maintaining coherency between virtual-to-physical memory translations of multiple processors in the system, wherein each of the multiple processors includes a cache memory and a translation-lookaside buffer to store virtual-to-physical memory translations, the method comprising the steps of; (1) associating a poison state with each memory block in the system; (2) setting the poison state for a memory block to indicate that a virtual-to-physical memory translation for said memory block is stale; (3) generating an exception in response to an access by one of the processors to said memory block if said poison state is set, thereby indicating to the processor that said virtual-to-physical memory translation for said memory block is stale; (4) copying said memory block to a new physical location; and (5) locking said virtual-to-physical memory translation during said copying.
Claim 3
Dependent Claim 30 words
The method according to claim 1, wherein the system is a cache-based multiprocessor system, and the method further comprises the step of invalidating all cached copies of the memory block.
Claim 4
Dependent Claim 23 words
The method according to claim 2, further comprising the step of performing said invalidating step and said setting step as an atomic operation.
Claim 5
Dependent Claim 25 words
The method according to claim 1, further comprising the step of reading the memory block from the stale physical location when setting the poison bit.
Claim 6
Dependent Claim 21 words
The method according to claim 4, further comprising the step of copying said memory block to a new physical memory location.
Claim 7
Dependent Claim 151 words
In a multiprocessor computer system, a memory controller for maintaining coherency between virtual-to-physical memory translations of multiple processors in a system, wherein each of the plurality of processors include a cache memory and a translation-lookaside buffer to store virtual-to-physical memory translations, the memory controller comprising: a. first means for storing a poison state, wherein said poison state is associated with a memory block in the system, b. second means for setting said poison state when a virtual-to-physical memory translation for said memory block is stale; c. third means for generating an exception in response to an access by one of the processors to said memory block if said poison state is set, thereby indicating that said virtual-to-physical memory translation for said memory block is stale; e. fourth means for copying aid memory block to a new physical location; and d. fifth means for locking said virtual-to-physical memory translation during said copying.
Claim 8
Dependent Claim 151 words
In a multiprocessor computer system, a memory controller for maintaining coherency between virtual-to-physical memory translations of multiple processors in a system, wherein each of the plurality of processors include a cache memory and a translation-lookaside buffer to store virtual-to-physical memory translations, the memory controller comprising: a. first means for storing a poison state, wherein said poison state is associated with a memory block in the system, b. second means for setting said poison state when a virtual-to-physical memory translation for said memory block is stale; c. third means for generating an exception in response to an access by one of the processors to said memory block if said poison state is set, thereby indicating that said virtual-to-physical memory translation for said memory block is stale; e. fourth means for copying aid memory block to a new physical location; and d. fifth means for locking said virtual-to-physical memory translation during said copying.
Claim 9
Dependent Claim 31 words
The memory controller according to claim 6, wherein the system is a cache-based multiprocessor system, and the memory controller further comprises means for invalidating all cached copies of said memory block.
Claim 10
Dependent Claim 19 words
The memory controller according to claim 7, wherein said invalidating and said setting are performed as an atomic operation.
Claim 11
Dependent Claim 15 words
The memory controller according to claim 6, wherein said first means is a directory memory.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-07-27 2002-01-26 2002-07-28 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-07-27 2006-01-26 2006-07-28 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-07-27 2010-01-26 2010-07-28 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag