(57)【要約】      （修正有）【課題】高品質な情報処理装置を提供する。【解決手段】情報処理装置は、ホスト装置１と、不揮発性半導体メモリ２１０を有する半導体記憶装置２と、ホスト装置１及び半導体記憶装置２を接続する通信路３と、を備える情報処理装置であって、ホスト装置１は、第１の記憶部１００と、第１の記憶部１００及び通信路３が接続され、第１の記憶部１００を制御する第１の制御部１２０とを備え、通信路３は、それぞれ優先度が割り当てられた複数のポートを備え、半導体記憶装置２は、通信路３に接続され、第１の記憶部１００へのデータの送受信動作の優先順に基づいて優先度を決定するフラグを含む要求を、第１の制御部１２０に送信する第２の制御部２００を備え、第１の制御部１２０は、要求を受信すると、要求に含まれるフラグに基づいて、優先度に対応するポートを介して第１の記憶部１００と、第２の制御部２００との間のデータの送受信を行う。【選択図】図１
2014049091.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置と、不揮発性半導体メモリを有する半導体記憶装置と、前記ホスト装置及び前記半導体記憶装置を接続する通信路と、を備える情報処理装置であって、
前記ホスト装置は、
第１の記憶部と、
第１の記憶部及び前記通信路が接続され、前記第１の記憶部を制御する第１の制御部と
を備え、
前記通信路は、
それぞれ優先度が割り当てられた複数のポートを備え、
前記半導体記憶装置は、
前記通信路に接続され、前記第１の記憶部へのデータの送受信動作の優先順に基づいて前記優先度を決定する第１のフラグを含む要求を、前記第１の制御部に送信する第２の制御部
を備え、
前記第１の制御部は、前記要求を受信すると、前記要求に含まれる前記第１のフラグに基づいて、前記優先度に対応する前記ポートを介して前記第１の記憶部と、前記第２の制御部との間のデータの送受信を行う
ことを特徴とする情報処理装置。
【請求項２】
前記第１の制御部は、第１のコマンドを生成し、
第２の制御部は、前記第１の制御部から前記第１のコマンドを受信すると、後に続く、前記要求を、前記第１の制御部に送信する
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記優先度は、第１の優先度と、前記第１の優先度よりも優先度が高い第２の優先度を含むことを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
前記第２の制御部は、前記優先度を常に前記第１の優先度とすることを特徴とする請求項３に記載の情報処理装置。
【請求項５】
前記第２の制御部は、前記優先度を常に前記第２の優先度とすることを特徴とする請求項３に記載の情報処理装置。
【請求項６】
前記第２の制御部は、所定の条件に基づいて、前記第１の優先度または前記第２の優先度を選択することを特徴とする請求項３に記載の情報処理装置。
【請求項７】
前記第２の制御部は、前記要求に、後に続く動作が前記第１の記憶部からデータを読み出す動作であることを示す第２のフラグ、または後に続く動作が前記第１の記憶部へのデータを書き込む動作であることを示す第３のフラグを含ませることを特徴とする請求項１乃至６の何れか一項に記載の情報処理装置。
【請求項８】
ホスト装置と、不揮発性半導体メモリを有する半導体記憶装置と、前記ホスト装置及び前記半導体記憶装置を接続する通信路と、を備える情報処理装置であって、
前記ホスト装置は、
第１の記憶部と、
第１の記憶部及び前記通信路が接続され、前記第１の記憶部を制御する第１の制御部と
を備え、
前記通信路は、
それぞれ優先度が割り当てられた複数のポートを備え、
前記半導体記憶装置は、
前記第１の記憶部からデータを読み出す動作であることを示す第１のフラグ、または後に続く動作が前記第１の記憶部へのデータを書き込む動作であることを示す第２のフラグを含む要求を、前記第１の制御部に送信する第２の制御部
を備え、
前記第１の制御部は、前記要求を受信すると、前記要求に含まれる前記第１のフラグまたは前記第２のフラグに基づいて、前記第１の記憶部と、前記第２の制御部との間のデータの送受信を行う
ことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、情報処理装置に関する。
【背景技術】
【０００２】
複数の演算プロセッサが集積されるＧＰＵ（Graphical Processing Unit）等で、複数の演算プロセッサ間で一つのメモリを共有するＵＭＡ（Unified Memory Architecture）という技術がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０―２６９１６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
高品質な情報処理装置を提供する。
【課題を解決するための手段】
【０００５】
実施形態の情報処理装置は、ホスト装置と、不揮発性半導体メモリを有する半導体記憶装置と、前記ホスト装置及び前記半導体記憶装置を接続する通信路と、を備える情報処理装置であって、前記ホスト装置は、第１の記憶部と、第１の記憶部及び前記通信路が接続され、前記第１の記憶部を制御する第１の制御部とを備え、前記通信路は、それぞれ優先度が割り当てられた複数のポートを備え、前記半導体記憶装置は、前記通信路に接続され、前記第１の記憶部へのデータの送受信動作の優先順に基づいて前記優先度を決定する第１のフラグを含む要求を、前記第１の制御部に送信する第２の制御部を備え、前記第１の制御部は、前記要求を受信すると、前記要求に含まれる前記第１のフラグに基づいて、前記優先度に対応する前記ポートを介して前記第１の記憶部と、前記第２の制御部との間のデータの送受信を行う。
【図面の簡単な説明】
【０００６】
【図１】図１は、実施形態に係る情報処理装置の構成例を示す図である。
【図２】図２は、実施形態に係るデバイス使用領域のメモリ構造を示す図である。
【図３】図３は、実施形態に係るＬ２Ｐキャッシュ・タグ領域のメモリ構造を説明する図である。
【図４】図４は、実施形態に係るＬ２Ｐキャッシュ領域のメモリ構造を説明する図である。
【図５】図５は、実施形態に係るライト・キャッシュ・タグ領域のメモリ構造を説明する図である。
【図６】図６は、実施形態に係るライト・キャッシュ領域のメモリ構造を説明する図である。
【図７】図７は、実施形態に係るライト・コマンドのデータ構造例を説明する図である。
【図８】図８は、実施形態に係るデータ転送コマンドのフォーマットの一例を示した図である。
【図９】図９は、実施形態に係るデータ転送コマンドに含まれるフラグ（Flags）の一例を示したものである。
【図１０】図１０（ａ）は、第３のポートを介してメモリ・システムがデータを受信する動作を示した図であり、図１０（ｂ）は、第２のポートを介してメモリ・システムがデータを受信する動作を示した図である。
【図１１】図１１（ａ）は、第３のポートを介してメモリ・システムがデータを送信する動作を示した図であり、図１１（ｂ）は、第２のポートを介してメモリ・システムがデータを送信する動作を示した図である。
【発明を実施するための形態】
【０００７】
以下、実施形態について図面を参照して説明する。なお、以下の説明において、略同一の機能及び構成を有する構成要素については、同一符号を付す。また、以下に示す各実施形態は、この実施形態の技術的思想を具体化するための装置や方法を例示するものであって、実施形態の技術的思想は、構成部品の材質、形状、構造、配置等を下記のものに特定するものでない。実施形態の技術的思想は、特許請求の範囲において、種々の変更を加えることができる。
【０００８】
（実施形態）
図１に、本実施形態に係る情報処理装置の基本的な構成を模式的に示している。本実施形態に係る情報処理装置は、ホスト・デバイス（ホスト装置、外部装置）１と、ホスト・デバイス１の記憶装置として機能するメモリ・システム２とを備える。ホスト・デバイス１とメモリ・システム２との間は、通信路３で接続されている。メモリ・システム２には、ＵＦＳ（Universal Flash Storage）規格に準拠した組み込み用途のフラッシュメモリや、ＳＳＤ（Solid State Drive）等を適用することができる。情報処理装置は、例えば、パーソナルコンピュータ、携帯電話、撮像装置等である。通信路３の通信規格としては、例えばＭＩＰＩ（Mobile Industry Processor Interface）、ＵｎｉＰｒｏが採用されている。
【０００９】
＜メモリ・システムの概要＞
メモリ・システム２は、不揮発性半導体メモリとしてのＮＡＮＤフラッシュメモリ２１０と、ホスト・デバイス１との間のデータ転送を行うデバイス・コントローラ２００とを備えている。
【００１０】
ＮＡＮＤフラッシュメモリ２１０は、メモリセルアレイを有する１以上のメモリチップによって構成される。メモリセルアレイは、複数のメモリセルがマトリクス状に配列して構成される。更に、各ブロックは、複数のページより構成されている。各ページは、データの書き込み及び読み出しの単位である。
【００１１】
また、ＮＡＮＤメモリ２１０は、Ｌ２Ｐテーブル２１１及びホスト・デバイス１から送信されるユーザ・データ２１２を記憶する。ユーザ・データ２１２は、例えばホスト・デバイス１が実行環境を提供するオペレーティングシステムプログラム（ＯＳ）や、ホスト・デバイス１がＯＳ上で実行するユーザ・プログラムや、ＯＳまたはユーザ・プログラムが入出力するデータ等を含む。
【００１２】
Ｌ２Ｐテーブル２１１は、メモリ・システム２がホスト・デバイス１に対する外部記憶装置として機能するために必要となる管理情報の一つであって、ホスト・デバイス１がメモリ・システム２にアクセスする際に使用する論理ブロックアドレス（ＬＢＡ：Logical block address）と、ＮＡＮＤメモリ２１０内の物理アドレス（ブロックアドレス＋ページアドレス＋ページ内記憶位置）とを、対応付けるアドレス変換情報である。後述するホスト・デバイス１内のＬ２Ｐキャッシュ領域３００には、このＬ２Ｐテーブル２１１の一部がキャッシュされる。Ｌ２Ｐキャッシュ領域３００にキャッシュされる内容と区別するために、以下では、ＮＡＮＤメモリ２１０に記憶されているＬ２Ｐテーブル２１１をＬ２Ｐ本体２１１と呼ぶ。
【００１３】
デバイス・コントローラ２００は、通信路３の接続インタフェースであるホスト接続アダプタ２０１と、ＮＡＮＤメモリ２１０との間の接続インタフェースであるＮＡＮＤ接続アダプタ２０４と、デバイス・コントローラ２００の制御を実行するデバイス・コントローラ主要部２０２と、ＲＡＭ２０３とを備えている。
【００１４】
ＲＡＭ２０３は、ＮＡＮＤメモリ２１０にライトするデータあるいはＮＡＮＤメモリ２１０からリードされたデータを記憶するためのバッファとして用いられる。また、ＲＡＭ２０３は、ホスト・デバイス１から入力されるライト要求、リード要求などに関わるコマンドをキューイングするコマンドキューとして使用される。例えばＲＡＭ２０３は、小規模なＳＲＡＭまたはＤＲＡＭ等で構成されることができる。また、レジスタ等でＲＡＭ２０３の機能を代用するようにしても良い。
【００１５】
デバイス・コントローラ主要部２０２は、ホスト接続アダプタ２０１を介してホスト・デバイス１とＲＡＭ２０３との間のデータ転送を制御したり、ＮＡＮＤ接続アダプタ２０４を介してＲＡＭ２０３とＮＡＮＤメモリ２１０との間のデータ転送を制御したりする。特に、デバイス・コントローラ主要部２０２は、ホスト・デバイス１との間の通信路３においてバス・マスタとして機能して第１ポート２３０を用いてデータ転送を行う他、別の二つのバス・マスタ２０５、２０６を備えている。バス・マスタ２０５は、第２ポート２３１を用いてホスト・デバイス１との間のデータ転送をおこなうことができ、バス・マスタ２０６は、第３ポート２３２を用いてホスト・デバイス１との間のデータ転送を行うことができる。ポート２３０〜２３２の役割については後述する。
【００１６】
なお、デバイス・コントローラ主要部２０２は、例えば、演算装置や記憶装置を備えたマイクロコンピュータユニットにより構成される。当該演算装置が前記記憶装置に予め格納されたファームウェアを実行することによって、デバイス・コントローラ主要部２０２としての機能が実現される。なお、デバイス・コントローラ主要部２０２から記憶装置を省略して、ファームウェアをＮＡＮＤメモリ２１０に格納しておくようにしても良い。また、デバイス・コントローラ主要部２０２はＡＳＩＣを用いて構成されることが可能である。
【００１７】
また、本実施形態に係るメモリ・システム２は、ＵＦＳ（Universal Flash Storage）規格に準拠した組み込み用途のフラッシュメモリを想定している。そのため、以下に説明するコマンド等は、ＵＦＳの規格に則った物である。
【００１８】
＜ホスト・デバイスの概要＞
ホスト・デバイス１は、ＯＳやユーザ・プログラムを実行するＣＰＵ１１０と、メイン・メモリ１００と、ホスト・コントローラ１２０とを備えている。メイン・メモリ１００、ＣＰＵ１１０及びホスト・コントローラ１２０は、バス１４０で互いに接続されている。
【００１９】
メイン・メモリ１００は、例えばＤＲＡＭで構成される。メイン・メモリ１００は、ホスト使用領域１０１とデバイス使用領域１０２とを有する。ホスト使用領域１０１は、ホスト・デバイス１がＯＳやユーザ・プログラムを実行する際のプログラム展開領域や当該プログラム展開領域に展開されたプログラムを実行する際のワーク・エリアとして使用される。デバイス使用領域１０２は、メモリ・システム２の管理情報やリードライトのためのキャッシュ領域として使用される。ここでは、メモリ・システム２にキャッシュされる管理情報の一例としてＬ２Ｐテーブル２１１を取り上げる。また、デバイス使用領域１０２にライト・データがキャッシュされるものとする。
【００２０】
＜ポートの概要＞
次に、実施形態に係るホスト・デバイス１及びメモリ・システム２の各ポートについて説明する。実施形態に係るホスト・デバイス１及びメモリ・システム２は、物理的には一つの線（通信路３）で接続されているが、下記に示すポート（CPortとも称す）と呼ばれる複数のアクセスポイントによって接続されている。
【００２１】
ホスト・コントローラ１２０は、バス１４０の接続インタフェースであるバスアダプタ１２１と、通信路３の接続インタフェースであるデバイス接続アダプタ１２６と、バスアダプタ１２１を介してメイン・メモリ１００やＣＰＵ１１０との間でデータやコマンドの転送を行ったり、デバイス接続アダプタ１２６を介してメモリ・システム２との間でデータ（コマンドを含む）の転送を行ったりするホスト・コントローラ主要部１２２とを備えている。ホスト・コントローラ主要部１２２は、デバイス接続アダプタ１２６と第１ポート１３０で接続されており、当該第１ポート１３０を介してメモリ・システム２との間でデータの転送を行うことができる。
【００２２】
また、ホスト・コントローラ１２０は、ホスト使用領域１０１とデバイス使用領域１０２との間でＤＭＡ転送を行うメイン・メモリＤＭＡ１２３と、メモリ・システム２がデバイス使用領域１０２にアクセスするために送るコマンドを捕捉したり、ホスト・コントローラ主要部１２２がデバイス使用領域１０２にかかるステータス情報をメモリ・システム２に送信したりする制御ＤＭＡ１２４と、デバイス使用領域１０２とメモリ・システム２との間でＤＭＡ転送を行うデータＤＭＡ１２５とを備えている。制御ＤＭＡ１２４は、デバイス接続アダプタ１２６と、第２ポート１３１で接続されており、当該第２ポート１３１を介してメモリ・システム２との間でコマンドやステータス情報の送受信を行うことができる。また、データＤＭＡ１２５は、デバイス接続アダプタ１２６と第３ポート１３２で接続されており、当該第３ポート１３２を介してメモリ・システム２との間でデータの送受信を行うことができる。
【００２３】
尚、デバイス接続アダプタ１２６及びホスト接続アダプタ２０１の機能により、第１ポート１３０は第１ポート２３０と、第２ポート１３１は第２ポート２３１と、第３ポート１３２は第３ポート２３２とそれぞれ対応付けられている。具体的には、デバイス接続アダプタ１２６は、第１ポート１３０を介してメモリ・システム２に送られてきた内容を第１ポート２３０を介してデバイス・コントローラ主要部２０２に送り、第２ポート１３１を介してメモリ・システム２に送られてきた内容を第２ポート２３１を介してデバイス・コントローラ主要部２０２に送り、第３ポート１３２を介してメモリ・システム２に送られてきた内容を第３ポート２３２を介してデバイス・コントローラ主要部２０２に送る。
【００２４】
また、デバイス接続アダプタ１２６は、第１ポート２３０を介してホスト・デバイス１に送られてきた内容を第１ポート１３０を介してホスト・コントローラ主要部１２２に送り、第２ポート２３１を介してホスト・デバイス１に送られてきた内容を第２ポート１３１を介して制御ＤＭＡ１２４に送り、第３ポート２３２を介してホスト・デバイス１に送られてきた内容を第３ポート１３２を介してデータＤＭＡ１２５に送る。制御ＤＭＡ１２４、データＤＭＡ１２５に送られてきた内容は、例えばバスアダプタ１２１を介してホスト・コントローラ主要部１２２に送られる。
【００２５】
尚、ポート１３０〜１３２のそれぞれは、メモリ・システム２との間の通信に使用される入力バッファをそれぞれ独立に備え得る。ホスト・コントローラ主要部１２２、制御ＤＭＡ１２４、データＤＭＡ１２５がそれぞれ別々の入出力バッファを用いてメモリ・システム２に接続されていることにより、ホスト・コントローラ１２０は、ホスト・コントローラ主要部１２２を用いたメモリ・システム２との通信と、制御ＤＭＡ１２４を用いたメモリ・システム２との通信と、データＤＭＡ１２５を用いたメモリ・システム２との通信とをそれぞれ独立して実行することができる。また、入出力バッファの入れ替えの必要なくこれらの通信の切り替えを行うことができるので、通信の切り替えを高速実行することができる。メモリ・システム２が備えるポート２３０〜２３２についても同様の事が言える。
【００２６】
以上のように、本実施形態に係る情報処理装置は、第１のポート（CPort 0とも称す）１３０及び２３０と、第２のポート（CPort 1とも称す）１３１及び２３１と、第３のポート（CPort 2とも称す）１３２及び２３２との３種類のポートを備えている。
【００２７】
また、各ポートには、それぞれ優先度（トラフィック・クラス：ＴＣ等とも称す）が予め定義されている。具体的には、第１のポート１３０及び２３０には優先度“０（低い）”が設定され、第２のポート１３１及び２３１には優先度“１（高い）”が設定され、第１のポート１３２及び２３２には優先度“０（低い）”が設定されている。
【００２８】
第１のポート１３０及び２３０は基本的にホスト・デバイス１からメモリ・システム２への要求時のみに使われる。第２のポート１３１及び２３１と、第３のポート１３２及び２３２は、後述するようなメモリ・システム２の要求によって適宜選択される。
【００２９】
尚、第１のポート１３０及び２３０を区別しない場合には、簡単の為、単に第１のポートと称す。また、第２のポート１３１及び２３１を区別しない場合には、簡単の為、単に第２のポートと称す。更に第３のポート１３２及び２３２を区別しない場合には、簡単の為、単に第３のポートと称す。
【００３０】
＜優先度（トラフィック・クラス：ＴＣ）について＞
次に、優先度（トラフィック・クラス：ＴＣ）について説明する。優先度（トラフィック・クラス）とは、ホスト・デバイス１からメモリ・システム２にデータ等を返すときの優先順である。具体的には、優先度とはホスト・デバイス１及びメモリ・システム２間におけるデータ転送等が競合した場合に、データ転送等の順序を定める値である。本実施形態では、一例として、優先度“１”（TC 1 とも表記する）、及び優先度“１”よりも優先度の低い優先度“０”（TC 0 とも表記する）の２種類の優先度が設定されている。
【００３１】
この優先度は、上述した第１〜第３のポート毎に予め設定されている。本実施形態では、第１のポート（CPort 0）は優先度“０”（TC 0）に設定され、第２のポート（CPort 1）は優先度“１（高い）”（TC 1）に設定され、第３のポート（CPort 2）は優先度“０（低い）”（TC 0）に設定されている。この優先度の選択方法については、後述で説明する。
【００３２】
＜デバイス使用領域の概要＞
図２は、デバイス使用領域１０２のメモリ構造を説明する図である。図示するように、デバイス使用領域１０２には、Ｌ２Ｐ本体２１１の一部がキャッシュされるＬ２Ｐキャッシュ領域３００、Ｌ２Ｐキャッシュ領域３００のヒット／ミス判定に使用されるタグ情報が格納されるＬ２Ｐキャッシュ・タグ領域３１０、ライト・データがバッファリングされるキャッシュ構造のメモリ領域であるライト・キャッシュ領域４００、及びライト・キャッシュ領域４００のヒット／ミス判定に使用されるタグ情報が格納されるライト・キャッシュ・タグ領域４１０を備えている。
【００３３】
＜Ｌ２Ｐキャッシュ・タグ領域のメモリ構造＞
図３は、Ｌ２Ｐキャッシュ・タグ領域３１０のメモリ構造を説明する図であり、図４は、Ｌ２Ｐキャッシュ領域３００のメモリ構造を説明する図である。ここでは、一例として、ＬＢＡは２６ビットのデータ長を有し、Ｌ２Ｐキャッシュ領域３００はＬＢＡの下位側の２２ビットの値を用いて参照されるものとしている。ＬＢＡの上位側の４ビットの値をＴと表記し、下位側の２２ビットの値をＬと表記して説明する。なお、ＬＢＡは、ＮＡＮＤメモリ２１０を構成するページ（ここでは４Ｋバイトとする）毎に割り当てられているものとしている。
【００３４】
Ｌ２Ｐキャッシュ領域３００を構成する個々のキャッシュ・ラインには、図４に示す様に、一つのＬＢＡに対する物理アドレス（Ｐｈｙｓ．  Ａｄｄｒ．）が格納されている。Ｌ２Ｐキャッシュ領域３００は、２を２２乗して得られる数のキャッシュ・ラインで構成される。個々のキャッシュ・ラインは、２６ビットの物理アドレスが格納されるために必要十分なサイズであるバイト数である４バイトの容量を有する。従って、Ｌ２Ｐキャッシュ領域３００は、合計で、２の２２乗に４バイトを掛けたサイズ、すなわち１６Ｍバイトのサイズを有することになる。また、Ｌ２Ｐキャッシュ領域３００は、Ｌの値の順番にＬＢＡに対応する物理アドレスが格納されるように構成されている。すなわち、Ｌ２Ｐキャッシュ領域３００を構成する個別のキャッシュ・ラインは、４＊ＬにＬ２Ｐキャッシュ領域３００のページアドレス（Ｌ２Ｐ  Ｂａｓｅ  Ａｄｄｒ．）を加算したアドレスを参照（Refer）されることにより呼び出される。なお、Ｌ２Ｐキャッシュ領域３００を構成する４バイトのキャッシュ・ラインのうちの２６ビットの物理アドレスが格納される領域をのぞいた余剰の領域を「Ｐａｄ」と表記している。以降のテーブルにおいても、余剰の部分を「Ｐａｄ」と表記する。
【００３５】
また、図３に示すように、Ｌ２Ｐキャッシュ・タグ領域３１０には、Ｌ２Ｐキャッシュ領域３００に格納されているキャッシュ・ライン毎にタグ情報としての値ＴがＬの値の順に登録されて構成される。個々のエントリは、タグ情報が格納されるフィールド３１１と有効なキャッシュ・ラインであるか否かを示すＶＬ（Valid L2p）ビットが格納されるフィールド３１２とを備えている。ここで、Ｌ２Ｐキャッシュ・タグ領域３１０は、Ｌ２Ｐキャッシュ・タグ領域３１０にタグ情報として登録されているＴが、Ｌ２Ｐキャッシュ領域３００の対応するキャッシュ・ライン（即ちＬを用いて参照されるキャッシュ・ライン）に格納されている物理アドレスに対応するＬＢＡの上位桁Ｔと一致するように構成されている。即ち、所望のＬＢＡの上位桁Ｔに対応する物理アドレスがＬ２Ｐキャッシュ領域３００にキャッシュされているか否かは、当該所望のＬＢＡを構成するＬの値にＬ２Ｐキャッシュ・タグ領域３１０のベースアドレス（L2P Tag Base Addr.）を加算したアドレスが参照（Refer）され、当該参照位置に格納されているタグ情報が前記所望のＬＢＡを構成するＴの値と一致するか否かにより判定される。両者が一致する場合には、所望のＬＢＡに対応する物理アドレスがキャッシュされていると判定され、両者が一致しない場合には、所望のＬＢＡに対応する物理アドレスがキャッシュされていないと判定される。なお、Ｔは、４ビットの値であり、ＶＬビットは１ビットの容量を要するため、個々のエントリは１バイトの容量を有する。従って、Ｌ２Ｐキャッシュ・タグ領域３１０は、２の２２乗に１バイトを掛けたサイズ、即ち４Ｍバイトのサイズを有することになる。
【００３６】
図５は、ライト・キャッシュ・タグ領域４１０のメモリ構造を説明する図であり、図６は、ライト・キャッシュ領域４００のメモリ構造を示す図である。ここで、ライト・キャッシュ領域４００は、ＬＢＡの下位側の１３ビットの値を用いて参照されるものとしている。ＬＢＡの上位側の１３ビットの値をＴ′と表記し、下位側の１３ビットの値をＬ′と表記して説明する。
【００３７】
ライト・キャッシュ領域４００を構成する個々のキャッシュ・ラインには、図６に示すように、ページサイズのライト・データが格納されている。
【００３８】
ライト・キャッシュ領域４００は、２を１３乗して得られる数のキャッシュ・ラインで構成される。ここのキャッシュ・ラインは、ページサイズ（ここでは４Ｋバイトとしている）のライト・データがキャッシュされるので、ライト・キャッシュ領域４００は、合計で２の１３乗に４Ｋを掛けたサイズ、即ち３２Ｍバイトのサイズを有することになる。
【００３９】
また、ライト・キャッシュ領域４００には、Ｌ′の値の順番に、対応するライト・データが格納されている。即ち、ライト・キャッシュ領域４００を構成する個別のキャッシュ・ラインは、Ｌ′＊８Ｋにライト・キャッシュ領域４００のページアドレス（WC Base Addr.）を加算したアドレスを参照されることにより読み出される。
【００４０】
また、図５に示すように、ライト・キャッシュ・タグ領域４１０には、ライト・キャッシュ領域４００に格納されているキャッシュ・ライン毎にタグ情報としてのＴ′がＬ′の順に登録されて構成される。個々のエントリは、タグ情報が格納されるフィールド４１１と有効なキャッシュ・ラインであるか否かを示すＶＢ（Valid Buffer）ビットが格納されるフィールド４１２と、キャッシュされているライト・データがダーティであるかクリーンであるかを示すＤＢ（Dirty Buffer）ビットが格納されるフィールド４１３を有している。
【００４１】
ライト・キャッシュ・タグ領域４１０は、ライト・キャッシュ・タグ領域４１０にタグ情報として登録されているＴ′が、ライト・キャッシュ領域４００の対応するキャッシュ・ライン（即ちＬ′を用いて参照されるキャッシュ・ライン）に格納されているライト・データの格納先ページに割り当てられたＬＢＡの上位桁Ｔ′と一致するように構成されている。即ち、所望のＬＢＡに対応するライト・データが、ライト・キャッシュ領域４００にキャッシュされているか否かは、当該所望のＬＢＡの上位桁Ｔを構成する２＊Ｌ′の値にライト・キャッシュ・タグ領域４１０のベースアドレス（WC Tag Base Addr.）を加算したアドレスが参照され、当該参照位置に格納されているタグ情報が前記所望のＬＢＡに対応を構成するＴ′の値と一致するか否かによって判定されている。
【００４２】
なお、キャッシュ・ラインがダーティであるとは、当該キャッシュ・ラインに格納されているライト・データとＮＡＮＤメモリ２１０上の対応するアドレスに格納されているデータとが一致しない状態を言い、クリーンであるとは、両者が一致する状態を言う。ダーティなキャッシュ・ラインがＮＡＮＤメモリ２１０にライトバックされることによって、当該キャッシュ・ラインがクリーンになる。なお、ライト・キャッシュ・タグ領域４１０の個々のタグ情報Ｔ′は１３ビットのデータ長を有し、ＤＢビット及びＶＢビットはそれぞれ１ビットのサイズを要するので、個々のエントリは２バイトの容量を有する。従って、ライト・キャッシュ・タグ領域４１０は、２の１３乗に２バイトを掛けたサイズ、すなわち１６Ｋバイトのサイズを有することになる。
【００４３】
ＣＰＵ１１０は、ＯＳやユーザ・プログラムを実行して、これらのプログラムからの要請に基づいてホスト使用領域１０１内のデータをメモリ・システム２に書き込むライト・コマンドを生成する。生成されたライト・コマンドはホスト・コントローラ１２０に送られる。
【００４４】
＜ライト・コマンドのデータ構造の概要＞
図７は、ライト・コマンドのデータ構造例を説明する図である。図示するように、ライト・コマンド５００は、当該コマンド５００がデータの書き込みを指令するものであることを示すライト指令５０１と、書き込み対象のデータが格納されているホスト使用領域１０１内の番地であるソース・アドレス５０２と、メモリ・システム２内の、ライト・データの書き込み先の番地を示す第１のデスティネーション・アドレス５０３と、ライト・データのデータ長５０４とを含んで構成される。第１のデスティネーション・アドレス５０３はＬＢＡで表記される。
【００４５】
ホスト・コントローラ主要部１２２は、ＣＰＵ１１０から送られてきたライト・コマンド５００をバスアダプタ１２１を介して受信して、受信したライト・コマンド５００に含まれているソース・アドレス５０２及び第１のデスティネーション・アドレス５０３を読み出す。そして、ホスト・コントローラ主要部１２２は、ソース・アドレス５０２に格納されたデータと第１のデスティネーション・アドレス５０３とをデバイス接続アダプタ１２６を介してメモリ・システム２に転送する。
【００４６】
尚、ホスト・コントローラ主要部１２２は、ソース・アドレス５０２に格納されたデータを読み込む際、メイン・メモリＤＭＡ１２３を利用しても良い。その際、ホスト・コントローラ主要部１２２は、ソース・アドレス５０２とデータ長５０４とデスティネーション・アドレスとしてホスト・コントローラ主要部１２０内のバッファ・アドレスにセットし、メイン・メモリＤＭＡ１２３を起動する。
【００４７】
また、ホスト・コントローラ主要部１２２は、ライト・コマンド５００の他にもＣＰＵ１１０からの種々のコマンドを受信することができる。ここでは、ホスト・コントローラ主要部１２２は、受信したコマンドをコマンドキューにエンキューして、コマンドキューの先頭から順に処理対象のコマンドを取り出す。なお、このコマンドキューのデータ構造が格納される領域は、メイン・メモリ１００上に確保されるようにしてもよいし、ホスト・コントローラ主要部１２２の内部または近傍に小規模なメモリやレジスタが配置されて構成されるようにしてもよい。
【００４８】
また、ホスト・コントローラ主要部１２２とメイン・メモリＤＭＡ１２３、制御ＤＭＡ１２４、データＤＭＡ１２５との間の通信経路は特定の経路に限定されない。例えば、バスアダプタ１２１を通信経路とするようにしてもよいし、専用線を設けて当該専用線を通信経路とするようにしても良い。
【００４９】
＜コマンドのフォーマットについて＞
次に、図８を用いて実施形態に係るデータ転送コマンド（リクエストとも称す）のフォーマットについて説明する。図８は、実施形態に係るデータ転送コマンドのフォーマットの一例を示した図である。
【００５０】
図８に示すように、データ転送コマンド（Access UM Buffer）はホスト・デバイス１にデータ転送要求を行う際に種々の情報を含めることができる。本実施形態に係るデータ転送コマンド（Access UM Buffer）は、特に“フラグ（Flags）”情報（図中破線部内参照）を含むことができる。
【００５１】
＜フラグについて＞
続いて、図９を用いて実施形態に係るデータ転送コマンド（Access UM Buffer）に含まれるフラグ（Flags）について説明する。図９は、実施形態に係るデータ転送コマンド（Access UM Buffer）に含まれるフラグ（Flags）の一例を示したものである。
【００５２】
図９に示すように、実施形態に係るデータ転送コマンド（Access UM Buffer）に含まれるフラグ（Flags）にはフラグＲ（Flags.R）、フラグＷ（Flags.W）、フラグＰ（Flags.P）の３種類のフラグが存在する。メモリ・システム２は、ホスト・デバイス１からコマンドを受信した際に、データ転送コマンド（Access UM Buffer）のこれらのフラグを設定する。
【００５３】
［フラグＲ（Flags.R）］
フラグＲとは、後に続く動作がホスト・デバイス１のメイン・メモリ１００内からメモリ・システム２へデータを読み出す動作であることを示すフラグである。
【００５４】
具体的には、ホスト・デバイス１からメモリ・システム２へのデータ読み出動作の場合にフラグＲに“１”がセットされる。
【００５５】
［フラグＷ（Flags.W）］
フラグＷとは、後に続く動作がメモリ・システム２からホスト・デバイス１のメイン・メモリ１００内へデータを書き込む動作であることを示すフラグである。
【００５６】
メモリ・システム２からホスト・デバイス１へのデータ書き込む動作の場合にフラグＷに“１”がセットされる。
【００５７】
［フラグＰ（Flags.P）］
フラグＰとは、後に続くメモリ・システム２からホスト・デバイス１へのデータ入力シーケンス（UM DATA IN）または、ホスト・デバイス１からメモリ・システム２へのデータ出力シーケンス（UM DATA OUT）の優先度を決定するフラグである。この選択された優先度に対応するポートを介して、各シーケンスが実行される。
【００５８】
具体的には、メモリ・システム２からホスト・デバイス１へのデータ入力シーケンス（UM DATA IN）または、ホスト・デバイス１からメモリ・システム２へのデータ出力シーケンス（UM DATA OUT）の優先度を、“高い”に設定する場合にフラグＰに“１”がセットされる。ホスト・デバイス１は、フラグＰが“１”に設定されていることを認識すると、優先度“１（高い）”に設定されている第２のポートを介してデータの送受信を行う。
【００５９】
メモリ・システム２からホスト・デバイス１へのデータ入力シーケンス（UM DATA IN）または、ホスト・デバイス１からメモリ・システム２へのデータ出力シーケンス（UM DATA OUT）の優先度を、“低い”に設定する場合にフラグＰに“０”がセットされる。これにより、ホスト・デバイス１は、フラグＰが“０”に設定されていることを認識すると、優先度が“０（低い）”に設定されている第３のポートを介してデータの送受信を行う。
【００６０】
＜読み出し動作＞
次に、図１０を用いて、メモリ・システム２がホスト・デバイス１からデータを読み出す場合における情報処理装置の動作例を説明する。図１０（ａ）は、第３のポートを介してメモリ・システム２がデータを受信する動作を示した図であり、図１０（ｂ）は、第２のポートを介してメモリ・システム２がデータを受信する動作を示した図である。
【００６１】
まず図１０（ａ）に示すように、通信路３の優先度設定が２つ（０：優先度低い、１：優先度高い）用意されている情報処理装置において、メモリ・システム２はデータ転送要求時、対応するデータ転送で用いる通信路３の優先度を常に“０”とする場合の動作を説明する。
【００６２】
［ステップＳ１００１］
デバイス・コントローラ主要部２０２は、ホスト・デバイス１からデータを受信する際の優先度を優先度“０”と決定する。そのため、デバイス・コントローラ主要部２０２は、データ転送コマンド（Access UM Buffer）におけるフラグＰを“０”に設定する。また、デバイス・コントローラ主要部２０２は、ホスト・デバイス１からデータを読み出すので、データ転送コマンド（Access UM Buffer）におけるフラグＲを“１”に設定する。
【００６３】
［ステップＳ１００２］
デバイス・コントローラ主要部２０２は、「フラグＲ“１”、フラグＰ“０”、アドレス、及びサイズ（READ, P==0, Address, Size）」等の情報を含むデバイス使用領域１０２のデータを読み出すコマンド（Access UM Buffer）を、優先度が“１（高い）”である第２のポート（CPort 1, TC 1）を介してホスト・デバイス１に送信する。
【００６４】
［ステップＳ１００３］
ホスト・コントローラ１２０は、メモリ・システム２から、データを読み出すコマンド（Access UM Buffer）を受信すると、「フラグＲ“１”、フラグＰ“０”、アドレス、及びサイズ（READ, P==0, Address, Size）」等の情報に基づいて、デバイス使用領域１０２から、データをフェッチする。
【００６５】
［ステップＳ１００４］
そして、ホスト・コントローラ１２０は、メモリ・システム２から受信したデータを読み出すコマンド（Access UM Buffer）に含まれるフラグＰに基づいて、優先度が“０”である第３のポート（CPort 2, TC 0）を介して、メモリ・システム２に読み出しデータを転送する（UM DATA OUT）。
【００６６】
次に図１０（ｂ）に示すように、通信路３の優先度設定が２つ（０：優先度低い、１：優先度高い）用意されている情報処理装置において、メモリ・システム２はデータ転送要求時、対応するデータ転送で用いる通信路３の優先度を常に“１”とする場合の動作を説明する。
【００６７】
［ステップＳ１１０１］
デバイス・コントローラ主要部２０２は、ホスト・デバイス１からデータを受信する際の優先度を優先度“１”と決定する。そのため、デバイス・コントローラ主要部２０２は、データ転送コマンド（Access UM Buffer）におけるフラグＰを“１”に設定する。また、デバイス・コントローラ主要部２０２は、ホスト・デバイス１からデータを読み出すので、データ転送コマンド（Access UM Buffer）におけるフラグＲを“１”に設定する。
【００６８】
［ステップＳ１１０２］
デバイス・コントローラ主要部２０２は、「フラグＲ“１”、フラグＰ“１”、アドレス、及びサイズ（READ, P==1, Address, Size）」等の情報を含むデバイス使用領域１０２のデータを読み出すコマンド（Access UM Buffer）を、優先度が“１（高い）”である第２のポート（CPort 1, TC 1）を介してホスト・デバイス１に送信する。
【００６９】
［ステップＳ１１０３］
ホスト・コントローラ１２０は、メモリ・システム２から、データを読み出すコマンド（Access UM Buffer）を受信すると、「フラグＲ“１”、フラグＰ“１”、アドレス、及びサイズ（READ, P==1, Address, Size）」等の情報に基づいて、デバイス使用領域１０２から、データをフェッチする。
【００７０】
［ステップＳ１１０４］
そして、ホスト・コントローラ１２０は、メモリ・システム２から受信したデータを読み出すコマンド（Access UM Buffer）に含まれるフラグＰに基づいて、優先度が“１”である第２のポート（CPort 1, TC 1）を介して、メモリ・システム２に読み出しデータを転送する（UM DATA OUT）。
【００７１】
＜書き込み動作＞
次に、図１１を用いて、メモリ・システム２がホスト・デバイス１にデータを書き込む場合における情報処理装置の動作例を説明する。図１１（ａ）は、第３のポートを介してメモリ・システム２がデータを送信する動作を示した図であり、図１１（ｂ）は、第２のポートを介してメモリ・システム２がデータを送信する動作を示した図である。
【００７２】
まず図１１（ａ）に示すように、通信路３の優先度設定が２つ用意されている情報処理装置において、メモリ・システム２はデータ転送要求時、対応するデータ転送で用いる通信路３の優先度を常に“０”とする場合の動作を説明する。
【００７３】
［ステップＳ１２０１］
デバイス・コントローラ主要部２０２は、ホスト・デバイス１にデータを送信する際の優先度を優先度“０”と決定する。そのため、デバイス・コントローラ主要部２０２は、データ転送コマンド（Access UM Buffer）におけるフラグＰを“０（Ｐ＝＝０）”に設定する。また、デバイス・コントローラ主要部２０２は、ホスト・デバイス１にデータを書き込むので、データ転送コマンド（Access UM Buffer）におけるフラグＷを“１”に設定する。
【００７４】
［ステップＳ１２０２］
デバイス・コントローラ主要部２０２は、「フラグＷ“１”、フラグＰ“０”、アドレス、及びサイズ（WRITE, P==0, Address, Size）」等の情報を含むメモリ・システム２から受信したデータをデバイス使用領域１０２に書き込むコマンド（Access UM Buffer）を、優先度が“１”である第２のポート（CPort 1, TC 1）を介してホスト・デバイス１に送信する。
【００７５】
［ステップＳ１２０３］
ホスト・コントローラ１２０は、メモリ・システム２から、データを書き込むコマンド（Access UM Buffer）を受信すると、「フラグＷ“１”、フラグＰ“０”、アドレス、及びサイズ（WRITE, P==0, Address, Size）」等の情報に基づいて、メモリ・システム２から書き込みデータを受信する（UM DATA IN）。この際、メモリ・システム２から受信したデータを書き込むコマンド（Access UM Buffer）に含まれるフラグＰに基づいて、優先度が“０”である第３のポート（CPort 2, TC 0）を介して、メモリ・システム２から書き込みデータを受信する。
【００７６】
［ステップＳ１２０４］
ホスト・コントローラ１２０は、メモリ・システム２から受信した書き込みデータを、デバイス使用領域１０２に記憶する。
【００７７】
［ステップＳ１２０５］
ホスト・コントローラ１２０は、書き込みデータがデバイス使用領域１０２に記憶されると、完了した旨を意味する通知コマンド（Acknowledge UM Buffer）を、優先度が“１”である第２のポート（CPort 1, TC 1）を介してメモリ・システム２に送信する。これにより、メモリ・システム２のホスト・デバイス１へのデータの書き込みが完了する。
【００７８】
次に、図１１（ｂ）に示すように、通信路３の優先度設定が２つ用意されている情報処理装置において、メモリ・システム２はデータ転送要求時、対応するデータ転送で用いる通信路３の優先度を常に“１”とする場合の動作を説明する。
【００７９】
［ステップＳ１３０１］
デバイス・コントローラ主要部２０２は、ホスト・デバイス１にデータを送信する際の優先度を優先度“１”と決定する。そのため、デバイス・コントローラ主要部２０２は、データ転送コマンド（Access UM Buffer）におけるフラグＰを“１（Ｐ＝＝１）”に設定する。また、デバイス・コントローラ主要部２０２は、ホスト・デバイス１にデータを書き込むので、データ転送コマンド（Access UM Buffer）におけるフラグＷを“１”に設定する。
【００８０】
［ステップＳ１３０２］
デバイス・コントローラ主要部２０２は、「フラグＷ“１”、フラグＰ“１”、アドレス、及びサイズ（WRITE, P==1, Address, Size）」等の情報を含むメモリ・システム２から受信したデータをデバイス使用領域１０２に書き込むコマンド（Access UM Buffer）を、優先度が“１”である第２のポート（CPort 1, TC 1）を介してホスト・デバイス１に送信する。
【００８１】
［ステップＳ１３０３］
ホスト・コントローラ１２０は、メモリ・システム２から、データを書き込むコマンド（Access UM Buffer）を受信すると、「フラグＷ“１”、フラグＰ“１”、アドレス、及びサイズ（WRITE, P==1, Address, Size）」等の情報に基づいて、メモリ・システム２から書き込みデータを受信する（UM DATA IN）。この際、メモリ・システム２から受信したデータを書き込むコマンド（Access UM Buffer）に含まれるフラグＰに基づいて、優先度が“１”である第３のポート（CPort 1, TC 1）を介して、メモリ・システム２から書き込みデータを受信する。
【００８２】
［ステップＳ１３０４］
ホスト・コントローラ１２０は、メモリ・システム２から受信した書き込みデータを、デバイス使用領域１０２に記憶する。
【００８３】
［ステップＳ１３０５］
ホスト・コントローラ１２０は、書き込みデータがデバイス使用領域１０２に記憶されると、完了した旨を意味する通知コマンド（Acknowledge UM Buffer）を、優先度が“１”である第２のポート（CPort 1, TC 1）を介してメモリ・システム２に送信する。これにより、メモリ・システム２のホスト・デバイス１へのデータの書き込みが完了する。
【００８４】
尚、上述した各動作に関して、メモリ・システム２はデータ転送要求時、対応するデータ転送で用いる通信路３の優先度を常に“０”とする場合または常に“１”とする場合について説明した。しかしながら、デバイス・コントローラ主要部２０２は、該優先度（０：優先度低い、１：優先度高い）を、所定の条件に基づいて適宜切り替えることができる。
【００８５】
また、メモリ・システム２が上述した各動作（読み出し動作及び書き込み動作）は、ホスト・デバイス１からメモリ・システム２がライト・コマンド５００を受信した場合に行っても良いし、メモリ・システム２が能動的に行っても良い。
【００８６】
＜実施形態に係るメモリ・システムの作用効果＞
上述した実施形態では、情報処理装置は、ホスト装置１と、不揮発性半導体メモリ２１０を有する半導体記憶装置２と、ホスト装置１及び半導体記憶装置２を接続する通信路３と、を備える。ホスト装置１は、第１の記憶部１００と、第１の記憶部１００及び通信路３が接続され、第１の記憶部１００を制御する第１の制御部１２０とを備えている。通信路３は、それぞれ優先度が割り当てられた複数のポートを備えている。半導体記憶装置２は、通信路３に接続され、第１の記憶部１００へのデータの送受信動作の優先順に基づいて優先度を決定する第１のフラグ（フラグＰ）を含むデータ転送要求を、第１の制御部１２０に送信する第２の制御部２００を備えている。また、第１の制御部１２０は、データ転送要求を受信すると、要求に含まれる第１のフラグに基づいて、優先度に対応するポートを介して第１の記憶部１００と、第２の制御部２００との間のデータの送受信を行う。また、優先度は、第１の優先度“０”と、第１の優先度“０”よりも優先度が高い第２の優先度“１”を含む。第２の制御部２００は、データ転送要求に、後に続く動作が前記第１の記憶部１００からデータを読み出す動作であることを示す第２のフラグ（フラグＲ）、または後に続く動作が第１の記憶部１００へのデータを書き込む動作であることを示す第３のフラグ（フラグＷ）を含ませる。
【００８７】
本実施形態に係るメモリ・システム２は、メモリ・システム２が、ホスト・デバイス１との間でデータの送受信を行う際に優先度を制御することができる。
【００８８】
ところで、データ転送要求を行うコマンドでは優先度の制御を行う仕組みがなかった。このような場合、データの送受信を行う際に、データの種類、またはサイズ等に関わらず優先度を適宜選択することができない。
【００８９】
上述でも説明したように、優先度とは、処理を行う優先順を規定するものである。具体的には、競合する複数のリクエストがホスト・デバイス１にたまった時、例えば、優先度の高い処理が、優先度の低い処理よりも先に実行される。
【００９０】
上述したように、実施形態に係るメモリ・システム２は、ホスト・デバイス１へ、データ転送の優先度を、データ転送のリクエスト自体に、各種のフラグ情報を含ませることができる。これらのフラグの例としては、後に続く動作がホスト・デバイス１からデータを読み出すことを意味するフラグＲ、後に続く動作がホスト・デバイス１にデータを書き込むことを意味するフラグＷ、及び後に続くシーケンスの優先度を示すフラグＰ等が挙げられる。
【００９１】
特にフラグＰがリクエスト自体に含まれることによって、その後に続くデータイン／アウトの優先度を、ホスト・デバイス１へのリクエストの段階で決めることができる。メモリ・システム２が適宜優先度を制御できるので、メモリ・システム２全体のパフォーマンスを最適化することができる。
【００９２】
＜変形例等＞
尚、上述した実施形態では、ＵＦＳメモリデバイスを用いて説明したが、これに限らず、例えば、クライアントサーバモデルに基づくメモリ・システムであれば、どのようなものでも良い。より具体的には、コマンドに上述したようなFlag情報（フラグＲ、フラグＷ、フラグＰ等）を付加することができるものであれば、適応可能である。
【００９３】
また、上述した実施形態では、ＵＦＳメモリデバイスを用いて説明したが、同様の動作をする半導体記憶装置であれば、他のメモリカード、メモリデバイスまたは内部メモリ等にも適用可能であり、上述した実施形態及び第２の実施形態と同様の作用効果を奏することができる。また、上述したフラッシュメモリ２１０はＮＡＮＤ型フラッシュメモリに限らず、その他の半導体メモリであっても良い。
【００９４】
以上、本発明の実施形態を説明したが、本発明は上記実施形態に限定されるものではなく、その趣旨を逸脱しない範囲内において種々変形して実施することが可能である。さらに、上記実施形態には種々の段階の発明が含まれており、開示された構成要件を適宜組み合わせることによって種々の発明が抽出される。例えば、開示された構成要件からいくつかの構成要件が削除されても、所定の効果が得られるものであれば、発明として抽出され得る。
【符号の説明】
【００９５】
１…ホスト・デバイス      ２…メモリ・システム      ３…通信路    
１００…メイン・メモリ      １０１…ホスト使用領域
１０２…デバイス使用領域      １１０…ＣＰＵ  １２０…ホスト・コントローラ
１２１…バスアダプタ      １２２…ホスト・コントローラ主要部
１２３…メイン・メモリＤＭＡ      １２４…制御ＤＭＡ
１２５…データＤＭＡ      １２６…デバイス接続アダプタ  １３０〜１３２…ポート
１４０…バス    ２００…デバイス・コントローラ    ２０１…ホスト接続アダプタ
２０２…デバイス・コントローラ主要部      ２０３…ＲＡＭ
２０４…ＮＡＮＤ接続アダプタ      ２０５…バス・マスタ
２０６…バス・マスタ      ２１０…ＮＡＮＤフラッシュメモリ
２１１…Ｌ２Ｐテーブル      ２１２…ユーザ・データ
２３０〜２３２…ポート      ３００…Ｌ２Ｐキャッシュ領域
３１０…Ｌ２Ｐキャッシュ・タグ領域      ３１１、３１２…フィールド
３１２…フィールド      ４００…ライト・キャッシュ領域
４１０…ライト・キャッシュ・タグ領域      ４１１〜４１３…フィールド
５００…ライト・コマンド。
【図１】
2014049091.tif 000003
【図２】
2014049091.tif 000004
【図３】
2014049091.tif 000005
【図４】
2014049091.tif 000006
【図５】
2014049091.tif 000007
【図６】
2014049091.tif 000008
【図７】
2014049091.tif 000009
【図８】
2014049091.tif 000010
【図９】
2014049091.tif 000011
【図１０】
2014049091.tif 000012
【図１１】
2014049091.tif 000013