IP Library Granted Patent US 12,367,147
Granted Patent B2
US 12,367,147 · App. 18/165,196 · Granted Jul 22, 2025

Padding and suppressing rows and columns of data

Inventors: Asheesh Bhardwaj (Allen, TX); Burton Adrik Copeland (Addison, TX); Elliott Gurrola (Richardson, TX); Tim Anderson (University Park, TX); William Leven (Dallas, TX)
Assignee: Texas Instruments Incorporated
G06F12/0837G06F12/0888
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 12,367,147
App. No.
18/165,196
Granted
Jul 22, 2025
Kind
B2
Abstract

A method is described herein. The method generally includes receiving stream parameters that defines an array, wherein the stream parameters include a first null element count and a second null element count. The method generally includes forming a stream of vectors for the multidimensional array responsive to the stream parameters. The stream of vectors generally includes a vector of null elements at a beginning of the stream of vectors based on the first null element count. The stream of vectors generally includes a null element at a beginning of each vector of the stream of vectors based on the second null element count. The stream of vectors generally includes a set of data distributed across a subset of the stream of vectors. The method generally includes providing the stream of vectors.

Claims (46)

1. A method, comprising:

receiving stream parameters that defines an array, wherein the stream parameters include a first null element count and a second null element count;

forming a stream of vectors for a multidimensional array responsive to the stream parameters, wherein the stream of vectors comprises:

a vector of null elements at a beginning of the stream of vectors based on the first null element count;

a null element at a beginning of each vector of the stream of vectors based on the second null element count; and

a set of data distributed across a subset of the stream of vectors; and

providing the stream of vectors.

2. The method of claim 1 , wherein the first null element count is different from the second null element count.

3. The method of claim 1 , wherein the stream parameters further include a size of a first dimension of the multidimensional array, and a size of the vector of null elements is equal to the size of the first dimension of the multidimensional array.

4. The method of claim 1 , further comprising:

generating a first set of addresses;

translating the first set of addresses to generate a second set of addresses; and

retrieving the set of data from memory using the second set of addresses.

5. The method of claim 1 , further comprising fetching the set of data from memory; and

masking a subset of elements of the stream of vectors of the set of data based on the first null element count and on the second null element count.

6. The method of claim 1 , wherein the stream parameters include an element size of the array, a number of elements to include in each vector of a stream, and a number of vectors to include in the stream for each dimension of the array.

7. The method of claim 1 , wherein the null element at the beginning of each vector and the vector of null elements are set to a value of zero.

8. The method of claim 1 , wherein the set of data comprises a subset of data for each vector of the stream of vectors.

9. The method of claim 1 , wherein a null value is specified by the stream parameters.

10. A device comprising:

a register configured to store a set of stream parameters, wherein the stream parameters include a first null element count and a second null element count; and

a memory configured to store a set of data;

a circuit coupled to the register and the memory and configured to:

form a stream of vectors for a multidimensional array responsive to the stream parameters, wherein the stream of vectors comprises:

a vector of null elements at a beginning of the stream of vectors based on the first null element count;

a null element at a beginning of each vector of the stream of vectors based on the second null element count; and

the set of data distributed across a subset of the stream of vectors; and

provide the stream of vectors.

11. The device of claim 10 , wherein the first null element count is the same as the second null element count.

12. The device of claim 10 , wherein the first null element count is different from the second null element count.

13. The device of claim 12 , wherein the memory is an L2 memory; and

wherein the circuit is configured to form the stream of vectors by retrieving the set of data from the L2 memory and bypassing an L1 cache memory coupled to the L2 memory.

14. The device of claim 12 , wherein the circuit is further configured to:

mask a set of elements of the stream of vectors based on the first null element count and on the second null element count.

15. The device of claim 10 , wherein the stream parameters specifies a null value for the vector of null elements and for the null element at the beginning of each vector of the stream of vectors.

16. The device of claim 10 , wherein the stream parameters include an element size of the array, a number of elements to include in each vector of a stream, and a number of vectors to include in the stream for each dimension of the array.

17. A method comprising:

receiving stream parameters into control logic of a cache controller to define a multidimensional array, wherein the stream parameters includes a suppression count;

receiving a first set of data by the cache controller;

determining a second set of data that includes a subset of the first set of data, wherein the suppression count specifies a remainder of the first set of data that is not included in the second set of data; and

writing the second set of data to memory.

18. The method of claim 17 , wherein determining the second set of data involves a null element to a beginning of the stream of vectors.

19. The method of claim 17 , wherein the first set of data comprises a vector of the multidimensional array.

20. The method of claim 17 , further comprising:

determining a respective set of data for each vector of the multidimensional array based on the suppression count; and

writing the respective set of data to memory.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 6, 2023
From: BHARDWAJ, ASHEESH; COPELAND, BURTON; GURROLA, ELLIOTT; ANDERSON, TIM; LEVEN, WILL
To: TEXAS INSTRUMENTS INCORPORATED
Reel/Frame 064074/0872 →
Continuity (2)
Provisional Application 63307405 · Feb 7, 2022
Related Publication 20230251970A1 · Aug 10, 2023
References Cited (8)
US 8984499B2 · Uliel · 2015 [cited by examiner]
US 11113062B2 · Bhardwaj · 2021 [cited by examiner]
US 11231929B2 · Tran · 2022 [cited by examiner]
US 11249759B2 · Leven · 2022 [cited by examiner]
US 11256508B2 · Bhardwaj · 2022 [cited by examiner]
US 20140122831A1 · Uliel · 2014 [cited by examiner]
US 20140317377A1 · Ould-Ahmed-Vall · 2014 [cited by examiner]
US 20150143083A1 · Le · 2015 [cited by examiner]
Cited By (1)
US 12,705,303