JP2002527820A - 過渡エラー制約を受ける電子システムのための処理手順およびメモリアクセス監視装置 - Google Patents

過渡エラー制約を受ける電子システムのための処理手順およびメモリアクセス監視装置

Info

Publication number
JP2002527820A
JP2002527820A JP2000576368A JP2000576368A JP2002527820A JP 2002527820 A JP2002527820 A JP 2002527820A JP 2000576368 A JP2000576368 A JP 2000576368A JP 2000576368 A JP2000576368 A JP 2000576368A JP 2002527820 A JP2002527820 A JP 2002527820A
Authority
JP
Japan
Prior art keywords
error
real
software
time
errors
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
JP2000576368A
Other languages
English (en)
Other versions
JP2002527820A5 (ja
JP4671507B2 (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
Application filed by センタ・ナショナル・デチュード・スパティアレ filed Critical センタ・ナショナル・デチュード・スパティアレ
Publication of JP2002527820A publication Critical patent/JP2002527820A/ja
Publication of JP2002527820A5 publication Critical patent/JP2002527820A5/ja
Application granted granted Critical
Publication of JP4671507B2 publication Critical patent/JP4671507B2/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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1497Details of time redundant execution on a single processing unit
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1458Protection against unauthorised use of memory or access to memory by checking the subject access rights
    • G06F12/1466Key-lock mechanism

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Hardware Redundancy (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Storage Device Security (AREA)
  • Debugging And Monitoring (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Retry When Errors Occur (AREA)

Abstract

(57)【要約】 本発明は、過渡エラー制約を受ける電子システムの処理手順に関し、単一物理シーケンスにある二つの仮想シーケンスが所定のリアルタイムサイクルでタイミングよく多重化され(使用の前に票決できるように、仮想シーケンスの各実行から生じるデータは記憶されている)、エラーが検出された場合には、処理中のリアルタイムサイクルは禁止され、再ロードされたコンテキスト始まる次のサイクルの仮実行からなる再開始を行うように異常のないコンテキストが再ロードされる。本発明は、また、メモリアクセスの監視装置にも関する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】
本発明は、過渡エラー制約を受ける電子システムの処理手順及び、例えば、宇
宙関係に使用されるメモリーアクセス監視装置に関する。
【0002】
【従来の技術および発明が解決しようとする課題】
本発明による方法は、過渡エラーを受ける全てのコンピュータアーキテクチャ
に関する。例えば、以下の分野では、この種のエラーを発生する、電子部品に対
する妨害環境(放射線、電磁外乱)の影響を受けるコンピュータを使用している
。 −周囲環境に重イオンが含まれる、宇宙、原子及び航空産業 −重大な電磁環境の影響を受ける自動車産業
【0003】 宇宙産業は、以下の説明で例として使用する。その理由は、電子部品に発生す
るランダム過渡エラーは極めて代表的なものであり、またこの理由は、この分野
で、最初に本発明による処理方法が開発され、評価されたからである。
【0004】 衛星用のコンピュータ構造の設計者は、宇宙に存在するが、大気によって濾過
される放射線の問題に直面している。この放射線には、マイクロプロセッサの内
部レジスタ内で、または他の集積部品において、メモリ部品のビットの一時的な
状態変化を起こす「特異イベント」効果がある。例えば、これらの特異イベント
によって発生するエラーは、データを不正確にする場合がある。その例としては
、衛星アクチュエータの制御不良、またはソフトウェアシーケンスへの重大な外
乱などがあり、これらは例えばマイクロプロセッサのクラッシュによって発生す
る。
【0005】 現在まで、特異イベントタイプのエラーに対する解決方法は、この現象の影響
が極めて少ない「放射線耐性」技術、またはこの現象の影響を受けない「対放射
線強化」技術といわれる集積回路技術を使用することであった。産業用マイクロ
エレクトロニクスの分野では使用されていないこの種の技術は、特に軍事及び宇
宙の用途に開発されたものであった。
【0006】 このマイクロエレクトロニクス技術を維持し、この技術を使用した部品を開発
する全体的なコスト、つまりこれらの部品の市販コストはかなり高くなっている
。強化型回路と市販回路とのコストの比率は、100またはそれ以上の場合があ
る。
【0007】 「高信頼性」軍事部品の市場占有率は、1960年代の80%から1995年
には1%以下へと急激に落ち込んだ。1994年から、米国国防総省は軍事用途
への軍事用電子部品の使用を控え始めて、一般市販仕様/規格/部品を軍事用途
への使用を拡大加速し始めた。
【0008】 本明細書の最後で参考文献〔1〕に説明されているように、市販電子部品の使
用は、宇宙産業が直面しなければならない試練となった。
【0009】 宇宙産業用途に市販部品を使用することは、全ての新規勃興プロジェクトが直
面する問題である。解決すべき主な問題は、部品の放射線、特に重イオンに対す
る感度である。この問題は、以前には「部品」レベルで扱われたが、「構造」レ
ベル、「システム」レベルで解決すべき問題となっている。二つの参考文献〔2
〕と〔3〕で説明したように、衛星及びその搭載電子部品は、異なった粒子(電
子、重イオン、陽子)で構成される放射線環境の影響を受ける。これらの粒子は
大気によって濾過されるので、地上のシステムには適用されない。
【0010】 これらの粒子は、以下の理由によると考えられる。すなわち: −一部は銀河系の外から発生する宇宙放射線、また一部は非常に高いエネルギ
ーイオンからなる銀河系内の宇宙放射線 −地球大気と太陽粒子との間の相互作用に続いて発生した閉じこみ電子と陽子
で構成される放射線帯 −陽子と重イオンを放出する太陽の爆発 −コロナプラズマの蒸発により発生する太陽風であって、これにより、低エネ
ルギー陽子とイオンが太陽の引力から抜け出せるようになる、 である。
【0011】 これら高エネルギー粒子が、電子部品にぶつかり、通過して、粒子のエネルギ
ーの一部を電子部品に伝えて、通常の作動を乱すようになる。これらの問題は、
重イオンと陽子によって発生する「特異イベント」といわれる。
【0012】 これら特異イベントは、2進値を記憶するセル内のエラーの発生に対応してい
て、ビットエラーを引き起こす。一般的に、単一ビットは重イオンによって変更
される。これらの現象は重大ではなく、新しいデータがその後に書き込まれる。
同じセル内で他の特異イベントが発生しない限り、新しいデータはエラーなく記
憶される。これは、本明細書のこれ以後で、これらの現象により発生するエラー
を特徴づけるために使用される用語「過渡不良」のためである。
【0013】 前述したように、衛星への搭載電子部品の製造は、一般には、放射線の影響を
受けない部品を使って行なわれる。その理由は、その部品は特にこの目的のため
に製作されていること、または特にこの目的のために製作されていない部品の選
定によるためである。
【0014】 大規模に、宇宙用途に市販部品を使用するためにある最初の可能性は、系統的
な放射線のもとで市販部品を試験することにより選定することである。選定に関
して、まずこの方法は大変な費用がかかるばかりでなく、効率が悪い。その理由
は、望ましいことではあるが、広範な産業規格を必ずしも使うことができないか
らである。
【0015】 他の経済的にさらに好ましい可能性は、部品選定の制約を緩和することである
。これには、放射線によって発生する現象の許容、特に過渡エラーの許容を拡大
する方法を探ることが含まれる。つまり、エラーを検出し、修正するアーキテク
チャを規定することである。過渡不良を、「部品」レベルではなく、「構造」及
び「システム」レベルで考慮することである。
【0016】 参考文献〔4〕、〔5〕と〔6〕では、一連の不良検出、分離及び再生機構に
ついて説明されている。機構によっては、単にエラー検出するためだけに使われ
ていて、またエラーを検出しそれにマスクをするもの、エラーを修正するものが
ある。さらにこれらの機構は、一時的なエラー処理、パラメータ不良またはその
両方に適用されている。
【0017】 一般の機構を、特に宇宙産業に適用される数例を挙げて、簡単に説明する。 −不良回避:実際に使用される前に、静的データの系統的更新;部品が使用さ
れる前に、部品不良を検出するために、「オフ−ライン」自己試験(標準作動中
ではない)
【0018】 −エラー検出または検出/主として、アプリケーション特定集積回路(ASI
Cs)、または集積コントロール装備フィールド・プログラマブル・ゲート・ア
レー(FPGA)製造用メモリー、通信及び可能であれば論理に適用可能な修正
コード。エラー検出及び修正(EDAC)回路は、系統的にメモリー用途に宇宙
産業で使用されている。全体メモリーの系統的リロード(または「スクラビング
」)機能はこれらの回路に関連していて、実質的に検出/修正を不可能にする休
止エラーの集積を回避するために、スクラブタスクとして動作する。
【0019】 −二重及び比較、三重及び多数決(「N モジュラ冗長性」、オーダーNのモ
ジュラ冗長性)。これらの機構には、悪性コマンドは発生しないが、最初の不良
で停止するフェールセーフが得られる構造(二重)、不良中に作動可能の状態(
「フェイルオペレーショナル」)で、リアルタイムで単一エラーをマスクするこ
とができ、「セーフ」のままで継続する構造(三重)がある。この分類には、ま
た、マイクロプロセッサだけが複製され、「マスター」からのデータ出力は「コ
ントローラー」によって検証される、マスター/コントローラー構造が含まれる
。MHS S.A.社により製作されたERC−32マイクロプロセッサはこの
ような構造を含んでいる。
【0020】 −Nオーダーのモジュラ冗長性構造に関連したマルチプルプログラミング法(
「N−バージョンプログラミング」、)、これはまたソフトウェア設計エラーを
検出可能である。各コンピュータは、特に共通仕様から始まって開発されたソフ
トウェアバージョンを備えている。
【0021】 −時間冗長性;その目的は、比較に続く二つの連続実行を使用こと、またはコ
マンドレジスタをロードすることに続いて単一実行を使用することであり、例え
ば火器エレメントの引き金を引く極めて重要なコマンドに宇宙で使用される「装
填 発射」メカニズムなどの比較と検証をするためにリロードする。
【0022】 −実行時間の確認:「ウオッチドッグ(監視者)」(プログラムが制限時間内
で実行されていることを確認するタイムカウンター)は全ての宇宙用コンピュー
タに使用される。実行時間に関してこれらさらに詳細な確認装置は、ソフトウェ
アに組み込まれる場合がある。つまり、タスクの時間、通信エレメントからの回
答を得るための最大許容時間を確認する。ソフトウェアはまたタスク実行時間に
チェックを設定するために使われる。
【0023】 −コントロールフローの検証、例えば、マイクロプロセッサのシーケンスの確
認。監視できるのは粗いチェック。ハードディスククラッシュを検出可能である
。インストラクションフローチェックは多少複雑な監視プロセッサで終わる。シ
グナチャ分析を使うチェックは、特に有効で多くの電子装置を必要としない。こ
のコンセプトはMHS S.A.社により製作されたERC−32に盛り込まれ
ているが、参照シグナチャを計算してコードに組み込む特定コンパイラーは、ユ
ーザーに見えるようにするために必要である。
【0024】 −ページ/セグメントによってアクセス権から始まるマイクロプロセッサアド
レスの正当性をチェックする。
【0025】 −確率チェック;この原理は、衛星用に姿勢軌道制御システム(SCAO)に
使用され、何種類かのセンサーからのデータが不一致を検出するために比較され
、またはデータの1項目が前の値についての推定フィルタを使って推定された基
準と比較され、またはデータの1項目が予め定義された範囲と比較される。「演
算処理に基づいた不良公差」法は確立チェックの一分野であり、その検証は第二
演算の実行に基づく。例えば、逆演算は、エラーが発生しない場合に得られる結
果から始まる最初の結果を再生する。
【0026】 −比較的複雑なデータ構造を必要とするデータの構造的または語義のチェック
【0027】 −補助誤再生コンセプト、主に、上記で説明した機構が修正できない点で再開
する、つまり定期的にコンテクストをバックアップし、最後にセーブされたコン
テクストから再開する。
【0028】 −エラー再生の他の手段は、初期検出/修正能力を回復するために、不良コン
ピュータに正常なコンテクストを移入することにより不良があるリソースを再挿
入することである。
【0029】 従来の文書には、また時間冗長性の説明が含まれている。
【0030】 参考文献〔5〕には、連続的にタスクを3回実行して、結果を「票決」する可
能性が説明されている。
【0031】 ソフトウェアによりオーダーNモジュラ冗長性型操作の実行の可能性は、また
参考文献〔6〕に理論的に説明されている。
【0032】 この文献では、パラメータ不良から過渡不良を区別し、不良を修正でき得る別
の方法が説明されている。検出は時間冗長性法ではないが、例えばデータ符号化
を含む場合がある。検出が行なわれると、処理は2回行なわれる。2回目の実行
でエラーのない結果が得られると、エラーは過渡的であってシステムを再構成す
る必要はない。それでも、パーマネントな不良である場合は、再構成が必要であ
る。
【0033】 両文献においては、理論的に可能であるので、時間冗長性は測定されるが、実
際にこれが実行できる可能性について、何ら記載されていないし、特に進展は説
明されていない。検討すらされていない問題がある。特にマイクロプロセッサ自
身によって票決される場合、またはマイクロプロセッサと独立した外部装置によ
り決定される場合である。決定の結果は変更できないものとする必要がある。そ
の理由は、マイクロプロセッサ内にデータエラー、シーケンスのクラッシュなど
の機能不全が発生する可能性があるが、結果は意思決定の要素だからである。従
がって、マイクロプロセッサによって行なわれる票決は、検討されない主な要素
となる。さらに、検出が行なわれる粒度は定義されていない。
【0034】 参考文献〔7〕は、僅かながらさらに詳しく記載されている。この文献では、
二つのエラー検出方法の比較評価が説明されている。そのうちの一つは、「モジ
ュラ・トリプル・ソフトウェア冗長性」といわれる。通常、モジュラ・トリプル
冗長性はハードウェア内で正常に実行される。本文で評価される方法は、ソフト
ウェアと全てのモジュールの、特に票決モジュールの連続実行による時間冗長性
を使い、特にソフトウェアにより行なわれ、同じマイクロプロセッサ上で実行さ
れる。従って、これは純粋にソフトウェアの手法になる。本文における図1に対
応する図1は、どのように検出が行われるかを示す。つまり、各三つの決定モジ
ュール1,2、と3は三つの手法4,5、と6の実行の結果を比較し、三つの処
理ステップの同一性を確認する各決定モジュールからの結果の出力を比較する意
思決定段階7が続く。モジュラ・トリプル・ソフトウェア冗長性はMC6800
マイクロプロセッサ上でプログラムされる。このソフトウェアを評価するために
、1500のエラーが注入された。メモリーはエラー検出と修正回路により、エ
ラーから保護されていない。本書では、検出されないエラーのみが処理されると
他を乱すエラーであると結論している。さらに、プログラム間の通信に悪影響を
及ぼす全てのエラーは許容されない。
【0035】 本文では、処理が連続して3回実行され(時間冗長性)、決定モジュールが3
回実行され決定モジュールの結果はそれ自身で決定される構造の特定例について
説明する。結果は固定されていなくて、何故三重化されるかを理解することがで
きる。最終決定は図に示されている最後の段階により行なわれ、間接的にそれは
必ず小さくなる(データの数行のみがデータの項目を決定するのに必要である)
ことから確実になる。統計的に、直接このモジュールに影響する特異事象は無視
できるものであるが、これはマイクロプロセッサシーケンスエラーに対してセキ
ュリティーは与えていない。
【0036】 参考文献〔8〕は、また、LAPX432タイプ、マイクロプロセッサ上での
「トリプル・ソフトウェア・モジュラ冗長性」の実行を示している。これは参考
文献〔7〕に示されているものと同じ実施形態である。各ソフトウェアサブタス
クは連続的に3回実施され、ソフトウェア決定モジュールは3回実施され、その
結果、これらタスクは同じマイクロプロセッサ上で非同期的に実行されるので、
安全ではない。エラーの注入段階によりサブタスク間のエラーの伝播が示された
、これは異なるサブタスク間のエラーに対するバリアがないことを示す傾向にあ
る。
【0037】 特異事象の割合の推定は、宇宙で使用される一般的なコンピュータ用に行なわ
れた。明らかに、この割合は、メモリーセルの数や使用されるユニットセルの感
度の値などの仮定に依存している。衛星の姿勢管理に関してエラー限界のシミュ
レーションは、また、例えば、リアクションホイールなどの姿勢軌道制御システ
ムにおいて中間限界アクチュエータ上で発生する悪性コマンド考慮して、行なわ
れる。特異事象の割合は低いが、二つの種類の制御に関してこの現象が無視でき
る程、十分に低くはないことが分かる。 −最大限界制御:火器推進ユニット、バッテリー管理など。一年に数回衛星を
失う危険は認められない。 −中間限界制御:リアクションホイール、電磁カプラーなど。飛行、特に商業
衛星飛行(観測、電気通信)は、これらのエラー、エラーが限界に近いものであ
っても、によって発生する姿勢の乱れは認められない。
【0038】 さらに、特異事象の周波数はコンピュータのリアルタイムサイクルよりもきわ
めて大きい。
【0039】 本発明の目的は、特異事象に対する感度に関わらず市販部品を使用するために
、過渡エラー制約を受ける電子システム用の処理手法を提案し、過渡エラーの様
相を検出し、それらを修正することである。
【0040】
【課題を解決するための手段】
本発明は、例えば、宇宙産業において、単一の物理的シーケンスにインストー
ルされる2つの仮想シーケンスが1つの所定のリアルタイムサイクルで多重化さ
れ(仮想シーケンスの各実行から生じるデータが使用前に票決できるように記憶
される)、かつエラーが検出される場合、進行中のリアルタイムサイクルが禁止
され、異常のないコンテキストが再ロードされるコンテキストから始まる次のサ
イクルの仮実行からなる再開始を行うように再ロードされることを特徴とする、
過渡エラー閉じ込みを受ける電子システムのための処理手順に関するものである
【0041】 したがって、エラー修正は、異常のないコンテキスト、換言するとエラーが検
出されたサイクルに先行するリアルタイムサイクル中計算されたコンテキストを
再ロードすることによって、次に復元されたコンテキストから始まる、エラーが
検出されたサイクルに続くサイクルの仮実行(換言すると新しい捕捉を繰り返す
こと)によって行われる。この種の修正は、ソフトウェア(エラーが検出される
)の実行におけるリアルタイムサイクルの「穴」の出現によって特徴付けられる
【0042】 有利なことには、下記の特徴も可能である。
【0043】 3つのエラー制約領域(時間、ソフトウェアおよびハードウェア)がある。す
なわち、エラーの時間制約は、一方のリアルタイムサイクルから他方のリアルタ
イムサイクルに伝達できない。エラーのソフトウェア制約は、一方のソフトウェ
アタスクから他方のソフトウェアタスクにあるいは一方の仮想シーケンスから他
方のシーケンスに伝達できない。エラーのハードウェア制約は、捕捉エレクトロ
ニクスあるいは制御装置で生じるエラーが制御エレクトロニクスに伝達されるこ
とを防止する(誤ったコマンドの生成が全くない)。
【0044】 エラー検出/修正コードによって特異イベントから保護される制御装置のメモ
リプレーンも使用できる。
【0045】 選択された検出/修正粒度も、コンテキストに属する可変数の数が2つのリア
ルタイムサイクル間の境界の正しい最小値に減少される当業者に公知の通常の解
決策と比較すれば、規則的に作動される「バックアップコンテキスト」機能およ
びエラー修正の時間に作動される「復元コンテキスト」機能によって追加された
制約を大いに減らすことができるコンピュータのリアルタイムサイクルでもよい
【0046】 「バックアップコンテキスト」機能は、規則的に作動され、インデックス変更
によって得られてもよく、この機能がソフトウェアの開発費用あるいはマイクロ
プロセッサによるこの機能の実行時間に殆ど影響を及ぼさない長所がある。唯一
の影響は、検出/修正粒度、すなわちリアルタイムサイクルを超える寿命でコン
テキスト変数をコピーするこの機能の使用にある。
【0047】 エラー修正中に作動される「復元コンテキスト」機能は、通常(換言するとエ
ラーが全く検出されない場合)スワップされるゆえに、前のリアルタイムサイク
ルで異常がないとみなされるコンテキストを指示するインデックスがスワップさ
れてはいけない事実を使用して得られてもよい。この「非スワップ」は、エラー
が検出されるリアルタイムサイクルの禁止に固有であるので、この機能がソフト
ウェア開発費用あるいは一般的には当業者に公知の解決策において特異であり、
マイクロプロセッサによるこの機能の実行時間に全く影響を及ぼさない長所を提
供する。
【0048】 特定のアクセス権検査装置に関連したメモリのセグメンテーションを使用でき
、この装置は、異なる任意のセグメントサイズを可能にする。アクセス権を検査
するこのハードウェア装置は、いくつかのアクセス構成を可能にでき、各構成は
、1つあるいはいくつかの非隣接セグメントへのアクセスを可能にする。アクセ
ス権を検査するこのハードウェア装置は、1つあるいはいくつかのキーの論理組
み合わせによるアクセス構成の選択も可能にする。
【0049】 票決される変数/データは、異なる用途で再使用できる簡単な票決モジュール
を得るために均一に広がる。この場合、票決モジュールはソフトウェア開発費用
にごくわずかな影響を及ぼす。
【0050】 特に、ソフトウェア監視プロセッサおよびハードウエアを含む一貫性がソフト
ウェア検査によって得られるソフトウェア票決を使用できる。エラーが全く検出
されない場合、票決は制御エレクトロニクスへの転送の許可も作動させる。
【0051】 最後に、アクセス権を満たし、この転送のバリディティ時間(時間バリディテ
ィウィンドウ)を制限するハードウェア装置によって制御エレクトロニクスへの
転送の検査をできるので、ハードウェアエラー制約領域の境界を定める。
【0052】 したがって、本発明による方法は、 −タイミングよくタスクの実行の複製および生成されたテーブル票決と、 −テーブル票決による全データエラーの検出と、 −アクセス権の票決および検査のためのハードウェアおよびソフトウェアセキ
ュリティ装置によるエラーの順序付の検出と、 −アプリケーションに透過である修正とを含み、あらゆることはリアルタイム
サイクルに「穴」があるかのように行われる。
【0053】 特定の開発の最小化は、本発明による方法の長所の中の1つであり、すなわち
: −ソフトウェアの場合: ・表で票決される変数のグルーピング、 ・通常異なるアプリケーションで再使用可能である「コマンドの票決および生
成」モジュール、 ・本発明による方法の管理(時間重複、メモリアクセスおよび時間バリデーシ
ョンウィンドウを監視するハードウェア装置、およびエラー修正の管理)。 −ハードウェアの場合: ・メモリアクセスおよび時間バリデーションの監視;これらは、FPGA回路
、あるいは(さらによい)マイクロプロセッサ(アドレス復号化等)に通常関連
したASIC回路に統合されねばならない普通の部品であり、これらは異なる用
途でも再使用可能である。 ・通常のフォールトトレラント機構による重要なコマンドのエレクトロニクス
の保護(例えば、計装)。
【0054】 したがって、本発明による方法は下記の長所: −非常に小さいハードウェアの開発、 −非常に小さいソフトウェアの開発、 −他のフォールトトレラントアーキテクチャと比較される周期的に起きる費用
(唯一つのコンピュータ)の最少化、 を有し、これらの特徴はフォールトトレラントアプリケーションでしばしば見つ
けられるものではない。
【0055】 さらに、宇宙産業の「市販」部品の使用は下記の主要な長所を有する: −主要なサプライヤーはもはやこの市場に供給しないために、この使用は「高
信頼性」部品の有効性の確認された減少の問題を解決する。 −コストの減少、バジェットコンテキストによって刺激される様相。「高信頼
性部品」項目は装置の全開発費用で無視できなく、その周期的に起こる費用にお
いて無視する。 −エレクトロニクスの容積の減少および/または機能性の増加のためにより高
い実行機能/部品の使用。 −宇宙に反動的なアクセスを与えるためにプロジェクトの開発時間を減少させ
、一般的には「高信頼性」部品に対する調達時間は1年あるいは2年である。
【0056】 有利なことには、本発明による方法は、一般的な目的を有し、これらのエラー
(宇宙放射線、電磁パルス等)の発生源とは無関係に過渡エラー制約を受ける全
ての型式のコンピュータで使用されてもよいが、宇宙分野に当然応用可能である
【0057】 本発明は、特にマイクロプロセッサの周辺に製造される制御装置を含むコンピ
ュータのメモリアクセス監視装置(SAM)、およびセグメントに分割され、各
セグメントがこの装置に利用可能なキーの全部あるいはいくつかの論理機能によ
って規定されるアクセス権を有することを特徴とするメモリにも関連し、各セグ
メントへのアクセス権はリアルタイムで制御される。
【0058】 有利なことには、この装置の利用可能なキーのプログラミングに応じて、別個
のセグメントのセットは、いくつかのセグメントに対して読み出し専用および他
のセグメントに対して読み出し/書き込みでアクセス可能である。
【0059】 有利なことには、セグメントのサイズは、所定のアプリケーションに対して最
適化できるように任意である。
【0060】 有利なことには、利用可能なキーのセットの定義、これらのキーの組み合わせ
に対する論理機能およびキーのプログラミングの機能としてのアクセス可能なセ
グメントの構成は、固有である。
【0061】 キーの固有定義に関連するこの装置の固有機能を規定することも可能である:
例えば、 −セグメントの中の1つが、コンピュータの例外状態の機能としアクセスでき
る書き込み許可を有するので、重要なデータ(例えば、コード)の確実な記憶を
可能にする、 −いくつかのセグメントへのアクセスは、マイクロプロセッサが十分な作動状
態にあるという非常に十分な見込みがある場合だけ、許可されるので、重要なデ
ータ(例えばコンテキストデータ)の確実な記憶を可能にし、 −重要なデータの確実な記憶を可能にするセグメントが対(「旧」セグメント
および「新」セグメント)(フリップフロップで作動する)でグループ化される
【0062】
【発明の実施の形態】
宇宙アプリケーションのための本発明による方法が、この説明の残りを通じて
実施例として考慮されている。
【0063】 宇宙に使用されるコンピュータの代表的な、そして包括的なアプリケーション
が下記に提供され、図のハードウェアおよびソフトウェアのポイントを考慮して
いる。図2に示される参照アーキテクチャは、本発明による方法の説明のための
根本原理として使用されている。
【0064】 図2に示される搭載管理ユニット10は、 −マイクロプロセッサ周辺に作られる制御装置11と、 −マスメモリ12と、 −パワーインターフェイス13、ペイロードインターフェイス15、パイロテ
クニクスインターフェイス16、サーマルインターフェイス17、姿勢および軌
道制御システムインターフェイス18と、 −データバス19を介して連結されることと、 −リモートコントロール−リモート測定インターフェイス14と、 −監視および再構成エレクトロニクス20と、 −交換パワーを生成するDC−DCコンバータ21は、ACを供給し、パーマ
ネントパワーは、APを供給することと、 を備えている。
【0065】 パワーインターフェイス13は、太陽熱発電機25とバッテリ26とに連結さ
れている。
【0066】 リモートコントロール−リモート測定インターフェイス14は、トランスミッ
タ/レシーバに連結され、デュプレクサ27は、アンテナ28、29に連結され
ている。
【0067】 ペイロード31は、アビオニクスバス32を介して制御装置11に、マスメモ
リ12に、高速シリアルリンク33を介してリモートコントロール/リモート測
定インターフェイス14に、そしてペイロードインターフェイス15に連結され
ている。
【0068】 パイロテクニクスインターフェイス16は、展開可能なシステム35に連結さ
れている。
【0069】 サーマルインターフェイス17は、ヒータおよびサーミスタンス36に連結さ
れている。
【0070】 姿勢および軌道制御システムインターフェイスは、センサC1、C2、・・C
nに、アクチュエータA1、A2、・・Amに、そしてリザーバ圧力センサ37
に連結されている。
【0071】 その結果、このタイプのアーキテクチャは、異なる処理モジュール(制御装置
モジュール)と、入出力モジュール(捕捉モジュール、制御モジュール)とで構
成されている。入出力モジュールは、低レベルエレクトロニクス(アナログ/デ
ジタルコンバータ、あるいはデジタル/アナログコンバータ、デジタルまたはア
ナログチャネルマルチプレクサ、リレーなど)を含んでいる。
【0072】 モジュールは、無関係に、バックパネルバスによって連結されるボード、ある
いはアビオニクスバスを介して連結される完全なボックスであってよい。2つの
場合、バスへのインターフェイスは、マスタBus Coupler(バスカプ
ラー)(CB)を介して制御装置モジュールに、また加入者バスカプラーによっ
て他のモジュールに作られる。
【0073】 図3に示されるような参照ソフトウェアアーキテクチャは、処理タスク(たと
えば、姿勢および軌道制御システムタスク、サーマル制御タスク、リアルタイム
クロックタスク、搭載管理タスクなど)で構成され、各タスクは、コンピュータ
から出力される結果(制御、あるいはコマンド)を生成し、そして計算されると
き、これらの結果は、生成される(すなわち、コンピュータからの出力)。Ac
quisitions(捕捉)(あるいはAcq)は、時間一貫性(たとえば、
姿勢および軌道制御システム)により、リアルタイムサイクルの開始時に分類さ
れる。
【0074】 図3において、タスクA、BおよびCは、説明を明瞭にするために、同一周波
数で示されている。
【0075】 これらのタスクのアクティビティは、サイクルReal Time Inte
rrupt(リアルタイム割り込み)(IT−TR)によって誘発されるリアル
タイムサイクルレートで実行される。このサイクルは、周期的にいくつかのタス
クを開始し、そしてこれらのタスクは、リアルタイムサイクルと同一の周波数か
、あるいはリアルタイムサイクルのサブ周波数かのいずれかで作動する。他のタ
スクは、非同期であり、イベントに基づいて初期化される。
【0076】 この図は、参照ハードウェアおよびソフトウェアアーキテクチャを示し、図4
において供給されている。この図は、制御装置40と、センサ42に連結される
捕捉エレクトロニクス41と、アクチュエータ44に連結される制御エレクトロ
ニクス43とを示し、これら2つのエレクトロニクス41、43および制御装置
は、データバス45に連結されている。
【0077】 3つのメイン位相Ph1、Ph2、Ph3(すなわち、データ捕捉、データ処
理、コマンドの生成)の順序付けは、エレクトロニクス40、41、43の3つ
の独立した部分を含み、位相Ph2,Ph3は、ネストされている。
【0078】 このアーキテクチャのハードウェア部分は、機能ブロックだけに基づいており
、そのため、特別な部品の特有の性質およびエラー検出/修正におけるそれらの
能力(あれば)を無視する。その結果、本発明による方法は、自制的である。と
はいえ、所定のアプリケーションに使用される部品に一体化されるフォールトト
レラント構造の使用により、本発明だけによる方法と比べてエラー適用範囲比率
を改善することが可能である。
【0079】 特異イベントを受けやすい参照アーキテクチャのポテンシャルエラーシグネチ
ャが測定された。その結果は、エラーが、2つの重要なクラスに分類されること
が可能であるということであった: −データエラーと、 −サブクラスにも共有される順序付けエラー: ・「ソフトクラッシュ」:不正な接続だが、マイクロプロセッサは、指示によ
り位相に戻り、多少不安定で、指示の順序付けを続行することが可能である; ・「ハードクラッシュ」:マイクロプロセッサは、操作可能でなく、たとえば
、マイクロプロセッサは、指示と位相が同じでなく、マイクロプロセッサは、デ
ータを指示レジスタにロードし、スタックポインタが妨害されて、指示順序付け
がブロックされ、不可能なイベント、無限ループなどを待つ。
【0080】 これら2つのクラスは、それら自体いくつかのサブクラスに再分され、最も重
要なものは、アドレスエラーに関する。
【0081】 「ソフトクラッシュ」と「ハードクラッシュ」との間の識別が重要である。マ
イクロプロセッサの外側のハードウェア装置は、通常、「ハードクラッシュ」を
検出する必要がある(すなわち、ウォッチドッグ)が、ソフトウェア装置は、た
とえ不安定であるとしても、マイクロプロセッサが、ソフトウェアクラッシュの
場合、コードを実行し続けるので、「ソフトクラッシュ」を検出するのに十分で
ある。
【0082】 そのうえ、「抑制されていないマイクロプロセッサ」は、宇宙ミッションのた
めの破局的結果を有することができるアクションが可能なので、マイクロプロセ
ッサクラッシュは、クリティカルエラークラスを形成し、そのため、短い待ち時
間でそれらを検出するために、あらゆる試みを行い、および/または検出されて
いないエラーに続く不良コマンドの確率を最小にするために、エラー制約領域を
生成することが重要である。
【0083】 ここでは、本発明に自体による方法のオペレーションについて記述する。
【0084】 全体的に、検出/修正に使用される粒度は、コンピュータの基本リアルタイム
サイクル、たとえば、プラットフォームコンピュータにおける姿勢および軌道制
御システムタスクのサイクルである。
【0085】 本発明による方法(構造的デュプレックスにおけるような)の目的は、コンピ
ュータが、監視されることなく作業し、次に、コンピュータから出力されるデー
タ(コマンド)、あるいは修正のために使用されるデータ(コンテキスト)だけ
を選択することか、あるいは「票決する」ことを可能とする。
【0086】 粒度のためにリアルタイムサイクルを選択することにはいくつかの利点がある
: −これは、捕捉がアクセスされ、あるいは大部分のセンサ/アクチュエータが
制御される周波数であること、 −かなり制限された数の「アクティブ」データが、リアルタイムサイクルの終
りに使用可能である;多量の中間データがなく、そしてローカル変数が使用され
ていないこと、 ・検出のために、それらは、票決される一連のテーブルに格納されていること
と、 ・単純で、良好に配置された再開始コンテキストが修正のために使用可能であ
ること。
【0087】 特に、票決がタスクの終りで行われるので、所定タスクのための検出/修正粒
度が、このタスクの周波数である。その結果として、姿勢および軌道制御システ
ムタスクが10Hzで、そしてサーマルタスクが1Hzで考慮されると、粒度は
、姿勢および軌道制御システムのためには10Hzであり、サーマルタスクのた
めには1Hzである。明瞭にするために、リアルタイムサイクルによる「粒度」
は、「タスクによって」よりはむしろ本文書の残りに使用されている。
【0088】 構造的冗長性を削除すると同時に、タイプに関係なく、例外なく、すべてのエ
ラー(データエラー、アドレスエラー、順序付けエラー、構成エラーなど)を検
出する手段であるデュプレックス(出力と比較すれば同一のソフトウェアを実行
する並列の2つの同一システム)の効率から利益を得るために、本発明による方
法は、単一の物理的シーケンスに基づきデュプレックスオペレーションを設置す
ることから成る。所定のリアルタイムサイクルにおいて、同一の物理的シーケン
スに位置される2つの仮想シーケンスは、タイミングよく多重化され、仮想シー
ケンスの各実行から生成されるデータは、「時間多重化されたデュプレックステ
ーブル」(たとえば、コマンド、コンテキスト)に格納され、そのため、それら
は使用前に票決されることが可能である。
【0089】 検出後、修正は、現在のリアルタイムサイクルを禁止することと、再ロードさ
れたコンテキストから開始する次のサイクルの仮実行から成る再開始を行うため
に、異常のないコンテキストを再ロードすることとから成る;リアルタイムサイ
クルに「穴」があるかのように、すべてのことが生ずる。
【0090】 本発明による方法は、特異イベントによって生成されるエラーが一時的のもの
であるという事実に基づいている;第1の仮想シーケンスの実行中に生ずるこの
タイプのエラーは、第2のシステム実行中再生成されない(逆もまた同じである
)。これに対し、本発明による方法は、静的エラー、たとえば、部品の故障(故
障したビットなど)、あるいは特異イベントによるいくつかのエラーでさえを検
出することができず、それは、永久エラー(たとえば、シーケンサのブロッキン
グ)を生ずる。
【0091】 票決モジュールの出力側のアクション、換言すれば、制御エレクトロニクスへ
のデータ転送(すなわち、データバス)および制御エレクトロニクス自体は、本
発明による方法によって保護されない。ユーザは、エラーのないようにする必要
があるこれらクリティカルコマンドを決定し、そして当業者に周知である構造に
よって、それらを保護するために、システム分析を行う;データの符号化、自己
検査回路、制御エレクトロニクスの計装など。
【0092】 図6は、本発明による方法の機能の説明を含んでいる。
【0093】 この図は、データフロー(太い線)を示し、それによると、仮想シーケンス♯
1 47は、捕捉♯1を受信し、仮想シーケンス♯2 48は、捕捉♯2を受信
し、確実な票決者49は、これら2つのシーケンス47、48から出力を受信し
て、コマンドを発行する。修正のための再開始を初期化するべく、再ロードされ
たコンテキストリクエストをするために、確実な票決モジュール49を2つの仮
想シーケンス47、48に連結するエラー信号(細い線)もある。
【0094】 本発明による方法のグローバルシーケンスは、図5Aおよび図5Bに示されて
いる: −図5A:本発明による方法を有さないシーケンスであり、コマンドは、それ
にもかかわらず、処理の終りに分類されている、 −図5B:本発明による方法を有するシーケンス。
【0095】 図5Aは、2つのリアルタイムサイクルN、N+1と、サイクルN+2の開始
を示している。
【0096】 各リアルタイムサイクルは、時間において異なる4つの位相から構成されてい
る: −データ捕捉、 −コマンドの計算で処理、 −コマンドの送信、 −タスクの取り消しおよび待機、この場合、「Scrub+Standby(
取り消し+待機)」と呼ばれる。
【0097】 図5Bは、各リアルタイムサイクルが構成される本発明による方法を示してい
る: −仮想シーケンス♯1(ChV ♯1)の捕捉、 −仮想シーケンス♯1の処理;結果は、テーブルTAB ♯1に格納される、 −仮想シーケンス♯2(ChV ♯2)の捕捉、 −仮想シーケンス♯2の処理;結果は、テーブルTAB ♯2に格納される、 −テーブルTAB ♯1およびTAB ♯2の票決、 −コマンドの生成、 −タスクの取り消しおよび待機。
【0098】 図7は、本発明による全体の方法の模倣図を示し、本発明の実施形態に必要な
すべての回路を表わしている。
【0099】 第1のマイクロプロセッサモジュール50は、すべてのソフトウェア構造を、
特に、 −タスクの時間複写、 −テーブルへの変数の配置、 −確実な票決、 −再開始による修正、 −ハードウェア構造の管理、 を管理する。
【0100】 メモリアクセス監視および時間バリデーションウインドウモジュール51は、
マイクロプロセッサ50のバス52と、エラー検出および修正メモリ53と、バ
スカプラー54とに連結されている。
【0101】 モジュール51は、マイクロプロセッサ50の「Reset(リセット)」タ
ーミナルでエラー信号を、メモリ53で選択信号(「チップ−選択」、CS)を
、そしてバスカプラー54で選択信号を生成する。
【0102】 メモリ53は、セグメントにおいて共有され、各セグメントは、特定のアクセ
ス権(キーによるバリデーション)を有している。アクセスを他のコンピュータ
機能(捕捉エレクトロニクス、制御エレクトロニクスなど)に供給するデータバ
ス55に連結されるバスカプラー54は、「時間ウインドウ」タイプの信号によ
って妥当性が検査される。
【0103】 本発明による方法は、下記の特徴に基づいている: −3つのエラー制約領域(時間、ソフトウェアおよびハードウェア)、 −テーブルに変数/データを配置、 −処理の時間複写、 −各処理の結果の比較によるエラー検出を可能にするユニークな確実なソフト
ウェア票決モジュール、その票決モジュールは、さらに、コマンドを生成する、 −票決の完全性をチェックするのに関係するソフトウェア監視プロセッサ、 −エラー検出および修正コードによる特異イベントに対して保護される制御装
置メモリプレーン、 −前のエレメントを有して、再開始コンテキストを確実にバックアップし、か
つアドレスエラーを検出するのに使用されるハードウェアアクセス権制御装置に
関連するメモリセグメンテーション、 −アクセス権を制御するハードウェア装置を介して、データバスを通って制御
エレクトロニクスに転送することをチェックし、エラー制約領域の境界を画定す
ること、 −エラーが生ずる場合、再開始による修正。
【0104】 ここでは、順番に、これらの特徴のそれぞれについて記述する。
【0105】 制約領域 最大エラー制約領域60は、図8に示されるように、捕捉エレクトロニクス4
1と、制御装置40とから構成される;この図は、図4と同一参照符号を使用し
ている。したがって、エラーが、捕捉あるいは処理を妨害する場合、このエラー
は、制御エレクトロニクス43に通過させることができない。この結果、捕捉エ
レクトロニクス41において、あるいは制御装置40において、特異イベントに
続いて生ずるエラーは、不良な衛星用コマンドを生成しないし、またミッション
を妨害しない。
【0106】 票決によるこの制約領域60は、票決モジュールが検出することが可能なエラ
ーに効果的である。この制約領域は、さらに、アクセス権チェックの存在により
、ほとんど他のエラーに不浸透性である;時間バリデーションウインドウにおけ
るハードウェア装置が、バスのコマンドの認可されていない発生をブロックする
【0107】 さらに、他の制約領域は、本発明による方法において画定される: −修正がリアルタイムサイクルの粒度に基づいているので、リアルタイムサイ
クルによるエラーの時間制約、 −メモリアクセス監視装置により、ソフトウェアタスクによる、そしてメモリ
アクセスの監視により、仮想シーケンスによるエラー制約。
【0108】 プロセステーブル 本発明による方法のオペレーションは、特に、票決されるデータを含む一連の
テーブルに基づく(その結果、これらのテーブルは、複写され、1つのセットは
、ChV ♯1によって管理され、もう1つのセットは、ChV ♯2によって
管理される)。これらのテーブルは、通常のソフトウェアテーブルとは異なり、
デュプレックスオペレーションに特有なので、「時間多重化されたデュプレック
ステーブル」と呼ばれる。たとえば、 −捕捉テーブル(TAB−Acq)、 −制御テーブル(TAB−Cde)、 −コンテキストテーブル(TAB−Ctxt)。
【0109】 コンテキストテーブルTAB−Ctxt ♯1、TAB−Ctxt ♯2のそ
れぞれは、実際には、再開始による修正を行うとき、コンテキストを再格納する
ことを可能にするために、タスクの終りに(すなわち、票決の終りに)、2つご
とに1つのサイクルをスワッピングすることによって作業する一連の2つのテー
ブルから構成されている。一連の2つのインデックス(「Old(古いインデッ
クス)」と「New(新しいインデックス)」)は、メモリに格納されて、それ
らと関連される。
【0110】 このように、たとえば、仮想シーケンス1について、タスクKのサイクル♯N
の間、第1のテーブルは、「New(新しい)」と考慮され、TAB−Ctxt
−New ♯1と示され、第2のテーブルは、「Old(古い)」と考慮され、
TAB−Ctxt−Old ♯1と示される。タスクKの票決が、何らエラーを
検出しない場合、スワッピングは、票決の終りに役割を逆転し、第1のテーブル
は、次に、TAB−Ctxt−Old ♯1になり、そして第2のテーブルは、
TAB−Ctxt−New ♯1となる。
【0111】 「Old(古い)」の領域は、たとえば、票決されて、異常がないと判断され
ると、マイクロプロセッサクラッシュからコンテキストの再開始を保護するため
に、メモリアクセス監視装置による書き込みを禁じられている。
【0112】 順序付け−時間複写 上記に定義される参照ソフトウェアアーキテクチャと比較すれば、本発明によ
る方法は、コマンドが、図3に示されるように、計算されるとき生成されないこ
とを強要するが、むしろどちらかと言えば、それらは、票決を待つテーブルに格
納される(図5Bを参照)。処理が2つの仮想シーケンスのために終了されると
き、テーブルは票決されて、そして不一致が検出されない場合だけ、票決モジュ
ールがコマンドを生成する;この場合、2つのコマンドテーブルの1つは、バス
45を介して制御エレクトロニクス43を通って、制御装置40に送信される。
【0113】 所定のタスクについて、タイプ複写の態様を含む本発明による方法のグローバ
ルシーケンスは、図9を参照として下記に記述されている。
【0114】 この図は、本発明による時間多重化されたデュプレックスのシーケンスと、コ
ンテキストテーブルのスワッピングとを示している。
【0115】 リアルタイムサイクルは、リアルタイム割り込みIT−TRによって初期化さ
れる。
【0116】 各リアルタイムサイクルは、下記の位相から構成される: −シーケンサ/リアルタイムエグゼクティブ(ETR)、 −タスクA、 −シーケンサ/リアルタイムエグゼクティブ、 −タスクB、 −シーケンサ/リアルタイムエグゼクティブ、 −タスクC, −シーケンサ/リアルタイムエグゼクティブ、 −タスクの取り消しおよび待機。
【0117】 タスクA、タスクBおよびタスクCは、図5Bに示されるように下記のことか
ら構成されている: −仮想シーケンスNo.1 捕捉、 −仮想シーケンスNo.1 処理、 −仮想シーケンスNo.2 捕捉、 −仮想シーケンスNo.2 処理、 −票決およびコマンドの生成。
【0118】 下記のステップがある: ・仮想シーケンス No.1(ChV♯1)のための「処理」モジュールの間: −ChV♯1のデータの捕捉およびTAB−Acq♯11への格納、 −TAB−Acq♯1およびTAB−Ctxt−Old♯1から開始するCh
V♯1と関連する処理の実行;この処理の結果は、TAB−Cde♯1テーブル
およびTAB−Ctxt−New♯1テーブルに格納される;コマンドは、アク
チュエータに送信される制御装置によって生成されない。
【0119】 ・仮想シーケンスNo.2(ChV♯2)のための「処理」モジュールの間: −ChV♯2のデータの捕捉およびTAB−Acq♯2への格納、 −TAB−Acq♯2およびTAB−Ctxt−Old♯2から開始するCh
V♯2に関連する処理の実行;この処理の結果は、TAB−Cde♯2テーブル
およびTAB−Ctxt−New♯2テーブルに格納される;コンピュータは、
なんら出力を生成しない。
【0120】 ・「票決およびコマンドの生成」モジュール、換言すれば、テーブルの比較およ
びテーブルに関連するアクションの実行の間: −逐語的にTAB−Cde♯1とTAB−Cde♯2の比較、 −逐語的にTAB−Ctxt−New No.1とNo.2との比較、 −エラーが検出されない場合、方法は続行し、さもなければ、待機に配置、 −インデックスを変更することによってコンテキストテーブルをスワッピング
する:TAB−Ctxt−NewとTAB−Ctxt−oldとを置き換えて、
次のリアルタイムサイクルのためのコンテキストとして使用される、 −コマンドの生成、2つのTAB−Cdeテーブルの1つが、データバスを介
してコマンドエレクトロニクスにコマンドリクエストを転送するために、連続し
て空にされる、 −時間多重化されたデュプレックスパラメータの初期化(時間多重化されたデ
ュプレックステーブル、時間多重化されたデュプレックス管理変数)。
【0121】 したがって、図9において、リアルタイムサイクルN+1の間、エラーが、リ
アルタイムサイクルNの間検出されない場合、タスクAへのエントリコンテキス
トは、TAB−Ctext−Old(N)であり、このテーブルは、実際には、
スワッピングによりTAB−Ctxt−New(N)からのデータを含んでいる
;エラーが検出される場合、タスクAへのエントリコンテキストは、TAB−C
txt−Old(N−1)であり、このテーブルは、コンテキスト交換がエラー
の場合に起こらないので、リアルタイムサイクルNにおけるテーブルTAB−C
txt−Old(N−1)と同一である。
【0122】 モジュール処理の間、チェックサムコードは、票決に提起されるテーブルのそ
れぞれのために計算され、票決の徹底性(完全性)をチェックすることに関係し
ている。
【0123】 確実なソフトウェア票決 最小として、票決されるのに必要とするデータは、図10に示されるような処
理モジュールからの様々な出力である、すなわち: −不正な動作を生成しないために、コンピュータ(コマンド)から出力される
データ65、 −再開始コンテキストは異常がないであることを必要とするので、再開始のた
めに使用されるデータ66(コンテキスト−サイクルNが障害状態である場合、
異常のないデータN−1は、再開始のために格納される)。
【0124】 このように、処理モジュールから出力されるすべてのデータは、票決される。
所定のタスクと関連する票決は、検出/修正の粒度によって定義されるように、
このタスクの終りに行われる。
【0125】 票決モジュールに関して、本発明による方法は、下記の特徴を与えることが可
能である: −票決保全装置が画定される場合、特異イベントに耐性のある外部部品を使用
する必要がない;アーキテクチャは、したがって、簡素化される;票決は、本発
明による方法における他の場所で必要な少数のハードウェア装置からのサポート
で、ソフトウェア全体においてマイクロプロセッサ自体によって行われることが
可能である。 −ソフトウェア票決は、複写されない。
【0126】 本発明による方法は、デュプレックスアーキテクチャの検出能力の最良使用に
基づいており、換言すれば、検出が最も難しく、さらに、潜在的に最も重大な結
果を有する順序付けエラーを含むすべてのエラータイプを検出することが可能で
ある。これらのエラーは、時間多重化されたデュプレックステーブルの一貫性に
影響を有し、その結果、それらは、ソフトウェア票決が確実であるとすれば、換
言すれば、不正に作動するマイクロプロセッサによって誘発されることができな
いとすれば、それらはソフトウェア票決によって検出される。したがって、適切
な装置は、票決が正しいことを確実にするために備えられる必要がある。
【0127】 2つの中央要素は、票決が確実であることを確実にするために備えられる: −マイクロプロセッサおよび制御装置モジュールが、票決の開始に異常のない
状態であることをチェックすること、 −コマンドの生成を認可するために、票決が行われている間に票決が完結する
ことをチェックすること。
【0128】 票決ストラクチャは、「ソフト」クラッシュによって影響を及ぼされるマイク
ロプロセッサの不良修正の可能性の分析の機能として画定されている:図11A
は、様々な起こり得る「ソフトクラッシュ」タイプの順序付けエラーを示してい
る。
【0129】 「ハードクラッシュ」は、当業者によって通常使用されている方法であるウォ
ッチドッグによって処理される。
【0130】 下記のストラクチャは、タスクKに関連する「Software(ソフトウェ
ア)票決およびコマンド生成」モジュールに使用され、図11Bに示されている
: a)票決の開始時に連結されるマイクロプロセッサの状態と、制御装置モジュ
ールの状態とをチェックすること:スタックポインタが認可された領域内にある
ことをチェックすること、マイクロプロセッサおよび制御装置カード構成レジス
タをチェックすること、 b)票決の間のエラーの確率を最小にするために、可能な場合、キャッシュを
禁止すること、
【0131】 c)Vote−Key(票決−キー)変数が、0に等しいことをチェックし、
次に、それを1にセットすること(すなわち、票決):この変数は、Softw
are Monitoring(ソフトウェア監視)方法を使用して、マイクロ
プロセッサの正しい順序付けを全体的にチェックするのに使用されるキーである
、 d)票決することが行われることを表示し、そして2つのメモリ領域ChV♯
1、ChV♯2への同時アクセスを認可するメモリアクセス監視装置のためのキ
ーを活動化する、
【0132】 e)時間多重化されたデュプレックスによって生成されるすべてのテーブルで
票決し、そして票決が、各テーブル:TAB−Ctxt、TAB−Ctxt−N
ewのために行われるとき、CRC−V票決の間に計算される巡回冗長コードを
計算すること、 f)Vote−Key(票決−キー)が、1に等しいことをチェックし、次に
、それを2にセットすること(すなわち、コマンド生成)、
【0133】 g)CRC−VをCRC−T処理の間に計算される巡回冗長コードと比較する
こと、 h)票決が行われることを表示するメモリアクセス監視装置キーを禁止するこ
と、 i)テストe、f、gの結果が正しい場合、次に、時間バリデーションウイン
ドウシステムを使用して、バスカプラー時間バリデーションウインドウを開くこ
と、 j)コマンドカード構成レジスタを再初期化すること、
【0134】 k)バスカプラーにコマンドを生成すること、 l)コマンドカード構成レジスタをチェックし、そして、検出されるエラータ
イプの関数としてアクションを行う(通常コマンド再送信); 時間ウインドウは終了されるか、あるいは終了するかである。 m)Vote−Key(票決−キー)が、2に等しいことをチェックし、次に
、それを3にセットすること(すなわち、交換および初期化)、 n)メモリに格納される一対の「old(古い)」と「New(新しい)」イ
ンデックスを逆転することによって、タスクKのためのコンテキストテーブルを
スワッピングすること、
【0135】 o)ChV♯1とChV♯2との間の1の補数値で、「Old(古い)」テー
ブルは別としてタスクKのすべてのテーブルを初期化すること、 p)「Old(古い)」テーブルを「New(新しい)」テーブルに転送し、
そして、この転送をチェックするために票決すること;この転送は、タスクが実
行されるたびに、変数が組織的に更新されない場合、変数が長期間有効であるこ
とを確かめるために必要である、 q)Vote−Key(票決−キー)が3に等しいことをチェックし、次に、
0にセットすること(すなわち、禁止されている)、 r)キャッシュの妥当性を検査すること。
【0136】 「票決/コマンド生成/スイッチ/時間多重化されたデュプレックステーブル
の初期化」手順は、割り込まれることができない、すなわち、それは、より優先
度の高いタスクによって止められることがない(それは、初期化されると、終了
される)。とはいえ、割り込みは、このモジュールに一時的に割り込むことが可
能である。
【0137】 ソフトウェア監視プロセッサ 当業者に周知であるSoftware Monitoring Proses
s(ソフトウェア監視方法)は、ソフトウェア自体へのマイクロプロセッサ指示
の正しいなシーケンスの制御を受け渡す手段である。ソフトウェアは、リニア基
本セグメント、換言すれば、2つの結合間のセグメントに分割される。リニアセ
グメントは、それ自体、分岐指示を含んでいないので、マイクロプロセッサが、
このセグメントの第1の指示を実行すると、それは、このセグメントの最後の指
示が実行されるまで続行する必要がある。
【0138】 エントリポイントでキーをテストし、かつそれを出口ポイントでチェックする
ことによって、マイクロプロセッサが、他の場所ではなく、正しいエントリポイ
ントでリニアセグメントを実際に実行したことがチェックされる。
【0139】 票決保全は、このSoftware Monitoring(ソフトウェア監
視)方法を含むいくつかの手段を使用する;「Vote−Key(票決−キー)
」ソフトウェア変数は、この方法と関連するキーである。この票決モジュールは
、アプリケーションソフトウェアの残りが第4のセグメントを表わす方法で、3
つの機能セグメント(票決、コマンド生成、交換と初期化)に分割される: −マイクロプロセッサが、他の場所でなく、出口ポイントで正しく、前のセグ
メントから実際に出たことを確認するために、Software Monito
ring(ソフトウェア監視)方法キーの値は、各セグメントの開始にチェック
され、そして、さらに、そのセグメントが、互いに次々と正しく連鎖されること
がチェックされること、 −次に、Software Monitoring(ソフトウェア監視)方法
キーが、セグメントの開始でのこのチェック直後、現在のセグメントに対応する
値にセットされること、 −マイクロプロセッサが、各セグメントの終りに、他の場所でなく、正しいエ
ントリポイントで現在のセグメントを実際に実行したことがチェックされること
【0140】 メモリプレーンの保護 メモリプレーンは、従来、休止エラーを検出して、修正するべくメモリプレー
ン全体を読み取るために、修正コード(EDAC)と、取り消しタスクとによっ
て特異イベントに対して保護されている。これは、同一ワードの多重エラーが検
出されること、および/または修正されることができないので必要である。
【0141】 本発明による方法は、 −修正コード(EDAC)の使用による特異イベントに関係する信頼性メモリ
と、 −アクセス権を監視することによって、アドレスエラー、指示エラー、マイク
ロプロセッサクラッシュなどに続く不正な書き込みのための信頼性メモリと、 に基づいている。
【0142】 メモリアクセス監視装置 Memory Access Monitoring(メモリアクセス監視)
(SAM)装置は、従来のブロックメモリ保護ユニットから導出されるハードウ
ェア装置である。それは、境界が画定されたメモリ領域にアクセスしようとする
マイクロプロセッサが、実際に、この領域へのアクセス権を有していることをチ
ェックするのに使用される。
【0143】 メモリアクセス監視装置は、最も多くアドレスエラーを検出することが可能で
ある。特に、それは、多数のマイクロプロセッサクラッシュを極めて迅速に検出
することが可能である。マイクロプロセッサは、「ソフト」クラッシュ後、たび
たび、許容可能なアドレス領域の外側に行くことが可能である。
【0144】 メモリアクセス監視装置は、従来のブロックメモリ保護ユニットと比べるとい
くつかの特有の特色を有している: −セグメントのサイズは、任意であり、アプリケーションの関数として画定さ
れること、 −アクセス認可は、メモリアクセス監視装置の内部のレジスタに記憶されるキ
ーをプログラミングすることによって行われ、これらのキーの定義および組合せ
が、本発明による方法に特有である。
【0145】 下述のことは、メモリアクセス監視装置に一体化されるキーのリストである: −コードエラーは、2つの仮想シーケンスに共通のエラーモードであり、そし
て票決によって検出されないので、コードを記憶する領域への書き込みアクセス
を防止するキーであって、このキーは、メモリだけを読み取るコードがRAMに
転送されるとき、コンピュータの初期化の間だけメモリへの書き込みを認可する
、 −仮想シーケンスが現在の ChV♯1、あるいはChV♯2であることを表
示し、そして、ChV♯1が実行されるとき、マイクロプロセッサが、ChV♯
2テーブルを含むメモリ領域にアクセスすることを防止するキー(逆もまた同じ
)であって、このキーは、1つの仮想シーケンスが別のものに生ずるエラーに不
浸透性になることを可能にする、
【0146】 −票決が現在行われていることを表示するキーであって、このキーが、アクテ
ィブであるとき、それは、例外的に、マイクロプロセッサが、2つの領域ChV
♯1、ChV♯2に同時にアクセスすることを可能にし、そのため、票決が行わ
れることが可能である、 −現在のタスクを表示し、そしてマイクロプロセッサが、現在実行されるこの
ソフトウェアタスクのためのテーブルを含むメモリ領域だけにアクセスすること
を可能とするキーであって、このキーは、1つのタスクが、別のタスクに生ずる
エラーに不浸透性になることを可能にする、 −スワッピングで作業する2つの「Old(古い)」/「New(新しい)」
テーブルセットが、「Old(古い)」領域と、「New(新しい)」領域とで
あることを表示するキーであって、書き込みは、「Old(古い)」領域におい
て禁じられている。
【0147】 時間バリデーションウインドウシステム Time Validation Window(時間バリデーションウイン
ドウ)(FVT)システムは、革新的なハードウェア装置である。それは、従来
の時間カウンタを使用して行われる。それは、ハードウェアエラーを制約る。そ
れは、 −コマンドエレクトロニクス管理コードを実行するクラッシュしたマイクロプ
ロセッサが、アクセス権を正しく肯定応答することなく、コマンドを生成するこ
とを防止するように、 −不正な「コマンドに対応するアドレスに書き込む」タイプの指示を実行する
マイクロプロセッサが、偶然にコマンドを生成することを禁ずるように、 構成されている。
【0148】 その結果、時間バリデーションウインドウ装置は、それらがアプリケーション
のために有する潜在的な破局的結果を帯びて、偶然のコマンドからシステムを保
護する。それは、制御されたエレクトロニクスへのアクセスを認可するように予
め準備されている;時間アクセスバリデーションウインドウが開かれる。
【0149】 上述のエラーの場合、マイクロプロセッサは、インターフェイス手順を徹底的
に実行することによって、コマンドエレクトロニクスにアクセスしない;その結
果として、認可されないアクセスは、マイクロプロセッサが、時間バリデーショ
ンウインドウを予め開かないので、このシステムによって直ちに検出される。
【0150】 時間バリデーションウインドウ装置は、存在するエラーがないという決定をし
た後準備される。この決定は、第一に、マイクロプロセッサと制御装置との異常
のない状態をチェックする(票決の開始時に、その時、「Vote−Key(票
決−キー)」変数で、そして票決の間に、「Checksum(チェックサム)
」で)ことに基づき、第二に、票決の結果に基づく。
【0151】 修正 修正は、下記のシーケンスに従って実行される: −エラーが検出されるとき、現在のリアルタイムサイクル(♯N)は、禁止さ
れ、そしてコマンドは生成されない;マイクロプロセッサは、待機モードに進み
、次のリアルタイムサイクルを待つ、 −次のリアルタイムサイクルN+1は、前のコンテキストN−1から実行され
、信頼性のないコンテキストNからは実行されず、そして現在のサイクルN+1
のための捕捉から実行される。
【0152】 不正なリアルタイムサイクルは、リプレイされず、行われるすべては、現在の
リアルタイムサイクルを禁止し、かつ前のサイクルのコンテキストを再格納する
ことである。エラーが生ずると、マイクロプロセッサは、それが待機状態に置か
れるので、現在のリアルタイムサイクルのためのコマンドを生成しない。すべて
のことは、リアルタイムサイクルに「穴」があるかのように生ずる。
【0153】 修正は、特別のアクションを必要としない;マイクロプロセッサは、検出後待
機状態に置かれ、その結果として、それは、票決モジュールの実行を続行しない
。これは、当然のことながら、票決モジュールの終りに起こる「Old(古い)
」コンテキストと「New(新しい)」コンテキストとのスワッピングを防止す
る。
【0154】 方法によって検出される一時的な性質のエラーとすれば、単一の再開始の試み
が行われる。この試みが成功しない場合、コンピュータは、完全に再初期化され
る必要がある。
【0155】 シーケンサ−リアルタイムエグゼクティブ ソフトウェアタスクの順序付けを可能にするシーケンサ、あるいはリアルタイ
ムエグゼクティブは、直接に保護されない。対象は、市販のエグゼクティブを使
用し、そのため、フォールトトレラント構造を含むように、それに何らかの変更
をすることがない。
【0156】 これに反して、総実行時間と比べてこれらのタスクに専用の実行時間は極めて
少ない。その結果として、タスクスケジューリングエラーは、2つの仮想シーケ
ンスに共通のモードであり、検出不可能であるが、適用範囲比率で極めて小さな
影響を有している。
【0157】 さらに、制約領域は、不良コマンドが初期化される前にいくつかの検出されな
いエラーをブロックすることが可能であり、スケジューラから起こるエラーの影
響を減少する。
【0158】 変形実施形態 本発明による方法に対する変形は、特に、その特徴のいくつかを簡素化するこ
とによって可能であり、たとえば、 −票決保全構造の簡素化:チェックサム計算の削除、十分であると考慮される
ソフトウェア監視方法によるチェック、 −メモリアクセス監視装置の簡素化:2つのシーケンス間の同一エラーの可能
性が、極めて少ないので、ChV♯1とChV♯2との間の不浸透性仕切りが不
要(現在の仮想シーケンスを表示するキーの削除)。
【0159】 本発明による方法の開発および実施形態 本発明による方法は、最も包括的で、最も徹底的な可能性のあるバリデーショ
ンを生成し、かつ最大に可能性のあるエラー適用範囲比率を測定するために、開
発された。
【0160】 目的 目的は、これを最後にこの方法を有効にするために、代表的な宇宙アプリケー
ションを表わすハードウェアおよびソフトウェア実施形態(モックアップ)を有
することである。宇宙プロジェクトは、実際には、予備段階における様々な可能
性のある解決法を分析している。新しい解決法について、モックアップが、正し
いオペレーションと、プロジェクトチームがその使用について決定する前に、か
なりの遅延を生ずる必要性への適合とを説明する試みにおいて使用されている。
【0161】 その結果として、この段階の前に、包括的なバリデーションが、要求仕様書、
施行仕様書、施行ファイル、バリデーション結果、回復率測定などを含む完全な
ファイルを興味あるプロジェクトに供給するために企てられている。
【0162】 このように、予備段階において、すべてのプロジェクトは、モックアップを再
開発する必要性がなく、この方法のための完全な開発/バリデーションファイル
を有することが可能である。その結果として、(たとえば、監査により)、プロ
ジェクトの必要性を満たす方法の適合が、選択についての決定をするために、迅
速に決められることが可能である。
【0163】 バリデーション方法 方法は、障害の注入によって妥当性が検査される。したがって、独立した対象
で2つのタイプの注入がある。 −第1の段階において、確定的エラーがソフトウェアによって注入される。こ
の注入は同期であるので、エラーシナリオは、方法が障害状態であるとき、再プ
レイされることが可能である。この段階は、このように、方法の妥当性を検査す
るのに、かつ可能な場合、エラー検出/修正パフォーマンスを改善するために、
それを修正するのに使用されることが可能である。 −第2の段階において、ランダムエラーは、粒子加速器を使用することによっ
て、粒子ビームを本実施形態のメイン部品に印加して注入される(重イオン、プ
ロトン)。この段階は、前の段階に相補的であり、注入されたエラースペクトル
がより広いので、端から端にバリデーションを可能にする。さらに、エラーの分
布が、リアルアプリケーション環境を表わすので、それは、方法のエラー適用範
囲比率を精密に測定することが可能である。
【0164】 ハードウェア実施形態 開発されたハードウェア実施形態は、主として、処理ユニット、捕捉ユニット
および可観測性ユニットの3つの部分から構成されている。
【0165】 処理ユニットは、Power(パワー) PC 603eタイプのマイクロプ
ロセッサとそのメモリ、および方法のすべてのハードウェア構造を一体化するプ
ログラム可能な部品周りで開発されている。
【0166】 捕捉ユニットは、マイクロプロセッサのためのいくつかの捕捉チャネルを模擬
実験し、これらのチャネルのそれぞれは、特別の特徴を有している:マイクロプ
ロセッサの要求で作られる捕捉(簡単なセンサのシミュレーション)、周期的に
作られ、そしてマイクロプロセッサは、それらが到達するときに読み取る必要が
ある捕捉(衛星センサ、あるいはGPSなどのインテリジェントセンサのシミュ
レーション)、リモートコマンドの受信など。これらの捕捉チャネルは、PIC
16C73Aタイプのナノコントローラの周りに作られている。
【0167】 可観測性ユニットは、本実施形態の制御計装(ソフトウェア、マイクロプロセ
ッサの可観測性をロードなど)およびマイクロプロセッサによって作られる動作
のシミュレーションを可能にするチャネルを一体化する。このチャネルの出力は
、それが一時的なエラーによって影響を及ぼされるという事実にもかかわらず、
コンピュータによって生成される障害動作がないことを立証するために、組織的
にチェックされる。
【0168】 ハードウェア実施形態 開発されたソフトウェアアプリケーション(すなわち、ソフトウェア実施形態
)は、宇宙において、あるいは他のアプリケーションにおいて、搭載リアルタイ
ムアプリケーションをできるだけ表わすために、下記の特徴を有している: −後で、市販用リアルタイムエグゼクティブと置き換えられる周期シーケンサ
に基づく順序付け、 −異なるプライオリティを有するいくつかのメインアプリケーションタスク(
たとえば、6個)、それらのいくつかは、周期的であり、その他は、非同期であ
り、非周期的である;それらのタスクの1つは、宇宙機の姿勢制御プログラムの
コアである、 −アプリケーションは、リアルタイムクロックの制御のもとに実行されるリア
ルタイムサイクルに基づき、アプリケーションタスクは、異なる間隔を有してい
る、 −いくつかのアプリケーションタスク、たとえば、3つのアプリケーションは
、より優先度の高いタスクによって割り込まれる、 −ソフトウェアは、捕捉チャネルから生ずる外部非同期イベントに対してリア
ルタイムで作用する。
【0169】
【参考文献】
【図面の簡単な説明】
【図1】 公知の技術によるソフトウェアモジュール三重冗長性を示す。
【図2】 この説明で参考として使用されるハードウェアアーキテクチャの
ためのブロック図を示している。
【図3】 参考ソフトウェアアーキテクチャの時間図を示している。
【図4】 参考アーキテクチャの順序付けを示している。
【図5】 グローバルオペレーティングシーケンスを示す:図5Aはグロー
バルオペレーティングシーケンスなしの手順を示す;図5Bは本発明による処理
を使用する手順を示す。
【図6】 本発明による処理の機能的説明を示す。
【図7】 本発明による全処理のブロック図を示す。
【図8】 ハードウェアレベルのエラー閉じ込み領域を示す。
【図9】 本発明による処理のシーケンスおよびコンテキストテーブルのス
ワッピングを示す。
【図10】 データの票決を示す。
【図11】 異なる「ソフトクラッシュ」形式の順序付けエラーおよび票決
/コマンド生成手順の構造を含む、本発明による処理のための票決の構造を示す
【符号の説明】
A1 A3 Am アクチュエータ C1 C2 Cn センサ Ph1 Ph2 Ph3 メイン位相 1 仮想シーケンス 10 搭載管理ユニット 11 制御装置 12 マスメモリ 13 パワーインターフェイス 14 リモートコントロール−リモート測定インターフェイス 15 ペイロードインターフェイス 16 パイロテクニクスインターフェイス 17 サーマルインターフェイス 18 姿勢および軌道制御システムインターフェイス 19 データバス 20 監視および再構成エレクトロニクス 21 DC−DCコンバータ 25 太陽熱発電機 26 バッテリ 27 デュプレクサ 28 29 アンテナ 31 ペイロード 32 アビオニクスバス 33 高速シリアルリンク 35 展開可能なシステム 36 ヒータおよびサーミスタンス 37 リザーバ圧力センサ 40 制御装置 41 捕捉エレクトロニクス 42 センサ 43 制御エレクトロニクス 44 アクチュエータ 45 データバス 47 仮想シーケンス 48 仮想シーケンス 49 確実な票決モジュール 50 第1のマイクロプロセッサモジュール 51 メモリアクセス監視および時間バリデーションウインドウモジュール 52 バス 53 エラー検出および修正メモリ 54 バスカプラー 55 データバス 60 最大エラー制約領域 65 データ 66 データ
【手続補正書】特許協力条約第34条補正の翻訳文提出書
【提出日】平成12年9月21日(2000.9.21)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0037
【補正方法】変更
【補正内容】
【0037】 特異事象の割合の推定は、宇宙で使用される一般的なコンピュータ用に行なわ
れた。明らかに、この割合は、メモリーセルの数や使用されるユニットセルの感
度の値などの仮定に依存している。限界のシミュレーション。 参考文献
〔9〕は、トランジットエラーに依存する電子或いはデジタルシステ
ムに対する処理手順の一般的概要を示し,且つ処理手段として,空間的冗長度と
時間的冗長度を記述している。 参考文献〔10〕は、エラーに依存する電子システムに対する処理手順を公表
している。このシステムは,冗長シーケンスの使用を回避するために単一の物理
的シーケンスの使用を支援する。 参考文献〔11〕は、メモリ管理及び仮想メモリをイネーブルにするためいに
最近のマイクロプロセッサに適用されるプロセスを記述している。情報に対して
制限されるアクセス原則が考察される。頁或いはその一部へのあるアクセス権は
、各処理毎に与えられ、これらのアクセス権は,リアルタイムで制御される。衛
星の挙動に管理に関するエラーについても、例えば,リアクションホイールのよ
うな、挙動及びオービット制御システムにおける媒体臨界アクチュエータで発生
された悪いコマンドが考えられた。次に、単一事象が低いが,十分には低くない
ことが判ると,この現象は,二つのタイプの制御に関して無視され得る。 −最大限界制御:火器推進ユニット、バッテリー管理など。一年に数回衛星を
失う危険は認められない。 −中間限界制御:リアクションホイール、電磁カプラーなど。飛行、特に商業
衛星飛行(観測、電気通信)は、これらのエラー、エラーが限界に近いものであ
っても、によって発生する姿勢の乱れは認められない。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0045
【補正方法】変更
【補正内容】
【0045】 選択された検出/訂正細分性は,コンピュータで実行されるソフトウエアタス
クの動作サイクルであっても良く、それは、コンテキストに属する変数の数が二
つのリアルタイムサイクル間の境界で完全に最小に減少される主題におけるエキ
スパートに知られている通常の解決策に比較して、定期的に起動される“バック
アップコンテキスト”機能及びエラー訂正時起動される“回復コンテキスト”機
能によって付加される制約を減少出来る。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】0047
【補正方法】変更
【補正内容】
【0047】 エラー訂正の間に起動される“回復コンテキスト”機能は,ヘルシーであると
考えられているコンテキストを指示するインデックス、換言すれば、前のリアル
タイムサイクルにおける“エラーのないこと”がスワップされる必要がないが,
通常(換言すれば、エラーが検出されない時)、それはスワップされるという事
実を使用することによって達成されてもよい。この“ノースワップ(スワップを
しないこと)”は,エラーが検出されるリアルタイムサイクルの禁止に固有であ
り,従って、この機能は、ソフトウエアの開発コストやマイクロプロセッサによ
ってこの機能の実行時間には影響を与えないという利点を提供し、このことは、
この主題におけるエキスパートには典型的に公知の解決策ではない。
【手続補正5】
【補正対象書類名】明細書
【補正対象項目名】0057
【補正方法】変更
【補正内容】
【0057】 本発明は、特にマイクロプロセッサの周辺に製造される制御装置を含むコンピ
ュータのメモリアクセス監視装置(SAM)、およびセグメントに分割され、各
セグメントがこの装置に利用可能なキーの全部あるいはいくつかの論理機能によ
って規定されるアクセス権を有することを特徴とするメモリにも関連し、各セグ
メントへのアクセス権はリアルタイムで制御される。幾つかのセグメントは,マ
イクロプロセッサが良好な動作状態にあるという非常に良好な可能性がある時に
のみ、アクセスを許可した。従って、重要なデータ(例えば,コンテキストデー
タ)の安全な記憶が可能となる。
【手続補正6】
【補正対象書類名】明細書
【補正対象項目名】0058
【補正方法】変更
【補正内容】
【0058】 有利なことは、デバイスにおける利用できるキーのプログラミングに依存して
、一セットの非連続セグメントがあるセグメントに対しては読み出し時において
、及び他のセグメントに対しては読み出し/書き込み時にアクセス可能である。
【手続補正7】
【補正対象書類名】明細書
【補正対象項目名】0060
【補正方法】変更
【補正内容】
【0060】 利用できるキーのセットの定義、これらのキーの組み合わせのための論理機能
、及びキーのプログラミングの関数としてアクセス可能なセグメントの構成が指
定される。
【手続補正8】
【補正対象書類名】明細書
【補正対象項目名】0061
【補正方法】変更
【補正内容】
【0061】 キーの固有定義に関連するこの装置の固有機能を規定することも可能である:
例えば、 −セグメントの中の1つが、コンピュータの例外状態の機能としアクセスでき
る書き込み許可を有するので、重要なデータ(例えば、コード)の確実な記憶を
可能にする、 −重要なデータの確実な記憶を可能にするセグメントが対(「旧」セグメント
および「新」セグメント)(フリップフロップで作動する)でグループ化される
【手続補正9】
【補正対象書類名】明細書
【補正対象項目名】0169
【補正方法】変更
【補正内容】
【0169】
【参考文献】

