Processor with memory-embedded pipeline for table-driven computation

US9740496B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9740496-B2
Application numberUS-201314019763-A
CountryUS
Kind codeB2
Filing dateSep 6, 2013
Priority dateSep 6, 2013
Publication dateAug 22, 2017
Grant dateAug 22, 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 processor and a method implemented by the processor to obtain computation results are described. The processor includes a unified reuse table embedded in a processor pipeline, the unified reuse table including a plurality of entries, each entry of the plurality of entries corresponding with a computation instruction or a set of computation instructions. The processor also includes a functional unit to perform a computation based on a corresponding instruction.

First claim

Opening claim text (preview).

What is claimed is: 1. A processor, comprising: a unified reuse table embedded in a processor pipeline, the unified reuse table including a plurality of entries that include both single instructions and a set of instructions of a trace, each entry of the plurality of entries corresponding with a computation instruction and including values of operands of the computation instruction and an output of the computation instruction, and, based on the computation instruction being one of the set of instructions of the trace, an indication of a subsequent instruction in the trace, wherein based on the computation instruction being one of the set of instructions of the trace, in at least one of the plurality of entries, the values of the operands include the output of a previous computation instruction that is a previous instruction of the set of instructions of the trace; and a functional unit configured to perform a computation based on a corresponding instruction. 2. The processor according to claim 1 , wherein the functional unit performs the computation and stores the corresponding instruction and a result of the computation in the unified reuse table as a new entry. 3. The processor according to claim 1 , wherein the functional unit performs a set of computations corresponding with the set of instructions of the trace and stores the set of instructions and results of the set of computations in the unified reuse table as new entries, each new entry comprising register names corresponding with the values of operands of the corresponding instruction among the set of instructions and the indication of the subsequent instruction in the set of instructions. 4. The processor according to claim 1 , wherein when an input to the unified reuse table corresponds with an entry among the plurality of entries of the unified reuse table, a result associated with the input is obtained from the unified reuse table instead of from the functional unit. 5. The processor according to claim 1 , wherein when an input to the unified reuse table corresponds with an entry among the plurality of entries of the unified reuse table, a first result associated with the input is obtained from the unified reuse table in parallel with a second result obtained by performing an input computation corresponding with the input with the functional unit. 6. The processor according to claim 5 , wherein the processor verifies the functional unit by comparing the first result with the second result and when the first result and the second result are not equal, a fault is indicated in the functional unit. 7. The processor according to claim 1 , further comprising a selector configured to select whether an input to the unified reuse table will be searched among the plurality of entries of the unified reuse table. 8. The processor according to claim 1 , wherein an input word provided as an input to the unified reuse table is divided into a first partial word and a second partial word and the unified reuse table is searched for a match to the first partial word and the second partial word in parallel or serially. 9. The processor according to claim 1 , wherein the unified reuse table is implemented as resistive memory. 10. The processor according to claim 1 , wherein the processor is formed as a three-dimensional integrated circuit and the unified reuse table is implemented on a first layer and the functional unit is formed on a second layer. 11. The processor according to claim 1 , wherein each entry of the plurality of entries includes an identifier indicating whether the entry is a function, the function being a set of traces and each trace of the set of traces being a set of computation instructions. 12. The processor according to claim 11 , wherein the processor manages the unified reuse table based on an eviction and retention policy. 13. The processor according to claim 12 , wherein, based on the policy, the processor retains an entry of the plurality of entries based on the identifier of the entry indicating that the entry is a function.

Assignees

Inventors

Classifications

  • Value prediction for operands; operand history buffers · CPC title

  • G06F9/3867Primary

    using instruction pipelines · CPC title

  • G06F9/3808Primary

    for instruction reuse, e.g. trace cache, branch target cache · 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 US9740496B2 cover?
A processor and a method implemented by the processor to obtain computation results are described. The processor includes a unified reuse table embedded in a processor pipeline, the unified reuse table including a plurality of entries, each entry of the plurality of entries corresponding with a computation instruction or a set of computation instructions. The processor also includes a functiona…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F9/3867. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Aug 22 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).