IP Library Patent Application 12269932
Patent Application
App. No. 12/269,932

HANDLING OF DATA STORAGE WITHIN A FLASH MEDIA DEVICE

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.
12/269,932
Abstract

A flash memory device can be subdivided into smaller areas (called chunks) that can written independently over a extended periods of time even though each sector must be erased as a single unit. It may be determined which chunks of data within a sector are valid or invalid and the valid data can be recovered. When errors are detected, the retrieved data may be retrieved from an earlier stored memory chunk in another sector. The type of data stored within a chunk is flagged within that chunk. Each chunk can be date and/or time stamped. Each chunk can also be given a unique, but increasing, sequence number. These values can be used to determine the latest chunk of a particular type.

Claims (34)

1 . A method of storing and retrieving data within a memory device, the method comprises:

allocating at least one memory sector for each data type to be stored within the memory device;

dividing each memory sector into a plurality of memory chunks;

erasing all memory locations within each memory chunks;

dividing data of the data type into a plurality of data blocks corresponding to the size of the memory chunks;

storing the data blocks into the corresponding newest memory chunks;

retrieving the data blocks from the corresponding memory chunks;

detecting data errors within the data blocks retrieved from the memory device;

if data errors are detected in a retrieved data blocks, retrieve the data block from a next oldest sector of the data type corresponding to the memory chunk in the newest memory chunk having an error; and

returning to a user data of the data type containing data blocks retrieved without an error.

2 . The method according to claim 1 , wherein the method further comprising:

if no data errors are detected in the retrieved data blocks, returning to a user data of the data type containing data blocks retrieved without an error.

3 . The method according to claim 1 , wherein the detecting an error is performed using a CRC checksum.

4 . The method according to claim 1 , wherein the detecting an error is detecting an incorrect erased memory block pattern.

5 . The method according to claim 1 , wherein the memory device corresponds to a flash media device.

6 . The method according to claim 1 , wherein the data blocks stored within the memory chunks comprises a data chunk header and data.

7 . The method according to claim 6 , wherein the data chunk header comprises a date field, a time field, a sequence number field, a data type flag field, and a CRC checksum field.

8 . A computer-readable storage medium containing encoded data corresponding to computer readable instructions for a programmable computer system for implementing a method of storing and retrieving data within a memory device, the method comprises:

allocating at least one memory sector for each data type to be stored within the memory device;

dividing each memory sector into a plurality of memory chunks;

erasing all memory locations within each memory chunks;

dividing data of the data type into a plurality of data blocks corresponding to the size of the memory chunks;

storing the data blocks into the corresponding newest memory chunks;

retrieving the data blocks from the corresponding memory chunks;

detecting data errors within the data blocks retrieved from the memory device;

if data errors are detected in a retrieved data blocks, retrieve the data block from a next oldest sector of the data type corresponding to the memory chunk in the newest memory chunk having an error; and

returning to a user data of the data type containing data blocks retrieved without an error.

9 . The computer-readable storage medium according to claim 8 , wherein the method further comprising:

if no data errors are detected in the retrieved data blocks, returning to a user data of the data type containing data blocks retrieved without an error.

10 . The computer-readable storage medium according to claim 8 , wherein the detecting an error is performed using a CRC checksum.

11 . The computer-readable storage medium according to claim 8 , wherein the detecting an error is detecting an incorrect erased memory block pattern.

12 . The computer-readable storage medium according to claim 8 , wherein the memory device corresponds to a flash media device.

13 . The computer-readable storage medium according to claim 8 , wherein the data blocks stored within the memory chunks comprises a data chunk header and data.

14 . The computer-readable storage medium according to claim 13 , wherein the data chunk header comprises a date field, a time field, a sequence number field, a data type flag field, and a CRC checksum field.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Nov 9, 2017
From: WELLS FARGO BANK, NATIONAL ASSOCIATION (SUCCESSOR TO GENERAL ELECTRIC CAPITAL CORPORATION)
To: UNISYS CORPORATION
Reel/Frame 044416/0358 →
SECURITY AGREEMENT Recorded Jun 27, 2011
From: UNISYS CORPORATION
To: GENERAL ELECTRIC CAPITAL CORPORATION, AS AGENT
Reel/Frame 026509/0001 →
RELEASE BY SECURED PARTY Recorded Sep 14, 2009
From: CITIBANK, N.A.
To: UNISYS CORPORATION; UNISYS HOLDING CORPORATION
Reel/Frame 023263/0631 →
RELEASE BY SECURED PARTY Recorded Jul 31, 2009
From: CITIBANK, N.A.
To: UNISYS CORPORATION; UNISYS HOLDING CORPORATION
Reel/Frame 023312/0044 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT SUPPLEMENT Recorded Feb 10, 2009
From: UNISYS CORPORATION
To: CITIBANK, N.A.
Reel/Frame 022237/0172 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 14, 2009
From: KRYKA, ANTON JOSEPH
To: UNISYS CORPORATION
Reel/Frame 022103/0936 →