Claims (20)

    【特許請求の範囲】
  1. 【請求項1】 過渡エラー制約を受ける電子システムのための処理手順であ
    って、単一物理シーケンスにインストールされた2つの仮想シーケンスが、1つ
    の所定のリアルタイムサイクルでタイミングよく多重化され(仮想シーケンスの
    各実行から生じるデータが使用前に票決できるように記憶される)、かつエラー
    が検出される場合、進行中のリアルタイムサイクルが禁止され、異常のないコン
    テキストが再ロードされるコンテキストから始まる次のサイクルの仮実行からな
    る再開始を行うように再ロードされることを特徴とする処理手順。
  2. 【請求項2】 3つのエラー制約領域(時間、ソフトウェアおよびハードウ
    ェア)が使用される請求項1に記載の方法。
  3. 【請求項3】 エラー検出および修正コードによって特異イベントから保護
    される前記制御装置のメモリプレーンが使用される請求項1に記載の方法。
  4. 【請求項4】 使用される前記検出/修正粒度がコンピュータリアルタイム
    サイクルである請求項1に記載の方法。
  5. 【請求項5】 定期的に作動される「バックアップコンテキスト」機能がイ
    ンデックス変更によって得られる請求項1に記載の方法。
  6. 【請求項6】 エラー修正中に作動される「復元コンテキスト」機能が、通
    常スワップされる、換言するとエラーが全く検出されないとしても、前のリアル
    タイムサイクルが変わらなかった後コンテキストを指示するインデックスが異常
    がないとみなされる事実により実行され、この「非スワップ」は、全部エラーが
    検出される前記リアルタイムサイクルの禁止に固有である請求項1に記載の方法
  7. 【請求項7】 前記メモリのセグメンテーションが、アクセス権を検査する
    ハードウェア装置に関連する請求項1に記載の方法。
  8. 【請求項8】 アクセス権を検査する前記ハードウェア装置がいくつかのア
    クセス構成を可能にし、各構成が1つあるいはいくつかの非隣接セグメントへの
    アクセスを可能にする請求項7に記載の方法。
  9. 【請求項9】 アクセス権を検査する前記ハードウェア装置が、1つあるい
    はいくつかのキーの論理組み合わせを有するいくつかのアクセス構成を選択する
    ために使用される請求項7に記載の方法。
  10. 【請求項10】 票決される変数/データがテーブルに入れられる請求項1
    に記載の方法。
  11. 【請求項11】 特にソフトウェアおよびハードウェア監視プロセッサを含
    む、粒度がソフトウェア検査によって得られるソフトウェア票決が使用される請
    求項1に記載の方法。
  12. 【請求項12】 前記制御エレクトロニクスへの転送が、アクセス権を検査
    し、かつタイミングよくこの転送のバリディティを制限するハードウェア装置に
    よって制御され、したがってハードウェアエラー制約領域の限界を定める請求項
    1に記載の方法。
  13. 【請求項13】 宇宙用途で使用される前述の請求項のいずれかに記載の方
    法。
  14. 【請求項14】 マイクロプロセッサの周りに形成された制御装置およびメ
    モリを含むコンピュータのメモリアクセスを監視する装置であって、前記メモリ
    が、セグメントに分割され、各セグメントが前記装置で利用可能なキーの全部あ
    るいはいくつかの論理機能によって規定されるアクセス権を有し、各セグメント
    への前記アクセス権がリアルタイムで制御されることを特徴とする装置。
  15. 【請求項15】 非隣接セグメントのセットが、前記装置にあるキーのプロ
    グラミングに応じて、いくつかのセグメントに対して読み出し専用でおよび他の
    セグメントに対して読み出し/書き込みでアクセス可能である請求項14に記載
    の装置。
  16. 【請求項16】 セグメントサイズが、所定の用途に対して最適化できるよ
    うに任意である請求項14に記載の装置。
  17. 【請求項17】 利用可能なキーのセットの定義、これらのキーに対する論
    理的組合せ機能および前記キーのプログラミングの機能としての前記アクセス可
    能なセグメントの構成が固有である請求項14に記載の装置。
  18. 【請求項18】 前記セグメントの中の1つが前記コンピュータの例外状態
    でアクセス可能な書き込み許可を有し、したがって重要なデータの確実な記憶を
    可能にする請求項14に記載の装置。
  19. 【請求項19】 各セグメントへのアクセスは、マイクロプロセッサが良好
    な「動作状態」にあるときのみ認められ、したがって重要なデータの確実な記憶
    を可能にする請求項14に記載の装置。
  20. 【請求項20】 重要なデータの確実な記憶を可能にするために使用される
    セグメントは、スワップして動作する対にグループ化される。
JP2000576368A 1998-10-12 1999-10-11 過渡エラー制約を受ける電子システムのための処理手順 Expired - Lifetime JP4671507B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
FR9812745A FR2784475B1 (fr) 1998-10-12 1998-10-12 Procede de traitement d'un systeme electronique soumis a des contraintes d'erreurs transitoires
FR98/12745 1998-10-12
PCT/FR1999/002430 WO2000022529A1 (fr) 1998-10-12 1999-10-11 Procede de traitement d'un systeme electronique soumis a des contraintes d'erreurs transitoires et dispositif de surveillance des acces memoire

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2010057535A Division JP5283650B2 (ja) 1998-10-12 2010-03-15 過渡エラー制約を受ける電子システムのためのメモリアクセス監視装置

Publications (3)

Publication Number Publication Date
JP2002527820A true JP2002527820A (ja) 2002-08-27
JP2002527820A5 JP2002527820A5 (ja) 2010-05-06
JP4671507B2 JP4671507B2 (ja) 2011-04-20

Family

ID=9531439

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2000576368A Expired - Lifetime JP4671507B2 (ja) 1998-10-12 1999-10-11 過渡エラー制約を受ける電子システムのための処理手順
JP2010057535A Expired - Lifetime JP5283650B2 (ja) 1998-10-12 2010-03-15 過渡エラー制約を受ける電子システムのためのメモリアクセス監視装置

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2010057535A Expired - Lifetime JP5283650B2 (ja) 1998-10-12 2010-03-15 過渡エラー制約を受ける電子システムのためのメモリアクセス監視装置

