IP Library Granted Patent US 9,947,376
Granted Patent B2
US 9,947,376 · App. 15/625,543 · Granted Apr 17, 2018

Vertical bit vector shift 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 9,947,376
App. No.
15/625,543
Granted
Apr 17, 2018
Kind
B2
Abstract

Examples of the present disclosure provide apparatuses and methods for vertical bit vector shift in a memory. An example method comprises storing a vertical bit vector of data in a memory array, wherein the vertical bit vector is stored in memory cells coupled to a sense line and a plurality of access lines and the vertical bit vector is separated by at least one sense line from a neighboring vertical bit vector; and performing, using sensing circuitry, a vertical bit vector shift of a number of elements of the vertical bit vector.

Claims (29)

1. A method for shifting data, comprising:

shifting elements of bit vectors stored in a memory array by:

performing shift operations, wherein each of the shift operations shift elements of the bit vectors by a number of positions indicated by a vertical shift bit vector; and

wherein each bit vector is stored in memory cells coupled to a sense line and a plurality of access lines; and each bit vector is separated by at least one sense line from a neighboring bit vector.

2. The method claim 1 , including storing the vertical shift bit vector in memory cells that are coupled the sense line that is coupled to memory cells storing a corresponding bit vector.

3. The method of claim 1 , wherein performing the shift operations includes shifting elements of each of the bit vectors that are coupled to a common access line by an amount indicated by the vertical shift bit vector.

4. The method of claim 1 , wherein performing the shift operations includes performing a shift iteration on each element of each of the bit vectors that are coupled to a common access line by an amount indicated by elements of the vertical shift bit vector.

5. The method claim 1 , performing the shift operations includes performing a first AND operation with an element of the vertical shift bit vector and an element of the bit vector that is being shifted.

6. The method of claim 1 , wherein performing the shift operations includes performing at least one of an AND, an OR, an invert, and a shift operation, wherein the at least one of the AND, OR, invert, and shift operations is based on a value of elements in the vertical shift bit vector.

7. The method of claim 1 , wherein performing the shift operations includes shifting an element of the bit vectors by 2 n-1 positions as indicated by elements of the vertical shift bit vector that are coupled to a common access line and wherein n corresponds to an element's position in the vertical shift bit vector.

8. The method of claim 1 , wherein the method includes storing a bit vector for each of the shift operations in memory cells coupled an access line that is different than the plurality of access lines coupled to the memory cells storing the bit vectors.

9. An apparatus comprising:

a first group of memory cells coupled to a sense line and a first plurality of access lines and configured to store a number of elements of a vertical bit vector; and

a controller configured to cause:

the number of elements of the vertical bit vector to shift by a number of positions indicated by a vertical shift bit vector, wherein elements of the vertical shift bit vector having a first value indicate that the elements of the vertical bit vector are not shifted and elements of the vertical shift bit vector having a second value indicate that elements of the vertical bit vector are to be shifted by an amount corresponding to a position of the element in the vertical shift bit vector.

10. The apparatus of claim 9 , wherein the vertical shift bit vector is stored in a second group of memory cells coupled to the sense line and a second plurality of access lines.

11. The apparatus of claim 9 , wherein the controller is configured to cause a shifted vertical bit vector to be stored in a third group of memory cells coupled to the sense line and a third plurality of access lines.

12. The apparatus of claim 9 , wherein the vertical shift bit vector includes a number of elements and each element of the vertical shift bit vector corresponds to an amount to shift the number of elements of the vertical bit vector.

13. The apparatus of claim 12 , wherein the amount of shift for the number of elements of the vertical shift bit vector corresponds to 2 n-1 positions, wherein n corresponds to an element's position in the vertical shift bit vector.

14. A method for shifting data, comprising:

shifting elements of bit vectors stored in a memory array by:

performing shift operations, wherein each of the shift operations shift elements of the bit vectors by a number of positions indicated by a vertical shift bit vector, wherein an element of the vertical shift bit vector indicates that a bit of the bit vectors is shifted by 2 n-1 positions, and wherein n corresponds to an element's position in the vertical shift bit vector; and

wherein each bit vector is stored in memory cells coupled to a sense line and a plurality of access lines; and each bit vector is separated by at least one sense line from a neighboring bit vector.

15. The method claim 14 , wherein the vertical shift bit vector is stored in memory cells that are coupled the sense line that is coupled to memory cells storing a corresponding one of the bit vectors.

16. The method of claim 14 , wherein performing the shift operations includes shifting elements of each of the bit vectors that are coupled to a common access line by an amount indicated by the vertical shift bit vector.

17. The method of claim 14 , wherein performing the shift operations includes performing a shift iteration on each element of each of the bit vectors that are coupled to a common access line by an amount indicated by elements of the vertical shift bit vector.

18. The method claim 17 , wherein performing the shift iteration includes inverting an element of the vertical shift bit vector, performing an AND operation with the inverted element of the vertical shift bit vector and an element of the bit vectors, and storing the result of the AND operation in destination memory cells corresponding to the element of the bit vectors.

19. The method of claim 17 , wherein performing the shift iteration includes performing a first AND operation with a first element of the vertical shift bit vector and a first element of the bit vectors that is being shifted, inverting the first element of the vertical shift bit vector, performing a second AND operation with the inverted element of the vertical shift bit vector and the first element of the bit corresponding to a shifted bit vector, performing an OR operation on the result of the first AND operation and the second AND operation, and storing a result of the OR operation in destination memory cells.

20. The method of claim 14 , wherein the method includes storing a bit vector for each of the shift operations in memory cells coupled an access line that is different than the plurality of access lines coupled to the memory cells storing the bit vectors.

Assignments (7)
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 Jun 16, 2017
From: TIWARI, SANJAY; WHEELER, KYLE B.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 042736/0785 →