Flash memory controller: Difference between revisions

Content deleted Content added
Tags: Mobile edit Mobile web edit
Jschauma (talk | contribs)
m grammar nits
 
(3 intermediate revisions by 2 users not shown)
Line 1:
{{Short description|Integrated circuit that interfaces flash memory to a host like a PC}}
[[File:Lexar USB stick 8 GB - Silicon Motion SM3253L-0309.jpg|thumb|Lexar USB stick 8 GB - Silicon Motion SM3253L - USB 2.0 single-channel flash controller.]]
A '''flash memory controller''' (or '''flash controller''') manages data stored on [[flash memory]] (usually [[NAND flash]]) and communicates with a [[computer]] or [[electronic device]]. Flash memory controllers can be designed for operating in low [[duty-cycle]] environments like [[memory card]]s, or other similar [[Data storage device|media]] for use in [[Personal digital assistant|PDA]]s, [[mobile phone]]s, etc. [[USB flash drive]]s use flash memory controllers designed to communicate with [[personal computer]]s through the [[USB port]] at a low duty-cycle. Flash controllers can also be designed for higher duty-cycle environments like [[solid-state drive]]s (SSDSSDs) used as data storage for [[laptop]] computer systems up to [[mission-critical]] enterprise [[storage array]]s.<ref name="kingston">{{cite web|title=Flash Memory Guide|url=http://media.kingston.com/pdfs/FlashMemGuide.pdf|publisher=kingston.com|access-date=7 March 2013}}</ref>
 
==Initial setup==
Line 23:
As the FTL metadata takes up its own flash space, it needs protection in case of power loss. In addition, it is possible for the mapping table to wear out before other parts of the flash memory has, prematurely ending the life of a storage device. This is usually avoided in enterprise devices by allocating an oversized space for spares, although more durable forms of storage like [[Magnetoresistive RAM|MRAM]] has been proposed for FTL too.{{Citation needed|date=May 2023}}
 
The FTL may hashave three types: page mapping, block mapping, and hybrid mapping. Page mapping can hashave higher performance, but it has bigger FTL metadata size and higher cost, and itsis usually used on [[solid state drive]]s. Block mapping can hashave smaller metadata size and lower cost, but it has lower performance, and itsis usually used on [[USB flash drive]]s. On page mapping FTL implementations, the ratio of FTL metadata size and storage capacity is usually 1:1000, for example, a 1TB flash storage device may hashave 1GB of FTL metadata.
 
==Garbage collection==