JP3621477B2 - How to retry a microprogram - Google Patents

How to retry a microprogram Download PDF

Info

Publication number
JP3621477B2
JP3621477B2 JP22993795A JP22993795A JP3621477B2 JP 3621477 B2 JP3621477 B2 JP 3621477B2 JP 22993795 A JP22993795 A JP 22993795A JP 22993795 A JP22993795 A JP 22993795A JP 3621477 B2 JP3621477 B2 JP 3621477B2
Authority
JP
Japan
Prior art keywords
retry
microprogram
state
process state
event
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 - Lifetime
Application number
JP22993795A
Other languages
Japanese (ja)
Other versions
JPH0973391A (en
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 JP22993795A priority Critical patent/JP3621477B2/en
Publication of JPH0973391A publication Critical patent/JPH0973391A/en
Application granted granted Critical
Publication of JP3621477B2 publication Critical patent/JP3621477B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Advance Control (AREA)
  • Retry When Errors Occur (AREA)
  • Executing Machine-Instructions (AREA)

Description

【0001】
【発明の属する技術分野】
情報処理装置のシステムダウンは社会的に大きな影響を及ぼすため、その信頼性の向上がより重要となっている。このため、マシーンチェック条件が発生した時、メモリやレジスタ等が更新されてない限りリトライさせること(命令の再実行)により、システムを間欠エラーから救済し、後続する一連の処理を行えるようにする必要がある。
本発明は、一般命令の実行を行うステート(プロセス・ステート)でプログラム割込みやマシーンチェック割込み等の各種割込み、あるいはその他の事象が発生した時、該プロセス・ステートから該事象を処理するためのマイクロプログラムの実行ステート(エンド・プロセス・ステート)に遷移する処理装置におけるマイクロプログラムのリトライ方法であり、特に、マイクロプログラム実行中にマシーンチェック条件が発生しても、マイクロプログラムのリトライが可能となるようにし、マイクロプログラム実行時に発生した間欠エラーから情報処理装置を救済し、信頼性を向上させるようにしたマイクロプログラムのリトライ方法に関する。
【0002】
【従来の技術】
従来、パイプラインを用いた情報処理装置(ステートマシーン)では、命令実行等の一般の処理は、通常プロセス・ステートと呼ばれるステートで行われる。かかるプロセス・ステートで命令実行中に、システムに対して直接の損傷を与え、かつ、処理の継続を不可能とするようなマシーンチェック条件が発生すると、情報処理装置の信頼性向上のために、メモリやレジスタ等の更新が行われない限り該情報処理装置のリトライを複数回行うことによって間欠エラーによるシステムダウンやマシーンチェック割込みから、該情報処理装置の救済を図っている。図6はステートマシーンの遷移状態図であり、ステートとしては、▲1▼一般命令を実行するプロセス・ステートS1、▲2▼パイプラインを初期化するクリアパイプラインステート(リストア・ステート)S2、▲3▼各種割込み、その他の事象に応じた処理をマイクロプログラムに従って実行するエンド・プロセス・ステートS3、▲4▼プロセッサCPUによる処理を開始させるためのスタート・ステートS4、▲5▼プロセッサCPUの処理を停止するためのストップ・ステートS5、▲6▼チェック・ストップ・ステートS6がある。
【0003】
図7はパイプライン処理における命令実行の処理単位(ステージ)の説明図である。パイプラインはたとえば10ステージで構成され、主記憶装置あるいはキャッシュメモリより命令を読み出すまでの命令フェッチパイプラインと、命令を解読して実行するまでのメインパイプラインに大別される。命令フェッチパイプラインは、▲1▼命令フェッチアドレス計算ステージIと、▲2▼命令アドレス変換ステージITと、▲3▼バッファ読み出しステージIBと、▲4▼命令のメインパイプラインへの投入ステージIRから成っている。メインパイプラインは、▲1▼命令の解読ステージDと、▲2▼主記憶装置におけるオペランドのアドレス計算ステージAと、▲3▼オペランドアドレス変換ステージTと、▲4▼オペランドの読み出しステージBと、▲5▼演算の実行ステージEと、▲6▼演算結果の格納ステージWとから成っている。
【0004】
図8はパイプライン処理の説明図である。命令列が図8(a)に示すようになっていると、各命令は図8(b)に示すように1つの命令の実行の終了を待たず次々と1ステージ毎に順次メインパイプラインに投入されて実行される。
かかるステートマシーンにおいては、例えば、プロセス・ステートS1で命令を実行中に割込みその他の事象が発生するとクリアパイプラインステートS2に移行し、該ステートS2においてパイプライン上で実行中の命令あるいは後続命令をキャンセルして初期化する。しかる後、エンド・プロセス・ステートS3に移行し、各種割込みあるいはステートの遷移を引き起こした事象に応じた所定のマイクロプログラムが起動し、該マイクロプログラムにより割込み処理等を行なう。マイクロプログラムによる処理終了後、スタート・ステートS4を介してプロセス・ステートS1に戻り、後続の命令がパイプライン処理により実行される。
【0005】
【発明が解決しようとする課題】
ところで、従来の情報処理装置(ステートマシーン)ではエンド・プロセス・ステートにおいてマシーンチェック条件が発生した時に、割込み点の保障がなされていなかった。このため、エンド・プロセス・ステートでマシーンチェック条件が発生すると、リトライを行うことができず、チェックストップとなり、後続する一連の処理の続行ができなかった。すなわち、従来はプロセス・ステートでしかリトライさせていなかったため、情報処理装置の信頼性が低いという問題があった。
【0006】
以上から本発明の目的は、エンド・プロセス・ステートでマシーンチェック条件が発生してもリトライを可能にして情報処理装置の信頼性を向上できるマイクロプログラムのリトライ方法を提供することである。
本発明の別の目的は、リトライが成功しない場合には、予め設定されている回数になるまでリトライを継続することにより情報処理装置の信頼性を向上できるマイクロプログラムのリトライ方法を提供することである。
本発明の更に別の目的は、割込みや各事象に応じたマイクロプログラムの先頭アドレスを記憶しておき、発生した事象に応じたマイクロプログラムを制御記憶装置より読み出してリトライできるマイクロプログラムのリトライ方法を提供することである。
【0007】
【課題を解決するための手段】
図1は本発明の原理説明図である。図中、1は発生事象保持部であり、プロセス・ステートからエンド・プロセス・ステートに遷移させてマイクロプログラムを実行させる契機となった事象(各種割込み等)を保持するもの、2はエンド・プロセス・ステートにおいてマシーンチェック条件が発生してもリトライが可能であるか、不可能であるかを監視するリトライ可能・不可能監視部、3は発生事象に応じたマイクロプログラムの先頭アドレスを出力するマイクロプログラムアドレス発生部、4はマイクロプログラムの実行中にマシーンチェック条件が発生した時、リトライ可能であれば、前記保持してある事象に応じたマイクロプログラムの先頭アドレスを出力するリトライ制御部、21は各種マイクロプログラムを記憶する制御記憶部(CS)、31は制御記憶部の読み出しアドレスを記憶するCSアドレスレジスタ、51はマイクロ命令の制御フィールドをデコードするデコーダである。
【0008】
プロセス・ステートにおいて一般命令の実行中に、プログラム割込みやマシーンチェック割込み等の各種割込み、あるいはその他の事象が発生した時、該事象を発生事象保持部1に記憶する。しかる後、プロセスステートからエンド・プロセス・ステートに移行し、該発生事象に応じたマイクロプログラムを制御記憶部21より読み出して処理を実行する。かかるエンド・プロセス・ステート中において、リトライ可能・不可能監視部2は、現時点においてマシーンチェック条件が発生してもリトライが可能であるか否かを監視する。そして、エンド・プロセス・ステート(マイクロプログラムの実行中)にマシーンチェック条件が発生すれば、リトライ制御部4はリトライ可能であるか否かを確認し、リトライ可能であれば、発生事象保持部1に保持してある事象に応じたマイクロプログラムの先頭アドレスをマイクロプログラムアドレス発生部3より求めてCSアドレスレジスタ31にセットして該マイクロプログラムを最初から再実行する(リトライ)。以上のようにすれば、エンド・プロセス・ステートでマシーンチェック条件が発生してもリトライが可能となり、情報処理装置の信頼性を向上できる。又、リトライが成功しない場合には、予め設定されている回数になるまでリトライを継続することにより情報処理装置の信頼性を向上できる。
【0009】
【発明の実施の形態】
(a)本発明の全体の構成
図2は本発明の全体構成図である。図中、11は本発明のマイクロプログラムリトライ制御を実行するマイクロプログラムリトライ制御回路、21は各種マイクロプログラムを記憶する制御記憶部(CS)である。マイクロプログラムを構成する各マイクロ命令は制御フィールドCFと次アドレスを示すシーケンス制御フィールドSFを有している。31は制御記憶部の読み出しアドレスを記憶するCSアドレスレジスタ、41は制御記憶部より読み出したマイクロ命令を記憶するマイクロ命令記憶レジスタ、51はマイクロ命令の制御フィールドCFをデコードして各種制御信号c〜cmを図示しないデータ処理部に送出するデコーダ、61はリトライ制御回路より出力されるマイクロプログラムの先頭アドレスNEXT CS ADRS 及びマイクロ命令の次アドレスを適宜選択してCSアドレスレジスタ31にセットするセレクタである。セレクタ61はマイクロプログラム実行(ハードオペ実行)に際して、リトライ制御回路11より出力されるアドレスNEXT CS ADRS をCSアドレスレジスタ31にセットし、以後はマイクロ命令記憶レジスタ41に読み出されたマイクロ命令のシーケンス制御フィールドSFにおける次アドレスをCSアドレスレジスタ31にセットする。
【0010】
(b)マイクロプログラムのリトライ制御
図3はマイクロプログラムのリトライ制御のシーケンスであり、上段には情報処理装置のプロセッサのステート(状態)を示し、中断にリトライ制御回路11内の各種制御信号を示し、下段にプロセッサの処理内容を示している。
プロセス・ステートにおいて一般命令の実行中にプログラム例外(PROGRAM EXCEPTION)によりプログラム割込みが発生すると、該プログラム割込みはラッチされ、該割込みが解消するまで信号PX LCHが出力される。一方、プログラム例外(プログラムエラー)の検出によりリストア・ステートに移行し、信号PIPELINE CLEAR が”1”になる。リストア・ステートにおいてパイプラインの初期化が終了すると、ハードオペトリガHARD OP TGRが”1”になり、以後、プログラム割込みに応じたマイクロプログラムが制御記憶部21より読み出されてプログラム割込み処理が実行される。
【0011】
このプログラム割込み実行中に、マシーンチェック条件(ハードエラー)ERRが発生すると、ラッチされ(ERROR LCH=”1”)、所定時間遅延してハードマシーンチェックディテクト信号HMDが”1”になる。これにより、ハードオペトリガHARD OP TGRがローレベルになり、プログラム割込み処理が中断する。又、後述するリトライ可能・不可能監視部は、マシーンチェック条件が発生してもリトライが可能であるか、不可能であるかを監視しており、上記ハードマシーンチェックディテクト信号HMDが”1”になった時、リトライ可能であれば、ハードオペリトライラッチHARD OP RETRY LCHをハイレベルにする。又、ハードマシーンチェックディテクト信号HMDが”1”になると、リストア・ステートに移行し、信号PIPELINE CLEAR が”1”になる。
【0012】
リストア・ステートにおいてパイプラインの初期化が終了すると、ハードオペトリガHARD OP TGRが”1”になり、前記保持されているプログラム割込みPX LCHに応じたマイクロプログラムを制御記憶部21より読み出してプログラム割込み処理(ハードオペ)を再実行する(リトライ)。そして、この際、マシーンチェック条件が発生せず、プログラム割込み処理が終了すれば、エンドオペレーションEND OPがハイレベルになる。この結果、ハードオペトリガHARD OP TGR及びハードオペリトライラッチHARD OP RETRY LCHがローレベルになり、しかる後、スタート・ステートに移行して、スタート処理が行われ、この時点でラッチされているプログラム割込みPX LCHがローレベルになり、以後、プロセス・ステートに移行して、後続の命令がパイプライン処理される。
【0013】
(c)マイクロプログラムリトライ制御回路
図4及び図5はマイクロプログラムリトライ制御回路の構成図である。
図4はリトライ可能・不可能監視部の構成図、図5は発生事象保持部、マイクロプログラムアドレス発生部、リトライ制御部等のハードウェア部である。
図4のリトライ可能・不可能監視部2において、2aはフリップフロップ、2b,2cはオアゲート、2d,2eはアンドゲートである。
【0014】
フリップフロップ2aは、命令の実行が終了した時(エンドオペレーションEND OP=”1”)、あるいは、リストア・ステートにおいてパイプラインが初期化された時(CLEAR PIPELINE=”1”)にそれぞれセットされ、ハイレベルのリトライポイント信号RETRY POINTを出力する。又、フリップフロップ2aは、一般命令などハードウェアにより検出されるリトライ不可能点信号RESET RETRY HWにより、あるいは、マイクロにより検出されるリトライ不可能点信号RESET RETRY MICROによりリセットされ、リトライポイント信号RETRY POINTを”0”にする。アンドゲート2dはリトライポイント信号RETRY POINTがハイレベルの時にリトライ回数が設定回数に満たない場合(RETRY COUNT LESS THAN n=”1”)、ハイレベルの信号ENB RETRYを出力する。アンドゲート2eはエンド・プロセス・ステートにおいて、信号ENB RETRYがハイレベルの時にリトライ可能信号ENB RETRY HOPを出力する。
【0015】
すなわち、エンド・プロセス・ステートにおいて、リトライ可能であり、しかも、リトライ回数が設定回数に満たない場合には、アンドゲート2eよりハイレベルのリトライ可能信号ENB RETRY HOPが出力する。従って、この状態において、マシーンチェック条件が発生すると、後述するようにリトライが行われる。しかし、エンド・プロセス・ステートにおけるマイクロプログラムの実行(ハードオペの実行)によりレジスタ、メモリ等にデータが書き込まれてリトライ不可能になると、あるいはリトライ可能であってもリトライ回数が設定回数以上になると、リトライ可能信号ENB RETRY HOPはローレベルになり、リトライが不可能になる。
【0016】
図5において、1は発生事象保持部であり、プロセス・ステートからエンド・プロセス・ステートに遷移させてマイクロプログラムを実行させる契機となった事象(各種割込み等)を保持するもの、3は発生事象に応じたマイクロプログラムの先頭アドレスを出力するマイクロプログラムアドレス発生部、4はマイクロプログラムの実行中にマシーンチェック条件が発生した時、リトライ可能であれば、前記保持してある事象に応じたマイクロプログラムの先頭アドレスを出力してリトライを実行させるリトライ制御部である。
【0017】
発生事象保持部1において、1a〜1nはプロセス・ステートからエンド・プロセス・ステートに遷移させてマイクロプログラムを実行させる契機となる事象(各種割込み等)を保持するフリップフロップ、1sはオアゲートで、割込み処理等の終了によりスタート・ステートになった時(START STATE=”1”)、あるいは、プロセッサが停止してストップ・ステートになった時(STOP STATE=”1”)、フリップフロップ1a〜1nをリセットする。すなわち、各フリップフロップ1a〜1nはプロセス・ステートにおいてマイクロプログラムを実行させる契機となる事象が発生したときセットされ、該事象に対する処理が終了するまで、あるいは、プロセッサが停止状態になるまで該事象を保持する。
マイクロプログラムアドレス発生部3は、アンドゲート3a〜3nと、エンコーダ3sを備えている。リトライ可能状態において(ENB RETRY HOP=”1”)、所定の事象が発生してフリップフロップ1a〜1nがセットされると、該フリップフロップに応じたアンドゲート3a〜3nの出力がハイレベルになり、エンコーダ3sは発生事象に応じたマイクロプログラムの先頭アドレスSW HOP CODE(0:n)を出力する。
【0018】
リトライ制御部4において、4aはオアゲート、4bはアンドゲート、4cはフリップフロップ、4dはアンド・ノットアンドゲート、4e,4fはアドレスセレクタである。プロセス・ステートにおいて割込み等の事象が発生してフリップフロップ1a〜1nのいずれかがセットされると、オアゲート4aの出力がハイレベルになる。しかる後、リストア・ステートに移行してパイプラインの初期化が終了すると、クリアパイプラインエンド信号CLEAR PIPELINE ENDが発生する。フリップフロップ4cはこの信号CLEAR PIPELINE ENDによりセットされ、ハードオペにスイッチするための引き金となるハードオペトリガ信号HARD OP TGRを出力する。アドレスセレクタ4eはハードオペトリガ信号HARD OP TGRがハイレベルになり、マイクロプログラムの最初のフローである事を示す+ACNT0がハイレベルになった時に、マイクロプログラムアドレス発生部3から出力されているマイクロプログラムの先頭アドレスを次読出アドレスNEXT CS ADRSとして選択し、図2のCSアドレスレジスタ31にセットする。これにより、以後、発生事象に応じたマイクロプログラム処理が開始する。尚、ハードオペトリガ信号HARD OP TGRがローレベル、あるいはマイクロプログラムの次のフローからは、アドレスセレクタ4fが図示しない他の回路から出力されるアドレスをCSアドレス記憶部31にセットする。
尚、フリップフロップ4cは命令の実行が終了した時(エンドオペレーションEND OP=”1”)、あるいは、リストア・ステートにおいてパイプラインが初期化された時(CLEAR PIPELINE=”1”)にそれぞれセットされる。
【0019】
4g,4hはアンドゲート、4i,4jはフリップフロップ、4kはステートの遷移を制御するステータス制御回路である。
リトライ可能状態において(ENB RETRY HOP=”1”)、マシーンチェック条件が発生すると(HMD=”1”)、アンドゲート4gはハイレベルの信号SET HOP RTRY TGRを出力してフリップフロップ4iをセットする。フリップフロップ4iは、セットされると、ハードオペリトライラッチ信号HARD OP RETRY LCHを出力する。又、リトライ不可能状態において(ENB RETRY HOP=”0”)、マシーンチェック条件が発生すると(HMD=”1”)、アンドゲート4hはハイレベルの信号SET HK LCHを出力してフリップフロップ4jをセットする。フリップフロップ4jは、セットされると、ハード・マシーンチェック・ラッチHK LCHを出力する。
【0020】
ステータス制御回路4kは、リトライ可能状態においてマシーンチェック条件が発生してハードオペリトライラッチ信号HARD OP RETRY LCHがハイレベルになると、リストア・ステートに遷移させ、リストア・ステートの終了後(パイプラインクリア終了後)にエンド・プロセス・ステートに遷移するように制御し、更に、リトライ成功によりスタート・ステートに遷移するように制御する。
リトライ不可能状態においてマシーンチェック条件が発生してハード・マシーンチェック・ラッチHK LCHが”1”になると(否定信号*HK LCHは”0”)アンドゲート3a〜3nの全出力がローレベルになるため、マイクロプログラムの再実行(リトライ)はできない。
【0021】
(d)全体の制御
プロセス・ステートにおいて一般命令の実行中にプログラム例外(PROGRAM EXCEPTION)によりプログラム割込みが発生すると、フリップフロップ1a〜1n(図5)のいずれかがセットされる。これにより、マイクロプログラムアドレス発生部3は発生事象に応じたマイクロプログラムの先頭アドレスHARD OP CODE(0:n)を出力する。
一方、プログラム割込みによりステータス制御回路4kの制御でリストア・ステートに移行してパイプラインの初期化が終了すると、信号CLEAR PIPELINE ENDがハイレベルになる。この結果、フリップフロップ4cがセットされ、ハードオペトリガ信号HARD OP TGRがハイレベルになる。ハードオペトリガ信号HARD OP TGRがハイレベルになり、マイクロプログラムの最初のフローである事を示す+ACNT0がハイレベルとなった時に、アドレスセレクタ4eはマイクロプログラムアドレス発生部3から出力されているマイクロプログラムの先頭アドレスHARD OP CODE(0:n)をCSアドレスレジスタ31(図2)にセットする。以上により、発生事象に応じたマイクロプログラム処理が開始する。
【0022】
マイクロプログラム実行時(ハードオペ実行時)において、リトライ可能・不可能監視部2(図4)は、マシーンチェック条件が発生してもリトライが可能か否かを監視し、リトライ可能であれば、ハイレベルのリトライ可能信号ENB RETRY HOPを出力する。かかるリトライ可能状態において、マシーンチェック条件が発生すると(ハードマシーンチェックディテクト信号HMD=”1”)、フリップフロップ4cがリセットされると共に、フリップフロップ4iがセットされてハードオペリトライラッチ信号HARD OP RETRY LCHを出力する。これにより、ステータス制御回路4kは、エンド・プロセス・ステートからリストア・ステートに遷移させる。リストア・ステートにおいてパイプラインの初期化が終了すると、再びフリップフロップ4cがセットされ、ハードオペトリガ信号HARD OP TGRがハイレベルになる。この時、マイクロプログラムアドレス発生部3はフリップフロップ1a〜1nに保持されているプログラム割込みに応じたマイクロプログラムの先頭アドレスHARD OP CODE(0:n)を出力している。
【0023】
従って、アドレスセレクタ4eはハードオペトリガ信号HARD OP TGRがハイレベルになると、プログラム割込みに応じたマイクロプログラムの先頭アドレスHARD OP CODE(0:n)を再びCSアドレスレジスタ31にセットする。これにより、発生事象(プログラム割込み)に応じたマイクロプログラム処理の再実行(リトライ)が開始する。リトライが成功すれば、すなわち、マシーンチェック条件が発生せず、プログラム割込み処理が終了すれば、エンドオペレーション信号END OPが発生する。これにより、ステータス制御回路4kはステートをスタート・ステートに遷移し、各フリップフロップはリセットされ、以後、プロセス・ステートに移行して後続の命令がパイプライン処理される。
【0024】
一方、エンド・プロセス・ステートのリトライ不可能状態においてマシーンチェック条件が発生した場合は、フリップフロップ4jがセットされてハード・マシーンチェック・ラッチHK LCHが”1”になる(否定信号*HK LCHは”0”)。このため、アンドゲート3a〜3nの全出力がローレベルになり、フリップフロップ4cはセットされなくなり、マイクロプログラムの再実行(リトライ)は行われない。
以上、本発明を実施例により説明したが、本発明は請求の範囲に記載した本発明の主旨に従い種々の変形が可能であり、本発明はこれらを排除するものではない。
【0025】
【発明の効果】
以上本発明によれば、プロセス・ステートからエンド・プロセス・ステートに遷移させて、マイクロプログラムを実行させる契機となった事象を保持し、又、前記事象に応じたマイクロプログラムの実行中において、マシーンチェック条件が発生してもリトライが可能であるか、不可能であるかを監視し、マイクロプログラムの実行中にマシーンチェック条件が発生した時、リトライ可能状態であれば、前記保持してある事象に応じたマイクロプログラムを最初から実行するように構成したから、エンド・プロセス・ステートでマシーンチェック条件が発生してもリトライが可能となり、情報処理装置の信頼性を向上できる。
又、本発明によれば、リトライが成功しない場合、予め設定されている回数になるまでリトライを継続することができ、信頼性を更に向上することができる。
更に、本発明によれば、割込みや各事象に応じたマイクロプログラムの先頭アドレスを出力する手段を設け、発生事象に応じたマイクロプログラムを該先頭アドレスより読み出して処理することができるため、ハードオペ時にマシーンチェック条件が発生しても、又、リトライが失敗しても設定回数まで何回も該事象に応じたマイクロプログラムのリトライができる。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】本発明の全体構成図である。
【図3】本発明のリトライ制御のシーケンス説明図である。
【図4】本発明のリトライ可能・不可能監視部の構成図である。
【図5】本発明のマイクロプログラムリトライ制御回路の構成図である。
【図6】ステートマシーンにおける遷移状態図である。
【図7】命令実行の処理単位の説明図である。
【図8】パイプライン処理の説明図である。
【符号の説明】
1・・発生事象保持部
2・・リトライ可能・不可能監視部
3・・マイクロプログラムアドレス発生部
4・・リトライ制御部
21・・制御記憶部(CS)
31・・CSアドレスレジスタ
51・・デコーダ
[0001]
BACKGROUND OF THE INVENTION
Since the system down of the information processing apparatus has a great social impact, it is more important to improve its reliability. For this reason, when a machine check condition occurs, the system is retried (re-execution of an instruction) by retrying unless the memory, registers, etc. are updated, so that a series of subsequent processes can be performed. There is a need.
In the present invention, when various interrupts such as a program interrupt and a machine check interrupt or other events occur in a state (process state) in which a general instruction is executed, a micro process for processing the event from the process state is performed. This is a microprogram retry method in a processor that transitions to the program execution state (end process state). In particular, even if a machine check condition occurs during microprogram execution, the microprogram can be retried. In addition, the present invention relates to a microprogram retry method that relieves an information processing apparatus from intermittent errors that occur during execution of a microprogram and improves reliability.
[0002]
[Prior art]
Conventionally, in an information processing apparatus (state machine) using a pipeline, general processing such as instruction execution is normally performed in a state called a process state. When a machine check condition occurs that directly damages the system and makes it impossible to continue processing during instruction execution in such a process state, in order to improve the reliability of the information processing apparatus, As long as the memory and registers are not updated, the information processing apparatus is retried a plurality of times to recover the information processing apparatus from a system down or machine check interrupt due to an intermittent error. FIG. 6 is a state machine transition state diagram: (1) a process state S1 for executing a general instruction, (2) a clear pipeline state (restore state) S2 for initializing a pipeline, 3) End process state S3 for executing processing according to various interrupts and other events in accordance with the microprogram, (4) Start state S4 for starting processing by the processor CPU, and (5) Processing of the processor CPU There are a stop state S5 for stopping, and a check stop state S6.
[0003]
FIG. 7 is an explanatory diagram of processing units (stages) of instruction execution in pipeline processing. The pipeline is composed of, for example, 10 stages, and is roughly divided into an instruction fetch pipeline until an instruction is read from the main memory or cache memory, and a main pipeline until the instruction is decoded and executed. The instruction fetch pipeline includes (1) instruction fetch address calculation stage I, (2) instruction address conversion stage IT, (3) buffer read stage IB, and (4) instruction input stage IR to the main pipeline. It is made up. The main pipeline includes (1) instruction decode stage D, (2) operand address calculation stage A in the main memory, (3) operand address conversion stage T, and (4) operand read stage B. (5) Computation execution stage E and (6) Computation result storage stage W.
[0004]
FIG. 8 is an explanatory diagram of pipeline processing. If the instruction sequence is as shown in FIG. 8A, each instruction sequentially enters the main pipeline for each stage without waiting for the end of execution of one instruction as shown in FIG. 8B. It is submitted and executed.
In such a state machine, for example, when an interrupt or other event occurs during execution of an instruction in the process state S1, the process proceeds to the clear pipeline state S2, and an instruction being executed on the pipeline in the state S2 or a subsequent instruction is transferred. Cancel and initialize. Thereafter, the process proceeds to the end process state S3, and a predetermined microprogram corresponding to the event that caused various interrupts or state transitions is started, and interrupt processing or the like is performed by the microprogram. After completion of the processing by the microprogram, the process returns to the process state S1 via the start state S4, and the subsequent instruction is executed by pipeline processing.
[0005]
[Problems to be solved by the invention]
By the way, in the conventional information processing apparatus (state machine), when a machine check condition occurs in the end process state, the interrupt point is not guaranteed. For this reason, when a machine check condition occurs in the end process state, the retry cannot be performed, the check is stopped, and the subsequent series of processes cannot be continued. In other words, conventionally, retry has been performed only in the process state, and there has been a problem that the reliability of the information processing apparatus is low.
[0006]
Accordingly, an object of the present invention is to provide a microprogram retry method capable of retrying even if a machine check condition occurs in an end process state and improving the reliability of the information processing apparatus.
Another object of the present invention is to provide a microprogram retry method capable of improving the reliability of the information processing apparatus by continuing the retry until a predetermined number of times is reached if the retry is not successful. is there.
Still another object of the present invention is to provide a microprogram retry method in which the start address of a microprogram corresponding to an interrupt or each event is stored, and the microprogram corresponding to the generated event can be read from the control storage device and retried. Is to provide.
[0007]
[Means for Solving the Problems]
FIG. 1 is a diagram illustrating the principle of the present invention. In the figure, 1 is an occurrence event holding unit, which holds events (various interrupts, etc.) that trigger the execution of a microprogram by transitioning from a process state to an end process state, and 2 is an end process Retry is possible to monitor whether a retry is possible or not possible even if a machine check condition occurs in the state. Impossible monitoring unit 3 is a micro that outputs the start address of the microprogram according to the occurrence event. A program address generation unit 4 is a retry control unit that outputs a start address of a microprogram corresponding to the held event if a retry is possible when a machine check condition occurs during execution of the microprogram. A control storage unit (CS) 31 for storing various microprograms is read by the control storage unit. CS address register for storing the addresses, 51 is a decoder for decoding the control field of the microinstruction.
[0008]
When various interrupts such as a program interrupt and a machine check interrupt or other events occur during execution of a general instruction in the process state, the event is stored in the generated event holding unit 1. Thereafter, the process state is shifted to the end process state, and the microprogram corresponding to the generated event is read from the control storage unit 21 and executed. In such an end process state, the retry possible / impossible monitoring unit 2 monitors whether or not a retry is possible even if a machine check condition occurs at the present time. If a machine check condition occurs in the end process state (during execution of the microprogram), the retry control unit 4 checks whether or not a retry is possible, and if the retry is possible, the generated event holding unit 1 The start address of the microprogram corresponding to the event held in is stored in the CS address register 31 from the microprogram address generator 3, and the microprogram is re-executed from the beginning (retry). In this way, even if a machine check condition occurs in the end process state, a retry can be performed, and the reliability of the information processing apparatus can be improved. If the retry is not successful, the reliability of the information processing apparatus can be improved by continuing the retry until a preset number of times is reached.
[0009]
DETAILED DESCRIPTION OF THE INVENTION
(A) Overall configuration of the present invention
FIG. 2 is an overall configuration diagram of the present invention. In the figure, 11 is a microprogram retry control circuit for executing the microprogram retry control of the present invention, and 21 is a control storage unit (CS) for storing various microprograms. Each microinstruction constituting the microprogram has a control field CF and a sequence control field SF indicating the next address. 31 is a CS address register for storing the read address of the control storage unit, 41 is a microinstruction storage register for storing the microinstruction read from the control storage unit, and 51 is a control signal c for decoding the control field CF of the microinstruction. 1 Decoder 61 for sending ~ cm to a data processing unit (not shown), 61 is a selector for appropriately selecting the start address NEXT CS ADRS of the microprogram output from the retry control circuit and the next address of the microinstruction and setting it in the CS address register 31. is there. The selector 61 sets the address NEXT CS ADRS output from the retry control circuit 11 in the CS address register 31 during the microprogram execution (hardware operation execution), and thereafter controls the sequence of the microinstruction read into the microinstruction storage register 41. The next address in the field SF is set in the CS address register 31.
[0010]
(B) Microprogram retry control
FIG. 3 shows a retry sequence of the microprogram. The upper stage shows the state of the processor of the information processing apparatus, the interruption shows various control signals in the retry control circuit 11, and the lower stage shows the processing contents of the processor. Show.
When a program interrupt occurs due to a program exception (PROGRAM EXCEPTION) during execution of a general instruction in the process state, the program interrupt is latched, and the signal PX LCH is output until the interrupt is cleared. On the other hand, when a program exception (program error) is detected, the state shifts to the restore state, and the signal PIPELINE CLEAR becomes “1”. When the pipeline initialization is completed in the restore state, the hard operation trigger HARD OP TGR is set to “1”. Thereafter, the microprogram corresponding to the program interrupt is read from the control storage unit 21 and the program interrupt process is executed. Is done.
[0011]
If a machine check condition (hard error) ERR occurs during execution of this program interrupt, it is latched (ERROR LCH = “1”), and the hard machine check detect signal HMD becomes “1” after a predetermined time delay. As a result, the hard operation trigger HARD OP TGR becomes low level, and the program interrupt processing is interrupted. A retry possible / impossible monitoring unit described later monitors whether a retry is possible or not even if a machine check condition occurs, and the hard machine check detect signal HMD is "1". If retry is possible, the hard operation retry latch HARD OP RETRY LCH is set to high level. Further, when the hard machine check detect signal HMD becomes “1”, the state shifts to the restore state and the signal PIPELINE CLEAR becomes “1”.
[0012]
When the initialization of the pipeline is completed in the restore state, the hard operation trigger HARD OP TGR becomes “1”, and the microprogram corresponding to the held program interrupt PX LCH is read from the control storage unit 21 and the program interrupt is generated. Re-execute processing (hard operation) (retry). At this time, if the machine check condition does not occur and the program interrupt processing is completed, the end operation END OP becomes high level. As a result, the hard operation trigger HARD OP TGR and the hard operation retry latch HARD OP RETRY LCH go to a low level, and after that, a transition is made to the start state, start processing is performed, and the program interrupt latched at this time PX LCH goes low, then transitions to the process state and subsequent instructions are pipelined.
[0013]
(C) Microprogram retry control circuit
4 and 5 are configuration diagrams of the microprogram retry control circuit.
FIG. 4 is a configuration diagram of the retry possible / impossible monitoring unit, and FIG. 5 is a hardware unit such as an occurrence event holding unit, a microprogram address generation unit, a retry control unit, and the like.
In the retry possible / impossible monitoring unit 2 of FIG. 4, 2a is a flip-flop, 2b and 2c are OR gates, and 2d and 2e are AND gates.
[0014]
The flip-flop 2a is set when the execution of the instruction ends (end operation END OP = “1”) or when the pipeline is initialized in the restore state (CLEAR PIPELINE = “1”), respectively. A high-level retry point signal RETRY POINT is output. Further, the flip-flop 2a is reset by a non-retry point signal RESET RETRY HW detected by hardware such as a general instruction or by a non-retry point signal RESET RETRY MICRO detected by a micro and a retry point signal RETRY POINT Set to “0”. The AND gate 2d outputs a high-level signal ENB RETRY if the number of retries is less than the set number when the retry point signal RETRY POINT is at a high level (RETRY COUNT LESS THAN n = “1”). In the end process state, the AND gate 2e outputs a retry enable signal ENB RETRY HOP when the signal ENB RETRY is at a high level.
[0015]
That is, in the end process state, when retry is possible, and when the number of retries is less than the set number, the AND gate 2e outputs a high-level retry enable signal ENB RETRY HOP. Accordingly, when a machine check condition occurs in this state, a retry is performed as described later. However, if data is written to the register, memory, etc. due to execution of the microprogram in the end process state (hardware operation execution), or if retry is possible, or even if retry is possible, the number of retries exceeds the set number of times, The retry enable signal ENB RETRY HOP goes low, and retry is impossible.
[0016]
In FIG. 5, 1 is an occurrence event holding unit that holds an event (various interrupts, etc.) that triggers execution of a microprogram by transitioning from a process state to an end process state, and 3 is an occurrence event. A microprogram address generator for outputting the start address of a microprogram according to the above, 4 is a microprogram corresponding to the held event if a machine check condition occurs during execution of the microprogram and if a retry is possible This is a retry control unit that outputs the head address of and executes a retry.
[0017]
In the generated event holding unit 1, 1 a to 1 n are flip-flops that hold events (various interrupts, etc.) that cause the microprogram to be executed by transitioning from the process state to the end process state, and 1 s is an OR gate. When the processing enters the start state (START STATE = “1”) or when the processor stops and enters the stop state (STOP STATE = “1”), the flip-flops 1a to 1n are turned on. Reset. That is, each flip-flop 1a to 1n is set when an event that triggers execution of the microprogram in the process state occurs, and the event is processed until the processing for the event is completed or the processor is stopped. Hold.
The microprogram address generating unit 3 includes AND gates 3a to 3n and an encoder 3s. In a retryable state (ENB RETRY HOP = "1"), when a predetermined event occurs and the flip-flops 1a to 1n are set, the outputs of the AND gates 3a to 3n corresponding to the flip-flops become high level. The encoder 3s outputs the start address SW HOP CODE (0: n) of the microprogram corresponding to the generated event.
[0018]
In the retry control unit 4, 4a is an OR gate, 4b is an AND gate, 4c is a flip-flop, 4d is an AND NOT AND gate, and 4e and 4f are address selectors. When an event such as an interrupt occurs in the process state and any of the flip-flops 1a to 1n is set, the output of the OR gate 4a becomes high level. After that, when the transition to the restore state is made and the initialization of the pipeline is completed, a clear pipeline end signal CLEAR PIPELINE END is generated. The flip-flop 4c is set by this signal CLEAR PIPELINE END, and outputs a hard operation trigger signal HARD OP TGR which is a trigger for switching to a hard operation. The address selector 4e outputs the microprogram output from the microprogram address generator 3 when the hard operation trigger signal HARD OP TGR becomes high level and + ACNT0 indicating the first flow of the microprogram becomes high level. Is selected as the next read address NEXT CS ADRS and set in the CS address register 31 of FIG. Thereby, the microprogram processing corresponding to the occurrence event is started thereafter. It should be noted that the hard selector signal HARD OP TGR is at a low level or the address output from another circuit (not shown) is set in the CS address storage unit 31 from the next flow of the microprogram.
The flip-flop 4c is set when the execution of the instruction is finished (end operation END OP = “1”) or when the pipeline is initialized in the restore state (CLEAR PIPELINE = “1”). The
[0019]
4g and 4h are AND gates, 4i and 4j are flip-flops, and 4k is a status control circuit for controlling state transition.
When a machine check condition occurs (ENB RETRY HOP = "1") in the retry enabled state (HMD = "1"), the AND gate 4g outputs a high level signal SET HOP RTRY TGR to set the flip-flop 4i. . When set, the flip-flop 4i outputs a hard operation retry latch signal HARD OP RETRY LCH. In a state where retry is not possible (ENB RETRY HOP = “0”), when a machine check condition occurs (HMD = “1”), the AND gate 4h outputs a high level signal SET HK LCH and outputs the flip-flop 4j. set. When set, the flip-flop 4j outputs the hard machine check latch HK LCH.
[0020]
The status control circuit 4k makes a transition to the restore state when the machine check condition occurs in the retry enabled state and the hard operation retry latch signal HARD OP RETRY LCH becomes high level, and after the restore state ends (pipeline clear ends) After that, control is performed so as to transition to the end process state, and further, control is performed so as to transition to the start state upon successful retry.
When a machine check condition occurs in the retry impossible state and the hard machine check latch HK LCH becomes "1" (negative signal * HK LCH is "0"), all outputs of the AND gates 3a to 3n become low level. Therefore, re-execution (retry) of the microprogram is not possible.
[0021]
(D) Overall control
If a program interrupt occurs due to a program exception (PROGRAM EXCEPTION) during execution of a general instruction in the process state, one of the flip-flops 1a to 1n (FIG. 5) is set. As a result, the microprogram address generator 3 outputs the start address HARD OP CODE (0: n) of the microprogram corresponding to the generated event.
On the other hand, when the transition to the restore state is completed under the control of the status control circuit 4k by the program interrupt and the initialization of the pipeline is completed, the signal CLEAR PIPELINE END becomes high level. As a result, the flip-flop 4c is set, and the hard operation trigger signal HARD OP TGR becomes high level. When the hard operation trigger signal HARD OP TGR becomes high level and + ACNT0 indicating the first flow of the microprogram becomes high level, the address selector 4e outputs the microprogram output from the microprogram address generating unit 3. The leading address HARD OP CODE (0: n) of is set in the CS address register 31 (FIG. 2). As described above, the microprogram processing corresponding to the occurrence event starts.
[0022]
When executing a microprogram (when executing a hardware operation), the retry possible / impossible monitoring unit 2 (FIG. 4) monitors whether a retry is possible even if a machine check condition occurs. A level retry enable signal ENB RETRY HOP is output. In such a retryable state, when a machine check condition occurs (hard machine check detect signal HMD = "1"), the flip-flop 4c is reset and the flip-flop 4i is set to set the hard operation latch signal HARD OP RETRY LCH. Is output. As a result, the status control circuit 4k makes a transition from the end process state to the restore state. When the initialization of the pipeline is completed in the restore state, the flip-flop 4c is set again, and the hard operation trigger signal HARD OP TGR becomes high level. At this time, the microprogram address generation unit 3 outputs the start address HARD OP CODE (0: n) of the microprogram corresponding to the program interrupt held in the flip-flops 1a to 1n.
[0023]
Therefore, the address selector 4e sets the start address HARD OP CODE (0: n) of the microprogram corresponding to the program interrupt in the CS address register 31 again when the hard operation trigger signal HARD OP TGR becomes high level. As a result, the re-execution (retry) of the microprogram process corresponding to the occurrence event (program interruption) is started. If the retry is successful, that is, if the machine check condition does not occur and the program interrupt processing is completed, the end operation signal END OP is generated. As a result, the status control circuit 4k transitions the state to the start state, each flip-flop is reset, and then transitions to the process state to pipeline the subsequent instruction.
[0024]
On the other hand, when the machine check condition occurs in the end process state where retry is not possible, the flip-flop 4j is set and the hard machine check latch HK LCH becomes "1" (negative signal * HK LCH is “0”). For this reason, all the outputs of the AND gates 3a to 3n become the low level, the flip-flop 4c is not set, and the re-execution (retry) of the microprogram is not performed.
The present invention has been described with reference to the embodiments. However, the present invention can be variously modified in accordance with the gist of the present invention described in the claims, and the present invention does not exclude these.
[0025]
【The invention's effect】
As described above, according to the present invention, the process state is changed to the end process state, the event that triggers the execution of the microprogram is held, and during the execution of the microprogram corresponding to the event, Whether or not a retry is possible even if a machine check condition occurs is monitored, and if a machine check condition occurs during execution of a microprogram, if it is in a retryable state, it is retained Since the microprogram corresponding to the event is executed from the beginning, it is possible to retry even if a machine check condition occurs in the end process state, and the reliability of the information processing apparatus can be improved.
Further, according to the present invention, when the retry is not successful, the retry can be continued until the preset number of times is reached, and the reliability can be further improved.
Furthermore, according to the present invention, means for outputting the start address of the microprogram corresponding to the interrupt or each event is provided, and the microprogram corresponding to the generated event can be read and processed from the start address. Even if a machine check condition occurs or a retry fails, the microprogram can be retried as many times as the set number of times.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating the principle of the present invention.
FIG. 2 is an overall configuration diagram of the present invention.
FIG. 3 is a sequence explanatory diagram of retry control according to the present invention.
FIG. 4 is a configuration diagram of a retry enable / disable monitoring unit according to the present invention.
FIG. 5 is a configuration diagram of a microprogram retry control circuit of the present invention.
FIG. 6 is a transition state diagram in the state machine.
FIG. 7 is an explanatory diagram of a processing unit of instruction execution.
FIG. 8 is an explanatory diagram of pipeline processing.
[Explanation of symbols]
1 .. Occurrence holding section
2. ・ Retry possible / impossible monitoring part
3. Microprogram address generator
4. Retry control unit
21 .. Control memory (CS)
31. CS address register
51 .. Decoder