Country Status (7)

Country Link
US (1) US6839868B1 (ja)
EP (2) EP1267265A3 (ja)
JP (2) JP4671507B2 (ja)
DE (1) DE69905272T2 (ja)
ES (1) ES2192863T3 (ja)
FR (1) FR2784475B1 (ja)
WO (1) WO2000022529A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007133807A (ja) * 2005-11-14 2007-05-31 Hitachi Ltd データ処理システム、ストレージ装置及び管理装置
JP2008508626A (ja) * 2004-08-04 2008-03-21 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング コンピュータプログラムを処理する方法、オペレーティングシステムおよび計算装置

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6701480B1 (en) * 2000-03-08 2004-03-02 Rockwell Automation Technologies, Inc. System and method for providing error check and correction in memory systems
EP1438662A2 (en) * 2001-10-11 2004-07-21 Altera Corporation Error detection on programmable logic resources
JP3722057B2 (ja) * 2001-11-30 2005-11-30 ソニー株式会社 データ記録再生装置及びデータ記録再生方法、並びにデジタルカメラ
US20040019895A1 (en) * 2002-07-29 2004-01-29 Intel Corporation Dynamic communication tuning apparatus, systems, and methods
US20050193283A1 (en) * 2003-12-30 2005-09-01 Reinhardt Steven K. Buffering unchecked stores for fault detection in redundant multithreading systems using speculative memory support
US7328377B1 (en) 2004-01-27 2008-02-05 Altera Corporation Error correction for programmable logic integrated circuits
DE102004019371B4 (de) * 2004-04-21 2006-04-13 Siemens Ag Verfahren zur Wiederherstellung eines Betriebszustands eines Systems
US7166847B2 (en) * 2004-06-30 2007-01-23 Intel Corporation System with response to cosmic ray detection
DE102004051991A1 (de) * 2004-10-25 2006-04-27 Robert Bosch Gmbh Verfahren, Betriebssystem und Rechengerät zum Abarbeiten eines Computerprogramms
DE102005023296B4 (de) * 2005-05-12 2007-07-12 Siemens Ag Zugbeeinflussungssystem
US7272681B2 (en) * 2005-08-05 2007-09-18 Raytheon Company System having parallel data processors which generate redundant effector date to detect errors
US8024639B2 (en) 2006-06-23 2011-09-20 Schweitzer Engineering Laboratories, Inc. Software and methods to detect and correct data structure
US20080080114A1 (en) * 2006-09-29 2008-04-03 Schweitzer Engineering Laboratories, Inc. Apparatus, systems and methods for reliably detecting faults within a power distribution system
US7702971B2 (en) * 2007-06-06 2010-04-20 Dell Products L.P. System and method for predictive failure detection
US20110099439A1 (en) * 2009-10-23 2011-04-28 Infineon Technologies Ag Automatic diverse software generation for use in high integrity systems
US20110208948A1 (en) * 2010-02-23 2011-08-25 Infineon Technologies Ag Reading to and writing from peripherals with temporally separated redundant processor execution
US8516356B2 (en) 2010-07-20 2013-08-20 Infineon Technologies Ag Real-time error detection by inverse processing
US8441768B2 (en) 2010-09-08 2013-05-14 Schweitzer Engineering Laboratories Inc Systems and methods for independent self-monitoring
US9007731B2 (en) 2012-03-26 2015-04-14 Schweitzer Engineering Laboratories, Inc. Leveraging inherent redundancy in a multifunction IED
US8955157B2 (en) * 2012-07-03 2015-02-10 Honeywell International Inc. Method and apparatus for differential power analysis protection
US9270792B2 (en) * 2012-11-21 2016-02-23 Ubiquiti Networks, Inc. Method and system for improving wireless link efficiency
EP3279796B1 (en) * 2016-08-02 2020-07-15 NXP USA, Inc. Resource access management component and method therefor
IT201800007412A1 (it) * 2018-07-23 2020-01-23 Sistema elettronico modulare per la verifica della corretta esecuzione di operazioni eseguite dal sistema stesso
US11323362B2 (en) 2020-08-07 2022-05-03 Schweitzer Engineering Laboratories, Inc. Resilience to single event upsets in software defined networks

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5329039A (en) * 1976-08-30 1978-03-17 Hitachi Ltd Operation processing unit
JPS5488748A (en) * 1977-12-26 1979-07-14 Hitachi Ltd Error detection system
JPS5561863A (en) * 1978-11-01 1980-05-09 Hitachi Ltd Information processor
JPS62293441A (ja) * 1986-06-12 1987-12-21 Nec Corp デ−タ出力方式
JPH0883191A (ja) * 1994-09-13 1996-03-26 Fujitsu Ltd マイクロプロセッサの故障阻止方法とその装置
JPH08115230A (ja) * 1994-10-18 1996-05-07 Fujitsu Ltd プロセッサの制御方法及びプログラム監視装置
JPH10283215A (ja) * 1997-04-10 1998-10-23 Mitsubishi Electric Corp 耐ソフトウェア障害構成を有したデータ処理装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4371930A (en) * 1980-06-03 1983-02-01 Burroughs Corporation Apparatus for detecting, correcting and logging single bit memory read errors
IN161526B (ja) * 1983-07-29 1987-12-19 Westinghouse Brake & Signal
US4683532A (en) * 1984-12-03 1987-07-28 Honeywell Inc. Real-time software monitor and write protect controller
US5434999A (en) * 1988-11-09 1995-07-18 Bull Cp8 Safeguarded remote loading of service programs by authorizing loading in protected memory zones in a terminal
JPH03100847A (ja) * 1989-09-14 1991-04-25 Fujitsu Ltd メモリの書込み禁止回路
JPH03147159A (ja) * 1989-11-02 1991-06-24 Nitsuko Corp メモリ保護方式
JPH04253244A (ja) * 1991-01-29 1992-09-09 Nec Corp プログラム暴走時のメモリ内データ保護回路
US5504814A (en) * 1991-07-10 1996-04-02 Hughes Aircraft Company Efficient security kernel for the 80960 extended architecture
US5596739A (en) * 1994-02-08 1997-01-21 Meridian Semiconductor, Inc. Method and apparatus for detecting memory segment violations in a microprocessor-based system
US5590277A (en) * 1994-06-22 1996-12-31 Lucent Technologies Inc. Progressive retry method and apparatus for software failure recovery in multi-process message-passing applications
JPH0822419A (ja) * 1994-07-08 1996-01-23 Mitsubishi Electric Corp 誤書込防止方式
US5845331A (en) * 1994-09-28 1998-12-01 Massachusetts Institute Of Technology Memory system including guarded pointers
US5485577A (en) * 1994-12-16 1996-01-16 General Instrument Corporation Of Delaware Method and apparatus for incremental delivery of access rights
JP3072048B2 (ja) * 1996-03-19 2000-07-31 株式会社東芝 計算機システムおよび計算機システムのソフトウェア故障回復方法
JPH09259043A (ja) * 1996-03-22 1997-10-03 Sharp Corp メモリ保護メカニズム
US5963191A (en) * 1997-03-25 1999-10-05 International Business Machines Corporation Method and system for denying graphical pointer access to a widget of a data processing system graphical user interface
JP3790323B2 (ja) * 1997-04-16 2006-06-28 株式会社ルネサステクノロジ データ転送制御装置、マイクロコンピュータ及びデータ処理システム
US6212635B1 (en) * 1997-07-18 2001-04-03 David C. Reardon Network security system allowing access and modification to a security subsystem after initial installation when a master token is in place
EP1000395B1 (en) * 1997-07-28 2004-12-01 Intergraph Hardware Technologies Company Apparatus and method for memory error detection and error reporting

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5329039A (en) * 1976-08-30 1978-03-17 Hitachi Ltd Operation processing unit
JPS5488748A (en) * 1977-12-26 1979-07-14 Hitachi Ltd Error detection system
JPS5561863A (en) * 1978-11-01 1980-05-09 Hitachi Ltd Information processor
JPS62293441A (ja) * 1986-06-12 1987-12-21 Nec Corp デ−タ出力方式
JPH0883191A (ja) * 1994-09-13 1996-03-26 Fujitsu Ltd マイクロプロセッサの故障阻止方法とその装置
JPH08115230A (ja) * 1994-10-18 1996-05-07 Fujitsu Ltd プロセッサの制御方法及びプログラム監視装置
JPH10283215A (ja) * 1997-04-10 1998-10-23 Mitsubishi Electric Corp 耐ソフトウェア障害構成を有したデータ処理装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008508626A (ja) * 2004-08-04 2008-03-21 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング コンピュータプログラムを処理する方法、オペレーティングシステムおよび計算装置
JP4728334B2 (ja) * 2004-08-04 2011-07-20 ローベルト ボッシュ ゲゼルシャフト ミット ベシュレンクテル ハフツング コンピュータプログラムを処理する方法、オペレーティングシステムおよび計算装置
JP2007133807A (ja) * 2005-11-14 2007-05-31 Hitachi Ltd データ処理システム、ストレージ装置及び管理装置

