CoreSight
詳細情報
- 開発元
- ARM
- 公開
- 2004年
- 種類
- デバッグ/トレースアーキテクチャ
現代のARMチップのほぼすべてに内蔵されている、標準化されたデバッグ/トレースブロック群である。
CoreSight以前は、半導体メーカーごとに独自のデバッグ回路を作り、デバッガはその流儀をすべて覚える必要があった。2004年、ARMは部品そのものを標準化した。外部とJTAGまたはSWDで通信し、システムのメモリバスへ通じる単数または複数のアクセスポートを公開するDAP(Debug Access Port)と、どのコンポーネントがどこにあるかを列挙するROMテーブルである。
残りはすべてこれにぶら下がる。命令トレースのETM、printf風出力のITMとSWO、ウォッチポイントとカウンタのDWT、複数コアを同時に停止させるCTIなどだ。Cortex-M0なら数個、スマートフォンのSoCなら数百個にもなる。1つのOpenOCDがまったく異なるメーカーのチップと話せるのは、ROMテーブルを読んで残りを自力で割り出すからである。