Patent ID: 8341378

Claim:
A data access method for a flash memory, comprising: receiving a write command, a write address, and target data from a host; determining a target block corresponding to the write address, wherein the target block is one of a plurality of blocks of the flash memory; determining whether a storage space with the write address in the target block has stored data; when the storage space of the target block has not stored data, writing the target data to the storage space of the target block; when the storage space of the target block has stored data, determining whether a file allocation table (FAT) block mapped to the target block exists in the flash memory; when the FAT block exists, writing the target data to the FAT block; when the FAT block does not exist, determining whether a child block mapped to the target block exists in the flash memory; when the child block exists, determining whether the write address follows a last address according to which data has been stored in the child block; and when the write address follows the last address, writing the target data to the child block.