IP Library Granted Patent US 10,032,493
Granted Patent B2
US 10,032,493 · App. 14/978,583 · Granted Jul 24, 2018

Longest element length determination in memory

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,032,493
App. No.
14/978,583
Granted
Jul 24, 2018
Kind
B2
Abstract

Examples of the present disclosure provide apparatuses and methods for determining a length of a longest element in a memory. An example method comprises 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.

Claims (63)

1. A method, comprising:

determining, using sensing circuitry coupled to a memory array and controlled by a controller, a length of a longest element of a plurality of variable length elements of a vector stored in the memory array by:

performing, in the sensing circuitry, 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, using the sensing circuitry, a boolean operation between a mask bit vector stored in the memory array and a second bit vector stored in the sensing circuitry.

2. The method of claim 1 , 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.

3. The method of claim 2 , wherein the determining of the length of the longest element is performed in the memory array.

4. The method of claim 2 , wherein the AND operation and the shift operation are each performed using the sensing circuitry coupled to each of a number of columns of complementary sense lines.

5. The method of claim 1 , 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.

6. The method of claim 5 , wherein the particular value includes a bit value of 1.

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

8. The method of claim 7 , wherein the operation is performed after the length of the longest element is determined.

9. The method of claim 7 , wherein the operation is performed concurrent with the determination of the length of the longest element.

10. The method of claim 1 , wherein the vector is stored in a group of memory cells coupled to a particular access line.

11. The method of claim 10 , wherein a result of the determination of the length of the longest element is stored in a group of memory cells coupled to a different particular access line of the memory array.

12. The method of claim 1 , wherein performing the shift operation and the invert operation on the bit vector indicating most significant bits of the plurality of variable length elements of the vector results in creating a static mask that indicates the most significant bit of each of the plurality of variable length elements.

13. The method of claim 12 , wherein the static mask indicates a left-most boundary to begin performing the AND operation and the shift operation.

14. An apparatus comprising:

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

a controller configured to cause sensing circuitry coupled to the plurality of sense lines to:

perform, in the sensing circuitry, 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, using the sensing circuitry, an AND operation between a mask bit vector stored in the memory array and a second bit vector stored in the sensing circuitry to determine a length of the longest element.

15. The apparatus of claim 14 , wherein each of the sensing circuitry comprises a sense amplifier and a compute component.

16. The apparatus of claim 15 , wherein each of the corresponding sense amplifiers comprises a primary latch and each of the corresponding compute components comprise a secondary latch.

17. The apparatus of claim 14 , wherein the controller is configured to cause the sensing circuitry to determine a most significant bit of each of the plurality of variable length elements.

18. The apparatus of claim 17 , 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.

19. The apparatus of claim 18 , wherein the controller is configured to cause the sensing circuitry to perform the invert operation on the elements representing the most significant bit of each of the plurality of variable length elements.

20. The apparatus of claim 19 , wherein the controller is configured to cause the sensing circuitry to perform the shift operation on the inverted elements.

21. The apparatus of claim 20 , 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.

22. The apparatus of claim 14 , wherein the controller is further to perform a loop operation on the plurality of variable length elements.

23. The apparatus of claim 22 , wherein the controller is configured to cause the sensing circuitry 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.

24. The apparatus of claim 23 , wherein the controller is configured to cause the sensing circuitry 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.

25. A method, comprising:

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 by:

determining elements that indicate a most significant bit of each of the plurality of variable length elements;

determining a static mask by:

inverting the elements that indicate a most significant bit of each of the plurality of variable length elements; and

shifting the inverted elements; and

shifting the elements that indicate a most significant bit of each of the plurality of variable length elements.

26. The method of claim 25 , comprising performing an operation on the plurality of variable length elements, wherein the operation performed is based on the length of the longest element.

27. The method of claim 26 , comprising ANDing the shifted elements with the static mask.

28. The method of claim 27 , comprising determining, subsequent to the ANDing operation, whether at least one bit of the elements is a particular value.

29. The method of claim 28 , comprising, in response to at least one bit of the elements being a particular value, repeating a shift operation and an AND operation on the elements.

30. The method of claim 29 , wherein the shift operation and the AND operation is repeated in response to a determination after each AND operation is performed that at least one bit of the previously shifted elements is the particular value.

31. The method of claim 30 , comprising determining a length of the longest element of the plurality of variable length elements by counting a number of shift operations and AND operations performed in response to determining at least one bit of the shifted variable length elements is the particular value.

32. A method, comprising:

determining, using a controller to control sensing circuitry in a memory array, how many times to perform an operation based on a length of a longest element of a plurality of variable length elements of a vector stored in a memory array by determining the length of the longest element by:

determining elements that indicate a most significant bit of each of the plurality of variable length elements;

determining a static mask by:

inverting the elements that indicate a most significant bit of each of the plurality of variable length elements; and

shifting the inverted elements; and

determining whether at least one bit of the elements is a particular value;

performing the operation a first time on the plurality of variable length elements;

in response to at least one bit being a particular value, shifting the elements that indicate a most significant bit of each of the plurality of variable length elements; and

performing an AND operation on the shifted elements and the static mask in the memory array.

33. The method of claim 32 , wherein the operation is performed after each shift of bits of the elements such that the operation is performed a number of times that corresponds to the length of the longest element.

34. The method of claim 32 , wherein the operation is at least one of a multiplication operation, a division operation, and a mathematical calculation.

Assignments (8)
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 9, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 050937/0001 →
RELEASE OF SECURITY INTEREST Recorded Aug 23, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: MICRON TECHNOLOGY, INC.
Reel/Frame 047243/0001 →
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 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Jun 8, 2017
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 043079/0001 →
PATENT SECURITY AGREEMENT Recorded Jun 2, 2016
From: MICRON TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 038954/0001 →
SECURITY INTEREST Recorded May 12, 2016
From: MICRON TECHNOLOGY, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038669/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 5, 2016
From: TIWARI, SANJAY; WHEELER, KYLE B.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 037412/0184 →