(57)【特許請求の範囲】
【請求項１】
外部に対してリードアクセス要求を発行すると共に前記リードアクセス要求に対する応答があるレスポンス時間帯を管理するリクエスト送信回路と、
前記リクエスト送信回路から発行した前記リードアクセス要求に対する応答を外部から受け取るレスポンス受信回路と、を具備し、
前記リクエスト送信回路は、第１リードアクセス要求を発行後、第２リードアクセス要求を発行する場合に、前記第１リードアクセス要求に対する第１レスポンス時間帯と前記第２リードアクセス要求に対する第２レスポンス時間帯が重複する時間幅が、予め設定された最大重複許容時間幅以下であれば、前記第２リードアクセス要求を発行することを特徴とする半導体装置。
【請求項２】
請求項１において、
前記半導体装置は、前記最大重複許容時間幅が設定されるレイテンシ制御レジスタを有することを特徴とする半導体装置。
【請求項３】
請求項１において、
前記リクエスト送信回路は、前記第１レスポンス時間帯と前記第２レスポンス時間帯が重複する時間幅が、前記最大重複許容時間幅より大きい場合は、前記第２リードアクセス要求の発行を遅らせることを特徴とする半導体装置。
【請求項４】
請求項１において、
前記リクエスト送信回路は、前記レスポンス時間帯の開始時間が設定され、デクリメントされる第１カウンタと、前記レスポンス時間帯の終了時間帯が設定され、デクリメントされる第２カウンタとを有し、前記第２リードアクセス要求を発行する際に、前記第２レスポンス時間帯の開始時間及び終了時間を計算し、前記第１カウンタ及び第２カウンタの値と前記第２レスポンス時間帯の開始時間及び終了時間を比較することにより、重複する時間帯があるかを判断することを特徴とする半導体装置。
【請求項５】
請求項４において、
前記リクエスト送信回路は、前記第２レスポンス時間帯の開始時間が前記第１カウンタと前記第２カウンタの値の間にある場合は、前記第２リードアクセス要求を出力しないことを特徴とする半導体装置。
【請求項６】
請求項４において、
前記リクエスト送信回路は、前記第１レスポンス時間帯と前記第２レスポンス時間帯が重複するにも関わらず、前記最大重複許容時間幅以内のため前記第２リードアクセス要求を出力する場合は、前記第１レスポンス時間帯と前記第２レスポンス時間帯が重複する時間幅に基づいて、前記第１カウンタと前記第２カウンタ値を更新することを特徴とする半導体装置。
【請求項７】
請求項１において、
前記半導体装置は、前記リードアクセス要求に対する応答の最小開始時間が設定されるレイテンシレジスタを更に具備し、
前記リクエスト送信回路は、前記最小開始時間に基づいて、前記第１レスポンス時間帯の開始時間を計算することを特徴とする半導体装置。
【請求項８】
請求項７において、
前記第１及び第２リードアクセス要求のそれぞれは、要求するデータ量を含み、
前記リクエスト送信回路は、前記要求するデータ量に基づいて、前記第１及び第２レスポンス時間帯の夫々の終了時間を計算することを特徴とする半導体装置。
【請求項９】
請求項７において、
前記リクエスト送信回路は、前記最大重複許容時間幅が０とされた場合は、前記レイテンシレジスタに設定された前記最小開始時間を守るように前記リードアクセス要求を発行することを特徴とする半導体装置。
【請求項１０】
請求項１において、
前記リードアクセス要求は、外部に接続されたメモリモジュールに対して行われ、
前記メモリモジュールは、第１及び第２メモリ装置が直列に接続され、前記第２メモリ装置の応答は、前記第１メモリ装置を介して、前記半導体装置に転送されることを特徴とする半導体装置。
【請求項１１】
第１及び第２メモリ装置が直列に接続されるメモリモジュールが接続され、前記メモリモジュールにリクエスト要求を発行し、前記リクエスト要求に対する前記メモリモジュールの応答を受信する情報処理装置であって、
前記メモリモジュールにリクエスト要求を出力するリクエスト送信回路と、
前記メモリモジュールからの前記リクエスト要求に対する応答を受信するレスポンス受信回路と、
前記第１メモリ装置へのリクエスト要求に対する第１レイテンシ、及び、前記第２メモリ装置へのリクエスト要求に対する第２レイテンシが設定されるレイテンシレジスタと、
第１リクエスト要求に対する第１レスポンス時間帯と前記第１リクエスト要求の後に発行される第２リクエスト要求に対する第２レスポンス時間帯に重複時間幅がある場合に、前記第２リクエスト要求の発行を許容する最大重複許容時間幅が設定されるレイテンシ制御レジスタを具備することを特徴とする半導体装置。
【請求項１２】
請求項１１において、
前記リクエスト送信回路は、前記第２リクエスト要求を発行する際に、前記第１レスポンス時間帯と前記第２レスポンス時間帯の前記重複時間幅と前記最大重複許容時間幅を比較し、前記重複時間幅の方が小さい場合に、前記第２リクエスト要求を発行するレイテンシ可変モードを有することを特徴とする半導体装置。
【請求項１３】
請求項１２において、
前記半導体装置は、前記第１レスポンス時間帯と前記第２レスポンス時間帯の前記重複時間幅がある場合に、前記第２リクエスト要求を発行せずに、前記第１レイテンシを守るレイテンシ固定モードを有することを特徴とする半導体装置。
【請求項１４】
請求項１３において、
前記半導体装置は、前記最大重複許容時間幅を０と設定することにより、前記レイテンシ固定モードとなり、前記最大重複許容時間幅を正の整数とすることにより、前記レイテンシ可変モードとなることを特徴とする半導体装置。
【請求項１５】
請求項１１において、
前記レイテンシ制御レジスタは、レイテンシ制御フラグを有し、
前記半導体装置は、前記レイテンシ制御フラグが設定された場合に、前記第２リクエスト要求を発行時に、前記第１レスポンス時間帯と前記第２レスポンス時間帯を考慮して前記第２リクエスト要求を発行するレイテンシ制御モードとなり、前記レイテンシ制御フラグが設定されない場合は、前記第１レスポンス時間帯を考慮せずに前記第２リクエスト要求を発行するレイテンシ非制御モードとなることを特徴とする半導体装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、半導体装置の技術に関し、特に、不揮発性メモリと情報処理装置を含む情報処理システムおよびメモリモジュールの制御方法に適用して有効な技術に関する。
【背景技術】
【０００２】
近年、特許文献１に示されるように、情報処理装置とメモリ間の信号数を減少させ、動作周波数を向上しデータ転送速度の高速化を図るため、情報処理装置と複数のメモリを直列に接続した情報処理システムが提案されている。具体的には、それぞれのメモリには、情報処理装置から送信されたリクエストを保持するリクエストキューと、情報処理装置へのレスポンスを保持するレスポンスキューがある。レスポンスキューには、自身のメモリからのレスポンスを保持するレスポンスキューと後段のメモリからのレスポンスを保持するレスポンスキューがあり、これらのレスポンスキューへ保持されたレスポンスを内部の調停回路にて調停し、前段のメモリや情報処理装置へレスポンスを送信している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−３１０４３０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本願発明者等は、本願に先立って、携帯電話機と、情報処理装置とフラッシュメモリと、ランダムアクセスメモリから構成された情報処理システムについて検討を行った。【０００５】
携帯電話は情報処理装置とＮＯＲ型フラッシュメモリ、ＳＲＡＭ、ＤＲＡＭ、ＮＡＮＤ型フラッシュメモリＮＡＮＤなどのメモリから構成され、ＮＯＲ型フラッシュメモリには主に、オペレーティングシステムＯＳや、通信制御用プログラムや、音楽や動画像の再生プログラムが格納されており、ＮＡＮＤ型フラッシュメモリには主に音楽データや動画像データが格納されている。【０００６】
通信制御プログラムを実行する場合は、情報処理装置はＮＯＲ型フラッシュメモリに格納されている通信制御用命令を読み出し、通信制御を行う。つまり、ＮＯＲ型フラッシュメモリからのランダムな命令の読み出しが頻繁に発生することがわかった。通信制御向けプログラムを高速に動作させるには、１回のデータ読み出しが終了するまでのレイテンシが重要となる。また、音楽や動画像を再生する場合は、情報処理装置はＮＯＲ型フラッシュメモリから音楽や動画像の再生プログラムを読み出し、さらにＮＡＮＤ型フラッシュメモリより、音楽データや動画像データをＤＲＡＭへ転送し、音楽や動画像の再生を行う。この音楽や動画像の再生には、ＮＡＮＤ型フラッシュメモリからのシーケンシャルなデータの読み出しや、ＤＲＡＭからのデータの読み出しと書き込みが交互に、頻繁に発生することがわかった。この音楽や動画像の再生には、データ転送性能が重要である。【０００７】
したがって、携帯電話にて、これら複数のプログラムを効率よく実行するには、レイテンシの短時間化とデータ転送速度の高速化が重要である。【０００８】
このようなメモリを特許文献１に示されるような直列接続した情報処理システムに適用した場合について検討を行った。具体的には、情報処理装置とメモリ１とメモリ２とメモリ３とが順に直列に接続されている情報処理システムについて検討を行った。このようなメモリを直列接続した情報処理システムの場合、メモリ２へは後段のメモリ３からのレスポンスが入力する。このためメモリ２は、メモリ２自身のレスポンスと、後段のメモリ３からのレスポンスを調停し、メモリ２へ送信することが必要となり、レイテンシのずれが生じてしまう。さらに、メモリ１には、後段のメモリ２やメモリ３からのレスポンスが入力する。このため、メモリ１は、メモリ１自身のレスポンスと、これら後段のメモリ２やメモリ３からのレスポンスを調停し、情報処理装置へのレスポンスを送信することが必要となり、さらにレイテンシのずれが増加してしまうという問題があり、携帯電話機の高性能化には対応できないことが判明した。【０００９】
そこで本発明の目的の一つは、情報処理装置とメモリ間および、メモリとメモリ間の信号配線数を低下させ、データ読み出しレイテンシをメモリ毎に、一定値あるいは一定範囲内に保ちつつ、高速且つ低コストで、メモリ容量の拡張性を確保できる使い勝手が良く、信頼性の高い情報処理システムを提供することである。
【課題を解決するための手段】
【００１０】
本発明の代表的な手段を示せば以下の通りである。【００１１】
外部に対してリードアクセス要求を発行すると共に前記リードアクセス要求に対する応答があるレスポンス時間帯を管理するリクエスト送信回路と、前記リクエスト送信回路から発行した前記アクセス要求に対する応答を外部から受け取るレスポンス受信回路と、を具備し、前記リクエスト送信回路は、第１リードアクセス要求を発行後、第２リードアクセス要求を発行する場合に、前記第１リードアクセス要求に対する第１レスポンス時間帯と前記第２リードアクセス要求に対する第２レスポンス時間帯が重複する時間幅が、予め設定された最大重複許容時間幅以下であれば、前記第２リードアクセス要求を発行する。【００１２】
また、第１及び第２メモリ装置が直列に接続されるメモリモジュールが接続され、前記メモリモジュールにリクエスト要求を発行し、前記リクエスト要求に対する前記メモリモジュールの応答を受信する情報処理装置であって、前記メモリモジュールにリクエスト要求を出力するリクエスト送信回路と、前記メモリモジュールからの前記リクエスト要求に対する応答を受信するレスポンス受信回路と、前記第１メモリ装置へのリクエスト要求に対する第１レイテンシ、及び、前記第２メモリ装置へのリクエスト要求に対する第２レイテンシが設定されるレイテンシレジスタと、第１リクエスト要求に対する第１レスポンス時間帯と前記第１リクエスト要求の後に発行される第２リクエスト要求に対する第２レスポンス時間帯に重複時間幅がある場合に、前記第２リクエスト要求の発行を許容する最大重複許容時間幅が設定されるレイテンシ制御レジスタを具備する。
【発明の効果】
【００１３】
本発明によれば、データ読み出しレイテンシを一定値あるいは一定範囲内に保ちつつ、高速且つ低コストで、メモリ容量の拡張性を確保できる使い勝手の良い情報処理システムを実現できる。
【図面の簡単な説明】
【００１４】
【図１】本発明を適用した情報処理システムの構成の一例を示す構成図である。
【図２】本発明を適用した情報処理システムを構成する情報処理装置の構成の一例を示す図である。
【図３】リクエスト出力回路ＲＱＯＵＴの構成の一例を示す図である。
【図４】メモリ装置の構成の一例を示す図である。
【図５】メモリ装置の構成の一例を示す図である。
【図６】メモリ装置が装備するメモリ回路の回路ブロックの一例を示す図である。
【図７】メモリ装置の構成の一例を示す図である。
【図８】メモリ装置が装備するメモリ回路の回路ブロックの一例を示す図である。
【図９】本発明を適用した情報処理システムの電源投入時の動作の一例を示す図である。
【図１０】コネクションレジスタＣＮＮＲＥＧの設定値の一例を示す図である。
【図１１】レイテンシ制御レジスタＬＣＲＥＧの設定値の一例を示す図である。
【図１２】レイテンシドメインレジスタＬＴＤＲＥＧの設定値の一例を示す図である。
【図１３】レイテンシレジスタＬＴＲＥＧの設定値の一例を示す図である。
【図１４】タイミングレジスタＭ０ＴＲＥＧの設定値の一例を示す図である。
【図１５】タイミングレジスタＭ１ＴＲＥＧの設定値の一例を示す図である。
【図１６】タイミングレジスタＭ２ＴＲＥＧの設定値の一例を示す図である。
【図１７】メモリ制御モードレジスタＯＭＤＲＥＧへの設定値の一例を示す図である。
【図１８】メモリ制御回路ＤＣＭＣが各メモリ装置へ出力するリクエストの一例を示す図である。
【図１９】情報処理装置ＣＰＵ＿ＣＨＩＰが管理するメモリモジュールＭＥＭに対するメモリマップの一例を示す図である。
【図２０】メモリ制御回路がリクエストをメモリモジュールに対して発行するまでの動作の一例を示すフローチャートである。
【図２１】情報処理装置からメモリモジュールへのリクエストに対する動作の一例を示すフローチャートである。
【図２２】メモリモジュールから情報処理装置へのレスポンスに対する動作の一例を示すフローチャートである。
【図２３】情報処理装置のレスポンスの時間帯管理に関する動作の一例を示すフローチャートである。
【図２４】本発明を適用した情報処理システムでの動作波形の一例を示す図である。
【図２５】本発明を適用した情報処理システムでの動作波形の一例を示す図である。
【図２６】本発明を適用した情報処理システムでの動作波形の一例を示す図である。
【図２７】本発明を適用した情報処理システムでの動作波形の一例を示す図である。
【図２８】各メモリ装置が装備するレスポンススケジュール回路ＳＣＨの動作の一例を示すフローチャートである。
【図２９】本発明を適用した情報処理システムの構成図である。
【図３０】本発明を適用した情報処理システムを構成する情報処理装置の構成の一例を示す図である。
【図３１】メモリ装置の構成の一例を示す図である。
【図３２】メモリ装置の構成の一例を示す図である。
【図３３】メモリ装置の構成の一例を示す図である。
【図３４】本発明を適用した情報処理システムの構成図である。
【図３５】本発明を適用した情報処理システムの構成図である。
【図３６】本発明を適用した情報処理システムの構成図である。
【図３７】本発明を適用した情報処理システムの構成図である。
【図３８】本発明を適用した情報処理システムの構成図である。
【図３９】本発明を適用した情報処理システムの構成図である。
【図４０】本発明を適用した情報処理システムの構成図である。
【図４１】本発明によるメモリ情報処理システムの実装形態の一例を示す図である。
【図４２】本発明によるメモリ情報処理システムを利用した携帯電話の構成例を示すブロック図である。
【図４３】本発明によるメモリ情報処理システムを利用した携帯電話の構成例を示すブロック図である。
【図４４】本発明を適用した情報処理システムの構成図である。
【図４５】本発明を適用した情報処理システムの構成図である。
【図４６】本発明を適用した情報処理システムの構成図である。
【図４７】本発明を適用した情報処理システムの構成図である。
【図４８】本発明を適用した情報処理システムの構成図である。
【図４９】本発明を適用した情報処理システムの構成図である。
【符号の説明】
【００１５】
ＣＰＵ＿ＣＨＩＰ…情報処理装置、ＣＰＵ０、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３…情報処理回路、ＣＡＲＢ…調停回路、ＤＣＭＣ…メモリ制御回路、ＭＥＭ…メモリモジュール、Ｍ０、Ｍ１、Ｍ２…メモリ装置、ＭＩＤ０、ＭＩＤ１、ＭＩＤ２、ＭＩＤ３…マスター番号レジスタ、ＣＯＮＦＩＧ…コンフィグレーション回路、ＲＥＱＱ１、ＲＥＱＱ２…リクエストキュー、ＩＤＨＴ…ヒット判定回路、ＣＯＭＧＥＮ…コマンド生成回路、ＲＱＯＵＴ…リクエスト出力回路、ＲＥＦ…リフレッシュ要求回路、ＱＭＧＴ…キュー管理回路、ＬＣＨＣＫ…レイテンシ調整回路、ＲＳＩＮ…レスポンス入力回路、ＲＥＳＱ１…レスポンスキュー、ＲｅｑＩＦ…リクエストインターフェース回路、ＲｅｓＩＦ…レスポンスインターフェース回路、ＩＮＩＴ、ＩＮＩＴ１、ＩＮＩＴ２…初期設定回路、Ｍｅｍ０、Ｍｅｍ１、Ｍｅｍ２…メモリ回路、ＲｑＣｋＣ…リクエストクロック制御回路、Ｄｒｖ１…クロックドライバ、Ｄｉｖ１…クロック分周回路、ＲｑＣＴ…リクエストキュー制御回路、ＲｑＱＩ、ＲｑＱＸＩ、ＲｑＱＸＯ…リクエストキュー回路、ＩＤＲ…ＩＤレジスタ回路、ＣＰＱ…ＩＤ比較回路、ＲｓＱｏ、ＲｓＱｐ…レスポンスキュー回路、ＲＲＧ…レスポンス優先順位設定レジスタ回路、ＲＱＱＭ…リクエストキューチェック回路、ＩＤＶ…ＩＤ有効ビット、ＢＲ…ブートデバイスフラグレジスタ、ＥＲ…終端デバイスフラグレジスタ、ＲｓＣｋＣ…レスポンスクロック制御回路、ＲｓＣＴ…レスポンスキュー制御回路、Ｄｒｖ２…クロックドライバ、Ｄｉｖ２…クロック分周回路、ＲｓＣＴ…レスポンスキュー制御回路、ＲＳＱＭ…レスポンスキューチェック回路、ＳＣＨ…レスポンススケジュール回路、ＬＣ…レイテンシコードレジスタ、ＤＣ…デバイスコードレジスタ、Ｂｓｉｇ…ブートデバイス認識信号、ＲｑＣｋ０、ＲｑＣＫ１、ＲｑＣｋ２…リクエストクロック、ＲｓＣｋ０、ＲｓＣＫ１、ＲｓＣｋ２…レスポンスクロック、ＲｑＭｕｘ０、ＲｑＭｕｘ１、ＲｑＭｕｘ２…リクエスト信号、ＲｓＭｕｘ０、ＲｓＭｕｘ１、ＲｓＭｕｘ２…レスポンス信号、ｃｋ１、ｃｋ２、ｃｋ３、ｃｋ４…クロック信号、ＣｍｄＤｅｃ…コマンドデコーダ、ＣｏｎｔＬｏｇｉｃ…制御回路、ＲａｄｄＬａｔ…ロウアドレスバッファ、ＣａｄｄＬａｔ…カラムアドレスバッファ、ＲｅｆＣ…リフレッシュカウンタ、Ｔｈｍｏ…温度計、ＷＤａｔａＬａｔ…ライトデータバッファ、ＲＤａｔａＬａｔ…リードデータバッファ、ＲｏｗＤｅｃ…ロウデコーダ、ＣＯＬＤｅｃ…カラムデコーダ、ＳｅｎｓｅＡｍｐ…センスアンプ、ＤａｔａＣｏｎｔ…データ制御回路、ＢＡＮＫ０、ＢＡＮＫ１、ＢＡＮＫ２、ＢＡＮＫ３、ＢＡＮＫ４、ＢＡＮＫ５、ＢＡＮＫ６、ＢＡＮＫ７…メモリバンク、ＭＢａｎｋ０、ＭＢａｎｋ１、ＭＢａｎｋ２、ＭＢａｎｋ３、ＭＢａｎｋ４、ＭＢａｎｋ５、ＭＢａｎｋ６、ＭＢａｎｋ７…メモリ回路、ＢｏｔＩＤ…ブートデバイスＩＤ値、ＮＶ１ＢＡＮＫ０、ＮＶ１ＢＡＮＫ１、ＮＶ１ＢＡＮＫ２、ＮＶ１ＢＡＮＫ３、ＮＶ１ＢＡＮＫ４、ＮＶ１ＢＡＮＫ５、ＮＶ１ＢＡＮＫ６、ＮＶ１ＢＡＮＫ７…メモリバンク、ＰａｄＬａｔ…ページアドレスバッファ、ＰａｇｅＤｅｃ…ページデコーダ、ＮＶ１Ｂｋ０、ＮＶ１Ｂｋ１、ＮＶ１Ｂｋ２、ＮＶ１Ｂｋ３、ＮＶ１Ｂｋ４、ＮＶ１Ｂｋ５、ＮＶ１Ｂｋ６、ＮＶ１Ｂｋ７…メモリ回路、ＥＣＣ…エラー検出訂正回路、ＮＶ２ＢＡＮＫ０、ＮＶ２ＢＡＮＫ１、ＮＶ２ＢＡＮＫ２、ＮＶ２ＢＡＮＫ３、ＮＶ２ＢＡＮＫ４、ＮＶ２ＢＡＮＫ５、ＮＶ２ＢＡＮＫ６、ＮＶ２ＢＡＮＫ７…メモリバンク、ＮＶ２Ｂｋ０、ＮＶ２Ｂｋ１、ＮＶ２Ｂｋ２、ＮＶ２Ｂｋ３、ＮＶ２Ｂｋ４、ＮＶ２Ｂｋ５、ＮＶ２Ｂｋ６、ＮＶ２Ｂｋ７…メモリ回路、ＣＦＲＧ−ＡＲＥＡ…コンフィグレーション領域、ＩＯ−ＡＲＥＡ…ＩＯ領域、ＢｏｔＩＤ−ＡＲＥＡ…ブートデバイスＩＤ格納領域、ＩｎｉｔＰＲ−ＡＲＥＡ…初期プログラム領域、ＯＳＡＰ−ＡＲＥＡ…プログラム格納領域、ＣＯＰＹ−ＡＲＥＡ…コピー領域、ＷＯＲＫ−ＡＲＥＡ…ワーク領域、ＤＡＴＡ−ＡＲＥＡ…データ領域、ＲＥＰ−ＡＲＥＡ…代替領域、ＣＰＵ＿ＣＨＩＰ１…情報処理装置、ＤＣＭＣ１…メモリ制御回路、ＭＥＭ１…メモリモジュール、Ｍ１０、Ｍ１１、Ｍ１２…メモリ装置、ＲＱＯＵＴ１…リクエスト出力回路、ＯＵＴＢＬＫ…出力回路、ＳＤＢＬＫ…シリアルデータ回路、ＲＳＩＮ１…レスポンス入力回路、ＩＮＢＬＫ…入力回路、ＰＤＢＬＫ…パラレルデータ回路、ＲｑＣ…リクエスト信号変換回路、ＲＱＰＤ、ＲＳＰＤ…パラレルデータ回路、ＲＱＳＤ、ＲＳＳＤ…シリアルデータ回路、ＤＲＡＭ、ＤＲＡＭ００、ＤＲＡＭ０１、ＤＲＡＭ１０、ＤＲＡＭ１１…ダイナミックランダムアクセスメモリ、ＮＯＲ、ＮＯＲ０、ＮＯＲ１…ＮＯＲ型フラッシュメモリ、ＮＡＮＤ、ＮＡＮＤ０，ＮＡＮＤ１…ＮＡＮＤ型フラッシュメモリ、ＨＤＤ０、ＨＤＤ１…ハードディスク、ＭＲＡＭ０、ＭＲＡＭ１…マグネティックランダムアクセスメモリ、ＮＶＭ２０、ＮＶＭ２１、ＮＶＭ３０、ＮＶＭ３１…不揮発性メモリ、ＣＨＩＰＭ１、ＣＨＩＰＭ２、ＣＨＩＰ３Ｍ、ＣＨＩＰ４Ｍ…半導体チップ、ＰＣＢ…プリント回路基板、ＣＯＶＥＲ…モジュールの封止カバー、ＴＳＶ…チップ貫通配線、ＡＮＴ…アンテナ、ＲＦ…無線ブロック、ＳＰ…音声コーデックブロック、ＳＫ…スピーカー、ＭＫ…マイクロホン、ＣＰＵ…プロセッサ、ＤＲＡＭ…ダイナミックランダムアクセスメモリ、ＬＣＤ…液晶表示部、ＫＥＹ…キーボード、ＭＳＭ…メモリモジュール、ＣＰＵ＿ＭＡＩＮ・・・情報処理装置、ＳＬＰ…情報処理システム。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態につき添付図面を参照しながら詳細に説明する。実施の形態において各ブロックを構成する回路素子は、特に制限されないが、公知のＣＭＯＳ（相補型ＭＯＳトランジスタ）等の集積回路技術によって、単結晶シリコンのような１個の半導体基板上に形成される。また、具体的な数値は、特に言及がない限り、本発明を説明するにあたって用いた数値であって、特にそれに限定されるものではない。
【００１７】
（第１の実施の形態）
本発明を適用した第１の実施の形態である情報処理システムについて、図１〜図２８を用いて説明する。
【００１８】
図１は、本発明を適用した第１の実施の形態である情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭとから構成される情報処理システムにおいて、その構成の一例を示すブロック図である。また、図２は、情報処理装置ＣＰＵ＿ＣＨＩＰの構成の一例を示すブロック図である。以下におのおのについて説明する。
【００１９】
図１に示されるように、情報処理装置ＣＰＵ＿ＣＨＩＰは、情報処理回路ＣＰＵ０、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３と、調停回路ＣＡＲＢとメモリ制御回路ＤＣＭＣから構成されている。メモリモジュールＭＥＭは、メモリ装置Ｍ０、Ｍ１、Ｍ２から構成される。また、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ０、Ｍ１、Ｍ２は直列に接続されている。情報処理回路ＣＰＵ０はマスター番号レジスタＭＩＤ０を装備し、情報処理回路ＣＰＵ１はマスター番号レジスタＭＩＤ１を装備し、情報処理回路ＣＰＵ２はマスター番号レジスタＭＩＤ２を装備し、情報処理回路ＣＰＵ３はマスター番号レジスタＭＩＤ３を装備している。
【００２０】
また、図２に示されるように、メモリ制御回路ＤＣＭＣは、コンフィグレーション回路ＣＯＮＦＩＧ、リクエストキューＲＥＱＱ１、ヒット判定回路ＩＤＨＴ、リクエストキューＲＥＱＱ２、コマンド生成回路ＣＯＭＧＥＮ、リクエスト出力回路ＲＱＯＵＴ、リフレッシュ要求回路ＲＥＦ、キュー管理回路ＱＭＧＴ、レイテンシ調整回路ＬＣＨＣＫ、レスポンス入力回路ＲＳＩＮ、レスポンスキューＲＥＳＱ１を含む。また、コンフィグレーション回路ＣＯＮＦＩＧは、図示していないがキューレジスタＱＲＥＧ、レイテンシレジスタＬＴＲＥＧ、レイテンシドメインレジスタＬＴＤＲＥＧ、メモリ装置Ｍｎ（ｎ＝０，１，２，３・・・）に関する複数のタイミングレジスタＭｎＴＲＥＧ（例えば、Ｍ０ＴＲＥＧは、メモリ装置Ｍ０に関するレジスタであることを示す。）、動作モードレジスタＯＭＤＲＥＧ、コネクションレジスタＣＮＮＲＥＧ、レイテンシ制御レジスタＬＣＲＥＧを含んでいる。
【００２１】
情報処理回路ＣＰＵ０、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３は、調停回路ＣＡＲＢおよびメモリ制御回路ＤＣＭＣを通じて、メモリモジュールＭＥＭより、ＯＳやアプリケーションプログラムおよびＯＳやアプリケーションプログラムにて処理を行うデータを読みだし、実行する。
【００２２】
リクエストキューＲＥＱＱ１およびリクエストキューＲＥＱＱ２は、情報処理回路ＣＰＵ０〜３から発行されたリードリクエストやライトリクエストなどが格納され、レスポンスキューＲＥＳＱ１には、メモリモジュールＭＥＭから読み出されたＯＳ、アプリケーションプログラムおよびデータなどが格納される。
【００２３】
ヒット判定回路ＩＤＨＴは、情報処理回路ＣＰＵ０〜３からのリードリクエストおよびライトリクエストに対するデータが、各メモリ装置Ｍ０〜２のレスポンスキューやメモリバンク毎の活性化しているページに存在するかを判定する（以下、「ヒット判定」と呼ぶ。）。そのためにヒット判定回路ＩＤＨＴは、情報処理回路ＣＰＵ０からＣＰＵ３からのリクエストに対応するアドレスに対して、メモリモジュールＭＥＭを構成する各メモリ装置のバンクアドレスＢＡｄｄとページアドレスＰＡｄｄとカラムアドレスＣＡｄｄの対応付けを行っている。また、ヒット判定回路ＩＤＨＴは、各メモリ装置が装備しているレスポンスキューの中でデータを保存しているレスポンスキューに対してバンクアドレスとページアドレスとカラムアドレスを保存している。さらに、ヒット判定回路ＩＤＨＴは、各メモリ装置が装備しているメモリバンクの中で、活性化しているメモリバンク内のページに対して、そのバンクアドレスとページアドレスを保持している。
【００２４】
図３に示されるように、リクエスト出力回路ＲＱＯＵＴは、リクエスト保持回路ＮｘＰＣＫ、レスポンス時間位置計算回路ＮｘＣＡＬ、カウンタ選択回路ＤＳＥＳＥＬ、時間位置比較回路ＴＣＭＰ、リクエスト発行回路ＰＫＴＯＵＴ、複数のカウンタＣｎＴＲＣＤ、ＣｎＴＲＣ、ＣｎＴＲＲＤ、ＣｎＴＲＡＳ、ＣｎＴＲＰ、ＣｎＴＲＦＣ、ＤｎＳ、ＤｎＥ、及びレジスタＮｘＤｓ、ＮｓＤｅを有する。
【００２５】
カウンタＣｎＴＲＣＤ、ＣｎＴＲＣ、ＣｎＴＲＲＤ、ＣｎＴＲＡＳ、ＣｎＴＲＰおよびＣｎＴＲＦＣは、タイミングレジスタＭｎＴＲＥＧ毎に設けられ、対応するタイミングレジスタＭｎＴＲＥＧの値が初期設定される。
【００２６】
リクエスト保持回路ＮｘＰＣＫは次のリクエストを保持する回路である。レスポンス時間位置計算回路ＮｘＣＡＬは、リクエスト保持回路ＮｘＰＣＫに保持されているリクエストの内部情報とレイテンシレジスタＬＴＲＥＧの値とから、レスポンスの先頭時間位置と最後尾時間位置を計算する。
【００２７】
レジスタＮｘＤｓは、レスポンス時間位置計算回路ＮｘＣＡＬにて計算されたレスポンスの先頭時間位置を保持し、レジスタＮｓＤｅはレスポンス時間位置計算回路ＮｘＣＡＬにて計算されたレスポンスの最後尾時間位置が保持する。
【００２８】
メモリ装置Ｍｎへのリクエスト発行時に、カウンタ選択回路ＤＳＥＳＥＬによって選択されたカウンタＤｎＳへレジスタＮｘＤｓの値が設定される。また、メモリ装置Ｍｎへのリクエスト発行時に、カウンタ選択回路ＤＳＥＳＥＬによって選択されたカウンタＤｎＥへレジスタＮｘＤｅの値が設定される。
【００２９】
時間位置比較回路ＴＣＭＰは、すでに発行されたリクエストに対するレスポンスの時間位置を示すカウンタＤｎＳ値およびＤｎＥ値と、次に発行するリクエストに対するレスポンスの時間位置を示すレジスタＮｘＤｓ値およびＮｘＤｅ値とを比較し、その結果をリクエスト発行回路ＰＫＴＯＵＴへ伝える。
【００３０】
リクエスト発行回路ＰＫＴＯＵは、コンフィグレーション回路ＣＯＮＦＩＧに含まれるレイテンシ制御レジスタＬＣＲＥＧ、レイテンシドメインレジスタＬＴＤＲＥＧ、レイテンシレジスタＬＴＲＥＧ、メモリ制御モードレジスタＯＭＤＲＥＧと、カウンタＣｎＴＲＣＤ、ＣｎＴＲＣ、ＣｎＴＲＲＤ、ＣｎＴＲＡＳ、ＣｎＴＲＰ、ＣｎＴＲＦＣ、時間位置比較回路ＴＣＭＰの比較結果およびキュー管理回路ＱＭＧＴからのレスポンスキューＲＥＳＱ１の空き状態情報を利用し、リクエスト保持回路ＮｘＰＣＫへ保持されているリクエストを信号ＲｓＭｕｘ０から発行する回路である。
【００３１】
図１に戻って、メモリモジュールＭＥＭについて説明する。メモリモジュールＭＥＭは、メモリ装置Ｍ０、Ｍ１、Ｍ２から構成される。また、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ０、Ｍ１、Ｍ２は直列に接続されている。
【００３２】
メモリ装置Ｍ０は、揮発性メモリであり、１個の半導体基板上に形成されるメモリ装置であっても、複数のメモリチップが集積されたメモリ装置であっても良い。また、メモリ装置Ｍ１およびＭ２は不揮発性メモリであり、１個の半導体基板上に形成されるメモリ装置であっても、複数のメモリチップが集積されたメモリ装置であっても良い。ここで、代表的な揮発性メモリには、メモリアレイにダイナミックランダムアクセスメモリセルを用いたダイナミックランダムアクセスメモリＤＲＡＭ及び疑似スタティックランダムアクセスメモリＰＳＲＡＭ、スタティックランダムアクセスメモリセルを用いたスタティックランダムアクセスメモリＳＲＡＭ等があり、本発明には全ての揮発性メモリセルを利用することができる。本実施の形態ではメモリアレイにダイナミックランダムアクセスメモリセルを用いた例を説明する。
【００３３】
不揮発性メモリにはＲＯＭ（リードオンリーメモリ）、ＥＥＰＲＯＭ（エレクトリカリイレーサブルアンドプログラマブルＲＯＭ）、フラッシュメモリ、相変化メモリＰＣＲＡＭ、マグネティック・ランダム・アクセスメモリＭＲＡＭ、抵抗スイッチング型ランダムアクセスメモリＲｅＲＡＭ等を用いることができる。本実施の形態ではフラッシュメモリを例に説明する。また、代表的なフラッシュメモリには、ＮＯＲ型フラッシュメモリと、ＡＮＤ型フラッシュメモリと、ＮＡＮＤ型フラッシュメモリと、ＯＲＮＡＮＤ型フラッシュメモリがあり、本発明には全てのフラッシュメモリを利用することができる。
【００３４】
また、代表的なフラッシュメモリには、メモリセルに１ビットの情報を記憶できる２値メモリセルＳＬＣを用いたフラッシュメモリと、メモリセルに２ビット以上の情報を記憶できる多値メモリセルＭＬＣを用いたフラッシュメモリとがあり、本発明にはこれら全てのフラッシュメモリを利用することができる。
【００３５】
本実施の形態では、２値メモリセルＳＬＣを利用したＮＯＲ型フラッシュメモリと２値メモリセルＳＬＣ  ＮＡＮＤ型フラッシュメモリを例に説明する。
【００３６】
メモリ装置Ｍ０へ用いられる典型的な揮発性メモリは、ダイナミックメモリセルを利用したダイナミックランダムアクセスメモリであり、約１Ｇｂｉｔの記憶容量を持っている。特に限定しないがメモリ装置Ｍ０は情報処理装置ＣＰＵ＿ＣＨＩＰにてアプリケーションプログラムを実行するための一時的なワークメモリとして利用される。
【００３７】
メモリ装置Ｍ１へ用いられる典型的なフラッシュメモリは、ＮＯＲ型フラッシュメモリセルを利用し、約１Ｇｂｉｔの大きな記憶容量を持っている。特に限定しないが、メモリ装置Ｍ１には情報処理装置ＣＰＵ＿ＣＨＩＰにて実行するＯＳ、ブートプログラム、ブートデバイスＩＤ値、メモリモジュールＭＥＭのコンフィグレーション情報およびアプリケーションプログラムなどが格納される。
【００３８】
メモリ装置Ｍ２へ用いられる典型的なフラッシュメモリはＮＡＮＤ型フラッシュメモリセルを利用し、約１６Ｇｂｉｔの記憶容量を持っている。特に限定しないが、メモリ装置Ｍ１には主に情報処理装置ＣＰＵ＿ＣＨＩＰにて再生、録音および録画処理を行うために必要な音声データ、静止画像データや動画像データなどが格納される。
【００３９】
次に図４から図８を用いて、メモリ装置Ｍ０〜２について説明する。メモリ装置Ｍ０、Ｍ１及びＭ２には、それぞれ初期設定回路ＩＮＩＴ０、ＩＮＩＴ１およびＩＮＩＴ２があり、電源投入直後に、それぞれの初期設定回路ＩＮＩＴ０、ＩＮＩＴ１およびＩＮＩＴ２が、それぞれのメモリ装置に対し初期設定を行う。
【００４０】
メモリ装置Ｍ０、Ｍ１及びＭ２のリクエストキュー制御回路ＲｑＣＴには、それぞれのメモリ装置の識別番号ＩＤを格納するＩＤレジスタＩＤＲが設けられており、ＩＤレジスタＩＤＲへの識別番号設定の方法を以下に示す。
【００４１】
初期設定回路ＩＮＩＴ０、ＩＮＩＴ１およびＩＮＩＴ２はメモリ装置Ｍ０、Ｍ１及びＭ２への電源投入直後に、メモリ装置に対する初期設定の一工程として、自身が装備している識別番号保持回路ＳＲ０、ＳＲ１およびＳＲ２が保持している識別番号値ＩＤ１，２，および３を、それぞれのメモリ装置Ｍ０、Ｍ１及びＭ２が装備しているＩＤレジスタＩＤＲへ設定し、ＩＤ有効ビットＩＤＶをＨｉｇｈにする。このように、メモリ装置Ｍ０、Ｍ１及びＭ２の識別番号ＩＤ値を、メモリ装置側で決めることで、初期設定の時間を短縮することができる。
【００４２】
メモリ装置Ｍ０、Ｍ１及びＭ２は、それぞれブートデバイス認識信号Ｂｓｉｇを持っており、このブートデバイス認識信号Ｂｓｉｇが接地（ｇｎｄ）されている場合は、そのメモリ装置が電源投入直後の動作を行うためのブートプログラムを格納しているブートデバイスであることを示す。ブートデバイス認識信号Ｂｓｉｇが電源（ｖｄｄ）に接続されている場合は、そのメモリ装置がブートデバイスではないことを示す。本実施の形態では、メモリ装置Ｍ１がブートデバイスであり、メモリ装置Ｍ０およびＭ２はブートデバイスに設定されていないものとする。また、ブートデバイス認識信号Ｂｓｉｇによって、どのメモリ装置をブートデバイスにするかをプログラムすることができ、利用するシステム合わせて柔軟に対応できる。
【００４３】
情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ０、Ｍ１及びＭ２を直列に接続し、動作させるクロック方式として、コモンクロック方式、ソースシンクロナスクロック方式、エンベデッドクロック方式などがあり、本発明には全てのクロック方式を利用することができる。本実施の形態では、ソースシンクロナスクロック方式による動作を一例として説明する。
【００４４】
ＲｑＣｋ０、ＲｑＣＫ１およびＲｑＣｋ２はリクエストクロックであり、ＲｓＣｋ０、ＲｓＣＫ１およびＲｓＣｋ２はレスポンスクロックである。ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２は、リクエスト信号であり、ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。これらリクエスト信号を通じて送信されるリクエストは、特に限定しないが４バイトの共通リクエスト部ＣＭＮＲＥＱＦと、最大３６バイトの可変リクエスト部ＶＢＲＥＱから構成され、多重化されて、それぞれのリクエストクロックＲｑＣｋ０、ＲｑＣｋ１およびＲｑＣｋ２に同期して送信される。
【００４５】
共通リクエスト部ＣＭＮＲＥＱＦはリクエスト開始フラグＲｅｑＳｔＦｌｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、データ長ＤＬ、可変部リクエスト長ＶＲＥＱＬ、リクエスト番ＲｅｑＮから構成され、可変リクエスト部ＶＢＲＥＱＦは、４バイトのアドレスおよび最大３２バイトのライトデータから構成される。データ長ＤＬはリードデータやライトデータの長さをバイト単位で表している。また、可変部リクエスト長ＶＲＥＱＬは可変リクエスト部ＶＢＲＥＱＦの長さをバイト単位で表している。
【００４６】
ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２のレスポンス信号を通じて送信されるレスポンスは、特に限定しないが４バイトの共通レスポンス部ＣＭＮＲＥＳＦと最大３２バイトのリードデータから構成され、多重化されて、それぞれのレスポンスクロックＲｓＣｋ０、ＲｓＣｋ１、ＲｓＣｋ２に同期して送信される。
【００４７】
共通レスポンス部ＣＭＮＲＥＳＦはレスポンス開始フラグＲｅｓＳｔＦｌａｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、リードデータ長ＲＤＬ、レスポンス番号ＲｅｓＮから構成される。リードデータ長ＲＤＬはリードデータの長さをバイト単位で表している。
【００４８】
マスター番号は、情報処理回路ＣＰＵ０、１、２、３の中で、どの情報処理回路からのリクエストであるかを示し、それぞれのマスター番号レジスタＭＩＤ０、ＭＩＤ１、ＭＩＤ２へ設定されている値と対応している。また、リクエスト開始フラグがＨｉｇｈの時、そのリクエストの開始を示す。識別番号ＩＤ値はメモリ装置Ｍ０、Ｍ１およびＭ２を識別する識別番号である。リクエスト番号は、リクエスト自身の識別番号である。リクエスト長は、多重化されたリクエストの長さを示す。また、レスポンス開始フラグがＨｉｇｈの時、そのレスポンスの開始を示す。識別番号ＩＤ値はメモリ装置Ｍ０、Ｍ１およびＭ２を識別する識別番号である。レスポンス番号は、レスポンス自身の識別番号である。レスポンス長は、多重化されたレスポンスの長さを示す。
【００４９】
＜メモリ装置Ｍ０の説明＞
図４は、メモリ装置Ｍ０の構成図の一例である。メモリ装置Ｍ０は、リクエストインターフェース回路ＲｅｑＩＦと、レスポンスインターフェース回路ＲｅｓＩＦと、初期化回路ＩＮＩＴ０、メモリ回路Ｍｅｍ０から構成されている。初期化回路ＩＮＩＴ０は、識別番号保持回路ＳＲ０を装備している。特に限定しないが識別番号保持回路ＳＲ０はメモリ装置Ｍ０の識別番号ＩＤ値１を保持している。
【００５０】
リクエストインターフェース回路ＲｅｑＩＦはリクエストクロック制御回路ＲｑＣｋＣおよび、リクエストキュー制御回路ＲｑＣＴから構成される。リクエストクロック制御回路ＲｑＣｋＣはクロックドライバＤｒｖ１およびクロック分周回路Ｄｉｖ１から構成される。
【００５１】
リクエストキュー制御回路ＲｑＣＴは、リクエストキュー回路ＲｑＱＩ、リクエストキュー回路ＲｑＱＸＩ、リクエストキュー回路ＲｑＱＸＯ、ＩＤレジスタ回路ＩＤＲ、ＩＤ比較回路ＣＰＱ、レスポンス優先順位設定レジスタ回路ＲＲＧ、リクエストキューチェック回路ＲＱＱＭ、ＩＤ有効ビットＩＤＶ、ブートデバイスフラグレジスタＢＲおよび終端デバイスフラグレジスタＥＲから構成される。
【００５２】
特に限定しないが、リクエストキュー回路ＲｑＱＩは８つのリクエストキューから構成され、リクエストキュー回路ＲｑＱＸＩは４つのリクエストキューから構成され、リクエストキュー回路ＲｑＱＸＯは４つのリクエストキューから構成される。
【００５３】
レスポンスインターフェース回路ＲｅｓＩＦは、レスポンスクロック制御回路ＲｓＣｋＣおよび、レスポンスキュー制御回路ＲｓＣＴから構成される。レスポンスクロック制御回路ＲｓＣｋＣはクロックドライバＤｒｖ２およびクロック分周回路Ｄｉｖ２から構成される。レスポンスキュー制御回路ＲｓＣＴは、レスポンスキュー回路ＲｓＱｏ、レスポンスキュー回路ＲｓＱｐ、レスポンスキューチェック回路ＲＳＱＭ、レスポンススケジュール回路ＳＣＨ、レイテンシコードレジスタＬＣ、デバイスコードレジスタＤＣ、から構成される。特に限定しないが、レスポンスキュー回路ＲｓＱｏは４つのレスポンスキューから構成され、レスポンスキュー回路ＲｓＱｐは８つのレスポンスキューから構成される。
【００５４】
メモリ回路Ｍｅｍ０は、揮発性メモリであり、ダイナミックランダムアクセスメモリセルを利用したダイナミックランダムアクセスメモリである。初期化回路ＩＮＩＴ０は、メモリ装置Ｍ０への電源供給開始時にメモリ装置Ｍ０の初期化を行う。リクエストクロック制御回路ＲｑＣｋＣは、クロック信号ＲｑＣｋ０から入力したクロックを、内部クロックｃｋ１を通じて、リクエストキュー制御回路ＲｑＣＴ及びレスポンスクロック制御回路ＲｓＣｋＣへ伝える。また、リクエストクロック制御回路ＲｑＣｋＣは、リクエストクロック信号ＲｑＣｋ０から入力されたクロックをクロックドライバＤｒｖ１及びクロック分周回路Ｄｉｖ１を介して、クロック信号ＲｑＣｋ１を通じて出力する。また、リクエストクロック制御回路ＲｑＣｋＣはリクエスト信号ＲｑＭｕｘ０を通じて入力した命令に従い、クロック信号ｃｋ２およびリクエストクロックＲｑＣｋ１のクロック周波数を低下させたり、クロックを停止させたり、クロックを再動作させることができる。
【００５５】
レスポンスクロック制御回路ＲｓＣｋＣは、内部クロック信号ｃｋ１から入力したクロックを、内部クロック信号ｃｋ３を通じて、レスポンスキュー制御回路ＲｓＣＴへ出力する。また、レスポンスクロック制御回路ＲｓＣｋＣは内部クロック信号ｃｋ１からから入力したクロックを、クロック分周回路Ｄｉｖ２を介してクロック信号ＲｓＣｋ０から出力する。また、レスポンスクロック制御回路ＲｓＣｋＣは、クロック信号ＲｓＣＫ１から入力したクロックを、クロックドライバＤｉｖ２を介して、クロック信号ｃｋ４よりレスポンスキュー制御回路ＲｓＣＴへ出力する。さらに、レスポンスクロック制御回路ＲｓＣｋＣはリクエスト信号ＲｑＭｕｘ０を通じて入力した命令に従い、レスポンスクロックＲｓＣｋ０のクロック周波数を低下させたり、また、クロックを停止させたり、さらに、クロックを再動作させることができる。
【００５６】
リクエストキュー回路ＲｑＱＩは、リクエスト信号ＲｑＭｕｘ０を通じて、ＩＤ値、リクエスト番号ＲｅｑＮ、命令、アドレス及び書き込みデータなどが多重化されメモリ装置Ｍ０へ入力したリクエストを格納し、リクエスト番号ＲｅｑＮと同じ番号のレスポンス番号ＲｅｓＮを生成し、レスポンスキュー制御回路ＲｓＣＴへ送信する。
【００５７】
ＩＤレジスタ回路ＩＤＲには、メモリ装置Ｍ０の識別番号ＩＤ値が格納されており、ＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩに格納されているＩＤ値と、ＩＤレジスタ回路ＩＤＲに格納されている識別番号ＩＤ値を比較する。リクエストキュー回路ＲｑＱＸＩ及びリクエストキュー回路ＲｑＱＸＯは、リクエストキュー回路ＲｑＱＩから転送されたリクエストを格納する。
【００５８】
レスポンスキュー回路ＲｓＱｏは、メモリ装置Ｍ０のメモリ回路Ｍｅｍ０から読み出されたデータ及びＩＤレジスタ回路ＩＤＲから読み出されたＩＤ値、レスポンス番号ＲｅｓＮを格納する。レスポンスキュー回路ＲｓＱｐは、レスポンス信号ＲｓＭｕｘ１を通じて、入力されるＩＤ値、レスポンス番号ＲｅｓＮ、読み出しデータおよびエラー情報およびステータス情報を格納する。
【００５９】
レスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏへ格納されているレスポンスと、レスポンスキュー回路ＲｓＱｐへ格納されているレスポンスとのレスポンス優先順位を決め、優先順位の高いレスポンスを、レスポンス信号ＲｓＭｕｘ０から出力するための調停を行う。特に限定しないが、レスポンス優先順位を決める制御方式は順位固定方式や順位変更方式があり、レスポンス優先順位設定レジスタ回路ＲＲＧへは設定された方式によってレスポンススケジュール回路ＳＣＨはレスポンスの優先順位をきめる。順位固定方式では、各メモリ装置が装備しているレスポンスキュー回路ＲｓＱｐ内のレスポンスをレスポンスキュー回路ＲｓＱｏ内のレスポンスより優先させる設定や、レスポンスキュー回路ＲｓＱｏ内のレスポンスをレスポンスキュー回路ＲｓＱｐ内のレスポンスをより優先させる設定などが可能である。また、順位変更方式では、各メモリ装置が装備しているレスポンスキュー回路ＲｓＱｐ内のレスポンスとレスポンスキュー回路ＲｓＱｏ内のレスポンスの優先順位をラウンドロビン方式で変更することが可能である。
【００６０】
なお、メモリ装置Ｍ０が装備するメモリ回路Ｍｅｍ０は、よく知られているダイナミックランダムアクセスメモリの構成と同じであるため、ここでの詳しい説明は省略する。
【００６１】
＜メモリ装置Ｍ１の説明＞
図５は、メモリ装置Ｍ１の構成図の一例である。図４に示されるメモリ装置Ｍ０との相違点は、メモリ回路Ｍｅｍ１が、不揮発性メモリであり、ＮＯＲ型フラッシュメモリセルを利用したＮＯＲ型フラッシュメモリである点である。そのため、メモリ回路Ｍｅｍ１には、ブートデバイスＩＤ値ＢｏｔＩＤが格納される。メモリ回路Ｍｅｍ１および初期化回路ＩＮＩＴ１以外の、メモリ装置Ｍ１を構成する回路と、その動作は、図３のメモリ装置Ｍ０と同等である。初期化回路ＩＮＩＴ１は、識別番号保持回路ＳＲ１を装備している。特に限定しないが識別番号保持回路ＳＲ１はメモリ装置Ｍ１の識別番号ＩＤ値２を保持している。
【００６２】
＜メモリ回路Ｍｅｍ１＞
図６は、メモリ装置Ｍ１が装備するメモリ回路Ｍｅｍ１の回路ブロック図の一例である。メモリ回路Ｍｅｍ１は、コマンドデコーダＣｍｄＤｅｃ、制御回路Ｃｏｎｔ  Ｌｏｇｉｃ、ライトデータバッファＷＤａｔａＬａｔ、リードデータバッファＲＤａｔａＬａｔ、データ制御回路ＤａｔａＣｏｎｔ、およびメモリバンクＮＶ１ＢＡＮＫ０〜ＮＶ１ＢＡＮＫ７から構成されている。また、各メモリバンクＮＶ１ＢＡＮＫ０〜ＮＶ１ＢＡＮＫＫ７はページアドレスバッファＰａｄＬａｔ、カラムアドレスバッファＣａｄＬａｔ、ページデコーダＰａｇｅＤｅｃ、カラムデコーダＣｏｌＤｅｃ、データバッファＤａｔａＬａｔ、メモリアレイ回路ＮＶ１Ｂ０〜ＮＶ１Ｂ７から構成されている。
【００６３】
メモリ回路Ｍｅｍ１の読み出し動作の一例を説明する。メモリ装置Ｍ１のリクエストキューＲｑＱＸＩへ、バンクアクティブ命令ＡＣ、バンクアドレスＢＡＤＤ７およびページアドレスＰＡＤＤ５が含まれているリクエストＲｑＡＣＩＤ２Ｓ５が格納されるとバンクアクティブ命令ＡＣがコマンド信号ＣＭＤから、バンクアドレスＢＡＤＤ７およびページアドレスＰＡＤＤ５がアドレス信号ＡＤＤよりメモリ回路Ｍｅｍ１へ送信される。コマンドデコーダＣｍｄＤｅｃはバンクアクティブ命令ＡＣを解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＫ７が選択され、メモリバンクＮＶ１Ｂ７のページアドレスバッファＰａｄＬａｔへページアドレス５が格納され、ページデコーダＰａｇｅＤｅｃへ入力される。その後メモリアレイ回路ＮＶ１Ｂ７内のページアドレスＰＡＤＤ５に接続されているメモリセルが活性化され、特に限定しないが１ｋＢｙｔｅ分のデータがデータバッファＤａｔａＬａｔへ転送される。
【００６４】
つぎに、メモリ装置Ｍ１のリクエストキューＲｑＱＸＩへリード命令ＲＤ、リードデータ長ＲＤＬ値４、バンクアドレスＢＡＤＤ７およびカラムアドレスＣＡＤＤ６４を含むリクエストＲｑＲＤＩＤ２Ｓ６が格納されると、リード命令ＲＤとデータ長ＤＬ値４がコマンド信号ＣＭＤから、バンクアドレスＢＡＤＤ７およびカラムアドレスＣＡＤＤ６３が、アドレス信号ＡＤＤから、メモリ回路Ｍｅｍ１へ送信される。コマンドデコーダＣｍｄＤｅｃはリード命令ＲＤとデータ長ＤＬ値４を解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＫ７が選択され、メモリバンクＮＶ１ＢＫ７のカラムアドレスバッファＣａｄＬａｔへカラムアドレス６３を格納され、カラムデコーダＣｏｌＤｅｃへ入力される。
【００６５】
その後、カラムアドレス６４を開始アドレスとして、４バイト分のデータが、データバッファＤａｔａＬａｔから読み出され、データ制御回路ＤａｔａＣｏｎｔを介してリードデータバッファＲＤａｔａ  Ｌａｔへ転送され格納される。その後読み出された４バイト分のデータはレスポンスキュー回路ＲｓＱｏへ転送される。
【００６６】
次に、メモリ回路Ｍｅｍ１の書込み動作の一例を説明する。メモリ装置Ｍ１のリクエストキューＲｑＱＸＩへライト命令ＷＴ、データ長ＤＬ値４、バンクアドレスＢＡＤＤ７およびカラムアドレスＣＡＤＤ１２８、４バイト分のライトデータを含むリクエストＲｑＷＴＩＤ２Ｓ７が格納されると、ライト命令ＷＴとデータ長ＤＬ値４がコマンド信号ＣＭＤから、バンクアドレスＢＡＤＤ７およびカラムアドレスＣＡＤＤ１２８が、アドレス信号ＡＤＤから、４バイト分のライトデータがライトデータ信号ＷＤａｔａからメモリ回路Ｍｅｍ１へ送信される。
【００６７】
コマンドデコーダＣｍｄＤｅｃはライト命令ＷＴとデータ長ＤＬ値４を解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＫ７が選択され、メモリバンクＮＶ１ＢＫ７のカラムアドレスバッファＣａｄＬａｔへカラムアドレス１２８を格納され、カラムデコーダＣｏｌＤｅｃへ入力される。また、制御回路Ｃｏｎｔ  Ｌｏｇｉｃによって４バイト分のライトデータはライトデータバッファＷＤａｔａ  Ｌａｔへ格納される。
【００６８】
その後カラムアドレス１２８を開始アドレスとして、４バイト分のライトデータが、ライトデータバッファＷＤａｔａ  Ｌａｔから、データ制御回路Ｄａｔａ  Ｃｏｎｔを介して、メモリバンクＮＶ１ＢＡＮＫ７内のデータバッファＤａｔａＬａｔへ転送され、メモリアレイ回路ＮＶ１Ｂ７へ書き込まれる。
【００６９】
各メモリバンクＮＶ１ＢＡＮＫ０〜ＮＶ１ＢＡＮＫ７は独立に動作するため、異なるバンク間では、読み出し動作と書き込み動作を同時に実行でき、高速化を図ることができる。
【００７０】
＜メモリ装置Ｍ２の説明＞
図７は、メモリ装置Ｍ２の構成図の一例である。図４、５に示されるメモリ装置Ｍ０、Ｍ１との相違点は、メモリ回路Ｍｅｍ２が、不揮発性メモリであり、ＮＡＮＤ型フラッシュメモリセルを利用したＮＡＮＤ型フラッシュメモリである点である。メモリ回路Ｍｅｍ２および初期化回路ＩＮＩＴ２、以外のメモリ装置Ｍ２を構成する回路と、その動作は、図４のメモリ装置Ｍ０および図５のメモリ装置Ｍ１と同等である。即ち、初期化回路ＩＮＩＴ０、ＩＮＴ１、ＩＮＩＴ２とメモリ回路Ｍｅｍ０、Ｍｅｍ１、Ｍｅｍ２以外の回路は、メモリ装置Ｍ０〜２で共通の回路を用いることができる。初期化回路ＩＮＩＴ２は、識別番号保持回路ＳＲ２を装備している。特に限定しないが識別番号保持回路ＳＲ２はメモリ装置Ｍ２の識別番号ＩＤ値３を保持している。
【００７１】
＜メモリ回路Ｍｅｍ２＞
図８は、メモリ装置Ｍ２が装備するメモリ回路Ｍｅｍ２の回路ブロック図の一例である。メモリ回路Ｍｅｍ２は、コマンドデコーダＣｍｄＤｅｃ、制御回路Ｃｏｎｔ  Ｌｏｇｉｃ、ライトデータバッファＷＤａｔａＬａｔ、リードデータバッファＲＤａｔａＬａｔ、データ制御回路ＤａｔａＣｏｎｔ、およびメモリバンクＮＶ２ＢＡＮＫ０〜ＮＶ２ＢＡＮＫ７から構成されている。また、各メモリバンクＮＶ２ＢＡＮＫ０〜ＮＶ２ＢＡＮＫＫ７はページアドレスバッファＰａｄＬａｔ、カラムアドレスバッファＣａｄＬａｔ、ページデコーダＰａｇｅＤｅｃ、カラムデコーダＣｏｌＤｅｃ、データバッファＤａｔａＬａｔ、メモリアレイ回路ＮＶ２Ｂ０〜ＮＶ２Ｂ７から構成されている。
【００７２】
メモリ回路Ｍｅｍ２の読み出し動作および書き込み動作はメモリ回路Ｍｅｍ１と同じ手順で行われる。また、各メモリバンクＮＶ２ＢＡＮＫ０〜ＮＶ２ＢＡＮＫ７は独立に動作するため、異なるバンク間では、読み出し動作と書き込み動作を同時に実行でき、高速化を図ることができる。
【００７３】
＜電源投入時の初期シーケンス＞
以下に本情報処理システムの動作を説明する。先ず、電源投入時および電源投入直後の動作について説明する。
【００７４】
先ず、図１から図９を用いて電源投入時の本情報処理システムの動作の一例について説明する。図９は、本情報処理システム装置の電源投入時の初期シーケンスを示す一例である。Ｔ１の期間（ＰｗＯＮ）で情報処理装置ＣＰＵ＿ＣＨＩＰと、メモリモジュールＭＥＭ内のメモリ装置Ｍ０、Ｍ１及びＭ２へ電源投入を行い、Ｔ２の期間（Ｒｅｓｅｔ）でリセットを行う。リセットの方法は特に限定しないが、それぞれの内蔵回路で自動的にリセットを行う方法でも、あるいは、外部にリセット端子を持ち、このリセット信号によってリセット動作を行う方法でも、情報処理装置ＣＰＵ＿ＣＨＩＰからリクエスト信号ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２を介して、リセット命令をメモリＭ０、Ｍ１およびＭ２へ入力し、リセットを行う方法としても良い。
【００７５】
Ｔ２のリセット期間（Ｒｅｓｅｔ）の期間では、情報処理装置ＣＰＵ＿ＣＨＩＰ、メモリ装置Ｍ０、Ｍ１及びＭ２の内部状態を初期設定する。以下に一例を示す。情報処理装置ＣＰＵ＿ＣＨＩＰは、コンフィグレーション回路ＣＯＮＦＩＧ内の全てのレジスタを初期化する。また、情報処理回路ＣＰＵ０が持つマスター番号レジスタＭＩＤ０へ０を設定し、情報処理回路ＣＰＵ１が持つマスター番号レジスタＭＩＤ１へ１を設定し、情報処理回路ＣＰＵ２が持つマスター番号レジスタＭＩＤ２へ２を設定し、情報処理回路ＣＰＵ３が持つマスター番号レジスタＭＩＤ３へ３を設定する。
【００７６】
また、情報処理装置ＣＰＵ＿ＣＨＩＰは、自らが管理するメモリマップを初期設定する。特に限定しないが、ブートプログラム領域、コンフィグレーション領域、プログラム領域、コピー領域、ワーク領域、データ領域、ＩＯデバイス領域などが設定の対象となり、ブートプログラム領域およびプログラム領域はメモリ装置Ｍ１へ、コピー領域およびワーク領域はメモリ装置Ｍ０へ、データ領域はメモリ装置Ｍ２へ、コンフィグレーション領域はコンフィグレーション回路ＣＯＮＦＩＧへ割り当てられる。
【００７７】
メモリ装置Ｍ０は、自身の初期設定回路ＩＮＩＴ０が、自身のリクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｑＣＴ、リクエスト制御回路ＲｑＣｋｃ、レスポンスクロック制御回路ＲｓＣｋＣ、クロック分周回路Ｄｉｖ１、Ｄｉｖ２およびメモリ回路Ｍｅｍ０を初期設定する。
【００７８】
メモリ装置Ｍ０は、自身が装備している識別番号保持回路ＳＲ０が保持している識別番号値ＩＤ１をＩＤレジスタＩＤＲへ設定し、ＩＤ有効ビットＩＤＶはＨｉｇｈへ設定される。レスポンスキュー制御回路ＲｑＣＴが持つレスポンス調停回路ＳＣＨのレスポンス優先順位に関して、レスポンスキュー回路ＲｓＱｏのレスポンス優先順位は１へ、レスポンスキュー回路ＲｓＱｐのレスポンス優先順位は２へ初期設定される。クロック分周回路Ｄｉｖ１およびＤｉｖ２の分周比は１へ初期設定される。また、メモリ装置Ｍ０は、ＲｓＭｕｘ１、ＲｑＣｋ１が開放（ｏｐｅｎ）されていないことによって、直列接続しているメモリ装置の中で最終端のメモリ装置ではないことを認識し、終端デバイスフラグレジスタＥＲへ０を設定する。さらに、メモリ装置Ｍ０は、ブートデバイス認識信号Ｂｓｉｇが電源（ｖｄｄ）へ接続されていることによって、ブートデバイスではないことを認識し、ブートデバイスフラグレジスタＢＲへ０を設定する。
【００７９】
メモリ装置Ｍ１は、自身の初期設定回路ＩＮＩＴ１が、自身のリクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｑＣＴ、リクエスト制御回路ＲｑＣｋｃ、レスポンスクロック制御回路ＲｓＣｋＣ、クロック分周回路Ｄｉｖ１、Ｄｉｖ２およびメモリ回路Ｍｅｍ１を初期設定する。
【００８０】
メモリ装置Ｍ１は、自身が装備している識別番号保持回路ＳＲ１が保持している識別番号値ＩＤ２をＩＤレジスタＩＤＲへ設定し、ＩＤ有効ビットＩＤＶはＨｉｇｈへ設定される。次にメモリ装置Ｍ１のレスポンスキュー制御回路ＲｑＣＴが持つレスポンス調停回路ＳＣＨのレスポンス優先順位に関して、メモリ装置Ｍ１のレスポンス優先順位は１へ、メモリ装置Ｍ２のレスポンス優先順位は２へ初期設定される。クロック分周回路Ｄｉｖ１およびＤｉｖ２の分周比は１に設定される。
【００８１】
また、メモリ装置Ｍ１は、ＲｓＭｕｘ２、ＲｑＣｋ２が開放（ｏｐｅｎ）されていないことによって、直列接続しているメモリ装置の中で最終端のメモリ装置ではないことを認識し、終端デバイスフラグレジスタＥＲへ０を設定する。さらに、メモリ装置Ｍ１は、ブートデバイス認識信号Ｂｓｉｇが設置（ｇｎｄ）へ接続されていることによって、ブートデバイスであることを認識し、ブートデバイスフラグレジスタＢＲへ１を設定する。
【００８２】
メモリ装置Ｍ２は、自身の初期設定回路ＩＮＩＴ２が、自身のリクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｑＣＴ、リクエスト制御回路ＲｑＣｋｃ、レスポンスクロック制御回路ＲｓＣｋＣ、クロック分周回路Ｄｉｖ１、Ｄｉｖ２およびメモリ回路Ｍｅｍ２を初期設定する。
【００８３】
メモリ装置Ｍ２は、自身が装備している識別番号保持回路ＳＲ２が保持している識別番号値ＩＤ３をＩＤレジスタＩＤＲへ設定し、ＩＤ有効ビットＩＤＶはＨｉｇｈへ設定される。メモリ装置Ｍ２のレスポンスキュー制御回路ＲｑＣＴが持つレスポンス調停回路ＳＣＨのレスポンス優先順位に関してメモリ装置Ｍ２のレスポンス優先順位は１へ初期設定される。クロック分周回路Ｄｉｖ１およびＤｉｖ２の分周比は１に設定される。また、メモリ装置Ｍ２は、ＲｑＥｎ３、ＲｓＭｕｘ３、ＲｑＣｋ３を開放（ｏｐｅｎ）していることによって、直列接続しているメモリ装置の最も終端のメモリ装置であることを認識し、終端デバイスフラグレジスタＥＲへ１を設定する。さらに、メモリ装置Ｍ２は、ブートデバイス認識信号Ｂｓｉｇが電源（ｖｄｄ）へ接続されていることによって、ブートデバイスではないことを認識し、ブートデバイスフラグレジスタＢＲへ０を設定する。なお、特に制限されないが、以上までの初期設定は、各メモリ装置の初期設定回路（ハードウェアで構成されたシーケンサ）により実現される。
【００８４】
Ｔ２のリセット期間（Ｒｅｓｅｔ）が終了した後のＴ３の期間（ＣｌｋＳｔａｂｌｅ）では、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ０，Ｍ１およびＭ２の信号の識別番号の確認を行う。
【００８５】
まず、情報処理装置ＣＰＵ＿ＣＨＩＰからリクエストクロックＲｑＣｋ０がメモリ装置Ｍ０へ入力され、メモリ装置Ｍ０のクロックドライバＤｒｖ１を通じてクロック分周回路Ｄｉｖ１およびクロック信号ｃｋ１としてクロック分周回路Ｄｉｖ２へ出力される。クロック分周回路Ｄｉｖ１へ入力したクロックはクロック信号ｃｋ２から出力され、リクエストクロックＲｑＣｋ１を通じてメモリ装置Ｍ１へ出力する。また、メモリ装置Ｍ０のクロック分周回路Ｄｉｖ２へ入力したクロックはクロック信号ｃｋ３から出力され、また、レスポンスクロックＲｓＣｋ０を通じて情報処理装置ＣＰＵ＿ＣＨＩＰへ出力する。
【００８６】
メモリ装置Ｍ１は、メモリ装置Ｍ０からリクエストクロックＲｑＣｋ１が入力され、メモリ装置Ｍ１のクロックドライバＤｒｖ１を通じてクロック分周回路Ｄｉｖ１およびクロック信号ｃｋ１としてクロック分周回路Ｄｉｖ２へ出力される。クロック分周回路Ｄｉｖ１へ入力したクロックはクロック信号ｃｋ２から出力され、リクエストクロックＲｑＣｋ２を通じてメモリ装置Ｍ２へ出力する。また、メモリ装置Ｍ１のクロック分周回路Ｄｉｖ２へ入力したクロックはクロック信号ｃｋ３から出力され、また、レスポンスクロックＲｓＣｋ１を通じてメモリ装置Ｍ０へ出力する。レスポンスクロックＲｓＣｋ１を通じてメモリ装置Ｍ０のクロックドライバＤｒｖ２へ入力されたクロックはクロック信号ｃｋ４へ出力される。
【００８７】
メモリ装置Ｍ２は、メモリ装置Ｍ１からリクエストクロックＲｑＣｋ２が入力され、メモリ装置Ｍ２のクロックドライバＤｒｖ１を通じてクロック分周回路Ｄｉｖ１およびクロック信号ｃｋ１としてクロック分周回路Ｄｉｖ２へ出力される。クロック分周回路Ｄｉｖ１へ入力したクロックはクロック信号ｃｋ２から出力され、リクエストクロックＲｑＣｋ３を通じてメモリ装置Ｍ２へ出力する。また、メモリ装置Ｍ２のクロック分周回路Ｄｉｖ２へ入力したクロックはクロック信号ｃｋ３から出力され、また、レスポンスクロックＲｓＣｋ２を通じてメモリ装置Ｍ１へ出力する。レスポンスクロックＲｓＣｋ２を通じてメモリ装置Ｍ１のクロックドライバＤｒｖ２へ入力されたクロックはクロック信号ｃｋ４へ出力される。
【００８８】
次に、情報処理装置ＣＰＵ＿ＣＨＩＰは、メモリ装置Ｍ０、Ｍ１およびＭ２の識別番号を確認する。情報処理装置ＣＰＵ＿ＣＨＩＰは、リクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値１、ＩＤリード命令ＲＩＤ、マスター番号ＭＩＤ値０、リクエスト番号ＲｅｑＮ値１、レスポンスキュー番号ＲＱＮ値０を含む、多重化したリクエストＲｑＲＩＤＩＤ１Ｓ１をメモリ装置Ｍ０へ転送する。
【００８９】
メモリ装置Ｍ０はリクエストＲｑＲＩＤＩＤ１Ｓ１に含まれるＩＤ値１と、自身のＩＤ有効ビットＩＤＶがＨｉｇｈであり、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認する。
【００９０】
次に、メモリ装置Ｍ０はレスポンス開始フラグ、メモリ装置Ｍ０の識別番号ＩＤ値１、ＩＤリード命令ＲＩＤ、マスター番号ＭＩＤ値０、リードデータ長ＲＤＬ値２、レスポンス番号ＲｅｓＮ値１（リクエスト番号ＲｅｑＮ値１と等しい値）、ＩＤ番号付け完了情報ＩＤＣ、ブートデバイスフラグレジスタＢＲ値０、および終端デバイスフラグレジスタＥＲ値０からなるレスポンスＲｓＲＩＤＩＤ１Ｓ１を生成する。
【００９１】
その後、レスポンスＲｓＲＩＤＩＤ１Ｓ１はレスポンスキュー番号ＱＵＮ値０で指定されたレスポンスキューＲｓＱｏ内のレスポンスキュー番号０のレスポンスキューへ転送され、レスポンス信号ＲｓＭｕｘ０から情報処理装置ＣＰＵ＿ＣＨＩＰへ送信される。
【００９２】
情報処理装置ＣＰＵ＿ＣＨＩＰはレスポンスＲｓＲＩＤＩＤ１Ｓ１を受け取り、このレスポンスＲｓＲＩＤＩＤ１Ｓ１に含まれるメモリ装置Ｍ０のＩＤ値１、ＩＤ番号付け完了情報によってメモリ装置Ｍ０の識別番号ＩＤ付けが完了したことを知る。
【００９３】
また、情報処理装置ＣＰＵ＿ＣＨＩＰは、ブートデバイスフラグレジスタ値が０であることによってメモリ装置Ｍ０はブートプログラムを保持するメモリ装置では無いことを知り、終端デバイスフラグレジスタＥＲ値が０であることによってメモリ装置Ｍ０は最終端のメモリ装置では無いことを知る。さらに、情報処理装置ＣＰＵ＿ＣＨＩＰは、コンフィグレーション回路ＣＯＮＦＩＧのコネクションレジスタＣＮＮＲＥＧへ、接続順番号ＣＮＣＴ  ＮＯ値１に対応した、有効信号ＶＡＬＩＤ値１、メモリ装置Ｍ０の識別番号ＩＤ値１、ブートデバイス情報ＢＯＯＴＤＥＶ値０および終端デバイス情報ＥＮＤＦＬＡＧ値０を設定する。
【００９４】
次に、情報処理装置ＣＰＵ＿ＣＨＩＰはリクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値２、ＩＤリード命令ＲＩＤ、マスター番号ＭＩＤ値０、リクエスト番号ＲｅｑＮ値２、レスポンスキュー番号ＲＱＮ値０を含む、多重化したリクエストＲｑＲＩＤＩＤ２Ｓ２をメモリ装置Ｍ０へ転送する。
【００９５】
メモリ装置Ｍ０は、自身のＩＤレジスタＩＤＲへ保持されている識別番号ＩＤ値１とリクエストＲｑＲＩＤＩＤ２Ｓ２に含まれる識別番号ＩＤ番号値２とを比較し、不一致のため、リクエストＲｑＲＩＤＩＤ２Ｓ２をメモリ装置Ｍ１へ転送する。
【００９６】
メモリ装置Ｍ１はリクエストＲｑＲＩＤＩＤ２Ｓ２に含まれるＩＤ値２と、自身のＩＤ有効ビットＩＤＶがＨｉｇｈであり、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２が一致したことによって、自身へのリクエストであることを確認する。
【００９７】
次に、メモリ装置Ｍ１はレスポンス開始フラグ、メモリ装置Ｍ１の識別番号ＩＤ値２、ＩＤリード命令ＲＩＤ、マスター番号ＭＩＤ値０、リードデータ長ＲＤＬ値２、レスポンス番号ＲｅｓＮ値２（リクエスト番号ＲｅｑＮ値２と等しい値）、ＩＤ番号付け完了情報ＩＤＣ、ブートデバイスフラグレジスタＢＲ値１および終端デバイスフラグレジスタＥＲ値０からなるレスポンスＲｓＲＩＤＩＤ２Ｓ２を生成する。
【００９８】
その後、レスポンスＲｓＲＩＤＩＤ２Ｓ２はレスポンスキュー番号ＱＵＮ値０で指定されたレスポンスキューＲｓＱｏ内のレスポンスキュー番号０のレスポンスキューへ転送され、レスポンス信号ＲｓＭｕｘ１からメモリ装置Ｍ０へ送信される。メモリ装置Ｍ０はレスポンスＲｓＲＩＤＩＤ２Ｓ２を受け取り、レスポンス信号ＲｓＭｕｘ０を通じてレスポンスＲｓＲＩＤＩＤ２Ｓ２を情報処理装置ＣＰＵ＿ＣＨＩＰへ転送する。
【００９９】
情報処理装置ＣＰＵ＿ＣＨＩＰはレスポンスＲｓＲＩＤＩＤ２Ｓ２を受け取り、このレスポンスＲｓＲＩＤＩＤ２Ｓ２に含まれるメモリ装置Ｍ１のＩＤ値２、ＩＤ番号付け完了情報によってメモリ装置Ｍ１の識別番号ＩＤ付けが完了したことを知る。
【０１００】
また、情報処理装置ＣＰＵ＿ＣＨＩＰは、ブートデバイスフラグレジスタ値が１であることによってメモリ装置Ｍ１はブートプログラムを保持するメモリ装置であることを知り、終端デバイスフラグレジスタＥＲ値が０であることによってメモリ装置Ｍ１は最終端のメモリ装置では無いことを知る。
【０１０１】
さらに、情報処理装置ＣＰＵ＿ＣＨＩＰは、コンフィグレーション回路ＣＯＮＦＩＧのコネクションレジスタＣＮＮＲＥＧへ、接続順番号ＣＮＣＴ  ＮＯ値２に対応した、有効信号ＶＡＬＩＤ値１、メモリ装置Ｍ１の識別番号ＩＤ値２、ブートデバイス情報ＢＯＯＴＤＥＶ値１および終端デバイス情報ＥＮＤＦＬＡＧ値０を設定する。
【０１０２】
次に、情報処理装置ＣＰＵ＿ＣＨＩＰはリクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値３、ＩＤリード命令ＲＩＤ、マスター番号ＭＩＤ値０、リクエスト番号ＲｅｑＮ値３、レスポンスキュー番号ＲＱＮ値０を含む、多重化したリクエストＲｑＲＩＤＩＤ３Ｓ３をメモリ装置Ｍ０へ転送する。
【０１０３】
メモリ装置Ｍ０は、自身のＩＤレジスタＩＤＲへ保持されている識別番号ＩＤ値１とリクエストＲｑＲＩＤＩＤ３Ｓ３に含まれる識別番号ＩＤ番号値３とを比較し、不一致のため、リクエストＲｑＲＩＤＩＤ３Ｓ３をメモリ装置Ｍ１へ転送する。
【０１０４】
メモリ装置Ｍ１はリクエストＲｑＲＩＤＩＤ３Ｓ３受け取り、自身のＩＤレジスタＩＤＲへ保持されている識別番号ＩＤ値２とリクエストＲｑＲＩＤＩＤ３Ｓ３に含まれる識別番号ＩＤ番号値３とを比較し、不一致のため、リクエストＲｑＲＩＤＩＤ３Ｓ３をメモリ装置Ｍ２へ転送する。
【０１０５】
メモリ装置Ｍ２はリクエストＲｑＲＩＤＩＤ３Ｓ３に含まれるＩＤ値３と、自身のＩＤ有効ビットＩＤＶがＨｉｇｈであり、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値３が一致したことによって、自身へのリクエストであることを確認する。
【０１０６】
次に、メモリ装置Ｍ２はレスポンス開始フラグ、メモリ装置Ｍ２の識別番号ＩＤ値３、ＩＤリード命令ＲＩＤ、マスター番号ＭＩＤ値０、リードデータ長ＲＤＬ値２、レスポンス番号ＲｅｓＮ値３（リクエスト番号ＲｅｑＮ値３と等しい値）、ＩＤ番号付け完了情報ＩＤＣおよび終端デバイスフラグレジスタＥＲ値１からなるレスポンスＲｓＲＩＤＩＤ３Ｓ３を生成する。
【０１０７】
その後、レスポンスＲｓＲＩＤＩＤ３Ｓ３はレスポンスキュー番号ＱＵＮ値０で指定されたレスポンスキューＲｓＱｏ内のレスポンスキュー番号０のレスポンスキューへ転送され、レスポンス信号ＲｓＭｕｘ２からメモリ装置Ｍ１へ送信される。メモリ装置Ｍ１はレスポンスＲｓＲＩＤＩＤ３Ｓ３を受け取り、レスポンス信号ＲｓＭｕｘ１を通じてメモリ装置Ｍ０へ送信される。メモリ装置Ｍ０はレスポンスＲｓＲＩＤＩＤ３Ｓ３を受け取り、レスポンス信号ＲｓＭｕｘ０を通じてレスポンスＲｓＲＩＤＩＤ３Ｓ３を情報処理装置ＣＰＵ＿ＣＨＩＰへ転送する。
【０１０８】
情報処理装置ＣＰＵ＿ＣＨＩＰはレスポンスＲｓＲＩＤＩＤ３Ｓ３を受け取り、このレスポンスＲｓＲＩＤＩＤ３Ｓ３に含まれるメモリ装置Ｍ２のＩＤ値３、ＩＤ番号付け完了情報によってメモリ装置Ｍ２の識別番号ＩＤ付けが完了したことを知る。
【０１０９】
また、情報処理装置ＣＰＵ＿ＣＨＩＰは、ブートデバイスフラグレジスタ値が０であることによってメモリ装置Ｍ２はブートプログラムを保持するメモリ装置では無いことを知り、終端デバイスフラグレジスタＥＲ値が１であることによってメモリ装置Ｍ２は最終端のメモリ装置であることを知る。
【０１１０】
さらに、情報処理装置ＣＰＵ＿ＣＨＩＰは、コンフィグレーション回路ＣＯＮＦＩＧのコネクションレジスタＣＮＮＲＥＧへ、接続順番号ＣＮＣＴ  ＮＯ値３に対応した、有効信号ＶＡＬＩＤ値１、メモリ装置Ｍ２の識別番号ＩＤ値３、ブートデバイス情報ＢＯＯＴＤＥＶ値０および終端デバイス情報ＥＮＤＦＬＡＧ値１を設定する。
【０１１１】
これによって情報処理装置ＣＰＵ＿ＣＨＩＰは最終端のメモリ装置Ｍ２まで識別番号ＩＤ付けが完了したことを知る。
【０１１２】
Ｔ３の期間が終了した後のＴ４の期間（ＢｏｏｔＲｄ）では情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ１へ格納されているブートプログラムを読み出す。ブートプログラムには、情報処理装置ＣＰＵ＿ＣＨＩＰを立ち上げるためのプログラムＢＴＰ０と、各メモリ装置へ識別番号ＩＤを割り当てるためのプログラムと、コンフィグレーション回路内の様々なレジスタへ値を設定するためのプログラムと、これらレジスタへ設定する値とが含まれる。以下にブートプログラムを読み出す動作の一例を示す。
【０１１３】
情報処理装置ＣＰＵ＿ＣＨＩＰ内の情報処理回路ＣＰＵ０は、識別番号ＩＤ値２のメモリ装置Ｍ１からブートプログラムを読み出す。
【０１１４】
情報処理装置ＣＰＵ＿ＣＨＩＰは先ず、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値２、アクティブ命令ＡＣ、マスター番号ＭＩＤ値０、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値４、バンクアドレスＢＫ０およびページアドレスＲＯＷ０を含むリクエストＲｑＡＣＩＤ２Ｓ４をクロック信号ＲｑＣＫ０に同期させ、リクエスト信号ＲｑＭｕｘ０からメモリ装置Ｍ０へ転送する。
【０１１５】
続いて、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値２、リード命令ＲＤ、マスター番号ＭＩＤ値０、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値５、レスポンスキュー番号ＱＵＮ値０、バンクアドレスＢＫ０およびカラムアドレスＣＯＬ０、リードデータ長ＲＤＬ値３２から構成されるリクエストＲｑＲＤＩＤ２Ｓ５をクロック信号ＲｑＣＫ０に同期させ、リクエスト信号ＲｑＭｕｘ０から、メモリ装置Ｍ０へ転送する。
【０１１６】
メモリ装置Ｍ０は、情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｑＡＣＩＤ２Ｓ４とリクエストＲｑＲＤＩＤ２Ｓ５を順に、自身のリクエストキュー制御回路ＲｑＣＴへ格納する。メモリ装置Ｍ０は、自身のＩＤレジスタＩＤＲへ保持されている識別番号ＩＤ値１とリクエストＲｑＡＣＩＤ２Ｓ４とリクエストＲｑＲＤＩＤ２Ｓ５へ含まれる識別番号ＩＤ番号値２とを比較する。これらの結果は不一致のため、メモリ装置Ｍ０はリクエストＲｑＡＣＩＤ２Ｓ４とリクエストＲｑＲＤＩＤ２Ｓ５を自身へのリクエストではないと判断し、リクエスト信号ＲｑＭｕｘ１を通じて、順にメモリ装置Ｍ１へ転送する。
【０１１７】
メモリ装置Ｍ１は、メモリ装置Ｍ０からのリクエストＲｑＡＣＩＤ２Ｓ４とリクエストＲｑＲＤＩＤ２Ｓ５を自身のリクエストキュー制御回路ＲｑＣＴへ格納する。メモリ装置Ｍ１のリクエストキュー制御回路ＲｑＣＴは自身のＩＤレジスタＩＤＲへ保持されている識別番号ＩＤ値２とリクエストＲｑＡＣＩＤ２Ｓ４へ含まれる識別番号ＩＤ番号値２とを比較する。双方は一致したことによって自身へのリクエストであることを確認し、メモリ装置Ｍ１のリクエストキューＲｑＱＸＩへリクエストＲｑＡＣＩＤ２Ｓ４が転送される。
【０１１８】
さらに、リクエストＲｑＡＣＩＤ１Ｓ５に含まれるバンクアクティブ命令ＡＣ、バンクアドレスＢＫ０、ページアドレスＲＯＷ０はメモリ回路Ｍｅｍ１へ転送され、メモリ回路Ｍｅｍ１のメモリバンクＮＶ１ＢＡＮＫ０のページアドレス０に接続されている１ページ分（特に限定しないが１ｋバイト分）のブートプログラムがデータバッファＤａｔａＬａｔへ転送される。
【０１１９】
つぎに、メモリ装置Ｍ１のリクエストキュー制御回路ＲｑＣＴは自身のＩＤレジスタＩＤＲへ保持されている識別番号ＩＤ値２とＲｑＲＤＩＤ２Ｓ５へ含まれる識別番号ＩＤ番号値２とを比較する。双方は一致したことによって自身へのリクエストであることを確認し、メモリ装置Ｍ１のリクエストキューＲｑＱＸＩへリクエストＲｑＲＤＩＤ２Ｓ５が転送される。
【０１２０】
さらに、ＲｑＲＤＩＤ２Ｓ５に含まれるリード命令ＲＤ、バンクアドレスＢＫ０、カラムアドレスＣＯＬ０およびリードデータ長ＲＤＬ値３２はメモリ回路Ｍｅｍ１へ転送され、メモリ回路Ｍｅｍ１のメモリバンクＮＶ１ＢＡＮＫ０のデータバッファＤａｔａＬａｔからカラムアドレス０を開始アドレスとして、３２バイト分のブートプログラムが読み出される。
【０１２１】
読み出された３２バイト分のブートプログラムへは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、リード命令ＲＤ、マスター番号ＭＩＤ値０、リードデータ長ＲＤＬ値３２、レスポンス番号ＲｅｓＮ値５（リクエスト番号ＲｅｑＮ値５と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されたレスポンスＲｓＲ４ＩＤ２Ｓ５が生成される。その後、レスポンスＲｓＲ４ＩＤ２Ｓ５はレスポンスキュー番号ＱＵＮ値０で指定されたレスポンスキューＲｓＱｏ内のレスポンスキュー番号０のレスポンスキューへ転送され、レスポンス信号ＲｓＭｕｘ１からメモリ装置Ｍ０へ送信される。レスポンスＲｓＲ４ＩＤ２Ｓ５はメモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへ格納され、レスポンス信号ＲｓＭｕｘ０を介して情報処理装置ＣＰＵ＿ＣＨＩＰへ入力される。
【０１２２】
情報処理装置ＣＰＵ＿ＣＨＩＰは、レスポンスＲｓＲＩＤ２Ｓ５をレスポンスキューＲｓＱへ格納する。レスポンスＲｓＲＩＤ２Ｓ５に含まれるＩＤ値２およびリード命令ＲＤにより、ブートプログラムが、メモリ装置Ｍ１から送信されたことを知ることができる。
【０１２３】
以上のような動作にて情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ１から必要なサイズのブートプログラムを読み出すことができる。最後に、ブートプログラムに従い、再度メモリモジュールＭＥＭに対するメモリマップの再割り当てを行う。
【０１２４】
Ｔ４の期間が終了した後のＴ５の期間（ＳｅｔＣｆｇ）では、情報処理装置ＣＰＵ＿ＣＨＩＰはブートプログラムに従い、メモリ制御回路ＤＣＭＣのコンフィグレーション回路ＣＯＮＦＩＧ内のさまざまなレジスタへ値を設定する。
【０１２５】
レイテンシ制御レジスタにはレイテンシ制御フラグ情報およびレスポンス重複許容時間ＤＯＶＬＰ情報などが設定される。レイテンシドメインレジスタＬＴＤＲＥＧには、情報処理装置ＣＰＵ＿ＣＨＩＰがレイテンシを管理するメモリ装置のＩＤ値情報などが設定される。メモリ装置Ｍ０に関するタイミングレジスタＭ０ＴＲＥＧには、メモリ装置Ｍ０を動作させるためのリクエストとリクエスト間のタイミング情報など設定される。メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧ、メモリ装置Ｍ１を動作させるためのリクエストとリクエスト間のタイミング情報など設定される。メモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧにはメモリ装置Ｍ２を動作させるためのリクエストとリクエスト間のタイミング情報など設定される。レイテンシレジスタＬＴＲＥＧには、メモリ装置Ｍ０、Ｍ１およびＭ２にからのデータ読み出しレイテンシが設定される。メモリ装置Ｍ０、Ｍ１およびＭ２には、それぞれ２種類のデータ読み出しレイテンシが存在する。ひとつはレスポンスキューＲｓＱｏから直接データを読み出す際のデータ読み出しレイテンシＬａｔＱｕｅであり、もうひとつはメモリ回路Ｍｅｍ０、Ｍｅｍ１およびＭｅｍ２からデータを読み出す際のデータ読み出しレイテンシＬａｔＢａｎｋである。動作モードレジスタＯＭＤＲＥＧには、メモリ装置Ｍ０、Ｍ１、Ｍ２をバンクオープンモードあるいはバンクローズモードのどちらで動作させるかを設定する。
【０１２６】
Ｔ５の期間が終了した後のＴ６の期間（ＬａｔＣｆｍ）では、情報処理装置ＣＰＵ＿ＣＨＩＰはブートプログラムに従い、メモリ装置Ｍ０、Ｍ１およびＭ２のデータ読み出しレイテンシＬａｔＱｕｅおよびＬａｔＢａｎｋを計測し、レイテンシの値を確かめる。Ｔ６の期間が終了した後のＴ７の期間（Ｉｄｌｅ）以降は、メモリモジュールＭＥＭはアイドル状態となり、情報処理装置ＣＰＵ＿ＣＨＰからのリクエストを待つ状態となる。
【０１２７】
このように、電源投入直後に、各メモリ装置が自身で識別番号ＩＤを設定することで、ブートプログラムをすばやく読み出し、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭを高速に立ち上げることができる。
【０１２８】
＜レジスタ設定：コネクションレジスタＣＮＮＲＥＧ＞
図１０は、電源投入時の初期シーケンスにて、設定されたコネクションレジスタＣＮＮＲＥＧへの設定値の一例を示す。特に限定しないが、コネクションレジスタＣＮＮＲＥＧには、接続順番号ＣＮＣＴ  ＮＯと、有効信号ＶＡＬＩＤと、情報処理装置ＣＰＵ＿ＣＨＩＰや各メモリ装置の識別番号ＩＤと、ブートデバイス情報ＢＯＯＴＤＥＶと、最終端メモリデバイス情報ＥＮＤＦＬＡＧが設定される。有効信号ＶＡＬＩＤが１の時にはブートデバイス情報ＢＯＯＴＤＥＶと、最終端メモリデバイス情報ＥＮＤＦＬＡＧが有効であり、０の場合は無効であることを示す。接続順番号ＣＮＣＴ  ＮＯが０から８まであり、番号大きいほど情報処理装置ＣＰＵ＿ＣＨＩＰに対する接続位置が遠いことを意味する。ブートデバイス情報ＢＯＯＴＤＥＶが１に対応する識別番号ＩＤ値がブートプログラムを格納しているメモリ装置の識別番号ＩＤ値である。また、最終端メモリデバイス情報ＥＮＤＦＬＡＧが１に対応するＩＤ値が最終端のメモリ装置の識別番号ＩＤ値である。接続番号ＣＮＣＴ  ＮＯが０には情報処理装置ＣＰＵ＿ＣＨＩＰの識別番号ＩＤ値０、ブートデバイス情報ＢＯＯＴＤＥＶ値０および最終端メモリデバイス情報ＥＮＤＦＬＡＧ値０が登録されている。また、接続番号ＣＮＣＴ  ＮＯが１には、メモリ装置Ｍ０の識別番号ＩＤ値１、ブートデバイス情報ＢＯＯＴＤＥＶ値０および最終端メモリデバイス情報ＥＮＤＦＬＡＧ値０が登録されている。また、接続番号ＣＮＣＴ  ＮＯが２には、メモリ装置Ｍ１の識別番号ＩＤ値２、ブートデバイス情報ＢＯＯＴＤＥＶ値１および最終端メモリデバイス情報ＥＮＤＦＬＡＧ値０が登録されている。また、接続番号ＣＮＣＴ  ＮＯが３には、メモリ装置Ｍ２の識別番号ＩＤ値３、ブートデバイス情報ＢＯＯＴＤＥＶ値０および最終端メモリデバイス情報ＥＮＤＦＬＡＧ値１が登録されている。
【０１２９】
これは、接続の形態として、情報処理装置ＣＰＵ＿ＣＨＩＰの次にメモリ装置Ｍ０が接続され、メモリ装置Ｍ０の次にメモリ装置Ｍ１が接続され、メモリ装置Ｍ１の次にメモリ装置Ｍ２が、順に直列に接続されていることを示す。また、情報処理装置ＣＰＵ＿ＣＨＩＰの識別番号ＩＤ値が０、メモリ装置Ｍ０の識別番号ＩＤ値が１、メモリ装置Ｍ１の識別番号ＩＤ値が２、メモリ装置Ｍ２の識別番号ＩＤ値が３へ設定されていることを示す。このように、コネクションレジスタＣＮＮＲＥＧを利用し、情報処理装置ＣＰＵ＿ＣＨＩＰが、どのようなメモリ装置が、どの識別番号に対応し、どの順番で接続されているかを管理できることにより、本発明の情報処理システムの信頼性を保てるとともに、本発明の情報処理システムにて、エラーが発生した場合に、速やかにエラー復旧の処理を行うことができる。また、電源投入時の初期シーケンスのみならず、脱着可能な新たなメモリカードや、ストレージデバイスなどが接続された際にも、情報処理装置ＣＰＵ＿ＣＨＩＰは、新たなＩＤを設定し、コネクションレジスタＣＮＮＲＥＧを更新することができる。
【０１３０】
＜レジスタ設定：レイテンシ制御レジスタＬＣＲＥＧ＞
図１１は電源投入時の初期シーケンスにて設定されたレイテンシ制御レジスタＬＣＲＥＧへの設定値の一例を示す。
【０１３１】
特に限定しないが、レイテンシ制御レジスタＬＴＣＲＥＧはレイテンシ制御フラグＬＣＦＬＧおよびレスポンス重複許容時間幅ＤＯＶＬＰを設定する。レイテンシ制御フラグＬＣＦＬＧが１の時は、先に発行したリクエストに対するレスポンスが入力される時間帯と、これから発行するリクエストに対するレスポンスが入力される時間帯とを考慮し、情報処理装置ＣＰＵ＿ＣＨＩＰはレスポンスのレイテンシを一定範囲に抑え、且つデータ転送レートが最大になるようにリクエストを発行するレイテンシ制御モードとなる。
【０１３２】
レスポンス重複許容時間幅ＤＯＶＬＰは、すでにリクエスト信号ＲｑＭｕｘ０へ発行している例えばメモリ装置Ｍ０へのリクエストＡに対するレスポンスＡの先頭時間位置から、この場合メモリ装置Ｍ０以外への次に発行するメモリ装置へのリクエストＢに対するレスポンスＢの時間帯がレスポンスＡの時間帯に重なる時間帯があったとき、その重なる時間帯の許容できる時間幅を示している。
【０１３３】
即ち、レイテンシ制御フラグＬＣＦＬＧが１（レイテンシ制御モード）で、レスポンス重複許容時間幅ＤＯＶＬＰが０の場合は、情報処理装置ＣＰＵ＿ＣＨＩＰは、すでにリクエスト信号ＲｑＭｕｘ０へ発行している、いずれかのメモリ装置（メモリ装置Ｍ０、Ｍ１、Ｍ２のいずれか）へのリクエストＡに対するレスポンスＡの先頭時間位置から、次に発行するメモリ装置（ただし、リクエストＡとは異なるメモリ装置）へのリクエストＢに対するレスポンスＢの時間帯が０クロックサイクル以内に重複する範囲で、つまり重複しないように、それぞれのレスポンスを最小レイテンシとし、且つ、高データ転送レートを実現するようにリクエスト信号ＲｑＭｕｘ０へリクエストを出力する。
【０１３４】
レイテンシ制御フラグＬＣＦＬＧが１（レイテンシ制御モード）、レスポンス重複許容時間幅ＤＯＶＬＰが４の場合は、情報処理装置ＣＰＵ＿ＣＨＩＰは、すでにリクエスト信号ＲｑＭｕｘ０へ発行している、いずれかのメモリ装置（メモリ装置Ｍ０、Ｍ１、Ｍ２のいずれか）へのリクエストＡに対するレスポンスＡの先頭時間位置から、次に発行するメモリ装置（ただし、リクエストＡとは異なるメモリ装置）へのリクエストＢに対するレスポンスＢの時間帯が、４クロックサイクル以内に重複する範囲で、それぞれのレスポンスのレイテンシをできるだけ小さく、且つ高データ転送レートを実現するようにリクエスト信号ＲｑＭｕｘ０へリクエストを出力する。
【０１３５】
即ち、レイテンシ制御フラグＬＣＦＬＧ及びレスポンス重複許容時間幅ＤＯＶＬＰを有することにより、（１）データ転送レートは多少低くなるが、期待されるレイテンシを必ず守るレイテンシ固定モードと、（２）レイテンシは多少ばらつくが、データ転送レートを向上させることができるレイテンシ可変モードを実現することが可能となる。なお、詳細なそれぞれの動作モードにおける詳細な説明は、後述する。
【０１３６】
なお、レイテンシ制御フラグＬＣＦＬＧが０の場合は、先に発行したリクエストに対するレスポンス時間帯を考慮せずに、次のリクエストを発行するレイテンシ非制御モードとなる。更には、本実施の形態では、レスポンス重複許容時間幅ＤＯＶＬＰを０とするか正の整数とするかによりレイテンシ固定モードとするかレイテンシ可変モードとするか決定しているが、異なるフラグ又はレジスタを設けてモード設定してもよい。
【０１３７】
また、本実施の形態では、メモリ装置０から２に共通のレスポンス重複許容時間幅ＤＯＶＬＰを示しているが、これは、各メモリ装置毎に設けられても良い。
【０１３８】
＜レジスタ設定：レイテンシドメインレジスタＬＴＤＲＥＧ＞
図１２は、電源投入時の初期シーケンスにて、設定されたレイテンシドメインレジスタＬＴＤＲＥＧへの設定値の一例を示す。特に限定しないが、レイテンシドメインレジスタＬＴＤＲＥＧには、有効信号ＶＡＬＩＤと、情報処理装置ＣＰＵ＿ＣＨＩＰや各メモリ装置の識別番号ＩＤに対応したマスターフラグＭＦＬＡＧと、レイテンシドメイン情報ＬＡＴ  ＤＭＮが設定される。有効信号ＶＡＬＩＤが１の時には識別番号ＩＤ値に対応するマスターフラグＭＦＬＡＧと、レイテンシドメイン情報ＬＡＴ  ＤＭＮが有効であり、０の場合は無効であることを示す。マスターフラグＭＦＬＡＧが１の場合は、対応する情報処理装置やメモリ装置などの装置がマスター装置であることを示し、マスターフラグＭＦＬＡＧが０の場合は、識別番号ＩＤに対応する装置はスレーブ装置であることを示す。レイテンシドメイン情報ＬＡＴ  ＤＭＮには、マスター装置の識別番号ＩＤ値が設定され、どのマスター装置がどのスレーブ装置を制御し、レイテンシを管理しているかを示す。本実施の形態では、レイテンシドメインレジスタＬＴＤＲＥＧには識別番号ＩＤ値が０から８まである。識別番号ＩＤ値０は、情報処理装置ＣＰＵ＿ＣＨＩＰの識別番号であり、マスターフラグＭＦＬＡＧ値が１、レイテンシドメイン情報ＬＡＴ  ＤＭＮ値が０へ設定されている。識別番号ＩＤ値１は、メモリ装置Ｍ０の識別番号であり、マスターフラグＭＦＬＡＧ値０、レイテンシドメイン情報ＬＡＴ  ＤＭＮ値が０へ設定されている。識別番号ＩＤ値２は、メモリ装置Ｍ１の識別番号であり、マスターフラグＭＦＬＡＧ値０、レイテンシドメイン情報ＬＡＴ  ＤＭＮ値が０へ設定されている。識別番号ＩＤ値３は、メモリ装置Ｍ２の識別番号であり、マスターフラグＭＦＬＡＧ値０、レイテンシドメイン情報ＬＡＴ  ＤＭＮ値が０へ設定されている。
【０１３９】
レイテンシドメインレジスタＬＴＤＲＥＧによって、情報処理装置ＣＰＵ＿ＣＨＩＰは、マスター装置となり、スレーブ装置であるメモリ装置Ｍ０、Ｍ１およびＭ２を制御し、レイテンシを管理することがわかる。このように、レイテンシドメインレジスタＬＴＤＲＥＧは、マスター装置の指定と、そのマスター装置が制御するスレーブ装置を指定することができるため、情報処理装置ＣＰＵ＿ＣＨＩＰのような複数のマスター装置がメモリ装置Ｍ０、Ｍ１およびＭ２のようなスレーブ装置と直列に接続されている場合であっても、適切にスレーブデバイスを制御し、レイテンシを管理することができる。また、電源投入時の初期シーケンスのみならず、新たなメモリ装置や、メモリカード、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）およびＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などのストレージデバイスなどが接続された際にも、情報処理装置ＣＰＵ＿ＣＨＩＰは、新たなＩＤを設定し、レイテンシドメインレジスタＬＴＤＲＥＧを更新することができる。
【０１４０】
＜レジスタ設定：レイテンシレジスタＬＴＲＥＧ＞
図１３には、電源投入時の初期シーケンスにて、設定されたレイテンシレジスタＬＴＲＥＧへの設定値の一例を示す。レイテンシレジスタＬＴＲＥＧには情報処理装置ＣＰＵ＿ＣＨＩＰや各メモリ装置の識別番号ＩＤに対応した、有効信号Ｖａｌｉｄ、レイテンシＬａｔＱｕｅ、レイテンシＬａｔＢａｎｋ、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔが設定される。
【０１４１】
有効信号Ｖａｌｉｄが１の場合は、識別番号ＩＤに対応したレイテンシＬａｔＱｕｅ、レイテンシＬａｔＢａｎｋおよびタイムアウトレイテンシＬａｔＴｉｍｅＯｕｔが有効であり、０の場合は無効であることを示す。レイテンシＬａｔＱｕｅは、情報処理装置ＣＰＵ＿ＣＨＩＰからのリードリクエストがメモリ装置内のレスポンスキューＲｓＱｏから直接データを読み出し、読み出したデータが情報処理装置ＣＰＵ＿ＣＨＩＰへ到達するまでの読み出しレイテンシ（時間）を示す。また、レイテンシＬａｔＢａｎｋは、情報処理装置ＣＰＵ＿ＣＨＩＰからのリードリクエストがメモリ装置内のメモリバンクからデータを読み出し、読み出したデータが情報処理装置ＣＰＵ＿ＣＨＩＰへ到達するまでの読み出しレイテンシを示す。なお、本発明では、後から発行されるリクエストによりレイテンシが変更される場合があるので、このレジスタに登録されるのは、最小レイテンシ（もしくは、期待レイテンシ）となる。
【０１４２】
情報処理装置ＣＰＵ＿ＣＨＩＰからのリードリクエストに対する読み出しデータが情報処理装置ＣＰＵ＿ＣＨＩＰへ入力されずにタイムアウトレイテンシＬａｔＴｉｍｅＯｕｔを越えた際、レイテンシ調整回路ＬＣＨＣＫはタイムアウトとして判断する。
【０１４３】
識別番号ＩＤ値０は、情報処理装置ＣＰＵ＿ＣＨＩＰの識別番号である。情報処理装置ＣＰＵ＿ＣＨＩＰはマスター装置として、各メモリ装置を制御するので、レイテンシＬａｔＱｕｅ値は０、レイテンシＬａｔＢａｎｋ値は０、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は０へ設定される。識別番号ＩＤ値１は、メモリ装置Ｍ０の識別番号であり、本実施の形態では、レイテンシＬａｔＱｕｅ値は８、レイテンシＬａｔＢａｎｋ値は１２、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は６０へ設定されている。
【０１４４】
識別番号ＩＤ値２は、メモリ装置Ｍ１の識別番号であり、本実施の形態では、レイテンシＬａｔＱｕｅ値は２０、レイテンシＬａｔＢａｎｋ値は２４、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は１００へ設定されている。
【０１４５】
識別番号ＩＤ値３は、メモリ装置Ｍ２の識別番号であり、本実施の形態では、レイテンシＬａｔＱｕｅ値は３２、レイテンシＬａｔＢａｎｋ値は３６、タイムアウトレイテンシＬａｔＴｉｍｅＯｕｔ値は１４０へ設定されている。
【０１４６】
また、電源投入時の初期シーケンスのみならず、新たなメモリデバイス、メモリカードやストレージデバイスなどが接続された際にも、情報処理装置ＣＰＵ＿ＣＨＩＰは、新たなＩＤに対する上記のレイテンシＬａｔＱｕｅ、レイテンシＬａｔＢａｎｋおよびタイムアウトレイテンシＬａｔＴｉｍｅＯｕｔを設定し、レイテンシレジスタＬＴＲＥＧを更新することができる。
【０１４７】
また、新たなメモリ装置や、メモリカード、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）およびＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などのストレージデバイスなどが接続された際は、情報処理装置ＣＰＵ＿ＣＨＩＰは、新たなＩＤを設定し、さらに新たにレイテンシを測定し、その測定値をレイテンシレジスタＬＴＲＥＧへ設定し、更新することができる。
【０１４８】
＜レジスタ設定：タイミングレジスタＭ０ＴＲＥＧ＞
図１４には、電源投入時の初期シーケンスにて、設定されたメモリ装置Ｍ０に関するタイミングレジスタＭ０ＴＲＥＧへの設定値の一例を示す。タイミングレジスタＭ０ＴＲＥＧには情報処理装置ＣＰＵ＿ＣＨＩＰがメモリ装置Ｍ０を制御するためのタイミング情報と有効信号Ｖａｌｉｄが設定される。有効信号Ｖａｌｉｄが１の場合は、メモリ装置Ｍ０を制御するためのタイミング情報が有効であり、０の場合は無効であることを示す。タイミングレジスタＭ０ＴＲＥＧには、特に限定しないがｔｍ０ＲＣＤ（同一バンクでのバンクアクティブ命令とリードおよびライト命令の最小時間間隔）、ｔｍ０ＲＣ（同一バンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔）、ｔｍ０ＲＲＤ（異なるバンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔、ｔｍ０ＲＡＳ（同一バンクでのバンクアクティブ命令とプリチャージ命令の最小時間間隔）、ｔｍ０ＲＰ（同一バンクでのプリチャージ命令とバンクアクティブ命令の最小時間間隔）、ｔｍ０ＲＦＣ（リフレッシュサイクル最小時間）などが設定される。最小時間間隔は、情報処理装置ＣＰＵ＿ＣＨＩＰの動作クロックのクロックサイクル数で示される。本実施の形態では、ｔｍ０ＲＣＤには８クロックサイクル、ｔｍ０ＲＣには３０クロックサイクル、ｔｍ０ＲＲＤには４クロックサイクル、ｔｍ０ＲＡＳには２２クロックサイクル、ｔｍ０ＲＰには８クロックサイクル、ｔｍ０ＲＦＣには６０クロックサイクルが設定されている。また、これらの値はメモリ装置Ｍ０の性能に合わせて変更することができる。
【０１４９】
＜レジスタ設定：タイミングレジスタＭ１ＴＲＥＧ＞
図１５には、電源投入時の初期シーケンスにて、設定されたメモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧへの設定値の一例を示す。タイミングレジスタＭ１ＴＲＥＧには情報処理装置ＣＰＵ＿ＣＨＩＰがメモリ装置Ｍ１を制御するためのタイミング情報と有効信号Ｖａｌｉｄが設定される。有効信号Ｖａｌｉｄが１の場合は、メモリ装置Ｍ１を制御するためのタイミング情報が有効であり、０の場合は無効であることを示す。タイミングレジスタＭ１ＴＲＥＧには、ｔｍ１ＲＣＤ（同一バンクでのバンクアクティブ命令とリードおよびライト命令の最小時間間隔）、ｔｍ１ＲＣ（同一バンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔）、ｔｍ１ＲＤ（異なるバンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔、ｔｍ１ＲＡＳ（同一バンクでのバンクアクティブ命令とプリチャージ命令の最小時間間隔）、ｔｍ１ＲＰ（同一バンクでのプリチャージ命令とバンクアクティブ命令の最小時間間隔）などが設定される。最小時間間隔は、情報処理装置ＣＰＵ＿ＣＨＩＰの動作クロックのクロックサイクル数で示される。本実施の形態では、ｔｍ１ＲＣＤには８クロックサイクル、ｔｍ１ＲＣには６０クロックサイクル、ｔｍ１ＲＲＤには８クロックサイクル、ｔｍ１ＲＡＳには４４クロックサイクル、ｔｍ１ＲＰには１６クロックサイクルが設定されている。また、これらの値はメモリ装置Ｍ１の性能に合わせて変更することができる。
【０１５０】
＜レジスタ設定：タイミングレジスタＭ２ＴＲＥＧ＞
図１６には、電源投入時の初期シーケンスにて、設定されたメモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧへの設定値の一例を示す。タイミングレジスタＭ２ＴＲＥＧには情報処理装置ＣＰＵ＿ＣＨＩＰがメモリ装置Ｍ２を制御するためのタイミング情報有効信号Ｖａｌｉｄが設定される。有効信号Ｖａｌｉｄが１の場合は、メモリ装置Ｍ２を制御するためのタイミング情報が有効であり、０の場合は無効であることを示す。タイミングレジスタＭ２ＴＲＥＧには、ｔｍ２ＲＣＤ（同一バンクでのバンクアクティブ命令とリードおよびライト命令の最小時間間隔）、ｔｍ２ＲＣ（同一バンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔）、ｔｍ２ＲＤ（異なるバンクでのバンクアクティブ命令とバンクアクティブ命令の最小時間間隔、ｔｍ２ＲＡＳ（同一バンクでのバンクアクティブ命令とプリチャージ命令の最小時間間隔）、ｔｍ２ＲＰ（同一バンクでのプリチャージ命令とバンクアクティブ命令の最小時間間隔）などが設定される。本実施の形態では、最小時間間隔は、情報処理装置ＣＰＵ＿ＣＨＩＰの動作クロックのクロックサイクル数で示される。ｔ２ＲＣＤには１００００クロックサイクル、ｔｍ２ＲＣには１００６２クロックサイクル、ｔｍ２ＲＲＤには１６クロックサイクル、ｔｍ２ＲＡＳには１００４６クロックサイクル、ｔｍ２ＲＰには３２クロックサイクルが設定されている。また、これらの値はメモリ装置Ｍ２の性能に合わせて変更することができる。
【０１５１】
また、タイミング情報ｔｍ２ＲＣＤの有効信号Ｖａｌｉｄが０となった場合は、バンクアクティブ命令を含むリクエストが完了し、次のリードおよびライト命令を含むリクエストを入力しても良いというコマンド許可情報を含むレスポンスが、メモリ装置Ｍ２から発行され、メモリ装置Ｍ１およびメモリ装置Ｍ０を通じて、情報処理装置ＣＰＵ＿ＣＨＩＰへ入力される。情報処理装置ＣＰＵ＿ＣＨＩＰは、そのコマンド許可情報を含むレスポンスを受け取り、次のリクエストをメモリ装置Ｍ２へ発行する。
【０１５２】
＜レジスタ設定：動作モードレジスタＯＭＤＲＥＧ＞
図１７には、電源投入時の初期シーケンスにて設定されたメモリ制御モードレジスタＯＭＤＲＥＧへの設定値の一例を示す。メモリ制御モードレジスタＯＭＤＲＥＧには情報処理装置ＣＰＵ＿ＣＨＩＰや各メモリ装置の識別番号ＩＤに対応した、有効信号Ｖａｌｉｄおよび制御モード情報ＯＰＭＯＤＥが設定される。有効信号Ｖａｌｉｄが１の場合は、識別番号ＩＤに対応したメモリ制御モード情報ＯＰＭＯＤＥが有効であり、０の場合は無効であることを示す。情報処理装置ＣＰＵ＿ＣＨＩＰが各メモリを制御する制御方法は、チャネル制御モードと、バンクオープンモードと、バンククローズモードの３種類の制御モードを設定できる。
【０１５３】
制御モード情報ＯＰＭＯＤが１の場合はバンククローズモードへ、２の場合はバンクオープンモードへ、３の場合はチャネル制御モードへ設定されていることを示す。バンククローズモードとは各メモリ装置のレスポンスキューＲｓＱｏと、メモリ装置内のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔをキャッシュメモリとして利用しない制御方法である。制御モード情報ＯＰＭＯＤがバンククローズモードに設定されている場合は、メモリ制御回路ＤＣＭＣは、データの読み出しや書き込み後に、メモリ装置のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔを常に非活性化する（ページクローズ）。バンクオープンモードとは、各メモリ装置内のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔをキャッシュメモリとして利用する制御方法である。制御モード情報ＯＰＭＯＤがバンクオープンモードに設定されている場合は、メモリ制御回路ＤＣＭＣはデータの読み出しや書き込み後に、メモリ装置のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔを常に活性化させ、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔ内のデータを保持し続ける（ページオープン）。
【０１５４】
ヒット判定回路ＩＤＨＴは、情報処理回路ＣＰＵ０からＣＰＵ３からのリードおよびライトリクエストに対するデータがメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔに存在しているかを判定する（ページヒット判定）。ページヒットの場合、メモリアレイ回路へアクセスすることなくセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すことができるので、低電力且つ低レイテンシで高速にデータを読み出すことができる。
【０１５５】
チャネル制御モードとは、各メモリ装置のレスポンスキューＲｓＱｏと、メモリ装置内のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔをキャッシュメモリとして利用する制御方法である。制御モード情報ＯＰＭＯＤがチャネル制御モードに設定されている場合は、メモリ制御回路ＤＣＭＣはデータの読み出しや書き込み後に、メモリ装置のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔを常に活性化する（ページオープン）。メモリ制御回路ＤＣＭＣのヒット判定回路ＩＤＨＴは、情報処理回路ＣＰＵ０からＣＰＵ３からのリードおよびライトリクエストに対するデータが、各メモリのレスポンスキューＲｓＱｏに存在しているかを判定し（チャネルヒット判定）、さらにメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔに存在しているかを判定する（ページヒット判定）。チャネルヒットの場合、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔへアクセスすることなくレスポンスキューＲｓＱｏから直接データを読み出すことができるので、さらに、低電力かつ低レイテンシで高速にデータを読み出すことができる。これらの制御モードは、情報処理装置ＣＰＵ＿ＣＨＩＰで動作するアプリケーションに対応し、いずれかの制御モードに設定すると良い。
【０１５６】
本実施の形態では、識別番号ＩＤ値１は、メモリ装置Ｍ０の識別番号であり、制御モード情報ＯＰＭＯＤＥはチャネル制御モードへ設定されている。つまり、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ０をチャネル制御モードにて制御することを示す。識別番号ＩＤ値２は、メモリ装置Ｍ１の識別番号であり、制御モード情報ＯＰＭＯＤＥはチャネル制御モードとへ設定されている。つまり、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ１をチャネル制御モードにて制御することを示す。識別番号ＩＤ値３は、メモリ装置Ｍ２の識別番号であり、制御モード情報ＯＰＭＯＤＥはチャネル制御モードへ設定されている。つまり、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ２をチャネル制御モードにて制御することを示す。また、電源投入時の初期シーケンスのみならず、新たに、メモリ装置や、着脱可能なメモリカードやストレージデバイスなどが接続された際にも、情報処理装置ＣＰＵ＿ＣＨＩＰは、新たなＩＤに対する上記の制御モード情報ＯＰＭＯＤＥ設定し、動作モードレジスタＯＭＤＲＥを更新することができる。
【０１５７】
＜ヒット判定動作＞
図１８には情報処理装置ＣＰＵ＿ＣＨＩＰがメモリ装置Ｍ０、Ｍ１、Ｍ２をチャネル制御モードにて制御する場合に、ヒット判定回路ＩＤＨＴが行うヒット判定結果に基づいて、メモリ制御回路ＤＣＭＣが各メモリ装置へ出力するリードリクエストの一例である。ヒット判定回路ＩＤＨＴでの判定結果がチャネルヒット（ＣＨＡＮＮＥＬ  ＨＩＴ）の場合、ページヒット判定の結果によらず、メモリ制御回路ＤＣＭＣは、レスポンスキューＲｓＱｏからデータを読み出すためリード命令ＲＤを含むリクエストを出力する。ヒット判定回路ＩＤＨＴでの判定結果がチャネルミス（ＣＨＡＮＮＥＬ  ＭＩＳＳ）であり、メモリバンクのページがオープン状態（ＯＰＥＮ）にてページヒット（ＰＡＧＥ  ＨＩＴ）した場合、メモリ制御回路ＤＣＭＣは、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すためリード命令ＲＤ２を含むリクエストを出力する。センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔから読み出されたデータはレスポンスキューＲｓＱｏへ転送され、最終的に情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０１５８】
ヒット判定回路ＩＤＨＴでの判定結果がチャネルミス（ＣＨＡＮＮＥＬ  ＭＩＳＳ）であり、メモリバンクのページがオープン状態（ＯＰＥＮ）にてページヒット（ＰＡＧＥ  ＨＩＴ）した場合、メモリ制御回路ＤＣＭＣは、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すためリード命令ＲＤ２を含むリクエストを出力する。センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔから読み出されたデータはレスポンスキューＲｓＱｏへ転送され、最終的に情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０１５９】
ヒット判定回路ＩＤＨＴでの判定結果がチャネルミス（ＣＨＡＮＮＥＬ  ＭＩＳＳ）であり、メモリバンクのページがクローズ状態（ＣＬＯＳＥ）にてページヒット（ＰＡＧＥ  ＨＩＴ）した場合、まずメモリ制御回路ＤＣＭＣは、メモリバンクを活性化させ、ページをオープンするために、バンクアクティブ命令を含むリクエストを出力する。次に、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すためリード命令ＲＤ２を含むリクエストを出力する。センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔから読み出されたデータはレスポンスキューＲｓＱｏへ転送され、最終的に情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０１６０】
ヒット判定回路ＩＤＨＴでの判定結果がチャネルミス（ＣＨＡＮＮＥＬ  ＭＩＳＳ）であり、メモリバンクのページがオープン状態（ＯＰＥＮ）にてページミス（ＰＡＧＥ  ＭＩＳＳ）した場合、まずメモリ制御回路ＤＣＭＣは、メモリバンクを非活性化させ、ページをクローズするためにプリチャージ命令を含むリクエストを出力する。次に、メモリバンクを活性化させ、ページをオープンするために、バンクアクティブ命令を含むリクエストを出力する。次に、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すためリード命令ＲＤ２を含むリクエストを出力する。センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔから読み出されたデータはレスポンスキューＲｓＱｏへ転送され、最終的に情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０１６１】
ヒット判定回路ＩＤＨＴでの判定結果がチャネルミス（ＣＨＡＮＮＥＬ  ＭＩＳＳ）であり、メモリバンクのページがクローズ状態（ＣＬＯＳＥ）にてページミス（ＰＡＧＥ  ＭＩＳＳ）した場合、まずメモリ制御回路ＤＣＭＣは、メモリバンクを活性化させ、ページをオープンするために、バンクアクティブ命令を含むリクエストを出力する。次に、センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔからデータを読み出すためリード命令ＲＤ２を含むリクエストを出力する。センスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔから読み出されたデータはレスポンスキューＲｓＱｏへ転送され、最終的に情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０１６２】
上記では、メモリ制御回路ＤＣＭＣが各メモリ装置へ出力するデータを読み出すためのリクエストの一例を示したが、データの書き込みに関しても同様の動作を行うことはいうまでもない。このように、チャネル制御モードにて制御する場合、各メモリ装置内のメモリバンク毎のセンスアンプＳｅｎｓｅＡｍｐやデータバッファＤａｔａＬａｔをキャッシュメモリとして利用するだけではなく、各メモリ装置のレスポンスキューＲｓＱｏまでもキャッシュメモリとして利用するので、キャッシュメモリサイズを増やし、キャッシュメモリのヒット率を上げることができ、低レイテンシ且つ高速かつ低電力で各メモリ装置を動作させることが出来る。
【０１６３】
＜メモリマップの説明＞
図１９は、情報処理装置ＣＰＵ＿ＣＨＩＰが管理するメモリモジュールＭＥＭに対するメモリマップの一例を示した図である。本実施の形態では、特に限定されないが、メモリ装置Ｍ０の記憶領域は１Ｇｂｉｔ、メモリ装置Ｍ１の記録領域は１Ｇｂｉｔ、メモリ装置Ｍ２の記憶領域は１６Ｇｂｉｔ＋５１２Ｍｂｉｔ（５１２Ｍｂｉｔは代替領域）であるメモリモジュールを例に代表的なメモリマップを説明する。
【０１６４】
本実施の形態では、メモリ装置Ｍ０は揮発性メモリでダイナミックランダムアクセスメモリセルを利用したダイナミックランダムアクセスメモリである。また、メモリ装置Ｍ１は不揮発性メモリでＮＯＲ型フラッシュメモリセルを利用したＮＯＲ型フラッシュメモリである。メモリ装置Ｍ２は、不揮発性メモリでＮＡＮＤ型フラッシュメモリセルを利用したＮＡＮＤ型フラッシュメモリである。
【０１６５】
メモリ制御回路ＤＣＭＣは、コンフィグレーション領域およびＩＯ領域に分かれている。コンフィグレーション領域は、特に限定しないがメモリ制御回路ＤＣＭＣのコンフィグレーション回路ＣＯＮＦＩＧ内のキューレジスタＱＲＥＧ、レイテンシレジスタＬＴＲＥＧ、レイテンシドメインレジスタＬＴＤＲＥＧ、メモリ装置Ｍ０に関するタイミングレジスタＭ０ＴＲＥＧ、メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧ、メモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧ、制御モードレジスタＯＭＤＲＥＧ、ＩＯレジスタなどのレジスタに対応するアドレスから構成される。
【０１６６】
ＩＯ領域は、複数のフラッシュメモリとコントローラから構成されるメモリカードやＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）やメモリカードなどの着脱可能なメモリモジュールへアクセスするための領域である。メモリ装置Ｍ１は、ブートデバイスＩＤ格納領域ＢｏｔＩＤ−ＡＲＥＡ、初期プログラム領域ＩｎｉｔＰＲ−ＡＲＥＡ、プログラム格納領域ＯＳＡＰ−ＡＲＥＡに分かれている。ブートデバイスＩＤ格納領域ＢｏｔＩＤ−ＡＲＥＡには、ブートデバイスのＩＤ情報が格納される。最終端デバイスＩＤ格納領域ＥｎｄＩＤ−ＡＲＥＡには、直列接続されているメモリモジュールＭＥＭに関する最終端メモリデバイスＩＤ情報が格納される。初期プログラム領域ＩｎｉｔＰＲ−ＡＲＥＡには、ブートプログラムが格納される。プログラム格納領域ＯＳＡＰ−ＡＲＥＡには、オペレーティングシステムやアプリケーションプログラムなどが格納される。メモリ装置Ｍ０は、コピー領域ＣＯＰＹ−ＡＲＥＡ、ワーク領域ＷＯＲＫ−ＡＲＥＡに分かれている。ワーク領域ＷＯＲＫ−ＡＲＥＡは、プログラム実行時のワークメモリとして、コピー領域ＣＯＰＹ−ＡＲＥＡはメモリ装置Ｍ１及びＭ２からのプログラムやデータをコピーするためのメモリとして利用される。メモリ装置Ｍ２は、データ領域ＤＡＴＡ−ＡＲＥＡ、代替領域ＲＥＰ−ＡＲＥＡに分かれている。データ領域ＤＡＴＡ−ＡＲＥＡには、音楽データ、音声データ、動画データ、静止画データなどのデータが格納される。
【０１６７】
また、フラッシュメモリは、書き換えを繰り返すことによって、信頼性が低下し、書き込み時に書いたデータが、読み出し時には異なるデータとなったり、書き換え時にデータが書き込まれなかったりすることが稀にある。代替領域ＲＥＰ−ＡＲＥＡは、このように不良となったデータを新たな領域へ置き換えるために設けられている。代替領域ＲＥＰ−ＡＲＥＡの大きさは、メモリ装置Ｍ２が保証する信頼性が確保できるように決めると良い。
【０１６８】
＜データコピー動作の説明＞
メモリ装置Ｍ０のデータ読み出し時間は、メモリ装置Ｍ２の読み出し時間と比較し、大幅に短い。そこで、前もって必要な画像データをメモリ装置Ｍ２からメモリ装置Ｍ０へ転送すれば、情報処理装置ＣＰＵ＿ＣＨＩＰにて高速に画像処理を行うことができる。特に限定しないが、メモリ装置Ｍ０、Ｍ１、Ｍ２のそれぞれのＩＤレジスタ値が１、２及び３に設定された場合の、メモリ装置Ｍ２からのメモリ装置Ｍ０のへのデータ転送の一例を説明する。
【０１６９】
情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ２のデータ領域ＤＡＴＡ−ＡＲＥＡからデータを読み出すため、メモリ装置Ｍ２の識別番号ＩＤ３と１ページ（５１２Ｂｙｔｅのデータ＋１６ＢｙｔｅのＥＣＣコード）分データ読み出し命令をメモリモジュールＭＥＭへ送信する。メモリモジュールＭＥＭは、ＩＤ番号３と１ページ分のデータ読み出し命令に従って、メモリ装置Ｍ２のデータ領域ＤＡＴＡ−ＡＲＥＡから１ページ分のデータを読み出し、認識番号ＩＤ３を付加し、情報処理装置ＣＰＵ＿ＣＨＩＰへ送信する。
【０１７０】
情報処理装置ＣＰＵ＿ＣＨＩＰでは、メモリ装置Ｍ２から送信された１ページ分のデータに対しエラー検出を行う。エラーがなければ、１ページ分のデータをメモリ装置Ｍ０のコピー領域ＣＯＰＹ−ＡＲＥＡへデータを転送するため、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ０のＩＤ番号１と１ページデータ書き込み命令とデータをメモリモジュールＭＥＭへ送信する。
【０１７１】
エラーがあれば修正を行った後、１ページ分のデータをメモリ装置Ｍ０のコピー領域ＣＯＰＹ−ＡＲＥＡへデータを転送するため、情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ０のＩＤ番号２と１ページデータ書き込み命令をメモリモジュールＭＥＭへ送信する。メモリモジュールＭＥＭは、ＩＤ番号２と１ページデータ読み出し命令に従って、メモリ装置Ｍ０のコピー領域ＣＯＰＹ−ＡＲＥＡデータ領域へ１ページ分のデータを書き込む。
【０１７２】
次に、情報処理装置ＣＰＵ＿ＣＨＩＰからメモリ装置Ｍ０へ高速に画像データが書き込まれ、必要に応じてメモリ装置Ｍ２へこの画像データを保存する際の、メモリ装置Ｍ０からのメモリ装置Ｍ２へのデータ転送について説明する。情報処理装置ＣＰＵ＿ＣＨＩＰはメモリ装置Ｍ０のコピー領域ＣＯＰＹ−ＡＲＥＡからデータを読み出すため、メモリ装置Ｍ０の識別番号ＩＤ値１と１ページ（５１２Ｂｙｔｅ）データ読み出し命令をメモリモジュールＭＥＭへ送信する。メモリモジュールＭＥＭは、識別番号ＩＤ値１と１ページデータ読み出し命令に従って、メモリ装置Ｍ０のコピー領域ＣＯＰＹ−ＡＲＥＡから１ページ分のデータを読み出し、識別番号ＩＤ値１を付加し、情報処理装置ＣＰＵ＿ＣＨＩＰへ送信する。情報処理装置ＣＰＵ＿ＣＨＩＰは、メモリ装置Ｍ０から送信された１ページ分のデータをメモリ装置Ｍ２のデータ領域ＤＡＴＡ−ＡＲＥＡへデータを転送するため、メモリ装置Ｍ２の識別番号ＩＤ値３と１ページ分のデータ書き込み命令とデータをメモリモジュールＭＥＭへ送信する。
【０１７３】
メモリモジュールＭＥＭが、メモリ装置Ｍ０及びＭ１を通じてメモリ装置Ｍ２へ識別番号ＩＤ値３と１ページデータ書込み命令を送信すると、メモリ装置Ｍ２は自身のデータ領域ＤＡＴＡ−ＡＲＥＡへ１ページ分のデータを書き込む。メモリ装置Ｍ２はデータの書き込みが成功したかどうかをチェックし、成功すれば書き込み処理を終了する。書き込みが失敗した時には、メモリ装置Ｍ２は、識別番号ＩＤ値３と書込エラー情報を送信し、メモリ装置Ｍ１及びメモリ装置Ｍ０を介して、情報処理装置ＣＰＵ＿ＣＨＩＰへ書込みエラーを通達する。情報処理装置ＣＰＵ＿ＣＨＩＰは、識別番号ＩＤ値３と書込エラー情報を受け取ると、メモリ装置Ｍ２にあらかじめ用意されている代替領域ＲＥＰ−ＡＲＥＡの新たなアドレスに対して書き込みを行うために、メモリ装置Ｍ２の識別番号ＩＤ値３と１ページデータ書き込み命令をメモリモジュールＭＥＭへ送信する。メモリモジュールＭＥＭがメモリ装置Ｍ０及びＭ１を通じて識別番号ＩＤ値３と１ページデータ書込み命令をメモリ装置Ｍ２へ送信すると、メモリ装置Ｍ２は自身の代替領域ＲＥＰ−ＡＲＥＡへ１ページ分のデータを書き込む。また、情報処理装置ＣＰＵ＿ＣＨＩＰは、代替え処理を行った際は、不良アドレスと、不良アドレスに対して、どのアドレスに代替え処理を行ったかというアドレス情報を保持し管理する。
【０１７４】
以上説明したように、メモリ装置Ｍ２の一部のデータをコピーできる領域をメモリ装置内に確保し、あらかじめメモリ装置Ｍ２からメモリ装置Ｍ０へデータを転送しておくことで、メモリ装置Ｍ０と同等の速度でメモリ装置Ｍ２のデータを読み出すことができ、情報処理装置ＣＰＵ＿ＣＨＩＰでの高速処理が可能となる。また、メモリ装置Ｍ２へデータを書く際は、いったんデータをメモリ装置Ｍ０へ書き込み、必要に応じてメモリ装置Ｍ２へ書き戻すことができるため、データの書き込みも高速化することができる。さらに、メモリ装置Ｍ２からの読み出し時は、エラー検出と訂正を行い、書きこみ時は、書きこみが正しく行われなかった不良アドレスに対して代替処理を行うため、高信頼性を保つことができる。
【０１７５】
＜メモリ制御回路ＤＣＭＣのリクエスト発行動作の説明＞
図２０は、メモリ制御回路ＤＣＭＣがリクエストをメモリモジュールＭＥＭに対して発行するまでの動作の一例を示すフローチャートである。図２０（Ａ）は、リクエストキューＲＥＱＱ２へリクエストがエントリされるまでの動作の一例を示すフローチャートであり、図２０（Ｂ）は、リクエストキューＲＥＱＱ２へエントリされたリクエストをメモリモジュールＭＥＭに対して発行するまでの動作の一例を示すフローチャートである。また、図２０（Ａ）と、図２０（Ｂ）は、並列に動作することが可能である。情報処理回路ＣＰＵ０、ＣＰＵ１、ＣＰＵ２およびＣＰＵ３は、アプリケーションを実行するためにメモリコントローラＤＣＭＣを介してメモリモジュールＭＥＭへリードリクエストやライトリクエストを発行する。ここでは、情報処理回路ＣＰＵ２がメモリモジュールＭＥＭのメモリ装置Ｍ１から３２Ｂｙｔｅのデータを読み出すためのリードリクエストをメモリコントローラＤＣＭＣへ発行した際のメモリコントローラＤＣＭＣの動作の一例を説明する。
【０１７６】
調停回路ＣＡＲＭを通じてコマンド信号ＣＭＤから３２Ｂｙｔｅのデータを読み出すリードリクエストＲｅａｄＲｅｑ３２Ｍ１およびアドレス信号ＡＤＤからアドレスＲＡｄｄＭ１をリクエストキューＲＥＱＱ１へ送信する（図２０：Ｓｔｅｐ１）。リクエストキューＲＥＱＱ１は、複数のリクエストキューから構成され、リクエストを受け取るための空き状態のリクエストキューがあればリクエストイネーブル信号ＲＱＥＮはＨｉｇｈとなり、空き状態のリクエストキューがなければリクエストイネーブル信号ＲＱＥＮはＬｏｗとなる。
【０１７７】
リクエストイネーブル信号ＲＥＱＥＮがＬｏｗであれば（図２０：Ｓｔｅｐ２）、情報処理回路ＣＰＵ２からのリードリクエストＲｅａｄＲｅｑ３２Ｍ１およびアドレスＲＡｄｄＭ１はリクエストキューＲＥＱＱ１へ格納されない。リクエストイネーブル信号ＲＥＱＥＮがＨｉｇｈであれば（図２０：Ｓｔｅｐ２）、リードリクエストＲｅａｄＲｅｑ３２Ｍ１およびアドレスＲＡｄｄＭ１はリクエストキューＲＥＱＱ１へ格納される（図２０：Ｓｔｅｐ３）。
【０１７８】
次に、ヒット判定回路ＩＤＨＴはリフレッシュ要求回路ＲＥＦからリフレッシュリクエストＲｅｆＭ０があるかどうかチェックする（図２０：Ｓｔｅｐ４）。リフレッシュリクエストがあれば、このリフレッシュリクエストＲｅｆＭ０を優先させ、識別番号ＩＤを判定する（図２０：Ｓｔｅｐ１１）。コンフィグレーション回路ＣＯＮＦＩＧの設定値により、このリフレッシュリクエストＲｅｆＭ０はメモリ装置Ｍ０へのリフレッシュリクエストであるため識別番号ＩＤは１と判定される。リフレッシュリクエストＲｅｆＭ０が無ければ、リクエストキューＲＥＱＱ１へ格納されているリードリクエストＲｅａｄＲｅｑ３２Ｍ１およびアドレスＲＡｄｄＭ１に対する識別番号ＩＤを判定する（図２０：Ｓｔｅｐ５）。特に限定しないが、ヒット判定回路ＩＤＨＴは、アドレスＲＡｄｄＭ１と、図２０で示したメモリモジュールＭＥＭに対するメモリマップのアドレス値を比較し、識別番号ＩＤを判定する。アドレスＲＡｄｄＭ１はプログラム格納領域ＯＳＡＰ−ＡＲＥＡのアドレスであるため識別番号ＩＤは２と判定され、リードリクエストＲｅａｄＲｅｑ３２Ｍ１はメモリ装置Ｍ１へのリクエストであることが判定される。
【０１７９】
次に、ヒット判定回路ＩＤＨＴはメモリ装置Ｍ１へのリードリクエストＲｅａｄＲｅｑ３２Ｍ１に関するアドレスＲＡｄｄＭ１に対してページアドレスヒット判定を行う（図２０：Ｓｔｅｐ６）。ページヒット判定の方法を以下に示す。ヒット判定回路ＩＤＨＴはチャネルヒット判定とページヒット判定を行うために、以下の３つの機能を装備している。
（１）ヒット判定回路ＩＤＨＴは情報処理回路ＣＰＵ０からＣＰＵ３から各メモリ装置へのリクエストに関するアドレスに対して、各メモリ装置のバンクアドレスＥＢＡｄｄとページアドレスＥＰＡｄｄとカラムアドレスＥＣＡｄｄの対応付けを行っている。
（２）ヒット判定回路ＩＤＨＴは各メモリ装置が装備するレスポンスキューＲｓＱｏ内のデータに対するバンクアドレスＥＢＡｄｄとページアドレスＥＰＡｄｄとカラムアドレスＥＣＡｄｄを保持している。
（３）ヒット判定回路ＩＤＨＴは各メモリ装置のメモリバンク毎に、メモリバンクが活性化していることを示す有効信号Ｖａｌｉｄと、活性化された最新のページアドレスＰＡｄｄを保持し、コマンド生成回路ＣＯＭＧＥＮへ送信する。バンク活性化信号ＡＶａｌｉｄがＨｉｇｈの際は、メモリバンクが活性化していることを示し、Ｌｏｗの場合は非活性であることを示す。
【０１８０】
ヒット判定回路ＩＤＨＴはメモリ装置Ｍ１へのリードリクエストＲｅａｄＲｅｑ３２Ｍ１に関するアドレスＲＡｄｄＭ１の中のバンクアドレスＥＢＡｄｄＭ１と、ページアドレスＥＰＡｄｄＭ１およびカラムアドレスＥＣＡｄｄＭ１を抽出する。
【０１８１】
次に、ヒット判定回路ＩＤＨＴはチャネルヒット判定とページヒット判定を行う。チャネルヒット判定では、メモリ装置Ｍ１が装備するレスポンスキューＲｓＱｏ内のデータに対するバンクアドレスＥＢＡｄｄ、ページアドレスＥＰＡｄｄおよびカラムアドレスＥＣＡｄｄと、ヒット判定回路ＩＤＨＴによって抽出されたバンクアドレスＥＢＡｄｄＭ１、ページアドレスＥＰＡｄｄＭ１およびカラムアドレスＥＣＡｄｄＭ１とを比較する（図２０：Ｓｔｅｐ６）。すべてのアドレスが一致した場合チャネルヒットとなり、一致しなかった場合はチャネルミスとなる（図２０：Ｓｔｅｐ６）。次に、バンクアドレスＥＢＡｄｄＭ１で指定されたメモリ装置Ｍ１のメモリバンクに対応するページアドレス値ＰＡｄｄＭ１と、ページアドレスＥＰＡｄｄＭ１を比較する（図２０：Ｓｔｅｐ６）。ページアドレス値ＰＡｄｄＭ１とページアドレスＥＰＡｄｄＭ１が一致した場合はページヒットとなり、ページアドレス値ＰＡｄｄＭ１とページアドレスＥＰＡｄｄＭ１が一致しなかった場合は、ページアドレスミスとなる（図２０：Ｓｔｅｐ６）。
【０１８２】
次に、コマンド生成回路ＣＯＭＧＥＮは、ヒット判定回路ＩＤＨＴからメモリ装置Ｍ１へのリードリクエストＲｅａｄＲｅｑ３２Ｍ１とアドレスＲＡｄｄＭ１、ヒット判定結果とバンク活性化信号ＡＶａｌｉｄの値および判定された識別番号ＩＤ値２を受け取り、メモリ装置Ｍ１への命令とアドレスを生成する（図２０：Ｓｔｅｐ７）。
【０１８３】
判定結果がチャネルヒットの場合、情報処理回路ＣＰＵ２が必要とするデータはメモリ装置Ｍ１のチャネルヒットとなったレスポンスキューＲｓＱｏへ存在し、このレスポンスキューＲｓＱｏから直接データを読み出すことができるため、リード命令ＲＤ３２ｍ１と、これに対応したレスポンスキュー番号ＲｓＱＮｏとカラムアドレスＥＣＡｄｄＭ１を生成する（図２０：Ｓｔｅｐ７）。レスポンスキューＲｓＱｏは複数のレスポンスから構成され、それぞれのレスポンスキューを識別するためのレスポンスキュー番号を利用して、メモリ制御回路ＤＣＭＣのヒット判定回路ＩＤＨＴによって管理されている。
【０１８４】
判定結果がチャネルミスかつページヒットでバンク活性化信号ＡＶａｌｉｄがＨｉｇｈの場合、情報処理回路ＣＰＵ２が必要とするデータはメモリ装置Ｍ１のページアドレスヒットとなったメモリバンクのデータバッファＤａｔａＬａｔへ存在し、このデータバッファＤａｔａＬａｔから直接データを読み出すことができるため、リード命令ＲＤ３２と、これに対応したバンクアドレスＥＢＡｄｄＭ１とカラムアドレスＥＣＡｄｄＭ１を生成する（図２０：Ｓｔｅｐ７）。判定結果がチャネルミスかつページミスでバンク活性化信号ＡＶａｌｉｄがＨｉｇｈの場合、情報処理回路ＣＰＵ２が必要とするデータはメモリ装置Ｍ１のページアドレスミスとなったメモリバンクのデータバッファＤａｔａＬａｔには存在しないため、このデータバッファＤａｔａＬａｔを無効化し、新たなデータをデータバッファＤａｔａＬａｔへ転送し、データバッファＤａｔａＬａｔから読み出す動作が必要となる。そこで、まずバンクアドレスＥＢＡｄｄＭ１で指定されたメモリ装置Ｍ１のメモリバンクのデータバッファＤａｔａＬａｔ内のデータを無効化するため、プリチャージ命令Ｐｒｅと、バンクアドレスＥＢＡｄｄＭ１を生成する（図２０：Ｓｔｅｐ７）。
【０１８５】
次に、新たなデータをデータバッファＤａｔａＬａｔへ転送するためにバンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を生成する。最後に、データバッファＤａｔａＬａｔから３２バイト分のデータを読み出すためにリード命令ＲＤ３２とカラムアドレスＥＣＡｄｄＭ１を生成する（図２０：Ｓｔｅｐ７）。また、プリチャージ命令Ｐｒｅと、バンクアドレスＥＢＡｄｄＭ１を含むリクエストがメモリ制御回路ＤＣＭＣからメモリモジュールＭＥＭへ出力された際には、メモリ装置Ｍ１のバンクアドレスＥＢＡｄｄＭ１で指定されたメモリバンクに対応するバンク活性化信号ＡＶａｌｉｄはＬｏｗへ更新され保持される。また、バンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を含むリクエストがメモリ制御回路ＤＣＭＣからメモリモジュールＭＥＭへ出力された際には、メモリ装置Ｍ１のバンクアドレスＥＢＡｄｄＭ１で指定されたメモリバンクに対応するバンク活性化信号ＡＶａｌｉｄはＨｉｇｈへ更新され保持され、さらにページアドレス値ＰＡｄｄＭ１は新たなページアドレスＥＰＡｄｄＭ１へ更新され、保持される。
【０１８６】
判定結果がチャネルミスかつページミスでバンク活性化信号ＡＶａｌｉｄがＬｏｗの場合、メモリ装置Ｍ１のページアドレスミスとなったメモリバンクのデータバッファＤａｔａＬａはすでに無効化状態となっている。そこで、新たなデータをデータバッファＤａｔａＬａｔへ転送するためにバンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を生成する。最後に、データバッファＤａｔａＬａｔから３２バイト分のデータを読み出すためにリード命令ＲＤ３２とカラムアドレスＥＣＡｄｄＭ１を生成する（図２０：Ｓｔｅｐ７）。また、バンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を含むリクエストがメモリ制御回路ＤＣＭＣからメモリモジュールＭＥＭへ出力された際には、メモリ装置Ｍ１のバンクアドレスＥＢＡｄｄＭ１で指定されたメモリバンクに対応するバンク活性化信号ＡＶａｌｉｄはＨｉｇｈへ更新され保持され、さらにページアドレス値ＰＡｄｄＭ１は新たなページアドレスＥＰＡｄｄＭ１へ更新され、保持される。
【０１８７】
判定結果がチャネルミスかつページアドレスヒットで、バンク活性化信号ＡＶａｌｉｄがＬｏｗの場合、メモリ装置Ｍ１のページアドレスヒットとなったメモリバンクのデータバッファＤａｔａＬａはすでに無効化状態となっている。そこで、新たなデータをデータバッファＤａｔａＬａｔへ転送するためにバンクアクティブ命令ＡＣｍ１とバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を生成する。最後に、データバッファＤａｔａＬａｔから３２バイト分のデータを読み出すためにリード命令ＲＤ３２とカラムアドレスＥＣＡｄｄＭ１を生成する（図２０：Ｓｔｅｐ７）。また、バンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を含むリクエストがメモリ制御回路ＤＣＭＣからメモリモジュールＭＥＭへ出力された際には、メモリ装置Ｍ１のバンクアドレスＥＢＡｄｄＭ１で指定されたメモリバンクに対応するバンク活性化信号ＡＶａｌｉｄはＨｉｇｈへ更新され保持される。
【０１８８】
さらに、コマンド生成回路ＣＯＭＧＥＮは自らが生成した命令や、レスポンスキュー番号ＲｓＱＮｏおよびアドレス（バンクアドレス、ページアドレスおよびカラムアドレス）や、ライトデータを含むリクエストに対し、特に限定しないがリクエスト開始フラグＲｅｑＳｔＦｌａｇ、識別番号ＩＤ、リクエスト番号ＲｅｑＮ、マスター番号ＭＩＤ、可変部リクエスト長ＶＲＥＱＬなどを付加し、特に限定しないがリクエスト開始フラグＲｅｑＳｔＦｌｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、可変部リクエスト長、リクエスト番号ＲｅｑＮ、レスポンスキュー番号ＱＵＮ、データ長ＲＤＬ、アドレス（バンクアドレス、ページアドレスおよびカラムアドレス）、ライトデータの順でリクエストを再構成する。
【０１８９】
リクエスト開始フラグＲｅｑＳｔＦｌｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、可変部リクエスト長ＶＲＥＱＬ、リクエスト番号ＲｅｑＮは、どのリクエストに対しても共通の構成となっている共通リクエスト部分ＣＭＮＲＥＱＦであり、特に限定しないが、４バイト分の固定したリクエスト長となっている。また、レスポンスキュー番号ＱＵＮ、リードデータ長ＲＤＬ、アドレス（バンクアドレス、ページアドレスおよびカラムアドレス）およびライトデータは命令によって、そのリクエスト長が異なる可変リクエスト部分ＶＢＲＥＱＦであり、可変部リクエスト長ＶＲＥＱＬによって、そのリクエスト長さが示される。
【０１９０】
リクエスト開始フラグＲｅｑＳｔＦｌａｇがＨｉｇｈの場合はリクエストが開始されることを示し、Ｌｏｗの場合はリクエストが発生していないことを示す。リクエスト番号ＲｅｑＮは、コマンド生成回路ＣＯＭＧＥＮが再構成したリクエストを識別するための番号であり、０から始まり２５５まで１つずつカウントアップしながら付加される。また、可変部リクエスト長ＶＲＥＱＬはリクエストの長さをバイト単位で示す。
【０１９１】
ここでは判定結果がチャネルミスかつページアドレスヒット且つバンク活性化信号ＡＶａｌｉｄがＬｏｗの場合に、コマンド生成回路ＣＯＭＧＥＮより生成されたバンクアクティブ命令ＡＣとリード命令ＲＤおよび、これらの命令に対するアドレスを含むリクエストに対するリクエストの再構成について説明する。
【０１９２】
先ず、識別番号ＩＤとリクエスト番号ＲｅｑＮの付加について説明する。コマンド生成回路ＣＯＭＧＥＮによって、完了通知を必要としないバンクアクティブ命令ＡＣとバンクアドレスＥＢＡｄｄＭ１およびページアドレスＥＰＡｄｄＭ１を含むリクエストは、リクエスト開始フラグＲｅｑＳｔＦｌｇ値１、識別番号ＩＤ値２、完了通知を必要としないバンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値２、可変部リクエスト長ＶＲＥＱＬ値３、リクエスト番号ＲｅｑＮ値１０、アドレス（バンクアドレスおよびページアドレス）の順で再生成され、バンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０として保持される（図２０：Ｓｔｅｐ８）。また、このバンクアクティブリクエストＲｅｑＡＣＩＤ２Ｓ１０は完了通知を必要としないリクエストである。
【０１９３】
続いて、３２バイトデータのリード命令ＲＤ３２とカラムアドレスＥＣＡｄｄＭ１を含むリクエストは、リクエスト開始フラグＲｅｑＳｔＦｌｇ値１、識別番号ＩＤ値２、リード命令ＲＤ３２、マスター番号ＭＩＤ値２、可変部リクエスト長ＶＲＥＱＬ値３、リクエスト番号ＲｅｑＮ値１１、レスポンスキュー番号ＱＵＮ値０、データ長ＲＤＬ値３２、アドレス（バンクアドレスおよびカラムアドレス）の順で再生成され、リードリクエストＲｑＲＤＩＤ２Ｓ１１として保持される（図２０：Ｓｔｅｐ８）。
【０１９４】
リクエストキューＲＥＱＱ２は、複数のリクエストキューから構成され、リクエストを受け取るための空き状態のリクエストキューが無ければ（図２０：Ｓｔｅｐ９）格納せず、空き状態のリクエストキューが出来るまで待つ。空き状態のリクエストキューがあれば（図２０：Ｓｔｅｐ９）、バンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０およびリードリクエストＲｑＲＤＩＤ２Ｓ１１をリクエストキューＲＥＱＱ２へ格納する（図２０：Ｓｔｅｐ１０）。
【０１９５】
リクエスト出力回路ＲＱＯＵＴは、コンフィグレーション回路ＣＯＮＦＩＧ内のメモリ装置Ｍ０に関するタイミングレジスタＭ０ＴＲＥＧの設定値と、メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧの設定値と、メモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧの設定値を受け取り、これらのタイミング設定値にしたがい、リクエストキューＲＥＱＱ２から送信されたリクエストを、メモリモジュールＭＥＭの各メモリ装置へ発行する。また、リクエストを発行する際には、レイテンシ制御レジスタＬＣＲＥＧやレイテンシレジスタＬＴＲＥＧからの情報を受け取って、リクエスト発行の制御を行う。これらのリクエスト出力回路の動作の詳細は、後述する。
【０１９６】
また、リクエスト出力回路ＲＱＯＵＴは、完了通知を必要とするリクエストをメモリモジュールＭＥＭ内の、ある特定のメモリ装置へ発行した場合は、そのメモリ装置からの完了通知を情報処理装置ＣＰＵ＿ＣＨＩＰが受け取った後に、リクエスト出力回路ＲＱＯＵＴは、そのメモリ装置へ次のリクエストを発行する。具体的に説明すると、リクエスト出力回路ＲＱＯＵＴは、完了通知を必要とするリクエストをメモリモジュールＭＥＭ内のメモリ装置Ｍ２へ発行した場合は、メモリ装置Ｍ２からの完了通知を情報処理装置ＣＰＵ＿ＣＨＩＰが受け取った後に、リクエスト出力回路ＲＱＯＵＴはメモリ装置Ｍ２へ、次のリクエストを発行する。
【０１９７】
さらに、情報処理装置ＣＰＵ＿ＣＨＩＰがメモリ装置Ｍ２からの完了通知を待っている間に、リクエスト出力回路ＲＱＯＵＴは、他のメモリ装置Ｍ０やＭ１へのリクエストを発行できることは言うまでもない。
【０１９８】
まず、リクエスト出力回路ＲＱＯＵＴは、リクエストキューＲＥＱＱ２にリクエストが保持されているかをチェックする（図２０：Ｓｔｅｐ１２）。リクエストキューＲＥＱＱ２にリクエストが保持されていれば、そのリクエストがリードリクエストあるいは完了通知を必要とするリクエストであるかをチェックする（図２０：Ｓｔｅｐ１３）。
【０１９９】
バンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０は完了通知を必要としないリクエストであり、さらにリードリクエストではない。また、バンクアクティブクエストＲｑＡＣＩＤ２Ｓ１０の識別番号ＩＤ値は２のため、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧに設定されているタイミング情報をチェックし、バンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０が発行できるかを判断する（図２０：Ｓｔｅｐ１６）。
【０２００】
次に、リクエスト出力回路ＲＱＯＵＴは、バンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０が発行できる状態であれば、すぐに、バンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０をメモリモジュールＭＥＭへ発行する（図２０：Ｓｔｅｐ１７）。
【０２０１】
メモリ装置Ｍ０のリクエストキュー回路ＲｑＱＩに空き状態のリクエストキューがない場合、発行したバンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０を、メモリ装置Ｍ０が受信できない。このように、発行したバンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０を、メモリ装置Ｍ０が受信できない場合は、バンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１０をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する（図２０：Ｓｔｅｐ１８）。レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１０にはレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、バンクアクティブ命令ＡＣｍ１、マスター番号ＭＩＤ値２、レスポンス番号ＲＥＳＮ値１０（リクエスト番号ＲＥＱＮ値１０と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１０をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１０に含まれる識別番号ＩＤ値２、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値２、レスポンス番号ＲｅｓＮ値１０および受信不可能情報ＮＯＡＣＣによって、再度、バンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０を発行する（図２０：Ｓｔｅｐ１７）。発行したバンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０を、メモリ装置Ｍ０が受信した場合は、メモリ装置Ｍ０からの受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスが送信されない（図２０：Ｓｔｅｐ１８）。
【０２０２】
バンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０が発行され、メモリ装置Ｍ０が受信した後、リクエスト出力回路ＲＱＯＵＴは、リクエスト出力回路ＲＱＯＵＴは、リクエストキューＲＥＱＱ２にリクエストが保持されているかをチェックする（図２０：Ｓｔｅｐ１２）。リクエストキューＲＥＱＱ２にリクエストが保持されていれば、そのリクエストがリードリクエストであるか、あるいは完了通知を必要とするリクエストであるかをチェックする（図２０：Ｓｔｅｐ１３）。リクエストＲｑＲＤＩＤ２Ｓ１１はリードリクエストのため、リクエスト出力回路ＲＱＯＵＴは、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１が装備している複数のレスポンスキューの中で、予約されていない空き状態のレスポンスキューがあるかどうかをチェックする（図２０：Ｓｔｅｐ１４）。
【０２０３】
レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ（図２０：Ｓｔｅｐ１４）。レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューがあれば、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１の空き状態のレスポンスキューの一部へリードリクエストＲｑＲＤＩＤ２Ｓ１１内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１１をコピーし、リードリクエストＲｑＲＤＩＤ２Ｓ１１に対応したレスポンスを受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２０：Ｓｔｅｐ１５）。
【０２０４】
キュー管理回路ＱＭＧＴは、メモリ制御回路ＤＣＭＣが持つレスポンスキュー回路ＲＥＳＱ１内のレスポンスキュー数、予約されていない空き状態のレスポンスキュー数、予約された空き状態のレスポンスキュー数、すでにレスポンスが格納されている占有状態のレスポンスキュー数を管理している。さらに、キュー管理回路ＱＭＧＴは、メモリ装置Ｍ０、Ｍ１およびＭ２が持つレスポンスキュー回路ＲｓＱｏとレスポンスキュー回路ＲｓＱｐ内のレスポンスキュー数、予約されていない空き状態のレスポンスキュー数、予約された空き状態のレスポンスキュー数、すでにレスポンスが格納されている占有状態のレスポンスキュー数を管理している。
【０２０５】
キュー管理回路ＱＭＧＴは、予約されていない空き状態のレスポンスキューが前もって確保された場合は、特に限定しないがレスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数を１つ減らし、予約された空き状態のレスポンスキュー数を１つ増やす。さらに、キュー管理回路ＱＭＧＴは識別番号ＩＤ値２に対応するレスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキュー数を１つ減らし、予約された空き状態のレスポンスキュー数を１つ増やし、識別番号ＩＤ値１に対応するメモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐ内の予約されていない空き状態のレスポンスキュー数を１つ減らし、予約された空き状態のレスポンスキュー数を１つ増やす（図２０：Ｓｔｅｐ１４）。
【０２０６】
リードリクエストＲｑＲＤＩＤ２Ｓ１１の識別番号ＩＤ値は２のため、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧに設定されているタイミング情報等をチェックし、リードリクエストＲｑＲＤＩＤ２Ｓ１１が発行できるかを判断する（図２０：Ｓｔｅｐ１６）。次に、リクエスト出力回路ＲＱＯＵＴは、リードリクエストＲｑＲＤＩＤ２Ｓ１１が発行できる状態であれば、リードリクエストＲｑＲＤＩＤ２Ｓ１１を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リードリクエストＲｑＲＤＩＤ２Ｓ１１をメモリモジュールＭＥＭへ発行する（図２０：Ｓｔｅｐ１７）。
【０２０７】
レイテンシ調整回路ＬＣＨＣＫは、リクエスト出力回路ＲＱＯＵＴからのリードリクエストＲｑＲＤＩＤ２Ｓ１１発行の通達を受けて、レイテンシの測定を開始する。メモリ装置Ｍ０のリクエストキュー回路ＲｑＱＩに空き状態のリクエストキューがない場合、発行したリードリクエストＲｑＲＤＩＤ２Ｓ１１を、メモリ装置Ｍ０が受信できない。このように、発行したリードリクエストＲｑＲＤＩＤ２Ｓ１１を、メモリ装置Ｍ０が受信できない場合は、リードリクエストＲｑＲＤＩＤ２Ｓ１１の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１１をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する（Ｓｔｅｐ１８）。
【０２０８】
レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１１にはレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、リード命令ＲＤ、マスター番号ＭＩＤ値２、レスポンス番号ＲｅｓＮ値１１（リクエスト番号ＲｅｑＮ値１１と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１１をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１１に含まれる識別番号ＩＤ値２、リード命令ＲＤ、マスター番号ＭＩＤ値２、レスポンス番号ＲｅｓＮ値１１および受信不可能情報ＮＯＡＣＣによって、再度、リードリクエストＲｑＲＤＩＤ２Ｓ１１を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リードリクエストＲｑＲＤＩＤ２Ｓ１１をメモリモジュールＭＥＭへ発行する（図２０：Ｓｔｅｐ１７）。
【０２０９】
レイテンシ調整回路ＬＣＨＣＫは、リクエスト出力回路ＲＱＯＵＴからのリードリクエストＲｑＲＤＩＤ２Ｓ１１の再発行の通達を受けて、今まで測定したレイテンシの値をすべて無効にし、再度、最初からレイテンシの測定を開始する。発行したリードリクエストＲｑＲＤＩＤ２Ｓ１１を、メモリ装置Ｍ０が受信した場合は、メモリ装置Ｍ０からの受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスが送信されない（Ｓｔｅｐ１８）。
【０２１０】
リクエストＲｑＲＤＩＤ２Ｓ１１に対する読み出しデータを含んだレスポンスＲｓＲＤＩＤ２Ｓ１１がメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ入力され、レスポンスキューＲＥＳＱ１へ格納されると、キュー管理回路ＱＭＧＴは、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２１１】
さらに、レスポンスキューＲＥＳＱ１に格納されているレスポンスＲｓＲＤＩＤ２Ｓ１１が、情報処理回路ＣＰＵ２へ送信されると、キュー管理回路ＱＭＧＴは、レスポンスキューＲＥＳＱ１へ保持されているレスポンスＲｓＲＤＩＤ２Ｓ１１を削除し、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２１２】
次に、リクエストキューＲＥＱＱ２へ完了通知を必要とするバンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０とリードリクエストＲｑＲＤＩＤ３Ｓ１１が保持されている場合の動作の一例を示す。
【０２１３】
バンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０には、リクエスト開始フラグＲｅｑＳｔＦｌｇ値１、識別番号ＩＤ値３、完了通知を必要とするバンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値２、可変部リクエスト長ＶＲＥＱＬ値３、リクエスト番号ＲｅｑＮ値１０、アドレス（バンクアドレスおよびページアドレス）が含まれる。
【０２１４】
リードリクエストＲｑＲＤＩＤ３Ｓ１１には、リクエスト開始フラグＲｅｑＳｔＦｌｇ値１、識別番号ＩＤ値３、リード命令ＲＤ３２、マスター番号ＭＩＤ値２、可変部リクエスト長ＶＲＥＱＬ値３、リクエスト番号ＲｅｑＮ値１１、レスポンスキュー番号ＱＵＮ値０、データ長ＲＤＬ値３２、アドレス（バンクアドレスおよびカラムアドレス）が含まれる。
【０２１５】
まず、リクエスト出力回路ＲＱＯＵＴは、リクエストキューＲＥＱＱ２にリクエストが保持されているかをチェックする（図２０：Ｓｔｅｐ１２）。リクエストキューＲＥＱＱ２にリクエストが保持されていれば、そのリクエストがリードリクエストあるいは完了通知を必要とするリクエストであるかをチェックする（図２０：Ｓｔｅｐ１３）。
【０２１６】
バンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０は完了通知を必要とするリクエストのため、リクエスト出力回路ＲＱＯＵＴは、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１が装備している複数のレスポンスキューの中で、予約されていない空き状態のレスポンスキューがあるかどうかをチェックする（図２０：Ｓｔｅｐ１４）。
【０２１７】
レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ（図２０：Ｓｔｅｐ１４）。レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューがあれば、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１の空き状態のレスポンスキューの一部へバンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０内の識別番号ＩＤ値３とリクエスト番号ＲｅｑＮ値１０をコピーし、バンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０に対する完了通知情報を含んだレスポンスＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＲｅｓＩＤ３Ｓ１０を受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２０：Ｓｔｅｐ１５）。
【０２１８】
バンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０の識別番号ＩＤ値は３のため、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧに設定されているタイミング情報をチェックし、バンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０が発行できるかを判断する（図２０：Ｓｔｅｐ１６）。
【０２１９】
次に、リクエスト出力回路ＲＱＯＵＴは、バンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０が発行できる状態であれば、すぐに、バンクアクティブリクエストバンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０をメモリモジュールＭＥＭへ発行する（図２０：Ｓｔｅｐ１７）。
【０２２０】
メモリ装置Ｍ０のリクエストキュー回路ＲｑＱＩに空き状態のリクエストキューがない場合、発行したバンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０を、メモリ装置Ｍ０が受信できない。このように、発行したバンクアクティブリクエストＲｑＡＣＩＤ２Ｓ１０を、メモリ装置Ｍ０が受信できない場合は、バンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓ１０をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する（Ｓｔｅｐ１８）。レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓ１０にはレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、バンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１０（リクエスト番号ＲｅｑＮ値１０と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓ１０をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓ１０に含まれる識別番号ＩＤ値３、バンクアクティブ命令ＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎ、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１０および受信不可能情報ＮＯＡＣＣによって、再度、バンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０を発行する（図２０：Ｓｔｅｐ１７）。発行したバンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０を、メモリ装置Ｍ０が受信した場合は、メモリ装置Ｍ０からの受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスが送信されない（図２０：Ｓｔｅｐ１８）。
【０２２１】
バンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０が発行され、メモリ装置Ｍ０が受信した後、リクエスト出力回路ＲＱＯＵＴは、リクエスト出力回路ＲＱＯＵＴは、リクエストキューＲＥＱＱ２にリクエストが保持されているかをチェックする（図２０：Ｓｔｅｐ１２）。リクエストキューＲＥＱＱ２にリクエストが保持されていれば、そのリクエストがリードリクエストであるか、あるいは完了通知を必要とするリクエストであるかをチェックする（図２０：Ｓｔｅｐ１３）。リードリクエストＲｑＲＤＩＤ３Ｓ１１はリードリクエストのため、リクエスト出力回路ＲＱＯＵＴは、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１が装備している複数のレスポンスキューの中で、予約されていない空き状態のレスポンスキューがあるかどうかをチェックする（図２０：Ｓｔｅｐ１４）。
【０２２２】
レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ（図２０：Ｓｔｅｐ１４）。レスポンスキューＲＥＳＱ１内に予約されていない空き状態のレスポンスキューがあれば、キュー管理回路ＱＭＧＴを通じてレスポンスキューＲＥＳＱ１の空き状態のレスポンスキューの一部へリードリクエストＲｑＲＤＩＤ２Ｓ１１内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１１をコピーし、リードリクエストＲｑＲＤＩＤ２Ｓ１１に対応したレスポンスを受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２０：Ｓｔｅｐ１５）。
【０２２３】
リードリクエストＲｑＲＤＩＤ３Ｓ１１の識別番号ＩＤ値は３のため、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ２へのバンクアクティブリクエストＲｑＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＩＤ３Ｓ１０に対する完了通知情報を含んだレスポンスＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＲｅｓＩＤ３Ｓ１０がレスポンス入力回路ＲＳＩＮへ入力され、レスポンスキューＲＥＳＱ１へ保持されているかをチェックする（図２０：Ｓｔｅｐ１６）。
【０２２４】
レスポンスキューＲＥＳＱ１へレスポンスＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＲｅｓＩＤ３Ｓ１０が保持されていれば、リクエスト出力回路ＲＱＯＵＴはリードリクエストＲｑＲＤＩＤ３Ｓ１１を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リードリクエストＲｑＲＤＩＤ３Ｓ１１をメモリモジュールＭＥＭへ発行する（図２０：Ｓｔｅｐ１７）。
【０２２５】
さらに、リクエスト出力回路ＲＱＯＵＴはリードリクエストＲｑＲＤＩＤ３Ｓ１１をメモリモジュールＭＥＭへ発行したことをキュー管理回路ＱＭＧＴへ通達する。その後、キュー管理回路ＱＭＧＴは、レスポンスキューＲＥＳＱ１へ保持されているレスポンスＡＣｗｉｔｈＣｏｍｐｌｅｔｉｏｎＲｅｓＩＤ３Ｓ１０を削除し、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２２６】
レイテンシ調整回路ＬＣＨＣＫは、リクエスト出力回路ＲＱＯＵＴからのリードリクエストＲｑＲＤＩＤ３Ｓ１１発行の通達を受けて、レイテンシの測定を開始する。メモリ装置Ｍ０のリクエストキュー回路ＲｑＱＩに空き状態のリクエストキューがない場合、発行したリードリクエストＲｑＲＤＩＤ３Ｓ１１を、メモリ装置Ｍ０が受信できない。このように、発行したリードリクエストＲｑＲＤＩＤ３Ｓ１１を、メモリ装置Ｍ０が受信できない場合は、リードリクエストＲｑＲＤＩＤ３Ｓ１１の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓ１１をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する（Ｓｔｅｐ１８）。
【０２２７】
レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓ１１にはレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値３、リード命令ＲＤ３２、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１１（リクエスト番号ＲｅｑＮ値１１と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓ１１をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ３Ｓ１１に含まれる識別番号ＩＤ値３、リード命令ＲＤ３２、マスター番号ＭＩＤ値３、レスポンス番号ＲｅｓＮ値１１および受信不可能情報ＮＯＡＣＣによって、再度、リードリクエストＲｑＲＤＩＤ３Ｓ１１を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リードリクエストＲｑＲＤＩＤ２Ｓ１１をメモリモジュールＭＥＭへ発行する（図２０：Ｓｔｅｐ１７）。
【０２２８】
レイテンシ調整回路ＬＣＨＣＫは、リクエスト出力回路ＲＱＯＵＴからのリードリクエストＲｑＲＤＩＤ３Ｓ１１の再発行の通達を受けて、今まで測定したレイテンシの値をすべて無効にし、再度、最初からレイテンシの測定を開始する。発行したリードリクエストＲｑＲＤＩＤ３Ｓ１１を、メモリ装置Ｍ０が受信した場合は、メモリ装置Ｍ０からの受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスが送信されない（図２０：Ｓｔｅｐ１８）。
【０２２９】
＜情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ間のデータ転送＞
情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ間のデータ転送について、図１から図８および図２１から図２２を利用し説明する。
【０２３０】
図２１は情報処理装置ＣＰＵ＿ＣＨＩＰからメモリモジュールＭＥＭへのリクエストに対する動作の一例を示すフローチャートである。図２２はメモリモジュールＭＥＭから情報処理装置ＣＰＵ＿ＣＨＩＰへのレスポンスに対する動作の一例を示すフローチャートである。
【０２３１】
まず、本実施の形態の動作を説明する前に、動作の前提となる各レジスタの状態等について説明する。メモリ装置Ｍ０、Ｍ１、Ｍ２のそれぞれのＩＤレジスタＩＤＲ値が１、２及び３に設定されている。コンフィグレーション回路ＣＯＮＦＩＧ内の各レジスタは図１０から図１８に示した値に設定されている。メモリ制御回路ＤＣＭＣのリクエストキュー回路ＲＥＱＱ２のリクエストキュー数は１２で、このリクエストキューはすべて空き状態である。また、メモリ制御回路ＤＣＭＣのレスポンスキュー回路ＲＥＳＱ１のリクエストキュー数は２４で、このレスポンスキューはすべて空き状態である。また、メモリ装置Ｍ０のリクエストキュー回路ＲｑＱＩのリクエストキュー数は１２で、リクエストキュー回路ＲｑＱＸＩのリクエストキュー数は４で、リクエストキュー回路ＲｑＱＸＯリクエストキュー数は８で、これらのリクエストキューはすべて空き状態である。また、メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｏのリクエストキュー数は８で、レスポンスキュー回路ＲｓＱｐのレスポンスキュー数は１６で、これらのレスポンスキューはすべて空き状態である。また、メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩのリクエストキュー数は８で、リクエストキュー回路ＲｑＱＸＩのリクエストキュー数は４で、リクエストキュー回路ＲｑＱＸＯリクエストキュー数は４で、これらのリクエストキューにはリクエストがエントリされていない。また、メモリ装置Ｍ１のレスポンスキュー回路ＲｓＱｏのリクエストキュー数は８で、レスポンスキュー回路ＲｓＱｐのレスポンスキュー数は８で、これらのレスポンスキューはすべて空き状態である。また、メモリ装置Ｍ２のリクエストキュー回路ＲｑＱＩのリクエストキュー数は４で、リクエストキュー回路ＲｑＱＸＩのリクエストキュー数は４で、リクエストキュー回路ＲｑＱＸＯリクエストキュー数は４で、これらのリクエストキューにはリクエストがエントリされていない。また、メモリ装置Ｍ２のレスポンスキュー回路ＲｓＱｏのリクエストキュー数は８で、レスポンスキュー回路ＲｓＱｐのレスポンスキュー数は８で、これらのレスポンスキューはすべて空き状態である。また、メモリ装置Ｍ０、Ｍ１およびＭ２の全メモリバンクは非活性となっている。また、メモリ装置Ｍ０、Ｍ１およびＭ２へのリクエストは、情報処理装置ＣＰＵ＿ＣＨＩＰの情報処理回路ＣＰＵ３からリクエストである。情報処理装置ＣＰＵ＿ＣＨＩＰからメモリ装置Ｍ０、Ｍ１およびＭ２へのリクエストは、４バイトの共通リクエスト部ＣＭＮＲＥＱＦと、最大３６バイトの可変リクエスト部ＶＢＲＥＱＦから構成される。共通リクエスト部ＣＭＮＲＥＱＦはリクエスト開始フラグＲｅｑＳｔＦｌｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、可変部リクエスト長ＶＲＥＱＬ、リクエスト番号ＲＥＱＮから構成される。可変リクエスト部ＶＢＲＥＱＦは、４バイトのアドレスおよび最大３２バイトのライトデータから構成される。可変部リクエスト長ＶＲＥＱＬは可変リクエスト部ＶＢＲＥＱＦの長さをバイト単位で表している。メモリ装置Ｍ０、Ｍ１およびＭ２が装備する１つのリクエストキューは、４バイトの共通リクエスト部ＣＭＮＲＥＱＦと、最大３６バイトの可変リクエスト部ＶＢＲＥＱＦを格納できる。また、メモリ装置Ｍ０、Ｍ１およびＭ２から情報処理装置ＣＰＵ＿ＣＨＩＰへのレスポンスは、４バイトの共通レスポンス部ＣＭＮＲＥＳＦと、最大３２バイトのリードデータから構成される。共通レスポンス部ＣＭＮＲＥＳＦはレスポンス開始フラグＲｅｓＳｔＦｌａｇ、識別番号ＩＤ、命令、マスター番号ＭＩＤ、リードデータ長ＲＤＬ、レスポンス番号ＲｅｓＮから構成される。リードデータ長ＲＤＬはリードデータの長さをバイト単位で表している。メモリ装置Ｍ０、Ｍ１およびＭ２が装備する１つのレスポンスキューは、４バイトの共通レスポンス部ＣＭＮＲＥＳＦと、最大３２バイトのリードデータを格納できる。
【０２３２】
本実施の形態では、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ１間のデータ転送を一例として説明する。なお、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ０又はＭ２間のデータ転送については、同様の動作を行うため、ここでは省略する。
【０２３３】
情報処理装置ＣＰＵ＿ＣＨＩＰのメモリ制御回路ＤＣＭＣは、リクエスト信号ＲｑＭｕｘ０を通じて、リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値２、完了通知が不要のバンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ）、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１５、バンクアドレスＢＫ０、ページアドレスＲｏｗ６３を多重化したリクエストＲｑＡＣＩＤ２Ｓ１５をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する（図２１：Ｓｔｅｐ１）。リクエストＲｑＡＣＩＤ２Ｓ１５がメモリ装置Ｍ０へ入力するとキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２１：Ｓｔｅｐ２）。リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ０は、情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｑＡＣＩＤ２Ｓ１５を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２１：Ｓｔｅｐ３）。また、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｑＡＣＩＤ２Ｓ１５をメモリ装置Ｍ０が受信できないので、リクエストＲｑＡＣＩＤ２Ｓ１５の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１５をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する。レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１５にはレスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１５（リクエスト番号ＲＥＱＮ値１５と等しい値）および受信不可能情報ＮＯＡＣＣから構成される。
【０２３４】
レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１５をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１５に含まれる識別番号ＩＤ値２、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１５および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｑＡＣＩＤ２Ｓ１５を発行する（図２１：Ｓｔｅｐ１）。その後、ＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｑＡＣＩＤ２Ｓ１５に含まれるＩＤ値２と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する（図２１：Ｓｔｅｐ４）。比較結果が不一致のため、リクエストＲｑＡＣＩＤ２Ｓ１５は、リクエストキュー回路ＲｑＱＸＯへ転送される（図２１：Ｓｔｅｐ１３）。
【０２３５】
次に、リクエストキュー回路ＲｑＱＸＯは格納しているリクエストがリード命令を含むか、あるいは完了通知情報を必要とするリクエストかどうかチェックする（図２１：Ｓｔｅｐ１４）。リクエストＲｑＡＣＩＤ２Ｓ１５はリード命令を含んでおらず、さらに完了通知情報が必要ないリクエストのため、メモリ装置Ｍ０はリクエスト信号ＲｑＭｕｘ１を通じて、リクエストＲｑＡＣＩＤ２Ｓ１５をメモリ装置Ｍ１へ転送する（図２１：Ｓｔｅｐ１）。リクエストＲｑＡＣＩＤ２Ｓ１５がメモリ装置Ｍ１へ入力するとメモリ装置Ｍ１のキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２１：Ｓｔｅｐ２）。
【０２３６】
リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ１は、メモリ装置Ｍ０からのリクエストＲｑＡＣＩＤ２Ｓ１５を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２１：Ｓｔｅｐ３）。また、メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｑＡＣＩＤ２Ｓ１５をメモリ装置Ｍ１が受信できないので、リクエストＲｑＡＣＩＤ２Ｓ１５の発行直後に、メモリ装置Ｍ１はレスポンス信号ＲｓＭｕｘ１を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１５をメモリ装置Ｍ０へ送信する。
【０２３７】
メモリ装置Ｍ０は、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１５に含まれる識別番号ＩＤ値２、バンクアクティブ命令ＡＣ、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１５および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｑＡＣＩＤ２Ｓ１５を発行する（図２１：Ｓｔｅｐ１）。
【０２３８】
その後、メモリ装置Ｍ１のＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｑＡＣＩＤ２Ｓ１５に含まれるＩＤ値２と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２を比較する（図２１：Ｓｔｅｐ４）。
【０２３９】
比較結果が一致したため、リクエストＲｑＡＣＩＤ２Ｓ１５は、リクエストキュー回路ＲｑＱＸＩへ転送される（図２１：Ｓｔｅｐ５）。次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストがリード命令を含むか、あるいは完了通知情報を必要とするリクエストかどうかチェックする（図２１：Ｓｔｅｐ６）。リクエストＲｑＡＣＩＤ２Ｓ１５はリード命令を含んでおらず、さらに完了通知情報が必要ないリクエストのため、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストＲｑＡＣＩＤ２Ｓ１５をメモリ回路Ｍｅｍ１へ転送する（図２１：Ｓｔｅｐ１１）。メモリ回路Ｍｅｍ１はリクエストＲｑＡＣＩＤ２Ｓ１５に従って動作する（図２１：Ｓｔｅｐ１２）。具体的には、メモリ回路Ｍｅｍ１のコマンドデコーダＣｍｄＤｅｃはバンクアクティブ命令ＢＡを解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＡＮＫ０が選択され、メモリバンクＮＶ１ＢＡＮＫ０のページアドレスバッファＰａｄＬａｔへページアドレス６３が格納され、ページデコーダＰａｇｅＤｅｃへ入力される。その後メモリアレイ回路ＮＶ１Ｂｋ０内のページアドレス６３に接続されているメモリセルが活性化され、特に限定しないが１ｋＢｙｔｅ分のデータがデータバッファＤａｔａＬａｔ、へ転送される（図２１：Ｓｔｅｐ１２）。
【０２４０】
情報処理装置ＣＰＵ＿ＣＨＩＰのメモリ制御回路ＤＣＭＣは、タイミングレジスタＭ１ＴＲＥＧに設定されているｔｍ１ＲＣＤ（バンクアクティブ命令とリードおよびライト命令の最小時間間隔）の値１６に従い、リクエストＲｑＡＣＩＤ２Ｓ１５転送後の１６クロックサイクル以降に、３２バイトデータのリード命令ＲＤ３２を含むリクエストＲｑＲＤＩＤ２Ｓ１６（リクエスト開始フラグＲｅｑＳｔＦｌａｇ値１、識別番号ＩＤ値２、３２バイトデータのリード命令ＲＤ３２、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値１６、バンクアドレスＢＫ０およびカラムアドレスＣｏｌ３２から構成される）をメモリ装置Ｍ０へ転送するための動作を行う。
【０２４１】
先ず、レスポンスキューＲＥＳＱ１内の空き状態のレスポンスキューの一部へリクエストＲｑＲＤＩＤ２Ｓ１６内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１６と等しいレスポンス番号ＲｅｓＮ値１６をコピーし、リクエストＲｑＲＤＩＤ２Ｓ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６を受け取るために必要な空き状態のレスポンスキューを前もって確保する。
【０２４２】
次にリクエスト出力回路ＲＱＯＵＴは、リクエスト信号ＲｑＭｕｘ０を通じて、ＲｑＲＤＩＤ２Ｓ１６をクロック信号ＲｑＣＫ０に同期させ、メモリ装置Ｍ０へ転送する（図２１：Ｓｔｅｐ１）。また、リクエスト出力回路ＲＱＯＵＴはリクエストＲｑＲＤＩＤ２Ｓ１６内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１６をレイテンシ調整回路ＬＣＨＣＫへ転送し、保持させる。次に、リクエストＲｑＲＤＩＤ２Ｓ１６の転送と同時に、レイテンシ調整回路ＬＣＨＣＫはリクエストＲｑＲＤＩＤ２Ｓ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６に関するレイテンシの測定を開始する（図２１：Ｓｔｅｐ１）。リクエストＲｑＲＤＩＤ２Ｓ１６がメモリ装置Ｍ０へ入力するとキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２１：Ｓｔｅｐ２）。
【０２４３】
リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ０は情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｑＲＤＩＤ２Ｓ１６を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２１：Ｓｔｅｐ３）。また、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｑＲＤＩＤ２Ｓ１６をメモリ装置Ｍ０が受信できないため、リクエストＲｑＲＤＩＤ２Ｓ１６の発行直後に、メモリ装置Ｍ０はレスポンス信号ＲｓＭｕｘ０を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓ１６をメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ送信する。
【０２４４】
レスポンス入力回路ＲＳＩＮは、入力されたレスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓ１６をリクエスト出力回路ＲＱＯＵＴへ送信する。リクエスト出力回路ＲＱＯＵＴは、レスポンスＲｅｓＮｏＡｃｃＩＤ１Ｓ１６に含まれる識別番号ＩＤ値２、リード命令ＲＤ、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１６および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｑＲＤＩＤ２Ｓ１６を発行することをレイテンシ調整回路ＬＣＨＣＫへ通達し、リクエストＲｑＲＤＩＤ２Ｓ１６を発行する（図２１：Ｓｔｅｐ１）。
【０２４５】
その後、メモリ装置Ｍ０のＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｑＲＤＩＤ１Ｓ１６に含まれるＩＤ値２と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する（図２１：Ｓｔｅｐ４）。比較結果は不一致のためリクエストＲｑＲＤＩＤ２Ｓ１６はリクエストキュー回路ＲｑＱＸＯへ転送される（図２１：Ｓｔｅｐ１３）。次に、リクエストキュー回路ＲｑＱＸＯは格納しているリクエストＲｑＲＤＩＤ２Ｓ１６がリード命令を含むリクエストか、あるいは完了通知情報を必要とするリクエストかどうかをチェックする（図２１：Ｓｔｅｐ１４）。リクエストＲｑＲＤＩＤ２Ｓ１６はリード命令を含んでいるため、リクエストキュー回路ＲｑＱＸＯはレスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあるかをチェックする（図２１：Ｓｔｅｐ１５）。レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューが無ければ、予約されていない空き状態のレスポンスキューができるまで待つ。
【０２４６】
レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューがあれば、リクエストキュー回路ＲｑＱＸＯはリクエストＲｑＲＤＩＤ２Ｓ１６内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１６を、レスポンスキュー回路ＲｓＱｐ内に予約されていない空き状態のレスポンスキューへコピーし、リクエストＲｑＲＤＩＤ２Ｓ１６に対応したレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６を受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２１：Ｓｔｅｐ１６）。リクエストキュー回路ＲｑＱＸＯがレスポンスキュー回路ＲｓＱｐの予約されていない空き状態のレスポンスキューを予約した場合、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｏ内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する（図２１：Ｓｔｅｐ１６）。
【０２４７】
次に、メモリ装置Ｍ０はリクエスト信号ＲｑＭｕｘ１を通じて、リクエストＲｑＲＤＩＤ２Ｓ１６をメモリ装置Ｍ１へ転送する（図２１：Ｓｔｅｐ１）。リクエストＲｑＲＤＩＤ２Ｓ１６がメモリ装置Ｍ１へ入力するとメモリ装置Ｍ１のキューチェック回路ＲＱＱＭは、リクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在するかをチェックする（図２１：Ｓｔｅｐ２）。メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在する場合は、メモリ装置Ｍ１は、メモリ装置Ｍ０からのリクエストＲｑＲＤＩＤ２Ｓ１６を自身のリクエストキュー回路ＲｑＱＩのリクエストキューへ格納する（図２１：Ｓｔｅｐ３）。
【０２４８】
また、メモリ装置Ｍ１のリクエストキュー回路ＲｑＱＩ内で空き状態のリクエストキューが存在しない場合は、リクエストＲｑＲＤＩＤ２Ｓ１６をメモリ装置Ｍ１が受信できないので、リクエストＲｑＲＤＩＤ２Ｓ１６の発行直後に、メモリ装置Ｍ１はレスポンス信号ＲｓＭｕｘ１を介して受信不可能情報ＮＯＡＣＣという情報を含んだレスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１６をメモリ装置Ｍ０へ送信する。メモリ装置Ｍ０は、レスポンスＲｅｓＮｏＡｃｃＩＤ２Ｓ１６に含まれる識別番号ＩＤ値２、リード命令ＲＤ３２、マスター番号ＭＩＤ値３、レスポンス番号ＲＥＳＮ値１６および受信不可能情報ＮＯＡＣＣによって、再度、リクエストＲｑＲＤＩＤ２Ｓ１６を発行する（図２１：Ｓｔｅｐ１）。その後、メモリ装置Ｍ１のＩＤ比較回路ＣＰＱは、リクエストキュー回路ＲｑＱＩのリクエストキューへエントリされたリクエストＲｑＲＤＩＤ２Ｓ１６に含まれるＩＤ値２と、ＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２を比較する（図２１：Ｓｔｅｐ４）。
【０２４９】
比較結果が一致したため、リクエストＲｑＲＤＩＤ２Ｓ１６は、リクエストキュー回路ＲｑＱＸＩへ転送される（図２１：Ｓｔｅｐ５）。次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストＲｑＲＤＩＤ２Ｓ１６がリード命令を含むリクエストか、あるいは完了通知情報を必要とするリクエストかどうかをチェックする（図２１：Ｓｔｅｐ６）。リクエストＲｑＲＤＩＤ２Ｓ１６はリード命令を含んでいるため、リクエストキュー回路ＲｑＱＸＩは、レスポンスキュー回路ＲｓＱｏ内に、予約されていない空き状態のレスポンスキューがあるかをチェックする（図２１：Ｓｔｅｐ７）。レスポンスキュー回路ＲｓＱｏ内に予約されていない空き状態のレスポンスキューがなければ、予約されていない空き状態のレスポンスキューができるまでリクエストキュー回路ＲｑＱＸＩは、リクエストＲｑＲＤＩＤ２Ｓ１６の転送を中断する。レスポンスキュー回路ＲｓＱｏに予約されていない空き状態のレスポンスキューがあれば、リクエストキュー回路ＲｑＱＸＩは、レスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキューへリクエストＲｑＲＤＩＤ２Ｓ１６内の識別番号ＩＤ値２とリクエスト番号ＲｅｑＮ値１６をコピーし、リクエストＲｑＲＤＩＤ２Ｓ１６に対応したメモリ回路Ｍｅｍ１からのリードデータを受け取るために必要な空き状態のレスポンスキューを前もって、予約し、確保する（図２１：Ｓｔｅｐ８）。
【０２５０】
リクエストキュー回路ＲｑＱＸＩがレスポンスキュー回路ＲｓＱｏの予約されていない空き状態のレスポンスキューを予約した場合、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｏ内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する（図２１：Ｓｔｅｐ８）。次に、リクエストキュー回路ＲｑＱＸＩは格納しているリクエストＲｑＲＤＩＤ２Ｓ１６をメモリ回路Ｍｅｍ１へ転送する（図２１：Ｓｔｅｐ９）。メモリ回路Ｍｅｍ１はリクエストＲｑＲＤＩＤ２Ｓ１６に従って動作する（図２１：Ｓｔｅｐ１０）。具体的には、３２バイトデータリード命令ＲＤ３２がコマンド信号ＣＭＤから、バンクアドレス０およびカラムアドレス３２が、アドレス信号ＡＤＤよりメモリ回路Ｍｅｍ１へ送信される。コマンドデコーダＣｍｄＤｅｃは３２バイトデータリード命令ＲＤ３２を解読し、制御回路Ｃｏｎｔ  ＬｏｇｉｃによってメモリバンクＮＶ１ＢＡＮＫ０が選択され、メモリバンクＮＶ１ＢＡＮＫ０のカラムアドレスバッファＣＡｄｄＬａｔへカラムアドレス３２が格納され、カラムデコーダＣｏｌＤｅｃへ入力される。
【０２５１】
その後、カラムアドレス３２を開始アドレスとして、３２バイト分のデータがメモリバンクＮＶ１ＢＡＮＫ０のデータバッファＤａｔａＬａｔから読み出され、データ制御回路ＤａｔａＣｏｎｔを介してリードデータバッファＲＤａｔａＬａｔへ格納される。その後、リードデータバッファＲＤａｔａＬａｔより読み出された３２バイト分のデータは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２（ＩＤレジスタ値２と等しい値）、３２バイトデータのリード命令ＲＤ３２、マスター番号ＭＩＤ値３（情報処理回路ＣＰＵ３のマスター番号ＩＤ）、リードデータ長ＲＤＬ値３２、レスポンス番号ＲｅｓＮ値１６（リクエスト番号ＲｅｑＮ値１６と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されて、レスポンスキュー制御回路ＲｓＣＴ内のレスポンスキュー回路ＲｓＱｏのレスポンスキューへレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６としてエントリされる（図２２：Ｓｔｅｐ１７）。
【０２５２】
メモリ装置Ｍ１のキューチェック回路ＲＳＱＭは、メモリ装置Ｍ１のレスポンスキュー回路ＲｓＱｏへレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６がエントリされると、レスポンスキュー回路ＲｓＱｏ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ１８）。次にメモリ装置Ｍ１のレスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスに対するレスポンス優先順位を決定する（図２２：Ｓｔｅｐ１９）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスはＲｅｓＲＤ３２ＩＤ２Ｓ１６のみのため、レスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６のレスポンス優先順位が最も高い（図２２：Ｓｔｅｐ１９）ので、レスポンススケジュール回路ＳＣＨはレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６を、レスポンス信号ＲｓＭｕｘ１を通じてメモリ装置Ｍ０へ送信する（図２２：Ｓｔｅｐ２０）。
【０２５３】
その後、メモリ装置Ｍ１のキューチェック回路ＲＳＱＭは、再度、レスポンスキュー回路ＲｓＱｏ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ２１）。
【０２５４】
また、メモリ装置Ｍ１のレスポンスキュー回路ＲｓＱｏ内のレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１は、情報処理装置ＣＰＵ＿ＣＨＩＰへ送信される前に（図２２：Ｓｔｅｐ２２）、メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへ転送される（図２２：Ｓｔｅｐ１７）。
【０２５５】
メモリ装置Ｍ０は、レスポンスキュー回路ＲｓＱｐ内にレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６を受け取るための空き状態のレスポンスキューを前もって確保しているため、レスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６はメモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへ格納される（図２２：Ｓｔｅｐ１７）。
【０２５６】
メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｏへレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６がエントリされると、メモリ装置Ｍ０のキューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内のすでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ１８）。次にメモリ装置Ｍ０のレスポンススケジュール回路ＳＣＨは、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスに対するレスポンス優先順位を決定する（図２２：Ｓｔｅｐ１９）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへエントリされているレスポンスはＲｅｓＲＤ３２ＩＤ２Ｓ１６のみのため、レスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６のレスポンス優先順位が最も高い（図２２：Ｓｔｅｐ１９）ので、レスポンススケジュール回路ＳＣＨはレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６を、レスポンス信号ＲｓＭｕｘ０を通じて情報処理装置ＣＰＵ＿ＣＨＩＰへ送信する（図２２：Ｓｔｅｐ２０）。メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐ内のレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６が情報処理装置ＣＰＵ＿ＣＨＩＰへ完全に送信されると、キューチェック回路ＲＳＱＭは、レスポンスキュー回路ＲｓＱｐ内の、すでにレスポンスが格納されている占有状態のレスポンスキュー数、予約されている空き状態のレスポンスキュー数および予約されていない空き状態のレスポンスキュー数を計算し、更新する（図２２：Ｓｔｅｐ２１）。
【０２５７】
情報処理装置ＣＰＵ＿ＣＨＩＰはレスポンスキュー回路ＲｓＱｐ内にレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６を受け取るための空き状態のレスポンスキューを前もって確保しているため、レスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６はレスポンス入力回路ＲＳＩＮへ格納される。メモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｏ内のレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６が情報処理装置ＣＰＵ＿ＣＨＩＰへ送信される（図２２：Ｓｔｅｐ２２）と、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリ装置Ｍ０間のデータ転送は完了する（図２２：Ｓｔｅｐ２３）。メモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮがレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６を受け取ると、レスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６に含まれている識別番号ＩＤ値２とレスポンス番号ＲｅｓＮ値１６を取り出し、レイテンシ調整回路ＬＣＨＣＫへ送付する。レイテンシ調整回路ＬＣＨＣＫは、これらの識別番号ＩＤ値２とレスポンス番号ＲｅｓＮ値１６によってリクエストＲｑＲＤＩＤ２Ｓ１６のレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６が返ってきたことを知り、レイテンシの測定を終了する。
【０２５８】
レイテンシ調整回路ＬＣＨＣＫは、レイテンシの測定結果とコンフィグレーション回路ＣＯＮＦＩＧ内のレイテンシレジスタＬＴＲＥＧへ設定されている識別番号ＩＤ値２に対応するレイテンシＬａｔＢａｎｋと比較する。比較した結果、その差分がレスポンス重複許容時間幅ＤＯＶＬＰを超えていれば、レイテンシ調整回路ＬＣＨＣＫは、今後、発生するリードリクエストに対する測定したレイテンシがレイテンシＬａｔＢａｎｋ値２４クロックサイクルと等しくなるようにレイテンシ補正動作を行う。また、比較した結果、レスポンス重複許容時間幅ＤＯＶＬＰ以内であればレイテンシ調整回路ＬＣＨＣＫは、レイテンシ補正動作を行わない。
【０２５９】
さらに、レイテンシ調整回路ＬＣＨＣＫは、レイテンシの測定結果とコンフィグレーション回路ＣＯＮＦＩＧ内のレイテンシレジスタＬＴＲＥＧへ設定されている識別番号ＩＤ値２に対応するレイテンシＬａｔＴｉｍｅＯｕｔ値とを比較する。比較した結果、レイテンシの測定結果がＬａｔＴｉｍｅＯｕｔ値１００を超えていればタイムアウトエラーをリクエスト出力回路ＲＱＯＵＴへ通達する。比較した結果、レイテンシの測定結果がＬａｔＴｉｍｅＯｕｔ値１００以内であればタイムアウトエラーは通達しない。
【０２６０】
また、レスポンスキューＲＥＳＱ１へレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６が格納されると、キュー管理回路ＱＭＧＴは、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２６１】
さらに、レスポンスキューＲＥＳＱ１に格納されているレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６が、情報処理回路ＣＰＵ３へ送信されると、キュー管理回路ＱＭＧＴは、レスポンスキューＲＥＳＱ１へ保持されているレスポンスＲｅｓＲＤ３２ＩＤ２Ｓ１６を削除し、再度、レスポンスキューＲＥＳＱ１内のレスポンスが格納されている占有状態のレスポンスキュー数、レスポンスキューＲＥＳＱ１内の予約されていない空き状態のレスポンスキュー数と予約された空き状態のレスポンスキュー数を計算し、更新する。
【０２６２】
以上説明したように、リクエストへ識別番号ＩＤおよびリクエスト番号を付加することで、情報処理装置ＣＰＵ＿ＣＨＩＰから各メモリ装置へリクエストが確実に転送される。また、レスポンスへ識別番号ＩＤおよびレスポンス番号を付加することで、各メモリから正しくデータ転送が行えたことを確認でき、情報処理装置ＣＰＵ＿ＣＨＩＰおよびメモリ装置Ｍ０、Ｍ１、Ｍ２の直列接続によって、接続信号数を減少させながらも、情報処理装置ＣＰＵ＿ＣＨＩＰは所望の処理を実行することができる。また、情報処理装置ＣＰＵ＿ＣＨＩＰがメモリモジュールＭＥＭからデータを読み出すために、情報処理装置ＣＰＵ＿ＣＨＩＰからリード命令を含むリクエストＲｅｑＲＤをメモリ装置Ｍ０へ転送する際は、前もって、情報処理装置ＣＰＵ＿ＣＨＩＰのレスポンスキューＲＥＳＱ１内で、まだ予約されていない空き状態のレスポンスキューを予約し、リクエストＲｅｑＲＤに対するレスポンスＲｅｓＲＤを受け取るために必要な空き状態のレスポンスキューを、確保する。また、メモリ装置Ｍ０がリクエストＲｅｑＲＤをメモリ装置Ｍ１へ転送する際は、前もって、メモリ装置Ｍ０のレスポンスキューＲｅｓＱｐ内で予約されていない空き状態のレスポンスキューを予約し、リクエストＲｅｑＲＤに対するレスポンスＲｅｓＲＤを受け取るために必要な空き状態のレスポンスキューを、確保する。また、メモリ装置Ｍ１がリクエストＲｅｑＲＤをメモリ装置Ｍ２へ転送する際は、前もって、メモリ装置Ｍ１のレスポンスキューＲｅｓＱｐ内で予約されていない空き状態のレスポンスキューを予約し、リクエストＲｅｑＲＤに対するレスポンスＲｅｓＲＤを受け取るために必要な空き状態のレスポンスキューを、確保する。このような動作を行うことで、本実施の形態の情報処理メモリシステムは、常に、情報処理装置ＣＰＵ＿ＣＨＩＰからのリクエストＲｅｑＲＤに対するレスポンスＲｅｓＲＤを転送するために必要な空き状態のレスポンスキューを確保でき、レスポンスＲｅｓＲＤは最短レイテンシで情報処理装置ＣＰＵ＿ＣＨＩＰへ転送される。
【０２６３】
さらに、レイテンシを実測し、その実測レイテンシ値とレイテンシレジスタＬＴＲＥＧへ保存されているレイテンシ値の差分がレスポンス重複許容時間ＤＯＶＬＰ以内であるかをチェックすることで、本実施の形態の情報処理メモリシステムが正常に動作しているか判断できる。
【０２６４】
＜読み出しおよび書き込み動作＞
図２３はレイテンシ制御モードにおいて、リクエスト出力回路ＲＱＯＵＴが行う、これからリクエスト信号ＲｑＭｕｘ０上に発行するリードリクエストに対するレスポンスの時間帯とすでに発行したレスポンスの時間帯との間でのレスポンス同士が重なる時間幅のチェックと、その結果に基づくリードリクエスト発行までのフローと、ライトリクエスト発行までのフローとを示す一例である。
【０２６５】
特に限定しないが、リクエスト出力回路ＲＱＯＵＴが、メモリ装置Ｍｎ（ｎ＝０，１，２）へのリードリクエストＲｑＲＭｎおよびＲｑＲＲＭｎ（ｎ＝０，１，２）を発行する際についてのフローチャートの一例を示す。レイテンシ制御レジスタＬＴＣＲＥＧ内の、ＬＣＯＮＴには１が、レスポンス重複許容時間ＤＯＶＬＰには値ｍが設定されている。
【０２６６】
リードリクエストＲｑＲＭｎはメモリ装置Ｍｎのメモリ回路Ｍｅｍｎからデータを読み出すリードリクエストであり、リードリクエストＲｑＲＲＭｎはメモリ装置ＭｎのレスポンスキューＲｓＱｏから直接データを読み出すリードリクエストである。
【０２６７】
レスポンス重複許容時間ＤＯＶＬＰは、すでにリクエスト信号ＲｑＭｕｘ０へ発行している例えばメモリ装置Ｍ０へのリクエストＡに対するレスポンスＡの先頭時間位置から、この場合メモリ装置Ｍ０以外への次に発行するメモリ装置へのリクエストＢに対するレスポンスＢの時間帯がレスポンスＡの時間帯に重なる時間帯があったとき、その重なる時間帯の許容できる時間幅を示している。
【０２６８】
つまり、重複許容時間ＤＯＶＬＰがｍの場合、メモリ制御回路ＤＣＭＣは、すでにリクエスト信号ＲｑＭｕｘ０へ発行している、いずれかのメモリ装置（メモリ装置Ｍ０、Ｍ１、Ｍ２のいずれか）へのリクエストＡに対するレスポンスＡの先頭時間位置から、次に発行するメモリ装置へのリクエストＢに対するレスポンスＢの時間帯がｍクロックサイクル以内に重なる範囲で、それぞれのレスポンスのレイテンシをできるだけ小さくするようにリクエスト信号ＲｑＭｕｘ０へリクエストを出力する。
【０２６９】
ここで、具体的な動作を説明する前に、リクエスト出力回路ＲＱＯＵＴに装備されるカウンタＤｎＳ，ＤｎＥ，ＣｎＴＲＣＤについて説明する。
【０２７０】
まず、カウンタＣｎＴＲＣＤについて説明する。メモリ装置Ｍｎへバンクアクティブ命令ＡＣを含むリクエストが転送された後、メモリ装置Ｍｎのメモリ回路Ｍｅｍｎからデータを読み出すリード命令や、メモリ回路Ｍｅｍｎへデータを書き込むライト命令を含んだリクエストを転送する場合には、タイミングレジスタＭｎＴＲＥＧに設定されたｔｍｎＲＣＤ値の時間間隔が必要である。リクエスト出力回路ＲＱＯＵＴ内のメモリ装置ＭｎのカウンタＣｎＴＲＣＤは、この時間間隔ｔｍｎＲＣＤをチェックするためのカウンタである。なお、カウンタＣｎＴＲＣＤは、パワーアップシーケンスの際に０へ初期設定される。バンクアクティブ命令ＡＣを含むリクエストが転送される直前にタイミングレジスタＭｎＴＲＥＧに設定されたｔｍｎＲＣＤ値がカウンタＣｎＴＲＣＤへ設定され、クロックＣＬＫに同期しカウンタＣｎＴＲＣＤは、設定されている値を０になるまで１つずつ減らしていく。
【０２７１】
次に、カウンタＤｎＳおよびカウンタＤｎＥはメモリ装置Ｍｎへのリード命令を含むリクエストに対するレスポンスが、レスポンス信号ＲｓＭｕｘ０を通じて、メモリ制御回路ＤＣＭＣへ入力される際の、レスポンスの先頭時間位置ＲＴＬｎおよび最後尾時間位置ＲＢＬｎを示すためのカウンタである。つまり、カウンタＤｎＳの値からカウンタＤｎＥの値までの期間は、メモリ装置Ｍｎへのリード命令を含むリクエストに対するレスポンスがレスポンス信号ＲｓＭｕｘ０上へ現れる相対的な時間帯ｍｎＲｓＤｒを示している。
【０２７２】
また、リクエスト出力回路ＲＱＯＵＴはメモリ装置Ｍｎへのリード命令を含むリクエストを転送すると同時に、カウンタＤｎＳおよびＤｎＥへ、後述する先頭時間位置が設定されるレジスタＮｘＤｓの値および最後尾時間位置が設定されるレジスタＮｘＤｅ値を設定する。その後、カウンタＤｎＳおよびＤｎＥはクロックＣＬＫに同期しカウンタＤｎＳおよびＤｎＥへ設定されている値を１つずつ減らしていき、レスポンス信号ＲｓＭｕｘ０へ現れる相対的な時間帯ｍｎＲｓＤｒを更新する。なお、カウンタＤｎＳおよびカウンタＤｎＥは、特に限定されないが、パワーアップシーケンスの際に、情報処理装置ＣＰＵ０によって０へ初期設定される。
【０２７３】
次に、具体的な動作について説明する。ここでは、図１に示される情報処理システムを前提とし、３つのメモリ装置Ｍ０〜Ｍ２があるものとする。
【０２７４】
まず、リクエスト出力回路ＲＱＯＵＴがリクエスト信号ＲｑＭｕｘ０から、リクエスト保持回路ＮｘＰＣＫに保持されているリクエストを発行する直前に（ＳＴＡＲＴ）、そのリクエストがリードリクエスト（ＲｑＲＭｎあるいはＲｑＲＲＭｎ）なのかライトリクエストＲｑＷＭｎなのかをチェックする（Ｓｔｅｐ０）。
【０２７５】
そのリクエストがリードリクエスト（ＲｑＲＭｎあるいはＲｑＲＲＭｎ）であれば、それぞれのリードリクエスト（ＲｑＲＭｎあるいはＲｑＲＲＭｎ）に対するレスポンスＲｓＲＭｎの先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、それぞれを、レジスタＮｘＤｓおよびレジスタＮｘＤｅへ設定する（Ｓｔｅｐ１）。
【０２７６】
リクエスト出力回路ＲＱＯＵＴからのリクエストがリードリクエストＲｑＲＲＭｎの場合、Ｓｔｅｐ３へ進む。また、リクエスト出力回路ＲＱＯＵＴからのリクエストがリードリクエストＲｑＲＭｎの場合、以下の条件１から３をチェックする（Ｓｔｅｐ２）。
条件１：リードリクエストＲｑＲＭｎがメモリ装置Ｍ０へのリクエストの場合、カウンタＣ０ＴＲＣＤ値が０であるか（Ｃ０ＴＲＣＤ＝＝０）
条件２：リードリクエストＲｑＲＭｎがメモリ装置Ｍ１へのリクエストの場合、カウンタＣ１ＴＲＣＤ値が０であるか（Ｃ１ＴＲＣＤ＝＝０）
条件３：リードリクエストＲｑＲＭｎがメモリ装置Ｍ２へのリクエストの場合、カウンタＣ２ＴＲＣＤ値が０であるか（Ｃ２ＴＲＣＤ＝＝０）。
【０２７７】
条件１から３のいずれかも満たさない場合は、リクエストを出力することができないため、リクエスト出力回路ＲＱＯＵＴはリードリクエストＲｑＲＭｎの発行を１クロックサイクル延期する（Ｓｔｅｐ７）。リードリクエストＲｑＲＭｎの発行を１クロックサイクル延期したことによって、すべてのカウンタＣＴ０ＲＣＤ、ＣＴ１ＲＣＤ、ＣＴ２ＲＣＤの値が１つ減る。条件１から３のいずれか満たした場合、ＳＴＥＰ３へ進む。
【０２７８】
Ｓｔｅｐ３ではリクエスト出力回路ＲＱＯＵＴは、以下の条件４から６をチェックする。
条件４：レジスタＮｘＤｓ値とカウンタＤ０Ｓ値とカウンタＤ０Ｅ値の間に存在するか（Ｄ０Ｓ値≦ＮｘＤｓ値＜Ｄ０Ｅ値）
条件５：レジスタＮｘＤｓ値はカウンタＤ１Ｓ値とカウンタＤ１Ｅ値の間に存在するか（Ｄ１Ｓ値≦ＮｘＤｓ値＜Ｄ１Ｅ値）
条件６：レジスタＮｘＤｓ値はカウンタＤ２Ｓ値とカウンタＤ２Ｅ値の間に存在するか（Ｄ２Ｓ値≦ＮｘＤｓ値＜Ｄ２Ｅ値）。
【０２７９】
条件４から６のいずれかを満たした場合、レスポンスＲｓＲＭｎは、すでに発行されているリクエストに対するレスポンスの時間帯とこれから発行するリクエストに対するレスポンスの開始時間位置が重なるため、リクエストを発行してしまうと、すでに発行されているリクエストに対するレスポンスのため、これから発行するリクエストに対するレスポンスがメモリ装置のレスポンスキューＲｓＱｏで待たされてしまい、期待するレイテンシでレスポンスすることができない。そこで、リクエスト出力回路ＲＱＯＵＴはリードリクエストＲｑＲＭｎの発行を１クロックサイクル延期する（Ｓｔｅｐ８）。リードリクエストＲｑＲＭｎの発行を１クロックサイクル延期したことによって、すべてのカウンタＤ０Ｓ、Ｄ０Ｅ、Ｄ１Ｓ、Ｄ１Ｅ、Ｄ２Ｓ、Ｄ２Ｅの値が１つ減ることとなる。
【０２８０】
条件４から６のいずれも満たさない場合、リクエスト出力回路ＲＱＯＵＴは、以下の条件７から９をチェックする（Ｓｔｅｐ４）。
条件７：レジスタＮｘＤｅ値はカウンタＤ０Ｓ値とカウンタＤ０Ｅ値の間に存在するか（Ｄ０Ｓ値−１≦ＮｘＤｅ値≦Ｄ０Ｅ値）
条件８：レジスタＮｘＤｅ値はカウンタＤ１Ｓ値とカウンタＤ１Ｅ値の間に存在するか（Ｄ１Ｓ値−１≦ＮｘＤｅ値≦Ｄ１Ｅ値）
条件９：レジスタＮｘＤｅ値はカウンタＤ２Ｓ値とカウンタＤ２Ｅ値の間に存在するか（Ｄ２Ｓ値−１≦ＮｘＤｅ値≦Ｄ２Ｅ値）。
【０２８１】
条件７から９のいずれも満たさない場合、レスポンスＲｓＲＭｎは、すでに発行されているリクエストに対するレスポンスと重なる時間帯が存在しないため、リクエスト出力回路ＲＱＯＵＴはリードリクエストＲｑＲＭｎを発行する（Ｓｔｅｐ６）。
【０２８２】
条件７から９のいずれかを満たした場合、レスポンスＲｓＲＭｎは、すでに発行されているリクエストに対するレスポンスと重なる時間帯が存在する（具体的にはこれから発行するリクエストに対するレスポンスが先に開始され、その途中に先に発行したリクエストに対するレスポンスが開始される状態となる。）ため、次にリクエスト出力回路ＲＱＯＵＴは以下の条件１０から１２をチェックする（Ｓｔｅｐ５）。つまり、レスポンスＲｓＲＭｎの時間帯と、すでに発行されたリクエストに対するレスポンスの時間帯が重なる時間幅が、ＤＯＶＬＰ値以下かどうかのチェックを行う。
条件１０：レスポンスＲｓＲＭｎがメモリ装置Ｍ０のレスポンスの場合、
ＤＯＶＬＰ値  ≦  時間幅ＲＳＯＬＰ値＝（レジスタＮｘＤｅ値＋１）−（Ｄ１Ｓ値−１）
ＤＯＶＬＰ値  ≦  時間幅ＲＳＯＬＰ値＝（レジスタＮｘＤｅ値＋１）−（Ｄ２Ｓ値−１）
条件１１：レスポンスＲｓＲＭｎがメモリ装置Ｍ１のレスポンスの場合
ＤＯＶＬＰ値  ≦  時間幅ＲＳＯＬＰ値＝（レジスタＮｘＤｅ値＋１）−（Ｄ０Ｓ値−１）
ＤＯＶＬＰ値  ≦  時間幅ＲＳＯＬＰ値＝（レジスタＮｘＤｅ値＋１）−（Ｄ２Ｓ値−１）
条件１２：レスポンスＲｓＲＭｎがメモリ装置Ｍ２のレスポンスの場合
ＤＯＶＬＰ値  ≦  時間幅ＲＳＯＬＰ値＝（レジスタＮｘＤｅ値＋１）−（Ｄ０Ｓ値−１）
ＤＯＶＬＰ値  ≦  時間幅ＲＳＯＬＰ値＝（レジスタＮｘＤｅ値＋１）−（Ｄ１Ｓ値−１）。
【０２８３】
条件１０から１２のいずれも満たさない場合、レスポンスＲｓＲＭｎの時間帯と、すでに発行されたリクエストに対するレスポンスの時間帯が重なる時間幅ＲＳＯＬＰ値がＤＯＶＬＰ値より大きく許容できない時間幅であるため、リクエスト出力回路ＲＱＯＵＴはリードリクエストＲｑＲＭｎの発行を１クロックサイクル延期する（Ｓｔｅｐ８）。リードリクエストＲｑＲＭｎの発行を１クロックサイクル延期したことによって、すべてのカウンタＤ０Ｓ、Ｄ０Ｅ、Ｄ１Ｓ、Ｄ１Ｅ、Ｄ２Ｓ、Ｄ２Ｅの値が１つ減ることとなる。
【０２８４】
条件１０から１２のいずれかを満たす場合、レスポンスＲｓＲＭｎの時間帯と、すでに発行されたリクエストに対するレスポンスの時間帯が重なる時間幅ＲＳＯＬＰ値がレスポンス重複許容時間ＤＯＶＬＰ値以下で、許容できる時間幅のため、リクエスト出力回路ＲＱＯＵＴはリードリクエストＲｑＲＭｎを発行する。さらに、リクエスト出力回路ＲＱＯＵＴは、リードリクエストＲｑＲＭｎに対するレスポンスＲｓＲＭｎによって、すでに発行されたリクエストに対するレスポンスの時間帯が時間幅ＲＳＯＬＰ分だけ時間的に後ろへシフトすることがわかるため、リードリクエストＲｑＲＭｎの発行と同時に、シフトするレスポンスに対する先頭時間位置（Ｄ０Ｓ値、Ｄ１Ｓ値およびＤ２Ｓ値のいずれか）と最後尾時間位置（Ｄ０Ｅ値、Ｄ１Ｅ値およびＤ２Ｅ値のいずれか）を更新する（Ｓｔｅｐ６）。Ｓｔｅｐ６での先頭時間位置と最後尾時間位置の更新方法は以下に示す。
シフトするレスポンスがメモリ装置Ｍ０のレスポンスである場合
カウンタＤ０Ｓ値＝カウンタＤ０Ｓ値−１＋時間幅ＲＳＯＬＰ値、
カウンタＤ０Ｅ値＝カウンタＤ０Ｅ値−１＋時間幅ＲＳＯＬＰ値、
シフトするレスポンスがメモリ装置Ｍ１のレスポンスである場合
カウンタＤ１Ｓ値＝カウンタＤ１Ｓ値−１＋時間幅ＲＳＯＬＰ値、
カウンタＤ１Ｅ値＝カウンタＤ１Ｅ値−１＋時間幅ＲＳＯＬＰ値、
シフトするレスポンスがメモリ装置Ｍ２のレスポンスである場合
カウンタＤ２Ｓ値＝カウンタＤ２Ｓ値−１＋時間幅ＲＳＯＬＰ値、
カウンタＤ２Ｅ値＝カウンタＤ２Ｅ値−１＋時間幅ＲＳＯＬＰ値。
【０２８５】
リクエスト出力回路ＲＱＯＵＴは、常に、時間的に後ろへシフトするレスポンスに対する先頭時間位置と最後尾時間位置を更新するため、レスポンスの時間帯が重なる時間幅ＲＳＯＬＰ値はレスポンス重複許容時間ＤＯＶＬＰ値より大きくはならない。つまり、リクエスト出力回路ＲＱＯＵＴはレスポンスのレイテンシのばらつきをレスポンス重複許容時間ＤＯＶＬＰ値以内で抑えながら、データ転送レートを最大限に引き出すようにリクエストをメモリ装置へ発行する。なお、レイテンシ制御フラグＦＣＦＬＧが０（レイテンシ非制御モード）の場合は、図２３のＳＴＥＰ１のみを実行し、条件を満たした場合は直ぐにリクエストを発行する。
【０２８６】
Ｓｔｅｐ０での結果、リクエスト保持回路ＮｘＰＣＫに保持されているリクエストがライトリクエストＲｑＷＭｎであれば、以下の条件１から３をチェックする（Ｓｔｅｐ９）。
条件１：ライトリクエストＲｑＷＭｎがメモリ装置Ｍ０へのリクエストの場合、カウンタＣ０ＴＲＣＤ値が０であるか（Ｃ０ＴＲＣＤ＝＝０）
条件２：ライトリクエストＲｑＷＭｎがメモリ装置Ｍ１へのリクエストの場合、カウンタＣ１ＴＲＣＤ値が０であるか（Ｃ１ＴＲＣＤ＝＝０）
条件３：ライトリクエストＲｑＷＭｎがメモリ装置Ｍ２へのリクエストの場合、カウンタＣ２ＴＲＣＤ値が０であるか（Ｃ２ＴＲＣＤ＝＝０）。
【０２８７】
条件１から３のいずれかも満たさない場合は、リクエストを出力することができないため、リクエスト出力回路ＲＱＯＵＴはライトリクエストＲｑＷＭｎの発行を１クロックサイクル延期する（Ｓｔｅｐ１１）。ライトリクエストＲｑＷＭｎの発行を１クロックサイクル延期したことによって、すべてのカウンタＣＴ０ＲＣＤ、ＣＴ１ＲＣＤ、ＣＴ２ＲＣＤの値が１つ減る。条件１から３のいずれか満たした場合、リクエスト出力回路ＲＱＯＵＴはライトリクエストＲｑＷＭｎを発行する（Ｓｔｅｐ１０）。
【０２８８】
図２４はメモリ制御回路ＤＣＭＣのレイテンシレジスタＬＴＲＥＧ内のメモリ装置Ｍ０のレイテンシＬａｔＱｕｅ値を８へ、レイテンシＬａｔＢａｎｋ値を１２へ、メモリ装置Ｍ１のレイテンシＬａｔＱｕｅ値を２０へ、レイテンシＬａｔＢａｎｋ値を２４へ、メモリ装置Ｍ２のレイテンシＬａｔＱｕｅ値を８へ、レイテンシＬａｔＢａｎｋ値を３２へ設定し、メモリ装置Ｍ０に関するタイミングレジスタＭ０ＴＲＥＧのｔｍ０ＲＣＤ値を８へ、メモリ装置Ｍ１に関するタイミングレジスタＭ１ＴＲＥＧのｔｍ１ＲＣＤ値を８へ設定し、メモリ装置Ｍ２に関するタイミングレジスタＭ２ＴＲＥＧのｔｍ２ＲＣＤ値を４０００へ設定した場合の、メモリ装置Ｍ０およびメモリ装置Ｍ１からのデータの読み出し動作と、メモリ装置Ｍ０へのデータの書き込み動作に関する動作波形の一例を示す。
【０２８９】
また、メモリ制御回路ＤＣＭＣはクロックＣＬＫに同期して動作しており、レイテンシ制御レジスタＬＣＲＥＧ内の、レイテンシ制御フラグＬＣＦＬＧを１へ、レスポンス重複許容時間幅ＤＯＶＬＰを０へ設定した場合の動作波形の一例を示す。
【０２９０】
レスポンス重複許容時間幅ＤＯＶＬＰは、すでにリクエスト信号ＲｑＭｕｘ０へ発行している例えばメモリ装置Ｍ０へのリクエストＡに対するレスポンスＡの先頭時間位置から、この場合メモリ装置Ｍ０以外への次に発行するメモリ装置へのリクエストＢに対するレスポンスＢの時間帯がレスポンスＡの時間帯に重なる時間帯があったとき、その重なる時間帯の許容できる時間幅を示している。
【０２９１】
レスポンス重複時間幅ＤＯＶＬＰが０の場合、メモリ制御回路ＤＣＭＣは、すでにリクエスト信号ＲｑＭｕｘ０へ発行している、いずれかのメモリ装置（メモリ装置Ｍ０、Ｍ１、Ｍ２のいずれか）へのリクエストＡに対するレスポンスＡの先頭時間位置から、次に発行するメモリ装置へのリクエストＢに対するレスポンスＢの時間帯が全く重ならないように、それぞれのレスポンスを最小レイテンシに固定するようにリクエスト信号ＲｑＭｕｘ０へリクエストを出力する（レイテンシ固定モード）。
【０２９２】
また、リクエストキューＲＥＱＱ２へはリクエストＲｑＡＣＩＤ２Ｓ４、ＲｑＡＣＩＤ１Ｓ５、ＲｑＲ４ＩＤ２Ｓ６、ＲｑＲＲ４ＩＤ１Ｓ７、ＲｑＷ８ＩＤ１Ｓ８が保持されている。
【０２９３】
リクエストＲｑＡＣＩＤ２Ｓ４はメモリ装置Ｍ１へのバンクアクティブ命令、リクエストＲｑＡＣＩＤ１Ｓ５はメモリ装置Ｍ０へのバンクアクティブ命令、リクエストＲｑＲ４ＩＤ２Ｓ６はメモリ装置Ｍ１へのリードリクエスト、リクエストＲｑＲＲ４ＩＤ１Ｓ７はメモリ装置Ｍ０へのリードリクエスト、リクエストＲｑＷ８ＩＤ１Ｓ８はメモリ装置Ｍ０へのライトリクエストである。
【０２９４】
リクエストＲｑＡＣＩＤ２Ｓ４はリクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値２、アクティブ命令ＡＣ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値４、バンクアドレスＢＫ０およびページアドレスＲＯＷ６３から構成される。
【０２９５】
リクエストＲｑＡＣＩＤ１Ｓ５はリクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値１、アクティブ命令ＡＣ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値５、バンクアドレスＢＫ０およびページアドレスＲＯＷ０から構成される。
【０２９６】
リクエストＲｑＲ４ＩＤ２Ｓ６は、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値２、リード命令ＲＤ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値６、レスポンスキュー番号ＱＵＮ値０、バンクアドレスＢＫ０およびカラムアドレスＣＯＬ３２、リードデータ長ＲＤＬ値４から構成される。
【０２９７】
リクエストＲｑＲＲ４ＩＤ１Ｓ７は、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値１、レスポンスキューリード命令ＲＲＤ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値７、レスポンスキュー番号ＲＱＮ値０、バイトアドレスＢＴＡＤＤ値０、リードデータ長ＲＤＬ値４から構成される。
【０２９８】
リクエストＲｑＷ８ＩＤ１Ｓ８は、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値１、ライト命令ＷＴ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値８、リクエスト番号ＲｅｑＮ値８、バンクアドレスＢＫ０およびカラムアドレスＣＯＬ０、ライトデータ長ＲＤＬ値８、８バイトライトデータＷＤａｔａから構成される。
【０２９９】
リクエスト出力回路ＲＱＯＵＴはリクエストキューＲＥＱＱ２へ保持されているリクエストを順に解読する。解読した結果、リクエストがリードリクエストであれば、リクエスト出力回路ＲＱＯＵＴはこのリードリクエストに対するレスポンスが、レスポンス信号ＲｓＭｕｘ０を通じて、メモリ制御回路ＤＣＭＣへ入力される際の、レスポンスの先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算する。その後、レスポンスの先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを、それぞれ、レジスタＮｘＤｓおよびレジスタＮｘＤｅへ設定する。
【０３００】
特に限定しないが、リクエストＲｑＲＲ４ＩＤ１Ｓ７対するレスポンスＲｓＲＲ４ＩＤ１Ｓ７先頭時間位置ＲＴＬＡＴは、レイテンシｍ０Ｌａｔ値＝８となり、最後尾時間位置ＲＢＬＡＴは、以下の様に表すことができる。
最後尾時間位置ＲＢＬＡＴ＝（レイテンシｍ０Ｌａｔ値）＋｛（（共通レスポンス部ＣＭＮＲＥＳＦのバイト数ＣＭＮＢＬ＋リードデータのバイト数ＲＤＢＬ）÷レスポンス信号数ＲｓＢＬ（バイト換算））−１｝。
【０３０１】
ここで、レイテンシｍ０Ｌａｔ値＝８、共通レスポンス部ＣＭＮＲＥＳＦのバイト数ＣＭＮＢＬ＝４、リードデータのバイト数ＲＤＢＬ＝４、レスポンス信号数ＲｓＢＬ＝１、のとき、最後尾時間位置ＲＢＬＡＴ＝８＋｛（（４＋４）÷１）−１｝＝１５となる。よって、リクエストＲｑＲＲ４ＩＤ１Ｓ７の場合、レジスタＮｘＤｓには先頭時間位置ＲＴＬＡＴの値８が、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴの値１５が保存される。
【０３０２】
また、リクエストＲｑＲ４ＩＤ２Ｓ６に対するレスポンスＲｓＲ４ＩＤ２Ｓ６の先頭時間位置ＲＴＬＡＴは、レイテンシｍ１Ｌａｔ値＝２４となり、最後尾時間位置ＲＢＬＡＴは、レスポンスＲｓＲ４ＩＤ２Ｓ６の、レイテンシｍ１Ｌａｔ値＝２４、共通レスポンス部ＣＭＮＲＥＳＦのバイト数ＣＭＮＢＬ＝４、リードデータのバイト数ＲＤＢＬ＝４、レスポンス信号数ＲｓＢＬ＝１、のとき、最後尾時間位置ＲＢＬＡＴ＝２４＋｛（（４＋４）÷１）−１｝＝３１となる。よって、リクエストＲｑＲ４ＩＤ２Ｓ６の場合、レジスタＮｘＤｓには先頭時間位置ＲＴＬＡＴの値２４が、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴの値３１が保存される。
【０３０３】
リクエストＲｑＡＣＩＤ１Ｓ５を転送する直前にカウンタＣ０ＴＲＣＤはｔｍ０ＲＣＤ値８へ設定され、カウンタＣ０ＴＲＣＤは、クロックＣＬＫに同期し、その値を１つずつ減らし、カウンタＣ０ＴＲＣＤの値が０になった場合、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ０のメモリ回路Ｍｅｍ０へのリードおよびライト命令を含んだリクエストを転送することができる。
【０３０４】
リクエストＲｑＡＣＩＤ２Ｓ４を転送する直前にカウンタＣ１ＴＲＣＤはｔｍ１ＲＣＤ値８へ設定され、カウンタＣ１ＴＲＣＤは、クロックＣＬＫに同期し、その値を１つずつ減らし、カウンタＣ１ＴＲＣＤの値が０になった場合、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ１のメモリ回路Ｍｅｍ１へのリードおよびライト命令を含んだリクエストを転送することができる。
【０３０５】
メモリ装置Ｍ２へバンクアクティブ命令ＡＣを含むリクエストを転送する直前にカウンタＣ２ＴＲＣＤはｔｍ２ＲＣＤ値１０００へ設定され、カウンタＣ１ＴＲＣＤは、クロックＣＬＫに同期し、その値を１つずつ減らし、カウンタＣ１ＴＲＣＤの値が０になった場合、リクエスト出力回路ＲＱＯＵＴは、メモリ装置Ｍ２のメモリ回路Ｍｅｍ２へのリードおよびライト命令を含んだリクエストを転送することができる。
【０３０６】
リクエスト出力回路ＲＱＯＵＴからリクエストが出力された際のメモリモジューメモリモジュールＭＥＭの動作を説明する。
【０３０７】
リクエスト出力回路ＲＱＯＵＴからリクエストＲｑＡＣＩＤ２Ｓ４が出力されると、メモリ装置Ｍ０はリクエストトＲｑＡＣＩＤ２Ｓ４に含まれるＩＤ値２と自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較し、不一致によって、リクエストＲｑＡＣＩＤ２Ｓ４をメモリ装置Ｍ１へ転送する。メモリ装置Ｍ１はリクエストＲｑＡＣＩＤ２Ｓ４に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ１は、リクエストＲｑＡＣＩＤ２Ｓ４に含まれるバンクアクティブ命令ＡＣ、バンクアドレスＢＫ０、ページアドレスＲＯＷ６３を利用し、メモリ回路ＮＶ１ＢＫ０内のページアドレス６３に接続されているメモリセルを活性化し、１ｋＢｙｔｅ分のデータをデータバッファＤａｔａＬａｔへ転送する。
【０３０８】
次に、リクエスト出力回路ＲＱＯＵＴからリクエストＲｑＡＣＩＤ１Ｓ５が出力されると、メモリ装置Ｍ０はリクエストＲｑＡＣＩＤ１Ｓ５に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ０はリクエストＲｑＡＣＩＤ１Ｓ５に含まれるバンクアクティブ命令ＡＣ、バンクアドレスＢＫ０、ページアドレスＲＯＷ０を利用し、メモリ回路ＭＢａｎｋ０内のページアドレス０に接続されているメモリセルを活性化し、１ｋＢｙｔｅ分のデータをセンスアンプＳｅｎｓｅＡｍｐへ転送する。
【０３０９】
リクエスト出力回路ＲＱＯＵＴは、リクエスト信号ＲｑＭｕｘ０リクエストＲｑＡＣＩＤ１Ｓ５を出力した後、ＣＬＫの時間位置１１において、リクエストキューＲＥＱＱ２へ保持されているリクエストＲｑＲ４ＩＤ２Ｓ６をリクエスト保持回路ＮｘＰＣＫへ取り込み、リクエストＲｑＲ４ＩＤ２Ｓ６がリードリクエストであると解読した結果（図２３のＳＴＥＰ０の処理）、次のＣＬＫの時間位置１２において、リクエストＲｑＲ４ＩＤ２Ｓ６に対応するレスポンスＲｓＲ４ＩＤ２Ｓ６の先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、レジスタＮｘＤｓへ先頭時間位置ＲＴＬＡＴ値２４を、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴ値３１を設定する（図２３のＳＴＥＰ１の処理）。
【０３１０】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｑＲ４ＩＤ２Ｓ６を出力するために、メモリ装置Ｍ１へのリクエストＲｑＡＣＩＤ１Ｓ５の出力が完了する直前（ＣＬＫの時間位置１７）で、カウンタＣ１ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、さらにレジスタＮｘＤｓ値２４、レジスタＮｘＤｅ値３１、カウンタＤ０Ｓ値０、カウンタＤ０Ｅ値０、カウンタＤ１Ｓ値０、カウンタＤ１Ｅ値０と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値０を比較し、リクエストＲｑＲ４ＩＤ２Ｓ６に対するレスポンスＲｓＲ４ＩＤ２Ｓ６には時間的に重複する他のレスポンスが存在しないことを確認する（図２３のＳＴＥＰ３，４，５の処理）。そして、ＣＬＫの時間位置１８でリクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲ４ＩＤ２Ｓ６を出力し、カウンタＤ１ＳおよびＤ１Ｅへ、レジスタＮｘＤｓの値２４およびレジスタＮｘＤｅ値３１を設定する（図２３のＳＴＥＰ６の処理）。
【０３１１】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲ４ＩＤ２Ｓ６を出力した後、ＣＬＫの時間位置１９において、リクエストキューＲＥＱＱ２へ保持されているリクエストＲｑＲＲ４ＩＤ１Ｓ７をリクエスト保持回路ＮｘＰＣＫへ取り込み、リクエストＲｑＲＲ４ＩＤ１Ｓ７がリードリクエストであると解読した結果（図２３のＳＴＥＰ０の処理）、次のＣＬＫの時間位置２０において、リクエストＲｑＲＲ４ＩＤ１Ｓ７に対応するレスポンスＲｓＲＲ４ＩＤ１Ｓ７の先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、レジスタＮｘＤｓへ先頭時間位置ＲＴＬＡＴ値８を、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴ値１５を設定する。
【０３１２】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｑＲＲ４ＩＤ１Ｓ７を出力するために、ＣＬＫの時間位置２５で、カウンタＣ０ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、さらにレジスタＮｘＤｓ値８、レジスタＮｘＤｅ値１５、カウンタＤ０Ｓ値０、カウンタＤ０Ｅ値０、カウンタＤ１Ｓ値１７、カウンタＤ１Ｅ値２４と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値０を比較し、リクエストＲｑＲＲ４ＩＤ１Ｓ７に対するレスポンスＲｓＲＲ４ＩＤ１Ｓ７には時間的に重複する他のレスポンスが存在しないことを確認する（図２３のＳＴＥＰ３，４，５の処理）。
【０３１３】
次のＣＬＫの時間位置２６でリクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲＲ４ＩＤ１Ｓ７を出力し、カウンタＤ０ＳおよびＤ０Ｅへ、レジスタＮｘＤｓの値８およびレジスタＮｘＤｅ値２５を設定する（図２３のＳＴＥＰ６の処理）。
【０３１４】
リクエスト出力回路ＲＱＯＵＴは、リクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲ４ＩＤ１Ｓ７を出力した後、ＣＬＫの時間位置２７において、リクエストキューＲＥＱＱ２へ保持されているリクエストＲｑＷ８ＩＤ１Ｓ８をリクエスト保持回路ＮｘＰＣＫへ取り込み、次のサイクル（時間位置２８）において、リクエストＲｑＷ８ＩＤ１Ｓ８がライトリクエストであると解読した結果（図２３のＳＴＥＰ０）、ＣＬＫの時間位置３３で、カウンタＣ０ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、ＣＬＫの時間位置３４でリクエスト信号ＲｑＭｕｘ０から８バイトのライトデータＷＤａｔａを含むリクエストＲｑＷ８ＩＤ１Ｓ８を出力する（図２３のＳＴＥＰ１０の処理）。
【０３１５】
つぎにレスポンスの動作について説明する。メモリ装置Ｍ０は、リクエストＲｑＲ４ＩＤ２Ｓ６を受け取り、このリクエストＲｑＲ４ＩＤ２Ｓ６に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する。両者は一致していないので、メモリ装置Ｍ０はリクエストＲｑＲ４ＩＤ２Ｓ６をメモリ装置Ｍ１へ送信する。
【０３１６】
メモリ装置Ｍ１は、リクエストＲｑＲ４ＩＤ２Ｓ６を受け取り、このリクエストＲｑＲ４ＩＤ２Ｓ５に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ１はリクエストＲｑＲ４ＩＤ２Ｓ６に含まれるリード命令ＲＤ、バンクアドレスＢＫ０およびカラムアドレスＣＯＬ３２、リードデータ長ＲＤＬ値バイトアドレスＢＴＡＤＤ値０、リードデータ長ＲＤＬ値４を利用し、メモリ回路Ｍｅｍ２のメモリバンクＮＶ２Ｂ０のデータバッファＤａｔａＬａｔから、カラムアドレス３２を開始アドレスとして、４バイト分のデータを読み出す。
【０３１７】
読み出された４バイト分のデータへは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、４バイトデータのリード命令ＲＤ４、マスター番号ＭＩＤ値３、リードデータ長ＲＤＬ値４、レスポンス番号ＲｅｓＮ値６（リクエスト番号ＲｅｑＮ値６と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されたレスポンスＲｓＲ４ＩＤ２Ｓ６が生成される。その後、レスポンスＲｓＲ４ＩＤ２Ｓ６はレスポンスキュー番号ＱＵＮ値０で指定されたレスポンスキューＲｓＱｏ内のレスポンスキュー番号０のレスポンスキューへ転送され、レスポンス信号ＲｓＭｕｘ１からメモリ装置Ｍ０へ送信される。
【０３１８】
レスポンスＲｓＲ４ＩＤ２Ｓ６はメモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへ格納され、レスポンス信号ＲｓＭｕｘ０を介してメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ入力される。この際の、レスポンスレスポンスＲｑＲ４ＩＤ２Ｓ６のレイテンシは２４クロックサイクルとなる。
【０３１９】
メモリ装置Ｍ０は、リクエストＲｑＲＲ４ＩＤ１Ｓ７を受け取り、このリクエストＲｑＲＲ４ＩＤ１Ｓ７に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ０はリクエストＲｑＲＲ４ＩＤ１Ｓ７に含まれるレスポンスキューリード命令ＲＲＤ、レスポンスキュー番号ＲＱＮ値０、バイトアドレスＢＴＡＤＤ値０、リードデータ長ＲＤＬ値４を利用し、メモリ装置Ｍ０のレスポンスキューＲｓＱｏ内のレスポンスキュー番号ＱＵＮ値０で指定されたレスポンスキュー番号０のレスポンスキューから、バイトアドレスＢＴＡＤＤ値０を開始アドレスとして４バイト分のデータを読み出す。
【０３２０】
この際の、直接レスポンスキューＲｓＱｏからデータを読み出すため、レスポンスＲｓＲＲ４ＩＤ１Ｓ７のレイテンシは８クロックサイクルとなる。
【０３２１】
このように、各メモリ装置へのリクエストに対するレスポンスの時間帯を管理し、リクエストを発行することにより、低レイテンシを実現し且つ高速データ転送レートも達成できる。また、リクエストの入力順序に関わらず、早く読み出せるデータは、読み出しが遅いデータを待つことなく、すぐに読み出すことができるため、高速化が可能となる。さらに、リクエストインターフェース回路ＲｅＩＦとレスポンスインターフェース回路は独立に動作可能なため、データの読み出し動作と書込み動作を同時に実行でき、データ転送性能を向上させることができる。
【０３２２】
上記では、メモリ装置Ｍ０でのデータの読み出し及び書込みについて説明したが、他のメモリ装置Ｍ１及びＭ２においても同様の動作が実行できることは言うまでもない。さらに、それぞれのメモリ装置においてリクエストインターフェース回路ＲｅＩＦとレスポンスインターフェース回路は独立に動作可能なため、異なるメモリ装置へのデータ読み出し及び書込みリクエストが生じた場合でも、それぞれのリクエストを独立に並列に処理でき、データ転送性能を向上できることは言うまでもない。
【０３２３】
図２５はレイテンシ制御レジスタＬＴＣＲＥＧ内の、レイテンシ制御フラグＬＣＦＬＧを１へ、レスポンス重複許容時間幅ＤＯＶＬＰを０へ設定した場合（レイテンシ固定モード）の、メモリ制御回路ＤＣＭＣのメモリ装置Ｍ０およびメモリ装置Ｍ１からのデータの読み出し動作の動作波形の一例を示す。
【０３２４】
また、リクエストキューＲＥＱＱ２へはリクエストＲｑＲ４ＩＤ１Ｓ４、ＲｑＲ４ＩＤ２Ｓ５、ＲｑＲ４ＩＤ１Ｓ６が保持されている。
【０３２５】
リクエストＲｑＲ４ＩＤ１Ｓ４、及び、リクエストＲｑＲ４ＩＤ１Ｓ６は、メモリ装置Ｍ０への４バイトデータのリードリクエストであり、リクエストＲｑＲ４ＩＤ２Ｓ５は、メモリ装置Ｍ１への４バイトデータのリードリクエストである。
【０３２６】
リクエストＲｑＲ４ＩＤ１Ｓ４は、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値１、リード命令ＲＤ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値４、レスポンスキュー番号ＱＵＮ値０、バンクアドレスＢＫ０およびカラムアドレスＣＯＬ３２、リードデータ長ＲＤＬ値４から構成される。
【０３２７】
リクエストＲｑＲ４ＩＤ２Ｓ５は、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値２、リード命令ＲＤ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値５、レスポンスキュー番号ＱＵＮ値０、バンクアドレスＢＫ０およびカラムアドレスＣＯＬ３２、リードデータ長ＲＤＬ値４から構成される。
【０３２８】
リクエストＲｑＲ４ＩＤ１Ｓ６は、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値１、リード命令ＲＤ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値５、レスポンスキュー番号ＱＵＮ値０、バンクアドレスＢＫ０およびカラムアドレスＣＯＬ６４、リードデータ長ＲＤＬ値４から構成される。
【０３２９】
リクエスト出力回路ＲＱＯＵＴはリクエストキューＲＥＱＱ２へ保持されているリクエストを順に解読する。解読した結果、リクエストがリードリクエストであれば、さらに、リクエスト出力回路ＲＱＯＵＴはこのリードリクエストに対するレスポンスが、レスポンス信号ＲｓＭｕｘ０を通じて、メモリ制御回路ＤＣＭＣへ入力される際の、レスポンスの先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算する。
【０３３０】
その後、レスポンスの先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを、それぞれ、レジスタＮｘＤｓおよびレジスタＮｘＤｅへ設定する。
【０３３１】
図２５の例においては、リクエストＲｑＲ４ＩＤ１Ｓ４、ＲｑＲ４ＩＤ１Ｓ６およびＲｑＲ４ＩＤ１Ｓ７に対するレスポンスＲｓＲ４ＩＤ１Ｓ４、ＲｓＲ４ＩＤ１Ｓ６およびＲｓＲ４ＩＤ１Ｓ７の先頭時間位置ＲＴＬＡＴは、レイテンシｍ０Ｌａｔ値＝１２となり、最後尾時間位置ＲＢＬＡＴは、レイテンシｍ０Ｌａｔ値＝１２、共通レスポンス部ＣＭＮＲＥＳＦのバイト数ＣＭＮＢＬ＝４、リードデータのバイト数ＲＤＢＬ＝４、レスポンス信号数ＲｓＢＬ＝１、なので、最後尾時間位置ＲＢＬＡＴ＝１２＋｛（（４＋４）÷１）−１｝＝１９となる。よって、リクエストＲｑＲ４ＩＤ１Ｓ４、及び、ＲｑＲ４ＩＤ１Ｓ６の場合、レジスタＮｘＤｓには先頭時間位置ＲＴＬＡＴの値１２が、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴの値１９が保存される。
【０３３２】
また、リクエストＲｑＲ４ＩＤ２Ｓ５に対するレスポンスＲｓＲ４ＩＤ２Ｓ５の先頭時間位置ＲＴＬＡＴは、レイテンシｍ１Ｌａｔ値＝２４となり、最後尾時間位置ＲＢＬＡＴは、レイテンシｍ１Ｌａｔ値＝２４、共通レスポンス部ＣＭＮＲＥＳＦのバイト数ＣＭＮＢＬ＝４、リードデータのバイト数ＲＤＢＬ＝４、レスポンス信号数ＲｓＢＬ＝１、なので、最後尾時間位置ＲＢＬＡＴ＝２４＋｛（（４＋４）÷１）−１｝＝３１となる。よって、リクエストＲｑＲ４ＩＤ２Ｓ５の場合、レジスタＮｘＤｓには先頭時間位置ＲＴＬＡＴの値２４が、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴの値３１が保存される。
【０３３３】
リクエスト出力回路ＲＱＯＵＴが、メモリ装置Ｍ０への４バイトデータのリード命令ＲＤを含むリクエストＲｑＲ４ＩＤ１Ｓ４が出力される際の動作を説明する。
【０３３４】
リクエスト出力回路ＲＱＯＵＴは、すでに、メモリ装置Ｍ０へのリクエストＲｑＲ４ＩＤ１Ｓ４をリクエスト保持回路ＮｘＰＣＫへ取り込んでおり、リクエストＲｑＲ４ＩＤ１Ｓ４がリードリクエストであると解読した結果（図２３のＳＴＥＰ０の処理）、次のＣＬＫの時間位置０において、リクエストＲｑＲ４ＩＤ１Ｓ４に対応するレスポンスＲｓＲ４ＩＤ１Ｓ４の先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、レジスタＮｘＤｓへ先頭時間位置ＲＴＬＡＴ値１２を、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴ値１９を設定する（図２３のＳＴＥＰ１の処理）。
【０３３５】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｑＲ４ＩＤ１Ｓ４を出力するために、ＣＬＫの時間位置１で、カウンタＣ０ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、さらにレジスタＮｘＤｓ値１２、レジスタＮｘＤｅ値１９、カウンタＤ０Ｓ値０、カウンタＤ０Ｅ値０、カウンタＤ１Ｓ値０、カウンタＤ１Ｅ値０と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値０を比較し、リクエストＲｑＲ４ＩＤ１Ｓ４に対するレスポンスＲｓＲ４ＩＤ１Ｓ４には時間的に重複する他のレスポンスが存在しないことを確認する（図２３のＳＴＥＰ３，４，５の処理）。そして、ＣＬＫの時間位置２でリクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲ４ＩＤ１Ｓ４を出力し、カウンタＤ０ＳおよびＤ０Ｅへ、レジスタＮｘＤｓの値１２およびレジスタＮｘＤｅ値１９を設定する（図２３のＳＴＥＰ６の処理）。
【０３３６】
次に、リクエスト出力回路ＲＱＯＵＴから、リクエストＲｑＲ４ＩＤ１Ｓ４に続いて、メモリ装置Ｍ１へのリード命令を含んだリクエストＲｑＲ４ＩＤ２Ｓ５が出力される際の動作を説明する。
【０３３７】
リクエスト出力回路ＲＱＯＵＴは、リクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲ４ＩＤ１Ｓ４を出力した後、ＣＬＫの時間位置３において、リクエストキューＲＥＱＱ２へ保持されているリクエストＲｑＲ４ＩＤ２Ｓ５を取り込み、リクエストＲｑＲ４ＩＤ２Ｓ５がリードリクエストであると解読した結果（図２３のＳＴＥＰ０の処理）、次のＣＬＫの時間位置４において、リクエストＲｑＲ４ＩＤ２Ｓ５に対応するレスポンスＲｓＲ４ＩＤ２Ｓ５の先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、レジスタＮｘＤｓへ先頭時間位置ＲＴＬＡＴ値２４を、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴ値３１を設定する（図２３のＳＴＥＰ１の処理）。
【０３３８】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｑＲ４ＩＤ２Ｓ５を出力するために、ＣＬＫの時間位置９で、カウンタＣ１ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、さらにレジスタＮｘＤｓ値２４、レジスタＮｘＤｅ値３１、カウンタＤ０Ｓ値５、カウンタＤ０Ｅ値１２、カウンタＤ１Ｓ値０、カウンタＤ１Ｅ値０と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値０を比較し、リクエストＲｑＲ４ＩＤ２Ｓ５に対するレスポンスＲｓＲ４ＩＤ２Ｓ５には時間的に重複する他のレスポンスが存在しないことを確認する（図２３のＳＴＥＰ３，４，５の処理）。
【０３３９】
そして、ＣＬＫの時間位置１０でリクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲ４ＩＤ２Ｓ５を出力し、カウンタＤ１ＳおよびＤ１Ｅへ、レジスタＮｘＤｓの値２４およびレジスタＮｘＤｅ値３１を設定する（図２３のＳＴＥＰ６の処理）。
【０３４０】
次にリクエスト出力回路ＲＱＯＵＴが、リクエストＲｑＲ４ＩＤ１Ｓ５に続いて、メモリ装置Ｍ０へのリード命令を含んだリクエストＲｑＲ４ＩＤ１Ｓ６が出力される際の動作を説明する。
【０３４１】
リクエスト出力回路ＲＱＯＵＴは、ＣＬＫの時間位置１１において、リクエストキューＲＥＱＱ２へ保持されているリクエストＲｑＲ４ＩＤ１Ｓ６を取り込み、リクエストＲｑＲ４ＩＤ１Ｓ６がリードリクエストであると解読した結果（図２３のＳＴＥＰ０の処理）、次のＣＬＫの時間位置１２において、リクエストＲｑＲ４ＩＤ１Ｓ６に対応するレスポンスＲｓＲ４ＩＤ１Ｓ６の先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、レジスタＮｘＤｓへ先頭時間位置ＲＴＬＡＴ値１２を、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴ値１９を設定する（図２３のＳＴＥＰ１の処理）。
【０３４２】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｑＲ４ＩＤ１Ｓ６を出力するために、ＣＬＫの時間位置１７で、カウンタＣ０ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、さらにレジスタＮｘＤｓ値１２、レジスタＮｘＤｅ値１９、カウンタＤ０Ｓ値０、カウンタＤ０Ｅ値４、カウンタＤ１Ｓ値１７、カウンタＤ１Ｅ値２４と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値０を比較し、リクエストＲｑＲ４ＩＤ１Ｓ６に対するレスポンスＲｓＲ４ＩＤ１Ｓ６は他のレスポンスＲｓＲ４ＩＤ２Ｓ５と時間的に重複することを確認する（図２３のＳＴＥＰ３，４，５の処理）。そのため、この場合リクエストＲｑＲ４ＩＤ１Ｓ６を出力することができない（図２３のＳＴＥＰ８の処理）。その後、リクエスト出力回路は、ＣＬＫの時間位置２８まで図２３のＳＴＥＰ３、ＳＴＥＰ４、ＳＴＥＰ５、ＳＴＥＰ８を繰り返し行う。
【０３４３】
ＣＬＫの時間位置２９で、さらにレジスタＮｘＤｓ値１２、レジスタＮｘＤｅ値１９、カウンタＤ０Ｓ値０、カウンタＤ０Ｅ値０、カウンタＤ１Ｓ値５、カウンタＤ１Ｅ値１２と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値０を比較し、リクエストＲｑＲ４ＩＤ１Ｓ６に対するレスポンスＲｓＲ４ＩＤ１Ｓ６は他のレスポンスと時間的に重複しないことを確認する（図２３のＳＴＥＰ３，４，５の処理）。そして、次のＣＬＫの時間位置３０でリクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲ４ＩＤ１Ｓ６を出力し、カウンタＤ０ＳおよびＤ０Ｅへ、レジスタＮｘＤｓの値１２およびレジスタＮｘＤｅ値１９を設定する（図２３のＳＴＥＰ６の処理）。
【０３４４】
つぎにレスポンスの動作について説明する。メモリ装置Ｍ０は、リクエストＲｑＲ４ＩＤ１Ｓ４を受け取り、このリクエストＲｑＲ４ＩＤ１Ｓ４に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ０はリクエストＲｑＲ４ＩＤ１Ｓ４に含まれるリード命令ＲＤ、バンクアドレスＢＫ０およびカラムアドレスＣＯＬ３２、リードデータ長ＲＤＬ値バイトアドレスＢＴＡＤＤ値０、リードデータ長ＲＤＬ値４を利用し、メモリ回路Ｍｅｍ０のメモリバンクＭＢａｎｋ０のセンスアンプＳｅｎｓｅＡｍｐから、カラムアドレス３２を開始アドレスとして、４バイト分のデータを読み出す。
【０３４５】
読み出された４バイト分のデータへは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値１、４バイトデータのリード命令ＲＤ４、マスター番号ＭＩＤ値３、リードデータ長ＲＤＬ値４、レスポンス番号ＲｅｓＮ値４（リクエスト番号ＲｅｑＮ値４と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されたレスポンスＲｑＲ４ＩＤ１Ｓ４が生成される。その後、レスポンスＲｓＲ４ＩＤ１Ｓ４はレスポンスキュー番号ＱＵＮ値０で指定されたレスポンスキューＲｓＱｏ内のレスポンスキュー番号０のレスポンスキューへ転送され、レスポンス信号ＲｓＭｕｘ０からメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ入力される。この際のレスポンスＲｓＲ４ＩＤ１Ｓ４のレイテンシはレイテンシｍ０Ｌａｔ値１２クロックサイクルとなる。
【０３４６】
メモリ装置Ｍ０は、リクエストＲｑＲ４ＩＤ２Ｓ５を受け取り、このリクエストＲｑＲ４ＩＤ２Ｓ５に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する。両者は一致していないので、メモリ装置Ｍ０はリクエストＲｑＲ４ＩＤ２Ｓ５をメモリ装置Ｍ１へ送信する。
【０３４７】
メモリ装置Ｍ１は、リクエストＲｑＲ４ＩＤ２Ｓ５を受け取り、このリクエストＲｑＲ４ＩＤ２Ｓ５に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２が一致したことによって、自身へのリクエストであることを確認する。
【０３４８】
次に、メモリ装置Ｍ１はリクエストＲｑＲ４ＩＤ２Ｓ５に含まれるリード命令ＲＤ、バンクアドレスＢＫ０およびカラムアドレスＣＯＬ３２、リードデータ長ＲＤＬ値バイトアドレスＢＴＡＤＤ値０、リードデータ長ＲＤＬ値４を利用し、メモリ回路Ｍｅｍ１のメモリバンクＮＶ１ＢｋのデータバッファＤａｔａＬａｔから、カラムアドレス３２を開始アドレスとして、４バイト分のデータを読み出す。
【０３４９】
読み出された４バイト分のデータへは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値２、４バイトデータのリード命令ＲＤ４、マスター番号ＭＩＤ値３、リードデータ長ＲＤＬ値４、レスポンス番号ＲｅｓＮ値５（リクエスト番号ＲｅｑＮ値５と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されたレスポンスＲｓＲ４ＩＤ２Ｓ５が生成される。その後、レスポンスＲｓＲ４ＩＤ２Ｓ５はレスポンスキュー番号ＱＵＮ値０で指定されたレスポンスキューＲｓＱｏ内のレスポンスキュー番号０のレスポンスキューへ転送され、レスポンス信号ＲｓＭｕｘ１からメモリ装置Ｍ０へ送信される。
【０３５０】
レスポンスＲｓＲ４ＩＤ２Ｓ５はメモリ装置Ｍ０のレスポンスキュー回路ＲｓＱｐへ格納され、レスポンス信号ＲｓＭｕｘ０を介してメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ入力される。この際の、レスポンスレスポンスＲｑＲ４ＩＤ１Ｓ４のレイテンシはレイテンシｍ１Ｌａｔ値２４クロックサイクルとなる。
【０３５１】
メモリ装置Ｍ０は、リクエストＲｑＲ４ＩＤ１Ｓ６を受け取り、このリクエストＲｑＲ４ＩＤ１Ｓ６に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ０はリクエストＲｑＲ４ＩＤ１Ｓ６に含まれるリード命令ＲＤ、バンクアドレスＢＫ０およびカラムアドレスＣＯＬ６４、リードデータ長ＲＤＬ値バイトアドレスＢＴＡＤＤ値０、リードデータ長ＲＤＬ値４を利用し、メモリ回路Ｍｅｍ０のメモリバンクＭＢａｎｋ０のセンスアンプＳｅｎｓｅＡｍｐから、カラムアドレス６４を開始アドレスとして、４バイト分のデータを読み出す。
【０３５２】
読み出された４バイト分のデータへは、レスポンス開始フラグＲｅｓＳｔＦｌａｇ値１、識別番号ＩＤ値１、４バイトデータのリード命令ＲＤ４、マスター番号ＭＩＤ値３、リードデータ長ＲＤＬ値４、レスポンス番号ＲｅｓＮ値６（リクエスト番号ＲｅｑＮ値６と等しい値）から構成される共通レスポンス部ＣＭＮＲＥＳＦが付加されたレスポンスＲｑＲ４ＩＤ１Ｓ４が生成される。その後、レスポンスＲｓＲ４ＩＤ１Ｓ４はレスポンスキュー番号ＱＵＮ値０で指定されたレスポンスキューＲｓＱｏ内のレスポンスキュー番号０のレスポンスキューへ転送され、レスポンス信号ＲｓＭｕｘ０からメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ入力される。この際のレスポンスＲｓＲ４ＩＤ１Ｓ６のレイテンシはレイテンシｍ０Ｌａｔ値１２クロックサイクルとなる。
【０３５３】
上記ではメモリ装置Ｍ０およびＭ１でのデータの読み出しについて説明したが、他のメモリ装置Ｍ２においても同様の動作が実行できることは言うまでもない。
【０３５４】
このように、レイテンシ制御レジスタＬＴＣＲＥＧ内のＤＯＶＬＰを０へ設定することで、メモリ制御回路ＤＣＭＣは、メモリ装置Ｍ０、Ｍ１およびＭ２からのレスポンスの最小レイテンシを守りながらもデータ転送レートを向上させることができる。
【０３５５】
図２６はレイテンシ制御レジスタＬＣＲＥＧのレイテンシ制御ＬＣＦＬＧを１へ、レスポンス重複時間幅ＤＯＶＬＰを４へ設定した場合（レイテンシ可変モード）の、メモリ制御回路ＤＣＭＣのメモリ装置Ｍ０およびメモリ装置Ｍ１からのデータの読み出し動作の動作波形の一例を示す。
【０３５６】
レスポンス重複許容時間幅ＤＯＶＬＰが４の場合、メモリ制御回路ＤＣＭＣは、すでにリクエスト信号ＲｑＭｕｘ０へ発行している、いずれかのメモリ装置（メモリ装置Ｍ０、Ｍ１、Ｍ２のいずれか）へのリクエストＡに対するレスポンスＡの先頭時間位置から、次に発行するメモリ装置へのリクエストＢに対するレスポンスＢの時間帯が４クロックサイクル以内に重複する範囲で、それぞれのレスポンスのレイテンシをできるだけ小さく、且つ高データ転送レートを実現するようにリクエスト信号ＲｑＭｕｘ０へリクエストを出力する。
【０３５７】
また、リクエストキューＲＥＱＱ２へリクエストＲｑＲ４ＩＤ１Ｓ４、ＲｑＲ４ＩＤ２Ｓ５およびＲｑＲ４ＩＤ１Ｓ６が保持されている。リクエスト出力回路ＲＱＯＵＴはリクエストキューＲＥＱＱ２へ保持されているリクエストを順に処理する。
【０３５８】
リクエストＲｑＲ４ＩＤ１Ｓ４およびリクエストＲｑＲ４ＩＤ１Ｓ６は、メモリ装置Ｍ０へのリードリクエストであり、リクエストＲｑＲ４ＩＤ２Ｓ５は、メモリ装置Ｍ１へのリードリクエストである。また、これらのリクエストは図２４で示したリクエストと同様である。
【０３５９】
リクエスト出力回路ＲＱＯＵＴの基本的な動作は、図２４と同様である。また、レジスタＮｘＤｓおよびレジスタＮｘＤｅ、カウンタＤ０Ｓ、Ｄ０Ｅ、Ｄ１Ｓ、Ｄ１Ｅ、Ｄ２ＳおよびＤ２Ｅの基本的な動作も図２４と同様である。ＤＯＶＬＰの値が４に設定したことによって、図２５と比較し、出力回路ＲＱＯＵＴからのリクエストＲｑＲ４ＩＤ１Ｓ６の出力タイミングが早まり、データ転送性能が向上する。
【０３６０】
リクエスト出力回路ＲＱＯＵＴが、メモリ装置Ｍ０へリクエストＲｑＲ４ＩＤ１Ｓ４が出力する際の動作を説明する。
【０３６１】
リクエスト出力回路ＲＱＯＵＴは、すでに、メモリ装置Ｍ０へのリクエストＲｑＲ４ＩＤ１Ｓ４をリクエスト保持回路ＮｘＰＣＫへ取り込んでおり、リクエストＲｑＲ４ＩＤ１Ｓ４がリードリクエストであると解読した結果（図２３のＳＴＥＰ０の処理）、次のＣＬＫの時間位置０において、リクエストＲｑＲ４ＩＤ１Ｓ４に対応するレスポンスＲｓＲ４ＩＤ１Ｓ４の先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、レジスタＮｘＤｓへ先頭時間位置ＲＴＬＡＴ値１２を、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴ値１９を設定する（図２３のＳＴＥＰ１の処理）。
【０３６２】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｑＲ４ＩＤ１Ｓ４を出力するために、ＣＬＫの時間位置１で、カウンタＣ０ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、さらにレジスタＮｘＤｓ値１２、レジスタＮｘＤｅ値１９、カウンタＤ０Ｓ値０、カウンタＤ０Ｅ値０、カウンタＤ１Ｓ値０、カウンタＤ１Ｅ値０と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値０を比較し、リクエストＲｑＲ４ＩＤ１Ｓ４に対するレスポンスＲｓＲ４ＩＤ１Ｓ４には時間的に重複する他のレスポンスが存在しないことを確認する（図２３のＳＴＥＰ３，４，５の処理）。
【０３６３】
そして、ＣＬＫの時間位置２でリクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲ４ＩＤ１Ｓ４を出力し、カウンタＤ０ＳおよびＤ０Ｅへ、レジスタＮｘＤｓの値１２およびレジスタＮｘＤｅ値１９を設定する（図２３のＳＴＥＰ６の処理）。
【０３６４】
次に、リクエスト出力回路ＲＱＯＵＴから、リクエストＲｑＲ４ＩＤ１Ｓ４に続いて、メモリ装置Ｍ１へのリード命令を含んだリクエストＲｑＲ４ＩＤ２Ｓ５が出力される際の動作を説明する。
【０３６５】
リクエスト出力回路ＲＱＯＵＴは、ＣＬＫの時間位置３において、リクエストキューＲＥＱＱ２へ保持されているリクエストＲｑＲ４ＩＤ２Ｓ５を取り込み、リクエストＲｑＲ４ＩＤ２Ｓ５がリードリクエストであると解読した結果（図２３のＳＴＥＰ０の処理）、次のＣＬＫの時間位置４において、リクエストＲｑＲ４ＩＤ２Ｓ５に対応するレスポンスＲｓＲ４ＩＤ２Ｓ５の先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、レジスタＮｘＤｓへ先頭時間位置ＲＴＬＡＴ値２４を、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴ値３１を設定する（図２３のＳＴＥＰ１の処理）。
【０３６６】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｑＲ４ＩＤ２Ｓ５を出力するために、ＣＬＫの時間位置９で、カウンタＣ１ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、さらにレジスタＮｘＤｓ値２４、レジスタＮｘＤｅ値３１、カウンタＤ０Ｓ値５、カウンタＤ０Ｅ値１２、カウンタＤ１Ｓ値０、カウンタＤ１Ｅ値０と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値４を比較し、リクエストＲｑＲ４ＩＤ２Ｓ５に対するレスポンスＲｓＲ４ＩＤ２Ｓ５には時間的に重複する他のレスポンスが存在しないことを確認する（図２３のＳＴＥＰ３，４，５の処理）。
【０３６７】
そして、ＣＬＫの時間位置１０でリクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲ４ＩＤ２Ｓ５を出力し、カウンタＤ１ＳおよびＤ１Ｅへ、レジスタＮｘＤｓの値２４およびレジスタＮｘＤｅ値３１を設定する（図２３のＳＴＥＰ６の処理）。
【０３６８】
次にリクエスト出力回路ＲＱＯＵＴが、リクエストＲｑＲ４ＩＤ１Ｓ５に続いて、メモリ装置Ｍ０へのリード命令を含んだリクエストＲｑＲ４ＩＤ１Ｓ６が出力される際の動作を説明する。
【０３６９】
リクエスト出力回路ＲＱＯＵＴは、ＣＬＫの時間位置１１において、リクエストキューＲＥＱＱ２へ保持されているリクエストＲｑＲ４ＩＤ１Ｓ６を取り込み、リクエストＲｑＲ４ＩＤ１Ｓ６がリードリクエストであると解読した結果（図２３のＳＴＥＰ０の処理）、次のＣＬＫの時間位置１２において、リクエストＲｑＲ４ＩＤ１Ｓ６に対応するレスポンスＲｓＲ４ＩＤ１Ｓ６の先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、レジスタＮｘＤｓへ先頭時間位置ＲＴＬＡＴ値１２を、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴ値１９を設定する（図２３のＳＴＥＰ１の処理）。
【０３７０】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｑＲ４ＩＤ１Ｓ６を出力するために、ＣＬＫの時間位置１７で、カウンタＣ０ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、さらにレジスタＮｘＤｓ値１２、レジスタＮｘＤｅ値１９、カウンタＤ０Ｓ値０、カウンタＤ０Ｅ値４、カウンタＤ１Ｓ値１７、カウンタＤ１Ｅ値２４と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値４を比較し、リクエストＲｑＲ４ＩＤ１Ｓ６に対するレスポンスＲｓＲ４ＩＤ１Ｓ６他のレスポンスＲｓＲ４ＩＤ２Ｓ５の時間帯に重複することがわかる（図２３のＳＴＥＰ３、４の処理）。この重複時間幅ＲＳＯＬＰは４｛＝（レジスタＮｘＤｅ値１９＋１）−（Ｄ１Ｓ値１７−１）｝となり、重複許容時間幅ＤＯＶＬＰ値４以下であることを確認する（図２３のＳＴＥＰ５の処理）。
【０３７１】
次のＣＬＫの時間位置１８で、リクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲ４ＩＤ１Ｓ６を出力し、カウンタＤ０ＳおよびＤ０Ｅへ、レジスタＮｘＤｓの値１２およびレジスタＮｘＤｅ値１９を設定し、さらに、カウンタＤ１Ｓは、現在の値１６へ重複時間幅ＲＳＯＬＰ値４を加算した値２０へ更新される、カウンタＤ１Ｅは、現在の値２３へ重複時間幅ＲＳＯＬＰ値４を加算した値２７へ更新される（図２３のＳＴＥＰ６の処理）。
【０３７２】
つぎに、レスポンスの動作について説明する。メモリ装置Ｍ０は、リクエストＲｑＲ４ＩＤ１Ｓ４を受け取り、このリクエストＲｑＲ４ＩＤ１Ｓ４に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認し、レスポンス信号ＲｓＭｕｘ０からレスポンスＲｓＲ４ＩＤ１Ｓ４を出力する。この際のメモリ装置Ｍ０の動作は図２５と同様であり、レスポンスＲｓＲ４ＩＤ１Ｓ４のレイテンシはレイテンシｍ０Ｌａｔ値１２クロックサイクルとなる。
【０３７３】
メモリ装置Ｍ０は、リクエストＲｑＲ４ＩＤ２Ｓ５を受け取り、このリクエストＲｑＲ４ＩＤ２Ｓ５に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する。両者は一致していないので、メモリ装置Ｍ０はリクエストＲｑＲ４ＩＤ２Ｓ５をメモリ装置Ｍ１へ送信する。
【０３７４】
メモリ装置Ｍ１は、リクエストＲｑＲ４ＩＤ２Ｓ５を受け取り、このリクエストＲｑＲ４ＩＤ２Ｓ５に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２が一致したことによって、自身へのリクエストであることを確認し、レスポンス信号ＲｓＭｕｘ１からメモリ装置Ｍ０へレスポンスＲｓＲ４ＩＤ２Ｓ５を出力する。さらに、レスポンスＲｓＲ４ＩＤ２Ｓ５はメモリ装置Ｍ０からレスポンス信号ＲｓＭｕｘ０を介してメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ入力される。
【０３７５】
この際の、レスポンスＲｓＲ４ＩＤ２Ｓ５はリクエストＲｑＲ４ＩＤ１Ｓ６に対するレスポンスＲｓＲ４ＩＤ１Ｓ６が出力した後にメモリ装置Ｍ０から出力されるため、レスポンスＲｓＲ４ＩＤ２Ｓ５のレイテンシは２８クロックサイクルとなる。
【０３７６】
メモリ装置Ｍ０は、リクエストＲｑＲ４ＩＤ１Ｓ６を受け取り、このリクエストＲｑＲ４ＩＤ１Ｓ４に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認し、レスポンス信号ＲｓＭｕｘ０からレスポンスＲｓＲ４ＩＤ１Ｓ６を出力する。この際のメモリ装置Ｍ０の動作は図２５と同様であり、レスポンスＲｓＲ４ＩＤ１Ｓ４は、リクエストＲｑＲ４ＩＤ２Ｓ５に対するレスポンスＲｓＲ４ＩＤ２Ｓ５より先出力され、そのレイテンシはレイテンシｍ０Ｌａｔ値１２クロックサイクルとなる。
【０３７７】
図２６で示すようにレイテンシ制御レジスタＬＣＲＥＧ内のレスポンス重複許容時間ＤＯＶＬＰを４へ設定することで、リクエストＲｑＲ４ＩＤ２Ｓ５のレイテンシが４増加することになるが、データ転送に費やす時間はＴ４６−Ｔ２＝４４クロックサイクルとなり、図２５で示した重複許容時間ＤＯＶＬＰを０へ設定した場合より、４クロックサイクル短くなる。
【０３７８】
上記ではメモリ装置Ｍ０およびＭ１でのデータの読み出しついて説明したが、他のメモリ装置Ｍ２においても同様の動作が実行できることは言うまでもない。
【０３７９】
このように、レイテンシ制御レジスタＬＴＣＲＥＧ内のレスポンス重複許容時間ＤＯＶＬＰを４へ設定し、レイテンシ可変モードとすることで、メモリ装置へのレスポンスの時間帯が４クロックサイクル以内に重複する範囲で、それぞれのレスポンスのレイテンシをできるだけ小さく、且つ高データ転送レートを実現するようにリクエスト信号ＲｑＭｕｘ０へリクエストを出力する。つまり、各メモリ装置からのレスポンスの時間帯が重複しても良い時間幅（レスポンス重複許容時間ＤＯＶＬＰ）を変更できることにより、情報処理システムが要求するレイテンシとデータ転送レートに柔軟に対応できる。
【０３８０】
図２７はレイテンシ制御レジスタＬＣＲＥＧの、レイテンシ制御フラグＬＣＦＬＧを１へ、レスポンス重複許容時間ＤＯＶＬＰを４へ設定した場合（レイテンシ可変モード）に、メモリ装置Ｍ０およびＭ１のレスポンスキューから直接データを読み出す動作波形の一例を示す。
【０３８１】
リクエストキューＲＥＱＱ２へリクエストＲｑＲＲ４ＩＤ１Ｓ４、ＲｑＲＲ４ＩＤ２Ｓ５、ＲｑＲＲ４ＩＤ１Ｓ６が保持されている。リクエスト出力回路ＲＱＯＵＴはリクエストキューＲＥＱＱ２へ保持されているリクエストを順に処理する。
【０３８２】
リクエストＲｑＲＲ４ＩＤ１Ｓ４およびリクエストＲｑＲＲ４ＩＤ１Ｓ６は、メモリ装置Ｍ０へのリードリクエストであり、リクエストＲｑＲＲ４ＩＤ２Ｓ５はメモリ装置Ｍ１へのリードリクエストである。
【０３８３】
リクエストＲｑＲＲ４ＩＤ１Ｓ４は、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値１、レスポンスキューリード命令ＲＲＤ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値４、レスポンスキュー番号ＲＱＮ値０、バイトアドレスＢＴＡＤＤ値０、リードデータ長ＲＤＬ値４から構成される。
【０３８４】
リクエストＲｑＲＲ４ＩＤ２Ｓ５は、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値２、スポンスキューリード命令ＲＲＤ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値５、レスポンスキュー番号ＲＱＮ値０、バイトアドレスＢＴＡＤＤ値０、リードデータ長ＲＤＬ値４から構成される。
【０３８５】
リクエストＲｑＲＲ４ＩＤ１Ｓ６は、リクエスト開始フラグＲｑＳｔＦＬ値１、識別番号ＩＤ値１、レスポンスキューリード命令ＲＲＤ、マスター番号ＭＩＤ値３、可変部リクエスト長ＶＲＥＱＬ値４、リクエスト番号ＲｅｑＮ値４、レスポンスキュー番号ＲＱＮ値１、バイトアドレスＢＴＡＤＤ値０、リードデータ長ＲＤＬ値４から構成される。
【０３８６】
リクエスト出力回路ＲＱＯＵＴの基本的な動作は、図２５と同様である。また、レジスタＮｘＤｓおよびレジスタＮｘＤｅ、カウンタＤ０Ｓ、Ｄ０Ｅ、Ｄ１Ｓ、Ｄ１Ｅ、Ｄ２ＳおよびＤ２Ｅの基本的な動作も図２５と同様である。リクエストＲｑＲＲ４ＩＤ１Ｓ４、ＲｑＲＲ４ＩＤ２Ｓ５およびＲｑＲＲ４ＩＤ１Ｓ６は、メモリ装置のレスポンスキューから直接データを読み出すリード命令のため、図２６よりレスポンスのレイテンシが短くなりデータ転送性能がさらに向上する。
【０３８７】
リクエスト出力回路ＲＱＯＵＴが、メモリ装置Ｍ０へリクエストＲｑＲＲ４ＩＤ１Ｓ４が出力する際の動作を説明する。
【０３８８】
リクエスト出力回路ＲＱＯＵＴは、すでに、メモリ装置Ｍ０へのリクエストＲｑＲＲ４ＩＤ１Ｓ４をリクエスト保持回路ＮｘＰＣＫへ取り込んでおり、リクエストＲｑＲ４ＩＤ１Ｓ４がリードリクエストであると解読した結果（図２３のＳＴＥＰ０の処理）、次のＣＬＫの時間位置０において、リクエストＲｑＲＲ４ＩＤ１Ｓ４に対応するレスポンスＲｓＲＲ４ＩＤ１Ｓ４の先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、レジスタＮｘＤｓへ先頭時間位置ＲＴＬＡＴ値８を、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴ値１５を設定する（図２３のＳＴＥＰ１の処理）。
【０３８９】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｑＲＲ４ＩＤ１Ｓ４を出力するために、ＣＬＫの時間位置１で、カウンタＣ０ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、さらにレジスタＮｘＤｓ値８、レジスタＮｘＤｅ値１５、カウンタＤ０Ｓ値０、カウンタＤ０Ｅ値０、カウンタＤ１Ｓ値０、カウンタＤ１Ｅ値０と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値４を比較し、リクエストＲｑＲ４ＩＤ１Ｓ４に対するレスポンスＲｓＲ４ＩＤ１Ｓ４には時間的に重複する他のレスポンスが存在しないことを確認する（図２３のＳＴＥＰ３，４，５の処理）。
【０３９０】
そして、ＣＬＫの時間位置２でリクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲＲ４ＩＤ１Ｓ４を出力し、カウンタＤ０ＳおよびＤ０Ｅへ、レジスタＮｘＤｓの値８およびレジスタＮｘＤｅ値１５を設定する（図２３のＳＴＥＰ６の処理）。
【０３９１】
次に、リクエスト出力回路ＲＱＯＵＴから、リクエストＲｑＲＲ４ＩＤ１Ｓ４に続いて、メモリ装置Ｍ１へのリード命令を含んだリクエストＲｑＲＲ４ＩＤ２Ｓ５が出力される際の動作を説明する。
【０３９２】
リクエスト出力回路ＲＱＯＵＴは、ＣＬＫの時間位置３において、リクエストキューＲＥＱＱ２へ保持されているリクエストＲｑＲＲ４ＩＤ２Ｓ５を取り込み、リクエストＲｑＲＲ４ＩＤ２Ｓ５がリードリクエストであると解読した結果（図２３のＳＴＥＰ０の処理）、次のＣＬＫの時間位置４において、リクエストＲｑＲＲ４ＩＤ２Ｓ５に対応するレスポンスＲｓＲＲ４ＩＤ２Ｓ５の先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、レジスタＮｘＤｓへ先頭時間位置ＲＴＬＡＴ値２０を、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴ値２７を設定する（図２３のＳＴＥＰ１の処理）。
【０３９３】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｑＲＲ４ＩＤ２Ｓ５を出力するために、ＣＬＫの時間位置９で、カウンタＣ１ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、さらにレジスタＮｘＤｓ値２４、レジスタＮｘＤｅ値３１、カウンタＤ０Ｓ値１、カウンタＤ０Ｅ値８、カウンタＤ１Ｓ値０、カウンタＤ１Ｅ値０と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値４を比較し、リクエストＲｑＲＲ４ＩＤ２Ｓ５に対するレスポンスＲｓＲＲ４ＩＤ２Ｓ５には時間的に重複する他のレスポンスが存在しないことを確認する（図２３のＳＴＥＰ３，４，５の処理）。
【０３９４】
そして、ＣＬＫの時間位置１０でリクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲＲ４ＩＤ２Ｓ５を出力し、カウンタＤ１ＳおよびＤ１Ｅへ、レジスタＮｘＤｓの値２０およびレジスタＮｘＤｅ値２７を設定する（図２３のＳＴＥＰ６の処理）。
【０３９５】
次にリクエスト出力回路ＲＱＯＵＴが、リクエストＲｑＲＲ４ＩＤ１Ｓ５に続いて、メモリ装置Ｍ０へのリード命令を含んだリクエストＲｑＲＲ４ＩＤ１Ｓ６が出力される際の動作を説明する。
【０３９６】
リクエスト出力回路ＲＱＯＵＴは、ＣＬＫの時間位置１１において、リクエストキューＲＥＱＱ２へ保持されているリクエストＲｑＲＲ４ＩＤ１Ｓ６を取り込み、リクエストＲｑＲＲ４ＩＤ１Ｓ６がリードリクエストであると解読した結果（図２３のＳＴＥＰ０の処理）、次のＣＬＫの時間位置１２において、リクエストＲｑＲＲ４ＩＤ１Ｓ６に対応するレスポンスＲｓＲＲ４ＩＤ１Ｓ６の先頭時間位置ＲＴＬＡＴおよび最後尾時間位置ＲＢＬＡＴを計算し、レジスタＮｘＤｓへ先頭時間位置ＲＴＬＡＴ値８を、レジスタＮｘＤｅには最後尾時間位置ＲＢＬＡＴ値１５を設定する（図２３のＳＴＥＰ１の処理）。
【０３９７】
次に、リクエスト出力回路ＲＱＯＵＴは、リクエストＲｑＲＲ４ＩＤ１Ｓ６を出力するために、ＣＬＫの時間位置１７で、カウンタＣ０ＴＲＣＤの値は０になっていることを確認し（図２３のＳＴＥＰ２の処理）、さらにレジスタＮｘＤｓ値８、レジスタＮｘＤｅ値１５、カウンタＤ０Ｓ値０、カウンタＤ０Ｅ値０、カウンタＤ１Ｓ値１３、カウンタＤ１Ｅ値２０と、カウンタＤ２Ｓ値０、カウンタＤ２Ｅ値０、レスポンス重複許容時間幅ＤＯＶＬＰ値４を比較し、リクエストＲｑＲＲ４ＩＤ１Ｓ６に対するレスポンスＲｓＲＲ４ＩＤ１Ｓ６他のレスポンスＲｓＲＲ４ＩＤ２Ｓ５の時間帯に重複することがわかる（図２３のＳＴＥＰ３、４の処理）。この重複時間幅ＲＳＯＬＰは４｛＝（レジスタＮｘＤｅ値１５＋１）−（Ｄ１Ｓ値１３−１）｝となり、重複許容時間幅ＤＯＶＬＰ値４以下であることを確認する（図２３のＳＴＥＰ５の処理）。
【０３９８】
次のＣＬＫの時間位置１８で、リクエスト信号ＲｑＭｕｘ０からリクエストＲｑＲＲ４ＩＤ１Ｓ６を出力し、カウンタＤ０ＳおよびＤ０Ｅへ、レジスタＮｘＤｓの値８およびレジスタＮｘＤｅ値１５を設定し、さらに、カウンタＤ１Ｓは、現在の値１２へ重複時間幅ＲＳＯＬＰ値４を加算した値１６へ更新される。カウンタＤ１Ｅは、現在の値１９へ重複時間幅ＲＳＯＬＰ値４を加算した値２３へ更新される（図２３のＳＴＥＰ６の処理）。
【０３９９】
次に、レスポンスについて説明する。メモリ装置Ｍ０は、リクエストＲｑＲＲ４ＩＤ１Ｓ４を受け取り、このリクエストＲｑＲＲ４ＩＤ１Ｓ４に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ０はリクエストＲｑＲ４ＩＤ１Ｓ４に含まれるレスポンスキューリード命令ＲＲＤ、レスポンスキュー番号ＲＱＮ値０、バイトアドレスＢＴＡＤＤ値０、リードデータ長ＲＤＬ値４を利用し、メモリ装置Ｍ０のレスポンスキューＲｓＱｏ内のレスポンスキュー番号ＱＵＮ値０で指定されたレスポンスキュー番号０のレスポンスキューから、バイトアドレスＢＴＡＤＤ値０を開始アドレスとして４バイト分のデータを読み出す。この際の、直接レスポンスキューＲｓＱｏからデータを読み出すため、レスポンスＲｓＲＲ４ＩＤ１Ｓ４のレイテンシは８クロックサイクルとなる。
【０４００】
メモリ装置Ｍ０は、リクエストＲｑＲＲ４ＩＤ２Ｓ５を受け取り、このリクエストＲｑＲ４ＩＤ２Ｓ５に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１を比較する。両者は一致していないので、メモリ装置Ｍ０はリクエストＲｑＲ４ＩＤ２Ｓ５をメモリ装置Ｍ１へ送信する。メモリ装置Ｍ１は、リクエストＲｑＲＲ４ＩＤ２Ｓ５を受け取り、このリクエストＲｑＲＲ４ＩＤ２Ｓ５に含まれるＩＤ値２と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値２が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ１はリクエストＲｑＲＲ４ＩＤ１Ｓ５に含まれるレスポンスキューリード命令ＲＲＤ、レスポンスキュー番号ＲＱＮ値０、バイトアドレスＢＴＡＤＤ値０、リードデータ長ＲＤＬ値４を利用し、メモリ装置Ｍ１のレスポンスキューＲｓＱｏ内のレスポンスキュー番号ＱＵＮ値０で指定されたレスポンスキュー番号０のレスポンスキューから、バイトアドレスＢＴＡＤＤ値０を開始アドレスとして４バイト分のデータを読み出し、レスポンス信号ＲｓＭｕｘ１からメモリ装置Ｍ０へレスポンスＲｓＲＲ４ＩＤ２Ｓ５を出力する。さらに、レスポンスＲｓＲＲ４ＩＤ２Ｓ５はメモリ装置Ｍ０からレスポンス信号ＲｓＭｕｘ０を介してメモリ制御回路ＤＣＭＣのレスポンス入力回路ＲＳＩＮへ入力される。
【０４０１】
この際の、レスポンスＲｓＲＲ４ＩＤ２Ｓ５はリクエストＲｑＲＲ４ＩＤ１Ｓ４に対するレスポンスＲｓＲＲ４ＩＤ１Ｓ４が出力した後に、メモリ装置Ｍ０から出力されるため、レスポンスＲｓＲＲ４ＩＤ２Ｓ５のレイテンシは２４クロックサイクルとなる。
【０４０２】
メモリ装置Ｍ０は、リクエストＲｑＲＲ４ＩＤ１Ｓ６を受け取り、このリクエストＲｑＲＲ４ＩＤ１Ｓ６に含まれるＩＤ値１と、自身のＩＤレジスタ回路ＩＤＲに保持されているＩＤ値１が一致したことによって、自身へのリクエストであることを確認する。次に、メモリ装置Ｍ０はリクエストＲｑＲＲ４ＩＤ１Ｓ６に含まれるレスポンスキューリード命令ＲＲＤ、レスポンスキュー番号ＲＱＮ値０、バイトアドレスＢＴＡＤＤ値１、リードデータ長ＲＤＬ値４を利用し、メモリ装置Ｍ０のレスポンスキューＲｓＱｏ内のレスポンスキュー番号ＱＵＮ値１で指定されたレスポンスキュー番号１のレスポンスキューから、バイトアドレスＢＴＡＤＤ値０を開始アドレスとして４バイト分のデータを読み出す。
【０４０３】
この際の、直接レスポンスキューＲｓＱｏからデータを読み出すため、レスポンスＲｓＲＲ４ＩＤ１Ｓ６のレイテンシは８クロックサイクルとなる。
【０４０４】
図２７で示すように、メモリ装置のレスポンスキューから直接データを読み出すことでデータ転送に費やす時間はＴ４２−Ｔ２＝４０クロックサイクルとなり、図２６で示した場合より、４クロックサイクル短くなる。上記ではメモリ装置Ｍ０およびＭ１でのデータの読み出しついて説明したが、他のメモリ装置Ｍ２においても同様の動作が実行できることは言うまでもない。
【０４０５】
このように、メモリ装置のレスポンスキューから直接データを読み出すことでレスポンスのレイテンシが短縮され、さらに高データ転送レートを実現できる。
【０４０６】
以上が、レイテンシ制御モード（即ち、レイテンシ制御レジスタＬＣＲＥＧのレイテンシ制御フラグＬＣＦＬＧが１）の場合の動作説明である。一方、レイテンシ非制御モード（即ち、レイテンシ制御フラグＬＣＦＬＧが０）の場合、リクエスト出力回路ＲＱＯＵＴは、図２３で示される処理のうち、ＳＴＥＰ２の条件を満たした際に、リクエストを出力する。この場合、リクエスト出力回路ＲＱＯＵＴは、リクエストはレスポンスの時間帯を考慮せず、リクエストキューＲｑＱＩの空いたキュー数分まで連続で出力できる。そのため、メモリ装置Ｍ０からＭ２は受け取ったリクエストが、すぐに処理できずにリクエストキューＲｑＱＩへ長い期間、保持されてしまう頻度が高くなり、レスポンスのレイテンシが乱れる。しかしながら、これはメモリ装置Ｍ０からＭ２がすでに受け取ったリクエストを処理する前に、次のリクエストを先行的に受け取ることを意味し、リクエストキューＲｑＱＩに保持されているリクエストは各メモリ装置の最短の内部処理時間内で処理されるため、レスポンス側の経路は、レスポンスが存在する限り、最大の転送レートで転送を行うことが可能となる。このように、本実施の形態では、レイテンシ非制御モード／レイテンシ固定モード／レイテンシ可変モードの３種類を有するため、夫々のシステムの要求にあわせた柔軟な設定を行うことが可能となる。
【０４０７】
＜レスポンススケジュール回路ＳＣＨの動作＞
レスポンススケジュール回路ＳＣＨの動作について説明する。図２８は、各メモリ装置が装備するレスポンススケジュール回路ＳＣＨの動作の一例を示すフローチャートである。レスポンススケジュール回路ＳＣＨでは、先ず、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへレスポンスがエントリされているかをチェックする（図２８：Ｓｔｅｐ１）。レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐのいずれにもレスポンスがエントリされていなければ、再度、レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐへのエントリをチェックする。
【０４０８】
レスポンスキュー回路ＲｓＱｏおよびレスポンスキュー回路ＲｓＱｐのいずれかにレスポンスがエントリされていれば、レスポンスの優先順位をチェックし、最高位のレスポンス優先順位を持つレスポンスの送信準備を行う（図２８：Ｓｔｅｐ２）。次に、レスポンスイネーブル信号ＲｓＥｎ０をチェックし（図２８：Ｓｔｅｐ３）、Ｌｏｗの際はレスポンスを出力せず、レスポンスイネーブル信号ＲｓＥｎ０がＨｉｇｈを待つレスポンスイネーブル信号ＲｓＥｎ０がＨｉｇｈを待つ。レスポンスイネーブル信号ＲｓＥｎ０がＨｉｇｈの際は、最高位のレスポンス優先順位を持つレスポンスを出力する（図２８：Ｓｔｅｐ４）。レスポンスが出力された後は、各メモリ装置に設定されているレスポンスに関する出力優先順位の制御方式をチェックする（図２８：Ｓｔｅｐ５）。レスポンスに関する出力優先順位の制御方式が順位固定方式であれば、レスポンスに関する出力優先順位を変更せず、順位変更方式であればレスポンスに関する出力優先順位を変更させる（図２８：Ｓｔｅｐ５）。順位固定方式では、各メモリ装置が装備しているレスポンスキュー回路ＲｓＱｐ内のレスポンスをレスポンスキュー回路ＲｓＱｏ内のレスポンスより優先させる設定や、レスポンスキュー回路ＲｓＱｏ内のレスポンスをレスポンスキュー回路ＲｓＱｐ内のレスポンスをより優先させる設定などが可能である。また、順位変更方式では、各メモリ装置が装備しているレスポンスキュー回路ＲｓＱｐ内のレスポンスとレスポンスキュー回路ＲｓＱｏ内のレスポンスの優先順位をラウンドロビン方式で変更することが可能である。
【０４０９】
＜第１の実施の形態の効果＞
以下、上述の実施の形態について、構成とその効果についてまとめる。
（１）レイテンシ可変モードを有することにより、リクエストの入力順序に関わらず、早く読み出せるデータは、読み出しが遅いデータを待つことなく、すぐに読み出すことができるため、高速化が可能となる。即ち、効率の良いデータ転送を行うことが可能となる。また、最大重複許容時間幅を設定することにより、効率の良いデータ転送を実現するためにレイテンシが変更されたとしても、レスポンスの遅延をシステムとして許容できる範囲で抑えることが可能となる。
（２）レイテンシ固定モードを有することにより、レイテンシを重視するシステムにも対応することが可能となる。
（３）レイテンシ制御レジスタを有することにより、許容するレイテンシの遅延をプログラム可能であり、柔軟な対応を可能とする。
（４）リクエストに対するレスポンスの開始時間が他のリクエストに対するレスポンスが行われている時間幅に重複する場合に、当該リクエストの発行を遅らせることにより、不要なレイテンシの遅延を防止することが可能となる。
（５）レイテンシ可変モードにおいて、後から発行されるリクエストによりレスポンスが遅延する場合において、カウンタ値を更新することにより、実状況にあわせた管理を行うことができる。
（６）レイテンシ非制御モードを有することにより、レイテンシを重視しないシステムにおいて、最大の転送効率を実現することが可能となる。
【０４１０】
また、本実施の形態では、メモリモジュールＭＥＭには１つの揮発性メモリ、１つのＮＯＲ型フラッシュメモリ、１つのＮＡＮＤ型フラッシュメモリが含まれている例について説明しているが、メモリモジュールＭＥＭに複数個の揮発性メモリ及び複数個のＮＯＲ型フラッシュメモリ及びＮＡＮＤ型フラッシュメモリが含まれる場合であっても本発明を実現できるのは言うまでもない。
【０４１１】
（第２の実施の形態）
本発明を適用した第２の実施の形態である情報処理システムについて、図２９〜図３３を用いて説明する。図２９は本発明を適用した第２の実施の形態である情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ１とから構成される情報処理システムにおいて、その構成の一例を示すブロック図である。また、図３０は情報処理装置ＣＰＵ＿ＣＨＩＰ１の構成の一例を示すブロック図である。メモリモジュールＭＥＭ１は、メモリ装置Ｍ１０、Ｍ１１、Ｍ１２から構成される。また、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリ装置Ｍ１０、Ｍ１１、Ｍ１２は直列に接続されている。また、図３１はメモリ装置Ｍ１０の構成の一例を示すブロック図であり、図３２はメモリ装置Ｍ１１の構成の一例を示すブロック図であり、図３３はメモリ装置Ｍ１２の構成の一例を示すブロック図である。
【０４１２】
また、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ１を動作させるクロック方式として、コモンクロック方式、ソースシンクロナスクロック方式、エンベデッドクロック方式などがあり、本発明には全てのクロック方式を利用することができる。本実施の形態では、エンベデッドクロック方式による動作を一例として説明する。以下におのおのについて説明する。
【０４１３】
情報処理装置ＣＰＵ＿ＣＨＩ１Ｐは、情報処理回路ＣＰＵ０、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３と、調停回路ＣＡＲＢとメモリ制御回路ＤＣＭＣ１から構成されている。メモリモジュールＭＥＭ１は、メモリ装置Ｍ１０、Ｍ１１、Ｍ１２から構成される。また、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリ装置Ｍ１０、Ｍ１１、Ｍ１２は直列に接続されている。情報処理回路ＣＰＵ０はマスター番号レジスタＭＩＤ０を装備し、情報処理回路ＣＰＵ１はマスター番号レジスタＭＩＤ１を装備し、情報処理回路ＣＰＵ２はマスター番号レジスタＭＩＤ２を装備し、情報処理回路ＣＰＵ３はマスター番号レジスタＭＩＤ３を装備している。
【０４１４】
情報処理回路ＣＰＵ０、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３は、図１と同様の情報処理回路であり、調停回路ＣＡＲＢおよびメモリ制御回路ＤＣＭＣ１を通じて、メモリモジュールＭＥＭより、ＯＳやアプリケーションプログラムおよびアプリケーションプログラムにて処理を行うデータを読みだしを実行する。メモリ制御回路ＤＣＭＣ１は、特に限定しないがコンフィグレーション回路ＣＯＮＦＩＧ、リクエストキューＲＥＱＱ１、ヒット判定回路ＩＤＨＴ、リクエストキューＲＥＱＱ２、コマンド生成回路ＣＯＭＧＥＮ、リクエスト出力回路ＲＱＯＵＴ１、リフレッシュ要求回路ＲＥＦ、キュー管理回路ＱＭＧＴ、レイテンシ調整回路ＬＣＨＣＫ、レスポンス入力回路ＲＳＩＮ１、レスポンスキューＲＥＳＱ１を含む。また、コンフィグレーション回路ＣＯＮＦＩＧは、図１と同様のレジスタから構成され、同様の機能を持つ。
【０４１５】
リクエストキューＲＥＱＱ１、ヒット判定回路ＩＤＨＴ、リクエストキューＲＥＱＱ２、コマンド生成回路ＣＯＭＧＥＮ、リフレッシュ要求回路ＲＥＦ、キュー管理回路ＱＭＧＴ、レイテンシ調整回路ＬＣＨＣＫ、レスポンスキューＲＥＳＱ１は、図１と同様の機能を持つ。リクエスト出力回路ＲＱＯＵＴ１は、出力回路ＯＵＴＢＬＫとシリアルデータ回路ＳＤＢＬＫから構成される。出力回路ＯＵＴＢＬＫは図１で示すリクエスト出力回路ＲＱＯＵＴと同じ機能を持っており、リクエストキューＲＥＱＱ２から送信されたリクエストを、シリアルデータ回路ＳＤＢＬＫへ転送する回路である。
【０４１６】
シリアルデータ回路ＳＤＢＬＫでは、出力回路ＯＵＴＢＬＫから送信されたリクエストへクロック情報を埋め込み、さらにシリアルデータへ変換し、リクエスト信号ＲｑＭｕｘ０を通じて、メモリモジュールＭＥＭ１へ発行する回路である。また、シリアルデータ回路ＳＤＢＬＫは、メモリモジュールＭＥＭ１へ参照クロックＲＣＫを送信する。レスポンス入力回路ＲＳＩＮ１は、入力回路ＩＮＢＬＫとパラレルデータ回路ＰＤＢＬＫから構成される。パラレルデータ回路ＰＤＢＬＫは、レスポンス信号ＲｓＭｕｘ０から送信されたシリアルデータ化されたレスポンスを受信し、参照クロックＲＣＫを利用し、このレスポンスに埋め込まれているクロック情報を取り出し、シリアルデータ化されたレスポンスをパラレルデータへ変換し、入力回路ＩＮＢＬＫへ送信する。入力回路ＩＮＢＬＫは、図４で示したリクエスト入力回路ＲＳＩＮと同じ機能をもち、同様動作を行う。
【０４１７】
メモリ装置Ｍ１０は、初期化回路ＩＮＩＴ、メモリ回路Ｍｅｍ０、リクエストインターフェース回路ＲｅｑＩＦ、レスポンスインターフェース回路ＲｅｓＩＦから構成される。リクエストインターフェース回路ＲｅｑＩＦはリクエスト信号変換回路ＲｑＣおよびリクエストキュー制御回路ＲｑＣＴから構成される。リクエスト変換回路ＲｑＣはパラレルデータ回路ＲＱＰＤおよびシリアルデータ回路ＲＱＳＤから構成される。
【０４１８】
レスポンスインターフェース回路ＲｅｓＩＦはレスポンスキュー制御回路ＲｓＣＴおよびレスポンス信号変換回路ＲｓＣから構成される。レスポンス信号変換回路ＲｓＣはパラレルデータ回路ＲＳＰＤおよびシリアルデータ回路ＲＳＳＤから構成される。パラレルデータ回路ＲＱＰＤは、リクエスト信号ＲｑＭｕｘ０から入力されたシリアルデータ化されたリクエストを受信し、参照クロックＲｅｆＣｋを利用し、このリクエストに埋め込まれているクロック情報を取り出し、シリアルデータ化されたリクエストをパラレルデータへ変換し、リクエストキュー制御回路ＲｑＣＴのリクエストキュー回路ＲｑＱＩへ送信する。シリアルデータ回路ＲＱＳＤはリクエストキュー制御回路ＲｑＣＴのリクエストキュー回路ＲｑＱＸＯから送信されたリクエストへクロック情報を埋め込み、さらにシリアルデータへ変換し、リクエスト信号ＲｑＭｕｘ１を通じて、メモリ装置Ｍ１１へ送信する回路である。
【０４１９】
パラレルデータ回路ＲＳＰＤは、レスポンス信号ＲｑＭｕｘ１から入力されたシリアルデータ化されたレスポンスを受信し、参照クロックＲｅｆＣｋ（ただし、参照クロックＲｅｆＣｋは図示されていない）を利用し、このレスポンスに埋め込まれているクロック情報を取り出し、シリアルデータ化されたレスポンスをパラレルデータへ変換し、レスポンスキュー制御回路ＲｓＣＴのレスポンスキュー回路ＲｓＱｐへ送信する。シリアルデータ回路ＲＳＳＤはレスポンスキュー制御回路ＲｓＣＴのレスポンススケジュール回路ＳＣＨから送信されたレスポンスへクロック情報を埋め込み、さらにシリアルデータへ変換し、レスポンス信号ＲｓＭｕｘ０を通じて、レスポンス入力回路ＲＳＩＮ１へ送信する回路である。
【０４２０】
初期化回路ＩＮＩＴ０、メモリ回路Ｍｅｍ０、リクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｓＣＴは図４に示されているメモリ装置Ｍ０と同様の構成および機能を持つ。したがって、メモリ装置Ｍ１０の機能および役割は図４に示されているメモリ装置Ｍ０と同様である。
【０４２１】
メモリ装置Ｍ１１は、初期化回路ＩＮＩＴ１、メモリ回路Ｍｅｍ１、リクエストインターフェース回路ＲｅｑＩＦ、レスポンスインターフェース回路ＲｅｓＩＦから構成される。リクエストインターフェース回路ＲｅｑＩＦはリクエスト信号変換回路ＲｑＣおよびリクエストキュー制御回路ＲｑＣＴから構成される。リクエスト変換回路ＲｑＣはパラレルデータ回路ＲＱＰＤおよびシリアルデータ回路ＲＱＳＤから構成される。
【０４２２】
レスポンスインターフェース回路ＲｅｓＩＦはレスポンスキュー制御回路ＲｓＣＴおよびレスポンス信号変換回路ＲｓＣから構成される。レスポンス信号変換回路ＲｓＣはパラレルデータ回路ＲＳＰＤおよびシリアルデータ回路ＲＳＳＤから構成される。パラレルデータ回路ＲＱＰＤは、リクエスト信号ＲｑＭｕｘ１から入力されたシリアルデータ化されたリクエストを受信し、参照クロックＲｅｆＣｋを利用し、このリクエストに埋め込まれているクロック情報を取り出し、シリアルデータ化されたリクエストをパラレルデータへ変換し、リクエストキュー制御回路ＲｑＣＴのリクエストキュー回路ＲｑＱＩへ送信する。
【０４２３】
シリアルデータ回路ＲＱＳＤはリクエストキュー制御回路ＲｑＣＴのリクエストキュー回路ＲｑＱＸＯから送信されたリクエストへクロック情報を埋め込み、さらにシリアルデータへ変換し、リクエスト信号ＲｑＭｕｘ２を通じて、メモリ装置Ｍ１２へ送信する回路である。パラレルデータ回路ＲＳＰＤは、レスポンス信号ＲｑＭｕｘ２から入力されたシリアルデータ化されたレスポンスを受信し、参照クロックＲｅｆＣｋを利用し、このレスポンスに埋め込まれているクロック情報を取り出し、シリアルデータ化されたレスポンスをパラレルデータへ変換し、レスポンスキュー制御回路ＲｓＣＴのレスポンスキュー回路ＲｓＱｐへ送信する。
【０４２４】
シリアルデータ回路ＲＳＳＤはレスポンスキュー制御回路ＲｓＣＴのレスポンススケジュール回路ＳＣＨから送信されたレスポンスへクロック情報を埋め込み、さらにシリアルデータへ変換し、レスポンス信号ＲｓＭｕｘ１を通じて、メモリ装置Ｍ１０へ送信する回路である。初期化回路ＩＮＩＴ１、メモリ回路Ｍｅｍ１、リクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｓＣＴは図４に示されているメモリ装置Ｍ１と同様の構成および機能を持つ。したがって、メモリ装置Ｍ１１の機能および役割は図５およぶ図６に示されているメモリ装置Ｍ１と同様である。
【０４２５】
メモリ装置Ｍ１２は、初期化回路ＩＮＩＴ２、メモリ回路Ｍｅｍ２、リクエストインターフェース回路ＲｅｑＩＦ、レスポンスインターフェース回路ＲｅｓＩＦから構成される。リクエストインターフェース回路ＲｅｑＩＦはリクエスト信号変換回路ＲｑＣおよびリクエストキュー制御回路ＲｑＣＴから構成される。リクエスト変換回路ＲｑＣはパラレルデータ回路ＲＱＰＤおよびシリアルデータ回路ＲＱＳＤから構成される。レスポンスインターフェース回路ＲｅｓＩＦはレスポンスキュー制御回路ＲｓＣＴおよびレスポンス信号変換回路ＲｓＣから構成される。レスポンス信号変換回路ＲｓＣはパラレルデータ回路ＲＳＰＤおよびシリアルデータ回路ＲＳＳＤから構成される。
【０４２６】
パラレルデータ回路ＲＱＰＤは、リクエスト信号ＲｑＭｕｘ２から入力されたシリアルデータ化されたリクエストを受信し、参照クロックＲｅｆＣｋを利用し、このリクエストに埋め込まれているクロック情報を取り出し、シリアルデータ化されたリクエストをパラレルデータへ変換し、リクエストキュー制御回路ＲｑＣＴのリクエストキュー回路ＲｑＱＩへ送信する。メモリ装置Ｍ２は最端のメモリ装置のため、リクエスト信号ＲｑＭｕｘ３は未接続状態となり、シリアルデータ回路ＲＱＳＤおよびパラレルデータ回路ＲＳＰＤは動作しない。シリアルデータ回路ＲＳＳＤはレスポンスキュー制御回路ＲｓＣＴのレスポンススケジュール回路ＳＣＨから送信されたレスポンスへクロック情報を埋め込み、さらにシリアルデータへ変換し、レスポンス信号ＲｓＭｕｘ２を通じて、メモリ装置Ｍ１１へ送信する回路である。
【０４２７】
初期化回路ＩＮＩＴ２、メモリ回路Ｍｅｍ１、リクエストキュー制御回路ＲｑＣＴ、レスポンスキュー制御回路ＲｓＣＴは図４に示されているメモリ装置Ｍ１と同様の機能を持つ。したがって、メモリ装置Ｍ１２の機能および役割は図７および図８に示されているメモリ装置Ｍ２と同様である。
【０４２８】
以上説明したように、本発明のエンベデッドクロック方式では、パラレルデータであるリクエストやレスポンスはシリアルデータ回路ＳＤＢＬＫ、ＲＱＳＤおよびＲＳＳＤによってクロック情報を埋め込まれ、シリアルデータへ変換され送信される。本発明によって、第１の実施の形態の効果に加えて、リクエスト送信用のクロック信号と、レスポンス送信用のクロック信号を削除でき、更なる低電力動作を可能とする。さらにリクエストやレスポンス信号数をそれぞれ１ビットまで削減し、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ１から構成される情報処理システムを構成することができる。
【０４２９】
（第３の実施の形態）
図３４は、本発明の第３の実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ２とメモリモジュールＭＥＭ２から構成される情報処理システムを示した実施の形態である。
【０４３０】
本実施の形態では、情報処理装置ＣＰＵ＿ＣＨＩ１Ｐ２は、情報処理回路ＣＰＵ０、ＣＰＵ１、ＣＰＵ２、ＣＰＵ３と、調停回路ＣＡＲＢとメモリ制御回路ＤＣＭＣ２から構成されている。メモリモジュールＭＥＭ２は、メモリ装置Ｍ２０、Ｍ２１、Ｍ２２から構成される。
【０４３１】
情報処理装置ＣＰＵ＿ＣＨＩＰ２とメモリモジュールＭＥＭ２を動作させるクロック方式として、エンベデッドクロック方式を用いており、情報処理装置ＣＰＵ＿ＣＨＩＰ２と、メモリ装置Ｍ２０と、メモリ装置Ｍ２１と、メモリ装置Ｍ２２は、双方向信号ＲｑｓＭｕｘ０、ＲｑｓＭｕｘ１およびＲｑｓＭｕｘ２によって接続されており、これらの信号にてリクエストとレスポンスが送信される。
【０４３２】
情報処理装置ＣＰＵ＿ＣＨＩ１Ｐ２は情報処理装置ＣＰＵ＿ＣＨＩ１Ｐ１と同様の機能をもち、メモリ装置Ｍ２０はメモリ装置Ｍ１０と同様の機能をもち、メモリ装置Ｍ２１はメモリ装置Ｍ１１と同様の機能をもち、メモリ装置Ｍ２２はメモリ装置Ｍ１２と同様の機能を持つ。
【０４３３】
本発明によって、第２の実施の形態の効果に加えて、リクエストとレスポンスを共用することができ、信号数を最小の１ビットまで削減し、情報処理装置ＣＰＵ＿ＣＨＩＰ２とメモリモジュールＭＥＭ２から構成される情報処理システムを構成することができる。
【０４３４】
（第４の実施の形態）
図３５は、本発明の第４の実施の形態である。図３５（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ４００から構成されるソースシンクロナスクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。図３５（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ４０１から構成されるエンベデッドクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。図３５（Ｃ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ２とメモリモジュールＭＥＭ４０２から構成されるエンベデッドクロック方式で、リクエストとレスポンスを共用する信号にて接続されている情報処理システムを示した実施の形態である。
【０４３５】
ＲｑＭｕｘ０、ＲｑＭｕｘ１、ＲｑＭｕｘ２およびＲｑＭｕｘ３はリクエスト信号である。ＲｓＭｕｘ０、ＲｓＭｕｘ１、ＲｓＭｕｘ２およびＲｓＭｕｘ３はレスポンス信号である。また、ＲｑｓＭｕｘ０、ＲｑｓＭｕｘ１、ＲｑｓＭｕｘ２およびＲｑｓＭｕｘ３はリクエストとレスポンス共用する信号である。情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図２９および図３０で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ２は、図３４で示したものと同等である。
【０４３６】
メモリモジュールＭＥＭ４００はダイナミックランダムアクセスメモリＤＲＡＭ００およびＤＲＡＭ０１、ＮＯＲ型フラッシュメモリＮＯＲ０およびＮＡＮＤ型フラッシュメモリＮＡＮＤ０から構成される。
【０４３７】
メモリモジュールＭＥＭ４０１はダイナミックランダムアクセスメモリＤＲＡＭ１０およびＤＲＡＭ１１、ＮＯＲ型フラッシュメモリＮＯＲ１およびＮＡＮＤ型フラッシュメモリＮＡＮＤ１から構成される。
【０４３８】
メモリモジュールＭＥＭ４０２はダイナミックランダムアクセスメモリＤＲＡＭ２０およびＤＲＡ２１１、ＮＯＲ型フラッシュメモリＮＯＲ２およびＮＡＮＤ型フラッシュメモリＮＡＮＤ２から構成される。
【０４３９】
ダイナミックランダムアクセスメモリＤＲＡＭ００およびＤＲＡＭ０１、ＮＯＲ型フラッシュメモリＮＯＲ０およびＮＡＮＤ型フラッシュメモリＮＡＮＤ０は図１で示したメモリと同等である。
【０４４０】
ダイナミックランダムアクセスメモリＤＲＡＭ１０およびＤＲＡＭ１１、ＮＯＲ型フラッシュメモリＮＯＲ１およびＮＡＮＤ型フラッシュメモリＮＡＮＤ１は図２９で示したメモリと同等である。
【０４４１】
ダイナミックランダムアクセスメモリＤＲＡＭ２０およびＤＲＡＭ２１、ＮＯＲ型フラッシュメモリＮＯＲ２およびＮＡＮＤ型フラッシュメモリＮＡＮＤ２は図３４で示したメモリと同等である。
【０４４２】
本発明では、容易に、ダイナミックランダムアクセスメモリＤＲＡＭを複数接続することができ、情報処理装置ＣＰＵ＿ＣＨＩＰが必要とするワーク領域やコピー領域を用意に拡張できる。ダイナミックランダムアクセスメモリＤＲＡＭにてワーク領域やコピー領域を拡張することで、ダイナミックランダムアクセスメモリＤＲＡＭへ格納されるプログラムやデータのサイズが増え、最も情報処理装置に近いダイナミックランダムアクセスメモリＤＲＡＭへのアクセス頻度が高くなるため高速処理が可能となる。
【０４４３】
本実施の形態では、ダイナミックランダムアクセスメモリの複数接続について説明したが、ＮＯＲ型フラッシュメモリＮＯＲや、ＮＡＮＤ型フラッシュメモリＮＡＮＤは、必要に応じて複数個接続でき、容易にプログラム領域やデータ領域を拡張でき、携帯機器のシステム構成に合わせて柔軟に対応できる。
【０４４４】
（第５の実施の形態）
図３６は、本発明の第５の実施の形態である。図３６（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ５００から構成され、ソースシンクロナスクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。図３６（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ５０１から構成され、エンベデッドクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。図３６（Ｃ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ２とメモリモジュールＭＥＭ５０２から構成され、エンベデッドクロック方式で、リクエストとレスポンスを共用する信号にて接続されている情報処理システムを示した実施の形態である。
【０４４５】
ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２は、リクエスト信号である。ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。また、ＲｑｓＭｕｘ０、ＲｑｓＭｕｘ１およびＲｑｓＭｕｘ２はリクエストとレスポンス共用する信号である。
【０４４６】
情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図２９および図３０で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ２は、図３４で示したものと同等である。
【０４４７】
メモリモジュールＭＥＭ５００はＮＯＲ型フラッシュメモリＮＯＲ０、ダイナミックランダムアクセスメモリＤＲＡＭ０およびＮＡＮＤ型フラッシュメモリＮＡＮＤ０から構成される。
【０４４８】
メモリモジュールＭＥＭ５０１はＮＯＲ型フラッシュメモリＮＯＲ１、ダイナミックランダムアクセスメモリＤＲＡＭ１およびＮＡＮＤ型フラッシュメモリＮＡＮＤ１から構成される。
【０４４９】
メモリモジュールＭＥＭ５０２はＮＯＲ型フラッシュメモリＮＯＲ２、ダイナミックランダムアクセスメモリＤＲＡＭ２およびＮＡＮＤ型フラッシュメモリＮＡＮＤ２から構成される。
【０４５０】
ダイナミックランダムアクセスメモリＤＲＡＭ０、ＮＯＲ型フラッシュメモリＮＯＲ０およびＮＡＮＤ型フラッシュメモリＮＡＮＤ０は図１で示したメモリと同等である。
【０４５１】
ダイナミックランダムアクセスメモリＤＲＡＭ１、ＮＯＲ型フラッシュメモリＮＯＲ１およびＮＡＮＤ型フラッシュメモリＮＡＮＤ１は図２９で示したメモリと同等である。
【０４５２】
ダイナミックランダムアクセスメモリＤＲＡＭ２、ＮＯＲ型フラッシュメモリＮＯＲ２およびＮＡＮＤ型フラッシュメモリＮＡＮＤ２は図３４で示したメモリと同等である。
【０４５３】
メモリモジュールＭＥＭ５００、ＭＥＭ５０１およびＭＥＭ５０２は、それを構成するメモリの接続の順番が、情報処理装置ＣＰＵ＿ＣＨＩＰ、ＣＰＵ＿ＣＨＩＰ１およびＣＰＵ＿ＣＨＩＰ２から近い順に、ＮＯＲ型フラッシュメモリセルを利用したＮＯＲ型フラッシュメモリＮＯＲ、ダイナミックメモリセルを利用したダイナミックランダムアクセスメモリＤＲＡＭ、ＮＡＮＤ型フラッシュメモリセルを利用したＮＡＮＤ型フラッシュメモリＮＡＮＤである。携帯電話機では、電話やメールの待ち受け時は、ＯＳや通信用プログラムなどが格納されるＮＯＲ型フラッシュメモリＮＯＲへの間欠的なアクセスが支配的となる。したがって、不揮発性メモリであるＮＯＲ型フラッシュメモリＮＯＲを、情報処理装置ＣＰＵ＿ＣＨＩＰ、ＣＰＵ＿ＣＨＩＰ１およびＣＰＵ＿ＣＨＩＰ２から最も近くに接続する本実施形態では、ダイナミックランダムアクセスメモリＤＲＡＭをセルフリフレッシュ状態にし、ＮＯＲ型フラッシュメモリＮＯＲのみを動作させることができ、電話やメールの待ち受け時の消費電力を低減することができる。
【０４５４】
（第６の実施の形態）
図３７は、本発明の第６の実施の形態である。図３７（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ６００とＭＥＭ６０１とから構成され、ソースシンクロナスクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。図３７（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ６０１とＭＥＭ６１１とから構成され、エンベデッドクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。図３７（Ｃ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ２とメモリモジュールＭＥＭ６０２とＭＥＭ６１２とから構成され、エンベデッドクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。
【０４５５】
ＲｑＭｕｘ０、ＲｑＭｕｘ１、ＲｑＭｕｘ２およびＲｑＭｕｘ３はリクエスト信号である。ＲｓＭｕｘ０、ＲｓＭｕｘ１、ＲｓＭｕｘ２およびＲｓＭｕｘ３はレスポンス信号である。また、ＲｑｓＭｕｘ０、ＲｑｓＭｕｘ１、ＲｑｓＭｕｘ２およびＲｑｓＭｕｘ３はリクエストとレスポンス共用する信号である。
【０４５６】
情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図２９および図３０で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ２は、図３４で示したものと同等である。
【０４５７】
メモリモジュールＭＥＭ６００はＮＯＲ型フラッシュメモリＮＯＲ０およびＮＡＮＤ型フラッシュメモリＮＡＮＤ０から構成される。
【０４５８】
メモリモジュールＭＥＭ６１０はダイナミックランダムアクセスメモリＤＲＡＭ００およびＤＲＡＭ０１から構成される。
【０４５９】
メモリモジュールＭＥＭ６０１はＮＯＲ型フラッシュメモリＮＯＲ１およびＮＡＮＤ型フラッシュメモリＮＡＮＤ１から構成される。
【０４６０】
メモリモジュールＭＥＭ６１１はダイナミックランダムアクセスメモリＤＲＡＭ１０およびＤＲＡＭ１１から構成される。
【０４６１】
メモリモジュールＭＥＭ６０２はＮＯＲ型フラッシュメモリＮＯＲ２およびＮＡＮＤ型フラッシュメモリＮＡＮＤ２から構成される。
【０４６２】
メモリモジュールＭＥＭ６１２はダイナミックランダムアクセスメモリＤＲＡＭ２０およびＤＲＡＭ２１から構成される。
【０４６３】
ダイナミックランダムアクセスメモリＤＲＡＭ００およびＤＲＡＭ０１、ＮＯＲ型フラッシュメモリＮＯＲ０およびＮＡＮＤ型フラッシュメモリＮＡＮＤ０は図１で示したメモリと同等である。
【０４６４】
ダイナミックランダムアクセスメモリＤＲＡＭ１０およびＤＲＡＭ１１、ＮＯＲ型フラッシュメモリＮＯＲ１およびＮＡＮＤ型フラッシュメモリＮＡＮＤ１は図２９で示したメモリと同等である。
【０４６５】
ダイナミックランダムアクセスメモリＤＲＡＭ２０およびＤＲＡＭ２１、ＮＯＲ型フラッシュメモリＮＯＲ２およびＮＡＮＤ型フラッシュメモリＮＡＮＤ２は図３４で示したメモリと同等である。
【０４６６】
本発明では、ダイナミックランダムアクセスメモリから構成されるメモリモジュールと、不揮発性メモリから構成されるメモリモジュールが、別々に情報処理装置へ接続される。携帯電話機では、電話やメールの待ち受け時は、ＯＳや通信用プログラムなどが格納されるＮＯＲ型フラッシュメモリへの間欠的なアクセスが支配的となる。したがって、不揮発性メモリであるＮＯＲ型フラッシュメモリを、情報処理装置ＣＰＵ＿ＣＨＩＰから最も近くに接続する本実施形態では、ダイナミックランダムアクセスメモリから構成されるメモリモジュールをセルフリフレッシュ状態にし、さらにリクエストクロックＲｑＣｋ２およびＲｑＣｋ３や、レスポンスクロックＲｓＣｋ２、ＲｓＣｋ３を停止し、ＮＯＲ型フラッシュメモリのみを動作させることができ、電話やメールの待ち受け時の消費電力を低減することができる。
【０４６７】
（第７の実施の形態）
図３８は、本発明の第７の実施の形態である。図３８（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ７００から構成され、ソースシンクロナスクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。図３８（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ７０１から構成され、エンベデッドクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。図３８（Ｃ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ２とメモリモジュールＭＥＭ７０２から構成され、エンベデッドクロック方式で、リクエストとレスポンスを共用する信号にて接続されている情報処理システムを示した実施の形態である。
【０４６８】
ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２は、リクエスト信号である。ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。また、ＲｑｓＭｕｘ０、ＲｑｓＭｕｘ１およびＲｑｓＭｕｘ２はリクエストとレスポンス共用する信号である。
【０４６９】
情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図２９および図３０で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ２は、図３４で示したものと同等である。
【０４７０】
メモリモジュールＭＥＭ７００はダイナミックランダムアクセスメモリＤＲＡＭ０、ＮＡＮＤ型フラッシュメモリＮＡＮＤ００およびＮＡＮＤ０１から構成される。
【０４７１】
メモリモジュールＭＥＭ７０１はダイナミックランダムアクセスメモリＤＲＡＭ１、ＮＡＮＤ型フラッシュメモリＮＡＮＤ１０およびＮＡＮＤ１１から構成される。
【０４７２】
メモリモジュールＭＥＭ７０２はダイナミックランダムアクセスメモリＤＲＡＭ２、ＮＡＮＤ型フラッシュメモリＮＡＮＤ２０およびＮＡＮＤ２１から構成される。
【０４７３】
ダイナミックランダムアクセスメモリＤＲＡＭ０、ＮＡＮＤ型フラッシュメモリＮＡＮＤ００およびＮＡＮＤ０１は図１で示したメモリと同等である。
【０４７４】
ダイナミックランダムアクセスメモリＤＲＡＭ１、ＮＡＮＤ型フラッシュメモリＮＡＮＤ１０およびＮＡＮＤ１１は図２９で示したメモリと同等である。
【０４７５】
ダイナミックランダムアクセスメモリＤＲＡＭ２、ＮＡＮＤ型フラッシュメモリＮＡＮＤ２０およびＮＡＮＤ２１は図３４で示したメモリと同等である。
【０４７６】
ＮＡＮＤ型フラッシュメモリはＮＯＲ型ラッシュメモリより大容量かつ低コストを実現できるメモリである。ＮＯＲ型フラッシュメモリの代わりにＮＡＮＤ型フラッシュメモリを利用することでＮＡＮＤ型フラッシュメモリＮＡＮＤ０へ、ＯＳやアプリケーションプログラムを格納でき、大容量かつ低コストの情報処理システムが実現できる。さらに、ＮＡＮＤ型フラッシュメモリＮＡＮＤ０へ格納しているＯＳやアプリケーションプログラムをあらかじめダイナミックランダムアクセスメモリＤＲＡＭへ転送することで、情報処理システムの高性能化が図れる。
【０４７７】
（第８の実施の形態）
図３９は、本発明の第８の実施の形態である。図３９（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ８００から構成されるソースシンクロナスクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。図３９（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ８０１から構成されるエンベデッドクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。図３９（Ｃ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ２とメモリモジュールＭＥＭ８０２から構成されるエンベデッドクロック方式で、リクエストとレスポンスを共用する信号にて接続されている情報処理システムを示した実施の形態である。
【０４７８】
ＲｑＭｕｘ０、ＲｑＭｕｘ１、ＲｑＭｕｘ２およびＲｑＭｕｘ３はリクエスト信号である。ＲｓＭｕｘ０、ＲｓＭｕｘ１、ＲｓＭｕｘ２およびＲｓＭｕｘ３はレスポンス信号である。また、ＲｑｓＭｕｘ０、ＲｑｓＭｕｘ１、ＲｑｓＭｕｘ２およびＲｑｓＭｕｘ３はリクエストとレスポンス共用する信号である。
【０４７９】
情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図２９および図３０で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ２は、図３４で示したものと同等である。
【０４８０】
メモリモジュールＭＥＭ８００はダイナミックランダムアクセスメモリＤＲＡＭ０、ＮＯＲ型フラッシュメモリＮＯＲ０、ＮＡＮＤ型フラッシュメモリＮＡＮＤ０およびハードディスクドライブＨＤＤ０から構成される。
【０４８１】
メモリモジュールＭＥＭ８０１はダイナミックランダムアクセスメモリＤＲＡＭ１、ＮＯＲ型フラッシュメモリＮＯＲ１、ＮＡＮＤ型フラッシュメモリＮＡＮＤ１およびハードディスクドライブＨＤＤ１から構成される。
【０４８２】
メモリモジュールＭＥＭ８０２はダイナミックランダムアクセスメモリＤＲＡＭ２、ＮＯＲ型フラッシュメモリＮＯＲ２、ＮＡＮＤ型フラッシュメモリＮＡＮＤ２およびハードディスクドライブＨＤＤ２から構成される。
【０４８３】
ダイナミックランダムアクセスメモリＤＲＡＭ０、ＮＯＲ型フラッシュメモリＮＯＲ０およびＮＡＮＤ型フラッシュメモリＮＡＮＤ０は図１で示したメモリと同等である。
【０４８４】
ダイナミックランダムアクセスメモリＤＲＡＭ１、ＮＯＲ型フラッシュメモリＮＯＲ１およびＮＡＮＤ型フラッシュメモリＮＡＮＤ１は図２９で示したメモリと同等である。
【０４８５】
ダイナミックランダムアクセスメモリＤＲＡＭ２、ＮＯＲ型フラッシュメモリＮＯＲ２およびＮＡＮＤ型フラッシュメモリＮＡＮＤ２は図３４で示したメモリと同等である。
【０４８６】
ハードディスクＨＤＤは、ＮＡＮＤ型フラッシュメモリＮＡＮＤより大容量かつ低コストを実現できるメモリである。データの読み出し単位や、アドレス管理方法や、エラー検出訂正方法に関していえば、もともとハードディスクＨＤＤで実現していたデータの読み出し単位や、アドレス管理方法や、エラー検出訂正方法などをフラッシュメモリが引き継いでいるため、ハードディスクＨＤＤを容易に追加接続し、大容量かつ低コストのメモリモジュールを実現できる。
【０４８７】
（第９の実施の形態）
図４０は、本発明の第９の実施の形態である。図４０（Ａ）は、情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ９００から構成され、ソースシンクロナスクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。図４０（Ｂ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ９０１から構成され、エンベデッドクロック方式で、個別のリクエスト信号とレスポンス信号にて接続されている情報処理システムを示した実施の形態である。
【０４８８】
図４０（Ｃ）は、情報処理装置ＣＰＵ＿ＣＨＩＰ２とメモリモジュールＭＥＭ９０２から構成され、エンベデッドクロック方式で、リクエストとレスポンスを共用する信号にて接続されている情報処理システムを示した実施の形態である。
【０４８９】
ＲｑＭｕｘ０、ＲｑＭｕｘ１およびＲｑＭｕｘ２は、リクエスト信号である。ＲｓＭｕｘ０、ＲｓＭｕｘ１およびＲｓＭｕｘ２はレスポンス信号である。また、ＲｑｓＭｕｘ０、ＲｑｓＭｕｘ１およびＲｑｓＭｕｘ２はリクエストとレスポンス共用する信号である。
【０４９０】
情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図２９および図３０で示したものと同等である。また、情報処理装置ＣＰＵ＿ＣＨＩＰ２は、図３４で示したものと同等である。
【０４９１】
メモリモジュールＭＥＭ９００は、第１の不揮発性メモリＭＲＡＭ０、第２の不揮発性メモリＮＶＭ００、第３の不揮発性メモリＮＶＭ０１から構成される。
【０４９２】
メモリモジュールＭＥＭ９０１は、第１の不揮発性メモリＭＲＡＭ１、第２の不揮発性メモリＮＶＭ１０、第３の不揮発性メモリＮＶＭ１１から構成される。
【０４９３】
メモリモジュールＭＥＭ９０２は、第１の不揮発性メモリＭＲＡＭ２、第２の不揮発性メモリＮＶＭ２０、第３の不揮発性メモリＮＶＭ２１から構成される。
【０４９４】
第１の不揮発性メモリＭＲＡＭ０は、メモリ装置Ｍ０のメモリ回路Ｍｅｍ０が、不揮発性のマグネティックメモリセルで構成されているマグネティックランダムアクセスメモリＭＲＡＭであっても良い。
【０４９５】
第２の不揮発性メモリＮＶＭ００には、図５で示したメモリ装置Ｍ１や、図５で示したメモリ装置Ｍ１のメモリ回路Ｍｅｍ１が不揮発性の相変化メモリセルから構成される相変化メモリＰＣＭであっても良い。
【０４９６】
第３の不揮発性メモリＮＶＭ０１には、図７で示したメモリ装置Ｍ２が適用できる。
【０４９７】
第１の不揮発性メモリＭＲＡＭ１は、図３１で示したメモリ装置Ｍ１０のメモリ回路Ｍｅｍ０が、不揮発性のマグネティックメモリセルで構成されているマグネティックランダムアクセスメモリＭＲＡＭであっても良い。
【０４９８】
第２の不揮発性メモリＮＶＭ１０には、図３２で示したメモリ装置Ｍ１１や、図３２で示したメモリ装置Ｍ１１のメモリ回路Ｍｅｍ１が不揮発性の相変化メモリセルから構成される相変化メモリＰＣＭであっても良い。
【０４９９】
第３の不揮発性メモリＮＶＭ１１には、図３３で示したメモリ装置Ｍ１２が適用できる。
【０５００】
第１の不揮発性メモリＭＲＡＭ２は、図３４で示したメモリ装置Ｍ３０のダイナミックランダムアクセスメモリＤＲＡＭがマグネティックランダムアクセスメモリＭＲＡＭに置き換わったメモリ装置であっても良い。
【０５０１】
第２の不揮発性メモリＮＶＭ２０には、図３４で示したメモリ装置Ｍ３１や、図３４で示したメモリ装置Ｍ３１のＮＯＲ型フラッシュメモリが相変化メモリＰＣＭ置き換わったメモリ装置であっても良い。
【０５０２】
第３の不揮発性メモリＮＶＭ２１には、図３４で示したメモリ装置Ｍ３２が適用できる。
【０５０３】
揮発性のダイナミックランダムアクセスメモリＤＲＡＭの代わりに不揮発性のマグネティックランダムアクセスメモリＭＲＡＭを用いることで、メモリ回路内のデータ保持動作を定期的に行う必要がないため、低電力化が可能となる。
【０５０４】
相変化メモリＰＣＭはＮＯＲ型フラッシュメモリＮＯＲより高速にデータを書き込めるという特徴があり、ＮＯＲ型フラッシュメモリＮＯＲの代わりに相変化メモリＰＣＭを用いることで、情報処理システムの高性能化が図れる。
【０５０５】
（第１０の実施の形態）
図４１は本発明に係るメモリシステムの第１０の実施の形態を示したものである。図４１（Ａ）は上面図であり、図４１（Ｂ）は上面図に示したＡ−Ａ’線に沿った部分の断面図である。本実施の形態のメモリモジュールは、ボールグリッドアレイ（ＢＧＡ）によって装置に実装する基板（例えばガラスエポキシ基板でできたプリント回路ボード）ＰＣＢ上に、ＣＨＩＰＭ１、ＣＨＩＰＭ２、ＣＨＩＰＭ３、ＣＨＩＰＭ４が搭載されている。特に限定しないが、ＣＨＩＰＭ１およびＣＨＩＰＭ２は不揮発性メモリ、およびＣＨＩＰＭ３はランダムアクセスメモリである。ＣＨＩＰＭ４は情報処理装置ＣＰＵ＿ＣＨＩＰはである。ＣＨＩＰＭ１とＣＨＩＰＭ２とＣＨＩＰＭ３とＣＨＩＰＭ４は、それぞれのチップを貫通しているチップ貫通配線ＴＳＶによって接続されている。また、ＣＨＩＰＭ１と基板ＰＣＢはチップ貫通配線ＴＳＶによって接続されており、ＣＨＩＰＭ２と基板ＰＣＢはチップ貫通配線ＴＳＶによって接続されており、ＣＨＩＰＭ３と基板ＰＣＢはチップ貫通配線ＴＳＶによって接続されており、ＣＨＩＰＭ４と基盤ＰＣＢはチップ貫通配線ＴＳＶによって、ボールグリッドアレイ（ＢＧＡ）によって接続されている。
【０５０６】
本実装方法では、図１で示す情報処理システム、図２９で示す情報処理システム、図３４で示す情報処理システム、図３５で示す情報処理システム、図３６で示す情報処理システム、図３７で示す情報処理システムおよび図４０で示す情報処理システムを１つの封止体に集積できる。
【０５０７】
本実施の形態ではプリント回路ボードＰＣＢ上にベアチップを積層し、各チップはチップ貫通配線ＴＳＶによって配線ができ、ボンディング配線を利用する必要がないため実装面積の小さなメモリモジュールを構成することができる。さらに、チップ貫通配線ＴＳＶによってチップ間配線長を短くすることができるため、より高性能で、より信頼性の高いマルチチップモジュールが実現できる。
【０５０８】
（第１１の実施の形態）
図４２に、本発明に係るメモリモジュールを利用した携帯電話の第１１の実施の形態を示す。携帯電話は、アンテナＡＮＴ、無線ブロックＲＦ、音声コーデックブロックＳＰ、スピーカーＳＫ、マイクロホンＭＫ、情報処理装置ＣＰＵ、液晶表示部ＬＣＤ、キーボードＫＥＹおよび本発明のメモリモジュールＭＳＭで構成される。情報処理装置ＣＰＵ＿ＭＡＩＮは複数の情報処理回路を持ち、その中の１つの情報処理回路ＣＰＵ０はベースバンド処理回路ＢＢとして、他の中の少なくとも１つの情報処理回路ＣＰＵ１はアプリケーションプロセッサＡＰとして動作する。
【０５０９】
通話時の動作を説明する。アンテナＡＮＴを通って受信された音声は無線ブロックＲＦで増幅され、情報処理装置ＣＰＵ０へ入力される。情報処理装置ＣＰＵ０では、音声のアナログ信号をデジタル信号に変換し、エラー訂正と復号処理おこない、音声コーデックブロックＳＰへ出力する。音声コーデックブロックがデジタル信号をアナログ信号に変換しスピーカーＳＫに出力すると、スピーカーから相手の声が聞こえる。携帯電話から、インターネットのホームページにアクセスし、音楽データをダウンロードし、再生して聞き、最後にダウンロードした音楽データを保存するという一連の作業を行うときの動作を説明する。
【０５１０】
メモリモジュールＭＥＭには、ＯＳ、アプリケーションプログラム（メール、Ｗｅｂブラウザ、音楽再生プログラム、動作再生プログラム、ゲームプログラムなど）、音楽データ、静止画データ、動画データなどが格納されている。キーボードより、Ｗｅｂブラウザの起動を指示すると、メモリモジュールＭＳＭ内のＮＯＲ型フラッシュメモリへ格納されているＷｅｂブラウザのプログラムは情報処理回路ＣＰＵ１によって読み出され、実行され、液晶表示ＬＣＤにＷｅｂブラウザが表示される。所望のホームページにアクセスし、気に入った音楽データのダウンロードをキーボードＫＥＹより指示すると、音楽データは、アンテナＡＮＴを通って受信され、無線ブロックＲＦで増幅され、情報処理装置ＣＰＵ０へ入力される。情報処理装置ＣＰＵ０では、アナログ信号である音楽データをデジタル信号に変換し、エラー訂正と復号処理おこなう。デジタル信号化された音楽データはメモリモジュールＭＳＭ内のダイナミックランダムアクセスメモリＤＲＡＭへ一旦、保持され、最終的に、メモリモジュールＭＥＭのＮＡＮＤ型フラッシュメモリへと転送され格納される。
【０５１１】
次に、キーボードＫＥＹより、音楽再生プログラムの起動を指示するとメモリモジュールＭＳＭ内のＮＯＲ型フラッシュメモリへ格納されている音楽再生プログラムが、情報処理回路ＣＰＵ１によって読み出され、実行され、液晶表示ＬＣＤに音楽再生プログラムが表示される。キーボードＫＥＹより、メモリモジュール内ＮＡＮＤ型フラッシュメモリへダウンロードした音楽データを聞くための指示を行うと、情報処理回路ＣＰＵ１は音楽再生プログラムを実行し、ＮＡＮＤ型フラッシュメモリへ保持している音楽データを処理し、最終的にスピーカーＳＫから音楽が聞こえてくる。本発明のメモリモジュールＭＳＭ内のＮＯＲ型フラッシュメモリには、Ｗｅｂブラウザと音楽再生プログラムや、電子メールプログラムなどの複数のプログラムが格納され、情報処理装置ＣＰＵ＿ＭＡＩＮは複数の情報処理回路ＣＰＵ０からＣＰＵ３を持つため、同時に複数のプログラムを実行することができる。電話や電子メールの待ちうけ時には、情報処理装置ＣＰＵ＿ＭＡＩＮは、メモリモジュールＭＳＭへのクロックを必要最小限の周波数で動作させることができ消費電力を極端に小さくできる。
【０５１２】
このように、本発明に係るメモリモジュールを用いることにより、大量のメール、音楽再生、アプリケ−ションプログラムや音楽データ、静止画像データ、動画データなどを格納でき、さらに複数のプログラムを同時に実行できる。
【０５１３】
（第１２の実施の形態）
図４３に、本発明に係るメモリシステムを利用した携帯電話の第１２の実施の形態を示す。携帯電話は、アンテナＡＮＴ、無線ブロックＲＦ、音声コーデックブロックＳＰ、スピーカーＳＫ、マイクロホンＭＫ、液晶表示部ＬＣＤ、キーボードＫＥＹおよび、メモリモジュールＭＳＭと情報処理装置ＣＰＵ＿ＭＡＩＮを１つの封止体に集積した本発明の情報処理システムＳＬＰで構成される。
【０５１４】
本発明の情報処理システムＳＬＰを用いることによって、部品点数を削減できるため、低コスト化ができ、携帯電話の信頼性が向上する、携帯電話を構成する部品の実装面積を小さくでき、携帯電話の小型化ができる。
【０５１５】
（第１３の実施の形態）
図４４は、本発明の第１３の実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ１０、ＣＰＵ＿ＣＨＩＰ１１、ＣＰＵ＿ＣＨＩＰ１２、ＣＰＵ＿ＣＨＩＰ１３とメモリモジュールＭＥＭ１３０、ＭＥＭ１３１、ＭＥＭ１３２、ＭＥＭ１３３から構成される情報処理システムを示した実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ１０、ＣＰＵ＿ＣＨＩＰ１１、ＣＰＵ＿ＣＨＩＰ１２、ＣＰＵ＿ＣＨＩＰ１３は、図１で示した情報処理装置ＣＰＵ＿ＣＨＩＰと同等である。メモリモジュールＭＥＭ１３０、ＭＥＭ１３１、ＭＥＭ１３２、ＭＥＭ１３３は、図１で示したメモリモジュールＭＥＭと同等である。ＲｑＣ０からＲｑＣ７はリクエストクロックであり、ＲｓＣ０からＲｓＣ７はレスポンスクロックである。ＲｑＭ０からＲｑＭ７はリクエスト信号であり、ＲｓＭ０からＲｓＭ１はレスポンス信号である。本発明では、容易に情報処理装置を複数接続することができ、高速処理が可能となる。さらに、携帯機器のシステム構成や、必要とする性能に合わせて、柔軟に情報処理装置やメモリモジュールを接続することができる。
【０５１６】
（第１４の実施の形態）
図４５は、本発明の第１４の実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ２０、ＣＰＵ＿ＣＨＩＰ２１、ＣＰＵ＿ＣＨＩＰ２２、ＣＰＵ＿ＣＨＩＰ２３とメモリモジュールＭＥＭ１４０、Ｍ２ＥＭ１４１、ＭＥＭ１４２、ＭＥＭ１４３から構成される情報処理システムを示した実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ２０、ＣＰＵ＿ＣＨＩＰ２１、ＣＰＵ＿ＣＨＩＰ２２、ＣＰＵ＿ＣＨＩＰ２３は、図２９で示した情報処理装置ＣＰＵ＿ＣＨＩＰ１と同等である。メモリモジュールＭＥＭ１４０、ＭＥＭ１４１、ＭＥＭ１４２、ＭＥＭ１４３は、図２９で示したメモリモジュールＭＥＭ１と同等である。ＲｑＭ０からＲｑＭ７はリクエスト信号であり、ＲｓＭ０からＲｓＭ１はレスポンス信号である。参照クロックは図面には記載していない。本発明では、容易に情報処理装置を複数接続することができ、高速処理が可能となる。さらに、携帯機器のシステム構成や、必要とする性能に合わせて、柔軟に情報処理装置やメモリモジュールを接続することができる。
【０５１７】
（第１５の実施の形態）
図４６は、本発明の第１５の実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ３０、ＣＰＵ＿ＣＨＩＰ３１、ＣＰＵ＿ＣＨＩＰ３２、ＣＰＵ＿ＣＨＩＰ３３とメモリモジュールＭＥＭ１５０、Ｍ２ＥＭ１５１、ＭＥＭ１５２、ＭＥＭ１５３から構成される情報処理システムを示した実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ３０、ＣＰＵ＿ＣＨＩＰ３１、ＣＰＵ＿ＣＨＩＰ３２、ＣＰＵ＿ＣＨＩＰ３３は、図３４で示した情報処理装置ＣＰＵ＿ＣＨＩＰ３と同等である。メモリモジュールＭＥＭ１５０、ＭＥＭ１５１、ＭＥＭ１５２、ＭＥＭ１５３は、図３４で示したメモリモジュールＭＥＭ３と同等である。ＲｑｓＭ０からＲｑｓＭ７はリクエストとレスポンスを共用する信号である。参照クロックは図面には記載していない。本発明では、容易に情報処理装置を複数接続することができ、高速処理が可能となる。さらに、携帯機器のシステム構成や、必要とする性能に合わせて、柔軟に情報処理装置やメモリモジュールを接続することができる。
【０５１８】
（第１６の実施の形態）
図４７は、本発明の第１６の実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰとメモリモジュールＭＥＭ１０００から構成される情報処理システムを示した実施の形態である。本実施の形態では、ソースシンクロナスクロック方式による情報処理システムの一例を示す。情報処理装置ＣＰＵ＿ＣＨＩＰは、図１および図２で示したものと同等である。メモリモジュールＭＥＭ１０００は、メモリ装置Ｍ１０００と、メモリ装置Ｍ１００１から構成される。ＲｑＣｋ０およびＲｑＣＫ１は、リクエストクロックであり、ＲｓＣｋ０、ＲｓＣＫ１およびＲｓＣｋ２はレスポンスクロックである。ＲｑＭｕｘ０およびＲｑＭｕｘ１はリクエスト信号であり、ＲｓＭｕｘ０およびＲｓＭｕｘ１はレスポンス信号である。
【０５１９】
メモリ装置Ｍ１０００はインターフェース回路チップＲＱＲＳＩＦ１０００と複数の揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１、複数の不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１から構成される。インターフェース回路チップＲＱＲＳＩＦ１０００は、図４および図５で説明したメモリ装置の中でメモリ回路Ｍｅｍ０、Ｍｅｍ１を除いた他の全ての回路と同等の機能を装備している。
【０５２０】
揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１には、メモリ回路Ｍｅｍ０と同等の機能を持っているメモリチップや汎用のダイナミックランダムアクセスメモリチップＤＲＡＭを利用することができる。また、複数の不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１には図５で説明したメモリ装置の中のメモリ回路Ｍｅｍ１と同等の機能を持っているメモリチップやＮＯＲ型フラッシュメモリチップや相変化メモリチップなどの汎用の不揮発性メモリチップを利用することができる。
【０５２１】
また、揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１のレイテンシと、不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１のレイテンシは異なる。
【０５２２】
メモリ装置Ｍ１００１は、コントローラ回路チップＮＶＣＴ１００１と、複数の不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１から構成される。コントローラ回路チップＮＶＣＴ１００１はインターフェース回路ＲＱＲＳＩＦ１００１とエラー訂正回路ＥＣＣ、代替処理回路ＲＥＰ、書き込み回数平準化回路ＷＬＶから構成される。
【０５２３】
インターフェース回路ＲＱＲＳＩＦ１００１は、図７で説明したメモリ装置の中でメモリ回路Ｍｅｍ２を除いた他の全ての回路と同等の機能を装備している。不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１には、図７で説明したメモリ装置の中のメモリ回路Ｍｅｍ２と同等の機能を持っているメモリチップやＮＡＮＤ型フラッシュメモリなどの汎用の不揮発性メモリチップを利用することができる。
【０５２４】
不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１は、書き換えを繰り返すことによって、信頼性が低下し、書き込み時に書いたデータが、読み出し時には異なるデータとなったり、書き換え時にデータが書き込まれなかったりすることが稀にある。エラー訂正回路ＥＣＣはインターフェース回路ＲＱＲＳＩＦ１００１が不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１から読み出したデータにエラーがあるかどうかをチェックし、エラーがあれば訂正を行う。エラー訂正されたデータがインターフェース回路ＲＱＲＳＩＦ１００１を介してレスポンス信号ＲｓＭｕｘ１から送信される。エラー訂正回路ＥＣＣによって、メモリ装置Ｍ１００１の信頼性を向上できる。
【０５２５】
代替処理回路ＲＥＰはインターフェース回路ＲＱＲＳＩＦ１００１から不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１へのデータの書き込みが正しく行われたかをチェックし、正しく行われなかった場合は不揮発性メモリＮＡＮＤへあらかじめ用意されておる代替用の新たなアドレスに対して書き込みを行う。代替処理回路ＲＥＰによって、メモリ装置Ｍ１００１の信頼性を向上できる。
【０５２６】
書き込み回数平準化回路ＷＬＶは、インターフェース回路ＲＱＲＳＩＦ１００１から不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１へデータを書き込む際に、不揮発性メモリＮＡＮＤの一部のアドレスへのデータの書き込み回数を集中させずに、書き込み回数を平準化させる。これによって、メモリ装置Ｍ１００１の製品寿命を延ばすことができる。
【０５２７】
情報処理装置ＣＰＵ＿ＣＨＩＰによって、揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１にはデバイス識別番号ＩＤ値１が割り当てられ、不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１にはデバイス識別番号ＩＤ値２が割り当てられ、メモリ装置Ｍ１００１にはデバイス識別番号ＩＤ値３が割り当てられる。
【０５２８】
つまり、リクエスト信号ＲｑＭｕｘ０からデバイス識別番号ＩＤ値１を含むリクエストがメモリ装置Ｍ１０００へ入力した場合、メモリ装置Ｍ１０００は揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１へのリクエストであると認識し、そのリクエストを実行する。また、リクエスト信号ＲｑＭｕｘ０からデバイス識別番号ＩＤ値２を含むリクエストがメモリ装置Ｍ１０００へ入力した場合、メモリ装置Ｍ１０００は不揮発性メモリチップＮＶＭ２０００およびＮＶ２３００１へのリクエストであると認識し、そのリクエストを実行し、そのリクエストに対応するレスポンスをレスポンス信号ＲｓＭｕｘ０から情報処理装置ＣＰＵ＿ＣＨＩＰへ送信する。
【０５２９】
リクエスト信号ＲｑＭｕｘ０からデバイス識別番号ＩＤ値３を含むリクエストがメモリ装置Ｍ１０００へ入力した場合、メモリ装置Ｍ１０００は自身が持つデバイス識別番号ＩＤ値１および２と異なるため、メモリ装置Ｍ１０００はリクエスト信号ＲｑＭｕｘ１から、デバイス識別番号ＩＤ値３を含むリクエストをメモリ装置Ｍ１００１へ送信する。
【０５３０】
リクエスト信号ＲｑＭｕｘ１からデバイス識別番号ＩＤ値３を含むリクエストがメモリ装置Ｍ１００１へ入力した場合、メモリ装置Ｍ１００１は自身へのリクエストであると認識し、そのリクエストを実行し、そのリクエストに対応するレスポンスはレスポンス信号ＲｓＭｕｘ１からメモリ装置Ｍ１０００へ送信され、さらにレスポンス信号ＲｓＭｕｘ０を介して情報処理装置ＣＰＵ＿ＣＨＩＰへ送信される。
【０５３１】
本発明では、第１の実施の形態の効果に加えて、汎用メモリを複数個利用し、容易にワーク領域やコピー領域やプログラム領域やデータ領域を拡張できる。さらに、レイテンシの異なる複数のメモリを利用し、容易に一つのメモリ装置を構築でき、携帯機器のシステム構成に合わせて柔軟に対応できる。
【０５３２】
（第１７の実施の形態）
図４８は、本発明の第１７の実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ１とメモリモジュールＭＥＭ２０００から構成される情報処理システムを示した実施の形態である。本実施の形態では、エンべデッドクロック方式による情報処理システムの一例を示す。情報処理装置ＣＰＵ＿ＣＨＩＰ１は、図２９および図３０で示したものと同等である。メモリモジュールＭＥＭ２０００は、メモリ装置Ｍ２０００と、メモリ装置Ｍ２００１から構成される。ＲＲｑＭｕｘ０およびＲｑＭｕｘ１はリクエスト信号であり、ＲｓＭｕｘ０およびＲｓＭｕｘ１はレスポンス信号である。
【０５３３】
メモリ装置Ｍ２０００はインターフェース回路チップＲＱＲＳＩＦ２０００と複数の揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１、複数の不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１から構成される。インターフェース回路チップＲＱＲＳＩＦ２０００は、図３１および図３２で説明したメモリ装置の中でメモリ回路Ｍｅｍ０、Ｍｅｍ１を除いた他の全ての回路と同等の機能を装備している。
【０５３４】
揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１には、図３１で説明したメモリ装置の中のメモリ回路Ｍｅｍ０と同等の機能を持っているメモリチップや汎用のダイナミックランダムアクセスメモリチップＤＲＡＭを利用することができる。また、複数の不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１には図３２で説明したメモリ装置の中のメモリ回路Ｍｅｍ１と同等の機能を持っているメモリチップやＮＯＲ型フラッシュメモリチップや相変化メモリチップなどの汎用の不揮発性メモリチップを利用することができる。
【０５３５】
また、揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１のレイテンシと、不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１のレイテンシは異なる。
【０５３６】
メモリ装置Ｍ２００１は、コントローラ回路チップＮＶＣＴ２００１と、複数の不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１から構成される。コントローラ回路チップＮＶＣＴ２００１はインターフェース回路ＲＱＲＳＩＦ２００１とエラー訂正回路ＥＣＣ、代替処理回路ＲＥＰ、書き込み回数平準化回路ＷＬＶから構成される。
【０５３７】
インターフェース回路ＲＱＲＳＩＦ２００１は、図３３で説明したメモリ装置の中でメモリ回路Ｍｅｍ２を除いた他の全ての回路と同等の機能を装備している。不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１には、図３３で説明したメモリ装置の中のメモリ回路Ｍｅｍ２と同等の機能を持っているメモリチップやＮＡＮＤ型フラッシュメモリなどの汎用の不揮発性メモリチップを利用することができる。
【０５３８】
不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１は、書き換えを繰り返すことによって、信頼性が低下し、書き込み時に書いたデータが、読み出し時には異なるデータとなったり、書き換え時にデータが書き込まれなかったりすることが稀にある。エラー訂正回路ＥＣＣはインターフェース回路ＲＱＲＳＩＦ２００１が不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１から読み出したデータにエラーがあるかどうかをチェックし、エラーがあれば訂正を行う。エラー訂正されたデータがインターフェース回路ＲＱＲＳＩＦ２００１を介してレスポンス信号ＲｓＭｕｘ１から送信される。エラー訂正回路ＥＣＣによって、メモリ装置Ｍ２００１の信頼性を向上できる。
【０５３９】
代替処理回路ＲＥＰはインターフェース回路ＲＱＲＳＩＦ２００１から不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１へのデータの書き込みが正しく行われたかをチェックし、正しく行われなかった場合は不揮発性メモリＮＡＮＤへあらかじめ用意されておる代替用の新たなアドレスに対して書き込みを行う。代替処理回路ＲＥＰによって、メモリ装置Ｍ２００１の信頼性を向上できる。
【０５４０】
書き込み回数平準化回路ＷＬＶは、インターフェース回路ＲＱＲＳＩＦ２００１から不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１へデータを書き込む際に、不揮発性メモリＮＡＮＤの一部のアドレスへのデータの書き込み回数を集中させずに、書き込み回数を平準化させる。これによって、メモリ装置Ｍ２００１の製品寿命を延ばすことができる。
【０５４１】
情報処理装置ＣＰＵ＿ＣＨＩＰ１によって、揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１にはデバイス識別番号ＩＤ値１が割り当てられ、不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１にはデバイス識別番号ＩＤ値２が割り当てられ、メモリ装置Ｍ２００１にはデバイス識別番号ＩＤ値３が割り当てられる。
【０５４２】
つまり、リクエスト信号ＲｑＭｕｘ０からデバイス識別番号ＩＤ値１を含むリクエストがメモリ装置Ｍ２０００へ入力した場合、メモリ装置Ｍ１０００は揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１へのリクエストであると認識し、そのリクエストを実行する。また、リクエスト信号ＲｑＭｕｘ０からデバイス識別番号ＩＤ値２を含むリクエストがメモリ装置Ｍ２０００へ入力した場合、メモリ装置Ｍ２０００は不揮発性メモリチップＮＶＭ３０００およびＮＶ３００１へのリクエストであると認識し、そのリクエストを実行し、そのリクエストに対応するレスポンスをレスポンス信号ＲｓＭｕｘ０から情報処理装置ＣＰＵ＿ＣＨＩＰ１へ送信する。
【０５４３】
リクエスト信号ＲｑＭｕｘ０からデバイス識別番号ＩＤ値３を含むリクエストがメモリ装置Ｍ２０００へ入力した場合、メモリ装置Ｍ２０００は自身が持つデバイス識別番号ＩＤ値１および２と異なるため、メモリ装置Ｍ２０００はリクエスト信号ＲｑＭｕｘ１から、デバイス識別番号ＩＤ値３を含むリクエストをメモリ装置Ｍ２００１へ送信する。
【０５４４】
リクエスト信号ＲｑＭｕｘ１からデバイス識別番号ＩＤ値３を含むリクエストがメモリ装置Ｍ２００１へ入力した場合、メモリ装置Ｍ２００１は自身へのリクエストであると認識し、そのリクエストを実行し、そのリクエストに対応するレスポンスはレスポンス信号ＲｓＭｕｘ１からメモリ装置Ｍ２０００へ送信され、さらにレスポンス信号ＲｓＭｕｘ０を介して情報処理装置ＣＰＵ＿ＣＨＩＰ１へ送信される。
【０５４５】
本発明では、第１および第２の実施の形態の効果に加えて、汎用メモリを複数個利用し、容易にワーク領域やコピー領域やプログラム領域やデータ領域を拡張できる。さらに、レイテンシの異なる複数のメモリを利用し、容易に一つのメモリ装置を構築でき、携帯機器のシステム構成に合わせて柔軟に対応できる。
【０５４６】
（第１８の実施の形態）
図４９は、本発明の第１８の実施の形態である。情報処理装置ＣＰＵ＿ＣＨＩＰ２とメモリモジュールＭＥＭ３０００から構成される情報処理システムを示した実施の形態である。本実施の形態では、エンべデッドクロック方式による情報処理システムの一例を示す。情報処理装置ＣＰＵ＿ＣＨＩＰ２は、図３４で示したものと同等である。メモリモジュールＭＥＭ３０００は、メモリ装置Ｍ３０００と、メモリ装置３００１から構成される。ＲＲｑＭｕｘ０およびＲｑＭｕｘ１はリクエスト信号であり、ＲｓＭｕｘ０およびＲｓＭｕｘ１はレスポンス信号である。
【０５４７】
情報処理装置ＣＰＵ＿ＣＨＩＰ２と、メモリ装置Ｍ３０００と、メモリ装置３００１は双方向信号ＲｑｓＭｕｘ０およびＲｑｓＭｕｘ１によって接続されており、これらの信号にてリクエストとレスポンスが送信される。
【０５４８】
メモリ装置Ｍ３０００はインターフェース回路チップＲＱＲＳＩＦ３０００と複数の揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１、複数の不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１から構成される。インターフェース回路チップＲＱＲＳＩＦ３０００は、図３４で説明したメモリ装置Ｍ２０およびＭ２１の中でメモリ回路Ｍｅｍ０、Ｍｅｍ１を除いた他の全ての回路と同等の機能を装備している。
【０５４９】
揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１には、図３４で説明したメモリ装置Ｍ２０の中のメモリ回路Ｍｅｍ０と同等の機能を持っているメモリチップや汎用のダイナミックランダムアクセスメモリチップＤＲＡＭを利用することができる。また、複数の不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１には図３４で説明したメモリ装置Ｍ２１の中のメモリ回路Ｍｅｍ１と同等の機能を持っているメモリチップやＮＯＲ型フラッシュメモリチップや相変化メモリチップなどの汎用の不揮発性メモリチップを利用することができる。
【０５５０】
また、揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１のレイテンシと、不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１のレイテンシは異なる。
【０５５１】
メモリ装置Ｍ３００１は、コントローラ回路チップＮＶＣＴ３００１と、複数の不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１から構成される。コントローラ回路チップＮＶＣＴ３００１はインターフェース回路ＲＱＲＳＩＦ３００１とエラー訂正回路ＥＣＣ、代替処理回路ＲＥＰ、書き込み回数平準化回路ＷＬＶから構成される。
【０５５２】
インターフェース回路ＲＱＲＳＩＦ３００１は、図３４で説明したメモリ装置Ｍ２２の中でメモリ回路Ｍｅｍ２を除いた他の全ての回路と同等の機能を装備している。不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１には、図３４で説明したメモリ装置２２の中のメモリ回路Ｍｅｍ２と同等の機能を持っているメモリチップやＮＡＮＤ型フラッシュメモリなどの汎用の不揮発性メモリチップを利用することができる。
【０５５３】
不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１は、書き換えを繰り返すことによって、信頼性が低下し、書き込み時に書いたデータが、読み出し時には異なるデータとなったり、書き換え時にデータが書き込まれなかったりすることが稀にある。エラー訂正回路ＥＣＣはインターフェース回路ＲＱＲＳＩＦ３００１が不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１から読み出したデータにエラーがあるかどうかをチェックし、エラーがあれば訂正を行う。エラー訂正されたデータがインターフェース回路ＲＱＲＳＩＦ３００１を介してレスポンス信号ＲｓＭｕｘ１から送信される。エラー訂正回路ＥＣＣによって、メモリ装置Ｍ２００１の信頼性を向上できる。
【０５５４】
代替処理回路ＲＥＰはインターフェース回路ＲＱＲＳＩＦ３００１から不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１へのデータの書き込みが正しく行われたかをチェックし、正しく行われなかった場合は不揮発性メモリＮＡＮＤへあらかじめ用意されておる代替用の新たなアドレスに対して書き込みを行う。代替処理回路ＲＥＰによって、メモリ装置Ｍ３００１の信頼性を向上できる。
【０５５５】
書き込み回数平準化回路ＷＬＶは、インターフェース回路ＲＱＲＳＩＦ３００１から不揮発性メモリチップＮＶＭ３０００およびＮＶＭ３００１へデータを書き込む際に、不揮発性メモリＮＡＮＤの一部のアドレスへのデータの書き込み回数を集中させずに、書き込み回数を平準化させる。これによって、メモリ装置Ｍ３００１の製品寿命を延ばすことができる。
【０５５６】
情報処理装置ＣＰＵ＿ＣＨＩＰ２によって、揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１にはデバイス識別番号ＩＤ値１が割り当てられ、不揮発性メモリチップＮＶＭ１０００およびＮＶＭ１００１にはデバイス識別番号ＩＤ値２が割り当てられ、メモリ装置Ｍ３００１にはデバイス識別番号ＩＤ値３が割り当てられる。
【０５５７】
つまり、双方向信号ＲｑｓＭｕｘ０からデバイス識別番号ＩＤ値１を含むリクエストがメモリ装置Ｍ３０００へ入力した場合、メモリ装置Ｍ３０００は揮発性メモリチップＶＬＭ１０００およびＶＬＭ１００１へのリクエストであると認識し、そのリクエストを実行する。また、リクエスト信号ＲｑｓＭｕｘ０からデバイス識別番号ＩＤ値２を含むリクエストがメモリ装置Ｍ３０００へ入力した場合、メモリ装置Ｍ３０００は不揮発性メモリチップＮＶＭ３０００およびＮＶ３００１へのリクエストであると認識し、そのリクエストを実行し、そのリクエストに対応するレスポンスを双方向信号ＲｑｓＭｕｘ０から情報処理装置ＣＰＵ＿ＣＨＩＰ２へ送信する。
【０５５８】
双方向信号ＲｑｓＭｕｘ０からデバイス識別番号ＩＤ値３を含むリクエストがメモリ装置Ｍ３０００へ入力した場合、メモリ装置Ｍ３０００は自身が持つデバイス識別番号ＩＤ値１および２と異なるため、メモリ装置Ｍ３０００は双方向信号ＲｑｓＭｕｘ１から、デバイス識別番号ＩＤ値３を含むリクエストをメモリ装置Ｍ３００１へ送信する。
【０５５９】
双方向信号ＲｑｓＭｕｘ１からデバイス識別番号ＩＤ値３を含むリクエストがメモリ装置Ｍ３００１へ入力した場合、メモリ装置Ｍ３００１は自身へのリクエストであると認識し、そのリクエストを実行し、そのリクエストに対応するレスポンスは双方向信号ＲｑｓＭｕｘ１からメモリ装置Ｍ３０００へ送信され、さらに双方向信号ＲｑｓＭｕｘ０を介して情報処理装置ＣＰＵ＿ＣＨＩＰ２へ送信される。
【０５６０】
本発明では、第１、第２および第３の実施の形態の効果に加えて、汎用メモリを複数個利用し、容易にワーク領域やコピー領域やプログラム領域やデータ領域を拡張できる。さらに、レイテンシの異なる複数のメモリを利用し、容易に一つのメモリ装置を構築でき、携帯機器のシステム構成に合わせて柔軟に対応できる。
【産業上の利用可能性】
【０５６１】
本発明は、半導体装置の技術に関し、特に、不揮発性メモリと情報処理装置を含む情報処理システムおよびメモリモジュールの制御方法に利用して特に有効である。
【図１】
0005420648.tif 000002
【図２】
0005420648.tif 000003
【図３】
0005420648.tif 000004
【図４】
0005420648.tif 000005
【図５】
0005420648.tif 000006
【図６】
0005420648.tif 000007
【図７】
0005420648.tif 000008
【図８】
0005420648.tif 000009
【図９】
0005420648.tif 000010
【図１０】
0005420648.tif 000011
【図１１】
0005420648.tif 000012
【図１２】
0005420648.tif 000013
【図１３】
0005420648.tif 000014
【図１４】
0005420648.tif 000015
【図１５】
0005420648.tif 000016
【図１６】
0005420648.tif 000017
【図１７】
0005420648.tif 000018
【図１８】
0005420648.tif 000019
【図１９】
0005420648.tif 000020
【図２０】
0005420648.tif 000021
【図２１】
0005420648.tif 000022
【図２２】
0005420648.tif 000023
【図２３】
0005420648.tif 000024
【図２４】
0005420648.tif 000025
【図２５】
0005420648.tif 000026
【図２６】
0005420648.tif 000027
【図２７】
0005420648.tif 000028
【図２８】
0005420648.tif 000029
【図２９】
0005420648.tif 000030
【図３０】
0005420648.tif 000031
【図３１】
0005420648.tif 000032
【図３２】
0005420648.tif 000033
【図３３】
0005420648.tif 000034
【図３４】
0005420648.tif 000035
【図３５】
0005420648.tif 000036
【図３６】
0005420648.tif 000037
【図３７】
0005420648.tif 000038
【図３８】
0005420648.tif 000039
【図３９】
0005420648.tif 000040
【図４０】
0005420648.tif 000041
【図４１】
0005420648.tif 000042
【図４２】
0005420648.tif 000043
【図４３】
0005420648.tif 000044
【図４４】
0005420648.tif 000045
【図４５】
0005420648.tif 000046
【図４６】
0005420648.tif 000047
【図４７】
0005420648.tif 000048
【図４８】
0005420648.tif 000049
【図４９】
0005420648.tif 000050