Patents by Inventor David Barrick

David Barrick 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: 7904697
    Abstract: An apparatus and method for executing a Load Register instruction in which the source data of the Load Register instruction is retained in its original physical register while the architected target register is mapped to this same physical target register. In this state the two architected registers alias to one physical register. When the source register of the Load Address instruction is specified as the target address of a subsequent instruction, a free physical register is assigned to the Load Registers source register. And with this assignment the alias is thus broken. Similarly when the target register of the Load Address instruction is the target address of a subsequent instruction, a new physical register is assigned to the Load Registers target address. And with this assignment the alias is thus broken.
    Type: Grant
    Filed: March 7, 2008
    Date of Patent: March 8, 2011
    Assignee: International Business Machines Corporation
    Inventors: Brian David Barrick, Brian William Curran, Lee Evan Eisen
  • Patent number: 7769985
    Abstract: The present invention provides for a method for a load address dependency mechanism in a high frequency, low power processor. A load instruction corresponding to a memory address is received. At least one unexecuted preceding instruction corresponding to the memory address is identified. The load instruction is stored in a miss queue. And the load instruction is tagged as a local miss.
    Type: Grant
    Filed: February 4, 2008
    Date of Patent: August 3, 2010
    Assignee: International Business Machines Corporation
    Inventors: Brian David Barrick, Kimberly Marie Fernsler, Dwain Alan Hicks, David Scott Ray, David Shippy, Takeki Osanai
  • Patent number: 7730290
    Abstract: A method is disclosed for executing a load instruction. Address information of the load instruction is used to generate an address of needed data, and the address is used to search a cache memory for the needed data. If the needed data is found in the cache memory, a cache hit signal is generated. At least a portion of the address is used to search a queue for a previous load instruction specifying the same address. If a previous load instruction specifying the same address is found, the cache hit signal is ignored and the load instruction is stored in the queue. A load/store unit, and a processor implementing the method, are also described.
    Type: Grant
    Filed: February 25, 2008
    Date of Patent: June 1, 2010
    Assignee: International Business Machines Corporation
    Inventors: Brian David Barrick, Kimberly Marie Fernsler, Dwain A. Hicks, Takeki Osanai, David Scott Ray
  • Publication number: 20090228692
    Abstract: An apparatus and method for executing a Load Register instruction in which the source data of the Load Register instruction is retained in its original physical register while the architected target register is mapped to this same physical target register. In this state the two architected registers alias to one physical register. When the source register of the Load Address instruction is specified as the target address of a subsequent instruction, a free physical register is assigned to the Load Registers source register. And with this assignment the alias is thus broken. Similarly when the target register of the Load Address instruction is the target address of a subsequent instruction, a new physical register is assigned to the Load Registers target address. And with this assignment the alias is thus broken.
    Type: Application
    Filed: March 7, 2008
    Publication date: September 10, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Brian David Barrick, Brian William Curran, Lee Evan Eisen
  • Patent number: 7464242
    Abstract: A method, an apparatus, and a computer program product are provided for detecting load/store dependency in a memory system by dynamically changing the address width for comparison. An incoming load/store operation must be compared to the operations in the pipeline and the queues to avoid address conflicts. Overall, the present invention introduces a cache hit or cache miss input into the load/store dependency logic. If the incoming load operation is a cache hit, then the quadword boundary address value is used for detection. If the incoming load operation is a cache miss, then the cacheline boundary address value is used for detection. This invention enhances the performance of LHS and LHR operations in a memory system.
    Type: Grant
    Filed: February 3, 2005
    Date of Patent: December 9, 2008
    Assignee: International Business Machines Corporation
    Inventors: Brian David Barrick, Dwain Alan Hicks, Takeki Osanai, David Scott Ray
  • Publication number: 20080148017
    Abstract: A method is disclosed for executing a load instruction. Address information of the load instruction is used to generate an address of needed data, and the address is used to search a cache memory for the needed data. If the needed data is found in the cache memory, a cache hit signal is generated. At least a portion of the address is used to search a queue for a previous load instruction specifying the same address. If a previous load instruction specifying the same address is found, the cache hit signal is ignored and the load instruction is stored in the queue. A load/store unit, and a processor implementing the method, are also described.
    Type: Application
    Filed: February 25, 2008
    Publication date: June 19, 2008
    Inventors: Brian David Barrick, Kimberly Marie Fernsler, Dwain A. Hicks, Takeki Osanai, David Scott Ray
  • Publication number: 20080141014
    Abstract: The present invention provides for a method for a load address dependency mechanism in a high frequency, low power processor. A load instruction corresponding to a memory address is received. At least one unexecuted preceding instruction corresponding to the memory address is identified. The load instruction is stored in a miss queue. And the load instruction is tagged as a local miss.
    Type: Application
    Filed: February 4, 2008
    Publication date: June 12, 2008
    Inventors: Brian David Barrick, Kimberly Marie Fensler, Dwain Alan Hicks, David Scott Ray, David Shippy, Takeki Osanai
  • Patent number: 7376816
    Abstract: A method is disclosed for executing a load instruction. Address information of the load instruction is used to generate an address of needed data, and the address is used to search a cache memory for the needed data. If the needed data is found in the cache memory, a cache hit signal is generated. At least a portion of the address is used to search a queue for a previous load instruction specifying the same address. If a previous load instruction specifying the same address is found, the cache hit signal is ignored and the load instruction is stored in the queue. A load/store unit, and a processor implementing the method, are also described.
    Type: Grant
    Filed: November 12, 2004
    Date of Patent: May 20, 2008
    Assignee: International Business Machines Corporation
    Inventors: Brian David Barrick, Kimberly Marie Fernsler, Dwain A. Hicks, Takeki Osanai, David Scott Ray
  • Patent number: 7363468
    Abstract: The present invention provides for a method for a load address dependency mechanism in a high frequency, low power processor. A load instruction corresponding to a memory address is received. At least one unexecuted preceding instruction corresponding to the memory address is identified. The load instruction is stored in a miss queue. And the load instruction is tagged as a local miss.
    Type: Grant
    Filed: November 18, 2004
    Date of Patent: April 22, 2008
    Assignee: International Business Machines Corporation
    Inventors: Brian David Barrick, Kimberly Marie Fensler, Dwain Alan Hicks, David Scott Ray, David Shippy, Takeki Osanai
  • Patent number: 7302527
    Abstract: Methods for executing load instructions are disclosed. In one method, a load instruction and corresponding thread information are received. Address information of the load instruction is used to generate an address of the needed data, and the address is used to search a cache memory for the needed data. If the needed data is found in the cache memory, a cache hit signal is generated. At least a portion of the address is used to search a queue for a previous load and/or store instruction specifying the same address. If such a previous load/store instruction is found, the thread information is used to determine if the previous load/store instruction is from the same thread. If the previous load/store instruction is from the same thread, the cache hit signal is ignored, and the load instruction is stored in the queue. A load/store unit is also described.
    Type: Grant
    Filed: November 12, 2004
    Date of Patent: November 27, 2007
    Assignee: International Business Machines Corporation
    Inventors: Brian David Barrick, Kimberly Marie Fernsler, Dwain A. Hicks, Takeki Osanai, David Scott Ray
  • Patent number: 7302530
    Abstract: The present invention provides a method of updating the cache state information for store transactions in an system in which store transactions only read the cache state information upon entering the unit pipe or store portion of the store/load queue. In this invention, store transactions in the unit pipe and queue are checked whenever a cache line is modified, and their cache state information updated as necessary. When the modification is an invalidate, the check tests that the two share the same physical addressable location. When the modification is a validate, the check tests that the two involve the same data cache line.
    Type: Grant
    Filed: July 22, 2004
    Date of Patent: November 27, 2007
    Assignee: International Business Machines Corporation
    Inventors: Brian David Barrick, Dwain Alan Hicks, Takeki Osanai
  • Publication number: 20070256836
    Abstract: Methods of treating a subterranean formation penetrated by a wellbore are provided, the methods comprising the steps of: (a) for a treatment fluid to be used in treating a subterranean formation, establishing a desired viscosity at a desired temperature for a desired time; (b) forming a treatment fluid that has the desired viscosity at the desired temperature for the desired time, wherein the treatment fluid comprises: (i) a base fluid; (ii) a viscosifying agent comprising a polymer; and (iii) a surfactant; and (c) introducing the treatment fluid into a subterranean formation. According to one aspect, an otherwise substantially identical treatment fluid with a lower concentration of the surfactant would not achieve the desired viscosity at the desired temperature for the desired time.
    Type: Application
    Filed: May 5, 2006
    Publication date: November 8, 2007
    Inventors: Thomas Welton, David Griffin, David Barrick, Jason Bryant, Malcom Talbot
  • Patent number: 7130947
    Abstract: The present invention provides a method of arbitration for resources which allows requestors from multiple frequency domains. Most requestors generate requests at full speed. A small number of low-speed requesters generate requests every two full-speed cycles, and hold their requests for two full-speed cycles. The arbitration method gives priority to the requests from the low-priority requesters and guarantees that two requests made by the half-speed requestors at the beginning of a low-speed cycle will be granted over the course of the low-speed cycle. The requests generated by the low-speed requestors are issued in phases. Issuance of later phases of a request is blocked when the request has been granted in an earlier phase.
    Type: Grant
    Filed: April 29, 2004
    Date of Patent: October 31, 2006
    Assignee: International Business Machines Corporation
    Inventor: Brian David Barrick
  • Patent number: 6895454
    Abstract: A method and an apparatus for sharing a request queue between two or more destinations. The method and apparatus utilizes a common data table and a common age queue. The age queue is used to select the oldest request. The corresponding request from the common data table is then extracted and sent to the appropriate destination.
    Type: Grant
    Filed: October 18, 2001
    Date of Patent: May 17, 2005
    Assignee: International Business Machines Corporation
    Inventor: Brian David Barrick
  • Publication number: 20050056424
    Abstract: Environmentally safe viscous well treating fluids and methods are provided by the present invention. The treating fluids are basically comprised of water, a viscosity producing polymer, a boron cross-linking agent for cross-linking the polymer, and a delayed cross-link delinker that comprises polysuccinimide and polyaspartic acid.
    Type: Application
    Filed: September 17, 2003
    Publication date: March 17, 2005
    Inventors: Robert Hanes, Jim Weaver, Billy Slabaugh, David Barrick
  • Patent number: 6779162
    Abstract: A method of analyzing timing reports in a microprocessor design for quick identification of all negative timing paths has been provided. Timing paths are first grouped and saved in a list file. A timing analysis program searches the timing report file for timing paths that match those in the list file. Summary reports have been generated for the existing timing paths. If there are new timing paths, summary reports for the new timing paths are generated. The new timing paths go through the same procedure until all negative timing paths are identified.
    Type: Grant
    Filed: January 7, 2002
    Date of Patent: August 17, 2004
    Assignee: International Business Machines Corporation
    Inventors: Brian David Barrick, Alvan Wing Ng
  • Publication number: 20030131328
    Abstract: A method of analyzing timing reports in a microprocessor design for quick identification of all negative timing paths has been provided. Timing paths are first grouped and saved in a list file. A timing analysis program searches the timing report file for timing paths that match those in the list file. Summary reports have been generated for the existing timing paths. If there are new timing paths, summary reports for the new timing paths are generated. The new timing paths go through the same procedure until all negative timing paths are identified.
    Type: Application
    Filed: January 7, 2002
    Publication date: July 10, 2003
    Applicant: International Business Machines Corporation
    Inventors: Brian David Barrick, Alvan Wing Ng
  • Patent number: 6578130
    Abstract: A method and apparatus for prefetching data in computer systems that tracks the number of prefetches currently active and compares that number to a preset maximum number of allowable prefetches to determine if additional prefetches should currently be performed. By limiting the number of prefetches being performed at any given time, the use of system resources for prefetching can be controlled, and thus system performance can be optimized.
    Type: Grant
    Filed: October 18, 2001
    Date of Patent: June 10, 2003
    Assignee: International Business Machines Corporation
    Inventors: Brian David Barrick, Michael John Mayfield, Brian Patrick Hanley
  • Publication number: 20030079089
    Abstract: A method and apparatus for prefetching data in computer systems that tracks the number of prefetches currently active and compares that number to a preset maximum number of allowable prefetches to determine if additional prefetches should currently be performed. By limiting the number of prefetches being performed at any given time, the use of system resources for prefetching can be controlled, and thus system performance can be optimized.
    Type: Application
    Filed: October 18, 2001
    Publication date: April 24, 2003
    Applicant: International Business Machines Corporation
    Inventors: Brian David Barrick, Michael John Mayfield, Brian Patrick Hanley
  • Publication number: 20030079068
    Abstract: A method and an apparatus for sharing a request queue between two or more destinations. The method and apparatus utilizes a common data table and a common age queue. The age queue is used to select the oldest request. The corresponding request from the common data table is then extracted and sent to the appropriate destination.
    Type: Application
    Filed: October 18, 2001
    Publication date: April 24, 2003
    Applicant: International Business Machines Corporation
    Inventor: Brian David Barrick