クロックセキュリティシステム(CSS)
外部水晶が沈黙したことを検知し、プロセッサが止まる前に予備のクロックへ切り替えるハードウェア。
水晶発振子は精度が高いが、不死身ではない。振動ではんだ接合にひびが入り、落下で水晶が割れ、湿気で発振が止まることもある。対策がなければチップ全体が止まってしまい、ウォッチドッグも同じクロック源を使っていれば道連れになる。
STM32 ではこの保護機構を CSS と呼ぶ。有効にすると回路が外部クロック(HSE)を監視し、消えた場合は内蔵のRC発振器に切り替えてマスク不可能割り込みを発生させる。ファームウェアはその機会に安全状態へ移行し、故障を記録してクロックツリーを再設定できる。Microchip は同じ仕組みを Fail-Safe Clock Monitor と呼ぶ。初期状態では無効なので、救助を頼むには自分で申し込む必要がある。