フラッシュメモリ

フラッシュメモリ（英: Flash Memory）は、浮遊ゲートMOSFETと呼ばれる半導体素子を利用し、浮遊ゲートに電子を蓄えることによってデータ記録を行う不揮発性メモリである。東芝の舛岡富士雄が発明した。データを消去する際に、ビット単位ではなくブロック単位でまとめて消去する方式を採ることにより、構造が簡素化し、価格が低下したため、不揮発性半導体メモリが爆発的に普及するきっかけとなった。消去を「ぱっと一括して」行う特徴から、写真のフラッシュをイメージしてフラッシュメモリと命名された。 フラッシュEEPROMやフラッシュROMとも呼ばれている。各ビットの記憶セルの基本的な構造としてはある種のEEPROMであるが、複数ビットから成るブロック内で「押し流す」ようなメカニズムと、読み書き可能な単位（ブロックサイズは数キロバイトから数十キロバイト）と速度が扱いやすい程度であることが特徴である。浮遊ゲートとシリコン基板間のゲート絶縁膜が極めて薄くなっている。 主要な種別はNAND型フラッシュメモリとNOR型フラッシュメモリの2種である。それぞれの基本的な特徴は次の通り。 ランダムアクセス読み出しの単位は1ブロック NOR型に比べて読み出しは低速 NOR型に比べて書き込みは高速 NOR型に比べて高集積化に有利 ランダムアクセス読み出しの単位はバイト NAND型に比べて読み出しは高速 NAND型に比べて書き込みは低速 NAND型に比べて高集積化に不利 書き込みがブロック単位であることはどちらも共通である。歴史的には、最初のフラッシュメモリとして発明されたのはNOR型で、続いてNAND型が発明された。いずれの発明も当時東芝の舛岡富士雄による。普及については主としてインテルによりNOR型が先行して市場に広がった。現在の大手メーカーは、NAND型がキオクシアとサンディスクとサムスン、NOR型がマイクロンとスパンションが挙げられる。 NOR型は、マイコン応用機器のシステムメモリに適しており、従来から使用されていたROMを置き換えた。ROMの交換で行われていたファームウェアの更新も、製品の筐体を開けることなく容易に行えるようになっている。 NAND型は、データストレージ用に適している。携帯電話、デジタルカメラ、デジタルオーディオプレーヤーなどの記憶媒体として広く普及しており、それによって価格も低下している。 NAND型とNOR型の違い NAND型フラッシュメモリ ページ数分のセルが直列に接続されている。 NOR型フラッシュメモリ 全てのセルがビット線とソース線に接続されている。 初期のフラッシュメモリは、1セルあたりのビット数が1ビットであったため、大容量化するとダイのサイズが大きくなり、歩留まりも低下した。そこで1セルあたりのビット数を増やす為、フローティングゲートに入れる電子の数を制御し、また読み出し時には「ゲートに入った電荷に依存してゲート下へ電流を流すための電圧が変わる（Vthが変わる）現象」を利用することで、1セルあたり4段階の電圧レベルを用いて2ビットの容量を実現した物が考案され、これをマルチレベルセル(MLC)と呼ぶ。従来の1セルあたり1ビットのものは、シングルレベルセル(SLC)と呼ぶようになった（レトロニム）。セル数が同じ場合、1セルあたり2ビットのMLCはSLCの2倍の容量になる。3ビットならばSLCの3倍になり、4ビットならばSLCの4倍になる。業界の慣例としてそれぞれトリプルレベルセル(TLC)、クアドラプルレベルセル(QLC)と呼ばれている（ただしTLCの電圧レベルは8段階なので、3段階ではない）。 SLCの優位な点は速度・書き換え可能回数の面である。これはVthの多段判定が不要などによる。MLC・TLCは書き換え回数を経るにつれ中間の2値の差が小さくなり、ここでの誤りがエラーの原因になる。MLC・TLCの優位な点は大容量化である。2022年現在では各社から大容量のSSDが低価格で販売されており、HDDからの完全な換装もその速度を考えれば十分値段に見合うものになっている。 SLC (Single Level Cell):1個のメモリセルに1ビットを記憶、セルトランジスタのしきい電圧は2段階（消去が1つ、書き込みが1つ） MLC (Multi Level Cell):1個のメモリセルに2ビットを記憶、セルトランジスタのしきい電圧は4段階（消去が1つ、書き込みが3つ） TLC (Triple Level Cell):1個のメモリセルに3ビットを記憶、セルトランジスタのしきい電圧は8段階（消去が1つ、書き込みが7つ） QLC (Quadruple Level Cell):1個のメモリセルに4ビットを記憶、セルトランジスタのしきい電圧は16段階（消去が1つ、書き込みが15） SLC型 SLC型は1つの記録素子に1ビットのデータを保持する。 蓄積電荷量の検出を "Hi/Low" の2値で判断するため、記録素子の劣化やノイズといった多少の蓄積電荷量のバラツキは問題とならない。 書き換え可能な上限回数が多い データ保持期間が比較的長い（5年から10年） MLC（多値NAND） MLC型、TLC型、QLC型といった多値NANDは、蓄積電荷量の検出を"Hi/Low"だけでなく、2つの間にいくつかの中間値を設定して、4値や8値、16値といった多値で判断する。記録素子の劣化やノイズによって少しでも蓄積電荷量に変動が生じると、保持していたデータは誤りとなる。その場合、フラッシュメモリ回路やそれを制御するコントローラ内の誤り検出訂正回路によって自動的に正しいデータに修正される（エラー訂正）。一般的に多値NANDの記録素子は、エラー訂正機能との併用が必須となり、SLC型と比べ多くの冗長エリアが必要となる。またこれらのエラー状況を監視する事により、「メモリーブロック不良」が検出され、代替メモリーブロックに切り替えられる。 例えばMLC型はSLC型と比べて書き換え可能な回数とデータ保持期間で劣るが、1セルあたりの記憶容量が倍増（4値の場合）する。同じセル数（体積）であれば大容量化が、同じ容量ならば低価格化（少セル化・小型化）が可能となり、大容量フラッシュメモリを安価に提供することが可能となる。長期間の使用や高信頼性を求めず、主に価格や小型化を重視するデジタルビデオカメラや個人用PCなどの民生用途に用いられる。 消去・書き込みのためにVppとして別電源が必要なもの(二電源系)と、単一電源で動作するもの(単電源系)がある。単電源系はチャージポンプなどの昇圧回路を内蔵している。最近では、低容量のROM等には3.3V単電源のもの、携帯電話のROM用途には1.8V単電源またはCore 1.8V・I/O 3.3Vのものが多く使われている。(書き込まれたデータの保持期間は有限である。) フラッシュメモリのセルの構造 書き込み時 ソースをGNDに接続して、ドレインとゲートに高電圧を印加する。 ホットエレクトロンはソース側から浮遊ゲートと基板間のゲート絶縁膜をすり抜けて浮遊ゲートに留まる。(トンネル効果) 消去時 ソースを開回路状態に、ドレインに高電圧を印加し、制御ゲートをGNDに接続する。 すると、浮遊ゲート内の電荷はドレイン側に引き抜かれる。 フラッシュメモリの制約の一つは、ランダムアクセスにおいて、ビット単位の書き換えができないことである。 別の制限は、フラッシュメモリが、（大抵PまたはEサイクルで書き込まれる）消去サイクルの – プログラムの有限の（回）数をもっている、すなわちその回数には限りがあることである。最も商業的に利用されるフラッシュ製品は、記憶の完全な状態の品質低下が始まる前までに、おおよそ100,000のP/Eサイクルに耐えるよう保証されている。 2012年12月に、マクロニックス （英語: Macronix）の台湾人の技術者らが彼らの2012年のIEEEの国際電子装置会議で発表する趣旨を開示した。その趣旨は、'自己治癒'（英: self-healing）処理を使ってNANDフラッシュ記憶の読み込み/書き込みサイクルを10,000回から10億回へどの様に改善するかを説明するものである。その処理は、"記憶素子の小さなグループを焼き鈍しできる基盤搭載型加熱器"をもったフラッシュチップを使うものである。少なくとも10億回の書き込みサイクルを与える、その組み込まれた熱的焼き鈍しは、通常の消去サイクルを、保存された充電を消すだけでなく、チップ内部の電子的に引き起こされたストレスを補修する、局部の高温度処理で置き換えるものだった。将来有望なマクロニックスのブレークスルーはモバイル産業に有ったかも知れない、しかしながら、商業的な製品についての計画は無かった。 NANDフラッシュメモリーを読み出すのに用いられる方法は、（プログラム由来の）同じメモリブロック内での近くのセルが何度も変更することを引き起こしうる。これは'読み出し混乱'（英: disturb）として知られている。 多くのフラッシュ集積回路はボールグリッドアレイ（英語: ball grid array）の梱包として出荷され、そしてそうでないものはしばしば他のBGAの梱包の次のPCBにおいてマウントされる。BGAの梱包として搭載される、後者のPCBアセンブリ（英語: PCB Assembly）は、もしそのボールがその専用のパッドに専ら接続させるものであれば、またはもしそのBGAがやり直し（英語版）を必要とするならば、しばしばX線を当てられる。これらのX線はフラッシュチップ内のプログラムされたビットらを消しうる（プログラムされた"0"のビットは消された"1"ビットとなる）。消されるビット（"1"のビット）はX線の影響を受けない。 幾つかの製造業者は現在X線防御SDとUSBメモリ装置を製造している。 フローティングゲートに充電した電子によって情報を記憶するという構造のために、書き込まれたデータの保持期間は有限である。メーカーの公称値では、書き換えによって劣化していない状態（書き換え限度の10%以下）で3年以下（TLC/QLC）・5年（MLC）・10年（SLC）、書き換え限度まで達した状態から1年となっている。これは環境の影響を受け、高温や放射線のあたる環境下においてはソフトエラー（英語版）が発生して保持期間は通常よりも短くなる（条件次第では使用不能もありうる）。 NOR型であれば一般に20年程度の保持期間を持ち、BIOSなどのファームウェアに使われている。ただし初期のフラッシュメモリ製品は既に20年以上が経過しており、保持期間が有限であることに変わりは無い。なお、これらの保持期間は最後に書き込んで以降の時間を示す。 フラッシュメモリの記憶素子は、動作原理上絶縁体となる酸化膜が貫通する電子によって劣化するため消去・書き込み可能回数が限られており、記憶素子単体の書き換え寿命は短命なものではQLCが数十回程度、TLCが数百回程度でそれぞれ限界、長くてもMLCの場合で数千回程度、SLCの場合で数万回程度である。NOR型よりもNAND型の方が劣化が激しい。この記憶素子をそのまま記憶装置として使う場合、書き込みが特定ブロックに偏るため、未使用の記憶素子がある一方で特定の記憶素子だけが劣化によって寿命が尽きるという状況が発生する。現状の製品では、書き込みの偏り対策としてコントローラを搭載して消去・書き込みが特定ブロックに集中しないようにウェアレベリングをしている。これにより書き換え寿命は論理的には伸びる。正確な計算方法はメーカーによって複数あり、例えば製品の最大容量と書き換え可能な領域等によって寿命は変わってくる。 書き込み可能回数を超えると、ストレージとして認識することができなくなったり、正常な記録ができなくなったり、正常に記録することができたとしても記録内容を維持することができず、記録した内容が壊れたり消えてしまったりする確率が上昇する。 Intelの研究によれば、63nmから72nmのプロセスルールで製造されたMLC(2bit/セル)方式NANDフラッシュメモリ8Gbitチップの場合、1万回の書き換えでエラーの起きる確率が1ビット当たり100万分の1から1000万分の1程度(即ち8Gbitならばエラーの起きるビットは平均1000から100ビット)である。 フラッシュメモリは半導体製品であり、電子回路の構成部品として回路基板上に実装された形で製品化されているものが大半である。電子回路であるがゆえにフラッシュメモリそのものの故障以外に、電子回路の他の部品(コントローラチップなどフラッシュメモリ以外の実装部品も含む)の故障の影響で使用不能に陥ることもある。 パソコン用デバイスとしてのフラッシュメモリは、当初ユーザーの操作で書き換え可能なBIOSを持ったマザーボードへの利用など表面に出ない用途だった。やがてUSBメモリなどによるフロッピーディスクの代替としての利用が始まり、書き換えに対する耐久性の向上(ハード的な技術向上やソフト的に書き換える部分を集中しないようにする工夫 - ウェアレベリング)、大容量化・低価格化・高速化が進み、徐々に大容量記憶装置としての役割を担うようになっていった。 2004年には、小容量ながらパソコンに内蔵してハードディスク (HDD) 同様ドライブとして使用できるソリッドステートドライブ（SSD）が登場。自作派のユーザーたちに浸透していった。2006年には、HDDを搭載しないでSSDを搭載するメーカー製小型ノートパソコンが登場した。2007年発売の『Windows Vista』からは、USBメモリをHDDのキャッシュメモリとして使用するWindows ReadyBoost機能、2009年発売の『Windows 7』からはSSDはHDDとは別の種類のデバイスとしてサポートされるようになっている。 ノートパソコンには機器の小型化および軽量化、省電力化、衝撃に対する強さが要求される。フラッシュメモリはハードディスクと比較してこれらの要素で優れており、さらに物理的な動作がないので静音化ができ、また高速にアクセスできるという利点も持つ。ただし低価格化が進んだとは言え、容量単価の点では依然としてハードディスクが有利であり、フラッシュメモリ搭載ノートパソコンはハードディスク搭載モデルと比較して割高な価格設定になりやすいが、2019年現在、その物理的に可動部が無いことによる耐衝撃性とHDDに比べ圧倒的な速度性能を考慮すれば、十分考慮できる価格帯まで落ち着いている。 過去の経緯により、一般的にNOR型はSRAMインターフェース (搭載bit数が増えるとアドレスバス幅が増えていく)、NAND型はDRAMインターフェース (アドレスを複数回に時間分解するマルチプレクスを行う)である。また、組み込みシステム等の分野では、I²C等のシリアルバスを採用した素子(『シリアルフラッシュメモリ』と称されることもある)も用いられている。 主としてNAND型で補助記憶装置としてパッケージされている商品の例を挙げる。これらのような商品の他に、Fusion-io（現在はサンディスク傘下）のioDriveのように、フラッシュメモリの性能を最大限に発揮するようデザインされた製品などもある。 フラッシュATAメモリーカード USBメモリ メモリーカード SDメモリーカード メモリースティック スマートメディア xDピクチャーカード コンパクトフラッシュ PlayStation Vita専用メモリーカード ソリッドステートドライブ 2005年あたりまで、フラッシュメモリはハードディスクや光ディスクの容量単価とは比べ物にならないほど高額であり、この点がユーザーにとって大きな欠点であった。しかし、2006年頃になると、フラッシュメモリの価格が大幅にかつ急速に下落してゆき、価格的な欠点は段々と和らいでいった。これは、フラッシュメモリ製造会社が一斉に増産したためであった。それでもなお、フラッシュメモリの容量単価はハードディスクや光ディスクを抜き去るほどには低下していない。 この急激な価格低下はフラッシュメモリ製造メーカーの経営に大きな打撃をもたらし、大手の東芝メモリ（現・キオクシア）も打撃を受けていると報じられた。また、フラッシュメモリ専業大手のスパンションは、価格下落と世界的な景気の低迷の影響もあって採算が悪化、会社更生法の適用を申請した。