高性能の電圧監視ICにより、産業分野向け機能安全規格への準拠度を高める【Part 5】電源シーケンサICによるシステマティック故障の防止

Figure 1

   

質問

機能安全(FS:Functional Safety)に対応するマイクロコントローラ(MCU)のシーケンス制御機能を使用するのではなく、スタンドアロンの電源シーケンサICを採用してシステムを設計したとします。その場合、どのようなメリットが得られるのでしょうか?

回答

MCU上で実行されるソフトウェアは非常に複雑です。そのため、不具合が発生しやすいと言えます。スタンドアロン(外付け)の電源シーケンサICを使用すれば、パワーアップ/パワーダウン(電源の投入/遮断)のタイミングが、MCUのソフトウェアに依存することなくハードウェア強制型(hardware-enforced)で制御されます。それにより、機能安全に対応しやすくなります。具体的には、セーフティ・クリティカルなソフトウェアが簡素化され、システマティックな設計ミスの数が減少します。その結果、機能安全について定めた規格(IEC 61508など)に、容易かつ迅速に準拠することが可能になります。

RAQ Issue 246: Improving Industrial Functional Safety Compliance with High Performance Supervisory Circuits—Part 5: Sequencers Eliminate Systematic Failures

はじめに

本稿は、連載記事「高性能の電圧監視ICにより、産業分野向け機能安全規格への準拠度を高める」の5回目(Part 5)です。本連載では、主にランダム・ハードウェア故障に関連する定量的な指標について解説してきました。具体的には、安全側故障割合(SFF:Safe Failure Fraction)や1時間当たりの危険側故障確率の平均値(PFH)などを取り上げました。今回は、それらと同等に重要な課題であるシステマティック故障の排除に焦点を絞ることにします。ここで言うシステマティック故障とは、設計プロセス、手順の実行、ドキュメントの作成などに問題があって生じる根本的にデタミニスティックな故障のことです。システマティック故障の原因は、システムの構想段階から試運転の段階まで、安全にかかわるライフサイクル全体にわたって潜んでいる可能性があります。前回まで注目していたランダム故障については、FIT(Failure in Time)などの指標によって定量化することができます。それに対し、システマティック故障は定性的なものであり、原因となる欠陥を、統計的な手法によって単純に予測することはできません。このような故障を制御するには、その種の故障を回避することに焦点を絞った厳密かつ定性的なアプローチが必要です1。そのアプローチにおいては、綿密な開発、厳格な検証、包括的な妥当性確認を実施しなければなりません。

パワーアップ/パワーダウンは、多くの電気・電子・プログラマブル電子(E/E/PE:Electrical/Electronic/Programmable Electronic)システムにおいて非常に重要な過渡的フェーズだと言えます。特に、安全関連機能向けに設計されたE/E/PEシステムでは、パワーアップ/パワーダウンのシーケンスが極めて重要なものになります。このフェーズでは、電源電圧のレールとそれに依存するロジック回路のパワーアップ/パワーダウンのタイミング、順序、同期を完璧に制御する必要があります。それにより、システムが未知の状態や危険な状態に陥ることを防がなければなりません2。ハードウェアを初期化するためのルーチンは、メーカーが規定する仕様やコンポーネントの依存関係に基づいて適切に定義する必要があります。仮に、そのようなルーチンを確立できていなかったとしましょう。そのことは、システマティック故障につながる設計ミスに相当します。本稿で取り上げる電源シーケンサICとは、電源のシーケンス制御の機能をハードウェアで実現した専用ICのことです。電源シーケンサICは、上記のような不安定な過渡的状態を管理できるよう精密に設計されています。そのため、電源の投入/遮断時に生じることが多いシステマティック故障に対する堅牢性の高いハードウェア強制型の障壁になります。このアーキテクチャを戦略的に選択すると、機能安全の規格に準拠するための手法に変化が生じます。つまり、故障の検出や診断に焦点を絞った手法から、高い安全度水準(SIL:Safety Integrity Level)を達成するための重要な要件である故障の回避を中心とした手法への転換を図ることになります。

シーケンス制御に関連するシステマティック故障

上述したように、シーケンス制御が不適切である場合、システマティック故障が発生する可能性があります。しかも、システマティック故障は、ハードウェアの壊滅的な損傷やシステムの状態の破綻につながることが少なくありません。したがって、機能安全を実現するためにはシステマティック故障を回避する必要があります。多くの場合、産業分野では高性能のコントローラIC(マイクロプロセッサ、MCU、FPGA、ASICなど)が使用されます。通常、それらのICは、複数の電源電圧を使用する複雑なアーキテクチャを採用しています。各ICのデータシートには、コア部のロジック回路で使用する電源電圧(VCORE)と入出力インターフェースで使用する電源電圧(VIO)が個別に定義されているはずです。

ここでは、パワーアップのシーケンスが適切でない場合に発生する典型的なシステマティック故障の例を紹介します。図1は、FPGAなどのコントローラICでも使われる一般的なCMOS構造を表したものです3。ここで、VCOREよりもVIOが先に上昇したとします。そうすると、I/Oピンを内部の電源レールに接続する寄生ダイオードが順方向にバイアスされた状態になります。この意図せぬバイアスにより、CMOS構造に特有の寄生素子であるシリコン制御整流器(SCR:Silicon-controlled Rectifier)がトリガされます。その結果、電源レールの間の短絡を引き起こす低インピーダンスの経路が形成されます。CMOSで生じるこの現象はラッチアップと呼ばれます。ラッチアップは、設計上の見落としによって引き起こされるデタミニスティックな故障(システマティック故障)です。ラッチアップが生じると過剰な電流が流れるため、直ちに措置を講じなければなりません。高性能のコントローラICに過剰な電流が流れ続けると、チップの過熱や損傷といった問題が生じるおそれがあります。場合によっては、チップの破壊を招いてしまうかもしれません。通常、この状態を解消するには、電源を一度完全に遮断し、再度投入する(再起動する)必要があります。上記のシステマティック故障を回避することを可能にするのが電源シーケンサICです。高性能のコントローラICのメーカーは、電源レールの投入/遮断の順序とタイミングについてルールを定めています。電源シーケンサICは、それらが厳格に守られるよう制御と監視を実行します。それにより、逆バイアスやラッチアップが防止されるので、システマティック故障を回避できます4

図1. CMOSの構造(a)。(b)は、その構造をSCRとして表現したものです。
図1. CMOSの構造(a)。(b)は、その構造をSCRとして表現したものです。

不適切なシーケンス制御によって生じるのは、物理的な損傷だけではありません。制御用のロジック回路内でシステマティックな機能障害が生じることもあり得ます。MCUやFPGAでは、各電源が安定したら、内部のペリフェラル、クロック回路、メモリのセルを正確な順序で初期化しなければなりません。電源電圧が制御下にない状態で遷移すると、レジスタやSRAMなどのストレージ・セルにおいて、データのシステマティックな損傷が生じる可能性があります。初期化を実行する際の電源が不安定で、コンポーネントのデータシートに規定されているセットアップ時間やホールド時間の要件が満たされなかったとします。その場合、順序回路が予測不能で非デタミニスティックな準安定状態に陥ってしまうかもしれません。準安定状態にあるシステムでは、ロジック出力が既知の値になることが保証されなくなります。そうすると、安全な状態を維持するための安全機能の能力が損なわれます。このようなリスクを軽減するために、電源シーケンサICはシステムに対して依存性を正確に管理する機能を提供します。図2に示すのは、シーケンサIC「MAX16165/MAX16166」と監視用I C「MAX16193」を使用する例です5。この回路において、シーケンサICは電圧の監視と遅延の管理を継続的に実行します。そして、外部のイネーブル信号がアサートされ、下流のセーフティ・クリティカルなロジック・コンポーネントが解放される前に、パワーグッドのフラグが確立されて安定した状態になることを保証します。それにより、既知で予測が可能な初期化用のルーチンが実現されます。シーケンサICは、信頼性の高い監視回路として機能します。それにより、電源が有効で安定した状態に達するまで、セーフティ・クリティカルなロジック(アクチュエータなど)が無効化されたまま維持されることが保証されます。結果として、電源を投入した際に制御不能な出力作動や危険な出力作動が生じるのを防ぐことが可能になります。

図2. AMD製のFPGAの要件を満たすシーケンス制御用のソリューション5。MAX16165/MAX16166とMAX16193を使用しています。
図2. AMD製のFPGAの要件を満たすシーケンス制御用のソリューション5。MAX16165/MAX16166とMAX16193を使用しています。

ソフトウェアからの分離、不干渉性の確保

上述したとおり、電源シーケンサICは、電源のシーケンス制御の機能をハードウェアで実現した専用ICです。この種のICは、IEC 61508への準拠を目指す場合、直接的に役に立ちます。IEC61508に準拠するというのは、具体的に言えば同規格の規範的な附属書B(IEC 61508-2 Annex B)に準拠するということを意味します。この附属書には、システマティック故障を回避するためにハードウェアの設計/開発の段階で必要になる手法と対策が詳細に記されています。複雑なハードウェア(MCUやFPGAなど)には、(同付属書の7.4.2項に詳述されている)厳格な基準が適用されます。

ここで、機能安全に対応したメインのMCU上のソフトウェア・ルーチンにより、電源のシーケンス制御と監視を行うケースを考えます(図3)6。その場合、検証と妥当性確認(V&V:Verification and Validation)の作業により、不干渉性(noninterference)を厳密に証明しなければなりません2、7。ここで、シーケンス制御のルーチン(初期化、タイミング・ループ、故障検出の処理を含む)は、MCU上で実行されるその他すべてのコード(安全に関連しないアプリケーション用のロジックなど)から分離する必要があります。その際に問題になるのは、CPU時間、割り込み、メモリの帯域幅、ペリフェラルといった共有リソースを介して生じる可能性があるシステマティックな干渉経路をどのようにして排除するのかということです。特に、複雑なマルチコアのアーキテクチャを対象とする場合、ソフトウェアにおけるタイミングの独立性とリソースの効果的なパーティショニングが実現されていることを証明するにはどうすればよいのでしょうか。そのためには、高度なV&Vの手法と詳細なドキュメントが必要です。つまり、不干渉性の要件を満たすためにシステム開発者の作業負荷が大幅に増加することになります。

図3. MCUによってシーケンス制御の機能を実行する場合の構成(リニア・レギュレータ「ADP7156」を使用)6
図3. MCUによってシーケンス制御の機能を実行する場合の構成(リニア・レギュレータ「ADP7156」を使用)6

それに対し、電源シーケンサIC(外付け)を使用すれば、物理的な多様性が実現されることから最大限の独立性を保証できます。図4の例において、シーケンサ/監視IC「LTC2937」は、独自の監視回路、タイミング用のロジック回路、制御用の出力を活用し、プログラマブルなロジック・コアとは独立して自律的に動作します6。このようにしてアーキテクチャ上の分離を図ることにより、重要な電源制御機能がMCUのシステマティック故障のドメインから物理的に切り離されます。その結果、不干渉性に関する要件が本質的に満たされます。シーケンサICは、電源レールを正確なタイミングで制御し、初期化用のロジックを独立して処理します。そして、シンプルなステータス情報(FAULTB、RSTBなど)だけをMCUに個別に送出します。シーケンサICを使用するのではなく、MCUでシーケンス制御を行う場合には、プログラマブルで複雑なドメインに起因してシステマティック故障が発生します。具体的には、コーディング・エラー、メモリ・ポインタの破損、OSによるスケジューリングの競合などがシステマティック故障の原因になります。それに対し、シーケンサICを使用して分離を図れば、プログラマブルなドメインに起因するシステマティック故障が、デタミニスティックでタイミング・クリティカルな電源の遷移の管理に干渉しないことが保証されます。

図4. シーケンスの要件に対応するために高性能のシーケンサ/監視IC(LTC2937)を使用する場合の構成6
図4. シーケンスの要件に対応するために高性能のシーケンサ/監視IC(LTC2937)を使用する場合の構成6

ソフトウェアの要件の緩和、SCの強化

機能安全の規格、特にIEC 61508-3(ソフトウェアに関する要件)は、セーフティ・クリティカルなソフトウェアに対し、V&V/テスト/ドキュメント化に関する最も広範な要件を課します。ここで、MCUで実行されるコードにシーケンス制御の機能を実装するケースを考えます。その場合、関連するすべてのソフトウェア・コンポーネントにおいて、システマティック故障への対応能力(SC:Systematic Capability)が最高レベルに達していることを厳格に検証する必要があります。この作業は規格に準拠するために必要なものですが、その対象はシーケンス制御のアルゴリズムそのものだけにとどまるとは限りません。シーケンス制御がリアルタイム/確実/デタミニスティックに実行されることを保証するためには、プロセッサに対する割り込み用のソフトウェアやスケジューリング用のメカニズムが必要です。それらについても、厳格な検証を実施しなければならない可能性があります。

それに対し、電源シーケンサICを使用する方法であれば、MCUのセーフティ・クリティカルなソフトウェア・コアから、電源レールの依存関係を管理するための複雑なロジック、正確な遅延時間(例えば10ミリ秒のインターバル)、電源の障害に関する固有の処理を完全にオフロードできます。それにより、セーフティ・クリティカルなソフトウェアの規模が大幅に縮小されます。つまり、MCUの役割は、故障の状態に対応するグローバルなピンの信号の読み取りや、マスタ・リセット(MR)コマンドの発行など、よりシンプルで容易に検証可能なタスクに限られます。電源シーケンサICを使用するアーキテクチャを戦略的に選択することにより、徹底的なV&Vの対象となるコードの量と複雑さが大幅に低減されるということです。

アナログ・デバイセズは、シーケンスの制御やパワー・システムの管理の用途に向けた包括的な製品群を提供しています。それらの中には、FPGAなどの複雑なコントローラICのパワー・マネージメントに関する課題に対処することを目的として設計された製品が含まれています。例えば、電源レールの基本的なシーケンス制御のためのシンプルでカスケード接続が可能なシーケンサICなどが用意されています。その一方で、マルチチャンネルの高度かつプログラマブルなICも提供しています。そうした多岐にわたる製品を適切に活用することにより、電源のパワーアップ/パワーダウンを緻密に制御できます。各シーケンサICは、正しい順序と定められた時間内に各電源レールの電圧を確実に目標の値に到達させます。それにより、FPGAなどのコントローラICを使用する設計の完全性が実現されます。

まとめ

システマティック故障は、CMOSデバイスのラッチアップや予測不能な準安定状態を生じさせる可能性があります。パワーアップ/パワーダウンの複雑なシーケンスが不適切である場合、システマティック故障が発生してしまうかもしれません。このことは、機能安全における重要かつ定性的な課題です。この課題は、ランダム故障の指標だけに着目していても解消することはできません。シーケンス制御は、タイミング・クリティカルな複数の電源レールを対象とするパワー・マネージメント機能です。機能安全を実現するためには、アーキテクチャのレベルでこの機能の移行を図ることが重要です。つまり、機能安全に対応するメインのMCUの複雑なソフトウェア・ドメインから、電源のシーケンス制御の機能をハードウェアで実現した専用ICへの移行を進めるということです。そうすれば、システム設計者はシステマティック故障を回避するための堅牢性に優れる戦略を採用したことになります。シーケンサICを用いてソフトウェアからの分離を図れば、デタミニスティックかつハードウェア強制型のシーケンス制御が実行されることが保証されます。つまり、システマティックな設計ミスの影響が安全関連システムに現れる前に、その根本的な要因を効果的に排除できます。アーキテクチャに関するこの選択は、設計全体のSCを強化するための重要な要素になります。徹底的なタイミング解析を必要とする複雑なソフトウェアによる機能を、より単純なハードウェア・ソリューションに変換できるということです。

