ウォッチドッグタイマー:必要な悪(または必須の善)?

2025-01-31

この記事では、組み込みシステムにおけるウォッチドッグタイマーの重要な役割を探ります。不適切に実装されたウォッチドッグタイマーが原因でクレメンタイン宇宙船のミッションが失敗したこと、そして台所のレンジフードファンを再起動する必要があったことなどを例に挙げ、ソフトウェア障害の防止における信頼性の高いウォッチドッグタイマーの重要性を強調しています。この記事では、内部と外部のオプションを含む、さまざまなウォッチドッグタイマーの設計について詳しく説明し、高信頼性のウォッチドッグタイマーを構築するための戦略を示しています。これには、ウィンドウ付きウォッチドッグ、CPUに依存しない外部ウォッチドッグ、マルチタスクシステム内のすべてのタスクの状態の監視などが含まれます。著者は、一見単純なシステムであっても、信頼性を高めるためにデータ構造の定期的なリセットなどの手法を提唱し、ウォッチドッグタイマーの導入を推奨しています。

続きを読む

スイッチバウンス:想像以上に複雑

2025-01-08

この記事は、機械式スイッチのバウンスの複雑さについて掘り下げています。著者は18種類の異なるスイッチについて実験を行い、バウンス時間がナノ秒から数百ミリ秒に及ぶことを明らかにしました。これはスイッチの種類と操作方法に大きく影響されます。この結果は、単純なソフトウェアデバウンス手法ではあらゆる状況に対応できないことを示しており、状況に応じたハードウェアまたはソフトウェアソリューションが必要であることを強調しています。分析によると、物理的な接触バウンスに加えて、TTL論理レベルにおけるアナログ信号の遷移も論理バウンスに寄与しています。この結果は、スイッチの動作に関する仮定に疑問を投げかけ、より堅牢なデバウンス戦略を求めています。

続きを読む
ハードウェア スイッチデバウンス