フラッシュメモリーの構造とは
フラッシュメモリーは記憶素子であるセルにデータを格納する仕組みになっています。メモリーチップには膨大な下図のセルが集約され、さまざまなデータを格納可能な記憶媒体となっています。
セルとはデータを蓄積するための素子のことで、フラッシュメモリーにおけるデータ格納の基本単位でもあります。セルはウェハー上の配線が交差する場所に配置され、P型半導体の周囲にN型半導体を配置し、ソースとドレインの2つの電極を配置した構造になっています。P型半導体の上には極薄のトンネル酸化膜に包まれたフローティングゲートが配置され、その上には絶縁膜をまたいでコントロールゲートが置かれます。
データの格納というのはフローティングゲートに電子を蓄積することであり、その電子の量(電荷)によってビットを判定することでデータを識別します。フローティングゲートはP型半導体の上でその名の示すとおり「電子を貯めることのできるバケツが浮いた状態」となっており、トンネル酸化膜によって絶縁されていますから、フローティングゲートの電荷を保つことでデータは揮発することなく保持される仕組みです。
フラッシュメモリーではセルに蓄積された電荷をどのように判定するかによって記録できる情報量が異なります。電荷の量が多いか、少ないかだけで判定する方法をSLC(シングルレベルセル)と呼び、2値(= 21)からなるデータを格納することができます。電荷量を2ビット以上で判定する方法をMLC(マルチレベルセル)と呼び、1つのセルで格納できる情報を多く持たせることができるため、容量が向上します。
3ビットで判定し、8値(= 2の3乗)からなるデータを格納する方式をTLC(トリプルレベルセル)と呼ぶため、一般的にMLCは2ビットで判定し、4値(= 2の2乗)からなるデータを格納する方法のことを指します。現在の主流はMLCとTLCとなっています。
昨今では4ビットで判定し、16値(= 2の4乗)からなるデータを格納する方式であるQLC(クアッドレベルセル)の発表に至っています。このように多値化技術を応用することによってフラッシュメモリーのチップあたりの容量を向上させることができるのです。
データを正確に判定するためにはセルの電荷状態を正しく維持できなければなりません。つまり、電荷変動への対策を正確に行わなければならないということになります。SLCからMLC、TLC、さらにはQLCというように多値化が進むと、1つのセルで多くのデータを格納できるようになる一方でそのデータを保持するための電荷維持の制御がシビアになります。
さらに製造プロセスの微細化を進むことによってセルの数量が増加し、容量が増えるわけですが、これは同時に小さくなったセルの電荷維持がますます難しくなることを意味します。加えて4値、8値判定をすることによって格納される電子の個数に対する精度はより厳しさを増します。この制御の複雑さはレイテンシーにも影響してきます。
とはいえ、フラッシュメモリーが製品化できるということは基準を満たしているということであり、それを可能にするフラッシュメモリーベンダーの設計と製造ノウハウがそれを裏付けている(このためにフラッシュメモリーのサプライヤーは多大な投資を行っている)といえます。