Claims (3)

一般命令の実行を行うステート(プロセス・ステート)で各種割込み、あるいはその他の事象が発生した時、プロセス・ステートから前記事象を処理するためのマイクロプログラムの実行ステート(エンド・プロセス・ステート)に遷移する処理装置のエンド・プロセス・ステートにおけるマイクロプログラムのリトライ方法において、
プロセス・ステートからエンド・プロセス・ステートに遷移させて、マイクロプログラムを実行させる契機となった事象を保持し、
前記事象に応じたマイクロプログラムの実行中において、マシーンチェック条件が発生してもリトライが可能であるか否かを監視し、該マイクロプログラムの実行によりレジスタ、メモリにデータが書込まれた時、リトライ不可能とし、
マイクロプログラムの実行中にマシーンチェック条件が発生した時、リトライ可能状態であれば、前記保持してある事象に応じたマイクロプログラムを最初から実行する
ことを特徴とするマイクロプログラムのリトライ方法。
When various interrupts or other events occur in the general instruction execution state (process state), the microprogram execution state (end process state) is processed from the process state to the event. In the retry method of the microprogram in the end process state of the processing device to which transition is made,
Holds the event that caused the microprogram to run by transitioning from the process state to the end process state,
When the microprogram corresponding to the event is executed, it is monitored whether a retry is possible even if a machine check condition occurs, and when data is written to a register or memory by executing the microprogram , Retry impossible,
When a machine check condition occurs during execution of a microprogram, if the retry is possible, the microprogram corresponding to the held event is executed from the beginning .
A microprogram retry method characterized by the above.
リトライが成功しない場合には、予め設定されている回数になるまでリトライを継続することを特徴とする請求項1記載のエンド・プロセス・ステートにおけるマイクロプログラムのリトライ方法。2. The method of retrying a microprogram in an end process state according to claim 1, wherein if the retry is not successful, the retry is continued until a preset number of times is reached. 発生事象に応じたマイクロプログラムの制御記憶部における先頭アドレスを発生する手段を設け、発生事象に応じた先頭アドレスよりマイクロプログラムを読み出して実行することを特徴とする請求項1記載のマイクロプログラムのリトライ方法。2. The retry of a microprogram according to claim 1, further comprising means for generating a start address in a control storage unit of the microprogram corresponding to the occurrence event, and reading and executing the microprogram from the start address corresponding to the occurrence event. Method.
JP22993795A 1995-09-07 1995-09-07 How to retry a microprogram Expired - Lifetime JP3621477B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22993795A JP3621477B2 (en) 1995-09-07 1995-09-07 How to retry a microprogram

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22993795A JP3621477B2 (en) 1995-09-07 1995-09-07 How to retry a microprogram

