(57)【要約】【課題】複数の不揮発性半導体メモリを有するメモリシステムで発生する消費電力のピークを低く抑えることができる。【解決手段】チップ１は、コントローラ２０から第１制御信号を受け取ると、第１動作のうちの第１サブ動作を実行して、第１動作を中断する。コントローラ２０は第１動作が中断されると、第２制御信号をチップ２に送信する。第２制御信号を受け取ると、チップ２は第２動作のうちの第３サブ動作を実行して、第２動作を中断する。コントローラ２０は第２動作が中断されると、第３制御信号をチップ１に送信する。第３制御信号を受け取ると、チップ１は第１動作を再開し、第２サブ動作を実行する。コントローラ２０は第２サブ動作が終了すると、第４制御信号をチップ２に送信する。第４制御信号を受け取ると、チップ２は第２動作を再開し、第４サブ動作を実行する。【選択図】図５
2012058860.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルを有し、前記複数のメモリセルに対して書き込み、読み出し及び消去の少なくともいずれか１つの第１動作を行う第１の不揮発性半導体メモリと、
複数のメモリセルを有し、前記複数のメモリセルに対して書き込み、読み出し及び消去の少なくともいずれか１つの第２動作を行う第２の不揮発性半導体メモリと、
前記第１の不揮発性半導体メモリ及び前記第２の不揮発性半導体メモリの前記第１動作及び前記第２動作を制御するコントローラとを具備し、
前記第１動作は、所定電流以上の電流を消費する第１サブ動作及び第２サブ動作を含み、
前記第２動作は、所定電流以上の電流を消費する第３サブ動作及び第４サブ動作を含み、
前記第１の不揮発性半導体メモリは、前記コントローラから第１制御信号を受け取ると、前記第１動作の前記第１サブ動作を実行した後、前記第１動作を中断し、
前記コントローラは前記第１動作が中断されたことを認知すると、第２制御信号を前記第２の不揮発性半導体メモリに送信し、
前記第２の不揮発性半導体メモリは、前記コントローラから前記第２制御信号を受け取ると、前記第２動作の前記第３サブ動作を実行した後、前記第２動作を中断し、
前記コントローラは前記第２動作が中断されたことを認知すると、第３制御信号を前記第１の不揮発性半導体メモリに送信し、
前記第１の不揮発性半導体メモリは、前記コントローラから前記第３制御信号を受け取ると、前記第１動作を再開して前記第２サブ動作を実行し、
前記コントローラは前記第２サブ動作が実行されたことを認知すると、第４制御信号を前記第２の不揮発性半導体メモリに送信し、
前記第２の不揮発性半導体メモリは、前記コントローラから前記第４制御信号を受け取ると、前記第２動作を再開して前記第４サブ動作を実行することを特徴とするメモリシステム。
【請求項２】
前記第１サブ動作は前記所定電流以上の電流を消費する第１高電流動作と前記第１高電流動作より小さい電流を消費する第１低電流動作とを含み、前記第２サブ動作は前記所定電流以上の電流を消費する第２高電流動作と前記第２高電流動作より小さい電流を消費する第２低電流動作とを含み、
前記第３サブ動作は前記所定電流以上の電流を消費する第３高電流動作と前記第３高電流動作より小さい電流を消費する第３低電流動作とを含み、前記第４サブ動作は前記所定電流以上の電流を消費する第４高電流動作と前記第４高電流動作より小さい電流を消費する第４低電流動作とを含み、
前記第２高電流動作と前記第１低電流動作とが並行して実行され、前記第３高電流動作と前記第２低電流動作とが並行して実行され、前記第４高電流動作と前記第３低電流動作とが並行して実行されることを特徴とする請求項１に記載のメモリシステム。
【請求項３】
前記第１動作及び第２動作は書き込みであり、前記第１サブ動作及び前記第３サブ動作はメモリセルにデータを書き込むプログラムであり、前記第２サブ動作及び前記第４サブ動作は前記プログラムが正常に行われたか否かを検証するプログラムベリファイであることを特徴とする請求項１に記載のメモリシステム。
【請求項４】
前記第１動作及び前記第２動作は読み出しであり、前記第１サブ動作及び前記第３サブ動作は第１ワード線に接続されたメモリセルの読み出しであり、前記第２サブ動作及び前記第４サブ動作は前記第１ワード線に隣接する第２ワード線に接続されたメモリセルの読み出しであることを特徴とする請求項１に記載のメモリシステム。
【請求項５】
複数のメモリセルを有するメモリセルアレイと、
前記メモリセルアレイに対して書き込み、読み出し及び消去の少なくともいずれか１つの第１動作を行う第１制御回路とを備える第１の不揮発性半導体メモリと、
複数のメモリセルを有するメモリセルアレイと、
前記メモリセルアレイに対して書き込み、読み出し及び消去の少なくともいずれか１つの第２動作を行う第２制御回路とを備える第２の不揮発性半導体メモリと、
前記第１の不揮発性半導体メモリ及び前記第２の不揮発性半導体メモリにそれぞれ設けられ、前記第１の不揮発性半導体メモリ及び前記第２の不揮発性半導体メモリが共にレディ状態であるか否かを検出する検出回路とを具備し、
前記検出回路が前記第１の不揮発性半導体メモリ及び前記第２の不揮発性半導体メモリが共にレディ状態であることを検出したとき、
前記第１制御回路は、第１待機時間の経過後に前記第１動作を開始し、
前記第２制御回路は、前記第１待機時間と異なる第２待機時間の経過後に前記第２動作を開始することを特徴とするメモリシステム。
【請求項６】
前記第１動作は所定電流以上の電流を消費する第１高電流動作と前記第１高電流動作より小さい電流を消費する第１低電流動作とを含み、
前記第２動作は所定電流以上の電流を消費する第２高電流動作と前記第２高電流動作より小さい電流を消費する第２低電流動作とを含み、
前記第２待機時間は、前記第１動作が含む前記第１高電流動作が終了する時間に設定され、前記第１低電流動作と前記第２高電流動作とが並行して実行されることを特徴とする請求項５に記載のメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、複数の不揮発性半導体メモリを有するメモリシステムに関し、例えば複数のＮＡＮＤ型フラッシュメモリを有するメモリシステムに関するものである。
【背景技術】
【０００２】
近年、微細化の進行と共に、ＮＡＮＤ型フラッシュメモリの書き込みスピードは遅くなっている。一方、複数のＮＡＮＤ型フラッシュメモリチップを有するメモリシステムが扱うデータ量は増加傾向にあるため、メモリシステムは複数のＮＡＮＤ型フラッシュメモリチップに対し同時に書き込みを実行することにより、書き込み性能の向上を図っている。
【０００３】
しかしこの場合、複数のＮＡＮＤ型フラッシュメモリチップを同時に動作させるため、消費電流が増大する。特に、複数のＮＡＮＤ型フラッシュメモリチップにおける消費電流のピークが重なり、大きなピーク電流が流れることが懸念される。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−２４２６３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
複数の不揮発性半導体メモリを有するメモリシステムで発生する消費電力のピークを低く抑えることができるメモリシステムを提供する。
【課題を解決するための手段】
【０００６】
一実施態様のメモリシステムは、複数のメモリセルを有し、前記複数のメモリセルに対して書き込み、読み出し及び消去の少なくともいずれか１つの第１動作を行う第１の不揮発性半導体メモリと、複数のメモリセルを有し、前記複数のメモリセルに対して書き込み、読み出し及び消去の少なくともいずれか１つの第２動作を行う第２の不揮発性半導体メモリと、前記第１の不揮発性半導体メモリ及び前記第２の不揮発性半導体メモリの前記第１動作及び前記第２動作を制御するコントローラとを具備する。前記第１動作は、所定電流以上の電流を消費する第１サブ動作及び第２サブ動作を含み、前記第２動作は、所定電流以上の電流を消費する第３サブ動作及び第４サブ動作を含む。前記第１の不揮発性半導体メモリは、前記コントローラから第１制御信号を受け取ると、前記第１動作の前記第１サブ動作を実行した後、前記第１動作を中断し、前記コントローラは前記第１動作が中断されたことを認知すると、第２制御信号を前記第２の不揮発性半導体メモリに送信する。前記第２の不揮発性半導体メモリは、前記コントローラから前記第２制御信号を受け取ると、前記第２動作の前記第３サブ動作を実行した後、前記第２動作を中断し、前記コントローラは前記第２動作が中断されたことを認知すると、第３制御信号を前記第１の不揮発性半導体メモリに送信する。前記第１の不揮発性半導体メモリは、前記コントローラから前記第３制御信号を受け取ると、前記第１動作を再開して前記第２サブ動作を実行し、前記コントローラは前記第２サブ動作が実行されたことを認知すると、第４制御信号を前記第２の不揮発性半導体メモリに送信する。前記第２の不揮発性半導体メモリは、前記コントローラから前記第４制御信号を受け取ると、前記第２動作を再開して前記第４サブ動作を実行することを特徴とする。
【図面の簡単な説明】
【０００７】
【図１】プログラムとプログラムベリファイ時のタイミングと消費電流を模式的に示す図である。
【図２】多値ＮＡＮＤ型フラッシュメモリにおけるプログラムとプログラムベリファイのフロー図である。
【図３】第１実施形態のメモリシステムの構成を示すブロック図である。
【図４】第１実施形態のＮＡＮＤ型フラッシュメモリにおける書き込み時のフローチャートである。
【図５】第１実施形態のＮＡＮＤ型フラッシュメモリにおける書き込み時のタイミングチャートである。
【図６】第１実施形態のＮＡＮＤ型フラッシュメモリにおける書き込み時のタイミングチャートを示す第１例である。
【図７】第１実施形態のＮＡＮＤ型フラッシュメモリにおける書き込み時のタイミングチャートを示す第２例である。
【図８】第１実施形態のＮＡＮＤ型フラッシュメモリにおける書き込み時のタイミングチャートを示す第３例である。
【図９】第１実施形態のＮＡＮＤ型フラッシュメモリにおける読み出し時のフローチャートである。
【図１０】第１実施形態のＮＡＮＤ型フラッシュメモリにおける読み出し時のタイミングチャートである。
【図１１】第２実施形態のメモリシステムの構成を示すブロック図である。
【図１２】第２実施形態のＮＡＮＤ型フラッシュメモリにおけるMCMBUSY制御回路の構成を示す回路図である。
【図１３】第２実施形態のＮＡＮＤ型フラッシュメモリにおける書き込み時のフローチャートである。
【図１４】第２実施形態のＮＡＮＤ型フラッシュメモリにおける書き込み時のタイミングチャートである。
【発明を実施するための形態】
【０００８】
実施形態を説明する前に、本出願を提案するに至った経緯について説明する。
【０００９】
複数の不揮発性半導体メモリチップを同時に動作させる場合、消費電流が増大する可能性がある。例えば、複数のＮＡＮＤ型フラッシュメモリチップ（以下、メモリチップ）に対し、同時に書き込みを実行すると、各メモリチップにおいて消費されるピーク電流が重なり、大きな消費電力のピークが発生することが懸念される。なお、以降の説明において、書き込みはプログラムとプログラムベリファイを含むものとする。
【００１０】
図１に、プログラム(図中「program」と表記、以下同様)とプログラムベリファイ(「Verify」)時のタイミングとその際の消費電流を模式的に示す。プログラムもプログラムベリファイも大きく、ワード線／ビット線のセットアップ（Ａ、Ｃ）→書き込みもしくはリード・センス動作→ワード線／ビット線電位のディスチャージ（リカバリ動作）（Ｂ、Ｄ）といった個々の動作に大別される。なお、図１中、Ａは「BL pre-charge」ビット線プリチャージ及び「WL charge」ワード線チャージの意、Ｂは「program pulse」プログラムパルス及び「WL/BL discharge」ワード線／ビット線ディスチャージの意、Ｃは「WL/BL charge」ワード線／ビット線チャージの意、Ｄは「BL isolate ＆ discharge」ビット線のセル電流による放電、「sense」リード・センス動作及び「WL/BL discharge」ワード／ビット線ディスチャージの意を示す。
【００１１】
個々の動作の所要時間は、メモリチップ内部であらかじめ決められたタイマで決まる。メモリチップの消費電流は一定ではなく、ある特定の動作で大きなピーク電流が発生する。
【００１２】
複数のメモリチップで同時に書き込みを実行したときにも、このピーク電流がメモリチップ間で重ならないようにできればよい。例えば、書き込み実行のタイミングをずらすといった方法が考えられるが、実際にはそれだけでは重なりを防ぐのは困難である。以下に、その例を示す。
【００１３】
図２に、多値ＮＡＮＤ型フラッシュメモリにおけるプログラム(「program」)とプログラムベリファイ(「Verify」)のフローを示す。
【００１４】
多値のＮＡＮＤ型フラッシュメモリでは、しきい値電圧のレベルごとにベリファイを行っているが、レベルごとにプログラムが完了すると、以降該当レベルのベリファイは実施する必要はない。ここでは、３つのレベル（Ａ＜Ｂ＜Ｃ）のベリファイを行っている。
【００１５】
また、一般にＮＡＮＤ型フラッシュメモリのメモリセルはしきい値電圧の低いレベルから書き上げて行くので、書き込み開始直後はＢ，Ｃレベルのベリファイをある回数実行しないことも、書き込み性能改善のために行われている。
【００１６】
つまり、メモリチップごとにピーク電流が流れるタイミングは異なり、しかもそのタイミングはメモリセルのセル特性に起因する。このため、ピーク電流が流れるタイミングを制御することは困難である。
【００１７】
他の要因として、ＮＡＮＤ型フラッシュメモリは、コマンド入力を受けてメモリチップ内に備えたオシレータで、例えば１００ｎｓ周期のクロックを生成している。このクロックに同期して制御回路（ステートマシン）が動作する。
【００１８】
タイマ設定が複数のメモリチップで同じ場合でも、このクロック周期にはばらつきが生じる。ＮＡＮＤ型フラッシュメモリの書き込みや読み出し時間は数十μｓ〜数ｍｓであるため、クロック周期のばらつきは決して無視できず、どこかでメモリチップ間のピーク電流が重なる可能性がある。
【００１９】
このように、複数のＮＡＮＤ型フラッシュメモリで同時に書き込みシーケンスが実行されている場合に、それぞれのＮＡＮＤ型フラッシュメモリで発生するピーク電流が重なり、メモリシステムとして非常に大きな消費電流となる懸念があった。このため、メモリシステムはこの最大のピーク電流に対応する電源システムを組み込む必要があった。
【００２０】
そこで、本実施形態では、複数の不揮発性半導体メモリを有するメモリシステムで発生する消費電力のピークを低く抑えることができるメモリシステムを提供する。
【００２１】
以下に、図面を参照して実施形態について説明する。なお、以下の説明において、同一の機能及び構成を有する要素については、同一符号を付し、重複説明は必要な場合にのみ行う。
【００２２】
［１］  第１実施形態
第１実施形態のメモリシステムについて説明する。
【００２３】
図３は、第１実施形態のメモリシステムの構成を示すブロック図である。
【００２４】
図示するように、メモリシステム１０は、複数の不揮発性半導体メモリチップ、例えばＮＡＮＤ型フラッシュメモリチップ（以下、メモリチップ）１０−１，１０−２，１０−３，１０−４、コントローラ２０を備える。コントローラ２０は、メモリチップ１０−１，１０−２，１０−３，１０−４の動作を制御する。
【００２５】
メモリチップの各々は、メモリセルアレイ１１、主制御部１２、ブロック制御回路１３、ロウ制御回路１４、選択回路１５、センスアンプ１６、カラム制御回路１７、データ入出力バッファ１８、入出力制御回路１９を備える。
【００２６】
主制御部１２は、コントローラ２０から出力された制御信号を入出力制御回路１９及びデータ入出力バッファ１８を介して受け取り、制御信号に基づいてブロック制御回路１３、ロウ制御回路１４、選択回路１５、センスアンプ１６及びカラム制御回路１７を制御して、メモリセルアレイ１１に対するデータの書き込み、読み出し及び消去を行う。
【００２７】
ブロック制御回路１３は、メモリセルアレイ１１に含まれるブロックの選択を制御する。ロウ制御回路１４は、メモリセルアレイ１１に対するデータの書き込み、読み出し及び消去時にメモリセルアレイ１１内のワード線に対して印加する電圧の制御を行う。
【００２８】
カラム制御回路１７は、カラムアドレスに基づいてメモリセルアレイ１１内のビット線の選択を制御する。センスアンプ１６は、選択されたビット線に接続されたメモリセルから選択回路１５を介してデータを読み出す。
【００２９】
メモリセルアレイ１１は複数のブロックを備え、ブロックの各々は複数のＮＡＮＤ列を有する。ＮＡＮＤ列の各々は直列に接続された複数のメモリセルを有し、メモリセルの各々は、浮遊ゲートと、浮遊ゲート上にゲート間絶縁膜を介して配置された制御ゲートとを持つ不揮発性のメモリセルトランジスタからなる。
【００３０】
次に、第１実施形態のメモリシステムにおける書き込み時の動作を説明する。ここでは、２個のＮＡＮＤ型フラッシュメモリチップ１０−１，１０−２における書き込み動作を述べるが、メモリチップが３個以上の場合も同様の手法で書き込み動作を行うことができる。
【００３１】
図４は、第１実施形態のＮＡＮＤ型フラッシュメモリチップ１０−１，１０−２における書き込み時のフローチャートである。図５は、第１実施形態における書き込み時のタイミングチャートである。
【００３２】
まず、メモリチップ１０−１，１０−２内の主制御部１２は、コントローラ２０からレジュームコマンドが入力されるまで待機する（(「Wait Resume Command」)ステップＳ１）。主制御部１２は、コントローラ２０からレジュームコマンドを受け取ると、プログラムをスタートさせ（(「Program start」)ステップＳ２）、プログラムを実行する（(「Program」)ステップＳ３）。プログラムは、図５に示すように、ビット線のプリチャージ、ワード線のチャージ、プログラムパルスの印加、及びワード線／ビット線電位のディスチャージといった順序で行われる。
【００３３】
プログラムが終了すると（(「program end」)ステップＳ４）、主制御部１２はメモリチップをサスペンド状態（一時中断状態）とし、再び、コントローラ２０からレジュームコマンドが入力されるまで待機する（(「Wait Resume Command」)ステップＳ５）。
【００３４】
次に、主制御部１２は、レジュームコマンドを受け取ると、プログラムベリファイをスタートさせ（(「Verify start」)ステップＳ６）、プログラムベリファイを実行する（(「Verify」)ステップＳ７）。プログラムベリファイは、図５に示すように、ワード線／ビット線のチャージ、ビット線のセル電流による放電、リード・センス動作、及びワード線／ビット線電位のディスチャージといった順序で行われる。
【００３５】
プログラムベリファイが終了すると（(「Verify end」)ステップＳ８）、主制御部１２はメモリセルに対してベリファイがパスしたか否かを判定する（(「Verify Pass」)ステップＳ９）。ベリファイをパスしているとき、書き込み動作を終了する（(「End」)ステップＳ１０）。
【００３６】
一方、ベリファイをパスしていないとき、主制御部１２はメモリチップをサスペンド状態とし、再び、コントローラ２０からレジュームコマンドが入力されるまで待機する（(「Wait Resume Command」)ステップＳ１１）。そして、主制御部１２は、コントローラ２０からレジュームコマンドを受け取ると、ステップＳ２に戻り、ステップＳ２以降の処理を繰り返す。
【００３７】
図５を用いて、書き込み時の動作を述べる。なお、図５以降の図では、ＮＡＮＤ型フラッシュメモリチップ１０−１をチップ１とし、ＮＡＮＤ型フラッシュメモリチップ１０−２をチップ２とする。チップステータスは、“Ｈ”がレディ状態、“Ｌ”がビジー状態であることを表す。このレディまたはビジーの出力はメモリチップに出力ピンを設けてもよいし、メモリチップからステータスコマンドを出力してもよい。
【００３８】
まず、コントローラ２０は、チップ１がレディ状態であるとき、レジュームコマンド(「Resume」)をチップ１に出力する。チップ１は、レジュームコマンドを受け取ると、プログラム(「program」)をスタートさせる。そして、チップ１は、ビット線のプリチャージ(「BL pre-charge」)を行い、続いてワード線のチャージ(「WL charge」)を行う。ワード線のチャージが終了すると、すなわち高い電流を必要とする期間が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する。
【００３９】
チップ１は、ワード線のチャージが終了した後、続いてプログラムパルスの印加(「program pulse」)、及びワード線／ビット線電位のディスチャージ(「WL/BL discharge」)を行い、プログラムを終了する。プログラムを終了した後、チップ１はサスペンド状態となる。プログラムのうち、ビット線のプリチャージとワード線のチャージを行う期間が高い電流を必要とする期間（高電流期間）であり、プログラムパルスの印加とワード線／ビット線電位のディスチャージを行う期間が低い電流を必要とする期間（低電流期間）である。
【００４０】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する。チップ２は、レジュームコマンドを受け取ると、プログラムをスタートさせる。そして、チップ２は、ビット線のプリチャージを行い、続いてワード線のチャージを行う。このとき、チップ２のこれら高電流期間の動作と並行して、チップ１では、前述したように、低電流期間の動作、すなわちプログラムパルスの印加、及びワード線／ビット線のディスチャージが行われる。ワード線のチャージが終了すると、すなわち高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する。
【００４１】
チップ２は、ワード線のチャージが終了した後、続いてプログラムパルスの印加、及びワード線／ビット線電位のディスチャージを行い、プログラムを終了する。プログラムを終了した後、チップ２はサスペンド状態となる。
【００４２】
コントローラ２０は、チップ２がレディ状態であることを認知すると、レジュームコマンドをチップ１に出力する。チップ１は、レジュームコマンドを受け取ると、プログラムベリファイ(「Verify」)をスタートさせる。そして、チップ１は、ワード線／ビット線のチャージ(「WL/BL charge」)を行う。このとき、チップ１のこの高電流期間の動作と並行して、チップ２では、前述したように、低電流期間の動作、すなわちプログラムパルスの印加、及びワード線／ビット線のディスチャージが行われる。チップ１のワード線／ビット線のチャージが終了すると、すなわち高い電流を必要とする期間が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する。
【００４３】
チップ１は、ワード線／ビット線のチャージが終了した後、続いてビット線のセル電流による放電(「BL isolate ＆ discharge」)、リード・センス動作(「sense」)、及びワード線／ビット線電位のディスチャージ(「WL/BL discharge」)を行い、プログラムベリファイを終了する。プログラムベリファイを終了した後、チップ１はサスペンド状態となる。プログラムベリファイのうち、ワード線／ビット線のチャージを行う期間が高い電流を必要とする期間（高電流期間）であり、ビット線のセル電流による放電、リード・センス動作、及びワード線／ビット線電位のディスチャージを行う期間が低い電流を必要とする期間（低電流期間）である。
【００４４】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する。チップ２は、レジュームコマンドを受け取ると、プログラムベリファイをスタートさせる。そして、チップ２は、ワード線／ビット線のチャージを行う。このとき、チップ２のこの高電流期間の動作と並行して、チップ１では低電流期間の動作、すなわちビット線のセル電流による放電、リード・センス動作、及びワード線／ビット線電位のディスチャージが行われる。チップ２のワード線／ビット線のチャージが終了すると、チップ２はレディ状態であることをコントローラ２０に通知する。
【００４５】
チップ２は、ワード線／ビット線のチャージが終了した後、続いてビット線のセル電流による放電、リード・センス動作、及びワード線／ビット線電位のディスチャージを行い、プログラムベリファイを終了する。プログラムベリファイを終了した後、チップ２はサスペンド状態となる。
【００４６】
このように、ＮＡＮＤ型フラッシュメモリチップは、ピーク電流が発生する動作中はビジー状態となり、ビジー状態を示す信号をコントローラ２０に出力する。そして、次のピーク電流が発生する動作の前に、サスペンド状態に移行してレジュームコマンドの入力を待つ。
【００４７】
コントローラ２０は、メモリチップごとにピーク電流が発生する動作をレディ／ビジーとして把握し、複数のメモリチップ間でビジーが重ならないようにレジュームコマンドを発行することにより、複数のメモリチップ間でピーク電流が発生する動作が重なるのを回避する。すなわち、コントローラ２０は、レジュームコマンドの発行タイミングを制御することにより、各々のメモリチップで発生するピーク電流をずらすことができる。これにより、複数のメモリチップを有するメモリシステムにおいて発生する消費電力のピークを低減することが可能である。
【００４８】
次に、第１実施形態のメモリシステムにおける書き込み時の動作を３つの例を挙げて詳細に説明する。
【００４９】
図６は、第１実施形態のＮＡＮＤ型フラッシュメモリチップ１０−１，１０−２における書き込み時のタイミングチャートを示す第１例である。
【００５０】
この第１例は、プログラムとプログラムベリファイの動作を分離し、レジュームコマンドの入力に応答して、プログラムとプログラムベリファイがそれぞれ動作をスタートするようにしたものである。なお、ピーク電流が流れる高電流期間を“High Icc”、ピーク電流が流れない低電流期間を“Low Icc”で示している。
【００５１】
チップ１，２において、プログラムの高電流期間、プログラムベリファイの高電流期間がそれぞれ重ならないようにする。プログラムベリファイは、しきい値電圧のレベルごとにベリファイを行っており、ここでは３つのレベル（Ａ＜Ｂ＜Ｃ）のベリファイを行うものとする。なお、チップ１におけるプログラムベリファイの高電流期間は、先頭のＡベリファイの高電流期間のみとする。また、チップ２では、Ａベリファイは以前に既にパスしているものとし、チップ２におけるプログラムベリファイの高電流期間は、先頭のＢベリファイの高電流期間のみとする。
【００５２】
以下に、図６に示す書き込み時の動作を詳述する。
【００５３】
まず、コントローラ２０は、チップ１がレディ状態であるとき、レジュームコマンド(「Resume」)をチップ１に出力する（Ｔ１）。チップ１は、レジュームコマンドを受け取ると、プログラム(「Program」)をスタートさせる。そして、チップ１は、ピーク電流が流れる高電流期間（High Icc）の動作を行う。高電流期間が終了すると、すなわち高い電流を消費する動作が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する（Ｔ２）。
【００５４】
チップ１は、高電流期間が終了した後、続いてピーク電流が流れない低電流期間（Low Icc）の動作を行い、プログラムを終了する。プログラムを終了した後、チップ１はサスペンド状態となる。前述したように、プログラムのうち、ビット線のプリチャージとワード線のチャージを行う期間が高電流期間であり、プログラムパルスの印加とワード線／ビット線電位のディスチャージを行う期間が低電流期間である。
【００５５】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する（Ｔ３）。チップ２は、レジュームコマンドを受け取ると、プログラムをスタートさせる。そして、チップ２は、高電流期間の動作を行う。このとき、チップ２の高電流期間の動作と並行して、チップ１では低電流期間の動作が行われる。チップ２の高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する（Ｔ４）。
【００５６】
チップ２は、高電流期間が終了した後、続いて低電流期間の動作を行い、プログラムを終了する。プログラムを終了した後、チップ２はサスペンド状態となる。
【００５７】
コントローラ２０は、チップ２がレディ状態であることを認知すると、レジュームコマンドをチップ１に出力する（Ｔ５）。チップ１は、レジュームコマンドを受け取ると、プログラムベリファイをスタートさせる。そして、チップ１は、Ａベリファイ(「A Verify」)の高電流期間の動作を行う。高電流期間が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する（Ｔ６）。
【００５８】
チップ１は、高電流期間が終了した後、続いて低電流期間の動作を行う、すなわちＡベリファイの低電流期間の動作を行い、さらにＢベリファイ(「B Verify」)、Ｃベリファイ(「C Verify」)を行う。そして、プログラムベリファイを終了する。前述したように、プログラムベリファイのうち、ワード線／ビット線のチャージを行う期間が高い電流を必要とする高電流期間であり、ビット線のセル電流による放電、リード・センス動作、及びワード線／ビット線電位のディスチャージを行う期間が低い電流を必要とする低電流期間である。
【００５９】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する（Ｔ７）。チップ２は、レジュームコマンドを受け取ると、プログラムベリファイをスタートさせる。そして、チップ２は、Ｂベリファイの高電流期間の動作を行う。このとき、チップ２のこの高電流期間の動作と並行して、チップ１では低電流期間の動作が行われる。チップ２の高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する（Ｔ８）。
【００６０】
チップ２は、高電流期間が終了した後、続いて低電流期間の動作を行う、すなわちＢベリファイの低電流期間の動作を行い、さらにＣベリファイを行う。そして、プログラムベリファイを終了する。プログラムベリファイを終了した後、チップ２はサスペンド状態となる。
【００６１】
コントローラ２０は、チップ２がレディ状態であることを認知すると、レジュームコマンドをチップ１に出力する（Ｔ９）。チップ１は、レジュームコマンドを受け取り、かつＣベリファイが終了したとき、次のプログラムをスタートさせる（Ｔ１０）。そして、チップ１は、高電流期間の動作を行う。高電流期間が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する（Ｔ１１）。
【００６２】
チップ１は、高電流期間が終了した後、続いて低電流期間の動作を行い、プログラムを終了する。プログラムを終了した後、チップ１はサスペンド状態となる。
【００６３】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する（Ｔ１２）。チップ２は、レジュームコマンドを受け取ると、プログラムをスタートさせる。そして、チップ２は、高電流期間の動作を行う。高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する（Ｔ１３）。
【００６４】
チップ２は、高電流期間が終了した後、続いて低電流期間の動作を行い、プログラムを終了する。プログラムを終了した後、チップ２はサスペンド状態となる。
【００６５】
以上のような動作が繰り返される。
【００６６】
図７は、第１実施形態のＮＡＮＤ型フラッシュメモリチップ１０−１，１０−２における書き込み時のタイミングチャートを示す第２例である。
【００６７】
第１例では、プログラムとプログラムベリファイの動作を分離し、レジュームコマンドの入力によってプログラムとプログラムベリファイの動作をそれぞれスタートさせた。この第２例では、プログラムとプログラムベリファイを連続して行われる１つのシーケンスとし、レジュームコマンドの入力に応答して、プログラムとプログラムベリファイの動作が連続して実行される。
【００６８】
チップ１，２において、プログラムの高電流期間（High Icc）のみが重ならないようにする。すなわち、プログラムの先頭のピーク電流が流れる動作が、チップ１とチップ２とで重ならないようにする。プログラムベリファイは、しきい値電圧のレベルごとにベリファイを行っており、ここでは３つのレベル（Ａ＜Ｂ＜Ｃ）のベリファイを行うものとする。なお、チップ１，２におけるプログラムベリファイの高電流期間（High Icc）は、プログラムの高電流期間（High Icc）に比べてピーク電流が少ないものとする。このため、プログラムベリファイの高電流期間は、完全にずれなくてもよい。また、チップ２では、Ａベリファイは以前に既にパスしているものとする。
【００６９】
以下に、図７に示す書き込み時の動作を詳述する。
【００７０】
まず、コントローラ２０は、チップ１がレディ状態であるとき、レジュームコマンド(「Resume」)をチップ１に出力する（Ｔ２１）。チップ１は、レジュームコマンドを受け取ると、プログラム(「Program」)をスタートさせる。そして、チップ１は、ピーク電流が流れる高電流期間（High Icc）の動作を行う。高電流期間が終了すると、すなわち高い電流を消費する動作が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する（Ｔ２２）。
【００７１】
チップ１は、高電流期間が終了した後、続いてピーク電流が流れない低電流期間（Low Icc）の動作を行い、プログラムを終了する。さらに、プログラムを終了した後、プログラムベリファイをスタートさせる。そして、チップ１は、Ａベリファイ(「A Verify」)、Ｂベリファイ(「B Verify」)、Ｃベリファイ(「C Verify」)を行う。
【００７２】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する（Ｔ２３）。チップ２は、レジュームコマンドを受け取ると、プログラムをスタートさせる。そして、チップ２は、高電流期間の動作を行う。このとき、チップ２の高電流期間の動作と並行して、チップ１では、前述したように、低電流期間の動作が行われる。チップ２の高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する（Ｔ２４）。
【００７３】
チップ２は、高電流期間が終了した後、続いて低電流期間の動作を行い、プログラムを終了する。さらに、プログラムを終了した後、プログラムベリファイをスタートさせる。そして、チップ１は、Ｂベリファイ、Ｃベリファイを行う。プログラムベリファイを終了した後、チップ２はサスペンド状態となる。
【００７４】
コントローラ２０は、チップ２がレディ状態であることを認知すると、レジュームコマンドをチップ１に出力する（Ｔ２５）。チップ１は、レジュームコマンドを受け取り、かつＣベリファイが終了したとき、次のプログラムをスタートさせる（Ｔ２６）。そして、チップ１は、高電流期間の動作を行う。高電流期間が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する（Ｔ２７）。
【００７５】
チップ１は、高電流期間が終了した後、続いて低電流期間の動作を行い、プログラムを終了する。さらに、プログラムを終了した後、プログラムベリファイをスタートさせる。
【００７６】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する（Ｔ２８）。チップ２は、レジュームコマンドを受け取ると、プログラムをスタートさせる。そして、チップ２は、高電流期間の動作を行う。高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する（Ｔ２９）。
【００７７】
チップ２は、高電流期間が終了した後、続いて低電流期間の動作を行い、プログラムを終了する。さらに、プログラムを終了した後、プログラムベリファイをスタートさせる。
【００７８】
以上のような動作が繰り返される。
【００７９】
図８は、第１実施形態のＮＡＮＤ型フラッシュメモリチップ１０−１，１０−２における書き込み時のタイミングチャートを示す第３例である。
【００８０】
この第３例では、プログラム、プログラムベリファイにおけるＡベリファイ、Ｂベリファイ、Ｃベリファイの動作をそれぞれ分離し、レジュームコマンドの入力に応答して、プログラム、Ａベリファイ、Ｂベリファイ、Ｃベリファイの動作をそれぞれスタートさせる。
【００８１】
チップ１，２において、プログラムの高電流期間、プログラムベリファイの高電流期間がそれぞれ重ならないようにする。プログラムベリファイは、しきい値電圧のレベルごとにベリファイを行っており、ここでは３つのレベル（Ａ＜Ｂ＜Ｃ）のベリファイを行う。なお、チップ１におけるプログラムベリファイの高電流期間は、Ａベリファイ、Ｂベリファイ、Ｃベリファイにそれぞれ存在するものとする。また、チップ２では、Ａベリファイは以前に既にパスしており、チップ２におけるプログラムベリファイの高電流期間は、Ｂベリファイ、Ｃベリファイにそれぞれ存在するものとする。
【００８２】
以下に、図８に示す書き込み時の動作を詳述する。
【００８３】
まず、コントローラ２０は、チップ１がレディ状態であるとき、レジュームコマンド(「Resume」)をチップ１に出力する（Ｔ３１）。チップ１は、レジュームコマンドを受け取ると、プログラム(「Program」)をスタートさせる。そして、チップ１は、ピーク電流が流れる高電流期間（High Icc）の動作を行う。高電流期間が終了すると、すなわち高い電流を消費する動作が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する（Ｔ３２）。
【００８４】
チップ１は、高電流期間が終了した後、続いてピーク電流が流れない低電流期間（Low Icc）の動作を行い、プログラムを終了する。プログラムを終了した後、チップ１はサスペンド状態となる。
【００８５】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する（Ｔ３３）。チップ２は、レジュームコマンドを受け取ると、プログラムをスタートさせる。そして、チップ２は、高電流期間の動作を行う。このとき、チップ２の高電流期間の動作と並行して、チップ１では、前述したように、低電流期間の動作が行われる。チップ２の高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する（Ｔ３４）。
【００８６】
チップ２は、高電流期間が終了した後、続いて低電流期間の動作を行い、プログラムを終了する。プログラムを終了した後、チップ２はサスペンド状態となる。
【００８７】
コントローラ２０は、チップ２がレディ状態であることを認知すると、レジュームコマンドをチップ１に出力する（Ｔ３５）。チップ１は、レジュームコマンドを受け取ると、プログラムベリファイをスタートさせる。そして、チップ１は、Ａベリファイ(「A Verify」)の高電流期間の動作を行う。高電流期間が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する（Ｔ３６）。
【００８８】
チップ１は、高電流期間が終了した後、続いてＡベリファイの低電流期間の動作を行い、Ａベリファイを終了する。Ａベリファイを終了した後、チップ１はサスペンド状態となる。
【００８９】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する（Ｔ３７）。チップ２は、レジュームコマンドを受け取ると、プログラムベリファイをスタートさせる。そして、チップ２は、Ｂベリファイ(「B Verify」)の高電流期間の動作を行う。このとき、チップ２のこの高電流期間の動作と並行して、チップ１では、前述したように、低電流期間の動作が行われる。チップ２の高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する（Ｔ３８）。
【００９０】
チップ２は、高電流期間が終了した後、続いてＢベリファイの低電流期間の動作を行い、Ｂベリファイを終了する。Ｂベリファイを終了した後、チップ２はサスペンド状態となる。
【００９１】
コントローラ２０は、チップ２がレディ状態であることを認知すると、レジュームコマンドをチップ１に出力する（Ｔ３９）。チップ１は、レジュームコマンドを受け取ると、Ｂベリファイをスタートさせる。そして、チップ１は、Ｂベリファイの高電流期間の動作を行う。高電流期間が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する（Ｔ４０）。
【００９２】
チップ１は、高電流期間が終了した後、続いてＢベリファイの低電流期間の動作を行い、Ｂベリファイを終了する。Ｂベリファイを終了した後、チップ１はサスペンド状態となる。
【００９３】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する（Ｔ４１）。チップ２は、レジュームコマンドを受け取ると、Ｃベリファイ(「C Verify」)をスタートさせる。そして、チップ２は、Ｃベリファイの高電流期間の動作を行う。このとき、チップ２のこの高電流期間の動作と並行して、チップ１では、前述したように、低電流期間の動作が行われる。チップ２の高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する（Ｔ４２）。
【００９４】
チップ２は、高電流期間が終了した後、続いてＣベリファイの低電流期間の動作を行い、Ｃベリファイを終了する。Ｃベリファイを終了した後、チップ２はサスペンド状態となる。
【００９５】
コントローラ２０は、チップ２がレディ状態であることを認知すると、レジュームコマンドをチップ１に出力する（Ｔ４３）。チップ１は、レジュームコマンドを受け取ると、Ｃベリファイをスタートさせる。そして、チップ１は、Ｃベリファイの高電流期間の動作を行う。高電流期間が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する（Ｔ４４）。
【００９６】
チップ１は、高電流期間が終了した後、続いてＣベリファイの低電流期間の動作を行い、Ｃベリファイを終了する。Ｃベリファイを終了した後、チップ１はサスペンド状態となる。
【００９７】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する（Ｔ４５）。チップ２は、レジュームコマンドを受け取ると、次のプログラムをスタートさせる。そして、チップ２は、高電流期間の動作を行う。このとき、チップ２の高電流期間の動作と並行して、チップ１では、前述したように、低電流期間の動作が行われる。チップ２の高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する（Ｔ４６）。
【００９８】
チップ２は、高電流期間が終了した後、続いてプログラムの低電流期間の動作を行い、プログラムを終了する。プログラムを終了した後、チップ２はサスペンド状態となる。
【００９９】
以上のような動作が繰り返される。
【０１００】
次に、第１実施形態のメモリシステムにおける読み出し時の動作を詳細に説明する。
【０１０１】
図９は、第１実施形態のＮＡＮＤ型フラッシュメモリチップ１０−１，１０−２における読み出し時のフローチャートである。図１０は、ＮＡＮＤ型フラッシュメモリチップ１０−１，１０−２における読み出し時のタイミングチャートである。
【０１０２】
隣接するワード線ＷＬｎとワード線ＷＬｎ＋１の干渉を補正する読み出しにおいて、ワード線ＷＬｎ＋１における読み出しを行った後にワード線ＷＬｎにおける読み出しを行い、ワード線ＷＬｎ＋１の読み出し結果に応じてワード線ＷＬｎの読み出しを補正する。なお、ｎは１以上の自然数を表す。前記読み出しは、しきい値電圧のレベルごとに読み出しを行っており、ここでは３つのレベル（Ａ＜Ｂ＜Ｃ）の読み出しを行うものとする。
【０１０３】
図９に示すように、メモリチップ１０−１，１０−２内の主制御部１２は、読み出し動作をスタートすると（ステップＳ２１）、まず、ワード線ＷＬｎ＋１に接続されたメモリセルに対してしきい値電圧Ａ，Ｂ，Ｃの読み出しを行う（ステップＳ２２）。続いて、主制御部１２は、ワード線ＷＬｎ＋１で読み出したページが、下位(Lower)ページか上位(Upper)ページかを判定する（ステップＳ２３）。
【０１０４】
ワード線ＷＬｎ＋１で読み出したページが上位ページのとき、主制御部１２は、ワード線ＷＬｎに接続されたメモリセルに対してしきい値電圧Ａ，Ｃの読み出しを行い（ステップＳ２４）、読み出し動作を終了する（ステップＳ２５）。一方、ワード線ＷＬｎ＋１で読み出したページが下位ページのとき、主制御部１２は、ワード線ＷＬｎに接続されたメモリセルに対してしきい値電圧Ｂの読み出しを行う（ステップＳ２６）。その後、読み出し動作を終了する（ステップＳ２５）。
【０１０５】
次に、図１０を用いて読み出し時の動作を述べる。
【０１０６】
この例は、ワード線ＷＬｎ＋１とワード線ＷＬｎにおける読み出し動作を分離し、レジュームコマンドの入力に応答して、ワード線ＷＬｎ＋１とワード線ＷＬｎにおける読み出し動作がそれぞれスタートするようにしたものである。なお同様に、ピーク電流が流れる高電流期間を“High Icc”、ピーク電流が流れない低電流期間を“Low Icc”で示している。
【０１０７】
チップ１，２において、ワード線ＷＬｎ＋１における読み出し時の高電流期間と、ワード線ＷＬｎにおける読み出し時の高電流期間がそれぞれ重ならないようにする。なお、チップ１では、ワード線ＷＬｎ＋１で読み出したページが上位ページであり、ワード線ＷＬｎにおける読み出し時の高電流期間は、先頭のＡの読み出し時の高電流期間のみとする。また、チップ２では、ワード線ＷＬｎ＋１で読み出したページが下位ページであり、ワード線ＷＬｎにおける読み出し時の高電流期間は、先頭のＢの読み出し時の高電流期間のみとする。
【０１０８】
まず、コントローラ２０は、チップ１がレディ状態であるとき、リードコマンド(「Read Command」)をチップ１に出力する（Ｔ５１）。チップ１は、リードコマンドを受け取ると、ワード線ＷＬｎ＋１における読み出し動作をスタートさせる。そして、チップ１は、ピーク電流が流れる高電流期間（High Icc）の動作を行う。高電流期間が終了すると、すなわち高い電流を消費する動作が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する（Ｔ５２）。
【０１０９】
チップ１は、高電流期間が終了した後、続いてピーク電流が流れない低電流期間（Low Icc）の動作を行い、ワード線ＷＬｎ＋１における読み出し動作を終了する。読み出し動作を終了した後、チップ１はサスペンド状態となる。
【０１１０】
コントローラ２０は、チップ１がレディ状態であることを認知すると、リードコマンドをチップ２に出力する（Ｔ５３）。チップ２は、リードコマンドを受け取ると、ワード線ＷＬｎ＋１における読み出し動作をスタートさせる。そして、チップ２は、高電流期間の動作を行う。このとき、チップ２の高電流期間の動作と並行して、チップ１では、前述したように、低電流期間の動作が行われる。チップ２の高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する（Ｔ５４）。
【０１１１】
チップ２は、高電流期間が終了した後、続いて低電流期間の動作を行い、ワード線ＷＬｎ＋１における読み出し動作を終了する。読み出し動作を終了した後、チップ２はサスペンド状態となる。
【０１１２】
コントローラ２０は、チップ２がレディ状態であることを認知すると、レジュームコマンド(「Resume」)をチップ１に出力する（Ｔ５５）。チップ１は、レジュームコマンドを受け取ると、ワード線ＷＬｎにおけるＡの読み出しをスタートさせる。そして、チップ１は、Ａの読み出しの高電流期間の動作を行う。高電流期間が終了すると、チップ１はレディ状態であることをコントローラ２０に通知する（Ｔ５６）。
【０１１３】
チップ１は、高電流期間が終了した後、続いて低電流期間の動作を行う、すなわちＡの読み出しの低電流期間の動作を行い、さらにＣの読み出しを行う。そして、ワード線ＷＬｎにおける読み出し動作を終了する。読み出し動作を終了した後、チップ１はサスペンド状態となる。
【０１１４】
コントローラ２０は、チップ１がレディ状態であることを認知すると、レジュームコマンドをチップ２に出力する（Ｔ５７）。チップ２は、レジュームコマンドを受け取ると、ワード線ＷＬｎにおけるＢの読み出しをスタートさせる。そして、チップ２は、Ｂの読み出しの高電流期間の動作を行う。このとき、チップ２のこの高電流期間の動作と並行して、チップ１では低電流期間の動作が行われる。高電流期間が終了すると、チップ２はレディ状態であることをコントローラ２０に通知する（Ｔ５８）。
【０１１５】
チップ２は、高電流期間が終了した後、続いて低電流期間の動作を行う、すなわちＢの読み出しの低電流期間の動作を行う。そして、ワード線ＷＬｎにおける読み出し動作を終了する。読み出し動作を終了した後、チップ２はサスペンド状態となる。
【０１１６】
以上のような動作が繰り返される。
【０１１７】
以上説明したように第１実施形態では、ＮＡＮＤ型フラッシュメモリチップの各々は、ピーク電流が発生する動作中はビジー状態となり、ビジーを示す信号をコントローラ２０に出力し、ピーク電流が発生しない動作中はレディ状態となり、レディを示す信号をコントローラ２０に出力する。すなわち、メモリチップはピーク電流が発生する動作中はビジー状態となり、ビジー状態が終了するとレディ状態に移行し、次のピーク電流が発生する動作の前にサスペンド状態に移行して、レジュームコマンドの入力を待つ。
【０１１８】
コントローラ２０は、メモリチップごとに、ピーク電流が発生しない動作をレディとして、またピーク電流が発生する動作をビジーとして把握し、メモリチップ間でビジーが重ならないように、レジュームコマンドを発行して複数のメモリチップ間でピーク電流が発生する動作の重なりを回避する。すなわち、コントローラ２０は、レジュームコマンドの発行タイミングを制御することにより、各々のメモリチップでピーク電流が発生する期間をずらすことができる。これにより、複数のメモリチップを有するメモリシステムにおいて発生する消費電力のピークを低減することが可能である。
【０１１９】
なお、第１実施形態では、書き込み及び読み出しの動作の一例について説明したが、その他の書き込み及び読み出しや、消去についても同様に適用可能である。また、２個のＮＡＮＤ型フラッシュメモリチップにおける書き込み及び読み出しの動作を述べたが、メモリチップが３個以上の場合も同様の手法で動作させることができる。
【０１２０】
さらに、例えば、書き込み動作においてメモリチップがレディ状態のときに、別のメモリチップで読み出し動作を実行したり、コントローラ側でピーク電流が発生する動作（例えば、ＥＣＣのエラー訂正など）を実行することも可能である。
【０１２１】
［２］  第２実施形態
次に、第２実施形態のメモリシステムについて説明する。
【０１２２】
前述した第１実施形態では複数のメモリチップを制御するコントローラを備え、コントローラからレジュームコマンドを各々のメモリチップに出力することにより、各々のメモリチップにおいてピーク電流が発生する動作が重ならないようにした。この第２実施形態では、複数のメモリチップがレディ状態になったときに、複数のメモリチップの各々が異なる待機時間を空けてピーク電流が発生する動作をそれぞれスタートさせる。これにより、複数のメモリチップ間でピーク電流が発生する動作が重ならないようにする。
【０１２３】
図１１は、第２実施形態のメモリシステムの構成を示すブロック図である。
【０１２４】
図示するように、メモリシステム３０は、複数の半導体メモリチップ３０−ｎ（ｎは１以上の自然数）、例えばＮＡＮＤ型フラッシュメモリチップ（メモリチップ）３０−１、３０−２を備える。
【０１２５】
メモリチップ３０−ｎは、メモリセルアレイ３１、ロウデコーダ３２、センスアンプ３３、MCMBUSY制御回路３４−ｎ、チップアドレスレジスタ３５−ｎ、内部電源生成回路３６、アドレス／データ制御回路３７、制御回路３８、及び入出力インターフェース３９を備える。
【０１２６】
複数のメモリチップ３０−ｎのMCMBUSY制御回路３４−ｎには出力パッド（あるいはピン）がそれぞれ設けられ、複数のメモリチップ間で出力ピンが接続されている。そして、複数のメモリチップのMCMBUSY制御回路３４−ｎ間において、ビジー信号MCMBUSYが共有されている。
【０１２７】
また、複数のメモリチップ３０−ｎは、メモリチップ毎にチップアドレスレジスタ３５−ｎを有している。チップアドレスレジスタには、そのメモリチップを識別するためのチップアドレスが記憶されている、すなわちメモリチップ毎にユニークなアドレスが割り付けられている。割り付け手段としては、フラッシュメモリによく用いられるＲＯＭヒューズに記憶する方法、あるいはチップアドレスパッドを用意し、そのパッドへのボンディング時にメモリチップ毎に電源電圧Ｖccもしくは接地電圧Ｖssへの接続パターンを変えて、ユニークなチップアドレスを定義する方法などがある。
【０１２８】
制御回路３８は、MCMBUSY制御回路３４−ｎ、内部電源生成回路３６、アドレス／データ制御回路３７、入出力インターフェース３９の動作を制御する。内部電源生成回路３６は、メモリチップ内で用いられる電圧を生成する。アドレス／データ制御回路３７は、アドレス及びデータなどの信号を制御回路３８、ロウデコーダ３２、及びセンスアンプに入出力する。入出力インターフェース３９は、外部と制御回路３８及びアドレス／データ制御回路３７との間のインターフェース処理を行う。
【０１２９】
ロウデコーダ３２は、ロウアドレスに基づいてメモリセルアレイ３１内のワード線を選択する。センスアンプ３３は、選択されたビット線に接続されたメモリセルからデータを読み出す。
【０１３０】
メモリセルアレイ３１は複数のブロックを備え、ブロックの各々は複数のＮＡＮＤ列を有する。ＮＡＮＤ列の各々は直列に接続された複数のメモリセルを有し、メモリセルの各々は、浮遊ゲートと、浮遊ゲート上にゲート間絶縁膜を介して配置された制御ゲートとを持つ不揮発性のメモリセルトランジスタからなる。
【０１３１】
次に、メモリチップ３０−ｎ内のMCMBUSY制御回路３４−ｎについて説明する。
【０１３２】
図１２は、第２実施形態におけるMCMBUSY制御回路の構成を示す回路図である。
【０１３３】
図示するように、出力パッドＴＯは、プルアップ抵抗Ｒ１及びｐチャネルＭＯＳトランジスタＴＲ１を介して電源電圧Ｖccに接続されている。また、出力パッドＴＯは、ｎチャネルＭＯＳトランジスタＴＲ２を介して基準電圧（例えば、接地電圧）Ｖssに接続されている。さらに、出力パッドＴＯは入力バッファ、例えばインバータＩＶ１に接続されている。
【０１３４】
トランジスタＴＲ２のゲートにはインバータＩＶ２が接続され、インバータＩＶ２の入力端子にはチップビジー信号CHIPBUSYｎが入力される。トランジスタＴＲ１のゲートには、イネーブル信号ENABLEｎが入力される。
【０１３５】
ビジー信号MCMBUSYは出力パッドＴＯから出力され、インバータＩＶ１の出力端子から制御信号ALLREADYｎが制御回路３８に出力される。ビジー信号MCMBUSYは、複数のメモリチップ３０−ｎ間で共有されており、メモリチップ３０−ｎ内でいずれかのメモリチップがピーク電流を発生する高電流期間にあるとき“Ｌ”となり、全メモリチップがピーク電流を発生しない低電流期間のとき、“Ｈ”となる。ビジー信号MCMBUSYは、入力バッファを介して制御信号ALLREADYｎ（レジュームトリガ信号）として、各メモリチップ３０−ｎの制御回路３８に入力される。
【０１３６】
チップビジー信号CHIPBUSYｎは、メモリチップ３０−ｎがピーク電流を発生する高電流期間にあるとき“Ｌ”となり、ピーク電流を発生しない低電流期間のとき“Ｈ”となる。すなわち、チップビジー信号CHIPBUSYｎは、メモリチップ３０−ｎ間においてずらしたい動作中に“Ｌ”となる。
【０１３７】
次に、第２実施形態のメモリシステムにおける書き込み時の動作を説明する。ここでは、２個のＮＡＮＤ型フラッシュメモリチップ３０−１，３０−２における書き込み動作を述べるが、メモリチップが３個以上の場合も同様の手法で書き込み動作を行うことができる。
【０１３８】
図１３は、第２実施形態のＮＡＮＤ型フラッシュメモリチップ３０−１，３０−２における書き込み時のフローチャートである。図１４は、第２実施形態における書き込み時のタイミングチャートである。
【０１３９】
メモリチップ３０−１内の制御回路３８は、全てのメモリチップ３０−１，３０−２がピーク電流を発生しない低電流期間（レディ状態）となり、レジュームトリガ信号として制御信号ALLREADYｎが入力されるまで待機する（(「Wait Resume signal」)ステップＳ２１）。制御回路３８は、レジュームトリガ信号を受け取ると、メモリチップ３０−１に設定された待機時間が経過するのを待つ（(「Wait chip-dependent time」)ステップＳ２２）。そして、待機時間が経過すると、制御回路３８はプログラムをスタートさせ（(「Program start」)ステップＳ２３）、プログラムを実行する（(「program」)ステップＳ２４）。プログラムは、図１４に示すように、ビット線のプリチャージ、ワード線のチャージ、プログラムパルスの印加、及びワード線／ビット線電位のディスチャージといった順序で行われる。
【０１４０】
プログラムが終了すると（(「Program end」)ステップＳ２５）、メモリチップ３０−１はサスペンド状態になり、レジュームトリガ信号が入力されるまで待機する（(「Wait Resume signal」)ステップＳ２６）。制御回路３８は、レジュームトリガ信号を受け取ると、メモリチップ３０−１に設定された待機時間が経過するのを待つ（(「Wait chip-dependent time」)ステップＳ２７）。そして、待機時間が経過すると、制御回路３８はプログラムベリファイをスタートさせ（(「Verify Start」)ステップＳ２８）、プログラムベリファイを実行する（(「Verify」)ステップＳ２９）。
【０１４１】
プログラムベリファイが終了すると（(「Verify end」)ステップＳ３０）、制御回路３８はメモリセルに対してベリファイがパスしたか否かを判定する（(「Verify Pass」)ステップＳ３１）。ベリファイをパスしているとき、書き込み動作を終了する（(「End」)ステップＳ３２）。
【０１４２】
一方、ベリファイをパスしていないとき、制御回路３８はメモリチップ３０−１をサスペンド状態とし、再び、レジュームトリガ信号が入力されるまで待機する（(「Wait Resume signal」)ステップＳ３３）。制御回路３８は、レジュームトリガ信号を受け取ると、メモリチップ３０−１に設定された待機時間が経過するのを待つ（(「Wait chip-dependent time」)ステップＳ３４）。そして、待機時間が経過すると、制御回路３８はステップＳ２３に戻り、ステップＳ２３以降の処理を繰り返す。
【０１４３】
図１４を用いて、書き込み時の動作を説明する。なお、ＮＡＮＤ型フラッシュメモリチップ３０−１をチップ１とし、ＮＡＮＤ型フラッシュメモリチップ３０−２をチップ２とする。
【０１４４】
ビジー信号MCMBUSYは、チップ１，２間で共有されており、チップ１，２のうち少なくともいずれかのチップがピーク電流を発生する高電流期間にあるとき“Ｌ”となり、チップ１，２が共にピーク電流を発生しない低電流期間のとき、“Ｈ”となる。ビジー信号MCMBUSYは、入力バッファを介して制御信号ALLREADYｎとして、チップ１，２の制御回路３８に入力される。
【０１４５】
チップビジー信号CHIPBUSYｎは、チップがピーク電流を発生する高電流期間にあるとき“Ｌ”となり、ピーク電流を発生しない低電流期間のとき“Ｈ”となる。すなわち、チップビジー信号CHIPBUSYｎは、チップ１，２間においてずらしたい動作中に“Ｌ”となる。
【０１４６】
まず、チップ１，２がピーク電流を発生しない低電流期間のとき、信号MCMBUSYが“Ｈ”となる。チップ１は、信号MCMBUSYが“Ｈ”になると、チップ１に設定された待機時間Ｔ１だけ待ち、プログラムをスタートする。
【０１４７】
プログラムでは、ビット線のプリチャージ、ワード線のチャージ、プログラムパルスの印加、及びワード線／ビット線電位のディスチャージといった順序で行われる。ここで、ビット線のプリチャージとワード線のチャージが行われている高電流期間に、チップビジー信号CHIPBUSY１が“Ｌ”となり、ワード線のチャージが終了すると、すなわち高電流期間が終了すると、チップ１のチップビジー信号CHIPBUSY１が“Ｈ”となる。
【０１４８】
チップ２は、信号MCMBUSYが“Ｈ”になると、チップ２に設定された待機時間Ｔ２だけ待ち、プログラムをスタートする。ビット線のプリチャージとワード線のチャージが行われている高電流期間に、チップ２のチップビジー信号CHIPBUSY２が“Ｌ”となり、ワード線のチャージが終了すると、すなわち高電流期間が終了すると、チップビジー信号CHIPBUSY２が“Ｈ”となる。
【０１４９】
ここで、待機時間Ｔ２は、チップ１においてピーク電流を発生する高電流期間が終了するのに必要な時間に設定されている。このため、チップ２は、待機時間Ｔ２が経過した後にプログラムをスタートすることにより、チップ１，２においてピーク電流が発生する期間が重なるのを防止することができる。
【０１５０】
すなわち、ビジー信号MCMBUSYが“Ｈ”になってからプログラムをスタートさせるまでの待ち時間がメモリチップ毎に設定されており、各メモリチップはビジー信号MCMBUSYが“Ｈ”になってから、設定された所定の待機時間が経過するのを待ち、待機時間の経過後にそれぞれプログラムをスタートさせる。これにより、ピーク電流が発生する動作が各メモリチップ間で重なるのを回避することができる。
【０１５１】
第２実施形態では、各メモリチップの制御回路は、第１実施形態と同様に、ピーク電流が発生する動作の直前でサスペンド状態に移行する。そして、全メモリチップがピーク電流を発生しない期間になったとき、つまり信号ALLREADYｎ（レジュームトリガ信号）が“Ｌ”になったとき、これをトリガとして各メモリチップが書き込み動作を再開する。このとき、各メモリチップはチップ毎に設定された待機時間を持っている。この待機時間は、メモリチップ毎に異なるタイマで定義され、チップアドレスごとに異なっている。これにより、各メモリチップに設定された待機時間によって、動作開始時間をずらすことができ、複数のメモリチップ間でピーク電流が発生する期間をずらすことが可能である。
【０１５２】
以上説明したように実施形態によれば、複数の不揮発性半導体メモリを有するメモリシステムにおいて発生する消費電力のピークを低く抑えることができる。
【０１５３】
実施形態では、書き込み動作と読み出し動作について、ピーク電流が重ならない制御について説明したが、消去動作についても同様の制御が可能である。また、チップ間で書き込みと書き込み、あるいは読み出しと読み出しの同種動作を行う場合だけでなく、チップ１で書き込み動作、チップ２で読み出し動作のような異種動作を行う場合にもピーク電流をずらすことが可能である。
【０１５４】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１５５】
１０…メモリシステム、１０−１，１０−２，１０−３，１０−４…ＮＡＮＤ型フラッシュメモリチップ（メモリチップ）、１１…メモリセルアレイ、１２…主制御部、１３…ブロック制御回路、１４…ロウ制御回路、１５…選択回路、１６…センスアンプ、１７…カラム制御回路、１８…データ入出力バッファ、１９…入出力制御回路、２０…コントローラ、３０…メモリシステム、３０−１，３０−２，３０−ｎ…ＮＡＮＤ型フラッシュメモリチップ（メモリチップ）、３１…メモリセルアレイ、３２…ロウデコーダ、３３…センスアンプ、３４−１，３４−２，３４−ｎ…MCMBUSY制御回路、３５−１，３５−２，３５−ｎ…チップアドレスレジスタ、３６…内部電源生成回路、３７…アドレス／データ制御回路、３８…制御回路、３９…入出力インターフェース。
【図１】
2012058860.tif 000003
【図２】
2012058860.tif 000004
【図３】
2012058860.tif 000005
【図４】
2012058860.tif 000006
【図５】
2012058860.tif 000007
【図６】
2012058860.tif 000008
【図７】
2012058860.tif 000009
【図８】
2012058860.tif 000010
【図９】
2012058860.tif 000011
【図１０】
2012058860.tif 000012
【図１１】
2012058860.tif 000013
【図１２】
2012058860.tif 000014
【図１３】
2012058860.tif 000015
【図１４】
2012058860.tif 000016