CONTROLLER FOR OPTIMIZING THROUGHPUT OF READ OPERATIONS
First Claim
1. A method comprising:
- reading first data from a first flash memory die using an internal bus in response to a first read request;
pausing reading of the first data from the first flash memory die upon second data being ready to be read from a second flash memory die, where the second data is read from the second flash memory die in response to a second read request that has a higher priority than the first read request;
reading the second data from the second flash memory die using the internal bus; and
resuming reading of the first data from the first flash memory using the internal bus.
1 Assignment
0 Petitions
Accused Products
Abstract
A controller, techniques, systems, and devices for optimizing throughput of read operations in flash memory are disclosed. Various optimizations of throughput for read operations can be performed using a controller. In some implementations, read operations for a multi-die flash memory device or system can be optimized to perform a read request with a highest priority (e.g., an earliest received read request) as soon as the read request is ready. In some implementations, the controller can enable optimized reading from multiple flash memory dies by monitoring a read/busy state for each die and switching between dies when a higher priority read operation is ready to begin.
-
Citations
25 Claims
-
1. A method comprising:
-
reading first data from a first flash memory die using an internal bus in response to a first read request; pausing reading of the first data from the first flash memory die upon second data being ready to be read from a second flash memory die, where the second data is read from the second flash memory die in response to a second read request that has a higher priority than the first read request; reading the second data from the second flash memory die using the internal bus; and resuming reading of the first data from the first flash memory using the internal bus. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A system for optimizing memory read operations comprising:
-
a first flash memory die; a second flash memory die that is different than the second flash memory die; an external bus configured to receive read requests from a host for data stored in the first and second flash memory dies; and a controller coupled to the external bus and configured to pause first data being read from the first flash memory die in response to a first read request when second data is ready to be read from the second flash memory die in response to a second read request, where the second read request has a higher priority than the first read request. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A flash memory device comprising:
-
a first flash memory die; a second flash memory die that is different than the second flash memory die; an external bus configured to receive read requests from a host for data stored in the first and second flash memory dies, where the host is external to the flash memory device; and a controller coupled to the external bus and configured to pause first data being read from the first flash memory die in response to a first read request when second data is ready to be read from the second flash memory die in response to a second read request, where the second read request has a higher priority than the first read request. - View Dependent Claims (20, 21, 22, 23)
-
-
24. A method comprising:
-
receiving a first request to read first data from a first flash memory die; receiving a second request to read second data from a first flash memory die; receiving a third request to read third data from a second flash memory die, where the first request has higher priority than the second and third requests, and where the second request has higher priority than the third request; reading the first data from the first flash memory die using an internal bus; instructing, using the internal bus, the first flash memory die to prepare the second data to be read from the first flash memory die; reading the third data from second flash memory die using the internal bus; pausing reading of the third data from the second flash memory die upon the second data being ready to be read from the first flash memory die; reading the second data from the first flash memory die using the internal bus; and resuming reading of the third data from the second flash memory die. - View Dependent Claims (25)
-
Specification