旧タイトル『DS-5 活用テクニック~実行中のターゲットに接続』のアップデート版です。
インテル® SoC FPGA 向けのソフトウェア統合開発環境として標準採用される Arm 純正ツールが Arm® DS-5 for Intel® SoC FPGA Edition (DS-5) から Arm® Development Studio for Intel® SoC FPGA Edition (Arm® DS) へと変更になりました。Arm® DS は DS-5 の後継製品となっており使い勝手は大きくは変わりません。このシリーズ記事の内容も Arm® DS / DS-5 両方に適用できるものが大半ですが、違いがある箇所はその旨明記する形でアップデートしています。
***
この記事では、インテル® SoC FPGA 向けのソフトウェア統合開発環境として利用可能な Arm® DS / DS-5 の使い方に関する補足情報を記載します。
今回は、実行中のターゲット環境に後から Arm® DS / DS-5 を接続(アタッチ)する方法を紹介します。この方法では Arm® DS / DS-5 からデバッグ対象ソフトウェアをダウンロードする手順を踏まないので、SD カードや Flash ROM からの自律ブートのターゲット環境で問題が生じた場合に、不具合発生時のソフトウェアの状態を確認する際に役立ちます。
なお、この記事ではデバッガの接続設定の方法のみを記載しています。接続後のデバッグ作業、デバッガの使い方については、Arm® DS / DS-5 のマニュアルを参照してください。
Arm® Development Studio ドキュメント・ページ(Arm® Developer サイト)
DS-5™ ドキュメント・ページ(Arm® Developer サイト)
デバッグ・コンフィギュレーション
Arm® DS / DS-5 をアタッチ(接続)のみで使用する場合には、デバッグ・コンフィギュレーション(デバッグ構成)のデバッガ・タブの実行制御オプションで『接続のみ』を選択します。基本はこの選択だけでアタッチが可能となります。その他、実行中のプログラムに紐付くソース・コードをデバッガー上に表示させたい場合は、追加の設定が必要です。
以下、図1~3 に実際のデバッグ・コンフィギュレーションの設定例を示します。(Cyclone® V SoC の Preloader 向けの設定を例にしています。)
接続タブ
接続設定は、デバッガーからソフトウェアをダウンロード実行する通常のデバッグ手順と同じです。Linux® Application Debug は JTAG ではなく Ethernet(RSE)接続のため使用不可です。

ファイル・タブ
接続のみの場合はダウンロード対象は指定しません。バイナリー化されたソフトなど、デバッグ対象がデバッグ・シンボル情報を持たない場合に必要です。ソース・コードとの紐付け、関数や変数などのシンボル情報を参照しながらデバッグしたい場合に、バイナリー化前のアプリケーションを指定します(任意)。

デバッガー・タブ
『接続のみ』を選択します。
stop コマンドを含むスクリプトを登録(任意)ファイルタブでシンボルのロードを指定した場合、事前にプログラムを実行停止させないとシンボルのロードに失敗します。ソース・コードの所在を指定(任意)実行命令とソースコードの紐付けに必要です。

stop コマンドを含むスクリプト記述例
デバッグ開始・接続完了イメージ
あとは、設定例のデバッグ・コンフィギュレーションでデバッグ開始するのみです。
接続完了時の画面を 図4 に示します。実行中のプログラムに紐付くソース・コードが表示され、ソース・コード・レベルのシンボリック・デバッグが行えます。
コールスタックや変数もソース・コードに紐付いたシンボル情報で表示されます。

おすすめ記事/資料はこちら
Arm DS 活用に関する記事一覧
SoC FPGA 関連の記事や資料
インテル® FPGA の SoC FPGA
インテル® FPGA の開発フロー/FPGA トップページ