Posts Issued in October, 2025

posted by sakurai on October 30, 2025 #1041

図%%.1

On October 30, 2025, FS Micro Corporation※1, a provider of ISO 26262※2 consulting, announced that a paper authored by its President and CEO, Atsushi Sakurai, was accepted to RAMS 2026※3, a global conference organized by the IEEE※4 Reliability Society.

This marks Sakurai’s seventh consecutive acceptance at RAMS since 2020. The paper is scheduled to be presented at RAMS 2026 in Florida, USA, in January 2026, and has also been named a finalist for the Best Paper Award.

図%%.2

Beginning with an acceptance at an IEEE conference in 2017, Sakurai proposed a higher-accuracy PMHF※5 formulation at RAMS 2020 and has since continued contributions, including proposals to correct issues in the published formulae.

In the RAMS 2026 paper, an LLM※6 is used to automatically generate a fault tree※7 from a system block diagram. The method then analyzes, with an LLM, each component’s contribution to PMHF computed via FTA※8, thereby identifying and improving architectural weaknesses.

The proposed approach not only reduces engineering effort through automation but also contributes to improved system-level reliability in automotive electronics. Based on this research, ADAS※9 and autonomous-driving applications can achieve higher analysis efficiency and more optimized system design.

図%%.1

Notes
※1 FS Micro Corporation. Head Office: Nagoya. President and CEO: Atsushi Sakurai. Consulting for functional safety of automotive electronic systems. https://fs-micro.com/
※2 ISO 26262. International standard for functional safety of road-vehicle electric and electronic systems. Its goal is to reduce the risk of hazardous events during vehicle operation to an acceptable level.
※3 RAMS, Reliability and Maintainability Symposium. International conference on reliability engineering organized by the IEEE Reliability Society and partners. The 72nd symposium will be held in Florida, USA, in 2026. https://rams.org/
※4 IEEE, Institute of Electrical and Electronics Engineers. One of the world’s largest professional organizations advancing technology. https://ieee.org/
※5 PMHF, Probabilistic Metric for Random Hardware Failures. Time-average probability of dangerous failures from random hardware faults, used as a hardware design target in ISO 26262.
※6 LLM, Large Language Model. AI models trained on large text corpora for natural-language understanding and generation.
※7 Fault Tree. Logical tree representing causal pathways of system failures, useful for revealing structural vulnerabilities.
※8 FTA, Fault Tree Analysis. Systematic reliability analysis based on a fault tree, used to derive minimal cut sets and contribution measures for design improvement.
※9 ADAS, Advanced Driver Assistance Systems. Driver-assistance functions such as ACC adaptive cruise control, AEB automatic emergency braking, LKA lane keeping assist, a domain with stringent safety requirements.


Contact
Company: FS Micro Corporation
Representative: Atsushi Sakurai
Established: August 21, 2013
Capital: JPY 32,000,000 (including capital reserve)
Business: Consulting and seminars on functional safety for ISO 26262 automotive electronic systems
Email: info@fs-micro.com
URL: https://fs-micro.com/


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

posted by sakurai on October 30, 2025 #1040

図%%.1

2025年10月30日、ISO 26262※1のコンサルティングを提供するFSマイクロ株式会社※2は、代表取締役 桜井 厚の論文が、IEEE※3信頼性部会が主催する国際会議RAMS 2026※4に採択されたことを発表しました。

桜井の論文がRAMSに採択されるのは、2020年から今回で7年連続となります。この論文は2026年1月に米国フロリダ州で開催されるRAMS 2026において発表予定であり、最優秀論文候補にも指名されています。

図%%.2

桜井は2017年のIEEEでの論文採択に始まり、RAMS 2020ではより高精度なPMHF※5式を提案し、また、規格式自体の改善提案などを含め、ISO 26262に関する貢献を積み重ねてきました。

今回のRAMS 2026の論文では、LLM※6でシステムのブロック図からフォールトツリー※7を自動生成します。さらに、FTA※8で算出したPMHFへの寄与をLLMで解析し、アーキテクチャの弱点を特定し改善する手法を提案しています。

提案手法は自動化による省力化だけでなく、車載システム全体の信頼性向上にも寄与します。本研究により、ADAS※9や自動運転などのセーフティクリティカルな応用において、解析効率の向上と設計の最適化が図られます。

図%%.1

【注釈】
※1:ISO 26262:車載電気電子システムの機能安全に関する国際規格。運転中に生じ得る危険事象のリスクを許容水準まで低減することを目的とする。
※2:FSマイクロ株式会社(本社:名古屋市。代表取締役:桜井 厚):車載システムの機能安全に関するコンサルティングを提供。https://fs-micro.com/
※3:IEEE(Institute of Electrical and Electronics Engineers、電気電子技術者協会):技術の進歩を推進する世界最大級の専門技術者組織。https://ieee.org/
※4:RAMS(the Reliability and Maintainability Symposium):IEEE信頼性部会などが主催する信頼性工学の国際会議。第72回は2026年に米国フロリダ州で開催予定。
※5:PMHF(Probabilistic Metric for Random Hardware Failures):ランダムハードウェア故障に起因する危険側故障の時間平均確率を表す指標。ISO 26262でハードウェア設計目標として用いられる。https://rams.org/
※6:LLM(Large Language Model):ChatGPTに代表される大規模言語モデル。大量データ学習により自然言語の理解と生成を行うAI技術。
※7:フォールトツリー(Fault Tree):システム故障の原因を論理的に表現する木構造。イベントを論理ゲートで接続することでシステムの脆弱性の把握に役立つ。
※8:FTA(Fault Tree Analysis):フォールトツリーに基づく体系的な信頼性解析手法。最小カット集合の抽出や寄与度評価などを通じて設計改善点を導出する。
※9:ADAS(Advanced Driver Assistance Systems):自動車の運転支援機能群。例:ACC(適応型クルーズコントロール)、AEB(自動緊急ブレーキ)、LKA(車線維持支援)など。安全関連要求が高い領域に属する。


【お問い合わせ先】
会社名     FSマイクロ株式会社
代表者     桜井 厚
設立年月日   2013年8月21日
資本金     3,200万円(資本準備金を含む)
事業内容    ISO 26262車載電子機器の機能安全のコンサルティングおよびセミナー
メールアドレス info@fs-micro.com
URL      https://fs-micro.com/


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

GameFSMの改良 (17)

posted by sakurai on October 24, 2025 #1039

3番目にボディが厚い関数の最適化をトライします。対象はinitAll()(毎回のステージでの初期化関数)で、45行あります。

初期化関数(initAll())の最適化前後 比較
BSV合成 コンパイル時間 1'03'' 0'54'' ▲14.3%
Verilog合成 ファイルサイズ[KB] 4,283 3,554 ▲17.0%
合成時間 0'58'' 0'51'' ▲12.1%
Vivado LUT数 5,582 5,489 ▲1.7%
Vivado FF数 1,907 1,907 0.0%

結果としては、FSMオーバヘッドはほぼ0でした。一方、ボディがやや厚かったため、bscコンパイル時間とverilog量の削減となりました。物量も削減されているのは2度呼ばれているためかもしれません。

PCやbscの更新により、かつて1時間以上かかっていたコンパイルが今では1分を切るようになりました。まさに隔世の感があります。当初は論理の構築に集中しており、コンパイル時間も長く、思うように検証を進められませんでした。一方、現在は論理が固まったことで最適化も容易になり、コンパイル時間は劇的に短縮されました。この効果を当初に得られていればと感じます。


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

GameFSMの改良 (16)

posted by sakurai on October 21, 2025 #1038

2番目にボディが厚い関数の最適化をトライします。対象はupdatePlayerBullet()(自弾処理関数)で、64行あります。

自弾処理関数(updatePlayerBullet())の最適化前後 比較
BSV合成 コンパイル時間 1'15'' 1'03'' ▲16.0%
Verilog合成 ファイルサイズ[KB] 5,253 4,283 ▲18.5%
合成時間 0'52'' 0'58'' 11.5%
Vivado LUT数 5,490 5,582 1.7%
Vivado FF数 1,894 1,907 0.7%

結果としては、おなじくFSMオーバヘッドが想定されそのとおりになりました。一方、ボディが厚かったため、bscコンパイル時間とverilog量の削減となりました。


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

