Patents by Inventor Keith N. Langston

Keith N. Langston has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 10338923
    Abstract: A method for branch prediction, the method comprising, receiving a branch wrong guess instruction having a branch wrong guess instruction address and data including an opcode and a branch target address, determining whether the branch wrong guess instruction was predicted by a branch prediction mechanism, sending the branch wrong guess instruction to an execution unit responsive to determining that the branch wrong guess instruction was predicted by the branch prediction mechanism, and receiving and decoding instructions at the branch target address.
    Type: Grant
    Filed: May 5, 2009
    Date of Patent: July 2, 2019
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Philip G. Emma, Allan M. Hartstein, Keith N. Langston, Brian R. Prasky, Thomas R. Puzak, Charles F. Webb
  • Patent number: 8566529
    Abstract: The exemplary embodiment of the present invention relates to a generalized LRU algorithm is provided that is associated with a specified cache associativity line set value that is determined by a system user. As configured, the LRU algorithm as presented can comprise n-levels for an LRU tree, each specified tree being individually analyzed within the LRU algorithm. Within each LRU tree level comprises the associativity line value can be further broken down into sub-analysis groups of any desired configuration, however, the total sub-analysis group configuration must equal the specified cache associativity line value.
    Type: Grant
    Filed: February 13, 2008
    Date of Patent: October 22, 2013
    Assignee: International Business Machines Corporation
    Inventors: David S. Hutton, Keith N. Langston, Kathryn M. Jackson, Hanno Ulrich, Craig R. Walters
  • Patent number: 8131936
    Abstract: A method and apparatus for implementing a combined data/coherency cache for a shared memory multi-processor. The combined data/coherency cache includes a system cache with a number of entries. The method includes building a system cache directory with a number of entries equal to the number of entries of the system cache. The building includes designating a number of sub-entries for each entry which is determined by a number of sub-entries operable for performing system cache coherency functions. The building also includes providing a sub-entry logic designator for each entry, and mapping one of the sub-entries for each entry to the system cache via the sub-entry logic designator.
    Type: Grant
    Filed: February 11, 2005
    Date of Patent: March 6, 2012
    Assignee: International Business Machines Corporation
    Inventors: Keith N. Langston, Pak-kin Mak, Bruce A. Wagar
  • Patent number: 8131945
    Abstract: Caching where portions of data are stored in slower main memory and are transferred to faster memory between one or more processors and the main memory. The cache is such that an individual cache system must communicate to other associated cache systems, or check with such cache systems, to determine if they contain a copy of a given cached location prior to or upon modification or appropriation of data at a given cached location. The cache further includes provisions for determining when the data stored in a particular memory location may be replaced.
    Type: Grant
    Filed: May 5, 2009
    Date of Patent: March 6, 2012
    Assignee: International Business Machines Corporation
    Inventors: David S. Hutton, Kathryn M. Jackson, Keith N. Langston, Pak-kin Mak, Chung-Lung K. Shum
  • Patent number: 8131982
    Abstract: A method for branch prediction, the method comprising, receiving a load instruction including a first data location in a first memory area, retrieving data including a branch address and a target address from the first data location, and saving the data in a branch prediction memory, or receiving an unload instruction including the first data location in the first memory area, retrieving data including a branch address and a target address from the branch prediction memory, and saving the data in the first data location.
    Type: Grant
    Filed: June 13, 2008
    Date of Patent: March 6, 2012
    Assignee: International Business Machines Corporation
    Inventors: Philip G. Emma, Allan M. Hartstein, Keith N. Langston, Brian R. Prasky, Thomas R. Puzak, Charles F. Webb
  • Publication number: 20100287358
    Abstract: A method for branch prediction, the method comprising, receiving a branch wrong guess instruction having a branch wrong guess instruction address and data including an opcode and a branch target address, determining whether the branch wrong guess instruction was predicted by a branch prediction mechanism, sending the branch wrong guess instruction to an execution unit responsive to determining that the branch wrong guess instruction was predicted by the branch prediction mechanism, and receiving and decoding instructions at the branch target address.
    Type: Application
    Filed: May 5, 2009
    Publication date: November 11, 2010
    Applicant: International Business Machines Corporation
    Inventors: Philip G. Emma, Allan M. Hartstein, Keith N. Langston, Brian R. Prasky, Thomas R. Puzak, Charles F. Webb
  • Publication number: 20100030965
    Abstract: Caching where portions of data are stored in slower main memory and are transferred to faster memory between one or more processors and the main memory. The cache is such that an individual cache system must communicate to other associated cache systems, or check with such cache systems, to determine if they contain a copy of a given cached location prior to or upon modification or appropriation of data at a given cached location. The cache further includes provisions for determining when the data stored in a particular memory location may be replaced.
    Type: Application
    Filed: May 5, 2009
    Publication date: February 4, 2010
    Inventors: David S. Hutton, Kathryn M. Jackson, Keith N. Langston, Pak-kin Mak, Chung-Lung K. Shum
  • Publication number: 20090313462
    Abstract: A method for branch prediction, the method comprising, receiving a load instruction including a first data location in a first memory area, retrieving data including a branch address and a target address from the first data location data location, and saving the data in a branch prediction memory.
    Type: Application
    Filed: June 13, 2008
    Publication date: December 17, 2009
    Applicant: International Business Machines Corporation
    Inventors: Philip G. Emma, Allan M. Hartstein, Keith N. Langston, Brian R. Prasky, Thomas R. Puzak, Charles F. Webb
  • Patent number: 7577795
    Abstract: Portions of data in a processor system are stored in a slower main memory and are transferred to a faster memory comprising a hierarchy of cache structures between one or more processors and the main memory. For a system with shared L2 cache(s) between the processor(s) and the main memory, an individual L1 cache of a processor must first communicate to an associated L2 cache(s), or check with such L2 cache(s), to obtain a copy of a particular line from a given cache location prior to, or upon modification, or appropriation of data at a given cached location.
    Type: Grant
    Filed: January 25, 2006
    Date of Patent: August 18, 2009
    Assignee: International Business Machines Corporation
    Inventors: David S. Hutton, Kathryn M. Jackson, Keith N. Langston, Pak-kin Mak, Chung-Lung K. Shum
  • Publication number: 20090204767
    Abstract: The exemplary embodiment of the present invention relates to a generalized LRU algorithm is provided that is associated with a specified cache associativity line set value that is determined by a system user. As configured, the LRU algorithm as presented can comprise n-levels for an LRU tree, each specified tree being individually analyzed within the LRU algorithm. Within each LRU tree level comprises the associativity line value can be further broken down into sub-analysis groups of any desired configuration, however, the total sub-analysis group configuration must equal the specified cache associativity line value.
    Type: Application
    Filed: February 13, 2008
    Publication date: August 13, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: David S. Hutton, Keith N. Langston, Kathryn M. Jackson, Hanno Ulrich, Craig R. Walters
  • Patent number: 7475193
    Abstract: A dual system shared cache directory structure for a cache memory performs the role of an inclusive shared system cache, i.e., data, and system control, i.e., coherency. The system includes two separate system cache directories in the shared system cache. The two separate cache directories are substantially equal in size and collectively large enough to contain all of the processor cache directory entries, but with only one of these separate cache directories hosting system-cache data to back the most recent fraction of data accessed by the processors. The other cache directory retains only addresses, including addresses of lines LRUed out from the first cache directory and the identity of the processor using the data. Thus by this expedient, only the directory known to be backed by system cached data will be evaluated for system cache memory data.
    Type: Grant
    Filed: January 18, 2006
    Date of Patent: January 6, 2009
    Assignee: International Business Machines Corporation
    Inventors: David S. Hutton, Kathryn M. Jackson, Keith N. Langston, Pak-kin Mak, Bruce Wagar
  • Patent number: 5584002
    Abstract: A method for addressing data in a cache unit which has a plurality of congruence classes, following a failure which disables one or more of the congruence classes in the cache unit. A plurality of synonym classes are established. A subset of the congruence classes is assigned to each of the synonym classes. Any disabled congruence classes are identified. The synonym class to which the disabled congruence class belongs is identified. An alternate congruence class is selected which belongs to the same synonym class as the disabled congruence class. When a request is received by the cache to store a line of data into the disabled congruence class, the line is stored into the alternate congruence class in response to the request.
    Type: Grant
    Filed: February 22, 1993
    Date of Patent: December 10, 1996
    Assignee: International Business Machines Corporation
    Inventors: Philip G. Emma, Joshua W. Knight, Keith N. Langston, James H. Pomerene, Thomas R. Puzak
  • Patent number: 5410663
    Abstract: A method and system for cache memory congruence class management in a data processing system. A selected address within a data processing system will typically have a single real address, but may have multiple virtual addresses within multiple virtual address spaces in a multi-tasking system, each virtual address space including a segment index, a page index and a byte index. A memory cache may be utilized to improve processor performance by hashing a portion of each virtual memory address to an address within a congruence class in the cache; however, when the cache contains a greater number of congruence classes than the number of different byte index addresses the virtual memory addresses of a single real memory address may hash to different congruence classes, reducing the ability of the processor to rapidly locate data within the cache.
    Type: Grant
    Filed: October 15, 1992
    Date of Patent: April 25, 1995
    Assignee: International Business Machines Corporation
    Inventors: Robert A. Blackburn, Keith N. Langston, Peter G. Sutton
  • Patent number: 4142234
    Abstract: The disclosed embodiments filter out many unnecessary interrogations of the cache directories of processors in a multiprocessor (MP) system, thereby reducing the required size of the buffer invalidation address stack (BIAS) with each associated processor, and increasing the efficiency of each processor by allowing it to access its cache during the machine cycles which in prior MP's had been required for invalidation interrogation. Invalidation interrogation of each remote processor cache directory may be done when each channel or processor generates a store request to a shared main storage.A filter memory is provided with each BIAS in the MP. The filter memory records the cache block address in each invalidation request transferred to its associated BIAS. The filter memory deletes an address when it is deleted from the cache directory and retains the most recent cache access requests.The filter memory may have one or more registers, or be an array.
    Type: Grant
    Filed: November 28, 1977
    Date of Patent: February 27, 1979
    Assignee: International Business Machines Corporation
    Inventors: Bradford M. Bean, Keith N. Langston, Richard L. Partridge, Kian-Bon K. Sy