IP Library › Granted Patent US 10,942,843
Granted Patent B2
US 10,942,843 · App. 15/496,886 · Granted Mar 9, 2021

Storing data elements of different lengths in respective adjacent rows or columns according to memory shapes

Inventors: John D. Leidel (McKinney, TX); Isom Crawford, Jr. (Royse City, TX)
Assignee: Micron Technology, Inc.
G06F12/0223G06F12/0207G06F2212/1016
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 10,942,843
App. No.
15/496,886
Granted
Mar 9, 2021
Kind
B2
Abstract

A user definition of a memory shape can be received and a multidimensional, contiguous, physical portion of a memory array can be allocated according to the memory shape. The user definition of the memory shape can include a quantity of contiguous columns of the memory array, a quantity of contiguous rows of the memory array, and a major dimension of the memory shape. The major dimension can correspond to a dimension by which to initially stride data stored in the memory shape.

Claims (46)

1. A method, comprising:

allocating a plurality of physically contiguous memory cells of a memory array, wherein the plurality of physically contiguous memory cells correspond to a user-defined quantity of physically contiguous columns and a user-defined quantity of physically contiguous rows of the memory array;

storing only a first data element of a first length in a first column of the plurality of physically contiguous memory cells according to a major dimension corresponding to a dimension of the plurality of physically contiguous memory cells by which data is written to the plurality of physically contiguous memory cells; and

subsequently storing only a second data element of a second length in a second column of the plurality of physically contiguous memory cells according to the major dimension, wherein the first length is different than the second length and the first column is adjacent to the second column.

2. The method of claim 1 , further comprising storing padding to a different portion of the plurality of physically contiguous memory cells, wherein a length of the padding is equal to a difference between the first length and the second length.

3. The method of claim 2 , wherein the first data element is of a first type, the second data element is of a second type, and the first type is different than the second type.

4. The method of claim 3 , wherein the first type is an integer and the second type is a floating point or a string.

5. The method of claim 3 , wherein the first type is a string and the second type is a floating point or an integer.

6. A method, comprising:

allocating a plurality of physically contiguous memory cells of a memory array, wherein the plurality of physically contiguous memory cells correspond to a user-defined quantity of physically contiguous columns and a user-defined quantity of physically contiguous rows of the memory array;

storing only a first data element of a first length in a first row of the plurality of physically contiguous memory cells according to a major dimension corresponding to a dimension of the plurality of physically contiguous memory cells by which data is written to the plurality of physically contiguous memory cells; and

subsequently storing only a second data element of a second length in a second row of the plurality of physically contiguous memory cells according to the major dimension, wherein the first length is different than the second length and the first row is adjacent to the second row.

7. The method of claim 6 , further comprising storing padding to a different portion of the plurality of physically contiguous memory cells, wherein a length of the padding is equal to a difference between the first length and the second length.

8. The method of claim 7 , wherein the first data element is of a first type, the second data element is of a second type, and the first type is different than the second type.

9. The method of claim 8 , wherein the first type is an integer and the second type is a floating point or a string.

10. The method of claim 8 , wherein the first type is a string and the second type is a floating point or an integer.

11. An apparatus, comprising:

a memory device; and

a host coupled to the memory device, wherein the host is configured to:

allocate a plurality of physically contiguous memory cells of the memory device corresponding to a user-defined quantity of physically contiguous columns and a user-defined quantity of physically contiguous rows of the memory device;

store only a first data element of a first length in a first column of the plurality of physically contiguous memory cells according to a major dimension corresponding to a dimension of the plurality of physically contiguous memory cells by which data is written to the plurality of physically contiguous memory cells; and

store only a second data element of a second length in a second column of the plurality of physically contiguous memory cells according to the major dimension, wherein the first length is different than the second length and the first column is adjacent to the second column.

12. The apparatus of claim 11 , wherein a single memory bank of the memory device comprises the plurality of physically contiguous memory cells.

13. The apparatus of claim 11 , further comprising sensing circuitry coupled to the plurality of physically contiguous memory cells and configured to perform an operation on the first or second data element.

14. The apparatus of claim 13 , wherein the sensing circuitry is configured to perform the operation on the first and second data elements concurrently.

