Posts Tagged with "ISO 26262"

既に発行済みのブログであっても適宜修正・追加することがあります。
We may make changes and additions to blogs already published.

あるWebの記事について (2)

posted by sakurai on July 8, 2019 #125

同じ記事のPMHFについても怪しいところがあります。

まずPMHFそのものは単純で故障する頻度そのものである。ただ実際には1億回あたり1回未満というのはかなり難しい。一般にエレクトロニクス業界で使われている故障頻度には「FIT」(Failure in Time:10億時間あたりに発生する故障回数)と呼ばれるものがあるが、自動車向けのMCUなどではどんなに少ないものでも20FIT(10億時間あたり20回)といわれており、このままでは10^-8/hを満たせない。 ただ、PMHFは、ある特定の回路そのものの故障頻度ではなく、システム全体の故障頻度と見なすこともできる。例えば全ての部品を二重化しておき、片方が壊れてももう片方がそれを引き継ぐことができるとすれば、トータルとしての故障頻度は10FITに減る計算になり、これでASIL DのPFHFの目標をクリアできることになるからだ。

要約すれば、主系とバックアップ系が、それぞれ20FITの故障率を持つ2重化システムがあるとき、「トータルとしての故障頻度」が10FITになるということのようです。

実際には「トータルとしての故障頻度」はDPF(Dual Point Failure)の時であるから、車両寿命を$T_\text{lifetime}$として単純な確率計算では、 $$ \Pr\{\text{DPF}\}=\Pr\{\text{Channel 1 failed}\cap\text{Channel 2 failed}\} =\Pr\{\text{Channel 1 failed}\}\Pr\{\text{Channel 2 failed}\}\\ =(\lambda_\text{IF}T_\text{lifetime})(\lambda_\text{SM}T_\text{lifetime}) =(10\times 10^{-9})^2{T_\text{lifetime}}^2=1\times 10^{-16}{T_\text{lifetime}}^2 $$ となります。

この確率には主系⇒バックアップ系のフェイルオーバーだけでなく、その逆の場合も含まれるので、フェイルオーバーの場合のPMHF、すなわち平均PUDを求めると、この1/2を$T_\text{lifetime}$で割った値となります。 $$ M_\text{PMHF}=\overline{PUD}=\frac{1}{2}\lambda_\text{IF}\lambda_\text{SM}T_\text{lifetime} $$

この値は、車両寿命がいくら大きくても10FITにはなりません。例えば車両寿命が10万時間の場合のPMHF、すなわち平均PUDは、 $$ M_\text{PMHF}=\overline{PUD}=\frac{1}{2}\lambda_\text{IF}\lambda_\text{SM}T_\text{lifetime}=0.5\times 10^{-16}\cdot 1\times 10^{5}=0.005[FIT] $$ となります。逆にこれが10FITだとすると、車両寿命は5,708年というあり得ない値となってしまいます。

誤りの原因は2重化の場合の確率計算を1/2にしてしまったところにあります。本来は2重化システムにおいては、主系に故障があっても、バックアップ系が動作するフォールトトレラント性があるため、引き続いてバックアップ系にもフォールトが起きないとシステムの故障とはなりません。従って、確率計算としては両方にフォールトが起こる場合の、確率の掛け算になります。

以前の記事のように、レアイベント近似を用いれば、直列系は確率の足し算、並列系は確率の掛け算となります。表記の記事は、並列系で確率の掛け算をするところを、2冗長だから単純に1/2をかけたのかもしれませんが、正しくは10[FIT]ではなく0.005[FIT]のような、非常に低い数字になります。

いずれにせよ、故障頻度は故障確率として計算することを理解していないと、このような誤りを引き起こします。


左矢前のブログ 次のブログ右矢

あるWebの記事について

posted by sakurai on July 5, 2019 #124

ある記事に以下のような文章が載っていました。SPFM、LFMに関する説明文のようです。

