Patents by Inventor John E. Murray

John E. Murray 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: 5349651
    Abstract: In the field of high speed computers it is common for a central processing unit to reference memory locations via a virtual addressing scheme, rather than by the actual physical memory addresses. In a multi-tasking environment, this virtual addressing scheme reduces the possibility of different programs accessing the same physical memory location. Thus, to maintain computer processing speed, a high speed translation buffer cache is employed to perform the necessary virtual-to-physical conversions for memory reference instructions. The translation buffer cache stores a number of previously translated virtual addresses and their corresponding physical addresses. A memory management processor is employed to update the translation buffer cache with the most recently accessed physical memory locations. The memory management processor consists of a state machine controlling hardware specifically designed for the purpose of updating the translation buffer cache.
    Type: Grant
    Filed: August 9, 1991
    Date of Patent: September 20, 1994
    Assignee: Digital Equipment Corporation
    Inventors: Ricky C. Hetherington, David A. Webb, Jr., David B. Fite, John E. Murray, Tryggve Fossum, Dwight P. Manley
  • Patent number: 5222223
    Abstract: In a pipelined computer system 10, memory access functions (requests) are simultaneously generated from a plurality of different locations. These multiple requests are passed through a multiplexer 50 according to a prioritization scheme based upon the operational proximity of the request to the instruction currently being executed. In this manner, the complex task of converting virtual-to-physical addresses is accomplished for all memory access requests by a single translation buffer 30. The physical address output from the translation buffer 30 are passed to a cache 28 through a second multiplexer 40 according to a second prioritization scheme based upon the operational proximity of the request to the instruction currently being executed. The first and second prioritization schemes differ, in that the memory is capable of handling other requests while a higher priority "miss" is pending.
    Type: Grant
    Filed: February 3, 1989
    Date of Patent: June 22, 1993
    Assignee: Digital Equipment Corporation
    Inventors: David A. Webb, Jr., Ricky C. Hetherington, John E. Murray, Tryggve Fossum, Dwight P. Manley
  • Patent number: 5167026
    Abstract: In a pipeline processor, simultaneous decoding of multiple specifiers in a variable-length instruction causes a peculiar problem of an intra-instruction read conflict that occurs whenever an instruction includes an autoincrement or an autodecrement specifier which references either directly or indirectly a register specified by a previously occurring specifier for the current instruction. To avoid stalls during the preprocessing of instructions by the instruction unit, register pointers rather than register data are usually passed to the excellent unit because register data is not always available at the time of instruction decoding. If an intra-instruction read conflict exists, however, the operand value specified by the conflicting register specifier is the initial value of the register being incremented or decremented, and this initial value will have been changed by the time that the execution unit executes the instruction.
    Type: Grant
    Filed: February 3, 1989
    Date of Patent: November 24, 1992
    Assignee: Digital Equipment Corporation
    Inventors: John E. Murray, David B. Fite, Mark A. Firstenberg, Lawrence O. Herman, Ronald M. Salett
  • Patent number: 5148528
    Abstract: An instruction decoder for a pipelined data processing unit simultaneously decodes two source specifiers and one destination specifier. All three of the specifiers can be register specifiers in which the specified operand is the content of a specified register. Any one of the specifiers can be a complex specifier designating an index register, a base register, and a displacement. Any one of the source specifiers can specify short literal data. Data for locating the two source operands and the destination operand are transmitted over parallel buses to an execution unit, so that most instructions are executed at a rate of one instruction per clock cycle. The complex specifier can have a variable length determined by its data type as well as its addressing mode. In particular, the complex specifier may specify a long length of extended immediate data that is received through the instruction buffer over a number of clock cycles.
    Type: Grant
    Filed: February 3, 1989
    Date of Patent: September 15, 1992
    Assignee: Digital Equipment Corporation
    Inventors: David B. Fite, John E. Murray, Tryggve Fossum
  • Patent number: 5142631
    Abstract: A method is provided for preprocessing multiple instructions prior to execution of such instructions in a digital computer having an instruction decoder, an instruction execution unit, and multiple general purpose registers which are read to produce memory addresses during the preprocessing.
    Type: Grant
    Filed: February 3, 1989
    Date of Patent: August 25, 1992
    Assignee: Digital Equipment Corporation
    Inventors: John E. Murray, Mark A. Firstenberg, David B. Fite, Michael M. McKeon, Wiliam R. Grundmann, David A. Webb, Jr., Ronald M. Salett, Tryggve Fossum, Dwight P. Manley, Ricky C. Hetherington
  • Patent number: 5142633
    Abstract: An instruction decoder generates implied specifiers for certain predefined instructions, and an operand processing unit preprocess most of the implied specifiers in the same fashion as express operand specifiers. For instructions having an implied autoincrement or autodecrement of the stack pointer, an implied read or write access type is assigned to the instruction and the decode logic is configured accordingly. When an opcode is decoded and is found to have an implied write specifier, a destination operand is created for autodecrementing the stack pointer. If an opcode is decoded and found to have an implied read specifier, a source operand is created for autoincrementing the stack pointer. A register or short literal specifier can be decoded simultaneously with the generation of the implied operand. Therefore some common instructions such as "PUSH Rx" can be decoded in a single cycle.
    Type: Grant
    Filed: February 3, 1989
    Date of Patent: August 25, 1992
    Assignee: Digital Equipment Corporation
    Inventors: John E. Murray, David B. Fite, Mark A. Firstenberg
  • Patent number: 5142634
    Abstract: A branch prediction is made by searching a cache memory for branch history information associated with a branch instruction. If associated information is not found in the cache, then the branch is predicted based on a predetermined branch bias for the branch instruction's opcode; otherwise, the branch is predicted based upon the associated information from the cache. The associated information in the cache preferably includes a length, displacement, and target address in addition to a prediction bit. If the cache includes associated information predicting that the branch will be taken, the target address from cache is used so long as the associated length and displacement match and the length and displacement for the branch instruction; otherwise, the target address must be computed.
    Type: Grant
    Filed: February 3, 1989
    Date of Patent: August 25, 1992
    Assignee: Digital Equipment Corporation
    Inventors: David B. Fite, John E. Murray, Dwight P. Manley, Michael M. McKeon, Elaine H. Fite, Ronald M. Salett, Tryggve Fossum
  • Patent number: 5125083
    Abstract: An operand processing unit delivers a specified address and at least one read/write signal in response to an instruction being a source of destination operand, and delivers the source operand to an execution unit in response to completion of the preprocessing. The execution unit receives the source operand, executes it and delivers the resultant data to memory. A "write queue" receives the write addresses of the destination operands from the operand processing unit, stores the write addresses, and delivers the stored preselected addresses to memory in response to receiving the resultant data corresponding to the preselected address. The addresses of the source operand is compared to the write addresses stored in the write queue, and the operand processing unit is stalled whenever at least one of the write addresses in the write queue is equivalent to the read address. Therefore, fetching of the operand is delayed until the corresponding resultant data has been delivered by the execution unit.
    Type: Grant
    Filed: February 3, 1989
    Date of Patent: June 23, 1992
    Assignee: Digital Equipment Corporation
    Inventors: David B. Fite, Tryggve Fossum, Ricky C. Hetherington, John E. Murray, Jr. David A. Webb
  • Patent number: 5113515
    Abstract: An instruction buffer of a high speed digital computer controls the flow of instruction stream to an instruction decoder. The buffer provides the decoder with nine bytes of sequential instruction stream. The instruction set used by the computer is of the variable length type, such that the decoder consumes a variable number of the instruction stream bytes, depending upon the type of instruction being decoded. As each instruction is consumed, a shifter removes the consumed bytes and repositions the remaining bytes into the lowest order positions. The byte positions left empty by the shifter are filled by instruction stream retrieved from one of a pair of prefetch buffers (IBEX, IBEX2) or from a virtual instruction cache. These prefetch buffers are arranged to hold the next two subsequent quadwords of instruction stream and provide the desired missing bytes.
    Type: Grant
    Filed: February 3, 1989
    Date of Patent: May 12, 1992
    Assignee: Digital Equipment Corporation
    Inventors: David B. Fite, Ricky C. Hetherington, Michael M. McKeon, Dwight P. Manley, John E. Murray
  • Patent number: 5109495
    Abstract: To execute variable-length instructions independently of instruction preprocessing, a central processing unit is provided with a set of queues in the data and control paths between an instruction unit and an execution unit. The queues include a "fork" queue, a source queue, a destination queue, and a program counter queue. The fork queue contains an entry of control information for each instruction processed by the instruction unit. This control information corresponds to the opcode for the instruction, and preferably it is a microcode "fork" address at which a microcode execution unit begins execution to execute the instruction. The source queue specifies the source operands for the instruction. Preferably the source queue stores source pointers and the operands themselves are included in a separate "source list" in the case of operands fetched from memory or immediate data from the instruction stream, or are the contents of a set of general purpose registers in the execution unit.
    Type: Grant
    Filed: February 3, 1989
    Date of Patent: April 28, 1992
    Assignee: Digital Equipment Corp.
    Inventors: David B. Fite, Tryggve Fossum, William R. Grundmann, Dwight P. Manely, Francis X. McKeen, John E. Murray, Ronald M. Salett, Eileen Samberg, Daniel P. Stirling
  • Patent number: 4985825
    Abstract: A technique for processing memory access exceptions along with pre-fetched instructions in a pipelined instruction processing computer system is based upon the concept of pipelining exception information along with other parts of the instruction being executed. In response to the detection of access exceptions at a pipeline stage, corresponding fault information is generated and transferred along the pipeline. The fault information is acted upon only when the instruction reaches the execution stage of the pipeline. Each stage of the instruction pipeline is ported into the front end of a memory unit adapted to perform the virtual-to-physical address translation; each port being provided with storage for virtual addresses accompanying an instruction as well as storage for corresponding fault information.
    Type: Grant
    Filed: February 3, 1989
    Date of Patent: January 15, 1991
    Assignee: Digital Equipment Corporation
    Inventors: David A. Webb, Jr., David B. Fite, Ricky C. Hetherington, Francis X. McKeen, Mark A. Firstenberg, John E. Murray, Dwight P. Manley, Ronald M. Salett, Tryggve Fossum
  • Patent number: 4982402
    Abstract: In a multiprocessor system, an error occurring in any one of the CPUs may have an impact upon the operation of the remaining CPUs, and therefore these errors must be handled quickly. The errors are grouped into two categories: synchronous errors (those that must be corrected immediately to allow continued processing of the current instruction); and asynchronous errors (those errors that do not affect execution of the current instruction and may be handled upon completing execution of the current instruction). Since synchronous errors prevent continued execution of the current instruction, it is preferable that the last stable state conditions of the faulting CPU be restored and the faulting instruction reexecuted. These stable state conditions advantageously occur between the execution of each instruction. However, in a pipelined computer system, it is difficult to identify the beginning and ending of a selected instruction since multiple instructions are in process at the same time.
    Type: Grant
    Filed: February 3, 1989
    Date of Patent: January 1, 1991
    Assignee: Digital Equipment Corporation
    Inventors: Richard C. Beaven, Michael B. Evans, Tryggve Fossum, Ricky C. Hetherington, William R. Grundmann, John E. Murray, Ronald M. Salett
  • Patent number: 4888679
    Abstract: A main memory and cache suitable for scalar processing are used in connection with a vector processor by issuing prefetch requests in response to the recognition of a vector load instruction. A respective prefetch request is issued for each block containing an element of the vector to be loaded from memory. In response to a prefetch request, the cache is checked for a "miss" and if the cache does not include the required block, a refill request is sent to the main memory. The main memory is configured into a plurality of banks and has a capability of processing multiple references. Therefore the different banks can be referenced simultaneously to prefetch multiple blocks of vector data. Preferably a cache bypass is provided to transmit data directly to the vector processor as the data from the main memory are being stored in the cache.
    Type: Grant
    Filed: January 11, 1988
    Date of Patent: December 19, 1989
    Assignee: Digital Equipment Corporation
    Inventors: Tryggve Fossum, Ricky C. Hetherington, David B. Fite, Jr., Dwight P. Manley, Francis X. McKeen, John E. Murray
  • Patent number: 4548002
    Abstract: A roof is disclosed for a mobile home or the like. The roof comprises an existing roof having peripheral blocks disposed along the entire peripheral edge of the existing roof. Insulative material overlies the existing roof and is encompassed by the peripheral blocks. Marginal flashing of impervious material overlies the peripheral blocks and includes a first and a second limb. An upstanding portion is disposed adjacent the distal end of the first limb. Supplementary roof sheets of impervious material overlie the insulative material, the upstanding portion and the first limb and a lag screw or the like secures the first limb between the supplementary roof sheets and the peripheral blocks.
    Type: Grant
    Filed: September 29, 1982
    Date of Patent: October 22, 1985
    Inventor: John E. Murray
  • Patent number: 4380797
    Abstract: A data processing system has a two-level storage system in which data items are copied from a main store into a smaller, faster slave store on demand. The mapping of the main store on to the slave store is a many-to-one mapping so that situations will occur where two required data items cannot both be present simultaneously in the slave store because they map on to the same location. The system has special logic which detects this situation and, upon detection, temporarily suspends the use of the slave store and instead uses a smaller first-in first-out area of storage.
    Type: Grant
    Filed: July 7, 1980
    Date of Patent: April 19, 1983
    Assignee: International Computers Ltd.
    Inventors: Peter L. Desyllas, Barry G. Radley, Alasdair Rawsthorne, John R. Eaton, John E. Murray