Patents by Inventor Michael S. Schlansker

Michael S. Schlansker 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: 5692169
    Abstract: A method for supporting speculative execution includes designating operations as speculative or non-speculative, and then deferring exceptions generated by speculative operations while immediately reporting exceptions by non-speculative operations. If a speculative operation uses a result of a speculative operation that has generated an exception, the exception is propagated. Deferred exceptions are detected and reported using a check operation either incorporated into a non-speculative operation or inserted as a separate check operation. A system for supporting speculative execution includes a functional unit for recognizing a speculative operation and deferring any exceptions generated by such an operation. The functional unit may defer an exception by storing information indicating an error has occurred in the register file. To check for deferred exceptions, the functional unit then reads the register file.
    Type: Grant
    Filed: October 18, 1994
    Date of Patent: November 25, 1997
    Assignee: Hewlett Packard Company
    Inventors: Vinod K. Kathail, Rajiv Gupta, Bantwal R. Rau, Michael S. Schlansker, William S. Worley, Jr., Frederic C. Amerson
  • Patent number: 5664135
    Abstract: An improved computer architecture and instruction set that reduces the delays produced by branch instructions. The invention utilizes a branch processor having a branch memory for storing information specifying a plurality of branch instructions that are contained in a code sequence. The branch memory stores information specifying the target address of each branch instruction and the location of the branch instruction with respect to the beginning of the code sequence. The branch processor receives the results of the various comparisons that determine if the conditions associated with the various branches stored in the branch memory are satisfied. The branch processor preferably stores the identity of the branch that is closed to the beginning of the code sequence for which the condition associated therewith has been satisfied. This branch will be referred to as the highest branch enabled.
    Type: Grant
    Filed: September 28, 1994
    Date of Patent: September 2, 1997
    Assignee: Hewlett-Packard Company
    Inventors: Michael S. Schlansker, Vinod Kathail
  • Patent number: 5615386
    Abstract: An improved data processing system for executing branch instructions which has lower latency times and which only rarely requires the instruction pipeline to be flushed is disclosed. The data processing system utilizes a register file to hold the information needed to execute a branch instruction. The information is loaded into the register file in advance of the branch instruction. This allows the system to prepare more than one branch instruction at any given time. The present invention may be used to cause the cache line containing the target address of the branch instruction to be loaded soon as the target address is available for the branch instruction. Since the outcome of the branch instruction is almost always known when the branch instruction enters the instruction pipeline, the instruction pipeline only rarely needs to be flushed.
    Type: Grant
    Filed: January 18, 1996
    Date of Patent: March 25, 1997
    Assignee: Hewlett-Packard Company
    Inventors: Frederic C. Amerson, Rajiv Gupta, Balasubramanian Kumar, Michael S. Schlansker, William S. Worley
  • Patent number: 5475823
    Abstract: A memory processor which prevents errors when the compiler advances long latency load instructions in the instruction sequence to reduce the loss of efficiency resulting from the latency time. The memory processor intercepts all load and store instructions prior to the instructions entering the memory pipeline. The memory processor stores load instructions for a period of time sufficient to determine if any subsequent store instruction that would have been executed prior to the load instruction, had the load instruction not been moved, references the same address as that specified in the load instruction. If a store instruction references the load instruction address, the invention returns the same data as the load instruction would have if it was not moved by the compiler.
    Type: Grant
    Filed: June 17, 1994
    Date of Patent: December 12, 1995
    Assignee: Hewlett-Packard Company
    Inventors: Frederic C. Amerson, Rajiv Gupta, Vinod K. Kathail, Michael S. Schlansker
  • Patent number: 5404484
    Abstract: The improved cache system reduces the effects of latency times by utilizing a preload instruction inserted by the compiler into the code. The preload instruction is sent sufficiently in advance of the corresponding load instruction to guarantee that the relevant data is in the cache memory when the load instruction is received. In addition, the invention prevents the pollution of the cache with data that will only be used once during the expected lifetime of the data in the cache. This second feature of the invention assures that a large number of references to data that will only be used once does not result in the contents of the cache being replaced with the subsequent need to reload the contents after the data references have been completed.
    Type: Grant
    Filed: September 16, 1992
    Date of Patent: April 4, 1995
    Assignee: Hewlett-Packard Company
    Inventors: Michael S. Schlansker, Vinod K. Kathail, Rajiv Gupta
  • Patent number: 5276826
    Abstract: A computer system having a multi-module memory system. Accesses to the memory modules for reading or writing are undertaken in parallel. The memory system is addressed by input addresses. The memory system includes a map unit for transforming the input addresses to output addresses in a pseudo-random manner so as to tend to distribute memory accesses uniformly among the memory modules whereby contention resulting from multiple concurrent attempts to access the same memory module is reduced. The map unit performs addresses transforms that are repeatable so that the same input address maps to the same output address and that are one-to-one such that each input address maps to one and only one output address.
    Type: Grant
    Filed: August 5, 1991
    Date of Patent: January 4, 1994
    Assignee: Hewlett-Packard Company
    Inventors: Bantwal R. Rau, Michael S. Schlansker