冗長によるPMHFの低減を説明した後に、

 ただこの二重化の場合、ある部品が壊れたかどうかを確認するための仕組みが別途必要になる。また、この仕組みが確実に「その部品が壊れたかどうか」を判断できなければならない。これに関する数値がSPFMであって、要するに99%以上の確率で、その部品が正常か壊れたかを判断できるようにする必要があるわけだ。

 また、この「部品が壊れたかどうか」を判断する回路も、当然電子回路で構成される以上故障する可能性がある。そこで、この判断部そのものが故障していないかどうか、を90%以上の確率で判断できないといけない、というのがLFMというわけだ。

一見良さそうなこの説明文ですが、良く読むと誤りがあります。どこをどう直したら正しくなるか考えてみてください。

  • ヒント1: 二重化(冗長)の場合は互いに主機能と安全機構(1st SM)の働きを行います。
  • ヒント2: SPFMはこの場合、平均的な故障検出率ではありません。安全機構(1st SM)の持つ平均的な故障抑止率です。二重化は故障を検出しないにも関わらず、VSGを抑止するので、SPFMはほぼ100%となります。
  • ヒント3: LFMの対象は「部品が壊れたかどうか」を判断する回路(=故障検出回路)だけではありません。この場合は故障抑止回路(=1st SM)とするべきです。LFMは2nd SMの持つ平均的な故障検出率です。

2とおりの修正方法があります。引用した文章は2つに分かれており、それぞれSPFMとLFMについての説明とするならば、

 ただこの二重化の場合、ある部品が壊れたかどうかを確認するための仕組みが別途必要にならない。また、故障のSG侵害を抑止できなければならない。故障を抑止するカバレージに関する数値がSPFMであって、要するに99%以上の確率で、故障のSG侵害を抑止する必要がある。

 また、この故障がSG侵害を抑止する回路も、当然電子回路で構成される以上故障する可能性がある。そこで、この故障がSG侵害を抑止する回路そのものが故障していないかどうか、を90%以上の確率で判断できないといけない、というのがLFMというわけだ。

となります。あるいは、それぞれLFMと2nd SMの故障検出についての説明とするならば、

 ただこの二重化の場合、ある部品が壊れたかどうかを確認するための仕組みが別途必要になる。また、この仕組みが確実に「その部品が壊れたかどうか」を判断できなければならない。これに関する数値がLFMであって、要するに90%以上の確率で、その部品が正常か壊れたかを判断できるようにする必要があるわけだ。

 また、この「部品が壊れたかどうか」を判断する回路(2nd SM)も、当然電子回路で構成される以上故障する可能性は無い

となります。当然筆者は前者を意図したのでしょうが、文章を大幅に修正しなければなりません。その理由は、元の文章が1st SMの機能である故障抑止故障検出について混同しているためです。

端的に言えば、著者は「部品の故障を検出する回路(だけ)がSMである」と思い込んでいます。最初から「二重化」で始めなければ、おおむね合っていたのですが。


左矢前のブログ 次のブログ右矢

LFMの導出

posted by sakurai on July 4, 2019 #123

LFMの導出

LFM、$M_{\mathrm{LFM}}$に関する規格式を引用し、これを導出します。

図%%.1
図123.1 LFM規格式

前稿と同様な論証を行います。まずレイテントフォールト(LF)の故障率の計算式を見てみます。

故障分類フローで説明したように、レイテントフォールトとなるのは2とおり存在します。

  • 主機能のフォールトのSG侵害が1st SMにより抑止されている場合に、2nd SMで検出できない場合
  • SMのフォールト(これはSG侵害が起こらない)が2nd SMで検出できない場合

よって、安全関連に関する故障モードが$n$個ある場合に、i番目のLFの故障率$\lambda_{\mathrm{LF,}i}$の定義式は、存在しない$\lambda_i$に対しては0を返すものとすれば、

