(57)【特許請求の範囲】
【請求項１】
第１のメモリへのアクセスを制御する第１のメモリ制御部と、
第２のメモリへのアクセスを制御する第２のメモリ制御部と、
前記第１のメモリ制御部を介して前記第１のメモリ内の部分を順次診断するとともに、前記第１のメモリ制御部による診断と並行して、前記第１のメモリ制御部が順次診断した診断結果を、前記第２のメモリ制御部を介して前記第２のメモリに順次格納する診断制御部と、
診断対象の第１のメモリよりも記憶容量が少ない第２のメモリに、前記第１のメモリからの読み出し結果を診断した判定結果が格納される場合に、前記少ない記憶容量に対応して前記診断制御部による前記第１のメモリの診断を中断させる中断指示部と、を有する演算処理装置。
【請求項２】
主記憶である第１のメモリへのアクセスを制御する第１のメモリ制御部と、
キャッシュである第２のメモリへのアクセスを制御する第２のメモリ制御部と、
前記第１のメモリ制御部を介して前記第１のメモリ内の部分を順次診断するとともに、前記第１のメモリ制御部による診断と並行して、前記第１のメモリ制御部が順次診断した診断結果を、前記第２のメモリ制御部を介して前記第２のメモリに順次格納する診断制御部と、を有する演算処理装置。
【請求項３】
前記診断制御部は、
診断対象の前記第１のメモリへのアクセス信号を送出するアクセス部と、
前記アクセス信号が読み出しを要求するアクセス信号である場合に、前記第１のメモリと第２のメモリのうちの前記第１のメモリからの読み出し結果を選択する第１のセレクタと、
前記第１のセレクタから得られた前記第１のメモリからの読み出し結果を診断する判定部と、
前記第１のメモリを診断するためのアクセス信号と前記判定部の診断結果を格納するための前記第２のメモリへのアクセス信号のいずれかをそれぞれ選択し、前記第１および第２のメモリ制御部のそれぞれに接続する一対の第２のセレクタと、
前記第１のセレクタおよび前記一対の第２のセレクタの選択信号を供給する設定部と
、を備える請求項１または２に記載の演算処理装置。
【請求項４】
前記第１のメモリ制御部と第２のメモリ制御部は、それぞれ、前記演算処理装置中の演算コアからの前記それぞれのメモリへのアクセス信号と前記診断制御部から前記それぞれのメモリへのアクセス信号とを選択する第３のセレクタを有し、
前記設定部は、前記第３のセレクタの選択信号を出力する請求項３に記載の演算処理装置。
【請求項５】
第１のメモリ；
第２のメモリ；および
前記第１のメモリへのアクセスを制御する第１のメモリ制御部と、
前記第２のメモリへのアクセスを制御する第２のメモリ制御部と、
前記第１のメモリ制御部を介して前記第１のメモリ内の部分を順次診断するとともに、前記第１のメモリ制御部による診断と並行して、前記第１のメモリ制御部が順次診断した診断結果を、前記第２のメモリ制御部を介して前記第２のメモリに順次格納する診断制御部と、
診断対象の第１のメモリよりも記憶容量が少ない第２のメモリに、前記第１のメモリからの読み出し結果を診断した判定結果が格納される場合に、前記少ない記憶容量に対応して前記診断制御部による前記第１のメモリの診断を中断させる中断指示部と、を備えた演算処理装置；を有する情報処理装置。
【請求項６】
主記憶である第１のメモリ；
キャッシュである第２のメモリ；および
前記第１のメモリへのアクセスを制御する第１のメモリ制御部と、
前記第２のメモリへのアクセスを制御する第２のメモリ制御部と、
前記第１のメモリ制御部を介して前記第１のメモリ内の部分を順次診断するとともに、前記第１のメモリ制御部による診断と並行して、前記第１のメモリ制御部が順次診断した診断結果を、前記第２のメモリ制御部を介して前記第２のメモリに順次格納する診断制御部と、を備えた演算処理装置；を有する情報処理装置。
【請求項７】
第１のメモリへのアクセスを制御する第１のメモリ制御部と、第２のメモリへのアクセスを制御する第２のメモリ制御部とを有する演算処理装置において、
前記演算処理装置が有する診断制御部が、
前記第１のメモリ制御部を介して前記第１のメモリ内の部分を順次診断し、
前記第１のメモリ制御部による診断と並行して、前記第１のメモリ制御部が順次診断した診断結果を、前記第２のメモリ制御部を介して前記第２のメモリに順次格納し、
前記演算処理装置が有する中断指示部が、診断対象の第１のメモリよりも記憶容量が少ない第２のメモリに、前記第１のメモリからの読み出し結果を診断した判定結果が格納される場合に、前記少ない記憶容量に対応して前記診断制御部による前記第１のメモリの診断を中断させる演算処理装置の制御方法。
【請求項８】
主記憶である第１のメモリと、キャッシュである第２のメモリと、前記第１のメモリへのアクセスを制御する第１のメモリ制御部と、前記第２のメモリへのアクセスを制御する第２のメモリ制御部とを有する演算処理装置において、
前記演算処理装置が有する診断制御部が、
前記第１のメモリ制御部を介して前記第１のメモリ内の部分を順次診断し、
前記第１のメモリ制御部による診断と並行して、前記第１のメモリ制御部が順次診断した診断結果を、前記第２のメモリ制御部を介して前記第２のメモリに順次格納する演算処理装置の制御方法。
【請求項９】
前記診断制御部が、
診断対象の前記第１のメモリへのアクセス信号と前記診断結果を前記第２のメモリに格納するアクセス信号とから前記第１のメモリへのアクセス信号を選択して前記第１のメモリに送出し、
前記アクセス信号が読み出しを要求するアクセス信号である場合に、前記第１のメモリと第２のメモリのうちの前記第１のメモリからの読み出し結果を選択し、
前記選択された前記第１のメモリからの読み出し結果を診断し、
前記診断対象の前記第１のメモリへのアクセス信号と前記診断結果を前記第２のメモリに格納するアクセス信号とから、前記診断結果を前記第２のメモリに格納するアクセス信号を選択して前記第２のメモリに送出する請求項７または８に記載の演算処理装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、演算処理装置、情報処理装置および演算処理装置の制御方法に関する。
【背景技術】
【０００２】
近年、メモリの物理的形状、構造、利用形態等が多様となり、故障の解析が困難な場合が想定される。例えば、積層メモリについては、内部の物理的な構造が従来のものとは変化しており、メモリセルの物理的位置に依存して故障が発生することが考えられる。また、例えば、水冷モジュールなどをメモリに実装する場合には、加圧などによる物理的負荷で内部の電気特性の変化や微小な破損の発生が想定される。また、運搬時において、多様な形状、構造のメモリに加わる物理的負荷により、メモリが故障することが考えられる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−１６７９８号公報
【特許文献２】特開平１０−１７１６７６号公報
【特許文献３】特開昭６２−５８３５４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
メモリ故障の単純な傾向を見るだけであれば、いくつかの限定された故障アドレスから故障を解析することが可能である。しかし、今後、情報処理装置に実装されるメモリの故障、電気特性の変化等は、従来よりも広範囲で発生し、故障解析のデータ量が増加する可能性がある。さらに、メモリを実装した後の故障解析は、短時間で実施することが望ましい。
【０００５】
そこで、本発明の課題は、メモリを装置に実装後に、従来よりも広範囲で高速にメモリを診断可能にすることにある。
【課題を解決するための手段】
【０００６】
本発明の一側面は、以下の演算処理装置によって例示される。すなわち、この演算処理装置は、第１のメモリと、第２のメモリと、第１のメモリへのアクセスを制御する第１のメモリ制御部と、第２のメモリへのアクセスを制御する第２のメモリ制御部と、第１のメモリ制御部を介して第１のメモリ内の部分を順次診断するとともに、第１のメモリ制御部による診断と並行して、第１のメモリ制御部が順次診断した診断結果を、第２のメモリ制御部を介して第２のメモリに順次格納する診断制御部とを有する。
【発明の効果】
【０００７】
本発明の実施形態に係る演算処理装置、情報処理装置および演算処理装置の制御方法によれば、メモリを装置に実装後に、従来よりも広範囲で高速にメモリを診断できる。
【図面の簡単な説明】
【０００８】
【図１】情報処理装置の構成を例示する図である。
【図２】実施形態１の情報処理装置の構成を例示する図である。
【図３】診断系設定・制御部、診断結果判定部、および診断メモリアクセス部の詳細構成を例示する図である。
【図４】診断メモリアクセス部の制御シーケンスを例示する図である。
【図５】診断結果判定部の制御シーケンスを例示する図である。
【図６】実施形態２の情報処理装置の構成を例示する図である。
【図７】診断結果判定部の詳細を例示する図である。
【発明を実施するための形態】
【０００９】
以下、図面を参照して一実施形態に係る情報処理装置について説明する。図１に情報処理装置の構成を例示する。本情報処理装置は、プロセッサ１と、メモリ２と、記憶装置２Ａと、管理装置４とを有する。プロセッサ１は、本情報処理装置に実装されたメモリ２を所定の診断手順にしたがって診断する。例えば、プロセッサ１は、メモリ２を診断し、故障の有無を判定し、故障の状況を示す診断結果データを記憶装置２Ａに格納する。以下、診断を試験ともいう。また、診断結果を試験結果ともいう。プロセッサ１が演算処理装置の一例である。
【００１０】
メモリ２は、本情報処理装置に実装された記憶装置の１つであり、プロセッサ１による診断の対象である。記憶装置２Ａは、プロセッサ１によるメモリ２の診断結果を格納する。メモリ２と、記憶装置２Ａとは、それぞれ異なるメモリチップであってもよい。また、記憶装置２Ａは、メモリ２の一部であってもよい。例えば、プロセッサ１は、メモリ２の各部に対して、互いに独立にアクセスするメモリ制御装置を有するようにすればよい。そして、プロセッサ１は、第１のメモリ制御装置によりメモリ２の第１の領域の各部の診断を順次行い、第１の領域の診断と並列に第１の領域の各部の診断結果を第２のメモリ制御装置によりメモリ２の第２の領域に格納すればよい。
【００１１】
記憶装置２Ａは、例えば、メモリ２の各アドレスに対して、例えば、訂正可能なエラーの発生、訂正不可能なエラーの発生、エラーなしの３つの診断結果を保持する。したがって、記憶装置２Ａは、メモリ２の各アドレスに対して、例えば、３ビットの診断結果を保持すればよい。
【００１２】
加えて、診断結果がどのbitでの故障であるか分かるようなエラーである場合には、記
憶装置２Ａは、どのbitでの故障であるかの情報を記憶するようにしてもよい。また、上
記の３ビットの診断結果は、1bit故障などの通常の故障判定ができることを前提にしている。ただし、故障モードによっては複数のビットが同じタイミングでエラーとなる多重bit故障の可能性も考えられる。そのため、単純な書き込み、読み込みによって正しい値が
読めるか否かの診断ができることも望ましい。このような単純な書き込み、読み込みによる診断では、記憶装置２Ａは、メモリ２のメモリセル数の診断結果を保持できる容量を有することが望ましい。プロセッサ１は、メモリ２の診断対象範囲の診断中は、エラーの有無によらず、メモリ２の診断対象範囲を停止することなく診断を行うことが望ましい。かつ、プロセッサ１は、診断対象範囲の各部の診断と並列に、各部の診断結果を順次、記憶装置２Ａに伝達できることが望ましい。プロセッサ１は、メモリ２の診断対象範囲を停止することなく診断を行うことで、診断条件を均一にして、メモリ２の複数の診断対象範囲をそれぞれ診断できるからである。
【００１３】
管理装置４は、記憶装置２Ａから診断結果を取得し、エラーの発生状況を解析する。管理装置４は、物理的構造上の位置でのエラー発生状況を表示するため、メモリ２のアドレスをメモリ２の物理的構造上の位置へ変換してもよい。また、メモリ２においてメモリセルの接続が３次元方向に広がっている場合には、管理装置４は解析の際、３次元方向、例えば、ＸＹＺの３軸方向も考慮に入れた解析を行うことが望ましい。そのため、管理装置４による解析では、メモリ２のアドレスに対する物理的構造上の位置情報を基に、故障個所の物理的な位置情報を提供することが求められる。
【００１４】
管理装置４は、メモリ２の一部における特徴がある問題の検出の他に、メモリ２全体における問題個所の把握が可能な情報を提供することが望ましい。このため、プロセッサ１
および管理装置４は、実装後のメモリ２の品質を、メモリセルレベルで従来と同程度の時間または従来よりも短時間で診断できるようにする。管理装置４は、メモリセルレベルの情報から、統計的な解析を行う。そして、管理装置４は、例えば、表示装置を用いて解析結果を表示し、問題発生の原因を特定するための情報をユーザに提供する。
【００１５】
以上の処理を実行するため、プロセッサ１および管理装置４は、メモリ２を広範囲にメモリセルレベルで診断し、従来と同程度の時間または従来よりも短時間で診断結果を取得することが望ましい。そこで、実施形態に例示する情報処理装置の課題の１つは、各部の診断と並列に診断結果の詳細データを高速に保存することにある。そのための解決策としては以下のものが例示できる。
（解決策１）  プロセッサ１は、隣接するメモリへの書き込みパスを有するようにして、隣接メモリに結果を保存する。
（解決策２）  プロセッサ１は、２次キャッシュメモリまたはデータキャッシュメモリを診断結果の値保持に利用して、外部補助記憶に結果を保存する。なお、プロセッサ１は、外部補助記憶に直接、診断の結果を書き込むようにしてもよい。
【００１６】
［実施形態１］
図２に、実施形態１の情報処理装置の構成を例示する。図２は、解決策１にしたがった具体的な情報処理装置の構成図である。図２のように、本情報処理装置は、プロセッサ１と、複数のメモリ２−１、２−２等を有する。さらに、図２では、プロセッサ１は、外部コントローラ３に接続されている。外部コントローラ３は、図１の管理装置４の一例である。
【００１７】
プロセッサ１は、メモリ２−１、２−２等にアクセスし、演算処理を実行する。メモリ２−１、２−２等は、それぞれ、例えば、メモリチップである。図２では、メモリ２−１、２−２が例示されているが、メモリチップの数が２個に限定される訳ではない。メモリ２−１、２−２等は、所定のインターフェース規格にしたがって、データ書き込み要求、データ読み出し要求等をプロセッサ１から受け付ける。また、メモリ２−１、２−２等は、読み出し要求対象のデータをプロセッサ１に出力する。以下、メモリ２−１、２−２等が総称される場合には、メモリ２と呼ばれる。
【００１８】
プロセッサ１は、コア・キャッシュ１０と、複数のメモリ制御装置１１−１、１１−２等と、メモリ診断制御装置１２を有する。コア・キャッシュ１０は、複数のプロセッサコアと、キャッシュを有する。コア・キャッシュ１０は、複数のプロセッサコアの一例ということもできる。メモリ２−１、２−２が複数のメモリの一例である。また、メモリ制御装置１１−１、１１−２が複数のメモリ制御部の一例である。また、メモリ診断制御装置１２が診断制御部の一例である。プロセッサコアが演算コアの一例である。
【００１９】
本実施形態では、プロセッサ１は、複数のメモリ２−１、２−２等にそれぞれ対応するメモリ制御装置１１−１、１１−２等を有する。図２では、メモリ制御装置１１−１、１１−２が例示されているが、メモリ制御装置の数が２個に限定される訳ではない。以下、メモリ制御装置１１−１、１１−２等が総称される場合には、メモリ制御装置１１と呼ばれる。
【００２０】
例えば、メモリ制御装置１１−１は、セレクタ１１１−１、送信データ制御部１１２−１、アクセス制御部１１３−１、受信データ制御部１１４−１を有する。セレクタ１１１−１は、メモリ診断制御装置１２から選択信号を受け、コア・キャッシュ１０からメモリ２−１への要求と、メモリ診断制御装置１２からメモリ２−１への要求のうち一方を選択する。セレクタ１１１（１１１−１、１１１−２）が第３のセレクタの一例である。
【００２１】
送信データ制御部１１２−１は、例えば、バッファを有し、セレクタ１１１−１を介して、コア・キャッシュ１０からメモリ２−１への要求、またはメモリ診断制御装置１２からメモリ２−１への要求を受け付ける。そして、送信データ制御部１１２−１は、受け付けた要求にしたがって、アクセス制御部１１３−１を介して、メモリ２−１にアクセスし、データの書き込み、あるいはデータの読み出しを実行する。
【００２２】
アクセス制御部１１３−１は、例えば、メモリ２−１の規格にしたがったインターフェース回路である。アクセス制御部１１３−１は、例えば、クロック信号、アドレス信号、書き込みデータ信号、ストローブ信号等をメモリ２−１に入力する。
【００２３】
受信データ制御部１１４−１は、例えば、バッファを有し、アクセス制御部１１３−１を介して、メモリ２−１から、読み出しデータを取得する。受信データ制御部１１４−１は、メモリ２−１からの読み出しデータをコア・キャッシュ１０およびメモリ診断制御装置１２に、分岐して供給する。なお、メモリ制御装置１１−２の構成、および動作は、メモリ制御装置１１−１と同様であるので、説明を省略する。なお、メモリ制御装置１１−２の各構成要素には、ハイフン（−）とともに枝番２を付している。
【００２４】
メモリ診断制御装置１２は診断系設定・制御部１２１と、診断結果判定部１２２と、診断メモリアクセス部１２３と、セレクタ１２４、１２５、１２６を有する。診断系設定・制御部１２１が設定部の一例である。診断結果判定部１２２が判定部の一例である。診断メモリアクセス部１２３がアクセス部の一例である。セレクタ１２６が第１のセレクタの一例である。セレクタ１２４、１２５が一対の第２のセレクタの一例である。例えば、セレクタ１２４は、メモリ２−１が診断対象の第１のメモリである場合に、診断対象の第１のメモリ２−１へのアクセス信号と診断結果を第２のメモリ２−２に格納するアクセス信号とから第１のメモリへのアクセス信号を選択する。そして、選択された信号は、第１のメモリに送出される。また、例えば、セレクタ１２５は、メモリ２−２が診断結果を格納する第２のメモリである場合に、第２のメモリ２−２に格納するアクセス信号を選択して第２のメモリに送出する。
【００２５】
診断系設定・制御部１２１は、外部コントローラ３から指令を受けて、メモリ２−１、２−２等の診断のためのセレクタ１１１、１２４、１２５、１２６等の選択信号を設定し、診断処理を起動する。
【００２６】
例えば、メモリ２−２が診断され、メモリ２−１に診断結果が格納される場合を例示する。診断系設定・制御部１２１は、セレクタ１１１−１、１１１−２に対して、コア・キャッシュ１０からのアクセスを遮断し、メモリ診断制御装置１２からの信号を選択するように選択信号を出力する。また、診断系設定・制御部１２１は、セレクタ１２５に対して、診断結果判定部１２２からの信号を遮断し、診断メモリアクセス部１２３からの信号を選択するように選択信号を出力する。また、診断系設定・制御部１２１は、セレクタ１２４に対して、診断メモリアクセス部１２３からの信号を遮断し、診断結果判定部１２２からの信号を選択するように選択信号を出力する。また、診断系設定・制御部１２１は、セレクタ１２６に対して、メモリ制御装置１１−１からの信号を遮断し、メモリ制御装置１１−２からの信号を選択するように選択信号を出力する。そして、診断系設定・制御部１２１は、診断処理を起動する。
【００２７】
すると、診断メモリアクセス部１２３は、セレクタ１２５を介して、診断のためのメモリアクセス信号をメモリ制御装置１１−２の送信データ制御部１１２−２に送信する。送信データ制御部１１２−２は、アクセス制御部１１３−２を介して、メモリ２−２に診断データの書き込み、あるいは読み出しを実行する。受信データ制御部１１４−２は、読み出し要求にしたがって読み出されたデータを取得し、セレクタ１２６を介して、診断結果
判定部１２２に送信する。
【００２８】
診断結果判定部１２２は、メモリ２−２から読み出されたデータと期待値データとを比較し、診断結果を生成する。診断結果判定部１２２は、セレクタ１２４および１１１−１を介して、メモリ制御装置１１−１の送信データ制御部１１２−１に対して、メモリ２−１に診断結果を書き込むための要求を送信する。送信データ制御部１１２−１は、診断結果判定部１２２から受け付けた要求にしたがって、アクセス制御１１３−１を介して、診断結果をメモリ２−１に書き込む。メモリ２−１が診断され、メモリ２−２に診断結果が格納される場合も、手順は同様である。
【００２９】
このようにして、メモリ診断制御装置１２は、メモリ２−１、２−２のいずれか一方を診断し、診断結果を他方に格納する。このような診断と診断結果の格納は、セレクタ１２４、１２５、メモリ制御装置１１−１、１１−２を通じて、それぞれ並列に実行される。したがって、メモリ診断制御装置１２は、メモリ２−１、２−２等の診断結果にエラーが含まれたとしても、診断の進行を停止することなく、メモリ２−１、２−２等の診断を続行できる。すなわち、メモリ診断制御装置１２は、所定の手順、例えば、所定のクロックにしたがって所定のアクセス速度でメモリ２−１、２−２等のうちの一方の各部の診断を行い、診断と並列にメモリ２−１、２−２等のうちの他方に診断結果を保存できる。すなわち、メモリ診断制御装置１２は、診断制御部として、第１のメモリ制御部の一例であるメモリ制御装置１１−１を通じて第１のメモリ２−１内の部分を順次診断する。メモリ診断制御装置１２は、この診断の実行とともに、診断と並列に診断済み部分での診断結果を順次第２のメモリ制御部の一例であるメモリ制御装置１１−２を通じて第２のメモリ２−２に格納する。
【００３０】
図３に、診断系設定・制御部１２１、診断結果判定部１２２、および診断メモリアクセス部１２３の詳細構成を例示する。図３の各構成要素は、所定の手順にしたがった制御を実行するデジタル回路を含むハードウェア回路で実現される。ただし、例えば、診断系設定・制御部１２１は、メモリ上のコンピュータプログラムを実行する制御用のプロセッサであってもよい。診断系設定・制御部１２１は、メモリ２の診断を実行するための設定と、終了時の制御を実行し、メモリ２−１、２−２へ直接アクセスする構成要素ではないからである。
【００３１】
診断系設定・制御部１２１は、診断設定部１２１１、メモリ診断状態フラグ１２１２−１、１２１２−２、診断状態フラグ１２１３−１、１２１３−２、および診断ステータス１２１９を有する。
【００３２】
診断結果判定部１２２は、判定部１２２１、診断結果出力部１２２２、メモリ診断結果書き込み部１２２３、診断試験パターン期待値部１２２４、および診断ステータス１２２９を有する。
【００３３】
診断メモリアクセス部１２３は、診断制御部１２３１、メモリアクセス部１２３２，診断制御ポインタ１２３３、診断試験パターン設定部１２３４、中断ポインタ１２３５および診断ステータス１２３９を有する。中断ポインタ１２３５が中断指示部の一例である。
【００３４】
このうち、診断系設定・制御部１２１の診断設定部１２１１は、外部コントローラ３から、診断の指定を受け付け、各種設定を行い、診断処理を起動する。より具体的には、診断設定部１２１１は、診断処理のためセレクタ１１１−１、１１１−２、１２４、１２５、１２６等を設定する。
【００３５】
すなわち、診断設定部１２１１は、メモリ診断状態フラグ１２１２−１にセレクタ１２
４の選択情報を設定する。セレクタ１２４は、メモリ診断状態フラグ１２１２−１の設定値にしたがって、診断結果判定部１２２のメモリ診断結果書き込み部１２２３および診断メモリアクセス部１２３のメモリアクセス部１２３２のいずれかの出力信号を選択する。
【００３６】
また、診断設定部１２１１は、メモリ診断状態フラグ１２１２−２にセレクタ１２５およびセレクタ１２６の選択情報を設定する。セレクタ１２５は、メモリ診断状態フラグ１２１２−２の設定値にしたがって、診断結果判定部１２２のメモリ診断結果書き込み部１２２３および診断メモリアクセス部１２３のメモリアクセス部１２３２のいずれかの出力信号を選択する。また、セレクタ１２６は、診断状態フラグ１２１３−２の設定値にしたがって、図２に例示したメモリ制御装置１１−１および１１−２のいずれかの出力信号を選択する。なお、セレクタ１２４とセレクタ１２５とは、同一のフラグ、例えば、メモリ診断状態フラグ１２１２−１を参照して、信号を選択するようにしてもよい。その場合には、診断状態フラグ１２１３−２は、セレクタ１２６の信号選択を制御する。
【００３７】
さらに、診断設定部１２１１は、診断状態フラグ１２１３−１、１２１３−２に、それぞれセレクタ１１１−１、１１１−２の選択情報を設定する。セレクタ１１１−１および１１１−２は、診断状態フラグ１２１３−１、１２１３−２の設定値にしたがって、メモリ診断制御装置１２の出力信号およびコア・キャッシュ１０の出力信号のいずれかを選択する。すなわち、診断設定部１２１１は、診断実行時には、診断状態フラグ１２１３−１、１２１３−２、セレクタ１１１−１、１１１−２により、コア・キャッシュ１０からメモリ２−１へのアクセスを遮断する。セレクタ１１１−１、１１１−２は、第３のセレクタとして、プロセッサ１中のプロセッサコアからのメモリ２−１、２−２等へのアクセス信号とメモリ診断制御装置１２からメモリ２−１、２−２へのアクセス信号とを選択する。
【００３８】
また、診断系設定・制御部１２１の診断設定部１２１１は、診断メモリアクセス部１２３の診断制御ポインタ１２３３の初期値、および診断試験パターン設定部１２３４の診断試験パターンを設定する。また、診断設定部１２１１は、診断結果判定部１２２の診断試験パターン期待値部１２２４に、診断試験パターン設定部１２３４と同一の診断試験パターンを設定する。なお、診断設定部１２１１は、診断試験パターン設定部１２３４に繰り返しの単位となるパターンを設定し、診断試験パターン期待値部１２２４に繰り返しの単位となるパターンを繰り返した、いわば展開されたパターンを設定してもよい。また、診断試験パターン設定部１２３４と、診断試験パターン期待値部１２２４とが、同一の記憶手段であってもよい。
【００３９】
さらに、診断系設定・制御部１２１の診断設定部１２１１は、中断ポインタ１２３５を設定する。中断ポインタ１２３５は、診断対象のメモリ（例えば、２−１）よりも診断結果格納用のメモリ（例えば、２−２）の記憶容量が小さい場合に参照される。中断ポインタ１２３５は、診断を中断させ、診断結果を外部コントローラ３に取得させ、その後に診断処理を再開するための判断の基準となる値を保持する。以上の準備の後、診断設定部１２１１は、診断制御部１２３１に診断の開始を指示する。また、診断設定部１２１１は、診断ステータス１２３９に診断終了を指示する。
【００４０】
診断メモリアクセス部１２３の診断試験パターン設定部１２３４には、診断試験パターンまたは診断試験パターンの繰り返し単位が格納される。診断制御ポインタ１２３３は、診断対象のメモリ２−１、２−２等の診断対象アドレスを生成する基準となる値を保持する。また、診断制御ポインタ１２３３は、診断試験パターン設定部１２３４内の診断試験パターンの位置を特定する値を保持する。なお、図３では、診断制御ポインタ１２３３が１つ例示され、診断対象アドレスを生成する基準となる値と、診断試験パターンの位置を特定する値を保持する値を兼用して保持する。しかし、診断制御ポインタ１２３３が２つ
のエントリを有し、それぞれのエントリが、診断対象アドレスを生成する基準となる値と、診断試験パターンの位置を特定する値を保持するようにしてもよい。
【００４１】
診断メモリアクセス部１２３の中断ポインタ１２３５は、診断が中断される診断対象アドレスを保持する。例えば、診断対象メモリ（２−１）よりも診断結果を格納するメモリ（２−２）の記憶容量が小さい場合、診断結果を格納するメモリ（２−２）の記憶容量が限界となるアドレスが中断ポインタ１２３５に設定される。そして、診断メモリアクセス部１２３は、診断対象メモリ（２−１）の診断範囲が中断ポインタの値に達すると、一旦診断を中断する。
【００４２】
診断制御部１２３１は、診断の進行とともに、診断制御ポインタ１２３３をカウントアップし、診断対象のメモリ２−１、２−２等の診断対象アドレスを生成する。例えば、メモリ２−１、２−２等からの読み出し試験の場合には、診断制御部１２３１は、診断制御ポインタ１２３３にしたがって、メモリアクセス部１２３２に読み出し要求を発生させる。読み出し要求が読み出しを要求するアクセス信号の一例である。なお、書き込み試験では、診断制御部１２３１は、診断制御ポインタ１２３３にしたがって、メモリアクセス部１２３２に書き込み要求を発生させる。メモリアクセス部１２３２は、セレクタ１２４または１２５を介して、メモリ制御装置１１−１または１１−２に読み出し要求を送出する。
【００４３】
セレクタ１２４、１２５は、一対の第２のセレクタとして、第１のメモリ２−１を診断するためのアクセス信号と判定部の診断結果を格納するための第２のメモリ２−１へのアクセス信号のいずれかをそれぞれ選択する。そして、セレクタ１２４、１２５は、選択したそれぞれのアクセス信号を第１のメモリ制御部１１−１および第２のメモリ制御部１１−２のそれぞれに接続する。
【００４４】
また、診断制御部１２３１は、書き込み試験の場合には、診断制御ポインタ１２３３にしたがって、診断試験パターン設定部１２３４内の診断試験パターンを取得する。そして、診断制御部１２３１は、診断制御ポインタ１２３３にしたがってメモリアクセス部１２３２に書き込み要求を発生させる。メモリアクセス部１２３２は、セレクタ１２４または１２５を介して、メモリ制御装置１１−１（または１１−２）に、診断パターンのメモリ２−１または２−２への書き込み要求を送出する。診断制御部１２３１は、診断制御ポインタ１２３３をカウントアップし、診断制御ポインタ１２３３のカウント値が所定の目標値に達するまで診断を継続する。診断系設定・制御部１２１から診断ステータス１２３９に診断完了が通知されると、
診断制御部１２３１は、診断を終了する。
【００４５】
診断結果判定部１２２の診断試験パターン期待値部１２２４は、読み出し試験に対する期待値を格納する。診断対象がメモリ２−１の場合には、診断結果判定部１２２１は、セレクタ１２６を介して、診断対象のメモリ２−１からの読み出しデータと診断対象アドレス、すなわち、読み出しデータの読み出しアドレスとを取得する。診断試験パターン期待値部１２２４は、取得したメモリ２−１からの読み出しデータと、診断試験パターン期待値部１２２４の期待値とを照合し、診断出力部１２２２に出力する。また、診断結果判定部１２２１は、診断対象のメモリ２−１、２−２からの読み出しデータとともに、診断対象アドレス、すなわち、読み出しデータの読み出しアドレスを保持しており、診断出力部１２２２に出力する。
【００４６】
診断出力部１２２２は、メモリ診断書き込み部１２２３を通じて、診断結果をメモリ２−２に格納する。格納先アドレスは、診断対象アドレスから一意に特定されるアドレスである。診断結果判定部１２２１は、この診断対象アドレスに対応するメモリ２−２の格納
先アドレスを生成する。メモリ２−２の格納先アドレスは、例えば、メモリ２−１の診断対象アドレスを所定バイトシフトしたアドレスである。メモリ診断書き込み部１２２３は、診断の進行とともに、格納先アドレスを更新しセレクタ２５を通じてメモリ制御装置１１−２に対して、診断結果のメモリ２−２への書き込みを要求する。
【００４７】
図４に、診断メモリアクセス部１２３の制御シーケンスを例示する。診断メモリアクセス部１２３は、診断試験のメモリアクセスを行うたびに（Ｓ１）、診断制御ポインタ１２３３をカウントアップする（Ｓ２）。診断メモリアクセス部１２３は、診断制御ポインタ１２３３を確認し、診断終了を確認する（Ｓ３）。Ｓ３で診断終了を確認するとは、診断のためのメモリアクセスが１通り終了したか否かを確認することである。Ｓ３の判定で、ＮＯの場合、診断メモリアクセス部１２３は、次のメモリアクセスを実行するため、次のステップに制御を移す。
【００４８】
ただし、診断メモリアクセス部１２３は、次のメモリアクセスの前に、診断が中断されるか否かを判定する（Ｓ４）。診断が中断される場合としては、例えば、診断対象メモリ２−１よりも、診断結果格納用のメモリ２−２の記憶容量が小さい場合が例示される。診断対象メモリ２−１よりも、診断結果格納用のメモリ２−２の記憶容量が小さい場合、診断メモリアクセス部１２３は、一旦、診断結果格納用のメモリ２−２の記憶容量の限界に対応する診断対象メモリ２−１に対するメモリアクセスを実行した後、診断を中断する。すなわち、診断制御ポインタ１２３３が、診断中断となる診断結果格納用のメモリ２−２の記憶容量の限界に対応する中断ポインタ１２３５の値に達した場合（Ｓ４でＹＥＳ）、診断メモリアクセス部１２３は、制御をＳ５に進める。中断ポインタ１２３５は、中断指示部として、診断対象の第１のメモリ２−１よりも記憶容量が少ない第２のメモリ２−２に診断結果判定部１２２の診断結果が格納される場合に、第２のメモリ２−２の少ない記憶容量に対応する値を保持する。そして、中断ポインタ１２３５は、診断メモリアクセス部１２３による第１のメモリ２−１の診断を中断させる。一方、診断制御ポインタ１２３３が、診断中断となる診断結果格納用のメモリ２−２の記憶容量の限界に対応する値に達していない場合（Ｓ４でＮＯ）、診断メモリアクセス部１２３は、制御をＳ１に戻し、次のメモリアクセスを実行する。
【００４９】
診断メモリアクセス部１２３は、Ｓ３で診断終了までメモリアクセスが終了したことを判定した場合、またはＳ４の判定で、診断を中断すると判定した場合、診断完了まで待つ（Ｓ５）。より具体的には、診断結果判定部１２２１が診断メモリアクセス部１２３によって発行されたすべてのメモリアクセスに対する応答を受領すると、診断ステータス１２２９を介して診断ステータス１２１９に、診断完了を診断系設定・制御部１２１に報告する。すると、診断系設定・制御部１２１は、診断完了の通知を診断の状態を示す診断ステータス１２３９に診断完了を設定する。診断完了を通知されると、診断メモリアクセス部１２３は、動作を停止する。
【００５０】
以上のようにして、診断メモリアクセス部１２３は、診断対象メモリ２−１のすべての領域にメモリアクセスを発行するか、または、診断中断によって、診断中断となる診断結果格納用のメモリ２−２の記憶容量の限界までメモリアクセスを発行する。そして、外部コントローラ３が診断結果格納用のメモリ２−２から診断結果を読み出すと、診断系設定・制御部１２１は、次の診断処理を起動する。外部コントローラ３はプロセッサに対して外部記憶領域にメモリ２−２の情報を書き出す制御を行い、診断結果が読み出された後に、診断系設定・制御部１２１が次の診断処理を起動する。外部記憶領域とは、例えば、入出力インターフェースを通じて接続される外部記憶装置をいう。
【００５１】
そして、次に、診断系設定・制御部１２１が診断メモリアクセス部１２３による次の診断処理を開始すると、診断メモリアクセス部１２３は新たな診断対象メモリまたは診断を
中断した診断対象メモリへメモリアクセスを行う。なお、診断系設定・制御部１２１は、診断制御ポインタ１２３３の初期値を設定することによって、次のアクセス先を指定すればよい。
【００５２】
図５に、診断結果判定部１２２１のシーケンスを例示する。診断結果判定部１２２１は、診断メモリアクセス部１２３による、試験対象メモリ（例えばメモリ２−１）への読み出しアクセスの結果を受信する（Ｓ１１）。そして、診断結果判定部１２２１は、受信した読み出しデータと期待値との比較を行う（Ｓ１２）。さらに、診断結果判定部１２２１は、診断結果出力部１２２２、メモリ診断結果書き込み部１２２３、および、例えば、メモリ制御装置１１−２を通じて、診断結果格納用のメモリ（例えば、メモリ２−２）への診断結果の書き込みを行う。さらに、診断結果判定部１２２１は、全てのメモリアクセスが返ってきている場合には（Ｓ１４でＹＥＳ）、診断完了処理を実施して、動作を完了する（Ｓ１５）。メモリアクセスが返ってきていることは、診断メモリアクセス部１２３が診断完了まで待つステートに入っていることと、診断メモリアクセス部１２３が送信したメモリアクセスの数に相当する読み出し結果が得られていることで確認される。なお、診断系設定・制御部１２１は、診断メモリアクセス部１２３が診断完了まで待つステートに入っていることを診断結果判定部１２２１に通知する。
【００５３】
外部コントローラ３は、診断結果を記録したメモリ上の情報を外部記憶装置に移動させ、解析を行う。しかし、メモリセル分の診断データを、メモリ上に展開してそのまま表示、解析することはできない。実際にはモニタの解像度に合わせれば十分なので、あるxy範囲内に存在するメモリセルの診断結果をマージして、ヒストグラムとして表示する手法を用いればよい。これらは既存の方法で十分である。方法としては、例えば全アドレス領域のうち、アドレスの領域を区切って頻度分布にすることで、ヒストグラムが得られる。
【００５４】
実施形態１のプロセッサ１では、エラーストップなくメモリの診断が、メモリ２へのアクセス時間と同程度の短い時間で実施でき、その結果をメモリセル単位で取得可能になる。このため、外部コントローラ３は、情報処理装置に実装後のメモリ２の故障状態、あるいは特性の変化等をメモリセル単位レベルで、メモリ２の試験対象範囲で取得できる。したがって、外部コントローラ３は、メモリ出荷以降の故障、さらには、実装後の故障を確認することができる。
【００５５】
さらに、外部コントローラ３は、取得したメモリ２の故障状態、あるいは特性の変化等を統計的に処理できる。このような統計的に処理した結果の情報から、また、実装形態による異常状態を検出することができる。また、統計的に処理した結果の情報は、故障の原因の調査を進めるのに有用な付加情報となり、歩留まり改善の可能性を高めることができる。
【００５６】
また、メモリ診断制御装置１２は、セレクタ１２４、１２５によって、診断のためのメモリへのアクセスと前記判定部の診断結果を格納するためのメモリへのアクセスを選択し、メモリ２−１、２−２等複数のメモリ２にアクセスすることができる。すなわち、メモリ２−１とメモリ２−２との一方を診断対象メモリとするとともに、他方を診断結果の格納先メモリとすることができる。さらに、実施形態１のメモリ診断制御装置１２は、セレクタ１２６によって、メモリ２−１、２−２等での読み出し結果を選択して、診断結果を判定できる。すなわち、実施形態１のメモリ診断制御装置１２は、セレクタ１１１−１、１１１−２、１２４、１２５、１２６に適切な選択信号を設定することで、メモリ２−１とメモリ２−２との一方を診断対象メモリとするとともに、他方を診断結果の格納先メモリとする。そして、メモリ診断制御装置１２は、診断の実行と診断結果の格納を並列に実行できる。
【００５７】
さらにまた、実施形態１のメモリ診断制御装置１２は、診断のためのメモリへのアクセスを生成する診断メモリアクセス部１２３と、セレクタ１１１−１、１１１−２とによって、コア・キャッシュ１０からのアクセスを遮断し、メモリ２−１、２−２を診断するためのメモリアクセスを生成できる。
【００５８】
また、メモリ２−１、２−２等の記憶容量が同一の場合には、診断対象メモリへのメモリアクセスの中断なく診断の実行と診断結果の格納を並列に実行できる。一方、メモリ２−１、２−２等のうち、診断対象メモリよりも診断結果を格納するメモリの記憶容量が小さい場合、診断結果を格納するメモリの記憶容量限界で診断を中断するためのアドレスに相当する値が中断ポインタ１３３５に設定され、診断処理が中断される。そして、診断結果の外部コントローラ３が中断前に実行済みの診断結果を読み出し後に、残り部分に対して診断を実行できる。すなわち、メモリ２−１、２−２等の記憶容量が不一致であっても、実施形態１に例示のしたメモリ診断制御装置１２の処理を適用できる。
【００５９】
［実施形態２］
図６および図７により、実施形態２を説明する。上記実施形態１では、解決策１にしたがい、プロセッサ１は、相互に隣接するメモリ２−１、２−２への書き込みパスを有するようにして、例えば、診断対象メモリ２−１に隣接するメモリ２−２に結果を保存した。より具体的には、実施形態１では、メモリ２−１、２−２等のそれぞれにメモリ制御装置１１−１、１１−２等が設けられた。そして、メモリ診断制御装置１２は、例えば、メモリ２−１の診断と並列にメモリ２−１の診断結果をメモリ２−２に格納した。そして、診断終了後に、外部コントローラ３がメモリ２−２に格納された診断結果を読み出し、解析等を行った。
【００６０】
実施形態２では、解決策２にしたがい、プロセッサ１は、２次キャッシュメモリまたはデータキャッシュメモリを診断結果の値保持に利用する。そして、例えば、外部コントローラ３が外部補助記憶に診断結果を保存する。実施形態１の他の構成および作用は、実施形態２と同様である。そこで、実施形態１と同一の構成要素については、同一の符合を付して説明を省略する。
【００６１】
図６に、実施形態２の情報処理装置の構成を例示する。実施形態２の情報処理装置は、プロセッサ１と、メモリ２と、外部コントローラ３を有する。プロセッサ１は、コア・キャッシュ１０と、メモリ制御装置１１と、メモリ診断制御装置１２を有する。メモリ制御装置１１の構成は、実施形態１のメモリ制御装置１１−１、１１−２と同様である。すなわち、メモリ制御装置１１は、セレクタ１１１、送信データ制御部１１２、アクセス制御部１１３、受信データ制御部１１４およびセレクタ１１５を有する。セレクタ１１１、送信データ制御部１１２、アクセス制御部１１３、受信データ制御部１１４は、実施形態１のそれぞれの構成と同様であるので、その説明を省略する。実施形態２では、実施形態１と比較して、メモリ制御装置１１に、セレクタ１１５が追加される。
【００６２】
セレクタ１１５は、診断系設定・制御部１２１の選択信号にしたがい、診断結果判定部１２２からの診断結果と、受信データ制御部１１４によるメモリ２からの読み出しデータのいずれかを選択する。すなわち、メモリ２の診断実行時には、診断系設定・制御部１２１は、メモリ２からの読み出しデータを遮断し、診断結果判定部１２２からの診断結果を選択するように、セレクタ１１５を制御する。その結果、実施形態２においては、実施形態１と同様の手順で、メモリ２の診断結果、またはメモリ２の診断対象部分の診断結果がコア・キャッシュ１０のキャッシュ部１０１に格納される。外部コントローラ３は、診断系設定・制御部１２１を介して、キャッシュ部１０１に格納された診断結果を取得し、実施形態１と同様に解析すればよい。キャッシュ部１０１がキャッシュの一例である。
【００６３】
コア・キャッシュ１０は、キャッシュ部１０１と、診断モード制御部１０２を有する。キャッシュ部１０１は、キャッシュメモリとキャッシュコントローラを有する。セレクタ１１５で選択された診断結果は、キャッシュ部１０１のキャッシュコントローラを介して、キャッシュメモリに格納される。診断モード制御部１０２は、キャッシュ部１０１内のキャッシュコントローラがキャッシュメモリの内容をメモリ２に保存しないように制御する。
【００６４】
キャッシュ部１０１は、例えば、セットアソシアティブ方式のキャッシュメモリである。キャッシュ部１０１がセットアソシアティブ方式で動作する場合には、診断メモリアクセス部１２３は、１つのセットにおいて、ウェイの追い出しが発生しない範囲で、メモリ２の診断対象範囲を決定する。簡単な考察のため、例えば、キャッシュ部１０１の容量が４０９６バイトであると仮定する。また、キャッシュブロックサイズが８バイトであるとする。さらに、セット数が２５６個であり、各セットに２つのウェイ（各ウェイ１キャッシュブロックサイズ）が設けられているとする。このような場合、メモリ２の診断対象範囲を４０９６バイトの範囲に限定し、診断対象アドレスでの診断結果がキャッシュ部１０１に格納できる範囲で診断を実行すればよい。
【００６５】
図７に、診断結果判定部１２２の詳細を例示する。実施形態２において、診断結果判定部１２２は、実施形態１のメモリ診断結果書き込み部１２２３に代えて、メモリ診断結果書き込み送出部１２２６を有している。なお、実施形態２において、診断結果判定部１２２のメモリ診断結果書き込み送出部１２２６以外の構成は、実施形態１と同様である。そこで、図７では、制御部群１２２７として、実施形態１に記載した，判定部１２２１、診断結果出力部１２２２、診断試験パターン期待値部１２２４、診断ステータス１２２９の構成は省略されている。
【００６６】
診断開始時、診断モード制御部１０２は、例えば、キャッシュブロックにメモリ制御装置からデータが戻ってきたときに、データが保持される状態にすることによって、キャッシュ部１０１の記憶容量分の診断結果をキャッシュ部１０１に保存可能となる。
【００６７】
メモリ診断結果書き込み送出部１２２６の処理は以下の通りである。今、キャッシュ部１０１がセット数Ｓ、ウェイ数Ｗのセットアソシアティブ方式のキャッシュメモリであると想定する。また、キャッシュ部のブロックサイズをＢ（ワード）とする。ここで、ワードはメモリ２の個々のアドレスの記憶データのサイズである。したがって、メモリ２とキャッシュ部１０１との間は、ブロックサイズ（Ｂワード）単位で、データが授受され、キャッシュ部１０１のタグは、Ｂワード単位でアドレスを識別する。より具体的には、メモリ２のアドレスは、キャッシュブロック内のオフセットを指定する下位ビット（数値０〜Ｂ−１の範囲のビット）、セットを指定するインデックス部（数値０〜Ｓ−１の範囲のビット）、タグを指定する上位ビット（数値０〜Ｗ−１）の範囲に区切られる。メモリ２のアドレス＝上位ビット（０〜Ｗ−１）＋インデックス部（０〜Ｓ−１）＋下位ビット（０〜Ｂ−１）；
この場合には、キャッシュ部１０１の容量は、Ｓ×Ｗ×Ｂワードとなり、メモリ２では、Ｓ×Ｗ×Ｂワード単位で診断が実行され、診断結果がキャッシュ部１０１に格納される。
（１）メモリ診断結果書き込み送出部１２２６は、診断対象アドレスの該当ビットからインデックスを作成し、キャッシュ部１０１のセットにアクセスする。ここで、実施形態２の例では、インデックスを決定するビットは、セット数Ｓに対して、０からＳ−１の値の範囲のビットである。
（２）診断対象アドレスのうち、オフセット（数値０〜Ｂ−１）およびインデックス（数値０〜Ｓ−１）を除く上位ビットでタグが作成される。例えば、上位ビットの値が０〜Ｗ−１によって、すべてのタグが占有され、各タグに対応するブロックの第１ワードに、診断対象アドレスの結果がキャッシュブロック分（Ｂワード）格納される。
（３）メモリ診断結果書き込み送出部１２２６は、同一のタグ０、１、２、・・・、（Ｗ−１）を有する、オフセット０〜Ｂ−１のアドレスをＢ個まとめてキャッシュブロックを生成し、キャッシュ部１０１に書き込む。すなわち、メモリ診断結果書き込み送出部１２２６は、診断結果のデータをキャッシュメモリのキャッシュブロックサイズのデータに変換する。
【００６８】
外部コントローラ３は、実施形態１と同様に診断系設定・制御部１２１を介して、キャッシュに格納された診断結果を取得し、実施形態１と同様に解析すればよい。すなわち、外部コントローラ３は、診断系設定・制御部１２１を通じて、プロセッサにアクセスし、外部記憶領域にキャッシュ部１０１の情報を書き出す制御を行い、診断結果が読み出された後に、診断系設定・制御部１２１が次の診断処理を起動する。より具体的には、外部コントローラ３は、プロセッサが、診断結果を格納したキャッシュ部１０１の領域と同じセットとウェイにアクセスするように、プロセッサにアドレスを指示する。プロセッサは該当するアドレスにアクセスすることで、キャッシュ部１０１からテスト結果を取得し、外部記憶領域に書き出す。
【００６９】
以上述べたように、実施形態２の情報処理装置は、実施形態１の場合と同様、メモリ２を最大でキャッシュ部１０１の容量の範囲に分割し、分割された部分ごとにメモリ２の診断を実行する。診断結果は、キャッシュ部１０１に格納される。診断終了後、外部コントローラ３は、診断系設定・制御部を介して、コア・キャッシュ１０のキャッシュ部１０１から診断結果を読み出せばよい。その後、情報処理装置は、メモリ２上で分割された次の部分の診断を実行し、診断結果をキャッシュ部１０１に格納すればよい。したがって、実施形態２によれば、キャッシュブロックの単位で、メモリ２の診断と、キャッシュ部１０１への診断結果の格納を並列に実行できる。
【００７０】
今後、多様な形状、構造のメモリへの物理的負荷等によって生じる電気特性の変化、故障等は、従来よりもメモリの広範囲におよぶ可能性がある。また、故障原因が物理的な位置に依存するように故障が発生する可能性が高まると考えられる。したがって、メモリの診断と故障の解析は、メモリの製造時の他、メモリがコンピュータに実装された後においても望まれると予想される。実施形態１、２に述べたプロセッサ１によれば、多様な形状、構造のメモリへの物理的負荷等によって生じる電気特性の変化、故障等を解析するため、従来よりも詳細にかつ、従来と同等またはさらに高速に、診断結果を提供できる。
【符号の説明】
【００７１】
１    プロセッサ
２    メモリ
３    外部コントローラ
１０    コア・キャッシュ
１１    メモリ制御装置
１２    メモリ診断制御装置
１１１    セレクタ
１１２    送信データ制御部
１１３    アクセス制御部
１１４    受信データ制御部
１２１    診断系設定・制御部
１２２    診断結果判定部
１２３    診断メモリアクセス部
１２１１    診断設定部
１２２１    判定部
１２２２    診断結果出力部
１２２３    メモリ診断結果書き込み部
１２２４    診断試験パターン期待値部
１２３１    診断制御部
１２３２    メモリアクセス部
１２３３    診断制御ポインタ
１２３４    診断試験パターン設定部
【図１】
0006503889.tif 000002
【図２】
0006503889.tif 000003
【図３】
0006503889.tif 000004
【図４】
0006503889.tif 000005
【図５】
0006503889.tif 000006
【図６】
0006503889.tif 000007
【図７】
0006503889.tif 000008