読み方 : アイス
ICE【In-Circuit Emulator】インサーキットエミュレータ
概要

開発中の基板のCPUソケットにICEを装着すると、実チップの代わりにCPUとして動作しながら、通常の実装では不可能な内部状態の監視と制御が可能になる。ブレークポイント、ステップ実行、レジスタやRAMのリアルタイム参照・変更、実行経路を記録するトレース機能などを備え、基本的な構成はソフトウェア開発用のデバッガに類似している。
ICEが組み込み開発で重要とされる理由は、対象環境の制約にある。オペレーティングシステム(OS)を搭載しない組み込み機器では、パソコン上のアプリケーション開発のようにデバッガを動かす実行環境が存在せず、外部から割り込む手段がなければ動作の検証すら困難になる。ICEはCPUそのものを置き換えることでこの制約を回避し、ハードウェアと密結合したファームウェアを実機環境のまま解析できる。
初期のICEはCPUと物理的に置き換える大型の専用装置が主流であったが、プロセッサの高クロック化・微細化が進むにつれ、外付け装置による完全なエミュレーションは技術的・コスト的に困難となった。現在では、CPU内部にデバッグ支援回路をあらかじめ組み込み、「JTAG」や「SWD」(Serial Wire Debug)などの通信規格を介して外部から制御する「オンチップデバッグ」方式が標準的である。小型・安価なJTAGデバッガやデバッグプローブがその代表であり、組み込み開発の現場ではこれらを含めた同種の装置の総称として「ICE」の呼称が引き続き使われることが多い。
(2026.6.14更新)