JP4728896B2 - コンピュータシステム - Google Patents
コンピュータシステム Download PDFInfo
- Publication number
- JP4728896B2 JP4728896B2 JP2006192781A JP2006192781A JP4728896B2 JP 4728896 B2 JP4728896 B2 JP 4728896B2 JP 2006192781 A JP2006192781 A JP 2006192781A JP 2006192781 A JP2006192781 A JP 2006192781A JP 4728896 B2 JP4728896 B2 JP 4728896B2
- Authority
- JP
- Japan
- Prior art keywords
- bus
- transaction
- control circuit
- pci
- reset
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/4045—Coupling between buses using bus bridges where the bus bridge performs an extender function
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/0745—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in an input/output transactions management context
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0775—Content or structure details of the error report, e.g. specific table structure, specific error fields
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0784—Routing of error reports, e.g. with a specific transmission path or data flow
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0793—Remedial or corrective actions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Debugging And Monitoring (AREA)
- Bus Control (AREA)
Description
プロセッサは、IO制御回路に接続されている。
メモリは、プロセッサとIO制御回路とに接続されている。メモリには、ドライバを含むOS(Operating System)が格納されている。
PCIバスは、IO制御回路2の配下に接続されている。そのPCIバスには、複数の周辺装置が接続される。
例えば、PCIバスで障害が発生した場合、IO制御回路は、バス障害インジケータ(閉塞フラグ)を設定し、そのPCIバスを閉塞する。
そこで、プロセッサは、PCIバスに対する動作用トランザクションを発行する。この場合、IO制御回路は、閉塞フラグを設定しているため、動作用トランザクションに対して、PCIバスが閉塞されていることを表す閉塞用トランザクションを生成し、プロセッサに出力する(リプライする)。閉塞用トランザクションは、例えば、全ビットが1であり(ALL1と称する)、4バイトのデータである場合、FFFFFFFFhにより表される。プロセッサは、動作用トランザクションに対して、ALL1を表す閉塞用トランザクションが返ったため、PCIバスに障害が発生したものと判断することができる。
閉塞されたPCIバスが復旧した場合、IO制御回路は、閉塞フラグを解除する。この場合、プロセッサは、再度、ジョブを実行させるために、PCIバスに対する動作用トランザクションを発行する。これにより、本発明では、PCIバス4−1に障害が発生しても、コンピュータシステムを停止させず、復旧、継続動作させることにより、エラーリカバリを行うことができる。
前記デバイス(3)(5)は、前記複数のバス(4−1、4−2)(6−1、6−2)のうちの第1バス(4−1)(6−1)に障害が発生したときに、それを表すエラーメッセージを送信する。
前記IO制御回路(2)は、前記エラーメッセージに応じて、前記第1バス(4−1)(6−1)を閉塞する。
(S2)通常動作において、前記IO制御回路(2)は、送信元(1;71)からの第1動作用トランザクションを前記複数のバス制御部(31−1、31−2)(51−1、51−2)のうちの第1バス制御部(31−1)(51−1)を介して前記第1バス(4−1)(6−1)に出力する。
(S3)前記第1バス(4−1)(6−1)に障害が発生したバス障害発生動作において、前記IO制御回路(2)は、前記エラーメッセージであるエラーメッセージトランザクションに応じて、前記第1バス(4−1)(6−1)を閉塞する。
(S4)前記第1バス(4−1)(6−1)が閉塞されているバス閉塞動作において、前記IO制御回路(2)は、前記送信元(1;71)からの前記第1動作用トランザクションを前記第1バス(4−1)(6−1)に出力しない。
(S3)前記バス障害発生動作において、前記IO制御回路(2)は、前記エラーメッセージトランザクションに応じて、前記第1バス(4−1)(6−1)に対応する閉塞情報(21−1)を前記バス閉塞回路(22)に設定する。
(S4)前記閉塞情報(21−1)が前記バス閉塞回路(22)に設定されている前記バス閉塞動作において、前記IO制御回路(2)は、前記送信元(1;71)からの前記第1動作用トランザクションを前記第1バス(4−1)(6−1)に出力しない。
(S2)通常動作において、IO制御回路(2)は、送信元(1;71)からの第1動作用トランザクションを第1バス制御部(31−1)(51−1)を介して第1バス(4−1)(6−1)に出力する。
前記複数のバス制御部(31−1、31−2)(51−1、51−2)は、それぞれ前記複数のバス(4−1、4−2)(6−1、6−2)に対応する複数のレジスタ(32−1、32−2)(52−1、52−2、52’−1、52’−2)を具備している。
(S1)初期化動作において、前記IO制御回路(2)は、前記送信元(1;71)からの複数の初期化用コンフィグライトトランザクションを受け取る。前記複数の初期化用コンフィグライトトランザクションは、それぞれ複数の識別子を含んでいる。前記IO制御回路(2)は、前記複数の初期化用コンフィグライトトランザクションに含まれる前記複数の識別子をそれぞれ前記複数のIO制御用レジスタ(21−1、21−2)(21−1、21−2、21’−1、21’−2)に格納し、前記複数の初期化用コンフィグライトトランザクションをそれぞれ前記複数のバス制御部(31−1、31−2)(51−1、51−2)に出力する。前記複数のバス制御部(31−1、31−2)(51−1、51−2)は、前記複数の初期化用コンフィグライトトランザクションに含まれる前記複数の識別子をそれぞれ前記複数のレジスタ(32−1、32−2)(52−1、52−2、52’−1、52’−2)に格納する。
(S5)前記閉塞バス復帰動作において、前記第1リセット用コンフィグライトトランザクションは、前記第1識別子とIDとを含んでいる。前記IO制御回路(2)は、前記第1リセット用コンフィグライトトランザクションに含まれる前記IDを前記バスリセット認識回路(23)に格納し、前記第1リセット用コンフィグライトトランザクションを前記第1バス制御部(31−1)(51−1)を介して前記第1バス(4−1)(6−1)に出力して、前記第1バス(4−1)(6−1)をリセットする。前記第1リセット用リプライトランザクションは、前記第1リセット用コンフィグライトトランザクションに含まれる前記第1識別子と前記IDとを含んでいる。前記第1リセット用コンフィグライトトランザクション又は前記第1リセット用リプライトランザクションに含まれる前記第1識別子が、前記第1IO制御用レジスタ(21−1)(21−1、21’−1)に格納された識別子と一致し、且つ、前記バスリセット認識回路(23)に格納された前記IDが、前記第1リセット用リプライトランザクションに含まれるIDと一致するとき、前記IO制御回路(2)は、前記バス閉塞回路(22)に設定されている前記閉塞情報(21−1)を消去する。
前記制御回路(26)は、前記複数のバス(4−1、4−2)(6−1、6−2)のうちの第1バス(4−1)(6−1)に障害が発生したことを表すエラーメッセージを前記デバイス(3)(5)から受け取る。
前記バス閉塞回路(22)は、前記エラーメッセージに応じて、前記第1バス(4−1)(6−1)を閉塞する。
図1は、本発明の第1実施形態によるコンピュータシステムの構成を示している。そのコンピュータシステムは、プロセッサ1と、IO制御回路2と、PCI(Peripheral Component Interconect)デバイスと、複数のPCIバス4−1、4−2と、メモリ(図示しない)とを具備している。
プロセッサ1は、例えばCPU(Central Processing Unit)、MPU(MicroProcessor Unit)であり、IO制御回路2に接続されている。
メモリは、プロセッサ1とIO制御回路2とに接続されている。メモリには、ドライバソフト(以下、ドライバ)を含むOS(Operating System)が格納されている。
PCIデバイスとしては、PCIブリッジ3が例示される。PCIブリッジ3は、IO制御回路2の配下に接続されている。
複数のPCIバス4−1、4−2は、PCIブリッジ3の配下に接続されている。複数のPCIバス4−1、4−2の各々には、周辺装置として、例えばIOカード(図示しない)が接続される。
OBルーティング回路24は、プロセッサ1とレンジ保持回路21とバス閉塞回路22とに接続されている。
IBルーティング回路25は、スイッチ制御回路26とバス閉塞回路22とに接続されている。
スイッチ制御回路26は、PCIブリッジ3に接続されている。ブリッジ制御回路26は、PCIプロトコルに従ってPCIブリッジ3とのI/F(インタフェース)を制御する。
セレクタ28は、OBルーティング回路24とIBルーティング回路25とプロセッサ1とに接続されている。セレクタ28は、IBルーティング回路25からのトランザクション、又は、OBルーティング回路24からのリプライトランザクションをプロセッサ1に出力する。
複数のバス制御部31−1、31−2は、それぞれ複数のPCIバス4−1、4−2に対応付けられている。複数のバス制御部31−1、31−2には、それぞれ、複数のPCIバス4−1、4−2を識別する識別子であるバス番号が割り当てられている。
複数のバス制御部31−1、31−2は、複数のレンジレジスタ32−1、32−2を具備している。複数のレンジレジスタ32−1、32−2は、それぞれ複数のPCIバス4−1、4−2に対応付けられている。複数のレンジレジスタ32−1、32−2には、それぞれ、複数のバス制御部31−1、31−2を識別する識別子であるファンクション番号(後述)が格納される。
PCIブリッジ3の初期化は、レンジレジスタ32−1、32−2に対する第1、第2初期化用コンフィグライトトランザクションにより行われる。第1、第2初期化用コンフィグライトトランザクションは、それぞれ、第1、第2アドレスを含んでいる。第1、第2アドレスは、PCIの仕様で決められていて、それぞれ、第1、第2バス番号と、第1、第2ファンクション番号と、第1、第2レジスタ番号とを含んでいる。これについて具体的に説明する。
PCIブリッジ3のバス制御部31−1は、第1初期化用コンフィグライトトランザクションに対するリプライである第1初期化用リプライトランザクションを生成する。第1初期化用リプライトランザクションは、IB(Inbound)方向に出力される。この場合、バス制御部31−1は、第1初期化用リプライトランザクションをIO制御回路2に出力し、IO制御回路2のブリッジ制御回路26は、その第1初期化用リプライトランザクションをIBルーティング回路25に出力する。IBルーティング回路25は、その第1初期化用リプライトランザクションを、セレクタ28を介してプロセッサ1に出力する。
レンジ保持回路21は、プロセッサ1からOBルーティング回路24へのトランザクションを監視する。レンジ保持回路21は、第1初期化用コンフィグライトトランザクションに応じて、その第1アドレスに含まれる第1ファンクション番号をレンジレジスタ21−1に格納する。
バス制御部31−2は、第2初期化用コンフィグライトトランザクションに対するリプライである第2初期化用リプライトランザクションを生成する。この場合、第2初期化用リプライトランザクションは、IB方向に出力される。
レンジ保持回路21は、第2初期化用コンフィグライトトランザクションに応じて、その第2アドレスに含まれる第2ファンクション番号をレンジレジスタ21−2に格納する。
そこで、第1動作用トランザクションが、リプライが必要なトランザクションである場合、PCIブリッジ3のバス制御部31−1は、第1動作用トランザクションに対するリプライである第1動作用リプライトランザクションを生成する。第1動作用リプライトランザクションは、IB方向に出力される。この場合、バス制御部31−1は、第1動作用リプライトランザクションをIO制御回路2に出力し、IO制御回路2のブリッジ制御回路26は、その第1動作用リプライトランザクションをIBルーティング回路25に出力する。IBルーティング回路25は、その第1動作用リプライトランザクションを、セレクタ28を介してプロセッサ1に出力する。
PCIバス4−1、4−2で障害が発生した場合、バス制御部31−1、31−2はエラーメッセージを生成する。これについて具体的に説明する。
IO制御回路2は、この閉塞フラグ22−1を設定することにより、PCIバス4−1を閉塞するPCIバス閉塞動作を行なう。
そこで、第1動作用トランザクションが、リプライが必要なトランザクションである場合、OBルーティング回路24は、第1動作用トランザクションに対して、PCIバス4−1が閉塞されていることを表す第1閉塞用トランザクションを生成し、セレクタ27を介してプロセッサ1に出力する(リプライする)。第1閉塞用トランザクションは、例えば、全ビットが1であり(ALL1と称する)、4バイトのデータである場合、FFFFFFFFhにより表される。プロセッサ1は、第1動作用トランザクションに対して、ALL1を表す第1閉塞用トランザクションが返ったため、PCIバス4−1に障害が発生したものと判断することができる。
第1動作用トランザクションが、リプライが不要なトランザクションである場合、OBルーティング回路24は、第1動作用トランザクションを破棄する。
一方、プロセッサ1は、PCIバス4−2に対する第2動作用トランザクションを発行した場合、PCIバス4−2が閉塞されていないため、上記(S2)の通常動作が実行される。即ち、第2動作用トランザクションは、OB方向に出力される。
そこで、リクエスト用トランザクションが、リプライが必要なトランザクションである場合、IBルーティング回路25は、リクエスト用トランザクションに対して、Unsupportedリクエストを表すトランザクションを生成し、セレクタ27を介してPCIブリッジ3に出力する。
リクエスト用トランザクションが、リプライが不要なトランザクションである場合、IBルーティング回路25は、リクエスト用トランザクションを破棄する。
一方、PCIブリッジ3のバス制御部31−2は、PCIバス4−2からのリクエストに対してリクエスト用トランザクションを生成する。この場合、PCIバス4−2が閉塞されていないため、上記(S2)の通常動作が実行される。即ち、リクエスト用トランザクションは、OB方向に出力される。
ドライバは、PCIバスをリセットすることにより、閉塞されているPCIバスを復帰させる。これについて具体的に説明する。
そこで、PCIブリッジ3のバス制御部31−1は、第1リセット用コンフィグライトトランザクションに対するリプライである第1リセット用リプライトランザクションを生成する。この第1リセット用リプライトランザクションは、第1アドレスと、トランザクションIDとを含み、IB方向に出力される。この場合、バス制御部31−1は、第1リセット用リプライトランザクションをIO制御回路2に出力し、IO制御回路2のブリッジ制御回路26は、その第1リセット用リプライトランザクションをIBルーティング回路25に出力する。IBルーティング回路25は、その第1リセット用リプライトランザクションをバスリセット認識回路23に出力し、セレクタ28を介してドライバに出力する。
IO制御回路2は、この閉塞フラグ22−1を解除することにより、PCIバス4−1に対する閉塞を解除する。
バスリセット認識回路23が第1リセット用リプライトランザクションを待って閉塞フラグ22−1の設定を解除する理由は、リクエスト前に(閉塞されているPCIバス4−1を復帰させる前に)閉塞フラグ22−1の設定を解除した場合、閉塞されているPCIバス4−1からの不正なリクエストがプロセッサ1に送出されてしまうことを防ぐためである。
これにより、本発明では、PCIバス4−1に障害が発生しても、コンピュータシステムを停止させず、復旧、継続動作させることにより、エラーリカバリを行うことができる。
まず、上記のドライバであるドライバ71は、DMA(Direct Memory Access)を行うために、IO制御回路2、バス制御部31−1、PCIバス4−1を介して、IOカード8−1にDMA用のアドレスを書き込む(ライトする)。この場合、IO制御回路2は、上記(S2)の通常動作を実行し、PCIバス4−1(IOカード8−1)に対するライトトランザクションとして第1動作用トランザクションをバス制御部31−1に出力する。このときの第1動作用トランザクションは、postedライトと呼ばれ、リプライが必要ではない。
次に、ドライバ71は、上記(S11)の一連の動作が正しく終わったか否かを確認するため、IO制御回路2、バス制御部31−1、PCIバス4−1を介して、IOカード8−1が保持するVID(ヴェンダーID)を読み出す(リードする)。この場合、IO制御回路2は、上記(S2)の通常動作を実行し、PCIバス4−1(IOカード8−1)に対するリードトランザクションとして第1動作用トランザクションをバス制御部31−1に出力する。
上記(S11)の動作が正常に終了している場合、IOカード8−1は、自己が保持しているVIDを読み出し、そのVIDを期待値として、PCIバス4−1、バス制御部31−1、IO制御回路2を介して、ドライバ71に出力する。この場合、IO制御回路2は、上記(S2)の通常動作を実行し、VIDを含むトランザクションとして第1動作用トランザクションをドライバ71に出力する。
ここで、(S12)の作業は、本発明で行うドライバ71の動作であり、一般的に行われるものではない。また、このVIDのリードは、必要に応じて行うが、この例では、(S12)でのみ行っている。
ドライバ71は、上記(S12)の動作が確認された場合、IO制御回路2、バス制御部31−1、PCIバス4−1を介して、IOカード8−1に起動をかける。この場合、IO制御回路2は、上記(S2)の通常動作を実行し、PCIバス4−1(IOカード8−1)に対するトランザクションとして、起動命令を表す第1動作用トランザクションをバス制御部31−1に出力する。このときの第1動作用トランザクションは、上記と同様にpostedライトで行われる。
IOカード8−1は、起動命令を表すトランザクションに応じて、起動して、PCIバス4−1、バス制御部31−1、IO制御回路2を介して、上記のメモリであるメモリ7上のデータを読み出す。(S14)の動作では、S14−1〜S14−M(Mは1以上の整数)の動作を含み、IOカード8−1は、予め決められたM個のデータを1番目からM番目まで順番にメモリ7から読み出す。
IOカード8−1は、M個のデータ転送が完了したところで、割り込みを発生し、PCIバス4−1、バス制御部31−1、IO制御回路2を介して、ドライバ71に完了を通知する。
まず、ドライバ71は、DMAを行うために、IO制御回路2、バス制御部31−1、PCIバス4−1を介して、IOカード8−1にDMA用のアドレスを書き込む。この場合、IO制御回路2は、上記(S2)の通常動作を実行し、PCIバス4−1(IOカード8−1)に対するライトトランザクションとして第1動作用トランザクションをバス制御部31−1に出力する。このときの第1動作用トランザクションは、postedライトで行われる。しかし、PCIバス4−1で障害が発生しているため、ドライバ71は、IOカード8−1に対するDMA用のアドレスの書き込みを失敗した。
次に、バス制御部31−1は、上記(S3)のPCIバス障害発生動作を実行する。即ち、バス制御部31−1は、エラーメッセージトランザクションを生成し、IO制御回路2に出力する。IO制御回路2は、エラーメッセージトランザクションに応じて、PCIバス4−1を閉塞する。
次に、ドライバ71は、上記(S21)の一連の動作が正しく終わったか否かを確認するため、IO制御回路2、バス制御部31−1、PCIバス4−1を介して、IOカード8−1が保持するVID(ヴェンダーID)を読み出す。しかし、IO制御回路2は、PCIバス4−1を閉塞している。この場合、IO制御回路2は、上記(S4)のPCIバス閉塞動作を実行し、ALL1を表すリプライトランザクションとして第1閉塞用トランザクションを、ドライバ71に出力する。
ドライバ71は、IOカード8−1を初期化する前に、IO制御回路2、バス制御部31−1を介して、PCIバス4−1に対してバスリセットを発行する。この場合、IO制御回路2は、上記(S5)の閉塞PCIバス復帰動作を実行し、PCIバス4−1に対するコンフィグライトトランザクションとして、バスリセットを表す第1リセット用コンフィグライトトランザクションをバス制御部31−1に出力する。バス制御部31−1は、この第1リセット用コンフィグライトトランザクションに応じて、PCIバス4−1のリセットレジスタに1を書き込み、リセット信号(RST#)をアサートしてPCIバス4−1をリセットする。バス制御部31−1は、第1リセット用コンフィグライトトランザクションに対するリプライである第1リセット用リプライトランザクションを、IO制御回路2を介してドライバ71に出力する。このとき、IO制御回路2は、この第1リセット用リプライトランザクションに応じて、PCIバス4−1に対する閉塞を解除する。
次に、ドライバ71は、バスリセットを解除するために、IO制御回路2、バス制御部31−1を介して、PCIバス4−1に対してバスリセット解除を発行する。この場合、IO制御回路2は、上記(S5)の閉塞PCIバス復帰動作と同様の動作を実行し、PCIバス4−1に対するコンフィグライトトランザクションとして、バスリセット解除を表す第1リセット用コンフィグライトトランザクションをバス制御部31−1に出力する。バス制御部31−1は、この第1リセット用コンフィグライトトランザクションに応じて、PCIバス4−1のリセットレジスタに0を書き戻し、リセット信号(RST#)をディアサートしてPCIバス4−1のリセットを解除する。バス制御部31−1は、第1リセット用コンフィグライトトランザクションに対するリプライである第1リセット用リプライトランザクションを、IO制御回路2を介してドライバ71に出力する。
ドライバ71は、上記(S24)、(S25)が終わったところで、IOカード8−1の初期化を開始する。この場合、IO制御回路2は、上記(S1)の初期化動作を実行する。
その後、ドライバ71は、再度ジョブを実行するために、上記(S11)を実行することにより、エラーリカバリを行う。
そこで、(S2)通常動作において、IO制御回路2は、送信元(プロセッサ1、ドライバ71)からの第1動作用トランザクションをPCIブリッジ3のバス制御部31−1を介してPCIバス4−1に出力する。
(S3)PCIバス4−1に障害が発生したPCIバス障害発生動作において、バス制御部31−1は、PCIバス4−1に障害が発生したときに、それを表すエラーメッセージであるエラーメッセージトランザクションを送信する。IO制御回路2は、エラーメッセージトランザクションに応じて、PCIバス4−1に対応する閉塞フラグ21−1をバス閉塞回路22に設定する。これにより、IO制御回路2は、PCIバス4−1を閉塞する。
(S4)閉塞フラグ21−1がバス閉塞回路22に設定されているPCIバス閉塞動作において、IO制御回路2は、送信元(プロセッサ1、ドライバ71)からの第1動作用トランザクションをPCIバス4−1に出力しない。そこで、第1動作用トランザクションが、リプライが不要なトランザクションである場合、IO制御回路2は、第1動作用トランザクションを破棄する。第1動作用トランザクションが、リプライが必要なトランザクションである場合、IO制御回路2は、PCIバス4−1が閉塞されていることを表す第1閉塞用トランザクションを生成して送信元に出力する。
このように、本発明の第1実施形態によるコンピュータシステムでは、IO制御回路2の配下にPCIブリッジ3が接続され、そのPCIブリッジ3の配下に複数のPCIバスが接続された場合でも、障害が発生したPCIバス4−1を閉塞することができる。
(S2)通常動作において、IO制御回路2は、送信元(プロセッサ1、ドライバ71)からの第1動作用トランザクションをバス制御部31−1を介してPCIバス4−1に出力する。
このように、本発明の第1実施形態によるコンピュータシステムでは、PCIバス4−1に障害が発生しても、そのシステムを停止させず、復旧、継続動作させることにより、エラーリカバリを確実に行なうことができる。
例えば、(S3)PCIバス障害発生動作において、IO制御回路2は、エラーメッセージトランザクションに含まれる第1識別子が、複数のレジスタ21−1、21−2のうちの第1レジスタ21−1に格納された識別子と一致するとき、第1レジスタ21−1に対応する閉塞フラグ21−1をバス閉塞回路22に設定する。
このように、本発明の第1実施形態によるコンピュータシステムでは、IO制御回路2とPCIブリッジ3に対して識別子(ファンクション番号)を用いて初期化用コンフィグライトトランザクションにより初期設定を行ない、初期設定における識別子をIO制御回路2とPCIブリッジ3が自動的に保持する。これにより、IO制御回路2は、トランザクションの送出先を特定することができ、障害が発生したPCIバスに対する閉塞動作{(S3)、(S4)}を実行することができる。このため、バス閉塞機能を持たないPCIブリッジ3がIO制御回路2の配下に接続された場合でもPCIのエラーリカバリを実現することができる。
このように、本発明の第1実施形態によるコンピュータシステムでは、閉塞解除動作{(S5)}をPCIブリッジ3配下のPCIバス4−1におけるリプライ(第1リセット用リプライトランザクション)を用いるため、バス閉塞機能を持たないPCIブリッジ3がIO制御回路2の配下に接続された場合でもリセットが確実にかかったことを保証できる。このため、ハードウェアが自動的に閉塞解除可能となり、ドライバに閉塞解除用のレジスタを意識させないことができる。従って、PCIで共通に決められたレジスタだけを使ってPCIエラーリカバリを実現することができる。
また、PCIブリッジ3の配下に更にPCIブリッジ3が接続されるような多段構成のPCIブリッジ3に対して、それに対応するレンジ保持回路21、バス閉塞回路22、バスリセット認識回路23をIO制御回路2が具備することにより、上記の動作を実現できる。
本発明の第2実施形態によるコンピュータシステムでは、第1実施形態と異なる点のみ説明する。
図4に示されるように、PCIデバイスとしては、PCIブリッジ3に代えて、PCI Expressスイッチ5(又は、PCIスイッチ5と称する)が例示される。PCIスイッチ5は、IO制御回路2の配下に接続されている。
また、第2実施形態では、複数のPCIバス4−1、4−2をそれぞれ複数のPCI Expressバス6−1、6−2と称する(又は、PCIバス6−1、6−2と称する)。また、第2実施形態では、ブリッジ制御回路26をスイッチ制御回路26と称する。
P2Pブリッジ53は、スイッチ制御回路26に接続されている。
バーチャルPCIバス54は、P2Pブリッジ53と複数のP2Pブリッジ51−1、51−2と接続されている。
複数のP2Pブリッジ51−1、51−2は、前述のPCIブリッジ3の複数のバス制御部31−1、31−2に対応し、それぞれ複数のPCIバス4−1、4−2に対応付けられている。
複数のP2Pブリッジ51−1、51−2は、複数のレンジレジスタ52−1、52−2を具備している。複数のレンジレジスタ52−1、52−2は、前述のPCIブリッジ3の複数のレンジレジスタ32−1、32−2に対応し、それぞれ複数のPCIバス4−1、4−2に対応付けられている。複数のレンジレジスタ52−1、52−2には、それぞれ、複数のP2Pブリッジ51−1、51−2を識別するデバイス識別子であるファンクション番号が格納される。
複数のP2Pブリッジ51−1、51−2は、更に、複数のバス番号レジスタ52’−1、52’−2を具備している。複数のバス番号レジスタ52’−1、52’−2は、それぞれ複数のPCIバス4−1、4−2に対応付けられている。複数のバス番号レジスタ52’−1、52’−2には、バス番号(後述)が格納される。
PCIスイッチ5の初期化は、レンジレジスタ52−1、52−2、バス番号レジスタ52’−1、52’−2に対する第1、第2初期化用コンフィグライトトランザクションにより行われる(バス・ウォーク;BUS Walkと呼ばれる)。
PCIスイッチ5のP2Pブリッジ51−1は、第1初期化用コンフィグライトトランザクションに対するリプライである第1初期化用リプライトランザクションを、IO制御回路2を介してプロセッサ1に出力する。
IO制御回路2のレンジ保持回路21は、第1初期化用コンフィグライトトランザクションに応じて、その第1アドレスに含まれる第1ファンクション番号をレンジレジスタ21−1に格納する。また、レンジ保持回路21は、その第1アドレスに含まれる第1バス番号に1を足したバス番号を、バーチャルPCIバス54を考慮したバス番号として、バス番号レジスタ21’−1に格納する。
その結果、(S1)初期化動作が終了した時点で、レンジレジスタ21−1、52−1には、同じ値(第1ファンクション番号)が格納され、レンジレジスタ21−2、52−2には、同じ値(第2ファンクション番号)が格納されている。また、バス番号レジスタ21’−1、52’−1には、同じ値(第1バス番号)が格納され、バス番号レジスタ21’−2、52’−2には、同じ値(第2バス番号)が格納されている。バス番号は、IOカードの増減などで毎回変わり固定てきでないため、バスWALKの時の値を保持する必要がある。
ここで、(S2)の通常動作については、PCIブリッジ3をPCIスイッチ5に置き換え、バス制御部31−1、31−2をP2Pブリッジ51−1、51−2に置き換え、PCIバス4−1、4−2をPCIバス6−1、6−2に置き換えればよいので、その詳細な説明を省略する。
PCIバス6−1、6−2で障害が発生した場合、P2Pブリッジ51−1、51−2はエラーメッセージを生成する。これについて具体的に説明する。
IO制御回路2は、この閉塞フラグ22−1を設定することにより、PCIバス4−1を閉塞する。
ここで、(S4)のPCIバス閉塞動作については、PCIブリッジ3をPCIスイッチ5に置き換え、バス制御部31−1、31−2をP2Pブリッジ51−1、51−2に置き換え、PCIバス4−1、4−2をPCIバス6−1、6−2に置き換えればよいので、その詳細な説明を省略する。
ドライバは、PCIバスをリセットすることにより、閉塞されているPCIバスを復帰させる。これについて具体的に説明する。
そこで、PCIスイッチ5のP2Pブリッジ51−1は、第1リセット用コンフィグライトトランザクションに対するリプライである第1リセット用リプライトランザクションを生成する。この第1リセット用リプライトランザクションは、第1アドレスと、トランザクションIDとを含み、IB方向に出力される。この場合、P2Pブリッジ51−1は、第1リセット用リプライトランザクションをIO制御回路2に出力し、IO制御回路2のスイッチ制御回路26は、その第1リセット用リプライトランザクションをIBルーティング回路25に出力する。IBルーティング回路25は、その第1リセット用リプライトランザクションをバスリセット認識回路23に出力し、セレクタ28を介してドライバに出力する。
IO制御回路2は、この閉塞フラグ22−1を解除することにより、PCIバス6−1に対する閉塞を解除する。
バスリセット認識回路23が第1リセット用リプライトランザクションを待って閉塞フラグ22−1の設定を解除する理由は、リクエスト前に(閉塞されているPCIバス6−1を復帰させる前に)閉塞フラグ22−1の設定を解除した場合、閉塞されているPCIバス6−1からの不正なリクエストがプロセッサ1に送出されてしまうことを防ぐためである。
また、PCIスイッチ5の配下に更にPCIスイッチ5が接続されるような多段構成のPCIスイッチ5に対して、それに対応するレンジ保持回路21、バス閉塞回路22、バスリセット認識回路23をIO制御回路2が具備することにより、上記の動作を実現できる。
本発明の第1、第2実施形態によるコンピュータシステムでは、PCIに代えて、Star Fabricでも適用することができる。この場合、図1〜図4において、PCIをStar Fabricに置き換えればよい。
または、本発明の第1、第2実施形態によるコンピュータシステムでは、PCIに代えて、Advanced Switching Interconnect(ASI)でも適用することができる。この場合、図1〜図4において、PCIをASIに置き換えればよい。
2 IO制御回路
21 レンジ保持回路
21−1、21−2 レンジレジスタ
21’−1、21’−2 バス番号レジスタ
22 バス閉塞回路
22−1、22−2 閉塞フラグ
23 バスリセット認識回路
24 OB(Outbound)ルーティング回路
25 IB(Inbound)ルーティング回路
26 スイッチ制御回路
27、28 セレクタ
3 PCI(Peripheral Component Interconect)ブリッジ
31−1、31−2 バス制御部
32−1、32−2 レンジレジスタ
4−1、4−2 PCIバス
5 PCI Expressスイッチ
51−1、51−2 P2Pブリッジ
52−1、52−2 レンジレジスタ
52’−1、52’−2 バス番号レジスタ
53 P2Pブリッジ
54 バーチャルPCIバス
6−1、6−2 PCI Expressバス
7 メモリ
71 ドライバ
8−1 IOカード
Claims (6)
- 複数のバスと、
前記複数のバスが接続され、前記複数のバスのうちの第1バスに障害が発生したときに、それを表すエラーメッセージを送信するデバイスと、
前記デバイスに接続され、前記エラーメッセージに応じて、前記第1バスを閉塞するIO制御回路と
を具備し、
前記デバイスは、それぞれ前記複数のバスが接続された複数のバス制御部を具備し、
前記IO制御回路は、バス閉塞回路を具備し、
通常動作において、
前記IO制御回路は、送信元からの第1動作用トランザクションを前記複数のバス制御部のうちの第1バス制御部を介して前記第1バスに出力し、
前記第1バスに障害が発生したバス障害発生動作において、
前記IO制御回路は、前記エラーメッセージであるエラーメッセージトランザクションに応じて、前記第1バスに対応する閉塞情報を前記バス閉塞回路に設定して前記第1バスを閉塞し、
前記第1バスが閉塞されているバス閉塞動作において、
前記IO制御回路は、前記送信元からの前記第1動作用トランザクションを前記第1バスに出力せず、
前記第1バスが復帰したときの閉塞バス復帰動作において、
前記IO制御回路は、前記送信元からの第1リセット用コンフィグライトトランザクションを、前記第1バス制御部を介して前記第1バスに出力して、前記第1バスをリセットし、
前記第1バス制御部は、前記第1リセット用コンフィグライトトランザクションに対するリプライである第1リセット用リプライトランザクションを前記IO制御回路を介して前記送信元に出力し、
前記IO制御回路は、前記第1リセット用コンフィグライトトランザクションと前記第1リセット用リプライトランザクションとに応じて、前記バス閉塞回路に設定されている前記閉塞情報を消去する
コンピュータシステム。 - 前記バス閉塞動作において、
前記IO制御回路は、前記第1動作用トランザクションが、リプライが不要なトランザクションである場合、前記第1動作用トランザクションを破棄し、
前記IO制御回路は、前記第1動作用トランザクションが、リプライが必要なトランザクションである場合、前記第1バスが閉塞されていることを表す第1閉塞用トランザクションを生成して前記送信元に出力する
請求項1に記載のコンピュータシステム。 - 前記IO制御回路は、更に、それぞれ前記複数のバスに対応する複数のIO制御用レジスタを具備し、
前記複数のバス制御部は、それぞれ前記複数のバスに対応する複数のレジスタを具備し、
初期化動作において、
前記IO制御回路は、前記送信元からの複数の初期化用コンフィグライトトランザクションを受け取り、前記複数の初期化用コンフィグライトトランザクションは、それぞれ複数の識別子を含み、
前記IO制御回路は、前記複数の初期化用コンフィグライトトランザクションに含まれる前記複数の識別子をそれぞれ前記複数のIO制御用レジスタに格納し、前記複数の初期化用コンフィグライトトランザクションをそれぞれ前記複数のバス制御部に出力し、
前記複数のバス制御部は、前記複数の初期化用コンフィグライトトランザクションに含まれる前記複数の識別子をそれぞれ前記複数のレジスタに格納する
請求項2に記載のコンピュータシステム。 - 前記複数のバス制御部は、前記初期化動作を実行したとき、前記複数の初期化用コンフィグライトトランザクションに対するリプライである前記複数の初期化用リプライトランザクションを、前記IO制御回路を介して前記送信元に出力する
請求項3に記載のコンピュータシステム。 - 前記バス障害発生動作において、
前記エラーメッセージトランザクションは、前記複数のレジスタのうちの第1レジスタに格納された第1識別子を含み、
前記IO制御回路は、前記エラーメッセージトランザクションに含まれる前記第1識別子が、前記複数のIO制御用レジスタのうちの第1IO制御用レジスタに格納された識別子と一致するとき、前記第1IO制御用レジスタに対応する前記閉塞情報を前記バス閉塞回路に設定する
請求項3又は4に記載のコンピュータシステム。 - 前記IO制御回路は、更に、バスリセット認識回路を具備し、
前記閉塞バス復帰動作において、
前記第1リセット用コンフィグライトトランザクションは、前記第1識別子とIDとを含み、
前記IO制御回路は、前記第1リセット用コンフィグライトトランザクションに含まれる前記IDを前記バスリセット認識回路に格納し、前記第1リセット用コンフィグライトトランザクションを、前記第1バス制御部を介して前記第1バスに出力して、前記第1バスをリセットし、
前記第1リセット用リプライトランザクションは、前記第1リセット用コンフィグライトトランザクションに含まれる前記第1識別子と前記IDとを含み、
前記第1リセット用コンフィグライトトランザクション又は前記第1リセット用リプライトランザクションに含まれる前記第1識別子が、前記第1IO制御用レジスタに格納された識別子と一致し、且つ、前記バスリセット認識回路に格納された前記IDが、前記第1リセット用リプライトランザクションに含まれるIDと一致するとき、前記IO制御回路は、前記バス閉塞回路に設定されている前記閉塞情報を消去する
請求項5に記載のコンピュータシステム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006192781A JP4728896B2 (ja) | 2006-07-13 | 2006-07-13 | コンピュータシステム |
US11/777,308 US7890812B2 (en) | 2006-07-13 | 2007-07-13 | Computer system which controls closing of bus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006192781A JP4728896B2 (ja) | 2006-07-13 | 2006-07-13 | コンピュータシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008021153A JP2008021153A (ja) | 2008-01-31 |
JP4728896B2 true JP4728896B2 (ja) | 2011-07-20 |
Family
ID=38950650
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006192781A Active JP4728896B2 (ja) | 2006-07-13 | 2006-07-13 | コンピュータシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US7890812B2 (ja) |
JP (1) | JP4728896B2 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4513852B2 (ja) * | 2007-11-07 | 2010-07-28 | 日本電気株式会社 | Pciバス障害リカバリ方法及びプログラム |
JP5096905B2 (ja) * | 2007-12-20 | 2012-12-12 | 株式会社日立製作所 | サーバ装置及びそのリンク回復処理方法 |
JP5151580B2 (ja) * | 2008-03-14 | 2013-02-27 | 日本電気株式会社 | コンピュータシステムおよびバス制御装置 |
US8140922B2 (en) * | 2008-05-20 | 2012-03-20 | International Business Machines Corporation | Method for correlating an error message from a PCI express endpoint |
JP2010033188A (ja) | 2008-07-25 | 2010-02-12 | Fujitsu Ltd | 送信経路選択装置、データ送信システム、コンピュータ装置および送信経路選択方法 |
JP5281942B2 (ja) | 2009-03-26 | 2013-09-04 | 株式会社日立製作所 | 計算機およびその障害処理方法 |
US8464032B2 (en) * | 2009-07-10 | 2013-06-11 | Via Technologies, Inc. | Microprocessor integrated circuit with first processor that outputs debug information in response to reset by second processor of the integrated circuit |
US8495344B2 (en) * | 2010-01-22 | 2013-07-23 | Via Technologies, Inc. | Simultaneous execution resumption of multiple processor cores after core state information dump to facilitate debugging via multi-core processor simulator using the state information |
US8762779B2 (en) * | 2010-01-22 | 2014-06-24 | Via Technologies, Inc. | Multi-core processor with external instruction execution rate heartbeat |
US8370684B2 (en) * | 2010-02-16 | 2013-02-05 | Via Technologies, Inc. | Microprocessor with system-robust self-reset capability |
JP5598148B2 (ja) * | 2010-08-05 | 2014-10-01 | 富士通株式会社 | スイッチング装置、情報処理装置、及びスイッチング装置の制御方法 |
US8639919B2 (en) | 2011-01-18 | 2014-01-28 | Via Technologies, Inc. | Tracer configuration and enablement by reset microcode |
US8725919B1 (en) * | 2011-06-20 | 2014-05-13 | Netlogic Microsystems, Inc. | Device configuration for multiprocessor systems |
JP5542787B2 (ja) * | 2011-12-08 | 2014-07-09 | シャープ株式会社 | 画像形成装置 |
JP5790723B2 (ja) * | 2013-09-12 | 2015-10-07 | 日本電気株式会社 | クラスタシステム、情報処理装置、クラスタシステムの制御方法及びプログラム |
JP6455302B2 (ja) * | 2015-04-30 | 2019-01-23 | 富士通株式会社 | バス通信システム |
US10296356B2 (en) * | 2015-11-18 | 2019-05-21 | Oracle International Corporations | Implementation of reset functions in an SoC virtualized device |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060010355A1 (en) * | 2004-07-08 | 2006-01-12 | International Business Machines Corporation | Isolation of input/output adapter error domains |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5499346A (en) * | 1993-05-28 | 1996-03-12 | International Business Machines Corporation | Bus-to-bus bridge for a multiple bus information handling system that optimizes data transfers between a system bus and a peripheral bus |
KR100244836B1 (ko) * | 1995-11-02 | 2000-02-15 | 포만 제프리 엘 | 컴퓨터시스템 및 다수의 기능카드 중 한개의 기능카드를 격리하는 방법 |
JP2002510086A (ja) * | 1998-03-31 | 2002-04-02 | マイクロン テクノロジー インコーポレイテッド | コンピュータバスを介してピーア・トゥ・ピーア・マスタリングを行うシステムおよび方法 |
US6523140B1 (en) * | 1999-10-07 | 2003-02-18 | International Business Machines Corporation | Computer system error recovery and fault isolation |
US6643727B1 (en) * | 2000-06-08 | 2003-11-04 | International Business Machines Corporation | Isolation of I/O bus errors to a single partition in an LPAR environment |
US20020184576A1 (en) * | 2001-03-29 | 2002-12-05 | International Business Machines Corporation | Method and apparatus for isolating failing hardware in a PCI recoverable error |
US7003617B2 (en) * | 2003-02-11 | 2006-02-21 | Dell Products L.P. | System and method for managing target resets |
US7134052B2 (en) * | 2003-05-15 | 2006-11-07 | International Business Machines Corporation | Autonomic recovery from hardware errors in an input/output fabric |
JP4218538B2 (ja) | 2004-01-28 | 2009-02-04 | 日本電気株式会社 | コンピュータシステム、バスコントローラ及びそれらに用いるバス障害処理方法 |
JP2006092286A (ja) * | 2004-09-24 | 2006-04-06 | Ricoh Co Ltd | データ転送装置及び画像形成システム |
JP4476088B2 (ja) * | 2004-09-28 | 2010-06-09 | 株式会社リコー | データ転送装置及び画像形成システム |
JP2006178550A (ja) * | 2004-12-21 | 2006-07-06 | Nec Corp | 二重化同期システム、及び二重化同期システムの動作方法 |
JP4630766B2 (ja) * | 2005-08-26 | 2011-02-09 | キヤノン株式会社 | プライマリシステムとセカンダリシステムを有するシステム |
-
2006
- 2006-07-13 JP JP2006192781A patent/JP4728896B2/ja active Active
-
2007
- 2007-07-13 US US11/777,308 patent/US7890812B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060010355A1 (en) * | 2004-07-08 | 2006-01-12 | International Business Machines Corporation | Isolation of input/output adapter error domains |
Also Published As
Publication number | Publication date |
---|---|
JP2008021153A (ja) | 2008-01-31 |
US20080016405A1 (en) | 2008-01-17 |
US7890812B2 (en) | 2011-02-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4728896B2 (ja) | コンピュータシステム | |
US9030943B2 (en) | Recovering from failures without impact on data traffic in a shared bus architecture | |
US9529601B1 (en) | Multi-processor startup system | |
US9152593B2 (en) | Universal PCI express port | |
US7536584B2 (en) | Fault-isolating SAS expander | |
US7865782B2 (en) | I/O device fault processing method for use in virtual computer system | |
EP2052326B1 (en) | Fault-isolating sas expander | |
US11175977B2 (en) | Method and system to detect failure in PCIe endpoint devices | |
US8392751B2 (en) | System and method for recovery from uncorrectable bus errors in a teamed NIC configuration | |
US20170262341A1 (en) | Flash memory-hosted local and remote out-of-service platform manageability | |
US8880957B2 (en) | Facilitating processing in a communications environment using stop signaling | |
JP2013200616A (ja) | 情報処理装置及び情報処理装置の復旧回路 | |
EP1369784A2 (en) | Computer system failure handling | |
CN112052200A (zh) | 信息处理装置、信息处理系统以及存储介质 | |
JP2007249505A (ja) | バスシステム、リセットイニシャライズ回路、及びバスシステムにおける障害復旧方法 | |
US20160034365A1 (en) | Information processing system, information processing apparatus, redundancy providing method, and program | |
JP2019207605A (ja) | コンピュータプログラム、及び、制御方法 | |
JP2015018314A (ja) | ストレージ制御装置、制御プログラムおよび制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080918 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110104 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110307 |
|
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: 20110330 |
|
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: 20110415 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4728896 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140422 Year of fee payment: 3 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |