JPH10320196A - マイクロプロセッサ - Google Patents
マイクロプロセッサInfo
- Publication number
- JPH10320196A JPH10320196A JP9128875A JP12887597A JPH10320196A JP H10320196 A JPH10320196 A JP H10320196A JP 9128875 A JP9128875 A JP 9128875A JP 12887597 A JP12887597 A JP 12887597A JP H10320196 A JPH10320196 A JP H10320196A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- instructions
- microprocessor
- execution
- program
- 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.)
- Granted
Links
Landscapes
- Advance Control (AREA)
- Debugging And Monitoring (AREA)
Abstract
命令実行時の履歴を保管し、その履歴に基づき命令実行
順を実行時に動的に決定するマイクロプロセッサを提供
すること。 【解決手段】 本発明におけるマイクロプロセッサは、
命令フェッチを行う命令フェッチ機構F0、フェッチし
た命令のデコードを行う命令デコード機構D0、命令を
実際に実行する命令実行機構E0、実行後の後処理を行
う実行後処理部W0を備え、マイクロプロセッサ内ある
いはその近傍に、性能低下状態を検出する性能監視機構
P0と、性能低下を引き起こす可能性のあるレイテンシ
を伴う命令に関して、その情報を格納する記億装置であ
る履歴管理メモリH0を備え、また、この記億装置に格
納された命令の履歴から命令の実行順を決定する選択手
段を持った命令実行制御部A0を備える。
Description
るプログラムをパイプライン実行するマイクロプロセッ
サの方式に関し、かつ、上記マイクロプロセッサが実行
するプログラムに含まれる命令の実行順序を、その命令
のデータ依存性を参照することで、プログラムの記載順
序以外の順序で実行するマイクロプロセッサであって、
しかも、同時あるいは近傍時間にデータ依存性が解決さ
れた複数の命令をスーパースケーラ実行するプロセッサ
の実行順序を決定する方式および構成に関する。
実行を行う汎用のマイクロプロセッサにおいては、命令
が必要とする入力データが揃ったかどうかを確認して、
その静的順序に関わらず依存性が解決されたものから動
的に実行順を決定し実行するOutOfOrder実行
形式が一般的である。また、ある時点で実行可能な命令
が使用するリソースの数以上あった場合、実行する命令
の選択方法は、一般的に「古い命令から選択していく」
方法が一般的であり、広く用いられている。
命令I1〜I10が存在し、そのプログラム内の命令の
静的順序は古い順からI1,I2,I3,I4,I5,
……I10であったとする。また、そのデータ依存性は
図2中に矢印で示された方向に存在するとする。即ち、
矢印で指された命令は、その矢印の元が接続されている
命令が実行を終了すると、実行可能となることを示して
いる。複数の矢印から指されている命令は、指し側の命
令がすべて終了して始めて実行可能となることを示して
いる。また、図2中の命令I9は実行終了までに20ク
ロックかかる命令であると仮定し、その他の命令は実行
に1クロックしかかからないと仮定する。また、このプ
ログラムを実行するマイクロプロセッサは同時に2つの
命令を実行できる2ウエイのスーパースケーラ実行が可
能なマイクロプロセッサである。
と、命令I1が実行を終了すると命令I2,I3及び命
令I9が実行可能となる。「古い命令から選択してい
く」方法に準拠すると、次に実行するべく選択される命
令はI2,I3となる。命令I2,I3の実行が終了す
ると、次に実行可能な命令は命令I4,I5,I9であ
るが、やはり古い命令から順に選択していくと命令I
4,I5を実行する。命令I4,I5が実行を終わる
と、命令I6,I7,I9が実行可能となり、命令I
6,I7が実行される。命令I6,I7が実行を終える
と、命令I8,I9が実行可能となり、実行される。
終了するまで実行を始めることができないが、命令I9
は20クロックかかる命令であるため、I10もまたそ
の実行開始を20クロック待たされることになる。即
ち、命令I9の大きなレイテンシがプログラムの実行時
間に見えてしまい、性能に大きな影響を与える。具体的
には、上記プログラムでI1からI10までの実行時間
は25クロックであり、命令I9のレイテンシ20クロ
ックが全体の実行時間の大きな割合をしめている。
おいて実行可能な命令が複数ある場合、その実行順序を
「古いものから順に選択する」一般的な方法では、大き
なレイテンシを伴う命令の実行時間が隠蔽できないケー
スが存在し、性能低下を引き起こす。
6においてプログラムの実行順序を最適化し、パイプラ
イン処埋を行うプロセッサによる実行に最適化する方法
が提案されている。これは、命令の実行順序によっては
生じる可能性のある命令待ち合わせ時間、いわゆるパイ
プラインブレークを、適当な命令を挿入し実行順序を変
更することによつて減少させ、実行時間の最適化を行う
ものである。
析、命令の処理に関して重み付けを行い、命令列の再構
成を行うが、あくまで静的な解析によって行うものであ
るため、実行中に動的に発生するレイテンシ(メモリア
クセス命令がキャッシュミスしフィル処理を行う場合
や、値によって処理時間が変化する演算命令など)には
対応できない。また、ソフト互換性はあるが、ハード的
に互換性のないプロセッサに対しては、それぞれのプロ
セッサに関して処理の重み付けが変化するため、プログ
ラムをそれぞれのプロセッサ用に最適化してやる必要が
あり、非効率的である。
t0f0rder実行を行うマイクロプロセッサにおい
て、プログラム実行中のある時点で、データ依存性が解
消された(即ち実行可能と判断される)ものが同時に複
数あった場合、従来の「古いものから順に選択して実行
する」という選択方法では、大きなオーバヘッドを生じ
る可能性があり、性能低下を引き起こすことである。そ
の理由は、あるプログラムが完成したとすると、そのプ
ログラムに内在するデータ依存関係は固定のものであ
り、そのデータ依存関係に基づきプログラムの並列性を
抽出しながら0ut0f0rder実行できる一般的な
マイクロプロセッサで実行したとすれば、その実行順序
は複数存在することになり、その実行方法でプログラム
の実行時間が変化するためである。
定することで第一の問題点を解決するため、プログラム
中に含まれる依存関係を、コンパイル時その他に静的に
解析できたとしても、プログラムの実行順序を完全に最
適化することは非効率かつ困難であることである。その
理由は、同一のソフトウエアが動作するが、アーキテク
チャが異なる複数のマイクロプロセッサにおいては、そ
れらの命令実行時間は一般に異なるために、一つのプロ
グラムをそれぞれのマイクロプロセッサに対応するよう
に静的に解析し最適化をする必要があり、非効率的であ
る。また、たとえ対象のマイクロプロセッサが一つであ
ったとしても、命令のうちには実行時に実行時間が動的
に変化するものがあるため(例:メモリアクセス命令の
キャッシュミスに伴うキャッシュフィル処理)、静的に
解析することが極めて困難だからである。
除去すべくなされたもので、レイテンシを伴う命令実行
時のレイテンシを隠蔽するため、命令実行時の履歴を保
管し、その履歴に基づき命令実行順を実行時に動的に決
定するための機構を備えたマイクロプロセッサを提供す
ることを目的とする。この機構は実行時に動的に実行順
序を決定するため、プログラムの事前の静的解析や最適
化の必要がない。
プロセッサは、命令フェッチを行う命令フェッチ機構
(図1のF0)、フェッチした命令のデコードを行う命
令デコード機構(図1のD0)、命令を実際に実行する
命令実行機構(図1のE0)、実行後の後処理を行う実
行後処理部(図1のW0)を備え、マイクロプロセッサ
内あるいはその近傍に、前述の性能低下状態を検出する
性能監視機構(図1のP0)と、性能低下を引き起こす
可能性のあるレイテンシを伴う命令に関して、その情報
を格納する記億装置である履歴管理メモリ(図1のH
0)を備え、また、この記億装置に格納された命令の履
歴から命令の実行順を決定する選択手段を持った命令実
行制御部(図1のA0)を備えることを特徴とする。
て図面を参照して説明する。図1は本発明の一実施形態
の構成を示すブロック図である。図中のF0は命令フェ
ッチ機構、D0は命令デコード機構であり、実行される
と予測される複数の命令を同時にデコードする。E0は
命令実行機構であり、同時に複数の命令を実行する。W
0は実行後処理部である。また、A0は命令実行制御部
であり、依存性が解消された命令のうち、命令実行機構
E0で次に実行する命令を選択する。性能監視機構P0
はマイクロプロセッサの稼働率を監視する。履歴管理メ
モリH0は、長いレイテンシでプロセッサの稼働率を下
げた履歴のある命令に関する情報を格納する。命令フェ
ッチ機構F0,命令デコード機構D0,実行後処理部W
0,命令実行制御部A0,性能監視機構P0,履歴管理
メモリH0はすべてパイプライン処理を行うものとす
る。
実行した時の例を示す。まず、マイクロプロセッサMP
の命令フェッチ機構F0がメモリM0から複数の実行す
る命令I1をフェッチする。メモリM0はマイクロプロ
セッサMP内に設置されることもある。命令デコード機
構D0はフェッチしてきた命令をマイクロプロセッサが
実行可能な信号にデコードする。また、デコード対象の
命令について過去に低稼働率状態クロックが登録されて
いれば、履歴管理メモリH0から読み出す。
た履歴管理メモリH0の内容を参照し、デコードした命
令I1が過去に命令I1自身のレイテンシでプロセッサ
の稼働率を低下させたことがないかを調べる。もし過去
にそのような履歴があった場合、その命令を優先的に実
行する。この例では命令I1にはそのような履歴がな
く、履歴管理メモリH0に登録されていないので、通常
の「古いものから選択する」方法で選択する。
された命令は、命令実行機構E0において実行される。
命令実行機構E0に対して、性能監視機構P0は実行中
の命令I1のアドレスを保持し、その命令が命令実行機
構E0内に存在する時に、命令実行機構E0に存在する
命令数を計数し(命令実行機構E0が命令Ixしか実行
していない時は、その命令数は1)、その命令数が事前
に設定した命令数T0以下の状態のクロック数をカウン
トする。ここで、アドレスIxの命令が命令実行機構E
0に存在するときの低稼働率状態クロック数をC(I
x)と定義する。なお命令実行機構E0の稼働率はその
時に命令実行機構E0にいる命令数を基準とし、T0=
1とする。そのカウント値が事前に決めておいたクロッ
ク数T1よりも大きかったら、履歴管理メモリH0に命
令アドレスとその低稼働率状態のクロック数を格納す
る。この例ではT1=5とする。命令I1における低稼
働率状態クロック数C(I1)=1でT1よりも小さ
く、履歴管理メモリH0に対する登録は行わない。
キーとして参照する連想記憶として構成し、その内容は
低稼働率状態クロック数C(Ix)を格納する。さて図
2において、命令I1からI7の実行はそれぞれ1クロ
ックで終了するため、性能監視機構P0は低稼働率状態
を検出することはなく、したがって履歴管理メモリH0
にも命令I1からI7までの情報は書き込まれない。
最初の1クロックは命令I8,I9が一緒に実行されて
いるため命令実行機構E0の稼働率は2であるが、次の
クロックでは命令I8の実行は終了しているため、命令
I9だけが残りの19クロックにわたり命令実行機構E
0に残って処理を続けることになる。この場合、稼働命
令数は1であるため、性能監視機構P0は命令I9に対
するC(I9)を19までカウントアップすることにな
る。C(I9)はT1よりも大きいため、履歴管理メモ
リH0に命令I9のアドレスとC(I9)=19が書き
込まれる。
での実行時間は25クロックかかる。その後プログラム
の実行が進み、再び命令I1が実行されると、実行可能
命令はI2,I3,I9となる。命令デコード機構D0
から命令実行制御部A0に制御が移ると、命令実行制御
部A0は履歴管理メモリH0を参照して、過去に命令I
9が19クロックの低稼働率状態を引き起こしたことを
検出する。これを検出すると命令実行制御部A0は優先
的に命令I9を選択する。もう一つは古い方の命令I2
を選択する。そして、命令実行機構E0において命令I
2,I9が実行を開始する。
3,I4,I5,I6,I7,I8の順に一つづつ命令
が命令実行機構E0で実行される。命令I9はその後1
3クロックの間、稼動命令数1の状態が続く。性能監視
機構P0においてC(I9)=13までカウントアップ
される。T1よりも大きな値であるが、以前のC(I
9)=19よりも小さいため、履歴管理メモリH0の値
を変更しない。もし以前の値よりもC(I9)が大きく
なったならば、履歴管理メモリH0にC(I9)とアド
レスを登録する。そして命令I9が実行を終えると、初
めて命令I10が実行可能となり、命令実行機構E0で
実行される。
0までの実行時間は22クロックとなり、3クロックの
性能向上が実現された。以上示したように本実施形態に
よれば、複数の実行可能な命令について、その履歴を参
照することによって、レイテンシを伴う可能性のある命
令かどうかを実行時に動的に知ることが出来る。また、
これを命令発行の選択に用いることにより、命令レイテ
ンシによって実行部の稼働率が低下する状態のクロック
数を減少させ、命令の処理効率を向上させることができ
るといった効果がある。
の一実施形態を図3に示して説明する。図3の1,2は
それぞれ命令デコード機構D0からデコードされた2命
令のアドレスである。H0は履歴管理メモリである。こ
の構成ではCAM構造をとり、そのエントリ数は256
エントリである。しかし、一般的にはセットアソシアテ
ィブ構成やダイレクトマップ構成も考えられる。エント
リ数は多いほうが望ましい。本実施形態では、同時にデ
コードする2つの命令のアドレスによって同時に値を参
照できるよう、2つのリードポートを持つメモリとして
構成する。その内容は、前述の低稼働率状態クロック数
をしめす8bitのデータである。
メモリH0から読まれたデータ10,11は命令同期機
構20に送られる。これはデコードした命令の依存関係
を調べるための同期機構であり、一般的なマイクロプロ
セッサに搭載されているものと同様のものである。命令
同期機構20において命令の依存性が解決されたと判断
された命令はメモリ14に書き込まれる。メモリ14に
はその命令の情報と、その命令に対応する低稼働率クロ
ック数を格納する。この例では(8bitの低稼働率状
態クロック数+発行する命令の情報)×6エントリ分を
用意する。
ている6命令のうち、1番目と2番目に多い低稼働率状
態クロック数の命令を選択する。その2つの命令は命令
実行機構E0によって実行される。性能監視機構P0は
命令実行機構E0の状態を監視し、低稼働率状態クロッ
ク数が前述T1よりも大きくかつデコード時にメモリ1
4から得られた過去の値よりも大きかった場合に、メモ
リ14に対してそのクロック数を書き込む。
および登録に関する部分の一実施形態を図4に示して説
明する。図4のE0は命令実行機構であり、この実施形
態では2つの命令を同時に実行できるように、命令実行
部E01,E02を備えている。この図において命令実
行機構E0以外が性能監視機構(図1のP0)の一部を
構成している。
開始信号3,4と、命令実行部E01,E02が命令実
行の終了時に発行する命令実行終了信号111,11
2、および命令実行機構に現在いる命令数100をみ
て、カウンタA13,A14は「それぞれの命令が開始
してから終了するまでの間、命令実行機構にいる命令数
がT0(本実施形態では1)以下の状態」をカウントす
る。このカウントした値が、それぞれの命令に対する
「低稼働率状態クロック数」である。
16でそれぞれの命令に対して、「過去に履歴管理メモ
リ(図1のH0)に登録されておらずかつその命令に対
して今回カウントした低稼働率状態クロック数がT1
(本実施形態では5)以上である、あるいは今回カウン
トした低稼働率状態クロック数が過去に履歴管理メモリ
(図1のH0)に登録されていた値よりも大きい」とい
う状態を検出する。それぞれの命令についてこの状態が
検出されると、信号線18あるいは19上に低稼働率状
態クロック数の履歴管理メモリ(図1のH0)に対する
登録指示が出される。これを参照して性能監視機構(図
1のP0)は履歴管理メモリ(図1のH0)に対する登
録を行う。
て詳述してきたが、具体的な構成はこの実施形態に限ら
れるものではなく、この発明の要旨を逸脱しない範囲の
設計の変更等があってもこの発明に含まれる。
最適な命令実行スケジューリングが行えることである。
これによって、マイクロプロセッサのプログラム実行性
能が向上する。その理由は、一度オーバヘッドが発生し
たことが検出されると、2度目以降にはより適した方法
でスケジューリングを行うため、最適な命令実行スケジ
ューリングを行うようになるためである。第二の効果
は、第一の効果を、プログラムの静的解析や事前の最適
化なしに高速化を行えることである。これにより、冗長
なプログラム変換の必要がない。実行時に動的に履歴を
登録し、動的に参照しながらスケジューリングを行って
実行を行うためである。
大きくなるプログラムの例である。
性能監視機構の一部である。
……命令フェッチ機構、 D0……命令デコード機構、
A0……命令実行制御部、 E0……命令実行機構、W
0……実行後処理部、 P0……性能監視機構、H0…
…履歴管理メモリ
Claims (4)
- 【請求項1】 プログラム中の命令をメモリからフェッ
チし、同時に複数個の命令デコードを行い、同時に複数
個の命令を実行できるマイクロプロセッサであり、かつ
命令のデータ依存性を参照することでプログラムの命令
の静的な順番以外の順番で命令の実行を行うことのでき
るマイクロプロセッサであって、 「特定の命令を実行することでマイクロプロセッサの処
理効率が低下した」という条件と、前記条件を引き起こ
した特定の命令とを検出する手段をもったことを特徴と
するマイクロプロセッサ。 - 【請求項2】 請求項1記載のマイクロプロセッサにお
いて、 前記処理効率低下あるいはマイクロプロセッサの稼働率
低下状態のクロック数を計数する性能監視機構をもった
ことを特徴とするマイクロプロセッサ。 - 【請求項3】 請求項2記載のマイクロプロセッサにお
いて、 前記条件を引き起こした命令と、前記数値を関連付けて
登録するための記憶装置である履歴管理メモリと前記履
歴管理メモリヘの登録手段を備え、 プログラム中の命令のアドレスにより特定される命令に
ついて、前記記億装置から登録された情報を取り出す手
段をもったことを特徴とするマイクロプロセッサ。 - 【請求項4】 請求項3記載のマイクロプロセッサにお
いて、 プログラム実行時の任意の時点に実行可能と判断される
命令群から、前記記憶装置から取り出した前記命令群の
各命令に対応する情報に基づき、実行する命令実行順を
決定する手段と、 前記実行順にしたがって命令の実行を行う命令実行手段
をもったことを特徴とするマイクロプロセッサ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP09128875A JP3112861B2 (ja) | 1997-05-19 | 1997-05-19 | マイクロプロセッサ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP09128875A JP3112861B2 (ja) | 1997-05-19 | 1997-05-19 | マイクロプロセッサ |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10320196A true JPH10320196A (ja) | 1998-12-04 |
JP3112861B2 JP3112861B2 (ja) | 2000-11-27 |
Family
ID=14995527
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP09128875A Expired - Fee Related JP3112861B2 (ja) | 1997-05-19 | 1997-05-19 | マイクロプロセッサ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3112861B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008250867A (ja) * | 2007-03-30 | 2008-10-16 | Fukuoka Pref Gov Sangyo Kagaku Gijutsu Shinko Zaidan | 実行パス検出装置、情報処理装置、実行パス検出方法、プログラム及び記録媒体 |
-
1997
- 1997-05-19 JP JP09128875A patent/JP3112861B2/ja not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008250867A (ja) * | 2007-03-30 | 2008-10-16 | Fukuoka Pref Gov Sangyo Kagaku Gijutsu Shinko Zaidan | 実行パス検出装置、情報処理装置、実行パス検出方法、プログラム及び記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
JP3112861B2 (ja) | 2000-11-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1562109B1 (en) | Thread id propagation in a multithreaded pipelined processor | |
US6295600B1 (en) | Thread switch on blocked load or store using instruction thread field | |
US5584037A (en) | Entry allocation in a circular buffer | |
US6484254B1 (en) | Method, apparatus, and system for maintaining processor ordering by checking load addresses of unretired load instructions against snooping store addresses | |
US8539485B2 (en) | Polling using reservation mechanism | |
US5142631A (en) | System for queuing individual read or write mask and generating respective composite mask for controlling access to general purpose register | |
US6415380B1 (en) | Speculative execution of a load instruction by associating the load instruction with a previously executed store instruction | |
JP2504830Y2 (ja) | デ―タ処理装置 | |
EP1562108B1 (en) | Program tracing in a multithreaded processor | |
US9740553B2 (en) | Managing potentially invalid results during runahead | |
US20040205747A1 (en) | Breakpoint for parallel hardware threads in multithreaded processor | |
EP0394624B1 (en) | Multiple sequence processor system | |
US10628160B2 (en) | Selective poisoning of data during runahead | |
US20080126770A1 (en) | Methods and apparatus for recognizing a subroutine call | |
EP2220556B1 (en) | A method and a system for accelerating procedure return sequences | |
JP2596712B2 (ja) | 近接した分岐命令を含む命令の実行を管理するシステム及び方法 | |
US5943494A (en) | Method and system for processing multiple branch instructions that write to count and link registers | |
JP3683439B2 (ja) | 分岐予測を抑止する情報処理装置および方法 | |
US7831979B2 (en) | Processor with instruction-based interrupt handling | |
CN116414458A (zh) | 指令处理方法以及处理器 | |
JP3112861B2 (ja) | マイクロプロセッサ | |
US5625808A (en) | Read only store as part of cache store for storing frequently used millicode instructions | |
US20090031118A1 (en) | Apparatus and method for controlling order of instruction | |
US6453412B1 (en) | Method and apparatus for reissuing paired MMX instructions singly during exception handling | |
JPH1049373A (ja) | パイプライン・デジタル・プロセッサにおいて多重で高精度の事象を操作する方法と装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20000905 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080922 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080922 Year of fee payment: 8 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080922 Year of fee payment: 8 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313117 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080922 Year of fee payment: 8 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080922 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090922 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090922 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100922 Year of fee payment: 10 |
|
LAPS | Cancellation because of no payment of annual fees |