もう1つ重要なポイントを挙げます。電源シーケンサICを用いて物理的な分離を図れば、IEC 61508などの機能安全規格が定める非常に厳格な不干渉性の要件を本質的に満たすことができます。この要件を満たしていることを、マルチタスクに対応する複雑なソフトウェア環境で証明するのは容易ではありません。また、相応のコストも生じます。電源シーケンサICを採用すれば、複雑なタイミング、電源レールの依存関係に関するロジック、障害に関する固有の処理をMCUからオフロードできます。それにより、セーフティ・クリティカルなソフトウェアの規模が大幅に縮小します。つまり、徹底的なV&Vのプロセスが効率化され、規格に準拠するための作業負荷が全体的に軽減されます。アナログ・デバイセズが提供する電源のシーケンス制御向けソリューションは、このアーキテクチャの実装に必要な信頼性、精度、機能的な独立性を備えています。また、ハードウェア強制型の重要なメカニズムも提供します。それにより、機能安全に関する規格に準拠するための作業が大幅に簡素化されます。結果として、その種の規格に迅速に準拠することが可能になります。

参考資料

1IEC 61508 All Parts, Functional Safety of Electrical/Electronic/Programmable Electronic Safety-Related Systems(IEC 61508 電気・電子・プログラマブル電子安全関連系の機能安全 - 全パート)International Electrotechnical Commission、2010年

2Philipp Kilian、Armin Köhler、Patrick Van Bergen、Carsten Gebauer、Bernd Pfeufer、Oliver Koller「Principle Guidelines for Safe Power Supply Systems Development(安全な電源システムを開発するための基本的な指針)」IEEE Access、Vol. 9、2021年7月

3Catherine Redmond「ラッチアップを回避可能なCMOSアナログ・スイッチ」Analog Dialogue、Vol. 35、2001年10月

4Avoid Catastrophic Power Failures with Proper Voltage Sequencing and Monitoring(電源シーケンスの適切な制御/監視により、壊滅的な障害を回避する)」Maxim Integrated、2018年4月

5Supervisory and Sequencing Devices for AMD and Intel FPGAs(AMD/Intel製のFPGAを対象としたシーケンス制御/監視用のデバイス)」Analog Devices、2024年

6Design Considerations for Microcontroller-Based Fault Detection in Functional Safety Systems(機能安全システムにおけるマイクロコントローラ・ベースの故障検出について設計時に検討すべき事柄)」exida、2025年6月

7Top Misunderstandings About Functional Safety(機能安全に関する最大の誤解)」TÜV SÜD

著者について

Bryan Angelo Borres
Bryan Angelo Borresは、アナログ・デバイセズのシニア機能安全エンジニアです。TÜV認定の機能安全エンジニアとして、産業分野を対象とした機能安全に関する業務を担当。コンポーネントの設計者やシステムの設計者がIEC 61508などの産業分野向け機能安全規格に準拠したパワー製品を設計できるよう支援しています。7年以上にわたり、効率が高く堅牢性に優れるパワー・エレクトロニクス・システムの設計に携わってきました。IEC
Noel Tenorio
Noel
myAnalogに追加

myAnalog のリソース セクション、既存のプロジェクト、または新しいプロジェクトに記事を追加します。

新規プロジェクトを作成

この記事に関して

産業向けソリューション
製品カテゴリ
最新メディア 25
Title
Subtitle
さらに詳しく
myAnalogに追加

myAnalog のリソース セクション、既存のプロジェクト、または新しいプロジェクトに記事を追加します。

新規プロジェクトを作成