(57)【要約】      （修正有）【課題】非順次ページ間の長いレイテンシを克服することができる技術を提供する。【解決手段】ページバッファ１７１と、入力／出力インターフェース１０５と、を含むページモードＮＡＮＤフラッシュ１００は、非順次アドレスを有する連続ページリードをサポートする。コントローラは、ページのストリームをＩ／Ｏインターフェースにおいて出力するための連続ページリード動作を制御する。連続リード動作は、連続するページのストリームを出力するためのコマンドのシリーズに応答することを含む。コマンドのシリーズは、第１のコマンドと、ストリーム内の先行ページの出力を完了する前に受信される複数のストリーム内コマンドを含む。第１のコマンドは連続ページリード動作を開始するためのアドレスを含み、複数のストリーム内コマンド内の少なくとも１つのストリーム内コマンドは、ページのストリーム内の非順次ページを提供するための非順次アドレスを含む。【選択図】図１
2020077451.tif 000002
【特許請求の範囲】
【請求項１】
複数のビット線を含むメモリアレイと、
ページ幅を有する前記複数のビット線に結合されるページバッファと、
前記ページ幅未満のＩ／Ｏ幅を有するＩ／Ｏデータユニットの入力／出力インターフェースと、
前記ページバッファおよび前記インターフェースの間に接続されるデータパス回路と、
前記入力／出力インターフェースにおいて受信されたコマンドに応答して、ページのストリームを前記Ｉ／Ｏインターフェースにおいて出力するための連続ページリード動作を含むメモリ動作を制御するコントローラであって、前記連続ページリード動作はコマンドのシリーズに応答することを含み、前記シリーズは第１のコマンドおよび１つまたは複数のストリーム内コマンドを含み、前記１つまたは複数のストリーム内コマンド内の前記ストリーム内コマンドは、前記ストリーム内の先行ページの出力を完了する前に受信され、前記第１のコマンドは前記連続ページリード動作を開始するためのアドレスを含み、前記１つまたは複数のストリーム内コマンド内の少なくとも１つのストリーム内コマンドは、前記ページのストリーム内の非順次ページを提供するための、前記ページのストリーム内の前記非順次ページの非順次アドレスを含む、コントローラと
を備える、メモリデバイス。
【請求項２】
前記コントローラは、先行ページの少なくとも一部が、前記入力／出力インターフェースへの転送中にまだ前記データパス回路内にある間に、前記非順次ページを前記ページバッファに転送するためのリードを開始することによって、前記非順次アドレスを含む前記ストリーム内コマンドに応答する、請求項１に記載のデバイス。
【請求項３】
前記非順次ページは前記ストリーム内の先行ページに続き、前記先行ページは、前記非順次アドレスを含む前記ストリーム内コマンドに１ページ先行するページアドレスを有する、請求項１に記載のデバイス。
【請求項４】
前記非順次ページは前記ストリーム内の先行ページに続き、前記先行ページは、前記非順次アドレスを含む前記ストリーム内コマンドに２ページ先行するページアドレスを有する、請求項１に記載のデバイス。
【請求項５】
前記コントローラは、前記第１のコマンドに応答して連続ページリード動作を開始し、前記ストリーム内の最初にアドレス指定されたページを前記メモリアレイから前記ページバッファに転送し、前記最初にアドレス指定されたページを前記データパス回路を経由して前記インターフェースに移動させ、
前記コントローラは、次のページアドレスを含む後の時刻の第１のストリーム内コマンドに応答して、前記インターフェースからの前記最初にアドレス指定されたページの出力が完了する前に、前記メモリアレイから次のページにアクセスする、請求項１に記載のデバイス。
【請求項６】
前記コントローラは、前記第１のコマンドに応答して連続ページリード動作を開始し、前記ストリーム内の最初にアドレス指定されたページを前記メモリアレイから前記ページバッファに転送し、前記最初にアドレス指定されたページを前記データパス回路を経由して前記インターフェースに移動させ、
前記コントローラは、次のページアドレスを含む後の時刻の第１のストリーム内コマンドを受信して、前記ストリーム内の次にアドレス指定されたページを前記メモリアレイから前記ページバッファに転送し、前記次にアドレス指定されたページを前記データパス回路を経由して前記インターフェースに移動させ、
前記コントローラは、Ｉ／Ｏデータユニットの前記インターフェースから前記最初にアドレス指定されたページを出力する前に、第２の次のページアドレスを含む第２の後の時刻の第２のストリーム内コマンドを受信する、請求項１に記載のデバイス。
【請求項７】
前記データパス回路はバッファメモリを含む、請求項１に記載のデバイス。
【請求項８】
前記データパス回路に接続されるＥＣＣ回路であって、前記データパス回路内のページに対して、前記ページを前記入力／出力インターフェースにおいて出力できるようにする前に、ＥＣＣ機能を実行する、ＥＣＣ回路を含む、請求項１に記載のデバイス。
【請求項９】
前記ＥＣＣ回路は、前記ページ幅未満であって前記Ｉ／Ｏ幅を超えるＥＣＣチャンク幅を有するデータチャンクを使用して動作する、請求項８に記載のデバイス。
【請求項１０】
前記データパス回路に接続されるＥＣＣ回路であって、前記ページ幅未満であって前記Ｉ／Ｏ幅を超えるＥＣＣチャンク幅を有するデータチャンクを使用してＥＣＣ機能を実行する、ＥＣＣ回路
を含み、
前記データパス回路は、第１の部分および第２の部分を含むバッファメモリと、前記バッファメモリの前記第１の部分を前記ＥＣＣ回路および前記Ｉ／Ｏインターフェースに交互に接続し、前記バッファメモリの前記第２の部分を前記ＥＣＣ回路および前記Ｉ／Ｏインターフェースに交互に接続するデータパスとを含む、請求項１に記載のデバイス。
【請求項１１】
前記データパス回路に接続されるＥＣＣ回路であって、前記ページ幅未満であって前記Ｉ／Ｏ幅を超えるＥＣＣチャンク幅を有するデータチャンクを使用してＥＣＣ機能を実行する、ＥＣＣ回路
を含み、
前記データパス回路は、前記ページバッファに結合される第２バッファレベルと、前記第２バッファレベルに結合される第３バッファレベルとを含み、前記第３バッファレベルは、第１の部分および第２の部分と、前記第３バッファレベルの前記第１の部分を前記ＥＣＣ回路および前記Ｉ／Ｏインターフェースに交互に接続し、前記第３バッファレベルの前記第２の部分を前記ＥＣＣ回路および前記Ｉ／Ｏインターフェースに交互に接続するデータパスとを含み、
前記第３バッファレベルの前記第１および第２の部分は前記ページ幅未満のバッファ幅を有し、前記第３バッファレベルの前記第１および第２の部分を前記ＥＣＣ回路および前記Ｉ／Ｏインターフェースに交互に接続する前記データパスは、前記バッファ幅未満のバス幅を有する、請求項１に記載のデバイス。
【請求項１２】
データおよび関連するエラー検出訂正（ＥＣＣ）コードを記憶する、複数のビット線を含むメモリアレイと、
データおよび関連するＥＣＣコードのページを記憶するための、ページ幅を有する前記複数のビット線に結合されるページバッファと、
前記ページ幅未満のＩ／Ｏ幅を有するＩ／Ｏデータユニットの入力／出力インターフェースと、
前記ページバッファおよび前記インターフェースの間に接続されるデータパス回路と、
前記入力／出力インターフェースにおいて受信されたコマンドに応答して、ページのストリームを前記Ｉ／Ｏインターフェースに出力するための連続ページリード動作を含むメモリ動作を制御するコントローラであって、前記連続ページリード動作はコマンドのシリーズに応答することを含み、前記シリーズは第１のコマンドおよび１つまたは複数のストリーム内コマンドを含み、前記１つまたは複数のストリーム内コマンド内の前記ストリーム内コマンドは、前記ストリーム内の先行ページの出力を完了する前に受信され、前記第１のコマンドは前記連続ページリード動作を開始するためのアドレスを含み、前記１つまたは複数のストリーム内コマンド内の少なくとも１つのストリーム内コマンドは、前記ページのストリーム内の非順次ページの非順次アドレスを含む、コントローラと
前記データパス回路に接続されるエラー検出訂正（ＥＣＣ）回路であって、前記ページのストリーム内のページに対して、前記ページを出力する前にＥＣＣ機能を実行し、前記ページ幅未満であって前記Ｉ／Ｏ幅を超えるＥＣＣチャンク幅を有するデータチャンクを使用して動作する、ＥＣＣ回路と
を備える、集積回路メモリデバイス。
【請求項１３】
前記データパス回路は、前記ページバッファの第１の部分に結合される第１の部分と、前記ページバッファの第２の部分に結合される第２の部分とを含む第２バッファレベルであって、前記第２バッファレベルの前記第１および第２の部分は前記ページ幅未満のバッファ幅を有する、第２バッファレベルと、前記第１の部分を前記ＥＣＣ回路および前記Ｉ／Ｏインターフェースに交互に接続し、前記第２の部分を前記ＥＣＣ回路および前記Ｉ／Ｏインターフェースに交互に接続するデータパスとを含み、
前記コントローラは、前記第１のコマンドに応答して連続ページリード動作を開始し、前記ストリーム内の最初にアドレス指定されたページを前記メモリアレイから前記ページバッファに転送し、第１および第２のバッファを使用して前記最初にアドレス指定されたページを前記インターフェースに移動させ、
前記コントローラは、次のページアドレスを含む第１のストリーム内コマンドに応答して、前記メモリアレイにアクセスして、前記次のページアドレスからページを前記ページバッファにロードする、請求項１２に記載のデバイス。
【請求項１４】
前記データパス回路は、前記ページバッファに結合される第２バッファレベルと、前記第２バッファレベルに結合される第３バッファレベルとを含み、前記第３バッファレベルは、第１の部分および第２の部分と、前記第３バッファレベルの前記第１の部分を前記ＥＣＣ回路および前記Ｉ／Ｏインターフェースに交互に接続し、前記第３バッファレベルの前記第２の部分を前記ＥＣＣ回路および前記Ｉ／Ｏインターフェースに交互に接続するデータパスとを含み、
前記第３バッファレベルの前記第１および第２の部分は前記ページ幅未満のバッファ幅を有し、前記第３バッファレベルの前記第１および第２の部分を前記ＥＣＣ回路および前記Ｉ／Ｏインターフェースに交互に接続する前記データパスは、前記バッファ幅未満のバス幅を有し、
前記コントローラは、前記第１のコマンドに応答して連続ページリード動作を開始し、前記ストリーム内の最初にアドレス指定されたページを前記メモリアレイから前記ページバッファに転送し、前記第２バッファレベルおよび前記第３バッファレベルを使用して前記最初にアドレス指定されたページを前記インターフェースに移動させ、
前記コントローラは、次のページアドレスを含む第１のストリーム内コマンドに応答して、前記ストリーム内の次にアドレス指定されたページを前記メモリアレイから前記ページバッファに転送し、前記第２バッファレベルおよび前記第３バッファレベルを使用して前記次にアドレス指定されたページを前記インターフェースに移動させ、
前記コントローラは、Ｉ／Ｏデータユニットの前記インターフェースから前記最初にアドレス指定されたページを出力する前に、第２の次のページアドレスを含む第２のストリーム内コマンドを受信する、請求項１２に記載のデバイス。
【請求項１５】
前記メモリアレイはＮＡＮＤフラッシュメモリを備える、請求項１２に記載のデバイス。
【請求項１６】
前記入力／出力インターフェースはシリアルペリフェラルインターフェースＳＰＩポートを備える、請求項１２に記載のデバイス。
【請求項１７】
ページのストリームを読み込むようにメモリデバイスを動作させるための方法であって、
メモリからページのストリームを出力するためのコマンドのシリーズに応答することであって、前記シリーズは第１のコマンドおよび１つまたは複数のストリーム内コマンドを含む、応答することと、
最初のページアドレス用に前記第１のコマンドを使用し、後続のページアドレス用に前記１つまたは複数のストリーム内コマンドを使用して、前記ページのストリーム内のページのアドレスを決定することと、
前記ストリーム内の先行ページの出力を完了する前に、前記１つまたは複数のストリーム内コマンド内の少なくとも１つのストリーム内コマンドを受信することであって、前記１つまたは複数のストリーム内コマンド内の前記少なくとも１つのストリーム内コマンドは、前記先行ページに対して順次的でないアドレスを含む、受信することと
を含む、方法。
【請求項１８】
最初のページを前記インターフェースに出力する前に、前記第１のコマンドと、第２のアドレスを含む第１のストリーム内コマンドと、第３のアドレスを含む第２のストリーム内コマンドとを受信することを含む、請求項１７に記載の方法。
【請求項１９】
前記ページのストリーム内のページを出力した後に、前記シーケンス内の前記先行ページの出力を開始する前に、前記少なくとも１つのストリーム内コマンドを使用して次のページアドレスを決定することを含む、請求項１７に記載の方法。
【請求項２０】
前記メモリデバイスはＮＡＮＤフラッシュメモリを備える、請求項１７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
優先出願
本出願は２０１８年１０月１７日に出願された米国仮特許出願第６２／７４６，９１１号（ＭＸＩＣ２２７１−０）の利益を主張し、その出願は引用により本明細書に組み込まれている。
【０００２】
本発明は連続リード動作、より詳細には連続ページリード動作をサポートするＮＡＮＤフラッシュデバイスなどの集積回路メモリデバイスに関する。
【背景技術】
【０００３】
ｔＲとして指定される場合があるリードレイテンシは、リードコマンドの受信と、リードコマンドによって要求されたデータが出力において利用可能になる時刻との間の時間である。
【０００４】
このタイプのレイテンシは、ＮＡＮＤフラッシュデバイスでは比較的長くなり得る。結果として、ＮＡＮＤフラッシュはいくつかの動作に関してＮＯＲフラッシュなどの他のタイプのメモリよりもかなり低速になり得る。
【０００５】
ＮＡＮＤフラッシュデバイスのこのレイテンシに対処するために、キャッシュリードおよび連続リードとして知られているコマンドシーケンスが開発されている。
【０００６】
キャッシュリードコマンドシーケンスでは、キャッシュまたはデバイス上の他のバッファメモリ構造を使用してプロシージャの一部、たとえば、エラー検出訂正などをオーバーラップさせることによって、レイテンシｔＲを短縮することができる。キャッシュリードコマンドシーケンスに見られるレイテンシは、ｔＲＣＢＳＹとして指定される場合がある。これにより、ＮＡＮＤフラッシュを使用するシステムのスループットを向上させることができる。連続コマンドシーケンスでは、ＮＡＮＤフラッシュデバイスは、順次ページがページ間の遅延なく利用可能となるように、初期レイテンシ（ｔＲ）の後に順次ページを出力するよう構成されている。ＮＡＮＤフラッシュの連続リード動作は、以下のような３つの基本ステップを含み得る。
（ステップ１）開始フェーズ：ホストはページリード（Ｃ１）コマンドを発行して新たなページアドレスのデータをキャッシュに読み出す必要がある。ページデータを読み出すのにリードレイテンシｔＲを要する。
（ステップ２）順次的連続リードフェーズ：ホストはこのフェーズにおいてメモリデバイス上のインターフェースからデータを連続的に読み出す。
（ステップ３）終了フェーズ：リードプロトコルに応じて、ホストは「終了」（Ｃ３）コマンドを発行するか（一部の一般的なＮＡＮＤフラッシュデバイス）、またはチップ選択制御信号ＣＳを０から１に上げて（ＳＰＩ  ＮＡＮＤフラッシュデバイス）、順次的連続リード動作を終了させる必要がある。順次的連続リード動作を終了させるのにリセットレイテンシｔＲＳＴを要する。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
しかしながら、非順次ページが要求される場合、新たなコマンドシーケンスが導入されなければならず、その新たなシーケンスの開始に関わるレイテンシが付随する。
【０００８】
ＮＡＮＤフラッシュおよび他のタイプのメモリデバイスについての非順次ページ間の長いレイテンシを克服することができる技術を提供することが望ましい。
【課題を解決するための手段】
【０００９】
ページバッファと、ページ幅未満のＩ／Ｏ幅を有するＩ／Ｏデータユニットの入力／出力インターフェースとを含む、ページモードＮＡＮＤフラッシュなどのメモリデバイスは、非順次アドレスを有する連続ページリードをサポートする。入力／出力インターフェースは、シリアルインターフェース（たとえば、ＳＰＩ）、またはパラレルインターフェースを備えることができる。
【００１０】
非順次アドレスを有する連続リードをサポートするためのコマンドプロトコルが提供される。コマンドプロトコルは、開始アドレスおよびその後の順次アドレスを有するページのストリームの連続リードを開始するための第１のコマンドと、ページのストリームのキャッシュリードを開始するための第２のコマンドまたは制御イベントと、シーケンス内の先行ページが出力される前に非順次アドレスを提供するためのストリーム内コマンドとを含むことができる。結果として、順次ページから非順次ページへの遷移を含む連続リードを、ページのストリームの出力中にインターフェースにおける待ち状態なく、または待ち状態がほとんどなく実施することができる。
【００１１】
コントローラは、ページのストリームをＩ／Ｏインターフェースにおいて出力するための連続ページリード動作を制御する。連続リード動作は、連続するページのストリームを出力するためのコマンドのシリーズに応答することを含む。コマンドのシリーズは、第１のコマンドと、ストリーム内の先行ページの出力を完了する前に受信される１つまたは複数のストリーム内コマンドとを含み、ストリーム内コマンドは、ページのストリームの出力を差し挟むことができるように受信およびデコードされる。非順次的連続ページリード動作では、第１のコマンドは、順次アドレスを有する複数のページの連続ページリード動作を開始するためのアドレスを含むことができ、少なくとも１つのストリーム内コマンドは、ページのストリーム内の非順次アドレスを有するページを提供するための非順次アドレスを含む。
【００１２】
メモリデバイスがコントローラを有し、コントローラが、非順次ページをページバッファに転送するためのリードを開始することと、非順次アドレスを含むストリーム内コマンドの最後のＩ／Ｏサイクルに連続するまたは素早く続くことができるように、先行ページを入力／出力インターフェースに提供することとによって、非順次アドレスを含むストリーム内コマンドに応答する技術を説明する。また、非順次ページコマンドは、ストリーム内の先行ページに続くことができ、ここで先行ページは、ストリームにおいてそのページに１ページ先行するストリーム内コマンドのシリーズ内の先行ストリーム内コマンドに含まれるページアドレスを有する。他の実施形態では、非順次ページは、ストリームにおいてそのページに２ページ先行するストリーム内の先行ページに続くことができ、ここで、非順次アドレスを含むストリーム内コマンドの後に入力／出力インターフェースに提供される先行ページは、コマンドのシリーズにおいて２コマンド分だけ非順次アドレスを含むストリーム内コマンドに先行する先行ストリーム内コマンドによって運ばれるページアドレスを有する。
【００１３】
コントローラが、第１のコマンドに応答して３レベルバッファリングを含むデバイスに対する連続ページリード動作を開始し、ストリーム内の最初にアドレス指定されたページをメモリアレイからページバッファに転送し、最初にアドレス指定されたページをデータパス回路を経由してインターフェースに移動させる技術の例を説明する。また、コントローラは、次のページアドレスを含む第１のリードレイテンシ後の第１のストリーム内コマンドに応答して、ストリーム内の次にアドレス指定されたページをメモリアレイからページバッファに転送し、次にアドレス指定されたページをデータパス回路を経由してインターフェースに移動させる。また、コントローラは、インターフェースから最初にアドレス指定されたページを出力する前に、第２の次のページアドレスを含む第２のリードレイテンシ後の第２のストリーム内コマンドに応答することができる。
【００１４】
本明細書に記載の実施形態では、データパス回路はバッファメモリを含むことができる。また、デバイスは、データパス回路に接続されるエラー検出訂正ＥＣＣ回路を含むことができる。ＥＣＣ回路は、データパス回路内のページに対して、そのページをデバイスの入力／出力インターフェースにおいて出力できるようにする前に、ＥＣＣ機能を実行する。ＥＣＣ回路は、ページ幅未満であってＩ／Ｏ幅を超えるＥＣＣチャンク幅を有するデータチャンクを使用して動作することができる。
【００１５】
データパス回路は、第１の部分および第２の部分を含むバッファメモリと、バッファメモリの第１の部分をＥＣＣ回路およびＩ／Ｏインターフェースに交互に接続し、バッファメモリの第２の部分をＥＣＣ回路およびＩ／Ｏインターフェースに交互に接続するデータパスとを含むことができる。
【００１６】
また、データパス回路は、ページ幅（Ｘ）を有するページバッファに加えて、第２バッファレベルおよび第３バッファレベルを含むマルチレベルバッファメモリを含むことができる。第３バッファレベルは、第１の部分および第２の部分と、第３バッファレベルの第１の部分をＥＣＣ回路およびＩ／Ｏインターフェースに交互に接続し、第３バッファレベルの第２の部分をＥＣＣ回路およびＩ／Ｏインターフェースに交互に接続するデータパスとを含むことができる。第３バッファレベルの第１および第２の部分は、ページ幅未満のバッファ幅（Ｙ）を有することができ（たとえば、ＥＣＣチャンクの幅の倍数）、データパスは、第３バッファレベルの第１および第２の部分をＥＣＣ回路およびＩ／Ｏインターフェースに交互に接続するためのバッファ幅未満のバス幅（Ｚ）を有することができる。
【００１７】
非順次ページを含むページのストリームを読み込むようにメモリを動作させるための方法であって、メモリからページのストリームを出力するためのコマンドのシリーズに応答することであって、シリーズは第１のコマンドおよび１つまたは複数のストリーム内コマンドを含む、応答することと、最初のページアドレス用に第１のコマンドを使用し、後続のページアドレス用に１つまたは複数のストリーム内コマンドを使用して、ページのストリーム内のページのアドレスを決定することと、ストリーム内の先行ページの出力を完了する前に、１つまたは複数のストリーム内コマンド内の少なくとも１つのストリーム内コマンドを受信することであって、１つまたは複数のストリーム内コマンド内の少なくとも１つのストリーム内コマンドは、先行ページに対して順次的でないアドレスを含む、受信することとを含む、方法を説明する。
【００１８】
メモリアレイがページモードＮＡＮＤフラッシュを備える実施形態を説明する。本明細書に記載の技術は、他のタイプのメモリデバイスにも適用することができる。
【００１９】
本発明の他の態様および利点は、以下の図面、詳細な説明、および特許請求の範囲を検討すると理解することができる。
【図面の簡単な説明】
【００２０】
【図１】本明細書に記載の非順次的ページ連続リードをサポートする集積回路メモリデバイスの簡略ブロック図である。
【図２】本明細書に記載の非順次的ページ連続リードのためのコマンドシーケンスの図である。
【図３】本明細書に記載の非順次的ページ連続リードのための代替的なコマンドシーケンスの図である。
【図４】ＥＣＣを使用する、本明細書に記載の非順次的ページ連続リードをサポートするデバイスのための２レベルバッファリングを示すブロック図である。
【図５】２レベルバッファリングを使用する、本明細書に記載の非順次的ページ連続リードの一実施形態のパイプラインデータフロー図である。
【図６】２レベルバッファリングを使用する、本明細書に記載の非順次的ページ連続リードの代替的な実施形態のパイプラインデータフロー図である。
【図７】ＥＣＣを使用する、本明細書に記載の非順次的ページ連続リードをサポートするデバイスのための３レベルバッファリングを示すブロック図である。
【図８】３レベルバッファリングを使用する、本明細書に記載の非順次的ページ連続リードの一実施形態のパイプラインデータフロー図である。
【図９】３レベルバッファリングを使用する、本明細書に記載の非順次的ページ連続リードの代替的な実施形態のパイプラインデータフロー図である。
【図１０】３レベルバッファリングを使用する、本明細書に記載の非順次的ページ連続リードの他の代替的な実施形態のパイプラインデータフロー図である。
【図１１】図１０に示す代替例についての、本明細書に記載の非順次的ページ連続リードのためのコマンドシーケンスの図である。
【発明を実施するための形態】
【００２１】
図１〜図１１を参照して、本発明の実施形態の詳細な説明を提供する。
【００２２】
図１は、一実施形態による集積回路メモリデバイスの簡略化したチップのブロック図である。集積回路メモリデバイス１００は、データをＥＣＣと共に記憶するメモリアレイ１６０、たとえば、ＮＡＮＤフラッシュアレイを単一の集積回路基板上に含む。本明細書に記載のメモリデバイスは、マルチチップモジュール、積層チップ、および他の構成を使用して実装することもできる。
【００２３】
コマンドデコーダ１０８を有する制御ロジック１１０は、本明細書に記載の非順次的ページ連続リード動作を実行するためのコマンドの受信に応答して、以下でより詳細に説明するようにランダムなページアドレスを有する連続リードをサポートするステートマシンなどのロジックを集積回路メモリデバイス１００上に含む。制御ロジック１１０は、図で矢印によって表す制御信号と、アドレスとをバス１３０上に出力する。バス１３０上に供給されるアドレスは、たとえば、制御ロジック１１０内のアドレスカウンタの出力（たとえば、順次アドレス）、または非順次アドレスを含み得る受信したコマンド内で運ばれるアドレスを含むことができる。
【００２４】
デコーダ１４０は、複数のワード線１４５に結合され、ＥＣＣ付きメモリアレイ１６０内の行に沿って配置され、またページバッファ１７１に結合される。ページバッファ１７１は、ＥＣＣ付きメモリアレイ１６０に対してデータを読み書きするための、ＥＣＣ付きメモリアレイ１６０内の列に沿って配置される複数のビット線１６５に結合される。
【００２５】
ページバッファ１７１は、ビット線ごとに１つまたは複数の記憶素子を含むことができる。アドレスデコーダ１４０は、アレイ１６０内の特定のメモリセルを選択し、それぞれの接続用のビット線を介してページバッファ１７１に結合することができる。ページバッファ１７１は、これらの特定のメモリセルに対して並列に読み書きされるデータを記憶することができる。ページバッファ１７１は、数千ビット、たとえば、２Ｋビットもしくは４Ｋビットまたはそれ以上を、関連するＥＣＣコードを含む追加ビットと共に含むページのページ幅を有することができる。１ページは複数のＥＣＣチャンクを含むことができ、ＥＣＣチャンクはデータのセグメントと、関連するＥＣＣコード（すなわち、データのセグメントに対するＥＣＣ用に計算されたもの）とを含む。実施形態では、各ページは、２分の１ページまたは４分の１ページに、関連するＥＣＣコードのサイズを加えた値に等しいＥＣＣ幅を有する２つのＥＣＣチャンクを含む。いくつかの実施形態では、１ページあたり３つ以上のＥＣＣチャンクがあってもよい。
【００２６】
この実施形態では、ページバッファからインターフェースへのデータパス回路内のバッファメモリ構造は、この例ではバッファＢＵＦ＿Ａ１８１およびバッファＢＵＦ＿Ｂ１８２と命名した２つの部分を含む第２バッファレベルを有するページバッファを含む２レベルバッファリングを含み、第２バッファレベルの各部分は、ページバッファの中身の一部分、たとえば２分の１を記憶することができ、ページバッファの中身の一部分は、１つまたは複数のＥＣＣチャンクを含むことが好ましい。また、第２バッファレベルの各部分は独立して読み書きすることができる。いくつかの実施形態では、バッファＢＵＦ＿Ａ、ＢＵＦ＿Ｂは、異なるアドレスへの独立した読み書きを可能にするデュアルポートまたはマルチポートメモリ技術を使用して実装することができ、または別々のアドレスデコード回路および読み出し回路を有する複数のメモリのバンクを使用して実装することができる。
【００２７】
ページバッファ１７１はＸ本のデータ線を介してメモリアレイ１６０に結合され、ここでＸはページ＋ＥＣＣコードの幅であり、また、それぞれＹビットのバス１７５、１７６を介してバッファ構造の第２レベルバッファ１８１、１８２（ＢＵＦ＿Ａ、ＢＵＦ＿Ｂ）に結合され、ここでＹはページバッファ１７１の幅Ｘの２分の１以上に等しい幅とすることができる。第２レベルバッファＢＵＦ＿Ａ、ＢＵＦ＿Ｂはそれぞれ、たとえば、１行×複数列のアーキテクチャを有するＳＲＡＭ（スタティックランダムアクセスメモリ）メモリ構造を使用するキャッシュメモリによって実装することができる。たとえば、１ページは２０４８ビット＋ＥＣＣコードを含むことができ、ＢＵＦ＿Ａは１０２４（＋ＥＣＣビット）列の１つの行を有し、すなわち、１０２４＋ＥＣＣビットの幅を有することができる。バッファＢＵＦ＿ＡおよびＢＵＦ＿Ｂは、ページバッファ内のデータのページをバッファＢＵＦ＿ＡおよびＢＵＦ＿Ｂに並列に、１バッファメモリサイクルを使用して並列に転送できるように動作させることができる。また、バッファＢＵＦ＿ＡおよびＢＵＦ＿Ｂは、ページバッファ内のデータのページの１部分をバッファＢＵＦ＿ＡおよびＢＵＦ＿Ｂのそれぞれに並列に転送できるように動作させることができ、それによって、同一または異なるバッファメモリサイクル内で、ページの第１の部分を第２バッファレベルの第１の部分（たとえばＢＵＦ＿Ａ）に転送し、ページの第２の部分を第２バッファレベルの第２の部分（たとえばＢＵＦ＿Ｂ）に転送することが可能になる。
【００２８】
他の実施形態は、ページバッファ１７１および２つの追加のバッファレベルを含む３レベルバッファ構造を含むことができる。また、ページバッファおよびインターフェースの間のデータパス回路内のバッファメモリ構造の他の配置構成を使用することができる。
【００２９】
第３レベルバッファは、複数行×複数列のアーキテクチャを有するＳＲＡＭベースのキャッシュメモリ構造を使用して実装することができる。後述の第３レベルバッファの第１のメモリユニットおよび第２のメモリユニットは、データパスの幅に等しい幅を有することができる。
【００３０】
エラー検出訂正ＥＣＣ回路１９０は、データバス１８４およびデータバス１８５によってバッファメモリ構造（１８１、１８２）に結合される。データバス１８４および１８５は、１バイトまたは１ワードなどの、ＥＣＣチャンク未満のバス幅を有することができ、これらをＥＣＣ回路１９０が使用して、ＥＣＣチャンクを循環的に切り替えることによって、エラー検出およびエラー訂正のＥＣＣ演算（たとえば、シンドローム計算、キー計算、チェン（Ｃｈｉｅｎ）探索）を実行する。ＥＣＣ回路はデータバス１９１によってバッファメモリ構造（１８１、１８２）に結合され、必要に応じてデータを行き来させるようにする。
【００３１】
Ｉ／Ｏインターフェース１０５はデータバス１９１によってＥＣＣ回路およびバッファメモリ構造（１８１、１８２）に結合される。
【００３２】
入力／出力データおよび制御信号は、インターフェース１０５、コマンドデコーダ１０８および制御ロジック１１０、ならびに集積回路メモリデバイス１００上の入力／出力ポート１９５、または集積回路メモリデバイス１００の内外の他のデータソースの間で移動させる。いくつかの実施形態では、ポート１９５はオンチップホスト回路、たとえば、汎用プロセッサもしくは専用用途回路、またはメモリアレイ１６０によってサポートされるシステムオンチップ機能を提供するモジュールの組み合わせに接続することができる。
【００３３】
一実施形態では、インターフェース１０５は、コマンド、アドレス、およびデータが伝達されるＩ／Ｏポート１９５のセットを含むシリアルインターフェースである。シリアルインターフェースは、コマンドチャネルがアドレスおよびデータにより使用されるＩ／Ｏピンを共有するシリアルペリフェラルインターフェース（ＳＰＩ）バス仕様に基づくまたは準拠することができる。たとえば、集積回路メモリデバイス１００は、ＳＰＩバス信号を送受信するためのピンを使用する入力／出力ポートを含むことができる。あるピンを、コマンドにも使用可能なシリアル入力データ／アドレス信号ＳＩを運ぶ入力データ線に接続することができる。１つまたは複数の他のピンを、シリアル出力データ信号ＳＯを運ぶ１つまたは複数の出力データ線に接続することができる。他のピンを、シリアルクロック信号ＳＣＬＫを運ぶクロック線に接続することができる。さらに他のピンを、チップ有効化またはチップ選択信号ＣＳ＃を運ぶ制御線に接続することができる。
【００３４】
他のタイプのインターフェース、たとえば、パラレルインターフェースおよび他のタイプのシリアルインターフェースを使用することもできる。特定の集積回路メモリデバイス１００上のＩ／Ｏポート１９５は、Ｉ／Ｏデータ幅を有する出力データを提供するように構成することができ、Ｉ／Ｏデータ幅は、いくつかの例では、インターフェースクロック（たとえば、ＳＣＬＫ）サイクルあたり、並列の１、４、８、１６、３２ビットまたはそれ以上とすることができる。Ｉ／Ｏインターフェース１０５は、ＦＩＦＯバッファ、シフトレジスタバッファ、または他のサポート回路を、ＳＰＩインターフェースのＳＣＬＫレートなどのポートクロックレートのポートにおいてインターフェースで受信したデータを送信するための送信器と共に含むことができる。
【００３５】
図１に示す例では、バイアス調整（ｂｉａｓ  ａｒｒａｎｇｅｍｅｎｔ）ステートマシンを使用する制御ロジック１１０は、メモリアレイ内のページからページバッファにデータを転送するページリードを含む、リード電圧、プログラム電圧、および消去電圧などの、ブロック１２０の１つまたは複数の電圧源を介して生成または提供されるバイアス調整供給電圧の印加を制御する。制御ロジック１１０は、マルチレベルバッファ構造、ＥＣＣ回路１９０、およびＥＣＣ付きメモリアレイ１６０に結合される。
【００３６】
制御ロジック１１０およびコマンドデコーダ１０８は、ステートマシンおよびサポートロジックを含む専用ロジック回路を使用して実装することが可能なコントローラを構成する。代替的な実施形態では、制御ロジックは、デバイスの動作を制御するためのコンピュータプログラムを実行する、同一の集積回路上で実装することが可能な汎用プロセッサを備える。さらに他の実施形態では、専用ロジック回路および汎用プロセッサの組み合わせを利用して、制御ロジックを実装することができる。
【００３７】
コントローラのコマンドデコーダ１０８および制御ロジック１１０は、非順次ページの連続リード動作を実行するように構成され、これにより連続リード中のランダムなページアドレスへのシフトが可能になる。本明細書に記載の実施形態では、コントローラは、入力／出力インターフェースにおいて受信されたコマンドに応答して、ページのストリームをＩ／Ｏインターフェースにおいて出力するための連続ページリード動作を含むメモリ動作を制御する。連続リード動作の実行はコマンドのシリーズに応答することを含み、シリーズは第１のコマンドおよび１つまたは複数のストリーム内コマンドを含み、ここでストリーム内コマンドは本明細書では、第１のコマンドの後のコマンドであって、ストリーム内の先行ページの出力を完了する前に、ストリーム内の先行ページがバッファメモリ構造を含むデータパス回路を通過している間に受信されるコマンドと定義する。ストリーム内コマンドは、ページがバッファメモリ構造を通過する前のストリーム内の先行ページの最後の出力バイトに連続する、またはこれに素早く続く、たとえば４インターフェースクロックサイクル未満のクロックサイクルに受信することができる。
【００３８】
図２に、２つのレベルを有する非順次的ページ連続リードを示す。上位レベルは、非順次的ページ連続リードのための、Ｉ／Ｏインターフェースにおいてページのストリーム内のデータのページが差し挟まれたコマンドのシリーズを示す。コマンドのシリーズは、第１のコマンドＣ１と、複数のストリーム内コマンドＣ２およびＣ３とを含む。下位レベルは、非順次的ページ連続リードの実行中のページバッファの動作を示す。
【００３９】
この例では、非順次的ページ連続リードは、Ｉ／Ｏインターフェースにおいてインターバル２００内に第１のコマンドＣ１を受信することによって開始される。第１のコマンドＣ１は連続リードを開始し、ページＸの開始アドレスを提供する。コマンドＣ１のデコードに応答して、アレイはインターバル２０１中にページＸを読み込むように動作し、ページＸのデータはインターバル２０２中にページバッファにおいて利用可能になる。ページＸのデータがメモリアレイからページバッファにロードされ、インターフェースに向かってデータパス回路を通過するリードレイテンシｔＲの後に、次のページアドレスを提供する第２のコマンドＣ２がインターバル２０３中に受信される。第２のコマンドの時点で、初期ページ（このページのストリーム内の最初のページ）のデータは、Ｉ／Ｏインターフェースに向かってバッファメモリ構造を含むデータパス回路を通過している。この実施形態では、最初のページは、インターバル２０４の開始時の、インターバル２０３内の第２のコマンドＣ２の終了に連続するＩ／Ｏサイクル内に、インターフェースにおいて利用可能になる。この例では、インターバル２０３中にＣ２内で運ばれる次のページアドレスは、順次アドレスであるページＸ＋１である。
【００４０】
インターバル２０４中にページＸのデータを出力した後、インターフェースにおけるインターフェース待ち状態のアイドルサイクルなしで、次のページアドレスを含む第２のコマンドＣ２がインターバル２０６中に受信される。第２のコマンドに続いて、先行ページＸ＋１（すなわち、前のコマンドでアドレス指定されたページ）が出力される。この例では、インターバル２０６中に受信された次のページアドレスは、非順次アドレスであるページＹである。インターバル２０６中のコマンドＣ２は、ページＸ＋１のデータがインターバル２０５中にインターフェースにおいて出力される前に受信される。インターバル２０７中に、メモリはページＹからページバッファにデータを移動させるように動作する。インターバル２０６内のコマンドＣ２に続くインターバル中にＩ／Ｏインターフェースにおいて利用可能な先行ページは、ページＸ＋１である。
【００４１】
ページＸ＋１のデータを出力した後、先行ページであるページＹを出力する前に、次のページアドレスであるページＹ＋１を提供する次のコマンドＣ２がＩ／Ｏインターフェースにおいて受信される。次のページアドレスＹ＋１が受信された後、アレイはインターバル２０８中にページＹ＋１のデータをページバッファに移動させるように動作する。このシーケンスは無限に続くことができる。連続リードシーケンスを終了させるために、この例では第３のコマンドＣ３が、この例ではインターバル２０９中に、Ｉ／ＯインターフェースにおけるページＹのデータの出力の終了時に受信される。第３のコマンドＣ３はアドレスを提供せず、先行ページＹ＋１からのデータを、その後のインターバル２１０においてＩ／Ｏインターフェースに移動させることができる。
【００４２】
本明細書に記載の実施形態では、集積回路メモリデバイスは、バッファメモリ構造を含むデータパス回路と、Ｉ／Ｏインターフェースとに接続されたＥＣＣ回路を含む。ページバッファからＩ／Ｏインターフェースへのデータの転送中に、ＥＣＣ回路を利用してエラー検出訂正を行う。ＥＣＣ回路がその機能を実行するのに必要な時間は、データパス回路へのバッファリングによって隠される。このバッファリングは、データをデータパス回路のバッファメモリ内に移動させ、外に移動させることによって、提供することができる。
【００４３】
図２に示す例では、ストリーム内コマンドＣ２（連続ページキャッシュリードコマンド）は、シーケンス内の次のアドレスを識別し、ページのストリーム内の各ページの先行ページを出力するためのアドレスを含む。このように、この実施形態では、アドレスを有するストリーム内コマンドを受信することによって、連続リード動作中にＩ／Ｏインターフェースのリソースの少なくとも一部が消費される。しかしながら、連続リードプロシージャによって、コマンドを提供しているホストがシーケンス内のあるページの出力の終了時に待機している場合、次のページのコマンドをインターフェースにおけるアイドルサイクルなしで提供することができ、コマンドの最後のサイクルに連続して（すなわち、Ｉ／Ｏインターフェースにおけるアイドルサイクルなしで）、またはこれに素早く続いて、バッファ内のページを出力することができる。
【００４４】
図３に代替例を示す。図２と同様に、図３は２つのレベルを含む。上位レベルは、非順次的ページ連続リードのための、Ｉ／Ｏインターフェースにおいてページのストリーム内のデータのページが差し挟まれたコマンドのシリーズを示す。コマンドのシリーズは、第１のコマンドＣ１と、複数のストリーム内コマンドＣ２およびＣ３とを含む。下位レベルは、非順次的ページ連続リードの実行中のページバッファの動作を示す。図示のように、この例において順次ページに対しては、各ページを出力するためにストリーム内コマンドを提供する必要がない。その代わりに、コントローラは次のアドレスを運ぶコマンドをチェックすることができ、そのときに何も存在しない場合、アドレスカウンタを使用して自動的に、順次アドレスを有するストリーム内のページを提供し続けることができる。ページの出力の間にコマンドをチェックするのに必要な時間は非常に短くすることができ、たとえば、１インターフェースクロックサイクル、または４インターフェースクロックサイクル未満とすることができる。
【００４５】
図３の例では、非順次的ページ連続リードは、Ｉ／Ｏインターフェースにおいてインターバル３００内に第１のコマンドＣ１を受信することによって開始される。第１のコマンドＣ１は連続リードを示し、ページＸの開始アドレスを提供する。コマンドＣ１のデコードに応答して、アレイはインターバル３０１中にページＸを読み込むように動作し、ページＸのデータはインターバル３０２中にページバッファにおいて利用可能になる。ページのデータがメモリアレイからページバッファにロードされ、バッファメモリシステムを経由してインターフェースに移動されるリードレイテンシｔＲの後に、次のページアドレスを提供する第２のコマンドＣ２がインターバル３０３中に受信され、それに続いて最初のページのデータが連続するインターバル３０４中にＩ／Ｏインターフェースによって出力される。この例では、次のページは順次アドレスであるページＸ＋１を有する。インターバル３０３中に第２のコマンドＣ２を受信した後、メモリはインターバル３０５内にページＸ＋１のデータをページバッファにロードするように動作し、そのデータはデータパス回路を経由してＩ／Ｏインターフェースに移動されてインターバル３０６中に出力され、これはインターバル３０４に連続する。この例では、出力される次のアドレスは順次アドレスであるページＸ＋２であり、これをインターバル３０７内にページバッファにロードすることができる。アドレスＸ＋１およびＸ＋２は順次的であるので、アドレスは追加のコマンドによってではなく、コントローラ内のアドレスカウンタによって提供することができるので、Ｉ／Ｏインターフェースにおけるリソースが節約される。コントローラは、アレイからのページリードを開始して次のページをページバッファに移動させる前に、ストリーム内コマンドについてコマンドインターフェースを監視するように動作することができる。ページアドレスがストリーム内コマンドによって提供された場合、そのアドレスが利用される。ストリーム内コマンドがない場合、コントローラはアドレスカウンタの出力を使用して順次ページを選択することができる。
【００４６】
非順次アドレスを提供するために、次のストリーム内コマンドＣ２が、インターバル３０６終了時のインターバル３０８中に、先行ページＸ＋２を出力する前に提供される。この例では、インターバル３０８内の次のコマンドＣ２は、非順次アドレスであるページＹを運ぶ。ページＹのデータは、インターバル３０９中にページバッファにロードされ、Ｉ／Ｏインターフェースに移動されてインターバル３１０中に出力され、これは先行ページであるページＸ＋２に連続する。インターバル３１０中にページＹが出力されている間に、メモリはインターバル３１１内に次のページＹ＋１のデータをページバッファにロードするように動作することができる。そして、順次リードを終了させる第３のコマンドＣ３を、この例ではインターバル３１２内に受信し、シーケンス内の最終ページ、この例ではページＹ＋１をインターバル３１３中に出力するまで、ページをこのように順次的に出力することができる。
【００４７】
図４は、２レベルバッファリング（ページバッファ／バッファＢＵＦ＿Ａ、バッファＢＵＦ＿Ｂ）を使用する、図２および図３を参照して説明した非順次的ページ連続リードのために動作可能な、メモリアレイと、ＥＣＣ回路を含むデータパス回路とを示すブロック図である。これは、図１に示す集積回路メモリデバイス１００などにおいて利用可能な回路編成の一例である。
【００４８】
図４では、メモリアレイ４００、たとえば、ＮＡＮＤフラッシュアレイがページバッファ４０１に結合されている。データは単一のページリード動作中にメモリアレイ４００からページバッファ４０１に並列に移動することができる。ページバッファ４０１は、バッファＢＵＦ＿Ａ４０２およびバッファＢＵＦ＿Ｂ４０３を含むデータパス回路に、それぞれバス４０４およびバス４０５によって結合される。単一のサイクル内にページバッファ４０１からバッファＢＵＦ＿Ａに２分の１ページを転送するために、バス４０４はページバッファ４０１の幅＋ＥＣＣの半分であるデータ幅を有することができる。同様に、単一のサイクル内にページバッファ４０１からバッファＢＵＦ＿Ｂに２分の１ページを転送するために、バス４０５はページバッファ４０１の幅の半分であるデータ幅を有することができる。ＥＣＣビットはＢＵＦ＿ＡおよびバッファＢＵＦ＿Ｂに含めることができ、またはＢＵＦ＿ＡおよびバッファＢＵＦ＿Ｂと並列した追加のメモリ素子をＥＣＣビットに使用することができる。
【００４９】
バッファＢＵＦ＿ＡおよびバッファＢＵＦ＿Ｂは、有利な実施形態では、データおよびデータに関連するＥＣＣコードを含む少なくとも１つのＥＣＣチャンクを保持するように構成され、これにより他のバッファ内のデータとは独立してＥＣＣ回路４１６により作用することができる。
【００５０】
図示のように、データパス回路は、バッファＢＵＦ＿Ａに接続されたバス４１０と、バッファＢＵＦ＿Ｂに接続されたバス４１１とを含む。バス４１０はマルチプレクサ４１２およびマルチプレクサ４１３に接続される。同様に、バス４１１はマルチプレクサ４１２およびマルチプレクサ４１３に接続される。マルチプレクサ４１２の出力は線４１４によってＥＣＣ回路４１６に接続される。マルチプレクサ４１３の出力は線４１５によってＩ／Ｏインターフェース４１７に接続され、Ｉ／Ｏインターフェース４１７はアドレス指定されたページの出力データを提供する。データを、バス４１０、４１１によってサポート可能な、バイトまたはワードなどのアドレス指定可能な単位でバス４１０およびバス４１１上で移動させることによって、ＥＣＣ回路４１６によって使用することができ、インターフェース４１７によってＩ／Ｏポート４１８に出力することができる。
【００５１】
図５は、図４のような２つのバッファレベル（ページバッファ／バッファＢＵＦ＿Ａ、バッファＢＵＦ＿Ｂ）を有するデータパス回路を利用する非順次的ページ連続リードのために、デバイス用のコントローラ内のステートマシンおよびサポートロジックを使用して実装される、図２のような非順次的ページ連続リードのパイプラインデータフローを示す図である。この図では、水平軸は時間を表し、各垂直レベルは以下のような詳細なデータ移動に対応する。
０−１：新たなページのページリードコマンドＣ１を受信する。
０−２：データを読み込むためのリードフロムキャッシュ（ｒｅａｄ  ｆｒｏｍ  ｃａｃｈｅ）ストリーム内コマンドＣ２を受信する。
１：ページデータおよびＥＣＣをメモリアレイからページバッファに移動させる（両半分）。
２−１：ページバッファの前半からバッファＢＵＦ＿Ａにデータを移動させる。
２−２：ページバッファの後半からバッファＢＵＦ＿Ｂにデータを移動させる。
３−１：バッファＢＵＦ＿Ａにおいてエラー検出訂正用のＥＣＣロジックを適用する。
３−２：バッファＢＵＦ＿Ｂにおいてエラー検出訂正用のＥＣＣロジックを適用する。
４−１：バッファＢＵＦ＿ＡからＩ／Ｏインターフェースのデータパスにデータを移動させる。
４−２：バッファＢＵＦ＿ＢからＩ／Ｏインターフェースのデータパスにデータを移動させる。
【００５２】
シーケンス終了コマンドは図５には示していない。これは上述のように実装することができる。また、他の実施形態は、コマンド以外の制御信号によってシーケンスの終了をシグナリングすることができる。
【００５３】
図５では、ページＸの先頭アドレスを提供する第１のコマンドＣ１が、レベル０−１の開始時に受信される。ページＸについて領域５００内の要素によって示すようにレベル４−２まで対角線上に下っていくと、レベル１においてページＸのデータがページバッファにロードされる。ページバッファから、レベル２−１においてページの前半Ｘ（１）がバッファＢＵＦ＿Ａにロードされる。また、後で（または同時に）、レベル２−２においてページの後半Ｘ（２）がバッファＢＵＦ＿Ｂにロードされる。
【００５４】
図面では、（１）および（２）の表記は、それぞれページの第１および第２の部分を表す。したがって、Ｘ（１）はページＸの第１の部分であり、Ｘ（２）はページＸの第２の部分である。
【００５５】
シーケンス内の最初のページについて、バッファＢＵＦ＿Ｂが利用可能であると仮定すると、レベル２−２におけるＢＵＦ＿Ｂへの最初のページの後半のこの転送は、箱５０９によって示すようにレベル２−１におけるＢＵＦ＿Ａへの最初のページの前半の転送と同時に実行することができ、または箱５１０によって示すように後で行うことができる。レベル３−１において、ページＸの前半がバッファＢＵＦ＿Ａ内にある間に、ＥＣＣ回路がページの前半内の１つまたは複数のＥＣＣチャンクに対して作動する。その後レベル３−２において、ページＸの後半がバッファＢＵＦ＿Ｂ内にある間に、ＥＣＣがページの後半内の１つまたは複数のＥＣＣチャンクに対して作動する。最後に、レベル０−２においてキャッシュリードコマンドＣ２が受信されたときに、レベル４−１においてページＸの前半がＩ／Ｏインターフェースに提供されて、出力として提供される。レベル４−２において、ページの後半が、前半に連続してＩ／Ｏインターフェースに提供される。
【００５６】
本明細書に記載のように、ストリーム内コマンドＣ２（リードフロムキャッシュ）は、連続リードシーケンスにおける次のページのアドレスを運ぶことができる。ページのストリームを出力するためのコマンドのシリーズに応答して、連続リードのシーケンス（領域５０１、５０２、５０３、５０４．．．）をこの順序で実行することができる。レベル４−１におけるページＸからインターフェースへのデータの出力を開始する前に、このフローではレベル０−２において、アドレスＸ＋１を含むコマンドＣ２が受信される。また、レベル４−１におけるページＸからインターフェースへのデータの出力は、Ｃ２コマンドの終了に連続して始まる。
【００５７】
ストリーム内コマンドＣ２をこのように使用することによって、連続リードシーケンスを維持しながら非順次アドレスを提供することができる。図５において、これはページＸ（５００）から始まるアドレスシーケンスによって示しており、次のＣ２コマンドはアドレスＸ＋１（５０１）を提供し、次のＣ２コマンドは非順次アドレスＹ（５０２）を提供する。その後のＣ２コマンドはこの例ではアドレスＹ＋１（５０３）を提供する。この例における連続リードは、アドレスＹ＋２（５０４）を提供する次のＣ２コマンドを続ける。連続リードは終了まで継続することができる。
【００５８】
図５に示すプロシージャは、コントローラがページのストリームを出力するためのコマンドのシリーズに応答する一例である。コントローラは、第１のコマンドに応答して連続ページリード動作を開始し、ストリーム内の最初にアドレス指定されたページをメモリアレイからページバッファに転送し、最初にアドレス指定されたページをデータパス回路を経由してインターフェースに移動させる。コントローラは、リードレイテンシの後に受信され、次のページアドレスを含む第１のストリーム内コマンドに応答して、メモリにアクセスして次のページを取得し、これをデータパス回路内を通過させながら、最初にアドレス指定されたページをＩ／Ｏデータユニットのインターフェースから出力する。コントローラは、次のページアドレスを含み得る後続のストリーム内コマンドに応答して、インターフェースからの先行ページの出力中にメモリにアクセスする。２レベルバッファリングを使用するこの例では、先行ページは、ページのストリームにおいて非順次アドレスを含むストリーム内コマンドに１ページ先行する、複数のストリーム内コマンド内の先行ストリーム内コマンドに含まれるページアドレスを有する。
【００５９】
図６は、図４のような２つのバッファレベル（ページバッファ／バッファＢＵＦ＿Ａ、バッファＢＵＦ＿Ｂ）を有するデータパス回路を利用する非順次的ページ連続リードのために、デバイス用のコントローラ内のステートマシンおよびサポートロジックを使用して実装される、図２のような非順次的ページ連続リードのパイプラインデータフローを示す図であり、第１のストリーム内コマンド６０１の後のストリーム内コマンドは、順次アドレスを提供するために使用されない。この図では、水平軸は時間を表し、各垂直レベルは以下のような詳細なデータ移動に対応する。
０−１：新たなページのページリードコマンドＣ１を受信する。
０−２：データを読み込むためのリードフロムキャッシュストリーム内コマンドＣ２を受信する。
１：ページデータおよびＥＣＣをメモリアレイからページバッファに移動させる（両半分）。
２−１：ページバッファの前半からバッファＢＵＦ＿Ａにデータを移動させる。
２−２：ページバッファの後半からバッファＢＵＦ＿Ｂにデータを移動させる。
３−１：バッファＢＵＦ＿Ａにおいてエラー検出訂正用のＥＣＣロジックを適用する。
３−２：バッファＢＵＦ＿Ｂにおいてエラー検出訂正用のＥＣＣロジックを適用する。
４−１：バッファＢＵＦ＿ＡからＩ／Ｏインターフェースのデータパスにデータを移動させる。
４−２：バッファＢＵＦ＿ＢからＩ／Ｏインターフェースのデータパスにデータを移動させる。
【００６０】
シーケンス終了コマンドは図６には示していない。これは、ページリードコマンド６００と、それに続く１つまたは複数のストリーム内コマンド６０１、６０２、６０３、６０４、６０５とを含めて、上述のように実装することができる。また、他の実施形態は、コマンド以外の制御信号によってシーケンスの終了をシグナリングすることができる。
【００６１】
図６が図５と異なるのは、Ｃ２コマンド６０２の後に、ページのストリームが順次アドレスＹ、Ｙ＋１、およびＹ＋２と、その後の非順次アドレス６０５  Ｚとを含むという点である。したがって、アドレスＹを提供するＣ２コマンド６０２の後に、コントローラは、コマンドなしで内部のアドレスカウンタを使用してアドレスＹ＋１のページにアクセスし、次いでコマンドなしで内部のアドレスカウンタを使用してアドレスＹ＋２のページにアクセスする。これにより、データフローが中断されず、または時刻６０９および６１０においてコマンドを受信するのに十分なほど長くは中断されないので、より優れたスループットが可能になる。
【００６２】
図７は、３レベルバッファリング（ページバッファ／バッファＢＵＦ＿２＿Ａ、バッファＢＵＦ＿２＿Ｂ／バッファＢＵＦ＿３＿Ａ、バッファＢＵＦ＿３＿Ｂ）を使用する、本明細書において説明している非順次的ページ連続リードのために動作可能な、メモリアレイと、ＥＣＣ回路を含むデータパス回路とを示すブロック図である。これは、図１の集積回路メモリデバイス１００などにおいて利用可能な回路編成の他の例である。第２および第３バッファレベルは、図１に関連して上述したＳＲＡＭおよびキャッシュ技術を使用して実装することができる。
【００６３】
図７では、メモリアレイ７００、たとえば、ＮＡＮＤフラッシュアレイがページバッファ７０１に結合されている。データは単一のリード動作中にメモリアレイ７００からページバッファ７０１に並列に移動することができる。ページバッファ７０１は、バッファＢＵＦ＿２＿Ａ（７０２）およびバッファＢＵＦ＿２＿Ｂ（７０３）を含む第２レベルバッファを含むデータパス回路に、バス７０４およびバス７０５によって結合される。単一のサイクル内にページバッファ７０１からバッファＢＵＦ＿２＿Ａに２分の１ページを転送するために、バス７０４はページバッファ７０１の幅（ＥＣＣビットを含む）の半分であるデータ幅を有することができる。同様に、単一のサイクル内にページバッファ７０１からバッファＢＵＦ＿２＿Ｂに２分の１ページを転送するために、バス７０５はページバッファ７０１の幅の半分であるデータ幅を有することができる。
【００６４】
第２レベルバッファであるバッファＢＵＦ＿２＿Ａは、バス７０４と同一の幅（すなわち、２分の１ページ）を有し得るデータパスによって、第３レベルバッファであるバッファＢＵＦ＿３＿Ａ（７１１）に結合され、これにより単一のサイクル内でバッファＢＵＦ＿２＿ＡからバッファＢＵＦ＿３＿Ａにデータを転送することが可能になる。同様に、バッファＢＵＦ＿２＿Ｂは、バス７０５と同一の幅（すなわち、２分の１ページ）を有し得るデータパスによって、バッファＢＵＦ＿３＿Ｂ（７１２）に結合され、これにより１サイクル内でバッファＢＵＦ＿２＿ＢからバッファＢＵＦ＿３＿Ｂにデータを転送することが可能になる。いくつかの実施形態では、第２レベルバッファはページバッファと同一の幅を有することができ、ここに図示した分割された構造ではなく単一のバッファ構造を含んでもよい。
【００６５】
図示のように、データパス回路は、バッファＢＵＦ＿３＿Ａに接続されたバス７２０と、バッファＢＵＦ＿３＿Ｂに接続されたバス７２１とを含む。バス７２０はマルチプレクサ７１４およびマルチプレクサ７１５に接続される。同様に、バス７２１はマルチプレクサ７１４およびマルチプレクサ７１５に接続される。マルチプレクサ７１４の出力は線７１６によってＥＣＣ回路７１８に接続される。マルチプレクサ７１５の出力は線７１７によってＩ／Ｏインターフェース７１９に接続され、Ｉ／Ｏインターフェース７１９はアドレス指定されたページの出力データをポート７２５に提供する。データを、バス７２０、７２１によってサポート可能な、バイトまたはワードなどのアドレス指定可能な単位でバス７２０およびバス７２１上で移動させることによって、ＥＣＣ回路７１８によって使用することができ、インターフェース７１９によってポート７２５に出力することができる。ＥＣＣ回路７１８は第１のＥＣＣ機能回路および第２のＥＣＣ機能回路を含むことができ、これらはバッファＢＵＦ＿２＿Ａ／バッファＢＵＦ＿２＿Ｂ、バッファＢＵＦ＿３＿Ａ／バッファＢＵＦ＿３＿Ｂ構造を使用して交互に利用することができる。いくつかの実施形態では、バス７２０およびバス７２１は、バッファＢＵＦ＿２＿Ａ／バッファＢＵＦ＿２＿Ｂ、およびバッファＢＵＦ＿３＿Ａ／バッファＢＵＦ＿３＿Ｂ構造を含む第２および第３バッファレベルの両方に結合することができる。
【００６６】
図７のような３レベルバッファリングシステムでは、図１１に示すような３ステージの非順次的ページ連続リード動作を実行することができ、これにより、たとえば、Ｉ／Ｏインターフェースにおいて高速出力クロックを使用することが可能になる。
【００６７】
図８は、図７のような３つのバッファレベル（ページバッファ／バッファＢＵＦ＿２＿Ａ、バッファＢＵＦ＿２＿Ｂ／バッファＢＵＦ＿３＿Ａ、バッファＢＵＦ＿３＿Ｂ）を有するデータパス回路を利用する非順次的ページ連続リードのために、デバイス用のコントローラ内のステートマシンおよびサポートロジックを使用して実装される、図７のような非順次的ページ連続リードのデータフローを示す図である。この図では、水平軸は時間を表し、各垂直レベルは以下のような詳細なデータ移動に対応する。
０−１：最初のページ用の最初ページリードコマンドＣ１を受信する。
０−２：ページアドレスを有するストリーム内ページリードコマンドＣ２を受信する。
１：ページデータおよびＥＣＣをメモリアレイからページバッファに移動させる（両半分）。
２：ページデータをページバッファからバッファＢＵＦ＿２＿ＡおよびバッファＢＵＦ＿２＿Ｂに移動させる。
３−１：バッファＢＵＦ＿２＿Ａ内のページの前半からバッファＢＵＦ＿３＿Ａにデータを移動させる。
３−２：バッファＢＵＦ＿２＿Ｂ内のページの後半からバッファＢＵＦ＿３＿Ｂにデータを移動させる。
４−１：バッファＢＵＦ＿３＿Ａにおいてエラー検出訂正用のＥＣＣロジックを適用する。
４−２：バッファＢＵＦ＿３＿Ｂにおいてエラー検出訂正用のＥＣＣロジックを適用する。
５−１：バッファＢＵＦ＿３＿ＡからＩ／Ｏインターフェースのデータパスにデータを移動させる。
５−２：バッファＢＵＦ＿３＿ＢからＩ／Ｏインターフェースのデータパスにデータを移動させる。
【００６８】
シーケンス終了コマンドは図８には示していない。これは上述のように実装することができる。
【００６９】
図８では、シーケンスの最初のページであるページＸを識別する第１の連続リードコマンドＣ１が、レベル０−１のインターバル８００において受信される。ページＸについてレベル５−２まで対角線上に下っていくと、レベル１においてページＸのデータがページバッファにロードされる。この実施形態では、次のページからのデータがページバッファにロードされる前に、この図のレベル２において、ページＸのデータがページバッファからバッファＢＵＦ＿２＿ＡおよびバッファＢＵＦ＿２＿Ｂを含む第２バッファレベルに１回の転送でロードされる。続いて、レベル３−１において、第２バッファレベルにて、データＸ（１）がバッファＢＵＦ＿２＿ＡからバッファＢＵＦ＿３＿Ａに転送される。その後でまたは同時に、レベル３−２において、第２バッファレベルにて、データＸ（２）がバッファＢＵＦ＿２＿ＢからバッファＢＵＦ＿３＿Ｂに転送される。
【００７０】
レベル４−１において、ＥＣＣ回路は、バッファＢＵＦ＿３＿Ａ内のページＸのＥＣＣチャンクＸ（１）に作用する。レベル４−２において、ＥＣＣ回路は、バッファＢＵＦ＿３＿Ｂ内のページＸのＥＣＣチャンクＸ（２）に作用する。
【００７１】
その後、レベル５−１において、バッファＢＵＦ＿３＿Ａ内のページＸのデータＸ（１）が、この例ではインターバル８０２におけるストリーム内コマンドＣ２の受信と同期するように、インターフェースにおいて利用可能になる。
【００７２】
レベル５−２において、バッファＢＵＦ＿３＿Ｂ内のページＸのデータＸ（２）が、バッファＢＵＦ＿３＿ＡからのページＸのデータの出力と同期するように、インターフェースにおいて利用可能になる。
【００７３】
インターバル８００の第１の連続リードコマンドＣ１の後に、レベル２においてページＸのデータが第２レベルバッファに素早く移動され、その後レベル３−１においてページＸの前半が第３レベルバッファに移動される。これによりページバッファがクリアされ、コントローラによって提供される順次アドレスを使用してアクセスされるページＸ＋１が受信される。
【００７４】
インターバル８０２、８０３、８０４および８０５内のＣ２コマンドを含む複数の連続リードコマンドＣ２が続く。この例におけるインターバル８０２内の第２の連続リードコマンドＣ２は、ページＸ＋２の順次ページアドレスを運ぶ。ページＸ＋１のデータがページバッファからデータパス回路に移動された後、ページＸ＋２のデータがページバッファに移動される。
【００７５】
第２の連続リードコマンドＣ２が受信された後、次のアドレス（この例では、ページＹの非順次アドレス）を含む第３の連続リードコマンドＣ２が、インターバル８０３において受信される。Ｃ２コマンドの後に、第１の連続リードコマンドＣ１によってアドレス指定されたページ（ストリームにおいてＹに２ページ先行するもの）の第１の部分が、バッファＢＵＦ＿３＿Ａから読み出される。ページＸ＋１はまだデータパス内にある。
【００７６】
図８に示すように、ページＸ＋１のデータは、データパス回路を通過して、ＥＣＣ回路の作用後に、インターバル８０３において受信されるＣ２コマンドと同期するように、Ｉ／Ｏインターフェースにおいて利用可能になる。
【００７７】
このプロシージャは、連続リード動作が終了されるまで、図８に示すようにデータパス回路を経由するパイプライン形式で続く。
【００７８】
図８に、Ｃ１コマンド、または非順次アドレスを有するＣ２コマンドを発行した後から、Ｃ２コマンドを発行する前までホストが待機するレイテンシｔＲと、ページをインターフェースに出力するのに必要なインターバルｔｒｅａｄ１とを示す。いくつかの実施形態では、ｔＲはｔｒｅａｄ１より長い場合があり、その場合、非順次アドレスを導入すると、スループットがわずかに損なわれる可能性がある。
【００７９】
図９は、図７のような３つのバッファレベルを有するデータパス回路を利用する非順次的ページ連続リードのために、デバイス用のコントローラ内のステートマシンおよびサポートロジックを使用して実装されるパイプラインデータフローを示す図であり、ページリードコマンド９００と、それに続く１つまたは複数のストリーム内コマンド９０１、９０２、９０３、９０４、９０６とを含み、第１のストリーム内コマンド９０２の後、または非順次アドレスに続くストリーム内コマンド９０４の後のストリーム内コマンドは、順次アドレスを提供するために使用されない。したがって、ページＹ＋２は、インターバル９０５においてストリーム内コマンドなしでページバッファにロードされる。この図では、水平軸は時間を表し、各垂直レベルは以下のような詳細なデータ移動に対応する。
０−１：最初のページ用の最初ページリードコマンドＣ１を受信する。
０−２：ページアドレスを有するストリーム内ページリードコマンドＣ２を受信する。
１：ページデータおよびＥＣＣをメモリアレイからページバッファに移動させる（両半分）。
２：ページデータをページバッファからバッファＢＵＦ＿２＿ＡおよびバッファＢＵＦ＿２＿Ｂに移動させる。
３−１：バッファＢＵＦ＿２＿Ａ内のページの前半からバッファＢＵＦ＿３＿Ａにデータを移動させる。
３−２：バッファＢＵＦ＿２＿Ｂ内のページの後半からバッファＢＵＦ＿３＿Ｂにデータを移動させる。
４−１：バッファＢＵＦ＿３＿Ａにおいてエラー検出訂正用のＥＣＣロジックを適用する。
４−２：バッファＢＵＦ＿３＿Ｂにおいてエラー検出訂正用のＥＣＣロジックを適用する。
５−１：バッファＢＵＦ＿３＿ＡからＩ／Ｏインターフェースのデータパスにデータを移動させる。
５−２：バッファＢＵＦ＿３＿ＢからＩ／Ｏインターフェースのデータパスにデータを移動させる。
【００８０】
シーケンス終了コマンドは図９には示していない。これは上述のように実装することができる。また、他の実施形態は、コマンド以外の制御信号によってシーケンスの終了をシグナリングすることができる。
【００８１】
図９が図８と異なるのは、Ｃ２コマンド９０３の後に、ページのストリームが順次アドレスＹ、Ｙ＋１、およびＹ＋２と、その後の非順次アドレス９０６  Ｚとを含むという点である。したがって、アドレスＹを提供するＣ２コマンド９０３の後に、コントローラは、アドレスＹ＋１を含むコマンドＣ２の前に内部のアドレスカウンタを使用してアドレスＹ＋１のページにアクセスし、次いでコマンドなしで内部のアドレスカウンタを使用してアドレスＹ＋２のページにアクセスする。これにより、データフローが中断されず、または時刻９０９と、ストリーム内の順次的にアドレス指定されたページ間の他の時刻とにおいてコマンドを受信するのに十分なほど長くは中断されないので、より優れたスループットが可能になる。
【００８２】
図１０は、図７のような３つのバッファレベルを有するデータパス回路を利用する非順次的ページ連続リードのさらに他の実施形態のパイプラインデータフローであり、３つのコマンドレベルを使用してスループットを向上させることができる。この図では、水平軸は時間を表し、各垂直レベルは以下のような詳細なデータ移動に対応する。
０−１：最初のページ用の最初ページリードコマンドＣ１をホストが発行し、コントローラが受信する。
０−２：第２のページのアドレスを有するストリーム内連続ページリードコマンドＣ２をホストが発行し、コントローラが受信する。
０−３：次の後続のページアドレスのページアドレスを有するストリーム内連続ページリードコマンドＣ３をホストが発行し、コントローラが受信する。
１：ページデータおよびＥＣＣをメモリアレイからページバッファに移動させる（両半分）。
２：ページデータをページバッファからバッファＢＵＦ＿２＿ＡおよびバッファＢＵＦ＿２＿Ｂに移動させる。
３−１：バッファＢＵＦ＿２＿Ａ内のページの前半からバッファＢＵＦ＿３＿Ａにデータを移動させる。
３−２：バッファＢＵＦ＿２＿Ｂ内のページの後半からバッファＢＵＦ＿３＿Ｂにデータを移動させる。
４−１：バッファＢＵＦ＿３＿Ａにおいてエラー検出訂正用のＥＣＣロジックを適用する。
４−２：バッファＢＵＦ＿３＿Ｂにおいてエラー検出訂正用のＥＣＣロジックを適用する。
５−１：バッファＢＵＦ＿３＿ＡからＩ／Ｏインターフェースのデータパスにデータを移動させる。
５−２：バッファＢＵＦ＿３＿ＢからＩ／Ｏインターフェースのデータパスにデータを移動させる。
【００８３】
デバイス用のコントローラ内のステートマシンおよびサポートロジックを使用して実装されるこのパイプラインフローでは、アドレスＸを運ぶ第１のリードコマンドＣ１  １０００が受信され、そしてレイテンシｔＲの後に、アドレスＸ＋１を運ぶ第２の連続リードコマンドＣ２  １００２が受信される。このように、コマンドＣ２  １００２が受信およびデコードされるまで、アレイはページＸ＋１についてアクセスされない。その後、ホストはレイテンシｔＲ２の間待機し、ストリームの次のアドレスを運ぶ第３の連続リードコマンドＣ３  １００３を発行する。コマンドＣ３はホストにより時刻１００４、１００５および１００６において、非順次アドレスであっても、コマンド間のインターバルｔｒｅａｄ１で繰り返し発行することができ、終了までストリームの次のアドレスを取得することができる。
【００８４】
図１１に、図２および図３のようなフォーマットの、３レベルバッファリングシステムのための非順次的ページ連続リード動作の、図１０の実施形態のような一実施形態のデータフローを示す。したがって、図１１は２つのレベルを含む。上位レベルは、非順次的ページ連続リードのためのコマンドのシリーズを示す。下位レベルは、非順次的ページ連続リードの実行中のページバッファの動作を示す。
【００８５】
図１１の例では、非順次的連続リードは、Ｉ／Ｏインターフェースにおいてインターバル１１００内で第１のコマンドを受信することによって開始される。第１のコマンドＣ１は連続リードを開始し、ページＸの開始アドレスを提供する。コマンドＣ１のデコードに応答して、アレイはインターバル１１０１中にページＸを読み込むように動作し、ページＸのデータはインターバル１１０２中にページバッファにおいて利用可能になる。ページＸのデータがメモリアレイからページバッファにロードされるリードレイテンシｔＲの後に、ストリーム内コマンドＣ２がインターバル１１０３中にＩ／Ｏインターフェースを使用して受信される。この例では、アレイがシーケンス内の次のページについてアクセスされる前に、次のページアドレスが、ページＸ＋１を示すストリーム内コマンドＣ２によって運ばれる。インターバル１１０３中にストリーム内コマンドＣ２を受信した後、メモリはインターバル１１０５内にページＸ＋１のデータをページバッファにロードするように動作する。その間に、ページＸのデータは、データパス回路（たとえば、バッファＢＵＦ＿２＿Ａ、バッファＢＵＦ＿２＿Ｂ、バッファＢＵＦ＿３＿Ａ、バッファＢＵＦ＿３＿Ｂ）を通過する。データが３レベルデータパス回路を通過可能になる第２のレイテンシｔＲ２の後に、第２のストリーム内コマンドＣ３（キャッシュリード）が、インターバル１１０４においてＩ／Ｏ回路を使用して受信される。第２のストリーム内コマンドＣ３は、連続ページ動作における次のページアドレスを運び、これはこの例ではページＸ＋２であって、先行ページに順次的である。その間に、インターバル１１０５において、ページＸ＋１のデータがページバッファに移動される。第２のストリーム内コマンドＣ３の後に、インターバル１１０６においてキャッシュリード動作が実行されて、ページＸのデータがＩ／Ｏインターフェースに提供される。インターバル１１０６の終了時に、アレイがシーケンス内の次のページについてアクセスされる前に、インターバル１１０８において次のアドレス（ページＹ）を含む次のストリーム内コマンドＣ３（キャッシュリード）がＩ／Ｏインターフェースにおいて受信され、ページＸ＋１のデータの出力が始まり、これは、現在のコマンドの２コマンド前に受信されたインターバル１１０３におけるコマンドによってアドレス指定されたものである。
【００８６】
この例では、インターバル１１０８のキャッシュリードストリーム内コマンド内で運ばれる次のアドレスは、非順次ページＹである。ページＸ＋１のデータがインターフェースに出力されている間に、次のページＸ＋２のデータは、インターバル１１０７においてページバッファにロードされ、データパス回路を通過し始める。ページＹのデータは、インターバル１１０９中にページバッファにロードされる。このようにして、次のコマンドＣ３はページＹ＋１のアドレスを運ぶことができ、ページＹ＋１のデータは、インターバル１１１１中にページバッファにロードすることができる。
【００８７】
図１１に示すように、ページの出力の間に、次のページアドレス（たとえば、ページＹ＋１）を含む次のストリーム内コマンドＣ３（キャッシュリード）が、ページのストリーム内の（２ページ分の）先行ページ（たとえばページＸ＋１）の、Ｉ／Ｏインターフェースへの出力に連続して提供される。この例では、先行ページは、コマンドのシリーズにおいて２コマンド分だけ非順次アドレスを含むストリーム内コマンドに先行する、複数のストリーム内コマンド内の先行ストリーム内コマンドに含まれるページアドレスを有する。
【００８８】
このプロシージャは、第１の終了コマンドが受信されるまで継続される（図示せず）。
【００８９】
非順次ページを含む連続リードのためのコマンドシーケンスに応答する、コントローラを有するデバイスおよび方法を本明細書で説明する。
【００９０】
非順次ページの連続リードのための、コントローラを有するデバイスおよび方法であって、開始アドレスを指定する第１のコマンドを受け付け、それに応答して第１の開始アドレスから開始する順次ページを出力しつつ、第１の開始アドレスに応答して順次ページを出力し、第１のコマンドの順次ページに対して順序通りでない第２の開始アドレスを指定する第２のコマンドを受け付け、第２のコマンドを受け付けて第１のシーケンスからのページが完了した後、それに応答して第２の開始アドレスから開始する順次ページを出力することを含む、デバイスおよび方法を説明する。
【００９１】
非順次ページ間のリードレイテンシを省くために、連続リード（キャッシュリードと同様）に挿入可能なページアドレス入力を有するコマンドを含む連続リード動作を含む、コントローラを有するデバイスおよび方法を説明する。
【００９２】
連続リードに挿入可能なページアドレス入力を有するコマンドを含む連続リード動作を含む、コントローラを有するデバイスおよび方法であって、そのコマンドはページバッファにダウンロードされる次のページアドレスを有する、デバイスおよび方法を説明する。
【００９３】
連続リードに挿入可能なページアドレス入力を有するコマンドを含む連続リード動作を含む、コントローラを有するデバイスおよび方法であって、そのコマンドはページバッファにダウンロードされる次のページアドレスを有し、そのコマンドは各ページについて発行される、デバイスおよび方法を説明する。
【００９４】
連続リードに挿入可能なページアドレス入力を有するコマンドを含む連続リード動作を含む、コントローラを有するデバイスおよび方法であって、そのコマンドはページバッファにダウンロードされる次のページアドレスを有し、そのコマンドは非順次ページの場合にのみ発行される、デバイスおよび方法を説明する。
【００９５】
本発明は上記で詳述した好適な実施形態および例を参照して開示しているが、これらの例は限定的な意味ではなく例示的な意味で意図されたものであるということを理解されたい。修正および組み合わせは当業者には容易に思いつくものであり、これらの修正および組み合わせは本発明の趣旨および以下の特許請求の範囲内にあることを企図している。
【符号の説明】
【００９６】
１００  集積回路メモリデバイス
１０５、４１７、７１９  Ｉ／Ｏインターフェース
１０８  コマンドデコーダ
１１０  制御ロジック
１２０  ブロック
１４０  デコーダ
１４５  ワード線
１６０  メモリアレイ
１６５  ビット線
１７１、４０１、７０１  ページバッファ
１８４、１８５、１９１  データバス
１９０、４１６、７１８  ＥＣＣ回路
４００、７００  メモリアレイ
４１８  Ｉ／Ｏポート
【図１】
2020077451.tif 000003
【図２】
2020077451.tif 000004
【図３】
2020077451.tif 000005
【図４】
2020077451.tif 000006
【図５】
2020077451.tif 000007
【図６】
2020077451.tif 000008
【図７】
2020077451.tif 000009
【図８】
2020077451.tif 000010
【図９】
2020077451.tif 000011
【図１０】
2020077451.tif 000012
【図１１】
2020077451.tif 000013
【外国語明細書】
2020077451.tif 000014
2020077451.tif 000015
2020077451.tif 000016
2020077451.tif 000017
2020077451.tif 000018
2020077451.tif 000019
2020077451.tif 000020
2020077451.tif 000021
2020077451.tif 000022
2020077451.tif 000023
2020077451.tif 000024
2020077451.tif 000025
2020077451.tif 000026
2020077451.tif 000027
2020077451.tif 000028
2020077451.tif 000029
2020077451.tif 000030
2020077451.tif 000031
2020077451.tif 000032
2020077451.tif 000033
2020077451.tif 000034
2020077451.tif 000035
2020077451.tif 000036
2020077451.tif 000037
2020077451.tif 000038
2020077451.tif 000039
2020077451.tif 000040
2020077451.tif 000041
2020077451.tif 000042
2020077451.tif 000043
2020077451.tif 000044
2020077451.tif 000045
2020077451.tif 000046
2020077451.tif 000047
2020077451.tif 000048
2020077451.tif 000049
2020077451.tif 000050
2020077451.tif 000051
2020077451.tif 000052
2020077451.tif 000053
2020077451.tif 000054
2020077451.tif 000055