システム要件 †
DS-5で要求される最小のPCの仕様は以下の通りです。
- dual core 2GHzプロセッサ(またはそれ相当)
- 2GBのRAM(大きなイメージのデバッグやシミュレータモデル使用時のパフォーマンス改善には4GB以上のRAMを推奨)
- 1.5GBのハードディスク(フルインストール時)
サポートされるOSプラットフォーム †
以下、特に指定が無いものについては32-bit/64-bit両方の対応となります。
Windows XP Professional service pack 3 (32-bit only) Windows 7 Professional Windows 7 Enterprise Windows Server 2003 (ARM Compiler toolchain only) Windows Server 2008 (ARM Compiler toolchain only) Red Hat Enterprise Linux 5 Desktop and Workstation option, Standard Ubuntu Desktop Edition 10.04 LTS (32-bit only)
その他要件 †
AndroidおよびARM Linuxアプリケーションデバッグではお客様のターゲット上にgdbサーバを必要とします。推奨されるgdbserverのバージョンは7.0です。DS-5デバッガと互換性のあるARMv4T、ARMv5T、およびThumb-2アーキテクチャ for Linuxのためにビルドされたgdbserver 7.0実行形式が<installdir>/armディレクトリで提供されています。DS-5デバッガはgdbserver v6.8以前を用いたマルチスレッド対応のデバッグを行う事ができません。
DS-5デバッガはARM Linux kernelバージョン2.6.28から2.6.36をサポートしています。他のカーネルバージョンも動作可能ですが、テストされていません。ARM Streamline Performance Analyzerで使用可能な最小のARM Linux kernelバージョンは2.6.32です。SMPシステムでのアプリケーションデバッグでは、ARM Linux kernelバージョン2.6.36以降が必要です。VFPおよびNEONレジスタへのアクセスは、ARM Linux kernelバージョン2.6.30以降およびgdbserver v7.0以降が必要です。
ARM Linux kernelおよびベアメタルデバッグはDSTREAMまたはRVIを使用してターゲットボードと接続する必要があります。DSTREAMおよびRVIは別々の製品として購入することができます。最小のサポートされるファームウェアバージョンは、4.5.0となります。最新のファームウェアに提供されたハードウェアがアップデートされているかチェックし、必要であればアップデートを行う事を推奨します。更新されたファームウェアは、<installdir>/sw/debughw/firmwareに存在します。
DS-5は別のディレクトリにインストールされているARM RVDSツールチェインと共存させることが可能です。
オンラインヘルプの全ての行はSVGフォーマットで記述されています。これらのグラフィックを表示するには、ブラウザがSVGフォーマット対応である必要があります。もしブラウザがSVGのnativeサポートを行っていない場合、Adobe SVG Viewerなどの適切なプラグインをインストールする必要があります。
http://www.adobe.com/svg/viewer/install/
Linuxでのインストール †
DS-5をLinuxにインストールするには、(sourceではなく)install.shを実行し、スクリーン上の手順に従ってください。インストーラは選択したディレクトリにDS-5を解凍し、オプションでデバイスドライバとデスクトップショートカットをインストールします。
過去のDS-5のリリースがインストール済みの場合、インストール前に全てのリリースを削除することを推奨します。install.shがこの手順をガイドします。このリリースを全く異なったディレクトリにインストールする方法もあります。
インストーラはDSTREAMおよびRVIハードウェアユニットをUSB接続するためのデバイスドライバを含んでいます。これらの機能を使用する場合はドライバをインストールすることを推奨します。これらのドライバをインストールするにはインストーラをroot権限で実行する必要があります。インストーラをroot権限を用いて実行していない場合やこれらのドライバをインストールしない場合には、後からroot権限で以下のスクリプトを実行することでインストールが可能です。
<installdir>/run_post_install_for_ARM_DS-5.sh
インストーラはサポートされるLinuxプラットフォーム上でfreedesktop.orgメニューシステムを用いてデスクトップメニューを生成します。
Windowsでのインストール †
DS-5をWindows上でインストールするにはsetup.exeを実行し、スクリーン上の手順に従ってください。
DS-5 v5.2以降のバージョンが既にインストールされている場合は、このリリースで上書きインストールすることができます。DS-5 v5.2以前のバージョンが既にインストールされている場合は、このリリースをインストールする前に必ずアンインストールしておく必要があります。
インストール中にデバイスドライバのインストールが示されます。これらの4つのデバイスドライバはDSTREAMおよびRVIハードウェアユニット(デバッグおよびトレース)をUSB接続したり、シミュレータモデルのネットワーキングサポートをするためのものです。インストール中に、"Windows can't verify the publisher of this driver software"または"The software you are installing has not passed Windows Logo testing"といったワーニングが表示されますが、これらは安全に無視してインストールをしていただくことが可能です。
インストールメディア内readme.htmlにはインストール後の注意事項、アンインストール方法などについても記載がありますので必要に応じて参照してください。
What's new †
このリリースでの新しい機能または大きな変更のサマリを以下に示します:
ARM Compiler toolchain
- 最新のバグ修正および改善の行われた5.01リリースにアップデートされました
- インラインアセンブラのThumb-2命令サポートが行われました
- ローカルバッファオーバーフローに対する保護を助ける、--protect_stackオプションによるスタック保護機構が追加されました
- const-referenceに対応するためのベクタライズ化が改善しました
ARM Streamline
- Timelineビューで範囲選択によりその間に収集されたイベントカウンタを表示できるようになりました
- Timelineビューで素早くラベル付けして重要なポイントに戻れるようブックマークが設定できるようになりました
- アプリケーションにannotation関数を追加することでTimelineビューのブックマークが自動的に生成されます
- Streamlineデータのキャプチャ、解析およびレポートをスクリプト化して実行できるようコマンドラインインターフェイスが追加されました
- イベントベースサンプリング(beta)により、PMUカウンタが設定した値に到達するたびにサンプリングを行うことができるようになり、プロセス、スレッド、関数およびコードに対して、例えばキャッシュミスイベントがどの程度発生したのかを把握することが可能になりました
- Linuxスレッド名が表示されるようになりました
- 64-bitカウンタのサポートを追加しました
- gator daemonをオープンソースとしてリリースしました
- Cortex-A15のフルサポートを行いました(以前はアーリーアクセス扱いでした)
- gator_v6を含みます
DS-5
- Ubuntu Desktop Edition 10.04 LTS(32-bit only)をサポート済みホストプラットフォームに追加しました
DS-5デバッガ
- 以前より提供されていたual-core Cortex-A9 Real-Time System Model(RTSM)においてベアメタルアプリケーションデバッグ機能を追加しました
- より大きく複雑なデバッガスクリプトの作成に対応するためjythonインターフェースを追加しました
- 名前、アドレス、ソースファイルおよびイメージから関数を検索できる新しいFunctionsビューを追加しました
- Instrumentation Trace Macrocell(ITM)を使ってベアメタルアプリケーションのロギングイベントを表示するEvent Viewer(アーリーアクセス)を追加しました
- Expression Inspectorビューがタイトルバーから移動できるようになりました
- Breakpoint PropertiesダイアログによってScriptsビュー内のスクリプトに素早くアクセスしてブレークポイントにアタッチすることができます
- set/show print double-format/float-formatコマンドによって単精度および倍精度浮動小数点値のセットおよび表示フォーマットの指定ができます
- 逆アセンブルおよびその他の関連するコマンドにおいて使用する有効な命令セットを表示するinfo inst-setsを追加しました
- hypervisor特有および仮想マシン特有のブレークポイントを含むhypervisorデバッグのサポートを行うようハードウェアブレークポイント機能を拡張しました
- セミホスティングやLinuxカーネルデバッグなどのサポート機能でデバッガによって使われている内部ブレークポイントがBreakpointビューとコマンドラインで参照できるようになりました
- ビルトインDS-5スクリプト機能がstrncmp、strcpy、strncpyおよびmemcpyを使えるよう拡張されました
- 一部プラットフォームでcycle-accurateトレースが可能になりました
- 次のデバイスサポートが追加されました:
- ARM Microcontroller Prototyping System (Cortex-M0/Cortex-M1/Cortex-M4)
- Keil MCBSTR9, ST STA2064/65
- ST STR912
- TI AM1707 / AM1808 / DM3725 / DM3730 / DM8168 / OMAP 3530 / OMAP L138
- Xilinx Zynq-7000 EPP
- 次のプロセッササポートが追加されました:
- Cortex-M0/M1/M4
- Cortex-R5
- ARM946E-S
- ARM966E-S
- ARM968E-S
- ARM1156T2(F)-S
DSTREAM/RVI
- 新しいv4.5のファームウェアが含まれます
- CoreSightコンポーネントに対する低レベルアクセスのためのCoreSight Access Tool(CSAT)を追加しました
Eclipse
- Eclipse 3.7、CDT 8.0、RSE 3.3へのアップデートとPyDev 2.2.2の追加を行いました
- ELF Content Editorで別々のタブにセクション情報を表示できるようになりました
Examples
- Cortex-A9x2 RTSMプラットフォーム用に次のサンプルを追加しました:
- fireworks_a9x2rtsm
- smp_primes_a9x2rtsm
- Versatile Express Cortex-A9x4プラットフォーム上でITMを使用したDS-5 Event Viewer機能を紹介するサンプルが追加されました:
- smp_primes_ITM
- Versatile Express Cortex-A15プラットフォームベースでのベクタテーブル、例外ハンドラ、MMU、キャッシュおよびVFP/NEONの初期化を含むCortex-A15プロセッサ用ベアメタルスタートアップコードが追加されました:
- startup_Cortex-A15
- Versatile Express R5x2プラットフォームベースでのベクタテーブル、例外ハンドラ、MPU、キャッシュ、TCMおよびVFPの初期化を含むCortex-R5(F)プロセッサ用ベアメタルスタートアップコードが追加されました:
- startup_Cortex-R5
- Microcontroller Prototyping Systemベースでの全てCで書かれたベクタテーブル、SisTickタイマおよび割り込みハンドラを含むCortex-M0/M1/M4用ベアメタルスタートアップコードが追加されました:
- startup_Cortex-M0
- startup_Cortex-M1
- startup_Cortex-M4
- ARMコンパイラを使ってNEON自動ベクタライズを行い、どのようにベクタライズを改善させるためにソースコードを変更するか、どのようにパフォーマンスの改善を計測するかを示す新しいFireworksベアメタルアプリケーションを追加しました:
- optimization3
- Streamlineテキストannotation機能を確認できるようxaosを拡張しました
- Cortex-A8 RTSMプラットフォームでカーネルモジュールデバッグを確認できるようkernel_moduleサンプルを拡張しました
Simulation Models
- dual-core Cortex-A9 Emulation Baseboard platformモデルを追加しました
DS-5でサポートされるターゲットプラットフォームの一覧は以下を参照してください:
http://www.arm.com/products/tools/software-tools/ds-5/supported-platforms.php
本バージョン以前の変更点の一覧は以下を参照してください:
http://www.arm.com/products/tools/software-tools/ds-5/change-log.php
既知の問題 †
このリリースで判明している既知の問題は以下の通りです。
ARM Compiler toolchain
●問題点
Linuxアプリケーションを--arm_linux_config_fileオプション使用してコンパイルした際、コンパイラバイナリからの相対位置にあるヘッダファイルのロケートに失敗します。Eclipse IDEを使ってビルドするプロジェクトではこの問題は影響がありません。[SDCOMP-14871]
●回避策
DS-5インストールディレクトリ内のincludeディレクトリへのフルパスを含む環境変数ARMCC50INCをセットします。これをWindows環境におけるDS-5 Command Prompt内で行うには次のようなコマンドを使用します:
set ARMCC5INC=C:\Program Files\DS-5\include
Linux環境では
setenv ARMCC5INC ~/DS-5/include
または
export ARMCC5INC=~/DS-5/include
となります。
ARM Streamline Preformance Analyzer
●制限事項
Streamlineのイベントベースサンプリング機能はベータリリースの状態です。
DS-5 v5.7では、Streamlineのイベントベースサンプリングのベータサポートを行っています。この機能はPerformance Monitoring Unit(PMU)からのデータを含むプロファイリングレポートが可能です。一般的な使用方法はコード内でのキャッシュミスや関数の分岐予測ミスなどの検出です。
イベントベースサンプリングでは、PMUカウンタがオーバーフローしたときにプロセッサの割り込みを生成させるような設定をプラットフォーム上のPMUに正しく行わなければいけません。PMUが見つからなかったりPMU割り込みが発生せずTimelineビューにデータが見当たらない場合、エラーが発生します。これらの問題が起きた場合はプラットフォームのPMUの設定をチェックしてください。
●問題点
Streamlineでは自動処理を行うコマンドラインインターフェイスを提供していますが、マニュアルが含まれていません。
●回避策
DS-5のディレクトリにはWindows環境ではstreamline.bat、Linux環境ではstreamline.shのファイルが提供されています。これらは次の引数を取ることができます:
-capture <session-file> -analyze <capture-files> -report <analysis files>
DS-5デバッガ
●問題点
bare-metal Cortex-A8シミュレーションモデルに接続する際、Unable to identify required model from...というエラーが表示されます。これはRealView ICEまたはDSTREAMハードウェアユニットに接続を行う既存のデバッグ起動コンフィグレーションをbare-metal Cortex-A8シミュレーションモデルに変更したときに発生します。[SDDEBUG-10120]
●回避策
完全に新しくbare-metal Cortex-A8接続に対する起動コンフィグレーションを作成します。必要がなければ、以前の起動コンフィグレーションは削除してください。
●問題点
Cortex-A8シミュレーションモデル上でLinuxアプリケーションデバッグを実行しようとした際、すでにbare-metalデバッグのためのモデルが起動されていると失敗します。[SDDEBUG-10150]
●回避策
Linuxアプリケーションデバッグ接続を起動する前に、シミュレーションモデルに対する既存のbare-metal接続が切断され、シミュレーションモデルが完全にシャットダウンされていることを確認してください。
●問題点
他のコアに対する接続がすでに開かれている場合、multi-coreシステムに対する'Debug and ETB trace'接続を開くことができません。この問題はDS-5が提供するSMPサポートにおけるSMP接続では影響しません。[SDDEBUG-9408]
●回避策
最初に'Debug and ETB trace'接続をオープンしたら、続いて他のコアに対するdebug-only接続は成功します。このリリースでは1つ以上のコアに対する'Debug and ETB trace'接続を開くことができません。
Eclipse for DS-5
●問題点
"JVM terminated"の表示またはスタックバックトレースを出力して、Eclipseの起動に失敗します
●回避策
この問題は実行しているコンピュータにおいてEclipseのヒープ設定が不適な場合に発生します。この問題に対応するために<installdir>/sw/eclipse/eclipse.iniを修正する必要があります。次のFAQに修正に関する詳細な方法が提供されています: http://infocenter.arm.com/help/topic/com.arm.doc.faqs/ka14185.html.
●問題点
DS-5 GCCツールチェインを使用してビルドする際に、ProblemsビューにError launching external scanner info generatorのワーニングが表示されます。[SDAPPS-46]
●回避策
ソースナビゲーション機能とコンテンツアシストを提供するために、Eclipse for DS-5ではプロジェクトをインデックスするためにscannerが使用されています。Eclipse for DS-5はシステムインクルードの場所を決定するためにgccを起動しようとしますが、DS-5内でのgcc実行形式の名前はarm-none-linux-gnueabi-gccになっています。ファイル名を修正するには次の方法を用います:
- 1. Eclipse for DS-5 Project Explorerビューでプロジェクト名上で右クリックして、コンテキストメニューから
Properties
- を選択します。
- 2. Propertiesダイアログで、
C/C++ Build
- を選択して左側のツリーから
Discovery Options
- を選択します。
- 3. Toolsパネルで選択された
With GCC C Compiler
- で、
Compiler invocation command
- フィールドをgccからarm-none-linux-gnueabi-gccに変更します。
- 4. Toolsパネルで選択された
With GCC C++ Compiler
- で、
Compiler invocation command
- フィールドをg++からarm-none-linux-gnueabi-g++に変更します。
- 5. OKをクリックしてダイアログを閉じます。次回のプロジェクトビルド時にはscannerは正しいコンパイラを使用して、エラーは発生しなくなります。
●問題点
Windows上でDS-5 GCC toolchainを使ってEclipse for DS-5プロジェクトをcleanする場合にrmを実行しようとします。このプログラムが見つからず、clean処理に失敗します。[SDAPPS-48]
●回避策
正しくプロジェクトのリビルドを行わせるために、手動で関係するオブジェクトファイルと実行形式を削除します。次のようにEclipse for DS-5内のこれらのファイルを削除できます:
- 1. Eclipse for DS-5 Project Explorerビューにおいて、例えば
Debug
- や
Release
- といったビルドディレクトリに移動します。
- 2. それぞれのビルドディレクトリで右クリックし、コンテキストメニューから
Delete
- を選択します。
- 3. 確認のためのダイアログが開きますのでOKをクリックしてファイルを削除します。
Examples
●問題点
Windows上でbeaglexm.zipの解凍時にWinZipがThe following invalid filename was encountered in the archive "e;distribution\kernel\linux-2.6.38-patched-beaglexm\built\xM\include\config\w1\con.h"をレポートします。これはWindowsで"con"が予約名となっているためです。
●回避策
エラーを無視して解凍を継続してください(CancelではなくOKをクリック)。解凍後、con.hのみがなくなってしまいますが、これは空のファイル(サイズゼロ)です。このファイルがないことによって問題は起きないでしょう。またはWinRARを使ってファイルを解凍することもできます。[SDAPPS-1162]