(57)【要約】      （修正有）【課題】半導体記憶装置のリード性能を向上させる。【解決手段】半導体記憶装置１は、複数のメモリセルが接続されたワード線と、メモリセルからリードしたデータを一時的に格納するバッファと、を含み、１つのワード線に接続されたすべてのメモリセルからリードしたデータをバッファに格納する第１リード動作と、１つのワード線に接続された一部のメモリセルからリードしたデータをバッファに格納する第２リード動作とのいずれかの動作を行う不揮発性半導体メモリを具備する。また、リード対象のデータが、１つの第２リード動作でリードできる場合には第２リード動作をするように不揮発性半導体メモリに要求し、リード対象のデータが、複数の第２リード動作でリードできない場合には第１リード動作をするように不揮発性半導体メモリに要求するメモリコントローラを具備する。【選択図】図１
2018120305.tif 000002
【特許請求の範囲】
【請求項１】
複数のメモリセルが接続されたワード線と、
前記メモリセルからリードしたデータを一時的に格納するバッファと、
を含み、
１つの前記ワード線に接続されたすべての前記メモリセルからリードしたデータを前記バ
ッファに格納する第１リード動作と、
１つの前記ワード線に接続された一部の前記メモリセルからリードしたデータを前記バッ
ファに格納する第２リード動作とのいずれかの動作を行う
不揮発性半導体メモリと、
リード対象のデータが、１つの前記第２リード動作でリードできる場合には、
前記第２リード動作をするように前記不揮発性半導体メモリに要求し、
リード対象のデータが、複数の前記第２リード動作でリードできない場合には、
前記第１リード動作をするように前記不揮発性半導体メモリに要求する
メモリコントローラと、
を具備する半導体記憶装置。
【請求項２】
前記不揮発性半導体メモリは、
前記バッファに格納したデータを、１つの前記第２リード動作でリードされるデータのサ
イズよりも小さい第１管理サイズごとに、
前記メモリコントローラへ出力する
請求項１に記載の半導体記憶装置。
【請求項３】
前記メモリコントローラは、
リード対象のデータが、複数の前記第１管理サイズにまたがっている場合に、
前記第１リード動作をするように前記不揮発性半導体メモリに要求する
請求項２に記載の半導体記憶装置。
【請求項４】
前記不揮発性半導体メモリは、
前記第２リード動作によって、１つの前記ワード線に接続された前記メモリセルのうち、
半数の前記メモリセルからデータをリードする
請求項１に記載の半導体記憶装置。
【請求項５】
前記不揮発性半導体メモリは、
前記第１リード動作と前記第２リード動作を、
同一のカラムアドレスによって指定されるメモリセルから開始する
請求項１に記載の半導体記憶装置。
【請求項６】
前記メモリコントローラは、
複数のリード対象のデータのそれぞれが１つの前記第２リード動作でリードできるととも
に、
前記複数のリード対象のデータのすべてが１つの前記第１リード動作でもリードできる場
合には、
前記第１リード動作をするように前記不揮発性半導体メモリに要求する
請求項１に記載の半導体記憶装置。
【請求項７】
前記不揮発性半導体メモリは、
複数の前記ワード線に接続されたすべての前記メモリセルからリードしたデータを前記バ
ッファに格納する第３リード動作をさらに行い、
前記メモリコントローラは、
複数のリード対象のデータのそれぞれが１つの前記第１リード動作または前記第２リード
動作でリードできるとともに、
前記複数のリード対象のデータのすべてが１つの前記第３リード動作でもリードできる場
合には、
前記第３リード動作をするように前記不揮発性半導体メモリに要求する
請求項１に記載の半導体記憶装置。
【請求項８】
前記不揮発性半導体メモリは、
前記第２リード動作による前記メモリセルから前記バッファへのデータの格納を、
前記第１リード動作による前記メモリセルから前記バッファへのデータの格納よりも高速
に行う
請求項１に記載の半導体記憶装置。
【請求項９】
前記メモリコントローラは、
前記不揮発性半導体メモリに第１のコマンドを発行することにより前記第１リード動作を
要求し、
前記不揮発性半導体メモリに前記第１のコマンドと異なる第２のコマンドを発行すること
により前記第２リード動作を要求する
請求項１に記載の半導体記憶装置。
【請求項１０】
前記メモリコントローラは、
前記不揮発性半導体メモリに第３のコマンドを発行することにより、前記第１リード動作
と前記第２リード動作との切り替えを要求する
請求項１に記載の半導体記憶装置。
【請求項１１】
複数のメモリセルが接続されたワード線と、
前記メモリセルからリードしたデータを一時的に格納するバッファと、
を含み、
１つの前記ワード線に接続されたすべての前記メモリセルからリードしたデータを前記バ
ッファに格納する第１リード動作と、
１つの前記ワード線に接続された一部の前記メモリセルからリードしたデータを前記バッ
ファに格納する第２リード動作とのいずれかの動作を行う
不揮発性半導体メモリを具備する半導体記憶装置を制御する方法であって、
リード対象のデータが、１つの前記第２リード動作でリードできる場合には、
前記第２リード動作をするように前記不揮発性半導体メモリに要求し、
リード対象のデータが、１つの前記第２リード動作でリードできない場合には、
前記第１リード動作をするように前記不揮発性半導体メモリに要求する
半導体記憶装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、半導体記憶装置及びその制御方法に関する。
【背景技術】
【０００２】
不揮発性半導体メモリを有する半導体記憶装置においては、半導体プロセスの微細化が
進み、メモリセルからのデータのリード時間の増大によるリード性能の低下が問題となっ
ている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−３８５９３号公報
【特許文献２】特許第５６６７１４３号公報
【特許文献３】特開２０１６−３５７９５号公報
【特許文献４】特開２００２−２２７９７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明が解決しようとする課題は、半導体記憶装置のリード性能を向上させることにあ
る。
【課題を解決するための手段】
【０００５】
上記課題を達成するために、実施形態の半導体記憶装置は、複数のメモリセルが接続さ
れたワード線と、メモリセルからリードしたデータを一時的に格納するバッファと、を含
み、１つのワード線に接続されたすべてのメモリセルからリードしたデータをバッファに
格納する第１リード動作と、１つのワード線に接続された一部のメモリセルからリードし
たデータをバッファに格納する第２リード動作とのいずれかの動作を行う不揮発性半導体
メモリを具備する。また、実施形態の半導体記憶装置は、リード対象のデータが、１つの
第２リード動作でリードできる場合には第２リード動作をするように不揮発性半導体メモ
リに要求し、リード対象のデータが、複数の第２リード動作でリードできない場合には第
１リード動作をするように不揮発性半導体メモリに要求するメモリコントローラを具備す
る。
【図面の簡単な説明】
【０００６】
【図１】第１の実施形態の半導体記憶装置の構成を説明するブロック図である。
【図２】第１の実施形態に係るファームウェアの実行により実現される各種機能部を説明する図である。
【図３】第１の実施形態に係るＮＡＮＤ型フラッシュメモリの構成を説明する図である。
【図４】第１の実施形態に係るＮＡＮＤ型フラッシュメモリの構成を説明する図である。
【図５】第１の実施形態に係るＮＡＮＤ型フラッシュメモリの構成を説明する図である。
【図６】第１の実施形態に係るクラスタを説明する図である。
【図７】第１の実施形態に係るクラスタと物理ページの関係を説明する図である。
【図８】第１の実施形態に係る論理ページを説明する図である。
【図９】第１の実施形態に係る論理ブロックを説明する図である。
【図１０】第１の実施形態に係る第１リード動作を説明する図である。
【図１１】第１の実施形態に係る第２リード動作を説明する図である。
【図１２】第１の実施形態に係る第１リード動作と第２リード動作の切り替えを説明する図である。
【図１３】第１の実施形態に係るリード動作の例を説明する図である。
【図１４】第１の実施形態に係るリード動作の別の例を説明する図である。
【図１５】第１の実施形態に係るメモリアクセス制御部の構成を説明するブロック図である。
【図１６】第１の実施形態に係るリード要求の生成手順を説明するブロック図である。
【図１７】第２の実施形態に係るリード動作の例を説明する図である。
【図１８】第２の実施形態に係る第３リード動作を説明する図である。
【図１９】第２の実施形態に係るリード動作の別の例を説明する図である。
【図２０】第２の実施形態に係るメモリアクセス制御部の構成を説明するブロック図である。
【図２１】第２の実施形態に係るリード要求の生成手順を説明するブロック図である。
【発明を実施するための形態】
【０００７】
以下、実施形態の半導体記憶装置を、図面を参照して説明する。なお、以下の説明にお
いて、同一の機能及び構成を有する構成要素については、共通する参照符号を付す。
【０００８】
［第１の実施形態］
図１は、第１の実施形態の半導体記憶装置の構成を説明するブロック図である。
【０００９】
半導体記憶装置１は、ホスト２と通信可能である。半導体記憶装置１は、メモリコント
ローラ１０と、複数の不揮発性半導体メモリ２０と、バッファ３０と、を含む。以下の説
明においては、不揮発性半導体メモリ２０へのデータのライトに必要な機能ブロックの説
明は省略してある。
【００１０】
メモリコントローラ１０は、ホスト２と通信し、半導体記憶装置１全体の動作を制御す
る。メモリコントローラ１０は、例えばＳｏＣ（Ｓｙｓｔｅｍ  ｏｎ  ａ  Ｃｈｉｐ）と
して構成される半導体集積回路である。
【００１１】
本実施形態の説明では、ホスト２はＳＡＴＡ（Ｓｅｒｉａｌ  ＡＴＡ）規格のインタフ
ェースをサポートするコンピュータであるが、その他の規格、例えばＳＡＳ（Ｓｅｒｉａ
ｌ  Ａｔｔａｃｈｅｄ  ＳＣＳＩ）規格やＮＶＭｅ（ＮＶＭ  Ｅｘｐｒｅｓｓ）（登録商
標）規格のインタフェースをサポートするコンピュータであってもよい。
【００１２】
不揮発性半導体メモリ２０は、データを不揮発的に（永続的に）記憶する。本実施形態
の不揮発性半導体メモリ２０はＮＡＮＤ型フラッシュメモリであるが、３次元構造フラッ
シュメモリ、ＮＯＲ型フラッシュメモリ、ＭＲＡＭ（Ｍａｇｎｅｔｏｒｅｓｉｓｔｉｖｅ
Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）など他の種類の不揮発性半導体メモリで
もよい。以下の説明においては、不揮発性半導体メモリ２０をＮＡＮＤ型フラッシュメモ
リ２０と表記することがある。
【００１３】
本実施形態の半導体記憶装置１は１８チャネル（Ｃｈ）のＮＡＮＤ型フラッシュメモリ
２０を有する。メモリコントローラ１０は、各チャネルに接続されたＮＡＮＤ型フラッシ
ュメモリ２０を並列に制御可能である。１つのチャネルに複数のＮＡＮＤ型フラッシュメ
モリ２０、すなわち複数のメモリチップが接続されてもよい。以下では各チャネルに接続
されているＮＡＮＤ型フラッシュメモリ２０をＮＡＮＤ型フラッシュメモリＣｈ０〜Ｃｈ
１７と表記する。チャネルの数は１８より多くても少なくてもよい。
【００１４】
バッファ３０は、データを揮発的に（一時的に）に記憶する。バッファ３０に記憶され
るデータには、（１）ホスト２から受信したデータ、（２）ＮＡＮＤ型フラッシュメモリ
２０から読み出したデータ、（３）メモリコントローラ１０が半導体記憶装置１を制御す
るにあたり必要な情報、などがある。
【００１５】
本実施形態のバッファ３０はＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ
Ｍｅｍｏｒｙ）であるが、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍ
ｅｍｏｒｙ）など他の種類の揮発性半導体メモリでもよい。バッファ３０は、メモリコン
トローラ１０に内蔵されていてもよい。
【００１６】
メモリコントローラ１０は、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉ
ｔ）４０と、ホストインタフェース（ＩＦ）制御部５０と、バッファ制御部６０と、メモ
リインタフェース（ＩＦ）制御部７０と、を含む。
【００１７】
ＣＰＵ４０は、ＦＷ（Ｆｉｒｍｗａｒｅ）に基づき半導体記憶装置１全体の制御を行う
。図２は、ＣＰＵ４０がＦＷを実行することによって実現する各種機能部を示す図である
。ＣＰＵ４０は、半導体記憶装置１全体を制御する処理部４２として機能する。処理部４
２は、ホスト処理部４４と、バッファ処理部４６と、メモリ処理部４８と、を含む。ホス
ト処理部４４は、ホストＩＦ制御部５０を主に制御する。バッファ処理部４６は、バッフ
ァ制御部６０を主に制御する。メモリ処理部４８は、メモリＩＦ制御部７０を主に制御す
る。
【００１８】
ＣＰＵ４０は、メモリコントローラ１０に内蔵せず、別個の半導体集積回路としてもよ
い。また、以下の説明においてＦＷにより実行される機能の一部、又は、全部は専用のＨ
Ｗ（Ｈａｒｄｗａｒｅ）によっても実行可能であり、ＨＷにより実行される機能の一部、
又は、全部をＦＷによって実行することも可能である。
【００１９】
図１に戻って説明を続ける。
【００２０】
ホストインタフェース（ＩＦ）制御部５０は、ホスト２から受信したコマンドの解釈や
実行などを行う。バッファ制御部６０は、バッファ３０へのデータのライト、リードの制
御、及び、バッファ３０の空き領域の管理などを行う。
【００２１】
メモリＩＦ制御部７０は、メモリアクセス制御部８０と、複数のＮＡＮＤ制御部９０と
を含む。メモリアクセス制御部８０は、不揮発性半導体メモリ２０へのアクセスに必要な
コマンドやアドレスを制御する。ＮＡＮＤ制御部９０は、ＮＡＮＤ型フラッシュメモリＣ
ｈ０〜Ｃｈ１７のそれぞれに接続される（以下、ＮＡＮＤ制御部Ｃｈ０〜Ｃｈ１７と表記
することがある）。ＮＡＮＤ制御部９０は、ＮＡＮＤ型フラッシュメモリ２０へコマンド
を発行し、データのライト、リード、イレース等の動作を制御する。ＮＡＮＤ制御部９０
は、図示しないＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｃｏｄｅ）制御部を含む。
ＥＣＣ制御部は、ＮＡＮＤ型フラッシュメモリ２０へライトされるデータに対して、誤り
訂正符号を付加する。誤り訂正符号としては、例えば、ＢＣＨ（Ｂｏｓｅ  Ｃｈａｕｄｈ
ｕｒｉ  Ｈｏｃｑｕｅｎｇｈｅｍ）符号、ＬＤＰＣ（Ｌｏｗ  Ｄｅｎｓｉｔｙ  Ｐａｒｉ
ｔｙ  Ｃｈｅｃｋ）符号、等を用いることができる。ＥＣＣ制御部は、ＮＡＮＤ型フラッ
シュメモリ２０からリードされたデータに対して、誤り訂正符号に基づいた誤り訂正処理
を行う。
【００２２】
次に、図３〜図５を参照して、本実施形態のＮＡＮＤ型フラッシュメモリ２０の構成を
説明する。
【００２３】
図３に示すように、ＮＡＮＤ型フラッシュメモリ２０は、制御回路２１と、電圧発生回
路２２と、ロウデコーダ２３と、カラムデコーダ２４と、メモリセルアレイ２５と、セン
スアンプ２６と、ページバッファ２７と、を含む。
【００２４】
制御回路２１は、メモリコントローラ１０からの入力信号に従い、電圧発生回路２２の
電圧値とロウデコーダ２３及びカラムデコーダ２４の選択するアドレスを制御するように
構成されている。
【００２５】
電圧発生回路２２は、制御回路２１の制御に従い、ライト電圧、イレース電圧、リード
電圧等の、所定の値の電圧を発生するように構成されている。
【００２６】
ロウデコーダ２３は、メモリコントローラ１０から指定されたアドレスに従い、ワード
線ＷＬ０〜ＷＬ３１、選択セレクトゲート線ＳＧＤ、ＳＧＳを選択するように構成されて
いる。図４に示すように、ロウデコーダ２３は、転送ゲート線ＴＧにゲートが共通接続さ
れたトランスファゲートトランジスタＴＧＴＤ、ＴＧＴＳ、転送トランジスタ（高電圧系
トランジスタ）ＴＲ０〜ＴＲ３１を備えている。
【００２７】
転送トランジスタＴＲ０〜ＴＲ３１は、メモリセルトランジスタＭＴの制御電極ＣＧに
、イレース電圧、ライト電圧等の所定の電圧を印加する。
【００２８】
メモリセルアレイ２５は、複数の物理ブロック（Ｂｌｏｃｋ  ｎ−１、Ｂｌｏｃｋ  ｎ
、Ｂｌｏｃｋ  ｎ＋１…）を備えている。
【００２９】
本実施形態では、ＮＡＮＤ型フラッシュメモリ２０は、１つのメモリセルトランジスタ
ＭＴに１ビットのデータを記憶することが可能な２値ＮＡＮＤ型フラッシュメモリである
。１つのメモリセルトランジスタＭＴに複数ビットのデータを記憶することが可能な多値
ＮＡＮＤ型フラッシュメモリであってもよい。
【００３０】
図３に示すようにＢｌｏｃｋ  ｎは、ワード線ＷＬ０〜ＷＬ３１とビット線ＢＬ０〜Ｂ
Ｌｍとの交差位置にマトリクス状に配置された複数のメモリセルトランジスタＭＴ０〜Ｍ
Ｔｍを備えている。
【００３１】
メモリセルトランジスタＭＴ０〜ＭＴｍのそれぞれは、半導体基板上に設けられたトン
ネル絶縁膜、トンネル絶縁膜上に設けられた浮遊電極ＦＧ、浮遊電極ＦＧ上に設けられた
ゲート間絶縁膜、ゲート間絶縁膜上に設けられた制御電極ＣＧを備えた積層構造である。
ビット線ＢＬ方向に沿って隣接するメモリセルトランジスタＭＴは、電流経路であるソー
ス／ドレインを共有し、それぞれの電流経路の一端及び他端が直列に、本例では、３２個
接続するように配置されている。
【００３２】
電流経路の一端及び他端が直列に接続されたメモリセルトランジスタＭＴ及び選択トラ
ンジスタＳ１、Ｓ２は、ＮＡＮＤセル列２８を構成している。選択トランジスタＳＴ１、
ＳＴ２により、このＮＡＮＤセル列２８を選択する。ＮＡＮＤセル列２８の電流経路の一
端はセンスアンプ２６に接続され、電流経路の他端はソース線ＳＲＣに接続されている。
【００３３】
なお、メモリセルトランジスタＭＴの個数は、３２個に限らず、例えば、８個、１６個
等であってもよい。また、選択トランジスタＳＴ１、ＳＴ２は、ＮＡＮＤセル列２８を選
択できる構成であれば、選択トランジスタＳＴ１、ＳＴ２のいずれか一方のみが設けられ
ていてもよい。
【００３４】
各ワード線ＷＬ方向（ロウ方向）のメモリセルトランジスタＭＴ０〜ＭＴｍの制御電極
ＣＧは、ワード線ＷＬ０〜ＷＬ３１のいずれかに共通接続されている。選択トランジスタ
ＳＴ１のゲートはセレクトゲートＳＧＳに共通接続され、選択トランジスタＳＴ２のゲー
トはセレクトゲートＳＧＤに共通接続されている。選択トランジスタＳ１のソースは、ソ
ース線ＳＲＣに接続され、選択トランジスタＳＴ２のドレインは、ビット線ＢＬ０〜ＢＬ
ｍのいずれかに接続されている。
【００３５】
また、ワード線ＷＬ０〜ＷＬ３１ごとに、１又は複数のページアドレスが割り当てられ
ている。ここでは、説明の便宜上、１本のワード線に対して１つのページアドレスが割り
当てられている場合について説明する。図３及び図４の破線内で示すように、ワード線Ｗ
Ｌ０〜ＷＬ３１ごとに１つの物理ページ（Ｐａｇｅ）が存在する。例えば、ワード線ＷＬ
１には、物理ページＰａｇｅ１が存在する。この物理ページは、データのライト及びリー
ドの単位である。イレース動作は、物理ブロック単位で一括して行われる。
【００３６】
センスアンプ２６は、ビット線ＢＬ０〜ＢＬｍからリードされたページごとのデータを
増幅し、ページバッファ２７に格納するように構成されている。ページバッファ２７に格
納されたデータは、メモリコントローラ１０へ出力される。
【００３７】
ＮＡＮＤ型フラッシュメモリ２０は、複数のプレーンを含んでもよい。図５は、ＮＡＮ
Ｄ型フラッシュメモリ２０が２つのプレーン（Ｐｌａｎｅ０、Ｐｌａｎｅ１）を含む場合
の構成を示している。ＮＡＮＤ型フラッシュメモリ２０が含むプレーンの数は２に限られ
ない。１つのプレーンは、ロウデコーダ２３、メモリセルアレイ２５、センスアンプ２６
、ページバッファ２７を含む。各プレーンは電圧発生回路２２の出力、及び、カラムデコ
ーダ２４の出力を共有する。また、各プレーンのページバッファ２７から出力されるデー
タは、シリアルアクセスコントローラ２９を介し、メモリコントローラ１０へ出力される
。メモリコントローラ１０は、各プレーンを並列して制御することが可能である。
【００３８】
次に、図６ａ〜図６ｄを参照して、メモリコントローラ１０がデータを管理する論理的
な単位であるクラスタについて説明する。
【００３９】
図６ａに示すように、１つのクラスタはデータとパリティを含む。パリティはデータに
対する誤り訂正符号である。パリティはデータに対する誤り検出符号であってもよい。
【００４０】
また、図６ａ〜図６ｃに示すように、クラスタのサイズは半導体記憶装置１全体で同一
でなくてもよい。例えば誤り訂正能力を向上させる必要があるデータに対しては、図６ａ
と図６ｂに示すように、データのサイズを固定したまま、パリティのサイズを大きくして
もよい。又は、図６ａと図６ｃに示すように、パリティのサイズを固定したまま、データ
のサイズを小さくしてもよい。各クラスタは、図６ｄに示すように、データとパリティの
組を複数含んでいてもよい。
【００４１】
なお、クラスタは、パリティを含まなくてもよい。また、クラスタは、データとパリテ
ィのほかに、クラスタサイズを調整するためのパッドを含んでいてもよい。
【００４２】
次に、図７ａ〜図７ｃを参照して、クラスタと物理ページのサイズの例を説明する。
【００４３】
図７ａは、１つの物理ページ（Ｐａｇｅ１）に、整数個のクラスタ（ＣＬ０〜ＣＬ３）
が格納されている状態を示す。すなわち、図７ａの配置においては、クラスタサイズの整
数倍（ここでは４倍）が物理ページのサイズとなる。
【００４４】
一方、図７ｂにおいては、１つの物理ページ（Ｐａｇｅ１）に、２つのクラスタ（ＣＬ
０とＣＬ１）と、クラスタ未満のデータ（ＣＬ２）が格納されている。このような場合に
は、例えば図７ｃに示すように、ＣＬ２の前半を１つの物理ページ（Ｐａｇｅ１）に格納
し、ＣＬ２の後半を別な物理ページ（Ｐａｇｅ２）に格納してもよい。図７ｃの配置にお
いては、Ｐａｇｅ１とＰａｇｅ２に整数個のクラスタ（ＣＬ０〜ＣＬ４）が格納されてい
る。すなわち、図７ｃの配置においては、クラスタサイズの整数倍（ここでは５倍）が、
物理ページの整数倍（ここでは２倍）のサイズとなる。
【００４５】
なお、クラスタと物理ページのサイズの関係は、図７ａ〜図７ｃの例に限らない。また
、クラスタと物理ページのサイズの関係は、半導体記憶装置１全体で同一でなくてもよい
。すなわち、クラスタと物理ページのサイズの関係は、例えば論理ブロックごと、または
、論理ページごとに異なっていてもよい。
【００４６】
次に、図８を参照して、論理ページについて説明する。メモリコントローラ１０は、Ｎ
ＡＮＤ型フラッシュメモリ２０上のデータを、論理ページ単位で管理する。
【００４７】
図８の１つのセルはクラスタを示す。各ＮＡＮＤ型フラッシュメモリ２０に対応する横
方向の１行（１６クラスタ）は物理ページとなる。すなわち、図８に示す例においては、
１つの物理ページは１６個のクラスタを含む。また、１つの論理ページは、各チャネルの
物理ページを１つずつ含み、合計１８物理ページを含む。
【００４８】
各クラスタには論理クラスタアドレスと呼ばれる番号が割り当てられる。論理クラスタ
アドレスは、ＮＡＮＤ型フラッシュメモリＣｈ０の先頭クラスタが０、ＮＡＮＤ型フラッ
シュメモリＣｈ１の先頭クラスタが１、・・・、となるように割り当てられる。また、論
理クラスタアドレスは、ＮＡＮＤ型フラッシュメモリＣｈ１７の先頭クラスタが１７、Ｎ
ＡＮＤ型フラッシュメモリＣｈ０の２番目のクラスタが１８、・・・、となるように割り
当てられる。論理ページ内の各クラスタは論理クラスタアドレスによりその位置が特定さ
れる。
【００４９】
次に、図９を参照して、論理ブロックについて説明する。メモリコントローラ１０は３
２個の論理ページ分のデータである論理ブロックを論理的な単位として、ＮＡＮＤ型フラ
ッシュメモリ２０のデータのイレースを制御する。すなわち、メモリコントローラ１０は
ＮＡＮＤ型フラッシュメモリ２０のデータのイレースの最小単位である物理ブロックごと
ではなく、論理ブロックごとにデータのイレース処理を行う。
【００５０】
以上、本実施形態の半導体記憶装置１の全体の構成、ＮＡＮＤ型フラッシュメモリ２０
の構成、メモリコントローラ１０によるデータの管理単位などについて説明した。以下で
は、ＮＡＮＤ型フラッシュメモリ２０からのデータのリードについて説明する。
【００５１】
まず、図１０ａ〜図１０ｂを参照して、第１リード動作について説明する。
【００５２】
図１０ａは、第１リード動作のデータの流れを説明する図である。図１０ａにおいては
、ＮＡＮＤ型フラッシュメモリ２０の各機能ブロックのうち、メモリセルアレイ２５、ペ
ージバッファ２７以外の機能ブロックは省略してある。
【００５３】
第１リード動作においては、ＮＡＮＤ型フラッシュメモリ２０は、メモリセルアレイ２
５から物理ページ単位でデータをリードし、リードしたデータをページバッファ２７に格
納する。すなわち、ＮＡＮＤ型フラッシュメモリ２０は、リード対象のページアドレスに
対応するワード線に接続されたメモリセルトランジスタＭＴ０〜ＭＴｍに記憶されている
データをリードし、リードしたデータをページバッファ２７に格納する。ＮＡＮＤ型フラ
ッシュメモリ２０は、ページバッファ２７に格納されたデータを、クラスタ単位でメモリ
コントローラ１０へ出力する。
【００５４】
図１０ｂは、第１リード動作のタイミングチャートである。
【００５５】
メモリコントローラ１０は、ＮＡＮＤ型フラッシュメモリ２０へ第１リード動作を要求
するために、第１リードコマンドを発行する（Ｓ１００）。次に、メモリコントローラ１
０は、リード対象のアドレスをＮＡＮＤ型フラッシュメモリ２０へ入力する（Ｓ１０１）
。ＮＡＮＤ型フラッシュメモリ２０は、時間ｔＲ１をかけて、対象のデータをメモリセル
アレイ２５からリードし、リードしたデータをページバッファ２７へ格納する。この間、
ＮＡＮＤ型フラッシュメモリ２０は、メモリコントローラ１０へ、ＢＵＳＹ信号をアサー
トする。
【００５６】
ＢＵＳＹ信号がネゲートされると、メモリコントローラ１０は、ＮＡＮＤ型フラッシュ
メモリ２０へデータアウトコマンドを発行する（Ｓ１０２）。データアウトコマンドを受
領したＮＡＮＤ型フラッシュメモリ２０は、ページバッファ２７に格納されたデータをメ
モリコントローラ１０へ出力する（Ｓ１０３）。
【００５７】
次に、図１１ａ〜図１１ｂを参照して、第２リード動作について説明する。
【００５８】
図１１ａは、第２リード動作のデータの流れを説明する図である。図１１ａにおいても
、ＮＡＮＤ型フラッシュメモリ２０の各機能ブロックのうち、メモリセルアレイ２５、ペ
ージバッファ２７以外の機能ブロックは省略してある。
【００５９】
第２リード動作においては、ＮＡＮＤ型フラッシュメモリ２０は、メモリセルアレイ２
５から物理ページ未満、かつ、クラスタサイズ以上である任意の単位でデータをリードし
、リードしたデータをページバッファ２７に格納する。すなわち、ＮＡＮＤ型フラッシュ
メモリ２０は、リード対象のページアドレスに対応するワード線に接続されたメモリセル
トランジスタＭＴ０〜ＭＴｍのうち、任意のメモリセルトランジスタに記憶されているデ
ータをリードし、ページバッファ２７に格納する。ＮＡＮＤ型フラッシュメモリ２０は、
ページバッファ２７に格納されたデータを、クラスタ単位でメモリコントローラ１０へす
る。
【００６０】
図１１ｂは、第２リード動作のタイミングチャートである。
【００６１】
メモリコントローラ１０は、ＮＡＮＤ型フラッシュメモリ２０へ第２リード動作を要求
するために、第２リードコマンドを発行する（Ｓ２００）。次に、メモリコントローラ１
０は、リード対象のアドレスをＮＡＮＤ型フラッシュメモリ２０へ入力する（Ｓ２０１）
。ＮＡＮＤ型フラッシュメモリ２０は、時間ｔＲ２をかけて、対象のデータをメモリセル
アレイ２５からリードし、リードしたデータをページバッファ２７へ格納する。この間、
ＮＡＮＤ型フラッシュメモリ２０は、メモリコントローラ１０へ、ＢＵＳＹ信号をアサー
トする。時間ｔＲ２は、時間ｔＲ１よりも短い。
【００６２】
ＢＵＳＹ信号がネゲートされると、メモリコントローラ１０は、ＮＡＮＤ型フラッシュ
メモリ２０へデータアウトコマンドを発行する（Ｓ２０２）。データアウトコマンドを受
領したＮＡＮＤ型フラッシュメモリ２０は、ページバッファ２７に格納されたデータをメ
モリコントローラ１０へ出力する（Ｓ２０３）。
【００６３】
なお、第１リード動作と第２リード動作は、図１２に示すようにリード切り替えコマン
ドにより切り替えてもよい。メモリコントローラ１０は、リード切り替えコマンドを発行
し、以降に発行されるリードコマンドが第１リード動作と第２リード動作のいずれを要求
するものであるのかを、ＮＡＮＤ型フラッシュメモリ２０へ通知する（Ｓ３００）。次に
メモリコントローラ１０は、リードコマンドを発行する（Ｓ３０１）。ＮＡＮＤ型フラッ
シュメモリ１０は、リード切り替えコマンドで指定されたリード動作を行う（Ｓ３０２〜
Ｓ３０４）。
【００６４】
次に、図１３ａ〜図１３ｂを参照して、リード動作の例について説明する。
【００６５】
図１３ａに示すように、本例においては、１つの物理ページ（Ｐａｇｅ１）に３つのク
ラスタ（ＣＬ０〜ＣＬ２）が配置されているものとする。ＣＬ０はカラムアドレス＝Ａか
ら配置されている。ＣＬ１はカラムアドレス＝Ｂから配置されている。ＣＬ２はカラムア
ドレス＝Ｄから配置されている。物理ページのサイズは１６ｋＢであり、第２リード動作
のリード単位は８ｋＢであるとする。また、第２リード動作は、物理ページの先頭（カラ
ムアドレス＝Ａ）、又は、物理ページの中間、すなわち先頭から８ｋＢの位置（カラムア
ドレス＝Ｃ）から行うことができるものとする。
【００６６】
メモリコントローラ１０は、ＣＬ０をリードする時には、ＮＡＮＤ型フラッシュメモリ
１０へ、第２リード動作を要求する。第２リード動作は、第１リード動作よりも高速だか
らである。この時、メモリコントローラ１０は、Ｐａｇｅ１のカラムアドレス＝Ａを指定
する。ＮＡＮＤ型フラッシュメモリは、カラムアドレス＝Ａに配置されているＣＬ０を含
むように、カラムアドレス＝Ａからの第２リード動作を行う。
【００６７】
メモリコントローラ１０は、ＣＬ１をリードする時には、ＮＡＮＤ型フラッシュメモリ
１０へ、第１リード動作を要求する。ＣＬ１は、１つの第２リード動作で読み出すことが
できないからである。この時、メモリコントローラ１０は、Ｐａｇｅ１のカラムアドレス
＝Ｂを指定する。ＮＡＮＤ型フラッシュメモリは、カラムアドレス＝Ｂに配置されている
ＣＬ１を含むように、カラムアドレス＝Ａからの第１リード動作を行う。
【００６８】
メモリコントローラ１０は、ＣＬ２をリードする時には、ＮＡＮＤ型フラッシュメモリ
１０へ、第２リード動作を要求する。第２リード動作は、第１リード動作よりも高速だか
らである。この時、メモリコントローラ１０は、Ｐａｇｅ１のカラムアドレス＝Ｄを指定
する。ＮＡＮＤ型フラッシュメモリは、カラムアドレス＝Ｄに配置されているＣＬ２を含
むように、カラムアドレス＝Ｃからの第２リード動作を行う。
【００６９】
図１３ｂは、物理ページ内のクラスタ配置を管理するクラスタ配置管理テーブル１００
の構成を示す図である。クラスタ配置管理テーブル１００は、後述するように、メモリア
クセス制御部８０内に格納される。クラスタ配置管理テーブル１００は、物理ページ番号
１０１、クラスタ番号１０２、カラムアドレス１０３、ページ境界をまたぐか否かを示す
フラグ１０４、第２リード境界をまたぐか否かを示すフラグ１０５、を管理する。カラム
アドレス１０３は、各クラスタの先頭のカラムアドレスを示す。フラグ１０４は、各クラ
スタの最後が同一物理ページ内にあるか否かを示す。フラグ１０５は、各クラスタが、第
２リード動作で１度にリードすることが可能であるか否かを示す。
【００７０】
図１３ｂのクラスタ配置管理テーブル１００の示す内容は、図１３ａに例示したクラス
タ配置に対応している。クラスタ番号＝ＣＬ０のクラスタは、物理ページ番号＝Ｐａｇｅ
１のカラムアドレス＝Ａから配置されている。ＣＬ０は、ページ境界をまたがず、第２リ
ード境界もまたがない。クラスタ番号＝ＣＬ１のクラスタは、物理ページ番号＝Ｐａｇｅ
１のカラムアドレス＝Ｂから配置されている。ＣＬ１は、ページ境界をまたがないが、第
２リード境界をまたぐ。クラスタ番号＝ＣＬ２のクラスタは、物理ページ番号＝Ｐａｇｅ
１のカラムアドレス＝Ｄから配置されている。ＣＬ２は、ページ境界をまたがず、第２リ
ード境界もまたがない。
【００７１】
次に、図１４ａ〜図１４ｂを参照して、リード動作の別の例について説明する。
【００７２】
図１４ａに示すように、本例においては、２つの物理ページ（Ｐａｇｅ１とＰａｇｅ２
）に５つのクラスタ（ＣＬ０〜ＣＬ４）が配置されているものとする。ＣＬ０はＰａｇｅ
１のカラムアドレス＝Ａから配置されている。ＣＬ１はＰａｇｅ１のカラムアドレス＝Ｂ
から配置されている。ＣＬ２はＰａｇｅ１のカラムアドレス＝Ｄから配置されているが、
Ｐａｇｅ１にはＣＬ２をすべて配置しきれていない。このＣＬ２の後半は、Ｐａｇｅ２の
カラムアドレス＝Ｅから配置されている。ＣＬ３はＰａｇｅ２のカラムアドレス＝Ｆから
配置されている。ＣＬ４はＰａｇｅ２のカラムアドレス＝Ｈから配置されている。
【００７３】
本例においても、物理ページのサイズは１６ｋＢであり、第２リード動作のリード単位
は８ｋＢであるとする。また、第２リード動作は、物理ページの先頭（Ｐａｇｅ１の場合
はカラムアドレス＝Ａ、Ｐａｇｅ２の場合はカラムアドレス＝Ｅ）、又は、物理ページの
中間、すなわち先頭から８ｋＢの位置（Ｐａｇｅ１の場合はカラムアドレス＝Ｃ、Ｐａｇ
ｅ２の場合はカラムアドレス＝Ｇ）から行うことができるものとする。
【００７４】
メモリコントローラ１０は、ＣＬ０をリードする時には、ＮＡＮＤ型フラッシュメモリ
１０へ、第２リード動作を要求する。第２リード動作は、第１リード動作よりも高速だか
らである。この時、メモリコントローラ１０は、Ｐａｇｅ１のカラムアドレス＝Ａを指定
する。ＮＡＮＤ型フラッシュメモリは、カラムアドレス＝Ａに配置されているＣＬ０を含
むように、カラムアドレス＝Ａからの第２リード動作を行う。
【００７５】
メモリコントローラ１０は、ＣＬ１をリードする時には、ＮＡＮＤ型フラッシュメモリ
１０へ、第１リード動作を要求する。ＣＬ１は、１つの第２リード動作で読み出すことが
できないからである。この時、メモリコントローラ１０は、Ｐａｇｅ１のカラムアドレス
＝Ｂを指定する。ＮＡＮＤ型フラッシュメモリは、カラムアドレス＝Ｂに配置されている
ＣＬ１を含むように、カラムアドレス＝Ａからの第１リード動作を行う。
【００７６】
メモリコントローラ１０は、ＣＬ２をリードする時には、ＮＡＮＤ型フラッシュメモリ
１０へ、第２リード動作を要求する。この時、メモリコントローラ１０は、Ｐａｇｅ１の
カラムアドレス＝Ｄを指定する。ＮＡＮＤ型フラッシュメモリは、カラムアドレス＝Ｄに
配置されているＣＬ２を含むように、カラムアドレス＝Ｃからの第２リード動作を行う。
【００７７】
また、メモリコントローラ１０は、ＮＡＮＤ型フラッシュメモリ１０へ、２つ目の第２
リード動作を要求する。ＣＬ２は、Ｐａｇｅ１とＰａｇｅ２にまたがっているからである
。この時、メモリコントローラ１０は、Ｐａｇｅ２のカラムアドレス＝Ｅを指定する。Ｎ
ＡＮＤ型フラッシュメモリは、カラムアドレス＝Ｅに配置されているＣＬ２を含むように
、カラムアドレス＝Ｅからの第２リード動作を行う。
【００７８】
なお、ＣＬ２は、２つの第１リード動作、すなわちＰａｇｅ１のカラムアドレス＝Ｄを
指定する第１リード動作と、Ｐａｇｅ２のカラムアドレス＝Ｅを指定する第１リード動作
によっても読み出すことが可能である。
【００７９】
メモリコントローラ１０は、ＣＬ３をリードする時には、ＮＡＮＤ型フラッシュメモリ
１０へ、第１リード動作を要求する。ＣＬ３は、１つの第２リード動作で読み出すことが
できないからである。この時、メモリコントローラ１０は、Ｐａｇｅ２のカラムアドレス
＝Ｆを指定する。ＮＡＮＤ型フラッシュメモリは、カラムアドレス＝Ｆに配置されている
ＣＬ３を含むように、カラムアドレス＝Ｅからの第１リード動作を行う。
【００８０】
メモリコントローラ１０は、ＣＬ４をリードする時には、ＮＡＮＤ型フラッシュメモリ
１０へ、第２リード動作を要求する。この時、メモリコントローラ１０は、Ｐａｇｅ２の
カラムアドレス＝Ｈを指定する。ＮＡＮＤ型フラッシュメモリは、カラムアドレス＝Ｈに
配置されているＣＬ４を含むように、カラムアドレス＝Ｇからの第２リード動作を行う。
【００８１】
図１４ｂのクラスタ配置管理テーブル１００の示す内容は、図１４ａに例示したクラス
タ配置に対応している。
【００８２】
クラスタ番号＝ＣＬ０のクラスタは、物理ページ番号＝Ｐａｇｅ１のカラムアドレス＝
Ａから配置されている。ＣＬ０は、ページ境界をまたがず、第２リード境界もまたがない
。クラスタ番号＝ＣＬ１のクラスタは、物理ページ番号＝Ｐａｇｅ１のカラムアドレス＝
Ｂから配置されている。ＣＬ１、ページ境界をまたがないが、第２リード境界をまたぐ。
クラスタ番号＝ＣＬ２のクラスタは、物理ページ番号＝Ｐａｇｅ１のカラムアドレス＝Ｄ
から配置されている。ＣＬ２のクラスタは、ページ境界をまたぐが、第２リード境界はま
たがない。
【００８３】
クラスタ番号＝ＣＬ２のクラスタの後半は、物理ページ番号＝Ｐａｇｅ２のカラムアド
レス＝Ｅから配置されている。ＣＬ２の後半は、ページ境界をまたがず、第２リード境界
もまたがない。クラスタ番号＝ＣＬ３のクラスタは、物理ページ番号＝Ｐａｇｅ２のカラ
ムアドレス＝Ｆから配置されている。ＣＬ３は、ページ境界をまたがないが、第２リード
境界をまたぐ。クラスタ番号＝ＣＬ４のクラスタは、物理ページ番号＝Ｐａｇｅ２のカラ
ムアドレス＝Ｈから配置されている。ＣＬ４は、ページ境界をまたがず、第２リード境界
もまたがない。
【００８４】
次に、図１５を参照して、メモリアクセス制御部８０の詳細な構成を説明する。
【００８５】
メモリアクセス制御部８０は、コマンド生成部８２と、クラスタ配置テーブル格納部８
４と、コマンド発行部８６と、を含む。
【００８６】
コマンド生成部８２には、メモリ処理部４８からリード要求Ｒ１００が入力される。リ
ード要求Ｒ１００は、論理ブロックアドレス、論理ページアドレス、論理クラスタアドレ
ス、を含む。論理ブロックアドレスは論理ブロックを特定する。論理ページアドレスは論
理ブロック中の論理ページを特定する。論理クラスタアドレスは前述のとおり、論理ペー
ジ中のクラスタを特定する。
【００８７】
コマンド生成部８２は、論理ブロックアドレス、論理ページアドレス、論理クラスタア
ドレスを、例えば図示しない論物変換テーブルを用いて、物理アドレスに変換する。物理
アドレスは、（ａ）どのチャネルであるのか（チャネル番号）、（ｂ）チャネル中どのメ
モリチップであるのか（チップ番号）、（ｃ）メモリチップ中のどのプレーンであるのか
（プレーン番号）、（ｄ）プレーン中のどの物理ブロックであるのか（物理ブロック番号
）、（ｅ）物理ブロック中のどの物理ページであるのか（物理ページ番号）、（ｆ）物理
ページ中のどのクラスタであるのか（クラスタ番号）、を含む。
【００８８】
コマンド生成部８２は、（ｅ）物理ページ番号と、（ｆ）クラスタ番号と、をクラスタ
配置テーブル格納部８４に入力する。クラスタ配置テーブル格納部８４は、クラスタ配置
テーブル１００を格納している。クラスタ配置テーブル格納部８４は、物理ページ番号と
クラスタ番号を基にクラスタ配置テーブル１００を検索し、（ｇ）クラスタ配置情報、を
得る。クラスタ配置情報は、（ｈ）カラムアドレス１０３、（ｉ）ページ境界をまたぐか
否かを示すフラグ１０４、（ｊ）第２リード境界をまたぐか否かを示すフラグ１０５、を
含む。クラスタ配置テーブル格納部８４は、得たクラスタ配置情報を、コマンド生成部８
２に入力する。
【００８９】
コマンド生成部８２は、コマンド発行部８６に、リード要求Ｒ１０１を入力する。リー
ド要求Ｒ１０１は、（ａ）チャネル番号、（ｂ）チップ番号、（ｃ）プレーン番号、（ｄ
）物理ブロック番号、（ｅ）物理ページ番号、（ｇ）クラスタ配置情報、を含む。
【００９０】
コマンド発行部８６は、リード要求Ｒ１０１を基に、第１リード要求又は第２リード要
求を生成する。第１リード要求と第２リード要求のどちらを生成するのかのアルゴリズム
については後述する。コマンド発行部８６は、生成した第１リード要求又は第２リード要
求（リード要求Ｒ１０２）を、チャネル番号で指定されたチャネルに対応するＮＡＮＤ制
御部９０に入力する。リード要求Ｒ１０２は、（ｂ）チップ番号、（ｃ）プレーン番号、
（ｄ）物理ブロック番号、（ｅ）物理ページ番号、（ｈ）カラムアドレス、を含む。
【００９１】
ＮＡＮＤ制御部９０は、リード要求Ｒ１０２を、ＮＡＮＤ型フラッシュメモリ２０との
インタフェース規格に準拠したコマンドＲ１０３に変換し、ＮＡＮＤ型フラッシュメモリ
２０へ発行する。
【００９２】
次に、図１６を参照して、コマンド発行部８６によるリード要求Ｒ１０２の生成手順に
ついて説明する。
【００９３】
コマンド発行部８６はリード要求Ｒ１０１を受領すると、クラスタ配置情報により、リ
ード対象のクラスタが第２リード境界をまたいでいるか否かを判断する（Ｓ４００）。リ
ード対象のクラスタが第２リード境界をまたいでいる場合（Ｓ４００：Ｙｅｓ）、コマン
ド発行部８６は、リード要求Ｒ１０２として第１リード要求を生成する（Ｓ４０１）。リ
ード対象のクラスタが第２リード境界をまたいでいない場合（Ｓ４００：Ｎｏ）、コマン
ド発行部８６は、リード要求Ｒ１０２として第２リード要求を生成する（Ｓ４０２）。
【００９４】
さらにコマンド発行部８６は、クラスタ配置情報により、リード対象のクラスタがペー
ジ境界をまたいでいるか否かを判断する（Ｓ４０３）。ページ境界をまたいでいる場合（
Ｓ４０３：Ｙｅｓ）、コマンド発行部８６は、２つ目のリード要求Ｒ１０２を生成するた
め、リード対象のクラスタが第２リード境界をまたいでいるか否かを再度判断する（Ｓ４
００）。
【００９５】
以上説明した第１の実施形態の半導体記憶装置によれば、リード対象のデータに対応す
るクラスタの、物理ページ内の配置に応じてリード要求を変更するため、半導体記憶装置
のリード性能を向上させることができる。
【００９６】
［第２の実施形態］
本実施形態においては、リード要求のシーケンシャル性により、さらにリード要求を変
更する。
【００９７】
図１７は、本実施形態に係るリード動作の例について説明するための図である。
【００９８】
図１７に示すように、本例においては、１つの物理ページ（Ｐａｇｅ１）に７つのクラ
スタ（ＣＬ０〜ＣＬ６）が配置されているものとする。ＣＬ０はカラムアドレス＝Ａから
配置されている。ＣＬ１はカラムアドレス＝Ｂから配置されている。ＣＬ２はカラムアド
レス＝Ｃから配置されている。ＣＬ３はカラムアドレス＝Ｄから配置されている。ＣＬ４
はカラムアドレス＝Ｆから配置されている。ＣＬ５はカラムアドレス＝Ｇから配置されて
いる。ＣＬ６はカラムアドレス＝Ｈから配置されている。
【００９９】
物理ページのサイズは１６ｋＢであり、第２リード動作のリード単位は８ｋＢであると
する。また、第２リード動作は、物理ページの先頭（カラムアドレス＝Ａ）、又は、物理
ページの中間、すなわち先頭から８ｋＢの位置（カラムアドレス＝Ｅ）から行うことがで
きるものとする。
【０１００】
第１の実施形態で説明したリード要求の生成条件に従うと、ＣＬ０、ＣＬ１、ＣＬ２、
ＣＬ４、ＣＬ５、ＣＬ６に対しては第２リード要求が生成される。ＣＬ３に対しては第１
リード要求が生成される。
【０１０１】
ここで、例えば、ＣＬ１のリードの直後にＣＬ５がリードされる場合を考える。第１の
実施形態で説明した条件では、ＣＬ１に対する第２リード要求と、ＣＬ５に対する第２リ
ード要求との、２つの第２リード要求が生成される。一方で本実施形態のメモリアクセス
制御部８０は、このような場合には、１つの第１リード要求を生成する。２つの第２リー
ド要求よりも、１つの第１リード要求のほうが高速だからである。
【０１０２】
次に、図１８〜図２０を参照して、本実施形態に係るリード動作の別の例について説明
する。
【０１０３】
まず、図１８ａ〜図１８ｂを参照して、第３リード動作について説明する。
【０１０４】
図１８ａは、第３リード動作のデータの流れを説明する図である。図１８ａにおいては
、ＮＡＮＤ型フラッシュメモリ２０は２つのプレーン（Ｐｌａｎｅ０、Ｐｌａｎｅ１）を
含む。また、図１８ａにおいては、ＮＡＮＤ型フラッシュメモリ２０の各機能ブロックの
うち、メモリセルアレイ２５、ページバッファ２７、シリアルアクセスコントローラ２９
以外の機能ブロックは省略してある。
【０１０５】
第３リード動作においては、ＮＡＮＤ型フラッシュメモリ２０は、各プレーンのメモリ
セルアレイ２５から物理ページ単位でデータをリードし、リードしたデータをページバッ
ファ２７に格納する。すなわち、ＮＡＮＤ型フラッシュメモリ２０は、リード対象のペー
ジアドレスに対応するワード線に接続されたメモリセルトランジスタＭＴ０〜ＭＴｍに記
憶されているデータをリードし、リードしたデータをページバッファ２７に格納する。Ｐ
ｌａｎｅ０とＰｌａｎｅ１のメモリセルアレイ２５からのデータのリードは同時に行われ
る。ＮＡＮＤ型フラッシュメモリ２０は、各プレーンのページバッファ２７に格納された
データを、シリアルアクセスコントローラ２９を介し、クラスタ単位でメモリコントロー
ラ１０へする。
【０１０６】
図１８ｂは、第３リード動作のタイミングチャートである。
【０１０７】
メモリコントローラ１０は、ＮＡＮＤ型フラッシュメモリ２０へ第３リード動作を要求
するために、第３リードコマンドを発行する（Ｓ５００）。次に、メモリコントローラ１
０は、リード対象のアドレスをＮＡＮＤ型フラッシュメモリ２０へ入力する（Ｓ５０１）
。ＮＡＮＤ型フラッシュメモリ２０は、時間ｔＲ３をかけて、対象のデータを各プレーン
のメモリセルアレイ２５からリードし、リードしたデータをページバッファ２７へ格納す
る。この間、ＮＡＮＤ型フラッシュメモリ２０は、メモリコントローラ１０へ、ＢＵＳＹ
信号をアサートする。第３リードコマンドにかかる時間ｔＲ３は、第１リードコマンドに
かかる時間ｔＲ１とほぼ等しい。
【０１０８】
ＢＵＳＹ信号がネゲートされると、メモリコントローラ１０は、ＮＡＮＤ型フラッシュ
メモリ２０へデータアウトコマンドを発行する（Ｓ５０２）。データアウトコマンドを受
領したＮＡＮＤ型フラッシュメモリ２０は、Ｐｌａｎｅ０のページバッファ２７に格納さ
れたデータをメモリコントローラ１０へ出力する（Ｓ５０３）。次にＮＡＮＤ型フラッシ
ュメモリ２０は、Ｐｌａｎｅ１のページバッファ２７に格納されたデータをメモリコント
ローラ１０へ出力する（Ｓ５０４）。
【０１０９】
次に、図１９を参照して、本実施形態に係るリード動作の別の例について説明する。
【０１１０】
図１９に示すように、本例においては、異なるプレーンの対応する物理ページ、すなわ
ちＰｌａｎｅ０のＰａｇｅ１とＰｌａｎｅ１のＰａｇｅ１に５つのクラスタ（ＣＬ０〜Ｃ
Ｌ４）が配置されているものとする。ＣＬ０はＰｌａｎｅ０・Ｐａｇｅ１のカラムアドレ
ス＝Ａから配置されている。ＣＬ１はＰｌａｎｅ０・Ｐａｇｅ１のカラムアドレス＝Ｂか
ら配置されている。ＣＬ２はＰｌａｎｅ０・Ｐａｇｅ１のカラムアドレス＝Ｄから配置さ
れているが、Ｐｌａｎｅ０・Ｐａｇｅ１にはＣＬ２をすべて配置しきれていない。このＣ
Ｌ２の後半は、Ｐｌａｎｅ１・Ｐａｇｅ１のカラムアドレス＝Ｅから配置されている。Ｃ
Ｌ３はＰｌａｎｅ１・Ｐａｇｅ１のカラムアドレス＝Ｆから配置されている。ＣＬ４はＰ
ｌａｎｅ１・Ｐａｇｅ１のカラムアドレス＝Ｈから配置されている。
【０１１１】
本例においても、物理ページのサイズは１６ｋＢであり、第２リード動作のリード単位
は８ｋＢであるとする。また、第２リード動作は、物理ページの先頭（Ｐｌａｎｅ０・Ｐ
ａｇｅ１の場合はカラムアドレス＝Ａ、Ｐｌａｎｅ１・Ｐａｇｅ１の場合はカラムアドレ
ス＝Ｅ）、又は、物理ページの中間、すなわち先頭から８ｋＢの位置（Ｐｌａｎｅ０・Ｐ
ａｇｅ１の場合はカラムアドレス＝Ｃ、Ｐｌａｎｅ１・Ｐａｇｅ１の場合はカラムアドレ
ス＝Ｇ）から行うことができるものとする。
【０１１２】
第１の実施形態で説明したリード要求の生成条件に従うと、ＣＬ０、ＣＬ４に対しては
それぞれ１つの第２リード要求が生成される。ＣＬ１、ＣＬ３に対してはそれぞれ１つの
第１リード要求が生成される。ＣＬ２に対しては２つの第２リード要求が生成される。
【０１１３】
ここで、例えば、ＣＬ０のリードの直後にＣＬ４がリードされる場合を考える。第１の
実施形態で説明した条件では、ＣＬ０に対する第２リード要求と、ＣＬ４に対する第２リ
ード要求との２つの第２リード要求が生成される。一方で本実施形態のメモリアクセス制
御部８０は、このような場合には、１つの第３リード要求を生成する。２つの第２リード
要求よりも、１つの第３リード要求のほうが高速だからである。
【０１１４】
また本実施形態のメモリアクセス制御部８０は、ＣＬ２に対しても第３リード要求を生
成する。２つの第２リード要求よりも、１つの第３リード要求のほうが高速だからである
。
【０１１５】
次に、図２０を参照して、メモリアクセス制御部８０の詳細な構成を説明する。
【０１１６】
本実施形態のメモリアクセス制御部８０は、第１の実施形態のメモリアクセス制御部８
０の構成に加え、コマンド変更部８７を含む。
【０１１７】
コマンド変更部８７は、チャネルごとのリクエストＦＩＦＯを含む。リクエストＦＩＦ
Ｏは、リード要求Ｒ１０２を格納する。リクエストＦＩＦＯは、例えば、２つの物理ペー
ジに配置されうるクラスタの最大数に対応する数のリード要求Ｒ１０２を格納可能である
。
【０１１８】
コマンド変更部８７は、リクエストＦＩＦＯに格納されたリード要求Ｒ１０２を検索す
る。コマンド変更部８７は、リクエストＦＩＦＯ中に、同一物理ページ内に配置されてい
るクラスタを対象とする複数の第２リード要求が格納されている場合、これらを１つの第
１リード要求に変更する。また、コマンド変更部８７は、リクエストＦＩＦＯ中に、異な
るプレーンの対応する物理ページに配置されている複数の第１リード要求又は複数の第２
リード要求が格納されている場合、これらを１つの第３リード要求に変更する。コマンド
変更部８７は、変更されたリード要求Ｒ１０２’を、ＮＡＮＤ制御部９０に出力する。
【０１１９】
なお、リード要求のシーケンシャル性の判定方法は、上記の方法に限られない。例えば
、メモリ処理部４８がシーケンシャル性を判定してもよい。また、コマンド変更部８７は
、チャネルごとにリクエストＦＩＦＯを有するのではなく、１つのリクエストＦＩＦＯを
有するとしてもよい。
【０１２０】
次に、図２１を参照して、コマンド発行部８６及びコマンド変更部８７によるリード要
求Ｒ１０２’の生成手順について説明する。
【０１２１】
コマンド変更部８７は、リクエストＦＩＦＯを検索し、リード要求Ｒ１０２のシーケン
シャル性を判定する（Ｓ６００）。すなわち、
（１）同一物理ページ内に配置されている複数のクラスタを対象とする複数の第２リー
ド要求が格納されている場合（以下、第１の場合と称する）、又は、
（２）異なるプレーンの対応する物理ページに配置されている複数のクラスタを対象と
する複数の第１リード要求、もしくは、第２リード要求が格納されている場合（以下、第
２の場合と称する）
のいずれかの場合であるのかを判定する。
【０１２２】
リード要求Ｒ１０２にシーケンシャル性があり（Ｓ６０１：Ｙｅｓ）、かつ、同一物理
ページ内でのシーケンシャルリードである時（Ｓ６０２：Ｙｅｓ）、すなわち第１の場合
である時、コマンド変更部８７は、リード要求Ｒ１０２’として第１リード要求を生成す
る（Ｓ６０３）。リード要求Ｒ１０２にシーケンシャル性があり（Ｓ６０１：Ｙｅｓ）、
かつ、同一物理ページ内でのシーケンシャルリードではない時（Ｓ６０２：Ｎｏ）、すな
わち第２の場合である時、コマンド変更部８７は、リード要求Ｒ１０２’として第３リー
ド要求を生成する（Ｓ６０４）。
【０１２３】
一方で、リード要求Ｒ１０２にシーケンシャル性がない場合、コマンド変更部８７は、
リード要求の変更を行わない。すなわち、この場合のリード要求Ｒ１０２’は、リード要
求Ｒ１０２と同一となる。
【０１２４】
以上説明した第２の実施形態の半導体記憶装置によれば、リード対象のデータに対応す
るクラスタの、物理ページ内の配置に応じてリード要求をさらに変更するため、半導体記
憶装置のリード性能を向上させることができる。
【０１２５】
以上説明した少なくとも１つの実施形態の半導体記憶装置によれば、リード対象のデー
タに対応するクラスタの、物理ページ内の配置に応じてリード要求を変更するため、半導
体記憶装置のリード性能を向上させることができる。
【０１２６】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したも
のであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その
他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の
省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や
要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる
。
【符号の説明】
【０１２７】
１…半導体記憶装置、２…ホスト、１０…メモリコントローラ、２０…不揮発性半導体
メモリ、２１…制御回路、２２…電圧発生回路、２３…ロウデコーダ、２４…カラムデコ
ーダ、２５…メモリセルアレイ、２６…センスアンプ、２７…ページバッファ、２８…Ｎ
ＡＮＤセル列、２９…シリアルアクセスコントローラ、３０…バッファ、４０…ＣＰＵ、
４２…処理部、４４…ホスト処理部、４６…バッファ処理部、４８…メモリ処理部、５０
…ホストインタフェース制御部、６０…バッファ制御部、７０…メモリインタフェース制
御部、８０…メモリアクセス制御部、８２…コマンド生成部、８４…クラスタ配置テーブ
ル格納部、８６…コマンド発行部、８７…コマンド変更部、９０…ＮＡＮＤ制御部、１０
０…クラスタ配置テーブル
【図１】
2018120305.tif 000003
【図２】
2018120305.tif 000004
【図３】
2018120305.tif 000005
【図４】
2018120305.tif 000006
【図５】
2018120305.tif 000007
【図６】
2018120305.tif 000008
【図７】
2018120305.tif 000009
【図８】
2018120305.tif 000010
【図９】
2018120305.tif 000011
【図１０】
2018120305.tif 000012
【図１１】
2018120305.tif 000013
【図１２】
2018120305.tif 000014
【図１３】
2018120305.tif 000015
【図１４】
2018120305.tif 000016
【図１５】
2018120305.tif 000017
【図１６】
2018120305.tif 000018
【図１７】
2018120305.tif 000019
【図１８】
2018120305.tif 000020
【図１９】
2018120305.tif 000021
【図２０】
2018120305.tif 000022
【図２１】
2018120305.tif 000023