Posts Issued in February, 2021

posted by sakurai on February 9, 2021 #359

お客様との会話です。

Q. レイテントフォールトとは、潜在的なフォールトとのことでした。例えばブレーキECUにフォールトが起きており、停車している場合はフォールトが発現していません。その後に運転を開始するとブレーキに不具合が起き、フォールト顕在化して故障となります。これはまさに潜在的なフォールトなので、レイテントフォールトなのでしょうか?

A. 一見するとそのように考えられますが、この場合は安全目標に条件が不足しています。安全目標に「走行中にブレーキに〇〇なきこと」のように、走行中を入れるべきです。そうでないと死傷事故が起きない停車中も含んでしまい、安全目標が正しく表されません。これはHA&RAの誤りということになります。

反対に、安全目標に正しく走行中を含めれば、走行後に初めて安全目標違反となります。従って、正しい安全目標に修正した場合、ブレーキECUのフォールトは、SPFもしくはRFと分類されます。


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

posted by sakurai on February 8, 2021 #358

引き続き、前稿の続きの計算をします。本稿では次の(358.1)及び(358.2)を求めます。 $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(t)f_\text{IF}(\color{red}{u})dt,\ \ s.t.\ \ u:=t\bmod\tau\tag{358.1} $$

$$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(\color{red}{u})f_\text{IF}(\color{red}{u})dt,\ \ s.t.\ \ u:=t\bmod\tau\tag{358.2} $$ (358.1)に$R_\text{SM}(i\tau+u)=e^{-\lambda_\text{SM}(i\tau+u)}$及び、$f_\text{IF}(u)=\lambda_\text{IF} e^{-\lambda_\text{IF}u}$を代入し、 $$ (358.1)=\frac{1}{T_\text{lifetime}}\sum_{i=0}^{n-1} \int_{i\tau}^{(i+1)\tau}e^{-\lambda_\text{SM}(i\tau+u)}\lambda_\text{IF}e^{-\lambda_\text{IF}u}du\\ =\frac{\lambda_\text{IF}}{T_\text{lifetime}}\sum_{i=0}^{n-1}e^{-\lambda_\text{SM}i\tau}\int_0^{\tau}e^{-(\lambda_\text{SM}+\lambda_\text{IF})u}du\tag{358.3} $$ ここで、$\sum_{i=0}^{n-1}e^{-\lambda_\text{SM}i\tau}$を計算すると、等比数列の和及びMaclaurin展開の1次近似より、 $$ \require{cancel} \sum_{i=0}^{n-1}e^{-\lambda_\text{SM}i\tau} =\frac{1-e^{-\lambda_\text{SM}T_\text{lifetime}}}{1-e^{-\lambda_\text{SM}\tau}} \approx\frac{\bcancel{\lambda_\text{SM}}T_\text{lifetime}}{\bcancel{\lambda_\text{SM}}\tau} =\frac{T_\text{lifetime}}{\tau}\tag{358.4} $$ これを用いて、 $$ (358.3)=\frac{\lambda_\text{IF}}{\bcancel{T_\text{lifetime}}}\frac{\bcancel{T_\text{lifetime}}}{\tau}\left[\frac{e^{-(\lambda_\text{SM}+\lambda_\text{IF})u}}{-(\lambda_\text{SM}+\lambda_\text{IF})}\right]^{\tau}_0 =\frac{\lambda_\text{IF}}{\tau(\lambda_\text{SM}+\lambda_\text{IF})}\left(1-e^{-(\lambda_\text{SM}+\lambda_\text{IF})\tau}\right)\tag{358.5} $$ 同様にMaclaurin展開の2次近似を用いると、 $$ e^{-\lambda t}\approx1-\lambda t + \frac{1}{2}\lambda^2 t^2 $$ より、 $$ (358.7)\approx\frac{\lambda_\text{IF}}{\bcancel{\tau(\lambda_\text{SM}+\lambda_\text{IF}})} \left(\bcancel{(\lambda_\text{SM}+\lambda_\text{IF})\tau} -\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})^\bcancel{2}\tau^\bcancel{2}\right)\\ =\lambda_\text{IF}\left(1-\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})\tau\right) =\lambda_\text{IF}-\frac{\lambda_\text{IF}}{2}(\lambda_\text{IF}+\lambda_\text{SM})\tau\tag{358.6} $$ 以上から次のように(358.1)の値が求められました。 $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(t)f_\text{IF}(u)dt\approx\lambda_\text{IF}\left(1-\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})\tau\right),\ \ s.t.\ \ u:=t\bmod\tau\tag{358.7} $$