$$ \lambda_{\mathrm{LF,}i}:=DC_i\lambda_{\mathrm{IF,}i}(1-DC2_i)+\lambda_{\mathrm{SM,}i}(1-DC2_i)=\{DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i}\}(1-DC2_i), \\ i=1, 2, ..., n\tag{123.1} $$ と表せます。この$DC2_i$はKパラメータで書けば、 $$ DC2_i=K_{\mathrm{IF,FMC,MPF,}i}, もしくは K_{\mathrm{SM,FMC,MPF,}i} $$ で、2nd SMがIFもしくはSMに対して、故障検出する割合を表します。(123.1)の両辺の総和を取れば、 $$ \sum_{i=1}^n\lambda_{\mathrm{LF,}i}=\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})(1-DC2_i)\\ =\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})-\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})DC2_i \tag{123.2} $$ よって、$\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})$及び$\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})DC2_i$を移項し、 $$ \sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})DC2_i=\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})-\sum_{i=1}^n\lambda_{\mathrm{LF,}i} \tag{123.3} $$ ここで、DC2の、各々の故障率による加重平均を(123.4)のように定義し、(123.3)を(123.4)の分子に代入すれば、 $$ \overline{DC2}:=\frac{\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})DC2_i}{\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})} =\frac{\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})-\sum_{i=1}^n\lambda_{\mathrm{LF,}i}}{\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})}\\ =1-\frac{\sum_{i=1}^n\lambda_{\mathrm{LF,}i}}{\sum_{i=1}^n(DC_i\lambda_{\mathrm{IF,}i}+\lambda_{\mathrm{SM,}i})} \tag{123.4} $$ ここで、$DC_i\lambda_{\mathrm{IF,}i}=\lambda_{\mathrm{IF,}i}-\lambda_{\mathrm{RF,}i}$を代入すれば、(123.4)は $$ (123.4)=1-\frac{\sum_{i=1}^n\lambda_{\mathrm{LF,}i}}{\sum_{i=1}^n(\lambda_{\mathrm{IF,}i}-\lambda_{\mathrm{RF,}i}+\lambda_{\mathrm{SM,}i})}=1-\frac{\sum_{i=1}^n\lambda_{\mathrm{LF,}i}}{\sum_{i=1}^n(\lambda_i-\lambda_{\mathrm{RF,}i})}\tag{123.5} $$

これと(C.8)を比較すれば、$\img[-1.35em]{/images/withinseminar.png}$


左矢前のブログ 次のブログ右矢

SPFMとLFMの導出

posted by sakurai on July 2, 2019 #122

SPFMの導出

SPFM、$M_{\mathrm{SPFM}}$に関する規格式を引用し、これを導出します。

図%%.1
図122.1 SPFM規格式

まずレシデュアルフォールト(RF)の故障率の計算式を見てみます。ここでシングルポイントフォールト(SPF)を狭義に使えば、RFのうち、ダイアグノスティックカバレージ(DC)がゼロの時にSPFと等価であるため、SPFもRFも(広義の)RFとして表せることになります。つまり上式分子の$\lambda_{\mathrm{SPF}}+\lambda_{\mathrm{RF}}$は、DC=0の場合を含み、$\lambda_{\mathrm{RF}}$と簡単化できます。

さて、安全関連に関する故障モードが$n$個ある場合に、i番目の(広義の)RFの故障率$\lambda_{\mathrm{RF,}i}$式は、 $$ \lambda_{\mathrm{RF,}i}:=\lambda_{\mathrm{IF,}i}(1-DC_{i})\tag{122.1} $$ と定義されます。この$DC_i$はKパラメータで書けば、 $$ DC_i=K_{\mathrm{IF,FMC,RF,}i} $$ となり、1st SMがIFに対して、IFがSG侵害を抑止する割合を表します。(122.1)の両辺の総和を取れば、 $$ \sum_{i=1}^n\lambda_{\mathrm{RF,}i}=\sum_{i=1}^n\lambda_{\mathrm{IF,}i}(1-DC_{i}) =\sum_{i=1}^n\lambda_{\mathrm{IF,}i}-\sum_{i=1}^n\lambda_{\mathrm{IF,}i}DC_{i} \tag{122.2} $$ よって、 $$ \sum_{i=1}^n\lambda_{\mathrm{IF,}i}DC_{i}=\sum_{i=1}^n\lambda_{\mathrm{IF,}i}-\sum_{i=1}^n\lambda_{\mathrm{RF,}i} \tag{122.3} $$ ここで、各々のSMにより防御される、IFの故障率によるDCの加重平均を次のように定義し、 $$ \overline{DC}:=\frac{\sum_{i=1}^n\lambda_{\mathrm{IF,}i}DC_i}{\sum_{i=1}^n\lambda_i} \tag{122.4} $$ (122.3)を(122.4)の分子に代入すれば、 $$ (122.4)=\frac{\sum_{i=1}^n\lambda_{\mathrm{IF,}i}-\sum_{i=1}^n\lambda_{\mathrm{RF,}i}}{\sum_{i=1}^n\lambda_{\mathrm{IF,}i}} =1-\frac{\sum_{i=1}^n\lambda_{\mathrm{RF,}i}}{\sum_{i=1}^n\lambda_i} \tag{122.4} $$ これと(C.7)を比較すれば、 $$ M_{\mathrm{SPFM}}=\overline{DC} $$ となるため、SPFMは$\img[-1.35em]{/images/withinseminar.png}$


左矢前のブログ 次のブログ右矢

フォールトトレラントタイム

posted by sakurai on July 1, 2019 #121

車両寿命間のダウン確率は、次の式のようにPMHFに車両寿命をかけたものです。 $$ M_\mathrm{PMHF}:=\frac{1}{T_\mathrm{lifetime}}\Pr\{\text{item down at }T_\mathrm{lifetime}\}\\ \therefore \Pr\{\text{item down at }T_\mathrm{lifetime}\}=M_\mathrm{PMHF}T_\mathrm{lifetime} \tag{121.1} $$ バックアップ系(SM1)に切り替わった後で、EOTTI期間走行する間のダウン確率が(121.1)以下であればよいとすれば、 $$ \Pr\{\text{backup down at }T_\mathrm{eotti}\}=\lambda_\mathrm{SM1, DPF}T_\mathrm{eotti}\le\Pr\{\text{item down at }T_\mathrm{lifetime}\}=M_\mathrm{PMHF}T_\mathrm{lifetime}\tag{121.2} $$ となり、EOTTIの範囲は前稿の規格式(3)で表されます。しかしながら、恐らくワーストケース(最短EOTTI)を求めるための条件と思われますが、厳しすぎに見えます。$t=0$でIFのフォールトが起きた前提での、バックアップ系による走行条件の計算となっています。DPFの確率ではなく、SPFの確率となるため、何桁も厳しくなります。

次に規格式(2)ですが、誤ったPMHF式がベースであるため、以下の例では誤ったEOTTIが得られています。表121.1でケース2の「(2)式の結果」が、上記のワーストと思われる「(3)式の結果」を下回っている(より厳しくなっている)こともこれを裏付けます。

まず正しいEOTTI式を(121.3)に示します。これは、2nd Editionの条件(IF/SM1共にリペアラブル)を前提としてPMHF式を求め(69.1)、その暴露時間の最大値をEOTTIとし、EOTTIについて解いた式です。 $$ T_\text{eotti}\le\frac{M_\text{PMHF}-\left[\lambda_\text{SPF}+\lambda_\text{RF}+\lambda_\text{IF,DPF}\lambda_\text{SM,DPF}(1-K_\text{MPF})T_\text{lifetime}\right]}{\lambda_\text{IF,DPF}\lambda_\text{SM,DPF}K_\text{MPF}}\\ =\frac{M_\text{PMHF}-\left[\lambda_\text{SPF}+\lambda_\text{RF}+\lambda_\text{IF,DPF}\lambda_\text{SM,DPF}(1-K_\text{IF,MPF})(1-K_\text{SM,MPF})T_\text{lifetime}\right]}{\lambda_\text{IF,DPF}\lambda_\text{SM,DPF}\left[1-(1-K_\text{IF,MPF})(1-K_\text{SM,MPF})\right]}\\ =\frac{M_\text{PMHF}-(\lambda_\text{SPF}+\lambda_\text{RF}+\lambda_\text{IF,DPF,lat}\lambda_\text{SM,DPF,lat}T_\text{lifetime})}{\lambda_\text{IF,DPF}\lambda_\text{SM,DPF}-\lambda_\text{IF,DPF,lat}\lambda_\text{SM,DPF,lat}} \tag{121.3} $$ 次に規格中の例題を(121.3)で計算し直した結果、表121.1の最下段のようになります。

