208071892_development systems

インサーキットプログラマー、エミュレーター、デバッガー

インサーキット プログラマ (ICP) は、インシステム プログラマとも呼ばれ、マイクロプロセッサ (MPU)、マイクロコントローラ (MCU)、プログラマブル ロジック デバイス (PLD、CPLD、FPGA) などの組み込みデバイスをプログラムする機能を備えています。これらのデバイスとそれに接続されたメモリは、大規模なシステム内にある状態でもプログラムできます。通常、シンプルなヘッダー スタイルのコネクタによってコンピューターがデバイスに接続され、プログラマーがソフトウェアをターゲットにダウンロードできるようになります。プログラマーは通常、ターゲット上の不揮発性ストレージ領域(通常はフラッシュ メモリ)にダウンロードできます。また、ターゲットからコード スペースをアップロードしてコピーを作成したり、エラーが発生していないことを確認したりする機能も備えている場合があります。現在、ほとんどのプログラマーは、JTAGプロトコルを使用してデバイスのメモリ バス システムとインターフェイスします。これは、JTAGが通常デバイスに統合され、サブシステムの境界やデバイス内のレジスタへのアクセスを提供するためです。インサーキット エミュレータ (ICE) は、組み込みシステム内のソフトウェアのデバッグとテストを容易にするハードウェア デバイスです。これは通常、ICPで共有されるJTAGシリアル接続によってシステムとインターフェースします。名前からエミュレートすることがわかりますが、これは今日の機能を説明するためというよりは、歴史的な理由によるものです。過去には、システムをデバッグするために、非常に高価なボンドアウト チップが使用されることがありました。これらは、システム回路基板にはんだ付けされたアダプタ ポッドに差し込まれたコネクタによってターゲット システムに接続されることがありました。最近のほとんどのデバイスに組み込まれているJTAG回路はサブシステム、バス、レジスタに直接アクセスできるため、これらの高価で扱いにくいシステムは必要ありません。インサーキット デバッガーは、通常ICPとICE (通常は同じデバイス)、および完全なソフトウェア開発環境を含むソフトウェア/ハードウェア混合システムです。ソフトウェア開発環境には、使用中の言語のキーワードを色分けする機能 (構文の強調表示)、適切なインデント、場合によってはコードの可視性を高めるために関数にタグを付ける機能を備えた特別なテキスト エディターがあります。コンパイルやターゲットへのダウンロードが可能で、通常はダウンロードしたソフトウェアを表示するためのグラフィカル ユーザー インターフェイスを提供できます。デバッガーはJTAGの命令ごとのステップ制御機能を通じて、グラフィカル ユーザー インターフェイスに表示されるコードをリンクし、ステップ実行します。ユーザーはブレークポイントを指定して検査のためにコードを停止したり、CPU内のレジスタを検査したり、変数値、スタック、フレーム、メモリ データを検査したりすることができます。 続きを読む 続きを読む