1.6 デバッガの概念

DS-5デバッガ の操作時に意識する必要がある便利な概念の一部を一覧表示します。

AMP

非対称型マルチプロセシング(AMP)システムには、異なるアーキテクチャを構成できる複数のプロセッサが含まれます。詳細については、1.3.2 AMP システムのデバッグを参照して下さい。

ベアメタル

ベアメタル組み込みアプリケーションとは、OS 上で実行されないアプリケーションのことです。

BBB

MTB の旧称。

CADI

コンポーネント アーキテクチャ デバッグ インタフェース。デバッガがモデルを制御するために使用する API です。

コンフィギュレーションデータベース

コンフィギュレーションデータベースには、接続可能なプロセッサ、デバイス、およびボードに関する情報が DS-5デバッガ によって保存されます。

このデータベースは、<DS-5 installation directory>/sw/debugger/configdb/ ディレクトリ内の一連の .xml ファイル、Python スクリプト、.rvc ファイル、.rcf ファイルその他のファイルとして存在します。

DS-5 は、さまざまなデバイスをそのままサポートするよう事前に構成された状態で提供されます。サポートされるデバイスは、Eclipse IDE 内の[Debug Configuration]ダイアログで表示できます。

プラットフォームコンフィギュレーションエディタ(PCE)ツールを使用して、独自のデバイスのサポートを追加することもできます。

コンテキスト

ターゲットの各プロセッサは、複数のプロセスを実行できます。ただし、プロセッサは任意のポイントで 1 つのプロセスのみを実行します。各プロセスは、変数、レジスタ、および他のメモリ位置に格納される値を使用します。プロセスの実行中にこれらの値を変更できます。

プロセスのコンテキストでは、現在のすべてのアクティブコールを列挙するコールスタックで主に定義されているように、現在の状態を記述します。

コンテキストは以下の場合に変更されます。

  • 関数が呼び出された。
  • 関数から戻った。
  • 割り込みまたは例外が発生した。

変数はクラス、ローカル、またはグローバル有効範囲を持つことができるので、現在アクセス可能な変数はコンテキストによって決定されます。すべてのプロセスは個別のコンテキストを持っています。プロセスの実行を停止すると、現在のコンテキスト内の値の検証と変更を行うことができます。

CTI

クロストリガインタフェース(CTI)は、トリガ要求を結合してマップし、Embedded Cross Trigger(ECT)サブシステムのその他のインタフェースにブロードキャストします。詳細については、3.16 クロストリガコンフィギュレーションを参照して下さい。

DAP

システムマスタポートを経由して完全な SoC へのデバッグアクセスを可能にする制御およびアクセスコンポーネント。詳細については、「デバッグアクセスポート」を参照して下さい。

デバッガ

デバッガはホストコンピュータで実行されるソフトウェアで、デバッグターゲットで実行されるソフトウェアを、デバッグアダプタを使用して検証および制御できるようにします。

デバッグエージェント

デバッグエージェントは、ホストデバッガのターゲットとの応答を可能にするハードウェアまたはソフトウェア、あるいは両方です。例えば、デバッグエージェントを利用すると、レジスタとの間の読み出しおよびまたは書き込み、メモリとの間の読み出しおよびまたは書き込み、ブレークポイントの設定、プログラムのダウンロード、プログラムの実行およびシングルステップ、フラッシュメモリのプログラムなどができます。

gdbserver はソフトウェアデバッグエージェントの例です。

デバッグセッション

デバッグセッションは、ターゲット上で実行されているソフトウェアをデバッグするために、デバッガをターゲットに接続したときに開始し、ターゲットからデバッガを切断したときに終了します。

デバッグターゲット

デバッグターゲットとは、プログラムを実行する環境のことです。この環境は、ハードウェア、ハードウェアをシミュレーションするソフトウェア、またはハードウェアエミュレータのいずれかです。

ハードウェアターゲットとしては、大量生産された開発ボードや電子装置からプロトタイプ製品やプリント基板に至るまで、さまざまなものがあります。

製品開発の初期段階にハードウェアを利用できない場合、ハードウェアの動作をシミュレーションまたはソフトウェアターゲットを使用してシミュレートできます。 固定仮想プラットフォームFVPは、実際のハードウェアと同じ機能動作を行う ARM® のソフトウェアモデルです。

注:

FVP をデバッガと同じホストで実行する可能性があっても、FVP を別個のハードウェアとして考えることが重要です。

また、製品開発の初期段階では、ハードウェアエミュレータを使用して、プレシリコンテストについてハードウェアとソフトウェアの設計を検証することができます。

デバッグアダプタ