表121.1
EOTTI ケース1[H] ケース2[H]
(2)式の結果 772 31
(3)式の結果 167 167
(2)式の修正結果 2,312 965

規格の2例で総合的な$K_\text{MPF}$を求めると、ケース1, 2において0.99と変わりませんが、これを振ってみた、$T_\text{eotti}$に関するグラフを図121.3に示します。(121.3)が不等式であるため、解の存在領域は曲線の下側となります。

図%%.3
図121.3 ケース1とケース2での$K_\text{MPF}$に対する$T_\text{eotti}$

ケース2では、本来965Hで良いのに31Hと厳しくなっているので、

規格によれば、ダウン率の過大評価に基づく、EOTTIの31.3倍の過小評価をしていると結論づけます。

まとめると、フォールトトレラントシステムのマルコフ連鎖を考えると、(3)は過小評価しすぎと考えます。その理由は、ワーストケースとはいえ、ダウン率の高いSM1(バックアップ系)のみでEOTTI時間動作することを想定していますが、実際にはダウン率の低い主機能との組み合わせで動作するためです。本来のPMHF式(68.1)(98.7)に示す$T_\mathrm{service}$を$T_\mathrm{eotti}$に置き換えた式が正しいと考えます。

いずれにしろ、規格2nd Editionで(3)を使用しているのは、EOTTIを過小評価しすぎです、(2)は誤って過小評価しているためあまり目立たなくなっていますが、本来(2)の制約のみで良いと考えます。しかしながら(2)式が誤っているので、(68.1)や(98.7)を使用すべきです。

この結果はRAMS2020で発表しました。


左矢前のブログ 次のブログ右矢

8.3.1 マイコンの取り扱い他

posted by sakurai on June 28, 2019 #120

8.3.1 マイコンの取り扱い

1st EditionではPart 10が主にISO 26262を半導体に適用する場合のガイドラインであったため、マイコンの取り扱いはPart 10に存在しましたが、2nd Editionになって、Part 10は全般的なガイドラインとなり、Part 11としてISO 26262を半導体に適用する場合のガイドラインが新設されたため、ISO 26262をマイコンに適用する場合の話題がPart 11に移動しました。

8.3.2 PMHF式

PMHF式については説明が追加されました。しかしながら、導出過程や導出前提を明らかにしたものではありません。また、式自体にも疑義があります。弊社ではPMHFを1st Edition発効から8年間に渡って研究しており、その結果としてIEEE最優秀論文賞を得ることができました。この論文は1st Editionの式を対象としていますが、新たに2nd Editonで式が変更されたため、それに基づく論文をIEEEに投稿中です。

弊社ではPMHFに関する論文をRAMS 2020に投稿中であり、そのため、最新の研究#103~108を一旦非開示としました。⇒RAMS 2020においてPMHF式の論文発表が終了したため、本記事を開示します。

12 システム開発のガイダンス

1st Editionの思想から拡張されているフォールトトレランス(耐故障性)についてまとめられた節が新設されました。1st Editionの思想は、とにかくフォールトが発生した場合にはFTTI中にシステムを安全状態に持っていけば、それでハザードが回避できるため、OKでした。

ところが、例えば高速道路の追い越し車線を120Km/hで走行中にフォールトを検出し、いくら安全状態だからといって、その場(追い越し車線内)で車両を停止させてしまうと、これはかなり危険な状態であることが容易に想像できます。このような場合は可能な限り左端の路側帯に寄せて停車するか、もしくは次の出口や安全な場所まで走行したいはずです。

本節ではこのような要求に対して解答を与えるものとなっており、基本的なアーキテクチャはIFに対するSM1としてバックアップ系を想定しています。例えば、IFについてASIL-Dを割り当てている時に、当然その平均PUD(=PMHF)は10[FIT]未満となりますが、故障したときには安全状態で停止するのではなく、動作し続けることがフォールトトレラントのために必要です。しかしながら、その場合にもASIL-Dを要求するものではありません。例えば、バックアップ系の時速が一定速度より遅ければASIL-Bとすることができます。その場合、速度は遅くても修理工場まで走行することが可能です。

本節には2とおり例示されており、緊急動作時間(EOTTI)以内に修理するか、上記のようにバックアップ系に切り替われば良いことになります。問題はEOTTIがあまりにも短い場合(例えば1sec未満)は修理工場に行くことができないので、その計算が必要となります。それが12.3.1.1に示されています。

次の図120.1の(2)は前記事にも掲載されている、2nd EditionのPMHF式(図109.3)の$T_\mathrm{service}$を$T_\mathrm{eotti}$と置き、$T_\mathrm{eotti}$について解いた式となっています。

図%%.1
図120.1 PMHF式に基づくEOTTIの導出

一方、次の図120.2の(3)は、ワースト時を想定しているようです。バックアップ系がEOTTI時間走行する状態での故障確率式です。

図%%.2
図120.2 車両寿命間の故障に基づくEOTTIの導出

いずれの式にも問題がありそうなので、次項で説明します。


左矢前のブログ 次のブログ右矢

posted by sakurai on June 27, 2019 #119

Part 10

ここまで2nd EditionのPart 5について変更点をご紹介してきました。Part 10は以下の相違があります。

  1. 4.4 FTTIの追加
  2. 8.3.1 マイコンの取り扱い⇒Part 11へ
  3. 8.3.2 PMHF式の導出及び変更 1st Editionの式導出も含めて詳細にご説明します。
  4. 12 システム開発のガイダンス
  5. 13 ソフトウエアツールの使用への信頼(対象外)
  6. 14 安全関連特別特性(対象外)
  7. Annex A マイクロコントローラの安全分析詳細⇒Part 11へ移動

4.4 FTTI

用語を列挙します。

  • FTTI(Fault Tolerant Time Interval): フォールトトレラント時間間隔
  • FDTI(Fault Detection Time Interval): フォールト検出時間間隔
  • FRTI(Fault Reaction Time Interval): フォールト反応時間間隔
  • EOTI(Emergency Operation Time Interval): 緊急動作時間間隔
  • EOTTI(Emergency Operation Tolerant Time Interval): 緊急動作トレラント時間間隔
  • DTTI(Diag Test Time Interval): ダイアグテスト時間間隔

基本的には、フォールトが発生してからフォールトに対処するまでの最大時間がFTTIであり、これを超えると危険状態になるため、フォールトが発生してからそれを検出し、検出したフォールトに対して反応して安全状態に持っていく時間がそれを超えないようにします。つまり、 $$ T_{\mathrm{DTTI}}+T_{\mathrm{FDTI}}+T_{\mathrm{FRTI}}\lt T_{\mathrm{FTTI}} $$ となることが要求されます。もしくは、$T_{\mathrm{DTTI}}$が$T_{\mathrm{FDTI}}$に比べて小さいか、または$T_{\mathrm{FDTI}}$の中に$T_{\mathrm{DTTI}}$を含めるものと定義すれば、 $$ T_{\mathrm{FDTI}}+T_{\mathrm{FRTI}}\lt T_{\mathrm{FTTI}} $$ でもOKです。

問題は安全状態に持っていくのがFTTIに間に合わなかった場合です。その場合は緊急動作状態に持っていくことが求められており、今度はFTTIではなく、EOTTIで制約を受けます。本来なら安全状態になるはずの時刻からさらにEOTTIまでに緊急動作が終了すればOKです。従って、 $$ T_{\mathrm{EOTI}}\lt\img[-1.35em]{/images/withinseminar.png} $$


左矢前のブログ 次のブログ右矢

posted by sakurai on June 26, 2019 #118

SPFMの分割

Part5 8.4.7にSPFMの分割例が新設されました。例えばアイテムがレメントA, B, Cから構成され、 $$ \lambda_{\mathrm{total}}=\lambda_{\mathrm{A}}+\lambda_{\mathrm{B}}+\lambda_{\mathrm{C}} $$ であり、それぞれのエレメントA, B, Cに対するSPFMの目標値を、$M_{\mathrm{SPFM,A}}$, $M_{\mathrm{SPFM,B}}$, $M_{\mathrm{SPFM,C}}$とするとき、 $$ \left[\frac{\lambda_{\mathrm{A}}}{\lambda_{\mathrm{total}}}M_{\mathrm{SPFM,A}}+ \frac{\lambda_{\mathrm{B}}}{\lambda_{\mathrm{total}}}M_{\mathrm{SPFM,B}}+ \frac{\lambda_{\mathrm{C}}}{\lambda_{\mathrm{total}}}M_{\mathrm{SPFM,C}}\right]\ge M_{\mathrm{SPFM,Itemtarget}}\tag{118.1} $$ となるような任意の$M_{\mathrm{SPFM,A}}$, $M_{\mathrm{SPFM,B}}$, $M_{\mathrm{SPFM,C}}$の目標値を許容する、とあります。これは、例えばASIL-Dであれば、$M_{\mathrm{SPFM,Itemtarget}}\ge99\%$であるとき、A, B, Cそれぞれのエレメントが99%以上無い場合でも、故障率の比(故障率密度が一定であれば面積比)により重みづけされたSPFMを計算し、結果が目標を満足していれば良いという意味です。

具体例で見てみます。故障率比率がそれぞれ $$ \frac{\lambda_{\mathrm{A}}}{\lambda_{\mathrm{total}}}=98\%, \frac{\lambda_{\mathrm{B}}}{\lambda_{\mathrm{total}}}=1\%, \frac{\lambda_{\mathrm{C}}}{\lambda_{\mathrm{total}}}=1\% $$ であるとき、(118.1)を満たす$M_{\mathrm{SPFM,A}}$, $M_{\mathrm{SPFM,B}}$, $M_{\mathrm{SPFM,C}}$の組み合わせはいろいろ考えられますが、例えば故障率比率の大きなエレメントAのSPFMが比較的大きい場合を考え、例えば以下のようであるとすれば、 $$ M_{\mathrm{SPFM,A}}=99.9\%, M_{\mathrm{SPFM,B}}=60.0\%, M_{\mathrm{SPFM,C}}=60.0\% $$ である場合、(118.1)左辺は、 $$ (118.1)=\img[-1.35em]{/images/withinseminar.png} $$ となり、アイテムターゲットのSPFMである99%以上を満足します。

別の値の例としては、 $$ M_{\mathrm{SPFM,A}}=99.99\%, M_{\mathrm{SPFM,B}}=51.0\%, M_{\mathrm{SPFM,C}}=51.0\% $$ である場合、(118.1)左辺は、 $$ (118.1)=\img[-1.35em]{/images/withinseminar.png} $$ となり、アイテムターゲットのSPFMである99%以上を満足します。

このような組み合わせは無数にありますが、上記のように$M_{\mathrm{SPFM,B}}=M_{\mathrm{SPFM,C}}$でありこれを横軸として、縦軸を$M_{\mathrm{SPFM,A}}$とすれば、解の領域は図118.1のグリーンの領域となります。

図%%.1
図118.1 分割された$M_{SPFM}$の解空間

同様にPart5 8.4.8に、LFMについても分割例が記述されました。それぞれのエレメントA, B, Cに対するLFMの目標値を、$M_{\mathrm{LFM,A}}$, $M_{\mathrm{LFM,B}}$, $M_{\mathrm{LFM,C}}$とするとき、 $$ \left[\frac{\lambda_{\mathrm{A}}}{\lambda_{\mathrm{total}}}M_{\mathrm{LFM,A}}+ \frac{\lambda_{\mathrm{B}}}{\lambda_{\mathrm{total}}}M_{\mathrm{LFM,B}}+ \frac{\lambda_{\mathrm{C}}}{\lambda_{\mathrm{total}}}M_{\mathrm{LFM,C}}\right]\ge M_{\mathrm{LFM,Itemtarget}}\tag{118.2} $$ となるような任意の$M_{\mathrm{LFM,A}}$, $M_{\mathrm{LFM,B}}$, $M_{\mathrm{LFM,C}}$の目標値を許容する、とあります。

