JP4584124B2 - Information processing apparatus, error processing method thereof, and control program - Google Patents
Information processing apparatus, error processing method thereof, and control program Download PDFInfo
- Publication number
- JP4584124B2 JP4584124B2 JP2005337972A JP2005337972A JP4584124B2 JP 4584124 B2 JP4584124 B2 JP 4584124B2 JP 2005337972 A JP2005337972 A JP 2005337972A JP 2005337972 A JP2005337972 A JP 2005337972A JP 4584124 B2 JP4584124 B2 JP 4584124B2
- Authority
- JP
- Japan
- Prior art keywords
- transaction
- failure
- buffer
- coherency
- retried
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Retry When Errors Occur (AREA)
- Information Transfer Systems (AREA)
Description
本発明は、情報処理装置およびそのエラー処理方法ならびに制御プログラムに関し、特にプロセッサ等から発行されたトランザクションを受け付けてからアウト・オブ・オーダー(out of order)処理でリプライを返却するまでの間トランザクションを管理する情報処理装置およびそのエラー処理方法ならびに制御プログラムに関する。 The present invention relates to an information processing apparatus, an error processing method thereof, and a control program, and more particularly, to a transaction from when a transaction issued from a processor or the like is accepted until a reply is returned by out-of-order processing. The present invention relates to an information processing apparatus to be managed, an error processing method thereof, and a control program.
プロセッサ等から発行されたトランザクションを受け付けてからリプライを返却するまでの間トランザクションを管理する情報処理装置は知られている。 An information processing apparatus that manages a transaction from when a transaction issued by a processor or the like is received until a reply is returned is known.
このトランザクションの管理には2通りの方法が存在する。その一つはトランザクションの発行順序に従ってリプライを返却する方法であり、FIFO(first−in,first−out)を前提としており、トランザクションの発行順序とリプライ応答順序は一致する(例えば、特許文献1および2参照)。
There are two methods for managing this transaction. One of them is a method of returning replies according to the transaction issue order, which is based on FIFO (first-in, first-out), and the transaction issue order and reply response order match (for example,
他方はトランザクションの発行順序とリプライ応答順序が一致しない方法であり、これが上述のアウト・オブ・オーダー処理である。 The other is a method in which the transaction issue order and reply response order do not match, and this is the above-mentioned out-of-order processing.
従来のトランザクションの管理において、データに障害が発生した場合は、ECC(error correcting code)等の誤り訂正機能を用いてその障害を復旧させている。 In the conventional transaction management, when a failure occurs in the data, the failure is recovered by using an error correction function such as ECC (error correcting code).
しかし、アドレス制御系で障害が発生した場合は、コヒーレンシ(coherency:依存性)の保障やデータ化けを防止する必要があるため、動作を継続させることができず、システムダウンとしている。 However, when a failure occurs in the address control system, it is necessary to ensure coherency and prevent data corruption, so the operation cannot be continued and the system is down.
一方、リトライの実施によって動作継続を図ることが可能な場合でも、バッファの特定部分に障害がある場合(以下、このような障害を「固定障害」と記す)は、リトライの失敗でシステムダウンを招く場合がある。 On the other hand, even if it is possible to continue the operation by retrying, if there is a failure in a specific part of the buffer (hereinafter referred to as “fixed failure”), the failure of the retry causes the system to go down. You may be invited.
また、アウト・オブ・オーダーのトランザクションを処理する場合は、一般的に高性能化を図るために複数のトランザクションをオーバーラップして処理する。このため、アウト・オブ・オーダー処理を行う部位内にはハードマクロ(hard macro)やレジスタで構成される多数のバッファが使用されている。 Also, when processing out-of-order transactions, in general, a plurality of transactions are overlapped for higher performance. For this reason, a large number of buffers composed of hard macros and registers are used in the part that performs out-of-order processing.
したがって、これらのバッファの一箇所でも故障が発生するとシステムダウンにつながるので、信頼性がより高く求められる場合には、動作を継続させるための対策が必要である。 Therefore, if a failure occurs in one of these buffers, it will lead to a system failure. Therefore, when higher reliability is required, a measure for continuing the operation is required.
ところで、上述の特許文献1および2記載の発明は、高速化のため、先行ライトトランザクションの完了を待たずに後続ライトトランザクションを発行する装置に関するもので、先行ライトトランザクションがリトライになった場合に、同一ソースから発行された後続ライトトランザクションの順序保障を守るために、後続ライトトランザクションの全てをリトライさせるものである。
By the way, the inventions described in
また、他の発明として、受け付けたトランザクション情報の全てをその処理が終了するまでシステム制御機能内のバッファに保持しておき、障害時には保持しておいたトランザクションをシステム制御内で再発行することによりシステムダウンを防止するメモリアクセス制御装置が開示されている(例えば、特許文献3参照)。 As another invention, all received transaction information is held in the buffer in the system control function until the processing is completed, and the stored transaction is reissued in the system control at the time of failure. A memory access control device that prevents system down is disclosed (for example, see Patent Document 3).
また、他の発明として、割り込みを受けたとき、処理を行っていたトランザクションがリトライ可能であれば、先に割り込みを処理し、その後にそのトランザクションをリトライする装置が開示されている(例えば、特許文献4参照)。 As another invention, when an interrupt is received, if the transaction being processed can be retried, an apparatus that processes the interrupt first and then retry the transaction is disclosed (for example, a patent) Reference 4).
上述の特許文献1および2記載の発明はトランザクションの発行順序とリプライ応答順序が一致するトランザクションの管理に関するものであり、FIFOを前提としている。このため同一ソースから発行された後続ライトトランザクションの順序保障を守るために、後続ライトトランザクションの全てをリトライさせている。
The inventions described in
これに対し、本発明はアウト・オブ・オーダーのトランザクション管理に関し、アウト・オブ・オーダーのトランザクション管理では、FIFOとは異なり、必ずしも同一ソースから発行された全ての後続トランザクションを順序保障のために全てリトライさせる必要はない。本発明は、障害が発生した箇所で処理されていたトランザクションをリトライすることで、システムダウンを減少させることを目的としている。 On the other hand, the present invention relates to out-of-order transaction management. Unlike out-of-order transaction management, all of the subsequent transactions issued from the same source are not necessarily executed in order to guarantee the order. There is no need to retry. An object of the present invention is to reduce system down by retrying a transaction that has been processed at a location where a failure has occurred.
したがって、特許文献1および2記載の発明は、本発明とその目的、構成、効果のいずれもが全く相違する。
Therefore, the inventions described in
また、上述の特許文献3記載の発明はコヒーレンシ保障やバッファの固定故障の対策については触れておらず、コヒーレンシを保障しながらシステムダウンを回避することや、バッファの固定故障によるリトライの多発を回避することは困難である。
In addition, the invention described in
また、上述の特許文献4記載の発明は割り込み処理の高速化を目的とするものであり、その目的が本発明と全く相違する。
The invention described in
そこで本発明の目的は、トランザクション管理で障害が発生した場合に、コヒーレンシ保障を保持した状態で、トランザクションの受け付けからリプライ返却までの処理を継続動作させることができ、かつバッファの固定障害に起因するシステムダウンを低減させることが可能な情報処理装置およびそのエラー処理方法ならびに制御プログラムを提供することにある。 Accordingly, an object of the present invention is to enable continuous operation from transaction acceptance to reply return in a state where coherency guarantee is maintained when a failure occurs in transaction management, and is caused by a fixed buffer failure. An object of the present invention is to provide an information processing apparatus capable of reducing system down, an error processing method thereof, and a control program.
前記課題を解決するために、本発明による情報処理装置は、発行元からのトランザクションを受け付けてからアウト・オブ・オーダー(out of order)処理でリプライを返却するまでの間トランザクションを管理する情報処理装置であって、受け付けたトランザクションを格納するバッファでのトランザクション管理に関する障害をリトライ可能障害とリトライ不可能障害に区別して検出し、リトライ可能障害を検出した場合にそのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御手段を含むことを特徴とする。 In order to solve the above-described problem, an information processing apparatus according to the present invention manages an transaction from when a transaction is received from an issuer until a reply is returned by an out-of-order process. The device detects failures related to transaction management in the buffer that stores received transactions by distinguishing between failures that can be retried and failures that cannot be retried, and when a retryable failure is detected, the transaction is retried and It includes a transaction control means for retrying other transactions having a coherency relationship.
また、本発明によるエラー処理方法は、発行元からのトランザクションを受け付けてからアウト・オブ・オーダー(out of order)処理でリプライを返却するまでの間トランザクションを管理する情報処理装置におけるエラー処理方法であって、受け付けたトランザクションを格納するバッファでのトランザクション管理に関する障害をリトライ可能障害とリトライ不可能障害に区別して検出し、リトライ可能障害を検出した場合にそのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御ステップを含むことを特徴とする。 The error processing method according to the present invention is an error processing method in an information processing apparatus that manages a transaction from when a transaction from an issuer is accepted until a reply is returned in an out-of-order process. Therefore, failure related to transaction management in the buffer that stores accepted transactions is detected by distinguishing between failures that can be retried and failures that cannot be retried. When a failure that can be retried is detected, the transaction is retried and the transaction and coherency It includes a transaction control step for retrying other related transactions.
また、本発明による制御プログラムは、発行元からのトランザクションを受け付けてからアウト・オブ・オーダー(out of order)処理でリプライを返却するまでの間トランザクションを管理する情報処理装置におけるエラー処理方法の制御プログラムであって、コンピュータに、受け付けたトランザクションを格納するバッファでのトランザクション管理に関する障害をリトライ可能障害とリトライ不可能障害に区別して検出し、リトライ可能障害を検出した場合にそのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御処理を実行させるためのものであることを特徴とする。 Further, the control program according to the present invention controls an error processing method in an information processing apparatus that manages a transaction from when a transaction is received from an issuer to when a reply is returned in an out-of-order process. This is a program that detects failures related to transaction management in the buffer that stores accepted transactions in the computer by distinguishing between failures that can be retried and failures that cannot be retried, and when a retryable failure is detected , along with retrying the transaction, The present invention is characterized in that a transaction control process for retrying other transactions having a coherency relationship with the transaction is executed.
本発明によれば、受け付けたトランザクションを格納するバッファでの障害を検出し、そのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライする。 According to the present invention, a failure in a buffer for storing an accepted transaction is detected, and other transactions that have a coherency relationship with the transaction are retried along with the retry of the transaction.
本発明によれば、上記構成を含むため、トランザクション管理で障害が発生した場合に、コヒーレンシ保障を保持した状態で、トランザクションの受け付けからリプライ返却までの処理を継続動作させることができ、かつバッファの固定障害に起因するシステムダウンを低減させることが可能となる。 According to the present invention, since the above configuration is included, when a failure occurs in transaction management, processing from acceptance of a transaction to return of a reply can be continuously performed in a state where coherency guarantee is maintained, and a buffer is stored. It is possible to reduce the system down due to the fixed failure.
具体的には、情報処理装置でプロセッサ等が発行するトランザクションを受け付けてからアウト・オブ・オーダー処理でリプライを返却するまでの間トランザクションを管理するシステム制御部内において、ハードマクロやレジスタから構成されるバッファの特定部分に障害が発生した場合にも、コヒーレンシを保ちながら継続動作が出来、縮退動作も行うため、即システムダウンにつながる障害を減らすことが出来る。このためハードウェアの間欠障害やバッファの特定エントリの固定障害対策として有用である。また、プロセッサ等へのリトライ時に使用するトランザクション識別子等の情報以外のところで発生した障害であれば継続動作ができる可能性が高いためハードウェア故障の救済範囲を広げることが可能となる。 Specifically, it is composed of hard macros and registers in the system control unit that manages transactions from when a transaction issued by a processor or the like is received by the information processing apparatus to when a reply is returned by out-of-order processing. Even when a failure occurs in a specific part of the buffer, a continuous operation can be performed while coherency is maintained, and a degeneration operation is also performed, so that it is possible to reduce failures that immediately lead to system down. Therefore, it is useful as a countermeasure for intermittent hardware failures and fixed failures for specific entries in the buffer. In addition, since it is highly possible that a failure occurs in a place other than information such as a transaction identifier used when retrying to a processor or the like, it is highly possible that a continuous operation can be performed, so that it is possible to widen the scope of repair of a hardware failure.
以下、本発明の実施の形態について添付図面を参照しながら説明する。図1は本発明に係る情報処理装置の一例の構成図である。同図を参照すると、本発明に係る情報処理装置の一例は、システム制御部1と、複数のプロセッサ2(2−1〜2−n(nは正の整数))と、複数のデバイス3(3−1〜3−m(mは正の整数))と、第1メモリ4と、第2メモリ5とを含んで構成される。
Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings. FIG. 1 is a configuration diagram of an example of an information processing apparatus according to the present invention. Referring to the figure, an example of an information processing apparatus according to the present invention includes a
複数のプロセッサ2、複数のデバイス3、第1メモリ4および第2メモリ5はシステム制御部1と接続されている。
The plurality of
システム制御部1はプロセッサ2、第1メモリ4あるいはデバイス3からトランザクションを受け付けて制御を行う。
The
なお、本実施例ではプロセッサ2が発行するトランザクションを受け付けてからアウト・オブ・オーダー処理でリプライを返却するまでの処理の一例について説明するが、プロセッサ2が発行するトランザクションに限定されるものではなく、第1メモリ4やデバイス3等の他のデバイスが発行するトランザクションに本発明を適用することが可能である。
In this embodiment, an example of processing from receiving a transaction issued by the
一方、システム制御部1はアウト・オブ・オーダー・トランザクション制御部11(以下、トランザクション制御部11と記す)と、後続リトライ部12とを含んで構成され、トランザクション制御部11はバッファ21と、障害検出部22と、リプライ制御部23と、障害カウンタ監視部24とを含んで構成される。
On the other hand, the
また、障害検出部22はリトライ可能障害部31と、リトライ不可能障害部32とを含んでおり、リプライ制御部23はリトライ部41を含んでいる。
The
障害検出部22のリトライ可能障害部31はバッファ21と相互に信号の送受信を行い、受信した信号に基づく信号を後続リトライ部12と、リプライ制御部23内のリトライ部41とに送信する。リトライ不可能障害部32はバッファ21からの信号の受信のみを行う。
The retryable failure unit 31 of the
また、バッファ21からの信号はリプライ制御部23のリトライ部41に送信され、リプライ制御部23からの信号は後続リトライ部12へ送信される。
Further, the signal from the
また、バッファ21と障害カウンタ監視部24は相互に信号の送受信を行う。
Further, the
障害検出部22は、リトライ可能障害部31とリトライ不可能障害部32に区別してシステム制御部1内の障害検出を行う。リプライ制御部23のリトライ部41は、障害が発生したときに、プロセッサ2−1〜2−n へ障害が発生したトランザクションや他の処理中のトランザクションのリトライを発行する。
The
後続リトライ部12は、障害が検出されたトランザクションのリトライ処理が完了するまでの間、後続のプロセッサが発行するトランザクションのリトライを行う。障害カウンタ監視部24はバッファ21に設けられた後述する障害カウンタ52を監視する。
The
次に、バッファ21の構成の一例について説明する。図2はバッファ21の構成の一例を示す図である。同図を参照すると、バッファ21は複数のエントリ(エントリ0〜p(pは正の整数))を含み、各エントリは使用中フラグ50と、情報51と、障害カウンタ52とを含んでいる。一つのエントリが一つのトランザクションに対応している。
Next, an example of the configuration of the
障害カウンタ52は障害発生回数を格納する。障害カウンタ監視部24は、固定障害時のリトライ多発によるシステムダウンを防ぐために、障害カウンタ52に示される障害発生回数を監視して、一定期間に発生した障害が許容範囲回数以内の場合は障害カウンタ52のリセットを実施し、障害が許容範囲を超えた場合は固定障害と認識してバッファ21を縮退させる。
The failure counter 52 stores the number of failure occurrences. The failure counter monitoring
トランザクション制御部11は、プロセッサ2が発行するトランザクションを受け付けてからアウト・オブ・オーダー処理でリプライを返却するまでの間、それぞれのトランザクションを唯一の識別子を使って管理する。
The
トランザクション制御部11内にある複数エントリから成るバッファ21で障害が発生したときに、プロセッサ2にリトライを発行してコヒーレンシを保ちながら障害を救済するための機能は次のもので構成する。
When a failure occurs in the
障害発生時にプロセッサにリトライを発行するための機能は、障害検出部22のリトライ可能障害部31とリトライ不可能障害部32、リトライ部41、後続リトライ部12で構成され、障害による縮退機能は、バッファ21中の障害カウンタ52、障害カウンタ監視部24から構成される。
The function for issuing a retry to the processor when a failure occurs is composed of a retryable failure unit 31, a retry
バッファ21の障害検出部22は、プロセッサ2にリトライを返却して動作を継続できるような障害をリトライ可能障害部31として、継続動作が不可能な場合はリトライ不可能障害部32として分けて構成する。
The
リトライ不可能障害部32で検出する障害としては、例えばプロセッサ2が発行したトランザクション識別子があげられる。これはアウト・オブ・オーダー処理ではプロセッサ2がトランザクションを発行したときに付与されている識別子を用いてプロセッサ2にリプライを返却するが、この識別子に障害が発生している場合は正しくリトライが出来ないためである。
Examples of the failure detected by the retry
リトライ部41は、プロセッサ2から受け付けたトランザクションの応答を行うリプライ制御部23内に持ち、障害検出部22のリトライ可能障害部31でバッファ21障害が検出された場合に、リトライ可能障害部31から通知を受け、障害が検出されたバッファ21のエントリのトランザクションをプロセッサ2にリプライの一種としてリトライを発行する機能である。
The retry
また、障害が検出されたトランザクションがコヒーレンシ保障の必要があるトランザクションだった場合には、バッファ21に格納されている他のトランザクションについてもプロセッサ2にリトライを発行してコヒーレンシを保つ機能も持つ。
In addition, when the transaction in which the failure is detected is a transaction that needs to ensure coherency, the other transaction stored in the
後続リトライ部12は、障害発生後から障害が検出されたトランザクションのリトライ処理が終了するまでの間に、新たにプロセッサ2から発行されたトランザクションをリトライするための機能であり、障害が発生したトランザクションがコヒーレンシ保障を必要とする場合に有効になり、障害トランザクションのリトライ処理が終了すると解除される。
The subsequent retry
後続リトライ部12は、後続リトライ部12が有効である間、プロセッサ2が発行した新規トランザクションがコヒーレンシ保障対象ではない場合は受け付けて通常の処理を行い、コヒーレンシ保障対象である場合はリトライにすることでコヒーレンシを保障している。
The subsequent retry
バッファ21中の障害カウンタ52はエントリ毎に設け、障害が発生するたびに1カウントアップする。障害カウンタ監視部24は、バッファ21中の障害カウンタ52を監視する機能で、あらかじめ縮退させる障害発生回数を設定しておいて、障害カウンタ52の値が設定回数を越えるとそのエントリを縮退する。
A failure counter 52 in the
また、一定期間内で許容できる障害回数も定めておき、障害カウンタ52の値が設定した回数以下の場合は障害カウンタ52をリセットする。縮退方法についてはバッファの使用中フラグ50を“使用中”にして、情報51には例えばオール“0”のような他の制御に影響を及ぼさない無効データを格納して無効化する。使用中フラグ50を“使用中”にしておくことで新たにそのエントリが選択されることはないため特別な回路を設けなくても縮退と同等の機能が得られる。
Also, the number of failures that can be allowed within a certain period is determined, and the
次に、システム制御部1のエラー処理方法について詳細に説明する。図3は障害が検出されたトランザクションについての処理の一例を示すフローチャートである。
Next, the error processing method of the
図3を参照すると、障害検出部22でバッファ21の障害を検出する(S101)。リトライ可能障害部31で障害を検出した場合(S102にて“YES”の場合)はシステムダウンさせずに障害が発生したバッファ21のエントリの障害カウンタ52のカウントアップを行い(S103)、リトライ部41ではプロセッサ2等にリトライを発行するために必要な情報を読み出してリトライ処理を行う(S104)。
Referring to FIG. 3, the
プロセッサ2へのリトライ発行が終了したところで、後続リトライ部12が有効である場合(S105で“YES”の場合)は後続リトライ部12を解除して(S106)、処理を終了する。
When the retry issuance to the
リトライ処理が終了したトランザクションのエントリの再使用については、直ぐに使用出来る場合や、一定期間おいた後でリセットして利用する場合、また、他のバッファのリセットも行って利用する場合等、バッファの用途や障害箇所によって異なる。 Reuse of transaction entries for which retry processing has been completed is possible, such as when it can be used immediately, when it is used after being reset for a certain period, or when other buffers are reset and used. Varies depending on the application and location of failure.
障害検出がリトライ可能障害部31ではない場合(S102にて“NO”の場合)、すなわちリトライ不可能障害部32で検出された場合はシステムダウンさせる(S109)。
When the failure detection is not the retryable failure unit 31 (in the case of “NO” in S102), that is, when the
リトライ可能障害部31で障害を検出した場合には(S102にて“YES”の場合)、障害検出したバッファ21のエントリのトランザクションがコヒーレンシ保障対象トランザクションかどうかについても調べる(S107)。
When a failure is detected by the retryable failure unit 31 (in the case of “YES” in S102), it is also checked whether or not the transaction of the entry of the
明らかにコヒーレンシ保障対象トランザクションではないと判断できる場合を除き(S107にて“YES”の場合)、コヒーレンシ保障対象トランザクションとみなして後続リトライ部12を有効にする(S108)。
Unless it can be clearly determined that the transaction is not a coherency guarantee target transaction (in the case of “YES” in S107), it is regarded as a coherency guarantee target transaction and the subsequent retry
明らかにコヒーレンシ保障対象トランザクションではないとは判断できない例として、コヒーレンシ保障対象か否かを判断するための情報に障害が発生した場合があげられる。 An example in which it cannot be clearly determined that the transaction is not subject to coherency guarantee is a case where a failure occurs in information for judging whether or not the transaction is subject to coherency guarantee.
後続リトライ部12が有効でない場合(S105で“NO”の場合)、および明らかにコヒーレンシ保障対象トランザクションではないと判断できる場合(S107にて“NO”の場合)は処理を終了する。
If the subsequent retry
図4はバッファ21のリトライ可能障害部31で障害が検出された際に障害が検出されたトランザクション以外のアウト・オブ・オーダー処理中のトランザクションに対する処理の一例を示すフローチャートである。
FIG. 4 is a flowchart showing an example of processing for a transaction in the out-of-order processing other than the transaction in which a failure is detected when a failure is detected in the retryable failure unit 31 of the
図4を参照すると、リトライ可能障害部31で障害が検出されると(S201)、リトライ部41では障害が検出されたトランザクションがコヒーレンシ保障対象であるかどうかを調べる(S202)。
Referring to FIG. 4, when a failure is detected in the retryable failure unit 31 (S201), the retry
障害が検出されたトランザクションがコヒーレンシ保障対象でない場合は(S202にて“NO”の場合)、処理中のアウト・オブ・オーダー・トランザクションは通常処理を継続する(S205)。 If the transaction in which the failure is detected is not subject to coherency guarantee (“NO” in S202), the out-of-order transaction being processed continues normal processing (S205).
障害が検出されたトランザクションがコヒーレンシ保障対象であった場合は(S202にて“YES”の場合)、処理中のアウト・オブ・オーダー・トランザクション全てについてそのトランザクションがコヒーレンシ保障対象であるかを調べ(S203)、コヒーレンシ保障対象でない場合は(S203にて“NO”の場合)、通常処理を継続し(S205)、コヒーレンシ保障対象であれば(S203にて“YES”の場合)、リトライ処理を行う(S204)。 If the transaction in which the failure is detected is subject to coherency guarantee (in the case of “YES” in S202), it is checked whether the transaction is subject to coherency guarantee for all out-of-order transactions being processed ( If it is not a coherency guarantee target (in the case of “NO” in S203), normal processing is continued (S205), and if it is a coherency guarantee target (in the case of “YES” in S203), a retry process is performed. (S204).
リトライ処理(S204)は、バッファ21のそれぞれのエントリの情報51内に図示しないリトライフラグを設けておいて、障害発生時にリトライ処理が必要なトランザクションであると判定された場合はそのトランザクションのエントリのリトライフラグを有効にしておき、通常動作時のリプライを行うために必要な条件が揃った後でリトライに差し替えて、プロセッサへリトライを発行して処理を終了する。データが付随する場合はデータを廃棄して処理を終了する。
In the retry process (S204), a retry flag (not shown) is provided in the
図5はリトライ可能障害部31で検出された障害の処理中に、プロセッサ2から新規トランザクションが発行されたときの処理の一例を示すフローチャートである。プロセッサ2からトランザクションを受け付けると(S301)、後続リトライ部12が有効かどうかを調べる(S302)。
FIG. 5 is a flowchart showing an example of processing when a new transaction is issued from the
後続リトライ部12が無効な場合は(S302にて“NO”の場合)、トランザクションを受け付けてアウト・オブ・オーダー処理等の通常処理を実施する(S305)。
If the subsequent retry
後続リトライ部12が有効な場合は(S302にて“YES”の場合)、プロセッサ2から受け取ったトランザクションがコヒーレンシ保障対象か否かを調べ(S303)、コヒーレンシ保障対象の場合は(S303にて“YES”の場合)、リトライ処理を行い(S304)、コヒーレンシ保障対象でない場合は(S303にて“NO”の場合)、トランザクションを受け付けてアウト・オブ・オーダー処理等の通常処理を継続する(S305)。
If the subsequent retry
図6はバッファ21の障害カウンタ52の監視動作の一例を示すフローチャートである。障害カウンタ監視部24では、バッファ21のそれぞれのエントリにある障害カウンタ52を一定期間毎に監視し(S401)、障害カウンタ52の値が縮退閾値回数を超えた場合は(S402にて“YES”の場合)、バッファ21の該当エントリの縮退を行う(S405)。
FIG. 6 is a flowchart showing an example of the monitoring operation of the
これは固定故障によるリトライ多発を防ぐためである。ここで、縮退閾値回数とは縮退を開始する障害発生回数のことであり、使用する要件に応じて任意の値に設定可能である。 This is to prevent frequent retries due to fixed failures. Here, the degeneration threshold number is the number of failure occurrences at which degeneration starts, and can be set to any value according to the requirements to be used.
縮退縮退方法としてはバッファ21のエントリの使用中フラグ50を有効にすることによって、新たにそのエントリが使用されないようして、同時に、他の制御に影響を及ぼさないようにそのエントリの情報51にはオール“0”等の無効なデータを書き込むことで縮退とする。
As a degeneration / reduction method, the
障害カウンタ52が縮退閾値回数以下の場合は(S402にて“NO”の場合)、一定期間内で許容される障害回数として設定したリセット可能回数の値と障害カウンタ52値とを比較し(S403)、リセット可能回数以下の場合は(S403にて“NO”の場合)、障害カウンタ52をリセットする(S404)。これは間欠障害に起因したバッファの縮退によってバッファ容量の減少を防ぐためである。
When the
一方、リセット可能回数を超えた場合は(S403にて“YES”の場合)、障害カウンタ52をリセットしない。
On the other hand, when the resettable number is exceeded (“YES” in S403), the
次に、エラー処理方法の制御プログラムについて詳細に説明する。図1を参照すると、第1メモリ4と第2メモリ5とが表示されている。第1メモリには本発明に係るエラー処理以外の処理を行うための制御プログラムあるいはデータが格納されている。一方、第2メモリ5には本発明に係るエラー処理を行うための制御プログラムが格納されている。
本発明に係るエラー処理を行うための制御プログラムとは、図3〜図6にフローチャートで示す処理をコンピュータ(本実施例では図1のシステム制御部1)に実行させるためのプログラムである。
Next, the control program for the error processing method will be described in detail. Referring to FIG. 1, a
The control program for performing error processing according to the present invention is a program for causing a computer (
システム制御部1は第2メモリ5からエラー処理を行うための制御プログラムを読み出し、そのプログラムに従ってトランザクション制御部11および後続リトライ部12を制御する。その制御内容については既に述べたのでその説明は省略する。
The
なお、本実施例では、エラ−処理方法について、制御プログラムで実現する方法を示したが、これをハ−ドウエア・シ−ケンスで実現することも可能である。 In the present embodiment, the error processing method is realized by a control program. However, this can also be realized by a hardware sequence.
プロセッサがリトライ機能を有し、アウト・オブ・オーダー・トランザクションを処理するシステムにおいて、多量なバッファを用いるような場合に有効であり、高信頼性が求められる情報処理装置での利用が考えられる。また、プロセッサに限らずI/Oカードやメモリからでも、リトライ機能を有しアウト・オブ・オーダー処理を実施している場合には適用可能である。 In a system in which a processor has a retry function and processes an out-of-order transaction, it is effective when a large amount of buffers are used, and it can be used in an information processing apparatus that requires high reliability. Further, the present invention can be applied not only to a processor but also from an I / O card or a memory when a retry function is provided and out-of-order processing is performed.
1 システム制御部
2 プロセッサ
3 デバイス
4 第1メモリ
5 第2メモリ
11 アウト・オブ・オーダー・トランザクション制御部
12 後続リトライ部
23 リプライ制御部
24 障害カウンタ監視部
31 リトライ可能障害部
32 リトライ不可能障害部
41 リトライ部
50 使用中フラグ
51 情報
52 障害カウンタ
DESCRIPTION OF
Claims (12)
受け付けたトランザクションを格納するバッファでのトランザクション管理に関する障害をリトライ可能障害とリトライ不可能障害に区別して検出し、リトライ可能障害を検出した場合にそのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御手段を含むことを特徴とする情報処理装置。 An information processing apparatus that manages a transaction from when a transaction is received from an issuer until a reply is returned in an out-of-order process.
Detects failures related to transaction management in the buffer that stores accepted transactions by distinguishing between failures that can be retried and failures that cannot be retried. When a failure that can be retried is detected, there is a relationship between the transaction and coherency along with the retry of the transaction. An information processing apparatus comprising transaction control means for retrying another transaction.
受け付けたトランザクションを格納するバッファでのトランザクション管理に関する障害をリトライ可能障害とリトライ不可能障害に区別して検出し、リトライ可能障害を検出した場合にそのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御ステップを含むことを特徴とするエラー処理方法。 An error processing method in an information processing apparatus that manages a transaction after receiving a transaction from an issuer until returning a reply in an out-of-order process,
Detects failures related to transaction management in the buffer that stores accepted transactions by distinguishing between failures that can be retried and failures that cannot be retried. When a failure that can be retried is detected, there is a relationship between the transaction and coherency along with the retry of the transaction. An error processing method comprising a transaction control step for retrying another transaction.
コンピュータに、受け付けたトランザクションを格納するバッファでのトランザクション管理に関する障害をリトライ可能障害とリトライ不可能障害に区別して検出し、リトライ可能障害を検出した場合にそのトランザクションのリトライとともに、そのトランザクションとコヒーレンシの関係にある他のトランザクションもリトライするトランザクション制御処理を実行させるための制御プログラム。 A control program for an error processing method in an information processing apparatus that manages a transaction from when a transaction is received from an issuer until a reply is returned in an out-of-order process.
The computer detects failures related to transaction management in the buffer that stores accepted transactions by distinguishing between failures that can be retried and failures that cannot be retried. When a retryable failure is detected, the transaction is retried and the transaction and coherency A control program for executing transaction control processing that retries other related transactions.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005337972A JP4584124B2 (en) | 2005-11-24 | 2005-11-24 | Information processing apparatus, error processing method thereof, and control program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005337972A JP4584124B2 (en) | 2005-11-24 | 2005-11-24 | Information processing apparatus, error processing method thereof, and control program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007148467A JP2007148467A (en) | 2007-06-14 |
JP4584124B2 true JP4584124B2 (en) | 2010-11-17 |
Family
ID=38209857
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005337972A Expired - Fee Related JP4584124B2 (en) | 2005-11-24 | 2005-11-24 | Information processing apparatus, error processing method thereof, and control program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4584124B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7480595B2 (en) | 2020-06-04 | 2024-05-10 | 富士通株式会社 | Semiconductor Device |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2872211B1 (en) * | 1998-02-13 | 1999-03-17 | 甲府日本電気株式会社 | Cache failure handling method for multiprocessor system |
JP3129224B2 (en) * | 1997-02-28 | 2001-01-29 | 日本電気株式会社 | Cache memory device |
JP2003030131A (en) * | 1996-03-15 | 2003-01-31 | Sun Microsyst Inc | Split transaction snooping bus and method of arbitration |
JP3589394B2 (en) * | 1998-03-23 | 2004-11-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Remote resource management system |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5826119B2 (en) * | 1977-06-27 | 1983-05-31 | 富士通株式会社 | Buffer retry method |
JPH0833868B2 (en) * | 1989-04-11 | 1996-03-29 | 日本電気株式会社 | Data transfer device |
JPH02287851A (en) * | 1989-04-28 | 1990-11-27 | Nec Corp | Cache memory controller |
JPH0683714A (en) * | 1992-09-04 | 1994-03-25 | Nec Eng Ltd | Expanded storage control device |
JPH06230992A (en) * | 1993-02-06 | 1994-08-19 | Hitachi Ltd | Computer system and method for recovery of computer system from fault |
IE80854B1 (en) * | 1993-08-26 | 1999-04-07 | Intel Corp | Processor ordering consistency for a processor performing out-of-order instruction execution |
JP3211705B2 (en) * | 1997-02-14 | 2001-09-25 | 日本電気株式会社 | High-speed bus system for multiprocessor |
-
2005
- 2005-11-24 JP JP2005337972A patent/JP4584124B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003030131A (en) * | 1996-03-15 | 2003-01-31 | Sun Microsyst Inc | Split transaction snooping bus and method of arbitration |
JP3129224B2 (en) * | 1997-02-28 | 2001-01-29 | 日本電気株式会社 | Cache memory device |
JP2872211B1 (en) * | 1998-02-13 | 1999-03-17 | 甲府日本電気株式会社 | Cache failure handling method for multiprocessor system |
JP3589394B2 (en) * | 1998-03-23 | 2004-11-17 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Remote resource management system |
Also Published As
Publication number | Publication date |
---|---|
JP2007148467A (en) | 2007-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8589763B2 (en) | Cache memory system | |
US7913147B2 (en) | Method and apparatus for scrubbing memory | |
US6829729B2 (en) | Method and system for fault isolation methodology for I/O unrecoverable, uncorrectable error | |
EP1974272B1 (en) | Method and apparatus for detecting a fault condition and restoration thereafter using user context information | |
US8140940B2 (en) | Method and apparatus for controlling memory | |
US9454422B2 (en) | Error feedback and logging with memory on-chip error checking and correcting (ECC) | |
EP1659494B1 (en) | Method and apparatus for classifying memory errors | |
US6950978B2 (en) | Method and apparatus for parity error recovery | |
CN102135925B (en) | Method and device for detecting error check and correcting memory | |
JP5451087B2 (en) | Fault processing apparatus and method | |
US8874989B2 (en) | Memory system capable of increasing data transfer efficiency | |
US9329926B1 (en) | Overlapping data integrity for semiconductor devices | |
US7177989B1 (en) | Retry of a device read transaction | |
US7194671B2 (en) | Mechanism handling race conditions in FRC-enabled processors | |
JP5966243B2 (en) | Storage device and storage device control method | |
US20110107143A1 (en) | Cache system | |
US6799285B2 (en) | Self-checking multi-threaded processor | |
JP4584124B2 (en) | Information processing apparatus, error processing method thereof, and control program | |
CN111382000B (en) | Semiconductor device, memory controller and memory access method | |
US20100169572A1 (en) | Data storage method, apparatus and system for interrupted write recovery | |
EP3882774A1 (en) | Data processing device and data processing method | |
US20050204185A1 (en) | Detecting and identifying data loss | |
JP7427887B2 (en) | Information processing device, information processing method, and information processing program | |
US20170337110A1 (en) | Data processing device | |
CN116466875A (en) | Method and system for offline repair and subsequent re-integration in a system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20090522 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090602 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090713 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100615 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100726 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100817 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100901 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130910 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |