JPH11504735A - システムアーキテクチャ - Google Patents

システムアーキテクチャ

Info

Publication number
JPH11504735A
JPH11504735A JP8523887A JP52388796A JPH11504735A JP H11504735 A JPH11504735 A JP H11504735A JP 8523887 A JP8523887 A JP 8523887A JP 52388796 A JP52388796 A JP 52388796A JP H11504735 A JPH11504735 A JP H11504735A
Authority
JP
Japan
Prior art keywords
processor
program package
program
prog
system architecture
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
Application number
JP8523887A
Other languages
English (en)
Other versions
JP3731186B2 (ja
Inventor
ヘッケル、アンドレアス
ルップ、ローラント
バイシャール、クリストフ
ボーンハース、クラウス
Original Assignee
ピルツ ゲーエムベーハー ウント コンパニー
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=7753624&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JPH11504735(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by ピルツ ゲーエムベーハー ウント コンパニー filed Critical ピルツ ゲーエムベーハー ウント コンパニー
Publication of JPH11504735A publication Critical patent/JPH11504735A/ja
Application granted granted Critical
Publication of JP3731186B2 publication Critical patent/JP3731186B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1637Error detection by comparing the output of redundant processing systems using additional compare functionality in one or some but not all of the redundant processing components
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0428Safety, monitoring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/406Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
    • G05B19/4063Monitoring general control system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0796Safety measures, i.e. ensuring safe condition in the event of error, e.g. for controlling element

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Hardware Redundancy (AREA)
  • Storage Device Security (AREA)
  • Retry When Errors Occur (AREA)

Abstract

(57)【要約】 システムアーキテクチャは、1つのプロセスを共同で制御し絶えずデータを互いに比較する少なくとも2個のプロセッサ(2、3)を有する。可能な誤りに関して検査されたプログラムパッケージと未検査のプログラムパッケージが2つのプロセッサの一方(2)で実行される。未検査のプログラムパッケージによる検査済のプログラムパッケージの妨害をなくすために、検査済のプログラムパッケージと共同で動作する周辺機器(12)は抑止入力(16)を備えており、検査済のプログラムパッケージは未検査のプログラムパッケージに管理を引き渡す前に、割当てられた周辺機器(12)を抑止入力(16)により禁止する。

Description

【発明の詳細な説明】 システムアーキテクチャ 機械、それも多数の独立軸を擁しているために基本的な制御コストのかかる機 械の操作は近年ますます自動化されている。これらの制御は、人間や機械に対す る危険をできるだけ排除するため、少なくとも誤った操作が人間や機械に対して 悲惨な結果を招きうるような制御ステートメントに関しては、かなりの程度まで 信頼できうるものでなければならない。 過去においてはこのような場合には、リレーや保護機器が比較的確実な制御手 段であるという考えのもとに、主にリレー技術に信頼が置かれてきた。もっとも この方式ではリレーがその機能の面で交互に監視ないしは検査されるために、過 剰なほどの検査プログラムの類を準備する必要があった。例えば偏心プレスなど の比較的単純な制御用でさえこのリレーのコストは必要なスペースからすると莫 大なものであった。検知したり、エラーの検知の際に装置を安全な側に停止させ るような複雑で確実な制御方式は、スペースの制約からリレー技術では実用化し ていない。 従って、電子部品は状況によっては外部の影響をより受けやすく、また複合的 エラーも起こりやすいことが分かっていたにもかかわらず、電気機械部品の代わ りに電子部品を用いた制御装置を構築する方向が取られた。そしてこの問題点を 少しでも克服するために、チャネルが互いに監視し合う制御装置が多重チャネル の仕様で作られた。 さらに自動化が進んだため、マイクロプロセッサによる制御への移行が必要に なっているが、これにはエラーのもう一つの特性、つまりソフトウエアのエラー という問題が加わった。 しかし、マイクロプロセッサやプログラムを使った制御方式は、ユーザがその 制御機構を拡張したり、状況によっては安全性と関係のない他の機械や機械の動 作をその制御機構内に組み込むことが同時に可能となる場合にしか意味を持たな い。この場合必ずしも信頼できるとはいえない諸々の機能を制御するこのプログ ラムの一部によって、信頼しうる機能を監視するプログラム部分が影響を受ける ことは絶対に避けなければならない。さもなければその原因を実際には見つけ出 せないような重大なトラブルに到ることもあり得るだろう。というのはこれらの トラブルは状況によってはある決まった入力信号の時間的相関関係に依存してい るためである。 このような現状に基づいて、本発明の課題は、安全点検されないプログラムが 安全点検されたプログラムの進行に望ましくない影響を与えたり、あるいは妨害 する危険性が発生することなく、点検されたプログラムとされないプログラムを 一台のプロセッサ上で実行させることが可能なシステムアーキテクチャを提供す ることである。 この課題は発明の趣旨に則って請求項1の特徴を有するシステムアーキテクチ ャにより解決される。 電気のコスト及び構成部材のコストから考えて、2つの異なるプログラムを1 台のプロセッサで実行させることは有意義である。この場合、2つのプログラム パッケージが互いに相互作用を行うために1つの制御部が常に存在するのが望ま しい。抑止入力を持った周辺機器の利用によって、第1のプログラムパッケージ がその内容を知らないコマンドを、第2のプログラムパッケージが周辺機器に絶 対に出力できないように安全対策を講じることは可能である。例えば第1のプロ グラムパッケージが信頼しうる検証されたプログラムパッケージである場合に、 このプログラムパッケージが第2のプログラムパッケージにプロセッサまたはコ ンピュータの中心部を引き渡す前に、このプログラムパッケージは、第2のプロ グラムパッケージに割り付けられ、そのプログラムパッケージからのみ命令を受 ける周辺機器を、周辺機器がその入出力部で何の命令も受取らない状態に切替え る。この場合、この周辺機器のレジスタへの読取りアクセスは完全に受入れ状態 のままにある。この周辺機器のブロッキングの後、第2のプログラムパッケージ がプロセッサもしくはコンピュータ中心部を受け取った場合、第2のプログラム パッケージはその時点で大抵の場合は自ら起動することができる。もしプログラ ムエラーあるいはその他のエラーにより第2のプログラムパッケージが規格に合 致しない方法で第1のプログラムパッケージの周辺機器に書き込みアクセスしよ うとする場合、ブロックされた周辺機器はそこに送られた入力を無視し実行しな いであろう。 まだ発生するかも知れない唯一のエラーは、第2のプログラムパッケージが抑 止信号を取り消し、それにより第1のプログラムパッケージに属する当該の周辺 機器が第2のプログラムパッケージの命令に間違って従うことである。 けれども第2のプログラムパッケージが、プログラムの対応箇所に到達したた めに自発的にあるいは外部からの妨害により必然的にプロセッサを解放した直後 、第1のプログラムパッケージは抑止ラインの状態を確かめることにより第2の プログラムパッケージのこの敵対的関係を知らされる。この場合もし第1のプロ グラムパッケージが抑止ラインでの操作を識別するようであれば、第1のプログ ラムパッケージは秩序正しい方法でこのシステムアーキテクチャに属する全体の システムを停止させることができる。 この新しいシステムアーキテクチャは安全性をできるだけ高めるために、さら に他の安全手段を付加される。この点において、上述のシステムアーキテクチャ は、安全と見なされるシステム全体の一部であって、システムの安全性は隣接チ ャネル及びそのデータの相互の照会及び検査により安全に保護される。 用途に応じて、第1の周辺機器は専ら第1のプログラムパッケージに割り付け られるか、または、第1の周辺機器の一部が少なくとも、有効な方法で両方のプ ログラムパッケージから書き込みと読み込み、あるいはそのどちらかによってア クセスされる周辺機器になることもあり得る。 2つのプログラムパッケージが互いにどのように配置されるかによって、両方 のプログラムパッケージが相互に通信できる記憶領域を持つことは望ましい。両 方のプログラムパッケージは順次プロセッサを使用し、同時に作動し得ないから である。従ってこれらプログラムパッケージは通信やデータが取り交わせる共通 の「メールボックス」を必要とする。 プログラムパッケージの連絡に用いられる記憶部分は主として第2の記憶装置 内に収められていることが望ましい。それにより第1の記憶装置内にある第1の プログラムパッケージのデータや命令が第2のプログラムパッケージのエラー挙 動によって影響されないように確実に保証される。 第1の記憶装置が専ら第1のプログラムパッケージに割り付けられている場合 は、特に信頼性の高いシステムが実現する。同様なことは基本的に第2のプログ ラムパッケージに対しても成り立つので、もう一つの記憶領域がプログラムパッ ケージのための連絡領域として用意される。 他の処置によってある特定のエラーが識別できる場合には、両方の記憶装置を ハードウエアによって一つの記憶装置に収納し、アドレスを通してだけ互いを区 別することができる。またこれとは反対に記憶装置へのアドレス指定のエラーが 予想されたり、あるいは記憶部分にその他のエラーが心配される場合には、両方 の記憶装置に対してハードウエアにより分けられた記憶装置を使用すれば有効で ある。つまり第1と第2の記憶装置は別々のメモリーチップに収納される訳であ る。 第1のプログラムパッケージがより高い優先順位を持っている。つまりこのプ ログラムパッケージは、制御機能を実行するために、第2のプログラムパッケー ジの規格に合致しない挙動の場合でさえ規定の時間内にプロセッサを取り戻さな ければならない。しかし第2のプログラムパッケージがエンドレスループに捉え られ、そしてこのプログラムパッケージが自発的にプロセッサに応答するプログ ラム箇所にもはや到達しない場合には、状況次第ではそうならないことがある。 このようなエラーをなくすために、プロセッサには主にタイマーをつないだ割り 込み制御が設けられる。これによりプロセッサは強制的に第2のプログラムパッ ケージを取り除くことができるようになり、第1のプログラムパッケージが再び プロセッサを獲得する。 第1のプロセッサと平行して、第1のプログラムパッケージに類似したプログ ラムが走るもう一つのプロセッサが少なくとも1つ存在し、結果に違いがあれば 被制御装置を有効で安全な方法で停止させるために、両方のプロセッサまたはプ ログラムパッケージが常にデータや計算結果を互いに比較できればシステム全体 の安全性はさらに高まる。 例えば、両方のプログラムコードは異なった形態になっているが、プログラム パッケージに配分されたプロセッサの周辺機器から見た第3のプロセッサ上で動 くプログラムパッケージは、その周辺機器から見た第1のプログラムパッケージ と同じ挙動を示すことがある。この異なったプログラムコードの形態は、第1と 第2のプロセッサが例えばレジスタ長または使用できるコマンドの面で異なって いる場合は、必然的に得られることになる。 最後に、第1のプログラムパッケージがプロセッサを占有していない時に、第 2のプログラムパッケージが不当に抑止入力部の信号を変更して、周辺機器のデ ータを変更したかどうかを検査するために、別のプロセッサを併用することがで きる。第1のプログラムパッケージは復帰後、周辺機器からデータを読み、第3 のプログラムパッケージがその周辺機器から得たデータと比較することができる 。そこに違いが発生したら直ちにシステムは再び被制御機械を停止させることが できる。 その他の点では本発明の発展的形成は従属請求項の主題である。さらに従属請 求項は任意に組合せできることが容易に分かる。他のシステム環境の構成は新し いシステムアーキテクチャに対して重要な役割をここでは全くあるいは殆ど果た していない。 図面には本発明の主題の実施態様が下記のように示されている。 図1は、新規なシステムアーキテクチャのブロックダイアグラム、 図2は、第1のプロセッサ上で動作する両プログラムパッケージの時経的挙動 を示す図である。 図1のブロックダイアグラムにはプロセス制御のための新しいシステムアーキ テクチャ1が図解されている(制御されるプロセス自体は図示されていないが、 工作機械でも化学プラントあるいはこれの類でもよい)。このシステムアーキテ クチャ1は第1のプロセッサ2と第2のプロセッサ3を有し、通信ライン4を通 して互いに接続されている。プロセッサ2には同じく通信ライン6及び7を通じ て2つの互いに分離された記憶装置4と5が接続されている。この2つの記憶装 置4と5は物理的に分離されたハードウエアの記憶モジュールとして形成されて いる。 少なくとも第1のプロセッサ2は、時計またはタイマー9が接続された入力部 8を備える割込制御部を備えている。 選択されたプロセッサのアーキテクチャによっては、タイマー9はプロセッサ 2自体の構成要素であってもよい。 バスシステムまたは対応する通信ライン11を経由して第1のプロセッサ2に は、周辺機器の2つのグループ12と13が接続されている。 ここで周辺機器というのは、工程又は機械の制御において、プロセス制御のた めに使用されるハードウエアをいう。この場合、制御されるプロセスの情報を制 御部にただ報告するだけの周辺機器と、例えば、リレー、電磁バルブ、電気機械 的連動装置を作動させることにより、制御命令をプロセスの状態変化に変換する 周辺機器とは区別される。 単に制御部にのみ情報を伝達する周辺機器の例として、例えば温度や位置の情 報を制御部に伝える周辺機器12aを示す。この場合、ブロックで囲んだ部分は 、物理的信号を通信線11と第1のプロセッサ2の当該の入力接続端子からなる インタフェースに適合する電気量に変換するために不可欠なすべての必要なハー ドウエアを表すものとする。周辺機器16aに対して基本的に読取りを行うアク セスは、周辺機器12aの内部に状態変化を引き起こす書込みアクセスも可能で あることを意味しない。第2の周辺機器12bは、第1のプロセッサ2から通信 線11を経て送られる情報又は命令を物理的量に変換するすべての周辺機器を表 す。例えば、インタフェース12bを介して、概略図で示唆した電磁弁14を操 作することによって、実行中の被制御プロセスを直接制御する。その他の電気機 械的変換装置、例えば直流又は交流電動機、加熱装置、点火装置等もこの周辺機 器となりうる。 2つの周辺機器12aと12bの間の破線15は、さらに多くの周辺機器が存 在しうること、そして原則的には周辺機器12aと12bだけが存在しているこ とを示唆する。 2つの周辺機器12a及び12bは通信線11の他に抑止入力部16a又は1 6bを夫々備えており、これらの抑止入力は共通の抑止線17に接続されている 。抑止線17は抑止入力16a及び16bと第1のプロセッサ2の当該の入出力 ポート18を連絡する。 周辺機器群の第2グループは第1のグループに類似した構成になっている。つ まりこれもまた情報を第1のプロセッサ2に供給する周辺機器と、第1のプロセ ッサ2の命令を然るべき物理的あるいは電気的量に変換する周辺機器とから成っ ている。第2グループ13のこれら周辺機器13aと13bは、制御対象プロセ スの方向における出力側では周辺機器12aと12bとは異なっている。 第2のプロセッサ3は冗長度を高めるために使われる。そのためにこのプロセ ッサは第1のプロセッサ2とハード面で異なっている。つまり第2のプロセッサ は例えば他の命令文と別のレジスタ長を持っている。さらにこれは独自のチップ 内に収められているか、あるいは時には独自の導体基板上に配置されることもあ る。両方のプロセッサ2と3が当該の周辺機器12もしくは13を経由して同じ 出力命令を出す場合にプロセスまたは機械の状況変化が初めて行われるように、 第2のプロセッサ3は、通信ライン19を通してそのプロセッサに割り当てられ た記憶装置20と、またほかの通信ライン22を経由して固有の一組の周辺機器 群23とつながれている。これらの周辺機器群は、制御すべきプロセスの視点か ら第1のグループ12の周辺機器12aと12bと同じ機能を持っていて、さら に場合によっては命令の形式に関する限り、プロセスに向かって出力側でAND 結合されている。 新しいシステムアーキテクチャ1により2種類のプログラムパッケージを実行 させることが可能である。この場合、一つのプログラムパッケージは検証され安 全点検されたプログラムパッケージであり、もう一つの第2のプログラムパッケ ージは安全性に対してそれほど高くない要求が課せられているプログラムパッケ ージである。プログラムデータが周辺機器23からのものでないかあるいはそこ で保持されている限り、信頼しうるプログラムパッケージはプロセッサ3にも対 応物が配置され、また専ら記憶装置21内にのみ存在する対応するプログラムに よって実現される。 第1のプロセッサ2では、制御されるプロセスの安全性にとって重要なプログ ラムパッケージ(以下第1のプログラムパッケージと称す)が実行される。制御 されるプロセスの安全性にとって決定的ではない第2のプログラムパッケージも 同様である。第1のプログラムパッケージは記憶装置4に収められている1つの プログラムあるいは1組のプログラムにより実現される。同様に、1つのプログ ラム又は1組のプログラムからなる第2のプログラムパッケージとも記憶装置5 に格納されている。 第1のプログラムパッケージは安全点検されているので、第2のグループ12 の周辺機器に応答したり、また周辺機器を経由して制御されるプロセスないしは 機械に積極的にアクセスし、そこで状況変化を生じさせる命令を出力する権能を 有し、またそうなるように設計されている。このような周辺機器の具体例の1つ が周辺機器12bである。 また、第1のプログラムパッケージはプロセスからの情報を、例えば周辺機器 12aからプログラムパッケージに伝達する周辺機器12へもアクセスする。 さらに詳しく記述するためにまず、第2のプログラムパッケージは専ら第2グ ループ13の周辺機器と共に作動する、つまり第1のグループ12からデータを 受取ることもなく、また第1のグループ12のこの周辺機器に書込みアクセスも しないものと仮定する。この仮定は第2のプログラムパッケージのためのエラー のないコンセプトに対して、またこのエラーのないコンセプトがエラーを伴わず に当該のプログラムに組み入れられるという条件の下で適用される。 さらなる機能と動作の以下の説明では、プログラムパッケージに対する初期設 定局面がすでに終了して、システムが通常操作にあると仮定しよう。この状況下 では第1のプロセッサ2で第1と第2のプログラムパッケージが周期的に交互に 動作する。上のクロスバーに「Prog.I」と表示されるように、第1のプロ グラムパッケージがアクティブになっているとき、つまり制御すべきプロセスか らデータを受け取り、また必要ならば、然るべき命令をプロセスに出す時点でそ の動作が観察される。同時に、この間、第1のプログラムパッケージは、絶えず その測定および計算したデータを、第2のプロセッサ3上で動くプログラムパッ ケージが周辺機器から受取ったりあるいは得られたデータから計算した然るべき データと比較する。この比較によって相違がないことが示されると、システムは 継続して動作する。しかし、2つのプロセッサ2と3が食い違いを検出すると、 あらかじめ決められたルーチンに従って直ちにプロセス全体が停止される。 そうでない場合、つまり両方のプロセッサ2と3のデータ比較によってエラー が検知されない場合、第1のプログラムパッケージは制限時間内に、第1のプロ グラムパッケージがプロセッサ2をもはや必要としない場所に到達する。この場 所に達するとまず第2のプログラムパッケージから然るべき出力部分18を通し て第1グループ12の周辺機器群の抑止入力部16aと16bには抑止信号が発 せられる。これにより第1グループ12の周辺機器群は、通信ライン11を経由 して送られてくるかもしれない、そして自分の状態を変化させるかもしれない書 込み信号を無視する状態になる。けれども周辺機器もしくは付属のインターフェ ースカードが通信ライン11を経てデータを問い合わせるという意味での読取り アクセスは可能である。 第1のプログラムパッケージがその抑止信号をその周辺機器12に発信した後 、そのプログラムパッケージは第1のプロセッサ2を解放する。第1のプログラ ムパッケージによる第1のプロセッサ2の解放により、記憶装置5に収められて いる第2のプログラムパッケージが第2のプロセッサ2を受取り、そしてそれに より第2のプログラムパッケージに割り付けられた周辺機器13を操作する能力 を獲得する。第2のプログラムパッケージがエラーなしに作動すると仮定すると 、このプログラムパッケージは、第1のプログラムパッケージに割り付けられて いる周辺機器12に書き込みアクセスを行わない。即ち、状態変化を行わない。 しかし、第2のプログラムパッケージがプログラムエラーまたはその他のエラー によりこれを行うかもしくは試みたとしても、書き込みアクセスは何の働きもし ない。その理由は、抑止入力16aと16bから周辺機器12は書き込みアクセ スに対してブロックされているためである。 あらかじめ設定された時間が経過する前に、第2のプログラムパッケージは自 主的に第1のプロセッサ2を引き渡すプログラム箇所に達する。そのあと第1の プロセッサ2は再び第1のプログラムパッケージをスタートさせることができる 。この第1のプログラムパッケージは先ず、周辺機器12が以前と同様抑止信号 を持っているかどうかを調べる。次に第1のプロセッサが再びその周辺機器12 と正常に通信できるように抑止信号が解除される。それから第1のプロセッサ2 の第1のプログラムパッケージと第2のプロセッサ3上で動くプログラムパッケ ージとの間でデータ比較が行われ、この比較で違いがないことが示されると、第 1のプログラムパッケージは第1のプロセッサ2で正常に実行される。 これに対して第1のプログラムパッケージの再始動の際、このプログラムパッ ケージは抑止信号がもはや存在しないことを確認すると、第1のプログラムパッ ケージは、第2のプログラムパッケージが規格に合致した挙動をしなかったもの として、また無効動作によって制御命令を然るべき周辺機器12を通して伝達し ようとしたものとしてスタートする。これは危険なエラー挙動であるので、その あと直ちに制御されたプロセスが停止する。 第1のプログラムパッケージのもう一つのエラーは、その間に周辺機器12に 書込みアクセスができるように、第1のプログラムパッケージが抑止信号を消し てそのあと再び書込むことに原因があることも考えられる。第1のプログラムパ ッケージのデータと、プログラムパッケージが第2のプロセッサ3で保持してい るデータとの比較によりこのようなエラー挙動を検出する。それによって安全技 術面で全く検査を受けていない第2のプログラムパッケージが、概念的エラーあ るいはそれ以外のエラーのために安全技術の検査をされた第1のプログラムパッ ケージを妨害しないことが非常に高い信頼度でもって保証されている。それにも かかわらず2つのプログラムパッケージは一つのプロセッサ上で動くことができ 、また場合によっては当該のプロセッサの方向にデータを伝達するのみの周辺機 器を共用することさえできる。第2のプログラムパッケージを作成するユーザは 安全技術面のすべての命令実行サイクルを第1のプログラムパッケージに収納す れば、複雑なエラー解析やエラールーチン作成の手間をセーブすることができ、 また複雑なエラー解析はこのプログラムパッケージに対してだけ行えばよい。第 2のプログラムパッケージの追加的な変更も、新しいシステムアーキテクチャの プログラミングがはるかに簡易化されているために簡単に行える。特に、監督官 庁は第1のプログラムパッケージを含むハードだけを試験したり受入検査すれば 十分である。この2分割がなかったら、安全性に関係のない命令列の比較的小さ な変更を行っても、必ず監督官庁による新たな検査がユーザに義務づけられるで あろう。 上述の方法で第1と第2のプログラムパッケージは第1のプロセッサ2の上で 常に入れ替わる。この場合2つのプログラムパッケージはタイムシェアリング機 能に基づき第1のプロセッサを獲得し、エラーが無いという前提で、このプロセ ッサをタイムスライス内で自発的に引き渡す。けれども両方のプログラムパッケ ージのうちの一つがエンドレスループに迷い込んだ場合は、プロセッサ2が復旧 する前にタイマー9が作動し、そのあと割込み入力部8で割込みを行う。これを きっかけとしてそのとき動いているプログラムパッケージを打切るアラームルー チンへプロセッサを移行させ、エラーが発生した箇所が安全に関係した部分なの かあるいは関係しない部分なのかにより、エラーメッセージだけを発するかある いはシステムを並列的に停止させる。 最後に、例えば信頼のない第2のプログラムパッケージが、第1の信頼しうる プログラムパッケージが計算したデータを必要とする場合、両方のプログラムパ ッケージを共通の記憶域25を通して互いに通信させることは可能である。従っ て第1のプログラムパッケージの危険性をなくすために、連絡領域は、第2のプ ログラムパッケージが存在し、そのプログラムパッケージがデータを保持してい る記憶装置5に移される。これによって連絡に用いられるこの記憶域25への誤 った書込みアクセスは、検証されたプログラムパッケージを侵害するようなこと はない。 このシステムアーキテクチャは、少なくとも2個のプロセッサを使用する。こ れらのプロセッサは1つのプロセスを共同で制御し、そのデータを絶えず互いに 比較する。2つのプロセッサの一方では、可能な誤りに関して検査されたプログ ラムパッケージと未検査のプログラムパッケージが実行される。未検査のプログ ラムパッケージが検査済のプログラムパッケージを妨害することがないようにす るために、検査済のプログラムパッケージと共同で動作する周辺機器は抑止入力 を備えており、検査済のプログラムパッケージは未検査のプログラムパッケージ に管理を引き渡す前に、それに割付けられた周辺機器を抑止入力により禁止する 。
【手続補正書】特許法第184条の8第1項 【提出日】1996年11月12日 【補正内容】 明細書 システムアーキテクチャ 機械、それも多数の独立軸を擁しているために基本的な制御コストのかかる機 械の操作は近年ますます自動化されている。これらの制御は、人間や機械に対す る危険をできるだけ排除するため、少なくとも誤った操作が人間や機械に対して 悲惨な結果を招きうるような制御ステートメントに関しては、かなりの程度まで 信頼できうるものでなければならない。 過去においてはこのような場合には、リレーや保護機器が比較的確実な制御手 段であるという考えのもとに、主にリレー技術に信頼が置かれてきた。もっとも この方式ではリレーがその機能の面で交互に監視ないしは検査されるために、過 剰なほどの検査プログラムの類を準備する必要があった。例えば偏心プレスなど の比較的単純な制御用でさえこのリレーのコストは必要なスペースからすると莫 大なものであった。エラーを検知したり、エラーの検知の際に装置を安全な側に 停止させるような複雑で確実な制御方式は、スペースの制約からリレー技術では 実用化していない。 従って、電子部品は状況によっては外部の影響をより受けやすく、また複合的 エラーも起こりやすいことが分かっていたにもかかわらず、電気機械部品の代わ りに電子部品を用いた制御装置を構築する方向が取られた。そしてこの問題点を 少しでも克服するために、チャネルが互いに監視し合う制御装置が多重チャネル の仕様で作られた。 さらに自動化が進んだため、マイクロプロセッサによる制御への移行が必要に なっているが、これにはエラーのもう一つの特性、つまりソフトウエアのエラー という問題が加わった。 しかし、マイクロプロセッサやプログラムを使った制御方式は、ユーザがその 制御機構を拡張したり、状況によっては安全性と関係のない他の機械や機械の動 作をその制御機構内に組み込むことが同時に可能となる場合にしか意味を持たな い。この場合必ずしも信頼できるとはいえない諸々の機能を制御するこのプログ ラムの一部によって、信頼しうる機能を監視するプログラム部分が影響を受ける ことは絶対に避けなければならない。さもなければその原因を実際には見つけ出 せないような重大なトラブルに到ることもあり得るだろう。というのはこれらの トラブルは状況によってはある決まった入力信号の時間的相関関係に依存してい るためである。 それに加えて、1つのプロセッサ上でいくつかのプログラムを時間的に重畳し て実行させることは、ツィルカー著「マルチタスクの実際」、フランツィス出版 社(1987)、11乃至14ページに記載されているように、技術水準に属す る。これにおいては、相互に交換されるプログラムが予め定められた時間後、イ ンタラプトにより、任意にプロセッサを、例えば、システム中心部に戻し、その 後プロセッサがそのプロセッサの作動に似たプログラムに基づいて作動開始をす るように、プログラムが書かれている。 いわゆる禁止−入力部で、コンピュータ操作装置内の構成要素又は1群の構成 要素の作動を停止して、これらの構成要素が、例えば、バスラインに乗せられて 他の構成要素を指定する情報を受けるのを防止するようになっている。このよう な操作については、例えば、 ウイリアムズ著「マイクロプロセッサベースのシ ステムのトラブルシューティング」、パーガモンプレス社(1984)、9乃至 12ページに記載されている。 更にまた、米国特許第4484270号から、多数のデータ処理システムを予 め備えた中央制御装置が知られている。各データ処理システムは、更にユニット に分けられ、これらユニットの各々から一つのデータ処理システムの特徴が得ら れるようになっている。これらすべてのユニットはインターフェースシステムを 介して共通の周辺機器に接続されている。 このような現状に基づいて、本発明の課題は、安全点検されないプログラムが 安全点検されたプログラムの進行に望ましくない影響を与えたり、あるいは妨害 する危険性が発生することなく、点検されたプログラムとされないプログラムを 一台のプロセッサ上で実行させることが可能なシステムアーキテクチャを提供す ることである。 この課題は発明の趣旨に則って請求項1の特徴を有するシステムアーキテクチ ャにより解決される。 電気のコスト及び構成部材のコストから考えて、2つの異なるプログラムを1 台のプロセッサで実行させることは有意義である。この場合、2つのプログラム パッケージが互いに相互作用を行うために1つの制御部が常に存在するのが望ま しい。抑止入力を持った周辺機器の利用によって、第1のプログラムパッケージ がその内容を知らないコマンドを、第2のプログラムパッケージが周辺機器に絶 対に出力できないように安全対策を講じることは可能である。例えば第1のプロ グラムパッケージが信頼しうる検証されたプログラムパッケージである場合に、 このプログラムパッケージが第2のプログラムパッケージにプロセッサまたはコ ンピュータの中心部を引き渡す前に、このプログラムパッケージは、第2のプロ グラムパッケージに割り付けられ、そのプログラムパッケージからのみ命令を受 ける周辺機器を、周辺機器がその入出力部で何の命令も受取らない状態に切替え る。この場合、この周辺機器のレジスタへの読取りアクセスは完全に受入れ状態 のままにある。この周辺機器のブロッキングの後、第2のプログラムパッケージ がプロセッサもしくはコンピュータ中心部を受け取った場合、第2のプログラム パッケージはその時点で大抵の場合は自ら起動することができる。もしプログラ ムエラーあるいはその他のエラーにより第2のプログラムパッケージが規格に合 致しない方法で第1のプログラムパッケージの周辺機器に書き込みアクセスしよ うとする場合、ブロックされた周辺機器はそこに送られた入力を無視し実行しな いであろう。 まだ発生するかも知れない唯一のエラーは、第2のプログラムパッケージが抑 止信号を取り消し、それにより第1のプログラムパッケージに属する当該の周辺 機器が第2のプログラムパッケージの命令に間違って従うことである。 けれども第2のプログラムパッケージが、プログラムの対応箇所に到達したた めに自発的にあるいは外部からの妨害により必然的にプロセッサを解放した直後 、第1のプログラムパッケージは抑止ラインの状態を確かめることにより第2の プログラムパッケージのこの敵対的関係を知らされる。この場合もし第1のプロ グラムパッケージが抑止ラインでの操作を識別するようであれば、第1のプログ ラムパッケージは秩序正しい方法でこのシステムアーキテクチャに属する全体の システムを停止させることができる。 この新しいシステムアーキテクチャは安全性をできるだけ高めるために、さら に他の安全手段を付加される。この点において、上述のシステムアーキテクチャ は、安全と見なされるシステム全体の一部であって、システムの安全性は隣接チ ャネル及びそのデータの相互の照会及び検査により安全に保護される。 用途に応じて、第1の周辺機器は専ら第1のプログラムパッケージに割り付け られるか、または、第1の周辺機器の一部が少なくとも、有効な方法で両方のプ ログラムパッケージから書き込みと読み込み、あるいはそのどちらかによってア クセスされる周辺機器になることもあり得る。 2つのプログラムパッケージが互いにどのように配置されるかによって、両方 のプログラムパッケージが相互に通信できる記憶領域を持つことは望ましい。両 方のプログラムパッケージは順次プロセッサを使用し、同時に作動し得ないから である。従ってこれらプログラムパッケージは通信やデータが取り交わせる共通 の「メールボックス」を必要とする。 プログラムパッケージの連絡に用いられる記憶部分は主として第2の記憶装置 内に収められていることが望ましい。それにより第1の記憶装置内にある第1の プログラムパッケージのデータや命令が第2のプログラムパッケージのエラー挙 動によって影響されないように確実に保証される。 第1の記憶装置が専ら第1のプログラムパッケージに割り付けられている場合 は、特に信頼性の高いシステムが実現する。同様なことは基本的に第2のプログ ラムパッケージに対しても成り立つので、もう一つの記憶領域がプログラムパッ ケージのための連絡領域として用意される。 他の処置によってある特定のエラーが識別できる場合には、両方の記憶装置を ハードウエアによって一つの記憶装置に収納し、アドレスを通してだけ互いを区 別することができる。またこれとは反対に記憶装置へのアドレス指定のエラーが 予想されたり、あるいは記憶部分にその他のエラーが心配される場合には、両方 の記憶装置に対してハードウエアにより分けられた記憶装置を使用すれば有効で ある。つまり第1と第2の記憶装置は別々のメモリーチップに収納される訳であ る。 第1のプログラムパッケージがより高い優先順位を持っている。つまりこのプ ログラムパッケージは、制御機能を実行するために、第2のプログラムパッケー ジの規格に合致しない挙動の場合でさえ規定の時間内にプロセッサを取り戻さな ければならない。しかし第2のプログラムパッケージがエンドレスループに捉え られ、そしてこのプログラムパッケージが自発的にプロセッサに応答するプログ ラム箇所にもはや到達しない場合には、状況次第ではそうならないことがある。 このようなエラーをなくすために、プロセッサには主にタイマーをつないだ割り 込み制御が設けられる。これによりプロセッサは強制的に第2のプログラムパッ ケージを取り除くことができるようになり、第1のプログラムパッケージが再び プロセッサを獲得する。 第1のプロセッサと平行して、第1のプログラムパッケージに類似したプログ ラムが走るもう一つのプロセッサが少なくとも1つ存在し、結果に違いがあれば 被制御装置を有効で安全な方法で停止させるために、両方のプロセッサまたはプ ログラムパッケージが常にデータや計算結果を互いに比較できればシステム全体 の安全性はさらに高まる。 例えば、両方のプログラムコードは異なった形態になっているが、プログラム パッケージに配分されたプロセッサの周辺機器から見た第3のプロセッサ上で動 くプログラムパッケージは、その周辺機器から見た第1のプログラムパッケージ と同じ挙動を示すことがある。この異なったプログラムコードの形態は、第1と 第2のプロセッサが例えばレジスタ長または使用できるコマンドの面で異なって いる場合は、必然的に得られることになる。 最後に、第1のプログラムパッケージがプロセッサを占有していない時に、第 2のプログラムパッケージが不当に抑止入力部の信号を変更して、周辺機器のデ ータを変更したかどうかを検査するために、別のプロセッサを併用することがで きる。第1のプログラムパッケージは復帰後、周辺機器からデータを読み、第3 のプログラムパッケージがその周辺機器から得たデータと比較することができる 。そこに違いが発生したら直ちにシステムは再び被制御機械を停止させることが できる。 その他の点では本発明の発展的形成は従属請求項の主題である。さらに従属請 求項は任意に組合せできることが容易に分かる。他のシステム環境の構成は新し いシステムアーキテクチャに対して重要な役割をここでは全くあるいは殆ど果た していない。 図面には本発明の主題の実施態様が下記のように示されている。 図1は、新規なシステムアーキテクチャのブロックダイアグラム、 図2は、第1のプロセッサ上で動作する両プログラムパッケージの時経的挙動 を示す図である。 図1のブロックダイアグラムにはプロセス制御のための新しいシステムアーキ テクチャ1が図解されている(制御されるプロセス自体は図示されていないが、 工作機械でも化学プラントあるいはこれの類でもよい)。このシステムアーキテ クチャ1は第1のプロセッサ2と第2のプロセッサ3を有し、通信ライン4を通 して互いに接続されている。プロセッサ2には同じく通信ライン6及び7を通じ て2つの互いに分離された記憶装置4と5が接続されている。この2つの記憶装 置4と5は物理的に分離されたハードウエアの記憶モジュールとして形成されて いる。 少なくとも第1のプロセッサ2は、時計またはタイマー9が接続された入力部 8を備える割込制御部を備えている。 選択されたプロセッサのアーキテクチャによっては、タイマー9はプロセッサ 2自体の構成要素であってもよい。 バスシステムまたは対応する通信ライン11を経由して第1のプロセッサ2に は、周辺機器の2つのグループ12と13が接続されている。 ここで周辺機器というのは、工程又は機械の制御において、プロセス制御のた めに使用されるハードウエアをいう。この場合、制御されるプロセスの情報を制 御部にただ報告するだけの周辺機器と、例えば、リレー、電磁バルブ、電気機械 的連動装置を作動させることにより、制御命令をプロセスの状態変化に変換する 周辺機器とは区別される。 単に制御部にのみ情報を伝達する周辺機器の例として、例えば温度や位置の情 報を制御部に伝える周辺機器12aを示す。この場合、ブロックで囲んだ部分は 、物理的信号を通信線11と第1のプロセッサ2の当該の入力接続端子からなる インタフェースに適合する電気量に変換するために不可欠なすべての必要なハー ドウエアを表すものとする。周辺機器12aに対して基本的に読取りを行うアク セ スは、周辺機器12aの内部に状態変化を引き起こす書込みアクセスも可能であ ることを意味しない。第2の周辺機器12bは、第1のプロセッサ2から通信線 11を経て送られる情報又は命令を物理的量に変換するすべての周辺機器を表す 。例えば、インタフェース12bを介して、概略図で示唆した電磁弁14を操作 することによって、実行中の被制御プロセスを直接制御する。その他の電気機械 的変換装置、例えば直流又は交流電動機、加熱装置、点火装置等もこの周辺機器 となりうる。 2つの周辺機器12aと12bの間の破線15は、さらに多くの周辺機器が存 在しうること、そして原則的には周辺機器12aと12bだけが存在しているこ とを示唆する。 2つの周辺機器12a及び12bは通信線11の他に抑止入力部16a又は1 6bを夫々備えており、これらの抑止入力は共通の抑止線17に接続されている 。抑止線17は抑止入力16a及び16bと第1のプロセッサ2の当該の入出力 ポート18を連絡する。 周辺機器群の第2グループは第1のグループに類似した構成になっている。つ まりこれもまた情報を第1のプロセッサ2に供給する周辺機器と、第1のプロセ ッサ2の命令を然るべき物理的あるいは電気的量に変換する周辺機器とから成っ ている。第2グループ13のこれら周辺機器13aと13bは、制御対象プロス の方向における出力側では周辺機器12aと12bとは異なっている。 第2のプロセッサ3は冗長度を高めるために使われる。そのためにこのプロセ ッサは第1のプロセッサ2とハード面で異なっている。つまり第2のプロセッサ は例えば他の命令文と別のレジスタ長を持っている。さらにこれは独自のチップ 内に収められているか、あるいは時には独自の導体基板上に配置されることもあ る。両方のプロセッサ2と3が当該の周辺機器12もしくは13を経由して同じ 出力命令を出す場合にプロセスまたは機械の状況変化が初めて行われるように、 第2のプロセッサ3は、通信ライン19を通してそのプロセッサに割り当てられ た記憶装置20と、またほかの通信ライン22を経由して固有の一組の周辺機器 群23とつながれている。これらの周辺機器群は、制御すべきプロセスの視点か ら第1のグループ12の周辺機器12aと12bと同じ機能を持っていて、さら に場合によっては命令の形式に関する限り、プロセスに向かって出力側でAND 結合されている。 新しいシステムアーキテクチャ1により2種類のプログラムパッケージを実行 させることが可能である。この場合、一つのプログラムパッケージは検証され安 全点検されたプログラムパッケージであり、もう一つの第2のプログラムパッケ ージは安全性に対してそれほど高くない要求が課せられているプログラムパッケ ージである。プログラムデータが周辺機器23からのものでないかあるいはそこ で保持されている限り、信頼しうるプログラムパッケージはプロセッサ3にも対 応物が配置され、また専ら記憶装置21内にのみ存在する対応するプログラムに よって実現される。 第1のプロセッサ2では、制御されるプロセスの安全性にとって重要なプログ ラムパッケージ(以下第1のプログラムパッケージと称す)が実行される。制御 されるプロセスの安全性にとって決定的ではない第2のプログラムパッケージも 同様である。第1のプログラムパッケージは記憶装置4に収められている1つの プログラムあるいは1組のプログラムにより実現される。同様に、1つのプログ ラム又は1組のプログラムからなる第2のプログラムパッケージとも記憶装置5 に格納されている。 第1のプログラムパッケージは安全点検されているので、第2のグループ12 の周辺機器に応答したり、また周辺機器を経由して制御されるプロセスないしは 機械に積極的にアクセスし、そこで状況変化を生じさせる命令を出力する権能を 有し、またそうなるように設計されている。このような周辺機器の具体例の1つ が周辺機器12bである。 また、第1のプログラムパッケージはプロセスからの情報を、例えば周辺機器 12aからプログラムパッケージに伝達する周辺機器12へもアクセスする。 さらに詳しく記述するためにまず、第2のプログラムパッケージは専ら第2グ ループ13の周辺機器と共に作動する、つまり第1のグループ12からデータを 受取ることもなく、また第1のグループ12のこの周辺機器に書込みアクセスも しないものと仮定する。この仮定は第2のプログラムパッケージのためのエラー のないコンセプトに対して、またこのエラーのないコンセプトがエラーを伴わず に当該のプログラムに組み入れられるという条件の下で適用される。 さらなる機能と動作の以下の説明では、プログラムパッケージに対する初期設 定局面がすでに終了して、システムが通常操作にあると仮定しよう。この状況下 では第1のプロセッサ2で第1と第2のプログラムパッケージが周期的に交互に 動作する。上のクロスバーに「Prog.I」と表示されるように、第1のプロ グラムパッケージがアクティブになっているとき、つまり制御すべきプロセスか らデータを受け取り、また必要ならば、然るべき命令をプロセスに出す時点でそ の動作が観察される。同時に、この間、第1のプログラムパッケージは、絶えず その測定および計算したデータを、第2のプロセッサ3上で動くプログラムパッ ケージが周辺機器から受取ったりあるいは得られたデータから計算した然るべき データと比較する。この比較によって相違がないことが示されると、システムは 継続して動作する。しかし、2つのプロセッサ2と3が食い違いを検出すると、 あらかじめ決められたルーチンに従って直ちにプロセス全体が停止される。 そうでない場合、つまり両方のプロセッサ2と3のデータ比較によってエラー が検知されない場合、第1のプログラムパッケージは制限時間内に、第1のプロ グラムパッケージがプロセッサ2をもはや必要としない場所に到達する。この場 所に達するとまず第2のプログラムパッケージから然るべき出力部分18を通し て第1グループ12の周辺機器群の抑止入力部16aと16bには抑止信号が発 せられる。これにより第1グループ12の周辺機器群は、通信ライン11を経由 して送られてくるかもしれない、そして自分の状態を変化させるかもしれない書 込み信号を無視する状態になる。けれども周辺機器もしくは付属のインターフェ ースカードが通信ライン11を経てデータを問い合わせるという意味での読取り アクセスは可能である。 第1のプログラムパッケージがその抑止信号をその周辺機器12に発信した後 、そのプログラムパッケージは第1のプロセッサ2を解放する。第1のプログラ ムパッケージによる第1のプロセッサ2の解放により、記憶装置5に収められて いる第2のプログラムパッケージが第1のプロセッサ2を受取り、そしてそれに より第2のプログラムパッケージに割り付けられた周辺機器13を操作する能力 を獲得する。第2のプログラムパッケージがエラーなしに作動すると仮定すると 、 このプログラムパッケージは、第1のプログラムパッケージに割り付けられてい る周辺機器12に書き込みアクセスを行わない。即ち、状態変化を行わない。し かし、第2のプログラムパッケージがプログラムエラーまたはその他のエラーに よりこれを行うかもしくは試みたとしても、書き込みアクセスは何の働きもしな い。その理由は、抑止入力16aと16bから周辺機器12は書き込みアクセス に対してブロックされているためである。 あらかじめ設定された時間が経過する前に、第2のプログラムパッケージは自 主的に第1のプロセッサ2を引き渡すプログラム箇所に達する。そのあと第1の プロセッサ2は再び第1のプログラムパッケージをスタートさせることができる 。この第1のプログラムパッケージは先ず、周辺機器12が以前と同様抑止信号 を持っているかどうかを調べる。次に第1のプロセッサが再びその周辺機器12 と正常に通信できるように抑止信号が解除される。それから第1のプロセッサ2 の第1のプログラムパッケージと第2のプロセッサ3上で動くプログラムパッケ ージとの間でデータ比較が行われ、この比較で違いがないことが示されると、第 1のプログラムパッケージは第1のプロセッサ2で正常に実行される。 これに対して第1のプログラムパッケージの再始動の際、このプログラムパッ ケージは抑止信号がもはや存在しないことを確認すると、第1のプログラムパッ ケージは、第2のプログラムパッケージが規格に合致した挙動をしなかったもの として、また無効動作によって制御命令を然るべき周辺機器12を通して伝達し ようとしたものとしてスタートする。これは危険なエラー挙動であるので、その あと直ちに制御されたプロセスが停止する。 第2のプログラムパッケージのもう一つのエラーは、その間に書込みアクセス ができるように、第2のプログラムパッケージが抑止信号を消してそのあと再び 書込むことに原因があることも考えられる。第1のプログラムパッケージのデー タと、プログラムパッケージが第2のプロセッサ3で保持しているデータとの比 較によりこのようなエラー挙動を検出する。それによって安全技術面で全く検査 を受けていない第2のプログラムパッケージが、概念的エラーあるいはそれ以外 のエラーのために安全技術の検査をされた第1のプログラムパッケージを妨害し ないことが非常に高い信頼度でもって保証されている。それにもかかわらず2つ のプログラムパッケージは一つのプロセッサ上で動くことができ、また場合によ っては当該のプロセッサの方向にデータを伝達するのみの周辺機器を共用するこ とさえできる。第2のプログラムパッケージを作成するユーザは安全技術面のす べての命令実行サイクルを第1のプログラムパッケージに収納すれば、複雑なエ ラー解析やエラールーチン作成の手間をセーブすることができ、また複雑なエラ ー解析はこのプログラムパッケージに対してだけ行えばよい。第2のプログラム パッケージの追加的な変更も、新しいシステムアーキテクチャのプログラミング がはるかに簡易化されているために簡単に行える。特に、監督官庁は第1のプロ グラムパッケージを含むハードだけを試験したり受入検査すれば十分である。こ の2分割がなかったら、安全性に関係のない命令列の比較的小さな変更を行って も、必ず監督官庁による新たな検査がユーザに義務づけられるであろう。 上述の方法で第1と第2のプログラムパッケージは第1のプロセッサ2の上で 常に入れ替わる。この場合2つのプログラムパッケージはタイムシェアリング機 能に基づき第1のプロセッサを獲得し、エラーが無いという前提で、このプロセ ッサをタイムスライス内で自発的に引き渡す。けれども両方のプログラムパッケ ージのうちの一つがエンドレスループに迷い込んだ場合は、プロセッサ2が復旧 する前にタイマー9が作動し、そのあと割込み入力部8で割込みを行う。これを きっかけとしてそのとき動いているプログラムパッケージを打切るアラームルー チンへプロセッサを移行させ、エラーが発生した箇所が安全に関係した部分なの かあるいは関係しない部分なのかにより、エラーメッヤージだけを発するかある いはシステムを並列的に停止させる。 最後に、例えば信頼のない第2のプログラムパッケージが、第1の信頼しうる プログラムパッケージが計算したデータを必要とする場合、両方のプログラムパ ッケージを共通の記憶域25を通して互いに通信させることは可能である。従っ て第1のプログラムパッケージの危険性をなくすために、連絡領域は、第2のプ ログラムパッケージが存在し、そのプログラムパッケージがデータを保持してい る記憶装置5に移される。これによって連絡に用いられるこの記憶域25への誤 った書込みアクセスは、検証されたプログラムパッケージを侵害するようなこと はない。 このシステムアーキテクチャは、少なくとも2個のプロセッサを使用する。こ れらのプロセッサは1つのプロセスを共同で制御し、そのデータを絶えず互いに 比較する。2つのプロセッサの一方では、可能な誤りに関して検査されたプログ ラムパッケージと未検査のプログラムパッケージが実行される。未検査のプログ ラムパッケージが検査済のプログラムパッケージを妨害することがないようにす るために、検査済のプログラムパッケージと共同で動作する周辺機器は抑止入力 を備えており、検査済のプログラムパッケージは未検査のプログラムパッケージ に管理を引き渡す前に、それに割付けられた周辺機器を抑止入力により禁止する 。 特許請求の範囲: 1. 下記のものを備えるシステムアーキテクチャ(1)、 第1のプロセッサ(2)、 第1のプロセッサに割り当てられた第1の記憶装置(4)、 入出力部および第1のプロセッサ(2)に結合された抑止入力部(16)を備 え、インターフェース装置等の、抑止入力部(16)に抑止信号が伝達されたと き、入力部を通して情報を受領しないように第1の周辺機器を抑止するためにこ の抑止入力が使われ、第1のプロセッサ(2)に割り当てられた第1の周辺機器 (12)、 第1のプロセッサ(2)で実行可能で、エラーのないことが検証されており、 少なくとも主に第1のプロセッサ(2)の第1の記憶装置(4)と相互に作用し 、第1のプロセッサ(2)で実行される場合、所定の条件に達したときに、第1 のプロセッサに割り当てられた周辺機器群(12)に抑止信号を出力し、また第 1のプロセッサ(2)を解放するように作動し、さらに、第1のプロセッサ(2 )を取り戻したら直ちに、抑止信号をキャンセルするように作動する、第1のプ ロセッサ(23)で実行可能な第1のプログラムパッケージ(Prog.I)、 第1のプロセッサ(2)に割り当てられた第2の記憶装置(5)、 第1のプロセッサ(2)に接続された入出力部を持つインターフェース装置な どの、第1のプロセッサ(2)に割り当てられた第2の周辺機器(13)、 少なくとも主に第1のプロセッサ(23)の第2の記憶装置と相互に作用し、 第1のプログラムパッケージ(Prog.I)よりもエラーのない確率が低く、 エラーのない動きの場合は、第1のプログラムパッケージ(Prog.I)に割 り当てられた周辺機器(12)の入出力部に主に読取りアクセスだけを行い、決 められた条件に達したときは第1のプロセッサ(2)を解放する、第1のプロセ ッサで動きうる第2のプログラムパッケージ(Prog.II)。 2. 第1の周辺機器群(12)の中で少なくとも1つは第1のプログラムパッ ケージ(Prog.I)用の周辺機器が存在することを特徴とする請求項1に基 づくシステムアーキテクチャ。 3. 第1の周辺機器群(12)の中で、有効な方法で第1のプログラムパッケ ージ(Prog.I)からもまた第2のプログラムパッケージ(Prog.II )からも書込みと読取り、あるいはどちらか一つだけでアクセスされる、少なく とも一つの周辺機器が存在することを特徴とする請求項1に基づくシステムアー キテクチャ。 4. 第1と第2のプログラムパッケージ(Prog.I、Prog.II)が それを通じて通信し合う記憶領域(25)が存在することを特徴とする請求項1 に基づくシステムアーキテクチャ。 5. 第1と第2のプログラムパッケージ(Prog.I、Prog.II)が それを通じて互いに通信し合う記憶領域(25)が、第1及び/又は第2の記憶 装置(4,5)、あるいは両方の記憶機器(4,5)の一方にだけ存在すること を特徴とする請求項1に基づくシステムアーキテクチャ。 6. 第1の記憶機器(4)が第1のプログラムパッケージ(Prog. I) に割り付けられていることを特徴とする請求項1に基づくシステムアーキテクチ ャ。 7. 第1と第2の記憶機器(4,5)がハードウエアとして共通の記憶装置で 実現されており、 記憶アドレスの第1のグループが第1の記憶装置(4)を、記憶アドレスの第 2のグループが第2の記憶装置(5)を形成していることを特徴とする請求項1 に基づくシステムアーキテクチャ。 8. 第1と第2の記憶機器が(4,5)がハードウエアとして別個の記憶装置 として実現されていることを特徴とする請求項1に基づくシステムアーキテクチ ャ。 9. 第1のプログラムパッケージ(Prog.I)が第1のプロセッサ(2) を取り戻したとき、抑止信号がまだ存在するか、又は自ら消去し又は取り消す前 に、その間に取り消されなかったか、を検査することを特徴とする請求項1に記 載のシステムアーキテクチャ。 10. 第1のプログラムパッケージ(Prog.I)が誤り防止機能を持つプ ログラムパッケージであることを特徴とする請求項1に基づくシステムアーキテ クチャ。 11. 第1のプロセッサ(2)がタイマー(9)を接続した割込み制御部(8 )を備えていること、また第1のプログラムパッケージ(Prog.I)が第1 のプロセッサ(2)を取り戻すように仕向ける条件が、タイマー(9)によって 起動される割込みであることを特徴とする請求項1に基づくシステムアーキテク チャ。 12. 当該のプログラムパッケージ(Prog.I、II)による第1のプロ セッサ(2)の解放の条件が、関係するプログラムパッケージ(Prog.I、 II)内の対応するプログラム命令文であることを特徴とする請求項1に基づく システムアーキテクチャ。 13. 第1のプログラムパッケージ(Prog.I)を形成している命令及び /又は第1のプログラムパッケージ(Prog.I)だけに割り当てられている データが、第1の記憶装置内に収められていることを特徴とする請求項1に基づ くシステムアーキテクチャ。 14. 第2のプログラムパッケージ(Prog.II)を形成している命令及 び/又は第2のプログラムパッケージ(Prog.II)だけに割り当てられて いるデータが、第2の記憶装置内に収められていることを特徴とする請求項1に 基づくシステムアーキテクチャ。 15. 第2のプロセッサ(3)、 第2のプロセッサに割り当てられた第3の記憶装置(21)、 第2のプロセッサ(23)と結合された入出力部を有する、インターフェー ス回路等の、第2のプロセッサ(3)に割り当てられた第3の周辺機器(23) 、そして 第2のプロセッサ(3)で実行され、第3の記憶機器(21)と相互に作用 し、第3の周辺機器群(23)とやりとりする第3のプログラムパッケージ、 を備えていることを特徴とする請求項1に基づくシステムアーキテクチャ。 16. 第1と第2のプロセッサ(2,3)が互いに異なっていることを特徴と する請求項15に基づくシステムアーキテクチャ。 17. 周辺機器(12)が機能に関して第3の周辺機器(23)と一致すると して、第3のプログラムパッケージが第3の周辺機器(23)に関連して、第1 のプログラムパッケージ(Prog.I)が周辺機器(12)に関連して振舞う のとおおむね又は正確に同様に振舞うことを特徴とする請求項15に記載のシス テムアーキテクチャ。 18. 第1(Prog.I)と第3のプログラムパッケージが、第2のプログ ラムパッケージ(Prog.II)との偶発的に起こるやりとりは別にして、同 じ機能をもたらすように設計されていることを特徴とする請求項15に基づくシ ステムアーキテクチャ。 19. 第1のプログラムパッケージ(Prog.I)と第3のプログラムパッ ケージは少なくとも一時的に互いに通信し合うことを特徴とする請求項15に基 づくシステムアーキテクチャ。 20. 通信が、両プログラムパッケージの各々により計算されたデータと、付 属する周辺機器群(12,13)から供給されるあるいは供給されたデータとの 比較を含んでいることを特徴とする請求項15に基づくシステムアーキテクチャ 。 21. さらにほかのプロセッサ及びプログラムパッケージ、特に、少なくとも もう一つのプロセッサを備えていることを特徴とする請求項15に基づくシステ ムアーキテクチャ。 22. システムアーキテクチャが機械の制御において実施されることを特徴と する前述のいくつかの、あるいは一つの請求項に基づくシステムアーキテクチャ 。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 バイシャール、クリストフ ドイツ連邦共和国、バイブリンゲン 71332、イム ホーエン ライム 15 (72)発明者 ボーンハース、クラウス ドイツ連邦共和国、シュツットガルト 70372、アバーリン−ヨルク−ストラーセ 15

Claims (1)

  1. 【特許請求の範囲】 1. 下記のものを備えるシステムアーキテクチャ(1)、 第1のプロセッサ(2)、 第1のプロセッサ(2)に割り当てられた第1の記憶装置(4)、 入出力部および第1のプロセッサ(2)に結合された抑止入力部(16)を備 え、インターフェース装置等の、抑止入力部(16)に抑止信号が伝達されたと き、入力部を通して情報を受領しないように第1の周辺機器を抑止するためにこ の抑止入力が使われ、第1のプロセッサ(23)に割り当てられた第1の周辺機 器(12)、 少なくとも主に第1のプロセッサ(23)の第1の記憶装置(4)と相互に作 用し、第1のプロセッサ(2)で実行される場合、所定の条件に達したときに、 第1のプロセッサに割り当てられた周辺機器群(12)に抑止信号を出力し、ま た第1のプロセッサ(2)を解放するように作動し、さらに、第1のプロセッサ (2)を取り戻したら直ちに、抑止信号をキャンセルするように作動する、第1 のプロセッサ(23)で実行可能な第1のプログラムパッケージ(Prog.I )、 第1のプロセッサ(2)に割り当てられた第2の記憶装置(5)、 第1のプロセッサ(2)に接続された入出力部を持つインターフェース装置な どの、第1のプロセッサ(2)に割り当てられた第2の周辺機器(13)、 少なくとも主に第1のプロセッサ(23)の第2の記憶装置と相互に作用し、 エラーのない動きの場合は、第1のプログラムパッケージ(Prog.I)に割 り当てられた周辺機器(12)の入出力部に主に読取りアクセスだけを行い、決 められた条件に達したときは第1のプロセッサ(2)を解放する、第1のプロセ ッサで動きうる第2のプログラムパッケージ(Prog.II)。 2. 第1の周辺機器群(12)の中で少なくとも1つは第1のプログラムパッ ケージ(Prog.I)用の周辺機器が存在することを特徴とする請求項1に基 づくシステムアーキテクチャ。 3. 第1の周辺機器群(12)の中で、有効な方法で第1のプログラムパッケ ージ(Prog.I)からもまた第2のプログラムパッケージ(Prog.I I)からも書込みと読取り、あるいはどちらか一つだけでアクセスされる、少な くとも一つの周辺機器が存在することを特徴とする請求項1に基づくシステムア ーキテクチャ。 4. 第1と第2のプログラムパッケージ(Prog.I、Prog.II)が それを通じて通信し合う記憶領域(25)が存在することを特徴とする請求項1 に基づくシステムアーキテクチャ。 5. 第1と第2のプログラムパッケージ(Prog.I、Prog.II)が それを通じて互いに通信し合う記憶領域(25)が、第1及び/又は第2の記憶 装置(4,5)、あるいは両方の記憶機器(4,5)の一方にだけ存在すること を特徴とする請求項1に基づくシステムアーキテクチャ。 6. 第1の記憶機器(4)が第1のプログラムパッケージ(Prog. I) に割り付けられていることを特徴とする請求項1に基づくシステムアーキテクチ ャ。 7. 第1と第2の記憶機器(4,5)がハードウエアとして共通の記憶装置で 実現されており、 記憶アドレスの第1のグループが第1の記憶装置(4)を、記憶アドレスの第 2のグループが第2の記憶装置(5)を形成していることを特徴とする請求項1 に基づくシステムアーキテクチャ。 8. 第1と第2の記憶機器が(4,5)がハードウエアとして別個の記憶装置 として実現されていることを特徴とする請求項1に基づくシステムアーキテクチ ャ。 9. 第1のプログラムパッケージ(Prog.I)が第1のプロセッサ(23 )を取り戻したとき、抑止信号がまだ存在するか、又は自ら消去し又は取り消す 前に、その間に取り消されなかったか、を検査することを特徴とする請求項1に 記載のシステムアーキテクチャ。 10. 第1のプログラムパッケージ(Prog.I)が誤り防止機能を持つプ ログラムパッケージであることを特徴とする請求項1に基づくシステムアーキテ クチャ。 11. 第1のプロセッサ(23)がタイマー(9)を接続した割込み制御部 (8)を備えていること、また第1のプログラムパッケージ(Prog.I)が 第1のプロセッサ(23)を取り戻すように仕向ける条件が、タイマー(9)に よって起動される割込みであることを特徴とする請求項1に基づくシステムアー キテクチャ。 12. 当該のプログラムパッケージ(Prog.I、II)による第1のプロ セッサ(23)の解放の条件が、関係するプログラムパッケージ(Prog.I 、II)内の対応するプログラム命令文であることを特徴とする請求項1に基づ くシステムアーキテクチャ。 13. 第1のプログラムパッケージ(Prog.I)を形成している命令及び /又は第1のプログラムパッケージ(Prog.I)だけに割り当てられている データが、第1の記憶装置内に収められていることを特徴とする請求項1に基づ くシステムアーキテクチャ。 14. 第2のプログラムパッケージ(Prog.II)を形成している命令及 び/又は第2のプログラムパッケージ(Prog.II)だけに割り当てられて いるデータが、第2の記憶装置内に収められていることを特徴とする請求項1に 基づくシステムアーキテクチャ。 15. 第2のプロセッサ(3)、 第2のプロセッサに割り当てられた第3の記憶装置(21)、 第2のプロセッサ(23)と結合された入出力部を有する、インターフェー ス回路等の、第2のプロセッサ(3)に割り当てられた第3の周辺機器(23) 、そして 第2のプロセッサ(23)で実行され、第3の記憶機器(21)と相互に作 用し、第3の周辺機器群(23)とやりとりする第3のプログラムパッケージ、 を備えていることを特徴とする請求項1に基づくシステムアーキテクチャ。 16. 第1と第2のプロセッサ(2,3)が互いに異なっていることを特徴と する請求項15に基づくシステムアーキテクチャ。 17. 周辺機器(12)が機能に関して第3の周辺機器(23)と一致すると して、第3のプログラムパッケージが第3の周辺機器(23)に関連して、第1 のプログラムパッケージ(Prog.I)が周辺機器(12)に関連して振舞う のとおおむね又は正確に同様に振舞うことを特徴とする請求項15に記載のシス テムアーキテクチャ。 18. 第1(Prog.I)と第3のプログラムパッケージが、第2のプログ ラムパッケージ(Prog.II)との偶発的に起こるやりとりは別にして、同 じ機能をもたらすように設計されていることを特徴とする請求項15に基づくシ ステムアーキテクチャ。 19. 第1のプログラムパッケージ(Prog.I)と第3のプログラムパッ ケージは少なくとも一時的に互いに通信し合うことを特徴とする請求項15に基 づくシステムアーキテクチャ。 20. 通信が、両プログラムパッケージの各々により計算されたデータと、付 属する周辺機器群(12,13)から供給されるあるいは供給されたデータとの 比較を含んでいることを特徴とする請求項15に基づくシステムアーキテクチャ 。 21. さらにほかのプロセッサ及びプログラムパッケージ、特に、少なくとも もう一つのプロセッサを備えていることを特徴とする請求項15に基づくシステ ムアーキテクチャ。 22. システムアーキテクチャが機械の制御において実施されることを特徴と する前述のいくつかの、あるいは一つの請求項に基づくシステムアーキテクチャ 。
JP52388796A 1995-02-10 1996-02-01 システムアーキテクチャ Expired - Lifetime JP3731186B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE19504404A DE19504404C1 (de) 1995-02-10 1995-02-10 Systemarchitektur
DE19504404.5 1995-02-10
PCT/DE1996/000145 WO1996024891A1 (de) 1995-02-10 1996-02-01 Systemarchitektur mit einem programm, welches einen peripherieeingang sperrt, solange es infolge von zeitscheibenverfahren nicht auf einem prozessor läuft

Publications (2)

Publication Number Publication Date
JPH11504735A true JPH11504735A (ja) 1999-04-27
JP3731186B2 JP3731186B2 (ja) 2006-01-05

Family

ID=7753624

Family Applications (1)

Application Number Title Priority Date Filing Date
JP52388796A Expired - Lifetime JP3731186B2 (ja) 1995-02-10 1996-02-01 システムアーキテクチャ

Country Status (6)

Country Link
US (1) US5920715A (ja)
EP (1) EP0808482B1 (ja)
JP (1) JP3731186B2 (ja)
DE (2) DE19504404C1 (ja)
ES (1) ES2132875T3 (ja)
WO (1) WO1996024891A1 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1099075C (zh) * 1997-02-26 2003-01-15 西门子公司 带有认证和非认证通道的冗余电子设备
ATE202859T1 (de) 1997-02-26 2001-07-15 Siemens Ag Redundant aufgebautes elektronisches geraet mit zertifizierten und nicht zertifizierten kanaelen und verfahren dafür
DE19800311A1 (de) * 1998-01-07 1999-07-08 Itt Mfg Enterprises Inc Elektronische, digitale Einrichtung
US6202067B1 (en) * 1998-04-07 2001-03-13 Lucent Technologies, Inc. Method and apparatus for correct and complete transactions in a fault tolerant distributed database system
DE19826875A1 (de) 1998-06-17 1999-12-23 Heidenhain Gmbh Dr Johannes Numerische Steuerung mit einem räumlich getrennten Eingabegerät
US6856627B2 (en) * 1999-01-15 2005-02-15 Cisco Technology, Inc. Method for routing information over a network
US6523139B1 (en) * 1999-12-17 2003-02-18 Honeywell International Inc. System and method for fail safe process execution monitoring and output control for critical systems
DE10240584A1 (de) * 2002-08-28 2004-03-11 Pilz Gmbh & Co. Sicherheitssteuerung zum fehlersicheren Steuern von sicherheitskritischen Prozessen sowie Verfahren zum Aufspielen eines neuen Betriebsprogrammes auf eine solche
DE10261453B4 (de) * 2002-12-31 2010-04-15 Danfoss Drives A/S Motorsteuerung
DE102005041455A1 (de) * 2005-08-31 2007-03-15 Abb Patent Gmbh Automatisierungstechnische Einrichtung
DE102005043485A1 (de) 2005-09-13 2007-03-15 Abb Patent Gmbh Automatisierungstechnische Einrichtung
DE102005043481A1 (de) * 2005-09-13 2007-03-15 Abb Patent Gmbh Automatisierungstechnische Einrichtung
DE102005043482A1 (de) * 2005-09-13 2007-03-15 Abb Patent Gmbh Automatisierungstechnische Einrichtung
FR2893431A1 (fr) * 2005-11-16 2007-05-18 St Microelectronics Sa Composant integre securise et procede de securisation associe
US10031502B2 (en) 2015-03-27 2018-07-24 Rockwell Automation Germany Gmbh & Co. Kg I/O expansion for safety controller
US10025287B2 (en) * 2015-03-30 2018-07-17 Rockwell Automation Germany Gmbh & Co. Kg Method for assignment of verification numbers
US10197985B2 (en) 2015-10-29 2019-02-05 Rockwell Automation Germany Gmbh & Co. Kg Safety controller module
DE102015120314A1 (de) * 2015-11-24 2017-05-24 Pilz Gmbh & Co. Kg Verfahren zum Programmieren einer Sicherheitssteuerung
EP3249476B1 (de) * 2016-05-25 2022-06-15 Leuze electronic GmbH + Co KG Sensor
EP3620248B1 (de) * 2018-09-10 2022-06-22 SMW-Autoblok Spannsysteme GmbH Kopplungs-einrichtung

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4484270A (en) * 1982-07-07 1984-11-20 Sperry Corporation Centralized hardware control of multisystem access to shared and non-shared subsystems
US4568866A (en) * 1983-10-26 1986-02-04 Allen-Bradley Company Programmable controller for stepping motor control
JP2834122B2 (ja) * 1987-07-08 1998-12-09 株式会社日立製作所 制御装置
US5386360A (en) * 1989-05-09 1995-01-31 Ansan Industries Ltd. Peripheral data acquisition, monitor, and adaptive control system via personal computer
US5774721A (en) * 1995-09-08 1998-06-30 Iq Systems, Inc. Method of communication between processors in a distributed processing system having a host processor and at least one object oriented processor

Also Published As

Publication number Publication date
ES2132875T3 (es) 1999-08-16
US5920715A (en) 1999-07-06
DE59602166D1 (de) 1999-07-15
EP0808482A1 (de) 1997-11-26
JP3731186B2 (ja) 2006-01-05
DE19504404C1 (de) 1996-06-20
EP0808482B1 (de) 1999-06-09
WO1996024891A1 (de) 1996-08-15

Similar Documents

Publication Publication Date Title
JPH11504735A (ja) システムアーキテクチャ
US6853292B1 (en) Security control system, method for the operation thereof
US4610013A (en) Remote multiplexer terminal with redundant central processor units
EP0056060B1 (en) Data processing system
AU2098601A (en) Systems and methods for fail safe process execution, monitoring and output control for critical systems
CN110445638A (zh) 一种交换机系统故障保护方法及装置
JP5841271B2 (ja) 安全性に関連したおよび安全性に関連していないソフトウェア・コンポーネントを1つのハードウェア・プラットフォーム上で実行する方法
CN1897009B (zh) 输入输出控制装置、输入输出控制方法、过程控制装置以及过程控制方法
EP3361335B1 (en) Safety controller using hardware memory protection
JPH02132528A (ja) 二重化処理装置におけるチェック方法
US6938111B2 (en) Method for operating automation control equipment applications
US11982984B2 (en) Automation system for monitoring a safety-critical process
EP0265366B1 (en) An independent backup mode transfer method and mechanism for digital control computers
JP4340669B2 (ja) 入出力制御装置,入出力制御方法,プロセス制御装置及びプロセス制御方法
US20230259095A1 (en) Control System Method for Controlling an Apparatus or Installation
Reisinger et al. The PDCS implementation of MARS hardware and software
Steininger et al. Integral design of hardware and operating system for a DCCS
Kloppenburg Logisire, A safe computer system for process-automation
JPH0430245A (ja) マルチプロセッサ制御方式
Smith A dual processor checkout system
JP2583617B2 (ja) マルチプロセッサシステム
JPS62263554A (ja) 共用メモリ二重化システム方式
Madeira et al. The fault-tolerant architecture of the SAFE system
JPH01279301A (ja) 計算機分散システム
JPH0916425A (ja) 情報処理システム

Legal Events

Date Code Title Description
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: 20050906

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050930

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091021

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101021

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111021

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121021

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131021

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term