$M_\mathrm{LFM}$の解空間は$M_\mathrm{SPFM}$と同様に導出することができます。


左矢前のブログ 次のブログ右矢

posted by sakurai on June 25, 2019 #117

意図

Annex Hが新設された意図は、Part5 8.4.8でLFMの目標値の設定方法を3種あげていますが、その実例を示すものです。例えば8.4.8のa)は、「8.4.6に記述される"レイテントフォールトメトリック”の目標値を満足する」とありますが、Annex Hでは例を通じてその計算を行っています。

以下に1st SMの故障抑止能力(DC)が故障検出に基づくものと、故障抑止に基づくものの2パターンの例を挙げています。

第1例

故障検出に基づくフォールトは、検出されるからVSG抑止されるのであってその逆ではありません。ということは、抑止された分の検出割合は常に100%です。これは2nd SMとしての検出率が100%であることを意味し、図117.2でも示すように、グリーンで示した主機能のレイテントフォールトはゼロであることを意味します。 一方、SM(1st SM)のフォールトはSG侵害しないため、2nd SMの検出率により、検出から漏れた部分がレイテントフォールトとなります。

図%%.1
図117.1 フォールト検出に基づくSM

図%%.2
図117.2 フォールト検出に基づくSMを含むFMEDA

第2例

一方、SG侵害抑止に基づき、検出を行わない1st SMも存在し、その例を示しています。この場合、故障抑止はするものの、故障検出はゼロとなり、抑止されたものが全量レイテントフォールトとなります。 同じく、SM(1st SM)のフォールトはSG侵害しないため、2nd SMの検出率により、検出から漏れた部分がレイテントフォールトとなります。

図%%.3
図117.3 SG侵害抑止に基づくSM

図%%.4
図117.4 SG侵害抑止に基づくSMを含むFMEDA

左矢前のブログ 次のブログ右矢

PMHFのバジェッティング

posted by sakurai on June 22, 2019 #116

Annex G

これも2nd Editionで新設されたAnnexですが、PMHFのバジェッティングについて記述されています。といっても従来からバジェッティングは現場では実施されていました。それと規格の意図するところは若干異なるようです。

従来のバジェッティング

まず1st Editionで実施されていたバジェッティングは、Part5 9.4.2.2 表6で規定される、PMHF目標値を分割するものでした。例えば、あるアイテムがASIL-Dの要求に基づき、アイテムにASIL-Dを割り当てます。ここで注意すべきは、エレメントには当初はASILは存在せず、あくまで要求の属性としてのASILが存在することです。エレメントには様々な安全目標によって、様々な要求が割り当てられますが、その中の最高レベルのASILにより、エレメントのASILが規定されます。

例えば、アイテムが3つのエレメントに分割され、それぞれ別のサプライヤによって開発される場合には、それぞれのサプライヤに対して、PMHF目標値を設定する必要があります。これを従来はバジェッティングと呼んでいました。アイテムで10FITの予算(バジェット)があり、それを配分するイメージとなります。例えば3つであれば、3.3FITずつ割り当てることができます。

図%%.1
図116.1 1st EditionのPMHFバジェッティング

2nd Editionのバジェッティング

規格でバジェットの単語が出てくるのはPart5 9.4.2.3の中です。9.4.2.3は上記の予算配分(分割)と言うよりも、多重割り当てと言ったほうがふさわしい節です。その理由は9.4.2.3は、上記のようにASIL-Dの目標をエレメントの数で分割するのではなく、比較的大きなシステム、例えばADASのように、物標認識システム、ブレーキ制御システム、エンジン制御システム等のように、それだけで従来はアイテムレベルであったシステムを複数組み合わせた場合のPMHFの考え方を表すものだからです。そしてその場合は、それぞれのシステムにASILを割り当て、10個までは組み合わせて良いと規定しています。例えばASIL-Dのシステムを10個までならぎりぎり目標が10倍となり10倍を超えませんが、10倍を超える目標値を設定することは許されていません。

図%%.2
図116.2 2nd EditionのPMHFバジェッティング

左矢前のブログ 次のブログ右矢


ページ: