Dave's Patent Content Factory
Applications
Terms
Paragraphs
Claims
Docket
Logout
About
New Paragraph
Paragraphs
Search Content
Para #
Notes
Any Field
Search
Clear
Actions
Matter
Content
Para #
Notes
Modified
View
Edit
Delete
US-8380915-A1
FIG. 6A is a schematic block diagram illustrating one embodiment of an array 600 of N number of storage elements 606 in accordance with the present invention. In the depicted embodiment, an ECC chunk 616 includes data 612 from several storage elements 606. In a further embodiment, ECC checkbits for the ECC chunk 616 are also stored across several storage elements 606.
269
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
The adaptive configuration module 512, in various embodiments, may dynamically adjust or adapt a data refresh interval based on an age (in absolute time, in powered-on time, in an amount of user data written, or the like) of the solid-state storage device 102, a read disturb threshold (i.e. a number of read operations before data is refreshed to mitigate effects of read disturb) based on wear of the solid-state storage device 102, an erase block retirement policy based on an age of the solid-state storage device 102, a garbage collection method for the solid-state storage device 102 based on host workload, garbage collection by zone of the solid-state storage device 102 based on levels of extent activity to minimize stir between active and inactive data, scrubbing intervals to increase scrubbing as the solid-state storage device 102 ages, or the like.
268
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
In solid-state storage media 110, an effect called read disturb can occur in unselected storage cells when adjacent storage cells are selected and read, causing charge to collect on the floating gates of the unselected storage cells making the unselected storage cells have an increased voltage that has not been deliberately applied. One approach to combating the effects of read disturb, is to move valid data out of the disturbed cells while the values in those cells are still determinable. The valid data may be re-written to a new physical location and the disturbed cells are erased to remove the effects of the read disturb. This approach is called a refresh and the time between refresh operations is referred to as a data refresh interval. A read disturb threshold is a number of reads of neighboring cells before remedial action is needed to mitigate the effects of read disturb. A data refresh interval at which storage regions are processed for storage capacity recovery and/or data refresh, that is appropriate for a solid-state storage device 102 near an end of life may be too aggressive for a solid-state storage device 102 at the beginning of use.
267
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
The adaptive configuration module 512, in one embodiment, bases adjustments or adaptations on a priori knowledge for the solid-state storage device 102, collected run-time statistics for the solid-state storage device 102, storage media characteristics for storage cells of the solid-state storage device 102, or the like. Unlike magnetic storage, media attributes for solid-state storage typically vary over a storage device's useful life. For example, storage regions of the solid-state storage media 110 may be periodically processed for storage capacity recovery or garbage collection to manage the impact of read disturbs and to ensure reliable data retention.
266
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
In one embodiment, the adaptive configuration module 512 dynamically adjusts and adapts one or more configuration parameters, thresholds, management techniques, or the like for the solid-state storage device 102 and/or for the solid-state storage media 110. In certain embodiments, the adaptive configuration module 512 may adjust or adapt as the solid-state storage device 102 ages, as a use case for the solid-state storage device 102 changes, or the like. Examples of use cases may include a cache use case, an archival use case, a server use case, an enterprise use case, a consumer use case, or the like.
265
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
Because, in the depicted embodiment, the ECC checkbits for the ECC chunk 616 are distributed across several storage elements 606a-n and channels 604a-n, when a data error occurs due to a read voltage shift in one or more of the storage elements 606a-n, the ECC module 412 may not be able to determine which storage elements 606 have an error that is correctable by adjusting the read voltage threshold. In one embodiment, the distribution module 414 determines which storage elements 606 or channels 604 have data with a read bias that is outside an expected distribution of the known bias, and the configuration module 352 adjusts the read voltage thresholds of the storage elements 606 determined by the distribution module 414.
274
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
In one embodiment, the configuration update module 510 updates a configuration parameter for a set of storage cells. The configuration update module 510, in certain embodiments, updates a configuration parameter in response to a change in one or more storage media characteristics corresponding to the configuration parameter. The characteristic update module 508 may notify the configuration update module 510 that the characteristic update module 508 has updated a storage media characteristic, the configuration update module 510 may periodically scan storage media characteristics for changes, the configuration update module 510 may check storage media characteristics for changes in response to a configuration trigger for a set of storage cells, or the like.
263
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
The characteristic update module 508, in one embodiment, updates storage media characteristics in cooperation with the media characteristic module 502, using the media characteristic module 502, or the like. In certain embodiments, the characteristic update module 508 may update storage media characteristics stored in a storage media characteristic repository, as described in greater detail below with regard to FIGS. 7A and 7B.
262
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
In one embodiment, a background scan of the solid-state storage media 110 may be an update event. For example, the characteristic update module 508, may perform a background scan of the solid-state storage media 110 and update records of storage media characteristics for sets of storage cells in response to scanning the sets of storage cells during the background scan. In another embodiment, an input/output request for the set of storage cells or for a neighboring set of storage cells, such as a read request, a write request, an erase request, or the like, is an update event and the characteristic update module 508 updates storage media characteristics for a set of storage cells in response to the input/output request. An update event for the characteristic update module 508, in a further embodiment, may include a startup operation and/or shutdown operation for the solid-state storage device 102. In certain embodiments, a garbage collection operation for a set of storage cells is an update event. For example, the characteristic update module 508 may update storage media characteristics for a set of storage cells as a garbage collection operation recovers storage capacity of the set of storage cells, or the like.
261
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
In one embodiment, the characteristic update module 508 updates one or more storage media characteristics for a set of storage cells in response to an update event for the set of storage cells. An update event is a trigger, in response to which, the characteristic update module 508 updates storage media characteristics. Certain storage media characteristics, such as a make, a model, a manufacturer, a product version, or the like of the solid-state storage device 102 and/or the solid-state storage media 110 may be substantially static, and the characteristic update module 508, in certain embodiments, may not update such storage media characteristics, may update such storage media characteristics less frequently, or the like. Other storage media characteristics, such as a program/erase cycle counts, read counts, retention times, temperatures, use cases, error statistics, and the like may be dynamic and change frequently.
260
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
In a further embodiment, a startup operation for the solid-state storage device 102, a regular shutdown operation for the solid-state storage device 102, or the like is a trigger for the storage cell configuration module 506 to configure one or more sets of storage cells. In certain embodiments, once the storage cell configuration module 506 configures a set of storage cells with a configuration parameter in response to a startup operation, the set of storage cells retain the configuration parameter until a shutdown operation and a subsequent startup operation, or the like. How a set of storage cells retain configuration parameters may vary depending on the type of configuration parameter, the architecture of the set of storage cells, and the like.
259
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
In one embodiment, a trigger for the storage cell configuration module 506 includes a change in a storage media characteristic for a set of storage cells, a change of a predefined magnitude in a storage media characteristic for the set of storage cells, or the like, and the storage cell configuration module 506 configures the set of storage cells in response to a change in the storage media characteristics. In another embodiment, a trigger for the storage cell configuration module 506 includes an input/output request for a set of storage cells, such as a read request, a write request, an erase request, or the like. For example, in certain embodiments, the storage cell configuration module 506 may configure a set of storage cells to use a read configuration parameter in response to a read request for the storage cells, may configure a set of storage cells to use a write configuration parameter in response to a write request for the storage cells, may configure a set of storage cells to use an erase configuration parameter in response to an erase request, or the like.
258
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
The storage cell configuration module 506, in one embodiment, configures a set of storage cells to use a determined configuration parameter in response to a trigger. The trigger, in certain embodiments, is selected based on an architecture of the solid-state storage device 102 and/or of the solid-state storage media 110. For example, certain solid-state storage device 102 and/or solid-state storage media 110 may retain a configuration parameter across multiple input/output operations, while another solid-state storage device 102 and/or solid-state storage media 110 may require a configuration parameter to be set with each input/output operation, or the like. The storage cell configuration module 506 may configure a set of storage cells once during initialization of the solid-state storage media 110, dynamically with each command issued to the set of storage cells, during operation of the solid-state storage media 110 in response to events or time intervals, in response to another trigger, or the like.
257
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
In one embodiment, the storage cell configuration module 506 configures a set of storage cells to use a configuration parameter that the configuration parameter module 504 determines for the set of storage cells. The storage cell configuration module 506 uses an interface of a set of storage cells to configure the set of storage cells. The interface may comprise a publicly known interface or a proprietary interface. The configuration module 506 may configure a set of storage cells by setting a data register, by sending a command over a command interface of a control bus for the solid-state storage media 110, by calling an API of a device driver of the solid-state storage device 102, by setting a control parameter for the solid-state storage controller 104, or otherwise configuring the set of storage cells. The storage cell configuration module 506 may use particular command instructions, a particular sequence of command instructions, and/or use particular parameters, register settings, or other differences from regular commands (general purpose commands) used to interface with the set of storage cells. The storage cell configuration module 506 may receive configuration parameters from the configuration parameter module 504, may retrieve configuration parameters from a configuration parameter repository, or the like.
256
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
FIG. 6C shows that the value “11” is associated with the lowest read voltage state (labeled L0, an “erase” state), the value “01” is associated with the next lowest read voltage state (labeled L1), the value “00” is associated with the next highest read voltage state (labeled L2), and the value “10” is associated with the highest read voltage state (labeled L3). In FIG. 6C, the lowest read voltage state L0 is depicted as a negative voltage. Values, magnitudes, sizes, and the like of read voltages may vary by manufacturer and type of solid-state storage cell, each of which are encompassed by the present invention. The configuration parameters 662, in the depicted embodiment, are read voltage thresholds 662 that separate states L0, L1, L2, and L3, as described above. The solid-state storage controller 104 interprets the four discrete levels of voltage stored in the multi-level storage cell as representing two binary bits one represented by a most significant bit (MSB) in the cell encoding and one represented by a least significant bit (LSB) in the cell encoding. As explained above, other programming and encoding models may be used. Also, certain solid-state storage media 110 may have more than four possible states, allowing more than two binary values to be stored in a single multi-level storage cell. The voltage levels L0, L1, L2, and L3 may or may not be contiguous; for example, in certain embodiments, the voltage levels are separated by band gaps known as guard band. For example, L0 and L1 may be separated by 0.3V.
283
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
Using each bit stored in multi-level storage cells to determine a read voltage threshold adjustment, in certain embodiments, can increase the accuracy of the read voltage threshold adjustment, but may increase the number of read operations or add complexity to the determination. In one embodiment, if the ECC decoder 322 detects a data error in an upper page of a grouping of multi-level storage cells, the data set read module 402 retrieves one or more lower pages for the grouping and the configuration module 352 adjusts a read voltage threshold for the grouping based on the lower pages.
291
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
In another embodiment, the direction module 406 determines a direction of deviation based at least partially on an encoding type used for storage cells of the solid-state storage media 110, a physical and/or electrical architecture of the storage cells of the storage media 110, or the like. For example, based on the encoding model of FIG. 6C, the direction module 406 may determine a direction of deviation based on a 2-bit MLC storage media type, based on whether the data set includes an upper page or a lower page, based on the depicted Gray code encoding type, based on a magnitude of the determined deviation, or the like. In a further embodiment, the direction module 406 may transform or combine LSBs and MSBs from separate or disparate addresses, such as different physical pages or the like, into a single data set or may otherwise coordinate LSBs and MSBs to determine a direction of deviation.
290
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
Similarly, in certain embodiments, the direction module 406 determines that a read voltage threshold 662 deviates toward a smaller read voltage in response to a difference between a read bias for the lower pages and a known bias for the lower pages indicating that storage cell values for the LSBs have transitioned from a binary zero to a binary one. For an LSB to transition from a binary zero to a binary one, a read voltage for a multi-level storage cell using the encoding model of FIG. 6C must drift from either an L3 or L2 state to an L1 or L0 state, indicating that one or more of the read voltage thresholds 662 should be decreased, to place the read voltage back in the original L3 or L2 state. In certain embodiments, a deviation across multiple states may be unlikely, and deviations detectable using LSBs may be between the L1 and L2 states, indicating a clear direction of deviation in either direction.
289
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
In one embodiment, the direction module 406 determines a direction of deviation for a grouping of multi-level storage cells based on a data set that includes data from one or more lower pages of the multi-level storage cells. Because the lower pages include the LSBs, in certain embodiments, the direction module 406 determines that a read voltage threshold 662 deviates toward a larger read voltage in response to a difference between a read bias for the lower pages and a known bias for the lower pages indicating that storage cell values for the LSBs have transitioned from a binary one to a binary zero. For an LSB to transition from a binary one to a binary zero, a read voltage for a multi-level storage cell using the encoding model of FIG. 6C must drift from either an L0 or L1 state to an L2 or L3 state, indicating that one or more of the read voltage thresholds 662 should be increased, to place the read voltage back in the original L0 or L1 state.
288
Added by DJM 3 2021
3/12/21, 12:00 AM
View
Edit
Delete
US-8380915-A1
For certain types of multi-level storage cells, the middle read voltage threshold 662b and the adjacent L1 and L2 states may be more sensitive to read disturb or other factors that can cause read voltages to drift. Further, as described above, in certain embodiments, the LSB and the MSB of a single multi-level storage cell may represent data stored in different physical pages. Using a single bit from each of a plurality of multi-level storage cell as a data set, in one embodiment, may reduce a number of read operations to retrieve the data set. In other embodiments, use of a single bit from each of a plurality of multi-level storage cells in the lower page simplifies a process of detecting deviation and direction of a read bias from a known bias for multi-level storage cells.
287
Added by DJM 3 2021
3/12/21, 12:00 AM
<< first
< previous
372
373
374
375
376
377
378
379
380
next >
last >>
Page 376 of 438, showing 20 record(s) out of 8,747 total