Indirect instruction predication

US9619234B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9619234-B2
Application numberUS-201615077221-A
CountryUS
Kind codeB2
Filing dateMar 22, 2016
Priority dateFeb 13, 2013
Publication dateApr 11, 2017
Grant dateApr 11, 2017

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.

A circuit arrangement and program product selectively predicate instructions in an instruction stream by determining a first register address from an instruction, determining a second register address based on a value stored at the first register address, and determining whether to predicate the instruction based at least in part on a value stored at the second register address. Predication logic may analyze the instruction to determine the first register address, analyze a register corresponding to the first register address to determine the second register address, and communicate a predication signal to an execution unit based at least in part on the value stored at the second register address.

First claim

Opening claim text (preview).

What is claimed is: 1. A circuit arrangement, comprising: a processing unit; a first register disposed in the processing unit, the first register including a plurality of register entries; an execution unit disposed in the processing unit and configured to receive a predication enable signal that indicates whether to predicate an instruction and selectively predicate instructions based at least in part on the predication enable signal; and predication logic disposed in the processing unit and configured to receive a first register address corresponding to the first register included in the instruction, select one of the plurality of register entries of the first register using the first register address, determine a second register address based at least in part on a first value stored at the first register address of the first register, and communicate the predication enable signal based at least in part on a second value stored at the second register address to selectively predicate the instruction, wherein the predication logic is configured to determine the second register address by accessing the selected one of the plurality of register entries to obtain the first value, and wherein the predication logic is configured to communicate the predication enable signal by addressing a second register using the first value to obtain the second value from the second register, wherein the predication enable signal is based on the second value stored at the second register address. 2. The circuit arrangement of claim 1 , further comprising: instruction decoding logic configured to decode the instruction including the first register address, determine whether the instruction is of a type that supports predication, and communicate the first register address and a predication valid signal indicating whether the instruction is of a type that supports prediction to the predication logic, wherein the predication logic is configured to communicate the predication enable signal based at least in part on the second value stored at the second register address responsive to receiving the predication valid signal indicating that the instruction is of the type that supports predication. 3. The circuit arrangement of claim 1 , wherein the first register address comprises two bits of the instruction that points to one of four register entries of the first register. 4. The circuit arrangement of claim 1 , wherein the first value stored at the first register address corresponds to a bit address of the second register, and the predication logic being configured to determine the second register address based at least in part on the first value stored at the first register address comprises retrieving the bit address stored at the first register address as the second register address. 5. The circuit arrangement of claim 4 , wherein the predication logic is configured to communicate the predication enable signal based at least in part on the second value stored at the second register address by communicating the predication enable signal indicating to predicate the instruction responsive to the second register address of the second register storing a bit value of one. 6. The circuit arrangement of claim 1 , wherein each register entry of the first register points to a bit location of the second register, the second register address comprises the bit location of the second register pointed to by the particular register entry corresponding to the first register address, and the predication logic is configured to communicate the predication enable signal based at least in part on the second value stored at the second register address by retrieving the second value stored at the bit location pointed to by second register address. 7. The circuit arrangement of claim 6 , wherein the predication logic is configured to communicate the predication enable signal based at least in part on the second value stored at the second register address by communicating the predication enable signal indicating to predicate the instruction responsive to the second value stored at the bit location pointed to by the second register address having a bit value of one. 8. An integrated circuit device comprising: a processing unit; a first register disposed in the processing unit, the first register including a plurality of register entries; an execution unit disposed in the processing unit and configured to receive a predication enable signal that indicates whether to predicate an instruction and selectively predicate instructions based at least in part on the predication enable signal; instruction decoding logic disposed in the processing unit and configured to decode the instruction; and predication logic disposed in the processing unit and configured to receive a first register address corresponding to the first register included in the instruction, select one of the plurality of register entries of the first register using the first register address, determine a second register address based at least in part on a first value stored at the first register address of the first register, and communicate the predication enable signal based at least in part on a second value stored at the second register address to selectively predicate the instruction, wherein the predication logic is configured to determine the second register address by accessing the selected one of the plurality of register entries to obtain the first value, and wherein the predication logic is configured to communicate the predication enable signal by addressing a second register using the first value to obtain the second value from the second register, wherein the predication enable signal is based on the second value stored at the second register address. 9. The integrated circuit device of claim 8 , wherein the first register address comprises two bits of the instruction that points to one of four register entries of the first register. 10. The integrated circuit device of claim 8 , wherein the first value stored at the first register address corresponds to a bit address of the second register, and the predication logic being configured to determine the second register address based at least in part on the first value stored at the first register address comprises retrieving the bit address stored at the first register address as the second register address. 11. The integrated circuit device of claim 10 , wherein the predication logic is configured to communicate the predication enable signal based at least in part on the second value stored at the second register address by communicating the predication enable signal indicating to predicate the instruction responsive to the second register address of the second register storing a bit value of one. 12. The integrated circuit device of claim 8 , wherein each register entry of the first register points to a bit location of the second register, the second register address comprises the bit location of the second register pointed to by the particular register entry corresponding to the first register address, and the predication logic is configured to communicate the predication enable signal based at least in part on the second value stored at the second register address by retrieving the second value stored at the bit location pointed to by second register address. 13. The integrated circuit device of claim 12 , wherein the predication logic is configured to communicate the predication enable signal based at least in part on the second value stored at the second register address by communicating the predication enable signal indicating to predicate the instruction responsive to the second value s

Assignees

Inventors

Classifications

  • with implied specifier, e.g. top of stack · CPC title

  • Decoding the operand specifier, e.g. specifier format · CPC title

  • Instruction skipping instructions, e.g. SKIP · CPC title

  • Extension of register space, e.g. register cache · CPC title

  • Instruction analysis, e.g. decoding, instruction word fields · 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 US9619234B2 cover?
A circuit arrangement and program product selectively predicate instructions in an instruction stream by determining a first register address from an instruction, determining a second register address based on a value stored at the first register address, and determining whether to predicate the instruction based at least in part on a value stored at the second register address. Predication log…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F9/30145. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Apr 11 2017 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).