IP Library Granted Patent US 7,038,948
Granted Patent B2
US 7,038,948 · App. 10/946,809 · Granted May 2, 2006

Read approach for multi-level virtual ground 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 7,038,948
App. No.
10/946,809
Granted
May 2, 2006
Kind
B2
Abstract

The present invention pertains to a technique for determining the level of a bit in a dual sided ONO flash memory cell where each of the bits of the dual sided ONO flash memory cell can be programmed to multiple levels. One or more aspects of the present invention take into consideration the affect that the level of charge on one bit can have on the other bit, otherwise known as complimentary bit disturb. A metric known as transconductance is utilized in making the bit level determination to provide a greater degree of resolution and accuracy. In this manner, determining the bit level in accordance with one or more aspects of the present invention mitigates false or erroneous reads.

Claims (81)

1. A method of determining a programmed level of a bit of a core memory cell, comprising:

making a slope comparison of a core current slope for respective bits of the cell to a plurality of reference current slopes corresponding to possible levels of the bit; and

determining the level of the bit based upon the slope comparison.

2. The method of claim 1 , wherein the slope comparison comprises subtracting the plurality of reference current slopes from the core current slope.

3. The method of claim 2 , wherein determining the level of the bit comprises finding the lowest of respective values for the reference current slopes subtracted from the core current slope.

4. The method of claim 3 , further comprising:

making an un-programmed comparison of a core current for the bit of the cell to a blank reference current; and

determining that the bit is blank if the core current is greater than or equal to the blank reference current.

5. The method of claim 4 , further comprising:

determining the core current slope by:

applying a first gate voltage (vgate1) to the cell and reading resulting current for the bit;

applying a second gate voltage (vgate2) to the cell and reading resulting current for the bit; and

subtracting the core current at vgate1 from the core current at vgate2.

6. The method of claim 5 , further comprising:

determining the reference current slopes by:

subtracting respective reference currents from corresponding incremented reference currents for the different levels of the bit.

7. The method of claim 6 , further comprising:

determining the respective reference currents by:

applying vgate1 to multiple reference bits in multiple cells where the bits are programmed to the same level in the cells;

reading the currents for the bits in the respective cells; and

averaging the currents for the bits that are programmed to the same level.

8. The method of claim 7 , further comprising:

determining the respective incremented reference currents by:

applying an incremented vgate1 to multiple reference bits in multiple cells where the bits are programmed to the same level in the cells;

reading the currents for the bits in the respective cells; and

averaging the currents for the bits that are programmed to the same level.

9. The method of claim 8 , wherein vgate1 is a voltage that produces an average current of between about 1 to 5 micro-amps in a dual bit reference cell that has one or more bits programmed to vgate1 target reference level.

10. The method of claim 9 , wherein the current produced by vgate1 is referred to as reference vgate1 current, the method further comprising:

determining the blank reference current by:

applying vgate1 to a blank or un-programmed bit of a dual bit reference cell, where the other bit is programmed to a higher level;

reading resulting blank current from the blank reference bit; and

taking one half of the sum of the reference vgate1 current and the blank current of the reference bit.

11. The method of claim 10 , wherein the bit can have four different levels 1, 2, 3 and 4,

whereby there is a level 2 average reference current, a level 3 average reference current and a level 4 average reference current,

wherein vgate2 is a voltage that when applied to the reference cells to produce the average reference currents that yield a level 2 reference current slope, a level 3 reference current slope and a level 4 reference current slope, at least one of the difference between the level 2 and level 3 reference current slopes is between a first current slope difference range, the difference between the level 3 and level 4 reference current slopes is between a second current slope difference range and the level 4 reference current slope is between a level 4 reference current slope range.

12. The method of claim 11 , wherein the first current slope difference range about 7 to 10 micro-amps.

13. The method of claim 11 , wherein the second current slope difference range is about 7 to 10 micro-amps.

14. The method of claim 11 , wherein the level 4 reference current slope range is about 2 to 5 micro-amps.

15. A method of determining the level of a bit in a dual sided ONO flash memory cell that can be one of four different levels; level 1, level 2, level 3 or level 4, the method comprising:

programming a plurality of dual bit reference cells such that one or both bits within the respective cells are programmed to required levels;

applying a gate voltage to reference bits programmed to vgate1 target reference level;

reading respective currents for the bits and averaging these currents to get a vgate1 target reference current;

determining whether the vgate1 target reference current is between about 1 to 5 micro-amps;

incrementing and reapplying the applied gate voltage until the vgate1 target reference current is between about 1 to 5 micro-amps if the vgate1 target reference current is not initially between about 1 to 5 micro-amps;

designating the applied voltage that produces a vgate1 target current between about 1 to 5 micro-amps as vgate1, and calling the produced vgate1 target current that is between about 1 to 5 micro-amps reference vgate1 current;

applying vgate1 to one or more blank bits of one or more two bit reference cells that have one bit (un)programmed to a level 1 and the other bit programmed to a level 4;

