(57)【要約】【課題】簡単に試験することができるメモリチップを提供する。【解決手段】メモリチップは、メモリセルアレイと、第１回路と、を備える。第１回路は、メモリセルアレイの対象領域に対してデータをパラメータを用いてリードする第１処理を実行する。第１回路は、第１処理の後、パラメータの設定値を変更してデータをリードする第２処理を実行する。【選択図】図１１
2020113351.tif 000002
【特許請求の範囲】
【請求項１】
メモリセルアレイと、
前記メモリセルアレイの対象領域に対してデータをパラメータを用いてリードする第１処理を実行し、前記第１処理の後、前記パラメータの設定値を変更して前記データをリードする第２処理を実行する第１回路と、
を備えるメモリチップ。
【請求項２】
外部装置に接続可能な第２回路をさらに備え、
前記第１回路は、前記外部装置からのコマンドに応じて前記第１処理を実行し、前記第１処理の後、前記外部装置からのさらなるコマンドを要することなく前記第２処理を実行する、
請求項１に記載のメモリチップ。
【請求項３】
前記第１処理は、前記データの期待値と前記リードされたデータとを比較する第３処理を含み、
前記第１回路は、前記第２処理を実行するか否かを前記第３処理の結果に基づいて判定する、
請求項１に記載のメモリチップ。
【請求項４】
外部装置に接続可能な第２回路をさらに備え、
前記メモリセルアレイは、複数の第１記憶領域を備え、
前記第１回路は、前記外部装置からのコマンドに応じて前記複数の第１記憶領域のうちの一の第１記憶領域を前記対象領域として設定して前記第１処理、または前記第１処理および前記第２処理を実行し、その後、前記外部装置からのさらなるコマンドを要することなく前記複数の第１記憶領域のうちの前記一の第１記憶領域と異なる他の第１記憶領域を前記対象領域として設定して前記第１処理、または前記第１処理および前記第２処理を実行する、
請求項３に記載のメモリチップ。
【請求項５】
第２記憶領域をさらに備え、
前記メモリセルアレイは、複数の第３記憶領域を備え、
前記複数の第３記憶領域のそれぞれは、前記複数の第１記憶領域を備え、
前記第１回路は、前記複数の第３記憶領域のうちの一である第４記憶領域が備える前記複数の第１記憶領域のそれぞれを順次、前記対象領域として設定し、前記第２処理に関する第１の数を計測し、前記第１の数に基づいて前記第４記憶領域に対する処理の合否を判定し、合否の判定の結果を前記第２記憶領域に格納する、
請求項４に記載のメモリチップ。
【請求項６】
前記第２処理は、前記第３処理と同じ処理である第４処理を含み、
前記第１回路は、前記第２処理の後、前記第４処理の結果に基づいて前記第２処理を再び実行するか否かを判定し、
前記第１の数は、前記第１記憶領域毎に計測される前記第２処理の実行回数であり、
前記第１回路は、前記第１の数としきい値との比較に基づいて合否を判定する、
請求項５に記載のメモリチップ。
【請求項７】
前記第１の数は、前記第４記憶領域が備える前記複数の第１記憶領域のうちの前記第２処理が実行された第１記憶領域の数であり、
前記第１回路は、前記第１の数としきい値との比較に基づいて合否を判定する、
請求項５に記載のメモリチップ。
【請求項８】
前記第１回路は、第２の数を記憶し、前記第４記憶領域に対する前記処理は不合格と判定した場合、前記第２の数に前記第１の数を加算せず、前記第４記憶領域に対する前記処理は合格と判定した場合、前記第２の数に前記第１の数を加算する、
請求項７に記載のメモリチップ。
【発明の詳細な説明】
【技術分野】
【０００１】
本実施形態は、メモリチップに関する。
【背景技術】
【０００２】
従来、ＮＡＮＤ型フラッシュメモリのメモリチップの出荷前には、当該メモリチップの試験が実施される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−１９６９９９号公報
【特許文献２】特開２００４−１４０３７号公報
【特許文献３】特開２０１２−６９１８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一つの実施形態は、簡単に試験することができるメモリチップを提供することを目的とする。
【課題を解決するための手段】
【０００５】
一つの実施形態によれば、メモリチップは、メモリセルアレイと、第１回路と、を備える。前記第１回路は、前記メモリセルアレイの対象領域に対してデータをパラメータを用いてリードする第１処理を実行する。そして、前記第１回路は、前記第１処理の後、前記パラメータの設定値を変更して前記データをリードする第２処理を実行する。
【図面の簡単な説明】
【０００６】
【図１】図１は、実施形態のメモリチップの使用の様態の一例を示す模式的な図である。
【図２】図２は、実施形態のメモリチップの構成の一例を示す模式的な図である。
【図３】図３は、実施形態のメモリセルアレイに含まれる１個のブロックＢＬＫの構成例を示す回路図である。
【図４】図４は、ＴＬＣが採用された場合の実施形態のメモリセルの取り得るしきい値電圧の一例を示す図である。
【図５】図５は、実施形態のセンスアンプの構成の一例を示す模式的な図である。
【図６】図６は、実施形態のメモリチップの試験の際の状況の一例を示す模式的な図である。
【図７】図７は、実施形態のレジスタＲＥＧに格納される各種のパラメータの一例を示す模式的な図である。
【図８】図８は、実施形態の複数のパラメータセットが格納されたユーザロムを示す模式的な図である。
【図９】図９は、実施形態のメモリセルアレイに格納されるデータを説明するための模式的な図である。
【図１０】図１０は、実施形態のメモリチップの試験の手順の一例を説明するためのシーケンス図である。
【図１１】図１１は、実施形態のメモリチップが実行する試験動作の一連の手順の一例を説明するフローチャートである。
【発明を実施するための形態】
【０００７】
以下に添付図面を参照して、実施形態にかかるメモリチップを詳細に説明する。なお、この実施形態により本発明が限定されるものではない。
【０００８】
（実施形態）
実施形態のメモリチップは、メモリコントローラとともにメモリシステムを構成することができる。
【０００９】
図１は、実施形態のメモリチップがメモリシステムに実装された様態の一例を示す模式的な図である。ここでは、メモリシステムの一例として、ＳＳＤ（Solid  State  Drive）を挙げて説明する。なお、実施形態のメモリシステムは、ＳＳＤ以外のメモリシステムにも実装され得る。
【００１０】
図１に示されるように、ＳＳＤ１００は、パーソナルコンピュータなどのホスト装置２００と接続され、ホスト装置２００の外部記憶装置として機能する。ＳＳＤ１００とホスト装置２００とを接続する通信インタフェースが準拠する規格としては、ＳＡＴＡ（Serial  Advanced  Technology  Attachment）、ＳＡＳ（Serial  Attached  SCSI）、ＰＣＩｅ（PCI  Express）など様々な規格が採用可能である。
【００１１】
ＳＳＤ１００は、ＮＡＮＤメモリ１と、ホスト装置２００とＮＡＮＤメモリ１との間のデータ転送を実行するメモリコントローラ２と、メモリコントローラ２が転送データを一時格納するための揮発性メモリであるＲＡＭ３と、を備えている。ホスト装置２００から送信されてきたデータは、メモリコントローラ２の制御の下、いったんＲＡＭ３に格納され、その後、ＲＡＭ３から読み出されてＮＡＮＤメモリ１に書き込まれる。
【００１２】
ＮＡＮＤメモリ１は、マルチチップパッケージ１０を複数（ここでは４つ）備える。４つのマルチチップパッケージ１０は、夫々異なるチャネル（Ｃｈ．０〜Ｃｈ．３）の接続配線でメモリコントローラ２に接続されている。そして、チャネル毎のマルチチップパッケージは互いに独立して制御される。即ち、４つのマルチチップパッケージ１０は、同時並行的に動作することが可能にメモリコントローラ２に接続されている。
【００１３】
なお、夫々のチャネルは、Ｉ／Ｏ信号線、制御信号線、およびＲ／Ｂ信号線を含む。以降、「信号線」を「信号」と略記することがある。制御信号は、チップイネーブル信号（ＣＥ）、コマンドラッチイネーブル信号（ＣＬＥ）、アドレスラッチイネーブル信号（ＡＬＥ）、ライトイネーブル信号（ＷＥ）、リードイネーブル信号（ＲＥ）、ライトプロテクト信号（ＷＰ）、データストローブ信号（ＤＱＳ）を含む。
【００１４】
各マルチチップパッケージ１０は、複数（ここでは４つ）のメモリチップ１１ａ〜１１ｄがモールド樹脂で封止された構成を有している。そして、１つのマルチチップパッケージ１０に含まれる４つのメモリチップ１１ａ〜１１ｄには、Ｉ／Ｏ信号線、制御信号線、およびＲ／Ｂ信号線が共通に接続されている。なお、チャネルを構成する配線群のうちの一部または全部は、必ずしも４つのメモリチップ１１ａ〜１１ｄに共通に接続されていなくてもよい。
【００１５】
ここで、各マルチチップパッケージ１０に備えられるメモリチップ１１ａ〜１１ｄのそれぞれは、実施形態のメモリチップの一例である。メモリチップ１１ａ〜１１ｄのそれぞれを総称して、メモリチップ１１と表記することがある。
【００１６】
メモリコントローラ２は、ホストインタフェースコントローラ（ホストＩ／Ｆコントローラ）２１と、ＲＡＭコントローラ２２と、ＮＡＮＤコントローラ２３と、ＭＰＵ２４と、ＥＣＣ（Error  Check  and  Correct）回路２５と、を備える。ホストＩ／Ｆコントローラ２１は、ホスト装置２００との間の通信インタフェースの制御およびホスト装置２００とＲＡＭ３との間のデータ転送の制御を実行する。ＲＡＭコントローラ２２は、ＲＡＭ３に対するデータのリード／ライトを制御する。ＥＣＣ回路２５は、メモリチップ１１から読み出されたデータに含まれる誤り、つまりフェイルビットの訂正を実行することができる。
【００１７】
ＭＰＵ２４は、ファームウェアなどのコンピュータプログラムに基づいてメモリコントローラ２全体の制御を実行する。ＭＰＵ２４は、例えば、論理アドレスと物理アドレスとの対応関係の管理、ガベージコレクション、リフレッシュ、ウェアレベリング、リードレベルの設定値の変更、などを実行することができる。なお、ＭＰＵ２４が実行する動作のうちの一部または全部は、コンピュータプログラムを要しないハードウェア回路によって実現されてもよい。リードレベルについては後述する。
【００１８】
ＮＡＮＤコントローラ２３は、ＮＡＮＤメモリ１とＲＡＭ３との間のデータ転送の制御を実行する。ＮＡＮＤコントローラ２３は、ＭＰＵ２４からの読み出し指示／書き込み指示／消去指示に基づいて、所望のチャネルのマルチチップパッケージ１０にＩ／Ｏ信号と制御信号とを送信する。当該チャネルのマルチチップパッケージ１０に含まれるメモリチップ１１ａ〜１１ｄは、受信した信号の内容に対応した動作を実行することができる。
【００１９】
なお、メモリチップ１１の実装の様態は、上記の例だけに限定されない。メモリチップ１１は、必ずしもマルチチップパッケージ１０に封止されていなくてもよい。
【００２０】
図２は、実施形態のメモリチップ１１の構成の一例を示す模式的な図である。図示されるように、メモリチップ１１は、Ｉ／Ｏ信号処理回路１１１、制御信号処理回路１１２、チップ制御回路１１３、コマンドレジスタ１１４、アドレスレジスタ１１５、ステータスレジスタ１１６、メモリセルアレイ１１７、カラムデコーダ１１８、センスアンプ１１９、ロウデコーダ１２０、およびＲＹ／ＢＹ生成回路１２１を備える。センスアンプ１１９は、データレジスタ１２２を備える。
【００２１】
なお、チップ制御回路１１３、センスアンプ１１９、およびロウデコーダ１２０は、第１回路の一例である。また、Ｉ／Ｏ信号処理回路１１１、制御信号処理回路１１２、ＲＹ／ＢＹ生成回路１２１は、第２回路の一例である。
【００２２】
制御信号処理回路１１２は、各種制御信号の入力を受け付け、受け付けた制御信号に基づいて、前記Ｉ／Ｏ信号処理回路１１１が受け付けたＩ／Ｏ信号の格納先のレジスタの振り分けを実行する。また、制御信号処理回路１１２は、受け付けた制御信号をチップ制御回路１１３に転送する。
【００２３】
チップ制御回路１１３は、制御信号処理回路１１２を介して受信する各種制御信号に基づいて状態（ステート）遷移する状態遷移回路（ステートマシン）である。チップ制御回路１１３は、各種制御信号に基づいてメモリチップ１１全体の動作を制御する。チップ制御回路１１３は、動作の制御の状態や動作の制御の結果などを示すステータス情報を生成して、ステータス情報をステータスレジスタ１１６に格納することができる。チップ制御回路１１３は、ステータスレジスタ１１６に格納されたステータス情報を、メモリコントローラ２などからのステータスリードコマンドに応じてＩ／Ｏ信号処理回路１１１を介して出力することができる。
【００２４】
チップ制御回路１１３は、レジスタＲＥＧを備える。レジスタＲＥＧに格納される情報については後述する。
【００２５】
ＲＹ／ＢＹ生成回路１２１は、チップ制御回路１１３による制御の下でＲＹ／ＢＹ信号線の状態をレディー状態（Ｒ）とビジー状態（Ｂ）との間で遷移させる。
【００２６】
Ｉ／Ｏ信号処理回路１１１は、Ｉ／Ｏ信号線を介してメモリコントローラ２との間でＩ／Ｏ信号を送受信するためのバッファ回路である。Ｉ／Ｏ信号処理回路１１１がＩ／Ｏ信号として取り込んだコマンド、アドレス、データ（ライトデータ）は、夫々、アドレスレジスタ１１５、コマンドレジスタ１１４、データレジスタ１２２に振り分けられて格納される。
【００２７】
アドレスレジスタ１１５に格納されたアドレスは、ロウアドレスおよびカラムアドレスを含む。ロウアドレスはロウデコーダ１２０、カラムアドレスはカラムデコーダ１１８に夫々読み出される。
【００２８】
メモリセルアレイ１１７は、ＮＡＮＤ型のメモリセルが配列されて構成されており、ホスト装置２００から受信したライトデータが格納される。具体的には、メモリセルアレイ１１７は、複数のブロックＢＬＫを備える。１つのブロックＢＬＫに格納された全てのデータは、一括して消去（イレース）される。
【００２９】
図３は、実施形態のメモリセルアレイ１１７に含まれる１個のブロックＢＬＫの構成例を示す回路図である。図示するように、ブロックＢＬＫは、Ｘ方向に沿って順に配列された（ｐ＋１）個のＮＡＮＤストリングを備えている（ｐ≧０）。（ｐ＋１）個のＮＡＮＤストリングにそれぞれ含まれる選択トランジスタＳＴ１は、ドレインがビット線ＢＬ０〜ＢＬｐに接続され、ゲートが選択ゲート線ＳＧＤに共通接続されている。また、選択トランジスタＳＴ２は、ソースがソース線ＳＬに共通接続され、ゲートが選択ゲート線ＳＧＳに共通接続されている。
【００３０】
メモリセルトランジスタＭＴは、制御ゲート電極と電荷蓄積層とを備えている。メモリセルトランジスタＭＴは、一例では、電荷蓄積層に絶縁膜を用いたＭＯＮＯＳ型のトランジスタである。電荷蓄積層に蓄えられる電子の数に応じてメモリセルトランジスタＭＴのしきい値電圧が変化する。
【００３１】
各ＮＡＮＤストリングにおいて、（ｑ＋１）個のメモリセルトランジスタＭＴは、選択トランジスタＳＴ１のソースと選択トランジスタＳＴ２のドレインとの間に、それぞれの電流経路が直列接続されるように配置されている（ｑ≧０）。そして、最もドレイン側に位置するメモリセルトランジスタＭＴから順に、制御ゲート電極がワード線ＷＬ０〜ＷＬｑにそれぞれ接続されている。従って、ワード線ＷＬ０に接続されたメモリセルトランジスタＭＴのドレインは選択トランジスタＳＴ１のソースに接続され、ワード線ＷＬｑに接続されたメモリセルトランジスタＭＴのソースは選択トランジスタＳＴ２のドレインに接続されている。
【００３２】
ワード線ＷＬ０〜ＷＬｑは、ブロック内の全てのＮＡＮＤストリング間で、メモリセルトランジスタＭＴの制御ゲート電極を共通に接続している。つまり、ブロック内において同一行にあるメモリセルトランジスタＭＴの制御ゲート電極は、同一のワード線ＷＬに接続される。同一のワード線ＷＬに接続される（ｐ＋１）個のメモリセルトランジスタＭＴに対し、一括してデータのプログラムおよびデータのリードを行うことが可能である。各メモリセルＭＴに１ビットの値を保持可能に構成される場合には、同一のワード線ＷＬに接続される（ｐ＋１）個のメモリセルトランジスタＭＴは１ページとして取り扱われ、このページごとにデータのプログラムおよびデータのリードが行われる。
【００３３】
なお、メモリセルアレイ１１７に対してデータのプログラムを実行する動作を、プログラム処理と表記する。メモリセルアレイ１１７に対してデータのリードを実行する動作を、リード処理と表記する。プログラム処理およびリード処理は、ワード線ＷＬ単位で実行され得る。
【００３４】
実施形態では、各メモリセルトランジスタＭＴは、複数ビットの値を格納可能することができる。各メモリセルトランジスタＭＴが複数ビットの値を格納する方式の一例として、各メモリセルトランジスタＭＴが３ビットの値を格納する方式について説明する。各メモリセルＭＴが３ビットの値を格納する方式は、ＴＬＣ（Tripple  Level  Cell）として知られている。なお、以降では、メモリセルトランジスタＭＴを、単に、メモリセルと表記する。
【００３５】
図４は、ＴＬＣが採用された場合の実施形態のメモリセルの取り得るしきい値電圧の一例を示す模式的な図である。縦軸は、メモリセルの数を示しており、横軸は、しきい値電圧を示している。
【００３６】
ＴＬＣの場合、しきい値電圧の取り得る範囲は、８つの範囲に区分される。この８つの区分を、しきい値電圧が低いほうから順に、ステートＥｒ、ステートＡ、ステートＢ、ステートＣ、ステートＤ、ステートＥ、ステートＦ、およびステートＧと呼ぶことにする。各メモリセルのしきい値電圧は、ステートＥｒ、ステートＡ、ステートＢ、ステートＣ、ステートＤ、ステートＥ、ステートＦ、およびステートＧ、の何れかに属するように、制御される。その結果、しきい値電圧に対するメモリセルの数をプロットした場合、メモリセルの数は、それぞれ異なるステートに属する８つのローブを形成する。
【００３７】
８つのステートは、３ビットのデータに対応する。図４の例によれば、ステートＥｒは“１１１”に対応し、ステートＡは“１１０”に対応し、ステートＢは“１００”に対応し、ステートＣは“０００”に対応し、ステートＤは“０１０”に対応し、ステートＥは“０１１”に対応し、ステートＦは“００１”に対応し、ステートＧは“１０１”に対応する。このように、各メモリセルは、そのしきい値電圧が属するステートに応じたデータを保持することができる。なお、図４に示す対応関係は、データコーディングの一例である。データコーディングはこの例に限定されない。
【００３８】
１つのメモリセルに保持される３ビットのデータのうち、ＬＳＢ（Least  Significant  Bit）をロアービット、ＭＳＢ（Most  Significant  Bit）をアッパービット、ＬＳＢとＭＳＢとの間のビットをミドルビット、と表記する。同一のワード線ＷＬに属する全てのメモリセルのロアービットの集合を、ロアーページと表記する。同一のワード線ＷＬに属する全てのメモリセルのミドルビットの集合を、ミドルページと表記する。同一のワード線ＷＬに属する全てのメモリセルのアッパービットの集合を、アッパーページと表記する。ロアーページ、ミドルページ、およびアッパーページを、ページの種類と表記する。
【００３９】
隣接する２つのステートの境界には、その境界に対応したリードレベルが設定される。図４の例では、ステートＥｒとステートＡとの境界に対応したリードレベルＶｒａと、ステートＡとステートＢとの境界に対応したリードレベルＶｒｂと、ステートＢとステートＣとの境界に対応したリードレベルＶｒｃと、ステートＣとステートＤとの境界に対応したリードレベルＶｒｄと、ステートＤとステートＥとの境界に対応したリードレベルＶｒｅと、ステートＥとステートＦとの境界に対応したリードレベルＶｒｆと、ステートＦとステートＧとの境界に対応したリードレベルＶｒｇと、が設定されている。
【００４０】
リード処理においては、メモリセルのしきい値電圧と、リードレベルと、の比較によって、当該メモリセルに格納されたデータが判定される。リード処理のより詳しい説明は後述する。
【００４１】
図２に説明を戻す。ロウデコーダ１２０、カラムデコーダ１１８、センスアンプ１１９は、チップ制御回路１１３による制御に基づいて、メモリセルアレイ１１７に対するアクセスを実行する。
【００４２】
具体的には、プログラム処理においては、ロウデコーダ１２０は、ロウアドレスに対応したワード線を選択して、選択したワード線を活性化する。カラムデコーダ１１８は、カラムアドレスに対応したビット線を選択して活性化する。センスアンプ１１９は、カラムデコーダ１１８により選択されたビット線に電圧を印加して、ロウデコーダ１２０が選択したワード線とカラムデコーダ１１８が選択したビット線との交点に位置する、対象のメモリセルに、データレジスタ１２２に格納されているデータを書き込む。
【００４３】
また、リード処理においては、ロウデコーダ１２０は、ロウアドレスに対応したワード線にページの種類に対応した複数のリードレベルを順次、印加する。センスアンプ１１９は、対象のメモリセルが導通状態であるか非導通状態であるかを、ロウデコーダ１２０がワード線に印加したリードレベル毎にセンスし、リードレベル毎のセンス結果に基づいて対象のメモリセルに格納されたデータを判定し、判定によって得られたデータをデータレジスタ１２２に格納する。データレジスタ１２２に格納されたデータは、データ線を通してＩ／Ｏ信号処理回路１１１に送られ、Ｉ／Ｏ信号処理回路１１１からメモリコントローラ２へ転送される。
【００４４】
図５は、実施形態のセンスアンプ１１９の構成の一例を示す模式的な図である。本図に示されるように、センスアンプ１１９は、データレジスタ１２２と、演算器１２３と、を備える。データレジスタ１２２は、ＳＤＬ、ＡＤＬ、ＢＤＬ、ＣＤＬ、ＤＤＬ、およびＸＤＬと名付けられた６つのラッチ回路群を備える。
【００４５】
６つのラッチ回路群のそれぞれは、例えば、ビット線ＢＬ毎に設けられたラッチ回路の群である。つまり、６つのラッチ回路群のそれぞれは、１ページ分のデータを格納可能である。演算器１２３は、複数のラッチ回路群に格納されたデータに対し、同一のビット線ＢＬに対応したラッチ回路間でのビット演算を実行することができる。
【００４６】
例えばリード処理においては、センスアンプ１１９は、リードレベルが印加される毎に、対象のメモリセルが導通状態であるか非導通状態であるかをセンスして、リードレベルが印加される毎に得られたセンスの結果を６つのラッチ回路群のうちの例えばＳＤＬに順次、格納する。演算器１２３は、ＡＤＬ、ＢＤＬ、ＣＤＬ、ＤＤＬ、およびＸＤＬを中間データの格納領域として利用しながら、ＳＤＬに順次格納されるリードレベル毎のセンスの結果に対してビット演算を行う。そして、演算器１２３は、最終的な演算結果、つまりしきい値電圧が属するステートに対応したデータを生成してＸＤＬに格納する。ＸＤＬに格納されたデータは、データ線を通してＩ／Ｏ信号処理回路１１１に送られる。
【００４７】
ビット演算の方法は、特定の方法に限定されない。以下に、ロアーページに格納されたデータを判定する場合におけるビット演算の一例を簡単に説明する。なお、この説明においては、センス結果に関し、「０」は導通状態を意味し、「１」は非導通状態を意味することとする。
【００４８】
図４に示されるデータコーディングによれば、リードレベルＶｒａからリードレベルＶｒｅまでの範囲に含まれる４つのステートでは、ロアービットのデータは「０」に該当し、当該範囲に含まれない４つのステートでは、ロアービットのデータは「１」に該当する。よって、ロアーページのデータを読み出す場合には、リードレベルＶｒａおよびリードレベルＶｒｅが使用される。
【００４９】
センスアンプ１１９は、まず、リードレベルＶｒａが印加された場合のセンス結果ＡＲをＳＤＬに格納し、その後、時間をおいて、リードレベルＶｒｅが印加された場合のセンス結果ＥＲをＳＤＬに格納する。演算器１２３は、まず、ＳＤＬに格納されたセンス結果ＡＲに対して否定（ＮＯＴ）演算を行い、否定演算によって反転されたセンス結果ＡＲを別のラッチ回路群（例えばＤＤＬ）に格納する。続いて、センス結果ＥＲがＳＤＬに格納されると、演算器１２３は、ＤＤＬに格納されている反転されたセンス結果ＡＲと、ＳＤＬに格納されたセンス結果ＥＲの論理和（ＯＲ）演算を行い、当該論理和演算の結果をＸＤＬに格納する。
【００５０】
上記の一連のビット演算によって、しきい値電圧がリードレベルＶｒａからリードレベルＶｒｅまでの範囲に含まれるメモリセルから「０」が読み出され、しきい値電圧がリードレベルＶｒａからリードレベルＶｒｅまでの範囲に含まれないメモリセルから「１」が読み出される。
【００５１】
なお、ビット演算の方法は、以上に述べた方法に限定されない。任意のビット演算によってロアーページに格納されたデータを判定することができる。
【００５２】
ミドルページおよびロアーページに格納されたデータを判定する場合においても、ページの種類に対応した所定のビット演算が実行される。ミドルページおよびロアーページに格納されたデータを判定する場合のビット演算の方法については説明を省略する。
【００５３】
なお、センスアンプ１１９に含まれるラッチ回路群の数は、６つに限定されない。センスアンプ１１９に含まれるラッチ回路群の数は、ビット演算の方法に応じて種々に変更され得る。また、ビット演算に際しての各ラッチ回路群の使用方法は、上記に説明した方法だけに限定されない。センスアンプ１１９は、具備するラッチ回路群を、任意に使用することが可能である。
【００５４】
ところで、メモリセルのしきい値電圧は、種々の要因によって変化し得る。よって、センスアンプ１１９によって判定されたデータは、プログラム処理が実行された時点でのデータと異なる可能性がある。プログラム処理が実行された時点のデータとリード処理によって読み出されたデータとで異なるビットを、フェイルビットと呼ぶ。つまり、メモリセルアレイ１１７からリードされたデータは、フェイルビットを含む場合がある。
【００５５】
メモリコントローラ２は、メモリチップ１１にデータの読み出しを指示して、当該指示の応答としてデータを受信した場合には、ＥＣＣ回路２５を用いて、当該データに含まれるフェイルビットの検出と訂正とを実行する。しかしながら、データに含まれるフェイルビットの数がＥＣＣ回路２５によって訂正可能な数を超える場合、フェイルビットの訂正に失敗する。その場合には、メモリコントローラ２は、リードレベルの設定値を変更して、変更された設定値を用いたリード処理をメモリチップ１１に指示することができる。
【００５６】
変更された設定値を用いて実行されるリード処理を、特に、リトライリード（Retry  Read:RR）処理と表記する場合がある。メモリコントローラ２は、例えば、ＥＣＣ回路２５がフェイルビットの訂正に成功するまで、リードレベルの設定値を異ならせながらメモリチップ１１にリトライリード処理を繰り返し実行させることができる。
【００５７】
上記のように構成されたメモリチップ１１は、出荷前には、品質評価の試験が実施される。
【００５８】
本実施形態と比較される技術によれば、リードレベルの設定値の変更が可能なメモリチップを試験したい場合、試験装置は、メモリチップから読み出されたデータに含まれるフェイルビットを検出したり、フェイルビットの検出結果に応じてリードレベルの変更の指示をメモリチップに送信したりすることが必要になる。つまり、メモリチップからの応答を検証できる高価な試験装置が必要となる。また、メモリチップからの応答を検証する必要があるため、試験に要する時間が長くなる。
【００５９】
これに対し、実施形態のメモリチップ１１は、リードレベルの変更を含めたリトライリード処理を、自動で実行することができるように構成されている。これによって、実施形態によれば、試験装置は、メモリチップ１１から送られてくる個々のデータを検証したり、データの検証結果に基づいて個々のメモリチップ１１にリードレベルを設定したりすることが不要となる。つまり、試験が簡単になる。また、メモリチップからの応答を検証できない安価な試験装置を使用することが可能になる。
【００６０】
以降、メモリチップ１１が自動でリードレベルの設定値の変更とリトライリード処理とを実行する機能を、オートリトライリード（Auto  Retry  Read:ARR）機能と表記する。つまり、実施形態の試験では、ＡＲＲ機能が使用される。
【００６１】
図６は、実施形態のメモリチップ１１の試験の際の状況の一例を示す模式的な図である。試験では、本図に示されるように、多数のメモリチップ１１がバーンイン（Burn  In）装置３００に接続される。バーンイン装置３００は、外部装置の一例である。
【００６２】
バーンイン装置３００は、メモリチップ１１に対して負荷をかけることを目的とした試験装置である。バーンイン装置３００は、各メモリチップ１１に対してコマンドを送信することができるが、各メモリチップ１１の応答を取り込んだり、当該応答を検証したりすることはできない。本実施形態のメモリチップ１１のＡＲＲ機能を使用すれば、応答を取り込むことができないバーンイン装置３００のような試験装置でも試験を行うことが可能である。
【００６３】
なお、バーンイン装置３００と各メモリチップ１１とは、Ｉ／Ｏ信号線、制御信号線、およびＲ／Ｂ信号線からなる配線群によって接続される。バーンイン装置３００は、各メモリチップ１１に対し、同時並行的に同一のコマンドを送信することができる。
【００６４】
ＡＲＲ機能が使用される場合、チップ制御回路１１３が備えるレジスタＲＥＧには、ＡＲＲ機能に基づく動作を規定する複数のパラメータが格納される。
【００６５】
図７は、実施形態のレジスタＲＥＧに格納される各種のパラメータの一例を示す模式的な図である。本図に示されるように、レジスタＲＥＧには、許容フェイルビット数、ＡＲＲフラグ、マルチパラメータリード用の開始アドレス、マルチパラメータリード用のステップアドレス、しきい値ＴｈＲ、しきい値ＴｈＭ、および最終ページのアドレス、が格納される。以降の説明では、これらのパラメータを総称して、ＡＲＲパラメータと表記することがある。
【００６６】
許容フェイルビット数は、リード処理によって読み出されたデータに含まれるフェイルビットの数と比較されるしきい値である。具体的には、リード処理によって読み出されたデータに含まれるフェイルビットの数が許容フェイルビット数を越えた場合、メモリチップ１１は、リトライリード処理を実行する。リード処理によって読み出されたデータに含まれるフェイルビットの数が許容フェイルビット数を越えない場合、メモリチップ１１は、リトライリード処理を実行しない。
【００６７】
許容フェイルビット数は、例えばメモリコントローラ２が備えるＥＣＣ回路２５のフェイルビットの訂正能力に応じて決められる。一例では、メモリコントローラ２が備えるＥＣＣ回路２５によって訂正可能なフェイルビットの数の上限値か、当該上限値よりも少ない数が、許容フェイルビット数として設定される。なお、許容フェイルビット数の設定方法は上記に限定されない。
【００６８】
ＡＲＲフラグは、ＡＲＲ機能を使用するか否かを示すフラグ情報である。
【００６９】
マルチパラメータリード用の開始アドレス、およびマルチパラメータリード用のステップアドレスは、リード処理の動作に必要なパラメータセットが格納された位置に関するパラメータである。
【００７０】
図８に示されるように、複数のパラメータセットが、ユーザロム１３０と称される記憶領域に予め用意されている。ユーザロム１３０は、メモリセルアレイ１１７内の所定のブロックＢＬＫに設けられてもよいし、メモリチップ１１内の任意のメモリによって構成されてもよい。各パラメータセットは、リードレベルＶｒａ、Ｖｒｂ、Ｖｒｃ、Ｖｒｄ、Ｖｒｅ、Ｖｒｆ、Ｖｒｇの設定値を含む。つまり、各パラメータセットは、リード処理に使用される複数のパラメータの設定値を含んだものである。
【００７１】
なお、各パラメータセットは、リードレベルに加えて、他のパラメータを含み得る。例えば、リードレベルが印加されてからセンスを実行するまでの時間を規定するパラメータが、各パラメータセットに含まれていてもよい。また、リード処理以外の処理（例えばプログラム処理など）にかかるパラメータが、各パラメータセットに含まれていてもよい。
【００７２】
マルチパラメータリードは、ユーザロム１３０に予め用意された複数のパラメータセットのうちの１つを読み出して、読み出したパラメータセットに含まれる複数のパラメータの設定値を一括に適用することである。使用されるマルチパラメータセットの位置は、ユーザロム１３０内の位置を示すアドレスによって指定される。つまり、マルチパラメータリード用の開始アドレスは、リトライリード処理に該当しないリード処理、つまり初回のリード処理で使用される設定値が格納された位置を示している。
【００７３】
リトライリード処理が実行される毎に、リードレベルの設定値が変更される。リードレベルの設定値の変更は、使用されるマルチパラメータセットが切り替えられることによって実現される。実施形態では、直前のリード処理（リトライリード処理を含む）で使用されたパラメータセットに後続する位置に格納されたパラメータセットが、次に実行されるリトライリード処理で使用される。レジスタＲＥＧに格納されるマルチパラメータリード用のステップアドレスは、直前のリード処理（リトライリード処理を含む）で使用されたパラメータセットが格納されていた位置を示すアドレスを基準として、次に実行されるリトライリード処理で使用されるパラメータセットが格納されている位置を示す、アドレスのオフセット量である。
【００７４】
つまり、直前のリード処理（リトライリード処理を含む）で使用されたパラメータセットが格納されていた位置を示すアドレスに、マルチパラメータリード用のステップアドレスを加算することによって、次に実行されるリトライリード処理で使用されるパラメータセットが格納されている位置を示すアドレスを得ることが可能である。
【００７５】
なお、マルチパラメータリード用のステップアドレスは、１つのパラメータセットのサイズの整数倍の大きさを有する。つまり、１つのパラメータセットのサイズをマルチパラメータリード用のステップアドレスとして設定することによって、ユーザロム１３０に格納されている複数のパラメータセットを、格納位置の順番で使用することが可能である。また、１つのパラメータセットのサイズの２倍以上の値をマルチパラメータリード用のステップアドレスとして設定することによって、ユーザロム１３０に格納されている複数のパラメータセットを、所定個ずつスキップしながら使用することが可能である。
【００７６】
実施形態では、メモリチップ１１は、いったんコマンドを受信すると、外部からの追加のコマンドを要することなく、複数のページに対する試験を順次、自動で実行することができる。具体的には、メモリチップ１１は、所定の範囲の複数のページのそれぞれをアドレスの順番で順次、リード処理の対象ページとして設定して、設定された対象ページに対してリード処理を実行する。メモリチップ１１は、対象ページからリードされたデータがフェイルビットの数の点で許容フェイルビット数によって定められた基準をクリアするまで、リトライリード処理を繰り返し実行することができる。そして、対象ページからリードされたデータがフェイルビットの数の点で許容フェイルビット数によって定められた基準をクリアした場合には、メモリチップ１１は、次のページを新たな対象ページに設定する。
【００７７】
図７に説明を戻す。
しきい値ＴｈＲおよびしきい値ＴｈＭは、リトライリード処理の実行にかかる数に対して定められたしきい値である。
【００７８】
しきい値ＴｈＲは、１つのページに対して実行さるリトライリード処理の回数の上限値に対応する。また、しきい値ＴｈＭは、リトライリード処理が実行されるページの数の上限値に対応する。
【００７９】
また、最終ページのアドレスは、試験が実施される範囲の末尾のページを示すアドレスである。ここでは一例として、最終ページのアドレスは、ブロックＢＬＫの先頭のページからのオフセット量、つまりページ番号で記述されることとする。なお、最終ページのアドレスの記述方法はこれに限定されない。
【００８０】
以降では、メモリチップ１１が複数のページに対して連続してリード処理を実行する動作を、試験動作と表記する。メモリチップ１１は、コマンドに応じて試験動作を開始した後、試験の対象のページが最終ページに至るか、またはリトライリード処理の実行にかかる数がしきい値ＴｈＲまたはしきい値ＴｈＭによって定められる基準を超えた場合は、試験動作を自動的に終了する。メモリチップ１１は、試験動作の終了の際には、ステータスレジスタ１１６に試験の合否（Pass  or  Fail）にかかる情報を格納する。試験の合否にかかる情報については後述する。
【００８１】
フェイルビットの検出は、リード処理によって得られたデータと、当該データの期待値と、の比較によって実現される。期待値は、フェイルビットを含まないデータである。
【００８２】
図９は、実施形態のメモリセルアレイ１１７に格納されるデータを説明するための模式的な図である。本図に示されるように、メモリセルアレイ１１７が備える複数のブロックＢＬＫのうちの、試験の対象として設定され得るブロックＢＬＫｔには、試験用データがＴＬＣの方式で予め格納されている。つまり、各ブロックＢＬＫｔの各ワード線には、３ページ分のデータが格納されている。なお、各ブロックＢＬＫｔには、同一のデータが試験用データとして格納されている。
【００８３】
メモリセルアレイ１１７が備える複数のブロックＢＬＫのうちの、所定の３つのブロックには、試験用データがＳＬＣ（Single  Level  Cell）と呼ばれる方式で格納されている。ＳＬＣは、１つのメモリセルに１ビットのデータが格納される方式である。
【００８４】
ＳＬＣによれば、ＴＬＣに比べて格納されているデータの信頼性が高い。つまり、ＳＬＣによれば、ＴＬＣに比べて、リードされるデータに含まれるフェイルビットの数が少ない。実施形態では、メモリチップ１１は、ＳＬＣの方式で格納された試験用データを、フェイルビットを含まないデータ、すなわち期待値として見なす。
【００８５】
なお、試験用データは、ブロックＢＬＫｔには、ＴＬＣの方式で格納されている。よって、試験用データと同じデータをＳＬＣの方式で格納すると、ＴＬＣの方式で格納する場合に要する記憶領域の３倍のサイズの記憶領域が必要となる。よって、図９に示されるように、期待値としての試験用データは、３つのブロックＢＬＫｅに分けて格納される。図９の例では、試験用データのうちのアッパービットに書き込まれたデータと、試験用データのうちのミドルページに書き込まれたデータと、試験用データのうちのロアーページに書き込まれたデータとが、それぞれ異なるブロックＢＬＫｅにＳＬＣの方式で格納されている。
【００８６】
なお、期待値は、信頼性が高い方式であれば、ＳＬＣ以外の任意の方式でブロックＢＬＫｅに格納され得る。フェイルビットの発生がほぼ無いのであれば、１つのメモリセルに２ビットのデータが格納されるＭＬＣ（Multi  Level  Cell）と呼ばれる方式で期待値がブロックＢＬＫｅに格納されてもよい。また、期待値は、メモリセルアレイ１１７と異なるメモリチップ１１内の任意の記憶装置に予め格納されていてもよい。
【００８７】
次に、実施形態のメモリチップ１１の試験方法と、試験におけるメモリチップ１１の動作を説明する。
【００８８】
図１０は、実施形態のメモリチップ１１の試験の手順の一例を説明するためのシーケンス図である。
【００８９】
なお、図１０では、図６に示される様態でバーンイン装置３００に接続された多数のメモリチップ１１のうちの１つと、バーンイン装置３００と、の関係が示されている。バーンイン装置３００は、自身に接続された他のメモリチップ１１に対しても、図１０に例示される各種のコマンドを同時並行的に送信することができる。
【００９０】
最初に、バーンイン装置３００は、メモリチップ１１に、ＡＲＲパラメータを設定する（Ｓ１０１）。ＡＲＲパラメータは、例えばセットフィーチャーと称されるコマンドによって設定され得る。バーンイン装置３００がＡＲＲパラメータを送信すると、メモリチップ１１では、Ｉ／Ｏ信号処理回路１１１およびコマンドレジスタ１１４を経由してチップ制御回路１１３にＡＲＲパラメータが送られる。そして、ＡＲＲパラメータは、チップ制御回路１１３が備えるレジスタＲＥＧに格納される。
【００９１】
なお、ＡＲＲパラメータのうちのＡＲＲフラグとしては、ＡＲＲ機能の使用することを意味する値が設定される。これによって、バーンイン装置３００がリードコマンドを送信すれば、メモリチップ１１は、許容フェイルビット数、マルチパラメータリード用の開始アドレス、マルチパラメータリード用のステップアドレス、しきい値ＴｈＲ、しきい値ＴｈＭ、および最終ページのアドレス、に従って、試験動作を自動で実行することができる。
【００９２】
なお、ここでは一例として、メモリチップ１１にブロックＢＬＫｔ毎に試験動作を実行させる場合を説明する。１つのブロックＢＬＫｔを試験対象とした試験動作を実現するための一連の手順が、繰り返し実行される。１つのブロックＢＬＫｔを試験対象とした試験動作を実現するための一連の手順を、単位手順と表記する。つまり、単位手順（Ｓ１０２）は、試験対象のブロックＢＬＫｔを異ならせながら複数回実行され得る。
【００９３】
各単位手順では、バーンイン装置３００が、まず、リードコマンドを送信する（Ｓ１０３）。リードコマンドは、試験対象のブロックＢＬＫｔを示すアドレスを含む。つまり、リードコマンドによって試験対象のブロックＢＬＫｔが指定される。
【００９４】
メモリチップ１１は、リードコマンドを受信すると、試験動作を開始する（Ｓ１０４）。具体的には、例えば、チップ制御回路１１３は、リードコマンドを受信した際に、ＡＲＲフラグを参照する。当該ＡＲＲフラグには、ＡＲＲ機能の使用することを意味する値がＳ１０１の処理によって設定されている。よって、チップ制御回路１１３は、Ｓ１０３によって送られてきたリードコマンドを、試験動作の開始を指示するコマンドと解釈して、試験動作を開始する。
【００９５】
なお、仮に、ＡＲＲフラグにＡＲＲ機能の使用することを意味する値が設定されていない場合、チップ制御回路１１３は、リードコマンドを受信した際に、通常のリード処理を実行することができる。
【００９６】
図１１は、実施形態のメモリチップ１１が実行する試験動作の一連の手順の一例を説明するフローチャートである。
【００９７】
まず、チップ制御回路１１３は、試験動作で使用されるパラメータであるＮ、Ｍ、およびＲをゼロにリセットする（Ｓ２０１）。
【００９８】
Ｎは、ブロックＢＬＫｔの先頭のページからのオフセット量に対応し、試験すなわちリード処理の対象のページを示す。つまり、Ｎは、試験の対象のページを示すページ番号である。Ｎをゼロでリセットすることで、ブロックＢＬＫｔの先頭のページが、試験の対象のページとして設定される。なお、Ｓ２０１では、ゼロ以外の任意の値がＮにセットされてもよい。以降の説明では、ページ番号がＮであるページ（ページ＃Ｎ）、つまり試験の対象として設定されたページを、対象ページと表記する。
【００９９】
Ｍは、現在の対象ページに対して実行されたリトライリード処理の回数に対応するパラメータである。Ｒは、試験動作が開始されてからリトライリード処理が実行されたページの数に対応するパラメータである。
【０１００】
続いて、チップ制御回路１１３は、ロウデコーダ１２０およびセンスアンプ１１９を制御して、対象ページ（ページ＃Ｎ）に格納された試験用データに対応する期待値をブロックＢＬＫｅからリードするリード処理を実行する（Ｓ２０２）。センスアンプ１１９は、リードされた期待値を、データレジスタ１２２を構成する６つのラッチ回路群のうちの、試験用データのリード処理（つまり後述のＳ２０３の処理）の際に使用されないラッチ回路群に格納する。期待値が格納されるラッチ回路群は、特定のラッチ回路群に限定されない。ここでは一例として、期待値はＣＤＬに格納されることとする。
【０１０１】
続いて、チップ制御回路１１３は、ロウデコーダ１２０およびセンスアンプ１１９を制御して、対象ページ（ページ＃Ｎ）に格納された試験用データをリードするリード処理を実行する（Ｓ２０３）。なお、対象ページに対する初回のリード処理においては、マルチパラメータリード用の開始アドレスが示す位置に格納されたパラメータセットが使用される。
【０１０２】
Ｓ２０３では、センスアンプ１１９は、期待値が格納されたＣＤＬを使用しないで、対象ページに格納された試験用データを判定する。そして、センスアンプ１１９は、判定された試験用データを、例えばＸＤＬに格納する。
【０１０３】
続いて、チップ制御回路１１３は、ＣＤＬに格納された期待値と、ＸＤＬに格納された試験用データと、を比較する（Ｓ２０４）。具体的には、例えば、チップ制御回路１１３は、演算器１２３に、ＣＤＬに格納された期待値と、ＸＤＬに格納された試験用データと、の否定排他的論理和  (ＸＮＯＲ)演算を実行させる。これによって、試験用データと期待値とで等しいビットは「１」とされ、試験用データと期待値とで異なるビットは「０」とされた、比較結果が得られる。つまり、「１」は正常なビットを示し、「０」はフェイルビットを示す。なお、演算の方法はこれに限定されない。否定排他的論理和  (ＸＮＯＲ)演算に替えて、排他的論理和（ＸＯＲ）演算が実行されてもよい。
【０１０４】
続いて、チップ制御回路１１３は、リードされた試験用データに含まれるフェイルビットの数が許容フェイルビット数を越えたか否かを判定する（Ｓ２０５）。チップ制御回路１１３は、比較結果に含まれる「０」の数がレジスタＲＥＧに設定された許容フェイルビット数より多いか否かを判定する。
【０１０５】
リードされた試験用データに含まれるフェイルビットの数が許容フェイルビット数を越えた場合（Ｓ２０５：Ｙｅｓ）、チップ制御回路１１３は、ＲおよびＭのインクリメントを実行する（Ｓ２０６）。ただし、チップ制御回路１１３は、インクリメントされる前のＭがゼロである場合にのみＲのインクリメントを実行する。
【０１０６】
続いて、チップ制御回路１１３は、Ｒがしきい値ＴｈＲより大きいか否かを判定する（Ｓ２０７）。Ｓ２０７では、試験動作が開始してからリトライリード処理が実行されたページの数がしきい値ＴｈＲに達したか否かが判定される。
【０１０７】
Ｒがしきい値ＴｈＲより大きくない場合（Ｓ２０７：Ｎｏ）、つまり試験動作が開始してからリトライリード処理が実行されたページの数がしきい値ＴｈＲに達していない場合、チップ制御回路１１３は、Ｍがしきい値ＴｈＭより大きいか否かを判定する（Ｓ２０８）。Ｓ２０８では、現在の対象ページに対して実行されたリトライリード処理の数がしきい値ＴｈＭに達したか否かが判定される。
【０１０８】
Ｍがしきい値ＴｈＭより大きくない場合（Ｓ２０８：Ｎｏ）、つまり現在の対象ページに対して実行されたリトライリード処理の数がしきい値ＴｈＭに達していない場合、チップ制御回路１１３は、パラメータセットを変更する（Ｓ２０９）。例えば、チップ制御回路１１３は、現在使用中のパラメータセットが格納された位置を示すアドレスに、マルチパラメータリード用のステップアドレスを加算し、加算によって得られたアドレスが示す位置に格納されたパラメータセットをロードする。
【０１０９】
Ｓ２０９に続いて、チップ制御回路１１３は、Ｓ２０３の処理を再び実行する。Ｓ２０９を経てＳ２０３が再び実行されることによって、現在の対象ページに対する２回目以降のリード処理、すなわちリトライリード処理が実現する。
【０１１０】
なお、対象ページとして設定されたページに対して初回に実行されるＳ２０３およびＳ２０４の処理は、第１処理の一例である。また、対象ページとして設定されたページに対して初回に実行されるＳ２０４の処理は、第３処理の一例である。また、対象ページとして設定されたページに対して実行される、Ｓ２０９と、当該Ｓ２０９を経て再び実行されるＳ２０３およびＳ２０４の処理とは、第２処理の一例である。また、対象ページとして設定されたページに対して実行される、Ｓ２０９を経て再び実行されるＳ２０４の処理は、第４処理の一例である。
【０１１１】
Ｒがしきい値ＴｈＲより大きい場合（Ｓ２０７：Ｙｅｓ）、またはＭがしきい値ＴｈＭより大きい場合（Ｓ２０８：Ｙｅｓ）、チップ制御回路１１３は、ステータスレジスタ１１６に不合格を示す情報として「フェイル」を示す値を格納し（Ｓ２１０）、試験動作を終了する。
【０１１２】
リードされた試験用データに含まれるフェイルビットの数が許容フェイルビット数を越えていない場合（Ｓ２０５：Ｎｏ）、チップ制御回路１１３は、対象ページ、すなわちページ＃Ｎは、最終ページに該当するか否かを判定する（Ｓ２１１）。チップ制御回路１１３は、例えば、ＮとレジスタＲＥＧに格納された最終ページのアドレスとが等しいか否かを判定することによって、ページ＃Ｎが最終ページに該当するか否かを判定することができる。
【０１１３】
ページ＃Ｎが最終ページに該当する場合（Ｓ２１１：Ｙｅｓ）、チップ制御回路１１３は、試験動作を終了する。
【０１１４】
ページ＃Ｎが最終ページに該当しない場合（Ｓ２１１：Ｎｏ）、チップ制御回路１１３は、Ｍがゼロより大きいか否かを判定する（Ｓ２１２）。つまり、チップ制御回路１１３は、現在の対象ページに対するリトライリード処理が１回以上実行されたか否かを判定する。
【０１１５】
Ｍがゼロより大きい場合（Ｓ２１２：Ｙｅｓ）、つまり現在の対象ページに対するリトライリード処理が１回以上実行された場合、現在使用しているパラメータセットが最初のリード処理で使用されたパラメータセットと異なる。よって、チップ制御回路１１３は、パラメータセットを変更する（Ｓ２１３）。つまり、チップ制御回路１１３は、マルチパラメータリード用の開始アドレスが示す位置に格納されたパラメータセットをロードする。
【０１１６】
続いて、チップ制御回路１１３は、ＭをゼロでリセットするとともにＮをインクリメントして（Ｓ２１４）、Ｓ２０２の処理を再び実行する。これによって、次のページが新たな対象ページに設定されて、当該新たな対象ページに対する試験が実施される。
【０１１７】
このように、何れかのページに対して実行されたリトライリード処理の回数がしきい値ＴｈＭを越えるか、リトライリード処理が実行されたページの数がしきい値ＴｈＲを越えるか、または全てのページに対する試験が完了した場合、試験動作が終了する。何れかのページに対して実行されたリトライリード処理の回数がしきい値ＴｈＭを越えたか、または、リトライリード処理が実行されたページの数がしきい値ＴｈＲを越えた場合、ステータスレジスタに「フェイル」を示す値が格納される。全てのページに対する試験が完了した場合には、ステータスレジスタに「フェイル」を示す値は格納されない。
【０１１８】
図１０に説明を戻す。
メモリチップ１１が試験動作（Ｓ１０４）を実行している間、バーンイン装置３００は、待機する（Ｓ１０５）。つまり、動作を中断する。なお、バーンイン装置３００は、メモリチップ１１からの応答を取り込むことができないため、試験動作（Ｓ１０４）の終了を認識できない。よって、バーンイン装置３００は、Ｓ１０３の実行後、予め決められた時間が経過するまで動作を中断する。試験動作に要する最大の時間が、中断の時間として予め設定される。
【０１１９】
バーンイン装置３００は、待機の後、ステータスフェイルコマンドをメモリチップ１１に送信する（Ｓ１０６）。メモリチップ１１では、チップ制御回路１１３は、ステータスフェイルコマンドを受信すると、ステータスレジスタ１１６に「フェイル」を示す値が格納されているか否かを判定する（Ｓ１０７）。
【０１２０】
ステータスレジスタ１１６に「フェイル」を示す値が格納されている場合（Ｓ１０７：Ｙｅｓ）、チップ制御回路１１３は、所定のブロックＢＬＫに、試験対象のブロックＢＬＫｔはバッドブロックである旨のフラグを格納する（Ｓ１０８）。バッドブロックとは、品質が所望のレベルに達していないために不使用とされるブロックをいう。つまり、試験動作によって得られた合否の判定結果は、バッドブロックの設定に利用される。
【０１２１】
ステータスレジスタ１１６に「フェイル」を示す値が格納されていない場合（Ｓ１０７：Ｎｏ）、またはＳ１０８の処理の後、単位手順（Ｓ１０２）が終了する。
【０１２２】
その後、単位手順（Ｓ１０２）は、試験対象のブロックＢＬＫｔを変更しながら、複数回実行される。所望の複数のブロックＢＬＫｔに対する試験が完了すると、バーンイン装置３００は、メモリチップ１１に対する試験を終了する。
【０１２３】
なお、以上の説明においては、試験対象のブロックＢＬＫに対する処理の合否の判定結果が不合格であった場合にのみ、「フェイル」を示す値がステータスレジスタ１１６に格納された。試験対象のブロックＢＬＫに対する処理の合否の判定結果が合格であった場合に、「パス」を示す値がステータスレジスタ１１６に格納されてもよい。
【０１２４】
また、所定のブロックＢＬＫに書き込まれた、試験対象のブロックＢＬＫｔはバッドブロックである旨のフラグ（バッドブロックフラグ）は、バーンイン装置３００を用いた試験の後、テスタなどの、メモリチップ１１からの応答を検証することが可能な装置で読み出され得る。テスタは、リードコマンドをメモリチップ１１に送ることによってメモリチップ１１からバッドブロックフラグを取得して、バッドブロックフラグが示すブロックＢＬＫｔを、メモリチップ１１が備える例えばロムヒューズ（不図示）にバッドブロックとして記録する。これによって、バッドブロックフラグが示すブロックＢＬＫｔは、使用が禁止されたブロックＢＬＫとして設定される。
【０１２５】
以上述べたように、実施形態によれば、チップ制御回路１１３、センスアンプ１１９、およびロウデコーダ１２０は、協働して、以下の動作を行う第１回路を構成する。第１回路は、メモリセルアレイ１１７の対象ページに対してデータをパラメータ（例えばリードレベル）を用いてリードする第１処理を実行する。第１処理は、例えば、対象ページとして設定されたページに対して初回に実行されるＳ２０３およびＳ２０４を含む処理である。第１回路は、第１処理の後、パラメータの設定値を変更してデータをリードする第２処理を実行する。第２処理は、例えば、対象ページとして設定されたページに対して実行される、Ｓ２０９と、当該Ｓ２０９を経て再び実行されるＳ２０３およびＳ２０４の処理と、を含む処理である。
【０１２６】
この構成により、試験装置は、メモリチップ１１から送られてくる個々のデータを検証したり、データの検証結果に基づいて個々のメモリチップ１１にリードレベルを設定したりすることが不要となる。つまり、試験が簡単になる。また、メモリチップからの応答を検証できない安価な試験装置を使用することが可能になる。
【０１２７】
また、Ｉ／Ｏ信号処理回路１１１、制御信号処理回路１１２、およびＲＹ／ＢＹ生成回路１２１は、外部装置に接続可能な第２回路を構成する。バーンイン装置３００は、外部装置に該当する。第１回路は、外部装置からのコマンド（例えばＳ１０３で送信されるリードコマンド）に応じて第１処理を実行し、第１処理の後、外部装置からのさらなるコマンドを要することなく第２処理を実行する。
【０１２８】
この構成により、メモリチップ１１は、リード処理の後、自動でリトライリード処理を実行することができる。よって、試験が簡単になる。また、メモリチップからの応答を検証できない安価な試験装置を使用することが可能になる。
【０１２９】
また、第１処理は、データの期待値とリードされたリードとを比較する第３処理を含む。第３処理は、例えば対象ページとして設定されたページに対して初回に実行されるＳ２０４の処理である。第１回路は、第２処理を実行するか否かを第３処理の結果に基づいて判定する。判定の処理は、例えばＳ２０５の処理である。
【０１３０】
この構成により、メモリチップ１１は、リードされたデータに含まれるフェイルビットに基づいてリトライリード処理を実行するか否かを外部装置からのアシストを要することなく自動で判定することができる。よって、試験が簡単になる。また、メモリチップからの応答を検証できない安価な試験装置を使用することが可能になる。
【０１３１】
また、第１回路は、外部装置からのコマンド（例えばＳ１０３によって送信されるリードコマンド）に応じて複数のページのうちの一を対象ページとして設定して第１処理か、または第１処理および第２処理の両方を実行する。その後、第１回路は、外部装置からのさらなるコマンドを要することなく、新たなページを対象ページとして設定し、第１処理か、または第１処理および第２処理の両方を実行する。
【０１３２】
この構成により、メモリチップ１１は、複数のページに対する試験を、ページ毎のコマンドの入力の必要なく自動で実行できる。
【０１３３】
例えば、実施形態と比較される技術によれば、多数のメモリチップに対して同時並行的に試験を実行したい場合、１つのメモリチップにおいてリトライリード処理が実行されると、当該リトライリード処理が完了するまで、他のメモリチップの試験の進行が中断される。これによって、試験に要する時間が増大する。
【０１３４】
実施形態によれば、ページ毎のコマンドの入力を要せずに複数のページに対する試験が自動で実行されるので、１つのメモリチップ１１のあるページでリトライリード処理が実行されても、その間、他のメモリチップ１１は試験を進めることができる。したがって、多数のメモリチップ１１に対して同時並行的に試験を実行する場合であっても、試験に要する時間の増大を抑制することができる。
【０１３５】
また、第１回路は、複数のブロックＢＬＫのうちの指定された試験対象のブロックＢＬＫが備える複数のページのそれぞれを順次、対象ページとして設定し、第２処理に関する第１の数を計測し、第１の数に基づいて、試験対象のブロックＢＬＫに対する処理の合否を判定する。第１の数は、例えば図１１の一連の処理で使用されるＭまたはＲである。また、第１の数を計測する処理は、例えば、Ｓ２０１、Ｓ２０６、およびＳ２１４などの処理である。また、試験対象のブロックＢＬＫに対する処理の合否を判定する処理は、例えば、Ｓ２０７またはＳ２０８の処理である。
【０１３６】
この構成により、リトライリード処理の実行によってデータのリードに多くの時間を要したり、あるいはリトライリード処理によってもデータのリードが困難な部分を、ブロック単位で抽出することが可能となる。
【０１３７】
また、第１回路は、ステータスレジスタ１１６に合否の判定結果を格納する。
【０１３８】
これによって、例えば外部装置は、ステータスリードコマンドと称されるステータスレジスタ１１６の内容を出力されるコマンドを送信することができれば、合否の判定の結果を取得することができる。
【０１３９】
なお、合否の判定結果が格納される位置は、ステータスレジスタ１１６だけに限定されない。第１回路は、メモリセルアレイ１１７が備える所定の部録ＢＬＫに合否の判定結果を格納してもよい。
【０１４０】
また、第１の数は、ページ毎に計測される第２処理の実行回数である。そして、第１回路は、第１の数としきい値との比較に基づいて合否を判定する。図１１の例では、パラメータＭが第１の数に該当する。そして、Ｓ２０８の処理が、第１の数としきい値とを比較する処理に該当する。
【０１４１】
この構成により、例えば所定回数以上リトライリード処理を実行しても所定以上の基準を有するデータを得ることができないページが存在する場合には、そのページを含むブロックＢＬＫの試験の結果を不合格とすることが可能となる。
【０１４２】
また、第１の数は、ブロックＢＬＫが備える複数のページのうちの第２処理が実行されたページの数である。そして、第１回路は、第１の数としきい値との比較に基づいて合否を判定する。図１１の例では、パラメータＲが第１の数に該当する。そして、Ｓ２０７の処理が、第１の数としきい値とを比較する処理に該当する。
【０１４３】
この構成により、データをリードする際にリトライリード処理を要するページの数が所定以上であるブロックＢＬＫの試験の結果を不合格とすることが可能となる。
【０１４４】
なお、リードに使用されるパラメータは、例えばリードレベルである。リードに使用されるパラメータは、リードレベルに加えて、他のパラメータを含み得る。例えば、リードに使用されるパラメータは、リードレベルが印加されてからセンスを実行するまでの時間を規定する時間情報を含んでいてもよい。
【０１４５】
また、第１の数と比較されるしきい値（しきい値ＴｈＭ、ＴｈＲ）は、例えば図１０のＳ１０１の処理のように、外部装置から設定可能である。
【０１４６】
これによって、ブロックＢＬＫの試験の結果の判定基準を柔軟に変更することが可能となる。
【０１４７】
なお、以上説明された例では、パラメータＲは、試験動作毎にリセットされた。チップ制御回路１１３は、ブロックＢＬＫｔ毎の試験動作を実施する毎に、パラメータＲを累積して、パラメータＲの累積値を所定の記憶領域（例えば所定のブロックＢＬＫ）に格納してもよい。また、チップ制御回路１１３は、試験結果が不合格である場合には、パラメータＲの値を、累積値に加算せず、試験結果が合格である場合には、パラメータＲの値を、累積値に加算するように、構成されてもよい。
【０１４８】
（付記１）
第２処理は、第３処理と同じ処理である第４処理を含み、
第１回路は、第２処理の後、第４処理の結果に基づいて第２処理を再び実行するか否かを判定する。
【０１４９】
（付記２）
メモリセルアレイ１１７は、複数のブロックＢＬＫを備え、
複数のブロックＢＬＫのそれぞれは、複数のページを備え、
第１回路は、複数のブロックＢＬＫのうちの一のブロックＢＬＫが備える複数のページのそれぞれを順次、対象ページとして設定し、第２処理に関する第１の数を計測し、第１の数に基づいて一のブロックＢＬＫに対する処理の合否を判定する。
【０１５０】
（付記３）
メモリセルアレイ１１７は、それぞれしきい値電圧が複数のステートのうちのデータに対応したステートが設定される複数のメモリセルトランジスタＭＴを備え、
データのリードは、複数のステートのうちの隣接する２つのステートの境界に対応するリードレベルとしきい値電圧との比較によってデータを判定する処理であり、
パラメータは、リードレベルを含む。
【０１５１】
（付記４）
しきい値ＴｈＭは外部装置から設定可能である。
【０１５２】
（付記５）
しきい値ＴｈＲは外部装置から設定可能である。
【０１５３】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１５４】
１  ＮＡＮＤメモリ、２  メモリコントローラ、３  ＲＡＭ、１０  マルチチップパッケージ、１１  メモリチップ、２１  ホストＩ／Ｆコントローラ、２２  ＲＡＭコントローラ、２３  ＮＡＮＤコントローラ、２４  ＭＰＵ、２５  ＥＣＣ回路、１１１  Ｉ／Ｏ信号処理回路、１１２  制御信号処理回路、１１３  チップ制御回路、１１４  コマンドレジスタ、１１５  アドレスレジスタ、１１６  ステータスレジスタ、１１７  メモリセルアレイ、１１８  カラムデコーダ、１１９  センスアンプ、１２０  ロウデコーダ、１２１  ＲＹ／ＢＹ生成回路、１２２  データレジスタ、１２３  演算器、１３０  ユーザロム、２００  ホスト装置、３００  バーンイン装置。
【図１】
2020113351.tif 000003
【図２】
2020113351.tif 000004
【図３】
2020113351.tif 000005
【図４】
2020113351.tif 000006
【図５】
2020113351.tif 000007
【図６】
2020113351.tif 000008
【図７】
2020113351.tif 000009
【図８】
2020113351.tif 000010
【図９】
2020113351.tif 000011
【図１０】
2020113351.tif 000012
【図１１】
2020113351.tif 000013