(57)【特許請求の範囲】
【請求項１】
情報を記憶するメモリ部と、
前記メモリ部のアクセスを制御するアクセス制御部と、
前記メモリ部に関するメモリ情報を保持するメモリ情報保持部と、
前記アクセス制御部によりアクセスされた前記メモリ部のアクセス情報が格納されるアクセス情報保持部と、
前記アクセス情報保持部に格納されるアクセス情報の格納位置を示す格納情報を保持する格納情報保持部と、
前記格納情報保持部に保持された格納情報を用いて、前記アクセス情報保持部から読み出された情報からアクセス情報を含むアクセス情報コードを抽出する抽出部と、
前記メモリ部のエラーに基づく読み出し要求に基づいて、前記メモリ情報保持部に保持されたメモリ情報を出力し、前記読み出し要求の要求元から出力されるメモリ情報の受信応答に基づいて、受信応答の受信サイクル中に、前記抽出部が抽出したアクセス情報コードを出力する入出力制御部と
を備えることを特徴とするメモリ。
【請求項２】
前記入出力制御部は、前記読み出し要求に基づいて、前記メモリ情報保持部に保持されたメモリ情報を複数の部分メモリ情報に分けて出力し、前記複数の部分メモリ情報の出力にそれぞれに対応する受信応答の受信サイクル中に、アクセス情報コードを複数に分けた部分アクセス情報コードのそれぞれを出力すること
を特徴とする請求項１記載のメモリ。
【請求項３】
前記格納情報保持部は、前記アクセス情報保持部に設けられる複数のアクセス情報保持領域のいずれかを示す位置情報と、前記抽出部によるアクセス情報コードの抽出に使用される格納情報とを、前記メモリ情報保持部に設けられる複数のメモリ情報保持領域のそれぞれに対応して保持する複数の格納情報保持領域を有し、
前記アクセス制御部は、前記読み出し要求により示されるメモリ情報保持領域に保持されたメモリ情報を前記入出力制御部に出力させ、前記読み出し要求により示されるメモリ情報保持領域に対応する格納情報保持領域に保持された位置情報と格納情報とを読み出し、読み出した位置情報により示されるアクセス情報保持領域に保持されたアクセス情報に基づいて前記抽出部に抽出させたアクセス情報コードを前記入出力制御部に出力させること
を特徴とする請求項１または請求項２記載のメモリ。
【請求項４】
前記複数の格納情報保持領域の各々は、格納情報に紐付けられる対応コードを保持し、
前記格納情報保持部は、さらに、複数の対応コードと格納情報との対応関係を保持する情報連結部を備えること
を特徴とする請求項３記載のメモリ。
【請求項５】
前記複数の格納情報保持領域の各々に保持される格納情報は、アクセス情報保持領域において有効なアクセス情報が保持されたビットを示し、
前記抽出部は、格納情報に基づいて、前記アクセス情報保持部から読み出された複数ビットのアクセス情報のうち、有効なアクセス情報を含む所定数のビットを抽出することで、アクセス情報コードを生成すること
を特徴とする請求項３または請求項４記載のメモリ。
【請求項６】
クロックの周波数を逓倍して逓倍クロックを生成するクロック逓倍部を備え、
前記入出力制御部は、クロックに同期してメモリ情報を出力し、クロックに同期して前記受信応答を受信し、受信応答を受信したクロックサイクル中に、逓倍クロックに同期してアクセス情報コードを出力すること
を特徴とする請求項１ないし請求項５のいずれか１項記載のメモリ。
【請求項７】
前記メモリ部に搭載される複数のメモリチップと、
前記アクセス制御部、前記メモリ情報保持部、前記アクセス情報保持部、前記格納情報保持部、前記抽出部および前記入出力制御部を含み、前記複数のメモリチップのアクセスを制御する制御チップと
を備えることを特徴とする請求項１ないし請求項６のいずれか１項記載のメモリ。
【請求項８】
前記入出力制御部は、読み出し要求を示すデータを、双方向のシリアルデータ線を介してクロックに同期して受信し、前記メモリ情報保持部から読み出したメモリ情報を、クロック線を介して受信するクロックに同期して前記シリアルデータ線に出力し、前記クロックに同期して前記シリアルデータ線を介して受信した前記受信応答に基づいて、前記アクセス情報コードを前記シリアルデータ線に出力すること
を特徴とする請求項１ないし請求項７のいずれか１項記載のメモリ。
【請求項９】
メモリと、メモリにアクセスするプロセッサと、メモリを制御する制御装置とを備える情報処理装置において、
前記メモリは、
情報を記憶するメモリ部と、
前記プロセッサからのメモリアクセス要求に基づいて、前記メモリ部のアクセスを制御するアクセス制御部と、
前記メモリ部に関するメモリ情報を保持するメモリ情報保持部と、
前記アクセス制御部によりアクセスされた前記メモリ部のアクセス情報が格納されるアクセス情報保持部と、
前記アクセス情報保持部に格納されるアクセス情報の格納位置を示す格納情報を保持する格納情報保持部と、
前記格納情報保持部に保持された格納情報を用いて、前記アクセス情報保持部から読み出された情報からアクセス情報を含むアクセス情報コードを抽出する抽出部と、
読み出し要求に基づいて、前記メモリ情報保持部に保持されたメモリ情報を出力し、前記読み出し要求の要求元から出力されるメモリ情報の受信応答に基づいて、受信応答のサイクル中に、前記抽出部が抽出したアクセス情報コードを出力するメモリ側入出力制御部と
を備え、
前記制御装置は、
前記プロセッサにより検出された前記メモリ部のエラーに基づいて、前記読み出し要求を前記メモリに出力し、前記メモリからのメモリ情報の受信に基づく受信応答の出力後、受信応答のサイクル中にアクセス情報コードを受信する装置側入出力制御部と、
前記装置側入出力制御部が前記メモリから受信したアクセス情報コードを記憶するコード記憶部と
を備えることを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリおよび情報処理装置に関する。
【背景技術】
【０００２】
クロック線とデータ線とを用いて、複数の装置間で情報を送受信するシリアル通信インタフェースとして、Ｉ２Ｃ（Inter-Integrated Circuit：登録商標）バス等が知られている。この種のシリアル通信インタフェースでは、マスタが送信したコマンドのエラーを検出したスレーブは、ノットアクノリッジを直ちに出力することで、エラーを通知するためのデータを送信することなくマスタにエラーを通知する（例えば、特許文献１参照）。また、スレーブが、クロックの立ち上がりに同期してデータを受信し、クロックの立ち下がりに同期してチップイネーブル信号またはデータの種別を識別する識別フラグを受信することで、データの転送に掛かるクロック数が削減される（例えば、特許文献２参照）。
【０００３】
一方、クロックを重畳したデータをマスタからスレーブに送信するシリアル通信インタフェースが知られている。この種のシリアル通信インタフェースでは、データをマスタからスレーブに送信する期間のうち、クロックの抽出期間と受信データの判定期間とを除く期間に、スレーブからマスタにデータを送信することで、双方向通信が実現される（例えば、特許文献３参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−２１６７３８号公報
【特許文献２】特開２００１−１２７８２７号公報
【特許文献３】特開２０１５−５９６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、近時、サーバ等の情報処理装置の処理性能を向上し、部品の実装密度を高めるために、ＨＭＣ（Hybrid Memory Cube）またはＨＢＭ（High Band with Memory）等のメモリが情報処理装置に搭載される場合がある。この種のメモリは、積層された複数のメモリチップと、メモリチップのアクセスを制御するメモリ制御部とを有する。例えば、メモリ制御部は、メモリチップの動作の解析を容易にするために、メモリチップのアクセス情報を格納するアクセス情報保持部を有する。情報処理装置に搭載される各種部品を制御する制御装置は、メモリチップのアクセス時にエラーが発生した場合、Ｉ２Ｃバス等のシリアル通信インタフェースを介して、アクセス情報保持部に保持されたメモリチップのアクセス情報を読み出す。しかしながら、シリアル通信インタフェースを介して、この種のメモリからアクセス情報を効率的に読み出す手法は提案されていない。
【０００６】
１つの側面では、本件開示のメモリおよび情報処理装置は、メモリに搭載されるメモリ部のアクセス情報を効率的に読み出すことを目的とする。
【課題を解決するための手段】
【０００７】
一つの観点によれば、メモリは、情報を記憶するメモリ部と、メモリ部のアクセスを制御するアクセス制御部と、メモリ部に関するメモリ情報を保持するメモリ情報保持部と、アクセス制御部によりアクセスされたメモリ部のアクセス情報が格納されるアクセス情報保持部と、アクセス情報保持部に格納されるアクセス情報の格納位置を示す格納情報を保持する格納情報保持部と、格納情報保持部に保持された格納情報を用いて、アクセス情報保持部から読み出された情報からアクセス情報を含むアクセス情報コードを抽出する抽出部と、メモリ部のエラーに基づく読み出し要求に基づいて、メモリ情報保持部に保持されたメモリ情報を出力し、読み出し要求の要求元から出力されるメモリ情報の受信応答に基づいて、受信応答の受信サイクル中に、抽出部が抽出したアクセス情報コードを出力する入出力制御部とを備える。
【０００８】
別の観点によれば、メモリと、メモリにアクセスするプロセッサと、メモリを制御する制御装置とを備える情報処理装置において、メモリは、情報を記憶するメモリ部と、プロセッサからのメモリアクセス要求に基づいて、メモリ部のアクセスを制御するアクセス制御部と、メモリ部に関するメモリ情報を保持するメモリ情報保持部と、アクセス制御部によりアクセスされたメモリ部のアクセス情報が格納されるアクセス情報保持部と、アクセス情報保持部に格納されるアクセス情報の格納位置を示す格納情報を保持する格納情報保持部と、格納情報保持部に保持された格納情報を用いて、アクセス情報保持部から読み出された情報からアクセス情報を含むアクセス情報コードを抽出する抽出部と、読み出し要求に基づいて、メモリ情報保持部に保持されたメモリ情報を出力し、読み出し要求の要求元から出力されるメモリ情報の受信応答に基づいて、受信応答のサイクル中に、抽出部が抽出したアクセス情報コードを出力するメモリ側入出力制御部とを備え、制御装置は、プロセッサにより検出されたメモリ部のエラーに基づいて、読み出し要求をメモリに出力し、メモリからのメモリ情報の受信に基づく受信応答の出力後、受信応答のサイクル中にアクセス情報コードを受信する装置側入出力制御部と、装置側入出力制御部がメモリから受信したアクセス情報コードを記憶するコード記憶部とを備える。
【発明の効果】
【０００９】
本件開示のメモリおよび情報処理装置は、メモリに搭載されるメモリ部のアクセス情報を効率的に読み出すことができる。
【図面の簡単な説明】
【００１０】
【図１】メモリおよび情報処理装置の一実施形態を示す図である。
【図２】図１に示す情報処理装置の動作の一例を示す図である。
【図３】メモリおよび情報処理装置の別の実施形態を示す図である。
【図４】図３に示すメモリ制御部の一例を示す図である。
【図５】図４に示すレジスタ部の一例を示す図である。
【図６】図４に示すコード対応表およびマスク対応表の一例を示す図である。
【図７】図４に示す抽出部の一例を示す図である。
【図８】図３に示すシステム制御装置に搭載されるシステムコントローラの一例を示す図である。
【図９】図３に示す情報処理装置の動作の一例を示す図である。
【図１０】図９に示す動作の続きを示す図である。
【図１１】図９および図１０に示す動作におけるメモリ制御部の処理フローの一例を示す図である。
【図１２】図１１に示すステップＳ２４の処理の一例を示す図である。
【図１３】図３に示すシステムコントローラの動作の一例を示す図である。
【図１４】図３に示すメモリで発生したメモリエラーの原因を特定する処理の一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、図面を用いて実施形態を説明する。信号が伝達される信号線には、信号名と同じ符号を使用する。
【００１２】
図１は、メモリおよび情報処理装置の一実施形態を示す。図１に示す情報処理装置ＩＰＥ１は、例えば、サーバであり、メモリ１と、メモリ１にアクセスするプロセッサ２と、メモリ１を制御する制御装置３とを有する。メモリ１は、メモリ部４、アクセス制御部５、アクセス情報保持部６、メモリ情報保持部７、格納情報保持部８、抽出部９および入出力制御部１０を有する。制御装置３は、入出力制御部１１およびコード記憶部１２を有する。
【００１３】
メモリ部４は、プロセッサ２が処理するデータ等を記憶する。メモリ部４は、プロセッサ２が実行するプログラムを記憶してもよい。アクセス制御部５は、プロセッサ２が出力するメモリアクセス要求ＭＲＥＱに基づいて、メモリ部４のアクセスを制御する。メモリアクセス要求ＭＲＥＱがメモリ部４にデータを書き込むライト要求を示す場合、アクセス制御部５は、メモリアクセス要求ＭＲＥＱとともに、データ線ＤＴを介してメモリ部４に書き込むデータをプロセッサ２から受信する。メモリアクセス要求ＭＲＥＱがメモリ部４からデータを読み出すリード要求を示す場合、アクセス制御部５は、メモリアクセス要求ＭＲＥＱに基づいてメモリ部４から読み出したデータを、データ線ＤＴを介してプロセッサ２に出力する。
【００１４】
アクセス制御部５は、メモリアクセス要求ＭＲＥＱに基づいてメモリ部４にアクセスした内容を含むアクセス情報ＡＩＮＦをアクセス情報保持部６に格納する。例えば、アクセス情報ＡＩＮＦは、アクセスアドレス、リード／ライト種別、読み出しデータ等のアクセスログの情報を含む。また、アクセス制御部５は、アクセス情報保持部６、メモリ情報保持部７、格納情報保持部８、抽出部９および入出力制御部１０の動作を制御する。
【００１５】
アクセス情報保持部６は、アクセス制御部５によりアクセスされたメモリ部４のアクセス情報ＡＩＮＦが格納される複数のアクセス情報保持領域を有する。メモリ情報保持部７は、メモリ部４に関するメモリ情報ＭＩＮＦを保持する複数のメモリ情報保持領域を有する。例えば、メモリ情報ＭＩＮＦは、メモリ部４の記憶容量およびデータ端子数等の構成情報と、クロック周波数、アクセス速度および消費電力等の電気的特性情報とを含む。
【００１６】
格納情報保持部８は、アクセス情報保持部６に格納されるアクセス情報ＡＩＮＦの格納位置を示す格納情報ＭＳＫを保持する複数の格納情報保持領域を有する。メモリ情報ＭＩＮＦおよび格納情報ＭＳＫは、メモリ１の製造メーカが、メモリ１の製造工程（試験工程）において、メモリ情報保持部７および格納情報保持部８にそれぞれ格納する。格納情報保持部８に格納された格納情報ＭＳＫは、非公開であるため、メモリ情報ＭＩＮＦを保持するメモリ情報保持領域は、制御装置３およびプロセッサ２により認識されない。
【００１７】
抽出部９は、格納情報保持部８に保持された格納情報ＭＳＫを用いて、アクセス情報保持部６から読み出された情報からアクセス情報を含むアクセス情報コードＡＩＮＦＣを抽出する。入出力制御部１０は、制御装置３から出力される読み出し要求ＲＲＥＱに基づいて、メモリ情報保持部７に保持されたメモリ情報ＭＩＮＦを出力する。入出力制御部１０は、読み出し要求ＲＲＥＱの要求元である制御装置３から出力されるメモリ情報ＭＩＮＦの受信応答ＡＣＫに基づいて、受信応答のサイクル中に、抽出部９が生成したアクセス情報コードＡＩＮＦＣを出力する。これにより、アクセス情報コードＡＩＮＦＣを出力するサイクルを設けることなく、アクセス情報コードＡＩＮＦＣをメモリ１から制御装置３に出力することができる。
【００１８】
制御装置３の入出力制御部１１は、例えば、プロセッサ２により検出されたメモリ部４のエラーに基づいて、読み出し要求ＲＲＥＱをメモリ１に出力する。入出力制御部１１は、メモリ１からのメモリ情報ＭＩＮＦの受信に基づく受信応答の出力後、受信応答のサイクル中にアクセス情報コードＡＩＮＦＣを受信する受信モードに切り替わる。そして、入出力制御部１１は、受信応答のサイクル中にアクセス情報コードＡＩＮＦＣを受信し、受信したアクセス情報コードＡＩＮＦＣをコード記憶部１２に格納する。コード記憶部１２は、入出力制御部１１から出力されるアクセス情報コードＡＩＮＦＣを記憶する記憶領域を有する。
【００１９】
図２は、図１に示す情報処理装置ＩＰＥ１の動作の一例を示す。まず、プロセッサ２は、メモリアクセス要求ＭＲＥＱをメモリ１に出力し、メモリ１にアクセスする（図２（ａ））。アクセス制御部５は、メモリアクセス要求ＭＲＥＱに基づいて図１に示すメモリ部４にアクセスし、メモリ部４へのアクセス毎に、メモリ部４へのアクセスを示すアクセス情報ＡＩＮＦをアクセス情報保持部６に格納する（図２（ｂ））。
【００２０】
プロセッサ２は、メモリアクセス要求ＭＲＥＱによるメモリ１へのアクセスが失敗した場合、メモリエラーを検出し、メモリエラーの検出を制御装置に通知する（図２（ｃ））。例えば、メモリエラーは、メモリアクセス要求ＭＲＥＱに対して、メモリ１からエラーが通知された場合、または、メモリアクセス要求ＭＲＥＱの出力から所定時間が経過してもメモリ１から応答がない場合に検出される。
【００２１】
メモリエラーの通知を受信した制御装置３は、読み出し要求ＲＲＥＱをメモリ１に出力する（図２（ｄ））。読み出し要求ＲＲＥＱを受信した入出力制御部１０は、受信した読み出し要求ＲＲＥＱをアクセス制御部５に転送する（図２（ｅ））。読み出し要求ＲＲＥＱを受信したアクセス制御部５は、メモリ情報保持部７にメモリ情報ＭＩＮＦを出力させ、アクセス情報保持部６にアクセス情報ＡＩＮＦを含む情報を出力させ、格納情報保持部８に格納情報ＭＳＫを出力させる（図２（ｆ）、（ｇ）、（ｈ））。
【００２２】
入出力制御部１０は、メモリ情報保持部７から出力されたメモリ情報ＭＩＮＦのうちの一部である部分メモリ情報ＭＩＮＦ（１）を制御装置３に出力する（図２（ｉ））。抽出部９は、格納情報保持部８から出力された格納情報ＭＳＫを用いて、アクセス情報保持部６から読み出された情報からアクセス情報ＡＩＮＦを含むアクセス情報コードＡＩＮＦＣを抽出する。そして、抽出部９は、抽出したアクセス情報コードＡＩＮＦＣを入出力制御部１０に出力する（図２（ｊ））。
【００２３】
制御装置３の入出力制御部１１は、部分メモリ情報ＭＩＮＦ（１）を受信したことに基づいて、受信応答ＡＣＫをメモリ１に出力する（図２（ｋ））。例えば、入出力制御部１１のモードは、受信応答ＡＣＫの出力後、受信応答の受信サイクル中にアクセス情報コードＡＩＮＦＣを受信する受信モードに切り替わる。入出力制御部１０は、受信応答ＡＣＫの受信に基づいて、受信応答のサイクル中に、抽出部９が生成したアクセス情報コードＡＩＮＦＣのうちの一部である部分アクセス情報コードＡＩＮＦＣ（１）を出力する（図２（ｌ））。なお、入出力制御部１０は、受信応答ＡＣＫをアクセス制御部５に通知し、アクセス制御部５からの指示に基づいて、受信応答の受信サイクル中に部分アクセス情報コードＡＩＮＦＣ（１）を出力してもよい。
【００２４】
入出力制御部１１は、メモリ１から受信した部分アクセス情報コードＡＩＮＦＣ（１）をコード記憶部１２に格納する。例えば、入出力制御部１１のモードは、部分アクセス情報コードＡＩＮＦＣ（１）の受信後、アクセス情報コードＡＩＮＦＣの受信モードから通常の受信モードに切り替わる。入出力制御部１０は、受信応答ＡＣＫのサイクル後、メモリ情報ＭＩＮＦのうちの別の一部である部分メモリ情報ＭＩＮＦ（２）を制御装置３に出力する（図２（ｍ））。制御装置３の入出力制御部１１は、部分メモリ情報ＭＩＮＦ（２）を受信したことに基づいて、受信応答ＡＣＫをメモリ１に出力する（図２（ｎ））。例えば、入出力制御部１１のモードは、受信応答ＡＣＫの出力後、受信応答のサイクル中にアクセス情報コードＡＩＮＦＣを受信する受信モードに切り替わる。
【００２５】
入出力制御部１０は、受信応答ＡＣＫの受信に基づいて、受信応答のサイクル中に、アクセス情報コードＡＩＮＦＣのうちの別の一部である部分アクセス情報コードＡＩＮＦＣ（２）を出力する（図２（ｏ））。制御装置３の入出力制御部１１は、メモリ１から受信した部分アクセス情報コードＡＩＮＦＣ（２）をコード記憶部１２に格納する。例えば、入出力制御部１１のモードは、部分アクセス情報コードＡＩＮＦＣ（２）の受信後、アクセス情報コードＡＩＮＦＣの受信モードから通常の受信モードに切り替わる。
【００２６】
以降、図２（ｉ）と、図２（ｋ）から図２（ｏ）とに示す動作と同様の動作が実行される。すなわち、メモリ１は、部分メモリ情報ＭＩＮＦ（３）、部分アクセス情報コードＡＩＮＦＣ（３）、部分メモリ情報ＭＩＮＦ（４）および部分アクセス情報コードＡＩＮＦＣ（４）を、制御装置３に出力する（図２（ｐ）、（ｑ））。そして、制御装置３の入出力制御部１１は、メモリ１から受信した部分アクセス情報コードＡＩＮＦＣ（３）、ＡＩＮＦＣ（４）をコード記憶部１２に格納し、メモリエラーが検出された場合の動作が終了する。
【００２７】
なお、制御装置３の入出力制御部１１は、全ての部分アクセス情報コードＡＩＮＦＣ（１）−ＡＩＮＦＣ（４）を受信した後、アクセス情報コードＡＩＮＦＣをコード記憶部１２に格納してもよい。また、入出力制御部１１は、アクセス情報コードＡＩＮＦＣとともに、メモリ情報ＭＩＮＦをコード記憶部１２に格納してもよい。さらに、制御装置３は、受信していないメモリ情報ＭＩＮＦおよびアクセス情報コードＡＩＮＦＣがある場合、読み出し要求ＲＲＥＱをメモリ１に出力し、図２（ｅ）から図２（ｑ）に示す動作を繰り返し実行してもよい。また、メモリ１は、メモリ情報ＭＩＮＦを、部分メモリ情報ＭＩＮＦ（１）−ＭＩＮＦ（４）に分けずに制御装置３に出力し、アクセス情報コードＡＩＮＦＣを、部分アクセス情報コードＡＩＮＦＣ（１）−ＡＩＮＦＣ（４）に分けずに制御装置３に出力してもよい。
【００２８】
以上、図１および図２に示す実施形態では、メモリ１は、メモリ情報ＭＩＮＦの受信に伴って制御装置３から出力される受信応答のサイクル中に、抽出部９が生成したアクセス情報コードＡＩＮＦＣを出力する。これにより、アクセス情報コードＡＩＮＦＣを出力するサイクルを設けることなく、アクセス情報コードＡＩＮＦＣをメモリ１から制御装置３に出力することができる。換言すれば、メモリ情報ＭＩＮＦの読み出しに掛かる時間を利用して、アクセス情報ＡＩＮＦを読み出すことができる。この結果、制御装置３は、メモリ１に搭載されるメモリ部４のアクセス情報ＡＩＮＦをアクセス情報コードＡＩＮＦＣとして効率的に読み出すことができる。
【００２９】
メモリ情報ＭＩＮＦが部分メモリ情報ＭＩＮＦ（１）−ＭＩＮＦ（４）に分けて出力される場合、部分メモリ情報ＭＩＮＦ（１）−ＭＩＮＦ（４）の各々の受信応答のサイクル中に部分アクセス情報コードＡＩＮＦＣ（１）−ＡＩＮＦＣ（４）が出力される。例えば、図２では、部分アクセス情報コードＡＩＮＦＣ（１）−ＡＩＮＦＣ（４）を出力するための４サイクルを省略することができる。
【００３０】
図３は、メモリおよび情報処理装置の別の実施形態を示す。図１および図２に示す実施形態で説明した要素と同一または同様の要素については、同一の符号を付し、これ等については、詳細な説明は省略する。
【００３１】
図３に示す情報処理装置ＩＰＥ２は、例えば、サーバであり、メモリ２０、ＣＰＵ（Central Processing Unit）等のプロセッサ３０、チップセット３６およびＨＤＤ３８（Hard Disk Drive）が搭載されたシステム基板１００を有する。また、情報処理装置ＩＰＥ２は、システム制御装置として機能する制御基板１１０、キーボード１２０、マウス１３０および表示装置１４０を有する。以下の説明では、制御基板１１０は、システム制御装置１１０とも称される。システム制御装置１１０は、メモリを制御する制御装置の一例である。
【００３２】
メモリ２０は、プロセッサ３０に接続され、プロセッサ３０は、チップセット３６を介してＨＤＤ３８、キーボード１２０、マウス１３０および表示装置１４０に接続される。例えば、ＨＤＤ３８は、システム基板１００に取り付けられた図示しないカードスロットを介してチップセット３６に接続される。なお、システム基板１００には、プロセッサ３０等の動作を管理するＢＭＣ（Baseboard Management Controller）またはＵＳＢ（Universal Serial Bus）規格のインタフェース部等が設けられてもよい。
【００３３】
メモリ２０は、複数のメモリチップが積層されたメモリ部２２、メモリ部２２のアクセスを制御するメモリ制御部２４および入出力インタフェース部２６を有する。例えば、メモリ２０は、ＨＭＣまたはＨＢＭ等であり、メモリ部２２に搭載されるメモリチップは、ＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）チップである。プロセッサ３０は、プロセッサコア３２およびメモリアクセスコントローラ３４を有する。
【００３４】
メモリ制御部２４は、メモリ部２２の各メモリチップにアクセスコマンドを出力し、各メモリチップに対するデータの読み書きを制御するとともに、各メモリチップのアクセス情報（アクセスログ）を取得する。また、メモリ制御部２４は、システム制御装置１１０からの読み出し要求に基づいて、各メモリチップのメモリ仕様を示す情報とともにアクセス情報を、通信インタフェースＣＩＦを介してシステム制御装置１１０に出力する機能を有する。メモリ制御部２４の例は、図４に示される。例えば、メモリ制御部２４は、半導体チップ（半導体パッケージ）の形態を有し、メモリ部２２の複数のメモリチップのアクセスを制御する制御チップの一例である。
【００３５】
例えば、メモリ制御部２４は、ＥＣＣ（Error Checking and Correction）機能を有する。例えば、メモリ制御部２４は、メモリ部２２に書き込むデータのエラーを検出、訂正するエラー訂正コードを生成し、データとともにメモリ部２２に書き込み、メモリ部２２から読み出したデータを、エラー訂正コードを用いて訂正する。メモリ制御部２４がＥＣＣ機能を有するため、メモリアクセスコントローラ３４は、ＥＣＣ機能を持たない。
【００３６】
入出力インタフェース部２６は、プロセッサ３０のメモリアクセスコントローラ３４から出力されるメモリアクセス要求を、メモリ制御部２４の動作仕様に合わせて変換し、変換したメモリアクセス要求をメモリ制御部２４に出力する。また、入出力インタフェース部２６は、メモリ制御部２４を介してメモリ部２２から出力される読み出しデータを、メモリアクセスコントローラ３４の動作仕様に合わせて変換し、変換した読み出しデータをメモリアクセスコントローラ３４に出力する。
【００３７】
システム制御装置１１０は、システムコントローラ４０、ＨＤＤ４２および入出力部４４を有する。システムコントローラ４０は、Ｉ２Ｃバス等の通信インタフェースＣＩＦを介して、システム基板１００に搭載されるメモリ２０、プロセッサ３０、チップセット３６およびＨＤＤ３８等の電子部品の状態を制御する機能を有する。例えば、システムコントローラ４０は、Ｉ２Ｃバスのマスタとして動作し、プロセッサ３０、メモリ２０、チップセット３６およびＨＤＤ３８は、Ｉ２Ｃバスのスレーブとして動作する。
【００３８】
また、システムコントローラ４０は、メモリ２０、プロセッサ３０、チップセット３６およびＨＤＤ３８の動作状態を示す情報をＨＤＤ４２に格納する機能を有する。例えば、システムコントローラ４０は、メモリ部２２にアクセスエラーが発生したことを示すエラー通知をプロセッサ３０から受信したことに基づいて、メモリ制御部２４に保持されたメモリ部２２のアクセス情報を読み出してＨＤＤ４２に格納する機能を有する。システムコントローラ４０は、入出力制御部の一例であり、ＨＤＤ４２は、図４に示すアクセス情報コードＡＩＮＦＣを記憶するコード記憶部の一例である。
【００３９】
例えば、プロセッサ３０は、リトライしても回復しないエラーが発生した場合、専用の信号線または割り込みパケット等により、アクセスエラーの通知をシステムコントローラ４０に出力する。なお、アクセスエラーの通知は、メモリ２０からシステムコントローラ４０に直接出力されてもよい。以下の説明では、メモリ部２２に発生したアクセスエラーは、メモリエラーとも称される。
【００４０】
また、システムコントローラ４０は、システム制御装置１１０に接続された保守端末等からの指示に基づいて、ＨＤＤ４２に格納した情報を入出力部４４に接続されたＵＳＢメモリ等の外部記憶装置に格納する機能を有する。システムコントローラ４０の例は、図８に示される。
【００４１】
図４は、図３に示すメモリ制御部２４の一例を示す。メモリ制御部２４の動作の例は、図９および図１０に示される。メモリ制御部２４は、アクセス制御部５０、受信制御部５２、送信制御部５４、クロック逓倍部５６、エラー検出コード生成部５８、抽出部６０、レジスタ部７０、コード対応表７２およびマスク対応表７４を有する。レジスタ部７０は、図３に示すメモリ部２２の構成情報および各メモリチップの仕様を保持するメモリ情報保持部７６と、メモリ部２２のアクセスログ等のアクセス情報ＡＩＮＦを保持するアクセス情報保持部７８とを有する。メモリ情報保持部７６およびアクセス情報保持部７８の例は、図５に示される。コード対応表７２およびマスク対応表７４の例は、図６に示される。
【００４２】
アクセス制御部５０は、入出力インタフェース部２６を介してプロセッサ３０が受信するメモリアクセス要求に基づいてメモリ部２２のアクセスを制御し、メモリ部２２に対してデータを入出力する。アクセス制御部５０は、メモリ部２２にアクセスする毎に、メモリ部２２のアクセス情報をアクセス情報保持部７８に格納する。
【００４３】
アクセス制御部５０は、受信制御部５２および送信制御部５４を制御し、システムコントローラ４０との間でデータＳＤＡを送受信する。アクセス制御部５０は、プロセッサ３０によるメモリエラーの検出に基づいてシステムコントローラ４０から出力される読み出し要求に基づいて、読み出し要求に含まれるアドレスＡＤ１を用いてメモリ情報保持部７６にアクセスする。そして、アクセス制御部５０は、メモリ情報保持部７６におけるアドレスＡＤ１が示すメモリ情報保持領域からメモリ情報ＭＩＮＦを読み出す。
【００４４】
また、アクセス制御部５０は、読み出し要求に基づいて、コード対応表７２におけるアドレスＡＤ１に対応する領域からアドレスＡＤ２、バイト番号ＢＴＮおよびマスクコードＭＣを読み出す。アクセス制御部５０は、読み出したマスクコードＭＣに対応するマスクビットＭＳＫをマスク対応表７４から読み出す。アクセス制御部５０は、コード対応表７２から読み出したアドレスＡＤ２およびバイト番号ＢＴＮに対応するアクセス情報保持部７８のアクセス情報保持領域に保持されたアクセス情報ＡＩＮＦを読み出す。
【００４５】
エラー検出コード生成部５８は、メモリ情報保持部７６から読み出されるメモリ情報ＭＩＮＦのＣＲＣ（Cyclic Redundancy Check）コードを生成し、生成したＣＲＣコードを送信制御部５４に出力する。なお、エラー検出コード生成部５８は、メモリ情報ＭＩＮＦおよびアクセス情報コードＡＩＮＦＣのＣＲＣコードを生成してもよく、ＣＲＣコードの代わりに、パリティコード等の他のエラー検出コードを生成してもよい。さらに、エラー検出コード生成部５８は、エラーが訂正可能なエラー訂正コードを生成してもよい。
【００４６】
抽出部６０は、マスク対応表７４から読み出されるマスクビットＭＳＫを用いて、アクセス情報保持部７８から読み出されるアクセス情報ＡＩＮＦから有効な情報を抽出し、アクセス情報コードＡＩＮＦＣを生成する。抽出部６０は、生成したアクセス情報コードＡＩＮＦＣを送信制御部５４に出力する。抽出部６０の例は、図７に示される。
【００４７】
受信制御部５２は、シリアルクロック線ＳＣＬを介してシステムコントローラ４０から出力されるシリアルクロックＳＣＬに同期して、シリアルデータ線ＳＤＡを介して伝送される読み出し要求等の情報を受信し、受信した情報をアクセス制御部５０に出力する。送信制御部５４は、シリアルクロックＳＣＬに同期して、所定数のメモリ情報ＭＩＮＦと、ＣＲＣとをシリアルデータ線ＳＤＡに出力する。また、送信制御部５４は、メモリ情報ＭＩＮＦの出力の間に逓倍クロックＨ−ＳＣＬに同期してアクセス情報コードＡＩＮＦＣをシリアルデータ線ＳＤＡに出力する。受信制御部５２および送信制御部５４は、入出力制御部の一例である。クロック逓倍部５６は、クロックＳＣＬの周波数を逓倍した逓倍クロックＨ−ＳＣＬを生成する。以下の説明では、シリアルクロックＳＣＬは、単にクロックＳＣＬとも称され、シリアルデータＳＤＡは、単にデータＳＤＡとも称される。
【００４８】
なお、抽出部６０と送信制御部５４との間に、抽出部６０が生成したアクセス情報コードＡＩＮＦＣを符号化する符号化部を設けてもよい。この場合、送信制御部５４は、符号化部により符号化されたアクセス情報コードＡＩＮＦＣを、シリアルデータ線ＳＤＡを介して図３に示すシステムコントローラ４０に出力する。システムコントローラ４０は、符号化されたアクセス情報コードＡＩＮＦＣをＨＤＤ４２に格納する。アクセス情報コードＡＩＮＦＣを符号化することで、アクセス情報コードＡＩＮＦＣが、図１４に示すメモリ２０の製造業者に渡される前に他者に知られることを抑止することができる。
【００４９】
図５は、図４に示すレジスタ部７０の一例を示す。メモリ情報保持部７６は、４バイトのメモリ情報ＭＩＮＦ（部分メモリ情報ＭＩＮＦ３、ＭＩＮＦ２、ＭＩＮＦ１、ＭＩＮＦ０）を保持する複数のメモリ情報保持領域を有する。各メモリ情報保持領域には、アドレスＡＤ１が割り当てられる。メモリ情報保持部７６は、ＥＰＲＯＭ（Erasable Programmable Read-Only Memory）等の不揮発性のメモリ素子を有し、電源が遮断された状態でもメモリ情報ＭＩＮＦを保持する。例えば、メモリ情報保持部７６には、メモリ部２２に搭載される各メモリチップの種別および記憶容量、データ端子数等の構成情報と、クロック周波数およびアクセス速度等の電気的特性を示す情報とが、メモリの製造工程（試験工程）において格納される。メモリ情報保持部７６は、不揮発性であるため、メモリ２０の電源が遮断された場合にも、製造工程で格納された情報を失うことなく保持し続ける。
【００５０】
アクセス情報保持部７８は、４バイトのアクセス情報ＡＩＮＦ（部分アクセス情報ＡＩＮＦ３、ＡＩＮＦ２、ＡＩＮＦ１、ＡＩＮＦ０）を保持する複数のアクセス情報保持領域を有する。アクセス情報保持部７８は、ラッチ回路またはＳＲＡＭ（Static Random Access Memory）等の揮発性の要素を有し、電源が供給されている間、アクセス情報ＡＩＮＦを保持する。アクセス情報保持部７８には、メモリ２０の製造メーカで使用される情報が、製造メーカでのメモリ２０の試験時または情報処理装置ＩＰＥ２に搭載されたメモリ２０の動作時に格納される。例えば、アクセス情報保持部７８に格納されるアクセス情報ＡＩＮＦは、アクセスアドレス、リード／ライト種別、読み出しデータ、誤りを訂正したデータのアクセスアドレス等のアクセスログの情報を含む。
【００５１】
なお、メモリ２０に接続されたプロセッサ３０およびシステムコントローラ４０は、アクセス制御部５０を介して、アクセス情報保持部７８に保持された情報を読み出すことができるが、アクセス情報保持部７８への情報の書き込みは禁止される。また、アクセス情報保持部７８において、アクセス情報ＡＩＮＦが格納されるアクセス情報保持領域の位置は、公開されていない。また、例えば、アクセス情報ＡＩＮＦは、アクセス情報保持部７８の一部の領域に保持され、アクセス情報ＡＩＮＦが保持されるアクセス情報保持領域の数は、メモリ情報保持部７６のメモリ情報保持領域の数より少ない。
【００５２】
図５に示す例では、メモリ情報保持部７６の各メモリ情報保持領域は、アドレス０ｘ００００００から順に割り当てられ、アクセス情報保持部７８の各アクセス情報保持領域は、アドレス０ｘ００１０００から順に割り当てられる。ここで、符号”０ｘ”は、符号に続く６桁の数値が１６進数であることを示す。以下の説明では、メモリ情報保持部７６に割り当てられたアドレスは、アドレスＡＤ１とも称され、アクセス情報保持部７８に割り当てられたアドレスは、アドレスＡＤ２とも称される。アドレスＡＤ２は、複数のアクセス情報保持領域のいずれかを示す位置情報の一例である。例えば、アクセス情報保持部７８の記憶容量は、メモリ情報保持部７６の記憶容量の２０倍である。
【００５３】
図６は、図４に示すコード対応表７２およびマスク対応表７４の一例を示す。コード対応表７２は、メモリ情報保持部７６に割り当てられたアドレスＡＤ１に対応する複数の格納情報保持領域を有する。すなわち、コード対応表７２は、メモリ情報保持部７６のメモリ情報保持領域に対応する複数の格納情報保持領域を有する。
【００５４】
各格納情報保持領域は、アクセス情報保持部７８のアクセス情報保持領域を示すアドレスＡＤ２と、部分アクセス情報ＡＩＮＦ３−ＡＩＮＦ０のいずれかを示すバイト番号ＢＴＮと、マスクコードＭＣとを保持する。バイト番号ＢＴＮは、アクセス情報保持部７８に保持されるアクセス情報ＡＩＮＦのバイト位置を示し、図５に示す部分アクセス情報ＡＩＮＦ３―ＡＩＮＦ０の末尾の数字を示す。マスクコードＭＣは、マスク対応表７４に保持されるマスクビットＭＳＫ［７：０］を示す。
【００５５】
このように、コード対応表７２は、メモリ情報ＭＩＮＦとともにシステムコントローラ４０が出力する部分アクセス情報ＡＩＮＦが保持されたアクセス情報保持領域の位置と、部分アクセス情報ＡＩＮＦ中の有効なビットを示す情報とを保持する。これにより、アクセス情報保持部７８の記憶容量がメモリ情報保持部７６の記憶容量の２０倍の場合にも、コード対応表７２を参照することで、アクセス情報ＡＩＮＦが保持されたアクセス情報保持領域のみにアクセスすることができる。この結果、全てのアクセス情報保持領域にアクセスする場合に比べて、アクセス情報ＡＩＮＦの読み出しに掛かる時間を短縮することができる。
【００５６】
例えば、アクセス情報ＡＩＮＦは、メモリ部２２で発生したメモリエラーに基づいて読み出されるため、緊急性を要する場合がある。また、アクセス情報保持部７８は、ラッチ回路等の揮発性の要素で構築されるため、電源が遮断された場合、保持されたアクセス情報ＡＩＮＦは失われる。例えば、メモリ情報保持部７６の全領域の読み出しに５分掛かる場合、メモリ情報保持部７６の２０倍の記憶容量を有するアクセス情報保持部７８の全領域の読み出しには、１時間４０分掛かる。コード対応表７２により、アクセス情報ＡＩＮＦが保持されたアクセス情報保持領域のみにアクセスすることで、アクセス情報保持部７８の全領域を読み出す場合に比べて、アクセス情報ＡＩＮＦの読み出し時間を短縮することができる。例えば、コード対応表７２により、メモリ情報保持部７６の全領域に対応するアクセス情報保持領域からアクセス情報ＡＩＮＦを読み出す場合、読み出しに掛かる時間は、５分で済む。これにより、電源の遮断よりアクセス情報ＡＩＮＦが失われる可能性を、アクセス情報保持部７８の全領域を読み出す場合に比べて、低くすることができる。
【００５７】
マスクビットＭＳＫ［７：０］に対応するマスクコードＭＣをコード対応表７２に格納することで、アドレスＡＤ２で示されるアクセス情報保持領域毎に、マスクビットＭＳＫ［７：０］の値を相違させることができる。これにより、アクセス情報保持部７８に保持されるアクセス情報ＡＩＮＦのうち、どのビットがアクセス情報コードＡＩＮＦＣであるかという秘匿性を、マスクビットＭＳＫ［７：０］をアクセス情報ＡＩＮＦで共通にする場合に比べて向上することができる。
【００５８】
マスク対応表７４は、４ビットのマスクコードＭＣにより識別される１６種類のマスクビットＭＳＫ［７：０］を保持する複数の領域を有する。すなわち、マスク対応表７４は、マスクコードＭＣに対応するマスクビットＭＳＫ［７：０］を保持する。マスクビットＭＳＫ［７：０］は、コード対応表７２に基づいてアクセス情報保持部７８から読み出す１バイトのアクセス情報ＡＩＮＦから有効な４ビットを抽出するために使用され、”１”が有効を示し、”０”が無効を示す。すなわち、マスクビットＭＳＫ［７：０］は、アクセス情報保持部７８の各アクセス情報保持領域において、有効なアクセス情報ＡＩＮＦが保持されたビットを示す。
【００５９】
マスクビットＭＳＫ［７：０］は、アクセス情報保持部７８に格納されるアクセス情報ＡＩＮＦの格納位置を示す格納情報の一例であり、抽出部６０によるアクセス情報コードＡＩＮＦＣの抽出に使用される。マスクコードＭＣは、アクセス情報保持領域に保持されるアクセス情報ＡＩＮＦ毎に、抽出部６０によるアクセス情報ＡＩＮＦの符号化に使用されるマスクビットＭＳＫ［７：０］を対応付ける対応コードの一例である。コード対応表７２およびマスク対応表７４は、格納情報保持部の一例である。マスクビットＭＳＫ［７：０］は、アクセス情報保持部７８に格納されるアクセス情報ＡＩＮＦの格納位置を示す格納情報の一例である。マスク対応表７４は、複数のマスクコードＭＣのそれぞれに対応するマスクビットＭＳＫ［７：０］を保持する情報連結部の一例である。
【００６０】
コード対応表７２は、アドレスＡＤ１の入力に基づいて、アドレスＡＤ２、バイト番号ＢＴＮおよびマスクコードＭＣを出力する論理回路により構築される。マスク対応表７４は、マスクコードＭＣの入力に基づいて、マスクビットＭＳＫ［７：０］を出力する論理回路により構築される。なお、コード対応表７２およびマスク対応表７４は、揮発性メモリを用いて構築されてもよい。
【００６１】
コード対応表７２に保持されるマスクコードＭＣのビット数（４ビット）は、マスクビットＭＳＫ［７：０］のビット数（８ビット）より少ない。このため、マスクコードＭＣを保持するコード対応表７２の規模を、マスクビットＭＳＫ［７：０］をコード対応表７２に保持する場合に比べて小さくすることができる。なお、コード対応表７２の規模の増大が許容される場合、コード対応表７２のマスクコードＭＣの欄に、マスクビットＭＳＫ［７：０］が直接保持されてもよい。この場合、レジスタ部７０は、マスク対応表７４を持たない。
【００６２】
図７は、図４に示す抽出部６０の一例を示す。抽出部６０は、デコーダ６２およびコード選択部６４を有する。デコーダ６２は、マスク対応表７４から読み出されるマスクビットＭＳＫ７−ＭＳＫ０に基づいて、選択信号ＳＥＬ（ＳＥＬ３−ＳＥＬ０）を生成する。コード選択部６４は、選択信号ＳＥＬに基づいて、複数ビットのアクセス情報ＡＩＮＦ７−ＡＩＮＦ０のうちの有効な４ビットを選択し、選択した４ビットをアクセス情報コードＡＩＮＦＣ（ＡＩＮＦＣ３−ＡＩＮＦＣ０）として出力する。
【００６３】
例えば、マスクビットＭＳＫ［７：０］が”０１１００１１０”の場合、アクセス情報ＡＩＮＦ６、ＡＩＮＦ５、ＡＩＮＦ２、ＡＩＮＦ１がアクセス情報コードＡＩＮＦＣ３、ＡＩＮＦＣ２、ＡＩＮＦＣ１、ＡＩＮＦＣ０として抽出される。この場合、選択信号ＳＥＬ３はアクセス情報ＡＩＮＦ６の選択を示し、選択信号ＳＥＬ２はアクセス情報ＡＩＮＦ５の選択を示し、選択信号ＳＥＬ１はアクセス情報ＡＩＮＦ２の選択を示し、選択信号ＳＥＬ０はアクセス情報ＡＩＮＦ１の選択を示す。
【００６４】
マスクビットＭＳＫ［７：０］が”００１０１１１０”の場合、アクセス情報ＡＩＮＦ５、ＡＩＮＦ３、ＡＩＮＦ２、ＡＩＮＦ１がアクセス情報コードＡＩＮＦＣ３、ＡＩＮＦＣ２、ＡＩＮＦＣ１、ＡＩＮＦＣ０として抽出される。この場合、選択信号ＳＥＬ３はアクセス情報ＡＩＮＦ５の選択を示し、選択信号ＳＥＬ２はアクセス情報ＡＩＮＦ３の選択を示し、選択信号ＳＥＬ１はアクセス情報ＡＩＮＦ２の選択を示し、選択信号ＳＥＬ０はアクセス情報ＡＩＮＦ１の選択を示す。
【００６５】
このように、抽出部６０は、論理１の４ビットのマスクビットＭＳＫに対応する４ビットのアクセス情報ＡＩＮＦを、アクセス情報コードＡＩＮＦＣ３−ＡＩＮＦＣ０として出力する。換言すれば、抽出部６０は、アクセス情報保持部７８から読み出された８ビットのアクセス情報ＡＩＮＦ７−ＡＩＮＦ０のうち、有効なアクセス情報ＡＩＮＦを保持する４ビットを選択することで、アクセス情報コードＡＩＮＦＣを生成する。
【００６６】
図８は、図３に示すシステム制御装置１１０に搭載されるシステムコントローラ４０の一例を示す。システムコントローラ４０は、アクセス制御部８０と、クロック生成部８２、送信制御部８４および受信制御部８６を含む送受信部８８とを有する。アクセス制御部８０は、ＨＤＤ４２および入出力部４４のそれぞれに情報を入出力する。また、アクセス制御部８０は、送受信部８８を制御し、通信インタフェースＣＩＦを介して、図３に示すシステム基板１００に搭載されたメモリ２０およびプロセッサ３０等の電子部品に対して情報を送受信する。この実施形態の通信インタフェースＣＩＦでは、クロックＳＣＬとデータＳＤＡとを用いて、Ｉ２Ｃバス仕様にしたがって情報が送受信される。
【００６７】
クロック生成部８２は、クロックＳＣＬを生成する。送信制御部８４は、アクセス制御部８０から受信した情報を、クロックＳＣＬに同期してシリアルデータ線ＳＤＡに出力する。受信制御部８６は、シリアルデータ線ＳＤＡを介して伝送される情報を、クロックＳＣＬに同期して受信し、受信した情報をアクセス制御部８０に出力する。なお、図１０で説明するように、受信制御部８６は、メモリ制御部２４からメモリ情報ＭＩＮＦを受信した場合、アクノリッジＡをアクノリッジサイクルの前半に出力し、アクノリッジサイクルの後半にアクセス情報コードＡＩＮＦＣを受信する機能を有する。
【００６８】
図９および図１０は、図３に示す情報処理装置ＩＰＥ２の動作の一例を示す。図１０は、図９の動作の続きを示す。図９および図１０に示す動作は、システムコントローラ４０がプロセッサ３０からメモリエラーを示す情報を受信した場合に開始され、システムコントローラ４０（マスタ）とメモリ制御部２４（スレーブ）との間で実行される。データ線ＳＤＡには、システムコントローラ４０（マスタ）とメモリ制御部２４等のスレーブとの間で、データが双方向に転送される。このため、図９および図１０では、システムコントローラ４０が出力するデータＳＤＡと、メモリ制御部２４が出力するデータＳＤＡとを上下に分けて示す。クロックＳＣＬの波形の上に付けた数値は、クロックサイクルの番号を示す。
【００６９】
プロセッサ３０からメモリエラーを示す情報を受信した場合、システムコントローラ４０は、スタートコンディションＳをクロックＳＣＬに同期してデータ線ＳＤＡに出力する（図９（ａ））。スタートコンディションＳは、クロックＳＣＬがハイレベルの期間にデータＳＤＡをハイレベルからロウレベルに変化させることで認識される。次に、システムコントローラ４０は、メモリ２０を識別するスレーブアドレスＳＬＶＡＤ［７：０］と、書き込みを示すフラグＷ（ロウレベル）とを、クロックＳＣＬに同期してデータ線ＳＤＡに順次出力する（図９（ｂ）、（ｃ））。フラグＷは、システムコントローラ４０から出力するデータＳＤＡをメモリ制御部２４に受信させることを示す。スタートコンディションＳおよびストップコンディションＰを除くデータＳＤＡは、クロックＳＣＬのハイレベル期間に論理が確定するように出力される。例えば、システムコントローラ４０およびメモリ制御部２４は、クロックＳＣＬの立ち下がりエッジをクロックＳＣＬの４分の１周期程度遅延させたタイミングでデータＳＤＡを出力し、クロックＳＣＬの立ち下がりエッジに同期してデータＳＤＡの出力を停止する。
【００７０】
自身に割り当てられたスレーブアドレスＳＬＶＡＤ［７：０］を受信したメモリ制御部２４は、フラグＷを検出したことに基づいて、アクノリッジＡ(ロウレベル）をデータ線ＳＤＡに出力する（図９（ｄ））。アクノリッジＡを受信したシステムコントローラ４０は、メモリ２０から読み出すメモリ情報ＭＩＮＦが保持されたメモリ情報保持領域のアドレスＡＤ１（３２ビット）を、アドレスＣＦＧＡＤとして順次出力する（図９（ｅ）、（ｆ）、（ｇ）、（ｈ））。メモリ制御部２４は、アドレスＣＦＧＡＤを８ビット受信する毎にアクノリッジＡをデータ線ＳＤＡに出力する（図９（ｉ）、（ｊ）、（ｋ）、（ｌ））。例えば、プロセッサ３０からメモリエラーを示す情報を受信した後に最初に出力されるアドレスＡＤ１は、図５に示す”０ｘ００００００”である。
【００７１】
４７番目のクロックＳＣＬに同期してアクノリッジＡを受信したシステムコントローラ４０は、データＳＤＡの転送方向を切り替えるために、リピートスタートコンディションＳｒをデータ線ＳＤＡに出力する（図９（ｍ））。次に、システムコントローラ４０は、メモリ２０を識別するスレーブアドレスＳＬＶＡＤ［７：０］と、読み出しを示すフラグＲ（ハイレベル）をデータ線ＳＤＡに順次出力する（図９（ｎ）、（ｏ））。フラグＲは、データＳＤＡをメモリ制御部２４に送信させることを示す。システムコントローラ４０が出力するスタートコンディションＳからフラグＲまでの情報は、メモリ２０からメモリ情報ＭＩＮＦおよびアクセス情報コードＡＩＮＦＣを読み出すための読み出し要求の一例である。
【００７２】
メモリ制御部２４は、読み出し要求を検出したことに基づいて、アクノリッジＡをデータ線ＳＤＡに出力する（図９（ｐ））。また、メモリ制御部２４は、読み出し要求の受信に基づいて、３２ビットのアドレスＣＦＧＡＤ（すなわち、アドレスＡＤ１）で示されるメモリ情報保持領域から４バイトのメモリ情報ＭＩＮＦ３−ＭＩＮＦ０を読み出す。メモリ制御部２４は、例えば、ＣＲＣ−８生成多項式（ｘ８＋ｘ２＋ｘ１＋ｘ０）にしたがって、メモリ情報保持領域から読み出したメモリ情報ＭＩＮＦ３−ＭＩＮＦ０のＣＲＣコードを生成する。
【００７３】
さらに、メモリ制御部２４は、３２ビットのアドレスＣＦＧＡＤ（すなわち、アドレスＡＤ１）で示されるコード対応表７２の格納情報保持領域からアドレスＡＤ２とバイト番号ＢＴＮとマスクコードＭＣとを読み出す。コード対応表７２から読み出したアドレスＡＤ２は、メモリ情報ＭＩＮＦとともにシステムコントローラ４０に出力するアクセス情報コードＡＩＮＦＣを含むアクセス情報ＡＩＮＦが格納されたアクセス情報保持部７８のアクセス情報保持領域（４バイト）を示す。コード対応表７２から読み出したバイト番号ＢＴＮは、メモリ情報ＭＩＮＦとともにシステムコントローラ４０に出力するアクセス情報コードＡＩＮＦＣを含むアクセス情報ＡＩＮＦが格納された４バイトのアクセス情報保持領域内のいずれか１バイトを示す。
【００７４】
メモリ制御部２４は、コード対応表７２から読み出したアドレスＡＤ２とバイト番号ＢＴＮを用いて、アクセス情報保持部７８から１バイトのアクセス情報ＡＩＮＦを読み出す。メモリ制御部２４は、マスク対応表７４を参照し、コード対応表７２から読み出したマスクコードＭＣに対応するマスクビットＭＳＫを読み出す。そして、メモリ制御部２４は、図７で説明したように、マスクビットＭＳＫを使用して、８ビットのアクセス情報ＡＩＮＦから４ビットのアクセス情報コードＡＩＮＦＣを抽出する。
【００７５】
次に、メモリ制御部２４は、メモリ情報保持部７６から読み出した３２ビットのメモリ情報ＭＩＮＦ３−ＭＩＮＦ０のうち、８ビットのメモリ情報ＭＩＮＦ３をデータ線ＳＤＡに順次出力する（図９（ｑ））。システムコントローラ４０は、メモリ情報ＭＩＮＦ３を受信した後、６７番目のクロックサイクルにおいて、クロックＳＣＬの立ち上がりエッジを挟む期間にアクノリッジＡを出力する（図９（ｒ））。システムコントローラ４０がメモリ情報ＭＩＮＦの受信に基づいて出力するアクノリッジＡは、メモリ情報ＭＩＮＦの受信応答を示す。
【００７６】
アクノリッジＡを受信したメモリ制御部２４は、アクノリッジＡを受信したクロックサイクルであるアクノリッジサイクル中に、アクセス情報コードＡＩＮＦＣ３をデータ線ＳＤＡに出力する（図９（ｓ））。アクセス情報コードＡＩＮＦＣ３は、抽出部６０により抽出した４ビットのアクセス情報コードＡＩＮＦＣ３−ＡＩＮＦＣ０のうちの１ビットである。
【００７７】
この後の６８番目から７６番目のクロックサイクルの動作は、５９番目から６７番目のクロックサイクルの動作と同様である。すなわち、メモリ制御部２４は、メモリ情報保持部７６から読み出したメモリ情報ＭＩＮＦ３−ＭＩＮＦ０のうち、８ビットのメモリ情報ＭＩＮＦ２を順次出力する（図９（ｔ））。また、メモリ制御部２４は、アクノリッジＡを受信した後の逓倍クロックＨ−ＳＣＬの立ち下がりエッジに同期して、４ビットのアクセス情報コードＡＩＮＦＣ３−ＡＩＮＦＣ０のうち、アクセス情報コードＡＩＮＦＣ２を出力する（図９（ｕ））。
【００７８】
図１０における７７番目から８５番目のクロックサイクルの動作は、メモリ制御部２４がメモリ情報ＭＩＮＦ１およびアクセス情報コードＡＩＮＦＣ１を出力することを除き、５９番目から６７番目のクロックサイクルの動作と同様である（図１０（ａ））。８６番目から９４番目のクロックサイクルの動作は、メモリ制御部２４がメモリ情報ＭＩＮＦ０およびアクセス情報コードＡＩＮＦＣ０を出力することを除き、５９番目から６７番目のクロックサイクルの動作と同様である（図１０（ｂ））。メモリ情報ＭＩＮＦ３−ＭＩＮＦ０は、部分メモリ情報の一例であり、アクセス情報コードＡＩＮＦＣ３−ＡＩＮＦＣ０は、部分アクセス情報コードの一例である。
【００７９】
以下では、８５番目のクロックサイクルを用いて、メモリ情報ＭＩＮＦの受信応答であるシステムコントローラ４０からのアクノリッジＡの出力タイミングと、メモリ制御部２４からのアクセス情報コードＡＩＮＦＣの出力タイミングとの関係が説明される。システムコントローラ４０は、クロックＳＣＬの立ち上がりエッジに対して、クロックＳＣＬの４分の１周期程度のセットアップ時間と、クロックＳＣＬの８分の１周期程度のホールド時間を有するアクノリッジＡを出力する（図１０（ｃ））。これにより、メモリ制御部２４は、クロックＳＣＬの立ち上がりエッジに同期してアクノリッジＡを確実に受信できる。
【００８０】
メモリ制御部２４は、アクノリッジＡを受信した後の逓倍クロックＨ−ＳＣＬの立ち下がりエッジに同期して、逓倍クロックＨ−ＳＣＬがロウレベルの期間に、アクセス情報コードＡＩＮＦＣ１を出力する（図１０（ｄ））。アクノリッジＡのクロックＳＣＬの立ち上がりエッジに対するホールド時間は、クロックＳＣＬの８分の１周期程度である。このため、メモリ制御部２４がアクセス情報コードＡＩＮＦＣ１を出力するときに、システムコントローラ４０は、アクノリッジＡの出力を完了している。したがって、アクノリッジＡとアクセス情報コードＡＩＮＦＣ１とがクロックＳＣＬの１周期内にデータ線ＳＤＡに相互に伝送される場合にも、アクノリッジＡとアクセス情報コードＡＩＮＦＣ１とが衝突することを抑止することができる（図１０（ｅ））。さらに、アクセス情報コードＡＩＮＦＣ１を逓倍クロックＨ−ＳＣＬに同期して出力することで、アクセス情報コードＡＩＮＦＣ１をクロックＳＣＬに同期して出力する場合に比べて、衝突の可能性を低くすることができる。
【００８１】
システムコントローラ４０は、８５番目のクロックサイクルの立ち上がりエッジから所定時間ｔＤを遅延させたタイミングに同期して、アクセス情報コードＡＩＮＦＣ１を受信する（図１０（ｆ））。所定時間ｔＤは、クロックＳＣＬの３分の１周期程度である。これにより、アクノリッジＡとアクセス情報コードＡＩＮＦＣ１とがクロックＳＣＬの１周期内にデータ線ＳＤＡに相互に伝送される場合にも、システムコントローラ４０は、アクセス情報コードＡＩＮＦＣを正常に送受信することができる。
【００８２】
メモリ情報ＭＩＮＦ３−ＭＩＮＦ０とともにアクセス情報コードＡＩＮＦＣ３−ＡＩＮＦＣ０を受信したシステムコントローラ４０は、ＣＲＣコードを受信するために、リピートスタートコンディションＳｒをデータ線ＳＤＡに出力する（図１０（ｇ））。リピートスタートコンディションＳｒは、スタートコンディションＳと同様に、クロックＳＣＬがハイレベルの期間にデータＳＤＡをハイレベルからロウレベルに変化させることで認識される。メモリ制御部２４は、リピートスタートコンディションＳｒの受信に基づいて、ＣＲＣコードをデータ線ＳＤＡに出力する（図１０（ｈ））。
【００８３】
システムコントローラ４０は、ＣＲＣコードの受信により、アドレスＣＦＧＡＤに対応する全ての情報を受信したため、ノットアクノリッジＮＡをデータ線ＳＤＡに出力する（図１０（ｉ））。ノットアクノリッジＮＡは、クロックＳＣＬのハイレベル期間に、データ線ＳＤＡをハイレベルに設定することで認識される。次に、システムコントローラ４０は、ストップコンディションＰをデータ線ＳＤＡに出力し、アドレスＣＦＧＡＤに対応する情報の受信動作を完了する（図１０（ｊ））。ストップコンディションＰは、クロックＳＣＬがハイレベルの期間にデータＳＤＡをロウレベルからハイレベルに変化させることで認識される。
【００８４】
この後、メモリ情報保持部７６に保持されたメモリ情報ＭＩＮＦと、アクセス情報保持部７８に保持されたアクセス情報ＡＩＮＦに含まれるアクセス情報コードＡＩＮＦＣとを読み出すために、図９および図１０に示す動作が繰り返し実行される。すなわち、メモリ情報保持部７６のメモリ情報保持領域を示すアドレスＡＤ１を示すアドレスＣＦＧＡＤが順次更新され、図９および図１０に示す動作が繰り返し実行される。
【００８５】
図１１は、図９および図１０に示す動作におけるメモリ制御部２４の処理フローの一例を示す。
【００８６】
まず、ステップＳ１０において、メモリ制御部２４のアクセス制御部５０は、アドレスＡＤ１（図９に示すアドレスＣＦＧＡＤ［３１：０］）の受信を待ち、アドレスＡＤ１を受信した場合、処理をステップＳ１２に移行する。ステップＳ１２において、アクセス制御部５０は、アドレスＡＤ１が示すメモリ情報保持部７６のメモリ情報保持領域からメモリ情報ＭＩＮＦ３−ＭＩＮＦ０を読み出す。
【００８７】
次に、ステップＳ１４において、メモリ制御部２４のエラー検出コード生成部５８は、メモリ情報保持部７６から読み出したメモリ情報ＭＩＮＦ３−ＭＩＮＦ０のＣＲＣコードを生成する。次に、ステップＳ１６において、アクセス制御部５０は、アドレスＡＤ１に対応するアドレスＡＤ２とバイト番号ＢＴＮとマスクコードＭＣとをコード対応表７２から読み出す。次に、ステップＳ１８において、アクセス制御部５０は、アドレスＡＤ２により示されるアクセス情報保持領域に保持された４バイトのアクセス情報ＡＩＮＦ３−ＡＩＮＦ０のうち、バイト番号ＢＴＮで示される１バイトのアクセス情報ＡＩＮＦを読み出す。
【００８８】
次に、ステップＳ２０において、アクセス制御部５０は、マスクコードＭＣに対応するマスクビットＭＳＫをマスク対応表７４から読み出す。次に、ステップＳ２２において、メモリ制御部２４の抽出部６０は、アクセス情報保持部７８から読み出したアクセス情報ＡＩＮＦとマスク対応表７４から読み出したマスクビットＭＳＫとを用いて、アクセス情報コードＡＩＮＦＣ３−ＡＩＮＦＣ０を生成する。そして、ステップＳ２４において、メモリ制御部２４の送信制御部５４は、メモリ情報ＭＩＮＦ３−ＭＩＮＦ０と、アクセス情報コードＡＩＮＦＣ３−ＡＩＮＦＣ０と、ＣＲＣコードとをシステムコントローラ４０に送信し、処理を終了する。
【００８９】
図１２は、図１１に示すステップＳ２４の処理の一例を示す。図１２は、図９および図１０に示す動作のうち、図９に示す５９番目のクロックサイクル以降にメモリ制御部２４が実行する処理を示す。
【００９０】
まず、ステップＳ２４０において、メモリ制御部２４のアクセス制御部５０は、送信制御部５４に、メモリ情報ＭＩＮＦ３［７：０］を順次出力させる。次に、ステップＳ２４２において、アクセス制御部５０は、メモリ情報ＭＩＮＦ３［７：０］に対する受信応答を示すアクノリッジＡを受信制御部５２が受信するまで待ち、受信制御部５２がアクノリッジＡを受信した場合、処理をステップＳ２４４に移行する。ステップＳ２４４において、アクセス制御部５０は、送信制御部５４に、アクノリッジＡを受信した後の逓倍クロックＨ−ＳＣＬの立ち下がりエッジに同期してアクセス情報コードＡＩＮＦＣ３を出力させる。
【００９１】
次に、ステップＳ２４６において、アクセス制御部５０は、送信制御部５４に、メモリ情報ＭＩＮＦ２［７：０］を順次出力させる。次に、ステップＳ２４８において、アクセス制御部５０は、メモリ情報ＭＩＮＦ２［７：０］に対する受信応答を示すアクノリッジＡを受信制御部５２が受信するまで待ち、受信制御部５２がアクノリッジＡを受信した場合、処理をステップＳ２５０に移行する。ステップＳ２５０において、アクセス制御部５０は、送信制御部５４に、アクノリッジＡを受信した後の逓倍クロックＨ−ＳＣＬの立ち下がりエッジに同期してアクセス情報コードＡＩＮＦＣ２を出力させる。
【００９２】
ステップＳ２５２からステップＳ２５６の処理、およびステップＳ２５８からステップＳ２６２の処理は、送信するメモリ情報ＭＩＮＦとアクセス情報コードＡＩＮＦＣとが異なることを除き、ステップＳ２４０からステップＳ２４４の処理と同様である。この実施形態では、図５に示すコード対応表７２により、図５に示すレジスタ部７０においてメモリ情報ＭＩＮＦを保持するメモリ情報保持領域と、アクセス情報ＡＩＮＦを保持するアクセス情報保持領域とが対応付けられる。これにより、ステップＳ２４０からステップＳ２６２に示すように、メモリ情報ＭＩＮＦの出力とともに、アクセス情報ＡＩＮＦに含まれるアクセス情報コードＡＩＮＦＣを出力することができる。
【００９３】
ステップＳ２６２の後、ステップＳ２６４において、アクセス制御部５０は、受信制御部５２がリピートスタートコンディションＳｒを受信するまで待ち、受信制御部５２がリピートスタートコンディションＳｒを受信した場合、処理をステップＳ２６６に移行する。ステップＳ２６６において、アクセス制御部５０は、送信制御部５４にコードＣＲＣ［７：０］を順次出力させる。次に、ステップＳ２６８において、アクセス制御部５０は、ノットアクノリッジＮＡとストップコンディションＰとを受信制御部５２が受信するまで待ち、受信制御部５２がノットアクノリッジＮＡとストップコンディションＰとを受信した場合、処理を終了する。
【００９４】
図１３は、図３に示すシステムコントローラ４０の動作の一例を示す。なお、図１３は、メモリ２０でメモリエラーが発生した場合に実行する動作を示しており、システムコントローラ４０は、図１３に示す動作以外にも、システム基板１００に搭載される電子部品の状態を管理する動作を実行する。
【００９５】
まず、ステップＳ３０において、システムコントローラ４０は、プロセッサ３０からのメモリエラーの通知を待ち、メモリエラーの通知を受信した場合、処理をステップＳ３２に移行する。
【００９６】
ステップＳ３２において、システムコントローラ４０は、アドレスＡＤ１（図９に示すアドレスＣＦＧＡＤ［３１：０］）をメモリ制御部２４に出力する。この後、システムコントローラ４０は、図９および図１０に示すように、メモリ情報ＭＩＮＦ３、アクセス情報コードＡＩＮＦＣ３、メモリ情報ＭＩＮＦ２、アクセス情報コードＡＩＮＦＣ２、メモリ情報ＭＩＮＦ１を、メモリ制御部２４から順に受信する。さらに、システムコントローラ４０は、アクセス情報コードＡＩＮＦＣ１、メモリ情報ＭＩＮＦ０、アクセス情報コードＡＩＮＦＣ０およびＣＲＣコードを、メモリ制御部２４から順に受信する。
【００９７】
次に、ステップＳ３４において、システムコントローラ４０は、メモリ制御部２４から受信したＣＲＣコードを用いて、メモリ制御部２４から受信したメモリ情報ＭＩＮＦ３−ＭＩＮＦ０にエラーがあるか否かを検出する。システムコントローラ４０は、メモリ情報ＭＩＮＦ３−ＭＩＮＦ０にエラーがある場合、メモリ情報ＭＩＮＦ３−ＭＩＮＦ０、アクセス情報コードＡＩＮＦＣ３−ＡＩＮＦＣ０、ＣＲＣコードをメモリ制御部２４に再送させるために、処理をステップＳ３２に戻す。システムコントローラ４０は、メモリ情報ＭＩＮＦ３−ＭＩＮＦ０にエラーがない場合、処理をステップＳ３６に移行する。
【００９８】
ステップＳ３６において、システムコントローラ４０は、メモリ制御部２４から受信したメモリ情報ＭＩＮＦ３−ＭＩＮＦ０およびアクセス情報コードＡＩＮＦＣ３−ＡＩＮＦＣ０を、ＨＤＤ４２に格納する。次に、ステップＳ３８において、システムコントローラ４０は、全てのメモリ情報ＭＩＮＦを受信したか否かを判定する。全てのメモリ情報ＭＩＮＦを受信した場合、処理は終了し、全てのメモリ情報ＭＩＮＦを受信していない場合、処理をステップＳ４０に移行する。ステップＳ４０において、システムコントローラ４０は、次のメモリ情報ＭＩＮＦおよびアクセス情報コードＡＩＮＦＣを受信するためにアドレスＡＤ１を更新し、処理をステップＳ３２に戻す。
【００９９】
図１４は、図３に示すメモリ２０で発生したメモリエラーの原因を特定する処理の一例を示す。まず、ユーザ環境下で動作する情報処理装置ＩＰＥ２にメモリエラーが発生し、システム制御装置１１０は、図９および図１０に示すように、メモリ２０からメモリ情報ＭＩＮＦ、アクセス情報コードＡＩＮＦＣおよびＣＲＣコードを読み出す（図１４（ａ））。システム制御装置１１０は、メモリ２０から読み出したメモリ情報ＭＩＮＦおよびアクセス情報コードＡＩＮＦＣをＨＤＤ４２に格納する（図１４（ｂ））。メモリ情報ＭＩＮＦおよびアクセス情報コードＡＩＮＦＣをＨＤＤ４２に格納した情報処理装置ＩＰＥ２は、情報処理装置ＩＰＥ２の製造業者に送付される（図１４（ｃ））。
【０１００】
情報処理装置ＩＰＥ２の製造業者は、情報処理装置ＩＰＥ２を起動した後、情報処理装置ＩＰＥ２に接続した保守端末装置を操作する。そして、保守端末装置は、システム制御装置１１０のＨＤＤ４２からＵＳＢメモリ等の外部記憶装置（記録媒体）にメモリ情報ＭＩＮＦとアクセス情報コードＡＩＮＦＣとを転送する（図１４（ｄ））。次に、情報処理装置ＩＰＥ２の製造業者は、情報処理装置ＩＰＥ２からメモリ２０を取り外す（図１４（ｅ））。そして、情報処理装置ＩＰＥ２の製造業者は、メモリ情報ＭＩＮＦとアクセス情報コードＡＩＮＦＣとが格納された外部記憶装置と、情報処理装置ＩＰＥ２から取り外したメモリ２０とをメモリ２０の製造業者に送付する（図１４（ｆ））。なお、メモリ情報ＭＩＮＦおよびアクセス情報コードＡＩＮＦＣは、インターネット等のネットワークを経由して情報処理装置ＩＰＥ２の製造業者からメモリ２０の製造業者に送付されてもよい。
【０１０１】
メモリ２０の製造業者は、ＬＳＩテスタ等の試験装置に返品されたメモリ２０を装着し、外部記憶装置に記憶されたアクセス情報コードＡＩＮＦＣを試験装置に読み込む。なお、外部記憶装置に記憶されたメモリ情報ＭＩＮＦは、返品されたメモリ２０の構成情報と電気的特性情報とを認識するために使用される。試験装置は、コード対応表７２およびマスク対応表７４に格納された情報と同じ情報を用いて、外部記憶装置に格納されたアクセス情報コードＡＩＮＦＣから元のアクセス情報ＡＩＮＦ（アクセスログ）を復元する（図１４（ｇ））。なお、アクセス情報ＡＩＮＦの復元は、試験装置以外の情報処理装置により実行されてもよい。そして、試験装置は、復元したアクセス情報ＡＩＮＦに基づいて、メモリエラーが発生した状況と同じ状況下で、返品されたメモリ２０を動作させ、メモリエラーを再現し、メモリエラーの原因を特定する不良解析を実施する（図１４（ｈ））。なお、図４に示す抽出部６０と送信制御部５４との間に符号化部が設けられる場合、試験装置または情報処理装置は、符号化されたアクセス情報コードＡＩＮＦＣを復号し、復号したアクセス情報コードＡＩＮＦＣから元のアクセス情報ＡＩＮＦを復元する。
【０１０２】
以上、図３から図１４に示す実施形態においても、図１および図２に示す実施形態と同様の効果を得ることができる。すなわち、アクセス情報コードＡＩＮＦＣを出力するクロックサイクルを設けることなく、アクセス情報コードＡＩＮＦＣをメモリ２０からシステム制御装置１１０に出力することができる。換言すれば、メモリ情報ＭＩＮＦの読み出しに掛かる時間を利用して、アクセス情報コードＡＩＮＦＣを読み出すことができる。この結果、システム制御装置１１０は、メモリ部２２に搭載されるメモリチップのアクセス情報ＡＩＮＦをアクセス情報コードＡＩＮＦＣとして効率的に読み出すことができる。図９および図１０に示す例では、部分メモリ情報ＭＩＮＦ３−ＭＩＮＦ０の各々の受信応答を示すアクノリッジサイクル中に、部分アクセス情報コードＡＩＮＦＣ３−ＡＩＮＦＣ０が出力される。したがって、出力するアクセス情報コードＡＩＮＦＣの数が多いほど、アクセス情報コードＡＩＮＦＣを出力するためのクロックサイクルを省略することができ、アクセス情報コードＡＩＮＦＣの転送効率を向上することができる。
【０１０３】
さらに、図３から図１４に示す実施形態では、メモリ情報ＭＩＮＦを保持するメモリ情報保持領域と、アクセス情報ＡＩＮＦを保持するアクセス情報保持領域とが、コード対応表７２により対応付けられる。これにより、図９および図１０に示すように、メモリ情報ＭＩＮＦの出力とともに、アクセス情報ＡＩＮＦに含まれるアクセス情報コードＡＩＮＦＣを出力することができる。
【０１０４】
コード対応表７２に保持されるマスクコードＭＣとマスクビットＭＳＫ［７：０］とを対応付けるマスク対応表７４を設けることで、コード対応表７２の規模を、マスクビットＭＳＫ［７：０］をコード対応表７２に保持する場合に比べて小さくすることができる。コード対応表７２により、アドレスＡＤ２で示されるアクセス情報保持領域毎にマスクビットＭＳＫ［７：０］の値を相違させることができ、アクセス情報保持部７８に保持されるアクセス情報コードＡＩＮＦＣの秘匿性を向上することができる。
【０１０５】
メモリ制御部２４は、アクセス情報コードＡＩＮＦＣ１を逓倍クロックＨ−ＳＣＬに同期して出力する。これにより、アクセス情報コードＡＩＮＦＣ１をクロックＳＣＬに同期して出力する場合に比べて、アクノリッジＡとアクセス情報コードＡＩＮＦＣ１とが衝突する可能性を低くすることができる。
【０１０６】
以上の詳細な説明により、実施形態の特徴点および利点は明らかになるであろう。これは、特許請求の範囲がその精神および権利範囲を逸脱しない範囲で前述のような実施形態の特徴点および利点にまで及ぶことを意図するものである。また、当該技術分野において通常の知識を有する者であれば、あらゆる改良および変更に容易に想到できるはずである。したがって、発明性を有する実施形態の範囲を前述したものに限定する意図はなく、実施形態に開示された範囲に含まれる適当な改良物および均等物に拠ることも可能である。
【符号の説明】
【０１０７】
１…メモリ；２…プロセッサ；３…制御装置；４…メモリ部；５…アクセス制御部；６…アクセス情報保持部；７…メモリ情報保持部；８…格納情報保持部；９…抽出部；１０、１１…入出力制御部；１２…コード記憶部；２０…メモリ；２２…メモリ部；２４…メモリ制御部；２６…入出力インタフェース部；３０…プロセッサ；３２…プロセッサコア；３４…メモリアクセスコントローラ；３６…チップセット；３８…ＨＤＤ；４０…システムコントローラ；４２…ＨＤＤ；４４…入出力部；５０…アクセス制御部；５２…受信制御部；５４…送信制御部；５６…クロック逓倍部；５８…エラー検出コード生成部；６０…抽出部；６２…デコーダ；６４…コード選択部；７０…レジスタ部；７２…コード対応表；７４…マスク対応表；７６…メモリ情報保持部；７８…アクセス情報保持部；８０…アクセス制御部；８２…クロック生成部；８４…送信制御部；８６…受信制御部；８８…送受信部；１００…システム基板；１１０…制御基板；１２０…キーボード；１３０…マウス；１４０…表示装置；ＡＣＫ…受信応答；ＡＤ１、ＡＤ２…アドレス；ＡＩＮＦ…アクセス情報；ＡＩＮＦＣ…アクセス情報コード；ＡＩＮＦＣ（０）−ＡＩＮＦＣ（３）…部分アクセス情報コード；ＢＴＮ…バイト番号；ＣＩＦ…通信インタフェース；ＤＴ…データ線；Ｈ−ＳＣＬ…逓倍クロック；ＩＰＥ１、ＩＰＥ２…情報処理装置；ＭＣ…マスクコード；ＭＩＮＦ…メモリ情報；ＭＩＮＦ（０）−ＭＩＮＦ（３）…部分メモリ情報；ＭＲＥＱ…メモリアクセス要求；ＭＳＫ…マスクビット；ＲＲＥＱ…読み出し要求；ＳＤＡ…データ；ＳＥＬ０−ＳＥＬ３…選択信号
【図１】
0006673021.tif 000002
【図２】
0006673021.tif 000003
【図３】
0006673021.tif 000004
【図４】
0006673021.tif 000005
【図５】
0006673021.tif 000006
【図６】
0006673021.tif 000007
【図７】
0006673021.tif 000008
【図８】
0006673021.tif 000009
【図９】
0006673021.tif 000010
【図１０】
0006673021.tif 000011
【図１１】
0006673021.tif 000012
【図１２】
0006673021.tif 000013
【図１３】
0006673021.tif 000014
【図１４】
0006673021.tif 000015