OpenOCD* でインテル® System Debugger を使用する

インテル® System Studio

この記事は、インテル® デベロッパー・ゾーンに掲載されている「Using Intel® System Debugger with OpenOCD*」(https://software.intel.com/en-us/articles/using-intel-system-debugger-with-openocd) の日本語参考訳です。


必要条件

Linux* セットアップ

デフォルトでは、非ルートユーザーは USB 接続された JTAG ポッドにアクセスできません。非ルートユーザーが OpenOCD* を実行できるようにするには、デバイスが接続されるたびに、適切な /dev/bus/usb エントリーに書き込みアクセス権限を与える必要があります。udev ルールを追加することで、この処理を自動化できます。rules ディレクトリーにテキストファイルを作成します。

$ sudo vim /etc/udev/rules.d/99-openocd.rules

ID は JTAG デバイスに依存します。Flyswatter2* と Olimex* ARM-USB-OCD-H の場合、次の項目をルールファイルに追加する必要があります。

SUBSYSTEM=="usb", ATTR{idVendor}=="0403",
ATTR{idProduct}=="6010", MODE="0666"

SUBSYSTEM=="usb", ATTR{idVendor}=="15ba",
ATTR{idProduct}=="002b", MODE="0666"

Windows* セットアップ

選択したプローブ用の USB ドライバーをインストールします。

  1. プローブをホストマシンに接続します。
  2. http://zadig.akeo.ie/ から Zadig* をダウンロードします。
  3. プローブを選択し、両方のインターフェイス (インターフェイス 0 と 1) 用の WinUSB ドライバーをインストールします。

ハードウェア・セットアップ

次の図は、デバッグ用に推奨するセットアップを示します。

  1. ホストシステム
  2. USB 2.0 オス-オス A-B ケーブル
  3. JTAG プローブ
  4. ARM-JTAG-20-10 アダプター
  5. JTAG ポート
  6. インテル® Galileo ボード
  7. ブートプロセスを表示するためのシリアルケーブル
  8. 電源

注: Flyswatter2* と多くの JTAG アダプターは JTAG とシリアルを同時にサポートします。上の図のようにシリアルケーブルを (7) と (3) に接続すると、JTAG とシリアルコンソールのデータが USB (2) 経由でホストシステム (1) に送られます。上の図では次のケーブルが使用されました: http://www.sfcable.com/D935-06.html

デバッグセッションを開始する

OpenOCD* を起動する

  • OpenOCD* コンポーネントのインストール・ディレクトリーに移動します。
  • OpenOCD* を起動します。

INSTALL_DIR> bin\openocd.exe  -f scripts\interface\ftdi\olimex-arm-usb-ocd-h.cfg -f scripts\board\quark_x10xx_board.cfg

注: 斜体の個所は、使用するホストと OS と JTAG デバイスに依存します。

インテル® System Debugger の起動

ターゲットの電源をオンにして、OpenOCD* を起動します。

  • “start_xdb_gdb_remote.bat/.sh” を実行するか、
  • インテル® System Debugger の GUI で左上にある [connect icon] をクリックします。

自動的に OpenOCD* のローカルホストのデフォルト設定 (127.0.0.1:3333) に接続しようとします。

異なる接続設定を使用する場合は、

次のようにコンソールで <IP ADDRESS> を指定します。

xdb_D> connect "<IP ADDRESS>:3333" servertype=openocd

コンパイラーの最適化に関する詳細は、最適化に関する注意事項を参照してください。

タイトルとURLをコピーしました