説明

情報処理装置およびそのエラー処理方法ならびに制御プログラム

【課題】 トランザクション管理で障害が発生した場合に、コヒーレンシ保障を保持した状態で、トランザクションの受け付けからリプライ返却までの処理を継続動作させることができる情報処理装置の提供。
【解決手段】 アウト・オブ・オーダー・トランザクション制御部11は、障害検出部22のリトライ可能障害部31にてバッファ21の障害を検出し、その障害に係るトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライする。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置およびそのエラー処理方法ならびに制御プログラムに関し、特にプロセッサ等から発行されたトランザクションを受け付けてからアウト・オブ・オーダー(out of order)処理でリプライを返却するまでの間トランザクションを管理する情報処理装置およびそのエラー処理方法ならびに制御プログラムに関する。
【背景技術】
【0002】
プロセッサ等から発行されたトランザクションを受け付けてからリプライを返却するまでの間トランザクションを管理する情報処理装置は知られている。
【0003】
このトランザクションの管理には2通りの方法が存在する。その一つはトランザクションの発行順序に従ってリプライを返却する方法であり、FIFO(first−in,first−out)を前提としており、トランザクションの発行順序とリプライ応答順序は一致する(例えば、特許文献1および2参照)。
【0004】
他方はトランザクションの発行順序とリプライ応答順序が一致しない方法であり、これが上述のアウト・オブ・オーダー処理である。
【0005】
従来のトランザクションの管理において、データに障害が発生した場合は、ECC(error correcting code)等の誤り訂正機能を用いてその障害を復旧させている。
【0006】
しかし、アドレス制御系で障害が発生した場合は、コヒーレンシ(coherency:依存性)の保障やデータ化けを防止する必要があるため、動作を継続させることができず、システムダウンとしている。
【0007】
一方、リトライの実施によって動作継続を図ることが可能な場合でも、バッファの特定部分に障害がある場合(以下、このような障害を「固定障害」と記す)は、リトライの失敗でシステムダウンを招く場合がある。
【0008】
また、アウト・オブ・オーダーのトランザクションを処理する場合は、一般的に高性能化を図るために複数のトランザクションをオーバーラップして処理する。このため、アウト・オブ・オーダー処理を行う部位内にはハードマクロ(hard macro)やレジスタで構成される多数のバッファが使用されている。
【0009】
したがって、これらのバッファの一箇所でも故障が発生するとシステムダウンにつながるので、信頼性がより高く求められる場合には、動作を継続させるための対策が必要である。
【0010】
ところで、上述の特許文献1および2記載の発明は、高速化のため、先行ライトトランザクションの完了を待たずに後続ライトトランザクションを発行する装置に関するもので、先行ライトトランザクションがリトライになった場合に、同一ソースから発行された後続ライトトランザクションの順序保障を守るために、後続ライトトランザクションの全てをリトライさせるものである。
【0011】
また、他の発明として、受け付けたトランザクション情報の全てをその処理が終了するまでシステム制御機能内のバッファに保持しておき、障害時には保持しておいたトランザクションをシステム制御内で再発行することによりシステムダウンを防止するメモリアクセス制御装置が開示されている(例えば、特許文献3参照)。
【0012】
また、他の発明として、割り込みを受けたとき、処理を行っていたトランザクションがリトライ可能であれば、先に割り込みを処理し、その後にそのトランザクションをリトライする装置が開示されている(例えば、特許文献4参照)。
【0013】
【特許文献1】特開2001−216259号公報(段落0008、図1)
【特許文献2】特開2002−108836号公報(段落0008、図1)
【特許文献3】特開平01−140357号公報(第3頁左上欄、第8行〜第14行、第1図)
【特許文献4】特開2002−091939号公報(段落0014、図1)
【発明の開示】
【発明が解決しようとする課題】
【0014】
上述の特許文献1および2記載の発明はトランザクションの発行順序とリプライ応答順序が一致するトランザクションの管理に関するものであり、FIFOを前提としている。このため同一ソースから発行された後続ライトトランザクションの順序保障を守るために、後続ライトトランザクションの全てをリトライさせている。
【0015】
これに対し、本発明はアウト・オブ・オーダーのトランザクション管理に関し、アウト・オブ・オーダーのトランザクション管理では、FIFOとは異なり、必ずしも同一ソースから発行された全ての後続トランザクションを順序保障のために全てリトライさせる必要はない。本発明は、障害が発生した箇所で処理されていたトランザクションをリトライすることで、システムダウンを減少させることを目的としている。
【0016】
したがって、特許文献1および2記載の発明は、本発明とその目的、構成、効果のいずれもが全く相違する。
【0017】
また、上述の特許文献3記載の発明はコヒーレンシ保障やバッファの固定故障の対策については触れておらず、コヒーレンシを保障しながらシステムダウンを回避することや、バッファの固定故障によるリトライの多発を回避することは困難である。
【0018】
また、上述の特許文献4記載の発明は割り込み処理の高速化を目的とするものであり、その目的が本発明と全く相違する。
【0019】
そこで本発明の目的は、トランザクション管理で障害が発生した場合に、コヒーレンシ保障を保持した状態で、トランザクションの受け付けからリプライ返却までの処理を継続動作させることができ、かつバッファの固定障害に起因するシステムダウンを低減させることが可能な情報処理装置およびそのエラー処理方法ならびに制御プログラムを提供することにある。
【課題を解決するための手段】
【0020】
前記課題を解決するために、本発明による情報処理装置は、発行元からのトランザクションを受け付けてからアウト・オブ・オーダー(out of order)処理でリプライを返却するまでの間トランザクションを管理する情報処理装置であって、受け付けたトランザクションを格納するバッファでの障害を検出し、そのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御手段を含むことを特徴とする。
【0021】
また、本発明によるエラー処理方法は、発行元からのトランザクションを受け付けてからアウト・オブ・オーダー(out of order)処理でリプライを返却するまでの間トランザクションを管理する情報処理装置におけるエラー処理方法であって、受け付けたトランザクションを格納するバッファでの障害を検出し、そのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御ステップを含むことを特徴とする。
【0022】
また、本発明による制御プログラムは、発行元からのトランザクションを受け付けてからアウト・オブ・オーダー(out of order)処理でリプライを返却するまでの間トランザクションを管理する情報処理装置におけるエラー処理方法の制御プログラムであって、コンピュータに、受け付けたトランザクションを格納するバッファでの障害を検出し、そのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御処理を実行させるための制御プログラムであることを特徴とする。
【0023】
本発明によれば、受け付けたトランザクションを格納するバッファでの障害を検出し、そのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライする。
【発明の効果】
【0024】
本発明によれば、上記構成を含むため、トランザクション管理で障害が発生した場合に、コヒーレンシ保障を保持した状態で、トランザクションの受け付けからリプライ返却までの処理を継続動作させることができ、かつバッファの固定障害に起因するシステムダウンを低減させることが可能となる。
【0025】
具体的には、情報処理装置でプロセッサ等が発行するトランザクションを受け付けてからアウト・オブ・オーダー処理でリプライを返却するまでの間トランザクションを管理するシステム制御部内において、ハードマクロやレジスタから構成されるバッファの特定部分に障害が発生した場合にも、コヒーレンシを保ちながら継続動作が出来、縮退動作も行うため、即システムダウンにつながる障害を減らすことが出来る。このためハードウェアの間欠障害やバッファの特定エントリの固定障害対策として有用である。また、プロセッサ等へのリトライ時に使用するトランザクション識別子等の情報以外のところで発生した障害であれば継続動作ができる可能性が高いためハードウェア故障の救済範囲を広げることが可能となる。
【発明を実施するための最良の形態】
【0026】
以下、本発明の実施の形態について添付図面を参照しながら説明する。図1は本発明に係る情報処理装置の一例の構成図である。同図を参照すると、本発明に係る情報処理装置の一例は、システム制御部1と、複数のプロセッサ2(2−1〜2−n(nは正の整数))と、複数のデバイス3(3−1〜3−m(mは正の整数))と、第1メモリ4と、第2メモリ5とを含んで構成される。
【0027】
複数のプロセッサ2、複数のデバイス3、第1メモリ4および第2メモリ5はシステム制御部1と接続されている。
【0028】
システム制御部1はプロセッサ2、第1メモリ4あるいはデバイス3からトランザクションを受け付けて制御を行う。
【0029】
なお、本実施例ではプロセッサ2が発行するトランザクションを受け付けてからアウト・オブ・オーダー処理でリプライを返却するまでの処理の一例について説明するが、プロセッサ2が発行するトランザクションに限定されるものではなく、第1メモリ4やデバイス3等の他のデバイスが発行するトランザクションに本発明を適用することが可能である。
【0030】
一方、システム制御部1はアウト・オブ・オーダー・トランザクション制御部11(以下、トランザクション制御部11と記す)と、後続リトライ部12とを含んで構成され、トランザクション制御部11はバッファ21と、障害検出部22と、リプライ制御部23と、障害カウンタ監視部24とを含んで構成される。
【0031】
また、障害検出部22はリトライ可能障害部31と、リトライ不可能障害部32とを含んでおり、リプライ制御部23はリトライ部41を含んでいる。
【0032】
障害検出部22のリトライ可能障害部31はバッファ22と相互に信号の送受信を行い、受信した信号に基づく信号を後続リトライ部12と、リプライ制御部23内のリトライ部41とに送信する。リトライ不可能障害部32はバッファ22からの信号の受信のみを行う。
【0033】
また、バッファ21からの信号はリプライ制御部23のリトライ部41に送信され、リプライ制御部23からの信号は後続リトライ部12へ送信される。
【0034】
また、バッファ21と障害カウンタ監視部24は相互に信号の送受信を行う。
【0035】
障害検出部22は、リトライ可能障害部31とリトライ不可能障害部32に区別してシステム制御部1内の障害検出を行う。リプライ制御部23のリトライ部41は、障害が発生したときに、プロセッサ2−1〜2−n へ障害が発生したトランザクションや他の処理中のトランザクションのリトライを発行する。
【0036】
後続リトライ部12は、障害が検出されたトランザクションのリトライ処理が完了するまでの間、後続のプロセッサが発行するトランザクションのリトライを行う。障害カウンタ監視部24はバッファ21に設けられた後述する障害カウンタ52を監視する。
【0037】
次に、バッファ21の構成の一例について説明する。図2はバッファ21の構成の一例を示す図である。同図を参照すると、バッファ21は複数のエントリ(エントリ0〜p(pは正の整数))を含み、各エントリは使用中フラグ50と、情報51と、障害カウンタ52とを含んでいる。一つのエントリが一つのトランザクションに対応している。
【0038】
障害カウンタ52は障害発生回数を格納する。障害カウンタ監視部24は、固定障害時のリトライ多発によるシステムダウンを防ぐために、障害カウンタ52に示される障害発生回数を監視して、一定期間に発生した障害が許容範囲回数以内の場合は障害カウンタ52のリセットを実施し、障害が許容範囲を超えた場合は固定障害と認識してバッファ21を縮退させる。
【0039】
トランザクション制御部11は、プロセッサ2が発行するトランザクションを受け付けてからアウト・オブ・オーダー処理でリプライを返却するまでの間、それぞれのトランザクションを唯一の識別子を使って管理する。
【0040】
トランザクション制御部11内にある複数エントリから成るバッファ21で障害が発生したときに、プロセッサ2にリトライを発行してコヒーレンシを保ちながら障害を救済するための機能は次のもので構成する。
【0041】
障害発生時にプロセッサにリトライを発行するための機能は、障害検出部22のリトライ可能障害部31とリトライ不可能障害部32、リトライ部41、後続リトライ部12で構成され、障害による縮退機能は、バッファ21中の障害カウンタ52、障害カウンタ監視部24から構成される。
【0042】
バッファ21の障害検出部22は、プロセッサ2にリトライを返却して動作を継続できるような障害をリトライ可能障害部31として、継続動作が不可能な場合はリトライ不可能障害部32として分けて構成する。
【0043】
リトライ不可能障害部32で検出する障害としては、例えばプロセッサ2が発行したトランザクション識別子があげられる。これはアウト・オブ・オーダー処理ではプロセッサ2がトランザクションを発行したときに付与されている識別子を用いてプロセッサ2にリプライを返却するが、この識別子に障害が発生している場合は正しくリトライが出来ないためである。
【0044】
リトライ部41は、プロセッサ2から受け付けたトランザクションの応答を行うリプライ制御部23内に持ち、障害検出部22のリトライ可能障害部31でバッファ21障害が検出された場合に、リトライ可能障害部31から通知を受け、障害が検出されたバッファ21のエントリのトランザクションをプロセッサ2にリプライの一種としてリトライを発行する機能である。
【0045】
また、障害が検出されたトランザクションがコヒーレンシ保障の必要があるトランザクションだった場合には、バッファ21に格納されている他のトランザクションについてもプロセッサ2にリトライを発行してコヒーレンシを保つ機能も持つ。
【0046】
後続リトライ部12は、障害発生後から障害が検出されたトランザクションのリトライ処理が終了するまでの間に、新たにプロセッサ2から発行されたトランザクションをリトライするための機能であり、障害が発生したトランザクションがコヒーレンシ保障を必要とする場合に有効になり、障害トランザクションのリトライ処理が終了すると解除される。
【0047】
後続リトライ部12は、後続リトライ部12が有効である間、プロセッサ2が発行した新規トランザクションがコヒーレンシ保障対象ではない場合は受け付けて通常の処理を行い、コヒーレンシ保障対象である場合はリトライにすることでコヒーレンシを保障している。
【0048】
バッファ21中の障害カウンタ52はエントリ毎に設け、障害が発生するたびに1カウントアップする。障害カウンタ監視部24は、バッファ21中の障害カウンタ52を監視する機能で、あらかじめ縮退させる障害発生回数を設定しておいて、障害カウンタ52の値が設定回数を越えるとそのエントリを縮退する。
【0049】
また、一定期間内で許容できる障害回数も定めておき、障害カウンタ52の値が設定した回数以下の場合は障害カウンタ52をリセットする。縮退方法についてはバッファの使用中フラグ50を“使用中”にして、情報51には例えばオール“0”のような他の制御に影響を及ぼさない無効データを格納して無効化する。使用中フラグ50を“使用中”にしておくことで新たにそのエントリが選択されることはないため特別な回路を設けなくても縮退と同等の機能が得られる。
【0050】
次に、システム制御部1のエラー処理方法について詳細に説明する。図3は障害が検出されたトランザクションについての処理の一例を示すフローチャートである。
【0051】
図3を参照すると、障害検出部22でバッファ21の障害を検出する(S101)。リトライ可能障害部31で障害を検出した場合(S102にて“YES”の場合)はシステムダウンさせずに障害が発生したバッファ21のエントリの障害カウンタ52のカウントアップを行い(S103)、リトライ部41ではプロセッサ2等にリトライを発行するために必要な情報を読み出してリトライ処理を行う(S104)。
【0052】
プロセッサ2へのリトライ発行が終了したところで、後続リトライ部12が有効である場合(S105で“YES”の場合)は後続リトライ部12を解除して(S106)、処理を終了する。
【0053】
リトライ処理が終了したトランザクションのエントリの再使用については、直ぐに使用出来る場合や、一定期間おいた後でリセットして利用する場合、また、他のバッファのリセットも行って利用する場合等、バッファの用途や障害箇所によって異なる。
【0054】
障害検出がリトライ可能障害部31ではない場合(S102にて“NO”の場合)、すなわちリトライ不可能障害部32で検出された場合はシステムダウンさせる(S109)。
【0055】
リトライ可能障害部31で障害を検出した場合には(S102にて“YES”の場合)、障害検出したバッファ21のエントリのトランザクションがコヒーレンシ保障対象トランザクションかどうかについても調べる(S107)。
【0056】
明らかにコヒーレンシ保障対象トランザクションではないと判断できる場合を除き(S107にて“YES”の場合)、コヒーレンシ保障対象トランザクションとみなして後続リトライ部12を有効にする(S108)。
【0057】
明らかにコヒーレンシ保障対象トランザクションではないとは判断できない例として、コヒーレンシ保障対象か否かを判断するための情報に障害が発生した場合があげられる。
【0058】
後続リトライ部12が有効でない場合(S105で“NO”の場合、および明らかにコヒーレンシ保障対象トランザクションではないと判断できる場合(S107にて“NO”の場合)は処理を終了する。
【0059】
図4はバッファ21のリトライ可能障害部31で障害が検出された際に障害が検出されたトランザクション以外のアウト・オブ・オーダー処理中のトランザクションに対する処理の一例を示すフローチャートである。
【0060】
図4を参照すると、リトライ可能障害部31で障害が検出されると(S201)、リトライ部41では障害が検出されたトランザクションがコヒーレンシ保障対象であるかどうかを調べる(S202)。
【0061】
障害が検出されたトランザクションがコヒーレンシ保障対象でない場合は(S202にて“NO”の場合)、処理中のアウト・オブ・オーダー・トランザクションは通常処理を継続する(S205)。
【0062】
障害が検出されたトランザクションがコヒーレンシ保障対象であった場合は(S202にて“YES”の場合)、処理中のアウト・オブ・オーダー・トランザクション全てについてそのトランザクションがコヒーレンシ保障対象であるかを調べ(S203)、コヒーレンシ保障対象でない場合は(S203にて“NO”の場合)、通常処理を継続し(S205)、コヒーレンシ保障対象であれば(S203にて“YES”の場合)、リトライ処理を行う(S204)。
【0063】
リトライ処理(S204)は、バッファ21のそれぞれのエントリの情報51内に図示しないリトライフラグを設けておいて、障害発生時にリトライ処理が必要なトランザクションであると判定された場合はそのトランザクションのエントリのリトライフラグを有効にしておき、通常動作時のリプライを行うために必要な条件が揃った後でリトライに差し替えて、プロセッサへリトライを発行して処理を終了する。データが付随する場合はデータを廃棄して処理を終了する。
【0064】
図5はリトライ可能障害部31で検出された障害の処理中に、プロセッサ2から新規トランザクションが発行されたときの処理の一例を示すフローチャートである。プロセッサ2からトランザクションを受け付けると(S301)、後続リトライ部12が有効かどうかを調べる(S302)。
【0065】
後続リトライ部12が無効な場合は(S302にて“NO”の場合)、トランザクションを受け付けてアウト・オブ・オーダー処理等の通常処理を実施する(S305)。
【0066】
後続リトライ部12が有効な場合は(S302にて“YES”の場合)、プロセッサ2から受け取ったトランザクションがコヒーレンシ保障対象か否かを調べ(S303)、コヒーレンシ保障対象の場合は(S303にて“YES”の場合)、リトライ処理を行い(S304)、コヒーレンシ保障対象でない場合は(S303にて“NO”の場合)、トランザクションを受け付けてアウト・オブ・オーダー処理等の通常処理を継続する(S305)。
【0067】
図6はバッファ21の障害カウンタ52の監視動作の一例を示すフローチャートである。障害カウンタ監視部24では、バッファ21のそれぞれのエントリにある障害カウンタ52を一定期間毎に監視し(S401)、障害カウンタ52の値が縮退閾値回数を超えた場合は(S402にて“YES”の場合)、バッファ21の該当エントリの縮退を行う(S405)。
【0068】
これは固定故障によるリトライ多発を防ぐためである。ここで、縮退閾値回数とは縮退を開始する障害発生回数のことであり、使用する要件に応じて任意の値に設定可能である。
【0069】
縮退縮退方法としてはバッファ21のエントリの使用中フラグ50を有効にすることによって、新たにそのエントリが使用されないようして、同時に、他の制御に影響を及ぼさないようにそのエントリの情報51にはオール“0”等の無効なデータを書き込むことで縮退とする。
【0070】
障害カウンタ52が縮退閾値回数以下の場合は(S402にて“NO”の場合)、一定期間内で許容される障害回数として設定したリセット可能回数の値と障害カウンタ52値とを比較し(S403)、リセット可能回数以下の場合は(S403にて“NO”の場合)、障害カウンタ52をリセットする(S404)。これは間欠障害に起因したバッファの縮退によってバッファ容量の減少を防ぐためである。
【0071】
一方、リセット可能回数を超えた場合は(S403にて“YES”の場合)、障害カウンタ52をリセットしない。
【0072】
次に、エラー処理方法の制御プログラムについて詳細に説明する。図1を参照すると、第1メモリ4と第2メモリ5とが表示されている。第1メモリには本発明に係るエラー処理以外の処理を行うための制御プログラムあるいはデータが格納されている。一方、第2メモリ5には本発明に係るエラー処理を行うための制御プログラムが格納されている。
本発明に係るエラー処理を行うための制御プログラムとは、図3〜図6にフローチャートで示す処理をコンピュータ(本実施例では図1のシステム制御部1)に実行させるためのプログラムである。
【0073】
システム制御部1は第2メモリ5からエラー処理を行うための制御プログラムを読み出し、そのプログラムに従ってトランザクション制御部11および後続リトライ部12を制御する。その制御内容については既に述べたのでその説明は省略する。
【0074】
なお、本実施例では、エラ−処理方法について、制御プログラムで実現する方法を示したが、これをハ−ドウエア・シ−ケンスで実現することも可能である。
【産業上の利用可能性】
【0075】
プロセッサがリトライ機能を有し、アウト・オブ・オーダー・トランザクションを処理するシステムにおいて、多量なバッファを用いるような場合に有効であり、高信頼性が求められる情報処理装置での利用が考えられる。また、プロセッサに限らずI/Oカードやメモリからでも、リトライ機能を有しアウト・オブ・オーダー処理を実施している場合には適用可能である。
【図面の簡単な説明】
【0076】
【図1】本発明に係る情報処理装置の一例の構成図である。
【図2】バッファ21の構成の一例を示す図である。
【図3】障害が検出されたトランザクションについての処理の一例を示すフローチャートである。
【図4】バッファ21のリトライ可能障害部31で障害が検出された際に障害が検出されたトランザクション以外のアウト・オブ・オーダー処理中のトランザクションに対する処理の一例を示すフローチャートである。
【図5】リトライ可能障害部31で検出された障害の処理中に、プロセッサ2から新規トランザクションが発行されたときの処理の一例を示すフローチャートである。
【図6】バッファ21の障害カウンタ52の監視動作の一例を示すフローチャートである。
【符号の説明】
【0077】
1 システム制御部
2 プロセッサ
3 デバイス
4 第1メモリ
5 第2メモリ
11 アウト・オブ・オーダー・トランザクション制御部
12 後続リトライ部
23 リプライ制御部
24 障害カウンタ監視部
31 リトライ可能障害部
32 リトライ不可能障害部
41 リトライ部
50 使用中フラグ
51 情報
52 障害カウンタ

【特許請求の範囲】
【請求項1】
発行元からのトランザクションを受け付けてからアウト・オブ・オーダー(out of order)処理でリプライを返却するまでの間トランザクションを管理する情報処理装置であって、
受け付けたトランザクションを格納するバッファでの障害を検出し、そのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御手段を含むことを特徴とする情報処理装置。
【請求項2】
前記障害検出に係るトランザクションとコヒーレンシの関係にある他のトランザクションは、前記障害発生時に処理中のトランザクションであることを特徴とする請求項1記載の情報処理装置。
【請求項3】
前記障害検出に係るトランザクションとコヒーレンシの関係にある他のトランザクションは、新規に発行されたトランザクションであることを特徴とする請求項1記載の情報処理装置。
【請求項4】
前記バッファには発行元からのトランザクションに対応するエントリの障害発生回数が記録される障害カウンタが設けられ、前記トランザクション制御手段は前記障害カウンタの値が一定の閾値を超えた場合、該当エントリの縮退を行うことを特徴とする請求項1から3いずれかに記載の情報処理装置。
【請求項5】
発行元からのトランザクションを受け付けてからアウト・オブ・オーダー(out of order)処理でリプライを返却するまでの間トランザクションを管理する情報処理装置におけるエラー処理方法であって、
受け付けたトランザクションを格納するバッファでの障害を検出し、そのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御ステップを含むことを特徴とするエラー処理方法。
【請求項6】
前記障害検出に係るトランザクションとコヒーレンシの関係にある他のトランザクションは、前記障害発生時に処理中のトランザクションであることを特徴とする請求項5記載のエラー処理方法。
【請求項7】
前記障害検出に係るトランザクションとコヒーレンシの関係にある他のトランザクションは、新規に発行されたトランザクションであることを特徴とする請求項5記載のエラー処理方法。
【請求項8】
前記バッファには発行元からのトランザクションに対応するエントリの障害発生回数が記録される障害カウンタが設けられ、前記トランザクション制御手段は前記障害カウンタの値が一定の閾値を超えた場合、該当エントリの縮退を行うことを特徴とする請求項5から7いずれかに記載のエラー処理方法。
【請求項9】
発行元からのトランザクションを受け付けてからアウト・オブ・オーダー(out of order)処理でリプライを返却するまでの間トランザクションを管理する情報処理装置におけるエラー処理方法の制御プログラムであって、
コンピュータに、受け付けたトランザクションを格納するバッファでの障害を検出し、そのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御処理を実行させるための制御プログラム。
【請求項10】
前記障害検出に係るトランザクションとコヒーレンシの関係にある他のトランザクションは、前記障害発生時に処理中のトランザクションであることを特徴とする請求項9記載の制御プログラム。
【請求項11】
前記障害検出に係るトランザクションとコヒーレンシの関係にある他のトランザクションは、新規に発行されたトランザクションであることを特徴とする請求項9記載の制御プログラム。
【請求項12】
前記バッファには発行元からのトランザクションに対応するエントリの障害発生回数が記録される障害カウンタが設けられ、前記トランザクション制御手段は前記障害カウンタの値が一定の閾値を超えた場合、該当エントリの縮退を行うことを特徴とする請求項9から11いずれかに記載の制御プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公開番号】特開2007−148467(P2007−148467A)
【公開日】平成19年6月14日(2007.6.14)
【国際特許分類】
【出願番号】特願2005−337972(P2005−337972)
【出願日】平成17年11月24日(2005.11.24)
【出願人】(000168285)エヌイーシーコンピュータテクノ株式会社 (572)
【Fターム(参考)】