Memory controller and memory system including the same
Provided herein may be a memory controller and a memory system including the same. The memory system may include a plurality of memory devices, each including a plurality of zone blocks, a buffer memory configured to store pieces of map data that are respectively allocated to a plurality of zones corresponding to logical address groups provided by a host and that indicate correspondence relationships between the plurality of zones and physical addresses of the plurality of zone blocks, and a memory controller configured to perform a data movement operation of storing data, which is stored in a zone block allocated to one of the plurality of zones, in an additional zone block based on information related to the plurality of zone blocks, and update a physical address of the zone block corresponding to the one zone to a physical address of the additional zone block.
1 . A memory system comprising:
a plurality of memory devices, each including a plurality of zone blocks;
a buffer memory configured to store pieces of map data that are respectively allocated to a plurality of zones corresponding to logical address groups provided by a host and that indicate correspondence relationships between the plurality of zones and physical addresses of the plurality of zone blocks; and
a memory controller configured to:
perform a data movement operation of moving data stored in a zone block allocated to one of the plurality of zones to an additional zone block based on information related to the plurality of zone blocks, the additional zone block being allocated to the one of the plurality of zones, and
update, after completion of the data movement operation on the zone block and the additional zone block, a physical address of the zone block corresponding to the one of the plurality of zones to a physical address of the additional zone block,
wherein the memory controller during the data movement operation is configured to, when a zone reset request is received from the host, suspend the data movement operation which is moving the data stored in the zone block to the additional block, update any of the data moved into the additional zone block to invalid data, and erase the zone block from which the data was moved.
2 . The memory system according to claim 1 , wherein the information related to the plurality of zone blocks includes erase count information, read count information, information about a number of fail bits, information about a bad block, or information about valid data, for each of the plurality of zone blocks.
3 . The memory system according to claim 2 , wherein the memory controller is configured to control the data movement operation based on a write pointer indicating a location of data stored last in the zone block.
4 . The memory system according to claim 3 , wherein the data stored in the zone block includes valid data and invalid data.
5 . The memory system according to claim 1 , wherein the memory controller is configured to, when a read request is received from the host while the data movement operation is being performed, read the data stored in the zone block.
6 . The memory system according to claim 1 , wherein the memory controller is configured to, when a read request is received from the host after the data movement operation is terminated, read data stored in the additional zone block.
7 . The memory system according to claim 1 , wherein the memory controller is configured to, when a write request is received from the host, store data corresponding to the write request in the additional zone block after the data movement operation is terminated.
8 . The memory system according to claim 1 , wherein the memory controller is configured to, when a zone offline request for changing the one zone to an unavailable state is received from the host, suspend the data movement operation and update data stored in the additional zone block to invalid data.
9 . The memory system according to claim 1 , wherein the memory controller is configured to suspend the data movement operation and update data stored in the additional zone block to invalid data in response to a sudden power-off.