デバッグアダプタは、ホストデバッガとハードウェアターゲットとの間のフィジカルインタフェースで、デバッグエージェントのように動作します。デバッグアダプタは、通常、実際のターゲットハードウェアのデバッグのベアメタル起動/停止、例えば JTAG の使用に必要です。

デバッグおよびトレースアダプタの DSTREAM および ULINKファミリもその例です。

ARMコンパイラなど

ARM DSTREAM を組み合わせたデバッグとトレースユニット。詳細については、「DSTREAM」を参照して下さい。

DTSL

デバッグおよびトレースサービスレイヤ(DTSL)は、DS-5デバッガスタック内のソフトウェアレイヤです。DTSL は、通常 Jython スクリプトにより実装されている(拡張されている可能性のある)Java クラスのセットとして実装されます。通常の DTSL インスタンスは、Java と Jython の組み合わせです。 ARM では、ターゲットプラットフォームにアクセス/制御するプログラムを作成できるよう DTSL の独自の使用を達成しました。

DWARF

DWARF は、C およびその他の同様のプログラミング言語でのプログラムの記述に使用できるデバッグ形式です。ELF オブジェクト形式と最も広く関連がありますが、その他のオブジェクトファイル形式でも使用されています。

ELF

Executable and Linkable Format(ELF)は、実行可能ファイル、オブジェクトコード、共有ライブラリ、およびコアダンプのための一般的な標準ファイル形式です。

ETB

Embedded Trace Buffer(ETB)は、異なるトレースソースのトレースデータを格納するオプションのオンチップバッファです。デバッガを使用すると、キャプチャしたトレースデータを取得できます。

ETF

Embedded Trace FIFO(ETF)は、専用 SRAMを循環キャプチャバッファまたは FIFO として使用するトレースバッファです。トレースストリームは、ATB 入力によりキャプチャされ、ATB 出力またはデバッグ APB インタフェースにより出力できます。ETF は、トレースメモリコントローラ(TMC)のコンフィギュレーションオプションです。

トレースマクロ

組み込みトレースマクロセル(ETM)は、プログラム実行の再構築を可能にする、オプションのデバッグコンポーネントです。ETM は、トレースをサポートする高速、低電力のデバッグツールとして設計されています。

ETR

組み込みトレースルーター(ETR)は、トレースデータをシステムメモリやその他のトレースシンク(HSSTP など)に経路制御する CoreSight コンポーネントです。

FVP

固定仮想プラットフォーム(FVP)を使用すると、実際のハードウェアを使用せずにソフトウェア開発を行うことができます。FVP は、プログラマの観点から実際のハードウェアと同じ機能動作を行います。

ITM

命令トレースマクロセル(ITM)は、コードインストルメンテーション出力と特定のハードウェアデータストリームを提供する CoreSight コンポーネントです。

jRDDI

RDDI を Java API に実装したものです。

Jython

Java と緊密に統合された Python 言語を実装したものです。

MTB

マイクロトレースバッファ。これは Cortex-M0 と Cortex-M0+ で使用されます。

PTM

プログラムトレースマクロセル(PTM)は、コアと組み合わされて命令専用プログラムフロートレースデータを提供する CoreSight コンポーネントです。

RDDI

RealView デバイスデバッグインタフェース(RDDI)は、一般に DSTREAM ボックス、または CADI モデルを通じてターゲットデバッグとトレース機能にアクセスできるようにする C レベルの API です。

RVI

ARM Realview ICE ユニット。DSTREAM の先行品です。

有効範囲

変数の有効範囲は、定義されているアプリケーション内のポイントによって決定されます。

変数は、以下の範囲内の関連する値を持つことができます。

  • 特定のクラスのみ(クラス)。
  • 特定の関数のみ(ローカル)。
  • 特定のファイルのみ(スタティックグローバル)。
  • アプリケーション全体(グローバル)。
SMP

対称型マルチプロセシング(SMP)システムには、同じアーキテクチャの複数のプロセッサが含まれます。詳細については、1.3.1 SMP システムのデバッグを参照して下さい。

STM

システムトレースマクロセル(STM)は、コードインストルメンテーション出力とその他のハードウェア生成データストリームを提供する CoreSight コンポーネントです。

TPIU

トレースポートインタフェースユニット(TPIU)は、トレースデータを外部トレースキャプチャデバイスに提供する CoreSight コンポーネントです。

TMC

トレースメモリコントローラ(TMC)では、以下を使用し、トレースをキャプチャできます。

  • 2 ピンシリアルワイヤデバッグなどのデバッグインタフェース。
  • ダイナミックランダムアクセスメモリ(RAM)などのシステムメモリ。
  • SoC(System-on-Chip)ペリフェラルに既に存在する高速リンク。
非機密扱いPDF file icon PDF 版ARM DUI0446ZJ
Copyright © 2010–2016 ARM.All rights reserved.