IP Library › Granted Patent US 11,507,513
Granted Patent B2
US 11,507,513 · App. 16/882,268 · Granted Nov 22, 2022

Methods and apparatus to facilitate an atomic operation and/or a histogram operation in cache pipeline

Inventors: Naveen Bhoria (Plano, TX); Timothy David Anderson (University Park, TX); Pete Michael Hippleheuser (Murphy, TX)
Assignee: Texas Instruments Incorporated
G06F12/0888G06F9/3001G06F9/30047G06F9/546G06F11/1064G06F12/0215G06F12/0238G06F12/0292G06F12/082G06F12/0802G06F12/0804G06F12/0806G06F12/0811G06F12/0815G06F12/0853G06F12/0855G06F12/0864G06F12/0884G06F12/0891G06F12/0895G06F12/0897G06F12/12G06F12/121G06F12/128G06F13/1605G06F13/1642G06F13/1673G06F13/1689G06F15/8069G11C5/066G11C7/10G11C7/106G11C7/1015G11C7/1075G11C7/1078G11C7/1087G11C7/222G11C29/42G11C29/44G06F2212/1016G06F2212/1021G06F2212/1024G06F2212/1041G06F2212/1044G06F2212/301G06F2212/454G06F2212/608G06F2212/6032G06F2212/62
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,507,513
App. No.
16/882,268
Granted
Nov 22, 2022
Kind
B2
Abstract

Methods, apparatus, systems and articles of manufacture to facilitate an atomic operation and/or a histogram operation in cache pipeline are disclosed. An example system includes a cache storage coupled to an arithmetic component; and a cache controller coupled to the cache storage, wherein the cache controller is operable to: receive a memory operation that specifies a set of data; retrieve the set of data from the cache storage; utilize the arithmetic component to determine a set of counts of respective values in the set of data; generate a vector representing the set of counts; and provide the vector.

Claims (41)

1. A system comprising:

a cache storage coupled to an arithmetic component; and

a cache controller coupled to the cache storage, wherein the cache controller is operable to:

receive instructions corresponding to a histogram operation that specifies a set of data;

retrieve the set of data from the cache storage;

utilize the arithmetic component to;

determine a set of counts of respective values in the set of data; and

perform the histogram operation by generating a vector representing the set of counts corresponding to respective values in the set of data to (a) initiate the vector including elements corresponding to the histogram operation and (b) update the vector by incrementing the set of counts based on the set of data; and

provide the vector.

2. The system of claim 1 , wherein the cache controller is operable to provide the vector for storing in the cache storage.

3. The system of claim 1 , wherein the cache controller is operable to provide the vector to a processor.

4. The system of claim 1 , further including store queue circuitry coupled to the cache controller, the store queue circuitry including the arithmetic component.

5. The system of claim 1 , wherein the cache storage is at least one of a main cache storage or a victim cache storage.

6. The system of claim 1 , wherein the arithmetic component is to obtain (a) the set of data from the cache storage via an error detection and correction circuit and (b) the histogram operation from a central processing unit via a latch.

7. The system of claim 1 , wherein the cache controller is operable to generate the vector and provide the vector to a central processing unit based on a single instruction from the central processing unit at a single cycle.

8. A system comprising:

a cache storage; and

a cache controller coupled to the cache storage and an arithmetic component, wherein the cache controller is operable to:

receive instructions corresponding to a histogram operation corresponding to a first set of data, the histogram operation corresponding to a histogram operation corresponding to the first set of data;

access the first set of data from the cache storage;

utilize the arithmetic component to;

determine a set of counts of respective values in the first set of data; and

perform the histogram operation by generating a second set of data representing the set of counts corresponding to respective values in the first set of data to (a) initiate the second set of data including elements corresponding to the histogram operation and (b) update the second set of data by incrementing the set of counts based on the first set of data; and

provide the second set of data.

9. The system of claim 8 , wherein the cache controller is operable to provide the second set of data for storing in the cache storage.

10. The system of claim 8 , wherein the cache controller is operable to provide the second set of data to a processor.

11. The system of claim 8 , further including store queue circuitry coupled to the cache controller, the store queue circuitry including the arithmetic component.

12. The system of claim 8 , wherein the cache storage is a victim cache storage.

13. The system of claim 8 , wherein the arithmetic component is to obtain (a) the first set of data from the cache storage via an error detection and correction circuit and (b) the instructions corresponding to the histogram operation from a central processing unit via a latch.

14. The system of claim 8 , wherein the cache controller is operable to product and provide the second set of data to a central processing unit based on a single instruction from the central processing unit at a single cycle.

15. A method comprising:

obtaining instructions corresponding to a histogram operation that specifies a set of data;

obtaining the set of data from a cache storage;

determining, by executing an instruction with a cache controller, a set of counts of respective values in the set of data;

performing by executing an instruction with the cache controller, the histogram operation by generating a vector representing the set of counts corresponding to respective values in the set of data to (a) initiate the vector including elements corresponding to the histogram operation and (b) update the vector by incrementing the set of counts based on the set of data; and

providing the vector.

16. The method of claim 15 , wherein the vector is provided to the cache storage.

17. The method of claim 15 , wherein the cache storage is a main cache storage.

18. The method of claim 15 , further including obtaining (a) the set of data from the cache storage via an error detection and correction circuit and (b) the histogram operation from a central processing unit via a latch.

19. The method of claim 15 , wherein the generating and providing of the vector to a central processing unit is performed in response to a single instruction from the central processing unit at a single cycle.

20. The method of claim 15 , wherein the cache storage is a victim cache storage.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 5, 2020
From: BHORIA, NAVEEN; ANDERSON, TIMOTHY DAVID; HIPPLEHEUSER, PETE MICHAEL
To: TEXAS INSTRUMENTS INCORPORATED
Reel/Frame 052855/0637 →
Continuity (2)
Provisional Application 62852494 · May 24, 2019
Related Publication 20200371915A1 · Nov 26, 2020
Cited By (1)
US 12,321,284