Block management method for a flash memory and flash memory controller and storage system using the same
First Claim
1. A block management method for managing a plurality of physical blocks of a flash memory chip, the block management method comprising:
- configuring a plurality of logical addresses;
mapping the logical addresses to a plurality of logical blocks, and mapping the logical blocks to the physical blocks;
configuring a logical block-physical block mapping table to record mapping relationships between the logical blocks and the physical blocks;
obtaining at least one deleting record from a host system, wherein the at least one deleting record has information about deleted logical addresses among the logical addresses and the host system marks data stored at the deleted logical addresses as invalid data in a file allocation table;
obtaining a deleted logical block among the logical blocks based on the at least one deleting record, wherein data stored at the deleted logical addresses of the deleted logical block is recognized as invalid data by the host system; and
marking each of the logical address mapped to the deleted logical block as a bad logical address in the file allocation table, wherein according to the file allocation table, the bad logical addresses are not used for writing data anymore by the host system.
2 Assignments
0 Petitions
Accused Products
Abstract
A block management method for managing a plurality of physical blocks of a flash memory chip is provided. The block management method includes configuring a plurality of logical addresses; mapping the logical addresses to a plurality of logical blocks; and mapping the logical blocks to the physical blocks. Additionally, the block management method also includes obtaining deleting records related to a plurality of deleted logical addresses from a host system, wherein data stored in the deleted logical addresses is recognized as invalid by the host system. And, the block management method further includes obtaining a deleted logical block, marking each of the logical addresses mapped to the deleted logical block as a bad logical address, and linking the physical block mapped to the deleted logical block to a spare area. Accordingly, the block management method can effectively prolong the lifespan of a flash memory chip.
3 Citations
18 Claims
-
1. A block management method for managing a plurality of physical blocks of a flash memory chip, the block management method comprising:
-
configuring a plurality of logical addresses; mapping the logical addresses to a plurality of logical blocks, and mapping the logical blocks to the physical blocks; configuring a logical block-physical block mapping table to record mapping relationships between the logical blocks and the physical blocks; obtaining at least one deleting record from a host system, wherein the at least one deleting record has information about deleted logical addresses among the logical addresses and the host system marks data stored at the deleted logical addresses as invalid data in a file allocation table; obtaining a deleted logical block among the logical blocks based on the at least one deleting record, wherein data stored at the deleted logical addresses of the deleted logical block is recognized as invalid data by the host system; and marking each of the logical address mapped to the deleted logical block as a bad logical address in the file allocation table, wherein according to the file allocation table, the bad logical addresses are not used for writing data anymore by the host system. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A flash memory controller for managing a plurality of physical blocks of a flash memory chip, the flash memory controller comprising:
-
a microprocessor unit; a flash memory interface unit, coupled to the microprocessor unit, and configured to connect to the flash memory chip; and a host interface unit, coupled to the microprocessor unit and configured to connect with a host system; and a memory management unit, coupled to the microprocessor unit and configured to configure a plurality of logical addresses, wherein the memory management unit maps the logical addresses to a plurality of logical blocks, maps the logical blocks to the physical blocks, and configures a logical block-physical block mapping table to record mapping relationships between the logical blocks and the physical blocks, wherein the memory management unit obtains at least one deleting record from the host system via the host interface unit, wherein the at least one deleting record has information about deleted logical addresses among the logical addresses and the host system marks data stored at the deleted logical addresses as invalid in a file allocation table, wherein the memory management unit obtains a deleted logical block among the logical blocks based on the at least one deleting record and marks each of the logical address mapped to the deleted logical block as a bad logical address in the file allocation table, wherein data stored at the deleted logical addresses of the deleted logical block is recognized as invalid by the host system and according to the file allocation table, the bad logical addresses are not used for writing data anymore by the host system. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A flash memory storage system, comprising:
-
a flash memory, having a plurality of physical blocks; a connector, configured to connect with a host system; a flash memory controller, coupled to the flash memory chip and the connector and configured to configure a plurality of logical addresses, wherein the flash memory controller maps the logical addresses to a plurality of logical blocks, maps the logical blocks to the physical blocks, and configures a logical block-physical block mapping table to record mapping relationships between the logical blocks and the physical blocks, wherein the flash memory controller obtains at least one deleting record from the host system via the connector, wherein the at least one deleting record has information about deleted logical addresses among the logical addresses and the host system marks data stored at the deleted logical addresses as invalid in a file allocation table, wherein the flash memory controller obtains a deleted logical block among the logical blocks based on the at least one deleting record and marks each of the logical address mapped to the deleted logical block as a bad logical address in the file allocation table, wherein data stored at the deleted logical addresses of the deleted logical block is recognized as invalid by the host system and according to the file allocation table, the bad logical addresses are not used for writing data any more by the host system. - View Dependent Claims (16, 17)
-
-
18. A block management method for managing a plurality of physical blocks of a flash memory chip, the block management method comprising:
-
configuring a plurality of logical addresses; logically grouping the physical blocks into at least a data area and a spare area, wherein the physical blocks in the spare area are configured to substitute the physical blocks in the data area when a host write command is executed, and each of the logical addresses is mapped to one of the physical blocks in the data area; marking at least one logical address mapped to the data area as at least one bad logical address in a file allocation table, and linking the physical block mapped to the at least one bad logical address to the spare area, wherein according to the file allocation table, the bad logical addresses are not used for writing data anymore by a host system; and obtaining at least one deleting record from the host system, wherein the at least one deleting record has information about at least one deleted logical address among the logical addresses and data stored at the at least one deleted logical address is recognized as invalid by the host system, wherein the at least one logical address marked as the at least one bad logical address is a logical address provided in the at least one deleting record.
-
Specification