Posts Tagged with "ISO 26262"

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

参照論文の問題点

参照論文では、EBDノードを含めた全体について、定量的にFault Treeを用いたMCS(Minimal Cut Set)分析を行っており、問題は2つあります。

  • ISO 26262規格のPMHF式を参照していない
  • On-lineモニタのカバレッジが参照されていない。

この2つは関連する問題です。具体的に表202.1のとおり数値を入れてみてみます。On-lineモニタは参照論文に数値が無かったため、SMとして低めの数値を入れました。

表202.1
Subsystem Component Failure Rate [1/h]
EBD Node Brake ECU $3.3\times 10^{-7}$
Electronics Brake Module (EBM) $4.2\times 10^{-7}$
On-line monitor for EBM $1.1\times 10^{-7}$

誤ったFTA

この数値に基づき、参照論文のEBDサブシステムのFTをツール(SAPHIRE)により構成すれば、図202.1のようになります。

図%%.1
図202.1 参照論文のEBDサブシステムのFT

誤ったMCS

図202.1は論文のFTですが、このFTに対してカットセット分析を実施し、EBDサブシステムの故障確率を求めます。ツールを用いてMCSを求めると、表202.2のように24個の積項(Minimal Cut)が得られ、EBDサブシステムの故障確率は$1.63\times 10^{-5}$となります。参照論文ではミッション時間を5,000[H]としているため、"PMHF"(本当は車両故障確率の時間平均)は3.26[FIT]となります。

表202.2 EBDサブシステムのFTのMCS
表%%.2

ISO 26262では3つ以上のエレメント故障は安全故障としています。これは(規格には明確に書かれていませんが)確率が非常に低くなるためです。従って、3つ以上の故障を枝刈り(slice)すれば、表202.3のMCSとなります。積項数は6個に減少するものの、故障確率も"PMHF"も変わりません。

表202.3 枝刈りをしたMCS
表%%.3
便宜上、時間平均VSG確率を"PMHF"としましたが、本来PMHFと呼ぶためにはPMHF式を尊重しなければなりません。以上のように、本論文の手法では"PMHF"が非常に低く計算されます。その理由はon-lineモニタのカバレージをほぼ100%としているためです。

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

posted by sakurai on February 11, 2020 #201

ISO 26262のFTA関連の2つの論文を紹介します。

最初に紹介するのは"ISO 26262 ASIL-Oriented Hardware Design Framework for Safety-Critical Automotive Systems"という論文$\dagger$で、 PMHFターゲットに対してシステムをFTAを用いて分析し、弱い部分を定量的に抽出し、そこにSMを追加し、最終的にPMHF目標を満たす設計手法を提案するという、大変興味深いものです。ただ、残念ながらこの論文にはランダムハードウェア故障の確率の評価値(いわゆるPMHF)について問題があるため、それを取り上げます。

この論文(以下参照論文と言う)は以下のところから取得できます。

この論文ではAEB(autonomous emergency braking system)を題材としています。以下にAEBシステムのFT(Fault Tree)を示します。

図%%.1
図201.1 AEBシステム

AEBはかなり大規模なシステムであるため、FTの一部を抜き出します。図201.2がその一部で、これにEBDサブシステムと名付けます。

図%%.2
図201.2 AEBシステムの一部(EBDサブシステム)

EBDサブシステムは図201.2のように、EBDノード4冗長で構成されます。参照論文では図201.3のように、EBDノード1チャネルのEBM(Electronic Brake Module)に対してOn-line Monitorを付加してPMHFを下げたと主張しています。

図%%.3
図201.3 EBDノード1チャネル


$\dagger$Chen, Yung-Yuan & Lu, Kuen-Long. (2019). ISO 26262 ASIL-Oriented Hardware Design Framework for Safety-Critical Automotive Systems. 10.1109/ICCVE45908.2019.8965235.


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

確率論(22)

posted by sakurai on February 10, 2020 #200

2項過程

時間間隔$[0, t]$において、$k$個の故障が起きる確率を考えます。まず離散時間の場合、単一の部品の故障確率を$p$、故障個数を表す確率変数を$X$とすれば、 $$\Pr\{X=k\}={}_n\mathrm{C}_k(1-p)^{n-k}p^k\ \ \ \ \ \ \ \text{for }k=1,2,...,n$$ 前回と同様に、単一の部品の故障率を$\lambda$、時間間隔$[0, t]$を$n$等分した一つの時間間隔を$\Delta t$とすれば、 $$p=\lambda\Delta t=\lambda\frac{t}{n}$$ よって、 $$\Pr\{X=k\}=\frac{n!}{(n-k)!k!}\left(1-\frac{\lambda t}{n}\right)^{n-k}\left(\frac{\lambda t}{n}\right)^k\ \ \ \ \ \ \ \text{for }k=1,2,...,n$$ 確率変数$X$は2項分布し、この確率変数は時間によって変化するため、$X(\omega)$と時刻$t$の直積をとった確率変数$X(\omega, t)$の集合$\{X(\omega, t)\}$を2項過程といいます。

