SEGGER RTT
詳細情報
- 作者
- SEGGER Microcontroller
- 種類
- デバッグ出力プロトコル
デバッグ出力をRAM上のリングバッファに書き込み、プログラムを動かしたままデバッガが読み取る方式。
RTT(Real Time Transfer)は、J-Linkを作るドイツのSEGGER社が考案した。発想は拍子抜けするほど単純である。ファームウェアは文字列 "SEGGER RTT" を目印にした制御ブロックと、ホスト向けおよびターゲット向けのリングバッファをRAMに置く。プローブはこのブロックを探し出し、デバッグポートのバックグラウンドメモリアクセスでバッファを読むので、コアを止める必要がない。
ログ1行のコストは数マイクロ秒で、セミホスティングの数ミリ秒とは桁が違う。SWOの無いCortex-M0系でも使える。ターゲット側のコードは寛容なライセンスで公開されているため、OpenOCDやprobe-rsも同じプロトコルを実装しており、SEGGER製プローブの外へも広まっている。