| CPC G06F 12/0292 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0619 (2013.01); G06F 3/0631 (2013.01); G06F 3/064 (2013.01); G06F 3/0647 (2013.01); G06F 3/0652 (2013.01); G06F 3/0656 (2013.01); G06F 3/0679 (2013.01); G06F 11/1068 (2013.01); G06F 11/1451 (2013.01); G06F 12/023 (2013.01); G06F 2212/1016 (2013.01)] | 20 Claims |

|
1. A storage device comprising:
a nonvolatile memory device comprising a plurality of memory cells; and
a controller configured to perform a write operation on at least one write unit included in the plurality of memory cells, and to perform an erase operation on at least one erase unit included in the plurality of memory cells,
wherein the controller comprises an internal buffer including zone buffers, and is further configured to:
allocate a plurality of zones to a storage space of the nonvolatile memory device based on a request received from an external host device,
select two or more erase units from among a plurality of erase units included in the plurality of memory cells to be allocated to each zone of the plurality of zones based on a zone map table,
fixedly and sequentially manage logical addresses of data written in the plurality of zones,
based on reads for sequential logical addresses being requested by the external host device, read first data corresponding to the sequential logical addresses from the nonvolatile memory device, and output the first data to the external host device, and
based on the reads being requested:
determine next sequential addresses without receiving a next read request from the external host device,
determine at least one zone to which the next sequential addresses belong, and
based on at least one feature corresponding to the at least one zone, perform a prefetch operation by reading second data corresponding to the next sequential logical addresses from the nonvolatile memory device, and storing the second data in the internal buffer.
|