最新のパワー エレクトロニクス制御システムの開発において、DSP チップはその優れたコンピューティング パフォーマンスにより、制御アルゴリズムの分野でますます広く使用されています。従来のDSP開発プロセスでは、制御系のシミュレーションやプログラム設計を行った上で、比較結果に応じてプログラムを修正する必要があり、また、ハードウェア回路技術者の協力も必要となるため、開発効率や柔軟性が低いという課題がありました。
制御アルゴリズムを迅速に検証し、シミュレーションと開発を並行して開発効率を向上させ、元の IDE 環境でのコード開発とデバッグを容易にするために、Tianmu オールデジタル リアルタイム シミュレーション ソフトウェア SkyEye は、CCS との共同シミュレーション方法を提供しています。 IDEのデバッグを実現します。この記事では、TI CCS を例として、SkyEye と CCS の共同シミュレーションに基づく IDE デバッグの具体的な操作を示します。
ステップ 1: 構成
1. この例では、CCS Eclipse を使用して C6713 テスト ケースをコンパイルします。
2. まず CCS を設定します。
(1) 図 1 に示すように、テスト プロジェクトを選択し、右クリックして [Debug As] -> [Debug Configurations] を選択します。
▲図1 デバッグ構成の選択
(2) 図に示すように、「C/C++ リモート アプリケーション」をダブルクリックして、DEC6713_Timer_Debug 構成インターフェイスをポップアップ表示します。
▲図2 デバッグ方法の選択
(3) GDB ツールの構成と最初のブレークポイントの位置を手動で完了します。具体的なプロセスを図 3 ~図 6 に示します。
▲図3の設定ページ
▲図4 手動構成の選択
▲図5 GDBツールの設定
▲図6 最初のブレークポイント位置の設定
3. 次に、SkyEye を設定します。
(1) 図 7 に示すように、SkyEye 構成ファイルで Remote-gdb コマンドを構成します。
▲図7 Remote-gdbコマンドの設定
(2) SkyEye を起動し、図 8 に示すように c6713_testcase テスト ケースをロードします。
▲図 8 c6713_testcase テスト ケースのロード
4. 上記の設定を完了すると、SkyEye インターフェイスの [デバッグ] オプションを使用して、SkyEye と CCS 間の接続を完了できます (TCP 伝送制御プロトコルによって実現)。
(1) CCS DEC6713_Timer によって構成されたデバッグ インターフェイスを選択し、[デバッグ] をクリックします。
(2) 次のインターフェイスが表示されたら、接続が成功し、デバッグを実行できることを意味します。
▲図9 CCSとSkyEye間の接続成功
ステップ 2: デバッグ
1. ブレークポイントの追加 完了後、デバッグインターフェース右画面の[ブレークポイント欄]で変数値とアセンブリコードを確認できます。
(1) 変数値を確認します。 [式] 列をクリックして変数名を追加すると、デバッグおよび実行後に変数値を確認できます。
(2) アセンブリ コードを表示する: デバッグ ツールバーのボタンをクリックして、デバッグ インターフェイスの右端にある [逆アセンブリ] 列にアセンブリ コードを表示します。
2. デバッグ インターフェイスのシングル ステップ実行ボタンをクリックして、シングル ステップ実行操作を実現します。
*アドレスの変更は SkyEye UI コンソールで確認できます。
3. シングルステップ実行操作が完了すると、「逆アセンブリ」列にアセンブリ命令の実行も表示されます。
4. デバッグ ツールバーの [終了] ボタンをクリックして、GDB サーバーから切断し、デバッグを終了します。
上記の動作ステップにより、シミュレーションとプログラムのデバッグの間の対話を実現できるだけでなく、ハードウェア システムの準備ができていない場合でも制御アルゴリズム プログラムの検証とデバッグを実現できます。この操作方法は、DSP に基づく他の制御システムにも適用できます。