次に(358.2)は同様に、$R_\text{SM}(i\tau+u)=e^{-\lambda_\text{SM}(i\tau+u)}$及び、$f_\text{IF}(i\tau+u)=\lambda_\text{IF} e^{-\lambda_\text{IF}i\tau+u}$を代入し、 $$ (358.1)=\frac{1}{T_\text{lifetime}}\sum_{i=0}^{n-1} \int_{i\tau}^{(i+1)\tau}e^{-\lambda_\text{SM}(i\tau+u)}\lambda_\text{IF}e^{-\lambda_\text{IF}(i\tau+u)}du\\ =\frac{\lambda_\text{IF}}{T_\text{lifetime}}\sum_{i=0}^{n-1}e^{-(\lambda_\text{SM}+\lambda_\text{IF})i\tau}\int_0^{\tau}e^{-(\lambda_\text{SM}+\lambda_\text{IF})u}du\tag{358.8} $$ ここで、$\sum_{i=0}^{n-1}e^{-(\lambda_\text{SM}+\lambda_\text{IF})i\tau}$を計算すると、等比数列の和及びMaclaurin展開の1次近似より、 $$ \require{cancel} \sum_{i=0}^{n-1}e^{-(\lambda_\text{SM}+\lambda_\text{IF})i\tau} =\frac{1-e^{-(\lambda_\text{SM}+\lambda_\text{IF})T_\text{lifetime}}}{1-e^{-(\lambda_\text{SM}+\lambda_\text{IF})\tau}} \approx\frac{\bcancel{(\lambda_\text{SM}+\lambda_\text{IF})}T_\text{lifetime}}{\bcancel{(\lambda_\text{SM}+\lambda_\text{IF})}\tau} =\frac{T_\text{lifetime}}{\tau}\tag{358.9} $$ これを用いて、 $$ (358.8)=\frac{\lambda_\text{IF}}{\bcancel{T_\text{lifetime}}}\frac{\bcancel{T_\text{lifetime}}}{\tau}\left[\frac{e^{-(\lambda_\text{SM}+\lambda_\text{IF})u}}{-(\lambda_\text{SM}+\lambda_\text{IF})}\right]^{\tau}_0 =\frac{\lambda_\text{IF}}{\tau(\lambda_\text{SM}+\lambda_\text{IF})}\left(1-e^{-(\lambda_\text{SM}+\lambda_\text{IF})\tau}\right)\tag{358.10} $$ 同様にMaclaurin展開の2次近似を用いると、 $$ e^{-\lambda t}\approx1-\lambda t + \frac{1}{2}\lambda^2 t^2 $$ より、 $$ (358.7)\approx\frac{\lambda_\text{IF}}{\bcancel{\tau(\lambda_\text{SM}+\lambda_\text{IF}})} \left(\bcancel{(\lambda_\text{SM}+\lambda_\text{IF})\tau} -\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})^\bcancel{2}\tau^\bcancel{2}\right)\\ =\lambda_\text{IF}\left(1-\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})\tau\right) =\lambda_\text{IF}-\frac{\lambda_\text{IF}}{2}(\lambda_\text{IF}+\lambda_\text{SM})\tau\tag{358.11} $$ 以上から次のように(358.2)の値が求められました。 $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(u)f_\text{IF}(u)dt\approx\lambda_\text{IF}\left(1-\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})\tau\right),\ \ s.t.\ \ u:=t\bmod\tau\tag{358.12} $$


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

posted by sakurai on February 4, 2021 #357

引き続き、前稿の発展形の積分公式を載せておきます。本稿では次の(357.1)及び(357.2)を求めます。 $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(t)f_\text{IF}(t)dt\tag{357.1} $$