reading resulting blank current from the blank reference bit;

determining a blank reference current by taking one half of the sum of the blank current from the blank reference bit and the reference vgate1 target current;

applying vgate1 to different dual bit reference cells that have some bits programmed to the same level;

reading respective currents for the bits in each of these cells;

averaging the respective currents for cells programmed to the same level to get a level 2 reference current, a level 3 reference current and a level 4 reference current;

incrementing vgate1 by about 0.5 volts and applying to bits from reference cells that are programmed to the same level;

reading respective currents for both of the bits in each of these cells;

averaging the respective currents for cells programmed to the same level to get a level 2 incremented reference current, a level 3 incremented reference current and a level 4 incremented reference current;

determining respective reference current slopes by subtracting the reference currents from the corresponding incremented reference currents

determining whether any of a first set of conditions are met regarding whether the difference between the level 2 and level 3 reference current slopes is between about 7 to 10 micro-amps, whether the difference between the level 3 and level 4 reference current slopes is between about 7 to 10 micro-amps or whether the level 4 reference current slope is between about 2 to 5 micro-amps;

incrementing vgate1 by about 100 milli-volts and applying to the dual bit reference cells that have bits programmed to the same level until at least one of the first set of conditions are met if none of the conditions are initially met;

setting the applied voltage that makes any of the conditions true equal to vgate2;

applying vgate1 to a dual bit core memory cell that has a bit whose level is to be determined;

reading a resulting core bit current for the bit whose level is to be determined;

determining whether a second condition is true regarding whether the core bit current is greater than or equal to the blank reference current;

designating the bit to be a level 1 or blank if the second condition is true;

applying vgate2 to the bit if the second conditions is not true;

reading a resulting current for the bit;

subtracting the vgate1 core bit current from the core bit current determined by applying vgate2 to the core memory cell to ascertain a core current slope;

determining the level of the core bit by finding the lowest absolute value resulting from the level 2 reference current slope subtracted from the core current slope, the level 3 reference current slope subtracted from the core current slope and the level 4 reference current slope subtracted from the core current slope.

16. A method of determining a level of a bit of a core dual sided ONO flash memory cell, comprising:

determining whether the bit is blank or a level 1 by making an un-programmed comparison of a core current for the bit of the cell to a blank reference current corresponding to a situation where a bit is a level 1 or blank in a reference cell and a level 2 reference current corresponding to a situation where a bit is a level 2 in a reference cell; and

making a slope comparison of a core current slope for the bit to a plurality of reference current slopes corresponding to possible levels of the bit if the bit is not un-programmed; and

determining the level of the bit based upon the slope comparison.

17. The method of claim 16 , wherein the slope comparison comprises subtracting the plurality of reference current slopes from the core current slope.

18. The method of claim 17 , wherein determining the level of the bit based upon the slope comparison comprises finding the minimum absolute value of respective difference for the reference current slopes subtracted from the core current slope.

19. The method of claim 16 , wherein the un-programmed comparison comprises determining that the bit is blank if the core current is greater than or equal to the blank reference current.

20. A method of determining a programmed level of a bit of a core memory cell, comprising:

comparing a transconductance value for the bit of the cell to a plurality of reference transconductance values corresponding to possible levels of the bit; and

determining the level of the bit based upon the comparison.

21. The method of claim 20 , wherein the slope comparison comprises subtracting the plurality of reference transconductance values from the transconductance value for the bit and finding a least absolute difference.

22. The method of claim 21 , further comprising:

determining the transconductance value for the bit by subtracting a first drain current for the bit obtained by applying a first gate voltage from a second drain current for the bit obtained by applying a second gate voltage.

23. The method of claim 22 , further comprising:

determining the respective reference transconductance values by subtracting respective first drain currents for reference bits set to the different possible bit levels obtained by applying the first gate voltage from respective second drain currents for the reference bits set to the different possible bit levels obtained by applying the second gate voltage.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Mar 16, 2022
From: MUFG UNION BANK, N.A.
To: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
Reel/Frame 059410/0438 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 8647899 PREVIOUSLY RECORDED ON REEL 035240 FRAME 0429. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTERST. Recorded Nov 3, 2020
From: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 058002/0470 →
SECURITY INTEREST Recorded Mar 21, 2015
From: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 035240/0429 →
RELEASE OF SECURITY INTEREST Recorded Mar 13, 2015
From: BARCLAYS BANK PLC
To: SPANSION LLC; SPANSION INC.; SPANSION TECHNOLOGY LLC
Reel/Frame 035201/0159 →
CHANGE OF NAME Recorded Aug 1, 2014
From: FASL LLC
To: SPANSION LLC
Reel/Frame 033446/0664 →
SECURITY AGREEMENT Recorded Jun 4, 2010
From: SPANSION LLC; SPANSION INC.; SPANSION TECHNOLOGY INC.; SPANSION TECHNOLOGY LLC
To: BARCLAYS BANK PLC
Reel/Frame 024522/0338 →