IP Library Patent Application 11852138
Patent Application
App. No. 11/852,138

SYSTEM, METHOD, AND COMPUTER PROGRAM PRODUCT FOR REDUCING MEMORY WRITE OPERATIONS USING AN INSTRUCTION SET

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 None
App. No.
11/852,138
Abstract

An apparatus, method, and computer program product comprise identifying write operations to be performed on a data stored in memory. Further, a difference is determined between results of the write operations and the data stored in the memory. In addition, the difference information associated with the difference is stored, using an instruction set Furthermore, the write operations are reduced, utilizing the difference information.

Claims (32)

1 . A method, comprising:

identifying write operations to be performed on a data stored in memory;

determining a difference between results of the write operations and the data stored in the memory;

storing difference information associated with the difference, using an instruction set; and

reducing the write operations, utilizing the difference information.

2 . The method of claim 1 , wherein the difference information is compressed.

3 . The method of claim 1 , wherein, in response to a read operation, the data and the difference information are retrieved, and the data is reconstructed utilizing the difference information.

4 . The method of claim 3 , wherein the difference information is retrieved from the memory.

5 . The method of claim 3 , wherein the difference information is retrieved from a buffer.

6 . The method of claim 1 , wherein the difference information is stored in a buffer.

7 . The method of claim 6 , wherein, in response to the buffer being full, the difference information is stored in the memory.

8 . The method of claim 1 , wherein the difference information is stored in a block of the memory in which corresponding data is stored.

9 . The method of claim 8 , wherein the difference information is stored in a portion of the block having a predetermined size.

10 . The method of claim 9 , wherein the predetermined size is user configured.

11 . The method of claim 9 , wherein, in response to the difference information exceeding the predetermined size, the data and the difference information are retrieved from the block, the data is reconstructed utilizing the difference information, and the reconstructed data is stored in the block.

12 . The method of claim 1 , wherein the difference is determined on a byte-by-byte basis.

13 . The method of claim 1 , wherein the difference is determined utilizing data motion estimation.

14 . The method of claim 1 , wherein the memory includes a mechanical storage device.

15 . The method of claim 14 , wherein the mechanical storage device includes a disk drive.

16 . The method of claim 1 , wherein the memory includes a non-mechanical storage device.

17 . The method of claim 1 , wherein the memory includes a volatile memory device.

18 . The method of claim 1 , wherein the memory includes a nonvolatile memory device.

19 . The method of claim 18 , wherein the nonvolatile memory device includes at least one of a single-bit per cell NOR flash memory, a multi-bit per cell NOR flash memory, a single-bit per cell NAND flash memory, and a multi-bit per cell NAND flash memory.

20 . A computer program product embodied on a computer readable medium, comprising:

computer code for identifying write operations to be performed on data stored in memory;

computer code for determining a difference between results of the write operations and the data stored, using an instruction set;

computer code for storing difference information associated with the difference in the memory; and

computer code for reducing the write operations, utilizing the difference information.

21 . An apparatus, comprising:

a difference computation module for determining a difference between results of write operations to be performed on data stored in memory and the data stored in the memory, where difference information associated with the difference is stored, using an instruction set; and

an update module in communication with the difference computation module, the update module for reducing the write operations, utilizing the difference information.

22 . The apparatus of claim 21 , wherein the apparatus is coupled between a system and the memory.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2012
From: SANDFORCE, INC.
To: LSI CORPORATION
Reel/Frame 028938/0413 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 7, 2007
From: DANILAK, RADOSLAV
To: SANDFORCE, INC.
Reel/Frame 019808/0818 →