15. The apparatus of claim 11 , wherein the host includes a memory allocation application program interface (API) configured to receive the user-defined quantity of physically contiguous columns and the user-defined quantity of physically contiguous rows.

16. An apparatus, comprising:

a memory device; and

a host coupled to the memory device, wherein the host is configured to:

allocate a plurality of physically contiguous memory cells of the memory device corresponding to a user-defined quantity of physically contiguous columns and a user-defined quantity of physically contiguous rows of the memory device;

store only a first data element of a first length in a first row of the plurality of physically contiguous memory cells according to a major dimension corresponding to a dimension of the plurality of physically contiguous memory cells by which data is written to the plurality of physically contiguous memory cells; and

store only a second data element of a second length in a second row of the plurality of physically contiguous memory cells according to the major dimension, wherein the first length is different than the second length and the first column is adjacent to the second column.

17. The apparatus of claim 16 , wherein a single memory bank of the memory device comprises the plurality of physically contiguous memory cells.

18. The apparatus of claim 16 , further comprising sensing circuitry coupled to the plurality of physically contiguous memory cells and configured to perform an operation on the first or second data element.

19. The apparatus of claim 18 , wherein the sensing circuitry is configured to perform the operation on the first and second data elements concurrently.

20. The apparatus of claim 16 , wherein the host includes a memory allocation application program interface (API) configured to receive the user-defined quantity of physically contiguous columns and the user-defined quantity of physically contiguous rows.

21. A non-transitory computer readable medium storing instructions executable by a processing resource to:

allocate a plurality of physically contiguous memory cells of a memory array, wherein the plurality of physically contiguous memory cells correspond to a user-defined quantity of physically contiguous columns and a user-defined quantity of physically contiguous rows of the memory array;

store only a first data element of a first length in a first column of the plurality of physically contiguous memory cells according to a major dimension corresponding to a dimension of the plurality of physically contiguous memory cells by which data is written to the plurality of physically contiguous memory cells; and

store only a second data element of a second length in a second column of the plurality of physically contiguous memory cells according to the major dimension, wherein the first length is different than the second length and the first column is adjacent to the second column.

22. The medium of claim 21 , further comprising instructions to perform an operation on the first and second data elements according to a user-defined sequence.

23. A non-transitory computer readable medium storing instructions executable by a processing resource to:

allocate a plurality of physically contiguous memory cells of a memory array, wherein the plurality of physically contiguous memory cells correspond to a user-defined quantity of physically contiguous columns and a user-defined quantity of physically contiguous rows of the memory array;

store only a first data element of a first length in a first row of the plurality of physically contiguous memory cells according to a major dimension corresponding to a dimension of the plurality of physically contiguous memory cells by which data is written to the plurality of physically contiguous memory cells; and

store only a second data element of a second length in a second row of the plurality of physically contiguous memory cells according to the major dimension, wherein the first length is different than the second length and the first row is adjacent to the second row.

24. The medium of claim 23 , further comprising instructions to perform an operation on the first and second data elements according to a user-defined sequence.

Assignments (8)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2024
From: MICRON TECHNOLOGY, INC.
To: LODESTAR LICENSING GROUP LLC
Reel/Frame 067266/0658 →
RELEASE OF SECURITY INTEREST Recorded Nov 12, 2019
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
Reel/Frame 051028/0001 →
RELEASE OF SECURITY INTEREST Recorded Oct 10, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050700/0535 →
RELEASE OF SECURITY INTEREST Recorded Jul 20, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 046597/0393 →
SECURITY INTEREST Recorded Jul 13, 2018
From: MICRON TECHNOLOGY, INC.; MICRON SEMICONDUCTOR PRODUCTS, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 047540/0001 →
SUPPLEMENT NO. 5 TO PATENT SECURITY AGREEMENT Recorded Aug 8, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION
Reel/Frame 043483/0686 →
SUPPLEMENT NO. 5 TO PATENT SECURITY AGREEMENT Recorded Aug 8, 2017
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 043482/0776 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2017
From: LEIDEL, JOHN D.; CRAWFORD, ISOM, JR.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 042141/0585 →
Continuity (1)
Related Publication 20180307595A1 · Oct 25, 2018
Cited By (1)
US 12,223,010