$$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(\color{red}{u})f_\text{IF}(t)dt,\ \ s.t.\ \ u:=t\bmod\tau\tag{357.2} $$ まず、(357.1)式に、$R_\text{SM}(t)=e^{-\lambda_\text{SM}t}$及び、$f_\text{IF}(t)=\lambda_\text{IF} e^{-\lambda_\text{IF} t}$を代入し、 $$ (357.1)=\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}e^{-\lambda_\text{SM}t}\lambda_\text{IF}e^{-\lambda_\text{IF}t}dt=\frac{\lambda_\text{IF}}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}e^{-(\lambda_\text{SM}+\lambda_\text{IF})t}dt\\ =\frac{\lambda_\text{IF}}{T_\text{lifetime}}\left[\frac{e^{-(\lambda_\text{SM}+\lambda_\text{IF})t}}{-(\lambda_\text{SM}+\lambda_\text{IF})}\right]^{T_\text{lifetime}}_0 =\frac{\lambda_\text{IF}}{T_\text{lifetime}(\lambda_\text{SM}+\lambda_\text{IF})}\left(1-e^{-(\lambda_\text{SM}+\lambda_\text{IF})T_\text{lifetime}}\right)\tag{357.3} $$ ここで$\lambda t\ll 1$の条件で$e^{-\lambda t}$のMaclaurin展開は $$ e^{-\lambda t}=1-\lambda t + \frac{1}{2}\lambda^2 t^2-O((\lambda t)^3) $$ となるため、$O((\lambda t)^3)\approx 0$と近似し、これを(357.3)に代入すると、 $$ \require{cancel} (357.3)\approx\frac{\lambda_\text{IF}}{\bcancel{T_\text{lifetime}}\bcancel{(\lambda_\text{SM}+\lambda_\text{IF})}} \left(\bcancel{(\lambda_\text{SM}+\lambda_\text{IF})}\bcancel{T_\text{lifetime}} -\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})^\bcancel{2}{T_\text{lifetime}}^\bcancel{2}\right)\\ =\lambda_\text{IF}\left(1-\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})T_\text{lifetime}\right) =\lambda_\text{IF}-\frac{\lambda_\text{IF}}{2}(\lambda_\text{IF}+\lambda_\text{SM})T_\text{lifetime}\tag{357.4} $$ 以上から次のように(357.1)の値が求められました。 $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(t)f_\text{IF}(t)dt\approx\lambda_\text{IF}\left(1-\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})T_\text{lifetime}\right)\tag{357.5} $$

次に(357.2)式はやや複雑になりますが、基本的には同様な計算を行います。まず、$u:=t\bmod\tau$であることから、$t=i\tau+u, i=0, 1, 2, ..., n-1, T_\text{lifetime}=n\tau$とおき、$t$を$i$と$u$で表します。従って(357.2)に$R_\text{SM}(u)=e^{-\lambda_\text{SM}u}$及び、$f_\text{IF}(i\tau+u)=\lambda_\text{IF} e^{-\lambda_\text{IF}(i\tau+u)}$を代入し、 $$ (357.2)=\frac{1}{T_\text{lifetime}}\sum_{i=0}^{n-1} \int_{i\tau}^{(i+1)\tau}e^{-\lambda_\text{SM}u}\lambda_\text{IF}e^{-\lambda_\text{IF}(i\tau+u)}du\\ =\frac{\lambda_\text{IF}}{T_\text{lifetime}}\sum_{i=0}^{n-1}e^{-\lambda_\text{IF}i\tau}\int_0^{\tau}e^{-(\lambda_\text{SM}+\lambda_\text{IF})u}du\tag{357.6} $$ ここで、$\sum_{i=0}^{n-1}e^{-\lambda_\text{IF}i\tau}$を計算すると、等比数列の和及びMaclaurin展開の1次近似より、 $$ \sum_{i=0}^{n-1}e^{-\lambda_\text{IF}i\tau} =\frac{1-e^{-\lambda_\text{IF}T_\text{lifetime}}}{1-e^{-\lambda_\text{IF}\tau}} \approx\frac{\bcancel{\lambda_\text{IF}}T_\text{lifetime}}{\bcancel{\lambda_\text{IF}}\tau} =\frac{T_\text{lifetime}}{\tau}\tag{357.7} $$ これを用いて、 $$ (357.5)=\frac{\lambda_\text{IF}}{\bcancel{T_\text{lifetime}}}\frac{\bcancel{T_\text{lifetime}}}{\tau}\left[\frac{e^{-(\lambda_\text{SM}+\lambda_\text{IF})u}}{-(\lambda_\text{SM}+\lambda_\text{IF})}\right]^{\tau}_0 =\frac{\lambda_\text{IF}}{\tau(\lambda_\text{SM}+\lambda_\text{IF})}\left(1-e^{-(\lambda_\text{SM}+\lambda_\text{IF})\tau}\right)\tag{357.8} $$ 同様にMaclaurin展開の2次近似を用いると、 $$ e^{-\lambda t}\approx1-\lambda t + \frac{1}{2}\lambda^2 t^2 $$ より、 $$ (357.7)\approx\frac{\lambda_\text{IF}}{\bcancel{\tau(\lambda_\text{SM}+\lambda_\text{IF}})} \left(\bcancel{(\lambda_\text{SM}+\lambda_\text{IF})\tau} -\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})^\bcancel{2}\tau^\bcancel{2}\right)\\ =\lambda_\text{IF}\left(1-\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})\tau\right) =\lambda_\text{IF}-\frac{\lambda_\text{IF}}{2}(\lambda_\text{IF}+\lambda_\text{SM})\tau\tag{357.9} $$ 以上から次のように(357.2)の値が求められました。 $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(u)f_\text{IF}(t)dt\approx\lambda_\text{IF}\left(1-\frac{1}{2}(\lambda_\text{SM}+\lambda_\text{IF})\tau\right),\ \ s.t.\ \ u:=t\bmod\tau\tag{357.10} $$


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

posted by sakurai on February 3, 2021 #356

積分公式に引き続き、次の(356.1)及び(356.2)について、あらかじめ結果を導出しておき、積分公式として使用します。 $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(t)dt\tag{356.1} $$ 及び $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(u)dt,\ \ s.t.\ \ u:=t\bmod\tau\tag{356.2} $$ まず、(356.1)式に、$R_\text{SM}(t)=e^{-\lambda_\text{SM}t}$を代入し、 $$ \require{cancel} \begin{eqnarray} (356.1)&=&\frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}e^{-\lambda_\text{SM}t}dt=\frac{1}{T_\text{lifetime}}\left[-\frac{e^{-\lambda_\text{SM}t}}{\lambda_\text{SM}}\right]^{T_\text{lifetime}}_0\\ &=&\frac{1}{T_\text{lifetime}\lambda_\text{SM}}\left(1-e^{-\lambda_\text{SM}T_\text{lifetime}}\right)\\ \end{eqnarray}\tag{356.3} $$ ここで$\lambda t\ll 1$の条件で$e^{-\lambda t}$のMaclaurin展開は $$e^{-\lambda t}=1-\lambda t + \frac{1}{2}\lambda^2 t^2-O((\lambda t)^3)$$であるから、$O((\lambda t)^3)\approx 0$と近似し、これを(356.3)に代入すると(356.3)は、 $$ \begin{eqnarray} (356.3)&\approx&\frac{1}{\bcancel{T_\text{lifetime}\lambda_\text{SM}}}\left(\bcancel{\lambda_\text{SM}}\bcancel{T_\text{lifetime}}-\frac{1}{2}\lambda_\text{SM}^\bcancel{2}T_\text{lifetime}^\bcancel{2}\right)\\ &=&1-\frac{1}{2}\lambda_\text{SM}T_\text{lifetime} \end{eqnarray}\tag{356.4} $$ 以上から次のように(356.1)の値が求められました。

$$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(t)dt\approx1-\frac{1}{2}\lambda_\text{SM}T_\text{lifetime}\tag{356.5} $$ 次に(356.2)は、 $$ \begin{eqnarray} (356.2)&=&\frac{1}{T_\text{lifetime}}\sum_{i=0}^{n-1}\int_{i\tau}^{(i+1)\tau}e^{-\lambda_\text{SM}u}du =\frac{n}{T_\text{lifetime}}\int_0^\tau e^{-\lambda_\text{SM}u}du\\ &=&\frac{\bcancel{n}1}{\bcancel{T_\text{lifetime}}\tau}\left[\frac{e^{-\lambda_\text{SM}u}}{-\lambda_\text{SM}}\right]^{\tau}_0 =\frac{1}{\tau\lambda_\text{SM}}\left(1-e^{-\lambda_\text{SM}\tau}\right) \end{eqnarray}\tag{356.6} $$ ここで同様に、$$e^{-\lambda t}\approx1-\lambda t + \frac{1}{2}\lambda^2 t^2$$を用いて、 $$ \begin{eqnarray} (356.3)&\approx&\frac{1}{\bcancel{\tau\lambda_\text{SM}}}\left(\bcancel{\lambda_\text{SM}}\bcancel{\tau}-\frac{1}{2}\lambda_\text{SM}^\bcancel{2}\tau^\bcancel{2}\right)\\ &=&1-\frac{1}{2}\lambda_\text{SM}\tau \end{eqnarray}\tag{356.7} $$ 以上から次のように(356.2)の値が求められました。 $$ \frac{1}{T_\text{lifetime}}\int_0^{T_\text{lifetime}}R_\text{SM}(u)dt\approx1-\frac{1}{2}\lambda_\text{SM}\tau,\ \ s.t.\ \ u:=t\bmod\tau\tag{356.8} $$


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

PMHF導出法の変更

posted by sakurai on February 2, 2021 #355

動機

長い間MPF detectedの扱いに疑問が潜在していました。弊社では、MPF detectedは結局修理されないので、いつの日か2つ目のSMのフォールトによりDPFとなると考えます。従って、MPF detectedは結局MPF latent (=LF)となるとした上でPMHF式を導出しています。しかしながら、この考え方には、次の2点の問題があります。

  • 規格のフォールト分類フローでは、MPF detectedとMPF latentが分離されているにも関わらず、弊社ではどちらもMPF latentと扱っているため、規格のフォールト分類と矛盾する。
  • 規格LFMの計算式にMPF detectedが入っていない。これは、規格はMPF detectedは安全側だと考えているためだと推測されるが、弊社では上記の理由から危険側としている。

そこで、これらを満足する方法を検討します。最初の論文で導入された、SM1による検出率を意味する次の条件付き確率$K_\text{det}$を、ここで再び使用します。 $$ K_\text{det}:=\Pr\{\text{Fault detected}\ |\ \text{Fault prevented}\}\tag{355.1} $$

これはFMCというよりも、アーキテクチャ的に次のように0または1の値をとります。

  • 検出系(非冗長系):1st SMはIFのフォールトを検出することによりVSG抑止を行う場合。この場合は検出するから抑止されるのであり、抑止される部分に対する検出される割合は100%です。すなわち$K_\text{det}=1$となります。
  • 冗長系:1st SMはIFの代替機能を持つことによりVSG抑止を行う場合。この場合はVSG抑止はしますが、1st SMは一切検出を行いません。従って、抑止される部分の検出される割合は0%です。すなわち$K_\text{det}=0$となります。また、両チャネルが同時にフォールトすることは無いため、VSG抑止率は100%、すなわち$K_\text{IF,RF}=1$となります。

さて、MPF detectedの考え方ですが、主機能のVSGが抑止されているので、運転はできないかもしれないものの、とりあえず安全状態は保たれます。従ってSPFもDPFも発生しません。しかるべき時間後に(レッカー車で)修理工場へ持っていき、修理が行われ、その後に運転が継続できると考えます。

主機能は動作しないので、通電はされず、運転時間は増大しません。従って、故障から修理までの時間は無視することができるので、1st SMにより検出された故障は瞬間的に修理された=故障が起きなかったのと等価です。

やや無理がある解釈の感がありますが、今回このように仮定してPMHF式の導出を進めることにします。 ブログ記事#361に続きます。

RAMS 2022においてMPF detectedの再考に基づくPMHF式の論文発表が終了したため、秘匿部分を開示します。


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

posted by sakurai on February 1, 2021 #354

引き続き、お客様との会話をシェアします。

Q. ソフトエラーはどう考えたら良いでしょうか?

A. ソフトエラーには、例えばメモリ化けのようなものが有ります。ハードウェアが恒久的に故障するのではなく、α線や中性子線等の放射線、もしくはノイズ等の原因により、記憶していた論理が反転することを指します。従って、正しいデータに再記憶すれば問題なく運用することが可能です。

メモリには、しばしば1bitの反転が起こりますが、この故障モードはSBU(Single Bit Upset)と呼ばれます。

元々ソフトエラーはダイナミックなメモリにのみ顕著に起こり、そのためにDRAMにはソフトエラーの検出・訂正のためにECCが設けられていました。近年のようにプロセステクノロジが進んでくると、従来は問題にならなかったロジックのソフトエラーも見えてくるようになったため、ロジックのソフトエラー対策が必要になります。

具体的なエレメントとしてはバスがあります。バスは昔は単なるアルミ配線でしたが、近年のAXI4になると巨大なマルチプレクサで構成されます。そのためバスマトリクスのソフトエラー対策として、end-to-endのECCを設けることがしばしば見られます。


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


ページ: