デジタル・シグナル・プロセッサ & ARM マイクロプロセッサ

プラットフォーム

製品検索

ツールとソフトウェア

設計サポート

はじめに

Code Composer Studio IDE

 

Code Composer Studio は TI の エンベデッド・プロセッサ向けの統合開発環境です。Code Composer Studio には、組込みアプリケーションの開発とデバッグに必要なツールが含まれています。TI の各デバイス・ファミリ向けのコンパイラ、ソース・コード・エディタ、プロジェクト・ビルド環境、デバッガ、プロファイラ、シミュレータなど、多数の機能が含まれています。 Code Composer Studio IDE には、アプリケーションの開発フローをステップごとに実行できる、単一のユーザ・インターフェイスが備わっています。使い慣れたツールとインターフェイスを使用することで、ユーザはすぐに開発を始めて、高度な生産性ツールを利用して、アプリケーションに機能を追加することも可能です。

バージョン 4 以降の Code Composer Studio は、Eclipse オープン・ソース・ソフトウェア・フレームワークに基づいています。 ソフトウェア開発環境を構築するための優れたソフトウェア・フレームワークである Eclipse は、多数の組込みソフトウェア・ベンダによって使用される標準フレームワークになってきています。バージョン 4 以降の Code Composer Studio は Eclipse をベースに開発されています。 Code Composer Studio は、Eclipse ソフトウェア・フレームワークの利点と TI の高度な組込みデバッグ機能を組み合わせることにより、開発者にとって魅力のある機能豊富な開発環境を提供します。

デバッガ | プロファイリング | スクリプト | イメージ解析と表示 | コンパイラ | シミュレーション | ハードウェア・デバッグ(エミュレーション) | SYS/BIOS | DSP/BIOS™ | はじめに

CCStudio Screen Shot
図 1

ページトップへ

デバッガ

Code Composer Studio の統合デバッガには、DSP 特有の機能と高度なブレークポイントが備わっており、開発を簡素化することができます。コンディショナル・ブレークポイントまたはハードウェア・ブレークポイントは、C 言語の式、ローカル変数、またはレジスタをベースにしています。高度なメモリ・ウィンドウを使用すると、メモリの各レベルを検査できるので、複雑なキャッシュに関する問題もデバッグができます。 Code Composer Studio は、複数のプロセッサまたはコアを搭載した複雑なシステムの開発をサポートします。グローバル・ブレークポイントおよび同期動作により、複数のプロセッサとコアの制御が可能になります。

プロファイリング

Code Composer Studio IDE の対話型プロファイラは、デバッグおよび開発セッション中に素早くコードのパフォーマンスを測定し、DSP ターゲットのリソースが効率良く使用されるよう設計されています。開発者はプロファイラを使用することにより、アプリケーション内すべての C/C++ 関数の命令サイクル、キャッシュ・ミス/ヒット、パイプライン・ストール、分岐などのイベントも簡単にプロファイルすることができます。プロファイル範囲を指定すると、コード内の使用頻度の高い部分を重点的に最適化することができるので、開発者は、正確にチューニングされたコードを作成できます。プロファイリングは、アセンブリ、C++ または C コード、これらの組み合わせに対して使用できます。生産性を向上するため、すべてのプロファイリング機能を開発サイクルのどの段階でも使用することができます。

スクリプト

テストなどの一部のタスクは、ユーザーによる操作なしで、数時間または数日間実行する必要があります。このようなタスクを実現するために、IDE は共通タスクを自動化する機能が必要になります。 Code Composer Studio には、テストや性能ベンチマークなどの反復タスクを自動化するスクリプト環境が備わっています。個別のスクリプト・コンソールを使用すると、IDE 内でコマンドを入力したり、スクリプトを実行することができます。

ページトップへ

イメージ解析と表示

Code Composer Studio には、イメージ解析とグラフィック表示機能が多数備わっています。Code Composer Studio には、ディスプレイ上に変数とデータをグラフィック表示し、自動的に更新できる機能が備わっています。 Code Composer Studio では、ネイティブ・フォーマットでビデオ・データを表示することもできます。

CCStudio Screen Shot
図 2

ページトップへ

コンパイラ

TI は、DSP の使用効率と性能を最大にする最適化された C/C++ コンパイラを開発しました。 TI のコンパイラは、DSP アーキテクチャに特化した幅広い、最適化を行います。 この最適化手法には以下が含まれます。

  • 共通部分式の削除
  • ソフトウェア・パイプライン
  • 算術処理の最適化
  • 自動アドレス・インクリメント
  • コストベースのレジスタ割り当て
  • 命令予測
  • ハードウェア・ループ
  • インライン・ファンクション
  • ベクトル化

