フラッシュメモリの特徴
ハードディスクと比較して、フラッシュメモリには、下表に示すような特徴があります。
| 特徴 | フラッシュメモリ | ハードディスク |
|---|---|---|
| 不揮発性 | ○ | ○ |
| 高密度 | ○ | ○ |
| 低消費電力 | ○ | × |
| 書き換え可能性 | ○ | ○ |
| 完全ビット変更可能性 (※注) | × | ○ |
| 高速読み出し | ○ | × |
| 低コスト | ○ | × |
| メカレス | ○ | × |
| 動作環境非依存性 | ○ | × |
「完全ビット変更可能性 (Fully Bit-Alterable)」というのは、フラッシュメモリにおける書込みデータの1と0とが自由に反転できないことをいいます。
このため、例えばハードディスクでは、あるセクタのデータを更新する場合、目的のセクタを指定して更新のためのセクタサイズのデータをオーバライトしますが、フラッシュメモリではこのような方法でデータの更新をすることができないのです。
なぜできないのか具体的に見てみましょう。
ハードディスクでは、バイトデータを例えば11110000bから00001111bに変更するためには、単にデータをオーバライトするだけで済みます。
ここで注目したいのはビット単位での変更がどのようになっているかです。
この例では11110000bから00001111bに変更しているので、ビット単位に見ると0→1と1→0の変更が行われています。
11110000b
↓
00001111b
| ビット | フラッシュメモリ | ハードディスク |
|---|---|---|
| 0 → 1 | × | ○ |
| 1 → 0 | ○ | ○ |
このように0→1と1→0の変更が可能な場合を「完全ビット変更可能性」があると言います。
フラッシュメモリは「完全ビット変更可能性」がありません。
フラッシュメモリでは1→0の変更はできるのですが、0→1はできません。
つまり、0にしてしまったビットは、1に戻すことができないのです。
これは、物理的に、データの0と1とに対称性がないために起こります。
このために、データの更新において、単純にオーバライトすることができないのです。
では、どのようにしてフラッシュメモリ上でデータの更新を行えばよいのでしょうか。
次にその方法について説明します。
目次
- はじめに
- フラッシュメモリの特徴
- フラッシュメモリのデータ更新方法