GameFSMの改良 (15)

posted by sakurai on October 17, 2025 #1037

前回の1度しか呼ばれていない関数のdrawString関数はボディが薄い(関数の行数が少ない)ので効果が出なかったかもしれないと思い、ボディが厚い関数をトライします。対象はupdateAlienBullet()(敵弾処理関数)で、行数は83行あります。

敵弾処理関数(updateAlienBullet())の最適化前後 比較
BSV合成 コンパイル時間 1'27'' 1'15'' ▲13.8%
Verilog合成 ファイルサイズ[KB] 5,922 5,253 ▲11.3%
合成時間 0'59'' 0'52'' ▲11.9%
Vivado LUT数 5,685 5,490 ▲3.4%
Vivado FF数 1,789 1,894 5.9%

結果としてはまず1度しか呼ばれない関数のため、物量削減どころかFSMオーバヘッドが増加しました。一方、ボディが厚かったため、bscコンパイル時間とverilog量及びそれに比例するvivado合成時間が削減されました。


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

GameFSMの改良 (14)

posted by sakurai on October 16, 2025 #1036

call順位が高い関数のFSM化が完了したので、次に1度しか呼ばれていない関数もFSM化してみます。これは物量にはほぼ影響はないか若干増加するものの、関数のシーケンスを巨大なシーケンスループからはずすことで、コンパイル時の競合条件計算量の減少を目的とするものです。まず、6個あるdrawTitle関数の1つをFSM化します。

まず、オリジナルのコードは、

   function Stmt drawTitle1(); // PLAY SPACE INVADERS
      return (seq
         for (str_idx <= 0; str_idx < 19; str_idx <=  str_idx + 1) seq
            copyGlyph(s1[str_idx]);
            waitTicks(`TICK_WAIT8);
            if (fbutton) break;
         endseq // for
      endseq);
   endfunction

コードの修正法は前回と同様なので省略します。

以下に結果の表を示します。思ったほどはコンパイル時間は減りませんでした。またverilog量は若干減ったものの、物量は若干増加しています。これは新たにFSMの起動、終了待ちが増えるためでしょう。全体としてあまり意味が無さそうなのでこの最適化は撤回します。

タイトル文字表示1(drawTitle1())の最適化前後 比較
BSV合成 コンパイル時間 1'26'' 1'25'' ▲1.2%
Verilog合成 ファイルサイズ[KB] 5,922 5,790 ▲2.2%
合成時間 0'59'' 0'53'' ▲10.2%
Vivado LUT数 5,583 5,638 1.0%
Vivado FF数 1,784 1,794 0.6%


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

GameFSMの改良 (13)

posted by sakurai on October 15, 2025 #1035

他にもcall順位の上位では出てこなかった関数にdrawLives()がありました。これは自機の残り数を表示するもので、staticには6回呼ばれているため、これもFSM化して最適化します。

まず、オリジナルのコードは、

    // 残機表示
   function Stmt drawLives();
      return (seq
         // 残機数字の表示
         copyArea(gun_no*8, 161, 23, 241, 8, 8);
         if (gun_no == 1) seq
            eraseArea(42, 241, 16, 8);
         endseq else if (gun_no > 1) seq
            eraseArea(16*gun_no + 26, 241, 16, 8);
            copyArea(0, 16, 16*gun_no+10, 241, 16, 8);
         endseq // if
      endseq);
   endfunction

ここでgnu_noが自機の数を示します。これを例によってFSM化してメインでは起動し、終了待ちをするだけに変更します。以下が変更後のコードです。

   // 残機表示
   function Stmt drawLives_org();
      return (seq
         // 残機数字の表示
         copyArea(gun_no*8, 161, 23, 241, 8, 8);
         if (gun_no == 1) seq
            eraseArea(42, 241, 16, 8);
         endseq else if (gun_no > 1) seq
            eraseArea(16*gun_no + 26, 241, 16, 8);
            copyArea(0, 16, 16*gun_no+10, 241, 16, 8);
         endseq // if
      endseq);
   endfunction

   // 単一インスタンスのFSMを生成(モジュールスコープ)
   FSM drawLives_fsm <- mkFSM(drawLives_org());

   // “起動ラッパ”を元の名前に
   function Stmt drawLives();
      return (seq
         `RUN_FSM(drawLives_fsm)
      endseq);
   endfunction

本体の関数名に_orgを付けるだけでロジックは変えません。元の関数名は起動マクロで本体を起動し終了待ちする関数に付け替えます。

以前作成したマクロは以下のとおりです。呼ぶ側で必ずseq/endseqで挟む必要があります。

`define RUN_FSM(F) action F.start(); endaction await(F.done);

以下に結果の表を示します。bsvソース量はほとんど変わらないので表示していません。bscの見る場合の数が減るためコンパイル時間がかなり減少し、物量も若干減少しています。

自機表示(drawLives())の最適化前後 比較
BSV合成 コンパイル時間 1'54'' 1'25'' ▲25.4%
Verilog合成 ファイルサイズ[KB] 7,509 5,924 ▲21.1%
合成時間 1'00'' 0'51'' ▲15%
Vivado LUT数 5,700 5,551 ▲2.6%
Vivado FF数 1,794 1,790 ▲0.2%


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

9月の検索結果

posted by sakurai on October 13, 2025 #1034

弊社コンテンツの9月の検索結果です。

表1034.1 上昇率上位のページ(前月との比較)
タイトル クリック数
1st Editionと2nd Editionとの相違点 (Part 10) +62
機能安全用語集 +23
ISO 26262での独立の考え方 +21

表1034.2 パフォーマンス上位のページ
タイトル クリック数
1st Editionと2nd Editionとの相違点 (Part 10) 83
機能安全用語集 68
ISO 26262での独立の考え方 51

表1034.3 上昇率上位のクエリ
クエリ クリック数
FTTI +29
PMHF +12
従属故障 +9

表1034.4 パフォーマンス上位のクエリ
クエリ クリック数
FTTI 38
PMHF 19
従属故障 10


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

posted by sakurai on October 10, 2025 #1033

10/1に最終的に査読に対応した、所属と氏名有りの論文をシステムに登録しました。あとは審査結果を待つのみです。例年だと10月末頃に採択発表がある予定です。

表1033.1 RAMS 2026へのマイルストーン
期限 マイルストーン 状態
2025/4/30 AJEにアブストラクトを修正依頼 投稿済
2025/4/30 アブストラクト(氏名、所属無し版)投稿締め切り(システム入力) 投稿済
2025/6/2
2025/5/27
アブストラクト採択結果 採択済
2025/7/31
2025/7/26
初稿論文、プレゼン投稿締め切り(氏名、所属無し版) 投稿済
2025/9/1
2025/8/24
査読コメント 受領済
2025/9/30
2025/10/1
最終論文、プレゼン投稿締め切り(氏名、所属有り版)
IEEEコピーライトフォーム提出
投稿済
2025/10/10 RAMSへの登録及び会場ホテルの予約


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

GameFSMの改良 (12)

posted by sakurai on October 1, 2025 #1032

次にかなり大きな修正となりますが、OneStageの除去をトライします。もともと外部投稿記事にあるようにGameFSMとSoundFSMの両FSMのタイミング調停を図る目的で1stage FIFOを設けましたが、実はBSVの特徴として、自動ハンドシェーク、すなわちBack pressureを自動的にかける機能があります。

前記事のあたりで検討していたもので、この時はトップでconnectableで接続すれば配線だけになると誤解していました。実際にはconnectableは配線だけではなく、トップでANDを生成します。具体的には図1032.1に示すように、上流モジュールの送信RDYと下流モジュールの受信RDYのANDを最上位でとり、これが通信RDYを意味するわけですが、それを上流モジュールへ送信ENとして配り、かつ下流モジュールへも受信ENとして配るものです。

図%%.1
図1032.1 connectableハンドシェイクロジック

これはcallerであるトップが2つのcalleeを呼ぶ際に調停ロジックとしてANDゲートを配置するためです。

しかしながら、これだとVivadoのBlock DesignerによりANDゲートを起こさなければいけないためあまりきれいではないので、このANDゲートをwrapperで吸収してもらうようにChatGPTに依頼します。


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