ポアソン過程

前式において、$n\to\infty$の極限を取れば、 $$\Pr\{X=k\}=\lim_{n\to\infty}{}_n\mathrm{C}_k(1-p)^{n-k}p^k$$

$$=\lim_{n\to\infty}\frac{n!}{(n-k)!k!}\left(1-\frac{\lambda t}{n}\right)^{n-k}\left(\frac{\lambda t}{n}\right)^k$$

$$=\lim_{n\to\infty}\frac{n(n-1)...(n-k+1)}{n^k}\cdot\frac{1}{k!}\left(1-\frac{\lambda t}{n}\right)^{n-k}\left(\lambda t\right)^k\\ =\frac{(\lambda t)^k}{k!}e^{-\lambda t}$$ これをポアソン過程と呼びます。部品の故障は連続時間中に起こり、その確率は低いので、ポアソン過程として取り扱うことができます。


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

posted by sakurai on February 5, 2020 #109

1st EditionのPMHF式

以下に1st EditionのPMHF第1式及び第3式を示します。第1式はIFによりSPFもしくはDPFが発生する場合のみを数え上げた式であり、第3式はそれに加えてSM1によるDPFも加えた式です。従って、全ての場合を考えるならば第3式を使うのが正しいと考えます。

図%%.1
図109.1 1st EditionのPMHF第1式

図%%.2
図109.2 1st EditionのPMHF第3式

1st EditionにおいてはIFがアンリペアラブル、SM1がリペアラブルという前提での計算に基づいていると考えらえます。その理由は、この前提で、前稿のCTMCから平均PUDを求めると、正確に上2式と一致するためです。

2nd EditionのPMHF式

以下に2nd EditionのPMHF式を示します。

図%%.3
図109.3 2nd EditionのPMHF式

ISO 26262の2nd EditionのPMHF式は、1st Editionとpattern3、4が異なっており、対称性からみて前提が追加されていると考えます。2nd Editionでは1st Editionの前提(pattern 1, 2)に加えて、その反対の状態(pattern 3, 4)つまりIFがリペアラブル、SM1がアンリペアラブルの場合の両側についてPMHFを求めていると推測します。ただし、$T_{\mathrm{lifetime}}$項と$T_{\mathrm{service}}$項がなぜ2倍異なるのかの理由は判明していません。

しかしながら、弊社ではこの前提は誤りではないかと思います。初期状態、つまりフォールトが起きていない状態においては、IF、SM1の両方ともがリペアラブルが正しく、上記の仮定においては故障確率を過大に見積もりすぎています。

例えば、SM1がフォールトし、そのフォールトがSM2により検出され、検出周期の最後でリペアされる場合(pattern 2)を考えます。規格ではこの場合は最初にSM1がフォールトしてしまうと、最終的にはIFのフォールトによりDPFとなる場合のみがカウントされます。なぜなら、どちらかがリペアラブルだと他方はアンリペアラブルだからです。つまりこの場合、SM1がリペアラブルの場合は自動的にIFはアンリペアラブルという前提です。

ところが、実際にはSM1がリペアされた場合は初期状態と同じ状態に戻るため、次にIFがフォールトし、SM1により検出されリペアされる場合(pattern 4)もありえます。典型的な例は、SM1がフォールトしリペアされ、次にIFがフォールトしリペアされるように、交互にリペアされる場合です。この場合はDPFが起きないにも関わらず、2nd EditionではSM1がフォールトから始まると、SM1はリペアラブルに固定されます。そしてIFはアンリペアラブルに固定されます。

従って、実際にはDPFは起きませんが、IFのフォールトでDPFとカウントされ、結論として過大にフォールト確率を見積もっています。

もしかすると、LAT2にいる状態ではSM1がフォールトしているので、IFはリペアされない(IFはアンリペアラブル)と考えたのではないでしょうか。ところが、IFのリペアラビリティはSM1ではなく、SM2にのみ依存し、かつSM2は故障しないため、IFはリペアラブルです。従って、本稿のほうが正しいと考えます。

ブログでお知らせしたように、RAMS 2020においてPMHF式の論文発表が終了したため、本記事を開示します。


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

posted by sakurai on February 5, 2020 #108

SPFの再計算は必要?

前記事ではDPF1に関する平均PUDを再計算しました。IFの条件がアンリペアラブルからリペアラブルに変更され、リペアすることにより(一部の)OPRの状態確率が上がったためです。

しかし、SPFの確率は上がりません。その理由は、リペアによってIF downからIF up状態に戻ったということは、元のdownした時にはVSG抑止されていたはずです。そのため、リペアはDPF確率のみに影響し、SPFは全く無関係となります。従って、

$$ \overline{q_{\mathrm{SPF,IFR}}}=\overline{q_{\mathrm{SPF,IFU}}}\tag{108.1} $$

よって、(108.1)、(107.7)、(106.4)を加え合わせて、 $$ M_{\mathrm{PMHF}}=\overline{q_{\mathrm{SPF,IFU}}}+\overline{q_{\mathrm{DPF1,IFR}}}+\overline{q_{\mathrm{DPF2,IFR}}}\\ =(1-K_{\mathrm{IF,RF}})\lambda_{\mathrm{IF}}+ K_{\mathrm{IF,RF}}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}[(1-K_{\mathrm{MPF}})T_\text{lifetime}+K_{\mathrm{MPF}}\tau], \\ ただし、K_{\mathrm{MPF}}=K_{\mathrm{IF,MPF}}+K_{\mathrm{SM,MPF}}-K_{\mathrm{IF,MPF}}K_{\mathrm{SM,MPF}} \tag{108.2} $$ 2nd Editionの規格式とは異なるものの、これが正解と考えます。

ブログでお知らせしたように、RAMS 2020においてPMHF式の論文発表が終了したため、本記事を開示します。


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

posted by sakurai on February 5, 2020 #107

DPF1の再計算

ところがこのケース2.の場合は、(無関係と思われた)DPF1について再計算する必要があります。その理由は、IFの条件がアンリペアラブルからリペアラブルに変更され、リペアすることによりOPRの状態確率が上がり、結果としてDPF1の確率が下がるためです。図107.1に図104.1を再掲します。LAT2においてはIF=upであったのに対し、DPF1においてはIF=downとなります。

図%%.1
図107.1 CTMCにおいてLAT2⇒DPF1の遷移

(104.1)を参考に、IFRモデルに変更します。 $$ \begin{eqnarray} \overline{q_{\mathrm{DPF1,IFR}}}&=&\frac{1}{T_\text{lifetime}}\Pr\{\mathrm{DPF1\ at\ }T_\text{lifetime}\}\\ &=&\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}\Pr\{\mathrm{LAT2\ at\ }t\cap\mathrm{IF\ down\ in\ }(t, t+dt]\}\\ &=&\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}\Pr\{\mathrm{IF\ down\ in\ }(t, t+dt]\ |\ \mathrm{LAT2\ at\ }t\}\\ & &\cdot\Pr\{\mathrm{LAT2}\mathrm{\ at\ }t\} \end{eqnarray} \tag{107.1} $$ こきまでは(104.1)と同じです。LAT2はIFの稼働状態でかつSM1の不稼働状態であるから、 $$ \Pr\{\mathrm{LAT2\ at\ }t\}=\Pr\{\mathrm{IF\ up\ at\ }t\cap\mathrm{SM\ down\ at\ }t\}\tag{107.2} $$ IFとSM1の稼働状態は独立事象であり、IFRモデルではIF、SM1共にリペアラブルであることから、(107.2)は $$ (107.2)=\Pr\{\mathrm{IF^R\ up\ at\ }t\}\Pr\{\mathrm{SM\ down\ at\ }t\}\\ =A_{\mathrm{IF}}(t)Q_{\mathrm{SM}}(t)\tag{107.3} $$ と書けるように思われますが、誤りです。IFのフォールトはVSG non preventableとVSG preventableに分けられるので、分配則より、 $$ \Pr\{\mathrm{IF\ up\ at\ }t\}=\Pr\{\left(\overline{\text{VSG of IF preventable}}\cup\text{VSG of IF preventable}\right)\cap\mathrm{IF\ up\ at\ }t\}\\ =\Pr\{\left(\overline{\text{VSG of IF preventable}}\cap\mathrm{\color{red}{IF^U}\ up\ at\ }t\right)\cup(\text{VSG of IF preventable}\cap\mathrm{IF^R\ up\ at\ }t)\}\tag{107.4} $$ となります。$\mathrm{\color{red}{IF^U}}$に注意してください。$\overline{\text{VSG of IF preventable}}$とはSM1によりVSG抑止できないことを意味し、修理は不可能であるため、その部分のIFはアンリペアラブルとなります。

ちなみに、この部分の確率はSMの状態によらずVSGとなるため、本質的にはSPFに入りそうですが、形式的にはSMがdownしているときのIFのフォールトなので、本稿ではDPFに入れます。

従って、(107.4)のIFの前半がアンリペアラブル、後半がリペアラブルなので、(107.4)は、 $$ \Pr\{\mathrm{IF\ up\ at\ }t\}=(1-K_{\text{IF,RF}})R_\text{IF}(t)+K_{\text{IF,RF}}A_\text{IF}(t)\tag{107.5} $$ となるため、(107.2)は(107.5)を用いて、 $$ \Pr\{\mathrm{LAT2\ at\ }t\}=\Pr\{\mathrm{IF\ up\ at\ }t\}\Pr\{\mathrm{SM\ down\ at\ }t\}\\ =\left[(1-K_{\text{IF,RF}})R_\text{IF}(t)+K_{\text{IF,RF}}A_\text{IF}(t)\right]Q_{\mathrm{SM}}(t)\tag{107.6} $$ と書けます。

