地球を周回する宇宙衛星:3Dレンダリング

画像出典:Boris Rabtsevich/Shutterstock.com
著者:Adam Taylor (Mouser Electronicsへ寄稿)
2021年8月10日公開
電子システムは現代生活において至る所に存在し、ほとんどの方が携帯電話を少なくとも1台は、行く先々で常に携行されています。電子システムは、私たちが安全にコミュニケーションを取り、移動し、世界と関わることを可能にするだけでなく、宇宙や宇宙空間の探査をも可能にしてくれます。
もちろん、人命が危険にさらされる可能性や環境被害が生じる恐れのある用途向けに電子システムを設計する場合、故障や予期せぬ事態が発生した際に安全に動作を停止するよう、これらのシステムは設計される必要があります。
高信頼性およびミッションクリティカルなシステム向けの電子システムを設計するには、開発者は要求される機能性、故障条件、ならびに機器が動作しなければならない環境を考慮する必要があります。設計者が電子システムをこれらの厳しい用途に適合させることを確実にするため、いくつかの国際的に認められた規格が、必要な認証基準を達成するための指針をエンジニアに提供しています。 これらの規格の中で最も一般的なものは、IEC61508(産業用アプリケーション)、ISO26262(自動車)、およびDO178 & DO254(航空機搭載システム)です。各規格のアプローチは若干異なりますが、いずれも複数の認証レベルを有しており、IEC61508の図1に概説されているように、機器の信頼性を示しています。

図1:IEC61508で定義される連続要求システムにおける安全度水準(SIL)(出典:筆者)
これらの基準は、設計および設計解析、開発プロセス、さらには使用されるツールチェーンの適合性までも考慮されています。
高信頼性およびミッションクリティカルなシステムの多くにおいて、動作環境は機器の設計に重要な役割を果たします。極端な温度は高温時における電力損失の増加を招き、厳しい熱設計要件をさらに複雑化する可能性があります。一方、低温環境では起動時の問題や通電時の電流増加が生じる恐れがあります。 当然ながら、回路の伝搬遅延も温度によって変化するため、高信頼性システムでは両極端の温度条件およびそれより若干高い温度域においてもタイミングクローズを確保し、十分な余裕を持たせる必要があります。電子機器は温度の極端な変化に耐え動作できることに加え、機器内のモーターやポンプによる正弦波振動、あるいは乱気流や路面との相互作用によるランダム振動といった動的環境にも耐え得る設計が求められます。 さらに、短時間の急激な加速度変化(一般に衝撃と呼ばれる現象)にも耐えられる機器の開発が必要です。機器の落下時に衝撃が発生する可能性があるため、設計は振動と衝撃の両方に耐えうるものでなければなりません。温度・振動・衝撃への耐性を設計するには、電子設計者と機械/熱設計者が連携した学際的なアプローチが求められます。 この連携により、高温動作時の部品ディレーティングを達成するための放熱最適化が実現され、振動・衝撃環境に対応する十分な補強と解析が施された機械設計が確保されます。しかしながら、温度・振動・衝撃によって生じる可能性のある障害は物理的な故障だけではありません。例えば、デバイス内部のボンディングワイヤに不具合が生じるなど、一時的あるいは恒久的なデバイス故障を引き起こす場合もあります。
航空機などの一部のシステムでは、単一事象障害(SEU)という形態の地上放射線を含む放射線も考慮する必要があります。単一事象効果(SEE)の発生率は、運用高度や緯度によって大きく変動します。SEEは信号ラインに過渡現象を引き起こしたり、メモリやレジスタに保存されたデータの状態を反転させたりする可能性があります。 最終的な応用先が宇宙空間である場合、SEEは過渡現象やビット反転、さらにはデバイスへの破壊的影響を含め、より深刻な問題となる可能性があります。SEEに加え、電離放射線も時間の経過とともにデバイスの動作特性を変化させ、消費電力の増加や伝搬遅延の変化などを引き起こします。放射線環境をモデル化することで、設計者は動作環境におけるSEE発生率や電離線量を理解することが可能となります。
ミッションクリティカルかつ高信頼性システムの設計における重要な要素の一つが、防御的設計です。このため、電子システムは故障を回避するか、あるいは耐容するように設計されます。ハードウェア(HW)とソフトウェア(SW)の故障、および耐容性との相互関係は、図2に示されています。

図2:ハードウェアおよびソフトウェアの耐障害性と障害回避(出典:著者)
回避策としては、設計者が環境に適した高品質な部品(例:産業用や自動車用)を選択することが挙げられます。また、部品応力解析、最悪ケース解析、故障モード影響解析、重要度解析などの分析手法を実施することで、設計上の懸念箇所を特定し、設計プロセスの早い段階で対応することが可能です。
耐障害性とは、動作中にエラーや障害が発生した場合でも設計が継続して動作することを保証するものです。システムは障害を検知し、故障した要素を特定し、障害の伝播を制限するために隔離し、可能であれば障害から回復するためにシステムを再構成する必要があります。設計内に耐障害性を実装するには、相当な分析と自己診断機能が必要となります。 耐性の目的は、単一障害点が設計の冗長要素に影響を与えることを防止し、それによって一つの障害がシステムの継続的な機能維持や安全な停止を妨げないようにすることにあります。
公差を確保するために使用できる設計手法には、以下のものがあります:
- 冗長性とハードウェア耐障害性の導入
- メモリ内の破損を保護および検出するための誤り検出・訂正符号の使用
- 電源投入時、動作中、およびオンデマンドで実行されるビルトイン自己診断(BIST)により、より詳細なテストが可能
- ハミング距離/アームおよびファイア構造/タイムアウト、ならびに誤り訂正符号を活用した堅牢な通信リンク
- 三重モジュラー冗長性と結果に対する投票により、最も可能性の高い答えを導出
- 一時的な誤差を克服するための操作の繰り返し
- 冗長クロックおよびクロック検出・切り替え方式
- 故障した回路において、電力消費を低減するための電力管理および監視システム
もちろん、ミッションクリティカルなアプリケーションや高信頼性アプリケーション向けの開発には、設計や解析に相当な追加作業が必要となり、開発コストや開発期間の増加につながります。
設計手法は、故障の回避と許容に重点を置いています。部品レベルでは、故障モード・影響・重要度分析(FMECA)を用いて、部品の故障モード(開回路、短絡、高インピーダンスなど)を特定するとともに、システム内での故障検出方法や局所的影響・最終的影響を評価することが一般的です。 このFMECAは、部品応力解析と組み合わせることで、故障率(FIT:Failures In Time)の算出も可能となります。FITは1x10-9時間(10億分の1時間)を1単位とします。システムのFIT率を把握することで、平均故障間隔(MTBF)の算出や、全体の成功確率(図3)の推定が可能となります。 もちろん、FIT レートを把握することで、安全度水準 (SIL)4 や設計保証レベル (DAL)-A といった要求される安全レベルにシステムが適合していることを確認することも可能となります。

図3:平均故障間隔(MTBF)8760時間の1年間稼働における成功確率(出典:筆者)
まとめ
ミッションクリティカルな用途や高信頼性アプリケーション向けの設計は、エンジニアのキャリアにおいて最も挑戦的でありながらやりがいのある開発の一つと言えるでしょう。温度、振動、衝撃、放射線といった環境下での安全かつ信頼性の高い動作を保証する課題は、長時間の作業や多くの分析を必要としますが、完成したアプリケーションは文字通りこの世のものとは思えないほど素晴らしいものとなる可能性があります。
著者について
Adam Taylorは、組み込みシステムの教授、エンジニアリングリーダー、そしてFPGA/システムオンチップおよび電子設計の世界的に認められた専門家です。