Posts Tagged with "architecture metrics"

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

ある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 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}$と同様に導出することができます。


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