さらに、(107.1)の右辺積分中の条件付き確率式に、独立条件付き確率式(103.4)、及び微小故障条件付き確率式(66.8)を用いれば、DPF時の2つ目のフォールトはIF、SM1共にアンリペアラブルとなるため、 $$ \Pr\{\mathrm{IF^U\ down\ in\ }(t, t+dt]\ |\ \mathrm{LAT2\ at\ }t\}\\ =\Pr\{\mathrm{IF^U\ down\ in\ }(t, t+dt]\ |\ \mathrm{IF^U\ up\ at\ }t\cap\mathrm{SM\ down\ at\ }t\}\\ =\Pr\{\mathrm{IF^U\ down\ in\ }(t, t+dt]\ |\ \mathrm{IF^U\ up\ at\ }t\}=\lambda_{\mathrm{IF}}dt\tag{107.7} $$ となります。

よって、(107.1)に(107.7)、(107.6)を適用した上で、PUA(59.8)、PA(59.7)故障率(66.6)及び弊社積分公式を用いれば、 $$ \begin{eqnarray} \overline{q_{\mathrm{DPF1,IFR}}}&=&\frac{1-K_{\mathrm{IF,RF}}}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}Q_{\mathrm{SM}}(t)R_{\mathrm{IF}}(t)\lambda_{\mathrm{IF}}dt+\frac{K_{\mathrm{IF,RF}}}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}Q_{\mathrm{SM}}(t)A_{\mathrm{IF}}(t)\lambda_{\mathrm{IF}}dt\\ &=&\frac{1-K_{\mathrm{IF,RF}}}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}[(1-K_{\mathrm{SM,MPF}})F_{\mathrm{SM}}(t)+K_{\mathrm{SM,MPF}}F_{\mathrm{SM}}(u)]f_{\mathrm{IF}}dt\\ & &+\frac{K_{\mathrm{IF,RF}}}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}[(1-K_{\mathrm{SM,MPF}})F_{\mathrm{SM}}(t)+K_{\mathrm{SM,MPF}}F_{\mathrm{SM}}(u)]\\ & &\cdot\left[(1-K_{\mathrm{IF,RF}})f_{\mathrm{IF}}(t)+K_{\mathrm{IF,RF}}f_{\mathrm{IF}}(u)\right]dt,\\ & &ただし、u\equiv t\bmod\tau\\ &\approx&\frac{1-K_{\mathrm{IF,RF}}}{2}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}[(1-K_{\mathrm{SM,MPF}})T_\text{lifetime}+K_{\mathrm{SM,MPF}}\tau]\\ & &+\frac{K_{\mathrm{IF,RF}}}{2}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}[(1- K_{\mathrm{MPF}})T_\text{lifetime}+K_{\mathrm{MPF}}\tau]\\ &=&(1-K_{\mathrm{IF,RF}})\alpha+K_{\mathrm{IF,RF}}\beta,\\ \end{eqnarray} \tag{107.8} $$

$$ ただし、\begin{cases} \begin{eqnarray} \alpha&:=&\frac{1}{2}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}[(1-K_{\mathrm{SM,MPF}})T_\text{lifetime}+K_{\mathrm{SM,MPF}}\tau]\\ \beta&:=&\frac{1}{2}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}[(1-K_{\mathrm{MPF}})T_\text{lifetime}+K_{\mathrm{MPF}}\tau] \end{eqnarray} \end{cases} $$

ブログでお知らせしたように、RAMS 2020においてPMHF式の論文発表が終了したため、本記事を開示します。


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

posted by sakurai on February 5, 2020 #106

2. LAT1において、検出周期内ではSM1のフォールトに応じて確率的にDPF2に遷移する。一方検出周期の最後で、検出されたIFのフォールトはリペアされOPRに戻る場合(IFRモデル)

ケース2.の場合の計算です。2nd Editionの中にPattern4が以下の図のように書かれています。IFが先にフォールトし、それが検出される場合についてはリペアされると推測され、Pattern4はこのケース2.の場合であると考えられます。

図%%.1
図106.1 2nd edition中のPattern 4の記述

(日本語訳)IFのフォールトは軽減され、SM1によって通知されます。フォールトの露出時間は、ドライバーが車両を修理に持ち込むのに必要な予想時間と見なされます。

これが成立するのは、(規格には書かれていませんが1)SM1にIFの代替機能がある場合に限られます。それが無い場合は前稿のIFUモデルに対応します。それがある場合はIFRモデルに対応します。2nd EditionではPattern3及び4が追加され、IFRモデルを前提としており、本ケース2.が相当すると考えます。

図%%.2
図106.2 CTMCにおいてLAT1⇒DPF2の遷移

(105.1)はそのまま用いることができます。その上でIFUモデルをIFRモデルに変更します。ここで、LAT1はIFの不稼働状態でかつSM1によりVSGは抑止されるがSM2により検出されず、かつSM1の稼働状態であるから、 $$ \Pr\{\mathrm{LAT1\ at\ }t\}=\Pr\{\mathrm{IF\ down\ at\ }t\cap\text{VSG of IF preventable}\cap\mathrm{SM\ up\ at\ }t\}\tag{106.1} $$ IFとSM1の稼働状態は独立事象であり、IF、SM1は共にリペアラブルです。前稿にならいリペアラブルなIFを$\mathrm{IF^R}$と書くことにします。

SM1のVSG prevent能力はアーキテクチャ的に決定されるため、他の事象とは独立と考え、$K_\text{IF,RF}$(101.3)を用いると、(106.1)は $$ \Pr\{\mathrm{LAT1\ at\ }t\}=\Pr\{\mathrm{IF^R\ down\ at\ }t\}\Pr\{\text{VSG of IF preventable}\}\Pr\{\mathrm{SM\ up\ at\ }t\}\\ =K_{\mathrm{IF,RF}}Q_{\mathrm{IF}}(t)A_{\mathrm{SM}}(t)\tag{106.2} $$ と書けます。

さらに、(105.1)の右辺積分中の条件付き確率式に(106.1)、独立条件付き確率式(103.4)、及び微小故障条件付き確率式(66.8)を用い、DPF時の2つ目のフォールトはIF、SM1共にアンリペアラブルとなるため、 $$ \Pr\{\mathrm{SM\ down\ in\ }(t, t+dt]\ |\ \mathrm{LAT1\ at\ }t\}\\ =\Pr\{\mathrm{SM\ down\ in\ }(t, t+dt]\ |\ \mathrm{SM\ up\ at\ }t\cap\mathrm{IF^R\ down\ at\ }t\cap\text{VSG of IF preventable}\}\\ =\Pr\{\mathrm{SM\ down\ in\ }(t, t+dt]\ |\ \mathrm{SM\ up\ at\ }t\}=\lambda_{\mathrm{SM}}dt\tag{106.3} $$ よって、(105.1)に(106.3)、(106.2)を適用した上で、PUA(59.8)、PA(59.7)故障率(66.6)及び弊社積分公式を用いれば、 $$ \begin{eqnarray} \overline{q_{\mathrm{DPF2, IFR}}}&=&\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}K_{\mathrm{IF,RF}}Q_{\mathrm{IF}}(t)A_{\mathrm{SM}}(t)\lambda_{\mathrm{SM}}dt\\ &=&\frac{K_{\mathrm{IF,RF}}}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}\left[(1-K_{\mathrm{IF,MPF}})F_{\mathrm{IF}}(t)+K_{\mathrm{IF,MPF}}F_{\mathrm{IF}}(u)\right]\\ & &\cdot\left[(1-K_\text{SM,MPF})f_\text{SM}(t)+K_\text{SM,MPF}f_\text{SM}(u)\right]dt,\\ & &ただし、u\equiv t\bmod\tau\\ &\approx&\frac{K_{\mathrm{IF,RF}}}{2}\lambda_{\mathrm{SM}}\lambda_{\mathrm{IF}}\left[(1-K_{\mathrm{MPF}})T_\text{lifetime}+K_{\mathrm{MPF}}\tau\right], \\ & &ただし、K_{\mathrm{MPF}}:=K_{\mathrm{IF,MPF}}+K_{\mathrm{SM,MPF}}-K_{\mathrm{IF,MPF}}K_{\mathrm{SM,MPF}}\\ &=&K_{\mathrm{IF,RF}}\beta, \\ & &ただし、\beta:=\frac{1}{2}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}[(1-K_{\mathrm{MPF}})T_\text{lifetime}+K_{\mathrm{MPF}}\tau] \end{eqnarray} \tag{106.4} $$

ブログでお知らせしたように、RAMS 2020においてPMHF式の論文発表が終了したため、本記事を開示します。


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

posted by sakurai on February 5, 2020 #105

LAT1⇒DPF2の平均PUDの計算

次にLAT1からDPF2の平均PUDを計算します。時刻$t$でLAT1においてはSM1=upであったのに対し、$t+dt$までの間にSM1にフォールトが起き、DPF2に移行しSM1=downとなります。

図%%.1
図105.1 CTMCにおいてLAT1⇒DPF2の遷移

この場合、規格(1st Edition)が曖昧であるため、次の2とおりのケースが考えられます。

  1. LAT1においては既にIF=downであり、SM1のフォールトに応じて確率的にDPF2に遷移する。これはIFがアンリペアラブルの場合であり、これをIFUモデルと名付けます。図105.1の実線(のみ)の遷移です。
  2. LAT1においては既にIF=downであり、検出周期内ではSM1のフォールトに応じて確率的にDPF2に遷移する。一方検出周期の最後で、検出されたIFのフォールトは全量(経過時間0で)リペアされ、IF=upとなりOPRに戻る。これはIFがリペアラブルの場合であり、これをIFRモデルと名付けます。図105.1の実線及び破線の遷移です。

1. LAT1のフォールトがDPF2に遷移する場合(IFUモデル)

まずケース1.のIFUモデルを前提として計算すると、条件付き確率の公式より、 $$ \begin{eqnarray} \overline{q_{\mathrm{DPF2,IFU}}}&=&\frac{1}{T_\text{lifetime}}\Pr\{\mathrm{DPF2\ at\ }T_\text{lifetime}\}\\ &=&\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}\Pr\{\mathrm{LAT1\ at\ }t\cap\mathrm{SM\ down\ in\ }(t, t+dt)\}\\ &=&\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}\Pr\{\mathrm{SM\ down\ in\ }(t, t+dt]\ |\ \mathrm{LAT1\ at\ }t\}\\ & &\ \ \ \ \cdot\Pr\{\mathrm{LAT1\ at\ }t\} \end{eqnarray} \tag{105.1} $$ ここで、$\mathrm{LAT1}$という状態は、IFが不稼働状態にも関わらずVSGを免れており、かつSM1は稼働状態であるから、 $$ \Pr\{\mathrm{LAT1\ at\ }t\}=\Pr\{\mathrm{IF\ down\ at\ }t\cap\text{VSG of IF preventable}\cap\mathrm{SM\ up\ at\ }t\} \tag{105.2} $$ IFとSM1の稼働状態は独立事象であり、IFはアンリペアラブル、SM1はリペアラブルです。SM1のVSG prevent能力はアーキテクチャ的に決定されるため、他の事象とは独立と考え、$K_\text{IF,RF}$(101.3)を用いると、(105.2)は $$ \Pr\{\mathrm{LAT1\ at\ }t\}=\Pr\{\mathrm{IF^U\ down\ at\ }t\}\Pr\{\text{VSG of IF preventable}\}\Pr\{\mathrm{SM\ up\ at\ }t\}\\ =K_{\mathrm{IF,RF}}F_{\mathrm{IF}}(t)A_{\mathrm{SM}}(t)\tag{105.3} $$ と書けます。

さらに、(105.1)の右辺積分中の条件付き確率式に(105.2)、独立条件付き確率式(103.4)、及び微小故障条件付き確率式(66.8)を用れば、 $$ \Pr\{\mathrm{SM\ down\ in\ }(t, t+dt]\ |\ \mathrm{LAT1\ at\ }t\}\\ =\Pr\{\mathrm{SM\ down\ in\ }(t, t+dt]\ |\ \mathrm{SM\ up\ at\ }t\cap\mathrm{IF^U\ down\ at\ }t\cap\text{VSG of IF preventable}\}\\ =\Pr\{\mathrm{SM\ down\ in\ }(t, t+dt]\ |\ \mathrm{SM\ up\ at\ }t\}=\lambda_{\mathrm{SM}}dt \tag{105.4} $$ よって、(105.1)に(105.4)、(105.3)を用いた上で、稼働度PA(59.7)故障率(66.6)及び弊社積分公式を用いれば、 $$ \begin{eqnarray} \overline{q_{\mathrm{DPF2, IFU}}}&=&\frac{1} {T_\text{lifetime}}\int_0^{T_\text{lifetime}}K_{\mathrm{IF,RF}}F_{\mathrm{IF}}(t)A_{\mathrm{SM}}(t)\lambda_{\mathrm{SM}}dt\\ &=&\frac{K_{\mathrm{IF,RF}}}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}F_{\mathrm{IF}}(t)[(1-K_{\mathrm{SM,MPF}})R_{\mathrm{SM}}(t)+K_{\mathrm{SM,MPF}}R_{\mathrm{SM}}(u)]\lambda_{\mathrm{SM}}dt,\\ & &ただし、u\equiv t\bmod\tau\\ &=&\frac{K_{\mathrm{IF,RF}}}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}F_{\mathrm{IF}}(t)[(1-K_{\mathrm{SM,MPF}})f_{\mathrm{SM}}(t)+K_{\mathrm{SM,MPF}}f_{\mathrm{SM}}(u)]dt\\ &\approx&\frac{K_{\mathrm{IF,RF}}}{2}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}[(1-K_{\mathrm{SM,MPF}})T_\text{lifetime}+K_{\mathrm{SM,MPF}}\tau]\\ &=&K_{\text{IF,RF}}\alpha,\\ & &ただし、\alpha:=\frac{1}{2}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}[(1-K_{\mathrm{SM,MPF}})T_\text{lifetime}+K_{\mathrm{SM,MPF}}\tau] \end{eqnarray} \tag{105.5} $$

