Operation of a multi-slice processor implementing a load/store unit maintaining rejected instructions

US10268518B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10268518-B2
Application numberUS-201815997863-A
CountryUS
Kind codeB2
Filing dateJun 5, 2018
Priority dateMay 11, 2016
Publication dateApr 23, 2019
Grant dateApr 23, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Operation of a multi-slice processor that includes a plurality of execution slices, a plurality of load/store slices, and one or more instruction sequencing units, where operation includes: receiving, at a load/store slice from an instruction sequencing unit, a instruction to be issued; determining, at the load/store slice, a rejection condition for the instruction; and responsive to determining the rejection condition for the instruction, maintaining state information for the instruction in the load/store slice instead of notifying the instruction sequencing unit of a rejection of the instruction.

First claim

Opening claim text (preview).

What is claimed is: 1. A multi-slice processor comprising: a plurality of execution slices and a plurality of load/store slices, wherein the multi-slice processor is configured to carry out: receiving, at a load/store slice, an instruction to be issued; and responsive to determining a rejection condition for the instruction, maintaining state information for the instruction in the load/store slice. 2. The multi-slice processor of claim 1 , wherein the multi-slice processor is further configured to carry out: determining that the rejection condition for the instruction has resolved or is pending resolution; and responsive to determining that the rejection condition for the instruction has resolved or is pending resolution, reissuing the instruction from within the load/store slice. 3. The multi-slice processor of claim 2 , wherein the multi-slice processor is further configured to carry out: responsive to determining that the rejection condition for the instruction has resolved or is pending resolution, notifying an instruction sequencing unit that the instruction is being reissued. 4. The multi-slice processor of claim 2 , wherein the instruction is a load instruction, and wherein the multi-slice processor is further configured to carry out: determining an arrival of data for the instruction from a lower tier of memory into a data cache on the load/store slice; and scheduling the instruction to be issued such that the instruction may provide the data for the instruction to a destination without accessing the data cache. 5. The multi-slice processor of claim 1 , wherein the multi-slice processor is further configured to carry out: determining that the rejection condition is expected to resolve within a quantity of cycles; and responsive to determining that the rejection condition is expected to resolve within the quantity of cycles, scheduling the instruction to be issued coincident with a lapse of the quantity of cycles. 6. The multi-slice processor of claim 1 , wherein the load/store slice comprises a load/store access queue and a load reorder queue, and wherein receiving the instruction to be issued comprises: determining that the instruction is a load instruction; and providing, from the load/store access queue to the load reorder queue, the instruction. 7. The multi-slice processor of claim 1 , wherein the load/store slice comprises a load/store access queue and a store reorder queue, and wherein receiving the instruction to be issued comprises: determining that the instruction is a store instruction; and providing, from the load/store access queue to the store reorder queue, the instruction. 8. An apparatus comprising: a multi-slice processor and computer memory coupled to the multi-slice processor, wherein the multi-slice processor comprises: a plurality of execution slices and a plurality of load/store slices, wherein the multi-slice processor is configured to carry out: receiving, at a load/store slice, an instruction to be issued; and responsive to determining a rejection condition for the instruction, maintaining state information for the instruction in the load/store slice. 9. The apparatus of claim 8 , wherein the multi-slice processor is further configured to carry out: determining that the rejection condition for the instruction has resolved or is pending resolution; and responsive to determining that the rejection condition for the instruction has resolved or is pending resolution, reissuing the instruction from within the load/store slice. 10. The apparatus of claim 9 , wherein the multi-slice processor is further configured to carry out: responsive to determining that the rejection condition for the instruction has resolved or is pending resolution, notifying an instruction sequencing unit that the instruction is being reissued. 11. The apparatus of claim 10 , wherein the instruction is a load instruction, and wherein the multi-slice processor is further configured to carry out: determining an arrival of data for the instruction from a lower tier of memory into a data cache on the load/store slice; and scheduling the instruction to be issued such that the instruction may provide the data for the instruction to a destination without accessing the data cache. 12. The apparatus of claim 8 , wherein the multi-slice processor is further configured to carry out: determining that the rejection condition is expected to resolve within a quantity of cycles; and responsive to determining that the rejection condition is expected to resolve within the quantity of cycles, scheduling the instruction to be issued coincident with a lapse of the quantity of cycles. 13. The apparatus of claim 8 , wherein the load/store slice comprises a load/store access queue and a load reorder queue, and wherein receiving the instruction to be issued comprises: determining that the instruction is a load instruction; and providing, from the load/store access queue to the load reorder queue, the instruction.

Assignees

Inventors

Classifications

  • LOAD or STORE instructions; Clear instruction · CPC title

  • Instruction code · CPC title

  • with dedicated cache, e.g. instruction or stack · CPC title

  • G06F9/3891Primary

    organised in groups of units sharing resources, e.g. clusters · CPC title

  • G06F9/5027Primary

    the resource being a machine, e.g. CPUs, Servers, Terminals · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10268518B2 cover?
Operation of a multi-slice processor that includes a plurality of execution slices, a plurality of load/store slices, and one or more instruction sequencing units, where operation includes: receiving, at a load/store slice from an instruction sequencing unit, a instruction to be issued; determining, at the load/store slice, a rejection condition for the instruction; and responsive to determinin…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F9/3891. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 23 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).