Browse Prior Art Database

Synchronization of TLB Invalidate Broadcasts using a TLBSYNC Command

IP.com Disclosure Number: IPCOM000112370D
Original Publication Date: 1994-May-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 2 page(s) / 62K

Publishing Venue

IBM

Related People

Kaiser, JM: AUTHOR [+3]

Abstract

A robust virtual memory and storage control structure can be defined by an architecture. One aspect of this specification deals with the handling of updates to the "hashed page table". The architecture describes the need for a "TLB invalidate" function to fully manage coherent updates to the table (due to the fact that hardware commonly "caches" the page table in a Translation Lookaside Buffer (TLB)).

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Synchronization of TLB Invalidate Broadcasts using a TLBSYNC Command

      A robust virtual memory and storage control structure can be
defined by an architecture.  One aspect of this specification deals
with the handling of updates to the "hashed page table".  The
architecture describes the need for a "TLB invalidate" function to
fully manage coherent updates to the table (due to the fact that
hardware commonly "caches" the page table in a Translation Lookaside
Buffer (TLB)).

      In tightly coupled symmetric multiprocessing systems, this
problem is complicated by the possibility of multiple processors or
devices holding a copy of a page table entry in their TLBs.  As a
result, in order to update the page table, a mechanism for
invalidating all copies must be defined.  One way to accomplish this
is through software directed interprocessor interrupts.
Unfortunately, this mechanism can be quite time consuming and the
software must be modified for different machine configurations.  An
alternate technique with an overall performance advantage involves
automatically making the effects of the TLB Invalidate function occur
in all processors and devices that use virtual addressing and
maintain TLBs.

      Systems that employ the use of the broadcasted TLB invalidate
function must follow certain programming semantics, and must ensure
certain control over the use of this function.  In snooping bus type
system implementations, if multiple devices are attempting this
broadcast TLB invalidate function simultaneously, there exist some
potential for bus deadlocks.  In general, to avoid this problem, the
TLB Invalidate function is only...