IP Library Granted Patent US 10,984,841
Granted Patent B2
US 10,984,841 · App. 16/819,451 · Granted Apr 20, 2021

Longest element length determination in memory

Inventors: Sanjay Tiwari (Meridian, ID); Kyle B. Wheeler (Meridian, ID)
Assignee: Micron Technology, Inc.
G11C7/1012G11C7/065G11C7/1006G11C11/4091G11C11/4096G11C19/28G11C2207/002G11C2207/005G11C2207/007
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,984,841
App. No.
16/819,451
Granted
Apr 20, 2021
Kind
B2
Abstract

A length of a longest element can be determined in a memory device. An example method includes determining, using a controller to control sensing circuitry, a length of a longest element of a plurality of variable length elements of a vector stored in a memory array. The determination of the length of the longest element can include performing a number of AND operations, shift operations, and invert operations.

Claims (48)

1. An apparatus comprising:

a group of memory cells, coupled to an access line and a plurality sense lines of a memory array, and configured to store a plurality of variable length elements of a vector;

a plurality of sense amplifiers coupled to the plurality of sense lines and to a plurality of compute components; and

a controller configured to control the plurality of sense amplifiers and the plurality of compute components to:

perform a shift operation and an invert operation on a first bit vector indicating most significant bits of the plurality of variable length elements of the vector; and

perform an AND operation between a mask bit vector stored in the memory array and a second bit vector stored in the plurality of sense amplifiers to determine a length of the longest element.

2. The apparatus of claim 1 , wherein the controller is configured to control the plurality of compute components to determine a most significant bit of each of the plurality of variable length elements.

3. The apparatus of claim 2 , wherein the controller is configured to cause storing of elements representing the most significant bit of each of the plurality of variable length elements as the first bit vector.

4. The apparatus of claim 3 , wherein the controller is configured to control the plurality of compute components to perform the invert operation on the elements representing the most significant bit of each of the plurality of variable length elements.

5. The apparatus of claim 4 , wherein the controller is configured to control the plurality of compute components to perform the shift operation on the inverted elements.

6. The apparatus of claim 5 , wherein the shift operation is a left shift operation and a result of the shift operation is stored as a static mask in a group of cells coupled to a particular access line of the array.

7. The apparatus of claim 1 , wherein the controller is further configured to control the plurality of compute components and the plurality of sense amplifiers to perform a loop operation on the plurality of variable length elements.

8. The apparatus of claim 7 , wherein the controller is configured to control the plurality of sense amplifiers and the plurality of compute components to perform the loop operation by:

determining whether one or more bits of a mask indicating a most significant bit of each of the plurality of variable length elements include a particular value; and

in response to one or more bits including the particular value:

performing a shift operation on the mask; and

performing an AND operation with the shifted mask and the mask indicating a most significant bit of each of the plurality of variable length elements.

9. The apparatus of claim 8 , wherein the controller is configured to control the plurality of sense amplifiers and the plurality of compute components to repeat the loop operation by:

determining whether one or more bits of a previously shifted mask includes a particular value;

performing an additional shift operation on the previously shifted mask; and

performing an additional AND operation with the previously shifted mask and the additionally shifted mask.

10. A system comprising:

a host; and

a memory device comprising a controller and coupled to the host;

wherein the host is configured to:

provide a plurality of variable length elements to the memory device;

provide a vector indicating the most significant bit for each element of the plurality of variable length elements; and

provide a plurality of commands to determine a length of the longest element from the plurality of variable length elements to the memory device;

wherein the memory device is configured to:

control a compute component, that is coupled to at least one of a plurality of sense amplifiers, to:

perform the plurality of commands utilizing the plurality of variable length elements and the vector to determine a length of the longest element from the plurality of variable length elements; and

provide the length to the host.

11. The system of claim 10 , wherein the memory device is configured to provide the length to the host directly without storing the length in a memory array of the memory device.

12. The system of claim 10 , wherein the memory device is configured to provide the length to the host by storing the length in a memory array of the memory device.

13. The system of claim 12 , wherein the host is further configured to provide a read command to the memory device to access the length stored in the memory array of the memory device.

14. A method, comprising:

controlling a compute component that is coupled to a sense amplifier, which is coupled to an array of memory cells, to perform a number of operations including:

determining a length of a longest element of a plurality of variable length elements of a vector stored in the array by:

performing a shift operation and an invert operation on a first bit vector indicating most significant bits of the plurality of variable length elements of the vector; and

performing a boolean operation between a mask bit vector and a second bit vector.

15. The method of claim 14 , wherein determining the length of the longest element comprises an AND operation and a shift operation, wherein the AND operation and the shift operation are based on the length of the longest element.

16. The method of claim 15 , wherein the AND operation and the shift operation are each performed using the compute component coupled to the sense amplifier.

17. The method of claim 14 , wherein the determining of the length of the longest element comprises determining whether one or more of bits of each of the plurality of variable length elements includes a particular value.

18. The method of claim 17 , wherein the particular value includes a bit value of 1.

19. The method of claim 14 , comprising performing an operation on at least one element of the plurality of elements based on the length of the longest element.

20. The method of claim 19 , wherein the operation is performed:

after the length of the longest element is determined; or

concurrent with the determination of the length of the longest element.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 16, 2020
From: TIWARI, SANJAY; WHEELER, KYLE B.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 052122/0852 →
Continuity (4)
Continuation 16039443 · Jul 19, 2018
Continuation 14978583 · Dec 22, 2015
Provisional Application 62100752 · Jan 7, 2015
Related Publication 20200219544A1 · Jul 9, 2020