CMSIS-DAP
詳細情報
- 開発元
- Arm
- 種類
- デバッグプローブのプロトコルおよびファームウェア
- ライセンス
- Apache 2.0
USBデバッグプローブがホストからのコマンドを受け取り、SWDやJTAGの通信に変換する方法を定めたオープン仕様である。
J-LinkやST-Linkなどの商用プローブは各社独自のプロトコルを話すため、デバッグツールはベンダーごとにドライバを必要とする。ArmのCMSISファミリーに属するCMSIS-DAPは、レジスタの読み出し、メモリの書き込み、ピンの操作といった小さなコマンド群を定義し、USB対応のマイコンならどれでも実装できるようにした。
バージョン1はUSB HIDで動作し、ドライバ不要だがスループットは1ミリ秒に1パケットが上限だった。バージョン2ではバルク転送に移行し、かなり高速になった。その結果、デバッグ対象のチップより安いプローブが作れるようになった。OpenOCD、pyOCD、probe-rsはいずれも対応しており、Raspberry Pi Debug Probeは実質的にRP2040上でCMSIS-DAPファームウェアを動かしているだけである。