Patents Represented by Attorney Michael A. Davis
-
Patent number: 5732005Abstract: 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: GrantFiled: February 10, 1995Date of Patent: March 24, 1998Assignee: International Business Machines CorporationInventors: James Allan Kahle, Tai Dinh Ngo, Aubrey Deene Ogden, Michael Putrino, Johm Victor Sell
-
Patent number: 5692218Abstract: 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: GrantFiled: April 25, 1996Date of Patent: November 25, 1997Assignees: International Business Machines Corporation, Motorola, Inc.Inventors: Michael Scott Allen, Michael Julio Garcia, Charles Roberts Moore, Robert James Reese
-
Patent number: 5687350Abstract: 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: GrantFiled: February 10, 1995Date of Patent: November 11, 1997Assignee: International Business Machines CorporationInventors: Timothy Bucher, Douglas Christopher Hester, John Victor Sell, Cang N. Tran
-
Patent number: 5682495Abstract: 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: GrantFiled: December 9, 1994Date of Patent: October 28, 1997Assignees: International Business Machines Corporation, Motorola, Inc.Inventors: Brad B. Beavers, Lew Chua-Eoan, Pei-Chun Peter Liu, Chih-Jui Peng
-
Patent number: 5678016Abstract: 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: GrantFiled: August 8, 1995Date of Patent: October 14, 1997Assignee: International Business Machines CorporationInventors: Lee E. Eisen, Robert T. Golla, Christopher H. Olson, Michael Putrino
-
Patent number: 5646875Abstract: A system and method for denormalizing a floating point result is disclosed. Denormalized operands are capable of representing much smaller values than can be represented by a number normalized under the ANSI/IEEE standard 754-1985 that governs the representation of numbers in floating point notation to ensure uniformity among floating point notation users. The majority of results will be normalized operands and therefore the floating point unit pipeline is optimized to produce normalized results but contains wider exponent fields in order to represent values received as denormalized numbers. In order to return the result as a denormalized number with the smaller ANSI/IEEE exponent field, denormalization is accomplished by using the same pipeline resources by means of the floating point unit feedback path and uses one of the exponent equalizing alignment shifters and an incrementor in order to round the denormalized result.Type: GrantFiled: February 27, 1995Date of Patent: July 8, 1997Assignee: International Business Machines CorporationInventors: Michael Preston Taborn, Steven Michael Burchfiel, David Terrence Matheny
-
Patent number: 5640534Abstract: An interleaved data cache array which is divided into two subarrays is provided for utilization within a data processing system. Each subarray includes a plurality of cache lines wherein each cache line includes a selected block of data, a parity field, a content addressable field containing a portion of an effective address for the selected block of data, a second content addressable field contains a portion of the real address for the selected block of data and a data status field. A separate effective address port and real address port permit parallel access to the cache without conflict in separate subarrays and a subarray arbitration logic circuit is provided for attempted simultaneous access of a single subarray by both the effective address port and the real address port.Type: GrantFiled: October 5, 1994Date of Patent: June 17, 1997Assignee: International Business Machines CorporationInventors: Peichun Peter Liu, Brian David Branson, Victor Shadan
-
Patent number: 5553255Abstract: A data processor (12) has a branch prediction unit (28) that predicts conditional branch instructions and a control unit (70) therein that monitors the number of unresolved branch instructions. This control unit selectively allows the data processor to fetch the instructions indicated by the branch prediction unit from an external memory system depending upon the number of unresolved branch instructions. The particular threshold number of unresolved branch instructions is user programmable. The data processor thereby limits its bus accesses to those occasions when it is reasonably sure that it will need the indicated instructions.Type: GrantFiled: April 27, 1995Date of Patent: September 3, 1996Assignees: Motorola, Inc., International Business MachinesInventors: Danny K. Jain, David S. Levitan, Paul C. Rossbach
-
Patent number: 5550995Abstract: A memory cache (14) has a semi-associative cache array (50), a cache reload buffer (40), and a cache reload buffer driver (42). The memory cache writes received data to the cache reload buffer and waits until the data is requested again before it invalidates any cache aliased entries in the semi-associative cache array. This invalidation step requires no dedicated cycle but instead is a result of the memory cache being able to simultaneously read from the semi-associative cache array and the cache reload buffer.Type: GrantFiled: January 3, 1994Date of Patent: August 27, 1996Assignees: Motorola, Inc., International Business MachinesInventors: David D. Barrera, Bahador Rastegar, Paul C. Rossbach
-
Patent number: 5465373Abstract: A method and system for permitting single cycle instruction dispatch in a superscalar processor system which dispatches multiple instructions simultaneously to a group of execution units for execution and placement of results thereof within specified general purpose registers. Each instruction generally includes at least one source operand and one destination operand. A plurality of intermediate storage buffers are provided and each time an instruction is dispatched to an available execution unit, a particular one of the intermediate storage buffers is assigned to any destination operand within the dispatched instruction, permitting the instruction to be dispatched within a single cycle by eliminating any requirement for determining and selecting the specified general purpose register or a designated alternate general purpose register.Type: GrantFiled: January 8, 1993Date of Patent: November 7, 1995Assignee: International Business Machines CorporationInventors: James A. Kahle, Chin-Cheng Kau, David S. Levitan, Aubrey D. Ogden, Ali A. Poursepanj, Paul K.-G. Tu, Donald E. Waldecker
-
Patent number: 5442766Abstract: A method and system for distributed instruction address translation in a multiscalar data processing system having multiple processor units for executing multiple tasks, instructions and data stored within memory at real addresses therein and a fetcher unit for fetching and dispatching instructions to the processor units. A memory management unit (MMU) is established which includes a translation buffer and translation algorithms for implementing page table and address block type translations of every effective address within the data processing system into real addresses within memory. A translation array, which includes a small number of translation objects for translating effective addresses into real addresses, is then established within the fetcher unit. The translation objects are periodically and selectively varied, utilizing the translation capability of the memory management unit (MMU), in response to a failure to translate an effective address into a real address within the fetcher unit.Type: GrantFiled: October 9, 1992Date of Patent: August 15, 1995Assignee: International Business Machines CorporationInventors: Tan V. Chu, Charles R. Moore, John S. Muhich, Terence M. Potter
-
Patent number: 5437017Abstract: Translation lookaside buffers (TLB) are often utilized in the data processing system to efficiently translate an effective or virtual address to a real address within system memory. In systems which include multiple processors which may all access system memory, each processor may include a translation lookaside buffer (TLB) for translating effective addresses to real addresses and coherency between all translation lookaside buffers (TLB) must therefore be maintained. The method and system disclosed herein may be utilized to broadcast a unique bus structure in response to an execution of a translation lookaside buffer invalidate (TLBI) instruction by any processor within a multiprocessor system. The bus structure is accepted by other processors along the bus only in response to an absence of a pending translation lookaside buffer invalidate (TLBI) instruction within each processor.Type: GrantFiled: October 9, 1992Date of Patent: July 25, 1995Assignee: International Business Machines CorporationInventors: Charles R. Moore, John S. Muhich
-
Patent number: 5421020Abstract: A data processing system for speculatively executing instructions. The data processing system includes a memory for storing instructions at addresses which can be generated by a branch unit in a processor. The processor also has a count register for storing an update value, a dispatch version value and a completion version value. A fetcher connected to the branch unit fetches instructions from memory based upon addresses calculated by the branch unit. The branch unit handles processing of conditional branch instructions. To do so, means for initializing the update value and the dispatch version value for branch control are provided. Further included are means responsive to completion of initialization for copying the update value as the completion version value. The system further includes means responsive to dispatch of a conditional branch instruction for examining the dispatch version value to determine if a branch should be taken and then decrementing the dispatch version value.Type: GrantFiled: January 8, 1993Date of Patent: May 30, 1995Assignee: International Business Machines CorporationInventor: David S. Levitan
-
Patent number: 5410657Abstract: A method and system are disclosed for implementing floating point exception enabled operation without substantial performance degradation. In a multiscalar processor system, multiple instructions may be issued and executed simultaneously utilizing multiple independent functional units. This is typically accomplished utilizing separate branch, fixed point and floating point processor units. Floating point arithmetic instructions within the floating point processor unit may initiate one of a variety of exceptions associated within invalid operations and as a result of the pipelined nature of floating point processor units an identification of which instruction initiated the exception is not possible. In the described method and system, an associated dummy instruction having a retained instruction address is dispatched to the fixed point processor unit each time a floating point arithmetic instruction is dispatched to the floating point processor unit.Type: GrantFiled: October 9, 1992Date of Patent: April 25, 1995Assignee: International Business Machines CorporationInventors: Christopher H. Olson, Terence M. Potter