(57)【要約】  レイテンシを一定に保ち、高速且つ低コストで、メモリ容量の拡張性を確保できる使い勝手の良い情報処理システムである。情報処理装置、揮発性メモリおよび不揮発性メモリを含む情報処理システムを構成する。情報処理装置、揮発性メモリおよび不揮発性メモリは直列接続させ、接続信号数を少なくすることにより、メモリ容量の拡張性を保ちつつ、高速化を図る。情報処理装置はレイテンシを計測し、レイテンシの補正動作を行うことでレイテンシを一定に保つ。不揮発性メモリのデータを揮発性メモリへ転送させる際は、エラー訂正を行い、信頼性の向上を図る。これら複数のチップからなる情報処理システムを、各チップが相互に積層して配置され、ボールグリッドアレイ（ＢＧＡ）やチップ間の配線技術によって接続された情報処理システム・モジュールとして構成する。
2010029830.tif 000002
【特許請求の範囲】
【請求項１】
外部に対してアクセス要求を発行するリクエスト送信回路と、
前記リクエスト送信回路から発行したアクセス要求に対する応答を外部から受け取るレスポンス受信回路と、
前記リクエスト送信回路から発行したアクセス要求から前記アクセス要求に対する応答を前記レスポンス受信回路が受け取るまでの応答時間を計測する計測回路とを具備することを特徴とする半導体装置。
【請求項２】
請求項１において、
前記半導体装置は、前記応答時間の期待値を保持し、前記応答時間の期待値と前記応答時間の計測値を比較し、前記応答時間の計測値が前記応答時間の期待値より大きい場合に、前記リクエスト送信回路からアクセス要求の発行を遅らせることを特徴とする半導体装置。
【請求項３】
請求項１において、
前記半導体装置は、前記応答時間に対する許容時間を保持し、前記応答時間の期待値と前記許容時間との和と前記応答時間を比較し、前記応答時間の計測値が前記応答時間の期待値と前記許容時間との和より大きい場合に、前記リクエスト送信回路からアクセス要求の発行を遅らせることを特徴とする半導体装置。
【請求項４】
請求項１において、
前記半導体装置は、外部に直列に接続された複数のメモリ装置に対して、前記複数のメモリ装置の夫々にＩＤを付加するためのアクセス要求を発行することを特徴とする半導体装置。
【請求項５】
請求項４において、
前記ＩＤを付加するためのアクセス要求は、電源投入時、若しくは、新たなメモリ装置が接続された場合に行われることを特徴とする半導体装置。
【請求項６】
請求項４において、
前記アクセス要求は、アクセス要求先のメモリ装置のＩＤを含み、
前記応答は、前記アクセス要求に対して応答を行ったメモリ装置のＩＤを含むことを特徴とする半導体装置。
【請求項７】
請求項１において、
前記アクセス要求は、リクエスト番号を含み、
前記アクセス要求に対する応答は、前記リクエスト番号に対応したレスポンス番号を含むことを特徴とする半導体装置。
【請求項８】
外部に対してアクセス要求を発行するリクエスト送信回路と、
前記リクエスト送信回路から発行したアクセス要求に対する応答を外部から受け取るレスポンス受信回路と、
前記アクセス要求から経過した時間を計測する計測回路とを具備し、
前記リクエスト送信回路は、前記リクエスト送信回路が第１のアクセス要求を発行する際に、第１の応答予測時間をレジスタに保持するとともに、前記計測回路によって計測された時間を前記レジスタに格納された第１の応答予測時間に反映させ、前記第１のアクセス要求の後に続く第２のアクセス要求を発行する際に、前記第２のアクセス要求に対する応答予測時間と前記レジスタに格納された第１の応答予測時間を比較し、前記第２のアクセス要求を発行するタイミングを制御することを特徴とする半導体装置。
【請求項９】
請求項８において、
前記半導体装置は、外部に接続されるメモリ装置に依存するアクセス要求に対する応答時間に関する情報を保持し、前記応答時間に関する情報を用いて前記第１及び第２の応答予測時間を求めることを特徴とする半導体装置。
【請求項１０】
請求項９において、
前記半導体装置は、前記第１及び第２の応答予測時間を、前記アクセス要求に対する最初のデータの応答時間と前記アクセス要求に対する最後のデータの応答時間の両方を求めることを特徴とする半導体装置。
【請求項１１】
複数のメモリ装置が直列に接続された情報記憶装置と、前記情報記憶装置にアクセス要求を出力する情報処理装置とを有する情報処理システムにおいて、
前記複数のメモリ装置の夫々は、リクエストインターフェース回路とレスポンスインターフェース回路とを介して夫々が直列に接続され、
前記情報処理装置は、前記アクセス要求を発行するリクエスト送信回路と、前記リクエスト送信回路から発行したアクセス要求に対する応答を前記情報記憶装置から受け取るレスポンス受信回路と、前記リクエスト送信回路から発行したアクセス要求から前記アクセス要求に対する応答を前記レスポンス受信回路が受け取るまでの応答時間を計測する計測回路とを具備することを特徴とする情報処理システム。
【請求項１２】
リクエストインターフェース回路と、レスポンスインターフェース回路とを有する半導体装置であって、
前記リクエストインターフェース回路には複数のリクエストキューを有しており、前記レスポンスインターフェース回路には複数のレスポンスキューを有しており、前記リクエストインターフェース回路からのリクエストに対するレスポンスを保持するための空き状態の前記レスポンスキューを確保して後に、前記リクエストインターフェース回路よりリクエストを発行すること特徴とする半導体装置。
【請求項１３】
請求項１２において、
前記半導体装置は、メモリ制御回路を有することを特徴とする半導体装置。
【請求項１４】
請求項１２において、
前記半導体装置は、情報処理回路を有することを特徴とする半導体装置。
【請求項１５】
請求項１２において、
前記半導体装置は、記憶装置を有することを特徴とする半導体装置。
【請求項１６】
請求項１２において、
前記半導体装置は、直列接続していることを特徴とする半導体装置。
【請求項１７】
請求項１２において、
前記半導体装置の前記レスポンスキューは、キャッシュメモリであることを特徴とする半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置の技術に関し、特に、不揮発性メモリと情報処理装置を含む情報処理システムおよびメモリモジュールの制御方法に適用して有効な技術に関する。
【背景技術】
【０００２】
近年、特許文献１に示されるように、情報処理装置とメモリ間の信号数を減少させ、動作周波数を向上しデータ転送速度の高速化を図るため、情報処理装置と複数のメモリを直列に接続した情報処理システムが提案されている。具体的には、それぞれのメモリには、情報処理装置から送信されたリクエストを保持するリクエストキューと、情報処理装置へのレスポンスを保持するレスポンスキューがある。レスポンスキューには、自身のメモリからのレスポンスを保持するレスポンスキューと後段のメモリからのレスポンスを保持するレスポンスキューがあり、これらのレスポンスキューへ保持されたレスポンスを内部の調停回路にて調停し、前段のメモリや情報処理装置へレスポンスを送信している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−３１０４３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本願発明者等は、本願に先立って、携帯電話機と、情報処理装置とフラッシュメモリと、ランダムアクセスメモリから構成された情報処理システムについて検討を行った。【０００５】
携帯電話は情報処理装置とＮＯＲ型フラッシュメモリ、ＳＲＡＭ、ＤＲＡＭ、ＮＡＮＤ型フラッシュメモリなどのメモリから構成され、ＮＯＲ型フラッシュメモリには主に、オペレーティングシステムや、通信制御用プログラムや、音楽や動画像の再生プログラムが格納されており、ＮＡＮＤ型フラッシュメモリには主に音楽データや動画像データが格納されている。【０００６】
通信制御プログラムを実行する場合は、情報処理装置はＮＯＲ型フラッシュメモリに格納されている通信制御用命令を読み出し、通信制御を行う。つまり、ＮＯＲ型フラッシュメモリからのランダムな命令の読み出しが頻繁に発生することがわかった。通信制御向けプログラムを高速に動作させるには、１回のデータ読み出しが終了するまでのレイテンシが重要となる。また、音楽や動画像を再生する場合は、情報処理装置はＮＯＲ型フラッシュメモリから音楽や動画像の再生プログラムを読み出し、さらにＮＡＮＤ型フラッシュメモリより、音楽データや動画像データをＤＲＡＭへ転送し、音楽や動画像の再生を行う。この音楽や動画像の再生には、ＮＡＮＤ型フラッシュメモリからのシーケンシャルなデータの読み出しや、ＤＲＡＭからのデータの読み出しと書き込みが交互に、頻繁に発生することがわかった。この音楽や動画像の再生には、データ転送性能が重要である。【０００７】
したがって、携帯電話にて、これら複数のプログラムを効率よく実行するには、レイテンシの短時間化とデータ転送速度の高速化が重要である。【０００８】
このようなメモリを特許文献１に示されるような直列接続した情報処理システムに適用した場合について検討を行った。具体的には、情報処理装置とメモリ１とメモリ２とメモリ３とが順に直列に接続されている情報処理システムについて検討を行った。このようなメモリを直列接続した情報処理システムの場合、メモリ２へは後段のメモリ３からのレスポンスが入力する。このためメモリ２は、メモリ２自身のレスポンスと、後段のメモリ３からのレスポンスを調停し、メモリ１へ送信することが必要となり、レイテンシのずれが生じてしまう。さらに、メモリ１には、後段のメモリ２やメモリ３からのレスポンスが入力する。このため、メモリ１は、メモリ１自身のレスポンスと、これら後段のメモリ２やメモリ３からのレスポンスを調停し、情報処理装置へのレスポンスを送信することが必要となり、さらにレイテンシのずれが増加してしまうという問題があり、携帯電話機の高性能化には対応できないことが判明した。【０００９】
そこで本発明の目的の一つは、情報処理装置とメモリ間および、メモリとメモリ間の信号配線数を低下させ、データ読み出しレイテンシをメモリ毎に一定に保ちつつ、高速且つ低コストで、メモリ容量の拡張性を確保できる使い勝手の良い情報処理システムを提供することである。
【課題を解決するための手段】
【００１０】
本発明の代表的な手段を示せば以下の通りである。【００１１】
まず第１に外部に対してアクセス要求を発行するリクエスト送信回路と、リクエスト送信回路から発行したアクセス要求に対する応答を外部から受け取るレスポンス受信回路と、リクエスト送信回路から発行したアクセス要求からアクセス要求に対する応答をレスポンス受信回路が受け取るまでの応答時間を計測する計測回路とを具備する。【００１２】
また、外部に対してアクセス要求を発行するリクエスト送信回路と、リクエスト送信回路から発行したアクセス要求に対する応答を外部から受け取るレスポンス受信回路と、アクセス要求から経過した時間を計測する計測回路とを具備し、リクエスト送信回路は、リクエスト送信回路が第１のアクセス要求を発行する際に、第１の応答予測時間をレジスタに保持するとともに、計測回路によって計測された時間をレジスタに格納された第１の応答予測時間に反映させ、第１のアクセス要求の後に続く第２のアクセス要求を発行する際に、第２のアクセス要求に対する応答予測時間と前記レジスタに格納された第１の応答予測時間を比較し、第２のアクセス要求を発行するタイミングを制御する。【００１３】
更には、複数のメモリ装置が直列に接続された情報記憶装置と、情報記憶装置にアクセス要求を出力する情報処理装置とを有する情報処理システムにおいて、複数のメモリ装置の夫々は、リクエストインターフェース回路とレスポンスインターフェース回路とを介して夫々が直列に接続され、情報処理装置は、アクセス要求を発行するリクエスト送信回路と、リクエスト送信回路から発行したアクセス要求に対する応答を情報記憶装置から受け取るレスポンス受信回路と、リクエスト送信回路から発行したアクセス要求からアクセス要求に対する応答をレスポンス受信回路が受け取るまでの応答時間を計測する計測回路とを具備する。
【発明の効果】
【００１４】
本発明によれば、データ読み出しレイテンシを一定値に保ちつつ、高速且つ低コストで、メモリ容量の拡張性を確保できる使い勝手の良い情報処理システムを実現できる。
【図面の簡単な説明】
【００１５】
【図１】本発明を適用した情報処理システムの構成の一例を示す図である。
【図２】本発明を適用した情報処理システムを構成する情報処理装置の構成の一例を示す図である。
【図３】メモリ装置の構成の一例を示す図である。
【図４】メモリ装置が装備するメモリ回路の回路ブロックの一例を示す図である。
【図５】メモリ装置の構成の一例を示す図である。
【図６】メモリ装置が装備するメモリ回路の回路ブロックの一例を示す図である。
【図７】メモリ装置の構成の一例を示す図である。
【図８】メモリ装置が装備するメモリ回路の回路ブロックの一例を示す図である。
【図９】本発明を適用した情報処理システムの電源投入時の動作の一例を示す図である。
【図１０】コネクションレジスタ（ＣＮＮＲＥＧ）の設定値の一例を示す図である。
【図１１】レスポンスキューレジスタ（ＲｅｓＱＲＥＧ）の設定値の一例を示す図である。
【図１２】リクエストキューレジスタ（ＲｅｑＱＲＥＧ）の設定値の一例を示す図である。
【図１３】レイテンシドメインレジスタ（ＬＴＤＲＥＧ）の設定値の一例を示す図である。
【図１４】レイテンシレジスタ（ＬＴＲＥＧ）の設定値の一例を示す図である。
【図１５】タイミングレジスタ（Ｍ０ＴＲＥＧ）の設定値の一例を示す図である。
【図１６】タイミングレジスタ（Ｍ１ＴＲＥＧ）の設定値の一例を示す図である。
【図１７】タイミングレジスタ（Ｍ２ＴＲＥＧ）の設定値の一例を示す図である。
【図１８】メモリ制御モードレジスタ（ＯＭＤＲＥＧ）への設定値の一例を示す図である。
【図１９】メモリ制御回路が各メモリ装置へ出力するリクエストの一例を示す図である。
【図２０】情報処理装置が管理するメモリモジュールに対するメモリマップの一例を示す図である。
【図２１】メモリ制御回路がリクエストをメモリモジュールに対して発行するまでの動作の一例を示すフローチャートである。
【図２２】情報処理装置からメモリモジュールへのリクエストに対する動作の一例を示すフローチャートである。
【図２３】メモリモジュールから情報処理装置へのレスポンスに対する動作の一例を示すフローチャートである。
【図２４】本発明を適用した情報処理システムでの動作波形の一例を示す図である。
【図２５】本発明を適用した情報処理システムでの動作波形の一例を示す図である。
【図２６】本発明を適用した情報処理システムでの動作波形の一例を示す図である。
【図２７】本発明を適用した情報処理システムでの動作波形の一例を示す図である。
【図２８】本発明を適用した情報処理システムでの動作波形の一例を示す図である。
【図２９】レイテンシ調整回路が装備しているカウンタの動作の一例を示すフローチャートである。
【図３０】各メモリ装置が装備するレスポンススケジュール回路の動作の一例を示すフローチャートである。
【図３１】本発明を適用した情報処理システムの構成図である。
【図３２】本発明を適用した情報処理システムを構成する情報処理装置の構成の一例を示す図である。
【図３３】メモリ装置の構成の一例を示す図である。
【図３４】メモリ装置の構成の一例を示す図である。
【図３５】メモリ装置の構成の一例を示す図である。
【図３６】本発明を適用した情報処理システムの構成図である。
【図３７】本発明を適用した情報処理システムの構成図である。
【図３８】本発明を適用した情報処理システムの構成図である。
【図３９】本発明を適用した情報処理システムの構成図である。
【図４０】本発明を適用した情報処理システムの構成図である。
【図４１】本発明を適用した情報処理システムの構成図である。
【図４２】本発明を適用した情報処理システムの構成図である。
【図４３】本発明を適用した情報処理システムの構成図である。
【図４４】本発明による情報処理システムの実装形態の一例を示す図である。
【図４５】本発明による情報処理システムを利用した携帯電話の構成例を示すブロック図である。
【図４６】本発明による情報処理システムを利用した携帯電話の構成例を示すブロック図である。
【図４７】本発明を適用した情報処理システムの構成図である。
【図４８】本発明を適用した情報処理システムの構成図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態につき添付図面を参照しながら詳細に説明する。実施の形態において各ブロックを構成する回路素子は、特に制限されないが、公知のＣＭＯＳ（相補型ＭＯＳトランジスタ）等の集積回路技術によって、単結晶シリコンのような１個の半導体基板上に形成される。また、具体的な数値は、特に言及がない限り、本発明を説明するにあたって用いた数値であって、特にそれに限定されるものではない。
【００１７】
（第１の実施の形態）
本発明を適用した第１の実施の形態である情報処理システムについて、図１〜図３０を用いて説明する。
【００１８】
図１は、本発明を適用した第１の実施の形態である情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭとから構成される情報処理システムにおいて、その構成の一例を示すブロック図である。また、図２は、情報処理装置ＣＰＵ＿ＣＨＩＰの構成の一例を示すブロック図である。以下におのおのについて説明する。
【００１９】
情報処理装置ＣＰＵ＿ＣＨＩＰは、情報処理回路ＣＰＵ０、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３と、調停回路ＣＡＲＢとメモリ制御回路ＤＣＭＣから構成されている。メモリモジュールＭＥＭは、メモリ装置Ｍ０、Ｍ１、Ｍ２から構成される。また、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ０、Ｍ１、Ｍ２は直列に接続されている。情報処理回路ＣＰＵ０はマスター番号レジスタＭＩＤ０を装備し、情報処理回路ＣＰＵ１はマスター番号レジスタＭＩＤ１を装備し、情報処理回路ＣＰＵ２はマスター番号レジスタＭＩＤ２を装備し、情報処理回路ＣＰＵ３はマスター番号レジスタＭＩＤ３を装備している。
【００２０】
メモリ制御回路ＤＣＭＣは、コンフィグレーション回路ＣＯＮＦＩＧ、リクエストキューＲＥＱＱ１、ヒット判定回路ＩＤＨＴ、リクエストキューＲＥＱＱ２、コマンド生成回路ＣＯＭＧＥＮ、リクエスト出力回路ＲＱＯＵＴ、リフレッシュ要求回路ＲＥＦ、キュー管理回路ＱＭＧＴ、レイテンシ調整回路ＬＣＨＣＫ、レスポンス入力回路ＲＳＩＮ、レスポンスキューＲＥＳＱ１を含む。また、コンフィグレーション回路ＣＯＮＦＩＧは、図示していないがキューレジスタＱＲＥＧ、レイテンシレジスタＬＴＲＥＧ、レイテンシドメインレジスタＬＴＤＲＥＧ、メモリ装置Ｍ０に関するタイミングレジスタＭ０ＴＲＥＧ、メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧ、メモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧ、動作モードレジスタＯＭＤＲＥＧ、コネクションレジスタＣＮＮＲＥＧを含んでいる。
【００２１】
情報処理回路ＣＰＵ０、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３は、調停回路ＣＡＲＭおよびメモリ制御回路ＤＣＭＣを通じて、メモリモジュールＭＥＭより、ＯＳやアプリケーションプログラムおよびＯＳやアプリケーションプログラムにて処理を行うデータを読み出し、実行する。
【００２２】
リクエストキューＲＥＱＱ１およびリクエストキューＲＥＱＱ２は、情報処理回路ＣＰＵ０〜３から発行されたリードリクエストやライトリクエストなどが格納され、レスポンスキューＲＥＳＱ１には、メモリモジュールＭＥＭから読み出されたＯＳ、アプリケーションプログラムおよびデータなどが格納される。
【００２３】
ヒット判定回路ＩＤＨＴは、情報処理回路ＣＰＵ０〜３からのリードリクエストおよびライトリクエストに対するデータが、各メモリ装置Ｍ０〜２のレスポンスキューやメモリバンク毎の活性化しているページに存在するかを判定する（以下、「ヒット判定」と呼ぶ。）。そのためにヒット判定回路ＩＤＨＴは、情報処理回路ＣＰＵ０〜３からのリクエストに対応するアドレスに対して、メモリモジュールＭＥＭを構成する各メモリ装置のバンクアドレスＢＡｄｄとページアドレスＰＡｄｄとカラムアドレスＣＡｄｄの対応付けを行っている。また、ヒット判定回路ＩＤＨＴは、各メモリ装置が装備しているレスポンスキューの中でデータを保存しているレスポンスキューに対してバンクアドレスとページアドレスとカラムアドレスを保存している。さらに、ヒット判定回路ＩＤＨＴは、各メモリ装置が装備しているメモリバンクの中で、メモリバンク毎の活性化しているページに対して、そのバンクアドレスとページアドレスを保持している。
【００２４】
メモリモジュールＭＥＭは、メモリ装置Ｍ０、Ｍ１、Ｍ２から構成される。また、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ０、Ｍ１、Ｍ２は直列に接続されている。メモリ装置Ｍ０は、揮発性メモリであり、１個の半導体基板上に形成されるメモリ装置であっても、複数のメモリチップが集積されたメモリ装置であっても良い。また、メモリ装置Ｍ１およびＭ２は不揮発性メモリであり、１個の半導体基板上に形成されるメモリ装置であっても、複数のメモリチップが集積されたメモリ装置であっても良い。ここで、代表的な揮発性メモリには、メモリアレイにダイナミックランダムアクセスメモリセルを用いたダイナミックランダムアクセスメモリＤＲＡＭ及び疑似スタティックランダムアクセスメモリＰＳＲＡＭ、スタティックランダムアクセスメモリセルを用いたスタティックランダムアクセスメモリＳＲＡＭ等があり、本発明には全ての揮発性メモリセルを利用することができる。本実施の形態ではメモリアレイにダイナミックランダムアクセスメモリセルを用いた例を説明する。不揮発性メモリにはＲＯＭ（リードオンリーメモリ）、ＥＥＰＲＯＭ（エレクトリカリイレーサブルアンドプログラマブルＲＯＭ）、フラッシュメモリ、相変化メモリＰＣＭ、マグネティック・ランダム・アクセスメモリＭＲＡＭ、抵抗スイッチング型ランダムアクセスメモリＲｅＲＡＭ等を用いることができる。本実施の形態ではフラッシュメモリを例に説明する。また、代表的なフラッシュメモリには、ＮＯＲ型フラッシュメモリと、ＡＮＤ型フラッシュメモリと、ＮＡＮＤ型フラッシュメモリと、ＯＲＮＡＮＤ型フラッシュメモリがあり、本発明には全てのフラッシュメモリを利用することができる。
【００２５】
また、代表的なフラッシュメモリには、メモリセルに１ビットの情報を記憶できる２値メモリセルＳＬＣを用いたフラッシュメモリと、メモリセルに２ビット以上の情報を記憶できる多値メモリセルＭＬＣを用いたフラッシュメモリとがあり、本発明にはこれら全てのフラッシュメモリを利用することができる。
【００２６】
本実施の形態では、２値メモリセルＳＬＣを利用したＮＯＲ型フラッシュメモリと２値メモリセルＳＬＣを利用したＮＡＮＤ型フラッシュメモリを例に説明する。メモリ装置Ｍ０へ用いられる典型的な揮発性メモリは、ダイナミックメモリセルを利用したダイナミックランダムアクセスメモリであり、約１Ｇｂｉｔの記憶容量を持っている。特に限定しないがメモリ装置Ｍ０は情報処理装置ＣＰＵ＿ＣＨＩＰにてアプリケーションプログラムを実行するための一時的なワークメモリとして利用される。メモリ装置Ｍ１へ用いられる典型的なフラッシュメモリは、ＮＯＲ型フラッシュメモリセルを利用し、約１Ｇｂｉｔの大きな記憶容量を持っている。特に限定しないが、メモリ装置Ｍ１には情報処理装置ＣＰＵ＿ＣＨＩＰにて実行するＯＳ、ブートプログラム、ブートデバイスＩＤ値、メモリモジュールＭＥＭのコンフィグレーション情報およびアプリケーションプログラムなどが格納される。メモリ装置Ｍ２へ用いられる典型的なフラッシュメモリはＮＡＮＤ型フラッシュメモリセルを利用し、約１６Ｇｂｉｔの記憶容量を持っている。特に限定しないが、メモリ装置Ｍ２には主に情報処理装置ＣＰＵ＿ＣＨＩＰにて再生、録音および録画処理を行うために必要な音声データ、静止画像データや動画像データなどが格納される。
【００２７】
メモリ装置Ｍ０、Ｍ１及びＭ２には、それぞれ初期設定回路ＩＮＩＴがあり、電源投入直後に、それぞれの初期設定回路ＩＮＩＴがメモリ装置に対し初期設定を行う。メモリ装置Ｍ０、Ｍ１及びＭ２のリクエストキュー制御回路ＲｑＣＴには、それぞれのメモリ装置の識別番号ＩＤを格納するＩＤレジスタＩＤＲが設けられている。電源投入直後に先ず、初期設定回路ＩＮＩＴによって初期設定され、次に、情報処理装置ＣＰＵ＿ＣＨＩＰによってメモリ装置Ｍ０、Ｍ１、Ｍ２の識別番号ＩＤが決定され、それぞれのメモリ装置内のＩＤレジスタＩＤＲへ識別番号ＩＤが格納される。
【００２８】
メモリ装置Ｍ０、Ｍ１及びＭ２は、それぞれブートデバイス認識信号Ｂｓｉｇを持っており、このブートデバイス認識信号Ｂｓｉｇが接地（ｇｎｄ）されている場合は、そのメモリ装置が電源投入直後の動作を行うためのブートプログラムを格納しているブートデバイスであることを示す。ブートデバイス認識信号Ｂｓｉｇが電源（ｖｄｄ）に接続されている場合は、そのメモリ装置がブートデバイスではないことを示す。本実施の形態では、メモリ装置Ｍ１がブートデバイスであり、メモリ装置Ｍ０およびＭ２はブートデバイスに設定されていないものとする。また、ブートデバイス認識信号Ｂｓｉｇによって、どのメモリ装置をブートデバイスにするかをプログラムすることができる。
【００２９】
メモリ装置Ｍ０、Ｍ１及びＭ２を直列に接続し、動作させるクロック方式として、コモンクロック方式、ソースシンクロナスクロック方式、エンベデッドクロック方式などがあり、本発明には全てのクロック方式を利用することができる。本実施の形態では、ソースシンクロナスクロック方式による動作を一例として説明する。
【００３０】
ＲｑＣｋ０、ＲｑＣＫ１およびＲｑＣｋ２は、リクエストクロックであり、ＲｓＣｋ０、ＲｓＣＫ１およびＲｓＣｋ２はレスポンスクロックである。ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２は、リクエスト信号であり、ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。これらリクエスト信号を通じて送信されるリクエストは、特に限定しないが４バイトの共通リクエスト部ＣＭＮＲＥＱＦと、最大３６バイトの可変リクエスト部ＶＢＲＥＱから構成され、多重化されて、それぞれのリクエストクロックＲｑＣｋ０、ＲｑＣｋ１およびＲｑＣｋ２に同期して送信される。
【００３１】
共通リクエスト部ＣＭＮＲＥＱＦはリクエスト開始フラグＲｅｑＳｔＦｌｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、可変部リクエスト長ＶＲＥＱＬ、リクエスト番号ＲｅｑＮから構成され、可変リクエスト部ＶＢＲＥＱＦは、４バイトのアドレスおよび最大３２バイトのライトデータから構成される。可変部リクエスト長ＶＲＥＱＬは可変リクエスト部ＶＢＲＥＱＦの長さをバイト単位で表している。
【００３２】
ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２のレスポンス信号を通じて送信されるレスポンスは、特に限定しないが４バイトの共通レスポンス部ＣＭＮＲＥＳＦと最大３２バイトのリードデータから構成され、多重化されて、それぞれのレスポンスクロックＲｓＣｋ０、ＲｓＣｋ１、ＲｓＣｋ２に同期して送信される。
【００３３】
共通レスポンス部ＣＭＮＲＥＳＦはレスポンス開始フラグＲｅｓＳｔＦｌａｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、リードデータ長ＲＤＬ、レスポンス番号ＲｅｓＮから構成される。リードデータ長ＲＤＬはリードデータの長さをバイト単位で表している。
【００３４】
マスター番号は、情報処理回路ＣＰＵ０、１、２、３の中で、どの情報処理回路からのリクエストであるかを示し、それぞれのマスター番号レジスタＭＩＤ０、ＭＩＤ１、ＭＩＤ２へ設定されている値と対応している。また、リクエスト開始フラグがＨｉｇｈの時、そのリクエストの開始を示す。識別番号ＩＤ値はメモリ装置Ｍ０、Ｍ１およびＭ２を識別する識別番号である。リクエスト番号は、リクエスト自身の識別番号である。リクエスト長は、多重化されたリクエストの長さを示す。また、レスポンス開始フラグがＨｉｇｈの時、そのレスポンスの開始を示す。識別番号ＩＤ値はメモリ装置Ｍ０、Ｍ１およびＭ２を識別する識別番号である。レスポンス番号は、レスポンス自身の識別番号である。レスポンス長は、多重化されたレスポンスの長さを示す。
【００３５】
＜メモリ装置Ｍ０の説明＞
図３は、メモリ装置Ｍ０の構成図の一例である。メモリ装置Ｍ０は、リクエストインターフェース回路ＲｅｑＩＦと、レスポンスインターフェース回路ＲｅｓＩＦと、初期化回路ＩＮＩＴ、メモリ回路Ｍｅｍ０から構成されている。リクエストインターフェース回路ＲｅｑＩＦはリクエストクロック制御回路ＲｑＣｋＣおよび、リクエストキュー制御回路ＲｑＣＴから構成される。リクエストクロック制御回路ＲｑＣｋＣはクロックドライバＤｒｖ１およびクロック分周回路Ｄｉｖ１から構成される。
【００３６】
リクエストキュー制御回路ＲｑＣＴは、リクエストキュー回路ＲｑＱＩ、リクエストキュー回路ＲｑＱＸＩ、リクエストキュー回路ＲｑＱＸＯ、ＩＤレジスタ回路ＩＤＲ、ＩＤ比較回路ＣＰＱ、レスポンス優先順位設定レジスタ回路ＲＲＧ、リクエストキューチェック回路ＲＱＱＭ、ＩＤ有効ビットＩＤＶ、ブートデバイスフラグレジスタＢＲおよび終端デバイスフラグレジスタＥＲから構成される。
【００３７】
特に限定しないが、リクエストキュー回路ＲｑＱＩは８つのリクエストキューから構成され、リクエストキュー回路ＲｑＱＸＩは４つのリクエストキューから構成され、リクエストキュー回路ＲｑＱＸＯは４つのリクエストキューから構成される。
【００３８】
レスポンスインターフェース回路ＲｅｓＩＦは、レスポンスクロック制御回路ＲｓＣｋＣおよび、レスポンスキュー制御回路ＲｓＣＴから構成される。レスポンスクロック制御回路ＲｓＣｋＣはクロックドライバＤｒｖ２およびクロック分周回路Ｄｉｖ２から構成される。レスポンスキュー制御回路ＲｓＣＴは、レスポンスキュー回路ＲｓＱｏ、レスポンスキュー回路ＲｓＱｐ、レスポンスキューチェック回路ＲＳＱＭ、レスポンススケジュール回路ＳＣＨ、レイテンシコードレジスタＬＣ、デバイスコードレジスタＤＣから構成される。特に限定しないが、レスポンスキュー回路ＲｓＱｏは４つのレスポンスキューから構成され、レスポンスキュー回路ＲｓＱｐは８つのレスポンスキューから構成される。
【００３９】
メモリ回路Ｍｅｍ０は、揮発性メモリであり、ダイナミックランダムアクセスメモリセルを利用したダイナミックランダムアクセスメモリである。初期化回路ＩＮＩＴは、メモリ装置Ｍ０への電源供給開始時にメモリ装置Ｍ０の初期化を行う。リクエストクロック制御回路ＲｑＣｋＣは、クロック信号ＲｑＣｋ０から入力したクロックを、内部クロックｃｋ１を通じて、リクエストキュー制御回路ＲｑＣＴ及びレスポンスクロック制御回路ＲｓＣｋＣへ伝える。また、リクエストクロック制御回路ＲｑＣｋＣは、リクエストクロック信号ＲｑＣｋ０から入力されたクロックをクロックドライバＤｒｖ１及びクロック分周回路Ｄｉｖ１を介して、クロック信号ＲｑＣｋ１を通じて出力する。また、リクエストクロック制御回路ＲｑＣｋＣはリクエスト信号ＲｑＭｕｘ０を通じて入力した命令に従い、クロック信号ｃｋ２およびリクエストクロックＲｑＣｋ１のクロック周波数を低下させたり、クロックを停止させたり、クロックを再動作させることができる。
【００４０】
レスポンスクロック制御回路ＲｓＣｋＣは、内部クロック信号ｃｋ１から入力したクロックを、内部クロック信号ｃｋ３を通じて、レスポンスキュー制御回路ＲｓＣＴへ出力する。また、レスポンスクロック制御回路ＲｓＣｋＣは内部クロック信号ｃｋ１から入力したクロックを、クロック分周回路Ｄｉｖ２を介してクロック信号ＲｓＣｋ０から出力する。また、レスポンスクロック制御回路ＲｓＣｋＣは、クロック信号ＲｓＣＫ１から入力したクロックを、クロックドライバＤｉｖ２を介して、クロック信号ｃｋ４よりレスポンスキュー制御回路ＲｓＣＴへ出力する。さらに、レスポンスクロック制御回路ＲｓＣｋＣはリクエスト信号ＲｑＭｕｘ０を通じて入力した命令に従い、レスポンスクロックＲｓＣｋ０のクロック周波数を低下させたり、また、クロックを停止させたり、さらに、クロックを再動作させることができる。
【００４１】
リクエストキュー回路ＲｑＱＩは、リクエスト信号ＲｑＭｕｘ０を通じて、ＩＤ値、リクエスト番号ＲｅｑＮ、命令、アドレス及び書き込みデータなどが多重化されメモリ装置Ｍ０へ入力したリクエストを格納し、リクエスト番号ＲｅｑＮと同じ番号のレスポンス番号ＲｅｓＮを生成し、レスポンスキュー制御回路ＲｓＣＴへ送信する。
【００４２】
ＩＤレジスタ回路ＩＤＲには、メモリ装置Ｍ０の識別番号ＩＤ値が格納されており、ＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩに格納されているＩＤ値と、ＩＤレジスタ回路ＩＤＲに格納されている識別番号ＩＤ値を比較する。リクエストキュー回路ＲｑＱＸＩ及びリクエストキュー回路ＲｑＱＸＯは、リクエストキュー回路ＲｑＱＩから転送されたリクエストを格納する。
【００４３】
レスポンスキュー回路ＲｓＱｏは、メモリ装置Ｍ０のメモリ回路Ｍｅｍ０から読み出されたデータ及びＩＤレジスタ回路ＩＤＲから読み出されたＩＤ値、レスポンス番号ＲｅｓＮを格納する。レスポンスキュー回路ＲｓＱｐは、レスポンス信号ＲｓＭｕｘ１を通じて、入力されるＩＤ値、レスポンス番号ＲｅｓＮ、読み出しデータおよびエラー情報およびステータス情報を格納する。
【００４４】
レスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏへ格納されているレスポンスと、レスポンスキュー回路ＲｓＱｐへ格納されているレスポンスとのレスポンス優先順位を決め、優先順位の高いレスポンスを、レスポンス信号ＲｓＭｕｘ０から出力するための調停を行う。特に限定しないが、レスポンス優先順位を決める制御方式は順位固定方式や順位変更方式があり、レスポンス優先順位設定レジスタ回路ＲＲＧへは設定された方式によってレスポンススケジュール回路ＳＣＨはレスポンスの優先順位を決める。順位固定方式では、各メモリ装置が装備しているレスポンスキュー回路ＲｓＱｐ内のレスポンスをレスポンスキュー回路ＲｓＱｏ内のレスポンスより優先させる設定や、レスポンスキュー回路ＲｓＱｏ内のレスポンスをレスポンスキュー回路ＲｓＱｐ内のレスポンスをより優先させる設定などが可能である。また、順位変更方式では、各メモリ装置が装備しているレスポンスキュー回路ＲｓＱｐ内のレスポンスとレスポンスキュー回路ＲｓＱｏ内のレスポンスの優先順位をラウンドロビン方式で変更することが可能である。
【００４５】
＜メモリ回路Ｍｅｍ０＞
図４は、メモリ装置Ｍ０が装備するメモリ回路Ｍｅｍ０の回路ブロック図の一例である。メモリ回路Ｍｅｍ０は、コマンドデコーダＣｍｄ Ｄｅｃ、制御回路Ｃｏｎｔ  Ｌｏｇｉｃ、リフレッシュカウンタＲｅｆＣ、温度計Ｔｈｍｏ、ライトデータバッファＷＤａｔａ Ｌａｔ、リードデータバッファＲＤａｔａ Ｌａｔ、データ制御回路Ｄａｔａ Ｃｏｎｔ、およびメモリバンクＢＡＮＫ０〜ＢＡＮＫ７から構成されている。また、各メモリバンクＢＡＮＫ０〜ＢＡＮＫ７はロウアドレスバッファＲａｄＬａｔ、カラムアドレスバッファＣａｄＬａｔ、ロウデコーダＲｏｗＤｅｃ、カラムデコーダＣｏｌＤｅｃ、センスアンプＳｅｎｓｅＡｍｐ、メモリ回路ＭＢａｎｋ０〜ＭＢａｎｋ７から構成されている。これらの構成は、よく知られているダイナミックランダムアクセスメモリの構成と同じであるため、ここでの詳しい説明は省略する。
【００４６】
＜メモリ装置Ｍ１の説明＞
図５は、メモリ装置Ｍ１の構成図の一例である。図３に示されるメモリ装置Ｍ０との相違点は、メモリ回路Ｍｅｍ１が、不揮発性メモリであり、ＮＯＲ型フラッシュメモリセルを利用したＮＯＲ型フラッシュメモリである点である。そのため、メモリ回路Ｍｅｍ１には、ブートデバイスＩＤ値ＢｏｔＩＤが格納される。メモリ回路Ｍｅｍ１および初期化回路ＩＮＩＴ１以外の、メモリ装置Ｍ１を構成する回路と、その動作は、図３のメモリ装置Ｍ０と同等である。
【００４７】
＜メモリ回路Ｍｅｍ１＞
図６は、メモリ装置Ｍ１が装備するメモリ回路Ｍｅｍ１の回路ブロック図の一例である。メモリ回路Ｍｅｍ１は、コマンドデコーダＣｍｄ Ｄｅｃ、制御回路Ｃｏｎｔ  Ｌｏｇｉｃ、ライトデータバッファＷＤａｔａ Ｌａｔ、リードデータバッファＲＤａｔａ Ｌａｔ、データ制御回路Ｄａｔａ Ｃｏｎｔ、およびメモリバンクＮＶ１ＢＡＮＫ０〜ＮＶ１ＢＡＮＫ７から構成されている。また、各メモリバンクＮＶ１ＢＡＮＫ０〜ＮＶ１ＢＡＮＫＫ７はページアドレスバッファＰａｄＬａｔ、カラムアドレスバッファＣａｄＬａｔ、ページデコーダＰａｇｅ Ｄｅｃ、カラムデコーダＣｏｌＤｅｃ、データバッファＤａｔａＬａｔ、メモリアレイ回路ＮＶ１Ｂｋ０〜ＮＶ１Ｂｋ７から構成されている。
【００４８】
メモリ回路Ｍｅｍ１の読み出し動作の一例を説明する。メモリ装置Ｍ１のリクエストキューＲｑＱＸＩへ、バンクアクティブ命令ＡＣ、バンクアドレス７およびページアドレス５が含まれているリクエストＲｅｑＡＣＩＤ２ＳＥＱ１５が格納されるとバンクアクティブ命令ＡＣがコマンド信号Ｃｏｍｍａｎｄから、バンクアドレス７およびページアドレス５が、アドレス信号Ａｄｄｒｅｓｓよりメモリ回路Ｍｅｍ１へ送信される。コマンドデコーダＣｍｄＤｅｃはバンクアクティブ命令ＢＡを解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＡＮＫ７が選択され、メモリバンクＮＶ１ＢＡＮＫ７のページアドレスバッファＰａｄＬａｔへページアドレス５が格納され、ページデコーダＰａｇｅ Ｄｅｃへ入力される。その後メモリアレイ回路ＮＶ１Ｂｋ７内のページアドレス５に接続されているメモリセルが活性化され、特に限定しないが１ｋＢｙｔｅ分のデータがデータバッファＤａｔａ Ｌａｔへ転送される。
【００４９】
つぎに、メモリ装置Ｍ１のリクエストキューＲｑＱＸＩへ８バイトデータリード命令ＲＤ８、バンクアドレス７およびカラムアドレス６４が格納されると、８バイトデータリード命令ＲＤ８がコマンド信号Ｃｏｍｍａｎｄから、バンクアドレス７およびカラムアドレス６３が、アドレス信号Ａｄｄｒｅｓｓよりメモリ回路Ｍｅｍ１へ送信される。コマンドデコーダＣｍｄ Ｄｅｃは８バイトデータリード命令ＲＤ８を解読し、制御回路Ｃｏｎｔ   ＬｏｇｉｃによってメモリバンクＮＶ１ＢＡＮＫ７が選択され、メモリバンクＮＶ１ＢＡＮＫ７のカラムアドレスバッファＣａｄＬａｔへカラムアドレス６３を格納され、カラムデコーダＣｏｌ Ｄｅｃへ入力される。
【００５０】
その後、カラムアドレス６４を開始アドレスとして、８バイト分のデータが、データバッファＤａｔａＬａｔから読み出され、データ制御回路Ｄａｔａ Ｃｏｎｔを介してリードデータバッファＲＤａｔａ  Ｌａｔへ転送され格納される。その後読み出された８バイト分のデータはレスポンスキュー回路ＲｓＱｏへ転送される。
【００５１】
次に、メモリ回路Ｍｅｍ１の書き込み動作の一例を説明する。メモリ装置Ｍ１のリクエストキューＲｑＱＸＩへ８バイトデータライト命令ＷＴ８、バンクアドレス７、カラムアドレス１２８が格納されており、８バイトデータライト命令ＲＤ８がコマンド信号Ｃｏｍｍａｎｄから、バンクアドレス７およびカラムアドレス１２７が、アドレス信号Ａｄｄｒｅｓｓより、８バイトデータがライトデータ信号ＷＤａｔａよりメモリ回路Ｍｅｍ１へ送信される。
【００５２】
コマンドデコーダＣｍｄＤｅｃは８バイトデータライト命令ＷＴ８を解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＡＮＫ７が選択され、メモリバンクＮＶ１ＢＡＮＫ７のカラムアドレスバッファＣａｄＬａｔへカラムアドレス１２８が格納され、カラムデコーダＣｏｌ Ｄｅｃへ入力される。また、制御回路Ｃｏｎｔ  Ｌｏｇｉｃによって８バイト分のライトデータはライトデータバッファＷＤａｔａ  Ｌａｔへ格納される。
【００５３】
その後カラムアドレス１２８を開始アドレスとして、８バイト分のデータが、ライトデータバッファＷＤａｔａ  Ｌａｔから、データ制御回路Ｄａｔａ  Ｃｏｎｔを介して、メモリバンクＮＶ１ＢＡＮＫ７内のデータバッファＤａｔａＬａｔへ転送され、メモリアレイ回路ＮＶ１Ｂｋ７へ書き込まれる。
【００５４】
各メモリバンクＮＶ１ＢＡＮＫ０〜ＮＶ１ＢＡＮＫ７は独立に動作するため、異なるバンク間では、読み出し動作と書き込み動作を同時に実行でき、高速化を図ることができる。
【００５５】
＜メモリ装置Ｍ２の説明＞
図７は、メモリ装置Ｍ２の構成図の一例である。図３、５に示されるメモリ装置Ｍ０、Ｍ１との相違点は、メモリ回路Ｍｅｍ２が、不揮発性メモリであり、ＮＡＮＤ型フラッシュメモリセルを利用したＮＡＮＤ型フラッシュメモリである点である。メモリ回路Ｍｅｍ２および初期化回路ＩＮＩＴ２、以外のメモリ装置Ｍ２を構成する回路と、その動作は、図３のメモリ装置Ｍ０および図５のメモリ装置Ｍ１と同等である。即ち、初期化回路ＩＮＩＴ、ＩＮＴ１、ＩＮＩＴ２とメモリ回路Ｍｅｍ０、Ｍｅｍ１、Ｍｅｍ２以外の回路は、メモリ装置Ｍ０〜２で共通の回路を用いることができる。
【００５６】
＜メモリ回路Ｍｅｍ２＞
図８は、メモリ装置Ｍ２が装備するメモリ回路Ｍｅｍ２の回路ブロック図の一例である。メモリ回路Ｍｅｍ２は、コマンドデコーダＣｍｄ Ｄｅｃ、制御回路Ｃｏｎｔ  Ｌｏｇｉｃ、ライトデータバッファＷＤａｔａ Ｌａｔ、リードデータバッファＲＤａｔａ Ｌａｔ、データ制御回路Ｄａｔａ Ｃｏｎｔ、およびメモリバンクＮＶ１ＢＡＮＫ０〜ＮＶ１ＢＡＮＫ７から構成されている。また、各メモリバンクＮＶ２ＢＡＮＫ０〜ＮＶ２ＢＡＮＫ７はページアドレスバッファＰａｄＬａｔ、カラムアドレスバッファＣａｄＬａｔ、ページデコーダＰａｇｅＤｅｃ、カラムデコーダＣｏｌ Ｄｅｃ、データバッファＤａｔａＬａｔ、メモリアレイ回路ＮＶ２Ｂｋ０〜ＮＶ２Ｂｋ７から構成されている。
【００５７】
メモリ回路Ｍｅｍ２の読み出し動作の一例を説明する。メモリ装置Ｍ２のリクエストキューＲｑＱＸＩへ、バンクアクティブ命令ＡＣ、バンクアドレス７およびページアドレス５が含まれているリクエストＲｅｑＡＣＩＤ３ＳＥＱ１５が格納されるとバンクアクティブ命令ＡＣがコマンド信号Ｃｏｍｍａｎｄから、バンクアドレス７およびページアドレス５が、アドレス信号Ａｄｄｒｅｓｓよりメモリ回路Ｍｅｍ２へ送信される。コマンドデコーダＣｍｄＤｅｃはバンクアクティブ命令ＢＡを解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＡＮＫ７が選択され、メモリバンクＮＶ１ＢＡＮＫ７のページアドレスバッファＰａｄＬａｔへページアドレス５が格納され、ページデコーダＰａｇｅ  Ｄｅｃへ入力される。その後メモリアレイ回路ＮＶ１ＢＡＮＫ７内のページアドレス５に接続されているメモリセルが活性化され、特に限定しないが１ｋＢｙｔｅ分のデータがデータバッファＤａｔａＬａｔへ転送される。
【００５８】
つぎに、メモリ装置Ｍ２のリクエストキューＲｑＱＸＩへ８バイトデータリード命令ＲＤ８、バンクアドレス７およびカラムアドレス６４が格納されると、８バイトデータリード命令ＲＤ８がコマンド信号Ｃｏｍｍａｎｄから、バンクアドレス７およびカラムアドレス６３が、アドレス信号Ａｄｄｒｅｓｓよりメモリ回路Ｍｅｍ２へ送信される。コマンドデコーダＣｍｄ Ｄｅｃは８バイトデータリード命令ＲＤ８を解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＫ７が選択され、メモリバンクＮＶ１ＢＫ７のカラムアドレスバッファＣａｄＬａｔへカラムアドレス６３を格納され、カラムデコーダＣｏｌ Ｄｅｃへ入力される。
【００５９】
その後、カラムアドレス６４を開始アドレスとして、８バイト分のデータが、データバッファＤａｔａＬａｔから読み出され、データ制御回路ＤａｔａＣｏｎｔを介してリードデータバッファＲＤａｔａ  Ｌａｔへ転送され格納される。その後読み出された８バイト分のデータはレスポンスキュー回路ＲｓＱｏへ転送される。
【００６０】
次に、メモリ回路Ｍｅｍ２の書き込み動作の一例を説明する。メモリ装置Ｍ２のリクエストキューＲｑＱＸＩへ８バイトデータライト命令ＷＴ８、バンクアドレス７、カラムアドレス１２８が格納されており、８バイトデータライト命令ＲＤ８がコマンド信号Ｃｏｍｍａｎｄから、バンクアドレス７およびカラムアドレス１２７が、アドレス信号Ａｄｄｒｅｓｓより、８バイトデータがライトデータ信号ＷＤａｔａよりメモリ回路Ｍｅｍ２へ送信される。コマンドデコーダＣｍｄ Ｄｅｃは８バイトデータライト命令ＷＴ８を解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＡＮＫ７が選択され、メモリバンクＮＶ１ＢＡＮＫ７のカラムアドレスバッファＣａｄＬａｔへカラムアドレス１２８が格納され、カラムデコーダＣｏｌ Ｄｅｃへ入力される。また、制御回路Ｃｏｎｔ  Ｌｏｇｉｃによって８バイト分のライトデータはライトデータバッファＷＤａｔａ  Ｌａｔへ格納される。
【００６１】
その後カラムアドレス１２８を開始アドレスとして、８バイト分のデータが、ライトデータバッファＷＤａｔａ  Ｌａｔから、データ制御回路Ｄａｔａ  Ｃｏｎｔを介して、メモリバンクＮＶ２ＢＡＮＫ７内のデータバッファＤａｔａＬａｔへ転送され、メモリアレイ回路ＮＶ２Ｂｋ７へ書き込まれる。各メモリバンクＮＶ２ＢＡＮＫ０〜ＮＶ２ＢＡＮＫ７は独立に動作するため、異なるバンク間では、読み出し動作と書き込み動作を同時に実行でき、高速化を図ることができる。
【００６２】
以下に本情報処理システムの動作を説明する。先ず、電源投入時および電源投入直後の動作について説明する。
【００６３】
＜電源投入時の初期シーケンス＞
先ず、図１から図９を用いて電源投入時の本情報処理システムの動作の一例について説明する。図９は、本情報処理システムの電源投入時の初期シーケンスを示す一例である。Ｔ１の期間（ＰｗＯＮ）で情報処理装置ＣＰＵ＿ＣＨＩＰと、メモリモジュールＭＥＭ内のメモリ装置Ｍ０、Ｍ１及びＭ２へ電源投入を行い、Ｔ２の期間（Ｒｅｓｅｔ）でリセットを行う。リセットの方法は特に限定しないが、それぞれの内蔵回路で自動的にリセットを行う方法でも、あるいは、外部にリセット端子を持ち、このリセット信号によってリセット動作を行う方法でも、情報処理装置ＣＰＵ＿ＣＨＩＰからリクエスト信号ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２を介して、リセット命令をメモリＭ０、Ｍ１およびＭ２へ入力し、リセットを行う方法としても良い。
【００６４】
Ｔ２のリセット期間（Ｒｅｓｅｔ）では、情報処理装置ＣＰＵ＿ＣＨＩＰ、メモリ装置Ｍ０、Ｍ１及びＭ２の内部状態を初期設定する。以下に一例を示す。情報処理装置ＣＰＵ＿ＣＨＩＰは、コンフィグレーション回路ＣＯＮＦＩＧ内の全てのレジスタを初期化する。また、情報処理回路ＣＰＵ０が持つマスター番号レジスタＭＩＤ０へ０を設定し、情報処理回路ＣＰＵ１が持つマスター番号レジスタＭＩＤ１へ１を設定し、情報処理回路ＣＰＵ２が持つマスター番号レジスタＭＩＤ２へ２を設定し、情報処理回路ＣＰＵ３が持つマスター番号レジスタＭＩＤ３へ３を設定する。
【００６５】
また、情報処理装置ＣＰＵ＿ＣＨＩＰは、自らが管理するメモリマップを初期設定する。特に限定しないが、ブートプログラム領域、コンフィグレーション領域、プログラム領域、コピー領域、ワーク領域、データ領域、ＩＯデバイス領域などが設定の対象となり、ブートプログラム領域およびプログラム領域はメモリ装置Ｍ１へ、コピー領域およびワーク領域はメモリ装置Ｍ０へ、データ領域はメモリ装置Ｍ２へ、コンフィグレーション領域はコンフィグレーション回路ＣＯＮＦＩＧへ割り当てられる。
【００６６】
メモリ装置Ｍ０は、自身の初期設定回路ＩＮＩＴが、自身のリクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｑＣＴ、リクエスト制御回路ＲｑＣｋｃ、レスポンスクロック制御回路ＲｓＣｋＣ、クロック分周回路Ｄｉｖ１、Ｄｉｖ２およびメモリ回路Ｍｅｍ０を初期設定する。メモリ装置Ｍ０は、ブートデバイス認識信号Ｂｓｉｇが電源ｖｄｄに接続されているので、自分自身はブートデバイスではないことを認識し、ブートデバイスフラグレジスタＢＲへ０を設定する。次にＩＤレジスタＩＤＲが持つＩＤ値は０へ、ＩＤ有効ビットＩＤＶはＬｏｗへ初期設定される。レスポンスキュー制御回路ＲｑＣＴが持つレスポンス調停回路のレスポンス優先順位に関して、メモリ装置Ｍ０のレスポンス優先順位は１へ、メモリ装置Ｍ１のレスポンス優先順位は２へ、メモリ装置Ｍ２のレスポンス優先順位は３へ初期設定される。クロック分周回路Ｄｉｖ１およびＤｉｖ２の分周比は１へ初期設定される。さらに、メモリ装置Ｍ１は、ＲｑＥｎ１、ＲｓＭｕｘ１、ＲｑＣｋ１が開放（ｏｐｅｎ）されていないことによって、直列接続しているメモリ装置の中で最終端のメモリ装置ではないことを認識し、終端デバイスフラグレジスタＥＲへ０を設定する。最後に、メモリ装置Ｍ０は、自身のデバイスコードレジスタＤＣを１６進数で０００１へ初期設定する。
【００６７】
メモリ装置Ｍ１は、自身の初期設定回路ＩＮＩＴが、自身のリクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｑＣＴ、リクエスト制御回路ＲｑＣｋｃ、レスポンスクロック制御回路ＲｓＣｋＣ、クロック分周回路Ｄｉｖ１、Ｄｉｖ２およびメモリ回路Ｍｅｍ１を初期設定する。メモリ装置Ｍ１は、ブートデバイス認識信号Ｂｓｉｇが電源へ接続されているので、自分自身はブートデバイスであると認識し、ブートデバイスフラグレジスタＢＲへ１を設定する。さらに自らのメモリ回路Ｍｅｍ１が保持しているブートデバイスＩＤ値２をＩＤレジスタＩＤＲへ設定し、ＩＤ有効ビットＩＤＶをＨｉｇｈへ設定する。次にメモリ装置Ｍ１のレスポンスキュー制御回路ＲｑＣＴが持つレスポンス調停回路のレスポンス優先順位に関して、メモリ装置Ｍ１のレスポンス優先順位は１へ、メモリ装置Ｍ２のレスポンス優先順位は２へ初期設定される。クロック分周回路Ｄｉｖ１およびＤｉｖ２の分周比は１に設定される。
【００６８】
さらに、メモリ装置Ｍ２は、ＲｑＥｎ２、ＲｓＭｕｘ２、ＲｑＣｋ２が開放（ｏｐｅｎ）されていないことによって、直列接続しているメモリ装置の中で最終端のメモリ装置ではないことを認識し、終端デバイスフラグレジスタＥＲへ０を設定する。最後に、メモリ装置Ｍ１は、自身のデバイスコードレジスタＤＣを１６進数で００１０へ初期設定する。
【００６９】
メモリ装置Ｍ２は、自身の初期設定回路ＩＮＩＴが、自身のリクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｑＣＴ、リクエスト制御回路ＲｑＣｋｃ、レスポンスクロック制御回路ＲｓＣｋＣ、クロック分周回路Ｄｉｖ１、Ｄｉｖ２およびメモリ回路Ｍｅｍ２を初期設定する。メモリ装置Ｍ２は、ブートデバイス認識信号Ｂｓｉｇが電源に接続されているので、自分自身はブートデバイスではないことを認識し、ブートデバイスフラグレジスタＢＲへ０を設定する。次にＩＤレジスタＩＤＲが持つＩＤ値は０へ、ＩＤ有効ビットＩＤＶはＬｏｗへ初期設定される。メモリ装置Ｍ２のレスポンスキュー制御回路ＲｑＣＴが持つレスポンス調停回路のレスポンス優先順位に関してメモリ装置Ｍ２のレスポンス優先順位は１へ初期設定される。クロック分周回路Ｄｉｖ１およびＤｉｖ２の分周比は１に設定される。さらに、メモリ装置Ｍ２は、ＲｑＥｎ３、ＲｓＭｕｘ３、ＲｑＣｋ３を開放（ｏｐｅｎ）していることによって、直列接続しているメモリ装置の最も終端のメモリ装置であることを認識し、終端デバイスフラグレジスタＥＲへ１を設定する。最後に、メモリ装置Ｍ２は、自身のデバイスコードレジスタＭ２ＣＲＥＧを１６進数で０１００へ初期設定する。
【００７０】
Ｔ２のリセット期間（Ｒｅｓｅｔ）が終了した後のＴ３の期間（ＣｌｋＳｔａｂｌｅ）では、情報処理装置ＣＰＵ＿ＣＨＩＰ、メモリ装置Ｍ０，Ｍ１およびＭ２の信号の接続確認を行う。まず、情報処理装置ＣＰＵ＿ＣＨＩＰからリクエストクロックＲｑＣｋ０がメモリ装置Ｍ０へ入力され、メモリ装置Ｍ０のクロックドライバＤｒｖ１を通じてクロック分周回路Ｄｉｖ１およびクロック信号ｃｋ１としてクロック分周回路Ｄｉｖ２へ出力される。クロック分周回路Ｄｉｖ１へ入力したクロックはクロック信号ｃｋ２から出力され、リクエストクロックＲｑＣｋ１を通じてメモリ装置Ｍ１へ出力する。また、メモリ装置Ｍ０のクロック分周回路Ｄｉｖ２へ入力したクロックはクロック信号ｃｋ３から出力され、また、レスポンスクロックＲｓＣｋ０を通じて情報処理装置ＣＰＵ＿ＣＨＩＰへ出力する。
【００７１】
メモリ装置Ｍ１は、メモリ装置Ｍ０からリクエストクロックＲｑＣｋ１が入力され、メモリ装置Ｍ１のクロックドライバＤｒｖ１を通じてクロック分周回路Ｄｉｖ１およびクロック信号ｃｋ１としてクロック分周回路Ｄｉｖ２へ出力される。クロック分周回路Ｄｉｖ１へ入力したクロックはクロック信号ｃｋ２から出力され、リクエストクロックＲｑＣｋ２を通じてメモリ装置Ｍ２へ出力する。また、メモリ装置Ｍ１のクロック分周回路Ｄｉｖ２へ入力したクロックはクロック信号ｃｋ３から出力され、また、レスポンスクロックＲｓＣｋ１を通じてメモリ装置Ｍ０へ出力する。レスポンスクロックＲｓＣｋ１を通じてメモリ装置Ｍ０のクロックドライバＤｒｖ２へ入力されたクロックはクロック信号ｃｋ４へ出力される。
【００７２】
メモリ装置Ｍ２は、メモリ装置Ｍ１からリクエストクロックＲｑＣｋ２が入力され、メモリ装置Ｍ２のクロックドライバＤｒｖ１を通じてクロック分周回路Ｄｉｖ１およびクロック信号ｃｋ１としてクロック分周回路Ｄｉｖ２へ出力される。クロック分周回路Ｄｉｖ１へ入力したクロックはクロック信号ｃｋ２から出力され、リクエストクロックＲｑＣｋ３を通じてメモリ装置Ｍ２へ出力する。また、メモリ装置Ｍ２のクロック分周回路Ｄｉｖ２へ入力したクロックはクロック信号ｃｋ３から出力され、また、レスポンスクロックＲｓＣｋ２を通じてメモリ装置Ｍ１へ出力する。レスポンスクロックＲｓＣｋ２を通じてメモリ装置Ｍ１のクロックドライバＤｒｖ２へ入力されたクロックはクロック信号ｃｋ４へ出力される。
【００７３】
Ｔ３の期間が終了した後のＴ４の期間（ＢｏｏｔＲｄ）では情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ１へ格納されているブートプログラムを読み出す。ブートプログラムには、各メモリ装置のデバイスコードと、情報処理装置ＣＰＵ＿ＣＨＩＰを立ち上げるためのプログラムＢＴＰ０と、各メモリ装置へ識別番号ＩＤを割り当てるためのプログラムと、コンフィグレーション回路内の様々なレジスタへ値を設定するためのプログラムと、これらレジスタへ設定する値とが含まれる。
【００７４】
以下にブートプログラムを読み出す動作の一例を示す。先ず、情報処理装置ＣＰＵ＿ＣＨＩＰはブートプログラムを保持しているメモリ装置の識別番号ＩＤ値を読み出し、確認を行う。情報処理装置ＣＰＵ＿ＣＨＩＰ内の情報処理回路ＣＰＵ０は、ブートプログラムを保持しているメモリ装置の識別番号ＩＤ値を確認するため、識別番号ＩＤ値０、リクエスト番号ＲｅｑＮ値０、マスター番号ＭＩＤ値０、リクエスト長、ブートデバイス識別番号読み出し命令ＢＲＤを多重化したリクエストＲｑＢＲＤＩＤ０ＳＥＱ０をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する。
【００７５】
メモリ装置Ｍ０は、情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｑＢＲＤＩＤ０ＳＥＱ０を、自身のリクエストキュー制御回路ＲｑＣＴへ格納する。リクエストＲｑＢＲＤＩＤ０ＳＥＱ０に含まれているブートデバイス識別番号読み出し命令ＢＲＤによってメモリ装置Ｍ０は、自身のブートデバイスフラグレジスタＢＲの値をチェックする。ブートデバイスフラグレジスタＢＲの値が０であるため、メモリ装置Ｍ０はブートデバイスではない。そこで、メモリ装置Ｍ０はリクエストＲｑＢＲＤＩＤ０ＳＥＱ０をリクエスト信号ＲｑＭｕｘ１を通じてメモリ装置Ｍ１へ転送する。
【００７６】
メモリ装置Ｍ１は、メモリ装置Ｍ０からのリクエストＲｑＢＲＤＩＤ０ＳＥＱ０を、自身のリクエストキュー制御回路ＲｑＣＴへ格納する。リクエストＲｑＢＲＤＩＤ０ＳＥＱ０に含まれているブートデバイス識別番号読み出し命令ＢＲＤによってメモリ装置Ｍ１は、自身のブートデバイスフラグレジスタＢＲの値をチェックする。ブートデバイスフラグレジスタＢＲの値が１であるため、メモリ装置Ｍ１はブートデバイスである。そこで、メモリ装置Ｍ１は自身のＩＤレジスタＩＤＲ値２を読み出し、レスポンス開始フラグと、識別番号ＩＤ値２（ＩＤレジスタ値２と等しい値）と、ブートデバイス識別番号読み出し命令ＢＲＤ、マスター番号ＭＩＤ値０と、リクエスト長、レスポンス番号ＲｅｓＮ値０（リクエスト番号ＲｅｑＮ値０と等しい値）から構成されるレスポンスＲｓＢＲＤＩＤ２ＳＥＱ０をレスポンスキュー制御回路ＲｓＣＴへ送信する。
【００７７】
次に、メモリ装置Ｍ１のレスポンスキュー制御回路ＲｓＣＴは、レスポンス信号ＲｓＭｕｘ１を通じて、レスポンスＲｓＢＲＤＩＤ２ＳＥＱ０をメモリ装置Ｍ０へ出力する。メモリ装置Ｍ０は、レスポンスＲｓＢＲＤＩＤ２ＳＥＱ０を受け取り情報処理装置ＣＰＵ＿ＣＨＩＰへ出力する。情報処理装置ＣＰＵ＿ＣＨＩＰはレスポンスＲｓＢＲＤＩＤ２ＳＥＱ０を受け取り、このレスポンスＲｓＢＲＤＩＤ２ＳＥＱ０へ含まれる識別番号ＩＤ値２と、ブートデバイス識別番号読み出し命令ＢＲＤによって、ブートプログラムを保持しているメモリ装置の識別番号ＩＤ値が２であることを確認する。
【００７８】
つぎに、情報処理装置ＣＰＵ＿ＣＨＩＰ内の情報処理回路ＣＰＵ０は、識別番号ＩＤ値２のメモリ装置からブートプログラムを読み出す。先ず、リクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグ、識別番号ＩＤ値２、リクエスト番号ＲｅｑＮ値１、マスター番号ＭＩＤ値０、リクエスト長、バンクアクティブ命令ＢＡ、バンクアドレスＢＫ０、ページアドレスＰａｇｅ０を多重化したリクエストＲｑＡＣＩＤ２ＳＥＱ１をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する。
【００７９】
続いて、リクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグ、ＩＤ値２、リクエスト番号ＲｅｑＮ値２、マスター番号ＭＩＤ値０、リクエスト長、３２バイト読み出し命令ＲＤ３２、バンクアドレスＢＫ０、カラムアドレスＣｏｌを多重化したリクエストＲｑＲＤ３２ＩＤ２ＳＥＱ２をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する。
【００８０】
メモリ装置Ｍ０は、情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｑＡＣＩＤ２ＳＥＱ１とＲｑＲＤ３２ＩＤ２ＳＥＱ２を順に、自身のリクエストキュー制御回路ＲｑＣＴへ格納する。メモリ装置Ｍ０は、自身のＩＤ有効ビットがＬｏｗであるため、メモリ装置Ｍ０はリクエストＲｑＡＣＩＤ２ＳＥＱ１およびＲｑＲＤ３２ＩＤ２ＳＥＱ２を自身へのリクエストではないと判断し、リクエスト信号ＲｑＭｕｘ１を通じて、順にメモリ装置Ｍ１へ転送する。
【００８１】
メモリ装置Ｍ１は、メモリ装置Ｍ０からのリクエストＲｑＡＣＩＤ２ＳＥＱ１およびＲｑＲＤ３２ＩＤ２ＳＥＱ２を自身のリクエストキュー制御回路ＲｑＣＴへ格納する。メモリ装置Ｍ１のリクエストキュー制御回路ＲｑＣＴはリクエストＲｑＡＣＩＤ２ＳＥＱ１に含まれるＩＤ値２と自身のＩＤレジスタの値２を比較する。双方は一致しているため、リクエストキュー制御回路ＲｑＣＴはリクエストＲｅｑＢＡ１をメモリ回路Ｍｅｍ１へ送信する。メモリ回路Ｍｅｍ１は、リクエストＲｑＡＣＩＤ２ＳＥＱ１にバンクアクティブ命令ＢＡ、バンクアドレスＢＫ０、ページアドレスＰａｇｅ０によって、指定された１ページ分（特に限定しないが１ｋバイト分）のブートプログラムがデータバッファＤａｔａＬａｔへ転送される。
【００８２】
メモリ装置Ｍ１のリクエストキュー制御回路ＲｑＣＴは、リクエストＲｑＲＤ３２ＩＤ２ＳＥＱ２に含まれるＩＤ値２と自身のＩＤレジスタの値２を比較する。双方は一致しているため、リクエストキュー制御回路ＲｑＣＴは、リクエストＲｑＲＤ３２ＩＤ２ＳＥＱ２をメモリ回路Ｍｅｍ１へ送信する。メモリ装置Ｍ１のメモリ回路Ｍｅｍ１からリクエストＲｑＲＤ３２ＩＤ２ＳＥＱ２に含まれる読み出し命令ＲＤ３２、バンクアドレスＢＫ０、カラムアドレスＣｏｌによって、データバッファＤａｔａＬａｔ内のブートプログラムが読み出され、この読み出されたブートプログラムと、レスポンス開始フラグ、識別番号ＩＤ値２、読み出し命令ＲＤ３２、マスター番号ＭＩＤ０、リクエスト長およびレスポンス番号ＲｅｓＮ値２から構成されるレスポンスＲｓＲＤＩＤ２ＳＥＱ２としてレスポンスキュー制御回路ＲｓＣＴへ転送される。メモリ装置Ｍ１のレスポンスキュー制御回路ＲｓＣＴは、レスポンス信号ＲｓＭｕｘ０を通じて、レスポンスＲｓＲＤ３２ＩＤ２ＳＥＱ２をメモリ装置Ｍ０へ出力する。メモリ装置Ｍ０は、レスポンスＲｓＲＤ３２ＩＤ２ＳＥＱ２を受け取り情報処理装置ＣＰＵ＿ＣＨＩＰへ出力する。
【００８３】
情報処理装置ＣＰＵ＿ＣＨＩＰは、レスポンスＲｓＲＤ３２ＩＤ２ＳＥＱ２をレスポンスキューＲｓＱへ格納する。レスポンスＲｓＲＤ３２ＩＤ２ＳＥＱ２に含まれるＩＤ値２および読み出し命令ＲＤ３２により、ブートプログラムが、メモリ装置Ｍ１から送信されたことを知ることができる。
【００８４】
Ｔ４の期間が終了した後のＴ５の期間（ＩｎｉｔＩＤ）では、情報処理装置ＣＰＵ＿ＣＨＩＰは、ブートプログラムによって自らを立ち上げ、次に各メモリ装置Ｍ０、Ｍ１、Ｍ２へＩＤ番号の割り当てを行い、次にメモリモジュールＭＥＭに対するメモリマップの割り当てを行う。
【００８５】
先ず、情報処理装置ＣＰＵ＿ＣＨＩＰはブートプログラムに従い、各メモリ装置への識別番号ＩＤ付けを行う動作の一例を説明する。情報処理装置ＣＰＵ＿ＣＨＩＰは、リクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグ、識別番号ＩＤ値１、リクエスト番号ＲｅｑＮ値３、マスター番号ＭＩＤ値０、リクエスト長およびＩＤ設定命令ＳＥＴＩＤを含み、多重化したリクエストＲｑＳＥＴＩＤ１ＳＥＱ３をメモリ装置Ｍ０へ転送する。
【００８６】
メモリ装置Ｍ０では、ＩＤ有効ビットＩＤＶがＬｏｗのため、まだ識別番号ＩＤ付けが行われていない。そこで、メモリ装置Ｍ０は、識別番号ＩＤ値１とＩＤ設定命令ＳＥＴＩＤによってＩＤレジスタＩＤＲへ識別番号ＩＤ値１を設定し、ＩＤ有効ビットＩＤＶをＨｉｇｈにする。ＩＤ有効ビットＩＤＶがＨｉｇｈとなることで、識別番号ＩＤ付けが完了したことを示す。メモリ装置Ｍ０は、自身の識別番号ＩＤ付けが完了すると、終端デバイスフラグレジスタＥＲ値が０であることを確認し、レスポンス信号ＲｓＭｕｘ０を通じて、レスポンス開始フラグ、メモリ装置Ｍ０の識別番号ＩＤ値１、ＩＤ設定命令ＳＥＴＩＤ、情報処理装置ＣＰＵ＿ＣＨＩＰ、マスター番号マスター番号ＭＩＤ値０、リクエスト長、レスポンス番号ＲｅｓＮ値３、デバイスコードレジスタＤＣの値（１６進数で０００１）、ブートデバイスフラグレジスタＢＲ値０、終端デバイスフラグレジスタＥＲ値０およびＩＤ番号付け完了情報を多重化したレスポンスＲｓＳＥＴＩＤ１ＳＥＱ３を情報処理装置ＣＰＵ＿ＣＨＩＰへ出力する。
【００８７】
情報処理装置ＣＰＵ＿ＣＨＩＰは、レスポンスＲｓＳＥＴＩＤ１ＳＥＱ３を受け取り、このレスポンスＲｓＳＥＴＩＤ１ＳＥＱ３に含まれるメモリ装置Ｍ０のＩＤ値１、ＩＤ設定命令ＳＥＴＩＤ、デバイスコードレジスタＤＣの値（１６進数で０００１）およびＩＤ番号付け完了情報によってメモリ装置Ｍ０の識別番号ＩＤ付けが完了したことを知る。また、情報処理装置ＣＰＵ＿ＣＨＩＰは、レスポンスＲｓＳＥＴＩＤ１ＳＥＱ３に含まれるブートデバイスフラグレジスタＢＲ値が０であることによってメモリ装置Ｍ０はブートデバイスではないことを知り、終端デバイスフラグレジスタＥＲ値が０であることによってメモリ装置Ｍ０は最終端のメモリ装置では無いことを知る。さらに、情報処理装置ＣＰＵ＿ＣＨＩＰは、コンフィグレーション回路ＣＯＮＦＩＧのコネクションレジスタＣＮＮＲＥＧへ、メモリ装置Ｍ０の識別番号ＩＤ値１とデバイスコードレジスタＤＣの値（１６進数で０００１）と、ブートデバイス情報ＢＯＯＴＤＥＶ値０および終端デバイスレジスタＥＮＤＦＬＡＧ値０を設定する。
【００８８】
次に、情報処理装置ＣＰＵ＿ＣＨＩＰは、リクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグ、識別番号ＩＤ値２、リクエスト番号ＲｅｑＮ値４、マスター番号ＭＩＤ値０、リクエスト長およびＩＤ設定命令ＳＥＴＩＤを含み、多重化したリクエストＲｑＳＥＴＩＤ２ＳＥＱ４をメモリ装置Ｍ０へ転送する。メモリ装置Ｍ０は、自身のＩＤレジスタＩＤＲへ保持されている識別番号ＩＤ値１とリクエストＲｑＳＥＴＩＤ２ＳＥＱ２に含まれる識別番号ＩＤ番号値２とを比較し、不一致のため、リクエストＲｑＳＥＴＩＤ２ＳＥＱ４をメモリ装置Ｍ１へ転送する。メモリ装置Ｍ１はＩＤ有効ビットＩＤＶがＨｉｇｈのため、自身のＩＤレジスタＩＤＲへ保持されている識別番号ＩＤ値２とリクエストＲｑＳＥＴＩＤ２ＳＥＱ４に含まれる識別番号ＩＤ値２とを比較する。双方は一致しているためメモリ装置Ｍ１は、レスポンス信号ＲｓＭｕｘ１を通じて、レスポンス開始フラグ、メモリ装置Ｍ１の識別番号ＩＤ値２、マスター番号ＭＩＤ値０、リクエスト長、レスポンス番号ＲｅｓＮ値４、デバイスコードレジスタＤＣの値（１６進数で００１０）、ブートデバイスフラグレジスタＢＲ値１、終端デバイスフラグレジスタＥＲ値０およびＩＤ番号付け完了情報を多重化したレスポンスＲｓＳＥＴＩＤ２ＳＥＱ４をメモリ装置Ｍ０へ出力する。メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を通じてレスポンスＲｓＳＥＴＩＤ２ＳＥＱ４を情報処理装置ＣＰＵ＿ＣＨＩＰへ転送する。
【００８９】
情報処理装置ＣＰＵ＿ＣＨＩＰは、レスポンスＲｓＳＥＴＩＤ２ＳＥＱ４を受け取り、このレスポンスＲｓＳＥＴＩＤ２ＳＥＱ４に含まれるメモリ装置Ｍ１の識別番号ＩＤ値２、ＩＤ設定命令ＳＥＴＩＤ、デバイスコードレジスタＤＣの値（１６進数で００１０）およびＩＤ番号付け完了情報によってメモリ装置Ｍ１の識別番号ＩＤ付けが完了したことを知る。また、情報処理装置ＣＰＵ＿ＣＨＩＰは、レスポンスＲｓＳＥＴＩＤ１ＳＥＱ４に含まれるブートデバイスフラグレジスタＢＲ値が１であることによってメモリ装置Ｍ１はブートデバイスであることを知り、終端デバイスフラグレジスタＥＲ値が０であることによってメモリ装置Ｍ１は最終端のメモリ装置では無いことを知る。さらに、情報処理装置ＣＰＵ＿ＣＨＩＰは、コンフィグレーション回路ＣＯＮＦＩＧのコネクションレジスタＣＮＮＲＥＧへ、メモリ装置Ｍ１の識別番号ＩＤ値２とデバイスコードレジスタＭ１ＣＲＥＧの値（１６進数で００１０）と、ブートデバイス情報ＢＯＯＴＤＥＶ値１、終端デバイスレジスタＥＮＤＦＬＡＧ値０を設定する。
【００９０】
次に、情報処理装置ＣＰＵ＿ＣＨＩＰは、リクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグ、識別番号ＩＤ値３、リクエスト番号ＲｅｑＮ値５、マスター番号ＭＩＤ値０、リクエスト長およびＩＤ設定命令ＳＥＴＩＤを含み、多重化したリクエストＲｑＳＥＴＩＤ３ＳＥＱ５をメモリ装置Ｍ０へ転送する。メモリ装置Ｍ０は、自身のＩＤレジスタＩＤＲへ保持されている識別番号ＩＤ番号値１とリクエストＲｑＳＥＴＩＤ３ＳＥＱ５に含まれる識別番号ＩＤ値３とを比較し、不一致のため、リクエストＲｑＳＥＴＩＤ３ＳＥＱ５をメモリ装置Ｍ１へ転送する。メモリ装置Ｍ１は、自身のＩＤレジスタＩＤＲへ保持されている識別番号ＩＤ番号値２とリクエストＲｑＳＥＴＩＤ３ＳＥＱ５に含まれる識別番号ＩＤ値３とを比較し、不一致のため、リクエストＲｑＳＥＴＩＤ３ＳＥＱ５をメモリ装置Ｍ２へ転送する。メモリ装置Ｍ２では、ＩＤ有効ビットＩＤＶがＬｏｗのため、まだ識別番号ＩＤ付けが行われていない。そこで、メモリ装置Ｍ２は、リクエストＲｑＳＥＴＩＤ３ＳＥＱ５に含まれる識別番号ＩＤ値３とＩＤ設定命令ＳＥＴＩＤによってメモリ装置Ｍ２のＩＤレジスタＩＤＲへＩＤ番号３を設定し、ＩＤ有効ビットＩＤＲをＨｉｇｈにする。
【００９１】
メモリ装置Ｍ２は自身の識別番号ＩＤ付けが完了すると、終端デバイスフラグレジスタＥＲ値が１であることを確認し、レスポンス信号ＲｑＭｕｘ２を通じて、レスポンス開始フラグ、メモリ装置Ｍ２の識別番号ＩＤ値３、マスター番号ＭＩＤ値０、リクエスト長、レスポンス番号ＲｅｓＮ値５、デバイスコードレジスタＤＣの値（１６進数で０１００）、ブートデバイスフラグレジスタＢＲ値０、終端デバイスフラグレジスタＥＲ値１および識別番号ＩＤ付け完了情報を多重化したレスポンスＲｓＳＥＴＩＤ３ＳＥＱ５をメモリ装置Ｍ１へ出力する。メモリ装置Ｍ１はレスポンスＲｓＳＥＴＩＤ３ＳＥＱ５を受け取り、レスポンス信号ＲｓＭｕｘ１を通じてレスポンスＲｓＳＥＴＩＤ３ＳＥＱ４をメモリ装置Ｍ０へ出力する。メモリ装置Ｍ０はレスポンスＲｓＳＥＴＩＤ３ＳＥＱ５を受け取り、レスポンス信号ＲｓＭｕｘ０を通じてレスポンスＲｓＳＥＴＩＤ３ＳＥＱ５を情報処理装置ＣＰＵ＿ＣＨＩＰへ転送する。
【００９２】
情報処理装置ＣＰＵ＿ＣＨＩＰは、レスポンスＲｓＳＥＴＩＤ３ＳＥＱ５を受け取り、このレスポンスＲｓＳＥＴＩＤ３ＳＥＱ５に含まれるメモリ装置Ｍ２のＩＤ値３、ＩＤ設定命令ＳＥＴＩＤ、デバイスコードレジスタＤＣの値（１６進数で０１００）、終端デバイスフラグレジスタＥＲ値１およびＩＤ番号付け完了情報を受け取り、メモリ装置Ｍ２の識別番号ＩＤ付けが完了したことを知る。また、情報処理装置ＣＰＵ＿ＣＨＩＰはブートデバイスフラグレジスタＢＲ値が０であることによってメモリ装置Ｍ２はブートデバイスではないことを知り、終端デバイスフラグレジスタＥＲ値１を受け取り最終端のメモリ装置であることを知る。さらに、情報処理装置ＣＰＵ＿ＣＨＩＰは、コンフィグレーション回路ＣＯＮＦＩＧのコネクションレジスタＣＮＮＲＥＧへ、メモリ装置Ｍ２の識別番号ＩＤ値３とデバイスコードレジスタＤＣの値（１６進数で０１００）、ブートデバイス情報ＢＯＯＴＤＥＶ値０、および終端デバイスレジスタＥＮＤＦＬＡＧ値１を設定する。最後に、ブートプログラムに従いメモリモジュールＭＥＭに対するメモリマップの割り当てを行う。
【００９３】
Ｔ５の期間が終了した後のＴ６の期間（ＳｅｔＣｆｇ）では、情報処理装置ＣＰＵ＿ＣＨＩＰはブートプログラムに従い、メモリ制御回路ＤＣＭＣのコンフィグレーション回路ＣＯＮＦＩＧ内のさまざまなレジスタへ値を設定する。キューレジスタＱＲＥＧには、メモリ制御回路ＤＣＭＣのリクエストキューＲＥＱＱ１、ＲＥＱＱ２およびレスポンスキューＲＥＳＱ１の数が設定される。さらにキューレジスタＱＲＥＧには、各メモリ装置のリクエストキュー回路ＲｑＱＩのキュー数、リクエストキュー回路ＲｑＱＸＩのキュー数、リクエストキュー回路ＲｑＱＸＯのキュー数、レスポンスキュー回路ＲｓＱｏのキュー数およびレスポンスキュー回路ＲｓＱｐのキュー数などが設定される。レイテンシドメインレジスタＬＴＤＲＥＧには、情報処理装置ＣＰＵ＿ＣＨＩＰがレイテンシを管理するメモリ装置のＩＤ値情報などが設定される。メモリ装置Ｍ０に関するタイミングレジスタＭ０ＴＲＥＧには、メモリ装置Ｍ０を動作させるためのリクエストとリクエスト間のタイミング情報などが設定される。メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧには、メモリ装置Ｍ１を動作させるためのリクエストとリクエスト間のタイミング情報などが設定される。メモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧにはメモリ装置Ｍ２を動作させるためのリクエストとリクエスト間のタイミング情報などが設定される。動作モードレジスタＯＭＤＲＥＧには、メモリ装置Ｍ０、Ｍ１、Ｍ２をバンクオープンモードあるいはバンクローズモードのどちらで動作させるかを設定する。
【００９４】
Ｔ６の期間が終了した後のＴ７の期間（ＬａｔＣｆｍ）では、情報処理装置ＣＰＵ＿ＣＨＩＰはブートプログラムに従い、メモリ装置Ｍ０、Ｍ１、Ｍ２の読み出しレイテンシを確認する。以下に動作の一例を示す。先ず、メモリ装置Ｍ０のレイテンシの確認動作を説明する。情報処理装置ＣＰＵ＿ＣＨＩＰは、リクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグ、ＩＤ値１、リクエスト番号値０、マスター番号０、リクエスト長およびレイテンシ確認命令を含み、多重化したリクエストＲｅｑＬａｔｍ１をメモリ装置Ｍ０へ転送する。このリクエストＲｑＬＡＴＩＤ１ＳＥＱ５の発行と同時に、レイテンシ調整回路ＬＣＨＣＫは、レイテンシの測定を開始する。
【００９５】
メモリ装置Ｍ０は、自身のＩＤ番号１とリクエストＲｅｑＬａｔｍ１に含まれるＩＤ番号１とを比較する。双方は一致しているためメモリ装置Ｍ０は、レスポンス信号ＲｓＭｕｘ１を通じて、レスポンス開始フラグ、メモリ装置Ｍ０のＩＤ値１、レスポンス番号０、マスター番号０、レスポンス長、レイテンシ計測コードＬＣ値（１６進数で１００１）多重化したレスポンスＲｓＬＡＴＩＤ１ＳＥＱ５を出力する。
【００９６】
情報処理装置ＣＰＵ＿ＣＨＩＰのレスポンス入力回路ＲＳＩＮは、レスポンスＲｓＬＡＴＩＤ１ＳＥＱ５を受け取り、このレスポンスＲｅｓ  Ｌａｔｍ１に含まれるメモリ装置Ｍ０のＩＤ値１、レスポンス番号０、マスター番号０、およびレイテンシ計測コード（１６進数で１００１）をレイテンシ調整回路ＬＣＨＣＫへ送信する。この後、レイテンシ調整回路ＬＣＨＣＫは、レイテンシの測定を完了し、実測レイテンシ値Ｌａｔｍ１を確定する。次に、レイテンシ調整回路ＬＣＨＣＫは、このメモリ装置Ｍ０の実測レイテンシ値Ｌａｔｍ１とレイテンシレジスタＬＴＲＥＧへ設定されているメモリ装置Ｍ０のレイテンシ値Ｌａｔｅｘｐ１の差分ＬａｔＤｉｆｆを求める。この差分ＬａｔＤｉｆｆが０であればレイテンシ値Ｌａｔｅｘｐ１を更新せず、この差分ＬａｔＤｉｆｆが０でなければレイテンシレジスタＬＴＲＥＧへ設定されているメモリ装置Ｍ０のレイテンシ値を実測レイテンシ値Ｌａｔｍ１へ更新する。メモリ装置Ｍ１およびＭ２のレイテンシの確認動作は、上記で説明したメモリ装置Ｍ０のレイテンシの確認動作と同様に行われる。
【００９７】
Ｔ７の期間が終了した後のＴ８の期間（Ｉｄｌｅ）以降は、メモリモジュールＭＥＭはアイドル状態となり、情報処理装置ＣＰＵ＿ＣＨＰからのリクエストを待つ状態となる。このように、電源投入直後に、直列接続の確認動作を行うことで、確実にメモリ同士が接続されていることが確認できる。さらに、ブートデバイスを明示し、自動的に各メモリへの識別番号ＩＤ付けが行われることで、容易に、必要な分だけメモリ装置を接続し、メモリ容量を拡張することができる。さらに、各メモリ装置のレイテンシを実測し、この実測レイテンシ値をレイテンシレジスタＬＴＲＥＧへ更新することで、情報処理装置ＣＰＵ＿ＣＨＰは正確なレイテンシを用いた制御を行い、低レイテンシと高速データ転送を実現することができる。
【００９８】
＜レジスタ設定：コネクションレジスタＣＮＮＲＥＧ＞
図１０は、電源投入時の初期シーケンスにて、設定されたコネクションレジスタＣＮＮＲＥＧへの設定値の一例を示す。特に限定しないが、コネクションレジスタＣＮＮＲＥＧには、接続順番号ＣＮＣＴ  ＮＯと、有効信号ＶＡＬＩＤと、情報処理装置ＣＰＵ＿ＣＨＩＰや各メモリ装置の識別番号ＩＤと、デバイスコードＤＥＶ  ＣＯＤＥと、ブートデバイス情報ＢＯＯＴＤＥＶと、最終端メモリデバイス情報ＥＮＤＦＬＡＧが設定される。有効信号ＶＡＬＩＤが１の時にはデバイスコードＤＥＶ  ＣＯＤＥと、ブートデバイス情報ＢＯＯＴＤＥＶと、最終端メモリデバイス情報ＥＮＤＦＬＡＧが有効であり、０の場合は無効であることを示す。接続順番号ＣＮＣＴ  ＮＯが０から８まであり、番号が大きいほど情報処理装置ＣＰＵ＿ＣＨＩＰに対する接続位置が遠いことを意味する。デバイスコードＤＥＶ  ＣＯＤＥはデバイス固有の番号である。また、ブートデバイス情報ＢＯＯＴＤＥＶが１に対応する識別番号ＩＤ値がブートプログラムを格納しているメモリ装置の識別番号ＩＤ値である。また、最終端メモリデバイス情報ＥＮＤＦＬＡＧが１に対応するＩＤ値が最終端のメモリ装置の識別番号ＩＤ値である。接続番号ＣＮＣＴ  ＮＯが０には、識別番号ＩＤ値０および情報処理装置ＣＰＵ＿ＣＨＩＰのデバイスコードＤＥＶ  ＣＯＤＥ値０００１＿００００（１６進数）、ブートデバイス情報ＢＯＯＴＤＥＶ値０および最終端メモリデバイス情報ＥＮＤＦＬＡＧ値０が登録されている。また、接続番号ＣＮＣＴ  ＮＯが１には、識別番号ＩＤ値１およびメモリ装置Ｍ０のデバイスコードＤＥＶ  ＣＯＤＥ値００００＿０００１（１６進数）、ブートデバイス情報ＢＯＯＴＤＥＶ値０および最終端メモリデバイス情報ＥＮＤＦＬＡＧ値０が登録されている。また、接続番号ＣＮＣＴ  ＮＯが２には、識別番号ＩＤ値２およびメモリ装置Ｍ１のデバイスコードＤＥＶ  ＣＯＤＥ値００００＿００１０（１６進数）、ブートデバイス情報ＢＯＯＴＤＥＶ値１および最終端メモリデバイス情報ＥＮＤＦＬＡＧ値０が登録されている。また、接続番号ＣＮＣＴ  ＮＯが３には、識別番号ＩＤ値３およびメモリ装置Ｍ２のデバイスコードＤＥＶ  ＣＯＤＥ値００００＿０１００（１６進数）、ブートデバイス情報ＢＯＯＴＤＥＶ値０および最終端メモリデバイス情報ＥＮＤＦＬＡＧ値１が登録されている。これは、接続の形態として、情報処理装置ＣＰＵ＿ＣＨＩＰの次にメモリ装置Ｍ０が接続され、メモリ装置Ｍ０の次にメモリ装置Ｍ１が接続され、メモリ装置Ｍ１の次にメモリ装置Ｍ２が、順に直列に接続されていることを示す。また、情報処理装置ＣＰＵ＿ＣＨＩＰの識別番号ＩＤ値が０、メモリ装置Ｍ０の識別番号ＩＤ値が１、メモリ装置Ｍ１の識別番号ＩＤ値が２、メモリ装置Ｍ２の識別番号ＩＤ値が３へ設定されていることを示す。このように、コネクションレジスタＣＮＮＲＥＧを利用し、情報処理装置ＣＰＵ＿ＣＨＩＰが、どのようなメモリ装置が、どの識別番号に対応し、どの順番で接続されているかを管理できることにより、本発明の情報処理システムの信頼性を保てるとともに、本発明の情報処理システムにて、エラーが発生した場合に、速やかにエラー復旧の処理を行うことができる。また、電源投入時の初期シーケンス���みならず、脱着可能な新たなメモリカードや、ストレージデバイスなどが接続された際にも、情報処理装置ＣＰＵ＿ＣＨＩＰは、新たなＩＤを設定し、コネクションレジスタＣＮＮＲＥＧを更新することができる。
【００９９】
＜レジスタ設定：キューレジスタＱＲＥＧ＞
図１１および１２には、電源投入時の初期シーケンスにて、設定されたキューレジスタＱＲＥＧへの設定値の一例を示す。特に限定しないが、キューレジスタＱＲＥＧには、レスポンスキューレジスタＲｅｓＱＲＥＧと、リクエストキューレジスタＲｅｑＱＲＥＧがあり、それぞれのレジスタには情報処理装置ＣＰＵ＿ＣＨＩＰや各メモリ装置の識別番号ＩＤに対応した情報処理装置ＣＰＵ＿ＣＨＩＰや各メモリ装置が装備しているリクエストキューおよびレスポンスキューの数が保持される。図１１にはレスポンスキューレジスタＲｅｓＱＲＥＧへの設定値の一例を示す。図１２にはリクエストキューレジスタＲｅｑＱＲＥＧへの設定値の一例を示す。
【０１００】
メモリ装置Ｍ０，Ｍ１およびＭ２のリクエストキューには、前段の情報処理装置ＣＰＵ＿ＣＨＩＰあるいはメモリ装置からのリクエストを受け取るためのリクエストキューＲｑＱＩと、自身の内部動作を行うために必要な内部リクエストキューＲｑＱＸＩと、自身が受け取ったリクエストを次段のメモリ装置へ送信するために必要な外部リクエストキューＲｑＱＸＯとがある。また、メモリ装置Ｍ０，Ｍ１およびＭ２のレスポンスキューには、自身の内部動作に対するレスポンスを受け取るために必要な内部レスポンスキューＲｓＱｏと、メモリ装置からのレスポンスを受け取るために必要な外部レスポンスキューＲｓＱｐとがある。
【０１０１】
情報処理装置ＣＰＵ＿ＣＨＩＰは、メモリ装置Ｍ０，Ｍ１およびＭ２へリクエストを送信するためのリクエストキューＲＥＱＱ２と、メモリ装置Ｍ０，Ｍ１およびＭ２からのレスポンスを受け取るためのレスポンスキューＲＥＳＱ１とがある。まず、レスポンスキューレジスタＲｅｓＱＲＥＧから説明する。特に限定しないが、レスポンスキューレジスタＲｅｓＱＲＥＧには識別番号ＩＤ値が０から８まである。有効信号ＶＡＬＩＤが１の時には識別番号ＩＤ値に対応するレスポンスキューＲｓＱｏのキュー数とレスポンスキューＲｓＱｐのキュー数が有効であり、０の場合は無効であることを示す。識別番号ＩＤ値０は情報処理装置ＣＰＵ＿ＣＨＩＰの識別番号であり、識別番号ＩＤ値１はメモリ装置Ｍ０の識別番号であり、識別番号ＩＤ値２はメモリ装置Ｍ１の識別番号であり、識別番号ＩＤ値３はメモリ装置Ｍ２の識別番号である。本実施の形態では、情報処理装置ＣＰＵ＿ＣＨＩＰのレスポンスキューＲＥＳＱ１は２４へ設定されている。メモリ装置Ｍ０のレスポンスキューＲｓＱｏ数は８、レスポンスキューＲｓＱｐ数は１６へ設定されている。メモリ装置Ｍ１のレスポンスキューＲｓＱｏ数は８、レスポンスキューＲｓＱｐ数は８へ設定されている。メモリ装置Ｍ２のレスポンスキューＲｓＱｏ数は８、レスポンスキューＲｓＱｐ数は８へ設定されている。
【０１０２】
次に、リクエストキューレジスタＲｅｑＱＲＥＧを説明する。本実施の形態では、リクエストキューレジスタＲｅｑＱＲＥＧには識別番号ＩＤ値が０から８まである。有効信号ＶＡＬＩＤが１の時には識別番号ＩＤ値に対応するリクエストキューＲｑＱＩと、リクエストキューＲｑＱＸＩとリクエストキューＲｑＱＸＯの、それぞれのリクエストキューのキュー数が有効であり、０の場合は無効であることを示す。識別番号ＩＤ値０は、情報処理装置ＣＰＵ＿ＣＨＩＰの識別番号であり、識別番号ＩＤ値１はメモリ装置Ｍ０の識別番号であり、識別番号ＩＤ値２はメモリ装置Ｍ１の識別番号であり、識別番号ＩＤ値３はメモリ装置Ｍ２識別番号である。情報処理装置ＣＰＵ＿ＣＨＩＰのリクエストキューＲＥＱＱ２のキュー数は１２へ設定されている。メモリ装置Ｍ０のリクエストキューＲｑＱＩのキュー数は１２へ、リクエストキューＲｑＱＸＩのキュー数は４へ、リクエストキューＲｑＱＸＯのキュー数は８へ設定されている。メモリ装置Ｍ１のリクエストキューＲｑＱＩのキュー数は８へ、リクエストキューＲｑＱＸＩのキュー数は４へ、リクエストキューＲｑＱＸＯのキュー数は４へ設定されている。メモリ装置Ｍ２のリクエストキューＲｑＱＩのキュー数は４へ、リクエストキューＲｑＱＸＩのキュー数は４へ、リクエストキューＲｑＱＸＯのキュー数は４へ設定されている。また情報処理装置ＣＰＵ＿ＣＨＩＰは、メモリモジュールＭＥＭの構成によって、レスポンスキューレジスタＲｅｓＱＲＥＧおよびリクエストキューレジスタＲｅｑＱＲＥＧを最適な値へ更新することができる。
【０１０３】
情報処理装置ＣＰＵ＿ＣＨＩＰはレスポンスキューレジスタＲｅｓＱＲＥＧおよびリクエストキューレジスタＲｅｑＱＲＥＧを更新することができる。情報処理装置ＣＰＵ＿ＣＨＩＰはレスポンスキューレジスタＲｅｓＱＲＥＧおよびリクエストキューレジスタＲｅｑＱＲＥＧを利用し、情報処理装置ＣＰＵ＿ＣＨＩＰ自身が用意しているリクエストキューＲＥＱＱ２数およびレスポンスキューＲＥＳＱ１数を管理し、また各メモリ装置が装備しているリクエストキューＲｑＱＩのキュー数、リクエストキューＲｑＱＸＩのキュー数、リクエストキューＲｑＱＸＯのキュー数、レスポンスキューＲｓＱｏ数、レスポンスキューＲｓＱｐ数を管理し、これらのキューが最適に利用されるように、各メモリ装置を制御することによって、低レイテンシかつ高速なデータ転送を実現できる。なお、これらのキューの利用方法及び各メモリ装置の制御については、後述する。また、電源投入時の初期シーケンスのみならず、新たなメモリデバイス、メモリカードやストレージデバイスなどが接続された際にも、情報処理装置ＣＰＵ＿ＣＨＩＰは、新たな認識番号ＩＤに対する上記のリクエストキューやレスポンスキューの数を設定し、レスポンスキューレジスタＲｅｓＱＲＥＧおよびリクエストキューレジスタＲｅｑＱＲＥＧを更新することができる。さらに、上記リクエストキューやレスポンスキューの数は、本発明の情報処理システムの性能が確保できるように決めると良い。
【０１０４】
＜レジスタ設定：レイテンシドメインレジスタＬＴＤＲＥＧ＞
図１３は、電源投入時の初期シーケンスにて、設定されたレイテンシドメインレジスタＬＴＤＲＥＧへの設定値の一例を示す。特に限定しないが、レイテンシドメインレジスタＬＴＤＲＥＧには、有効信号ＶＡＬＩＤと、情報処理装置ＣＰＵ＿ＣＨＩＰや各メモリ装置の識別番号ＩＤに対応したマスターフラグＭＦＬＡＧと、レイテンシドメイン情報ＬＡＴ  ＤＭＮが設定される。有効信号ＶＡＬＩＤが１の時には識別番号ＩＤ値に対応するマスターフラグＭＦＬＡＧと、レイテンシドメイン情報ＬＡＴ  ＤＭＮが有効であり、０の場合は無効であることを示す。マスターフラグＭＦＬＡＧが１の場合は、対応する情報処理装置やメモリ装置などの装置がマスター装置であることを示し、マスターフラグＭＦＬＡＧが０の場合は、識別番号ＩＤに対応する装置はスレーブ装置であることを示す。レイテンシドメイン情報ＬＡＴ  ＤＭＮには、マスター装置の識別番号ＩＤ値が設定され、どのマスター装置がどのスレーブ装置を制御し、レイテンシを管理しているかを示す。本実施の形態では、レイテンシドメインレジスタＬＴＤＲＥＧには識別番号ＩＤ値が０から８まである。識別番号ＩＤ値０は、情報処理装置ＣＰＵ＿ＣＨＩＰの識別番号であり、マスターフラグＭＦＬＡＧ値が１、レイテンシドメイン情報ＬＡＴ  ＤＭＮ値が０へ設定されている。識別番号ＩＤ値１は、メモリ装置Ｍ０の識別番号であり、マスターフラグＭＦＬＡＧ値０、レイテンシドメイン情報ＬＡＴ  ＤＭＮ値が０へ設定されている。識別番号ＩＤ値２は、メモリ装置Ｍ１の識別番号であり、マスターフラグＭＦＬＡＧ値０、レイテンシドメイン情報ＬＡＴ  ＤＭＮ値が０へ設定されている。識別番号ＩＤ値３は、メモリ装置Ｍ２の識別番号であり、マスターフラグＭＦＬＡＧ値０、レイテンシドメイン情報ＬＡＴ  ＤＭＮ値が０へ設定されている。
【０１０５】
レイテンシドメインレジスタＬＴＤＲＥＧによって、情報処理装置ＣＰＵ＿ＣＨＩＰは、マスター装置となり、スレーブ装置であるメモリ装置Ｍ０、Ｍ１およびＭ２を制御し、レイテンシを管理することがわかる。このように、レイテンシドメインレジスタＬＴＤＲＥＧは、マスター装置の指定と、そのマスター装置が制御するスレーブ装置を指定することができるため、情報処理装置ＣＰＵ＿ＣＨＩＰのような複数のマスター装置がメモリ装置Ｍ０、Ｍ１およびＭ２のようなスレーブ装置と直列に接続されている場合であっても、適切にスレーブデバイスを制御し、レイテンシを管理することができる。また、電源投入時の初期シーケンスのみならず、新たなメモリ装置や、メモリカード、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）およびＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などのストレージデバイスなどが接続された際にも、情報処理装置ＣＰＵ＿ＣＨＩＰは、新たなＩＤを設定し、レイテンシドメインレジスタＬＴＤＲＥＧを更新することができる。
【０１０６】
＜レジスタ設定：レイテンシレジスタＬＴＲＥＧ＞
図１４には、電源投入時の初期シーケンスにて、設定されたレイテンシレジスタＬＴＲＥＧへの設定値の一例を示す。レイテンシレジスタＬＴＲＥＧには情報処理装置ＣＰＵ＿ＣＨＩＰや各メモリ装置の識別番号ＩＤに対応した、有効信号Ｖａｌｉｄ、レイテンシＬａｔＱｕｅ、レイテンシＬａｔＢａｎｋ、許容レイテンシＬａｔＲａｎｇｅ、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔが設定される。有効信号Ｖａｌｉｄが１の場合は、識別番号ＩＤに対応したレイテンシＬａｔＱｕｅ、レイテンシＬａｔＢａｎｋ、許容レイテンシＬａｔＲａｎｇｅおよびタイムアウトレイテンシＬａｔＴｉｍｅＯｕｔが有効であり、０の場合は無効であることを示す。レイテンシＬａｔＱｕｅは、情報処理装置ＣＰＵ＿ＣＨＩＰからのリードリクエストがメモリ装置内のレスポンスキューＲｓＱｏから、直接データを読み出し、読み出したデータが情報処理装置ＣＰＵ＿ＣＨＩＰへ到達するまでの読み出しレイテンシを示す。また、レイテンシＬａｔＢａｎｋは、情報処理装置ＣＰＵ＿ＣＨＩＰからのリードリクエストがメモリ装置内のメモリバンクからデータを読み出し、読み出したデータが情報処理装置ＣＰＵ＿ＣＨＩＰへ到達するまでの読み出しレイテンシを示す。また、許容レイテンシＬａｔＲａｎｇｅは、レイテンシＬａｔＱｕｅやレイテンシＬａｔＢａｎｋと、レイテンシ調整回路ＬＣＨＣＫにて実測した読み出しレイテンシＬａｔＭｒｓの差の許容値を示す。情報処理装置ＣＰＵ＿ＣＨＩＰからのリードリクエストに対する読み出しデータが情報処理装置ＣＰＵ＿ＣＨＩＰへ入力されずにタイムアウトレイテンシＬａｔＴｉｍｅＯｕｔを越えた際、レイテンシ調整回路ＬＣＨＣＫはタイムアウトとして判断する。識別番号ＩＤ値０は、情報処理装置ＣＰＵ＿ＣＨＩＰの識別番号である。情報処理装置ＣＰＵ＿ＣＨＩＰはマスター装置として、各メモリ装置を制御するので、レイテンシＬａｔＱｕｅ値は０、レイテンシＬａｔＢａｎｋ値は０、許容レイテンシＬａｔＲａｎｇｅ値は０、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は０へ設定される。識別番号ＩＤ値１は、メモリ装置Ｍ０の識別番号であり、本実施の形態では、レイテンシＬａｔＱｕｅ値は６、レイテンシＬａｔＢａｎｋ値は８、許容レイテンシＬａｔＲａｎｇｅ値は１、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は６０へ設定されている。識別番号ＩＤ値２は、メモリ装置Ｍ１の識別番号であり、本実施の形態では、レイテンシＬａｔＱｕｅ値は１０、レイテンシＬａｔＢａｎｋ値は１２、許容レイテンシＬａｔＲａｎｇｅ値は１、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は１００へ設定されている。識別番号ＩＤ値３は、メモリ装置Ｍ２の識別番号であり、本実施の形態では、レイテンシＬａｔＱｕｅ値は１４、レイテンシＬａｔＢａｎｋ値は１６、許容レイテンシＬａｔＲａｎｇｅ値は１、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は１４０へ設定されている。
【０１０７】
情報処理装置ＣＰＵ＿ＣＨＩＰは、レイテンシ調整回路ＬＣＨＣＫにて各メモリ装置のレイテンシを実測し、この実測レイテンシＬａｔＭｒｓと、レイテンシレジスタＬＴＲＥＧに設定されているレイテンシＬａｔＱｕｅ、レイテンシＬａｔＢａｎｋ、許容レイテンシＬａｔＲａｎｇｅおよびタイムアウトレイテンシＬａｔＴｉｍｅＯｕｔを比較する。さらに、これらの比較結果を利用し、各メモリ装置を制御することで低レイテンシと高速データ転送を実現することができる。また、電源投入時の初期シーケンスのみならず、新たなメモリデバイス、メモリカードやストレージデバイスなどが接続された際にも、情報処理装置ＣＰＵ＿ＣＨＩＰは、新たなＩＤに対する上記のレイテンシＬａｔＱｕｅ、レイテンシＬａｔＢａｎｋ、許容レイテンシＬａｔＲａｎｇｅおよびタイムアウトレイテンシＬａｔＴｉｍｅＯｕｔを設定し、レイテンシレジスタＬＴＲＥＧを更新することができる。また、電源投入時の初期シーケンスのみならず新たなメモリ装置や、メモリカード、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）およびＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などのストレージデバイスなどが接続された際にも、情報処理装置ＣＰＵ＿ＣＨＩＰは、新たなＩＤを設定し、さらに新たにレイテンシを測定し、その測定値をレイテンシレジスタＬＴＲＥＧへ設定し、更新することができる。
【０１０８】
＜レジスタ設定：タイミングレジスタＭ０ＴＲＥＧ＞
図１５には、電源投入時の初期シーケンスにて、設定されたメモリ装置Ｍ０に関するタイミングレジスタＭ０ＴＲＥＧへの設定値の一例を示す。タイミングレジスタＭ０ＴＲＥＧには情報処理装置ＣＰＵ＿ＣＨＩＰがメモリ装置Ｍ０を制御するためのタイミング情報と有効信号Ｖａｌｉｄが設定される。有効信号Ｖａｌｉｄが１の場合は、メモリ装置Ｍ０を制御するためのタイミング情報が有効であり、０の場合は無効であることを示す。タイミングレジスタＭ０ＴＲＥＧには、ｔｍ０ＲＣＤ（バンクアクティブ命令とリードおよびライト命令の最小時間間隔）、ｔｍ０ＲＣ（同一バンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔）、ｔｍ０ＲＲＤ（異なるバンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔、ｔｍ０ＲＡＳ（同一バンクでのバンクアクティブ命令とプリチャージ命令の最小時間間隔）、ｔｍ０ＲＰ（同一バンクでのバンクアクティブ命令とプリチャージ命令の最小時間間隔）、ｔｍ０ＲＦＣ（リフレッシュサイクル最小時間）などが設定される。最小時間間隔は、情報処理装置ＣＰＵ＿ＣＨＩＰの動作クロックのクロックサイクル数で示される。ｔｍ０ＲＣＤには８クロックサイクル、ｔｍ０ＲＣには３０クロックサイクル、ｔｍ０ＲＲＤには４クロックサイクル、ｔｍ０ＲＡＳには２２クロックサイクル、ｔｍ０ＲＰには８クロックサイクル、ｔｍ０ＲＦＣには６０クロックサイクルが設定されている。
【０１０９】
＜レジスタ設定：タイミングレジスタＭ１ＴＲＥＧ＞
図１６には、電源投入時の初期シーケンスにて、設定されたメモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧへの設定値の一例を示す。タイミングレジスタＭ１ＴＲＥＧには情報処理装置ＣＰＵ＿ＣＨＩＰがメモリ装置Ｍ１を制御するためのタイミング情報と有効信号Ｖａｌｉｄが設定される。有効信号Ｖａｌｉｄが１の場合は、メモリ装置Ｍ１を制御するためのタイミング情報が有効であり、０の場合は無効であることを示す。タイミングレジスタＭ１ＴＲＥＧには、ｔｍ１ＲＣＤ（バンクアクティブ命令とリードおよびライト命令の最小時間間隔）、ｔｍ１ＲＣ（同一バンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔）、ｔｍ１ＲＤ（異なるバンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔、ｔｍ１ＲＡＳ（同一バンクでのバンクアクティブ命令とプリチャージ命令の最小時間間隔）、ｔｍ１ＲＰ（同一バンクでのバンクアクティブ命令とプリチャージ命令の最小時間間隔）などが設定される。最小時間間隔は、情報処理装置ＣＰＵ＿ＣＨＩＰの動作クロックのクロックサイクル数で示される。本実施の形態では、ｔｍ１ＲＣＤには１６クロックサイクル、ｔｍ１ＲＣには６０クロックサイクル、ｔｍ１ＲＲＤには８クロックサイクル、ｔｍ１ＲＡＳには４４クロックサイクル、ｔｍ１ＲＰには１６クロックサイクルが設定されている。
【０１１０】
＜レジスタ設定：タイミングレジスタＭ２ＴＲＥＧ＞
図１７には、電源投入時の初期シーケンスにて、設定されたメモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧへの設定値の一例を示す。タイミングレジスタＭ２ＴＲＥＧには情報処理装置ＣＰＵ＿ＣＨＩＰがメモリ装置Ｍ２を制御するためのタイミング情報有効信号Ｖａｌｉｄが設定される。有効信号Ｖａｌｉｄが１の場合は、メモリ装置Ｍ２を制御するためのタイミング情報が有効であり、０の場合は無効であることを示す。タイミングレジスタＭ２ＴＲＥＧには、ｔｍ２ＲＣＤ（バンクアクティブ命令とリードおよびライト命令の最小時間間隔）、ｔｍ２ＲＣ（同一バンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔）、ｔｍ２ＲＤ（異なるバンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔、ｔｍ２ＲＡＳ（同一バンクでのバンクアクティブ命令とプリチャージ命令の最小時間間隔）、ｔｍ２ＲＰ（同一バンクでのバンクアクティブ命令とプリチャージ命令の最小時間間隔）などが設定される。本実施の形態では、最小時間間隔は、情報処理装置ＣＰＵ＿ＣＨＩＰの動作クロックのクロックサイクル数で示される。ｔ２ＲＣＤには１００００クロックサイクル、ｔｍ２ＲＣには１００６２クロックサイクル、ｔｍ２ＲＲＤには１６クロックサイクル、ｔｍ２ＲＡＳには１００４６クロックサイクル、ｔｍ２ＲＰには３２クロックサイクルが設定されている。
【０１１１】
また、タイミング情報ｔｍ２ＲＣＤの有効信号Ｖａｌｉｄが０となった場合は、バンクアクティブ命令が完了し、次のリードおよびライト命令を入力しても良いというコマンド許可を示す信号が、メモリ装置Ｍ２から発行され、メモリ装置Ｍ１およびメモリ装置Ｍ０を通じて、情報処理装置ＣＰＵ＿ＣＨＩＰへ入力される。
【０１１２】
＜レジスタ設定：動作モードレジスタＯＭＤＲＥＧ＞
図１８には、電源投入時の初期シーケンスにて設定されたメモリ制御モードレジスタＯＭＤＲＥＧへの設定値の一例を示す。メモリ制御モードレジスタＯＭＤＲＥＧには情報処理装置ＣＰＵ＿ＣＨＩＰや各メモリ装置の識別番号ＩＤに対応した、有効信号Ｖａｌｉｄおよび制御モード情報ＯＰＭＯＤＥが設定される。有効信号Ｖａｌｉｄが１の場合は、識別番号ＩＤに対応したメモリ制御モード情報ＯＰＭＯＤＥが有効であり、０の場合は無効であることを示す。情報処理装置ＣＰＵ＿ＣＨＩＰが各メモリを制御する制御方法は、チャネル制御モードと、バンクオープンモードと、バンククローズモードの３種類の制御モードを設定できる。
【０１１３】
制御モード情報ＯＰＭＯＤが１の場合はバンククローズモードへ、２の場合はバンクオープンモードへ、３の場合はチャネル制御モードへ設定されていることを示す。バンククローズモードとは各メモリ装置のレスポンスキューＲｓＱｏと、メモリ装置内のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔをキャッシュメモリとして利用しない制御方法である。制御モード情報ＯＰＭＯＤがバンククローズモードに設定されている場合は、メモリ制御回路ＤＣＭＣは、データの読み出しや書き込み後に、メモリ装置のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔを常に非活性化する（ページクローズ）。バンクオープンモードとは、各メモリ装置内のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔをキャッシュメモリとして利用する制御方法である。制御モード情報ＯＰＭＯＤがバンクオープンモードに設定されている場合は、メモリ制御回路ＤＣＭＣはデータの読み出しや書き込み後に、メモリ装置のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔを常に活性化させ、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔ内のデータを保持し続ける（ページオープン）。
【０１１４】
ヒット判定回路ＩＤＨＴは、情報処理回路ＣＰＵ０〜３からのリードおよびライトリクエストに対するデータがメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔに存在しているかを判定する（ページヒット判定）。ページヒットの場合、メモリアレイ回路へアクセスすることなくセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すことができるので、低電力且つ低レイテンシで高速にデータを読み出すことができる。
【０１１５】
チャネル制御モードとは、各メモリ装置のレスポンスキューＲｓＱｏと、メモリ装置内のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔをキャッシュメモリとして利用する制御方法である。制御モード情報ＯＰＭＯＤがチャネル制御モードに設定されている場合は、メモリ制御回路ＤＣＭＣはデータの読み出しや書き込み後に、メモリ装置のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔを常に活性化する（ページオープン）。メモリ制御回路ＤＣＭＣのヒット判定回路ＩＤＨＴは、情報処理回路ＣＰＵ０〜３からのリードおよびライトリクエストに対するデータが、各メモリのレスポンスキューＲｓＱｏに存在しているかを判定し（チャネルヒット判定）、さらにメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔに存在しているかを判定する（ページヒット判定）。チャネルヒットの場合、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔへアクセスすることなくレスポンスキューＲｓＱｏから直接データを読み出すことができるので、さらに、低電力かつ低レイテンシで高速にデータを読み出すことができる。これらの制御モードは、情報処理装置ＣＰＵ＿ＣＨＩＰで動作するアプリケーションに対応し、いずれかの制御モードに設定すると良い。
【０１１６】
本実施の形態では、識別番号ＩＤ値１は、メモリ装置Ｍ０の識別番号であり、制御モード情報ＯＰＭＯＤＥはチャネル制御モードへ設定されている。つまり、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ０をチャネル制御モードにて制御することを示す。識別番号ＩＤ値２は、メモリ装置Ｍ１の識別番号であり、制御モード情報ＯＰＭＯＤＥはチャネル制御モードへ設定されている。つまり、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ１をチャネル制御モードにて制御することを示す。識別番号ＩＤ値３は、メモリ装置Ｍ２の識別番号であり、制御モード情報ＯＰＭＯＤＥはチャネル制御モードへ設定されている。つまり、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ２をチャネル制御モードにて制御することを示す。また、電源投入時の初期シーケンスのみならず、新たに、メモリ装置や、着脱可能なメモリカードやストレージデバイスなどが接続された際にも、情報処理装置ＣＰＵ＿ＣＨＩＰは、新たなＩＤに対する上記の制御モード情報ＯＰＭＯＤＥ設定し、動作モードレジスタＯＭＤＲＥを更新することができる。
【０１１７】
＜ヒット判定動作＞
図１９には情報処理装置ＣＰＵ＿ＣＨＩＰがメモリ装置Ｍ０、Ｍ１、Ｍ２をチャネル制御モードにて制御する場合に、ヒット判定回路ＩＤＨＴが行うヒット判定結果に基づいて、メモリ制御回路ＤＣＭＣが各メモリ装置へ出力するリードリクエストの一例である。ヒット判定回路ＩＤＨＴでの判定結果がチャネルヒット（ＣＨＡＮＮＥＬ  ＨＩＴ）の場合、ページヒット判定の結果によらず、メモリ制御回路ＤＣＭＣは、レスポンスキューＲｓＱｏからデータを読み出すためリード命令ＲＤを含むリクエストを出力する。ヒット判定回路ＩＤＨＴでの判定結果がチャネルミス（ＣＨＡＮＮＥＬ  ＭＩＳＳ）であり、メモリバンクのページがオープン状態（ＯＰＥＮ）にてページヒット（ＰＡＧＥ  ＨＩＴ）した場合、メモリ制御回路ＤＣＭＣは、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すためリード命令ＲＤ２を含むリクエストを出力する。センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔから読み出されたデータはレスポンスキューＲｓＱｏへ転送され、最終的に情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０１１８】
ヒット判定回路ＩＤＨＴでの判定結果がチャネルミス（ＣＨＡＮＮＥＬ  ＭＩＳＳ）であり、メモリバンクのページがオープン状態（ＯＰＥＮ）にてページヒット（ＰＡＧＥ  ＨＩＴ）した場合、メモリ制御回路ＤＣＭＣは、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すためリード命令ＲＤ２を含むリクエストを出力する。センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔから読み出されたデータはレスポンスキューＲｓＱｏへ転送され、最終的に情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０１１９】
ヒット判定回路ＩＤＨＴでの判定結果がチャネルミス（ＣＨＡＮＮＥＬ  ＭＩＳＳ）であり、メモリバンクのページがクローズ状態（ＣＬＯＳＥ）にてページヒット（ＰＡＧＥ  ＨＩＴ）した場合、まずメモリ制御回路ＤＣＭＣは、メモリバンクを活性化させ、ページをオープンするために、バンクアクティブ命令を含むリクエストを出力する。次に、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すためリード命令ＲＤ２を含むリクエストを出力する。センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔから読み出されたデータはレスポンスキューＲｓＱｏへ転送され、最終的に情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０１２０】
ヒット判定回路ＩＤＨＴでの判定結果がチャネルミス（ＣＨＡＮＮＥＬ  ＭＩＳＳ）であり、メモリバンクのページがオープン状態（ＯＰＥＮ）にてページミス（ＰＡＧＥ  ＭＩＳＳ）した場合、まずメモリ制御回路ＤＣＭＣは、メモリバンクを非活性化させ、ページをクローズするためにプリチャージ命令を含むリクエストを出力する。次に、メモリバンクを活性化させ、ページをオープンするために、バンクアクティブ命令を含むリクエストを出力する。次に、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すためリード命令ＲＤ２を含むリクエストを出力する。センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔから読み出されたデータはレスポンスキューＲｓＱｏへ転送され、最終的に情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０１２１】
ヒット判定回路ＩＤＨＴでの判定結果がチャネルミス（ＣＨＡＮＮＥＬ  ＭＩＳＳ）であり、メモリバンクのページがクローズ状態（ＣＬＯＳＥ）にてページミス（ＰＡＧＥ  ＭＩＳＳ）した場合、まずメモリ制御回路ＤＣＭＣは、メモリバンクを活性化させ、ページをオープンするために、バンクアクティブ命令を含むリクエストを出力する。次に、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すためリード命令ＲＤ２を含むリクエストを出力する。センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔから読み出されたデータはレスポンスキューＲｓＱｏへ転送され、最終的に情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０１２２】
上記では、メモリ制御回路ＤＣＭＣが各メモリ装置へ出力するデータを読み出すためのリクエストの一例を示したが、データの書き込みに関しても同様の動作を行うことはいうまでもない。このように、チャネル制御モードにて制御する場合、各メモリ装置内のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔをキャッシュメモリとして利用するだけではなく、各メモリ装置のレスポンスキューＲｓＱｏまでもキャッシュメモリとして利用するので、キャッシュメモリサイズを増やし、キャッシュメモリのヒット率を上げることができ、低レイテンシ且つ高速かつ低電力で各メモリ装置を動作させることが出来る。
【０１２３】
＜メモリマップの説明＞
図２０は、情報処理装置ＣＰＵ＿ＣＨＩＰが管理するメモリモジュールＭＥＭに対するメモリマップの一例を示した図である。本実施の形態では、特に限定されないが、メモリ装置Ｍ０の記憶領域は１Ｇｂｉｔ、メモリ装置Ｍ１の記録領域は１Ｇｉｔ、メモリ装置Ｍ２の記憶領域は１６Ｇｂｉｔ＋５１２Ｍｂｉｔ（５１２Ｍｂｉｔは代替領域）であるメモリモジュールを例に代表的なメモリマップを説明する。
【０１２４】
本実施の形態では、メモリ装置Ｍ０は揮発性メモリでダイナミックランダムアクセスメモリセルを利用したダイナミックランダムアクセスメモリであり、読み出し時間が１５ｎｓ程度である。また、メモリ装置Ｍ１は不揮発性メモリでＮＯＲ型フラッシュメモリセルを利用したＮＯＲ型フラッシュメモリであり、読み出し時間が８０ｎｓ程度である。メモリ装置Ｍ２は、不揮発性メモリでＮＡＮＤ型フラッシュメモリセルを利用したＮＡＮＤ型フラッシュメモリであり、読み出し時間が２５ｕｓｅｃ程度である。
【０１２５】
メモリ制御回路ＤＣＭＣは、コンフィグレーション領域およびＩＯ領域に分かれている。コンフィグレーション領域は、特に限定しないがメモリ制御回路ＤＣＭＣのコンフィグレーション回路ＣＯＮＦＩＧ内のキューレジスタＱＲＥＧ、レイテンシレジスタＬＴＲＥＧ、レイテンシドメインレジスタＬＴＤＲＥＧ、メモリ装置Ｍ０に関するタイミングレジスタＭ０ＴＲＥＧ、メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧ、メモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧ、制御モードレジスタＯＭＤＲＥＧ、ＩＯレジスタなどのレジスタに対応するアドレスから構成される。
【０１２６】
ＩＯ領域は、複数のフラッシュメモリとコントローラから構成されるメモリカードやＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などの着脱可能なメモリモジュールへアクセスするための領域である。メモリ装置Ｍ１は、ブートデバイスＩＤ格納領域ＢｏｔＩＤ−ＡＲＥＡ、初期プログラム領域ＩｎｉｔＰＲ−ＡＲＥＡ、プログラム格納領域ＯＳＡＰ−ＡＲＥＡに分かれている。ブートデバイスＩＤ格納領域ＢｏｔＩＤ−ＡＲＥＡには、ブートデバイスのＩＤ情報が格納される。最終端デバイスＩＤ格納領域ＥｎｄＩＤ−ＡＲＥＡには、直列接続されているメモリモジュールＭＥＭに関する最終端メモリデバイスＩＤ情報が格納される。初期プログラム領域ＩｎｉｔＰＲ−ＡＲＥＡには、ブートプログラムが格納される。プログラム格納領域ＯＳＡＰ−ＡＲＥＡには、オペレーティングシステムやアプリケーションプログラムなどが格納される。メモリ装置Ｍ０は、コピー領域ＣＯＰＹ−ＡＲＥＡ、ワーク領域ＷＯＲＫ−ＡＲＥＡに分かれている。ワーク領域ＷＯＲＫ−ＡＲＥＡは、プログラム実行時のワークメモリとして、コピー領域ＣＯＰＹ−ＡＲＥＡはメモリ装置Ｍ１及びＭ２からのプログラムやデータをコピーするためのメモリとして利用される。メモリ装置Ｍ２は、データ領域ＤＡＴＡ−ＡＲＥＡ、代替領域ＲＥＰ−ＡＲＥＡに分かれている。データ領域ＤＡＴＡ−ＡＲＥＡには、音楽データ、音声データ、動画データ、静止画データなどのデータが格納される。
【０１２７】
また、フラッシュメモリは、書き換えを繰り返すことによって、信頼性が低下し、書き込み時に書いたデータが、読み出し時には異なるデータとなったり、書き換え時にデータが書き込まれなかったりすることが稀にある。代替領域ＲＥＰ−ＡＲＥＡは、このように不良となったデータを新たな領域へ置き換えるために設けられている。代替領域ＲＥＰ−ＡＲＥＡの大きさは、メモリ装置Ｍ２が保証する信頼性が確保できるように決めると良い。
【０１２８】
＜電源投入直後の動作＞
次に、電源投入直後のメモリ装置Ｍ１から情報処理装置ＣＰＵ＿ＣＨＩＰへのデータ転送について説明する。電源投入後、情報処理装置ＣＰＵ＿ＣＨＩＰは自身の持つブートデバイスＩＤレジスタＢｏｔＩＤを２へ設定する。メモリ装置Ｍ１はブートデバイスＩＤ格納領域ＢｏｔＩＤ−ＡＲＥＡからブートデバイスのＩＤ情報２を読み出し、自身のＩＤレジスタへ２を設定する。これにより、ブートデバイスがメモリ装置Ｍ１に確定する。次に、情報処理装置ＣＰＵ＿ＣＨＩＰはブートデバイスであるメモリ装置Ｍ１に格納されているブートプログラム及び最終端メモリデバイスＩＤ情報を読み出すため、メモリ装置Ｍ１のＩＤ番号２と読み出し命令をメモリモジュールＭＥＭへ送信する。
【０１２９】
メモリモジュールＭＥＭは、ＩＤ番号２と読み出し命令に従って、メモリ装置Ｍ１の初期プログラム領域ＩｎｉｔＰＲ−ＡＲＥＡからブートプログラムを読み出し、情報処理装置ＣＰＵ＿ＣＨＩＰへ送信する。このように、電源投入直後に、ブートデバイスのＩＤを初期設定することで、メモリ装置の直列接続によって実現されるメモリモジュールＭＥＭ内のブートデバイスを特定することができ、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ間の接続信号数を大幅に少なくした上で、情報処理装置ＣＰＵ＿ＣＨＩＰは、すばやく確実にブートデバイスよりブートプログラムを読み出し、情報処理装置ＣＰＵ＿ＣＨＩＰ及びメモリモジュールＭＥＭを立ち上げることができる。
【０１３０】
＜データコピー動作の説明＞
メモリ装置Ｍ０のデータ読み出し時間は、メモリ装置Ｍ２の読み出し時間と比較し、大幅に短い。そこで、前もって必要な画像データをメモリ装置Ｍ２からメモリ装置Ｍ０へ転送すれば、情報処理装置ＣＰＵ＿ＣＨＩＰにて高速に画像処理を行うことができる。特に限定しないが、メモリ装置Ｍ０、Ｍ１、Ｍ２のそれぞれのＩＤレジスタ値が１、２及び３に設定された場合の、メモリ装置Ｍ２からのメモリ装置Ｍ０へのデータ転送の一例を説明する。
【０１３１】
情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ２のデータ領域ＤＡＴＡ−ＡＲＥＡからデータを読み出すため、メモリ装置Ｍ２の識別番号ＩＤ３と１ページ（５１２Ｂｙｔｅのデータ＋１６ＢｙｔｅのＥＣＣコード）分データ読み出し命令をメモリモジュールＭＥＭへ送信する。メモリモジュールＭＥＭは、ＩＤ番号３と１ページ分のデータ読み出し命令に従って、メモリ装置Ｍ２のデータ領域ＤＡＴＡ−ＡＲＥＡから１ページ分のデータを読み出し、認識番号ＩＤ３を付加し、情報処理装置ＣＰＵ＿ＣＨＩＰへ送信する。
【０１３２】
情報処理装置ＣＰＵ＿ＣＨＩＰでは、メモリ装置Ｍ２から送信された１ページ分のデータに対しエラー検出を行う。エラーがなければ、１ページ分のデータをメモリ装置Ｍ０のコピー領域ＣＯＰＹ−ＡＲＥＡへデータを転送するため、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ０のＩＤ番号１と１ページデータ書き込み命令とデータをメモリモジュールＭＥＭへ送信する。
【０１３３】
エラーがあれば修正を行った後、１ページ分のデータをメモリ装置Ｍ０のコピー領域ＣＯＰＹ−ＡＲＥＡへデータを転送するため、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ０のＩＤ番号２と１ページデータ書き込み命令をメモリモジュールＭＥＭへ送信する。メモリモジュールＭＥＭは、ＩＤ番号２と１ページデータ読み出し命令に従って、メモリ装置Ｍ０のコピー領域ＣＯＰＹ−ＡＲＥＡへ１ページ分のデータを書き込む。
【０１３４】
次に、情報処理装置ＣＰＵ＿ＣＨＩＰからメモリ装置Ｍ０へ高速に画像データが書き込まれ、必要に応じてメモリ装置Ｍ２へこの画像データを保存する際の、メモリ装置Ｍ０からのメモリ装置Ｍ２へのデータ転送について説明する。情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ０のコピー領域ＣＯＰＹ−ＡＲＥＡからデータを読み出すため、メモリ装置Ｍ０の識別番号ＩＤ値１と１ページ（５１２Ｂｙｔｅ）データ読み出し命令をメモリモジュールＭＥＭへ送信する。メモリモジュールＭＥＭは、識別番号ＩＤ値１と１ページデータ読み出し命令に従って、メモリ装置Ｍ０のコピー領域ＣＯＰＹ−ＡＲＥＡから１ページ分のデータを読み出し、識別番号ＩＤ値１を付加し、情報処理装置ＣＰＵ＿ＣＨＩＰへ送信する。情報処理装置ＣＰＵ＿ＣＨＩＰは、メモリ装置Ｍ０から送信された１ページ分のデータをメモリ装置Ｍ２のデータ領域ＤＡＴＡ−ＡＲＥＡへデータを転送するため、メモリ装置Ｍ２の識別番号ＩＤ値３と１ページ分のデータ書き込み命令とデータをメモリモジュールＭＥＭへ送信する。
【０１３５】
メモリモジュールＭＥＭが、メモリ装置Ｍ０及びＭ１を通じてメモリ装置Ｍ２へ識別番号ＩＤ値３と１ページデータ書き込み命令を送信すると、メモリ装置Ｍ２は自身のデータ領域ＤＡＴＡ−ＡＲＥＡへ１ページ分のデータを書き込む。メモリ装置Ｍ２はデータの書き込みが成功したかどうかをチェックし、成功すれば書き込み処理を終了する。書き込みが失敗した時には、メモリ装置Ｍ２は、識別番号ＩＤ値３と書き込みエラー情報を送信し、メモリ装置Ｍ１及びメモリ装置Ｍ０を介して、情報処理装置ＣＰＵ＿ＣＨＩＰへ書き込みエラーを通達する。情報処理装置ＣＰＵ＿ＣＨＩＰは、識別番号ＩＤ値３と書き込みエラー情報を受け取ると、メモリ装置Ｍ２にあらかじめ用意されている代替領域ＲＥＰ−ＡＲＥＡの新たなアドレスに対して書き込みを行うために、メモリ装置Ｍ２の識別番号ＩＤ値３と１ページデータ書き込み命令をメモリモジュールＭＥＭへ送信する。メモリモジュールＭＥＭがメモリ装置Ｍ０及びＭ１を通じて識別番号ＩＤ値３と１ページデータ書き込み命令をメモリ装置Ｍ２へ送信すると、メモリ装置Ｍ２は自身の代替領域ＲＥＰ−ＡＲＥＡへ１ページ分のデータを書き込む。また、情報処理装置ＣＰＵ＿ＣＨＩＰは、代替処理を行った際は、不良アドレスと、不良アドレスに対して、どのアドレスに代替処理を行ったかというアドレス情報を保持し管理する。
【０１３６】
以上説明したように、メモリ装置Ｍ２の一部のデータをコピーできる領域をメモリ装置内に確保し、あらかじめメモリ装置Ｍ２からメモリ装置Ｍ０へデータを転送しておくことで、メモリ装置Ｍ０と同等の速度でメモリ装置Ｍ２のデータを読み出すことができ、情報処理装置ＣＰＵ＿ＣＨＩＰでの高速処理が可能となる。また、メモリ装置Ｍ２へデータを書く際は、いったんデータをメモリ装置Ｍ０へ書き込み、必要に応じてメモリ装置Ｍ２へ書き戻すことができるため、データの書き込みも高速化することができる。さらに、メモリ装置Ｍ２からの読み出し時は、エラー検出と訂正を行い、書き込み時は、書き込みが正しく行われなかった不良アドレスに対して代替処理を行うため、高信頼性を保つことができる。
【０１３７】
＜メモリ制御回路ＤＣＭＣのリクエスト発行動作の説明＞
図２１は、メモリ制御回路ＤＣＭＣがリクエストをメモリモジュールＭＥＭに対して発行するまでの動作の一例を示すフローチャートである。図２１（Ａ）は、リクエストキューＲＥＱＱ２へリクエストがエントリされるまでの動作の一例を示すフローチャートであり、図２１（Ｂ）は、リクエストキューＲＥＱＱ２へエントリされたリクエストをメモリモジュールＭＥＭに対して発行するまでの動作の一例を示すフローチャートである。また、図２１（Ａ）と、図２１（Ｂ）は、独立に動作する。情報処理回路ＣＰＵ０、ＣＰＵ１、ＣＰＵ２およびＣＰＵ３は、アプリケーションを実行するためにメモリコントローラＤＣＭＣを介してメモリモジュールＭＥＭへリードリクエストやライトリクエストを発行する。ここでは、情報処理回路ＣＰＵ２がメモリモジュールＭＥＭのメモリ装置Ｍ１から３２Ｂのデータを読み出すためのリードリクエストをメモリコントローラＤＣＭＣへ発行した際のメモリコントローラＤＣＭＣの動作の一例を説明する。
【０１３８】
調停回路ＣＡＲＭを通じてコマンド信号ＣＭＤから３２Ｂのデータを読み出すリードリクエストＲｅａｄＲｅｑ３２Ｍ１およびアドレス信号ＡＤＤからアドレスＲＡｄｄＭ１をリクエストキューＲＥＱＱ１へ送信する（図２１：Ｓｔｅｐ１）。リクエストキューＲＥＱＱ１は、複数のリクエストキューから構成され、リクエストを受け取るための空き状態のリクエストキューがあればリクエストイネーブル信号ＲＱＥＮはＨｉｇｈとなり、空き状態のリクエストキューがなければリクエストイネーブル信号ＲＱＥＮはＬｏｗとなる。
【０１３９】
リクエストイネーブル信号ＲＥＱＥＮがＬｏｗであれば（図２１：Ｓｔｅｐ２）、情報処理回路ＣＰＵ２からのリードリクエストＲｅａｄＲｅｑ３２Ｍ１およびアドレスＲＡｄｄＭ１はリクエストキューＲＥＱＱ１へ格納されない。リクエストイネーブル信号ＲＥＱＥＮがＨｉｇｈであれば（図２１：Ｓｔｅｐ２）、リードリクエストＲｅａｄＲｅｑ３２Ｍ１およびアドレスＲＡｄｄＭ１はリクエストキューＲＥＱＱ１へ格納される（図２１：Ｓｔｅｐ３）。
【０１４０】
次に、ヒット判定回路ＩＤＨＴはリフレッシュ要求回路ＲＥＦからリフレッシュリクエストＲｅｆＭ０があるかどうかチェックする（図２１：Ｓｔｅｐ４）。リフレッシュリクエストがあれば、このリフレッシュリクエストＲｅｆＭ０を優先させ、識別番号ＩＤを判定する（図２１：Ｓｔｅｐ１１）。コンフィグレーション回路ＣＯＮＦＩＧの設定値により、このリフレッシュリクエストＲｅｆＭ０はメモリ装置Ｍ０へのリフレッシュリクエストであるため識別番号ＩＤは１と判定される。リフレッシュリクエストＲｅｆＭ０が無ければ、リクエストキューＲＥＱＱ１へ格納されているリードリクエストＲｅａｄＲｅｑ３２Ｍ１およびアドレスＲＡｄｄＭ１に対する識別番号ＩＤを判定する（図２１：Ｓｔｅｐ５）。特に限定しないが、ヒット判定回路ＩＤＨＴは、アドレスＲＡｄｄＭ１と、図２０で示したメモリモジュールＭＥＭに対するメモリマップのアドレス値を比較し、識別番号ＩＤを判定する。特に限定しないがアドレスＲＡｄｄＭ１はプログラム格納領域ＯＳＡＰ−ＡＲＥＡのアドレスであるため識別番号ＩＤは２と判定され、リードリクエストＲｅａｄＲｅｑ３２Ｍ１はメモリ装置Ｍ１へのリクエストであることが判定される。
【０１４１】
次に、ヒット判定回路ＩＤＨＴはメモリ装置Ｍ１へのリードリクエストＲｅａｄＲｅｑ３２Ｍ１に関するアドレスＲＡｄｄＭ１に対してページアドレスヒット判定を行う（図２１：Ｓｔｅｐ６）。ページヒット判定の方法を以下に示す。ヒット判定回路ＩＤＨＴはチャネルヒット判定とページヒット判定を行うために、以下の３つの機能を装備している。
（１）ヒット判定回路ＩＤＨＴは情報処理回路ＣＰＵ０〜３から各メモリ装置へのリクエストに関するアドレスに対して、各メモリ装置のバンクアドレスＥＢＡｄｄとページアドレスＥＰＡｄｄとカラムアドレスＥＣＡｄｄの対応付けを行っている。
（２）ヒット判定回路ＩＤＨＴは各メモリ装置が装備するレスポンスキューＲｓＱｏ内のデータに対するバンクアドレスＥＢＡｄｄとページアドレスＥＰＡｄｄとカラムアドレスＥＣＡｄｄを保持している。
（３）ヒット判定回路ＩＤＨＴは各メモリ装置のメモリバンク毎に、メモリバンクが活性化していることを示す有効信号Ｖａｌｉｄと、活性化された最新のページアドレスＰＡｄｄを保持し、コマンド生成回路ＣＯＭＧＥＮへ送信する。バンク活性化信号ＡＶａｌｉｄがＨｉｇｈの際は、メモリバンクが活性化していることを示し、Ｌｏｗの場合は非活性であることを示す。
【０１４２】
ヒット判定回路ＩＤＨＴはメモリ装置Ｍ１へのリードリクエストＲｅａｄＲｅｑ３２Ｍ１に関するアドレスＲＡｄｄＭ１の中のバンクアドレスＥＢＡｄｄＭ１と、ページアドレスＥＰＡｄｄＭ１およびカラムアドレスＥＣＡｄｄＭ１を抽出する。
【０１４３】
次に、ヒット判定回路ＩＤＨＴはチャネルヒット判定とページヒット判定を行う。チャネルヒット判定では、メモリ装置Ｍ１が装備するレスポンスキューＲｓＱｏ内のデータに対するバンクアドレスＥＢＡｄｄ、ページアドレスＥＰＡｄｄおよびカラムアドレスＥＣＡｄｄと、ヒット判定回路ＩＤＨＴによって抽出されたバンクアドレスＥＢＡｄｄＭ１、ページアドレスＥＰＡｄｄＭ１およびカラムアドレスＥＣＡｄｄＭ１とを比較する（図２１：Ｓｔｅｐ６）。すべてのアドレスが一致した場合チャネルヒットとなり、一致しなかった場合はチャネルミスとなる（図２１：Ｓｔｅｐ６）。次に、バンクアドレスＥＢＡｄｄＭ１で指定されたメモリ装置Ｍ１のメモリバンクに対応するページアドレス値ＰＡｄｄＭ１と、ページアドレスＥＰＡｄｄＭ１を比較する（図２１：Ｓｔｅｐ６）。ページアドレス値ＰＡｄｄＭ１とページアドレスＥＰＡｄｄＭ１が一致した場合はページヒットとなり、ページアドレス値ＰＡｄｄＭ１とページアドレスＥＰＡｄｄＭ１が一致しなかった場合は、ページアドレスミスとなる（図２１：Ｓｔｅｐ６）。
【０１４４】
次に、コマンド生成回路ＣＯＭＧＥＮは、ヒット判定回路ＩＤＨＴからメモリ装置Ｍ１へのリードリクエストＲｅａｄＲｅｑ３２Ｍ１とアドレスＲＡｄｄＭ１、ヒット判定結果とバンク活性化信号ＡＶａｌｉｄの値および判定された識別番号ＩＤ値２を受け取り、メモリ装置Ｍ１への命令とアドレスを生成する（図２１：Ｓｔｅｐ７）。
【０１４５】
判定結果がチャネルヒットの場合、情報処理回路ＣＰＵ２が必要とするデータはメモリ装置Ｍ１のチャネルヒットとなったレスポンスキューＲｓＱｏへ存在し、このレスポンスキューＲｓＱｏから直接データを読み出すことができるため、リード命令ＲＤ３２と、これに対応したレスポンスキュー番号ＲｓＱＮｏとカラムアドレスＥＣＡｄｄＭ１を生成する（図２１：Ｓｔｅｐ７）。レスポンスキューＲｓＱｏは複数のレスポンスから構成され、それぞれのレスポンスキューを識別するためのレスポンスキュー番号を利用して、メモリ制御回路ＤＣＭＣのヒット判定回路ＩＤＨＴによって管理されている。判定結果がチャネルミスかつページヒットでバンク活性化信号ＡＶａｌｉｄがＨｉｇｈの場合、情報処理回路ＣＰＵ２が必要とするデータはメモリ装置Ｍ１のページアドレスヒットとなったメモリバンクのデータバッファＤａｔａＬａｔへ存在し、このデータバッファＤａｔａＬａｔから直接データを読み出すことができるため、リード命令ＲＤ３２と、これに対応したバンクアドレスＥＢＡｄｄＭ１とカラムアドレスＥＣＡｄｄＭ１を生成する（図２１：Ｓｔｅｐ７）。判定結果がチャネルミスかつページミスでバンク活性化信号ＡＶａｌｉｄがＨｉｇｈの場合、情報処理回路ＣＰＵ２が必要とするデータはメモリ装置Ｍ１のページアドレスミスとなったメモリバンクのデータバッファＤａｔａＬａｔには存在しないため、このデータバッファＤａｔａＬａｔを無効化し、新たなデータをデータバッファＤａｔａＬａｔへ転送し、データバッファＤａｔａＬａｔから読み出す動作が必要となる。そこで、まずバンクアドレスＥＢＡｄｄＭ１で指定されたメモリ装置Ｍ１のメモリバンクのデータバッファＤａｔａＬａｔ内のデータを無効化するため、プリチャージ命令Ｐｒｅと、バンクアドレスＥＢＡｄｄＭ１を生成する（図２１：Ｓｔｅｐ７）。
【０１４６】
次に、新たなデータをデータバッファＤａｔａＬａｔへ転送するためにバンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を生成する。最後に、データバッファＤａｔａＬａｔから３２バイト分のデータを読み出すためにリード命令ＲＤ３２とカラムアドレスＥＣＡｄｄＭ１を生成する（図２１：Ｓｔｅｐ７）。また、プリチャージ命令Ｐｒｅと、バンクアドレスＥＢＡｄｄＭ１を含むリクエストがメモリ制御回路ＤＣＭＣからメモリモジュールＭＥＭへ出力された際には、メモリ装置Ｍ１のバンクアドレスＥＢＡｄｄＭ１で指定されたメモリバンクに対応するバンク活性化信号ＡＶａｌｉｄはＬｏｗへ更新され保持される。また、バンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を含むリクエストがメモリ制御回路ＤＣＭＣからメモリモジュールＭＥＭへ出力された際には、メモリ装置Ｍ１のバンクアドレスＥＢＡｄｄＭ１で指定されたメモリバンクに対応するバンク活性化信号ＡＶａｌｉｄはＨｉｇｈへ更新され保持され、さらにページアドレス値ＰＡｄｄＭ１は新たなページアドレスＥＰＡｄｄＭ１へ更新され、保持される。
【０１４７】
判定結果がチャネルミスかつページミスでバンク活性化信号ＡＶａｌｉｄがＬｏｗの場合、メモリ装置Ｍ１のページアドレスミスとなったメモリバンクのデータバッファＤａｔａＬａはすでに無効化状態となっている。そこで、新たなデータをデータバッファＤａｔａＬａｔへ転送するためにバンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を生成する。最後に、データバッファＤａｔａＬａｔから３２バイト分のデータを読み出すためにリード命令ＲＤ３２とカラムアドレスＥＣＡｄｄＭ１を生成する（図２１：Ｓｔｅｐ７）。また、バンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を含むリクエストがメモリ制御回路ＤＣＭＣからメモリモジュールＭＥＭへ出力された際には、メモリ装置Ｍ１のバンクアドレスＥＢＡｄｄＭ１で指定されたメモリバンクに対応するバンク活性化信号ＡＶａｌｉｄはＨｉｇｈへ更新され保持され、さらにページアドレス値ＰＡｄｄＭ１は新たなページアドレスＥＰＡｄｄＭ１へ更新され、保持される。
【０１４８】
判定結果がチャネルミスかつページアドレスヒットで、バンク活性化信号ＡＶａｌｉｄがＬｏｗの場合、メモリ装置Ｍ１のページアドレスヒットとなったメモリバンクのデータバッファＤａｔａＬａはすでに無効化状態となっている。そこで、新たなデータをデータバッファＤａｔａＬａｔへ転送するためにバンクアクティブ命令ＡＣｍ１とバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を生成する。最後に、データバッファＤａｔａＬａｔから３２バイト分のデータを読み出すためにリード命令ＲＤ３２とカラムアドレスＥＣＡｄｄＭ１を生成する（図２１：Ｓｔｅｐ７）。また、バンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を含むリクエストがメモリ制御回路ＤＣＭＣからメモリモジュールＭＥＭへ出力された際には、メモリ装置Ｍ１のバンクアドレスＥＢＡｄｄＭ１で指定されたメモリバンクに対応するバンク活性化信号ＡＶａｌｉｄはＨｉｇｈへ更新され保持される。さらに、コマンド生成回路ＣＯＭＧＥＮは自らが生成した命令や、レスポンスキュー番号ＲｓＱＮｏおよびアドレス（バンクアドレス、ページアドレスおよびカラムアドレス）や、ライトデータを含むリクエストに対し、特に限定しないがリクエスト開始フラグＲｅｑＳｔＦｌａｇ、識別番号ＩＤ、リクエスト番号ＲｅｑＮ、マスター番号ＭＩＤ、可変部リクエスト長ＶＲＥＱＬなどを付加し、特に限定しないがリクエスト開始フラグＲｅｑＳｔＦｌｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、可変部リクエスト長、リクエスト番号ＲｅｑＮ、アドレス（バンクアドレス、ページアドレスおよびカラムアドレス）、ライトデータの順でリクエストを再構成する。
【０１４９】
リクエスト開始フラグＲｅｑＳｔＦｌｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、可変部リクエスト長ＶＲＥＱＬ、リクエスト番号ＲｅｑＮは、どのリクエストに対しても共通の構成となっている共通リクエスト部分ＣＭＮＲＥＱＦであり、特に限定しないが、４バイト分の固定したリクエスト長となっている。また、アドレス（バンクアドレス、ページアドレスおよびカラムアドレス）やライトデータは命令によって、そのリクエスト長が異なる可変リクエスト部分ＶＢＲＥＱＦであり、可変部リクエスト長ＶＲＥＱＬによって、そのリクエスト長さが示される。リクエスト開始フラグＲｅｑＳｔＦｌａｇがＨｉｇｈの場合はリクエストが開始されることを示し、Ｌｏｗの場合はリクエストが発生していないことを示す。リクエスト番号ＲｅｑＮは、コマンド生成回路ＣＯＭＧＥＮが再構成したリクエストを識別するための番号であり、０から始まり２５５まで１つずつカウントアップしながら付加される。また、可変部リクエスト長ＶＲＥＱＬはリクエストの長さをバイト単位で示す。
【０１５０】
ここでは判定結果がチャネルミスかつページアドレスヒット且つバンク活性化信号ＡＶａｌｉｄがＬｏｗの場合に、コマンド生成回路ＣＯＭＧＥＮより生成されたバンクアクティブ命令ＡＣとリード命令ＲＤ３２および、これらの命令に対するアドレスを含むリクエストに対するリクエストの再構成について説明する。
【０１５１】
先ず、識別番号ＩＤとリクエスト番号ＲｅｑＮの付加について説明する。コマンド生成回路ＣＯＭＧＥＮによって、完了通知を必要としないバンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を含むリクエストは、リクエスト開始フラグＲｅｑＳｔＦｌｇ値１、識別番号ＩＤ値２、完了通知を必要としないバンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値２、可変部リクエスト長ＶＲＥＱＬ値３、リクエスト番号ＲｅｑＮ値１０、アドレス（バンクアドレスおよびページアドレス）の順で再生成され、バンクアクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０として持される（図２１：Ｓｔｅｐ８）。また、このバンクアクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０は完了通知を必要としないリクエストである。続いて、３２バイトデータのリード命令ＲＤ３２とカラムアドレスＥＣＡｄｄＭ１を含むリクエストは、リクエスト開始フラグＲｅｑＳｔＦｌｇ値１、識別番号ＩＤ値２、リード命令ＲＤ３２、マスター番号ＭＩＤ値２、可変部リクエスト長ＶＲＥＱＬ値３、リクエスト番号ＲｅｑＮ値１１、アドレス（バンクアドレスおよびカラムアドレス）、リードデータサイズＲＳＩＺＥ値３２の順で再生成され、リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１として保持される（図２１：Ｓｔｅｐ８）。
【０１５２】
リクエストキューＲＥＱＱ２は、複数のリクエストキューから構成され、リクエストを受け取るための空き状態のリクエストキューが無ければ（図２１：Ｓｔｅｐ９）格納せず、空き状態のリクエストキューが出来るまで待つ。空き状態のリクエストキューがあれば（図２１：Ｓｔｅｐ９）アクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０およびリードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１をリクエストキューＲＥＱＱ２へ格納する（図２１：Ｓｔｅｐ１０）。
【０１５３】
リクエスト出力回路ＲＱＯＵＴは、コンフィグレーション回路ＣＯＮＦＩＧ内のメモリ装置Ｍ０に関するタイミングレジスタＭ０ＴＲＥＧの設定値と、メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧの設定値と、メモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧの設定値を受け取り、これらのタイミング設定値に従い、リクエストキューＲＥＱＱ２から送信されたリクエストを、メモリモジュールＭＥＭの各メモリ装置へ発行する回路である。また、リクエスト出力回路ＲＱＯＵＴは、完了通知を必要とするリクエストをメモリモジュールＭＥＭ内の、ある特定のメモリ装置へ発行した場合は、そのメモリ装置からの完了通知を情報処理装置ＣＰＵ＿ＣＨＩＰが受け取って後に、リクエスト出力回路ＲＱＯＵＴは、そのメモリ装置へ次のリクエストを発行する。具体的に説明すると、リクエスト出力回路ＲＱＯＵＴは、完了通知を必要とするリクエストをメモリモジュールＭＥＭ内のメモリ装置Ｍ２へ発行した場合は、メモリ装置Ｍ２からの完了通知を情報処理装置ＣＰＵ＿ＣＨＩＰが受け取って後に、リクエスト出力回路ＲＱＯＵＴはメモリ装置Ｍ２へ、次のリクエストを発行する。さらに、情報処理装置ＣＰＵ＿ＣＨＩＰがメモリ装置Ｍ２からの完了通知を待っている間に、リクエスト出力回路ＲＱＯＵＴは、他のメモリ装置Ｍ０やＭ１へのリクエストを発行できることは言うまでもない。
【０１５４】
まず、リクエスト出力回路ＲＱＯＵＴは、リクエストキューＲＥＱＱ２にリクエストが保持されているかをチェックする（図２１：Ｓｔｅｐ１２）。リクエストキューＲＥＱＱ２にリクエストが保持されていれば、そのリクエストがリードリクエストあるいは完了通知を必要とするリクエストであるかをチェックする（図２１：Ｓｔｅｐ１３）。
【０１５５】
アクティブリクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０は完了通知を必要としないリクエストであり、さらにリードリクエストではないので、アクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０の識別番号ＩＤ値は２のため、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧに設定されているタイミング情報をチェックし、アクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０が発行できるかを判断する（図２１：Ｓｔｅｐ１６）。
【０１５６】
次に、リクエスト出力回路ＲＱＯＵＴは、アクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０が発行できる状態であれば、すぐに、アクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０をメモリモジュールＭＥＭへ発行する（図２１：Ｓｔｅｐ１７）。メモリ装置Ｍ０のリクエストキュー回路ＲｑＱＩに空き状態のリクエストキューがない場合、発行したアクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０を、メモリ装置Ｍ０が受信できない。このように、発行したアクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０を、メモリ装置Ｍ０が受信できない場合は、アクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１０をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する（図２１：Ｓｔｅｐ１８）。レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１０はレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、バンクアクティブ命令ＡＣｍ１、マスター番号ＭＩＤ値２、レスポンス番号ＲＥＳＮ値１０（リクエスト番号ＲＥＱＮ値１０と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１０をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１０に含まれる識別番号ＩＤ値２、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値２、レスポンス番号ＲｅｓＮ値１０および受信不可能情報ＮＯＡＣＣによって、再度、アクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０を発行する（図２１：Ｓｔｅｐ１７）。発行したアクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０を、メモリ装置Ｍ０が受信した場合は、メモリ装置Ｍ０からの受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスが送信されない（図２１：Ｓｔｅｐ１８）。
【０１５７】
アクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０が発行され、メモリ装置Ｍ０が受信した後、リクエスト出力回路ＲＱＯＵＴは、リクエストキューＲＥＱＱ２にリクエストが保持されているかをチェックする（図２１：Ｓｔｅｐ１２）。リクエストキューＲＥＱＱ２にリクエストが保持されていれば、そのリクエストがリードリクエストであるか、あるいは完了通知を必要とするリクエストであるかをチェックする（図２１：Ｓｔｅｐ１３）。リクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１はリードリクエストのため、リクエスト出力回路ＲＱＯＵＴは、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１が装備している複数のレスポンスキューの中で、予約されていない空き状態のレスポンスキューがあるかどうかをチェックする（図２１：Ｓｔｅｐ１４）。
【０１５８】
レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ（図２１：Ｓｔｅｐ１４）。レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューがあれば、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１の空き状態のレスポンスキューの一部へリードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１１をコピーし、リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１に対応したレスポンスを受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２１：Ｓｔｅｐ１５）。
【０１５９】
キュー管理回路ＱＭＧＴは、メモリ制御回路ＤＣＭＣが持つレスポンスキュー回路ＲＥＳＱ１内のレスポンスキュー数、予約されていない空き状態のレスポンスキュー数、予約された空き状態のレスポンスキュー数、すでにレスポンスが格納されている占有状態のレスポンスキュー数を管理している。さらに、キュー管理回路ＱＭＧＴは、メモリ装置Ｍ０、Ｍ１およびＭ２が持つレスポンスキュー回路ＲｓＱｏとレスポンスキュー回路ＲｓＱｐ内のレスポンスキュー数、予約されていない空き状態のレスポンスキュー数、予約された空き状態のレスポンスキュー数、すでにレスポンスが格納されている占有状態のレスポンスキュー数を管理している。
【０１６０】
キュー管理回路ＱＭＧＴは、予約されていない空き状態のレスポンスキューが前もって確保された場合は、特に限定しないがレスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数を１つ減らし、予約された空き状態のレスポンスキュー数を１つ増やす。さらに、キュー管理回路ＱＭＧＴは識別番号ＩＤ値２に対応するレスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキュー数を１つ減らし、予約された空き状態のレスポンスキュー数を１つ増やし、識別番号ＩＤ値１に対応するメモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐ内の予約されていない空き状態のレスポンスキュー数を１つ減らし、予約された空き状態のレスポンスキュー数を１つ増やす（図２１：Ｓｔｅｐ１４）。
【０１６１】
リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１の識別番号ＩＤ値は２のため、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧに設定されているタイミング情報をチェックし、リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１が発行できるかを判断する（図２１：Ｓｔｅｐ１６）。次に、リクエスト出力回路ＲＱＯＵＴは、リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１が発行できる状態であれば、リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１をメモリモジュールＭＥＭへ発行する（図２１：Ｓｔｅｐ１７）。
【０１６２】
レイテンシ調整回路ＬＣＨＣＫは、リクエスト出力回路ＲＱＯＵＴからのリードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１発行の通達を受けて、レイテンシの測定を開始する。メモリ装置Ｍ０のリクエストキュー回路ＲｑＱＩに空き状態のリクエストキューがない場合、発行したリードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１を、メモリ装置Ｍ０が受信できない。このように、発行したリードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１を、メモリ装置Ｍ０が受信できない場合は、リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１１をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する（図２１：Ｓｔｅｐ１８）。
【０１６３】
レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１１はレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、リード命令ＲＤ３２、マスター番号ＭＩＤ値２、レスポンス番号ＲｅｓＮ値１１（リクエスト番号ＲｅｑＮ値１１と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１１をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１１に含まれる識別番号ＩＤ値２、リード命令ＲＤ３２マスター番号ＭＩＤ値２、レスポンス番号ＲｅｓＮ値１１および受信不可能情報ＮＯＡＣＣによって、再度、リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１をメモリモジュールＭＥＭへ発行する（図２１：Ｓｔｅｐ１７）。
【０１６４】
レイテンシ調整回路ＬＣＨＣＫは、リクエスト出力回路ＲＱＯＵＴからのリードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１の再発行の通達を受けて、今まで測定したレイテンシの値をすべて無効にし、再度、最初からレイテンシの測定を開始する。発行したリードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１を、メモリ装置Ｍ０が受信した場合は、メモリ装置Ｍ０からの受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスが送信されない（図２１：Ｓｔｅｐ１８）。
【０１６５】
リクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１に対する読み出しデータを含んだレスポンスＲｅｓＲＤ３２ＩＤ２Ｓｅｑ１１がメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ入力され、レスポンスキューＲＥＳＱ１へ格納されると、キュー管理回路ＱＭＧＴは、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０１６６】
さらに、レスポンスキューＲＥＳＱ１に格納されているレスポンスＲｅｓＲＤ３２ＩＤ２Ｓｅｑ１１が、情報処理回路ＣＰＵ２へ送信されると、キュー管理回路ＱＭＧＴは、レスポンスキューＲＥＳＱ１へ保持されているレスポンスＲｅｓＲＤ３２ＩＤ２Ｓｅｑ１１を削除し、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０１６７】
次に、リクエストキューＲＥＱＱ２へ完了通知を必要とするアクティブリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０とリードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１が保持されている場合の動作の一例を示す。アクティブリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０には、リクエスト開始フラグＲｅｑＳｔＦｌｇ値１、識別番号ＩＤ値３、完了通知を必要とするバンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値２、可変部リクエスト長ＶＲＥＱＬ値３、リクエスト番号ＲｅｑＮ値１０、アドレス（バンクアドレスおよびページアドレス）が含まれる。リードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１には、リクエスト開始フラグＲｅｑＳｔＦｌｇ値１、識別番号ＩＤ値３、リード命令ＲＤ３２、マスター番号ＭＩＤ値２、可変部リクエスト長ＶＲＥＱＬ値３、リクエスト番号ＲｅｑＮ値１１、リクエスト番号ＲｅｑＮ値１１、アドレス（バンクアドレスおよびカラムアドレス）、リードデータサイズＲＳＩＺＥ値３２が含まれる。
【０１６８】
まず、リクエスト出力回路ＲＱＯＵＴは、リクエストキューＲＥＱＱ２にリクエストが保持されているかをチェックする（図２１：Ｓｔｅｐ１２）。リクエストキューＲＥＱＱ２にリクエストが保持されていれば、そのリクエストがリードリクエストあるいは完了通知を必要とするリクエストであるかをチェックする（図２１：Ｓｔｅｐ１３）。
【０１６９】
アクティブリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０は完了通知を必要とするリクエストのため、リクエスト出力回路ＲＱＯＵＴは、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１が装備している複数のレスポンスキューの中で、予約されていない空き状態のレスポンスキューがあるかどうかをチェックする（図２１：Ｓｔｅｐ１４）。
【０１７０】
レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ（図２１：Ｓｔｅｐ１４）。レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューがあれば、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１の空き状態のレスポンスキューの一部へアクティブリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０内の識別番号ＩＤ値３とリクエスト番号ＲｅｑＮ値１０をコピーし、アクティブリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０に対する完了通知情報を含んだレスポンスＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＲｅｓＩＤ３Ｓｅｑ１０を受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２１：Ｓｔｅｐ１５）。
【０１７１】
アクティブリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０の識別番号ＩＤ値は３のため、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧに設定されているタイミング情報をチェックし、アクティブ・リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０が発行できるかを判断する（図２１：Ｓｔｅｐ１６）。
【０１７２】
次に、リクエスト出力回路ＲＱＯＵＴは、アクティブリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０が発行できる状態であれば、すぐに、アクティブ・リクエストアクティブリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０をメモリモジュールＭＥＭへ発行する（図２１：Ｓｔｅｐ１７）。
【０１７３】
メモリ装置Ｍ０のリクエストキュー回路ＲｑＱＩに空き状態のリクエストキューがない場合、発行したアクティブ・リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０を、メモリ装置Ｍ０が受信できない。このように、発行したアクティブ・リクエストＲｅｑＡＣＩＤ２Ｓｅｑ１０を、メモリ装置Ｍ０が受信できない場合は、アクティブ・リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１０をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する（図２１：Ｓｔｅｐ１８）。レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１０はレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、バンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１０（リクエスト番号ＲｅｑＮ値１０と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１０をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１０に含まれる識別番号ＩＤ値３、バンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１０および受信不可能情報ＮＯＡＣＣによって、再度、アクティブ・リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０を発行する（図２１：Ｓｔｅｐ１７）。発行したアクティブ・リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０を、メモリ装置Ｍ０が受信した場合は、メモリ装置Ｍ０からの受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスが送信されない（図２１：Ｓｔｅｐ１８）。
【０１７４】
アクティブ・リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０が発行され、メモリ装置Ｍ０が受信した後、リクエスト出力回路ＲＱＯＵＴは、リクエストキューＲＥＱＱ２にリクエストが保持されているかをチェックする（図２１：Ｓｔｅｐ１２）。リクエストキューＲＥＱＱ２にリクエストが保持されていれば、そのリクエストがリードリクエストであるか、あるいは完了通知を必要とするリクエストであるかをチェックする（図２１：Ｓｔｅｐ１３）。リードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１はリードリクエストのため、リクエスト出力回路ＲＱＯＵＴは、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１が装備している複数のレスポンスキューの中で、予約されていない空き状態のレスポンスキューがあるかどうかをチェックする（図２１：Ｓｔｅｐ１４）。
【０１７５】
レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ（図２１：Ｓｔｅｐ１４）。レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューがあれば、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１の空き状態のレスポンスキューの一部へリードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１１をコピーし、リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１に対応したレスポンスを受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２１：Ｓｔｅｐ１５）。
【０１７６】
リードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１の識別番号ＩＤ値は３のため、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ２へのアクティブリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓｅｑ１０に対する完了通知情報を含んだレスポンスＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＲｅｓＩＤ３Ｓｅｑ１０がレスポンス入力回路ＲＳＩＮへ入力され、レスポンスキューＲＥＳＱ１へ保持されているかをチェックする（図２１：Ｓｔｅｐ１６）。
【０１７７】
レスポンスキューＲＥＳＱ１へレスポンスＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＲｅｓＩＤ３Ｓｅｑ１０が保持されていれば、リクエスト出力回路ＲＱＯＵＴはリードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１をメモリモジュールＭＥＭへ発行する（図２１：Ｓｔｅｐ１７）。さらに、リクエスト出力回路ＲＱＯＵＴはリードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１をメモリモジュールＭＥＭへ発行したことをキュー管理回路ＱＭＧＴへ通達する。その後、キュー管理回路ＱＭＧＴは、レスポンスキューＲＥＳＱ１へ保持されているレスポンスＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＲｅｓＩＤ３Ｓｅｑ１０を削除し、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０１７８】
レイテンシ調整回路ＬＣＨＣＫは、リクエスト出力回路ＲＱＯＵＴからのリードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１発行の通達を受けて、レイテンシの測定を開始する。メモリ装置Ｍ０のリクエストキュー回路ＲｑＱＩに空き状態のリクエストキューがない場合、発行したリードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１を、メモリ装置Ｍ０が受信できない。このように、発行したリードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１を、メモリ装置Ｍ０が受信できない場合は、リードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１１をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する（図２１：Ｓｔｅｐ１８）。
【０１７９】
レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１１はレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値３、リード命令ＲＤ３２、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１１（リクエスト番号ＲｅｑＮ値１１と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１１をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１１に含まれる識別番号ＩＤ値３、リード命令ＲＤ３２、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１１および受信不可能情報ＮＯＡＣＣによって、再度、リードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リードリクエストＲｅｑＲＤ３２ＩＤ２Ｓｅｑ１１をメモリモジュールＭＥＭへ発行する（図２１：Ｓｔｅｐ１７）。
【０１８０】
レイテンシ調整回路ＬＣＨＣＫは、リクエスト出力回路ＲＱＯＵＴからのリードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１の再発行の通達を受けて、今まで測定したレイテンシの値をすべて無効にし、再度、最初からレイテンシの測定を開始する。発行したリードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１１を、メモリ装置Ｍ０が受信した場合は、メモリ装置Ｍ０からの受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスが送信されない（図２１：Ｓｔｅｐ１８）。
【０１８１】
＜情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ間のデータ転送＞
情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ間のデータ転送について、図１から図８および図２２から図２３を利用し説明する。
【０１８２】
図２２は情報処理装置ＣＰＵ＿ＣＨＩＰからメモリモジュールＭＥＭへのリクエストに対する動作の一例を示すフローチャートである。図２３はメモリモジュールＭＥＭから情報処理装置ＣＰＵ＿ＣＨＩＰへのレスポンスに対する動作の一例を示すフローチャートである。
【０１８３】
まず、本実施の形態の動作を説明する前に、動作の前提となる各レジスタの状態等について説明する。メモリ装置Ｍ０、Ｍ１、Ｍ２のそれぞれのＩＤレジスタＩＤＲ値が１、２及び３に設定されている。コンフィグレーション回路ＣＯＮＦＩＧ内の各レジスタは図１０から図１８に示した値に設定されている。メモリ制御回路ＤＣＭＣのリクエストキュー回路ＲＥＱＱ２のリクエストキュー数は１２で、このリクエストキューはすべて空き状態である。また、メモリ制御回路ＤＣＭＣのレスポンスキュー回路ＲＥＳＱ１のリクエストキュー数は２４で、このレスポンスキューはすべて空き状態である。また、メモリ装置Ｍ０のリクエストキュー回路ＲｑＱＩのリクエストキュー数は１２で、リクエストキュー回路ＲｑＱＸＩのリクエストキュー数は４で、リクエストキュー回路ＲｑＱＸＯのリクエストキュー数は８で、これらのリクエストキューはすべて空き状態である。また、メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｏのリクエストキュー数は８で、レスポンスキュー回路ＲｓＱｐのレスポンスキュー数は１６で、これらのレスポンスキューはすべて空き状態である。また、メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩのリクエストキュー数は８で、リクエストキュー回路ＲｑＱＸＩのリクエストキュー数は４で、リクエストキュー回路ＲｑＱＸＯのリクエストキュー数は４で、これらのリクエストキューにはリクエストがエントリされていない。また、メモリ装置Ｍ１のレスポンスキュー回路ＲｓＱｏのリクエストキュー数は８で、レスポンスキュー回路ＲｓＱｐのレスポンスキュー数は８で、これらのレスポンスキューはすべて空き状態である。また、メモリ装置Ｍ２のリクエストキュー回路ＲｑＱＩのリクエストキュー数は４で、リクエストキュー回路ＲｑＱＸＩのリクエストキュー数は４で、リクエストキュー回路ＲｑＱＸＯのリクエストキュー数は４で、これらのリクエストキューにはリクエストがエントリされていない。また、メモリ装置Ｍ２のレスポンスキュー回路ＲｓＱｏのリクエストキュー数は８で、レスポンスキュー回路ＲｓＱｐのレスポンスキュー数は８で、これらのレスポンスキューはすべて空き状態である。また、メモリ装置Ｍ０、Ｍ１およびＭ２の全メモリバンクは非活性となっている。また、メモリ装置Ｍ０、Ｍ１およびＭ２へのリクエストは、情報処理装置ＣＰＵ＿ＣＨＩＰの情報処理回路ＣＰＵ３からのリクエストである。情報処理装置ＣＰＵ＿ＣＨＩＰからメモリ装置Ｍ０、Ｍ１およびＭ２へのリクエストは、４バイトの共通リクエスト部ＣＭＮＲＥＱＦと、最大３６バイトの可変リクエスト部ＶＢＲＥＱＦから構成される。共通リクエスト部ＣＭＮＲＥＱＦはリクエスト開始フラグＲｅｑＳｔＦｌｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、可変部リクエスト長ＶＲＥＱＬ、リクエスト番号ＲＥＱＮから構成される。可変リクエスト部ＶＢＲＥＱＦは、４バイトのアドレスおよび最大３２バイトのライトデータから構成される。可変部リクエスト長ＶＲＥＱＬは可変リクエスト部ＶＢＲＥＱＦの長さをバイト単位で表している。メモリ装置Ｍ０、Ｍ１およびＭ２が装備する１つのリクエストキューは、４バイトの共通リクエスト部ＣＭＮＲＥＱＦと、最大３６バイトの可変リクエスト部ＶＢＲＥＱＦを格納できる。また、メモリ装置Ｍ０、Ｍ１およびＭ２から情報処理装置ＣＰＵ＿ＣＨＩＰへのレスポンスは、４バイトの共通レスポンス部ＣＭＮＲＥＳＦと、最大３２バイトのリードデータから構成される。共通レスポンス部ＣＭＮＲＥＳＦはレスポンス開始フラグＲｅｓＳｔＦｌａｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、リードデータ長ＲＤＬ、レスポンス番号ＲｅｓＮから構成される。リードデータ長ＲＤＬはリードデータの長さをバイト単位で表している。メモリ装置Ｍ０、Ｍ１およびＭ２が装備する１つのレスポンスキューは、４バイトの共通レスポンス部ＣＭＮＲＥＳＦと、最大３２バイトのリードデータを格納できる。
【０１８４】
先ず、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ０のデータ転送について説明する。情報処理装置ＣＰＵ＿ＣＨＩＰのメモリ制御回路ＤＣＭＣは、リクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値１、完了通知情報が不要のバンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ）、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１５、バンクアドレスＢＫ０、ロウアドレスＲｏｗ６３を多重化したリクエストＲｅｑＡＣＩＤ１ＳＥＱ１５をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する（図２２：Ｓｔｅｐ１）。
【０１８５】
リクエストＲｅｑＡＣＩＤ１ＳＥＱ１５がメモリ装置Ｍ０へ入力するとキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ０は、情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｅｑＡＣＩＤ１ＳＥＱ１５を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。また、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＡＣＩＤ１ＳＥＱ１５をメモリ装置Ｍ０が受信できないので、リクエストＲｅｑＡＣＩＤ１ＳＥＱ１５の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１５をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する。
【０１８６】
レスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１５はレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値１、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１５（リクエスト番号ＲｅｑＮ値１５と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１５をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１５に含まれる識別番号ＩＤ値１、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓｎＮ値１５および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｅｑＡＣＩＤ１ＳＥＱ１５を発行する（図２２：Ｓｔｅｐ１）。
【０１８７】
その後、ＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＡＣＩＤ１ＳＥＱ１５に含まれるＩＤ値１と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する（図２２：Ｓｔｅｐ４）。比較結果が一致したため、リクエストＲｅｑＡＣＩＤ１ＳＥＱ１５は、リクエストキュー回路ＲｑＱＸＩへ転送される（図２２：Ｓｔｅｐ５）。次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストがリード命令を含むか、あるいは完了通知情報を必要とするリクエストかどうかをチェックする（図２２：Ｓｔｅｐ６）。リクエストＲｅｑＡＣＩＤ１ＳＥＱ１５はリード命令を含んでおらず、さらに完了通知情報が不要のリクエストであるため、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストＲｅｑＡＣＩＤ１ＳＥＱ１５をメモリ回路Ｍｅｍ０へ転送する（図２２：Ｓｔｅｐ１１）。メモリ回路Ｍｅｍ０はリクエストＲｅｑＡＣＩＤ１ＳＥＱ１５に従って動作する（図２２：Ｓｔｅｐ１２）。具体的には、メモリ回路Ｍｅｍ０のコマンドデコーダＣｍｄＤｅｃはバンクアクティブ命令ＢＡを解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＢＡＮＫ０が選択され、メモリバンクＢＡＮＫ０のロウアドレスバッファＲａｄＬａｔへロウアドレス６３が格納され、ロウデコーダＲｏｗＤｅｃへ入力される。その後メモリ回路ＭＢａｎｋ０内のロウアドレス６３に接続されているメモリセルが活性化され、１ｋＢｙｔｅ分のデータがセンスアンプＳｅｎｓｅＡｍｐへ転送される（図２２：Ｓｔｅｐ１２）。
【０１８８】
情報処理装置ＣＰＵ＿ＣＨＩＰのメモリ制御回路ＤＣＭＣは、タイミングレジスタＭ０ＴＲＥＧに設定されているｔｍ０ＲＣＤ（バンクアクティブ命令とリードおよびライト命令の最小時間間隔）の値８に従い、リクエストＲｅｑＡＣＩＤ１ＳＥＱ１５転送後の８クロックサイクル以降に、３２バイトデータのリード命令ＲＤ３２を含むリクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６（リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値１、３２バイトデータのリード命令ＲＤ３２、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ）、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１６、バンクアドレスＢＫ０およびカラムアドレスＣｏｌ３２から構成される）をメモリ装置Ｍ０へ転送するための動作を行う。
【０１８９】
先ず、メモリ制御回路ＤＣＭＣのリクエスト出力回路ＲＱＯＵＴはレスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキューがあるかをチェックし、この空き状態のレスポンスキューがあれば、リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６内の識別番号ＩＤ値１とリクエスト番号ＲｅｑＮ値１６と等しいレスポンス番号ＲｅｓＮ値１６を、この空き状態のレスポンスキューへコピーし、リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６を受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する。次にリクエスト出力回路ＲＱＯＵＴは、リクエスト信号ＲｑＭｕｘ０を通じて、ＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する（図２２：Ｓｔｅｐ１）。また、リクエスト出力回路ＲＱＯＵＴはリクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６内の識別番号ＩＤ値１とリクエスト番号ＲｅｑＮ値１６をレイテンシ調整回路ＬＣＨＣＫへ転送し、保持させる。次に、リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６の転送と同時に、レイテンシ調整回路ＬＣＨＣＫはリクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６に関するレイテンシの測定を開始する（図２２：Ｓｔｅｐ２）。
【０１９０】
リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６がメモリ装置Ｍ０へ入力するとキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ０は情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。
【０１９１】
また、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６をメモリ装置Ｍ０が受信できないため、リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１６をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する。レスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１６はレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値１、リード命令ＲＤ、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１６（リクエスト番号ＲＥＱＮ値１６と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１６をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１６に含まれる識別番号ＩＤ値１、リード命令ＲＤ、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１６および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６を発行する（図２２：Ｓｔｅｐ１）。
【０１９２】
レイテンシ調整回路ＬＣＨＣＫは、リクエスト出力回路ＲＱＯＵＴからのリクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６の再発行の通達を受けて、今まで測定したレイテンシの値をすべて無効にし、再度、最初からレイテンシの測定を開始する。その後、ＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６に含まれるＩＤ値１と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する（図２２：Ｓｔｅｐ４）。比較結果が一致したため、リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６は、リクエストキュー回路ＲｑＱＸＩへ転送される（図２２：Ｓｔｅｐ５）。
【０１９３】
次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストがリード命令を含むか、あるいは完了通知情報を必要とするリクエストかどうかをチェックする（図２２：Ｓｔｅｐ６）。リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６はリード命令を含んでいるため、リクエストキュー回路ＲｑＱＸＩは、レスポンスキュー回路ＲｓＱｏ内に、予約されていない空き状態のレスポンスキューがあるかをチェックする（図２２：Ｓｔｅｐ７）。レスポンスキュー回路ＲｓＱｏ内に予約されていない空き状態のレスポンスキューがなければ、予約されていない空き状態のレスポンスキューができるまでリクエストキュー回路ＲｑＱＸＩは、リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６の転送を中断する。レスポンスキュー回路ＲｓＱｏに予約されていない空き状態のレスポンスキューがあれば、リクエストキュー回路ＲｑＱＸＩは、レスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキューへリクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６内の識別番号ＩＤ値１とリクエスト番号ＲｅｑＮ値１６をコピーし、リクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６に対応したメモリ回路Ｍｅｍ０からのリードデータを受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２２：Ｓｔｅｐ８）。
【０１９４】
また、メモリ装置Ｍ０のキューチェック回路ＲＳＱＭは、メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｏとレスポンスキュー回路ＲｓＱｐ内のレスポンスキュー数、予約されていない空き状態のレスポンスキュー数、予約された空き状態のレスポンスキュー数、すでにレスポンスが格納されている占有状態のレスポンスキュー数を管理している。リクエストキュー回路ＲｑＱＸＩがレスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキューを予約した場合、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｏ内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ８）。
【０１９５】
次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６をメモリ回路Ｍｅｍ０へ転送する（図２２：Ｓｔｅｐ９）。メモリ回路Ｍｅｍ０はリクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６に従って動作する（図２２：Ｓｔｅｐ１０）。具体的には、３２バイトデータリード命令ＲＤ３２がコマンド信号Ｃｏｍｍａｎｄから、バンクアドレス０およびカラムアドレス３２が、アドレス信号Ａｄｄｒｅｓｓよりメモリ回路Ｍｅｍ０へ送信される。
【０１９６】
コマンドデコーダＣｍｄＤｅｃは３２バイトデータリード命令ＲＤ３２を解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＭＢＡＮＫ０が選択され、メモリバンクＭＢＡＮＫ０のカラムアドレスバッファＣＡｄｄＬａｔへカラムアドレス３２が格納され、カラムデコーダＣｏｌＤｅｃへ入力される。その後、カラムアドレス３２を開始アドレスとして、３２バイト分のデータがセンスアンプＳｅｎｓｅＡｍｐから読み出され、データ制御回路ＤａｔａＣｏｎｔを介してリードデータバッファＲＤａｔａＬａｔへ格納される（図２２：Ｓｔｅｐ１０）。その後、リードデータバッファＲＤａｔａＬａｔより読み出された３２バイト分のデータは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値１（ＩＤレジスタ値１と等しい値）、３２バイトデータのリード命令ＲＤ３２、マスター番号ＭＩＤ値３、リードデータ長ＲＤＬ値３２、レスポンス番号ＲＥＱＮ値１６（リクエスト番号ＲｅｑＮ値１６と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されて、レスポンスキュー制御回路ＲｓＣＴ内のレスポンスキューＲｓＱｏの予約された空き状態のレスポンスキューへレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６としてエントリされる（図２３：Ｓｔｅｐ１７）。
【０１９７】
メモリ装置Ｍ０のキューチェック回路ＲＳＱＭは、メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｏへレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６がエントリされると、レスポンスキュー回路ＲｓＱｏ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ１８）。次にレスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスに対するレスポンス優先順位を決定する（図２３：Ｓｔｅｐ１９）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスはＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６のみのため、レスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６のレスポンス優先順位が最も高い（図２３：Ｓｔｅｐ１９）のでレスポンススケジュール回路ＳＣＨはレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６を、レスポンス信号ＲｓＭｕｘ０を通じて情報処理装置ＣＰＵ＿ＣＨＩＰへ送信する（図２３：Ｓｔｅｐ２０）。
【０１９８】
メモリ制御回路ＤＣＭＣは、レスポンスキューＲＥＳＱ１内にレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６を受け取るための空き状態のレスポンスキューを前もって確保しているため、レスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ６はレスポンスキューＲＥＳＱ１へ格納される。
【０１９９】
メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｏ内のレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６が情報処理装置ＣＰＵ＿ＣＨＩＰへ送信されると、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｏ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ２１）。また、メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｏ内のレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６が情報処理装置ＣＰＵ＿ＣＨＩＰへ送信される（図２３：Ｓｔｅｐ２２）と、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ０間のデータ転送は完了する（図２３：Ｓｔｅｐ２３）。
【０２００】
また、メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｏ内のレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１が情報処理装置ＣＰＵ＿ＣＨＩＰへ送信されると、メモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮがレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１を受け取り、レスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１に含まれている識別番号ＩＤ値１とレスポンス番号ＲｅｓＮ値１６を取り出し、レイテンシ調整回路ＬＣＨＣＫへ送付する。レイテンシ調整回路ＬＣＨＣＫは、これらの識別番号ＩＤ値１とレスポンス番号ＲｅｓＮ値１６によってリクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１のレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１が返ってきたことを知り、レイテンシの測定を終了する。レイテンシ調整回路ＬＣＨＣＫは、レイテンシの測定結果とコンフィグレーション回路ＣＯＮＦＩＧ内のレイテンシレジスタＬＴＲＥＧへ設定されている識別番号ＩＤ値１に対応するレイテンシＬａｔＢａｎｋ値８クロックサイクルと比較する。比較した結果、その差分が許容範囲を超えていれば、レイテンシ調整回路ＬＣＨＣＫは、今後、発生するリードリクエストに対する測定したレイテンシがレイテンシＬａｔＢａｎｋ値８クロックサイクルと等しくなるようにレイテンシ補正動作を行う。また、比較した結果、その差分が許容範囲以内であればレイテンシ調整回路ＬＣＨＣＫは、レイテンシ補正動作を行わない。なお、レイテンシ補正動作については後述する。
【０２０１】
また、レスポンスキューＲＥＳＱ１へレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ６が格納されると、キュー管理回路ＱＭＧＴは、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２０２】
さらに、レスポンスキューＲＥＳＱ１に格納されているレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６が、情報処理回路ＣＰＵ３へ送信されると、キュー管理回路ＱＭＧＴは、レスポンスキューＲＥＳＱ１へ保持されているレスポンスＲｅｓＲＤ３２ＩＤ１ＳＥＱ１６を削除し、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２０３】
次に、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ１間のデータ転送の一例について説明する。情報処理装置ＣＰＵ＿ＣＨＩＰのメモリ制御回路ＤＣＭＣは、リクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値２、完了通知が不要のバンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ）、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１５、バンクアドレスＢＫ０、ページアドレスＲｏｗ６３を多重化したリクエストＲｅｑＡＣＩＤ２ＳＥＱ１５をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する（図２２：Ｓｔｅｐ１）。リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５がメモリ装置Ｍ０へ入力するとキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ０は、情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｅｑＡＣＩＤ２ＳＥＱ１５を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。また、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５をメモリ装置Ｍ０が受信できないので、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１５をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する。レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１５はレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１５（リクエスト番号ＲＥＱＮ値１５と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。
【０２０４】
レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１５をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１５に含まれる識別番号ＩＤ値２、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１５および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５を発行する（図２２：Ｓｔｅｐ１）。その後、ＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＡＣＩＤ２ＳＥＱ１５に含まれるＩＤ値２と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する（図２２：Ｓｔｅｐ４）。比較結果が不一致のため、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５は、リクエストキュー回路ＲｑＱＸＯへ転送される（図２２：Ｓｔｅｐ１３）。
【０２０５】
次に、リクエストキュー回路ＲｑＱＸＯは格納しているリクエストがリード命令を含むか、あるいは完了通知情報を必要とするリクエストかどうかをチェックする（図２２：Ｓｔｅｐ１４）。リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５はリード命令を含んでおらず、さらに完了通知情報が必要ないリクエストのため、メモリ装置Ｍ０はリクエスト信号ＲｑＭｕｘ１を通じて、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５をメモリ装置Ｍ１へ転送する（図２２：Ｓｔｅｐ１）。リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５がメモリ装置Ｍ１へ入力するとメモリ装置Ｍ１のキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。
【０２０６】
リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ１は、メモリ装置Ｍ０からのリクエストＲｅｑＡＣＩＤ２ＳＥＱ１５を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。また、メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５をメモリ装置Ｍ１が受信できないので、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５の発行直後に、メモリ装置Ｍ１はレスポンス信号ＲｓＭｕｘ１を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１５をメモリ装置Ｍ０へ送信する。
【０２０７】
メモリ装置Ｍ０は、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１５に含まれる識別番号ＩＤ値２、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１５および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５を発行する（図２２：Ｓｔｅｐ１）。
【０２０８】
その後、メモリ装置Ｍ１のＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＡＣＩＤ２ＳＥＱ１５に含まれるＩＤ値２と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２を比較する（図２２：Ｓｔｅｐ４）。比較結果が一致したため、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５は、リクエストキュー回路ＲｑＱＸＩへ転送される（図２２：Ｓｔｅｐ５）。次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストがリード命令を含むか、あるいは完了通知情報を必要とするリクエストかどうかをチェックする（図２２：Ｓｔｅｐ６）。リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５はリード命令を含んでおらず、さらに完了通知情報が必要ないリクエストのため、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストＲｅｑＡＣＩＤ２ＳＥＱ１５をメモリ回路Ｍｅｍ１へ転送する（図２２：Ｓｔｅｐ１１）。メモリ回路Ｍｅｍ１はリクエストＲｅｑＡＣＩＤ２ＳＥＱ１５に従って動作する（図２２：Ｓｔｅｐ１２）。具体的には、メモリ回路Ｍｅｍ１のコマンドデコーダＣｍｄＤｅｃはバンクアクティブ命令ＢＡを解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＡＮＫ０が選択され、メモリバンクＮＶ１ＢＡＮＫ０のページアドレスバッファＰａｄＬａｔへページアドレス６３が格納され、ページデコーダＰａｇｅＤｅｃへ入力される。その後メモリアレイ回路ＮＶ１Ｂｋ０内のページアドレス６３に接続されているメモリセルが活性化され、特に限定しないが１ｋＢｙｔｅ分のデータがデータバッファＤａｔａＬａｔへ転送される（図２２：Ｓｔｅｐ１２）。
【０２０９】
情報処理装置ＣＰＵ＿ＣＨＩＰのメモリ制御回路ＤＣＭＣは、タイミングレジスタＭ１ＴＲＥＧに設定されているｔｍ１ＲＣＤ（バンクアクティブ命令とリードおよびライト命令の最小時間間隔）の値１６に従い、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１５転送後の１６クロックサイクル以降に、３２バイトデータのリード命令ＲＤ３２を含むリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６（リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値２、３２バイトデータのリード命令ＲＤ３２、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ）、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１６、バンクアドレスＢＫ０およびカラムアドレスＣｏｌ３２から構成される）をメモリ装置Ｍ０へ転送するための動作を行う。
【０２１０】
先ず、レスポンスキューＲＥＳＱ１内の空き状態のレスポンスキューの一部へリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１６と等しいレスポンス番号ＲｅｓＮ値１６をコピーし、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６を受け取るために必要な空き状態のレスポンスキューを前もって確保する。
【０２１１】
次にリクエスト出力回路ＲＱＯＵＴは、リクエスト信号ＲｑＭｕｘ０を通じて、ＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する（図２２：Ｓｔｅｐ１）。また、リクエスト出力回路ＲＱＯＵＴはリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１６をレイテンシ調整回路ＬＣＨＣＫへ転送し、保持させる。次に、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６の転送と同時に、レイテンシ調整回路ＬＣＨＣＫはリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６に関するレイテンシの測定を開始する（図２２：Ｓｔｅｐ１）。リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６がメモリ装置Ｍ０へ入力するとキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。
【０２１２】
リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ０は情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。また、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６をメモリ装置Ｍ０が受信できないため、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１６をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する。
【０２１３】
レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１６をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１６に含まれる識別番号ＩＤ値２、リード命令ＲＤ、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１６および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６を発行する（図２２：Ｓｔｅｐ１）。
【０２１４】
その後、メモリ装置Ｍ０のＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＲＤ３２ＩＤ１ＳＥＱ１６に含まれるＩＤ値２と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する（図２２：Ｓｔｅｐ４）。比較結果は不一致のためリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６はリクエストキュー回路ＲｑＱＸＯへ転送される（図２２：Ｓｔｅｐ１３）。次に、リクエストキュー回路ＲｑＱＸＯは格納しているリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６がリード命令を含むリクエストか、あるいは完了通知情報を必要とするリクエストかどうかをチェックする（図２２：Ｓｔｅｐ１４）。リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６はリード命令を含んでいるため、リクエストキュー回路ＲｑＱＸＯはレスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあるかをチェックする（図２２：Ｓｔｅｐ１５）。レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ。
【０２１５】
レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあれば、リクエストキュー回路ＲｑＱＸＯはリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１６を、レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューへコピーし、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６を受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２２：Ｓｔｅｐ１６）。リクエストキュー回路ＲｑＱＸＯがレスポンスキュー回路ＲｓＱｐの予約されていない空き状態のレスポンスキューを予約した場合、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｏ内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ１６）。
【０２１６】
次に、メモリ装置Ｍ０はリクエスト信号ＲｑＭｕｘ１を通じて、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６をメモリ装置Ｍ１へ転送する（図２２：Ｓｔｅｐ１）。リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６がメモリ装置Ｍ１へ入力するとメモリ装置Ｍ１のキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ１は、メモリ装置Ｍ０からのリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。
【０２１７】
また、メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６をメモリ装置Ｍ１が受信できないので、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６の発行直後に、メモリ装置Ｍ１はレスポンス信号ＲｓＭｕｘ１を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１６をメモリ装置Ｍ０へ送信する。メモリ装置Ｍ０は、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１６に含まれる識別番号ＩＤ値２、リード命令ＲＤ３２、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１６および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６を発行する（図２２：Ｓｔｅｐ１）。その後、メモリ装置Ｍ１のＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６に含まれるＩＤ値２と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２を比較する（図２２：Ｓｔｅｐ４）。
【０２１８】
比較結果が一致したため、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６は、リクエストキュー回路ＲｑＱＸＩへ転送される（図２２：Ｓｔｅｐ５）。次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６がリード命令を含むリクエストか、あるいは完了通知情報を必要とするリクエストかどうかをチェックする（図２２：Ｓｔｅｐ６）。リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６はリード命令を含んでいるため、リクエストキュー回路ＲｑＱＸＩは、レスポンスキュー回路ＲｓＱｏ内に、予約されていない空き状態のレスポンスキューがあるかをチェックする（図２２：Ｓｔｅｐ７）。レスポンスキュー回路ＲｓＱｏ内に予約されていない空き状態のレスポンスキューがなければ、予約されていない空き状態のレスポンスキューができるまでリクエストキュー回路ＲｑＱＸＩは、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６の転送を中断する。レスポンスキュー回路ＲｓＱｏに予約されていない空き状態のレスポンスキューがあれば、リクエストキュー回路ＲｑＱＸＩは、レスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキューへリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１６をコピーし、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６に対応したメモリ回路Ｍｅｍ１からのリードデータを受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２２：Ｓｔｅｐ８）。
【０２１９】
リクエストキュー回路ＲｑＱＸＩがレスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキューを予約した場合、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｏ内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ８）。次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６をメモリ回路Ｍｅｍ１へ転送する（図２２：Ｓｔｅｐ９）。メモリ回路Ｍｅｍ１はリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６に従って動作する（図２２：Ｓｔｅｐ１０）。具体的には、３２バイトデータリード命令ＲＤ３２がコマンド信号Ｃｏｍｍａｎｄから、バンクアドレス０およびカラムアドレス３２が、アドレス信号Ａｄｄｒｅｓｓよりメモリ回路Ｍｅｍ１へ送信される。コマンドデコーダＣｍｄＤｅｃは３２バイトデータリード命令ＲＤ３２を解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＡＮＫ０が選択され、メモリバンクＮＶ１ＢＡＮＫ０のカラムアドレスバッファＣＡｄｄＬａｔへカラムアドレス３２が格納され、カラムデコーダＣｏｌＤｅｃへ入力される。
【０２２０】
その後、カラムアドレス３２を開始アドレスとして、３２バイト分のデータがメモリバンクＮＶ１ＢＡＮＫ０のデータバッファＤａｔａＬａｔから読み出され、データ制御回路ＤａｔａＣｏｎｔを介してリードデータバッファＲＤａｔａＬａｔへ格納される。その後、リードデータバッファＲＤａｔａＬａｔより読み出された３２バイト分のデータは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２（ＩＤレジスタ値２と等しい値）、３２バイトデータのリード命令ＲＤ３２、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ）、リードデータ長ＲＤＬ値３２、レスポンス番号ＲｅｓＮ値１６（リクエスト番号ＲｅｑＮ値１６と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されて、レスポンスキュー制御回路ＲｓＣＴ内のレスポンスキュー回路ＲｓＱｏのレスポンスキューへレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６としてエントリされる（図２３：Ｓｔｅｐ１７）。
【０２２１】
メモリ装置Ｍ１のキューチェック回路ＲＳＱＭは、メモリ装置Ｍ１のレスポンスキュー回路ＲｓＱｏへレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６がエントリされると、レスポンスキュー回路ＲｓＱｏ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ１８）。次にメモリ装置Ｍ１のレスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスに対するレスポンス優先順位を決定する（図２３：Ｓｔｅｐ１９）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスはＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６のみのため、レスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６のレスポンス優先順位が最も高い（図２３：Ｓｔｅｐ１９）ので、レスポンススケジュール回路ＳＣＨはレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６を、レスポンス信号ＲｓＭｕｘ１を通じてメモリ装置Ｍ０へ送信する（図２３：Ｓｔｅｐ２０）。
【０２２２】
その後、メモリ装置Ｍ１のキューチェック回路ＲＳＱＭは、再度、レスポンスキュー回路ＲｓＱｏ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ２１）。また、メモリ装置Ｍ１のレスポンスキュー回路ＲｓＱｏ内のレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１は、情報処理装置ＣＰＵ＿ＣＨＩＰへ送信される前に（図２３：Ｓｔｅｐ２２）、メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへ転送される（図２３：Ｓｔｅｐ１７）。
【０２２３】
メモリ装置Ｍ０は、レスポンスキュー回路ＲｓＱｐ内にレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６を受け取るための空き状態のレスポンスキューを前もって確保しているため、レスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６はメモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへ格納される（図２３：Ｓｔｅｐ１７）。メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｏへレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６がエントリされると、メモリ装置Ｍ０のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ１８）。次にメモリ装置Ｍ０のレスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスに対するレスポンス優先順位を決定する（図２３：Ｓｔｅｐ１９）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスはＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６のみのため、レスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６のレスポンス優先順位が最も高い（図２３：Ｓｔｅｐ１９）ので、レスポンススケジュール回路ＳＣＨはレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６を、レスポンス信号ＲｓＭｕｘ０を通じて情報処理装置ＣＰＵ＿ＣＨＩＰへ送信する（図２３：Ｓｔｅｐ２０）。メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐ内のレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６が情報処理装置ＣＰＵ＿ＣＨＩＰへ完全に送信されると、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内の、すでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ２１）。
【０２２４】
情報処理装置ＣＰＵ＿ＣＨＩＰはレスポンスキュー回路ＲｓＱｐ内にレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６を受け取るための空き状態のレスポンスキューを前もって確保しているため、レスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６はレスポンス入力回路ＲＳＩＮへ格納される。メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｏ内のレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６が情報処理装置ＣＰＵ＿ＣＨＩＰへ送信される（図２３：Ｓｔｅｐ２２）と、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ０間のデータ転送は完了する（図２３：Ｓｔｅｐ２３）。メモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮがレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６を受け取ると、レスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６に含まれている識別番号ＩＤ値２とレスポンス番号ＲｅｓＮ値１６を取り出し、レイテンシ調整回路ＬＣＨＣＫへ送付する。レイテンシ調整回路ＬＣＨＣＫは、これらの識別番号ＩＤ値２とレスポンス番号ＲｅｓＮ値１６によってリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６のレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６が返ってきたことを知り、レイテンシの測定を終了する。
【０２２５】
レイテンシ調整回路ＬＣＨＣＫは、レイテンシの測定結果とコンフィグレーション回路ＣＯＮＦＩＧ内のレイテンシレジスタＬＴＲＥＧへ設定されている識別番号ＩＤ値２に対応するレイテンシＬａｔＢａｎｋ値１２クロックサイクルと比較する。比較した結果、その差分が許容範囲を超えていれば、レイテンシ調整回路ＬＣＨＣＫは、今後のリードリクエストに対する測定したレイテンシがレイテンシＬａｔＢａｎｋ値１２クロックサイクルと等しくなるようにレイテンシ補正動作を行う。また、比較した結果、その差分が許容範囲以内であればレイテンシ調整回路ＬＣＨＣＫは、レイテンシ補正動作を行わない。
【０２２６】
また、レスポンスキューＲＥＳＱ１へレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６が格納されると、キュー管理回路ＱＭＧＴは、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２２７】
さらに、レスポンスキューＲＥＳＱ１に格納されているレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６が、情報処理回路ＣＰＵ３へ送信されると、キュー管理回路ＱＭＧＴは、レスポンスキューＲＥＳＱ１へ保持されているレスポンスＲｅｓＲＤ３２ＩＤ２ＳＥＱ１６を削除し、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２２８】
次に、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ２間のデータ転送の一例について説明する。情報処理装置ＣＰＵ＿ＣＨＩＰのメモリ制御回路ＤＣＭＣは、リクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値３、完了通知が必要なバンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ）、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１５、バンクアドレスＢＫ０、ページアドレスＲｏｗ６３を多重化した完了通知が必要なリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５をメモリ装置Ｍ０へ送信する前に、先ず、レスポンスキューＲＥＳＱ１内の空き状態のレスポンスキューの一部へリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５内の識別番号ＩＤ値３とリクエスト番号ＲｅｑＮ値１５と等しいレスポンス番号ＲｅｓＮ値１５をコピーし、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５に対応した完了通知情報を含んだレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を受け取るために必要な空き状態のレスポンスキューを前もって確保する。
【０２２９】
次に、メモリ制御回路ＤＣＭＣはリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する（図２２：Ｓｔｅｐ１）。リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５がメモリ装置Ｍ０へ入力するとキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ０は、情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。また、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５をメモリ装置Ｍ０が受信できないので、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１５をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する。レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１５はレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値３、バンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１５（リクエスト番号ＲｅｑＮ値１５と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。
【０２３０】
レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１５をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１５に含まれる識別番号ＩＤ値２、バンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１５および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を発行する（図２２：Ｓｔｅｐ１）。
【０２３１】
その後、メモリ装置Ｍ０のＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５に含まれるＩＤ値３と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する（図２２：Ｓｔｅｐ４）。比較結果が不一致のため、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５は、外部リクエストキュー回路ＲｑＱＸＯへ転送される（図２２：Ｓｔｅｐ１３）。次に、リクエストキュー回路ＲｑＱＸＯは格納しているリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５がリード命令を含むリクエストか、あるいは完了通知情報が必要なリクエストかどうかをチェックする（図２２：Ｓｔｅｐ１４）。
【０２３２】
リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５は完了通知が必要なバンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎを含んでいるため、リクエストキュー回路ＲｑＱＸＯはレスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあるかをチェックする（図２２：Ｓｔｅｐ１５）。レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ。
【０２３３】
レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあれば、リクエストキュー回路ＲｑＱＸＯはリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５内の識別番号ＩＤ値３とリクエスト番号ＲｅｑＮ値１５を、レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューへコピーし、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５に対応した完了通知情報を含んだレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２２：Ｓｔｅｐ１６）。リクエストキュー回路ＲｑＱＸＯのレスポンスキュー回路ＲｓＱｐの予約されていない空き状態のレスポンスキューを予約した場合、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ１６）。
【０２３４】
次に、メモリ装置Ｍ０はリクエスト信号ＲｑＭｕｘ１を通じて、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５をメモリ装置Ｍ１へ転送する（図２２：Ｓｔｅｐ１）。リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５がメモリ装置Ｍ１へ入力するとメモリ装置Ｍ１のキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ１は、メモリ装置Ｍ０からのリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。
【０２３５】
また、メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５をメモリ装置Ｍ１が受信できないので、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５の発行直後に、メモリ装置Ｍ１はレスポンス信号ＲｓＭｕｘ１を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１５をメモリ装置Ｍ０へ送信する。メモリ装置Ｍ０は、レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１５に含まれる識別番号ＩＤ値３、バンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１５および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５をメモリ装置Ｍ１へ発行する（図２２：Ｓｔｅｐ１）。その後、メモリ装置Ｍ１のＩＤ比較回路ＣＰＱは、自身のリクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５に含まれるＩＤ値３と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２を比較する（図２２：Ｓｔｅｐ４）。
【０２３６】
比較結果が不一致のため、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５は、リクエストキュー回路ＲｑＱＸＯへ転送される（図２２：Ｓｔｅｐ１３）。次に、リクエストキュー回路ＲｑＱＸＯは格納しているリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５がリード命令を含むか、あるいは完了通知が必要な命令を含むかどうかをチェックする（図２２：Ｓｔｅｐ１４）。
【０２３７】
リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５は完了通知が必要なバンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎを含んでいるため、リクエストキュー回路ＲｑＱＸＯはレスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあるかをチェックする（図２２：Ｓｔｅｐ１５）。レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ。
【０２３８】
レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあれば、リクエストキュー回路ＲｑＱＸＯはリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５内の識別番号ＩＤ値３とリクエスト番号ＲｅｑＮ値１５を、レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューへコピーし、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５に対応した完了通知情報を含んだレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２２：Ｓｔｅｐ１６）。
【０２３９】
リクエストキュー回路ＲｑＱＸＯのレスポンスキュー回路ＲｓＱｐの予約されていない空き状態のレスポンスキューを予約した場合、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内の、すでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ１６）。
【０２４０】
次に、メモリ装置Ｍ１はリクエスト信号ＲｑＭｕｘ２を通じて、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５をメモリ装置Ｍ２へ転送する（図２２：Ｓｔｅｐ１）。リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５がメモリ装置Ｍ２へ入力するとメモリ装置Ｍ２のキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。メモリ装置Ｍ２のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ２は、メモリ装置Ｍ０からのリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。
【０２４１】
また、メモリ装置Ｍ２のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５をメモリ装置Ｍ２が受信できないので、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５の発行直後に、メモリ装置Ｍ２はレスポンス信号ＲｓＭｕｘ２を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１５をメモリ装置Ｍ１へ送信する。メモリ装置Ｍ１は、レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１５に含まれる識別番号ＩＤ値３、バンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１５および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５をメモリ装置Ｍ２へ発行する（図２２：Ｓｔｅｐ１）。
【０２４２】
その後、メモリ装置Ｍ２のＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５に含まれるＩＤ値３と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値３を比較する（図２２：Ｓｔｅｐ４）。比較結果が一致したため、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５は、リクエストキュー回路ＲｑＱＸＩへ転送される（図２２：Ｓｔｅｐ５）。次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストがリード命令を含むか、あるいは完了通知が必要な命令を含むかどうかをチェックする（図２２：Ｓｔｅｐ６）。リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５は完了通知が必要なバンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎを含んでいるため、リクエストキュー回路ＲｑＱＸＩは、レスポンスキュー回路ＲｓＱｏ内に、予約されていない空き状態のレスポンスキューがあるかをチェックする（図２２：Ｓｔｅｐ７）。レスポンスキュー回路ＲｓＱｏ内に予約されていない空き状態のレスポンスキューがなければ、予約されていない空き状態のレスポンスキューができるまでリクエストキュー回路ＲｑＱＸＩは、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５の転送を中断する。レスポンスキュー回路ＲｓＱｏに予約されていない空き状態のレスポンスキューがあれば、リクエストキュー回路ＲｑＱＸＩは、レスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキューへリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５内の識別番号ＩＤ値３とリクエスト番号ＲｅｑＮ値１５をコピーし、リクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５に対応した完了通知情報を含んだレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２２：Ｓｔｅｐ８）。
【０２４３】
リクエストキュー回路ＲｑＱＸＩがレスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキューを予約した場合、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｏ内の、すでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ８）。
【０２４４】
次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５をメモリ回路Ｍｅｍ２へ転送する（図２２：Ｓｔｅｐ１１）。メモリ回路Ｍｅｍ２はリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５に従って動作する（図２２：Ｓｔｅｐ１２）。具体的には、メモリ回路Ｍｅｍ２のコマンドデコーダＣｍｄＤｅｃはバンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎを解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ２ＢＡＮＫ０が選択され、メモリバンクＮＶ２ＢＡＮＫ０のページアドレスバッファＰａｄＬａｔへページアドレス６３が格納され、ページデコーダＰａｇｅＤｅｃへ入力される。その後メモリアレイ回路ＮＶ２Ｂｋ０内のページアドレス６３に接続されているメモリセルが活性化され、特に限定しないが１ｋＢｙｔｅ分のデータが２５μｓｅｃ後にデータバッファＤａｔａＬａｔへ転送される（図２２：Ｓｔｅｐ１２）。１ｋＢｙｔｅ分のデータがデータバッファＤａｔａＬａｔへ転送されると、バンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎが完了したことを示す完了通知情報Ｃｏｍｐｌｅｔｉｏｎへレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値３（ＩＤレジスタＩＤＲ値３と等しい値）、バンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ）、レスポンス番号ＲｅｓＮ値１５（リクエスト番号ＲｅｑＮ値１５と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されて、レスポンスキュー制御回路ＲｓＣＴ内のレスポンスキューＲｓＱｏのレスポンスキューへレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５としてエントリされる（図２３：Ｓｔｅｐ１７）。
【０２４５】
メモリ装置Ｍ２のキューチェック回路ＲＳＱＭは、メモリ装置Ｍ２のレスポンスキュー回路ＲｓＱｏへレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５がエントリされると、レスポンスキュー回路ＲｓＱｏ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ１８）。次にメモリ装置Ｍ２のレスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスに対するレスポンス優先順位を決定する（図２３：Ｓｔｅｐ１９）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスはＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５のみのため、レスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５のレスポンス優先順位が最も高い（図２３：Ｓｔｅｐ１９）ので、レスポンススケジュール回路ＳＣＨはレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を、レスポンス信号ＲｓＭｕｘ２を通じてメモリ装置Ｍ１へ送信する（図２３：Ｓｔｅｐ２０）。メモリ装置Ｍ２のレスポンスキュー回路ＲｓＱｏ内のレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５がメモリ装置Ｍ１へ送信されると、メモリ装置Ｍ１のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｏ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ２１）。
【０２４６】
メモリ装置Ｍ１は、レスポンスキュー回路ＲｓＱｐ内にメモリ装置Ｍ２からのレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を受け取るための空き状態のレスポンスキューを前もって確保しており、情報処理装置ＣＰＵ＿ＣＨＩＰへ送信される前に（図２３：Ｓｔｅｐ２２）、メモリ装置Ｍ１のレスポンスキュー回路ＲｓＱｐへ転送される（図２３：Ｓｔｅｐ１７）。
【０２４７】
メモリ装置Ｍ１のレスポンスキュー回路ＲｓＱｐへレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５がエントリされると、メモリ装置Ｍ１のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ１８）。次にメモリ装置Ｍ１のレスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスに対するレスポンス優先順位を決定する（図２３：Ｓｔｅｐ１９）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５のみのため、レスポンＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５のレスポンス優先順位が最も高い（図２３：Ｓｔｅｐ１９）ので、レスポンススケジュール回路ＳＣＨはレスポンＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５をレスポンス信号ＲｓＭｕｘ１からメモリ装置Ｍ０へ送信する（図２３：Ｓｔｅｐ２０）。
【０２４８】
メモリ装置Ｍ１のレスポンスキュー回路ＲｓＱｏ内のレスポンスレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５がメモリ装置Ｍ１へ送信されると、メモリ装置Ｍ１のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｏ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ２１）。
【０２４９】
メモリ装置Ｍ０は、レスポンスキュー回路ＲｓＱｐ内にメモリ装置Ｍ１からのレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を受け取るための空き状態のレスポンスキューを前もって確保しており、レスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５は情報処理装置ＣＰＵ＿ＣＨＩＰへ送信される前に（図２３：Ｓｔｅｐ２２）、メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへ転送される（図２３：Ｓｔｅｐ１７）。メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５がエントリされると、メモリ装置Ｍ０のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ１８）。次にメモリ装置Ｍ０のレスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスに対するレスポンス優先順位を決定する（図２３：Ｓｔｅｐ１９）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５のみのため、レスポンＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５のレスポンス優先順位が最も高い（図２３：Ｓｔｅｐ１９）ので、レスポンススケジュール回路ＳＣＨはレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を、レスポンス信号ＲｓＭｕｘ０を通じて情報処理装置ＣＰＵ＿ＣＨＩＰへ送信する（図２３：Ｓｔｅｐ２０）。
【０２５０】
メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐ内のレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５が情報処理装置ＣＰＵ＿ＣＨＩＰへ完全に送信されると、メモリ装置Ｍ０のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内の、すでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ２１）。
【０２５１】
情報処理装置ＣＰＵ＿ＣＨＩＰはレスポンスキュー回路ＲＥＳＱ１内にレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を受け取るための空き状態のレスポンスキューを前もって確保しているため、レスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５は情報処理装置ＣＰＵ＿ＣＨＩＰのレスポンス入力回路ＲＳＩＮへ入力し、レスポンスキュー回路ＲＥＳＱ１へ格納される（図２３：Ｓｔｅｐ２２、Ｓｔｅｐ２３）。
【０２５２】
メモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮがレスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５を受け取ると、レスポンスＲｅｓＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５に含まれている識別番号ＩＤ値３とレスポンス番号ＲｅｓＮ値１５と、完了通知情報Ｃｏｍｐｌｅｔｉｏｎを取り出し、リクエスト出力回路ＲＱＯＵＴへ送付する。リクエスト出力回路ＲＱＯＵＴは、これらの情報識別番号ＩＤ値３とレスポンス番号ＲｅｓＮ値１５と、完了通知情報ＣｏｍｐｌｅｔｉｏｎによりリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５が完了したことを確認する。
【０２５３】
リクエスト出力回路ＲＱＯＵＴはリクエストＲｅｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３ＳＥＱ１５が完了したことを確認した後、３２バイトデータのリード命令ＲＤ３２を含むリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６（リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値３、３２バイトデータのリード命令ＲＤ３２、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ）、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１６、バンクアドレスＢＫ０およびカラムアドレスＣｏｌ３２から構成される）をメモリ装置Ｍ０へ転送するための動作を行う。
【０２５４】
先ず、レスポンスキューＲＥＳＱ１内の空き状態のレスポンスキューの一部へリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６内の識別番号ＩＤ値３とリクエスト番号ＲｅｑＮ値１６と等しいレスポンス番号ＲｅｓＮ値１６をコピーし、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６を受け取るために必要な空き状態のレスポンスキューを前もって確保する。
【０２５５】
次にリクエスト出力回路ＲＱＯＵＴは、リクエスト信号ＲｑＭｕｘ０を通じて、ＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する（図２２：Ｓｔｅｐ１）。また、リクエスト出力回路ＲＱＯＵＴはリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６内の識別番号ＩＤ値３とリクエスト番号ＲｅｑＮ値１６をレイテンシ調整回路ＬＣＨＣＫへ転送し、保持させる。次に、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６の転送と同時に、レイテンシ調整回路ＬＣＨＣＫはリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６に関するレイテンシの測定を開始する（図２２：Ｓｔｅｐ１）。
【０２５６】
また、リクエスト出力回路ＲＱＯＵＴはリードリクエストＲｅｑＲＤ３２ＩＤ３Ｓｅｑ１６をメモリ装置Ｍ０へ発行したことをキュー管理回路ＱＭＧＴへ通達すると、キュー管理回路ＱＭＧＴは、レスポンスキューＲＥＳＱ１へ保持されているレスポンスＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＲｅｓＩＤ３Ｓｅｑ１０を削除し、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２５７】
リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６がメモリ装置Ｍ０へ入力するとキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ０は情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。また、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６をメモリ装置Ｍ０が受信できないため、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１６をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する。
【０２５８】
レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１６をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓｅｑ１６に含まれる識別番号ＩＤ値３、リード命令ＲＤ３２、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１６および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６を発行する（図２２：Ｓｔｅｐ１）。
【０２５９】
その後、メモリ装置Ｍ０のＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６に含まれるＩＤ値３と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する（図２２：Ｓｔｅｐ４）。比較結果は不一致のためリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６はリクエストキュー回路ＲｑＱＸＯへ転送される（図２２：Ｓｔｅｐ１３）。次に、リクエストキュー回路ＲｑＱＸＯは格納しているリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６がリード命令を含むか、あるいは完了通知が必要な命令を含むかどうかをチェックする（図２２：Ｓｔｅｐ１４）。リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６はリード命令を含んでいるため、リクエストキュー回路ＲｑＱＸＯはレスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあるかをチェックする（図２２：Ｓｔｅｐ１５）。レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ。
【０２６０】
レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあれば、リクエストキュー回路ＲｑＱＸＯはリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６内の識別番号ＩＤ値３とリクエスト番号ＲｅｑＮ値１６を、レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューへコピーし、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６を受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２２：Ｓｔｅｐ１６）。リクエストキュー回路ＲｑＱＸＯがレスポンスキュー回路ＲｓＱｐ内の予約されていない空き状態のレスポンスキューを予約した場合、キューチェック回路ＲＳＱＭはレスポンスキュー回路ＲｓＱｐ内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキュー回路ＲｓＱｐ内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ１６）。
【０２６１】
次に、メモリ装置Ｍ０はリクエスト信号ＲｑＭｕｘ１を通じて、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６をメモリ装置Ｍ１へ転送する（図２２：Ｓｔｅｐ１）。リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６がメモリ装置Ｍ１へ入力するとメモリ装置Ｍ１のキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ１は、メモリ装置Ｍ０からのリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。
【０２６２】
また、メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６をメモリ装置Ｍ１が受信できないので、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６の発行直後に、メモリ装置Ｍ１はレスポンス信号ＲｓＭｕｘ１を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１６をメモリ装置Ｍ０へ送信する。メモリ装置Ｍ０は、レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓｅｑ１６に含まれる識別番号ＩＤ値３、リード命令ＲＤ３２、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１６および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６を発行する（図２２：Ｓｔｅｐ１）。その後、メモリ装置Ｍ１のＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６に含まれるＩＤ値３と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２を比較する（図２２：Ｓｔｅｐ４）。比較結果は不一致のためリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６はリクエストキュー回路ＲｑＱＸＯへ転送される（図２２：Ｓｔｅｐ１３）。次に、リクエストキュー回路ＲｑＱＸＯは格納しているリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６がリード命令を含むか、あるいは完了通知が必要な命令を含むかどうかをチェックする（図２２：Ｓｔｅｐ１４）。リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６はリード命令を含んでいるため、リクエストキュー回路ＲｑＱＸＯはレスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあるかをチェックする（図２２：Ｓｔｅｐ１５）。レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ。
【０２６３】
レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあれば、リクエストキュー回路ＲｑＱＸＯはリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６内の識別番号ＩＤ値３とリクエスト番号ＲｅｑＮ値１６を、レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューへコピーし、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６を受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２２：Ｓｔｅｐ１６）。リクエストキュー回路ＲｑＱＸＯがレスポンスキュー回路ＲｓＱｐ内の予約されていない空き状態のレスポンスキューを予約した場合、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキュー回路ＲｓＱｐ内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ１６）。次に、メモリ装置Ｍ１はリクエスト信号ＲｑＭｕｘ１を通じて、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６をメモリ装置Ｍ２へ転送する（図２２：Ｓｔｅｐ１）。リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６がメモリ装置Ｍ２へ入力するとメモリ装置Ｍ１のキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２２：Ｓｔｅｐ２）。メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ２は、メモリ装置Ｍ１からのリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２２：Ｓｔｅｐ３）。
【０２６４】
また、メモリ装置Ｍ２のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６をメモリ装置Ｍ１が受信できないので、リクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６の発行直後に、メモリ装置Ｍ２はレスポンス信号ＲｓＭｕｘ１を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１６をメモリ装置Ｍ１へ送信する。メモリ装置Ｍ１は、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓｅｑ１６に含まれる識別番号ＩＤ値２、リード命令ＲＤ３２、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１６および受信不可能情報ＮＯＡＣＣによって、再度、メモリ装置Ｍ２へリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６を発行する（図２２：Ｓｔｅｐ１）。その後、メモリ装置Ｍ２のＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｅｑＲＤ３２ＩＤ２ＳＥＱ１６に含まれるＩＤ値２と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２を比較する（図２２：Ｓｔｅｐ４）。
【０２６５】
比較結果が一致したため、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６は、リクエストキュー回路ＲｑＱＸＩへ転送される（図２２：Ｓｔｅｐ５）。次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６がリード命令を含むか、あるいは完了通知情報を必要とする命令を含むかどうかをチェックする（図２２：Ｓｔｅｐ６）。リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６はリード命令を含んでいるため、リクエストキュー回路ＲｑＱＸＩは、レスポンスキュー回路ＲｓＱｏ内に、予約されていない空き状態のレスポンスキューがあるかをチェックする（図２２：Ｓｔｅｐ７）。レスポンスキュー回路ＲｓＱｏ内に予約されていない空き状態のレスポンスキューがなければ、予約されていない空き状態のレスポンスキューができるまでリクエストキュー回路ＲｑＱＸＩは、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６の転送を中断する。レスポンスキュー回路ＲｓＱｏに予約されていない空き状態のレスポンスキューがあれば、リクエストキュー回路ＲｑＱＸＩは、レスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキューへリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６内の識別番号ＩＤ値３とリクエスト番号ＲｅｑＮ値１６をコピーし、リクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６に対応したメモリ回路Ｍｅｍ２からのリードデータを受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２２：Ｓｔｅｐ８）。
【０２６６】
リクエストキュー回路ＲｑＱＸＩがレスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキューを予約した場合、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｏ内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキュー回路ＲｓＱｏ内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ８）。
【０２６７】
次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６をメモリ回路Ｍｅｍ１へ転送する（図２２：Ｓｔｅｐ９）。メモリ回路Ｍｅｍ２はリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６に従って動作する（図２２：Ｓｔｅｐ１０）。具体的には、３２バイトデータリード命令ＲＤ３２がコマンド信号Ｃｏｍｍａｎｄから、バンクアドレス０およびカラムアドレス３２が、アドレス信号Ａｄｄｒｅｓｓよりメモリ回路Ｍｅｍ２へ送信される。コマンドデコーダＣｍｄＤｅｃは３２バイトデータリード命令ＲＤ３２を解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ２ＢＡＮＫ０が選択され、メモリバンクＮＶ２ＢＡＮＫ０のカラムアドレスバッファＣＡｄｄＬａｔへカラムアドレス３２が格納され、カラムデコーダＣｏｌＤｅｃへ入力される。
【０２６８】
その後、カラムアドレス３２を開始アドレスとして、３２バイト分のデータがメモリバンクＮＶ２ＢＡＮＫ０のデータバッファＤａｔａＬａｔから読み出され、データ制御回路ＤａｔａＣｏｎｔを介してリードデータバッファＲＤａｔａＬａｔへ格納される。その後、リードデータバッファＲＤａｔａＬａｔより読み出された３２バイト分のデータは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値３（ＩＤレジスタ値３と等しい値）、３２バイトデータのリード命令ＲＤ３２、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ）、リードデータ長ＲＤＬ値３２、レスポンス番号ＲｅｓＮ値１６（リクエスト番号ＲｅｑＮ値１６と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されて、レスポンスキュー制御回路ＲｓＣＴ内のレスポンスキュー回路ＲｓＱｏのレスポンスキューへレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６としてエントリされる（図２３：Ｓｔｅｐ１７）。
【０２６９】
メモリ装置Ｍ２のキューチェック回路ＲＳＱＭは、メモリ装置Ｍ２のレスポンスキュー回路ＲｓＱｏへレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６がエントリされると、レスポンスキュー回路ＲｓＱｏ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ１８）。次にメモリ装置Ｍ２のレスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスに対するレスポンス優先順位を決定する（図２３：Ｓｔｅｐ１９）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスはＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６のみのため、レスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６のレスポンス優先順位が最も高い（図２３：Ｓｔｅｐ１９）ので、レスポンススケジュール回路ＳＣＨはレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６を、レスポンス信号ＲｓＭｕｘ１を通じてメモリ装置Ｍ１へ送信する（図２３：Ｓｔｅｐ２０）。その後、メモリ装置Ｍ２のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内の、すでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ２１）。
【０２７０】
メモリ装置Ｍ１は、レスポンスキュー回路ＲｓＱｐ内にレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６を受け取るための空き状態のレスポンスキューを前もって確保しているため、レスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１は、情報処理装置ＣＰＵ＿ＣＨＩＰへ送信される前に（図２３：Ｓｔｅｐ２２）、メモリ装置Ｍ１のレスポンスキュー回路ＲｓＱｐへ転送される（図２３：Ｓｔｅｐ１７）。メモリ装置Ｍ１のレスポンスキュー回路ＲｓＱｐへレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６がエントリされると、メモリ装置Ｍ１のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ１８）。次にメモリ装置Ｍ１のレスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスに対するレスポンス優先順位を決定する（図２３：Ｓｔｅｐ１９）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスはＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６のみのため、レスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６のレスポンス優先順位が最も高い（図２３：Ｓｔｅｐ１９）ので、レスポンススケジュール回路ＳＣＨはレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６を、レスポンス信号ＲｓＭｕｘ１からメモリ装置Ｍ０へ送信する（図２３：Ｓｔｅｐ２０）。その後、メモリ装置Ｍ１のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内の、すでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ２１）。
【０２７１】
メモリ装置Ｍ０は、レスポンスキュー回路ＲｓＱｐ内にレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６を受け取るための空き状態のレスポンスキューを前もって確保しているため、レスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１は、情報処理装置ＣＰＵ＿ＣＨＩＰへ送信される前に（図２３：Ｓｔｅｐ２２）、メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへ転送される（図２３：Ｓｔｅｐ１７）。
【０２７２】
メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６がエントリされると、メモリ装置Ｍ０のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ１８）。次にメモリ装置Ｍ０のレスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスに対するレスポンス優先順位を決定する（図２３：Ｓｔｅｐ１９）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスはＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６のみのため、レスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６のレスポンス優先順位が最も高い（図２３：Ｓｔｅｐ１９）ので、レスポンススケジュール回路ＳＣＨはレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６を、レスポンス信号ＲｓＭｕｘ０を通じて情報処理装置ＣＰＵ＿ＣＨＩＰへ送信する（図２３：Ｓｔｅｐ２０）。
【０２７３】
メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐ内のレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６が情報処理装置ＣＰＵ＿ＣＨＩＰへ送信されると、メモリ装置Ｍ０のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内の、すでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２３：Ｓｔｅｐ２１）。
【０２７４】
情報処理装置ＣＰＵ＿ＣＨＩＰはレスポンスキュー回路ＲＥＳＱ１内にレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６を受け取るための空き状態のレスポンスキューを前もって確保しているため、メモリ装置Ｍ０からのレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６はレスポンス入力回路ＲＳＩＮを介して、レスポンスキュー回路ＲＥＳＱ１内へ格納され、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ２間のデータ転送は完了する（図２３：Ｓｔｅｐ２２、Ｓｔｅｐ２３）。メモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮがレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６を受け取ると、レスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６に含まれている識別番号ＩＤ値３とレスポンス番号ＲｅｓＮ値１６を取り出し、レイテンシ調整回路ＬＣＨＣＫへ送付する。レイテンシ調整回路ＬＣＨＣＫは、これらの識別番号ＩＤ値３とレスポンス番号ＲｅｓＮ値１６によってリクエストＲｅｑＲＤ３２ＩＤ３ＳＥＱ１６のレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６が返ってきたことを知り、レイテンシの測定を終了する。
【０２７５】
レイテンシ調整回路ＬＣＨＣＫは、レイテンシの測定結果とコンフィグレーション回路ＣＯＮＦＩＧ内のレイテンシレジスタＬＴＲＥＧへ設定されている識別番号ＩＤ値３に対応するレイテンシＬａｔＢａｎｋ値１６クロックサイクルと比較する。比較した結果、その差分が許容範囲ＬａｔＲａｎｇｅ値を超えていれば、レイテンシ調整回路ＬＣＨＣＫは、今後のリードリクエストに対する測定したレイテンシがレイテンシＬａｔＢａｎｋ値１６クロックサイクルと等しくなるようにレイテンシ補正動作を行う。また、比較した結果、その差分が許容範囲以内であればレイテンシ調整回路ＬＣＨＣＫは、レイテンシ補正動作を行わない。
【０２７６】
また、レスポンスキューＲＥＳＱ１へレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６が格納されると、キュー管理回路ＱＭＧＴは、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２７７】
さらに、レスポンスキューＲＥＳＱ１に格納されているレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６が、情報処理回路ＣＰＵ３へ送信されると、キュー管理回路ＱＭＧＴは、レスポンスキューＲＥＳＱ１へ保持されているレスポンスＲｅｓＲＤ３２ＩＤ３ＳＥＱ１６を削除し、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２７８】
以上説明したように、リクエストへ識別番号ＩＤおよびリクエスト番号を付加することで、情報処理装置ＣＰＵ＿ＣＨＩＰから各メモリ装置へリクエストが確実に転送される。また、レスポンスへ識別番号ＩＤおよびレスポンス番号を付加することで、各メモリから正しくデータ転送が行えたことを確認でき、情報処理装置ＣＰＵ＿ＣＨＩＰおよびメモリ装置Ｍ０、Ｍ１、Ｍ２の直列接続によって、接続信号数を減少させながらも、情報処理装置ＣＰＵ＿ＣＨＩＰは所望の処理を実行することができる。また、情報処理装置ＣＰＵ＿ＣＨＩＰがメモリモジュールＭＥＭからデータを読み出すために、情報処理装置ＣＰＵ＿ＣＨＩＰからリード命令を含むリクエストＲｅｑＲＤをメモリ装置Ｍ０へ転送する際は、前もって、情報処理装置ＣＰＵ＿ＣＨＩＰのレスポンスキューＲＥＳＱ１内で、まだ予約されていない空き状態のレスポンスキューを予約し、リクエストＲｅｑＲＤに対するレスポンスＲｅｓＲＤを受け取るために必要な空き状態のレスポンスキューを、確保する。また、メモリ装置Ｍ０がリクエストＲｅｑＲＤをメモリ装置Ｍ１へ転送する際は、前もって、メモリ装置Ｍ０のレスポンスキューＲｅｓＱｐ内で予約されていない空き状態のレスポンスキューを予約し、リクエストＲｅｑＲＤに対するレスポンスＲｅｓＲＤを受け取るために必要な空き状態のレスポンスキューを、確保する。また、メモリ装置Ｍ１がリクエストＲｅｑＲＤをメモリ装置Ｍ２へ転送する際は、前もって、メモリ装置Ｍ１のレスポンスキューＲｅｓＱｐ内で予約されていない空き状態のレスポンスキューを予約し、リクエストＲｅｑＲＤに対するレスポンスＲｅｓＲＤを受け取るために必要な空き状態のレスポンスキューを、確保する。このような動作を行うことで、本実施の形態の情報処理システムは、常に、情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｅｑＲＤに対するレスポンスＲｅｓＲＤを転送するために必要な空き状態のレスポンスキューを確保でき、レスポンスＲｅｓＲＤは最短レイテンシで情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０２７９】
さらに、レイテンシを実測し、レイテンシの期待値と比較することで、本実施の形態の情報処理システムが正常に動作しているか判断できる。さらに、レイテンシの実測値とレイテンシの期待値との差分が許容範囲を超えた場合はレイテンシ補正動作を行うことで、常に許容範囲内の低レイテンシで動作させることができる。
【０２８０】
＜読み出しおよび書き込み動作＞
図２４はメモリ制御回路ＤＣＭＣのレイテンシレジスタＬＴＲＥＧ内のメモリ装置Ｍ０のレイテンシＬａｔＢａｎｋ値を８へ、メモリ装置Ｍ１のレイテンシＬａｔＢａｎｋ値を１８へ、メモリ装置Ｍ２のレイテンシＬａｔＢａｎｋ値を２８へ設定し、メモリ装置Ｍ０に関するタイミングレジスタＭ０ＴＲＥＧのｔｍ０ＲＣＤ値を３へ、メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧのｔｍ１ＲＣＤ値を３へ設定し、メモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧのｔｍ２ＲＣＤ値を１０００へ設定した場合の、メモリ装置Ｍ０およびメモリ装置Ｍ１からのデータの読み出し動作と、メモリ装置Ｍ０へのデータの書き込み動作に関する動作波形の一例を示す。また、メモリ制御回路ＤＣＭＣからのリクエストに対する実測レイテンシは、レイテンシレジスタＬＴＲＥＧで設定されたレイテンシＬａｔＢａｎｋと等しく、レイテンシ補正動作は行われない場合の動作波形の一例を示す。
【０２８１】
リクエスト出力回路ＲＱＯＵＴはメモリ装置Ｍ０に関するカウンタＣ０ｄｓとカウンタＣ０ｄｅを装備し、メモリ装置Ｍ１に関するカウンタＣ１ｄｓとカウンタＣ１ｄｅを装備し、メモリ装置Ｍ２に関するカウンタＣ２ｄｓとカウンタＣ２ｄｅを装備している。カウンタＣ０ｄｓはメモリ装置Ｍ０へのリード命令を含むリクエストに対するレスポンスが、レスポンス信号ＲｓＭｕｘ０を通じて、メモリ制御回路ＤＣＭＣへ入力される際の、レスポンスの先頭の時間位置ＲＴｌａｔ０であり、また、カウンタＣ０ｄｅは、メモリ装置Ｍ０へのリード命令を含むリクエストに対するレスポンスが、レスポンス信号ＲｓＭｕｘ０を通じて、メモリ制御回路ＤＣＭＣへ入力される際の、レスポンスの最後尾の時間位置ＲＢｌａｔ０を示すためのカウンタである。つまり、カウンタＣ０ｄｓの値からカウンタＣ０ｄｅの値までの期間は、メモリ装置Ｍ０へのリード命令を含むリクエストに対するレスポンスがレスポンス信号ＲｓＭｕｘ０上へ現れる相対的な時間帯ｍ０ＲｓＤｒを示している。
【０２８２】
また、リクエスト出力回路ＲＱＯＵＴはカウンタＣ０ｄｓおよびＣ０ｄｅへ、メモリ装置Ｍ０へのリード命令を含むリクエストを転送すると同時に、それぞれのカウンタへ、レスポンスの先頭の初期時間位置Ｔｌａｔ０および最後尾の初期時間位置ＲＢｌａｔ０を設定し、後に、クロックＲｑＣＫ０の立ち上がりで、カウンタＣ０ｄｓおよびＣ０ｄｅへ設定されている値を１つずつ減らしていき、レスポンス信号ＲｓＭｕｘ０へ現れる相対的な時間帯ｍ０ＲｓＤｒを更新する。カウンタＣ１ｄｓはメモリ装置Ｍ１へのリード命令を含むリクエストに対するレスポンスが、レスポンス信号ＲｓＭｕｘ０を通じて、メモリ制御回路ＤＣＭＣへ入力される際の、レスポンスの先頭の時間位置Ｒｔｌａｔ１であり、また、カウンタＣ１ｄｅは、メモリ装置Ｍ１へのリード命令を含むリクエストに対するレスポンスが、レスポンス信号ＲｓＭｕｘ０を通じて、メモリ制御回路ＤＣＭＣへ入力される際の、レスポンスの最後尾の時間位置Ｒｂｌａｔ１を示すためのカウンタである。つまり、カウンタＣ１ｄｓの値からカウンタＣ１ｄｅの値までの期間は、メモリ装置Ｍ１へのリード命令を含むリクエストに対するレスポンスがレスポンス信号ＲｓＭｕｘ０上へ現れる相対的な時間帯ｍ１ＲｓＤｒを示している。
【０２８３】
また、リクエスト出力回路ＲＱＯＵＴはカウンタＣ１ｄｓおよびＣ１ｄｅへ、メモリ装置Ｍ１へのリード命令を含むリクエストを転送すると同時に、それぞれのカウンタへ、レスポンスの先頭の初期時間位置Ｔｌａｔ１および最後尾の初期時間位置Ｒｂｌａｔ１を設定し、後に、クロックＲｑＣＫ０の立ち上がりで、カウンタＣ１ｄｓおよびＣ１ｄｅへ設定されている値を１つずつ減らしていき、レスポンス信号ＲｓＭｕｘ０へ現れる相対的な時間帯ｍ１ＲｓＤｒを更新する。カウンタＣ２ｄｓはメモリ装置Ｍ２へのリード命令を含むリクエストに対するレスポンスが、レスポンス信号ＲｓＭｕｘ０を通じて、メモリ制御回路ＤＣＭＣへ入力される際の、レスポンスの先頭の時間位置Ｒｔｌａｔ２であり、また、カウンタＣ２ｄｅは、メモリ装置Ｍ２へのリード命令を含むリクエストに対するレスポンスが、レスポンス信号ＲｓＭｕｘ０を通じて、メモリ制御回路ＤＣＭＣへ入力される際の、レスポンスの最後尾の時間位置Ｒｂｌａｔ２を示すためのカウンタである。つまり、カウンタＣ２ｄｓの値からカウンタＣ２ｄｅの値までの期間は、メモリ装置Ｍ２へのリード命令を含むリクエストに対するレスポンスがレスポンス信号ＲｓＭｕｘ０上へ現れる相対的な時間帯ｍ２ＲｓＤｒを示している。
【０２８４】
また、リクエスト出力回路ＲＱＯＵＴはカウンタＣ２ｄｓおよびＣ２ｄｅへ、メモリ装置Ｍ２へのリード命令を含むリクエストを転送すると同時に、それぞれのカウンタへ、レスポンスの先頭の初期時間位置Ｔｌａｔ２および最後尾の初期時間位置Ｒｂｌａｔ２を設定し、後に、クロックＲｑＣＫ０の立ち上がりで、カウンタＣ２ｄｓおよびＣ２ｄｅへ設定されている値を１つずつ減らしていき、レスポンス信号ＲｓＭｕｘ０へ現れる相対的な時間帯ｍ２ＲｓＤｒを更新する。カウンタＣ０ｄｓおよびカウンタＣ０ｄｅは、特に限定されないが、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によって０へ初期設定される。
【０２８５】
メモリ制御回路ＤＣＭＣのリクエスト出力回路ＲＱＯＵＴは、リクエスト信号ＲｑＭｕｘ０を通じて、メモリ装置Ｍ０へのリクエストＲｅｑＡＣＩＤ１ＳＥＱ１０をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する。リクエストＲｅｑＡＣＩＤ１ＳＥＱ１０はリクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値１、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１０、バンクアドレスＢＫ０、ページアドレスＲｏｗ６３から構成される。
【０２８６】
メモリ装置Ｍ０へバンクアクティブ命令ＡＣを含むリクエストＲｅｑＡＣＩＤ１ＳＥＱ１０が転送された後、メモリ装置Ｍ０へリードおよびライト命令を含んだリクエストを転送する場合には、最小でｔｍ０ＲＣＤ値３クロックサイクルの時間間隔ｔｒｃｄ０が必要である。リクエスト出力回路ＲＱＯＵＴ内のメモリ装置Ｍ０のカウンタＣ０ｔｒｃｄは、この時間間隔ｔｒｃｄ０をチェックするためのカウンタである。カウンタＣ０ｔｒｃｄは、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によってｔｍ０ＲＣＤ値３へ初期設定される。リクエストＲｅｑＡＣＩＤ１ＳＥＱ１０を転送した際に、カウンタＣ０ｔｒｃｄは、クロックＲｑＣＫ０の立ち上がりで、その値を１つずつ減らし、カウンタＣ０ｔｒｃｄの値が０になった場合、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ０へリードおよびライト命令を含んだリクエストを転送することができる。
【０２８７】
メモリ装置Ｍ０は、リクエスト出力回路ＲＱＯＵＴからのリクエストＲｅｑＡＣＩＤ１ＳＥＱ１０に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ０はリクエストＲｅｑＡＣＩＤ１ＳＥＱ１０に含まれるバンクアクティブ命令ＡＣ、バンクアドレスＢＫ０、ページアドレスＲｏｗ６３を利用し、メモリ回路ＭＢａｎｋ０内のロウアドレス６３に接続されているメモリセルを活性化し、１ｋＢｙｔｅ分のデータをセンスアンプＳｅｎｓｅＡｍｐへ転送する。次に、リクエスト出力回路ＲＱＯＵＴがリクエストＲｅｑＡＣＩＤ１ＳＥＱ１０に続いて、メモリ装置Ｍ１へのリクエストＲｅｑＡＣＩＤ２ＳＥＱ１１をメモリ装置Ｍ０へ転送する。リクエストＲｅｑＡＣＩＤ２ＳＥＱ１１は、リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値２、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値２、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１１、バンクアドレスＢＫ０、ページアドレスＲｏｗ６３から構成される。
【０２８８】
メモリ装置Ｍ１へのバンクアクティブ命令ＡＣを含むリクエスＲｅｑＡＣＩＤ２ＳＥＱ１１が転送された後、メモリ装置Ｍ１へリードおよびライト命令を含んだリクエストを転送する場合には、最小でｔｍ１ＲＣＤ値３クロックサイクルの時間間隔ｔｒｃｄ１が必要である。リクエスト出力回路ＲＱＯＵＴ内のメモリ装置Ｍ０のカウンタＣ１ｔｒｃｄは、この時間間隔ｔｒｃｄ１をチェックするためのカウンタである。カウンタＣ１ｔｒｃｄは、特に限定されないが、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によってｔｍ０ＲＣＤ値３へ初期設定される。リクエストＲｅｑＡＣＩＤ２ＳＥＱ１１を転送した際に、カウンタＣ１ｔｒｃｄは、クロックＲｑＣＫ０の立ち上がりで、その値を１つずつ減らし、カウンタＣ１ｔｒｃｄの値が０になった場合、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ１へリードおよびライト命令を含んだリクエストを転送することができる。
【０２８９】
メモリ装置Ｍ０は、リクエスト出力回路ＲＱＯＵＴからのリクエストＲｅｑＡＣＩＤ２ＳＥＱ１１に含まれるＩＤ値２と自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較し、不一致によって、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１１をメモリ装置Ｍ１へ転送する。メモリ装置Ｍ１は、メモリ装置Ｍ０からのリクエストＲｅｑＡＣＩＤ２ＳＥＱ１１に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ１は、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１１に含まれるバンクアクティブ命令ＡＣ、バンクアドレスＢＫ０、ページアドレスＲｏｗ６３を利用し、メモリ回路ＮＶ１ＢＫ０内のロウアドレス６３に接続されているメモリセルを活性化し、１ｋＢｙｔｅ分のデータをデータ制御回路ＤａｔａＣｏｎｔへ転送する。
【０２９０】
次に、リクエスト出力回路ＲＱＯＵＴから、リクエストＲｅｑＡＣＩＤ２ＳＥＱ１１に続いて、メモリ装置Ｍ０への８バイトデータのリード命令ＲＤ８を含むリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２が出力される際の動作を説明する。リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２は、リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値１、８バイトデータのリード命令ＲＤ８、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１２、バンクアドレスＢＫ０およびカラムアドレスＣｏｌ３２から構成される。リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ０への直近のリクエストがリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２であると判定した際に、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２に対するレスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２の先頭の初期時間位置Ｔｌａｔ０および最後尾の初期時間位置Ｂｌａｔ０を計算し、それぞれレジスタＲｅｇＴｌａｔ０およびＲｅｇ  Ｂｌａｔ０へ保存する。
【０２９１】
特に限定しないが、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２に対するレスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２の時間位置Ｔｌａｔ０は、初期時間位置Ｔｌａｔ０＝レイテンシｍ０Ｌａｔ値＝８となり、時間位置Ｂｌａｔ０は、以下の様に表すことができる。
【０２９２】
時間位置Ｂｌａｔ０
＝（レイテンシｍ０Ｌａｔ値）＋｛（（（共通レスポンス部ＣＭＮＲＥＳＦのバイト数ＣＭＮＢＬ＋リードデータのバイト数ＲＤＢＬ）÷レスポンス信号数ＲｓＢＬ（バイト換算））÷２）−１｝
【０２９３】
ここで、レイテンシｍ０Ｌａｔ値＝８、共通レスポンス部ＣＭＮＲＥＳＦのバイト数ＣＭＮＢＬ＝４、リードデータのバイト数ＲＤＢＬ＝８、レスポンス信号数ＲｓＢＬ＝１、のとき、初期時間位置Ｂｌａｔ０＝８＋｛（（（４＋８）÷１）÷２）−１｝＝１３となる。よって、レジスタＲｅｇＴｌａｔ０には初期時間位置Ｔｌａｔ０の値８が、レジスタＲｅｇ  Ｂｌａｔ０には初期時間位置Ｂｌａｔ０の値１３が保存される。
【０２９４】
次に、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ０へのリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２を出力する前に、カウンタＣ０ｄｓ値とカウンタＣ０ｄｅ値がレジスタＲｅｇＴｌａｔ０値とレジスタＲｅｇ  Ｂｌａｔ０値の間に存在するか（ＲｅｇＴｌａｔ０≦Ｃ０ｄｓ≦ＲｅｇＢｌａｔ０、ＲｅｇＴｌａｔ０≦Ｃ０ｅｓ≦ＲｅｇＢｌａｔ０）をチェックし、カウンタＣ１ｄｓ値とカウンタＣ１ｄｅ値がレジスタＲｅｇＴｌａｔ０値とレジスタＲｅｇ  Ｂｌａｔ０値の間に存在するか（ＲｅｇＴｌａｔ０≦Ｃ１ｄｓ≦ＲｅｇＢｌａｔ０、ＲｅｇＴｌａｔ０≦Ｃ１ｅｓ≦ＲｅｇＢｌａｔ０）をチェックし、カウンタＣ２ｄｓ値とカウンタＣ２ｄｅ値がレジスタＲｅｇＴｌａｔ０値とレジスタＲｅｇ  Ｂｌａｔ０値の間に存在するか（ＲｅｇＴｌａｔ０≦Ｃ２ｄｓ≦ＲｅｇＢｌａｔ０、ＲｅｇＴｌａｔ０≦Ｃ２ｅｓ≦ＲｅｇＢｌａｔ０）をチェックする。
【０２９５】
カウンタＣ０ｄｓ値と、カウンタＣ０ｅｓ値と、カウンタＣ１ｄｓ値と、カウンタＣ１ｅｓ値と、カウンタＣ２ｄｓ値と、カウンタＣ２ｅｓ値のすべてが、初期時間位置Ｔｌａｔ１と初期時間位置Ｂｌａｔ１の間に存在しない場合は、メモリ装置Ｍ０へのリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２に対するレスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２がレスポンス信号ＲｓＭｕｘ０上へ現れる時間帯ｍ０ＲｓＤｒと重なる他のレスポンスは存在しないことを示す。一方、カウンタＣ０ｄｓ値と、カウンタＣ０ｅｓ値と、カウンタＣ１ｄｓ値と、カウンタＣ１ｅｓ値と、カウンタＣ２ｄｓ値と、カウンタＣ２ｅｓ値のいずれかが初期時間位置Ｔｌａｔ０と初期時間位置Ｂｌａｔ０の間に存在する場合は、メモリ装置Ｍ０へのリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２に対するレスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２がレスポンス信号ＲｓＭｕｘ０上へ現れる時間帯ｍ０ＲｓＤｒと重なる他のレスポンスは存在することを示す。
【０２９６】
図２４では、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２を出力する直前において、カウンタＣ０ｄｓ値と、カウンタＣ０ｅｓ値と、カウンタＣ１ｄｓ値と、カウンタＣ１ｅｓ値と、カウンタＣ２ｄｓ値と、カウンタＣ２ｅｓ値の値はすべて０であり、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２のレジスタＲｅｇＴｌａｔ０値は８、レジスタＲｅｇＢｌａｔ０値は１３のため、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２は他のレスポンスと重ならないことがわかる。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２が他のレスポンスへ重ならず、且つ、カウンタＣ１ｔｒｃｄの値が０であることを確認し、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２を出力する。また、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２が他のレスポンスと重なった場合は、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２を出力せず、リクエストの出力待ち状態となる。また、リクエスト出力回路ＲＱＯＵＴはリクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２を出力すると同時に、カウンタＣ０ｄｓへレジスタＲｅｇＴｌａｔ０値８を設定し、カウンタＣ０ｄｅへレジスタＲｅｇ  Ｂｌａｔ０値１３を設定する。その後、リクエスト出力回路ＲＱＯＵＴはクロックＲｑＣＫ０の立ち上がりで、カウンタＣ０ｄｓおよびＣ０ｄｅへ設定されている値を１つずつ減らしていき、レスポンス信号ＲｓＭｕｘ０へ現れる相対的な時間帯ｍ０ＲｓＤｒを更新する。
【０２９７】
メモリ装置Ｍ０は、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２を受け取り、このリクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ０はリクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２に含まれるリード命令ＲＤ８、バンクアドレスＢＫ０およびカラムアドレスＣｏｌ３２を利用し、メモリ回路Ｍｅｍ０のメモリバンクＭＢａｎｋ０のセンスアンプＳｅｎｓｅＡｍｐから、カラムアドレス３２を開始アドレスとして、８バイト分のデータを読み出す。
【０２９８】
読み出された８バイト分のデータへは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値１、８バイトデータのリード命令ＲＤ８、マスター番号ＭＩＤ値３、リードデータ長ＲＤＬ値８、レスポンス番号ＲｅｓＮ値１２（リクエスト番号ＲｅｑＮ値１２と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されたレスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２が生成され、レスポンスキューＲｓＱｏを介して、レスポンス信号ＲｓＭｕｘ０からメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ入力される。この際の、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２のレイテンシはレイテンシｍ０Ｌａｔ値８クロックサイクルとなる。
【０２９９】
次に、リクエスト出力回路ＲＱＯＵＴから、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２に続いて、メモリ装置Ｍ１へのリード命令を含んだリクエストＲｅｑＲＤ８ＩＤ２ＳＥＱ１３が出力される際の動作を説明する。リクエストＲｅｑＲＤ８ＩＤ２ＳＥＱ１３は、８バイトデータのリード命令ＲＤ８を含むリクエストであり、リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値２、８バイトデータのリード命令ＲＤ８、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１３、バンクアドレスＢＫ０およびカラムアドレスＣｏｌ３２から構成される。
【０３００】
リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ１への直近のリクエストがリクエストＲｅｑＲＤ８ＩＤ２ＳＥＱ１３であると判定した際に、リクエストＲｅｑＲＤ８ＩＤ２ＳＥＱ１３に対するレスポンスＲｅｓＲＤ８ＩＤ２ＳＥＱ１３の先頭の初期時間位置Ｔｌａｔ１および最後尾の初期時間位置Ｂｌａｔ１を計算し、それぞれレジスタＲｅｇＴｌａｔ１およびＲｅｇ  Ｂｌａｔ１へ保存する。リクエストＲｅｑＲＤ８ＩＤ２ＳＥＱ１３に対するレスポンスＲｅｓＲＤ８ＩＤ２ＳＥＱ１３の時間位置Ｔｌａｔ１は、初期時間位置Ｔｌａｔ１＝レイテンシｍ１Ｌａｔ値＝１８となり、時間位置Ｂｌａｔ１は、以下の様に表すことができる。
【０３０１】
時間位置Ｂｌａｔ１
＝レイテンシｍ１Ｌａｔ値＋｛（（（共通レスポンス部ＣＭＮＲＥＳＦのバイト数ＣＭＮＢＬ＋リードデータのバイト数ＲＤＢＬ）÷レスポンス信号数ＲｓＢＬ（バイト換算））÷２）−１｝
【０３０２】
ここで、レイテンシｍ１Ｌａｔ値＝１８、共通レスポンス部ＣＭＮＲＥＳＦのバイト数ＣＭＮＢＬ＝４、リードデータのバイト数ＲＤＢＬ＝８、レスポンス信号数ＲｓＢＬ＝１、のとき、初期時間位置Ｂｌａｔ１＝１８＋｛（（（４＋８）÷１）÷２）−１｝＝２３となる。従って、レジスタＲｅｇＴｌａｔ１には初期時間位置Ｔｌａｔ１の値１８が、レジスタＲｅｇ  Ｂｌａｔ１には初期時間位置Ｂｌａｔ１の値２３が保存される。
【０３０３】
次に、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ１へのリクエストＲｅｑＲＤ８ＩＤ２ＳＥＱ１３を出力する前に、カウンタＣ０ｄｓ値とカウンタＣ０ｄｅ値がレジスタＲｅｇＴｌａｔ１値とレジスタＲｅｇ  Ｂｌａｔ１値の間に存在するか（ＲｅｇＴｌａｔ１≦Ｃ０ｄｓ≦ＲｅｇＢｌａｔ１、ＲｅｇＴｌａｔ１≦Ｃ０ｅｓ≦ＲｅｇＢｌａｔ１）をチェックし、カウンタＣ１ｄｓ値とカウンタＣ１ｄｅ値がレジスタＲｅｇＴｌａｔ１値とレジスタＲｅｇ  Ｂｌａｔ１値の間に存在するか（ＲｅｇＴｌａｔ１≦Ｃ１ｄｓ≦ＲｅｇＢｌａｔ１、ＲｅｇＴｌａｔ１≦Ｃ１ｅｓ≦ＲｅｇＢｌａｔ１）をチェックし、カウンタＣ２ｄｓ値とカウンタＣ２ｄｅ値がレジスタＲｅｇＴｌａｔ１値とレジスタＲｅｇ  Ｂｌａｔ１値の間に存在するか（ＲｅｇＴｌａｔ１≦Ｃ２ｄｓ≦ＲｅｇＢｌａｔ１、ＲｅｇＴｌａｔ１≦Ｃ２ｅｓ≦ＲｅｇＢｌａｔ１）をチェックする。
【０３０４】
カウンタＣ０ｄｓ値と、カウンタＣ０ｅｓ値と、カウンタＣ１ｄｓ値と、カウンタＣ１ｅｓ値と、カウンタＣ２ｄｓ値と、カウンタＣ２ｅｓ値のすべてが、初期時間位置Ｔｌａｔ１と初期時間位置Ｂｌａｔ１の間に存在しない場合は、メモリ装置Ｍ１へのリクエストＲｅｑＲＤ８ＩＤ２ＳＥＱ１３に対するレスポンスＲｅｓＲＤ８ＩＤ２ＳＥＱ１３がレスポンス信号ＲｓＭｕｘ０上へ現れる時間帯ｍ１ＲｓＤｒと重なる他のレスポンスは存在しないことを示す。一方、カウンタＣ０ｄｓ値と、カウンタＣ０ｅｓ値と、カウンタＣ１ｄｓ値と、カウンタＣ１ｅｓ値と、カウンタＣ２ｄｓ値と、カウンタＣ２ｅｓ値のいずれかが初期時間位置Ｔｌａｔ１と初期時間位置Ｂｌａｔ１の間に存在する場合は、メモリ装置Ｍ１へのリクエストＲｅｑＲＤ８ＩＤ２ＳＥＱ１３に対するレスポンスＲｅｓＲＤ８ＩＤ２ＳＥＱ１３がレスポンス信号ＲｓＭｕｘ０上へ現れる時間帯ｍ１ＲｓＤｒと重なる他のレスポンスは存在することを示す。
【０３０５】
図２４では、リクエストＲｅｑＲＤ８ＩＤ２ＳＥＱ１３を出力する直前において、カウンタＣ０ｄｓ値は５、カウンタＣ０ｅｓ値は１０、カウンタＣ１ｄｓ値、カウンタＣ１ｅｓ値、カウンタＣ２ｄｓ値およびカウンタＣ２ｅｓ値の値はすべて０であり、レスポンスＲｅｓＲＤ８ＩＤ２ＳＥＱ１３のレジスタＲｅｇＴｌａｔ１値は１８、レジスタＲｅｇＢｌａｔ１値は２３のため、レスポンスＲｅｓＲＤ８ＩＤ２ＳＥＱ１３は他のレスポンスと重ならないことがわかる。
【０３０６】
リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＲＤ８ＩＤ２ＳＥＱ１３が他のレスポンスへ重ならず、且つ、カウンタＣ１ｔｒｃｄの値が０であることを確認し、リクエストＲｅｑＲＤ８ＩＤ２ＥＱ１３をメモリ装置Ｍ０へ出力する。また、レスポンスＲｅｓＲＤ８ＩＤ２ＳＥＱ１３が他のレスポンスと重なった場合は、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｅｑＲＤ８ＩＤ２ＥＱ１３を出力せず、リクエストの出力待ち状態となる。また、リクエスト出力回路ＲＱＯＵＴはリクエストＲｅｑＲＤ８ＩＤ２ＥＱ１３を出力すると同時に、カウンタＣ１ｄｓへレジスタＲｅｇＴｌａｔ１値１８を設定し、カウンタＣ１ｄｅへレジスタＲｅｇ  Ｂｌａｔ１値２３を設定する。その後、リクエスト出力回路ＲＱＯＵＴはクロックＲｑＣＫ０の立ち上がりで、カウンタＣ１ｄｓおよびＣ１ｄｅへ設定されている値を１つずつ減らしていき、レスポンス信号ＲｓＭｕｘ０へ現れる相対的な時間帯ｍ１ＲｓＤｒを更新する。
【０３０７】
メモリ装置Ｍ０は、リクエストＲｅｑＲＤ８ＩＤ２ＥＱ１３を受け取り、このリクエストＲｅｑＲＤ８ＩＤ２ＥＱ１３に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する。両者は一致していないので、メモリ装置Ｍ０はリクエストＲｅｑＲＤ８ＩＤ２ＥＱ１３をメモリ装置Ｍ１へ送信する。メモリ装置Ｍ１は、リクエストＲｅｑＲＤ８ＩＤ２ＥＱ１３を受け取り、このリクエストＲｅｑＲＤ８ＩＤ２ＥＱ１３に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２が一致したことによって、自身へのリクエストであることを確認する。
【０３０８】
次に、メモリ装置Ｍ１はリクエストＲｅｑＲＤ８ＩＤ２ＥＱ１３に含まれるリード命令ＲＤ８、バンクアドレスＢＫ０およびカラムアドレスＣｏｌ３２を利用し、メモリ回路Ｍｅｍ１のメモリバンクＮＶ１Ｂｋ０のデータバッファＤａｔａＬａｔから、カラムアドレス３２を開始アドレスとして、８バイト分のデータを読み出す。読み出された８バイト分のデータへは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、８バイトデータのリード命令ＲＤ８、マスター番号ＭＩＤ値３、リードデータ長ＲＤＬ値８、レスポンス番号ＲｅｓＮ値１３（リクエスト番号ＲｅｑＮ値１３と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されたレスポンスＲｅｓＲＤ８ＩＤ２ＳＥＱ１３が生成され、メモリ装置Ｍ１のレスポンスキューＲｓＱｏを介して、レスポンス信号ＲｓＭｕｘ１からメモリ装置Ｍ０へ送信される。
【０３０９】
レスポンスＲｅｓＲＤ８ＩＤ２ＳＥＱ１３は、メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへ格納され、レスポンス信号ＲｓＭｕｘ０を介してメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ入力される。この際の、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２のレイテンシはレイテンシｍ１Ｌａｔ値１８クロックサイクルとなる。
【０３１０】
次に、リクエスト出力回路ＲＱＯＵＴから、リクエストＲｅｑＲＤ８ＩＤ２ＳＥＱ１３に続いて、メモリ装置Ｍ０へのリード命令を含んだリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１４が出力される際の動作を説明する。リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１４は、リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値１、８バイトデータのリード命令ＲＤ８、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１４、バンクアドレスＢＫ０およびカラムアドレスＣｏｌ３２から構成される。リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ０への直近のリクエストがリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１４であると判定した際に、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１４に対するレスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４の先頭の初期時間位置Ｔｌａｔ０および最後尾の初期時間位置Ｂｌａｔ０を計算し、それぞれレジスタＲｅｇＴｌａｔ０およびＲｅｇ  Ｂｌａｔ０へ保存するリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１４に対するレスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４の時間位置Ｔｌａｔ０は、初期時間位置Ｔｌａｔ０＝レイテンシｍ０Ｌａｔ値＝８となり、時間位置Ｂｌａｔ０は、以下の様に表すことができる。
【０３１１】
時間位置Ｂｌａｔ０
＝レイテンシｍ０Ｌａｔ値＋｛（（（共通レスポンス部ＣＭＮＲＥＳＦのバイト数ＣＭＮＢＬ＋リードデータのバイト数ＲＤＢＬ）÷レスポンス信号数ＲｓＢＬ（バイト換算））÷２）−１｝
【０３１２】
ここで、レイテンシｍ０Ｌａｔ値＝８、共通レスポンス部ＣＭＮＲＥＳＦのバイト数ＣＭＮＢＬ＝４、リードデータのバイト数ＲＤＢＬ＝８、レスポンス信号数ＲｓＢＬ＝１、のとき、初期時間位置Ｂｌａｔ０＝８＋｛（（（４＋８）÷１）÷２）−１｝＝１３となる。従って、レジスタＲｅｇＴｌａｔ０には初期時間位置Ｔｌａｔ０の値８が、レジスタＲｅｇ  Ｂｌａｔ０には初期時間位置Ｂｌａｔ０の値１３が保存される。
【０３１３】
次に、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ０へのリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１４を出力する前に、カウンタＣ０ｄｓ値とカウンタＣ０ｄｅ値がレジスタＲｅｇＴｌａｔ０値とレジスタＲｅｇ  Ｂｌａｔ０値の間に存在するか（ＲｅｇＴｌａｔ０≦Ｃ０ｄｓ≦ＲｅｇＢｌａｔ０、ＲｅｇＴｌａｔ０≦Ｃ０ｅｓ≦ＲｅｇＢｌａｔ０）をチェックし、カウンタＣ１ｄｓ値とカウンタＣ１ｄｅ値がレジスタＲｅｇＴｌａｔ０値とレジスタＲｅｇ  Ｂｌａｔ０値の間に存在するか（ＲｅｇＴｌａｔ０≦Ｃ１ｄｓ≦ＲｅｇＢｌａｔ０、ＲｅｇＴｌａｔ０≦Ｃ１ｅｓ≦ＲｅｇＢｌａｔ０）をチェックし、カウンタＣ２ｄｓ値とカウンタＣ２ｄｅ値がレジスタＲｅｇＴｌａｔ０値とレジスタＲｅｇ  Ｂｌａｔ０値の間に存在するか（ＲｅｇＴｌａｔ０≦Ｃ２ｄｓ≦ＲｅｇＢｌａｔ０、ＲｅｇＴｌａｔ０≦Ｃ２ｅｓ≦ＲｅｇＢｌａｔ０）をチェックする。
【０３１４】
カウンタＣ０ｄｓ値と、カウンタＣ０ｅｓ値と、カウンタＣ１ｄｓ値と、カウンタＣ１ｅｓ値と、カウンタＣ２ｄｓ値と、カウンタＣ２ｅｓ値のすべてが、初期時間位置Ｔｌａｔ１と初期時間位置Ｂｌａｔ１の間に存在しない場合は、メモリ装置Ｍ０へのリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１４に対するレスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４がレスポンス信号ＲｓＭｕｘ０上へ現れる時間帯ｍ０ＲｓＤｒと重なる他のレスポンスは存在しないことを示す。一方、カウンタＣ０ｄｓ値と、カウンタＣ０ｅｓ値と、カウンタＣ１ｄｓ値と、カウンタＣ１ｅｓ値と、カウンタＣ２ｄｓ値と、カウンタＣ２ｅｓ値のいずれかが初期時間位置Ｔｌａｔ０と初期時間位置Ｂｌａｔ０の間に存在する場合は、メモリ装置Ｍ０へのリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１４に対するレスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４がレスポンス信号ＲｓＭｕｘ０上へ現れる時間帯ｍ０ＲｓＤｒと重なる他のレスポンスは存在することを示す。
【０３１５】
図２４では、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１４を出力する直前において、カウンタＣ０ｄｓ値は１、カウンタＣ０ｅｓ値は６、カウンタＣ１ｄｓ値は１５、カウンタＣ１ｅｓ値は２０、カウンタＣ２ｄｓ値は０、カウンタＣ２ｅｓ値は０であり、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４のレジスタＲｅｇＴｌａｔ０値は８、レジスタＲｅｇＢｌａｔ０値は１３のため、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４は他のレスポンスと重ならないことがわかる。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４が他のレスポンスへ重ならず、且つ、カウンタＣ１ｔｒｃｄの値が０であることを確認し、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４を出力する。また、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４が他のレスポンスと重なった場合は、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４を出力せず、リクエストの出力待ち状態となる。また、リクエスト出力回路ＲＱＯＵＴはリクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４を出力すると同時に、カウンタＣ０ｄｓへレジスタＲｅｇＴｌａｔ０値８を設定し、カウンタＣ０ｄｅへレジスタＲｅｇ  Ｂｌａｔ０値１３を設定する。その後、リクエスト出力回路ＲＱＯＵＴはクロックＲｑＣＫ０の立ち上がりで、カウンタＣ０ｄｓおよびＣ０ｄｅへ設定されている値を１つずつ減らしていき、レスポンス信号ＲｓＭｕｘ０へ現れる相対的な時間帯ｍ０ＲｓＤｒを更新する。
【０３１６】
メモリ装置Ｍ０は、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４を受け取り、このリクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ０はリクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４に含まれるリード命令ＲＤ８、バンクアドレスＢＫ０およびカラムアドレスＣｏｌ３２を利用し、メモリ回路Ｍｅｍ０のメモリバンクＭＢａｎｋ０のセンスアンプＳｅｎｓｅＡｍｐから、カラムアドレス３２を開始アドレスとして、８バイト分のデータを読み出す。読み出された８バイト分のデータへは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値１、８バイトデータのリード命令ＲＤ８、マスター番号ＭＩＤ値３、リードデータ長ＲＤＬ値８、レスポンス番号ＲｅｓＮ値１４（リクエスト番号ＲｅｑＮ値１２と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されたレスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４が生成され、レスポンスキューＲｓＱｏを介して、レスポンス信号ＲｓＭｕｘ０からメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ入力される。
【０３１７】
レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４は、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１２に続いて、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１３より早くレスポンス入力回路ＲＳＩＮへ入力される。この際の、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４のレイテンシはレイテンシｍ０Ｌａｔ値８クロックサイクルとなる。
【０３１８】
次に、リクエスト出力回路ＲＱＯＵＴから、リクエストＲｅｑＷＴ１６ＩＤ２ＳＥＱ１５に続いて、メモリ装置Ｍ０へのライト命令を含んだリクエストＲｅｑＷＴ１６ＩＤ１ＳＥＱ１５が出力される際の動作を説明する。リクエストＲｅｑＷＴ８ＩＤ１ＳＥＱ１５は、リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値１、１６バイトデータのライト命令ＲＤ８、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値１２、リクエスト番号ＲｅｑＮ値１５、バンクアドレスＢＫ１およびカラムアドレスＣｏｌ３２から構成される。メモリ装置Ｍ０のリクエストキュー制御回路ＲｑＣＴにて、リクエストＲｅｑＷＴ１６ＩＤ１ＳＥＱ１４を受け取り、このリクエストＲｅｑＷＴ１６ＩＤ１ＳＥＱ１４に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ０のリクエストキュー制御回路ＲｑＣＴはリクエストＲｅｑＷＴ１６ＩＤ１ＳＥＱ１５に含まれるライト命令ＷＴ１６、バンクアドレスＢＫ０およびカラムアドレスＣｏｌ３２を利用し、メモリ回路Ｍｅｍ０のメモリバンクＭｂａｎｋ１のセンスアンプＳｅｎｓｅＡｍｐを介して、カラムアドレス３２を開始アドレスとした１６バイト分のデータをメモリバンクＭｂａｎｋ１へ書き込む。
【０３１９】
リクエストキュー制御回路ＲｑＣＴとレスポンスキュー制御回路ＲｓＣＴはそれぞれ独立に動作するため、レスポンスＲｅｓＲＤ８ＩＤ１ＳＥＱ１４およびレスポンスＲｅｓＲＤ８ＩＤ２ＳＥＱ１３が情報処理装置ＣＰＵ＿ＣＨＩＰへ転送されている最中でもリクエストＲｅｑＷＴ１６ＩＤ１ＳＥＱ１５の書き込み動作を実行することができる。
【０３２０】
以上説明したように、各メモリ装置へのリクエストに対するレスポンスの時間帯を予測し、管理し、リクエストを発行することにより、低レイテンシを実現しつつ、レスポンス信号ＲｓＭｕｘ０上を、隙間無く、それぞれのレスポンスが重ならないように、送信されるため、高速データ転送レートも達成できる。さらに、リクエストインターフェース回路ＲｅＩＦとレスポンスインターフェース回路は独立に動作可能なため、データの読み出し動作と書き込み動作を同時に実行でき、データ転送性能を向上させることができる。上記では、メモリ装置Ｍ０でのデータの読み出し及び書き込みについて説明したが、他のメモリ装置Ｍ１及びＭ２においても同様の動作が実行できることは言うまでもない。さらに、それぞれのメモリ装置においてリクエストインターフェース回路ＲｅＩＦとレスポンスインターフェース回路は独立に動作可能なため、異なるメモリ装置へのデータ読み出し及び書き込みリクエストが生じた場合でも、それぞれのリクエストを独立に並列に処理でき、データ転送性能を向上できることは言うまでもない。
【０３２１】
＜レイテンシ補正動作：許容レイテンシＬａｔＲａｎｇｅ値０＞
図２５は、メモリ制御回路ＤＣＭＣのレイテンシレジスタＬＴＲＥＧ内のメモリ装置Ｍ０のレイテンシＬａｔＥｘｐＩＤ１値は６へ、許容レイテンシＬａｔＲａｎｇｅ値は０へ、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は６０へ設定され、メモリ装置Ｍ０からのレスポンスの実測レイテンシが、他のメモリ装置からのレスポンスによって、レイテンシＬａｔＥｘｐＩＤ１値６より大きくなった際の、レイテンシ調整回路ＬＣＨＣＫが行うレイテンシ補正動作の一例を示す。また、図２９はレイテンシ調整回路ＬＣＨＣＫがレイテンシ補正動作を行うために装備しているカウンタの動作の一例を示すフローチャートの一例である。
【０３２２】
レイテンシ調整回路ＬＣＨＣＫは、カウンタＤＣｏｕｎｔｅｒとカウンタＵＣｏｕｎｔｅｒとカウンタＵＰＣｏｕｎｔｅｒ１と、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅと、タイムアウトレイテンシレジスタＲｅｇＬａｔＲａｎｇｅを装備する。メモリ装置Ｍ０に関するカウンタＣ０ｄｓおよびカウンタＣ０ｄｅは、特に限定されないが、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によって０へ初期設定される。カウンタＤＣｏｕｎｔｅｒとカウンタＵＣｏｕｎｔｅｒとＵＰＣｏｕｎｔｅｒ１は、特に限定されないが、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によって０へ初期設定される。また、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅは、特に限定されないが、パワーアップシーケンスの際に、許容レイテンシＬａｔＲａｎｇｅ値０へ設定され、タイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔは、特に限定されないが、パワーアップシーケンスの際に、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値６０へ初期設定される。
【０３２３】
リクエスト出力回路ＲＱＯＵＴから、メモリ装置Ｍ０への８バイトデータのリード命令ＲＤ８を含むリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２と、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１３と、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１４と、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１５が出力される際の動作を説明する。リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２を出力する（図２５：Ｄｅｐａｒｔｕｒｅ＝Ｈｉｇｈ）と同時に、カウンタＤＣｏｕｎｔｅｒへレジスタＲｅｇＴｌａｔ０値６を設定し（図２９：Ｓｔｅｐ１）、カウンタＣ０ｄｓへレジスタＲｅｇＴｌａｔ０値６を設定し、カウンタＣ０ｄｅへレジスタＲｅｇ  Ｂｌａｔ０値１１を設定する。リクエスト出力回路ＲＱＯＵＴは、カウンタＣ０ｄｓおよびＣ０ｄｅへ設定されている値を１つずつ減らしていき、レスポンス信号ＲｓＭｕｘ０へ現れる相対的な時間帯ｍ０ＲｓＤｒを更新する。レイテンシ調整回路ＬＣＨＣＫは、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２に対するレスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が返ってきたかをチェック（図２９：Ｓｔｅｐ２）し、未だ返ってこない場合（図２５：Ａｒｒｉｖａｌ＝Ｌｏｗ）は、カウンタＤＣｏｕｎｔｅｒが０より大きい場合（図２９：Ｓｔｅｐ３）、クロックＲｑＣＫ０の立ち上がりで、その値を１つずつ減らす（図２９：Ｓｔｅｐ４）。また、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２に続いて、カウンタＣ０ｄｓ値が１およびＣ０ｄｅ値が６になった際に、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１３を出力し（図２５：Ｄｅｐａｒｔｕｒｅ＝Ｈｉｇｈ）、同時に、カウンタＤＣｏｕｎｔｅｒへレジスタＲｅｇＴｌａｔ０値６を設定し（図２９：Ｓｔｅｐ１）、カウンタＣ０ｄｓへレジスタＲｅｇＴｌａｔ０値６を設定し、カウンタＣ０ｄｅへレジスタＲｅｇ  Ｂｌａｔ０値１１を設定する。
【０３２４】
カウンタＤＣｏｕｎｔｅｒが０になっても、レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が返ってこない場合（図２５：Ａｒｒｉｖａｌ＝Ｌｏｗ）は、カウンタＵＰＣｏｕｎｔｅｒ１に設定されている値を１つずつ増加させ（図２９：Ｓｔｅｐ５）、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅ値０とカウンタＵＣｏｕｎｔｅｒ値０を比較する（図２９：Ｓｔｅｐ６）。カウンタＵＣｏｕｎｔｅｒ値０は許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅ値０以上のため、レイテンシ調整回路ＬＣＨＣＫはＮｏｔｉｆｙＳｔａｔｕｓ信号をＣｏｒｒｅｃｔｉｏｎとし（図２５：Ｎｏｔｉｆｙ  Ｓｔａｔｕｓ＝Ｃｏｒｒｅｃｔｉｏｎ）、レイテンシ補正の開始をリクエスト出力回路ＲＱＯＵＴへ通達する（図２９：Ｓｔｅｐ７）。
【０３２５】
リクエスト出力回路ＲＱＯＵＴは、ＮｏｔｉｆｙＳｔａｔｕｓ信号値Ｃｏｒｒｅｃｔｉｏｎを受けて、カウンタＣ０ｄｓとカウンタＣ０ｄｅを停止させる（図２５：Ｓｔｏｐ  Ｃｏｕｎｔ）。レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が、レイテンシＬａｔＥｘｐＩＤ１値６より３サイクル遅れて返ってくると、カウンタＵＰＣｏｕｎｔｅｒ１値３とタイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔ値６０を比較する（図２９：Ｓｔｅｐ９）。カウンタＵＰＣｏｕｎｔｅｒ１値３はタイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔ値６０より小さいので、カウンタＵＰＣｏｕｎｔｅｒ１値を０にクリアする（図２９：Ｓｔｅｐ１０）。次にカウンタＤＣｏｕｎｔｅｒ値が０より大きいかを比較し（図２９：Ｓｔｅｐ１１）、カウンタＤＣｏｕｎｔｅｒ値は０のため、カウンタＵＣｏｕｎｔｅｒ値が０より大きいかを比較する（図２９：Ｓｔｅｐ１２）。カウンタＵＣｏｕｎｔｅｒ値は０のため、レイテンシ補正動作を行っているかをチェックする（図２９：Ｓｔｅｐ１３）。レイテンシ調整回路ＬＣＨＣＫは、レイテンシ補正動作を行っているので、ＮｏｔｉｆｙＳｔａｔｕｓ信号をＮＯＣｏｒｒｅｃｔｉｏｎとし、レイテンシ補正の終了をリクエスト出力回路ＲＱＯＵＴへ通達する（図２９：Ｓｔｅｐ１７）。
【０３２６】
リクエスト出力回路ＲＱＯＵＴは、ＮｏｔｉｆｙＳｔａｔｕｓ信号値ＮｏＣｏｒｒｅｃｔｉｏｎを受けて、カウンタＣ０ｄｓとカウンタＣ０ｄｅを動作させ、それらの値をひとつずつ減らす。レイテンシ補正動作によって、カウンタＣ０ｄｓとカウンタＣ０ｄｅは、レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２がレイテンシＬａｔＥｘｐＩＤ１値６より遅れた３サイクル分停止する。リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１３に続いて、カウンタＣ０ｄｓ値が１およびＣ０ｄｅ値が６になった際に、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４を出力し（図２５：Ｄｅｐａｒｔｕｒｅ＝Ｈｉｇｈ）、同時に、カウンタＤＣｏｕｎｔｅｒへレジスタＲｅｇＴｌａｔ０値６を設定し（図２９：Ｓｔｅｐ１）、カウンタＣ０ｄｓへレジスタＲｅｇＴｌａｔ０値６を設定し、カウンタＣ０ｄｅへレジスタＲｅｇ  Ｂｌａｔ０値１１を設定する。レイテンシ調整回路ＬＣＨＣＫは、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４に対するレスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１４が返ってきたかをチェック（図２９：Ｓｔｅｐ２）し、未だ返ってこない場合（図２５：Ａｒｒｉｖａｌ＝Ｌｏｗ）は、カウンタＤＣｏｕｎｔｅｒが０より大きい場合（図２９：Ｓｔｅｐ３）、クロックＲｑＣＫ０の立ち上がりで、その値を１つずつ減らす（図２９：Ｓｔｅｐ４）。
【０３２７】
レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１４が、６サイクル後に返ってくると、カウンタＵＰＣｏｕｎｔｅｒ１値０とタイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔ値６０を比較する（図２９：Ｓｔｅｐ９）。カウンタＵＰＣｏｕｎｔｅｒ１値０はタイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔ値６０より小さいので、カウンタＵＰＣｏｕｎｔｅｒ１値を０にクリアする（図２９：Ｓｔｅｐ１０）。次にカウンタＤＣｏｕｎｔｅｒ値が０より大きいかを比較し（図２９：Ｓｔｅｐ１１）、カウンタＤＣｏｕｎｔｅｒ値は０のため、カウンタＵＣｏｕｎｔｅｒ値が０より大きいかを比較する（図２９：Ｓｔｅｐ１２）。カウンタＵＣｏｕｎｔｅｒ値は０のため、レイテンシ補正動作を行っているかをチェックする（図２９：Ｓｔｅｐ１３）。
【０３２８】
レイテンシ調整回路ＬＣＨＣＫは、レイテンシ補正動作を行っていないので、ＮｏｔｉｆｙＳｔａｔｕｓ信号をＭＥＴとし、リクエスト出力回路ＲＱＯＵＴへ通達する（図２９：Ｓｔｅｐ１７）。ＮｏｔｉｆｙＳｔａｔｕｓ信号はＭＥＴ、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４に対するレスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１４が、ＬａｔＥｘｐＩＤ１値６サイクル後に返ってきたことを示す。リクエスト出力回路ＲＱＯＵＴは、ＮｏｔｉｆｙＳｔａｔｕｓ信号値ＭＥＴＮｏを受けて、カウンタＣ０ｄｓとカウンタＣ０ｄｅを動作させ、それらの値を１つずつ減らす。
【０３２９】
以上説明したように、レイテンシを計測し、レイテンシＬａｔＥｘｐＩＤ１値６より遅れた３サイクル分に対して、カウンタＣ０ｄｓとカウンタＣ０ｄｅを３サイクル分停止させるレイテンシ補正動作を行うことで、その後のリクエストに対するレスポンスを、期待値レイテンシＬａｔＥｘｐＩＤ１値６と等しくすることができる。
【０３３０】
＜レイテンシ補正動作：許容レイテンシＬａｔＲａｎｇｅ値１＞
図２６は、メモリ制御回路ＤＣＭＣのレイテンシレジスタＬＴＲＥＧ内のメモリ装置Ｍ０のレイテンシＬａｔＥｘｐＩＤ１値は６へ、許容レイテンシＬａｔＲａｎｇｅ値は１へ、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は６０へ設定され、メモリ装置Ｍ０からのレスポンスの実測レイテンシが、他のメモリ装置からのレスポンスによって、レイテンシＬａｔＥｘｐＩＤ１値６＋許容レイテンシＬａｔＲａｎｇｅ値１、より大きくなった際の、レイテンシ調整回路ＬＣＨＣＫが行うレイテンシ補正動作の一例を示す。また、図２９はレイテンシ調整回路ＬＣＨＣＫがレイテンシ補正動作を行うために装備しているカウンタの動作の一例を示すフローチャートの一例である。
【０３３１】
レイテンシ調整回路ＬＣＨＣＫは、カウンタＤＣｏｕｎｔｅｒとカウンタＵＣｏｕｎｔｅｒとカウンタＵＰＣｏｕｎｔｅｒ１と、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅと、タイムアウトレイテンシレジスタＲｅｇＬａｔＲａｎｇｅを装備する。メモリ装置Ｍ０に関するカウンタＣ０ｄｓおよびカウンタＣ０ｄｅは、特に限定されないが、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によって０へ初期設定される。カウンタＤＣｏｕｎｔｅｒとカウンタＵＣｏｕｎｔｅｒとＵＰＣｏｕｎｔｅｒ１は、特に限定されないが、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によって０へ初期設定される。また、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅは、特に限定されないが、パワーアップシーケンスの際に、許容レイテンシＬａｔＲａｎｇｅ値０へ設定され、タイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔは、特に限定されないが、パワーアップシーケンスの際に、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値６０へ初期設定される。
【０３３２】
リクエスト出力回路ＲＱＯＵＴから、メモリ装置Ｍ０への８バイトデータのリード命令ＲＤ８を含むリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２と、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１３と、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１４と、リクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１５が出力される際の動作を説明する。
【０３３３】
リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２を出力する（図２６：Ｄｅｐａｒｔｕｒｅ＝Ｈｉｇｈ）と同時に、カウンタＤＣｏｕｎｔｅｒへレジスタＲｅｇＴｌａｔ０値６を設定し（図２９：Ｓｔｅｐ１）、カウンタＣ０ｄｓへレジスタＲｅｇＴｌａｔ０値６を設定し、カウンタＣ０ｄｅへレジスタＲｅｇ  Ｂｌａｔ０値１１を設定する。リクエスト出力回路ＲＱＯＵＴは、カウンタＣ０ｄｓおよびＣ０ｄｅへ設定されている値を１つずつ減らしていき、レスポンス信号ＲｓＭｕｘ０へ現れる相対的な時間帯ｍ０ＲｓＤｒを更新する。レイテンシ調整回路ＬＣＨＣＫは、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２に対するレスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が返ってきたかをチェック（図２９：Ｓｔｅｐ２）し、未だ返ってこない場合（図２６：Ａｒｒｉｖａｌ＝Ｌｏｗ）は、カウンタＤＣｏｕｎｔｅｒが０より大きい場合（図２９：Ｓｔｅｐ３）、クロックＲｑＣＫ０の立ち上がりで、その値を１つずつ減らす（図２９：Ｓｔｅｐ４）。また、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２に続いて、カウンタＣ０ｄｓ値が１およびＣ０ｄｅ値が６になった際に、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１３を出力し（図２６：Ｄｅｐａｒｔｕｒｅ＝Ｈｉｇｈ）、同時に、カウンタＤＣｏｕｎｔｅｒへレジスタＲｅｇＴｌａｔ０値６を設定し（図２９：Ｓｔｅｐ１）、カウンタＣ０ｄｓへレジスタＲｅｇＴｌａｔ０値６を設定し、カウンタＣ０ｄｅへレジスタＲｅｇ  Ｂｌａｔ０値１１を設定する。
【０３３４】
カウンタＤＣｏｕｎｔｅｒが０になっても、レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が返ってこない場合（図２６：Ａｒｒｉｖａｌ＝Ｌｏｗ）は、カウンタＵＰＣｏｕｎｔｅｒ１に設定されている値を１つずつ増加させ（図２９：Ｓｔｅｐ５）、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅ値１とカウンタＵＣｏｕｎｔｅｒ値０を比較する（図２９：Ｓｔｅｐ６）。カウンタＵＣｏｕｎｔｅｒ値０は許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅ値１より小さいので、レイテンシ調整回路ＬＣＨＣＫはカウンタＵＣｏｕｎｔｅｒを１つ増加させ、カウンタＵＣｏｕｎｔｅｒ値を１とする（図２９：Ｓｔｅｐ８）。再度、レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が返ってきたかをチェック（図２９：Ｓｔｅｐ２）し、未だ返ってこない場合（図２６：Ａｒｒｉｖａｌ＝Ｌｏｗ）は、カウンタＤＣｏｕｎｔｅｒが０より大きい場合（図２９：Ｓｔｅｐ３）、クロックＲｑＣＫ０の立ち上がりで、その値を１つずつ減らす（図２９：Ｓｔｅｐ４）。
【０３３５】
カウンタＤＣｏｕｎｔｅｒが０になっても、レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が返ってこない場合（図２６：Ａｒｒｉｖａｌ＝Ｌｏｗ）は、カウンタＵＰＣｏｕｎｔｅｒ１に設定されている値を１つずつ増加させ（図２９：Ｓｔｅｐ５）、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅ値１とカウンタＵＣｏｕｎｔｅｒ値０を比較する（図２９：Ｓｔｅｐ６）。カウンタＵＣｏｕｎｔｅｒ値１は許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅ値１以上の時、レイテンシ調整回路ＬＣＨＣＫはＮｏｔｉｆｙＳｔａｔｕｓ信号をＣｏｒｒｅｃｔｉｏｎとし（図２６：Ｎｏｔｉｆｙ  Ｓｔａｔｕｓ＝Ｃｏｒｒｅｃｔｉｏｎ）、レイテンシ補正の開始をリクエスト出力回路ＲＱＯＵＴへ通達する（図２９：Ｓｔｅｐ７）。リクエスト出力回路ＲＱＯＵＴは、ＮｏｔｉｆｙＳｔａｔｕｓ信号値Ｃｏｒｒｅｃｔｉｏｎを受けて、カウンタＣ０ｄｓとカウンタＣ０ｄｅの動作を停止させる（図２６：Ｓｔｏｐ  Ｃｏｕｎｔ）。その際の、カウンタＣ０ｄｓ値は４、カウンタＣ０ｄｅ値は９となる。レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が、レイテンシＬａｔＥｘｐＩＤ１値６より３サイクル遅れて返ってくると、カウンタＵＰＣｏｕｎｔｅｒ１値３とタイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔ値６０を比較する（図２９：Ｓｔｅｐ９）。カウンタＵＰＣｏｕｎｔｅｒ１値３はタイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔ値６０より小さいので、カウンタＵＰＣｏｕｎｔｅｒ１値を０にクリアする（図２９：Ｓｔｅｐ１０）。
【０３３６】
次にカウンタＤＣｏｕｎｔｅｒ値が０より大きいかを比較し（図２９：Ｓｔｅｐ１１）、カウンタＤＣｏｕｎｔｅｒ値は０のため、カウンタＵＣｏｕｎｔｅｒ値が０より大きいかを比較する（図２９：Ｓｔｅｐ１２）。カウンタＵＣｏｕｎｔｅｒ値は０のため、レイテンシ補正動作を行っているかをチェックする（図２９：Ｓｔｅｐ１３）。レイテンシ調整回路ＬＣＨＣＫは、レイテンシ補正動作を行っているので、ＮｏｔｉｆｙＳｔａｔｕｓ信号をＮＯＣｏｒｒｅｃｔｉｏｎとし、レイテンシ補正の終了をリクエスト出力回路ＲＱＯＵＴへ通達する（図２９：Ｓｔｅｐ１７）。リクエスト出力回路ＲＱＯＵＴは、ＮｏｔｉｆｙＳｔａｔｕｓ信号値ＮｏＣｏｒｒｅｃｔｉｏｎを受けて、カウンタＣ０ｄｓとカウンタＣ０ｄｅを動作させ、それらの値を１つずつ減らす。
【０３３７】
レイテンシ補正動作によって、カウンタＣ０ｄｓとカウンタＣ０ｄｅは、レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２がレイテンシＬａｔＥｘｐＩＤ１値６より遅れた３サイクル分停止する。リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１３に続いて、カウンタＣ０ｄｓ値が１およびＣ０ｄｅ値が６になった際に、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４を出力し（図２６：Ｄｅｐａｒｔｕｒｅ＝Ｈｉｇｈ）、同時に、カウンタＤＣｏｕｎｔｅｒへレジスタＲｅｇＴｌａｔ０値６を設定し（図２９：Ｓｔｅｐ１）、カウンタＣ０ｄｓへレジスタＲｅｇＴｌａｔ０値６を設定し、カウンタＣ０ｄｅへレジスタＲｅｇ  Ｂｌａｔ０値１１を設定する。レイテンシ調整回路ＬＣＨＣＫは、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４に対するレスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１４が返ってきたかをチェック（図２９：Ｓｔｅｐ２）し、未だ返ってこない場合（図２６：Ａｒｒｉｖａｌ＝Ｌｏｗ）は、カウンタＤＣｏｕｎｔｅｒが０より大きい場合（図２９：Ｓｔｅｐ３）、クロックＲｑＣＫ０の立ち上がりで、その値を１つずつ減らす（図２９：Ｓｔｅｐ４）。レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１４が、６サイクル後に返ってくると、カウンタＵＰＣｏｕｎｔｅｒ１値０とタイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔ値６０を比較する（図２９：Ｓｔｅｐ９）。カウンタＵＰＣｏｕｎｔｅｒ１値０はタイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔ値６０より小さいので、カウンタＵＰＣｏｕｎｔｅｒ１値を０にクリアする（図２９：Ｓｔｅｐ１０）。
【０３３８】
次にカウンタＤＣｏｕｎｔｅｒ値が０より大きいかを比較し（図２９：Ｓｔｅｐ１１）、カウンタＤＣｏｕｎｔｅｒ値は０のため、カウンタＵＣｏｕｎｔｅｒ値が０より大きいかを比較する（図２９：Ｓｔｅｐ１２）。カウンタＵＣｏｕｎｔｅｒ値は０のため、レイテンシ補正動作を行っているかをチェックする（図２９：Ｓｔｅｐ１３）。レイテンシ調整回路ＬＣＨＣＫは、レイテンシ補正動作を行っていないので、ＮｏｔｉｆｙＳｔａｔｕｓ信号をＭＥＴとし、リクエスト出力回路ＲＱＯＵＴへ通達する（図２９：Ｓｔｅｐ１７）。ＮｏｔｉｆｙＳｔａｔｕｓ信号はＭＥＴ、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１４に対するレスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１４が、ＬａｔＥｘｐＩＤ１値６サイクル後に返ってきたことを示す。リクエスト出力回路ＲＱＯＵＴは、ＮｏｔｉｆｙＳｔａｔｕｓ信号値ＭＥＴを受けて、カウンタＣ０ｄｓとカウンタＣ０ｄｅを動作させ、それらの値を１つずつ減らす。
【０３３９】
以上説明したように、レイテンシを計測し、レイテンシＬａｔＥｘｐＩＤ１値６サイクルから、さらに許容レイテンシＬａｔＲａｎｇｅ値１サイクル分遅れた場合、レイテンシＬａｔＥｘｐＩＤ１値６より遅れた３サイクル分に対して、カウンタＣ０ｄｓとカウンタＣ０ｄｅを３サイクル分停止させるレイテンシ補正動作を行うことで、その後のリクエストに対するレスポンスを、期待値レイテンシＬａｔＥｘｐＩＤ１値６と等しくすることができる。
【０３４０】
＜レイテンシ：タイムアウトエラー＞
図２７は、メモリ制御回路ＤＣＭＣのレイテンシレジスタＬＴＲＥＧ内のメモリ装置Ｍ０のレイテンシＬａｔＥｘｐＩＤ１値は６へ、許容レイテンシＬａｔＲａｎｇｅ値は０へ、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は６０へ設定され、メモリ装置Ｍ０からのレスポンスの実測レイテンシが、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値６０より大きくなった際の、レイテンシ調整回路ＬＣＨＣＫが行う動作の一例を示す。また、図２９はレイテンシ調整回路ＬＣＨＣＫがレイテンシ補正動作を行うために装備しているカウンタの動作の一例を示すフローチャートの一例である。
【０３４１】
レイテンシ調整回路ＬＣＨＣＫは、カウンタＤＣｏｕｎｔｅｒとカウンタＵＣｏｕｎｔｅｒとカウンタＵＰＣｏｕｎｔｅｒ１と、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅと、タイムアウトレイテンシレジスタＲｅｇＬａｔＲａｎｇｅを装備する。メモリ装置Ｍ０に関するカウンタＣ０ｄｓおよびカウンタＣ０ｄｅは、特に限定されないが、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によって０へ初期設定される。カウンタＤＣｏｕｎｔｅｒとカウンタＵＣｏｕｎｔｅｒとＵＰＣｏｕｎｔｅｒ１は、特に限定されないが、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によって０へ初期設定される。
【０３４２】
また、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅは、パワーアップシーケンスの際に、許容レイテンシＬａｔＲａｎｇｅ値０へ設定され、タイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔは、特に限定されないが、パワーアップシーケンスの際に、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値６０へ初期設定される。リクエスト出力回路ＲＱＯＵＴから、メモリ装置Ｍ０への８バイトデータのリード命令ＲＤ８を含むリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２が出力される際の動作を説明する。リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２を出力する（図２７：Ｄｅｐａｒｔｕｒｅ＝Ｈｉｇｈ）と同時に、カウンタＤＣｏｕｎｔｅｒへレジスタＲｅｇＴｌａｔ０値６を設定し（図２９：Ｓｔｅｐ１）、カウンタＣ０ｄｓへレジスタＲｅｇＴｌａｔ０値６を設定し、カウンタＣ０ｄｅへレジスタＲｅｇ  Ｂｌａｔ０値１１を設定する。リクエスト出力回路ＲＱＯＵＴは、カウンタＣ０ｄｓおよびＣ０ｄｅへ設定されている値を１つずつ減らしていき、レスポンス信号ＲｓＭｕｘ０へ現れる相対的な時間帯ｍ０ＲｓＤｒを更新する。
【０３４３】
レイテンシ調整回路ＬＣＨＣＫは、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２に対するレスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が返ってきたかをチェック（図２９：Ｓｔｅｐ２）し、未だ返ってこない場合（図２７：Ａｒｒｉｖａｌ＝Ｌｏｗ）は、カウンタＤＣｏｕｎｔｅｒが０より大きい場合（図２９：Ｓｔｅｐ３）、クロックＲｑＣＫ０の立ち上がりで、その値を１つずつ減らす（図２９：Ｓｔｅｐ４）。カウンタＤＣｏｕｎｔｅｒが０になっても、レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が返ってこない場合（図２７：Ａｒｒｉｖａｌ＝Ｌｏｗ）は、カウンタＵＰＣｏｕｎｔｅｒ１に設定されている値を１つずつ増加させ（図２９：Ｓｔｅｐ５）、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅ値０とカウンタＵＣｏｕｎｔｅｒ値０を比較する（図２９：Ｓｔｅｐ６）。カウンタＵＣｏｕｎｔｅｒ値０は許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅ値０以上なので、レイテンシ調整回路ＬＣＨＣＫはＮｏｔｉｆｙＳｔａｔｕｓ信号をＣｏｒｒｅｃｔｉｏｎとし（図２７：Ｎｏｔｉｆｙ  Ｓｔａｔｕｓ＝Ｃｏｒｒｅｃｔｉｏｎ）、レイテンシ補正の開始をリクエスト出力回路ＲＱＯＵＴへ通達する（図２９：Ｓｔｅｐ７）。
【０３４４】
リクエスト出力回路ＲＱＯＵＴは、ＮｏｔｉｆｙＳｔａｔｕｓ信号値Ｃｏｒｒｅｃｔｉｏｎを受けて、カウンタＣ０ｄｓとカウンタＣ０ｄｅの動作を停止させる（図２７：Ｓｔｏｐ  Ｃｏｕｎｔ）。その際の、カウンタＣ０ｄｓ値は０、カウンタＣ０ｄｅ値は３となる。また、カウンタＵＰＣｏｕｎｔｅｒ１値とタイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値６０を比較する（図２９：Ｓｔｅｐ９）。カウンタＵＰＣｏｕｎｔｅｒ１値がタイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値６０以下の場合は、再度レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が返ってきたかをチェック（図２９：Ｓｔｅｐ２）し、カウンタＵＰＣｏｕｎｔｅｒ１値がタイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値６０より大きい場合は、レイテンシ調整回路ＬＣＨＣＫはＮｏｔｉｆｙＳｔａｔｕｓ信号をＥｒｒｏｒとし（図２７：Ｎｏｔｉｆｙ  Ｓｔａｔｕｓ＝Ｅｒｒｏｒ）、レイテンシタイムアウトエラーが生じたことをリクエスト出力回路ＲＱＯＵＴへ通達する（図２９：Ｓｔｅｐ９）。さらに、レイテンシエラーが生じたリクエストのＩＤ値１とリクエスト番号ＲｅｑＮ値１２をリクエスト出力回路ＲＱＯＵＴへ通達する（図２９：Ｓｔｅｐ９）。次にリクエスト出力回路ＲＱＯＵＴは、カウンタＣ０ｄｓ値とカウンタＣ０ｄｅ値を０にクリアし、エラー発生時のエラーシーケンス動作を行い、再度、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２を出力する。
【０３４５】
以上説明したように、計測したレイテンシがタイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値６０より大きい場合、レイテンシ調整回路ＬＣＨＣＫはレイテンシタイムアウトエラーをリクエスト出力回路ＲＱＯＵＴへ通達し、これによって、リクエスト出力回路ＲＱＯＵＴはレイテンシタイムアウトエラーが生じたリクエストを、再度出力することができる。
【０３４６】
＜レイテンシ：修正＞
図２８は、メモリ制御回路ＤＣＭＣのレイテンシレジスタＬＴＲＥＧ内のメモリ装置Ｍ０のレイテンシＬａｔＥｘｐＩＤ１値は６へ、許容レイテンシＬａｔＲａｎｇｅ値は０へ、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は６０へ設定され、メモリ装置Ｍ０からのレスポンスの実測レイテンシが、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値６０より大きくなった際の、レイテンシ調整回路ＬＣＨＣＫが行う動作の一例を示す。また、図２９はレイテンシ調整回路ＬＣＨＣＫがレイテンシ補正動作を行うために装備しているカウンタの動作の一例を示すフローチャートの一例である。
【０３４７】
レイテンシ調整回路ＬＣＨＣＫは、カウンタＤＣｏｕｎｔｅｒとカウンタＵＣｏｕｎｔｅｒとカウンタＵＰＣｏｕｎｔｅｒ１と、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅと、タイムアウトレイテンシレジスタＲｅｇＬａｔＲａｎｇｅを装備する。メモリ装置Ｍ０に関するカウンタＣ０ｄｓおよびカウンタＣ０ｄｅは、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によって０へ初期設定される。カウンタＤＣｏｕｎｔｅｒとカウンタＵＣｏｕｎｔｅｒとＵＰＣｏｕｎｔｅｒ１は、特に限定されないが、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によって０へ初期設定される。また、許容レイテンシレジスタＲｅｇＬａｔＲａｎｇｅは、特に限定されないが、パワーアップシーケンスの際に、許容レイテンシＬａｔＲａｎｇｅ値０へ設定され、タイムアウトレイテンシレジスタＲｅｇＬａｔＴｏｕｔは、パワーアップシーケンスの際に、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値６０へ初期設定される。
【０３４８】
リクエスト出力回路ＲＱＯＵＴから、メモリ装置Ｍ０への８バイトデータのリード命令ＲＤ８を含むリクエストＲｅｑＲＤ８ＩＤ１ＳＥＱ１２が出力される際の動作を説明する。リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２を出力する（図２８：Ｄｅｐａｒｔｕｒｅ＝Ｈｉｇｈ）と同時に、カウンタＤＣｏｕｎｔｅｒへレジスタＲｅｇＴｌａｔ０値６を設定し（図２９：Ｓｔｅｐ１）、カウンタＣ０ｄｓへレジスタＲｅｇＴｌａｔ０値６を設定し、カウンタＣ０ｄｅへレジスタＲｅｇ  Ｂｌａｔ０値１１を設定する。リクエスト出力回路ＲＱＯＵＴは、カウンタＣ０ｄｓおよびＣ０ｄｅへ設定されている値を１つずつ減らしていき、レスポンス信号ＲｓＭｕｘ０へ現れる相対的な時間帯ｍ０ＲｓＤｒを更新する。
【０３４９】
レイテンシ調整回路ＬＣＨＣＫは、リクエストＲｅｑＲＤ８ＩＤ１ＥＱ１２に対するレスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が返ってきたかをチェック（図２９：Ｓｔｅｐ２）し、未だ返ってこない場合（図２８：Ａｒｒｉｖａｌ＝Ｌｏｗ）は、カウンタＤＣｏｕｎｔｅｒが０より大きい場合（図２９：Ｓｔｅｐ３）、クロックＲｑＣＫ０の立ち上がりで、その値を１つずつ減らす（図２９：Ｓｔｅｐ４）。レスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１２が返ってきたら（図２９：Ｓｔｅｐ２）、カウンタＵＰＣｏｕｎｔｅｒ１値を０にクリアする（図２９：Ｓｔｅｐ１０）。つぎに、カウンタＤＣｏｕｎｔｅｒ値が０より大きいかどうかをチェックする（図２９：Ｓｔｅｐ１１）。カウンタＤＣｏｕｎｔｅｒ値が０より大きければ、レイテンシＬａｔＥｘｐＩＤ１値より早くレスポンスが返ってきたことを意味し、レイテンシ調整回路ＬＣＨＣＫはＮｏｔｉｆｙＳｔａｔｕｓ信号をＭｏｄｉｆｙ  ｌａｔｅｎｃｙとし、実測レイテンシ値４とともに、レイテンシＬａｔＥｘｐＩＤ１値の修正要求をリクエスト出力回路ＲＱＯＵＴへ通達する（図２９：Ｓｔｅｐ１８）。リクエスト出力回路ＲＱＯＵＴは、レイテンシＬａｔＥｘｐＩＤ１値の修正要求を受けて、レイテンシレジスタＬＴＲＥＧ内のメモリ装置Ｍ０のレイテンシＬａｔＥｘｐＩＤ１の値を４へ修正する（図２８：Ｍｏｄｉｆｙ  ＬＴＲＥＧ）。レイテンシＬａｔＥｘｐＩＤ１の値を４へ修正した後のリクエストＲｅｑＲＤ８ＩＤ１ＥＱ１３に対するレスポンスＲｅｓＲＤ８ＩＤ１ＥＱ１３の実測レイテンシは４となり、ＬａｔＥｘｐＩＤ１の値４と等しくなる。
【０３５０】
以上説明したように、計測したレイテンシがレイテンシレジスタＬＴＲＥＧ内のメモリ装置Ｍ０のレイテンシＬａｔＥｘｐＩＤ１値より小さい場合、レイテンシ調整回路ＬＣＨＣＫはレイテンシＬａｔＥｘｐＩＤ１値の修正要求をリクエスト出力回路ＲＱＯＵＴへ通達し、これによって、リクエスト出力回路ＲＱＯＵＴはレイテンシＬａｔＥｘｐＩＤ１値を正しい値に修正することができる。
【０３５１】
＜レスポンススケジュール回路ＳＣＨの動作＞
レスポンススケジュール回路ＳＣＨの動作について説明する。図３０は、各メモリ装置が装備するレスポンススケジュール回路ＳＣＨの動作の一例を示すフローチャートである。レスポンススケジュール回路ＳＣＨでは、先ず、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへレスポンスがエントリされているかをチェックする（図３０：Ｓｔｅｐ１）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐのいずれにもレスポンスがエントリされていなければ、再度、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへのエントリをチェックする。
【０３５２】
レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐのいずれかにレスポンスがエントリされていれば、レスポンスの優先順位をチェックし、最高位のレスポンス優先順位を持つレスポンスの送信準備を行う（図３０：Ｓｔｅｐ２）。次に、レスポンスイネーブル信号ＲｓＥｎ０をチェックし（図３０：Ｓｔｅｐ３）、Ｌｏｗの際はレスポンスを出力せず、レスポンスイネーブル信号ＲｓＥｎ０がＨｉｇｈを待つ。レスポンスイネーブル信号ＲｓＥｎ０がＨｉｇｈの際は、最高位のレスポンス優先順位を持つレスポンスを出力する（図３０：Ｓｔｅｐ４）。レスポンスが出力された後は、各メモリ装置に設定されているレスポンスに関する出力優先順位の制御方式をチェックする（図３０：Ｓｔｅｐ５）。レスポンスに関する出力優先順位の制御方式が順位固定方式であれば、レスポンスに関する出力優先順位を変更せず、順位変更方式であればレスポンスに関する出力優先順位を変更させる（図３０：Ｓｔｅｐ６）。順位固定方式では、各メモリ装置が装備しているレスポンスキュー回路ＲｓＱｐ内のレスポンスをレスポンスキュー回路ＲｓＱｏ内のレスポンスより優先させる設定や、レスポンスキュー回路ＲｓＱｏ内のレスポンスをレスポンスキュー回路ＲｓＱｐ内のレスポンスより優先させる設定などが可能である。また、順位変更方式では、各メモリ装置が装備しているレスポンスキュー回路ＲｓＱｐ内のレスポンスとレスポンスキュー回路ＲｓＱｏ内のレスポンスの優先順位をラウンドロビン方式で変更することが可能である。
【０３５３】
＜第１の実施の形態の効果＞
以下、上述の実施の形態について、構成とその効果についてまとめる。
【０３５４】
（１）電源投入直後や、新たにメモリ装置が装着された場合や脱着された場合に、直列接続の確認動作を行うことで、確実にメモリ装置同士が接続されていることが確認できる。さらに、電源投入時や、新たにメモリ装置が装着された場合や取り外された場合に、自動的に各メモリ装置へのＩＤ付けが行われることで、容易に、必要な分だけメモリ装置を接続し、メモリ容量を拡張することができる。
【０３５５】
（２）リクエストへメモリ装置の識別番号ＩＤを付加することで、情報処理装置ＣＰＵ＿ＣＨＩＰから各メモリ装置Ｍ０、Ｍ１およびＭ２へリクエストが確実に転送される。また、情報処理装置ＣＰＵ＿ＣＨＩＰへのレスポンスへＩＤを付加することで、各メモリ装置から正しくデータ転送が行えたことを確認でき、情報処理装置ＣＰＵ＿ＣＨＩＰおよびメモリ装置Ｍ０、Ｍ１、Ｍ２の直列接続によって、接続信号数を減少させながらも、情報処理装置ＣＰＵ＿ＣＨＩＰは所望の処理を実行することができる。
【０３５６】
（３）リクエストへリクエスト番号を付加し、またレスポンスへレスポンス番号を付加することで、データ転送性能の向上を図るためリクエストの入力順とは異なる順番で、レスポンスが送信された場合でも、情報処理装置ＣＰＵ＿ＣＨＩＰは、どのリクエストに対するレスポンスがメモリ装置より送信されたかを知ることができ、所望の処理を高速に実行することができる。
【０３５７】
（４）リクエストインターフェース回路ＲｅＩＦとレスポンスインターフェース回路は独立に動作可能なため、データの読み出し動作と書き込み動作を同時に実行でき、データ転送性能を向上させることができる。
【０３５８】
（５）リクエストの入力順序に関わらず、早く読み出せるデータは、読み出しが遅いデータを待つことなく、すぐに読み出すことができるため、高速化が可能となる。
【０３５９】
（６）メモリ装置Ｍ２からの読み出し時は、エラー検出と訂正を行い、書き込み時は、書き込みが正しく行われなかった不良アドレスに対して代替処理を行うため、信頼性を保つことができる。
【０３６０】
（７）各メモリ装置へのリクエストに対するレスポンスの時間帯を予測し、管理し、リクエストを発行することにより、低レイテンシと高速データ転送レートを達成できる。
【０３６１】
（８）情報処理装置ＣＰＵ＿ＣＨＩＰは、各メモリ装置Ｍ０、Ｍ１およびＭ２にリード命令を含むリクエストを送信する際には、このリクエストに対するレスポンスを受信するために必要な空き状態のレスポンスキューを確保した後に、リード命令を含むリクエストを送信するため、レスポンスは低レイテンシで送信可能となり、高速データ転送を実現できる。
【０３６２】
（９）レイテンシを実測し、レイテンシの期待値と比較することで、本実施の形態の情報処理システムが正常に動作しているか判断できる。さらに、レイテンシの実測値とレイテンシの期待値との差分が許容範囲を超えた場合はレイテンシ補正動作を行うことで、常に許容範囲内の低レイテンシで動作させることができる。
【０３６３】
（１０）各メモリ装置のレイテンシを実測し、この実測レイテンシ値をレイテンシレジスタＬＴＲＥＧへ更新することで、情報処理装置ＣＰＵ＿ＣＨＰは正確なレイテンシを用いた制御を行い、低レイテンシと高速データ転送を実現することができる。
【０３６４】
（１１）コンフィグレーション回路ＣＯＮＦＩＧ内の各レジスタの値はプログラム可能なため、様々な情報処理システムの構成や性能に合わせて最適なレジスタ値を設定でき、柔軟に対応できる。
【０３６５】
（１２）各メモリ装置内のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔをキャッシュメモリとして利用するだけではなく、各メモリ装置のレスポンスキューＲｓＱｏまでもキャッシュメモリとして利用するので、キャッシュメモリサイズを増やし、キャッシュメモリのヒット率を上げることができ、低レイテンシ且つ高速かつ低電力で各メモリ装置を動作させることが出来る。
【０３６６】
また、本実施の形態では、メモリモジュールＭＥＭには１つの揮発性メモリ、１つのＮＯＲ型フラッシュメモリ、１つのＮＡＮＤ型フラッシュメモリが含まれている例について説明しているが、メモリモジュールＭＥＭに複数個の揮発性メモリ及び複数個のＮＯＲ型フラッシュメモリ及びＮＡＮＤ型フラッシュメモリが含まれる場合であっても本発明を実現できるのは言うまでもない。
【０３６７】
（第２の実施の形態）
本発明を適用した第２の実施の形態である情報処理システムについて、図３１〜図３５を用いて説明する。図３１は本発明を適用した第２の実施の形態である情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ１とから構成される情報処理システムにおいて、その構成の一例を示すブロック図である。また、図３２は前記情報処理装置ＣＰＵ＿ＣＨＩＰ１の構成の一例を示すブロック図である。メモリモジュールＭＥＭ１は、メモリ装置Ｍ１０、Ｍ１１、Ｍ１２から構成される。また、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリ装置Ｍ１０、Ｍ１１、Ｍ１２は直列に接続されている。また、図３３はメモリ装置Ｍ１０の構成の一例を示すブロック図であり、図３４はメモリ装置Ｍ１１の構成の一例を示すブロック図であり、図３５はメモリ装置Ｍ１２の構成の一例を示すブロック図である。
【０３６８】
また、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ１を動作させるクロック方式として、コモンクロック方式、ソースシンクロナスクロック方式、エンベデッドクロック方式などがあり、本発明には全てのクロック方式を利用することができる。本実施の形態では、エンベデッドクロック方式による動作を一例として説明する。以下におのおのについて説明する。
【０３６９】
情報処理装置ＣＰＵ＿ＣＨＩＰ１は、情報処理回路ＣＰＵ０、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３と、調停回路ＣＡＲＭとメモリ制御回路ＤＣＭＣ１から構成されている。メモリモジュールＭＥＭ１は、メモリ装置Ｍ１０、Ｍ１１、Ｍ１２から構成される。また、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリ装置Ｍ１０、Ｍ１１、Ｍ１２は直列に接続されている。情報処理回路ＣＰＵ０はマスター番号レジスタＭＩＤ０を装備し、情報処理回路ＣＰＵ１はマスター番号レジスタＭＩＤ１を装備し、情報処理回路ＣＰＵ２はマスター番号レジスタＭＩＤ２を装備し、情報処理回路ＣＰＵ３はマスター番号レジスタＭＩＤ３を装備している。
【０３７０】
情報処理回路ＣＰＵ０、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３は、図１と同様の情報処理回路であり、調停回路ＣＡＲＭおよびメモリ制御回路ＤＣＭＣ１を通じて、メモリモジュールＭＥＭより、ＯＳやアプリケーションプログラムおよびアプリケーションプログラムにて処理を行うデータを読み出し、実行する。メモリ制御回路ＤＣＭＣは、特に限定しないがコンフィグレーション回路ＣＯＮＦＩＧ、リクエストキューＲＥＱＱ１、ヒット判定回路ＩＤＨＴ、リクエストキューＲＥＱＱ２、コマンド生成回路ＣＯＭＧＥＮ、リクエスト出力回路ＲＱＯＵＴ１、リフレッシュ要求回路ＲＥＦ、キュー管理回路ＱＭＧＴ、レイテンシ調整回路ＬＣＨＣＫ、レスポンス入力回路ＲＳＩＮ１、レスポンスキューＲＥＳＱ１を含む。また、コンフィグレーション回路ＣＯＮＦＩＧは、図１と同様のレジスタから構成され、同様の機能を持つ。
【０３７１】
リクエストキューＲＥＱＱ１、ヒット判定回路ＩＤＨＴ、リクエストキューＲＥＱＱ２、コマンド生成回路ＣＯＭＧＥＮ、リフレッシュ要求回路ＲＥＦ、キュー管理回路ＱＭＧＴ、レイテンシ調整回路ＬＣＨＣＫ、レスポンスキューＲＥＳＱ１は、図１と同様の機能を持つ。リクエスト出力回路ＲＱＯＵＴ１は、出力回路ＯＵＴＢＬＫとシリアルデータ回路ＳＤＢＬＫから構成される。出力回路ＯＵＴＢＬＫは図１で示すリクエスト出力回路ＲＱＯＵＴと同じ機能を持っており、リクエストキューＲＥＱＱ２から送信されたリクエストを、シリアルデータ回路ＳＤＢＬＫへ転送する回路である。
【０３７２】
シリアルデータ回路ＳＤＢＬＫでは、出力回路ＯＵＴＢＬＫから送信されたリクエストへクロック情報を埋め込み、さらにシリアルデータへ変換し、リクエスト信号ＲｑＭｕｘ０を通じて、メモリモジュールＭＥＭ１へ発行する回路である。また、シリアルデータ回路ＳＤＢＬＫは、メモリモジュールＭＥＭ１へ参照クロックＲｅｆＣｋを送信する。レスポンス入力回路ＲＳＩＮ１は、入力回路ＩＮＢＬＫとパラレルデータ回路ＰＤＢＬＫから構成される。パラレルデータ回路ＰＤＢＬＫは、レスポンス信号ＲｓＭｕｘ０から送信されたシリアルデータ化されたレスポンスを受信し、参照クロックＲｅｆＣｋを利用し、このレスポンスに埋め込まれているクロック情報を取り出し、シリアルデータ化されたレスポンスをパラレルデータへ変換し、入力回路ＩＮＢＬＫへ送信する。入力回路ＩＮＢＬＫは、図３で示したリクエスト入力回路ＲＳＩＮと同じ機能を持ち、同様の動作を行う。
【０３７３】
メモリ装置Ｍ１０は、初期化回路ＩＮＩＴ、メモリ回路Ｍｅｍ０、リクエストインターフェース回路ＲｅｑＩＦ、レスポンスインターフェース回路ＲｅｓＩＦから構成される。リクエストインターフェース回路ＲｅｑＩＦはリクエスト信号変換回路ＲｑＣおよびリクエストキュー制御回路ＲｑＣＴから構成される。リクエスト変換回路ＲｑＣはパラレルデータ回路ＲＱＰＤおよびシリアルデータ回路ＲＱＳＤから構成される。レスポンスインターフェース回路ＲｅｓＩＦはレスポンスキュー制御回路ＲｓＣＴおよびレスポンス信号変換回路ＲｓＣから構成される。レスポンス信号変換回路ＲｓＣはパラレルデータ回路ＲＳＰＤおよびシリアルデータ回路ＲＳＳＤから構成される。パラレルデータ回路ＲＱＰＤは、リクエスト信号ＲｑＭｕｘ０から入力されたシリアルデータ化されたリクエストを受信し、参照クロックＲｅｆＣｋを利用し、このリクエストに埋め込まれているクロック情報を取り出し、シリアルデータ化されたリクエストをパラレルデータへ変換し、リクエストキュー制御回路ＲｑＣＴのリクエストキュー回路ＲｑＱＩへ送信する。シリアルデータ回路ＲＱＳＤはリクエストキュー制御回路ＲｑＣＴのリクエストキュー回路ＲｑＱＸＯから送信されたリクエストへクロック情報を埋め込み、さらにシリアルデータへ変換し、リクエスト信号ＲｑＭｕｘ１を通じて、メモリ装置Ｍ１１へ送信する回路である。
【０３７４】
パラレルデータ回路ＲＳＰＤは、レスポンス信号ＲｑＭｕｘ１から入力されたシリアルデータ化されたレスポンスを受信し、参照クロックＲｅｆＣｋを利用し、このレスポンスに埋め込まれているクロック情報を取り出し、シリアルデータ化されたレスポンスをパラレルデータへ変換し、レスポンスキュー制御回路ＲｓＣＴのレスポンスキュー回路ＲｓＱｐへ送信する。シリアルデータ回路ＲＳＳＤはレスポンスキュー制御回路ＲｓＣＴのレスポンススケジュール回路ＳＣＨから送信されたレスポンスへクロック情報を埋め込み、さらにシリアルデータへ変換し、レスポンス信号ＲｓＭｕｘ０を通じて、レスポンス入力回路ＲＳＩＮ１へ送信する回路である。
【０３７５】
初期化回路ＩＮＩＴ、メモリ回路Ｍｅｍ０、リクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｓＣＴは図３に示されているメモリ装置Ｍ０と同様の構成および機能を持つ。したがって、メモリ装置Ｍ１０の機能および役割は図３および図４に示されているメモリ装置Ｍ０と同様である。
【０３７６】
メモリ装置Ｍ１１は、初期化回路ＩＮＩＴ１、メモリ回路Ｍｅｍ１、リクエストインターフェース回路ＲｅｑＩＦ、レスポンスインターフェース回路ＲｅｓＩＦから構成される。リクエストインターフェース回路ＲｅｑＩＦはリクエスト信号変換回路ＲｑＣおよびリクエストキュー制御回路ＲｑＣＴから構成される。リクエスト変換回路ＲｑＣはパラレルデータ回路ＲＱＰＤおよびシリアルデータ回路ＲＱＳＤから構成される。レスポンスインターフェース回路ＲｅｓＩＦはレスポンスキュー制御回路ＲｓＣＴおよびレスポンス信号変換回路ＲｓＣから構成される。レスポンス信号変換回路ＲｓＣはパラレルデータ回路ＲＳＰＤおよびシリアルデータ回路ＲＳＳＤから構成される。パラレルデータ回路ＲＱＰＤは、リクエスト信号ＲｑＭｕｘ１から入力されたシリアルデータ化されたリクエストを受信し、参照クロックＲｅｆＣｋを利用し、このリクエストに埋め込まれているクロック情報を取り出し、シリアルデータ化されたリクエストをパラレルデータへ変換し、リクエストキュー制御回路ＲｑＣＴのリクエストキュー回路ＲｑＱＩへ送信する。
【０３７７】
シリアルデータ回路ＲＱＳＤはリクエストキュー制御回路ＲｑＣＴのリクエストキュー回路ＲｑＱＸＯから送信されたリクエストへクロック情報を埋め込み、さらにシリアルデータへ変換し、リクエスト信号ＲｑＭｕｘ２を通じて、メモリ装置Ｍ１２へ送信する回路である。パラレルデータ回路ＲＳＰＤは、レスポンス信号ＲｑＭｕｘ２から入力されたシリアルデータ化されたレスポンスを受信し、参照クロックＲｅｆＣｋを利用し、このレスポンスに埋め込まれているクロック情報を取り出し、シリアルデータ化されたレスポンスをパラレルデータへ変換し、レスポンスキュー制御回路ＲｓＣＴのレスポンスキュー回路ＲｓＱｐへ送信する。
【０３７８】
シリアルデータ回路ＲＳＳＤはレスポンスキュー制御回路ＲｓＣＴのレスポンススケジュール回路ＳＣＨから送信されたレスポンスへクロック情報を埋め込み、さらにシリアルデータへ変換し、レスポンス信号ＲｓＭｕｘ１を通じて、メモリ装置Ｍ１０へ送信する回路である。初期化回路ＩＮＩＴ１、メモリ回路Ｍｅｍ１、リクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｓＣＴは図３に示されているメモリ装置Ｍ１と同様の構成および機能を持つ。したがって、メモリ装置Ｍ１１の機能および役割は図５および図６に示されているメモリ装置Ｍ１と同様である。
【０３７９】
メモリ装置Ｍ１２は、初期化回路ＩＮＩＴ２、メモリ回路Ｍｅｍ２、リクエストインターフェース回路ＲｅｑＩＦ、レスポンスインターフェース回路ＲｅｓＩＦから構成される。リクエストインターフェース回路ＲｅｑＩＦはリクエスト信号変換回路ＲｑＣおよびリクエストキュー制御回路ＲｑＣＴから構成される。リクエスト変換回路ＲｑＣはパラレルデータ回路ＲＱＰＤおよびシリアルデータ回路ＲＱＳＤから構成される。レスポンスインターフェース回路ＲｅｓＩＦはレスポンスキュー制御回路ＲｓＣＴおよびレスポンス信号変換回路ＲｓＣから構成される。レスポンス信号変換回路ＲｓＣはパラレルデータ回路ＲＳＰＤおよびシリアルデータ回路ＲＳＳＤから構成される。
【０３８０】
パラレルデータ回路ＲＱＰＤは、リクエスト信号ＲｑＭｕｘ２から入力されたシリアルデータ化されたリクエストを受信し、参照クロックＲｅｆＣｋを利用し、このリクエストに埋め込まれているクロック情報を取り出し、シリアルデータ化されたリクエストをパラレルデータへ変換し、リクエストキュー制御回路ＲｑＣＴのリクエストキュー回路ＲｑＱＩへ送信する。メモリ装置Ｍ２は最端のメモリ装置のため、リクエスト信号ＲｑＭｕｘ３は未接続状態となり、シリアルデータ回路ＲＱＳＤおよびパラレルデータ回路ＲＳＰＤは動作しない。シリアルデータ回路ＲＳＳＤはレスポンスキュー制御回路ＲｓＣＴのレスポンススケジュール回路ＳＣＨから送信されたレスポンスへクロック情報を埋め込み、さらにシリアルデータへ変換し、レスポンス信号ＲｓＭｕｘ２を通じて、メモリ装置Ｍ１１へ送信する回路である。
【０３８１】
初期化回路ＩＮＩＴ２、メモリ回路Ｍｅｍ１、リクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｓＣＴは図３に示されているメモリ装置Ｍ１と同様の機能を持つ。したがって、メモリ装置Ｍ１２の機能および役割は図７および図８に示されているメモリ装置Ｍ２と同様である。
【０３８２】
以上説明したように、本実施の形態のエンベデッドクロック方式では、パラレルデータであるリクエストやレスポンスはシリアルデータ回路ＳＤＢＬＫ、ＲＱＳＤおよびＲＳＳＤによってクロック情報を埋め込まれ、シリアルデータへ変換され送信される。本実施の形態によって、第１の実施の形態の効果に加えて、リクエスト送信用のクロック信号と、レスポンス送信用のクロック信号を削除でき、更なる低電力動作を可能とする。さらにリクエストやレスポンス信号数を最小の１ビットまで削減することができ、最少の信号数にて、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ１から構成される情報処理システムを構成することができる。
【０３８３】
（第３の実施の形態）
図３６は、本発明の第３の実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ３から構成される情報処理システムを示した実施の形態である。本実施の形態では、ソースシンクロナスクロック方式による情報処理システムの一例を示す。情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。メモリモジュールＭＥＭ３は、メモリ装置Ｍ３１と、メモリ装置Ｍ３２と、メモリ装置Ｍ３３から構成される。ＲｑＣｋ０、ＲｑＣＫ１およびＲｑＣｋ２は、リクエストクロックであり、ＲｓＣｋ０、ＲｓＣＫ１およびＲｓＣｋ２はレスポンスクロックである。ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２は、リクエスト信号であり、ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。ＰＮＳとＣＮＳは情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ３３間の接続確認信号である。
【０３８４】
メモリ装置Ｍ３１はインターフェース回路チップＲＱＲＳＩＦ３１と複数の揮発性メモリチップＶＬＭ３１から構成される。インターフェース回路チップＲＱＲＳＩＦ３１は、図３で説明したメモリ装置の中でメモリ回路Ｍｅｍ０を除いた他の全ての回路と同等の機能を装備している。揮発性メモリチップＶＬＭ３１には、図３で説明したメモリ装置の中のメモリ回路Ｍｅｍ０と同等の機能を持っているメモリチップや汎用のダイナミックランダムアクセスメモリチップＤＲＡＭを利用することができる。
【０３８５】
メモリ装置Ｍ３２は、インターフェース回路チップＲＱＲＳＩＦ３２と複数の不揮発性メモリチップＮＶＭ３２から構成される。インターフェース回路チップＲＱＲＳＩＦ３２は、図５で説明したメモリ装置の中でメモリ回路Ｍｅｍ１を除いた他の全ての回路と同等の機能を装備している。不揮発性メモリチップＮＶＭ３２には、図５で説明したメモリ装置の中のメモリ回路Ｍｅｍ１と同等機能を持っているメモリチップや汎用の不揮発性メモリチップを利用することができる。
【０３８６】
メモリ装置Ｍ３３は、コントローラ回路チップＮＶＣＴ３３と、複数の不揮発性メモリチップＮＶＭ３３から構成される。コントローラ回路チップＮＶＣＴ３３はインターフェース回路ＲＱＲＳＩＦ３３とエラー訂正回路ＥＣＣ、代替処理回路ＲＥＰ、書き込み回数平準化回路ＷＬＶから構成される。
【０３８７】
インターフェース回路ＲＱＲＳＩＦ３３は、図７で説明したメモリ装置の中でメモリ回路Ｍｅｍ２を除いた他の全ての回路と同等の機能を装備している。不揮発性メモリチップＮＶＭ３３には、図７で説明したメモリ装置の中のメモリ回路Ｍｅｍ２と同等の機能を持っておりメモリチップや汎用の不揮発性メモリチップを利用することができる。
【０３８８】
不揮発性メモリチップＮＶＭ３３は、書き換えを繰り返すことによって、信頼性が低下し、書き込み時に書いたデータが、読み出し時には異なるデータとなったり、書き換え時にデータが書き込まれなかったりすることが稀にある。エラー訂正回路ＥＣＣはインターフェース回路ＲＱＲＳＩＦ３３が不揮発性メモリＮＡＮＤから読み出したデータにエラーがあるかどうかをチェックし、エラーがあれば訂正を行う。エラー訂正されたデータがインターフェース回路ＲＱＲＳＩＦ３３を介してレスポンス信号ＲｓＭｕｘ２から送信される。エラー訂正回路ＥＣＣによって、メモリ装置Ｍ３３の信頼性を向上できる。
【０３８９】
代替処理回路ＲＥＰはインターフェース回路ＲＱＲＳＩＦ３３から不揮発性メモリＮＡＮＤへのデータの書き込みが正しく行われたかをチェックし、正しく行われなかった場合は不揮発性メモリＮＡＮＤへあらかじめ用意されている代替用の新たなアドレスに対して書き込みを行う。代替処理回路ＲＥＰによって、メモリ装置Ｍ３３の信頼性を向上できる。
【０３９０】
書き込み回数平準化回路ＷＬＶは、インターフェース回路ＲＱＲＳＩＦ３３から不揮発性メモリＮＡＮＤへデータを書き込む際に、不揮発性メモリＮＡＮＤの一部のアドレスへのデータの書き込み回数を集中させずに、書き込み回数を平準化させる。これによって、メモリ装置Ｍ３３の製品寿命を延ばすことができる。
【０３９１】
また、メモリ装置Ｍ３３は脱着可能なメモリ装置であって、メモリカードやＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などのメモリ装置であり、インターフェース回路ＲＱＲＳＩＦ３３には接続状態を確認するための接続確認信号ＣＮＳを装備している。メモリ装置Ｍ３３が装着されると、メモリ装置Ｍ３３の接続確認信号ＣＮＳと情報処理装置ＣＰＵ＿ＣＨＩＰの接続確認信号ＰＮＳとが接続され、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ３３が装着されていることを確認できる。また、メモリ装置Ｍ３３が取り外されると、メモリ装置Ｍ３３の接続確認信号ＣＮＳと情報処理装置ＣＰＵ＿ＣＨＩＰの接続確認信号ＰＮＳは開放状態（ＯＰＥＮ）となり、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ３３が取り外されたことを確認できる。
【０３９２】
情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ３３の脱着を確認すると、自動的に各メモリ装置への認識番号ＩＤ付けが行われる。本実施の形態では、第１の実施の形態の効果に加えて、汎用メモリを複数個利用し、容易にワーク領域やコピー領域やプログラム領域やデータ領域を拡張できるため、携帯機器のシステム構成に合わせて柔軟に対応できる。さらに、新たにメモリ装置が装着された場合や取り外された場合に、自動的に各メモリ装置へのＩＤ付けが行われることで、容易に、必要な分だけメモリ装置を接続し、メモリ容量を拡張することができる。
【０３９３】
（第４の実施の形態）
図３７は、本発明の第４の実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ４から構成される情報処理システムを示した実施の形態である。本実施の形態では、エンベデッドクロック方式による情報処理システムの一例を示す。情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図３１および図３２で示したものと同等である。メモリモジュールＭＥＭ４は、メモリ装置Ｍ４１と、メモリ装置Ｍ４２と、メモリ装置Ｍ４３から構成される。ＲｅｆＣｋは参照クロックである。ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２は、リクエスト信号であり、ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。ＰＮＳとＣＮＳは情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリ装置Ｍ４３間の接続確認信号である。メモリ装置Ｍ４１はインターフェース回路チップＲＱＲＳＩＦ４１と複数の揮発性メモリチップＶＬＭ４１から構成される。インターフェース回路チップＲＱＲＳＩＦ４１は、図３３で説明したメモリ装置の中でメモリ回路Ｍｅｍ０を除いた他の全ての回路と同等の機能を装備している。揮発性メモリチップＶＬＭ４１には、図３３で説明したメモリ装置の中のメモリ回路Ｍｅｍ０と同等の機能を持っているメモリチップや汎用のダイナミックランダムアクセスメモリチップＤＲＡＭを利用することができる。
【０３９４】
メモリ装置Ｍ４２はインターフェース回路チップＲＱＲＳＩＦ４２と複数の不揮発性メモリチップＮＶＭ４２から構成される。インターフェース回路チップＲＱＲＳＩＦ４２は、図３４で説明したメモリ装置の中でメモリ回路Ｍｅｍ１を除いた他の全ての回路と同等の機能を装備している。不揮発性メモリチップＮＭＶ４２には、図３４で説明したメモリ装置の中のメモリ回路Ｍｅｍ１と同等の機能を持っているメモリチップや汎用の不揮発性メモリチップを利用することができる。
【０３９５】
メモリ装置Ｍ４３はコントローラ回路チップＮＶＣＴ４３と、複数の不揮発性メモリチップＮＶＭ４３から構成される。コントローラ回路チップＮＶＣＴ４３はインターフェース回路ＲＱＲＳＩＦ４３とエラー訂正回路ＥＣＣ、代替処理回路ＲＥＰ、書き込み回数平準化回路ＷＬＶから構成される。
【０３９６】
インターフェース回路ＲＱＲＳＩＦ４３は、図３５で説明したメモリ装置の中でメモリ回路Ｍｅｍ２を除いた他の全ての回路と同等の機能を装備している。不揮発性メモリチップＮＶＭ４３には、図３５で説明したメモリ装置の中のメモリ回路Ｍｅｍ２と同等の機能を持っているメモリチップや汎用の不揮発性メモリチップを利用することができる。不揮発性メモリチップＮＶＭ４３は、書き換えを繰り返すことによって、信頼性が低下し、書き込み時に書いたデータが、読み出し時には異なるデータとなったり、書き換え時にデータが書き込まれなかったりすることが稀にある。エラー訂正回路ＥＣＣはインターフェース回路ＲＱＲＳＩＦ３３が不揮発性メモリＮＡＮＤから読み出したデータにエラーがあるかどうかをチェックし、エラーがあれば訂正を行う。エラー訂正されたデータがインターフェース回路ＲＱＲＳＩＦ３３を介してレスポンス信号ＲｓＭｕｘ２から送信される。エラー訂正回路ＥＣＣによって、メモリ装置Ｍ４３の信頼性を向上できる。代替処理回路ＲＥＰはインターフェース回路ＲＱＲＳＩＦ３３から不揮発性メモリＮＡＮＤへのデータの書き込みが正しく行われたかをチェックし、正しく行われなかった場合は不揮発性メモリＮＡＮＤへあらかじめ用意されている代替用の新たなアドレスに対して書き込みを行う。代替処理回路ＲＥＰによって、メモリ装置Ｍ４３の信頼性を向上できる。書き込み回数平準化回路ＷＬＶは、インターフェース回路ＲＱＲＳＩＦ３３から不揮発性メモリＮＡＮＤへデータを書き込む際に、不揮発性メモリＮＡＮＤの一部のアドレスへのデータの書き込み回数を集中させずに、書き込み回数を平準化させる。これによって、メモリ装置Ｍ４３の製品寿命を延ばすことができる。
【０３９７】
また、メモリ装置Ｍ４３は脱着可能なメモリ装置であって、メモリカードやＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）などのメモリ装置であり、インターフェース回路ＲＱＲＳＩＦ４３には接続状態を確認するための接続確認信号ＣＮＳを装備している。メモリ装置Ｍ４３が装着されると、メモリ装置Ｍ３３の接続確認信号ＣＮＳと情報処理装置ＣＰＵ＿ＣＨＩＰの接続確認信号ＰＮＳとが接続され、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ４３が装着されていることを確認できる。また、メモリ装置Ｍ４３が取り外されると、メモリ装置Ｍ４３の接続確認信号ＣＮＳと情報処理装置ＣＰＵ＿ＣＨＩＰの接続確認信号ＰＮＳは開放状態（ＯＰＥＮ）となり、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ４３が取り外されたことを確認できる。情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ４３の脱着を確認すると、自動的に各メモリ装置への認識番号ＩＤ付けが行われる。
【０３９８】
本実施の形態では、第１および第２の実施の形態の効果に加えて、汎用メモリチップを複数個利用し、容易にワーク領域やコピー領域やプログラム領域やデータ領域を拡張できるため、低コスト化を図りながら携帯機器のシステム構成に合わせて柔軟に対応できる。さらに、新たにメモリ装置が装着された場合や取り外された場合に、自動的に各メモリ装置へのＩＤ付けが行われることで、容易に、必要な分だけメモリ装置を接続し、メモリ容量を拡張することができる。
【０３９９】
（第５の実施の形態）
図３８は、本発明の第５の実施の形態である。図３８（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ５００から構成されるソースシンクロナスクロック方式による情報処理システムを示した実施の形態である。図３８（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ５０１から構成されるエンベデッドクロック方式による情報処理システムを示した実施の形態である。ＲｅｆＣｋは参照クロックである。ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２は、リクエスト信号であり、ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図３１および図３２で示したものと同等である。メモリモジュールＭＥＭ５００はダイナミックランダムアクセスメモリＤＲＡＭ００およびＤＲＡＭ０１、ＮＯＲ型フラッシュメモリＮＯＲ０およびＮＡＮＤ型フラッシュメモリＮＡＮＤ０から構成される。ダイナミックランダムアクセスメモリＤＲＡＭ００およびＤＲＡＭ０１は、図３で示したメモリと同等である。ＮＯＲ型フラッシュメモリＮＯＲ０は図５で示したメモリと同等である。ＮＡＮＤ型フラッシュメモリＮＡＮＤ０は図７で示したメモリと同等である。メモリモジュールＭＥＭ５０１はダイナミックランダムアクセスメモリＤＲＡＭ１０およびＤＲＡＭ１１、ＮＯＲ型フラッシュメモリＮＯＲ１およびＮＡＮＤ型フラッシュメモリＮＡＮＤ１から構成される。ダイナミックランダムアクセスメモリＤＲＡＭ１０およびＤＲＡＭ１１は、図３３で示したメモリと同等である。ＮＯＲ型フラッシュメモリＮＯＲ１は図３４で示したメモリと同等である。ＮＡＮＤ型フラッシュメモリＮＡＮＤ１は図３５で示したメモリと同等である。
【０４００】
本実施の形態では、容易に、ダイナミックランダムアクセスメモリＤＲＡＭを複数接続することができ、情報処理装置ＣＰＵ＿ＣＨＩＰが必要とするワーク領域やコピー領域を容易に拡張できる。ダイナミックランダムアクセスメモリＤＲＡＭにてワーク領域やコピー領域を拡張することで、ダイナミックランダムアクセスメモリＤＲＡＭへ格納されるプログラムやデータのサイズが増え、最も情報処理装置に近いダイナミックランダムアクセスメモリＤＲＡＭへのアクセス頻度が高くなるため高速処理が可能となる。
【０４０１】
本実施の形態では、ダイナミックランダムアクセスメモリの複数接続について説明したが、ＮＯＲ型フラッシュメモリＮＯＲや、ＮＡＮＤ型フラッシュメモリＮＡＮＤは、必要に応じて複数個接続でき、容易にプログラム領域やデータ領域を拡張でき、携帯機器のシステム構成に合わせて柔軟に対応できる。
【０４０２】
（第６の実施の形態）
図３９は、本発明の第６の実施の形態である。図３９（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ６００から構成されるソースシンクロナスクロック方式による情報処理システムを示した実施の形態である。図３９（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ６０１から構成されるエンベデッドクロック方式による情報処理システムを示した実施の形態である。ＲｅｆＣｋは参照クロックである。ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２は、リクエスト信号であり、ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図３１および図３２で示したものと同等である。メモリモジュールＭＥＭ６００はＮＯＲ型フラッシュメモリＮＯＲ０、ダイナミックランダムアクセスメモリＤＲＡＭ０、およびＮＡＮＤ型フラッシュメモリＮＡＮＤ０から構成される。ダイナミックランダムアクセスメモリＤＲＡＭ０は、図３で示したメモリと同等である。ＮＯＲ型フラッシュメモリＮＯＲ０は図５で示したメモリと同等である。ＮＡＮＤ型フラッシュメモリＮＡＮＤ０は図７で示したメモリと同等である。メモリモジュールＭＥＭ６０１はＮＯＲ型フラッシュメモリＮＯＲ１、ダイナミックランダムアクセスメモリＤＲＡＭ１、およびＮＡＮＤ型フラッシュメモリＮＡＮＤ１から構成される。ダイナミックランダムアクセスメモリＤＲＡＭ１は、図３３で示したメモリと同等である。ＮＯＲ型フラッシュメモリＮＯＲ１は図３４で示したメモリと同等である。ＮＡＮＤ型フラッシュメモリＮＡＮＤ１は図３５で示したメモリと同等である。
【０４０３】
メモリモジュールＭＥＭ６０１およびＭＥＭ６０１は、それを構成するメモリの接続の順番が、情報処理装置ＣＰＵ＿ＣＨＩＰから近い順に、ＮＯＲ型フラッシュメモリセルを利用したＮＯＲ型フラッシュメモリＮＯＲ、ダイナミックメモリセルを利用したダイナミックランダムアクセスメモリＤＲＡＭ、ＮＡＮＤ型フラッシュメモリセルを利用したＮＡＮＤ型フラッシュメモリＮＡＮＤである。携帯電話機では、電話やメールの待ち受け時は、ＯＳや通信用プログラムなどが格納されるＮＯＲ型フラッシュメモリＮＯＲへの間欠的なアクセスが支配的となる。したがって、不揮発性メモリであるＮＯＲ型フラッシュメモリＮＯＲを、情報処理装置ＣＰＵ＿ＣＨＩＰから最も近くに接続する本実施の形態では、ダイナミックランダムアクセスメモリＤＲＡＭをセルフリフレッシュ状態にし、ＮＯＲ型フラッシュメモリＮＯＲのみを動作させることができ、電話やメールの待ち受け時の消費電力を低減することができる。
【０４０４】
（第７の実施の形態）
図４０は、本発明の第７の実施の形態である。図４０（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ７００とＭＥＭ７１０から構成されるソースシンクロナスクロック方式による情報処理システムを示した実施の形態である。図４０（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ７０１とＭＥＭ７１１から構成されるエンベデッドクロック方式による情報処理システムを示した実施の形態である。ＲｅｆＣｋ０およびＲｅｆＣｋ１は参照クロックである。ＲｑＭｕｘ０、ＲｑＭｕｘ１、ＲｑＭｕｘ２、およびＲｑＭｕｘ３はリクエスト信号であり、ＲｓＭｕｘ０、ＲｓＭｕｘ１、ＲｓＭｕｘ２およびＲｓＭｕｘ３はレスポンス信号である。情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図３１および図３２で示したものと同等である。メモリモジュールＭＥＭ７００はＮＯＲ型フラッシュメモリＮＯＲ０およびＮＡＮＤ型フラッシュメモリＮＡＮＤ０から構成される。メモリモジュールＭＥＭ７１０はダイナミックランダムアクセスメモリＤＲＡＭ００およびＤＲＡＭ０１から構成される。ダイナミックランダムアクセスメモリＤＲＡＭ００およびＤＲＡＭ０１には、図３で示したメモリ装置Ｍ０や、図３６で示したメモリ装置Ｍ３１のいずれのメモリ装置も適用できる。ＮＯＲ型フラッシュメモリＮＯＲ０には、図５で示したメモリ装置Ｍ１や、図３６で示したメモリ装置Ｍ３２のいずれのメモリ装置も適用できる。ＮＡＮＤ型フラッシュメモリＮＡＮＤ０には、図７で示したメモリ装置Ｍ２や、図３６で示したメモリ装置Ｍ３３のいずれのメモリ装置も適用できる。メモリモジュールＭＥＭ７０１はＮＯＲ型フラッシュメモリＮＯＲ１およびＮＡＮＤ型フラッシュメモリＮＡＮＤ１から構成される。メモリモジュールＭＥＭ７１１はダイナミックランダムアクセスメモリＤＲＡＭ１０およびＤＲＡＭ１１から構成される。ダイナミックランダムアクセスメモリＤＲＡＭ１０およびＤＲＡＭ１１には、図３３で示したメモリ装置Ｍ１０や、図３７で示したメモリ装置Ｍ４１のいずれのメモリ装置も適用できる。ＮＯＲ型フラッシュメモリＮＯＲ０には、図３４で示したメモリ装置Ｍ１１や、図３７で示したメモリ装置Ｍ４２のいずれのメモリ装置も適用できる。ＮＡＮＤ型フラッシュメモリＮＡＮＤ０には、図３５で示したメモリ装置Ｍ１２や、図３７で示したメモリ装置Ｍ４３のいずれのメモリ装置も適用できる。
【０４０５】
本実施の形態では、ダイナミックランダムアクセスメモリから構成されるメモリモジュールと、不揮発性メモリから構成されるメモリモジュールが、別々に情報処理装置へ接続される。携帯電話機では、電話やメールの待ち受け時は、ＯＳや通信用プログラムなどが格納されるＮＯＲ型フラッシュメモリへの間欠的なアクセスが支配的となる。したがって、不揮発性メモリであるＮＯＲ型フラッシュメモリを、情報処理装置ＣＰＵ＿ＣＨＩＰから最も近くに接続する本実施の形態では、ダイナミックランダムアクセスメモリから構成されるメモリモジュールをセルフリフレッシュ状態にし、さらにリクエストクロックＲｑＣｋ２およびＲｑＣｋ３や、レスポンスクロックＲｓＣｋ２やＲｓＣｋ３や参照クロックＲｅｆＣｋ１を停止し、ＮＯＲ型フラッシュメモリのみを動作させることができ、電話やメールの待ち受け時の消費電力を低減することができる。
【０４０６】
（第８の実施の形態）
図４１は、本発明の第８の実施の形態である。図４１（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ９００から構成されるソースシンクロナスクロック方式による情報処理システムを示した実施の形態である。図４１（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ９０１から構成されるエンベデッドクロック方式による情報処理システムを示した実施の形態である。ＲｅｆＣｋは参照クロックである。ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２はリクエスト信号であり、ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図３１および図３２で示したものと同等である。メモリモジュールＭＥＭ９００はダイナミックランダムアクセスメモリＤＲＡＭ０とＮＡＮＤ型フラッシュメモリＮＡＮＤ００とＮＡＮＤ０１から構成される。ダイナミックランダムアクセスメモリＤＲＡＭ０には、図３で示したメモリ装置Ｍ０や、図３６で示したメモリ装置Ｍ３１のいずれのメモリ装置も適用できる。ＮＡＮＤ型フラッシュメモリＮＡＮＤ０には、図７で示したメモリ装置Ｍ２や、図３６で示したメモリ装置Ｍ３３のいずれのメモリ装置も適用できる。メモリモジュールＭＥＭ９０１はダイナミックランダムアクセスメモリＤＲＡＭ１とＮＡＮＤ型フラッシュメモリＮＡＮＤ１０とＮＡＮＤ１１から構成される。ダイナミックランダムアクセスメモリＤＲＡＭ１には、図３３で示したメモリ装置Ｍ１０や、図３７で示したメモリ装置Ｍ４１のいずれのメモリ装置も適用できる。ＮＡＮＤ型フラッシュメモリＮＡＮＤ１０およびＮＡＮＤ１１には、図３５で示したメモリ装置Ｍ１２や、図３７で示したメモリ装置Ｍ４３のいずれのメモリ装置も適用できる。
【０４０７】
ＮＡＮＤ型フラッシュメモリはＮＯＲ型フラッシュメモリより大容量かつ低コストを実現できるメモリである。ＮＯＲ型フラッシュメモリの代わりにＮＡＮＤ型フラッシュメモリを利用することでＮＡＮＤ型フラッシュメモリＮＡＮＤ０へ、ＯＳやアプリケーションプログラムを格納でき、大容量かつ低コストの情報処理システムが実現できる。さらに、ＮＡＮＤ型フラッシュメモリＮＡＮＤ０へ格納しているＯＳやアプリケーションプログラムをあらかじめダイナミックランダムアクセスメモリＤＲＡＭへ転送することで、情報処理システムの高性能化が図れる。
【０４０８】
（第９の実施の形態）
図４２は、本発明の第９の実施の形態である。図４２（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ１０００から構成されるソースシンクロナスクロック方式による情報処理システムを示した実施の形態である。図４２（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ１００１から構成されるエンベデッドクロック方式による情報処理システムを示した実施の形態である。ＲｅｆＣｋは参照クロックである。ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２は、リクエスト信号であり、ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図３１および図３２で示したものと同等である。メモリモジュールＭＥＭ１０００はダイナミックランダムアクセスメモリＤＲＡＭ０、ＮＯＲ型フラッシュメモリＮＯＲ０、ＮＡＮＤ型フラッシュメモリＮＡＮＤ０およびハードディスクドライブＨＤＤ０から構成される。ダイナミックランダムアクセスメモリＤＲＡＭ０には、図３で示したメモリ装置Ｍ０や、図３６で示したメモリ装置Ｍ３１のいずれのメモリ装置も適用できる。ＮＯＲ型フラッシュメモリＮＯＲ０には、図５で示したメモリ装置Ｍ１や、図３６で示したメモリ装置Ｍ３２のいずれのメモリ装置も適用できる。ＮＡＮＤ型フラッシュメモリＮＡＮＤ０には、図７で示したメモリ装置Ｍ２や、図３６で示したメモリ装置Ｍ３３のいずれのメモリ装置も適用できる。メモリモジュールＭＥＭ１００１はダイナミックランダムアクセスメモリＤＲＡＭ１、ＮＯＲ型フラッシュメモリＮＯＲ１、ＮＡＮＤ型フラッシュメモリＮＡＮＤ１およびハードディスクドライブＨＤＤ１から構成される。ダイナミックランダムアクセスメモリＤＲＡＭ１には、図３３で示したメモリ装置Ｍ１０や、図３７で示したメモリ装置Ｍ４１のいずれのメモリ装置も適用できる。ＮＯＲ型フラッシュメモリＮＯＲ０には、図３４で示したメモリ装置Ｍ１や、図３７で示したメモリ装置Ｍ３２のいずれのメモリ装置も適用できる。ＮＡＮＤ型フラッシュメモリＮＡＮＤ１０およびＮＡＮＤ１１には、図３５で示したメモリ装置Ｍ１２や、図３７で示したメモリ装置Ｍ４３のいずれのメモリ装置も適用できる。
【０４０９】
ハードディスクＨＤＤは、ＮＡＮＤ型フラッシュメモリＮＡＮＤより大容量かつ低コストを実現できるメモリである。データの読み出し単位や、アドレス管理方法や、エラー検出訂正方法に関していえば、もともとハードディスクＨＤＤで実現していたデータの読み出し単位や、アドレス管理方法や、エラー検出訂正方法などをフラッシュメモリが引き継いでいるため、ハードディスクＨＤＤを容易に追加接続し、大容量かつ低コストのメモリモジュールを実現できる。
【０４１０】
（第１０の実施の形態）
図４３は、本発明の第１０の実施の形態である。図４３（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ１１００から構成されるソースシンクロナスクロック方式による情報処理システムを示した実施の形態である。図４３（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ１１０１から構成されるエンベデッドクロック方式による情報処理システムを示した実施の形態である。ＲｅｆＣｋは参照クロックである。ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２は、リクエスト信号であり、ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図３１および図３２で示したものと同等である。
【０４１１】
メモリモジュールＭＥＭ１１００は、第１の不揮発性メモリＭＲＡＭ０、第２の不揮発性メモリＮＶＭ２０、第３の不揮発性メモリＮＶＭ３０から構成される。第１の不揮発性メモリＭＲＡＭ０は、図３で示したメモリ装置Ｍ０のメモリ回路Ｍｅｍ０が、不揮発性のマグネティックメモリセルで構成されているマグネティックランダムアクセスメモリＭＲＡＭであっても、図３６で示したメモリ装置Ｍ３１のダイナミックランダムアクセスメモリＤＲＡＭがマグネティックランダムアクセスメモリＭＲＡＭに置き換わったメモリ装置であっても良い。第２の不揮発性メモリＮＶＭ２０には、図５で示したメモリ装置Ｍ１や、図３４で示したメモリ装置Ｍ１１のいずれのメモリ装置も適用できる。第３の不揮発性メモリＮＶＭ３０には、図７で示したメモリ装置Ｍ２や、図３５で示したメモリ装置Ｍ１１のいずれのメモリ装置も適用できる。メモリモジュールＭＥＭ１１０１は、第１の不揮発性メモリＭＲＡＭ１、第２の不揮発性メモリＮＶＭ２１、第３の不揮発性メモリＮＶＭ３１から構成される。第１の不揮発性メモリＭＲＡＭ１は、図３３で示したメモリ装置Ｍ１０のメモリ回路Ｍｅｍ０が、不揮発性のマグネティックメモリセルで構成されているマグネティックランダムアクセスメモリＭＲＡＭであっても、図３７で示したメモリ装置Ｍ３１のダイナミックランダムアクセスメモリＤＲＡＭがマグネティックランダムアクセスメモリＭＲＡＭに置き換わったメモリ装置であっても良い。第２の不揮発性メモリＮＶＭ２１には、図３４で示したメモリ装置Ｍ１や、図３７で示したメモリ装置Ｍ３２のいずれのメモリ装置も適用できる。第３の不揮発性メモリＮＶＭ３１には、図３５で示したメモリ装置Ｍ１２や、図３７で示したメモリ装置Ｍ４３のいずれのメモリ装置も適用できる。
【０４１２】
揮発性のダイナミックランダムアクセスメモリＤＲＡＭの代わりに不揮発性のマグネティックランダムアクセスメモリＭＲＡＭを用いることで、メモリ回路内のデータ保持動作を定期的に行う必要がないため、低電力化が可能となる。また、第２の不揮発性メモリＮＶＭ２０は、図５で示したメモリ回路Ｍｅｍ１が不揮発性の相変化メモリセルから構成される相変化メモリＰＣＭであっても、図３６で示したメモリ装置Ｍ３２のＮＯＲ型フラッシュメモリＮＯＲが相変化メモリＰＣＭに置き換わったメモリ装置であっても良い。また、第２の不揮発性メモリＮＶＭ２１は、図３４で示したメモリ回路Ｍｅｍ１が不揮発性の相変化メモリセルから構成される相変化メモリＰＣＭであっても、図３７で示したメモリ装置Ｍ４２のＮＯＲ型フラッシュメモリＮＯＲが相変化メモリＰＣＭに置き換わったメモリ装置であっても良い。
【０４１３】
（第１１の実施の形態）
図４４は本発明に係る情報処理システムの第１１の実施の形態を示したものである。図４４（Ａ）は上面図であり、図４４（Ｂ）は上面図に示したＡ−Ａ’線に沿った部分の断面図である。本実施の形態のメモリモジュールは、ボールグリッドアレイ（ＢＧＡ）によって装置に実装する基盤（例えばガラスエポキシ基板でできたプリント回路ボード）ＰＣＢ上に、ＣＨＩＰＭ１、ＣＨＩＰＭ２、ＣＨＩＰＭ３、ＣＨＩＰＭ４が搭載されている。特に限定しないが、ＣＨＩＰＭ１およびＣＨＩＰＭ２は不揮発性メモリ、およびＣＨＩＰＭ３はランダムアクセスメモリである。ＣＨＩＰＭ４は情報処理装置ＣＰＵ＿ＣＨＩＰである。ＣＨＩＰＭ１とＣＨＩＰＭ２とＣＨＩＰＭ３とＣＨＩＰＭ４は、それぞれのチップを貫通しているチップ貫通配線ＴＳＶによって接続されている。また、ＣＨＩＰＭ１と基盤ＰＣＢはチップ貫通配線ＴＳＶによって接続されており、ＣＨＩＰＭ２と基盤ＰＣＢはチップ貫通配線ＴＳＶによって接続されており、ＣＨＩＰＭ３と基盤ＰＣＢはチップ貫通配線ＴＳＶによって接続されており、ＣＨＩＰＭ４と基盤ＰＣＢはチップ貫通配線ＴＳＶ、ボールグリッドアレイ（ＢＧＡ）によって接続されている。
【０４１４】
本実装方法では、図１で示す情報処理システム、図３１で示す情報処理システム、図３９で示す情報処理システム、図４０で示す情報処理システム、図４１で示す情報処理システムおよび図４３で示す情報処理システムを１つの封止体に集積できる。
【０４１５】
本実施の形態ではプリント回路ボードＰＣＢ上にベアチップを積層し、各チップはチップ貫通配線ＴＳＶによって配線ができ、ボンディング配線を利用する必要がないため実装面積の小さなメモリモジュールを構成することができる。さらに、チップ貫通配線ＴＳＶによってチップ間配線長を短くすることができるため、より高性能でより信頼性の高いマルチチップモジュールが実現できる。
【０４１６】
（第１２の実施の形態）
図４５に、本発明に係る情報処理システムを利用した携帯電話の第１２の実施の形態を示す。携帯電話は、アンテナＡＮＴ、無線ブロックＲＦ、音声コーデックブロックＳＰ、スピーカーＳＫ、マイクロホンＭＫ、情報処理装置ＣＰＵ、液晶表示部ＬＣＤ、キーボードＫＥＹおよび本発明のメモリモジュールＭＳＭで構成される。情報処理装置ＣＰＵ＿ＭＡＩＮは複数の情報処理回路を持ち、その中の１つの情報処理回路ＣＰＵ０はベースバンド処理回路ＢＢとして、他の中の少なくとも１つの情報処理回路ＣＰＵ１はアプリケーションプロセッサＡＰとして動作する。
【０４１７】
通話時の動作を説明する。アンテナＡＮＴを通って受信された音声は無線ブロックＲＦで増幅され、情報処理装置ＣＰＵ０へ入力される。情報処理装置ＣＰＵ０では、音声のアナログ信号をデジタル信号に変換し、エラー訂正と復号処理を行い、音声コーデックブロックＳＰへ出力する。音声コーデックブロックがデジタル信号をアナログ信号に変換しスピーカーＳＫに出力すると、スピーカーから相手の声が聞こえる。携帯電話から、インターネットのホームページにアクセスし、音楽データをダウンロードし、再生して聞き、最後にダウンロードした音楽データを保存するという一連の作業を行うときの動作を説明する。
【０４１８】
メモリモジュールＭＥＭには、ＯＳ、アプリケーションプログラム（メール、Ｗｅｂブラウザ、音楽再生プログラム、動作再生プログラム、ゲームプログラムなど）、音楽データ、静止画データ、動画データなどが格納されている。キーボードより、Ｗｅｂブラウザの起動を指示すると、メモリモジュールＭＳＭ内のＮＯＲ型フラッシュメモリへ格納されているＷｅｂブラウザのプログラムは情報処理回路ＣＰＵ１によって読み出され、実行され、液晶表示ＬＣＤにＷｅｂブラウザが表示される。所望のホームページにアクセスし、気に入った音楽データのダウンロードをキーボードＫＥＹより指示すると、音楽データは、アンテナＡＮＴを通って受信され、無線ブロックＲＦで増幅され、情報処理装置ＣＰＵ０へ入力される。情報処理装置ＣＰＵ０では、アナログ信号である音楽データをデジタル信号に変換し、エラー訂正と復号処理を行う。デジタル信号化された音楽データはメモリモジュールＭＳＭ内のダイナミックランダムアクセスメモリＤＲＡＭへ一旦、保持され、最終的に、メモリモジュールＭＥＭのＮＡＮＤ型フラッシュメモリへと転送され格納される。
【０４１９】
次に、キーボードＫＥＹより、音楽再生プログラムの起動を指示するとメモリモジュールＭＳＭ内のＮＯＲ型フラッシュメモリへ格納されている音楽再生プログラムが、情報処理回路ＣＰＵ１によって読み出され、実行され、液晶表示ＬＣＤに音楽再生プログラムが表示される。キーボードＫＥＹより、メモリモジュール内ＮＡＮＤ型フラッシュメモリへダウンロードした音楽データを聞くための指示を行うと、情報処理回路ＣＰＵ１は音楽再生プログラムを実行し、ＮＡＮＤ型フラッシュメモリへ保持している音楽データを処理し、最終的にスピーカーＳＫから音楽が聞こえてくる。本実施の形態のメモリモジュールＭＳＭ内のＮＯＲ型フラッシュメモリには、Ｗｅｂブラウザと音楽再生プログラムや、電子メールプログラムなどの複数のプログラムが格納され、情報処理装置ＣＰＵ＿ＭＡＩＮは複数の情報処理回路ＣＰＵ０〜３を持つため、同時に複数のプログラムを実行することができる。電話や電子メールの待ち受け時には、情報処理装置ＣＰＵ＿ＭＡＩＮは、メモリモジュールＭＳＭへのクロックを必要最小限の周波数で動作させることができ消費電力を極端に小さくできる。
【０４２０】
このように、本発明に係るメモリモジュールを用いることにより、大量のメール、音楽再生、アプリケ−ションプログラムや音楽データ、静止画像データ、動画データなどを格納でき、さらに複数のプログラムを同時に実行できる。
【０４２１】
（第１３の実施の形態）
図４６に、本発明に係る情報処理システムを利用した携帯電話の第１３の実施の形態を示す。携帯電話は、アンテナＡＮＴ、無線ブロックＲＦ、音声コーデックブロックＳＰ、スピーカーＳＫ、マイクロホンＭＫ、液晶表示部ＬＣＤ、キーボードＫＥＹおよび、メモリモジュールＭＳＭと情報処理装置ＣＰＵ＿ＭＡＩＮを１つの封止体に集積した本発明の情報処理システムＳＬＰで構成される。
【０４２２】
本発明の情報処理システムＳＬＰを用いることによって、部品点数を削減できるため、低コスト化ができ、携帯電話の信頼性が向上する、携帯電話を構成する部品の実装面積を小さくでき、携帯電話の小型化ができる。
【０４２３】
（第１４の実施の形態）
図４７は、本発明の第１４の実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ０、ＣＰＵ＿ＣＨＩＰ１、ＣＰＵ＿ＣＨＩＰ２、ＣＰＵ＿ＣＨＩＰ３とメモリモジュールＭＥＭ３０、ＭＥＭ３１、ＭＥＭ３２、ＭＥＭ３３から構成される情報処理システムを示した実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ０、ＣＰＵ＿ＣＨＩＰ１、ＣＰＵ＿ＣＨＩＰ２、ＣＰＵ＿ＣＨＩＰ３は、図１で示した情報処理装置ＣＰＵ＿ＣＨＩＰと同等である。メモリモジュールＭＥＭ３０、ＭＥＭ３１、ＭＥＭ３２、ＭＥＭ３３は、図１で示したメモリモジュールＭＥＭと同等である。ＲｑＣ０からＲｑＣ７はリクエストクロックであり、ＲｓＣ０からＲｓＣ７はレスポンスクロックである。ＲｑＭ０からＲｑＭ７はリクエスト信号であり、ＲｓＭ０からＲｓＭ１はレスポンス信号である。本実施の形態では、容易に情報処理装置を複数接続することができ、高速処理が可能となる。さらに、携帯機器のシステム構成や、必要とする性能に合わせて、柔軟に情報処理装置やメモリモジュールを接続することができる。
【０４２４】
（第１５の実施の形態）
図４８は、本発明の第１５の実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ０、ＣＰＵ＿ＣＨＩＰ１、ＣＰＵ＿ＣＨＩＰ２、ＣＰＵ＿ＣＨＩＰ３とメモリモジュールＭＥＭ４０、ＭＥＭ４１、ＭＥＭ４２、ＭＥＭ４３から構成される情報処理システムを示した実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ０、ＣＰＵ＿ＣＨＩＰ１、ＣＰＵ＿ＣＨＩＰ２、ＣＰＵ＿ＣＨＩＰ３は、図３１で示した情報処理装置ＣＰＵ＿ＣＨＩＰ１と同等である。メモリモジュールＭＥＭ４０、ＭＥＭ４１、ＭＥＭ４２、ＭＥＭ４３は、図３１で示したメモリモジュールＭＥＭ１と同等である。ＲｅｆＣｋ４０、ＲｅｆＣｋ４１、ＲｅｆＣｋ４２、ＲｅｆＣｋ４３、ＲｅｆＣｋ０１、ＲｅｆＣｋ０２、ＲｅｆＣｋ１３およびＲｅｆＣｋ２３は参照クロックであり、ＲｑＭ０からＲｑＭ７はリクエスト信号であり、ＲｓＭ０からＲｓＭ１はレスポンス信号である。本実施の形態では、容易に情報処理装置を複数接続することができ、高速処理が可能となる。さらに、携帯機器のシステム構成や、必要とする性能に合わせて、柔軟に情報処理装置やメモリモジュールを接続することができる。
【０４２５】
＜各実施の形態に示される発明の効果のまとめ＞
以上説明したように本明細書に開示される発明によって得られる主な効果は以下の通りである。
【０４２６】
第１に、電源投入直後や、新たにメモリ装置が装着された場合や脱着された場合に、直列接続の確認動作を行うことで、確実にメモリ装置同士が接続されていることが確認できる。さらに、電源投入時や、新たにメモリ装置が装着された場合や取り外された場合に、自動的に各メモリ装置へのＩＤ付けが行われることで、容易に、必要な分だけメモリ装置を接続し、メモリ容量を拡張することができる。
【０４２７】
第２に、リクエストへメモリ装置の識別番号ＩＤを付加することで、情報処理装置ＣＰＵ＿ＣＨＩＰから各メモリ装置Ｍ０、Ｍ１およびＭ２へリクエストが確実に転送される。また、情報処理装置ＣＰＵ＿ＣＨＩＰへのレスポンスへＩＤを付加することで、各メモリ装置から正しくデータ転送が行えたことを確認でき、情報処理装置ＣＰＵ＿ＣＨＩＰおよびメモリ装置Ｍ０、Ｍ１、Ｍ２の直列接続によって、接続信号数を減少させながらも、情報処理装置ＣＰＵ＿ＣＨＩＰは所望の処理を実行することができる。
【０４２８】
第３に、リクエストへリクエスト番号を付加し、またレスポンスへレスポンス番号を付加することで、データ転送性能の向上を図るためリクエストの入力順とは異なる順番で、レスポンスが送信された場合でも、情報処理装置ＣＰＵ＿ＣＨＩＰは、どのリクエストに対するレスポンスがメモリ装置より送信されたかを知ることができ、所望の処理を高速に実行することができる。
【０４２９】
第４に、リクエストインターフェース回路ＲｅＩＦとレスポンスインターフェース回路は独立に動作可能なため、データの読み出し動作と書き込み動作を同時に実行でき、データ転送性能を向上させることができる。
【０４３０】
第５に、リクエストの入力順序に関わらず、早く読み出せるデータは、読み出しが遅いデータを待つことなく、すぐに読み出すことができるため、高速化が可能となる。
【０４３１】
第６に、メモリ装置Ｍ２からの読み出し時は、エラー検出と訂正を行い、書き込み時は、書き込みが正しく行われなかった不良アドレスに対して代替処理を行うため、信頼性を保つことができる。
【０４３２】
第７に、各メモリ装置へのリクエストに対するレスポンスの時間帯を予測し、管理し、リクエストを発行することにより、低レイテンシと高速データ転送レートを達成できる。
【０４３３】
第８に、情報処理装置ＣＰＵ＿ＣＨＩＰや、各メモリ装置Ｍ０、Ｍ１およびＭ２がリード命令を含むリクエストを送信する際には、このリクエストに対するレスポンスを受信するために必要な空き状態のレスポンスキューを確保した後に、リード命令を含むリクエストを送信するため、レスポンスは低レイテンシで送信可能となり、高速データ転送を実現できる。
【０４３４】
第９に、レイテンシを実測し、レイテンシの期待値と比較することで、本実施の形態の情報処理システムが正常に動作しているか判断できる。さらに、レイテンシの実測値とレイテンシの期待値との差分が許容範囲を超えた場合はレイテンシ補正動作を行うことで、常に許容範囲内の低レイテンシで動作させることができる。
【０４３５】
第１０に、各メモリ装置のレイテンシを実測し、この実測レイテンシ値をレイテンシレジスタＬＴＲＥＧへ更新することで、情報処理装置ＣＰＵ＿ＣＨＰは正確なレイテンシを用いた制御を行い、低レイテンシと高速データ転送を実現することができる。
【０４３６】
第１１に、コンフィグレーション回路ＣＯＮＦＩＧ内の各レジスタの値はプログラム可能なため、様々な情報処理システムの構成や性能に合わせて最適なレジスタ値を設定でき、柔軟に対応できる。
【０４３７】
第１２に、各メモリ装置内のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔをキャッシュメモリとして利用するだけではなく、各メモリ装置のレスポンスキューＲｓＱｏまでもキャッシュメモリとして利用するので、キャッシュメモリサイズを増やし、キャッシュメモリのヒット率を上げることができ、低レイテンシ且つ高速かつ低電力で各メモリ装置を動作させることが出来る。
【０４３８】
第１３に、複数の半導体チップを一つの封止体に実装することによって実装面積の小さなシステムメモリ・モジュールや、情報処理システムを提供できる。
【産業上の利用可能性】
【０４３９】
本発明は、半導体装置の技術に関し、特に、不揮発性メモリと情報処理装置を含む情報処理システムおよびメモリモジュールの制御方法に利用可能である。
【符号の説明】
【０４４０】
ＣＰＵ＿ＣＨＩＰ…情報処理装置、ＣＰＵ０、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３…情報処理回路、ＣＡＲＢ…調停回路、ＤＣＭＣ…メモリ制御回路、ＭＥＭ…メモリモジュール、Ｍ０、Ｍ１、Ｍ２…メモリ装置、ＭＩＤ０、ＭＩＤ１、ＭＩＤ２、ＭＩＤ３…マスター番号レジスタ、ＣＯＮＦＩＧ…コンフィグレーション回路、ＲＥＱＱ１、ＲＥＱＱ２…リクエストキュー、ＩＤＨＴ…ヒット判定回路、ＣＯＭＧＥＮ…コマンド生成回路、ＲＱＯＵＴ…リクエスト出力回路、ＲＥＦ…リフレッシュ要求回路、ＱＭＧＴ…キュー管理回路、ＬＣＨＣＫ…レイテンシ調整回路、ＲＳＩＮ…レスポンス入力回路、ＲＥＳＱ１…レスポンスキュー、ＲｅｑＩＦ…リクエストインターフェース回路、ＲｅｓＩＦ…レスポンスインターフェース回路、ＩＮＩＴ、ＩＮＩＴ１、ＩＮＩＴ２…初期設定回路、Ｍｅｍ０、Ｍｅｍ１、Ｍｅｍ２…メモリ回路、ＲｑＣｋＣ…リクエストクロック制御回路、Ｄｒｖ１…クロックドライバ、Ｄｉｖ１…クロック分周回路、ＲｑＣＴ…リクエストキュー制御回路、ＲｑＱＩ、ＲｑＱＸＩ、ＲｑＱＸＯ…リクエストキュー回路、ＩＤＲ…ＩＤレジスタ回路、ＣＰＱ…ＩＤ比較回路、ＲｓＱｏ、ＲｓＱｐ…レスポンスキュー回路、ＲＲＧ…レスポンス優先順位設定レジスタ回路、ＲＱＱＭ…リクエストキューチェック回路、ＩＤＶ…ＩＤ有効ビット、ＢＲ…ブートデバイスフラグレジスタ、ＥＲ…終端デバイスフラグレジスタ、ＲｓＣｋＣ…レスポンスクロック制御回路、ＲｓＣＴ…レスポンスキュー制御回路、Ｄｒｖ２…クロックドライバ、Ｄｉｖ２…クロック分周回路、ＲｓＣＴ…レスポンスキュー制御回路、ＲＳＱＭ…レスポンスキューチェック回路、ＳＣＨ…レスポンススケジュール回路、ＬＣ…レイテンシコードレジスタ、ＤＣ…デバイスコードレジスタ、Ｂｓｉｇ…ブートデバイス認識信号、ＲｑＣｋ０、ＲｑＣＫ１、ＲｑＣｋ２…リクエストクロック、ＲｓＣｋ０、ＲｓＣＫ１、ＲｓＣｋ２…レスポンスクロック、ＲｑＭｕｘ０、ＲｑＭｕｘ１、ＲｑＭｕｘ２…リクエスト信号、ＲｓＭｕｘ０、ＲｓＭｕｘ１、ＲｓＭｕｘ２…レスポンス信号、ｃｋ１、ｃｋ２、ｃｋ３、ｃｋ４…クロック信号、ＣｍｄＤｅｃ…コマンドデコーダ、ＣｏｎｔＬｏｇｉｃ…制御回路、ＲａｄｄＬａｔ…ロウアドレスバッファ、ＣａｄｄＬａｔ…カラムアドレスバッファ、ＲｅｆＣ…リフレッシュカウンタ、Ｔｈｍｏ…温度計、ＷＤａｔａＬａｔ…ライトデータバッファ、ＲＤａｔａＬａｔ…リードデータバッファ、ＲｏｗＤｅｃ…ロウデコーダ、ＣｏｌＤｅｃ…カラムデコーダ、ＳｅｎｓｅＡｍｐ…センスアンプ、ＤａｔａＣｏｎｔ…データ制御回路、ＢＡＮＫ０、ＢＡＮＫ１、ＢＡＮＫ２、ＢＡＮＫ３、ＢＡＮＫ４、ＢＡＮＫ５、ＢＡＮＫ６、ＢＡＮＫ７…メモリバンク、ＭＢａｎｋ０、ＭＢａｎｋ１、ＭＢａｎｋ２、ＭＢａｎｋ３、ＭＢａｎｋ４、ＭＢａｎｋ５、ＭＢａｎｋ６、ＭＢａｎｋ７…メモリ回路、ＢｏｔＩＤ…ブートデバイスＩＤ値、ＮＶ１ＢＡＮＫ０、ＮＶ１ＢＡＮＫ１、ＮＶ１ＢＡＮＫ２、ＮＶ１ＢＡＮＫ３、ＮＶ１ＢＡＮＫ４、ＮＶ１ＢＡＮＫ５、ＮＶ１ＢＡＮＫ６、ＮＶ１ＢＡＮＫ７…メモリバンク、ＰａｄＬａｔ…ページアドレスバッファ、ＰａｇｅＤｅｃ…ページデコーダ、ＮＶ１Ｂｋ０、ＮＶ１Ｂｋ１、ＮＶ１Ｂｋ２、ＮＶ１Ｂｋ３、ＮＶ１Ｂｋ４、ＮＶ１Ｂｋ５、ＮＶ１Ｂｋ６、ＮＶ１Ｂｋ７…メモリ回路、ＥＣＣ…エラー検出訂正回路、ＮＶ２ＢＡＮＫ０、ＮＶ２ＢＡＮＫ１、ＮＶ２ＢＡＮＫ２、ＮＶ２ＢＡＮＫ３、ＮＶ２ＢＡＮＫ４、ＮＶ２ＢＡＮＫ５、ＮＶ２ＢＡＮＫ６、ＮＶ２ＢＡＮＫ７…メモリバンク、ＮＶ２Ｂｋ０、ＮＶ２Ｂｋ１、ＮＶ２Ｂｋ２、ＮＶ２Ｂｋ３、ＮＶ２Ｂｋ４、ＮＶ２Ｂｋ５、ＮＶ２Ｂｋ６、ＮＶ２Ｂｋ７…メモリ回路、ＣＦＲＧ−ＡＲＥＡ…コンフィグレーション領域、ＩＯ−ＡＲＥＡ…ＩＯ領域、ＢｏｔＩＤ−ＡＲＥＡ…ブートデバイスＩＤ格納領域、ＩｎｉｔＰＲ−ＡＲＥＡ…初期プログラム領域、ＯＳＡＰ−ＡＲＥＡ…プログラム格納領域、ＣＯＰＹ−ＡＲＥＡ…コピー領域、ＷＯＲＫ−ＡＲＥＡ…ワーク領域、ＤＡＴＡ−ＡＲＥＡ…データ領域、ＲＥＰ−ＡＲＥＡ…代替領域、ＣＰＵ＿ＣＨＩＰ１…情報処理装置、ＤＣＭＣ１…メモリ制御回路、ＭＥＭ１…メモリモジュール、Ｍ１０、Ｍ１１、Ｍ１２…メモリ装置、ＲＱＯＵＴ１…リクエスト出力回路、ＯＵＴＢＬＫ…出力回路、ＳＤＢＬＫ…シリアルデータ回路、ＲＳＩＮ１…レスポンス入力回路、ＩＮＢＬＫ…入力回路、ＰＤＢＬＫ…パラレルデータ回路、ＲｑＣ…リクエスト信号変換回路、ＲＱＰＤ、ＲＳＰＤ…パラレルデータ回路、ＲＱＳＤ、ＲＳＳＤ…シリアルデータ回路、ＤＲＡＭ、ＤＲＡＭ００、ＤＲＡＭ０１、ＤＲＡＭ１０、ＤＲＡＭ１１…ダイナミックランダムアクセスメモリ、ＮＯＲ、ＮＯＲ０、ＮＯＲ１…ＮＯＲ型フラッシュメモリ、ＮＡＮＤ、ＮＡＮＤ０，ＮＡＮＤ１…ＮＡＮＤ型フラッシュメモリ、ＨＤＤ０、ＨＤＤ１…ハードディスク、ＭＲＡＭ０、ＭＲＡＭ１…マグネティックランダムアクセスメモリ、ＮＶＭ２０、ＮＶＭ２１、ＮＶＭ３０、ＮＶＭ３１…不揮発性メモリ、ＣＨＩＰＭ１、ＣＨＩＰＭ２、ＣＨＩＰ３Ｍ、ＣＨＩＰ４Ｍ…半導体チップ、ＰＣＢ…プリント回路基板、ＣＯＶＥＲ…モジュールの封止カバー、ＴＳＶ…チップ貫通配線、ＡＮＴ…アンテナ、ＲＦ…無線ブロック、ＳＰ…音声コーデックブロック、ＳＫ…スピーカー、ＭＫ…マイクロホン、ＣＰＵ…プロセッサ、ＤＲＡＭ…ダイナミックランダムアクセスメモリ、ＬＣＤ…液晶表示部、ＫＥＹ…キーボード、ＭＳＭ…メモリモジュール、ＣＰＵ＿ＭＡＩＮ…情報処理装置、ＳＬＰ…情報処理システム。
【図１】
2010029830.tif 000003
【図２】
2010029830.tif 000004
【図３】
2010029830.tif 000005
【図４】
2010029830.tif 000006
【図５】
2010029830.tif 000007
【図６】
2010029830.tif 000008
【図７】
2010029830.tif 000009
【図８】
2010029830.tif 000010
【図９】
2010029830.tif 000011
【図１０】
2010029830.tif 000012
【図１１】
2010029830.tif 000013
【図１２】
2010029830.tif 000014
【図１３】
2010029830.tif 000015
【図１４】
2010029830.tif 000016
【図１５】
2010029830.tif 000017
【図１６】
2010029830.tif 000018
【図１７】
2010029830.tif 000019
【図１８】
2010029830.tif 000020
【図１９】
2010029830.tif 000021
【図２０】
2010029830.tif 000022
【図２１】
2010029830.tif 000023
【図２２】
2010029830.tif 000024
【図２３】
2010029830.tif 000025
【図２９】
2010029830.tif 000026
【図３０】
2010029830.tif 000027
【図３１】
2010029830.tif 000028
【図３２】
2010029830.tif 000029
【図３３】
2010029830.tif 000030
【図３４】
2010029830.tif 000031
【図３５】
2010029830.tif 000032
【図３６】
2010029830.tif 000033
【図３７】
2010029830.tif 000034
【図３８】
2010029830.tif 000035
【図３９】
2010029830.tif 000036
【図４０】
2010029830.tif 000037
【図４１】
2010029830.tif 000038
【図４２】
2010029830.tif 000039
【図４３】
2010029830.tif 000040
【図４４】
2010029830.tif 000041
【図４５】
2010029830.tif 000042
【図４６】
2010029830.tif 000043
【図４７】
2010029830.tif 000044
【図４８】
2010029830.tif 000045
【図２４】
2010029830.tif 000046
【図２５】
2010029830.tif 000047
【図２６】
2010029830.tif 000048
【図２７】
2010029830.tif 000049
【図２８】
2010029830.tif 000050
【国際調査報告】
2010029830.tif 000051
2010029830.tif 000052
2010029830.tif 000053
2010029830.tif 000054
2010029830.tif 000055