Patents by Inventor Jude Rivers

Jude Rivers 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).

  • Publication number: 20080065861
    Abstract: This invention pertains to apparatus, method and a computer program stored on a computer readable medium. The computer program includes instructions for use with an instruction unit having a code page, and has computer program code for partitioning the code page into at least two sections for storing in a first section thereof a plurality of instruction words and, in association with at least one instruction word, for storing in a second section thereof an extension to each instruction word in the first section. The computer program further includes computer program code for setting a state of at least one page table entry bit for indicating, on a code page by code page basis, whether the code page is partitioned into the first and second sections for storing instruction words and their extensions, or whether the code page is comprised instead of a single section storing only instruction words.
    Type: Application
    Filed: October 31, 2007
    Publication date: March 13, 2008
    Inventors: Erik Altman, Michael Gschwind, David Luick, Daniel Prener, Jude Rivers, Sumedh Sathaye, John-David Wellman
  • Publication number: 20080052495
    Abstract: A pipeline system and method includes a plurality of operational stages. The stages include a pointer register stage which stores pointer information and updates, and a rename and dependence checking stage located downstream of the pointer register stage, which renames registers and determines if dependencies exist. A functional unit provides pointer information updates to the pointer register stage such that pointer information is processed and updated to the pointer register stage before or in parallel with the register dependency checking.
    Type: Application
    Filed: October 26, 2007
    Publication date: February 28, 2008
    Inventors: ERIK ALTMAN, Michael Gschwind, Jude Rivers, Sumedh Sathaye, John-David Wellman, Victor Zyuban
  • Publication number: 20070220366
    Abstract: A computer implemented method, apparatus, and computer usable program code for preventing soft error accumulation. A number of cycles between references to a register are counted. Instructions are injected that reference the register for preventing soft error accumulation in response to a determination that the number of cycles is greater than a threshold.
    Type: Application
    Filed: March 14, 2006
    Publication date: September 20, 2007
    Applicant: International Business Machines Corporation
    Inventors: Pradip Bose, Jude Rivers, Balaram Sinharoy, Victor Zyuban
  • Publication number: 20070162895
    Abstract: A trace cache system is provided comprising a trace start address cache for storing trace start addresses with successor trace start addresses, a trace cache for storing traces of instructions executed, a trace history table (THT) for storing trace numbers in rows, a branch history shift register (BHSR) or a trace history shift register (THSR) that stores histories of branches or traces executed, respectively, a THT row selector for selecting a trace number row from the THT, the selection derived from a combination of a trace start address and history information from the BHSR or the THSR, and a trace number selector for selecting a trace number from the selected trace number row and for outputting the selected trace number as a predicted trace number.
    Type: Application
    Filed: January 10, 2006
    Publication date: July 12, 2007
    Applicant: International Business Machines Corporation
    Inventors: Erik Altman, Michael Gschwind, Jude Rivers, Sumedh Sathaye, John-David Wellman, Victor Zyuban
  • Publication number: 20070130237
    Abstract: A method and apparatus for storing non-critical processor information without imposing significant costs on a processor design is disclosed. Transient data are stored in the processor-local cache hierarchy. An additional control bit forms part of cache addresses, where addresses having the control bit set are designated as “transient storage addresses.” Transient storage addresses are not written back to external main memory and, when evicted from the last level of cache, are discarded. Preferably, transient storage addresses are “privileged” in that they are either not accessible to software or only accessible to supervisory or administrator-level software having appropriate permissions. A number of management functions/instructions are provided to allow administrator/supervisor software to manage and/or modify the behavior of transient cache storage.
    Type: Application
    Filed: December 6, 2005
    Publication date: June 7, 2007
    Inventors: Erik Altman, Michael Gschwind, Robert Montoye, Jude Rivers, Sumedh Sathaye, John-David Wellman, Victor Zyuban
  • Publication number: 20060248287
    Abstract: Arrangements and methods for providing cache management. Preferably, a buffer arrangement is provided that is adapted to record incoming data into a first cache memory from a second cache memory, convey a data location in the first cache memory upon a prompt for corresponding data, in the event of a hit in the first cache memory, and refer to the second cache memory in the event of a miss in the first cache memory.
    Type: Application
    Filed: April 29, 2005
    Publication date: November 2, 2006
    Applicant: IBM Corporation
    Inventors: Alper Buyuktosunoglu, Zhigang Hu, Jude Rivers, John Robinson, Xiaowei Shen, Vijayalakshmi Srinivasan
  • Publication number: 20060236036
    Abstract: There are provided methods and apparatus for accessing a memory array. A method for accessing a memory array includes the step of predicting whether at least two memory references can be satisfied by a single array access based on one of an instruction address, local instruction history and global instruction history.
    Type: Application
    Filed: April 13, 2005
    Publication date: October 19, 2006
    Inventors: Michael Gschwind, Jude Rivers, John-David Wellman, Victor Zyuban
  • Publication number: 20060174089
    Abstract: A method, system, and computer program product for mixing of conventional and augmented instructions within an instruction stream, wherein control may be directly transferred, without operating system intervention, between one type of instruction to another. Extra instruction word bits are added in a manner that is designed to minimally interfere with the encoding, decoding, and instruction processing environment in a manner compatible with existing conventional fixed instruction width code. A plurality of instruction words are inserted into an instruction word oriented architecture to form an encoding group of instruction words. The instruction words in the encoding group are dispatched and executed either independently or in parallel based on a specific microprocessor implementation. The encoding group does not indicate any form of required parallelism or sequentiality. One or more indicators for the encoding group are created, wherein one indicator is used to indicate presence of the encoding group.
    Type: Application
    Filed: February 1, 2005
    Publication date: August 3, 2006
    Applicant: International Business Machines Corporation
    Inventors: Erik Altman, Michael Gschwind, Daniel Prener, Jude Rivers, Sumedh Sathaye, John-David Wellman, Victor Zyuban
  • Publication number: 20060155932
    Abstract: A novel trace cache design and organization to efficiently store and retrieve multi-path traces. A goal is to design a trace cache, which is capable of storing multi-path traces without significant duplication in the traces. Furthermore, the effective access latency of these traces is reduced.
    Type: Application
    Filed: March 1, 2005
    Publication date: July 13, 2006
    Applicant: IBM Corporation
    Inventors: Galen Rasche, Jude Rivers, Vijayalakshmi Srinivasan
  • Publication number: 20060155965
    Abstract: A dynamic predictive and/or exact caching mechanism is provided in various stages of a microprocessor pipeline so that various control signals can be stored and memorized in the course of program execution. Exact control signal vector caching may be done. Whenever an issue group is formed following instruction decode, register renaming, and dependency checking, an encoded copy of the issue group information can be cached under the tag of the leading instruction. The resulting dependency cache or control vector cache can be accessed right at the beginning of the instruction issue logic stage of the microprocessor pipeline the next time the corresponding group of instructions come up for re-execution. Since the encoded issue group bit pattern may be accessed in a single cycle out of the cache, the resulting microprocessor pipeline with this embodiment can be seen as two parallel pipes, where the shorter pipe is followed if there is a dependency cache or control vector cache hit.
    Type: Application
    Filed: January 12, 2005
    Publication date: July 13, 2006
    Applicant: International Business Machines Corporation
    Inventors: Erik Altman, Michael Gschwind, Jude Rivers, Sumedh Sathaye, John-David Wellman, Victor Zyuban
  • Publication number: 20060155933
    Abstract: A hardware based method for determining when to migrate cache lines to the cache bank closest to the requesting processor to avoid remote access penalty for future requests. In a preferred embodiment, decay counters are enhanced and used in determining the cost of retaining a line as opposed to replacing it while not losing the data. In one embodiment, a minimization of off-chip communication is sought; this may be particularly useful in a CMP environment.
    Type: Application
    Filed: January 13, 2005
    Publication date: July 13, 2006
    Applicant: International Business Machines Corporation
    Inventors: Alper Buyuktosunoglu, Zhigang Hu, Jude Rivers, John Robinson, Xiaowei Shen, Vijayalakshmi Srinivasan
  • Publication number: 20060080062
    Abstract: A system and method for projecting reliability to manage system functions includes an activity module which determines activity in the system. A reliability module interacts with the activity module to determine a reliability measurement for the module in real-time based upon the activity and measured operational quantities of the system. A management module manages actions of the system based upon the reliability measurement input from the reliability module. This may be to provide corrective action, to reallocate resources, increase reliability of the module, etc.
    Type: Application
    Filed: October 8, 2004
    Publication date: April 13, 2006
    Inventors: Pradip Bose, Jude Rivers, Jayanth Srinivasan
  • Publication number: 20050257078
    Abstract: A system and method for projecting reliability includes a module, such as a chip, which includes workload inputs, which account for activity on the chip. A reliability module interacts with the chip to determine a reliability measurement for the chip based upon the workload inputs such that functions of the chip are altered based upon the reliability measurement. The reliability measurements are employed to rate or improve chip designs or calculate a reliability measure in real-time.
    Type: Application
    Filed: April 21, 2004
    Publication date: November 17, 2005
    Inventors: Pradip Bose, Jude Rivers, Jayanth Srinivasan
  • Publication number: 20050251654
    Abstract: A pipeline system and method includes a plurality of operational stages. The stages include a pointer register stage which stores pointer information and updates, and a rename and dependence checking stage located downstream of the pointer register stage, which renames registers and determines if dependencies exist. A functional unit provides pointer information updates to the pointer register stage such that pointer information is processed and updated to the pointer register stage before or in parallel with the register dependency checking.
    Type: Application
    Filed: April 21, 2004
    Publication date: November 10, 2005
    Inventors: Erik Altman, Michael Gschwind, Jude Rivers, Sumedh Sathaye, John-David Wellman, Victor Zyuban
  • Publication number: 20050114629
    Abstract: This invention pertains to apparatus, method and a computer program stored on a computer readable medium. The computer program includes instructions for use with an instruction unit having a code page, and has computer program code for partitioning the code page into at least two sections for storing in a first section thereof a plurality of instruction words and, in association with at least one instruction word, for storing in a second section thereof an extension to each instruction word in the first section. The computer program further includes computer program code for setting a state of at least one page table entry bit for indicating, on a code page by code page basis, whether the code page is partitioned into the first and second sections for storing instruction words and their extensions, or whether the code page is comprised instead of a single section storing only instruction words.
    Type: Application
    Filed: November 24, 2003
    Publication date: May 26, 2005
    Inventors: Erik Altman, Michael Gschwind, David Luick, Daniel Prener, Jude Rivers, Sumedh Sathaye, John-David Wellman
  • Publication number: 20050044317
    Abstract: A cache memory including a content addressable memory, random access memory (CAMRAM) cache and method for managing a cache to reduce cache energy consumption. A cache buffer receives incoming data and buffers a storage array. The cache buffer holds a number of most recently accessed data blocks. In any access, cache buffer locations are checked before checking the storage array.
    Type: Application
    Filed: August 20, 2003
    Publication date: February 24, 2005
    Inventor: Jude Rivers
  • Publication number: 20050015537
    Abstract: A system for instruction memory storage and processing in a computing device having a processor, the system is based on backwards branch control information and comprises a dynamic loop buffer (DLB) which is a tagless array of data organized as a direct-mapped structure; a DLB controller having a primary memory unit partitioned into a plurality of banks for controlling the state of the instruction memory system and accepting a program counter address as an input, the DLB controller outputs distinct signals. The system further comprises an address register located in the memory of the computing device, it is a staging register for the program counter address and an instruction fetch process that takes two cycles of the processor clock; and a bank select unit for serving as a program counter address decoder to accept the program counter address and to output a bank enable signal for selecting a bank in a primary memory unit, and a decoded address for access within the selected bank.
    Type: Application
    Filed: July 16, 2003
    Publication date: January 20, 2005
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Sameh Asaad, Jaime Moreno, Jude Rivers, John-David Wellman