JP4610570B2 - 情報処理装置及びトランザクション処理方法 - Google Patents

情報処理装置及びトランザクション処理方法 Download PDF

Info

Publication number
JP4610570B2
JP4610570B2 JP2007038222A JP2007038222A JP4610570B2 JP 4610570 B2 JP4610570 B2 JP 4610570B2 JP 2007038222 A JP2007038222 A JP 2007038222A JP 2007038222 A JP2007038222 A JP 2007038222A JP 4610570 B2 JP4610570 B2 JP 4610570B2
Authority
JP
Japan
Prior art keywords
transaction
retry
address
unit
excessive
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
Application number
JP2007038222A
Other languages
English (en)
Other versions
JP2007183984A (ja
Inventor
健一 小林
徹 渡部
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2007038222A priority Critical patent/JP4610570B2/ja
Publication of JP2007183984A publication Critical patent/JP2007183984A/ja
Application granted granted Critical
Publication of JP4610570B2 publication Critical patent/JP4610570B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Description

本発明は情報処理装置及びトランザクション処理方法に係り、特に、バスに接続された処理手段を有し、処理手段によりスに対して、トランザクションの発行を行う情報処理装置及びトランザクション処理方法に関する。
近年、大規模サーバの需要が高まっているにしたがって、大量のデータ処理能力と高い信頼性をもつ、マルチプロセッサシステムの出現が望まれている。
マルチプロセッサシステムの性能を向上するための最も重要な要素の一つとしてシステムバスの高速化がある。システムバスを高速化するための手法としてシステムバスのパイプライン化がある。システムバスのパイプライン化は、バスのスループットを向上させることができる。一方、エラーが発生した場合、処理の流れが滞るので性能低下が著しい。このため、エラーが発生した場合の性能低下を避ける手法が提案されている。
この手法の一つとしてリトライ処理がある。リトライ処理は、エラーを起こしたアドレストランザクションを再び発行して失敗した処理を再開する処理である。リトライ処理は、マルチプロセッサシステムの性能に大きく影響する重要な要素である。したがって、このようなリトライ処理には、高性能、高信頼性が望まれている。
パイプイン化されたシステムバスは、アドレストランザクションを複数の段階に分けて、それぞれの段階に対応するバスが独立に異なるトランザクションを処理できるように構成されている。すなわち、パイプライン化されていた。また、マルチプロセッサシステムでは、共有メモリ型マルチプロセッサシステムが主流を占めている。共有メモリ型マルチプロセッサシステムは、複数のプロセッサが共通のメモリにアクセスするため、システム全体でアドレススヌープを行なって、コヒーレンスを保つようにしていた。
上記のようなシステムでは、大別して二種類のエラーが存在する。一つは、システム故障等によるエラー、もう一つはアドレス競合などによる通常動作時に頻繁に起こるエラーである。後者のアドレス競合は、同一アドレスに対して連続してトランザクションが発行された場合に、先行して発行されたトランザクションの処理結果の反映が後に発行されたトランザクションの参照に間に合わない場合に生じる。
このようなエラーの対処方法は、2つある。一つは、後に発行されたトランザクションが処理可能になるまでのバスを一時的に停止する方法である。もう一つは、後に発行されたトランザクションを打ち切り、再度同一のアドレスをバスに発行する方法である。後者の対処方法は、アドレスリトライと呼ばれている。このアドレスリトライを実現する機構は、アドレスリトライ機構と呼ばれている。従来のマルチプロセッサシステムの多くは、システムの能力低下を防ぐためにアドレスリトライ機構が搭載されていた。
図1はマルチプロセッサシステムのブロック構成図を示す。マルチプロセッサシステム1は、プロセッサ2−1〜2−N、共有メモリ3、入出力装置4、バス制御部5、システムバス6から構成される。プロセッサ2−1〜2−Nは、命令に応じた演算を実行する。メモリ3は、N個のプロセッサ2−1〜2−Nとシステムバス6を介して接続されており、N個のプロセッサ2−1〜2−Nからアクセス可能とされており、N個のプロセッサ2−1〜2−Nで共有して用いられる。
入出力装置4は、キーボード、マウス、ディスプレイ、プリンタ、通信装置などから構成される。入出力装置4は、データの入出力、処理の指示入力、処理結果の入出力が行なわれる。バス制御部5は、N個のプロセッサ2−1〜2−N、入出力装置4に接続され、バス6の使用権を制御する。バス6は、N個のプロセッサ2−1〜2−N、メモリ3、入出力装置4間のデータの伝送に用いられる。
図2は従来の一例の要部の構成図を示す。プロセッサ2−Xは、N個のプロセッサ2−1〜2−Nのうち、一つのプロセッサを示す。プロセッサ2−Xとバス制御部5とは、バス6により接続されている。バス6は、アドレスバス11、12、ステータスバス13、14、データバス15から供給される。
アドレスバス11は、プロセッサ2−Xからバス制御部5にアドレスを伝送する。アドレスバス11で伝送されるアドレスは、例えば、プロセッサ2−Xで発行されたトランザクションのアドレスである。アドレスバス12は、バス制御部5からプロセッサ2−Xにアドレスを伝送する。アドレスバス12で伝送されるアドレスは、例えば、バス制御部5で調停され、バス6の使用が許可されたアドレスである。
ステータスバス13は、プロセッサ2−Xからバス制御部5にプロセッサ2−Xのステータスを供給する。ステータスバス13を伝送されるステータスは、プロセッサ2−Xでキャッシュスヌープを行なった結果を伝送する。ステータスバス14は、バス制御部5からプロセッサ2−Xにテータスを供給する。ステータスバス14を伝送されるステータスは、N個のプロセッサ2−1〜2−Nでのキャッシュスヌープの結果を合成したものが伝送される。データバス15は、キャッシュスヌープ結果に応じてデータを転送する。
次に、従来のアドレストランザクション処理の動作について説明する。プロセッサ2−Xは、演算部21、アドレス制御部22、スヌープ制御部23から構成される。演算部21は、データ処理を行ない、データ処理の結果に応じてアドレストランザクションを要求する。アドレス制御部22は、演算部21からのアドレストランザクションの要求に応じてアドレスを発行する。アドレス制御部22は、キュー発行部22a、リトライ制御部22b、カウント部22cを有する。キュー発行部22aは、アドレストランザクションに応じてアドレスを発行する。
リトライ制御部22bは、演算部21、スヌープ制御部23、バス制御部5に接続されている。リトライ制御部22bは、スヌープ制御部23からのリトライ指示に応じてキュー発行部22aを制御する。このとき、リトライ制御部22bには、演算部21からのリトライ回数、タイムアウト時間が設定され、カウント部22cからは、リトライ回数、タイムアウト時間が供給される。リトライ制御部22bは、カウント部22cのからのリトライ回数又はタイムアウト時間が演算部21によって設定されたリトライ回数又はタイムアウト時間になるまで、リトライを繰り返す。
また、リトライ制御部22bには、バス制御部5からバス6の使用状況に関する情報が供給される。リトライ制御部22bは、バス制御部5からの情報に応じてリトライ頻度を制御する。カウント部22cは、リトライ回数、タイムアウト時間をカウントする。リトライ制御部22bは、カウント部22cからのリトライ回数、タイムアウト時間を参照して、所定の回数並びに所定の時間に制限する。
スヌープ制御部23は、バス制御部5からアドレスに応じてキャッシュステータスを求める。また、スヌープ制御部23は、バス制御部5からのシステム全体のキャッシュステータスに応じてデータの転送を制御するとともに、アドレスリトライの指示を発行する。次に、アドレストランザクションの発生時の動作を図面とともに説明する。ステップS1で、プロセッサ2−Xの演算部21からアドレストランザクションが発生される。演算部21からのアドレストランザクションは、アドレス制御部22のキュー発行部22aに供給される。
ステップS2で、キュー発行部22aから演算部21からのアドレストランザクションに応じたアドレスが発行される。キュー発行部22aから発行されたアドレスは、バス制御部5にアドレスを供給される。ステップS3で、バス制御部5によりプロセッサ2−Xからのアドレスがプロセッサ2−1〜2−Nのアドレスバス12に供給される。
ステップS4では、プロセッサ2−1〜2−Nにより、バス制御部5からのアドレスに対してキャッシュステータスが求められる。プロセッサ2−1〜2−Nは、キャッシュステータスをバス制御部5に供給する。ステップS5は、バス制御部5での処理であり、プロセッサ2−1〜2−Nからのキャッシュステータスを合成してシステム全体のキャッシュステータスが求められる。
ステップS6は、バス制御部5の処理であり、システム全体のキャッシュステータスをプロセッサ2−1〜2−Nに供給する。プロセッサ2−Xは、バス制御部5からシステム全体のキャッシュステータスを受信する。ステップS7は、プロセッサ2−Xでの処理であり、バス制御部5からのシステム全体のキャッシュステータスに基づいてデータの転送制御が行なわれる。
なお、上記ステップS1〜S7は、プロセッサ2−1〜2−Nで発生される各トランザクションに対して行なわれる。ステップS1〜S7をパイプライン的に処理することにより処理の多重度を向上でき、高速化が可能となる。図3は従来の一例のパイプライン処理の動作説明図を示す。図3において、AT1〜AT3はトランザクションを示す。トランザクションAT1は、時刻t1でステップS2、次の時刻t2でステップS3、次の時刻t3でステップS4、次の時刻t4でステップS5、次の時刻t5でステップS6、次の時刻t6でステップS7が実行される。トランザクションAT2は、時刻t2でステップS2、次の時刻t3でステップS3、次の時刻t4でステップS4、次の時刻t5でステップS5、次の時刻t6でステップS6、次の時刻t7でステップS7が実行される。トランザクションAT3は、時刻t3でステップS2、次の時刻t4でステップS3、次の時刻t5でステップS4、次の時刻t6でステップS5、次の時刻t7でステップS6、次の時刻t8でステップS7が実行される。
このように異なるトランザクションAT1〜AT3は、同一ステップが異なる時刻で処理される。よって、バスを一つのトランザクションで占有することがないので、効率よく処理を行なうことができる。このパイプライン処理の利点を生かすため、アドレスリトライ機構が用いられている。
しかしながら、上記システムでは、アドレストランザクションがアドレスリトライ機構によって、リトライし続けると、処理の時間が長くなり、処理効率が低下する。また、規定のリトライ回数、タイムアウト時間が経過すると、システムに異常があると判定され、システムが停止してしまう等の問題点があった。
本発明は上記の点に鑑みてなされたもので、システムを効率よく、かつ、高い信頼性を持って運用できる情報処理装置及びトランザクション処理方法を提供することを目的とする。
本発明は、バスに接続された処理手段を有し、前記処理手段により前記バスに対して、トランザクションの発行を行う情報処理装置において、前記処理手段は、前記トランザクションのリトライ回数が所定のリトライ回数を超えた場合に、前記トランザクションの再発行であるリトライトランザクションに過剰リトライ状態を示すマークを付与するマーキングを行うマーキング手段と、前記マーキング手段でマーキングされたトランザクションを監視して、過剰リトライ状態の開始と終了とを検出する過剰リトライ検出手段と、前記過剰リトライ検出手段により過剰リトライ状態の開始が検出された場合には、前記バスに対して、過剰リトライ状態でないトランザクションの発行を抑止する処理制御手段とを有する。
過剰リトライ検出手段は、前記マーキングされたトランザクションの発行と完了を監視し、前記マーキングされたトランザクションが存在するか否か、又は、前記マーキングされたトランザクションの存在数を記憶し、前記マーキングされたトランザクションのすべての完了の検出をもって過剰リトライ状態の終了として検出する。
処理制御手段は、前記トランザクションを、互いに過剰リトライ状態が干渉しない複数のグループに分類し、前記複数のグループのうち所定のトランザクションが属するグループに含まれる他のトランザクションの要求を抑制する。
また、本発明は、バスに接続された処理手段を有し、前記処理手段により前記バスに対して、トランザクションの発行を行う情報処理装置のトランザクション処理方法において、前記トランザクションのリトライの回数が所定のリトライ回数を超えた場合に、前記処理手段により、前記トランザクションの再発行であるリトライトランザクションに過剰リトライ状態を示すマークを付与するマーキングを行うマーキング手順と、前記処理手段により、前記マーキング手順でマーキングされたトランザクションを監視して、過剰リトライ状態の開始と終了とを検出する過剰リトライ検出手順と、前記処理手段により、前記過剰リトライ検出手順により過剰リトライ状態の開始が検出された場合には、前記バスに対して、過剰リトライ状態でないトランザクションの発行を抑止する処理制御手順とを有す
また、本発明は、データ処理を行うとともに、前記データ処理の処理結果に応じてアドレストランザクションの要求を行う演算部と、前記アドレストランザクションの要求に応じてアドレストランザクションの発行を行うキュー発行部と、前記キュー発行部によるアドレストランザクションを再発行するものであるアドレスリトライの制御を行うリトライ制御部とを有するプロセッサを有する情報処理装置であって、前記プロセッサは、前記アドレスリトライ回数をカウントするカウント部と、前記カウント部によりカウントされた前記アドレスリトライ回数が所定のリトライ回数を超えた場合に、記トランザクションの再発行であるリトライトランザクションに過剰リトライ状態を示すマークを付与するマーキングを行うマーキング部と、前記マーキング部でマーキングされたトランザクションを監視して、過剰リトライ状態の開始と終了とを検出する過剰リトライ検出部と、前記過剰リトライ検出手段により過剰リトライ状態の開始が検出された場合には、前記バスに対して、過剰リトライ状態でないトランザクションの発行を抑止する処理制御部とを有する
また、本発明は、データ処理を行うとともに、前記データ処理の処理結果に応じてアドレストランザクションの要求を行う演算部と、前記アドレストランザクションの要求に応じてアドレストランザクションの発行を行うキュー発行部と、前記キュー発行部によるアドレストランザクションを再発行するものであるアドレスリトライの制御を行うリトライ制御部とを有するプロセッサを有する情報処理装置であって、前記プロセッサは、前記アドレスリトライ回数をカウントするカウント部と、前記カウント部によりカウントされた前記アドレスリトライ回数が所定のリトライ回数を超えた場合に、記トランザクションの再発行であるリトライトランザクションに過剰リトライ状態を示すマークを付与するマーキングを行うマーキング部と、前記マーキング部でマーキングされたトランザクションを監視して、過剰リトライ状態の開始と終了とを検出する過剰リトライ検出部と、前記過剰リトライ検出手段により過剰リトライ状態の開始が検出された場合には、前記バスに対して、過剰リトライ状態のアドレスリトライを優先的に発行する処理制御部とを有する
さらに、本発明は、データ処理を行うとともに、前記データ処理の結果に応じてアドレストランザクションの要求に応じてアドレストランザクションの発行を行うキュー発行部と、前記キュー発行部によるアドレストランザクションを再発行するものであるアドレスリトライの制御を行うリトライ制御部とを有するプロセッサとを有する情報処理装置において、前記プロセッサは、前記アドレスリトライ回数をカウントするカウント部と、前記カウント部によりカウントされた前記アドレスリトライ回数が所定のリトライ回数を超えた場合に、記トランザクションの再発行であるリトライトランザクションに過剰リトライ状態を示すマークを付与するマーキングを行うマーキング部と、前記マーキング部でマーキングされたマークに基づいて前記システムバスに接続された他のプロセッサに前記過剰リトライ状態であることを通知する通知部とを含む
本発明によれば、トランザクションのリトライ回数が所定のリトライ回数を超えた場合に、トランザクションの再発行であるリトライトランザクションに過剰リトライ状態を示すマークを付与するマーキングを行い、マーキングされたトランザクションを監視して、過剰リトライ状態の開始と終了とを検出し、過剰リトライ状態の開始が検出された場合には、バスに対して、過剰リトライ状態でないトランザクションの発行を抑止することにより、過剰に要求された処理を優先して処理できるので、処理を一定時間内に終了させることを保証でき、よって、処理がタイムアウトし、システムダウンすることを防止できる。
また、本発明によれば、過剰リトライ状態の開始通知は、マーキングされたトランザクションにより行われ、過剰リトライ状態の終了検出を、各情報処理装置が独立に行うことができるため、通常処理への影響を低減でき、多数の情報処理装置からなる膨大なマルチプロセッサシステムにおいて、効率的に処理を行うことが可能となる。
さらに、本発明によれば、複数のトランザクションを複数のグループに分類し、所定のトランザクションが属するグループに含まれる他のトランザクションの要求を抑制することにより、影響が大きい処理に限定して、要求を抑制することができるため、関係のない処理への影響を低減できる。
図4は本発明の第1実施例のブロック構成図を示す。同図中、図2と同一構成部分には同一符号を付し、その説明は省略する。本実施例は、リトライ制御部22bの処理が図2とは相違する。また、スヌープ制御部23にリトライ監視部23aを設けてなる。
図5は本発明の第1実施例のリトライ制御部の処理フローチャートを示す。リトライ制御部22bは、ステップS1−1〜S1−5の処理を実行する。ステップS1−1は、カウント部22cからのリトライ回数が所定のリトライ回数以上になったか否かを判定する。なお、所定のリトライ回数は、演算部21によって、設定された規定のリトライ回数以下の回数に設定されている。このため、所定のリトライ回数となってもタイムアウトとならず、システムダウンはしない。ステップS1−1の判断は、複数の条件の組み合わせで行なわれる。
例えば、第1の条件は、経過時間が演算部21によって設定されたタイムアウト時間の80パーセントを越えた場合とする。第2の条件は、プロセッサ数が32個未満の場合に、リトライ回数が40回以上になった場合とする。第3の条件は、プロセッサ数が32個以上の場合に、20回以上になった場合とする。ステップS1−1で、リトライ回数が規定の回数以上であれば、次に、ステップS1−2、S1−3が実行され、規定の回数以下であれば、次に、ステップS1−4が実行される。
ステップS1−2では、過剰にリトライされたアドレストランザクションにマーキングを行う。図6は本発明の第1実施例の動作を説明するための図を示す。図6(A)は通常時に発行されるアドレストランザクションの状態、図6(B)は過剰にリトライされたときに発行されるアドレストランザクションの状態を示す。キュー発行部22aは、通常は図6(A)に示すようにアドレストランザクション51を出力する。また、キュー発行部22aは、リトライ制御部22bで過剰リトライが検出されると、リトライ制御部22bからの指示により図6(B)に示すようにアドレストランザクション51にマーク61を付与する。
ステップS1−3では、ステップS1−2でマークが付与されたアドレストランザクションをバス制御部5に通知する。ステップS1−4では、システム過剰リトライ状態か否かを判定する。ステップS1−4でシステムが過剰リトライ状態でなければ、そのまま処理を終了し、アドレスリトライが解消されるまで、リトライを継続する。
また、ステップS1−4で、システムが過剰リトライ状態であれば、ステップS1−5が実行される。ステップS1−5では、リトライ制御部22bを制御して、過剰リトライ状態でない他のトランザクションの発行を抑制する。ステップS1―5で、過剰リトライ状態でないトランザクションの発行を抑制させることに過剰リトライ状態のトランザクションを優先して実行させることができる。よって、タイムアウトを抑制できる。
次に、リトライ監視部23aの動作について説明する。
図7は本発明の第1実施例のリトライ監視部の処理フローチャートを示す。リトライ監視部23aは、ステップS2−1〜S2−6を実行する。
ステップS2−1では、リトライ回数が所定の回数か否かを判定する。ステップS2−1でリトライ回数が所定の回数以上になると、次に、ステップS2−2が実行される。
ステップS2−2では、過剰リトライ状態が検出されていない他のトランザクションのスヌープ結果を強制的リトライ状態にする。ステップS2−3では、強制的リトライ状態か否かを判定する。ステップS2−3で、強制リトライ状態と判定された場合には、次に、ステップS2−4が実行される。
ステップS2−4では、リトライ制御部22aに過剰リトライ状態である旨の通知を行なう。ステップS2−5では、過剰リトライ状態が解消したか否かが判断される。ステップS2−5で過剰リトライ状態である旨判断されると、次に、ステップS2−6が実行される。
ステップS2−6では、ステップS2−4でリトライ制御部22aに通知した過剰リトライ状態である旨の通知を解除する。リトライ監視部23aにより、過剰でないリトライ状態のアドレストランザクションについては、強制的にリトライ状態とされる。よって、過剰なリトライ状態のアドレストランザクションが優先して実行される。このため、システムがタイムアウトしてシステムダウンする確率を低減することができる。
ここで、過剰ステップS2−1の過剰リトライ状態の判定方法について説明する。過剰リトライ状態の判定は、リトライ制御部22bに設けられたカウンタC01及びカウンタC02のカウント値により実行される。カウンタC01は、リトライ制御部22bに設けられており、過剰にリトライ状態となったアドレストランザクションをカウントする。カウンタC02は、リトライ監視部23aに設けられており、システムが過剰リトライ状態のときにキャッシュスヌープが成功またはエラーで終了したアドレストランザクションをカウントする。
図8は本発明の第1実施例のリトライ制御部の過剰リトライ状態を判定する処理のフローチャートを示す。リトライ制御部22bは、ステップS3−1〜S3−8を実行する。ステップS3−1では、トランザクションがリトライされたか否かを判定する。ステップS3−1でトランザクションがリトライされたと判断された場合には、ステップS3−2を実行する。ステップS3−2では、リトライされたトランザクションが過剰にリトライされているか否かを判定する。ステップS3−2で、過剰にリトライされている場合には、ステップS3−3が実行される。
ステップS3−3では、過剰にリトライされたトランザクションが既にカウンタC01によりカウント済みか否かを判定する。ステップS3−3で、過剰にリトライされたトランザクションがカウンタC01によりカウント済みでなければ、ステップS3−4を実行する。ステップS3−4では、カウンタC01の値を1増加させる。
ステップS3−5では、トランザクションが自装置の制御下に存在するか否かを判定する。ステップS3−5でトランザクションが自装置の制御下に存在すれば、ステップS3−6を実行する。ステップS3−6では、トランザクションにカウント済みの情報を付ける。
ステップS3−7では、カウント値c01とカウント値c02とが一致するか否かを判定する。ステップS3−7でカウント値c01とカウント値c02とが一致すれば、過剰にリトライされたトランザクションは、解消されたと判断できるので、次にステップS3−8を実行する。ステップS3−8では、カウンタC01のカウント値c01を「0」にする。
図9は本発明の第1実施例のリトライ監視部の過剰リトライ状態を判定する処理のフローチャートを示す。リトライ監視部23aは、ステップS4−1〜S4−5を実行する。ステップS4−1は、システムが過剰リトライ状態か否かを判定する。ステップS 4−1で、システムが過剰リトライ状態であれば、次に、ステップS 4−2の判断を行なう。
ステップS4−2は、過剰リトライされたトランザクションの処理が終了したか否かを判定する。ステップS4−2で過剰リトライされたトランザクションが処理されると、ステップS4−3が実行される。ステップS4−3は、カウンタC02のカウント値c02を「1」増加させる。
ステップS4−4は、カウンタC02のカウント値c02とリトライ制御部22bのカウンタC01からのカウント値c01とが同一か否かを判定する。ステップS4−4で、カウント値c01とカウント値c02とが同一になった場合には、ステップS4−5を実行する。ステップS4−5は、過剰リトライのトランザクションがないと判断できるので、カウンタC02のカウント値c02を「0」にする。
以上のように過剰リトライとなったトランザクションの数をカウントすることにより過剰リトライ状態の判定が可能となる。なお、上記の過剰リトライ状態の判定方法では、過剰リトライとされたトランザクションの数をカウントしたが、リトライ監視部23aに過剰リトライとなったトランザクションに対応したフラグを設けフラグをオン/オフすることにより過剰リトライ状態を判定するようにしてもよい。
図10は本発明の第1実施例の過剰リトライ状態を判定する方法を説明するための図を示す。リトライ監視部23aに、複数のフラグFLAG1〜FLAGmを設ける。フラグの数mは、システムに現れる過剰にリトライされたアドレスの最大数と同じだけの数とする。
過剰にリトライされたアドレスが現れると、該当するフラグをオンする。また、過剰にリトライされたアドレスが処理されると、該当するフラグをオフする。すべてのフラグがオフになると、リトライ制御部22bへの過剰リトライ状態の通知を停止する。また、検査用のトランザクションを発行することにより、過剰リトライ状態か否かを判定するようにしてもよい。
図11は本発明の第1実施例のリトライ制御部の過剰リトライ判定処理の変形例のフローチャートを示す。本変形例では、リトライ制御部22bは、ステップS5−1〜S5−5を実行する。
ステップS5−1では、システムが過剰リトライ状態か否かを判定する。ステップS5−1でシステムが過剰リトライ状態であると判定されると、ステップS5−2が実行される。また、ステップS5−1でシステムが過剰リトライ状態でないと判定された場合には、処理を終了する。
ステップS5−2では、リトライ制御部22bに予め設定された所定時間が経過したかを判定する。ステップS5−2で、所定時間経過すると、ステップS5−3を実行させる。ステップS5−3では、キュー発行部22aから検査用トランザクションをバス制御部5に発行する。
図12は本発明の第1実施例の過剰リトライ判定処理の変形例に用いられる検査用トランザクションを説明するための図を示す。検査用トランザクションは、図12(B)に71で示すように1ビットのアドレストランザクションから構成される。ステップS5−4は、検査用トランザクションが強制的リトライ通知を受けたか否かを判定する。ステップS5−4で検査用トランザクションが強制的リトライ通知を受けない場合には、過剰リトライ状態が解消されたと判断できるため、ステップS5−5が実行される。ステップS5−5では、過剰リトライ通知を停止する。
以上のように1ビットの検査用トランザクションを用いることによりバス6を混雑させることがない。なお、上記変形例では、1ビットの検査用トランザクションを用いたが、これに限定されるものではなく、過剰リトライ状態でない、他のアドレストランザクションを試験用トランザクションとして発行するようにするようにしてもよい。
また、図12(C)に示すアドレス51の一部81を検査用アドレストランザクションとして用いるようにしてもよい。なお、上記の試験用トランザクションの発行は、システムバス6を混雑させない程度の頻度で発行される。また、上記実施例では、通常のアドレストランザクションの処理について説明した。しかし、アドレストランザクションには、特殊なトランザクションが存在する。特殊なアドレストランザクションとは、抑制を受ける必要がないもの、抑制を受けてはいけないトランザクションである。
次に本発明の第2実施例について説明する。本実施例の構成は第1実施例と同一であり、リトライ制御部22b及びリトライ監視部23aの処理動作が異なる。よって、構成の説明は省略する。まず、本実施例におけるリトライ制御部22bの動作を説明する。図13は本発明の第2実施例のリトライ制御部のフローチャートを示す。
リトライ制御部22bは、ステップS6−1〜S6−7を実行する。ステップS6−1では、リトライ制御部22bの制御下のアドレストランザクションが過剰にリトライされているか否かを判定する。ステップS6−1で制御下のトランザクションが過剰にリトライされていると、判断された場合には、ステップS6−2が実行される。また、ステップS6−1で制御下のアドレストランザクションが過剰にリトライされていない場合には、次にステップS6−4が実行される。
ステップS6−2では、過剰にリトライされたトランザクションの存在をリトライ監視部23aに通知する。ステップS6−3では、発行するアドレスに図6(B)に示すように過剰リトライ状態であるマークを発行する。
次に、ステップS6−4が実行される。ステップS6−4では、システムが過剰リトライ状態か否かを判定する。ステップS6−4でシステムが過剰リトライ状態の場合には、ステップS6−5が実行される。
ステップS6−5では、制御下のアドレストランザクションが特殊なトランザクションが否かを判定する。ステップS6−5で制御下のトランザクションが特殊なアドレストランザクションの場合には、ステップS6−6が実行され、ステップS6−5で制御下のアドレストランザクションが特殊なトランザクションではない場合には、ステップS6−7が実行される。ステップS6−6では、特殊なトランザクションの発行頻度を低下させる。ステップS6−7では、他のトランザクションの発行を抑制する。
次に本実施例におけるリトライ監視部23aの動作を説明する。
図14は本発明の第2実施例のリトライ監視部の処理フローチャートを示す。リトライ監視部23aは、ステップS7−1〜ステップS7−7を実行する。ステップS7−1では、制御下のアドレストランザクションが過剰リトライ状態か否かを判定する。ステップS7−1で制御下のアドレストランザクションが過剰リトライ状態であれば、次にステップS7−2が実行される。ステップS7−1で、過剰リトライ状態でなければ、次に、ステップS7−4が実行される。
ステップS7−2では、バス制御部5からのアドレストランザクションが特殊なアドレストランザクションか否かを判定する。ステップS7−2でバス制御部5からのアドレストランザクションが特殊なアドレストランザクション場合には、次にステップS7−4が実行され、バス制御部5からのアドレストランザクションが通常のアドレストランザクションの場合には、ステップS7−3が実行された後、ステップS7−4が実行される。
ステップS7−3では、他のアドレストランザクションのスヌープ結果を強制リトライ状態に設定する。ステップS7−4では、アドレストランザクションが強制リトライ状態か否かを判定する。ステップS7−4でアドレストランザクションが強制リトライ状態の場合には、ステップS7−5が実行された後ステップS7−6が実行され、ステップS7−4でアドレストランザクションが強制リトライ状態ではない場合には、ステップS7−6が実行される。
ステップS7−5は、リトライ制御部22bに過剰リトライ状態である旨を通知する。ステップS7−6は、過剰リトライ状態が解消したか否か判定する。ステップS7−6で、過剰リトライ状態が解消したと判断された場合には、ステップS7−7が実行される。
ステップS7−7は、リトライ制御部22bへの過剰リトライ状態の通知を停止する。リトライ監視部23aでは、上記ステップS7−1〜S7−7が繰り返される。本実施例によれば、特殊なアドレストランザクションの存在を許しつつも、過剰リトライ状態のアドレストランザクションを効率的に処理できる。
次に、本発明の第3実施例について説明する。本実施例は、アドレストランザクションをグループ分けして制御する場合の実装例を示す。なお、本実施例の構成は、第1実施例と同一であり、リトライ制御部22b及びリトライ監視部23aでの処理が相違するだけであるので、構成についての説明は省略する。
図15は本発明の第3実施例のアドレストランザクションのデータ構成図を示す。本実施例のアドレストランザクションは、図15(A )に示すようにトランザクション情報T1〜Tn及びアドレス91から構成される。図15(B)に示すようにアドレス91の上位ビット91−1は、アドレスのキャッシュライン毎のグループ分けに用いられる。
また、図15(C)に示すようにトランザクション情報Tx及びアドレスの上位ビット91−2は、アドレスが含まれるプロセッサのグループ分けに用いられる。なお、トランザクション情報Txは、トランザクション情報T1〜Tnのうちの任意のトランザクション情報を示す。次に、リトライ制御部22bの動作について説明する。
図16は本発明の第3実施例のリトライ制御部の処理フローチャートを示す。リトライ制御部22bは、ステップS8−1〜S8−7を実行する。ステップS8−1は、制御下のアドレストランザクションが過剰のリトライ状態か否かを判定する。ステップS8−1でアドレストランザクションが過剰リトライ状態である場合には、ステップS8−2、S8−3が実行された後ステップS8−4が実行される。また、ステップS8―1でアドレストランザクションが過剰リトライ状態でない場合には、次にステップS8−4が実行される。
ステップS8−2は、過剰にリトライされたアドレストランザクションの存在をリトライ監視部23aに通知する。ステップS8−3は、発行するアドレストランザクションに過剰にリトライされたアドレストランザクションである旨のマークを付ける。ステップS8−4は、システムの配下のアドレストランザクションが属するグループが過剰リトライ状態か否かを判定する。アドレストランザクションが属するグループは、例えば、図15(B)に示すアドレス91の上位ビット91−1や図15(C)に示すトランザクション情報Tx及びアドレス91の上記ビット91−2により判定できる。
ステップS8−4で、システムの配下のグループが過剰リトライ状態である場合には、ステップS8―5が実行される。ステップS8−5は、特殊なアドレストランザクションか否かを判定する。ステップS8−5で特殊なアドレストランザクションであると判断された場合には、ステップS8−6が実行され、特殊なアドレストランザクションでなないと判断された場合には、ステップS8−7が実行される。
ステップS8−6は、特殊なアドレストランザクションの発行頻度を低下させる。ステップS8−7は、他のアドレストランザクションの発行を抑制する。
次に、リトライ監視部23aの動作を説明する。
図17は本発明の第3実施例のリトライ監視部の動作フローチャートを示す。
リトライ監視部23aは、ステップS9−1〜S9−7の処理を実行する。ステップS9−1は、制御下のアドレストランザクションは過剰リトライ状態か否かを判定する。ステップS9−1で制御下のアドレストランザクションが過剰リトライ状態である場合には、ステップS9−2〜S9−4が実行された後ステップS9−5が実行される。また、ステップS9−1で、制御下のアドレストランザクションが過剰リトライ状態ではない場合には、次にステップS9−5が実行される。
ステップS9−2は、バス制御部5からのアドレストランザクションが制御下のグループと同一のグループか否かを判定する。ステップS9−2で、同一グループである場合には、次にステップS9−3が実行され、同一グループでない場合には、次にステップS9−5が実行される。ステップS9−3は、バス制御部5からのトランザクションが特殊なトランザクションか否かを判定する。ステップS9−3で特殊なトランザクションであると判定された場合には、次にステップS9−5が実行され、特殊なトランザクションではないと判定された場合には、次にステップS9−4が実行される。
ステップS9−4は、他のトランザクションを強制的リトライ状態にする。ステップS9−5は、スヌープ結果が強制的リトライ状態か否かを判定する。ステップS9−5で、スヌープ結果が強制的リトライ状態であると判定された場合には、次にステップS9−7が実行され、スヌープ結果が強制的リトライ状態ではないと判定された場合には、次にステップS9−6が実行された後ステップS9−7が実行される。
ステップS9−6では、リトライ制御部22bにグループ情報の通知及び過剰リトライ状態である旨の通知を行なう。ステップS9−7では、過剰リトライ状態が解消したが否かが判定する。ステップS9−7で、過剰リトライ状態が解消していないと判断された場合には、そのまま処理を終了する。また、ステップS9−7で過剰リトライ状態が解消したと判断された場合には、次にステップS9−8が実行される。
ステップS9−8では、リトライ制御部22bへのグループ情報の通知及び過剰リトライ状態である旨の通知を停止する。
リトライ監視部23aは、上記ステップS9−1〜S9−7の処理をバス制御部5からアドレストランザクションが供給される毎に実行する。
なお、アドレストランザクションのグループ分けは、複数のグループで過剰リトライ状態が干渉しないように行なわれる。
グループの分類方法としては、アドレスのキャッシュライン毎、及びアドレスの対象が含まれるプロセッサ毎などの分類方法がある。また、過剰なリトライが発生したアドレストランザクションのグループ分類を切り換えることにより、優先してリトライが行なわれるようにしてもよい。
図18は本発明の第3実施例の変形例のリトライ制御部の動作フローチャートを示す。
グループ分類を切り換える処理は、ステップS10−1〜S10−5から構成される。ステップS10−1では、制御下の所定のアドレストランザクションが過剰にリトライされているか否かを判定する。ステップS10−1で過剰にリトライされた状態であると判定された場合には、次に、ステップS10−2が実行される。また、ステップS10−1で過剰にリトライされた状態ではないと判定された場合には、そのまま処理を終了する。
ステップS10−2では、所定のアドレストランザクションが別のグループ分類でも新たに過剰リトライ状態とされたか否かがが判定される。ステップS10−2で、別のグループ分類でも過剰リトライ状態とされた場合には、次にステップS10−3が実行された後、S10−4が実行される。また、ステップS10−2で、別のグループ分類では過剰リトライ状態とされていない場合には、そのまま処理を終了する。
ステップS10−3では、所定のアドレストランザクションが属する複数のグループ分類を比較する。ステップS10−4では、新たなグループ分類の優先順位が別のグループ分類より高いか否かを判定する。ステップS10−4で、新たに過剰リトライ状態とされたグループ分類の優先順位が高い場合には、ステップS10−5を実行する。また、ステップS10−4で、新たに過剰リトライ状態とされたグループ分類の優先順位が元のグループ分類より低い場合には、そのまま処理を終了する。ステップS10−5は、制御対象とするグループ分類を新たなグループ分類に設定する。
本変形例によれば、グループ分類の設定を優先順位の高いグループ分類に切り換えることにより、優先してリトライ処理が行なわれ、過剰リトライ状態を解消できる。なお、本実施例では、図1に示すようにN個のプロセッサ2−1〜2−Nをシステムバス6に接続してメモリ3を共有する場合について説明したが、複数のプロセッサとメモリからなるシステムボードをシステムバス6に接続するようにしてもよい。
図19は本発明の他の適用例のブロック構成図を示す。同図中、図1と同一構成部分には同一符号を付し、その説明は省略する。
本適用例のシステム100は、M個のシステムボード101−1〜101−Mをシステムバス6に接続してなる。システムボード101−1〜101−Mは、N個のプロセッサ102−1〜102−N及びメモリ103から構成される。システムバス6には、M×N個のプロセッサが接続される。各プロセッサは、アドレストランザクションにエラーが発生した場合には、上記のような処理によってリトライ処理が実行される。
マルチプロセッサシステムのブロック構成図である。 従来の一例の要部の構成図である。 従来の一例のパイプライン処理の動作説明図である。 本発明の第1実施例のブロック構成図である。 本発明の第1実施例のリトライ制御部の処理フローチャートである。 本発明の第1実施例の動作を説明するための図である。 本発明の第1実施例のリトライ監視部の処理フローチャートである。 本発明の第1実施例のリトライ制御部の過剰リトライ状態を判定する処理のフローチャートである。 本発明の第1実施例のリトライ監視部の過剰リトライ状態を判定する処理のフローチャートである。 本発明の第1実施例の過剰リトライ状態を判定する方法を説明するための図である。 本発明の第1実施例のリトライ制御部の過剰リトライ判定処理の変形例のフローチャートである。 本発明の第1実施例の過剰リトライ判定処理の変形例に用いられる検査用トランザクションを説明するための図である。 本発明の第2実施例のリトライ制御部のフローチャートである。 本発明の第2実施例のリトライ監視部の処理フローチャートである。 本発明の第3実施例のアドレストランザクションのデータ構成図である。 本発明の第3実施例のリトライ制御部の処理フローチャートである。 本発明の第3実施例のリトライ監視部の動作フローチャートである。 本発明の第3実施例の変形例のリトライ制御部の動作フローチャートである。 本発明の他の適用例のブロック構成図である。
符号の説明
1 マルチプロセッサシステム
2−1〜2−N プロセッサ
3 メモリ
4 入出力装置
5 バス制御部
6 システムバス
21 演算部
22 アドレス制御部
22a キュー発行部
22b リトライ制御部
22c カウント部
23 スヌープ制御部
23a リトライ監視部
C01、C02 カウンタ

Claims (7)

  1. バスに接続された処理手段を有し、前記処理手段により前記バスに対して、トランザクションの発行を行う情報処理装置において、
    前記処理手段は、
    前記トランザクションのリトライ回数が所定のリトライ回数を超えた場合に、前記トランザクションの再発行であるリトライトランザクションに過剰リトライ状態を示すマークを付与するマーキングを行うマーキング手段と、
    前記マーキング手段でマーキングされたトランザクションを監視して、過剰リトライ状態の開始と終了とを検出する過剰リトライ検出手段と、
    前記過剰リトライ検出手段により過剰リトライ状態の開始が検出された場合には、前記バスに対して、過剰リトライ状態でないトランザクションの発行を抑止する処理制御手段とを有する情報処理装置。
  2. 前記過剰リトライ検出手段は、前記マーキングされたトランザクションの発行と完了を監視し、前記マーキングされたトランザクションが存在するか否か、又は、前記マーキングされたトランザクションの存在数を記憶し、前記マーキングされたトランザクションのすべての完了の検出をもって過剰リトライ状態の終了として検出する請求項1記載の情報処理装置。
  3. 前記処理制御手段は、前記トランザクションを、互いに過剰リトライ状態が干渉しない複数のグループに分類し、前記複数のグループのうち所定のトランザクションが属するグループに含まれる他のトランザクションの要求を抑制する請求項1又は2に記載の情報処理装置。
  4. バスに接続された処理手段を有し、前記処理手段により前記バスに対して、トランザクションの発行を行う情報処理装置のトランザクション処理方法において、
    前記トランザクションのリトライの回数が所定のリトライ回数を超えた場合に、前記処理手段により、前記トランザクションの再発行であるリトライトランザクションに過剰リトライ状態を示すマークを付与するマーキングを行うマーキング手順と、
    前記処理手段により、前記マーキング手順でマーキングされたトランザクションを監視して、過剰リトライ状態の開始と終了とを検出する過剰リトライ検出手順と、
    前記処理手段により、前記過剰リトライ検出手順により過剰リトライ状態の開始が検出された場合には、前記バスに対して、過剰リトライ状態でないトランザクションの発行を抑止する処理制御手順とを有するトランザクション処理方法。
  5. データ処理を行うとともに、前記データ処理の処理結果に応じてアドレストランザクションの要求を行う演算部と、前記アドレストランザクションの要求に応じてアドレストランザクションの発行を行うキュー発行部と、前記キュー発行部によるアドレストランザクションを再発行するものであるアドレスリトライの制御を行うリトライ制御部とを有するプロセッサを有する情報処理装置であって、
    前記プロセッサは、
    前記アドレスリトライの回数をカウントするカウント部と、
    前記カウント部によりカウントされた前記アドレスリトライの回数が所定のリトライ回数を超えた場合に、前記トランザクションの再発行であるリトライトランザクションに過剰リトライ状態を示すマークを付与するマーキングを行うマーキング部と、
    前記マーキング部でマーキングされたトランザクションを監視して、過剰リトライ状態の開始と終了とを検出する過剰リトライ検出部と、
    前記過剰リトライ検出手段により過剰リトライ状態の開始が検出された場合には、前記バスに対して、過剰リトライ状態でないトランザクションの発行を抑止する処理制御部とを有する情報処理装置。
  6. データ処理を行うとともに、前記データ処理の処理結果に応じてアドレストランザクションの要求を行う演算部と、前記アドレストランザクションの要求に応じてアドレストランザクションの発行を行うキュー発行部と、前記キュー発行部によるアドレストランザクションを再発行するものであるアドレスリトライの制御を行うリトライ制御部とを有するプロセッサを有する情報処理装置であって、
    前記プロセッサは、
    前記アドレスリトライの回数をカウントするカウント部と、
    前記カウント部によりカウントされた前記アドレスリトライの回数が所定のリトライ回数を超えた場合に、前記トランザクションの再発行であるリトライトランザクションに過剰リトライ状態を示すマークを付与するマーキングを行うマーキング部と、
    前記マーキング部でマーキングされたトランザクションを監視して、過剰リトライ状態の開始と終了とを検出する過剰リトライ検出部と、
    前記過剰リトライ検出手段により過剰リトライ状態の開始が検出された場合には、前記バスに対して、過剰リトライ状態のアドレスリトライを優先的に発行する処理制御部とを有する情報処理装置。
  7. データ処理を行うとともに、前記データ処理の結果に応じてアドレストランザクションの要求に応じてアドレストランザクションの発行を行うキュー発行部と、前記キュー発行部によるアドレストランザクションを再発行するものであるアドレスリトライの制御を行うリトライ制御部とを有するプロセッサとを有する情報処理装置において、
    前記プロセッサは、
    前記アドレスリトライの回数をカウントするカウント部と、
    前記カウント部によりカウントされた前記アドレスリトライの回数が所定のリトライ回数を超えた場合に、前記トランザクションの再発行であるリトライトランザクションに過剰リトライ状態を示すマークを付与するマーキングを行うマーキング部と、
    前記マーキング部でマーキングされたマークに基づいて前記システムバスに接続された他のプロセッサに前記過剰リトライ状態であることを通知する通知部とを含む情報処理装置。
JP2007038222A 2007-02-19 2007-02-19 情報処理装置及びトランザクション処理方法 Expired - Fee Related JP4610570B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007038222A JP4610570B2 (ja) 2007-02-19 2007-02-19 情報処理装置及びトランザクション処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007038222A JP4610570B2 (ja) 2007-02-19 2007-02-19 情報処理装置及びトランザクション処理方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP35372899A Division JP4144986B2 (ja) 1999-12-13 1999-12-13 情報処理装置、及び、トランザクション処理方法、プロセッサ、並びに、リトライ方法

Publications (2)

Publication Number Publication Date
JP2007183984A JP2007183984A (ja) 2007-07-19
JP4610570B2 true JP4610570B2 (ja) 2011-01-12

Family

ID=38339946

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007038222A Expired - Fee Related JP4610570B2 (ja) 2007-02-19 2007-02-19 情報処理装置及びトランザクション処理方法

Country Status (1)

Country Link
JP (1) JP4610570B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101420290B1 (ko) 2008-05-14 2014-07-17 삼성전자주식회사 트랜잭션들을 그룹화하는 버스 중재기, 이를 포함하는 버스장치 및 시스템
JP4969513B2 (ja) * 2008-05-14 2012-07-04 三菱電機株式会社 データ転送システム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02143361A (ja) * 1988-11-25 1990-06-01 Nec Corp 処理順序決定回路
JPH0831077B2 (ja) * 1989-04-07 1996-03-27 富士通株式会社 入出力サブシステムのチャネルパス負荷率均等化方法
JP2752917B2 (ja) * 1995-04-26 1998-05-18 四国日本電気ソフトウェア株式会社 バス接続方式
JPH09114750A (ja) * 1995-10-13 1997-05-02 Mitsubishi Electric Corp バス制御装置

Also Published As

Publication number Publication date
JP2007183984A (ja) 2007-07-19

Similar Documents

Publication Publication Date Title
JP4144986B2 (ja) 情報処理装置、及び、トランザクション処理方法、プロセッサ、並びに、リトライ方法
US5796941A (en) Method for supervising software execution in a license restricted environment
KR101231558B1 (ko) 마이크로프로세서에서의 전압 및 주파수의 신뢰성있는 설정
US20110320892A1 (en) Memory error isolation and recovery in a multiprocessor computer system
US7793143B2 (en) Switching a defective signal line with a spare signal line without shutting down the computer system
EP3591485B1 (en) Method and device for monitoring for equipment failure
KR20090098812A (ko) 시스템, 부하 분산 방법 및 부하 분산 장치
US10560537B2 (en) Function based dynamic traffic management for network services
JP4610570B2 (ja) 情報処理装置及びトランザクション処理方法
CN102169454B (zh) 多处理器调试串口电路切换方法、装置及系统
CN115629296B (zh) 芯片测试方法、装置、设备及存储介质
CN110399034A (zh) 一种SoC系统的功耗优化方法及终端
CN113805925A (zh) 分布式集群管理软件的在线升级方法、装置、设备及介质
CN105556402A (zh) 用于影响控制设备的控制程序的方法
CN111027724A (zh) 一种故障处理方法、装置、电子设备和存储介质
US11816016B2 (en) Identifying causes of anomalies observed in an integrated circuit chip
CN108984105B (zh) 对网络存储设备中的复制任务进行分配的方法和设备
CN112948265A (zh) 一种批处理自动化验证方法和装置
CN114020670B (zh) 一种pcie卡的管理方法、系统、设备及存储介质
US10019390B2 (en) Using memory cache for a race free interrupt scheme without the use of “read clear” registers
EP4070198B1 (en) Detecting anomalous latent communications in an integrated circuit chip
JP6555131B2 (ja) 並列処理装置、ジョブ監視方法及びジョブ監視プログラム
CN106502947A (zh) 一种基于vpx总线的多处理器计算机任务动态分配方法
CN118467232B (zh) 一种微服务故障定位方法及电子设备
CN116627360B (zh) 数据下发方法、数据管理系统、服务器及存储介质

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091208

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100122

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100525

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100824

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100903

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: 20100928

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: 20101012

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131022

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees