#author("2022-05-27T00:51:21+00:00","default:bokupi","bokupi") #author("2022-05-27T00:51:42+00:00","default:bokupi","bokupi") * NAND Flashについて [#n5c723ca] 備忘メモなので、自分が分かるようにしか書いていません。 且つ理解が間違っている可能性もあります。 ** Package [#zfeeb761] Package の中には複数のDieがある。 各Dieは並列に動作が可能である。 一方で伝送路となるチャネルは各Package毎に接続される。 つまり、1Packageの中に4 Dieがある場合、4 Dieに対して同時にデータ転送はできない。 あくまで各Dieへのデータ転送は同時に1つずつとなる。 並列で動けるのは、各DieがBuffer上に受け取った(Data-In)データをNANDに書き込む(Program)動作となる。 データ入出力のチャネルは1本だが並列に動けるものを、bank並列という概念で表すこともある。 Package間で各bank別のDieをグルーピングすることで、並列単位を管理できる。 ** Die [#mffa80ee] Dieの中にはブロックがたくさんある。 このブロックは特定のPlaneに所属している。 別々のPlaneであれば並列に動作が可能となる。 つまり先の話と合わせて、Dieの個数とPlane数の乗算が、並列動作可能なブロック数となる。 ** Block [#d0434209] ページという単位で構成されている。読み出しや書き込みは、基本的にこの単位で実施する。 消去はブロック単位となる。 ページはWL(Word Line)で決定される。 2D NANDであれば、ソースとドレイン(Bit線)に繋がったセルストリングとワード線の交点のセルにある浮遊ゲートの電荷の有無で、そのセルのbit情報が決定する。 セルの詳細イメージは、 https://ascii.jp/elem/000/000/909/909204/ を参照。 SLCはこのセルに0 or 1の2値を記憶するが、MLC/TLCは4値、8値を記録する。情報判定のための、電荷の量の閾値を増やすことで実現している。 TLCの場合、Lower/Medium/Upperと3bitの情報を保持できるが、LowerからUpperの方向にしか記録はできない。また、一度にまとめて記録する。 ** 3D NAND [#u0b8aae9] 3D NANDの基本的なイメージは、下記を参照。 https://www.tel.co.jp/museum/magazine/material/150327_report04_02/03.html 2DNANDを縦に向きを変えて立てて、それを横に並べていき、WLやBit線を共通化している。(cost削減) 上記ページの図で最上部と最下部は分かれているが、選択ゲートなのでWL(制御ゲート)ではない。 電極は柱状にしてWL板を貫く。この交点がセルになる。浮遊ゲートは用いていない。 WLが奥行きを持ったことで、垂直方向に束ねるセルストリングの塊が、奥行きごとに増える。 WL、ストリング、という単位で制御単位を管理できる。 ---- ** 履歴 [#w2e14fb4] - 2022/05/26 新規作成 bokupi