フラッシュメモリ・コントローラ
通常、フラッシュ メモリ・コントローラには、ホスト側またはファイルシステムの論理ブロックアドレス (LBA) をフラッシュメモリの物理アドレスにマッピングする (論理から物理へのマッピング) ファイルシステムの下のレイヤである「フラッシュ変換レイヤ」(FTL: Flash Translation Layer) も含まれる。 LBAは、セクター番号と512バイトのマッピング単位を表す。ファイルシステムで認識および管理される論理サイズを表すすべてのLBAは、フラッシュの物理的な位置 (ブロックID、ページID、およびセクターID) にマップされる。ウェアレベリングおよびその他のフラッシュ管理アルゴリズム (不良ブロック管理、読み取り妨害管理、セーフフラッシュ処理など) の一部として、LBAの物理的な位置が動的に頻繁に変更される場合がある。FTLのマッピングユニットは、LBAがブロックベース、ページベース、さらにはサブページベースでマッピングされるように、異なる場合がある。使用パターンによっては、マッピングの粒度を細かくすることで、フラッシュの消耗を大幅に減らし、フラッシュ・ベースのストレージ・メディアの耐久性を最大限に高めることができる。
FTLメタデータは独自のフラッシュスペースを占有するため、電源が失われた場合に備えて保護する必要がある。さらに、フラッシュメモリの他の部分よりも先にマッピングテーブルが消耗し、ストレージデバイスの寿命が早まる可能性がある。これは通常、エンタープライズ デバイスではスペア用に特大のスペースを割り当てることで回避される。ただし、MRAMのようなより耐久性のある形式のストレージがFTLにも提案されている。