Patents Represented by Attorney Michael A. Davis
  • Patent number: 5802562
    Abstract: An information processing system and method of operation are provided. In response to a first instruction, a supplemental memory stores first information from a system memory. In response to a second instruction, a cache memory stores second information from the supplemental memory if the first information includes the second information and from the system memory otherwise.
    Type: Grant
    Filed: March 22, 1996
    Date of Patent: September 1, 1998
    Assignee: International Business Machines Corporation
    Inventor: James Allen Kahle
  • Patent number: 5784580
    Abstract: During a first cycle, data information is output through a bus from a device coupled to the bus. During a second cycle immediately after the first cycle, address information is output through the bus from the device.
    Type: Grant
    Filed: June 28, 1996
    Date of Patent: July 21, 1998
    Assignee: International Business Machines Corporation
    Inventor: Cang Tran
  • Patent number: 5777490
    Abstract: With first semiconductor circuitry, a first signal is received having a first voltage between a voltage A and a voltage B. With second semiconductor circuitry, a second signal is output having a second voltage between a voltage C and a voltage D in response to the first signal. C is greater than A, and D is greater than B.
    Type: Grant
    Filed: November 27, 1996
    Date of Patent: July 7, 1998
    Assignee: International Business Machines Corporation
    Inventors: Moises Cases, Fahd Hinedi
  • Patent number: 5773856
    Abstract: A method and structure are provided for connecting to integrated circuitry. A connectivity cell includes multiple terminals formed within the integrated circuitry. The connectivity cell further includes at least one metal layer connected to at least one of the terminals. A first area is a substantially minimal area including the connectivity cell. A second area is a substantially minimal area including at least a part of each of multiple portions of the integrated circuitry. The portions are connectable to respective ones of the terminals while having a placement flexibility relative to the terminals. This placement flexibility of the portions is substantially equal to a placement flexibility of the second area within the first area.
    Type: Grant
    Filed: June 18, 1997
    Date of Patent: June 30, 1998
    Assignees: International Business Machines Corporation, Motorola, Inc.
    Inventors: David Ray Bearden, Mark David Bolliger
  • Patent number: 5771372
    Abstract: Circuitry within a processor delays the launching of data onto an external bus by a factor that is proportional to the ratio of an internal processor clock speed to the system or external bus clock speed. This delay provides a delay in the launching of data to external bus devices so that these slower speed external bus devices have enough time to capture the data.
    Type: Grant
    Filed: October 3, 1995
    Date of Patent: June 23, 1998
    Assignee: International Business Machines Corp.
    Inventors: Dac Cong Pham, Mark David Sweet, Cang Tran
  • Patent number: 5758120
    Abstract: A method and system for increasing memory concurrency in a multiprocessor computer system which includes system memory, multiple processors coupled together via a bus, each of the processors including multiple processor units for executing multiple instructions and for performing read, write and store operations and an associated Translation Lookaside Buffer (TLB) for translating effective addresses into real memory addresses within the system memory. Multiple page table entries are provided within a page table within the system memory which each include multiple individually accessible fields, an effective address and an associated real memory address for a selected system memory location. A reference bit is provided within a first individually accessible field in each page table entry and this reference bit is utilized to indicate if an associated system memory location has been accessed for a read or write operation.
    Type: Grant
    Filed: August 20, 1996
    Date of Patent: May 26, 1998
    Assignee: Internatiional Business Machines Corporation
    Inventors: James Allan Kahle, John Stephen Muhich, Richard Raphael Oehler, Edward John Silha
  • Patent number: 5754811
    Abstract: A circular dispatch queue is used to implement an instruction queue, in a microprocessor, in order to reduce the delay associated with the critical timing path between an instruction cache memory and the instruction queue. In the circular dispatch queue, instructions are never moved from one stage to another. Instead, pointers are maintained that indicate the top and bottom instructions within the circular dispatch queue. This technique removes inputs from the multiplexor between the register stages in the circular dispatch queue and the instruction cache memory, thus reducing the critical delay.
    Type: Grant
    Filed: October 8, 1996
    Date of Patent: May 19, 1998
    Inventors: Michael Putrino, Soummya Mallick, Albert John Loper
  • Patent number: 5748938
    Abstract: A method and system are provided for maintaining memory coherency. A first device stores information. A second device is coupled to the first device. The second device inputs at least a portion of the information and outputs an indication that the portion is not to be cached by the second device. Rather than initializing other devices to "know" in advance that a cache memory is absent from a given device, a control signal indicates the device's intent to not cache the requested portion of information in a cache memory.
    Type: Grant
    Filed: December 6, 1994
    Date of Patent: May 5, 1998
    Assignee: International Business Machines Corporation
    Inventor: James Allan Kahle
  • Patent number: 5745698
    Abstract: A method and system are provided for communicating between devices. A signal is output from a first device. In response to the signal, at least one action is initiated by a second device. An indication is output of whether the second device completed the action and of whether operation of the second device is independent of the first device reoutputting the signal.
    Type: Grant
    Filed: August 28, 1996
    Date of Patent: April 28, 1998
    Assignees: International Business Machines Corporation, Motorola, Inc.
    Inventors: Michael Scott Allen, Ravi Kumar Arimilli, John Michael Kaiser, William Kurt Lewchuk
  • Patent number: 5732005
    Abstract: A single-precision floating-point register array for a floating-point execution unit that performs double-precision operations by emulation is provided. The register array comprises a plurality of single-precision floating-point registers and a storage device that stores one or more status bits in association with each of the plurality of registers; the status bits associated with each register indicate either that the associated data register contains single-precision or integer data, or that the data for the associated register is contained in an emulated register in memory that is mapped to the associated register. When a register is a source for an operation, the status bits associated with the register are checked and the required operand data for that register is read from the register or from an emulated register mapped to that register, as a function of the state of the status bits.
    Type: Grant
    Filed: February 10, 1995
    Date of Patent: March 24, 1998
    Assignee: International Business Machines Corporation
    Inventors: James Allan Kahle, Tai Dinh Ngo, Aubrey Deene Ogden, Michael Putrino, Johm Victor Sell
  • Patent number: 5724565
    Abstract: A method and system are provided for processing instruction threads. Execution is initiated by a processing system of a first set of instructions including a particular instruction. The particular instruction includes an indication of a second set of instructions. In response to execution of the particular instruction and to the processing system being of a first type, the processing system continues executing the first set while initiating execution of the second set. In response to execution of the particular instruction and to the processing system being of a second type, the processing system continues executing the first set without initiating execution of the second set.
    Type: Grant
    Filed: February 3, 1995
    Date of Patent: March 3, 1998
    Assignee: International Business Machines Corporation
    Inventors: Pradeep Kumar Dubey, Charles Roberts Moore, Terence Matthew Potter
  • Patent number: 5706464
    Abstract: Atomic memory references require a data processing system to present the appearance of a coherent memory system, which may be achieved in most multiprocessor systems by means of normal memory coherency systems. Writes or attempted writes to memory must be monitored by a processor in order to correctly resolve hits against the reservation state. In a two level cache system the second level cache filters bus operations and forwards to the processor any bus traffic that may involve data stored within the first level cache. This may be accomplished by enforcing an "inclusion" property wherein all data entries within the first level cache are required to be maintained within higher level caches. A problem arises when a block within a first level cache which has had a reservation pending is cast out and the second level cache no longer forwards bus traffic to the associated processor, despite the continued pendency of the reservation.
    Type: Grant
    Filed: February 29, 1996
    Date of Patent: January 6, 1998
    Assignee: International Business Machines Corporation
    Inventors: Charles Roberts Moore, John Stephen Muhich, Robert James Reese
  • Patent number: 5694565
    Abstract: A method and device of executing a load multiple instruction in a superscaler microprocessor is provided. The method comprises the steps of dispatching a load multiple instruction to a load/store unit, wherein the load/store unit begins execution of a dispatched load multiple instruction, and wherein the load multiple instruction loads data from memory into a plurality of registers. The method further includes the step of maintaining a table that lists each register of the plurality of registers and that indicates when data has been loaded into each register by the executing load multiple instruction. The method concludes by executing an instruction that is dependent upon source operand data loaded by the load multiple instruction into a register of the plurality of registers indicated by the instruction as a source register, prior to the load multiple instruction completing its execution, when the table indicates the source operand data has been loaded into the source register.
    Type: Grant
    Filed: September 11, 1995
    Date of Patent: December 2, 1997
    Assignee: International Business Machines Corporation
    Inventors: James A. Kahle, Albert J. Loper, Soummya Mallick, Aubrey D. Ogden
  • Patent number: 5692218
    Abstract: A method and system in a data processing system for transferring data from a first device to a second device within the data processing system. The data processing system includes a data bus, an address bus, a first address space associated with a memory and a second address space associated with an input/output device. Initially, an operation request package is transmitted to a second device from a first device, which informs the second device of the total amount of data to be transferred. A transfer signal is then transmitted in the data processing system. The transfer signal identifies the transfer as a transfer concerning an address in the second address space associated with the input/output device. A first address package is then transmitted to the second device from the first device on the address bus. The first address package includes a transfer identifier, a first identifier associated with the first device and a second identifier associated with the second device.
    Type: Grant
    Filed: April 25, 1996
    Date of Patent: November 25, 1997
    Assignees: International Business Machines Corporation, Motorola, Inc.
    Inventors: Michael Scott Allen, Michael Julio Garcia, Charles Roberts Moore, Robert James Reese
  • Patent number: 5689198
    Abstract: A first inverter includes a first input coupled to a first input node. Also, the first inverter includes a first output coupled to an output node. Further, the first inverter includes a voltage node. A second inverter includes a second input coupled to a second input node. Moreover, the second inverter includes a second output coupled to the voltage node.
    Type: Grant
    Filed: December 18, 1995
    Date of Patent: November 18, 1997
    Assignee: International Business Machines Corporation
    Inventors: Lawrence Joseph Merkel, John Stephen Muhich
  • Patent number: 5687350
    Abstract: A protocol and system for providing a next read address during an address phase of a write transaction in a data cache unit in a processing unit is disclosed. The processing unit includes the data cache unit and an instruction cache unit both coupled to an address bus and a data bus, respectively. The two buses are further connected to a system memory controller separate from the microprocessor. The protocol and system provide for next read address and a next transaction during the address phase in a current write transaction. The protocol loads a pre-fetched address within a current data transaction and then generates a next line fill address using the pre-fetched address which is concatenated to the current data transaction. The pre-fetched address is used to generate a next line fill address.
    Type: Grant
    Filed: February 10, 1995
    Date of Patent: November 11, 1997
    Assignee: International Business Machines Corporation
    Inventors: Timothy Bucher, Douglas Christopher Hester, John Victor Sell, Cang N. Tran
  • Patent number: 5682495
    Abstract: A fully associative address translator which includes a number of entries, each of said number of entries translating a received effective address into a real address, each received effective address including a segment identifier and a page identifier. Each of the entries within the fully associative address translator includes a first translation from an effective address segment identifier into a virtual address segment identifier and a second translation from a virtual address page identifier to a real address page identifier.
    Type: Grant
    Filed: December 9, 1994
    Date of Patent: October 28, 1997
    Assignees: International Business Machines Corporation, Motorola, Inc.
    Inventors: Brad B. Beavers, Lew Chua-Eoan, Pei-Chun Peter Liu, Chih-Jui Peng
  • Patent number: 5678016
    Abstract: A method and apparatus are disclosed for managing the execution of a floating-point store instruction within a data processing system including a memory and a superscalar processor having a number of floating-point registers (FPRs). According to the present invention, multiple instructions are dispatched for execution by the processor, including a floating-point store instruction having as an operand the content of a particular FPR. A determination is made whether the particular FPR is a destination register for results of a second instruction which precedes the store instruction in program order. If so, a determination is made whether the second instruction must complete before subsequent instructions can be successfully dispatched. In response to a determination that the second instruction must be completed prior to successfully dispatching subsequent instructions, the floating-point instruction is cancelled and redispatched after the completion of the second instruction.
    Type: Grant
    Filed: August 8, 1995
    Date of Patent: October 14, 1997
    Assignee: International Business Machines Corporation
    Inventors: Lee E. Eisen, Robert T. Golla, Christopher H. Olson, Michael Putrino
  • Patent number: 5668972
    Abstract: A data cache array which includes a plurality of cache lines wherein each cache line includes a selected block of data, a parity field, a content addressable field containing at least a portion of an address for that block of information and a data status field for providing an indication of data validity within that cache line. An allocation control cell is associated with each cache line and a pseudo least recently utilized (PLRU) logic circuit is provided within the data cache array for each group of cache lines. The pseudo least recently utilized (PLRU) logic circuit is then utilized to select and set a particular allocation control cell within each group of cache lines in response to utilization of those cache lines.
    Type: Grant
    Filed: October 5, 1994
    Date of Patent: September 16, 1997
    Assignee: International Business Machines Corporation
    Inventors: Peichun Peter Liu, Brian David Branson
  • Patent number: 5663965
    Abstract: There is disclosed a central controller for simultaneously testing the embedded arrays in a processor. Test data vectors are serially shifted into a latch and stored into each location in the embedded arrays of the processor. The test data are then read out of the embedded arrays into a read latch and serially shifted into a multiple input shift register, where a polynomial division is performed on the test vector data. If all memory locations in the embedded array function properly, a remainder value will result that is equal to a unique signature remainder for the test vectors used.
    Type: Grant
    Filed: October 6, 1995
    Date of Patent: September 2, 1997
    Assignee: International Business Machines Corp.
    Inventor: Edward Michael Seymour