ここで、$(1-K_{\mathrm{SM,MPF}})T_\text{lifetime}\gg K_{\mathrm{SM,MPF}}\tau$の場合に$M_{\mathrm{PMHF}}=\overline{q_{\mathrm{SPF,IFU}}}+\overline{q_{\mathrm{DPF1,IFU}}}+\overline{q_{\mathrm{DPF2, IFU}}}$を計算すると、 $$ M_{\mathrm{PMHF}}= (1-K_{\mathrm{IF,RF}})\lambda_{\mathrm{IF}}+ K_{\mathrm{IF,RF}}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}(1-K_{\mathrm{SM,MPF}})T_\text{lifetime}\\ \tag{105.6} $$ であり、さらにこれは、 $$ \begin{cases} \begin{eqnarray} \lambda_{\mathrm{IF,RF}}&:=&(1-K_{\mathrm{IF,RF}})\lambda_{\mathrm{IF}}\\ \lambda_{\mathrm{IF,DPF}}&:=&K_{\mathrm{IF,RF}}\lambda_{\mathrm{IF}}\\ \lambda_{\mathrm{SM,DPF,lat}}&:=&(1-K_{\mathrm{SM,MPF}})\lambda_{\mathrm{SM}} \end{eqnarray} \tag{105.7} \end{cases} $$ を用いて $$ (105.6)=\lambda_{\mathrm{IF,RF}}+\lambda_{\mathrm{IF,DPF}}\lambda_{\mathrm{SM,DPF,lat}}T_\text{lifetime}\tag{105.8} $$ と書きなおせるため、(105.8)は次の図105.2に示す、ISO 26262 1st edition Part 10の第3式に(IF⇒Mと読み替えることにより))完全に一致します。

図%%.2
図105.2 ISO 26262 1st edition Part 10 第3式

この式は「故障順序によらない」PMHF式ということですが、「故障順序によらない」とは、「故障の順番がIF⇒SMまたはその反対のSM⇒IFの両方の場合」$\dagger$という意味です。1st editionの第3式に一致したということは、1st SMによりVSG抑止されたフォールトは全てレイテントフォールトになるのが規格の前提であると推測されます。

しかしながら、この前提はLFMにおいてdetected faultが算入されないという点で、規格内部での不一貫性を示しています。

ブログでお知らせしたように、RAMS 2020においてPMHF式の論文発表が終了したため、本記事を開示します。


$\dagger$連続確率過程の確率密度の観点からはIFとSMの同時故障の確率は”ほとんど確実に"0です。従って、この条件は全ての場合を表します。


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

posted by sakurai on February 5, 2020 #104

LAT2⇒DPF1の平均PUDの計算

次にLAT2からDPF1となる平均PUDを計算します。時刻$t$でLAT2においてはIF=upであったのに対し、$t+dt$までの間にIFにフォールトが起き、IF=downとなると同時にDPF1に移行します。

図%%.1
図104.1 CTMCにおいてLAT2⇒DPF1の遷移

CTMCの平均PUD基本式(102.5)について、条件付き確率の公式を用いて、 $$ \begin{eqnarray} \overline{q_{\mathrm{DPF1,IFU}}}&=&\frac{1}{T_\text{lifetime}}\Pr\{\mathrm{DPF1\ at\ }T_\text{lifetime}\}\\ &=&\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}\Pr\{\mathrm{LAT2\ at\ }t\cap\mathrm{IF\ down\ in\ }(t, t+dt]\}\\ &=&\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}\Pr\{\mathrm{IF\ down\ in\ }(t, t+dt]\ |\ \mathrm{LAT2\ at\ }t\}\\ & &\ \ \ \ \cdot\Pr\{\mathrm{LAT2}\mathrm{\ at\ }t\} \end{eqnarray} \tag{104.1} $$ ここで、LAT2はIFが稼働、SM1が不稼働状態であるから、 $$ \Pr\{\mathrm{LAT2\ at\ }t\}=\Pr\{\mathrm{IF\ up\ at\ }t\cap\mathrm{SM\ down\ at\ }t\}\tag{104.2} $$ IFとSM1の稼働状態は独立事象で、IFはアンリペアラブル、SM1はリペアラブルであることから、(104.2)は $$ \Pr\{\mathrm{LAT2\ at\ }t\}=\Pr\{\mathrm{IF^U\ up\ at\ }t\}\Pr\{\mathrm{SM\ down\ at\ }t\}\\=R_{\mathrm{IF}}(t)Q_{\mathrm{SM}}(t)\tag{104.3} $$ と書けます。

さらに、(104.1)の右辺積分中の条件付き確率式に(104.2)、独立条件付き確率式(103.4)、及び微小故障条件付き確率式(66.8)を適用すれば、IFはアンリペアラブルであるため、 $$ \Pr\{\mathrm{IF^U\ down\ in\ }(t, t+dt]\ |\ \mathrm{LAT2\ at\ }t\}\\ =\Pr\{\mathrm{IF^U\ down\ in\ }(t, t+dt]\ |\ \mathrm{IF^U\ up\ at\ }t\cap\mathrm{SM\ down\ at\ }t\}\\ =\Pr\{\mathrm{IF^U\ down\ in\ }(t, t+dt]\ |\ \mathrm{IF^U\ up\ at\ }t\}=\lambda_{\mathrm{IF}}dt\tag{104.4} $$ よって、(104.1)に(104.4)、(104.3)を用いた上で、PUA(59.8)故障率(66.6)、及び弊社積分公式を適用すれば、 $$ \begin{eqnarray} \overline{q_{\mathrm{DPF1,IFU}}}&=&\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}Q_{\mathrm{SM}}(t)R_{\mathrm{IF}}(t)\lambda_{\mathrm{IF}}dt\\ &=&\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}\left[(1-K_{\mathrm{SM,MPF}})F_{\mathrm{SM}}(t)+K_{\mathrm{SM,MPF}}F_{\mathrm{SM}}(u)\right]f_{\mathrm{IF}}(t)dt,\\ & &ただし、u\equiv t\bmod\tau\\ &\approx&\frac{1}{2}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}\left[(1-K_{\mathrm{SM,MPF}})T_\text{lifetime}+K_{\mathrm{SM,MPF}}\tau\right]\\ &=&\alpha,\\ & & ただし、\alpha:=\frac{1}{2}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}[(1-K_{\mathrm{SM,MPF}})T_\text{lifetime}+K_{\mathrm{SM,MPF}}\tau] \end{eqnarray} \tag{104.5} $$ よって、(103.7)及び(104.5)より、 $$ \begin{eqnarray} M_{\mathrm{PMHF}}&=&\overline{q_{\mathrm{SPF,IFU}}}+\overline{q_{\mathrm{DPF1,IFU}}}\\ &=&(1-K_{\mathrm{IF,RF}})\lambda_{\mathrm{IF}}+\frac{1}{2}K_{\mathrm{IF,RF}}\lambda_{\mathrm{IF}}\lambda_{\mathrm{SM}}[(1-K_{\mathrm{SM,MPF}})T_\text{lifetime}+K_{\mathrm{SM,MPF}}\tau]\\ &=&(1-K_{\mathrm{IF,RF}})\lambda_{\mathrm{IF}}+K_{\mathrm{IF,RF}}\alpha \end{eqnarray} \tag{104.6} $$ であり、さらにこれは、 $$ \begin{cases} \begin{eqnarray} \lambda_\text{IF,RF}&:=&(1-K_\text{IF,RF})\lambda_\text{IF}\\ \lambda_\text{IF,DPF}&:=&K_\text{IF,RF}\lambda_\text{IF}\\ \lambda_\text{SM,DPF,lat}&:=&(1-K_\text{SM,MPF})\lambda_\text{SM}\\ \lambda_\text{SM,DPF,det}&:=&K_\text{SM,MPF}\lambda_\text{SM} \end{eqnarray} \end{cases} \tag{104.7} $$ を用いて $$ (104.6)=\lambda_{\mathrm{IF,RF}}+\frac{1}{2}\lambda_{\mathrm{IF,DPF}} (\lambda_{\mathrm{SM,DPF,lat}}T_\text{lifetime}+\lambda_{\mathrm{SM,DPF,det}}\tau)\tag{104.8} $$ と書きなおせるため、(104.8)は次の図104.2に示す、ISO 26262 1st edition Part 10の最初のPMHF式、すなわちSM1に引き続きIFがフォールトすると(誤って)書かれている式と、(IF⇒Mと読み替えることにより)完全に一致します。

図%%.2
図104.2 1st edition規格第1式

ブログでお知らせしたように、RAMS 2020においてPMHF式の論文発表が終了したため、本記事を開示します。


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

posted by sakurai on February 5, 2020 #102

前稿までの議論を踏まえ、ここからは$M_{\mathrm{PMHF}}$の計算を行います。

マルコフチェイン

図102.1にIF、SM1及び2nd SMから構成されるサブシステムの動作を表した連続時間マルコフ連鎖図(CTMC, Continuous-time Markov chains)を示します。IF、SM1のup又はdownの状態の組み合わせにより、下記の5通りの状態が存在し、その確率過程の組の遷移をマルコフ連鎖で表現します。前稿に示すように、遷移先状態確率は遷移元状態確率に微小遷移確率をかけたものを時間で積分することにより求める事ができます。以下、ステートを斜体で表します。

  • IF:up, SM1:up --- OPR
  • IF:down(VSG), SM1:up --- SPF
  • IF:down(not VSG), SM1:up --- LAT1
  • IF:up, SM1:down --- LAT2
  • IF:down, SM1:down --- DPF
    図%%.1
    図102.1 対象となるCTMC

リペアラビリティ(修理可能性)

一般的なサブシステムではIF、SM1共リペアラブル(修理可能)と考えます。また、検出されたフォールトは全て修理(リペア)されるという仮定を置きます。もし修理率が存在するとしても、フォールト検出率に入れてしまえば、修理率は100%として良いためです。

IF及びSM1のレイテントフォールト検出は2nd SMにより、周期$\tau$で実行されます。レイテントフォールト検出率はIF、SM1についてそれぞれ$K_\text{IF,MPF}$及び$K_\text{SM,MPF}$ですが、アンリペアラブルとする場合はレイテントフォールト検出率をゼロとすれば良いわけです。従って、リペアラブルのほうが一般的なサブシステムを表します。ISO 26262の基本思想は、定数故障率(指数分布)、周期的フォールト検出が基礎となっています。

まず、IFがアンリペアラブル、SM1がリペアラブルの場合を考えます。これをIFUモデル(IFがUnrepairable)とします。

ブログでお知らせしたように、RAMS 2020においてPMHF式の論文発表が終了したため、本記事を開示します。


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


ページ: