Patents by Inventor Kenneth L. Ward

Kenneth L. Ward 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: 9798549
    Abstract: An instruction sequencing unit in an out-of-order (OOO) processor includes a Most Favored Instruction (MFI) mechanism that designates an instruction as an MFI. The processing queues in the processor identify when they contain the MFI, and assures processing the MFI. The MFI remains the MFI until it is completed or is flushed, and which time the MFI mechanism selects the next MFI.
    Type: Grant
    Filed: October 31, 2016
    Date of Patent: October 24, 2017
    Assignee: International Business Machines Corporation
    Inventors: Maarten J. Boersma, Robert A. Cordes, David A. Hrusecky, Jennifer L. Molnar, Brian W. Thompto, Albert J. Van Norstrand, Jr., Kenneth L. Ward
  • Publication number: 20170300336
    Abstract: A hardware execution unit within a processor core executes a second instruction, which is part of a software thread, and which is executed out of order within the software thread. A sticky bit flip detection hardware device detects a change to a sticky bit in a floating-point status and control register (FPSCR) within the processor core. An instruction issue hardware unit identifies a first instruction that is in the software thread that is capable of reading or clearing the sticky bit. A flushing execution unit flushes all results of instructions from an instruction completion table (ICT) that include and are after the first instruction in the software thread. A hardware dispatch device dispatches all instructions that include and are after the first instruction in the software thread for execution by one or more hardware execution units within the processor core in a next-to-complete (NTC) sequential order.
    Type: Application
    Filed: April 18, 2016
    Publication date: October 19, 2017
    Inventors: BRIAN D. BARRICK, STEVEN J. BATTLE, SUSAN E. EISEN, MICHAEL J. GENDEN, GLENN O. KINCAID, DUNG Q. NGUYEN, BRIAN W. THOMPTO, KENNETH L. WARD
  • Publication number: 20170235674
    Abstract: A multi-slice processor that includes execution slices, and a history buffer, where the history buffer includes a plurality of entries, where at least one of the entries includes transactional memory state data that corresponds to a transactional memory instruction updating a transaction memory state, and where operation of such a multi-slice processor includes: propagating a flush signal to the plurality of entries of the history buffer; responsive to the flush signal, generating, from an entry of the history buffer, the transactional memory state data; and restoring to a transactional memory state in dependence upon the transactional memory state data.
    Type: Application
    Filed: February 15, 2016
    Publication date: August 17, 2017
    Inventors: BRIAN D. BARRICK, SUSAN E. EISEN, KURT A. FEISTE, DUNG Q. NGUYEN, KENNETH L. WARD, JING ZHANG
  • Publication number: 20170090941
    Abstract: Within a processor, speculative finishes of load instructions only are tracked in a speculative finish table by maintaining an oldest load instruction of a thread in the speculative finish table after data is loaded for the oldest load instruction, wherein a particular queue index tag assigned to the oldest load instruction by an execution unit points to a particular entry in the speculative finish table, wherein the oldest load instruction is waiting to be finished dependent upon an error check code result. Responsive to a flow unit receiving the particular queue index tag with an indicator that the error check code result for data retrieved for the oldest load instruction is good, finishing the oldest load instruction in the particular entry pointed to by the queue index tag and writing an instruction tag stored in the entry for the oldest load instruction out of the speculative finish table for completion.
    Type: Application
    Filed: September 29, 2015
    Publication date: March 30, 2017
    Inventors: SUSAN E. EISEN, DAVID A. HRUSECKY, CHRISTOPHER M. MUELLER, DUNG Q. NGUYEN, A. JAMES VAN NORSTRAND, JR., KENNETH L. WARD
  • Publication number: 20170090937
    Abstract: Within a processor, speculative finishes of load instructions only are tracked in a speculative finish table by maintaining an oldest load instruction of a thread in the speculative finish table after data is loaded for the oldest load instruction, wherein a particular queue index tag assigned to the oldest load instruction by an execution unit points to a particular entry in the speculative finish table, wherein the oldest load instruction is waiting to be finished dependent upon an error check code result. Responsive to a flow unit receiving the particular queue index tag with an indicator that the error check code result for data retrieved for the oldest load instruction is good, finishing the oldest load instruction in the particular entry pointed to by the queue index tag and writing an instruction tag stored in the entry for the oldest load instruction out of the speculative finish table for completion.
    Type: Application
    Filed: October 19, 2015
    Publication date: March 30, 2017
    Inventors: SUSAN E. EISEN, DAVID A. HRUSECKY, CHRISTOPHER M. MUELLER, DUNG Q. NGUYEN, A. JAMES VAN NORSTRAND, JR., KENNETH L. WARD
  • Publication number: 20160283236
    Abstract: An approach is provided in which a mapper control unit matches a result instruction tag corresponding to an executed instruction to a history buffer entry's instruction tag. The matched history buffer entry includes multiple history buffer field sets that each include a field set state indicator. The mapper control unit identifies a subset of the history buffer field sets having a valid field set state indicator and stores result data corresponding to the result instruction tag in the identified subset of history buffer field sets. In turn, the mapper control unit restores a subset of a register's fields utilizing content from the subset of history buffer field sets.
    Type: Application
    Filed: March 25, 2015
    Publication date: September 29, 2016
    Inventors: Michael J. Genden, Dung Q. Nguyen, Kenneth L. Ward
  • Publication number: 20160253181
    Abstract: An approach is provided in which a mapper control unit receives dispatch information corresponding to a dispatching instruction that targets some of the register fields in a register. The mapper control unit selects, in a history buffer, an available history buffer entry that includes multiple field sets, each including an itag field. In turn, the mapper control unit modifies some of the history buffer field sets, including the itag fields, based on the existing content stored in the targeted register fields.
    Type: Application
    Filed: February 26, 2015
    Publication date: September 1, 2016
    Inventors: Sundeep Chadha, Michael J. Genden, Dung Q. Nguyen, David R. Terry, Kenneth L. Ward
  • Publication number: 20160253177
    Abstract: An approach is provided in which a mapper control unit receives first dispatch information corresponding to a first instruction that identifies a first register and a first register type. The mapper control unit dynamically configures a first history buffer entry to support the first register type and, in turn, stores content from the first register into the first history buffer entry. The mapper control unit then receives second dispatch information corresponding to a second instruction that identifies a second register and a second register type, which is different than the first register type. The mapper control unit dynamically configures a second history buffer entry to support the second register type and, in turn, stores content from the second register into the second history buffer entry.
    Type: Application
    Filed: February 26, 2015
    Publication date: September 1, 2016
    Inventors: Michael J. Genden, Hung Q. Le, Dung Q. Nguyen, Kenneth L. Ward
  • Patent number: 7603497
    Abstract: A method of checkpointing a microprocessor by providing, in parallel, a current read value from a queue and a next read value from the queue, and then selectively passing one of the current read value and next read value to a capture latch based on an instruction completion signal. The capture latch can directly drive the checkpoint register circuitry in the recovery unit of the microprocessor. If the queue is empty, a pair of multiplexers connected to the input of the register queue array are used to pass the input data value. The instruction completion signal may indicate whether all instructions in an instruction group have successfully completed.
    Type: Grant
    Filed: January 27, 2009
    Date of Patent: October 13, 2009
    Assignee: International Business Machines Corporation
    Inventors: Michael J. Mack, Kenneth L. Ward
  • Publication number: 20090132854
    Abstract: A method of checkpointing a microprocessor by providing, in parallel, a current read value from a queue and a next read value from the queue, and then selectively passing one of the current read value and next read value to a capture latch based on an instruction completion signal. The capture latch can directly drive the checkpoint register circuitry in the recovery unit of the microprocessor. If the queue is empty, a pair of multiplexers connected to the input of the register queue array are used to pass the input data value. The instruction completion signal may indicate whether all instructions in an instruction group have successfully completed.
    Type: Application
    Filed: January 27, 2009
    Publication date: May 21, 2009
    Inventors: Michael J. Mack, Kenneth L. Ward
  • Patent number: 7526583
    Abstract: A method of checkpointing a microprocessor by providing, in parallel, a current read value from a queue and a next read value from the queue, and then selectively passing one of the current read value and next read value to a capture latch based on an instruction completion signal. The capture latch can directly drive the checkpoint register circuitry in the recovery unit of the microprocessor. If the queue is empty, a pair of multiplexers connected to the input of the register queue array are used to pass the input data value. The instruction completion signal may indicate whether all instructions in an instruction group have successfully completed.
    Type: Grant
    Filed: June 23, 2005
    Date of Patent: April 28, 2009
    Assignee: International Business Machines Corporation
    Inventors: Michael J. Mack, Kenneth L. Ward
  • Patent number: 5752734
    Abstract: A rail component for pick-up and flat-bed trucks to support side or back pieces comprising a plurality of vertically disposed support rails positioned around the periphery of a rear portion of a truck, each support rail including a C-shaped channel with a back wall at its central extent and with extension plates at right angles therefrom being provided with screw holes in a vertical array, a supplemental back wall with extension plates and with the back walls spaced at right angles from each other, each back wall having at least one aperture.
    Type: Grant
    Filed: April 11, 1994
    Date of Patent: May 19, 1998
    Inventors: Kenneth L. Ward, George M. Jameson, Sr.