Method for changing data of a data block in a flash memory having a mapping area, a data area and an alternative area
First Claim
1. A method for managing a flash memory in which a mapping area, a data area and an alternative area are arranged sequentially therein, the method comprising:
- if changing of data of a data block recorded at an original address in the data area is requested, recording the data block having changed data in the alternative area and recording mapping information representing an address of the data block recorded in the alternative area in the mapping area; and
if changing of data of the data block recorded in the alternative area is requested, recording a data block having changed data at the original address in the data area and deleting the mapping information representing the address of the data block recorded in the alternative area from the mapping area,wherein, if the mapping information on the data block exists in the mapping area, data is read from the data block in the alternative area, and if the mapping information on the data block does not exist in the mapping area, data is read from the data block at the original address in the data area.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for flash memory management where, if changing of data of a data block recorded in a data area is requested, recording the data block having changed data in an alternative area and recording mapping information representing an address of the data block recorded in the alternative area in a mapping area. If changing of data of the data block recorded in the alternative area is requested, recording a data block having changed data in the data area and deleting the mapping information representing the address recorded in the alternative area from the mapping area. If the mapping information on the data block exists in the mapping area, data is read from the data block in the alternative area, and if the mapping information on the data block does not exist in the mapping area, data is read from the data block at the original address in the data area.
-
Citations
10 Claims
-
1. A method for managing a flash memory in which a mapping area, a data area and an alternative area are arranged sequentially therein, the method comprising:
-
if changing of data of a data block recorded at an original address in the data area is requested, recording the data block having changed data in the alternative area and recording mapping information representing an address of the data block recorded in the alternative area in the mapping area; and if changing of data of the data block recorded in the alternative area is requested, recording a data block having changed data at the original address in the data area and deleting the mapping information representing the address of the data block recorded in the alternative area from the mapping area, wherein, if the mapping information on the data block exists in the mapping area, data is read from the data block in the alternative area, and if the mapping information on the data block does not exist in the mapping area, data is read from the data block at the original address in the data area. - View Dependent Claims (2, 3, 4)
-
-
5. A method for writing data in a flash memory which comprises a mapping area, a data area and an alternative area arranged sequentially therein, the data area having an original address, in which changed data of a data block recorded in an alternative area are recorded, the alternative area, in which the changed data of the data block recorded at the original address in the data area are recorded, and the mapping area containing mapping information representing an address of the data block included in the alternative area, the method comprising:
-
receiving a data block write request in the flash memory; searching mapping information on the data block to be requested to be written in the mapping area; if there is no mapping information representing the address of the data block to be requested to be written, writing the data block to be requested to be written in the alternative area and recording the mapping information representing the address of the data block in the mapping area; and if there is mapping information representing the address of the data block to be requested to be written, writing the data block to be requested to be written in the original address of the data area and deleting the mapping information representing the address of the data block to be requested to be written from the mapping area, wherein, if the mapping information on the data block exists in the mapping area, data is read from the data block in the alternative area, and if the mapping information on the data block does not exist in the mapping area, data is read from the data block at the original address in the data area.
-
-
6. A method for reading data from a flash memory which comprises a mapping area, data area and an alternative area arranged sequentially therein, the data area having an original address, in which changed data of a data block recorded in an alternative area are recorded, the alternative area, in which the changed data of the data block recorded at the original address in the data area are recorded, and the mapping area containing mapping information representing an address of the data block included in the alternative area, the method comprising:
-
receiving a data block read request in the flash memory; searching mapping information on the data block to be requested to be read in the mapping area; if there is no mapping information representing the address of the data block to be requested to be read, reading the data block to be requested to be read from the original address of the data area; and if there is mapping information representing the address of the data block to be requested to be read, reading the data block to be requested to be read from the alternative area, wherein, if the mapping information on the data block exists in the mapping area, data is read from the data block in the alternative area, and if the mapping information on the data block does not exist in the mapping area, data is read from the data block at the original address in the data area.
-
-
7. A flash memory comprising:
-
a data area having an original address, in which changed data of a data block are recorded when changing of data of a data block recorded in an alternative area is requested; the alternative area in which the changed data of the data block are recorded when changing of data of the data block recorded in the original address of the data area is requested; and a mapping area in which a mapping table containing mapping information representing an address of the data block recorded in the alternative area is recorded and from which the mapping information representing the address of the data block is removed when the changed data of the data block are recorded in the original address of the data area, wherein the mapping area, the data area and the alternative area are arranged sequentially, and wherein, if the mapping information on the data block exists in the mapping area, data is read from the data block in the alternative area, and if the mapping information on the data block does not exist in the mapping area, data is read from the data block at the original address in the data area. - View Dependent Claims (8, 9, 10)
-
Specification