IP Library Granted Patent US 9,165,649
Granted Patent B2
US 9,165,649 · App. 14/136,740 · Granted Oct 20, 2015

Systems and methods of shaping data

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,165,649
App. No.
14/136,740
Granted
Oct 20, 2015
Kind
B2
Abstract

A method of shaping data includes receiving data represented as a first set of bits, where each bit of the first set of bits corresponds to a logical value. A first write current to write a first logical value to a storage element is less than a second write current to write a second logical value to the storage element. The method also includes applying a shaping operation to generate a second set of bits, where a proportion of bits having the first logical value is larger for the second set of bits than for the first set of bits. The method also includes writing the second set of bits to the memory.

Claims (50)

1. A method comprising:

in a data storage device including a memory including a plurality of resistance-based storage elements, performing:

receiving data represented as a first set of bits, each bit in the first set of bits corresponding to a logical value, wherein a first write current to write a first logical value to a storage element in the memory is less than a second write current to write a second logical value to the storage element;

applying a shaping operation to generate a second set of bits, wherein a number of bits having the second logical value is smaller for the second set of bits than for the first set of bits; and

writing the second set of bits to the memory.

2. The method of claim 1 , further comprising:

determining a set of storage elements of the plurality of resistance-based storage elements to which the data is to be written; and

determining the shaping operation to be applied to the first set of bits based on a characteristic of at least one storage element of the set of storage elements.

3. The method of claim 2 , wherein the characteristic of the at least one storage element is associated with a logical value stored at one or more storage elements adjacent to the at least one storage element in the memory.

4. The method of claim 2 , wherein the characteristic of the at least one storage element is associated with a location of the at least one storage element.

5. The method of claim 4 , wherein the location is dependent upon a location of the at least one storage element on a bitline.

6. The method of claim 4 , wherein the location is dependent upon a location of the at least one storage element on a wordline.

7. The method of claim 4 , wherein the location is dependent upon a location of the at least one storage element on a finger.

8. The method of claim 1 , wherein applying the shaping operation causes a probability that every storage element on a particular bitline has a low-resistance state to be less than a threshold probability.

9. The method of claim 1 , further comprising compressing the data represented as the first set of bits to form a compressed set of bits, wherein the shaping operation is applied to the compressed set of bits to generate the second set of bits.

10. The method of claim 1 , further comprising compressing the first set of bits concurrently with applying the shaping operation to generate the second set of bits.

11. The method of claim 1 , further comprising:

determining whether at least a subset of the first set of bits is compressible,

wherein:

when a first particular subset of the first set of bits is non-compressible, a first shaping operation is applied to the first particular subset of the first set of bits; and

when a second particular subset of the first set of bits is compressible, a second shaping operation is applied to the second particular subset of the first set of bits by compressing and shaping the second particular subset of the first set of bits to form compressed and shaped bits, wherein the compressed and shaped bits include a first number of bits and the second particular subset of the first set of bits include a second number of bits, wherein the first number is less than or equal to the second number.

12. The method of claim 1 , wherein, for a particular storage element, a larger programming current is used to write a logical zero value than to write a logical one value, and wherein the second set of bits includes fewer logical zero values than the first set of bits.

13. The method of claim 1 , wherein, for a particular storage element, a larger programming current is used to write a logical one value than to write a logical zero value, and wherein the second set of bits includes fewer logical one values than the first set of bits.

14. The method of claim 1 , wherein, for a particular storage element, a larger read current is used to read a logical zero value than to read a logical one value, and wherein the second set of bits includes fewer logical zero values than the first set of bits.

15. The method of claim 1 , wherein, for a particular storage element, a larger read current is used to read a logical one value than to read a logical zero value, and wherein the second set of bits includes fewer logical one values than the first set of bits.

16. A data storage device comprising:

a controller; and

a memory including a plurality of resistance-based storage elements,

wherein the controller is configured to:

receive data represented as a first set of bits, each bit of the first set of bits corresponding to a logical value, wherein a first write current to write a first logical value to a storage element of the memory is less than a second write current to write a second logical value to the storage element of the memory;

apply a shaping operation to generate a second set of bits, wherein a number of bits having the second logical value is smaller for the second set of bits than for the first set of bits; and

write the second set of bits to the memory.

17. The data storage device of claim 16 , wherein the controller is further configured to:

determine a set of storage elements of the plurality of storage elements to which the data is to be written; and

determine the shaping operation to be applied to the first set of bits based on a characteristic of at least one storage element of the set of storage elements.

18. The data storage device of claim 17 , wherein the characteristic of the at least one storage element is associated with a logical value stored at one or more storage elements adjacent to the at least one storage element in the memory.

19. The data storage device of claim 17 , wherein the characteristic of the at least one storage element is associated with a location of the at least one storage element.

20. The data storage device of claim 19 , wherein the location is dependent upon a location of the at least one storage element on a bitline.

21. The data storage device of claim 19 , wherein the location is dependent upon a location of the at least one storage element on a wordline.

22. The data storage device of claim 19 , wherein the location is dependent upon a location of the at least one storage element on a finger.

23. The data storage device of claim 16 , wherein applying the shaping operation causes a probability that every storage element on a particular bitline has a low-resistance state to be less than a threshold probability.

24. The data storage device of claim 16 , wherein the controller is further configured to compress the data represented as the first set of bits to form a compressed set of bits, wherein the shaping operation is applied to the compressed set of bits to generate the second set of bits.

25. The data storage device of claim 16 , wherein the controller is further configured to compress the first set of bits concurrently with applying the shaping operation to generate the second set of bits.

26. The data storage device of claim 16 , wherein the controller is further configured to determine whether at least a subset of the first set of bits is compressible, wherein:

when a first particular subset of the first set of bits is non-compressible, a first shaping operation is applied to the first particular subset of the first set of bits; and

when a second particular subset of the first set of bits is compressible, a second shaping operation is applied to the second particular subset of the first set of bits by compressing and shaping the second particular subset of the first set of bits to form compressed and shaped bits, wherein the compressed and shaped bits include a first number of bits and the second particular subset of the first set of bits include a second number of bits, wherein the first number is less than or equal to the second number.

27. The data storage device of claim 16 , wherein, for a particular storage element of the memory, a larger programming current is used to write a logical zero value than to write a logical one value, and wherein the second set of bits includes fewer logical zero values than the first set of bits.

28. The data storage device of claim 16 , wherein, for a particular storage element of the memory, a larger programming current is used to write a logical one value than to write a logical zero value, and wherein the second set of bits includes fewer logical one values than the first set of bits.

29. The data storage device of claim 16 , wherein, for a particular storage element of the memory, a larger read current is used to read a logical zero value than to read a logical one value, and wherein the second set of bits includes fewer logical zero values than the first set of bits.

30. The data storage device of claim 16 , wherein, for a particular storage element of the memory, a larger read current is used to read a logical one value than to read a logical zero value, and wherein the second set of bits includes fewer logical one values than the first set of bits.

Assignments (5)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 31, 2024
From: SANDISK TECHNOLOGIES LLC
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 069796/0423 →
CHANGE OF NAME Recorded May 25, 2016
From: SANDISK TECHNOLOGIES INC
To: SANDISK TECHNOLOGIES LLC
Reel/Frame 038807/0948 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2013
From: SHARON, ERAN; LIU, TZ-YI; YAN, TIANHONG; ALROD, IDAN
To: SANDISK TECHNOLOGIES INC.
Reel/Frame 031831/0692 →