概要
NANDフラッシュは一般的なストレージメディアで小型フォーム・ファクタのモバイル機器からデータセンターまで様々なアプリケーションで利用されています。しかしながら、セルの微細化が進むにつれて、リードディスターブが信頼性問題の原因の1つとして挙げられるようになりました。リードディスターブは同じブロックにあるページに対してリードが繰り返し行われることで、リード対象セルの近隣セルのデジタル値が変化してしまう現象で、その結果、その近隣セルのデータが正しく読み出せなくなります。
リードディスターブの発生メカニズム
各NANDフラッシュのセルにはフローティング・ゲート・トランジスタがあり、ワード・ライン(word-line; WL)に接したコントロール・ゲートと同じビット・ライン(bit-line; BL)上の近隣のセルにソースとドレインをもっています。フローティング・ゲート・トランジスタはコントロール・ゲートの下に位置しており、トランジスタをオン状態にする閾値電圧はフローティング・ゲートに蓄えた電荷の量によって決まります。
特定のフローティング・ゲートに蓄えられた電荷が存在するかを確認するには、メモリデバイスは全てのワードをリードする必要があります。選択したワード・ライン(ライトグリーンの箇所)のセルをリードするには、同じブロックの隣接した選択していないワード・ライン(グリーンの箇所)に対して電圧をかけ、その間に選択されたセルをビット・ライン毎にリードし、デバイスのデジタル値(0または1)を測定します。隣接するトランジスタ・ゲートに電圧をかけると、電荷がフローティング・ゲートに引き寄せられ、リードのたびにセルの閾値電圧が少しずつ上昇するために「ディスターブ」が発生します。「未プログラム状態(デジタル値が1)」のセルの閾値電圧は徐々に増加し、最終的には「プログラム状態(デジタル値が0)」に移行するのに十分な値になります。この現象がリードディスターブと呼ばれています。この状態の変化は不可逆的なもので、変化してしまうと、ビット値はブロックをイレースしない限り元に戻りません。
トランセンドの対策
リードディスターブは過剰なリードを避けることで発生を抑制できます。トランセンドは3つの対策を提供しています。
-
アーリー・ムーブ: 潜在的なデータエラーを検出して訂正します。ブロックのエラービットが上限に近付くと、そのブロックのデータを別のブロックに移動し、元のブロックに残っているデータを消去します。(注記: 製品によってはこの機能はありません。)
- リード・リトライ: フラッシュメモリの機能でリード・リファレンス電圧を調整することでリードエラーを低減します。
-
ウェア・レベリング: プログラム処理におけるNANDフラッシュのセルの使用頻度を平均化します。その際に電荷の再注入が行われるため、適度に書き込みを行うアプリケーションにおいてはリードディスターブの低減が期待できます。