Storage controller having improved overlay operation performance, storage device including the same, and method of operating storage device
AssigneeSamsung Electronics Co., Ltd.
InventorsYeonwoo Kim, Soojung Park
Life of this patent
Estimating the term…
Abstract
A storage controller, a storage device, and a method of operating the storage device are provided. The storage controller includes a working memory; a processor configured to, in response to an occurrence of an event, execute a first code block and a second code block related to the event, that are loaded into the working memory; a first mapping table that includes first mapping information between the first and second code blocks and the event; and a prefetching memory configured to provide the first code block and the second code block, prefetched based on the first mapping information, to the working memory in a predetermined order.
Claims20
A method of operating a storage device, the method comprising:
- generating trigger information related to an event, in response to an occurrence of the event among a plurality of events, the event corresponding to a plurality of code blocks to be executed in a predetermined order;
- searching, by using the trigger information and a mapping table that includes a plurality of pieces of mapping information in which the plurality of events are respectively mapped with address data of at least one code block in a non-volatile memory device, for first address data of a first code block and second address data of a second code block, based on first mapping information, included in the mapping table, in which the event is mapped with the first address data of the first code block in the non-volatile memory device and the second address data of the second code block in the non-volatile memory device, the first and second code blocks being related to the event;
- transmitting a read command to the non-volatile memory device based on the first address data and the second address data;
- prefetching the first code block and the second code block received from the non-volatile memory device into a prefetching memory;
- and
- loading the prefetched first code block and the prefetched second code block into a working memory based on the predetermined order.
A storage controller comprising:
- a working memory;
- a first mapping table that includes a plurality of pieces of mapping information in which a plurality of events are respectively mapped with address data of at least one code block in an external non-volatile memory device, the first mapping table including first mapping information in which an event, among the plurality of events, is mapped with first address data of a first code block in the external non-volatile memory device and second address data of a second code block in the external non-volatile memory device, the event corresponding to a plurality of code blocks to be executed in a predetermined order, and the first and second code blocks being related to the event;
- a prefetching memory configured to, in response to an occurrence of the event, provide the first code block and the second code block, prefetched from the external non-volatile memory device based on the first mapping information, to the working memory based on the predetermined order;
- and
- a processor configured to execute, in the predetermined order, the plurality of code blocks including the first code block and the second code block that are loaded into the working memory.
A storage device comprising:
- a non-volatile memory device configured to store a first code block and a second code block;
- and
- a storage controller including:
- a mapping table that includes a plurality of pieces of mapping information in which a plurality of events are respectively mapped with address data of at least one code block in the non-volatile memory device, the first mapping table including first mapping information in which a first event is mapped with first address data of the first code block in the non-volatile memory device and second address data of the second code block in the non-volatile memory device, the first event corresponding to a plurality of code blocks to be executed in a predetermined order;
- a prefetching memory into which the first and second code blocks received from the non-volatile memory device are prefetched;
- and
- a working memory into which the prefetched first and second code blocks are loaded in a based on the predetermined order.
Dependencies are inferred from the claim text.