IP Library Granted Patent US 9,847,110
Granted Patent B2
US 9,847,110 · App. 14/826,481 · Granted Dec 19, 2017

Apparatuses and methods for storing a data value in multiple columns of an array corresponding to digits of a vector

Inventor: Patrick A. La Fratta (Boise, ID)
Assignee: Micron Technology, Inc.
G11C7/065G11C7/1006G11C7/106G11C7/1009G11C11/4091G11C11/4096
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,847,110
App. No.
14/826,481
Granted
Dec 19, 2017
Kind
B2
Abstract

An example apparatus comprises an array of memory cells coupled to sensing circuitry. The apparatus can include a control component configured to cause computing of a data value equal to a logical OR between the digit of a mask and a data value stored in a memory cell located in a row at a column of the array corresponding to a digit of a vector stored in the array. The control component can cause storing of the data value equal to the logical OR in the memory cell located in the row at the column of the array corresponding to the digit of the vector.

Claims (78)

1. An apparatus, comprising:

an array of memory cells coupled to a sensing circuitry; and

a control component configured to cause:

computing of a data value equal to a logical OR between a digit of a mask and a data value stored in a memory cell located in a row at a column of the array corresponding to a digit of a vector to be stored in the array, wherein the mask comprises a plurality of digits corresponding to respective columns of the array and indicating whether or not the vector is to be stored in a particular column; and

storing of the data value equal to the logical OR in the memory cell located in the row at the column of the array corresponding to the digit of the vector.

2. The apparatus of claim 1 , wherein the control component is further configured to cause:

loading of the digit of the mask into an accumulator of the sensing circuitry; and

initially storing the data value equal to the logical OR in a sense amplifier of the sensing circuitry.

3. The apparatus of claim 1 , wherein the control component is further configured to cause:

loading of the digit of the mask into a sense amplifier of the sensing circuitry; and

initially storing the data value equal to the logical OR in an accumulator of the sensing circuitry.

4. The apparatus of claim 1 , wherein the control component is further configured to cause:

storing of the mask in a row, R, of the array; and

storing of the data value equal to the logical OR in the row of the array corresponding to an ith digit of the vector.

5. The apparatus of claim 1 , wherein the control component is further configured to cause:

computing of a data value of an ith digit of the vector;

storing of the mask in row R of the array; and

storing of the data value equal to the logical OR in the R+ith row of the array corresponding to the ith digit of the vector.

6. The apparatus of claim 1 , wherein the control component is further configured to cause:

computing of the data value equal to the logical OR between the digit of the mask and the data value stored in the memory cell only if the digit of the vector is a particular logical value; and

the data value equal to the logical OR to not be stored in the memory cell located in the column and R+ith row of the memory array if the digit of the vector is not the particular logical value.

7. The apparatus of claim 1 , wherein the control component is further configured to cause setting of the data value stored in the memory cell located in the column and the row of the memory array corresponding to an ith digit of the vector to a logical value that does not make the logical OR true before the data value is computed to be equal to the logical OR.

8. The apparatus of claim 1 , wherein the control component is configured to cause computing of the data value equal to the logical OR without transferring data values via an input/output (I/O) line outside the array and sensing circuitry.

9. The apparatus of claim 1 , wherein the control component is configured to cause computing of the data value equal to the logical OR using transistors formed on a pitch with transistors comprising the array.

10. An apparatus, comprising:

an array of memory cells coupled to a sensing circuitry; and

a control component configured to cause:

computing of, for a plurality (i) of digits of a vector to be stored in one or more columns of the array, a data value equal to a logical function between:

a digit of a mask in the sensing circuitry, wherein the mask comprises a plurality of digits corresponding to respective columns of the array and indicating whether or not the vector is to be stored in a particular column; and

a data value stored in a memory cell located in a respective column and a row of the array corresponding to a digit of the vector to be stored in one or more columns of the array; and

storing of the data value equal to the logical function in the memory cell located in the column and the row of the array corresponding to the ith digit of the vector.

11. The apparatus of claim 10 , wherein the control component is configured to cause loading of the digit of the mask corresponding to a respective column of the array into an accumulator of the sensing circuitry associated with the respective column.

12. The apparatus of claim 11 , wherein the control component comprises a register configured to store the vector, and wherein the control component is configured to:

cause the sensing circuitry to compute the data value equal to the logical function whenever the digit of the vector stored in the register is a first logical value; and

not cause the sensing circuitry to compute the data value equal to the logical function whenever the digit of the vector stored in the register is a second logical value.

13. The apparatus of claim 12 , wherein the control component is configured to cause setting of a data value stored in memory cells located in respective columns of the array to the second logical value prior to causing computing of the data value equal to the logical function.

14. The apparatus of claim 12 , wherein the mask indicates those one or more columns of the array in which the vector is to be stored, and wherein the logical function is a logical OR operation.

15. The apparatus of claim 11 , wherein the control component comprises a sequencer having a register, wherein:

the register is configured to store the vector; and

the sequencer is configured to:

cause the sensing circuitry to compute the data value equal to the logical OR whenever the ith digit of the vector stored in the register is a logical “1”; and

not cause the sensing circuitry to compute the data value equal to the logical OR whenever the ith digit of the vector stored in the register is a logical “0”.