TI コンパイラはまた、アプリケーション・レベルでコード性能を評価する、プログラム・レベル最適化を実行します。 プログラム・レベルで、完全にシステムを理解しているアセンブラ ・プログラム開発者と同等のコードをコンパイラで生成することが可能です。 アプリケーション・レベルでの最適化では、コンパイラが DSP のパフォーマンスを最大限引き出すようトレードオフを決定します。

TI ARM およびマイクロコントローラ C/C++ コンパイラは、コード・サイズと制御コードの効率に対して最適化されています。 これらは、業界をリードする性能と互換性を提供します。

ページトップへ

シミュレーション

シミュレータを利用すると、開発ボードを入手する前に開発を開始することができます。 また、シミュレータを使用するとアプリケーションの性能と動作をより詳細に把握できるという利点もあります。 サイクルの精度、速度、およびペリフェラル・シミュレーションの間でトレードオフを行うことができる機能があり、アルゴリズム・ベンチマークの作成に適したものや 、詳細なシステム・シミュレーションに適したものがあります。

ハードウェア・デバッグ(エミュレーション)

TI のデバイスには、高度なハードウェア・デバッグ機能が備わっています。 次のような機能があります。
  • IEEE 1149.1(JTAG)およびバウンダリ・スキャン
  • 実行に影響を与えないレジスタとメモリへのアクセス
  • 無効にできない割り込み処理を伴うコードのデバッグを可能にするリアルタイム・モード
    リアルタイム・モードでは、ブレーク・イベントの際にバックグランドではコードを停止し、タ イムクリティカルな割り込みサービス・ルーチンは実行を続けます。
  • 同期実行、ステップ、および停止などのマルチコア動作
    この機能には、一方のコアをトリガし、他方のコアを停止する、クロス・コア・トリガが含まれます。

アドバンス・イベント・トリガ(AET)をサポートするデバイスでは、CPU を停止したり、無効なデータまたは不正なプログラム・メモリ・アクセスなどの複雑なイベントまたはシーケン スに基づいた他のイベントをトリガすることができます。 コードの実行に影響を与えずにパフォーマンスを測定し、システム・イベント(例: キャッシュ・イベント)をカウントできます。

Code Composer Studio では、プロセッサ・トレースをサポートするデバイスで、これまで「発見不可能」であった複雑なリアルタイム・バグを検出することができます。 トレースを使用することにより、プロセッサを停止せずに、複数イベント間の競合、断続的に発生するリアルタイム誤動作、スタック・オーバーフローによるクラッシュ、プログラムの暴走、不正な割り込みなどの非常に見つけにくいバグを検出します。 トレース機能は、DSP に内蔵されているデバッグ・ユニットに依存し、コードの実行にまったく影響を与えないデバッグ手法です。したがって、アプリケーションのリアルタイム動作への干渉や変更がありません。 トレース機能を使用すると、複雑なデータ・スイッチの集中、マルチチャネル・アプリケーショ ンのコード・パフォーマンスを正確にチューニングし、キャッシュを最適化できます。 プロセッサ・トレースは、プログラム、データ、タイミング、選択したプロセッサ、およびシステム・イベン ト/割り込みのエクスポートが可能です。 プロセッサ・トレースは、外部 JTAG エミュレータ XDS560、または選択したデバイスのオンチップ・バッファのエンベデッド・トレース・バッファ (ETB)のいずれかにエクスポートされます。

TI は、さまざまな JTAG エミュレータを用意しています。 エミュレータは、ターゲット・ハードウェア上でのデバッグを可能にします。 詳細については、エミュレーション・フォルダにアクセスしてください。 詳細

ページトップへ

SYS/BIOS

SYS/BIOS は高度で拡張性のあるリアルタイム・オペレーティング・システムです。ARM926 や ARM Cortex M3、C674x、C64x+、28x コアを統合する TI のデバイスをサポートしています。 SYS/BIOS には、高速で柔軟性の高いメモリ管理やイベント、優先度継承ミューテックスなど、DSP/BIOS にはない多数のカーネルや拡張デバッグ機能が用意されています。 SYS/BIOS には DSP/BIOS 互換レイヤが含まれており、アプリケーション・ソース・コードを簡単に移行することができます。 詳細については、SYS/BIOS プロダクト・フォルダをご参照下さい。 詳細

DSP/BIOS

リアルタイムのオペレーティング・システム DSP/BIOS は、DSP デバイス向けにプリエンプティブ・マルチタスク・サービスを提供します。 DSP/BIOS サービスには、ISR ディスパッチ、ソフトウェア割り込み、セマフォ、メッセージ、デバイス I/O、メモリ管理、およびパワー・マネージメントが含まれます。 さらに、DSP/BIOS には、オーバーヘッドの低い printf やデバッ グ情報の収集を含む、デバッグ機能とツールも備わっています。 詳細については、DSP/BIOS のプロダクト・フォルダにアクセスしてください。 詳細

はじめに

無償バージョンの Code Composer Studio をダウンロードして、すぐに開発を始められます。

ページトップへ