Histogram operation

US11775302B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11775302-B2
Application numberUS-202117509218-A
CountryUS
Kind codeB2
Filing dateOct 25, 2021
Priority dateMay 27, 2019
Publication dateOct 3, 2023
Grant dateOct 3, 2023

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 digital data processor includes an instruction memory storing instructions each specifying a data processing operation and at least one data operand field, an instruction decoder coupled to the instruction memory for sequentially recalling instructions from the instruction memory and determining the data processing operation and the at least one data operand, and at least one operational unit coupled to a data register file and to an instruction decoder to perform a data processing operation upon at least one operand corresponding to an instruction decoded by the instruction decoder and storing results of the data processing operation. The operational unit is configured to increment histogram values in response to a histogram instruction by incrementing a bin entry at a specified location in a specified number of at least one histogram.

First claim

Opening claim text (preview).

What is claimed is: 1. A processor comprising: a cache configured to store a set of tables; and a set of registers that includes a first register configured to store a set of indices each corresponding to a respective value stored in a respective table of the set of tables, wherein the processor is configured to: receive an instruction that specifies the first register and the set of tables; and based on the instruction, for each index in the set of indices, increment the respective value stored in the respective table of the set of tables. 2. The processor of claim 1 , wherein the set of indices includes a first index corresponding to a first value stored in a first table of the set of tables and a second index corresponding to a second value stored in a second table of the set of tables that is different from the first table. 3. The processor of claim 1 , wherein: the set of tables includes a plurality of tables; the set of indices includes a plurality of indices; and the processor is configured to, based on the instruction, increment a plurality of values stored in the plurality of tables associated with the plurality of indices. 4. The processor of claim 1 , wherein the cache is a level one (L1) data cache. 5. The processor of claim 1 , wherein the processor is configured to, based on the instruction, for each index in the set of indices, increment the respective value stored in the respective table of the set of tables by one. 6. The processor of claim 1 , wherein: the set of registers includes a second register configured to store a set of weighting values associated with the set of indices; the instruction specifies the second register; and the processor is configured to, based on the instruction, for each index in the set of indices, increment the respective value stored in the respective table of the set of tables by a respective weighting value of the set of weighting values. 7. The processor of claim 1 , wherein: the set of registers includes a second register configured to store a base address for the set of tables; and the instruction specifies the set of tables by specifying the second register. 8. The processor of claim 1 , wherein: the set of registers includes a second register configured to store a configuration for the set of tables; and the instruction specifies the second register. 9. The processor of claim 8 wherein the configuration stored in the second register specifies the number of tables in the set of tables. 10. The processor of claim 8 , wherein the configuration stored in the second register specifies at least one parameter from a group consisting of: a promotion mode for values of the set of tables, a table size for the set of tables, whether to saturate the values of the set of tables, whether the values of the set of tables are signed, and an element size for the set of tables. 11. The processor of claim 1 further comprising: an instruction memory configured to store the instruction; an instruction decoder coupled to the instruction memory; and at least one operational unit coupled to the instruction decoder, the cache and the set of registers, wherein the instruction decoder is configured to cause the at least one operational unit to, based on the instruction, for each index in the set of indices, increment the respective value stored in the respective table of the set of tables. 12. A processor comprising: a cache configured to store a set of tables; and a set of registers that includes: a first register configured to store a set of indices each corresponding to a respective value stored in a respective table of the set of tables; and a second register configured to store a set of weighting values associated with the set of indices; wherein the processor is configured to: receive an instruction that specifies the first register, the second register, and the set of tables; and based on the instruction, for each index in the set of indices, add a respective weighting value of the set of weighting values to the respective value stored in the respective table of the set of tables. 13. The processor of claim 12 , wherein: the set of tables includes a plurality of tables; the set of indices includes a plurality of indices; the set of weighting values includes a plurality of weighting values; and the processor is configured to, based on the instruction, add the plurality of weighting values to a plurality of values stored in the plurality of tables associated with the plurality of indices. 14. The processor of claim 12 , wherein the cache is a level one (L1) data cache. 15. A method comprising: storing a set of values arranged in a set of tables in a cache memory of a processor; storing a set of indices each corresponding to a respective value of the set of values; receiving an instruction that specifies the set of tables and the set of indices; and based on the instruction, for each index in the set of indices, incrementing the respective value of the set of values. 16. The method of claim 15 , wherein the set of indices includes a first index corresponding to a first value of a first table of the set of tables and a second index corresponding to a second value of a second table of the set of tables that is different from the first table. 17. The method of claim 15 , wherein the cache memory is a level one (L1) data cache memory. 18. The method of claim 15 , wherein the incrementing includes, for each index in the set of indices, incrementing the respective value of the set of values by one. 19. The method of claim 15 further comprising storing a set of weighting values associated with the set of indices, wherein the incrementing includes, for each index in the set of indices, incrementing the respective value of the set of values by a respective weighting value of the set of weighting values. 20. The method of claim 19 , wherein at least one weighting value of the set of weighting values is negative.

Assignees

Inventors

Classifications

  • G06F9/3001Primary

    Arithmetic instructions · CPC title

  • Instruction analysis, e.g. decoding, instruction word fields · CPC title

  • to perform operations on data operands · CPC title

  • Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE · CPC title

  • LOAD or STORE instructions; Clear instruction · 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 US11775302B2 cover?
A digital data processor includes an instruction memory storing instructions each specifying a data processing operation and at least one data operand field, an instruction decoder coupled to the instruction memory for sequentially recalling instructions from the instruction memory and determining the data processing operation and the at least one data operand, and at least one operational unit…
Who is the assignee on this patent?
Texas Instruments Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/3001. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Oct 03 2023 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 5 related publications on this page (citations in our corpus or others sharing the same primary CPC).