Also Published As

Publication number Publication date
ES2192863T3 (es) 2003-10-16
DE69905272D1 (de) 2003-03-13
FR2784475B1 (fr) 2000-12-29
JP2010134967A (ja) 2010-06-17
EP1121642A1 (fr) 2001-08-08
JP4671507B2 (ja) 2011-04-20
EP1267265A2 (fr) 2002-12-18
DE69905272T2 (de) 2003-12-11
EP1121642B1 (fr) 2003-02-05
JP5283650B2 (ja) 2013-09-04
US6839868B1 (en) 2005-01-04
EP1267265A3 (fr) 2005-08-17
WO2000022529A1 (fr) 2000-04-20
FR2784475A1 (fr) 2000-04-14

Similar Documents

Publication Publication Date Title
JP5283650B2 (ja) 過渡エラー制約を受ける電子システムのためのメモリアクセス監視装置
Powell et al. GUARDS: A generic upgradable architecture for real-time dependable systems
US7024594B2 (en) Software system tolerating transient errors and control process in such a system
Lala et al. Architectural principles for safety-critical real-time applications
Hitt et al. Fault-tolerant avionics
Butler A primer on architectural level fault tolerance
JP2002527820A5 (ja) 過渡エラー制約を受ける電子システムのための処理手順
Pignol DMT and DT2: two fault-tolerant architectures developed by CNES for COTS-based spacecraft supercomputers
Wilfredo Software fault tolerance: A tutorial
Punnekkat Schedulability analysis for fault tolerant real-time systems
Schagaev et al. Software design for resilient computer systems
Heidergott SEU tolerant device, circuit and processor design
Ding et al. More: Model-based redundancy for simulink
Thane Safe and Reliable Computer Control Systems Concepts and Methods
Hiller Software fault-tolerance techniques from a real-time systems point of view
Liu A study of flight-critical computer system recovery from space radiation-induced error
Saha Approaches to software based fault tolerance–a review
Schoppers et al. Availability Vs. Lifetime Trade-Space In Spacecraft Computers
Murray et al. Highly reliable multiprocessors
Mulcare Fault-Tolerant Avionics
Laplante Computing requirements for self-repairing space systems
Paiva Fault Injector to Verify and Validate Nanosatellites
Lahoz Meta-Requirements for Space Systems
Christmansson et al. Dependable flight control system by data diversity and self-checking components
Aidemark et al. Using Massive Time Redundancy to Achieve Nodelevel Transient Fault Tolerance

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060920

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091215

A524 Written submission of copy of amendment under section 19 (pct)

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20100315

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100727

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20101027

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20101104

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101129

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110118

R150 Certificate of patent or registration of utility model

Ref document number: 4671507

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20140128

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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