CPC G06F 3/0656 (2013.01) [G06F 3/0611 (2013.01); G06F 3/0659 (2013.01); G06F 3/0679 (2013.01)] | 28 Claims |
1. A method, comprising:
receiving, by control circuitry while the control circuitry executes a storage device driver of a storage device, at least one read instruction of a stream of read instructions;
determining, by control circuitry, whether the at least one read instruction is part of a sequential stream of read instructions;
in response to the determination that the at least one read instruction is not part of a sequential stream of read instructions:
issuing, by control circuitry, an independent plane read operation to access memory of the storage device across at least two planes of the memory;
in response to the determination that the at least one read instruction is part of a sequential stream of read instructions:
determining, by control circuitry, whether the storage device has a cache read feature available;
in response to the determination that the storage device has a cache read feature available:
issuing, by control circuitry, a multi-plane sequential read command to access the memory across the at least two planes; and
in response to the determination that the storage device does not have a cache read feature available:
issuing, by control circuitry, an independent plane read operation to access memory of the storage device across the at least two planes;
predicting addresses across the at least two planes of the memory that are to be accessed based on an analysis of the stream of read instructions;
accessing data located at the predicted addresses; and
executing the at least one read instruction of the stream of read instructions using at least the accessed data.
|