Publications (2)

Publication Number Publication Date
JPH0973391A JPH0973391A (en) 1997-03-18
JP3621477B2 true JP3621477B2 (en) 2005-02-16

Family

ID=16900067

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22993795A Expired - Lifetime JP3621477B2 (en) 1995-09-07 1995-09-07 How to retry a microprogram

Country Status (1)

Country Link
JP (1) JP3621477B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7124670B2 (en) * 2018-11-26 2022-08-24 富士通株式会社 Arithmetic processing device and method of controlling arithmetic processing device

Also Published As

Publication number Publication date
JPH0973391A (en) 1997-03-18

Similar Documents

Publication Publication Date Title
US4701915A (en) Error recovery system in a data processor having a control storage
US4710866A (en) Method and apparatus for validating prefetched instruction
JPH02257219A (en) Pipeline processing apparatus and method
JPH1021074A (en) Interruption control system, processor, and computer system
JP2513417B2 (en) Information processing device
US7370230B1 (en) Methods and structure for error correction in a processor pipeline
JPH0760388B2 (en) Pipeline control circuit
JPS6218057B2 (en)
JP3338488B2 (en) Data processing device verification method and device
JP3621477B2 (en) How to retry a microprogram
US5283891A (en) Error information saving apparatus of computer
EP0212132A1 (en) Method and digital computer for recovering from errors
JPH1196006A (en) Information processor
US5673391A (en) Hardware retry trap for millicoded processor
JPS5868162A (en) Retry processing system
JP2793386B2 (en) Computer error information storage device for computer
JP2793396B2 (en) Computer status holding device
JPS6161412B2 (en)
JPH04181331A (en) Instruction retry system
JPS60214043A (en) Pipeline control circuit
JP2545594B2 (en) Operand data prefetching method
JPS6155744A (en) Recovery processing of errors
JPH0797326B2 (en) Information processing equipment
JPH0581175A (en) Retry control system of data transfer
JPH0752402B2 (en) Data processing device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040831

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041018

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041118

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081126

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091126

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101126

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101126

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111126

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111126

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121126

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121126

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20131126

Year of fee payment: 9

EXPY Cancellation because of completion of term