16. A method for storing a vector in multiple columns, comprising:

loading a digit of a mask corresponding to a column of the memory array into an accumulator, wherein the mask comprises a plurality of digits corresponding to respective columns of the array and indicating whether or not the vector is to be stored in a particular column;

computing a data value equal to a logical OR between the digit of the mask in the accumulator and a data value stored in a memory cell located in the column and a row of the memory array corresponding to an ith digit of the vector to be stored in one or more columns of the memory array when the ith digit of the vector is a logical value that makes a logical OR true; and

storing the data value equal to the logical OR in the memory cell located in the column and the row of the memory array corresponding to the ith digit of the vector.

17. The method of claim 16 , further comprising storing the mask in a row of the memory array before loading the digit of the mask into the accumulator.

18. The method of claim 17 , wherein:

storing the mask in the row of the memory array includes storing the mask in the Rth−1 row of the memory array; and

the row of the memory array corresponding to the ith digit of the vector is the Rth+ith row.

19. The method of claim 18 , wherein the row of the memory array corresponding to the least significant digit of the vector is the Rth row.

20. The method of claim 16 , further comprising:

not computing the data value equal to the logical OR between the digit of the mask in the accumulator and the data value stored in the memory cell located in the column and the R+ith row of the memory array when the ith digit of the vector to be stored in one or more columns of the memory array is not the logical value that makes the logical OR true; and

not storing the data value equal to the logical OR in the memory cell located in the column and R+ith row of the memory array.

21. The method of claim 16 , further comprising setting the data value stored in the memory cell located in the column and the row of the memory array corresponding to the ith digit of the vector to a logical value that does not make the logical OR true before computing the data value equal to the logical OR.

22. The method of claim 16 , further comprising clearing the data value stored in the memory cell located in the column and the row of the memory array corresponding to the ith digit of the vector before computing the data value equal to the logical OR without clearing data values stored in memory cells located in columns in which the vector will not be stored.

23. The method of claim 16 , further comprising

before computing the data value equal to the logical OR:

inverting the digit of the mask in the accumulator;

computing a data value equal to a logical AND between the inverted digit of the mask in the accumulator and the data value stored in the memory cell located in the column and the row of the memory array corresponding to the ith digit of the vector to be stored in one or more columns of the memory array when the ith digit of the vector is the logical value that makes a logical OR true; and

storing the data value equal to the logical AND in the memory cell located in the column and the row of the memory array corresponding to the ith digit of the vector.

24. The method of claim 16 , further comprising

inverting the digit of the mask;

storing the inverted digit of the mask in one row of the memory array;

loading the inverted digit of the mask into the accumulator;

computing a data value equal to a logical AND between the inverted digit of the mask in the accumulator and the data value stored in the memory cell located in the column and the row of the memory array corresponding to the ith digit of the vector to be stored in one or more columns of the memory array when the ith digit of the vector is the logical value that makes a logical OR true; and

storing the data value equal to the logical AND in the memory cell located in the column and the row of the memory array corresponding to the ith digit of the vector.

25. A method for storing a vector in multiple columns, comprising:

for each one of a plurality of columns of a memory array, loading a digit of a mask corresponding to the respective column into a sensing circuitry associated with the respective column, wherein the mask comprises a plurality of digits corresponding to respective columns of the array and indicating whether or not the vector is to be stored in a particular column;

setting data values in memory cells in multiple columns of the plurality of columns to a first logical value;

computing, in parallel for each respective one of the plurality of columns, a data value equal to a logical function between the digit of the mask in the an accumulator and a data value stored in a memory cell located in the respective column and a row of the memory array corresponding to an ith digit of the vector to be stored in the multiple columns of the plurality of columns when the ith digit of the vector is a second logical value different than the first logical value; and

storing the data value equal to the logical function in the memory cell located in the multiple columns and the row of the memory array corresponding to the ith digit of the vector.

26. The method of claim 25 , wherein setting data values in memory cells in multiple columns of the plurality of columns to the first logical value does not include setting data values in memory cells in some of the plurality of columns to the first logical value.

27. The method of claim 25 , wherein setting data values in memory cells in multiple columns of the plurality of columns to the first logical value includes setting data values in memory cells in those columns of the plurality of columns to which the vector is to be stored.

28. The method of claim 25 , wherein computing and storing the data value equal to the logical function occurs for each digit of the vector for which the data value is not equal to the first logical value.

29. The method of claim 25 , wherein computing and storing the data value equal to the logical function occurs for each digit of the vector for which the data value is equal to the second logical value.

30. The method of claim 25 , wherein the digit of the mask corresponding to each of the multiple respective columns is a logical value that will cause the logical function to be different than the first logical value.

31. The method of claim 25 , wherein the digit of the mask corresponding to each of the respective columns of the plurality of columns other than the multiple columns is a logical value that will not cause the logical function to be different than the data value stored in the memory cell located in the respective column and the row of the memory array corresponding to the ith digit of the vector.

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 Aug 14, 2015
From: LA FRATTA, PATRICK A.
To: MICRON TECHNOLOGY, INC.
Reel/Frame 036328/0169 →
Continuity (2)
Provisional Application 62045305 · Sep 3, 2014
Related Publication 20160064045A1 · Mar 3, 2016