(57)【要約】本発明によれば、マルチコアプロセッサの少なくとも２つのプロセッサコアが、安全性を最重視すべきアプリケーションの２チャンネル計算のために使用される。計算操作は各計算サイクルにおいて両プロセッサコア上で冗長的に計算されず、両プロセッサコアは異なる動作サイクルにおいて異なるアプリケーションで十分に能力を活用される。従って所要計算容量の倍増が有利に回避される。プロセッサコアの相互監視を達成するために、計算操作は両プロセッサコア上で計算される。開示されたエラー認識機構によって、偶然誤差を認識することができる。確かに、本発明によるエラー認識の質は、従来技術から知られている並列冗長マルチチャンネル計算による「デュアルレーン動作」よりやや低いものの、本発明は、十分に安全なエラー認識に対する要求と、計算能力の経済的な設計とを調和させている。【選択図】図１
2019500682.tif 000002
【特許請求の範囲】
【請求項１】
複数の周期的な計算操作を含むアプリケーションがマルチコアプロセッサ上で実行され、各計算操作の計算のために時間的に定められた動作サイクルが設けられている、マルチコアプロセッサの操作方法において、
１つの計算操作の計算が、分配スキームに従って割り当てられた前記マルチコアプロセッサのプロセッサコア上で実行され、
現在の計算操作の結果の保存後に、現在の動作サイクル内において比較スキームに依存して現在の計算操作の結果と少なくとも１動作サイクル前の計算操作の少なくとも１つの結果との間の少なくとも１つの乖離が求められ、
少なくとも１つの乖離が期待された値の範囲外にある場合に、エラー表示が出力され、
後続の計算操作の計算が、前記分配スキームに従って割り当てられた前記マルチコアプロセッサのプロセッサコア上で実行されることを特徴とする方法。
【請求項２】
前記分配スキームに従って、前記計算操作がその都度順番に、前記マルチコアプロセッサのプロセッサコアの１つに割り当てられることを特徴とする請求項１記載の方法。
【請求項３】
前記マルチコアプロセッサの第２のプロセッサコアへ割り当ての変更が行われる前に、前記分配スキームに従って、予め設定可能な複数の動作サイクルに対して前記マルチコアプロセッサの第１のプロセッサコアへの割り当てが行われることを特徴とする請求項１または２記載の方法。
【請求項４】
前記エラー表示の出力時に、前記第１のプロセッサコアへ割り当てる動作サイクル数が増大されることを特徴とする請求項３記載の方法。
【請求項５】
前記分配スキームに従って、前記計算操作がその都度順番に、特に周期的に、前記マルチコアプロセッサの少なくとも３つのプロセッサコアのうちの１つへ割り当てられることを特徴とする請求項２、請求項２を引用する請求項３、および、請求項２を間接的に引用する請求項４の１つに記載の方法。
【請求項６】
前記比較スキームに従って、１動作サイクル前の計算操作の結果と現在の動作サイクルの計算操作の結果とから、第１の乖離が決定されることを特徴とする請求項１乃至５の１つに記載の方法。
【請求項７】
前記第１の乖離が前記第１の乖離に対する期待される値の範囲外にある場合に、前記エラー表示が出力されることを特徴とする請求項６記載の方法。
【請求項８】
２動作サイクル前の計算操作の結果と現在の動作サイクルの計算操作の結果とから、第２の乖離が決定されること、および／または
２動作サイクル前の計算操作の結果と１動作サイクル前の計算操作の結果とから、第３の乖離が決定されること、および／または
１動作サイクル前の計算操作の結果と現在動作サイクルの計算操作の結果との差から、第１の差が決定されること、および／または
２動作サイクル前の計算操作の結果と１動作サイクル前の計算操作の結果との差から、第２の差が決定されることを特徴とする請求項６記載の方法。
【請求項９】
前記第２の乖離が前記第１の乖離よりも小であり、かつ
前記第２の乖離が前記第３の乖離よりも小であり、かつ
前記第１の差が前記第２の差と異なる符号を有する場合に、エラー表示が出力されることを特徴とする請求項８記載の方法。
【請求項１０】
前記３動作サイクル前の計算操作の結果と前記１動作サイクル前の計算操作の結果とから、第４の乖離が決定され、
前記３動作サイクル前の計算操作の結果と前記２動作サイクル前の計算操作の結果とから、第５の乖離が決定され、
前記３動作サイクル前の計算操作の結果と前記２動作サイクル前の計算操作の結果との差から、第３の差が決定されることを特徴とする請求項８記載の方法。
【請求項１１】
前記第２の乖離が前記第１の乖離よりも小であり、かつ
前記第２の乖離が前記第３の乖離よりも小であり、かつ
前記第４の乖離が前記第３の乖離よりも小であり、かつ
前記第４の乖離が前記第５の乖離よりも小であり、かつ
前記第１の差が前記第３の差と異なる符号を有し、かつ
前記第３の差が前記第２の差と異なる符号を有する場合に、エラー表示が出力されることを特徴とする請求項１０記載の方法。
【請求項１２】
前記比較スキームに従って、各動作サイクルについて少なくとも１つの乖離が決定されることを特徴とする請求項１乃至１１の１つに記載の方法。
【請求項１３】
前記比較スキームに従って、各ｎ番目の動作サイクルについて少なくとも１つの乖離が決定され、ｎは自然数であることを特徴とする請求項１乃至１２の１つに記載の方法。
【請求項１４】
制御システムにおいて少なくとも１つのマルチコアプロセッサによって実行される際に請求項１乃至１３の１つに記載の方法を実施するための手段を有するコンピュータプログラム製品。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、請求項１のプリアンブル事項によるマルチコアプロセッサの操作方法に関する。
【背景技術】
【０００２】
現代および未来の車両には電子的に制御される多数の機能が装備され、これらの機能には安全性および可用性に関して高度の車両制御システムが要求される。
【０００３】
現在、ソフトウェア機能のフェールセーフな実行を保証できる二重化制御コンピュータ（Duplex-Control-Computer, DCC）に基づく高安全性・高可用性の制御システムが使用されている。そのためには２つの独立したマイクロプロセッサ上で同一のソフトウェアを実行する必要がある。不揮発性および揮発性のメモリユニット、ネットワーク接続ユニット、リソースマネジャ等のマイクロプロセッサ周辺機能も、二重にされた「デュアルレーン」処理方式の「レーン」であるとも見なされる２つの分離した処理経路上で行われる。ある特定の時点で両マイクロプロセッサの結果が相互に交換されて、両マイクロプロセッサにおいて互いに比較される。
【０００４】
これらのいわゆるレーンの１つまたはそれの通信リンクにおいてエラーが生じた場合に、この比較によりレーンのうち少なくとも１つにおいて異常な結果が認識される。その結果として、その二重化制御コンピュータは、故障したとみなされて遮断される。それゆえ、１つの二重化制御コンピュータから誤った制御信号が送出されることはなく、従って「フェールサイレント」特性が達成されることが保証されている。第１の二重化制御コンピュータのエラーの際にこれの処理を引き受けるさらに別の二重化制御コンピュータを用意することによって、「フェイルオペレーショナル」特性さえも達成することができる。
【０００５】
２つの独立に動作するプロセッサを用いたデュアルレーン動作によって保証されるこのエラー認識確率は、高いハードウェア費用によって達成される。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の課題は、必要とするハードウェア費用が少なく、それと同時に最適なハードウェアリソースの最適利用を可能にする高い可用性およびインテグリティを有する制御システムを実現する装置および方法を提供することにある。
【課題を解決するための手段】
【０００７】
この課題は、本発明によれば、請求項１の特徴事項を有する方法によって解決される。
【０００８】
本発明による方法はマルチコアプロセッサの操作方法を提供する。この操作方法では、複数の周期的な計算操作を含むとりわけ安全性を最重視すべきアプリケーションが、マルチコアプロセッサ上で実行される。周期的な計算操作なる用語は、特に制御量の多段階の計算を含む。これらの制御量の場合には、離散時点で制御システムにディジタル化された操作量が供給され、そこにおいて時間的に同期計算されてディジタル出力信号として出力される。各計算操作の計算のために、時間的に定められた動作サイクル設けられ、この動作サイクルは、基礎をなす調節回路の最小時定数よりも遥かに小さいことが好ましい。
【０００９】
本発明によれば、分配スキームが設けられており、この分配スキームに従って、１つの計算操作の計算が前記マルチコアプロセッサの１つのコアに割り当てられる。現在の計算操作の結果の保存後に、現在の動作サイクル内において比較スキームに依存して、現在の計算操作の結果と少なくとも１動作サイクル前の計算操作の少なくとも１つの結果との間の少なくとも１つの乖離が求められる。少なくとも１つの乖離が期待された値の範囲外にある場合に、エラー表示が出力される。続いて、後続の計算操作の計算が、前記分配スキームに従って割り当てられた前記マルチコアプロセッサの他のプロセッサコア上で行われる。
【００１０】
本発明によれば、１つのマルチコアプロセッサの複数のプロセッサコア（Cores）が、安全性を最も重要視すべきアプリケーションのマルチチャンネル計算のために使用され、複数のプロセッサコアが各動作サイクルにおいて変更させられる。
【００１１】
現在の動作サイクルの計算操作の結果と少なくとも１動作サイクル前の計算操作の少なくとも１つの結果との間の少なくとも１つの乖離の比較スキームに基づく本発明による比較によって、偶然誤差を認識することができる。確かに、本発明によるエラー認識の質は、従来技術から知られている並列冗長マルチチャンネル計算による「デュアルレーン動作」よりも若干低い。しかし、特に制御システムに経済的な実現が要求される場合には、計算能力に対する費用の節減という要件に比べて、エラー認識の質をあと回しにすることができる。従って、本発明は、十分に安全なエラー認識に対する要求と、計算能力の経済的な設計とを調和させている。
【００１２】
有利なやり方では、今や安全を最重視すべきアプリケーションの処理の影響を受けない残りのプロセッサコア上で、安全を最重視すべき他のアプリケーションまたは安全を最重視しないアプリケーションのための計算操作を実行することができ、従って、マルチチャンネル計算にも拘わらず、全体として計算能力に対して目立つほどの超過需要が生じることはない。特に、それぞれ１つのプロセッサコア上で冗長計算を伴うデュアルレーン動作を行う場合に従来技術から知られている所要計算能力の倍増が回避される。
【００１３】
本発明の他の有利な実施形態は従属請求項に記載されている。
【００１４】
本発明の実施形態によれば、計算操作が、その都度順番に、前記マルチコアプロセッサのコアの１つに割り当てられる。本発明のこの実施形態は、特に、安全性を最重視すべきアプリケーションの２チャンネル計算を伴う２コアまたはマルチコアプロセッサの操作の際に、その選択の手段であり、複数のプロセッサコアが各動作サイクルにおいて変更させられる。
【００１５】
以下に説明する本発明の実施形態は多段階の比較スキーム基づいており、この比較スキームは次の考えに基づく。即ち、第１のプロセッサコアにおいて、または第１のプロセッサコアに割り当てられたメモリにおいて、１つの典型的な動作サイクルｉで、エラーが発生した場合に、この第１のプロセッサコアによって達成される結果は歪曲されているという考えである。それに続く動作サイクルｉ＋１では、今や第２のプロセッサコアが歪曲された結果を算出する。動作サイクルｉ＋２では、ここでも歪曲された結果が第１のプロセッサコアにおいて算出される。各動作サイクルでは、両プロセッサコアのそれぞれにおいて現在の結果と少なくとも１つ前の結果との間の乖離が比較される。その際に早ければ動作サイクルｉにおいて、遅くとも動作サイクルｉ＋２において、エラーを確定することができる。
【００１６】
本発明の実施形態によれば、比較スキームが設けられており、この比較スキームに従って１動作サイクル前の計算操作の結果と現在の動作サイクルの計算操作の結果とから第１の乖離が決定される。この第１の乖離が最大値を上回る場合には、または換言するならば、この第１の乖離が第１の乖離に期待された値の範囲外にある場合には、本発明によれば、エラー表示が出力される。この実施形態によれば、１つのその都度変更するプロセッサコア上で安全を最重視すべきアプリケーションの２チャンネル計算をする際に、１つのプロセッサコアの誤った計算が動作サイクルｉにおいて認識され、その際に、一方のプロセッサコアによって計算された結果は、動作サイクルｉ−１において他方のプロセッサコアによって計算された結果と次のように相違する。即ち、現在の結果が、他の結果に対して、予め設定可能な最大値もしくは最大乖離の範囲外にある乖離を有するように相違する。
【００１７】
本発明によって予め与えられた一貫性検査は、従来技術から公知のデュアルレーン動作におけるようなビットアイデンティティに基づいて行われるのではなく、比較スキームに基づいて行われる。その理由は、相前後する動作サイクルにおける計算操作のために相前後する動作サイクルからの入力データも使用されるからである。相前後する動作サイクルからの入力データは一般的には異なっているので、結果もしくは出力データも許容し得る乖離だけ異なっている。この許容し得る乖離に関しては、許容し得る最大乖離を予め設定してもよいし、あるいは、その代替または追加として、許容し得る乖離を前の動作サイクルからの結果乖離から計算してもよい。許容し得る乖離を前の動作サイクルからの結果乖離から計算するという最後に述べた計算方法を、次の実施形態において説明する。
【００１８】
本発明による措置によって偶然誤差を認識することができる。異なるプロセッサコア上で同一のソフトウェアを実行する場合には、一般に系統誤差は認識できない。さらに、これは従来技術において知られているデュアルレーン動作にも当てはまる。
【００１９】
系統誤差も認識すべきである場合に、１つのデュアルレーンコンピュータの２つのプロセッサ上で、同じエラーを含んでいない可能性が非常に高い別種のソフトウェアを実行することは従来技術において公知である。その場合に、第２のソフトウェアは、第１のソフトウェアと同一の機能範囲を有し得るか、簡素化された計算を実行し得るかのいずれかである。後者は包絡関数とも称せられる。両事例では、デュアルレーンコンピュータの場合にも、ビットアイデンティティの比較は行わず、結果比較だけを行うとよい。有利なやり方では、上述の両方法は本発明による方法と組み合わせ可能である。そのために、例えばアプリケーションＡ１がサイクルｉにおいてコアＣ１上で実行され、アプリケーションＡ２がサイクルｉ＋１においてコアＣ２上で実行されるであろう。エラーのない場合には、既述のエラー認識が変更されないで機能し、場合によっては増大された許容し得る差分により機能する。特に、アプリケーションの１つが包絡関数である場合には、従来技術においても通常であるように、より大きな差分を用意すべきであろう。関数の多様性により、この実施形態におけるエラー認識機構は、アプリケーションＡ１およびＡ２におけるエラーもしくは差異を認識することができるであろう。
【００２０】
本発明の実施形態によれば、複数の以前の計算操作の結果の間の他の乖離ならびに差が、動作サイクルｉ＋１において決定され、その際に、
２動作サイクル前の計算操作の結果と現在の動作サイクルの計算操作の結果とから、第２の乖離が決定され、および／または
２動作サイクル前の計算操作の結果と１動作サイクル前の計算操作の結果とから、第３の乖離が決定され、および／または
１動作サイクル前の計算操作の結果と現在の動作サイクルの計算操作の結果との差から、第１の差が決定され、および／または
２動作サイクル前の計算操作の結果と１動作サイクル前の計算操作の結果との差から、第２の差が決定される。
【００２１】
本発明の実施形態によれば、
第２の乖離が第１の乖離よりも小であり、かつ
第２の乖離が第３の乖離よりも小であり、かつ
第１の差が第２の差と異なる符号を有する場合にエラー表示が出力される。
【００２２】
この実施形態によれば、１つのその都度変更するプロセッサコア上で安全を最重視すべきアプリケーションの２チャンネル計算を行う場合に、動作サイクルｉ＋１において一方のプロセッサコアの誤った計算が認識され、その誤った計算の際に一方のプロセッサコアによって計算された結果は、系統的に他方のプロセッサコアによって計算された結果と相違する。その際に動作サイクルｉ−１およびｉ＋１において計算された両結果の第２の乖離が、動作サイクルｉおよびｉ＋１からの両結果の第１の乖離よりも小であり、かつ動作サイクルｉ−１およびｉからの両結果の第３の乖離よりも小である。さらに、動作サイクルｉ−１およびｉからの両結果の第１の差が、動作サイクルｉおよびｉ＋１からの両結果の第２の差とは異なる符号を持つ。
【００２３】
本発明の実施形態によれば、複数の以前の計算操作の結果の間の他の乖離ならびに差が動作サイクルｉ＋２において決定され、その際に、
３動作サイクル前の計算操作の結果と１動作サイクル前の計算操作の結果とから、第４の乖離が決定され、および／または
３動作サイクル前の計算操作の結果と２動作サイクル前の計算操作の結果とから、第５の乖離が決定され、および／または
３動作サイクル前の計算操作の結果と２動作サイクル前の計算操作の結果との差から、第３の差が決定される。
【００２４】
本発明の実施形態によれば、
第２の乖離が第１の乖離よりも小であり、かつ
第２の乖離が第３の乖離よりも小であり、かつ
第４の乖離が第３の乖離よりも小であり、かつ
第４の乖離が第５の乖離よりも小であり、かつ
第１の差が第３の差と異なる符号を有し、かつ
第３の差が第２の差と異なる符号を有する場合に、エラー表示が出力される。
【００２５】
この実施形態によれば、１つのその都度変更するプロセッサコアにおいて安全を最重視すべきアプリケーションの２チャンネル計算を行う場合に、一方のプロセッサコアの誤った計算が動作サイクルｉ＋２において認識され、その誤った計算の際に一方のプロセッサコアによって計算された結果は、系統的に他方のプロセッサコアによって計算された結果と相違する。その際に、動作サイクルｉおよびｉ＋２において計算された両結果の第２の乖離は、動作サイクルｉ＋１およびｉ＋２からの両結果の第１の乖離よりも小であり、かつ動作サイクルｉおよびｉ＋１からの両結果の第３の乖離よりも小である。
【００２６】
さらに、動作サイクルｉ−１およびｉ＋１において計算された両結果の第４の乖離は、動作サイクルｉおよびｉ＋１からの両結果の第３の乖離よりも小であり、かつ動作サイクルｉ−１およびｉからの両結果の第５の乖離よりも小である。さらに、動作サイクルｉおよびｉ＋１からの両結果の第１の差は、動作サイクルｉ−１およびｉからの両結果の第３の差と異なる符号を有し、第３の差もまた動作サイクルｉおよびｉ＋１からの両結果の第２の差と異なる符号を有する。
【００２７】
本発明の実施形態によれば、各動作サイクルにおいて、少なくとも１つの乖離の決定と、以前の乖離および／または差との比較を提供する比較スキームが設けられている。代替として、乖離もしくは差の決定および／またはそれらの比較が、予め留め置かれた動作サイクルごとに、例えば４番目もしくはｎ番目の動作サイクルごとにだけ行われる。さらに、その比較スキームに従って、プロセッサコアごとにそれぞれ求められた結果が互いに離れていく場合および／または限界値の方向に移動する場合に、比較サイクルの増大も用意されている。
【００２８】
以下において、本発明の他の実施例および利点を、図面に基づいてさらに詳細に説明する。
【図面の簡単な説明】
【００２９】
【図１】図１は、離散的な動作サイクルでそれぞれ交互に計算される２つの計算操作の結果を示す概略図であり、現在の結果と次の結果との間の乖離についてそれぞれの期待される値範囲が表示されている。
【図２】図２は、離散的な動作サイクルでそれぞれ交互に計算される２つの計算操作の結果を示す概略図であり、現在の結果と次の結果との間のそれぞれの乖離が表示されている。
【図３】図３は、２つの計算操作の結果の時間的経過を示す概略図であり、基礎をなす計算操作が積分調節要素を含んでいる。
【図４】図４は、第１のサンプリングレートを有する離散的な動作サイクルでそれぞれ交互に計算される２つの計算操作の結果を示す概略図であり、基礎をなす計算操作が積分調節要素を含んでいる。
【図５】図５は、第２のサンプリングレートを有する離散的な動作サイクルでそれぞれ交互に計算される２つの計算操作の結果を示す概略図であり、基礎をなす計算操作が積分調節要素を含んでいる。
【発明を実施するための形態】
【００３０】
図１および図２にはタイムチャートが示されており、その縦座標には、２つのプロセッサコアのうちの１つによってそれぞれ交互に離散時点で計算された計算操作の結果Ｃ２ｉ−１，Ｃ１ｉ，Ｃ２ｉ＋１，Ｃｌｉ＋２，Ｃ２ｉ＋３が表示されており、これらの計算操作の結果は、第１のプロセッサコアにそれぞれ対応した参照符号プレフィックスＣ１と、第２のプロセッサコアにそれぞれの対応した参照符号プレフィックスＣ２とを有する。その横座標に表示されている離散時点は、動作サイクルｉ−１，ｉ，ｉ＋１，ｉ＋２，ｉ＋３に対応する。
【００３１】
図１には、現在の結果と次の結果との間の乖離についてそれぞれ期待される値範囲が表示されており、それぞれ１つの点状の結果値Ｃ２ｉ−１，Ｃ１ｉ，Ｃ２ｉ＋１，Ｃｌｉ＋２，Ｃ２ｉ＋３から出発する三角状範囲を参照されたい。
【００３２】
本発明によれば、基本的に同一の両計算操作を周期的に処理する複数のプロセッサコアが、各動作サイクルｉ−１，ｉ，ｉ＋１，ｉ＋２，ｉ＋３において変更させられる。従って、その都度計算操作の処理に関与していないプロセッサコアは、余剰の計算能力を無駄にしないように他の課題を処理することができる。それと同時に、その計算操作の処理時のエラーは、他方のプロセッサコア上でのその都度異なる計算操作にも影響する。
【００３３】
プロセッサコアＣ１において、またはプロセッサコアＣ１に割り当てられたメモリにおいて、例えば動作サイクルｉでエラーが発生した場合に、このプロセッサコアＣ１により達成される結果Ｃ１ｉは歪曲される。次の動作サイクルでは、他方のプロセッサコアＣ２が今度は歪曲されていない結果Ｃ２ｉ＋１を算出する。
【００３４】
次の動作サイクルｉ＋２では、再び歪曲された結果Ｃ１ｉ＋２がプロセッサコアＣ１において算出される。両プロセッサコアＣ１，Ｃ２において、本発明による比較スキームの実施形態によれば、早ければ動作サイクルｉにおいて遅くとも動作サイクルｉ＋２においてエラーが存在することを確定することができるように、次のような監視機構が設けられている。
【００３５】
ａ．動作サイクルｉにおいて、動作サイクルｉおよびｉ＋１で計算された両結果Ｃ１ｉおよびＣ２ｉ＋１の第１の乖離は、図１による最大値を上回る。換言するならば、動作サイクルｉ＋１で計算された結果Ｃ２ｉ＋１は、最大乖離に関して期待された値の三角状範囲の外側にある。
【００３６】
ｂ．動作サイクルｉ＋１において、動作サイクルｉ−１およびｉ＋１で計算された両結果Ｃ２ｉ−１およびＣ２ｉ＋１の第２の乖離は、動作サイクルｉおよびｉ＋１で計算された両結果Ｃ１ｉおよびＣ２ｉ＋１の第１の乖離よりも小である。さらに、動作サイクルｉ−１およびｉ＋１で計算された両結果Ｃ２ｉ−１およびＣ２ｉ＋１の第２の乖離は、動作サイクルｉ−１およびｉで計算された両結果Ｃ２ｉ−１およびＣ１ｉの第３の乖離よりも小である。さらに、動作サイクルｉ−１およびｉの両結果の第１の差、即ち（Ｃ２ｉ−１）−（Ｃ１ｉ）は、動作サイクルｉおよびｉ＋１の両結果の第２の差、即ち（Ｃ１ｉ−Ｃ２ｉ＋１）と異なる符号を有する。
【００３７】
ｃ．動作サイクルｉ＋２において：動作サイクルｉおよびｉ＋２で計算された両結果Ｃ１ｉおよびＣ１ｉ＋２の第２の乖離は、動作サイクルｉ＋１およびｉ＋２で計算された両結果Ｃ２ｉ＋１およびＣ１ｉ＋２の第１の乖離よりも小であり、かつ動作サイクルｉおよびｉ＋１で計算された両結果Ｃ１ｉおよびＣ２ｉ＋１の第３の乖離よりも小である。さらに、動作サイクルｉ−１およびｉ＋１で計算された両結果Ｃ２ｉ−１およびＣ２ｉ＋１の第４の乖離は、動作サイクルｉおよびｉ＋１で計算された両結果Ｃ１ｉおよびＣ２ｉ＋１の第３の乖離よりも小であり、かつ動作サイクルｉ−１およびｉで計算された両結果Ｃ１ｉおよびＣ２ｉ−１およびＣ１ｉの第５の乖離よりも小である。さらに、動作サイクルｉおよびｉ＋１で達成された両結果の第１の差（Ｃ１ｉ）−（Ｃ２ｉ＋１）は、動作サイクルｉ−１およびｉで達成された両結果の第３の差（Ｃ２ｉ−１）−（Ｃ１ｉ）とは異なる符号を有し、その第３の差もまた、動作サイクルｉおよびｉ＋１で達成された両結果の第２の差（Ｃ１ｉ）−（Ｃ２ｉ＋１）とは異なる符号を有する。
【００３８】
図２は、第１の乖離Ａ１、第２の乖離Ａ２、第３の乖離Ａ３、第４の乖離Ａ４および第４の乖離Ａ５を示す。
【００３９】
最大勾配に関する規則が存在しない場合には、この結果として、動作サイクルｉ＋２においてはじめて、エラーが存在することを確実に認識することができる。この検査は、必要に応じて、連続的に各動作サイクルにおいて行うか、または、例えばｎ番目のサイクルごとに行うとよい。
【００４０】
追加として、エラーが検出される前に一回または複数回超過されなければならない狭い最大乖離が定義されてもよい。一貫性検査は、「真の」デュアルレーン動作におけるようにビットアイデンティティに基づいて行うことができない。というのは、両プロセッサコアが、連続した動作サイクルでの計算のために、連続したサイクルからの入力データを使用するからである。
【００４１】
連続した動作サイクルにおける入力データは異なっており、場合によっては予め設定された最大乖離近くで制限されるので、出力データも許容し得る差分だけ異なり得る。この差分に関しては、許容し得る値が、既知であるか、または入力データの乖離から計算可能である。
【００４２】
本発明による利点は、アプリケーションで実現されるディジタル調節器のサイクル時間を２チャンネル計算に比べて増大することなしに、必要な計算能力を半分に減らすことにある。これは、確かに一貫性（ビットアイデンティティに代わる差分一貫性）検査の質の低下と、２動作サイクルまでのエラー反応の遅延とを生じさせるが、エラーがなければ、調節器のサイクル時間が２チャンネル計算に比べて増大されることはない。
【００４３】
本発明の他の実施形態によれば、アプリケーションが少なくとも部分的にディジタル調節器を実現し、その調節器が少なくとも部分的に積分動作をする調節要素、即ちI動作成分を有する調節器を含んでいる場合には付加的な措置が講じられるか、またはその他の過去のシステム状態も一緒に計算に取り込まれる。
【００４４】
図３は、それぞれ第１のプロセッサコアＣ１および第２のプロセッサコアＣ２によって求められた２つの計算操作結果の時間的経過の概略図を示し、その基礎をなす計算操作は積分調節要素を含んでいる。第２のプロセッサコアＣ２によって求められた結果経過は計算操作の理想値経過ＩＤに追従しているのに対して、第１のプロセッサコアＣ１によって求められた結果の経過は理想値経過ＩＤから外れている。
【００４５】
２つまたはそれよりも多いプロセッサコアは簡単に異なる入力値を受け入れるので、出力値も同様に簡単に異なり得る。これは、本発明による差分一貫性検査の範囲内で許容可能である。しかし、両プロセッサコアの調節目標が簡単に理想値の上および下になり得る場合には、両プロセッサコアにおける積分器変数は絶えず増大する。なぜならば、各プロセッサコアには、絶えず同じ方向の僅かな偏差が入力されているからである。
【００４６】
これは、制御される集合体の揺れをもたらす。というのは、両調節器が常に強く反対方向に調節するからである。一方の調節器における積分器変量が限界値、例えばその変量の値範囲限界に達するや否や、危機的な状況が起きる。今やその一方の調節器はもはや適切な調節動作をすることができず、調節値は逸走する。これは、確かに上述の条件のもとでは、安全な遮断に至るであろう。しかし、システムの信頼性はもはや得られない。というのは、この場合にはプロセッサコアの変更がエラーを発生するからである。この問題を回避するために、適切なドリフト補償を提供すべきである。そのために、例えば両処理経路における積分器の値が相互に交換されるとよい。起こり得るエラーの伝播を回避するために、積分器の交換される値を制限することが望ましい。制御対象の動特性および調節器の設計から、通常動作時に許容し得る積分器値を決定することができる。積分器値の制限は決定的に重要な意味を持つものではない。というのは、積分器値の制限は、最悪の場合に調節器特性に遅れをもたらし得るが、しかし不安定性をもたらすことはないからである。
【００４７】
調節器の入力信号が動作サイクル周波数、則ち動作サイクルの時間値の逆数値に類する周波数で振動する場合に、不安定性が生じ得る。これは、調節器入力端において、一方のプロセッサコアには常に過大な値が、他方のプロセッサコアには常に過小な値が伝達されることをもたらし、それによって操作量が図４に従って振動する。この挙動は、上述の調節に基づいてエラーとして認識され、従って回避されるべきである。
【００４８】
このために次の幾つかの実施形態が適している。
【００４９】
アンダーサンプリングの回避：調節器は、基本的には、サンプリングレートが制御量の周波数よりも著しく高くなるように設計されるべきである。４またはそれよりも大きい係数が運転上実証されている（図５参照）。動特性が十分に知られているあらゆる制御対象では、この措置が摘要でき、かつ適用されるべきである。
【００５０】
プロセッサコアの「ワルツリズム」での変更または類似の非連続性の変更：制御対象の動特性が既知でない場合には、プロセッサコアを変更させるリズムを変化させるとよい。例えば、計算操作の計算を第１のプロセスコアＣ１に常に２度割り当て、その次に第２のプロセッサコアＣ２に１度割り当てるとよい。プロセッサコアの変更の際の非対称周期によって、願わしくないエラー認識につながる上述の挙動をもたらす制御量周波数が存在し得ない。
【００５１】
３個以上のコアプロセッサの使用：例えば、計算操作の計算を１度、第１のプロセッサコアＣ１に割り当て、それから第２のプロセッサコアＣ２に割り当て、そしてそれから第３のプロセッサコアＣ３に割り当てるとよい。それゆえ、プロセッサコアの１つにおけるエラーは、振動する入力データと区別することができる。というのは、プロセッサコアの１つにおけるエラーは３番目のサイクルごとにしか発生しないからである。
【００５２】
上述のようなフィードバックされる積分器値に対する有効な値範囲の制限を伴う積分器値フィードバック。
【００５３】
履歴を有するシステム状態の調整：過去の複数の値からシステム状態を算定する場合に、異なる入力データが、これらのシステム状態の算定時に、異なる結果をもたらすこともあり得る。この場合にエラーが認識されるのを回避するために、これらのエラー状態の算定時に時間的な差分を許容するか、または処理経路間で状態を交換するかのいずれかをなすべきである。
【００５４】
上述の幾つかの方法に対する代替案として、本発明の代替実施形態によれば、両処理経路が同一のメモリ領域にアクセス可能である。それにより、積分器値等の全ての履歴データが両処理経路に関して同一であり、従って上述の機構は必要でない。この簡素化のための代償は、共通に使用されるメモリ領域が１つの共通のエラー原因範囲となることである。これは、幾つかの適用事例に関しては、例えばＥＣＣ（Error-Correcting Code、誤り訂正符号）またはメモリスクランブリングのような適切な措置によって、共通なエラー原因範囲内において検出されないエラーの確率が十分に低い場合に容認することができる。
【００５５】
本発明によれば、１つのマルチコアプロセッサの少なくとも２つのプロセッサコアが、安全を最重視すべきアプリケーションを２チャンネル計算するために使用される。その際に、計算操作が各計算サイクルにおいて両プロセッサコア上で冗長的に計算されるのではなくて、両プロセッサコアの能力が異なる動作サイクルにおいて異なるアプリケーションにより十分に活用される。従って、有利なことに所要計算容量の倍増を回避することができる。プロセッサコアの相互監視を行うために、両プロセッサコア上で交互に計算操作が計算される。既述のエラー認識機構によって、偶然誤差を認識することができる。確かに、本発明によるエラー認識の質は、従来技術から知られている並列冗長マルチチャンエル計算による「デュアルレーン動作」よりも若干低い。しかし、特に制御システムに経済的な実現が要求される場合には、計算能力に対する費用の節減という要件に比べて、エラー認識の質をあと回しにすることができる。従って、本発明は、十分に安全なエラー認識に対する要求と、計算能力の経済的な設計とを調和させている。
【符号の説明】
【００５６】
ｉ−１，ｉ，ｉ＋１，…  動作サイクル
Ａ１〜Ａ５              乖離
Ｃ１                    第１のプロセッサコア
Ｃ２                    第２のプロセッサコア
Ｃ１ｉ                  Ｃ１によって動作サイクルｉで計算された結果
Ｃ１ｉ＋２              Ｃ１によって動作サイクルｉ＋２で計算された結果
Ｃ２ｉ−１              Ｃ２によって動作サイクルｉ−１で計算された結果
Ｃ２ｉ＋１              Ｃ２によって動作サイクルｉ＋１で計算された結果
Ｃ２ｉ＋３              Ｃ２によって動作サイクルｉ＋３で計算された結果
【図１】
2019500682.tif 000003
【図２】
2019500682.tif 000004
【図３】
2019500682.tif 000005
【図４】
2019500682.tif 000006
【図５】
2019500682.tif 000007
【国際調査報告】
2019500682.tif 000008
2019500682.tif 000009
2019500682.tif 000010
2019500682.tif 000011
2019500682.tif 000012
2019500682.tif 000013
2019500682.tif 000014
2019500682.tif 000015