IP Library › Granted Patent US 9,799,401
Granted Patent B2
US 9,799,401 · App. 14/487,769 · Granted Oct 24, 2017

Incremental step pulse programming

Inventors: Gyu-Chul Kim (Lakeville, MN); Youngpil Kim (Eden Prairie, MN)
Assignee: SEAGATE TECHNOLOGY LLC
G11C16/10G11C16/0483G11C16/12G11C16/349
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,799,401
App. No.
14/487,769
Granted
Oct 24, 2017
Kind
B2
Abstract

The disclosed technology provides enables incremental step pulse programming (ISPP) operations with variable pulse step height control. In particular, a storage device is configured to select a pulse step height for an ISPP operation of one or more memory cells of a storage device based on a write frequency of data programmed via the ISPP operation. The storage device saves the data by applying a series of electrical pulses to the one or more memory cells, each subsequent pulse increasing in magnitude by the selected pulse step height.

Claims (22)

1. Apparatus comprising:

a storage controller configured to select a pulse step height for an incremental step pulse programming (ISPP) operation of one or more memory cells of a storage device based on a classification assigned to data programmed via the ISPP operation, the classification designating a write frequency of the data and determined based on an identifier saved in association with the data on the storage device that identifies the data as hot or cold and the storage controller is further configured to apply a series of electrical pulses to the one or more memory cells, each subsequent electrical pulse increasing in magnitude by the selected pulse step height,

wherein the storage controller selects a first pulse step height responsive to a determination that the write frequency of the data exceeds a threshold frequency and selects a second pulse step height smaller than the first pulse height responsive to a determination that the write frequency of the data does not exceed the threshold frequency.

2. The apparatus of claim 1 , wherein the storage controller applies the series of electrical pulses to a control gate of the one or more memory cells.

3. The apparatus of claim 1 , wherein the identifier is received from the host in association with the data and is saved in association with the data on the storage device.

4. The apparatus of claim 3 , where the storage controller is further configured to program the identifier in at least one of a same page and a same data block that includes the data after the programming operation.

5. The apparatus of claim 3 , wherein the identifier is a one-bit value.

6. The apparatus of claim 3 , wherein the identifier is a two-bit value.

7. The apparatus of claim 3 , wherein the controller assigns the identifier to the data when the data is originally programmed to the storage device.

8. The apparatus of claim 1 , wherein the storage controller is further configured to select the pulse step height by reading an identifier saved in at least one of a same page and a same data block as the data.

9. One or more non-transitory computer-readable storage media encoding computer-executable instructions for executing on a computer system a computer process, wherein the computer-readable media is not a carrier wave or propagating signal and the computer process comprises:

selecting a pulse step height for an ISPP operation of one or more memory cells of a storage device based on a classification assigned to data programmed via the ISPP operation, the classification designating a write frequency of the data and determined based on an identifier saved in association with the data on the storage device that identifies the data as hot or cold, wherein a first pulse step height is selected responsive to a determination that the write frequency of the data exceeds a threshold frequency and a second pulse step height smaller than the first pulse height is selected responsive to a determination that the write frequency of the data does not exceed the threshold frequency; and

applying a series of electrical pulses to the one or more memory cells, each subsequent pulse increasing in magnitude by the selected pulse step height.

10. The one or more non-transitory computer-readable storage media of claim 9 , wherein applying the series of electrical pulses further comprises:

applying the series of electrical pulses to a control gate of the one or more memory cells.

11. The one or more non-transitory computer-readable storage media of claim 9 , wherein selecting the pulse step height further comprises:

reading the identifier saved in at least one of a same page and a same data block as the data.

12. The one or more non-transitory computer-readable storage media of claim 9 , further comprising:

programming the identifier in at least one of a same page and data block that includes the data after the programming operation.

13. The one or more non-transitory computer-readable storage media of claim 9 , wherein the identifier is a one-bit value.

14. The one or more non-transitory computer-readable storage media of claim 9 , wherein the identifier is assigned to the data when the data is originally programmed to the storage device.

15. The one or more non-transitory computer-readable storage media of claim 9 , wherein the identifier is originally determined based on information received from the host in association with the data that indicates whether or not a particular programming operation is user-initiated.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 16, 2014
From: KIM, GYU-CHUL; KIM, YOUNGPIL
To: SEAGATE TECHNOLOGY LLC
Reel/Frame 033750/0886 →
Continuity (1)
Related Publication 20160078945A1 · Mar 17, 2016