...

GNUの組み込み開発ツールを利用するには

by user

on
Category: Documents
122

views

Report

Comments

Transcript

GNUの組み込み開発ツールを利用するには
GNUの組み込み開発ツールを利用するには
突然 「
GNUで開発せよ」と言われたら まず何をしますか?
「
CasePl
ayer
2」変数参照リスト機能をサポート!
「
システムシミュレータ」採用実績を伸ばしています!
本誌 「ガイオ倶楽部」は、ガイオテクノロジーが毎月発行している情報誌 (購読は無料)です。本誌では、皆様
とのお打ち合わせを通じて頂いた貴重なご意見、技術ノウハウなどをツールベンダーの観点から記事としてまとめ、
皆様の開発に役立つ情報としてフィードバックさせていただくためのものです。
* 本誌は展示会 (
ESEC、 ET)にお越し頂いた際のデータベースから、 お届けしております。
* 郵送先追加 ・送付拒否などのご希望がございましたら、 [email protected] までメールでご連絡下さい。
[送付元]〒 103-0013 東京都中央区日本橋人形町 3-12-8 ガイオ・テクノロジー (株)営業部
組み込みソフト技術者 知識講座
GNUの組み込み開発ツールを利用するには
∼ 突然 「
GNUで開発せよ」と言われたら まず何をしますか? ∼
はじめに
「
フリーソフトウエア」、 「
パブリックドメイン
クロスコンパイル環境でよく使用される
ソフトウエア」と言われるものがあります。
ツールには、以下の様なものがあります。
今 回 の 特 集 は 、 普 段
「
フリー」は何をしても良いと言うことであ
GNU、 UNIX の環境を使っ
り、 たとえWEB 上にあるソフトウエアを改
・エディタ : vi, Emacs エディタ
変してビジネスを行っても、何からも咎め
・コンパイラ : C 言語の gcc、 C++ 用の g++
ていないエンジニアのため
GNU
GNU
・ライブラリ: libc とlibg++
の「
GNU 入門講座」です。
られることはありません。 また、 「
パブリッ
Windows ベースの開発環境で仕事をする
クドメイン」は、「
著作権が放棄された」を
貴方が、 突然 「
GNU のコンパイラを使う
意味する法律用語です。 この2つは共に
ように」と言われてしまったら、 まず、 何
「
自由に利用可能」を意味しているようで
・デバッガ : gdb
をすれば良いのかから始めましょう。
すが、 著作権に対する法律的な解釈が
・ソフトウェア構築 : make
GNU (
グニュー)と言えば、インターネッ
必要な用語の様です。
・ソースコード管理 : RCS パッケージ
・アセンブラとリンカ : gas というアセンブラと
ld というリンカ
・バイナリユーティリティ: size, nm, gprof
トで公開されているオープンソースのプロ
GNUのプロジェクトでは、著作権を意味
ジェクトであること位は、 ご存知のことと思
する「
Copyright」をもじった、「
Copyleft」
現在では、 以下のマイコンがサポートさ
います。しかしながら、実際に WEB をア
と言う言葉が作られており、著作権に関し
れている様です。
クセスしてみると、 情報が非常に多く、
ての独特の主張をしています。 これらに
UNIX ベースであること等から、 必要なも
ついては、 GNU の WEB サイト(
http://
・PowerPC m68k i960 SH H8/300
のを的確に探すのは時間を要するかも知
www.gnu.org/)をご覧下さい。日本語の
・MIPS AMD29K
れません。
翻訳 (
'Translations of this page' をクリッ
ちなみに、 ガイオはク
ク)も用意されています。
・SPARC SPARClite ARM
・v850 FRV Mep etc..
ロスコンパイラのメーカで
す。競合である「
フリー」 X A S S - V
のGNUのコンパイラを利
組み込みプラットフォームにも
用する方法をここで紹介するのは妙な話で
利用可能
はあります。しかしながら、クロスコンパイ
ラは、皆様の製品に搭載されるROMコー
GNU ソフトウエアは、 ほとんど全てのプ
ドを作成する基幹ツールです。簡単に置
ラットフォームで動作します。 この中に、
き換えが可能なわけではなく、 この選定
組み込みプラットフォームも含まれていま
については、別の視点で考える必要があ
す。開発パッケージには、クロスコンパイ
ることを付け加えて置きます。この特集記
ル環境、 デバッグ環境も含まれていま
事は、 あくまで、 GNU を利用した開発の
す。GNU ソフトウエアの大部分は、UNIX
方法の入門編としてご理解下さい。
互換ソフトウエアとしてUNIXシステム上で
GNUソフトウエアとは
www.gnu.org トップページ
GNUクロスコンパイラ使うには
GNUはオープンソースプロジェクトである
使用されることを前提として、 作成されて
ため、クロスコンパイラ自体のソースコード
います。
も公開されています。 クロスコンパイラを
組み込み開発でも、GNUソフトウェアは
使用するには、そのソースコードを入手し
クロスコンパイル環境として使われていま
て、使用形態に合わせたコンフィギュレー
「
オープンソース」と言う言葉があります
す。最近話題の組み込み Linux のアプリ
ションを行い、 開発に使用するホストマシ
が、これは文字通り「
ソースコードが公開
ケーション開発にも、 GNU ソフトウェアが
ンのコンパイラで実行モジュールを作成す
されている」と言うことです。この中には、
使用されています。
れば良いことになります。
2
GAIO CLUB 2004.12
Cygwi
n環境を立ち上げてみる
GNU コンパイル環境は、以下のURL に
掲載されています。
インストールが終了したら、
・http://directory.fsf.org/devel/
デ スクトップ上 の C y g w i n
ショートカットを起動して見て
本稿では、 トライアルをして頂くために
下さい。 DOS プロンプトの様
も、何も購入することなく、全てをWEBか
なコマンドウインドウが立ち上がります。こ
ら入手してGNU コンパイラを利用します。
れが、 Cygwin の UNIX 互換の仮想コン
ソールです。
www.cygwin.com のトップページ
クロスコンパイル環境として
Cygwi
nを利用する
GNU は UNIX ベースのソフトウエアであ
るため、 UNIX で提供されるシェルなどの
機能と親和性が高くなっています。 Linux
マシンを新設する方法もありますが、本特
集では、普段使用しているWindows を利
用して、 環境を変えることなく利用できる
「
Cygwin」を利用したいと思います。
Cygwin は Red Hat Inc. 社で行われてい
るプロジェクトで、 GNU のツールをWindows 上で動かそうというものです。
ここで勘違いしやすいのは、 Cygwin は
OS ではありません。OS の実体はあくまで
Windows であり、Windows にUNIX のAPI
を使 えるように す るための ライブ ラリ
(
cygwin1.dll)を追加する仕組みです。
通常 UNIX というと、ユーザー名を指定
使用します。 このプログラムには、 パッ
してログインしてから使 用 します が 、
ケージのあるFTP サイトからインストール
Cygwinにはこれも必要有りません。インス
に必要なモジュールをダウンロードする機
トール直後から直ぐに使える状態になりま
能が備わっています。
す。この環境の標準のシェル (
コマンドイ
インストール中、 ダウンロードサイトを選
ンタプリタ)は 「
bash」と呼ばれるUNIXで
択する場面 (
Choose A Download Site)
代表的なシェルです。 もちろん c shell の
があるのですが、全てのミラーサイトに同
様な別のシェルを利用することもできます。
じ物があるわけではなく、 サイトによって
Cygwin のファイルはWindowsのファイル
揃っているパッケージがまちまちです。初
と共通です。 Cygwin 上でファイルを作成
めての方は、 この当たりが分かりにくいか
すると、 Windows のファイルとして作成さ
も知れません。 筆者は、 「
ftp://ring.so-
れます。
net.ne.jp」を試しましたが、ここには、一
テキストファイルは、Windowsのエディタ
通り必要なパッケージが揃っている様でし
で作成して問題ありませんが、改行コード
た。
が、Windows (
LF+CR)とUNIX(LF のみ)
の間で異なっているため、 エディタの機
クロスコンパイラの利用に
必要なパッケージ
能で UNIX に合わせることが必要です。
U N I X のコマンドやシェルが使用できる
「
DOS 窓」と思った方が良いでしょう。 こ
今回はクロスコンパイラの利用に必要な
のCygwin環境を使用すれば、Windowsで
必要最低限のパッケージをインストールし
GNUソフトウェアを利用した組み込み開発
ます。もちろん、時間とHDDに余裕があ
ができるわけです。
る場合は、 全てインストールしても構いま
せん。必要最低限のインストールカテゴリ
Cygwi
nをサイトから入手して
インストールする
は、 以下の通りです。
起動直後のCygwi
nの仮想コンソール
Base (
基本プロダクト) --> Default
(
pwd コマンドでカレントディレクトリを表示)
Devel (
開発環境) --> Install
では早速、 Cygwin を入手してPC へイ
Libs (
ライブラリ) --> Default
ンストールしてみましょう。このCygwinは、
Shells (コマンドシェル) --> Default
Windows 上で動作するUNIXエミュレータ
Text (
テキストツール) --> Default
Cygwi
nのファイルシステム
のような環境で、 ファイルシステムやウイ
U N I X では、 通常、 ログインするユー
ンドウは、Windowsのものをそのまま使用
ザー毎に、 HOME ディレクトリを作成しま
します。 Cygwin 自体のインストール / ア
すが、Cygwin インストール直後は、Win-
ンインストールは、Windows システムに影
dows でのユーザー用のディレクトリ (
「
c:
響を与えることなく自由に行うことができま
¥Documents and Settings」フォルダの
すし、 Cygwin 専用に HDD のパーテショ
「
ユーザー名」フォルダ)が、 Cygwin 上
ンを用意したりする必要も全くありません。
でのホームディレクトリとなっています。 こ
インストールは、 WEB ページ (
http://
cygwin.com/)のセットアッププログラムを
れは、 Cygwin コンソールに、 「
$ pwd」コ
セットアッププログラムで インストールパッケージを選択
(
Default をクリックするとInstall に変わる)
マンドを入力することで確認できます。
GAIO CLUB 2004.12
3
Cygwin には、Windows のパスを直接参
【
手順】: binutils-2.15 の場合
arm-gaio-elf-addr2line.exe
照するための仮想ディレクトリ「
/cygdrive/
1. /usr/src へダウンロードファイルをコピー
arm-gaio-elf-ar.exe
arm-gaio-elf-as.exe
c/」があり、これを先頭に付けると、Windows 上のファイルを直接参照できます。
また、 Cygwin の中でのルートディレクトリ
は、 Windows 上の 「
c:¥cygwin」フォルダ
する
2. gzip コマンドで解凍をする
$ gzip -d binutils-2.15.tar.gz
3. tar コマンドで展開をする
$ tar xvf binutils-2.15.tar
に対応しています。
シェルの環境作成については、UNIXの
以下のディレクトリに各コンポーネントが
bash シェルの仕様と同様に、 ホームディ
展開されます。
レクトリ上の 「
.bashrc」ファイルに記述して
使用します。 b a s h についての詳細は、
/usr/src/binutils-2.15
WEB 情報や参考書なども多くありますの
/usr/src/gcc-core-3.4.1
で、 別途参照下さい。
/usr/src/newlib-1.12.0
arm-gaio-elf-c++filt.exe
arm-gaio-elf-cpp.exe
arm-gaio-elf-gcc.exe
arm-gaio-elf-gccbug
arm-gaio-elf-gcov.exe
arm-gaio-elf-ld.exe
arm-gaio-elf-nm.exe
arm-gaio-elf-objcopy.exe
-- アーカイブファイルの作成
-- アセンブラ
-- Cプリプロセッサ
-- Cコンパイラ
-- リンカ
-- Sレコード(HEXファイル)
ファイルへの変換
arm-gaio-elf-objdump.exe
arm-gaio-elf-ranlib.exe
arm-gaio-elf-readelf.exe
arm-gaio-elf-size.exe
arm-gaio-elf-strings.exe
arm-gaio-elf-strip.exe
-- デバッグ情報の削除
環境構築後の /usr/local/bin ディレクトリ
次に、 ビルドを行い実行モジュールを
Cygwi
nを使って
組み込み開発環境を構築する
作成します。
【
手順】: binutils-2.15 の場合
1. コンフィグレーションコマンドにより、 ビル
では次に、 この Cygwin 環境にクロス開
ドを行うための Makefile 等を作成する
発環境をインストールしてみましょう。今回
$ cd /usr/src/binutils-2.15
は、 ARM をターゲットとして、 ARM 用の
$ ./configure --target=arm-gaio-elf
オブジェクトコードを生成するための環境
セットアップを行って見ます。
まず、下の3つの必要なモジュールを、
※ --target オプションの表記
(
ARCHITECTURE-VENDOR-OS)
この表記は何が記述できるかは、configure
GNU のサイトからダウンロードします。 ダ
ファイルを見て確認する必要があります。
ウンロードは IE などの Windows 環境の
"VENDOR" には何を定義しても影響はな
WEB ブラウザを使用して問題ありません。
いので、ここの例では"gaio"を指定してい
ダウンロードしたファイルをCygwinでの 「
/
ます。"OS"には、VxWorks、Linux、wince
usr/src」ディレクトリ、 すなわちWindows
を指定しますが、組み込みでは OMF (
オ
上の 「
c:¥cygwin¥usr¥src」へドラッグして
コピー (
移動)して使用します。
ブジェクトフォーマット)の種類を定義する
ことになっています。
2. make コマンドを実行して、クロスコンパイ
※バイナリツール (アセンブラ、 リンカ、
etc...)
http://ftp.gnu.org/gnu/binutils/binutils-
ラなどの実行モジュールをビルドする
ftp://ftp.iij.ad.jp/pub/gcc/releases/gcc3.4.1/gcc-core-3.4.1.tar.gz
※組み込み用ライブラリ
ftp://sources.redhat.com/pub/newlib/
newlib-1.12.0.tar.gz
次にダウンロードした各モジュールを解
凍、 展開します。 この作業は Cygwin の
ターミナルから、 コマンドベースで行いま
・crt0.o はスタートアッププログラムです。
・libc.a libm.a は、 標準、 数学関数用のライブラリファ
イルです。
・thumb/ ディレクトリには、同じ形式で thumb 用のファ
イルが保存されています。
・ldscripts/ ディレクトリには、リンカスクリプトの各種サン
プルが保存されています。
環境構築後の /usr/local/arm-gaio-elf/lib ディレクトリ
$ make
$ make install
2.15.tar.gz
※Cコンパイラ
環境構築後の /usr/local/arm-gaio-elf/include ディレクトリ
各種 C 言語用ヘッダファイル
コンパイルの準備を行う
全てコンポーネントの make が完了する
と、「
/usr/local/bin」ディレクトリに armの
では、 作成したコンパイラで ARM 用の
コンパイル環境が作成されます。
組み込みソースをコンパイルしてみます。
また、 クロスコンパイルに必要なヘッダ
Cygwin のデフォルトのパスは、/bin/usr/
ファイル、 ライブラリは各々 「
/usr/local/
bin に設定されていますが、作成したarm
arm-gaio-elf/include」「
/usr/local/arm-
のコンパイル環境を起動することはできま
gaio-elf/lib」フォルダに作成されます。
せん。まず、環境設定として、bash コマ
ンドを使用してパスの設定を行います。
$ export PATH=/usr/local/bin:${PATH}
す。 ここからは UNIX の世界です。
下にバイナリツール (
binutil-2.15)の手
次に make ファイルを作成します。 必ず
順を示します。 残りの2つのモジュールも
必要なファイルではありませんが、 一般
同じ手順で行います。
の開発では多くのソースファイルを扱うた
4
GAIO CLUB 2004.12
め、 make ファイルを作成したほうが良い
でしょう。 GNU には、 「
GNU make」とい
うツールがありますので、このプロダクトを
ダウンロードしておきます。 C y g w i n の
setup プログラムでは、 「
Devel」のカテゴ
リに含まれていますが、 Default では選択
されないようですので、チェックをしてダウ
ンロードを行ってください。 setup プログラ
ムは、 後からモジュールを追加する場合
標準のアドレスマップで
リンクを行う
リンカスクリプトについて
組み込み機器ではハードウェアの構成
標準のアドレスマップでリンクを行うので
によって、アプリケーションのメモリ上のレ
あれば、 下記のように gcc-gaio-elf-gcc
イアウトを細かく設定する必要があります。
コマンドでリンクまで行うことができます。
この定義をするのがリンカスクリプトです。
<< リンカスクリプトの与え方の例 >>
$ arm-gaio-elf-gcc hello.c asm_source.s -o
$ arm-gaio-elf-gcc hello.c asm_source.s -o
test
test -Wl,-T script.ld
でも利用できます。
本稿では、 make ファイルを使用せず
リンク後のオブジェクト名は、-o オプショ
に、 話を進めます。
ンを使ってファイル名を指定します。 これ
だけの記述だけで、 hello.c asm_source.s
ファイルの他、 スタートアッププログラム
"crt0.o"、printf などのライブラリが自動的
setupプログラムでmakeユーティリティを追加
にリンクされます。下に、標準の標準のリ
ンクマップ例を挙げておきます。
オブジェクトコードを作成してみる
コンパイラ・アセンブラを起動して、オブ
ジェクトを作成するには、 以下のコマンド
を使用します。
$ arm-gaio-elf-gcc hello.c
--- C 言語ソースのとき
$ arm-gaio-elf-gcc asm_source.s
--- アセンブリ言語ソースのとき
拡張子が .c のときは、 C 言語とみなし
ます。 拡張子が .s のときは、 アセンブリ
言語とみなします。 コンパイル後のオブ
-Wl, の指定は、リンカへの起動オプショ
ンを定義しています。-Wl, 以降に記述し
たオプションがリンカに渡ります。 上記の
例では、 "-T script.ld" がリンカに渡りま
す。script.ld が、リンカスクリプトファイル
です。 (
終)
Archive member included because of file (symbol)
/usr/local/lib/gcc/arm-gaio-elf/lib/libc.a(atexit.o)
/usr/local/lib/gcc/arm-gaio-elf/lib/libc.a(exit.o)
/usr/local/lib/gcc/arm-gaio-elf/lib/libc.a(impure.o)
/usr/local/lib/gcc/arm-gaio-elf/lib/libc.a(malloc.o)
:
:
Allocating common symbols
Common symbol
size
file
errno
0x4
/usr/local/lib/gcc/arm-gaio-elf/lib/libc.a(reent.o)
Memory Configuration
Name
*default*
Origin
0x00000000
Length
0xffffffff
Attributes
Linker script and memory map
LOAD
LOAD
LOAD
LOAD
/usr/local/lib/gcc/arm-gaio-elf/3.4.1/crti.o
/usr/local/lib/gcc/arm-gaio-elf/3.4.1/crtbegin.o
/usr/local/lib/gcc/arm-gaio-elf/3.4.1/../../../../arm-gaio-elf/lib/crt0.o
/cygdrive/c/DOCUME 1/ktaka/LOCALS 1/Temp/ccCGWUQ7.o
:
標準のリンクマップ例
ジェクトファイルは、 拡張子が .o の名前
で作成されます。
本来、 アセンブラは arm-gaio-elf-as リ
ンカは arm-gaio-elf-ld ですが、 使い分
ける必要は無く、arm-gaio-elf-gcc コマン
ドを起動するだけで自動的にファイルが判
別され、アセンブラ、リンカが呼び出され
ます。
参考に、 G N U でサポートされている
ARMプロセッサのアーキテクチャを次に挙
げておきます。
(
-march=xxx で指定します。)
armv1, armv2, armv2a, armv2s,
OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm")
OUTPUT_ARCH(arm)
ENTRY(_start)
SEARCH_DIR("/usr/local/arm-gaio-elf/lib");
/* Do we need any of these for elf? DYNAMIC = 0;
*/
SECTIONS
{
/* Read-only sections, merged into text segment: */
PROVIDE (__executable_start = 0x8000); . = 0x8000;
.interp
: { *(.interp) }
.hash
: { *(.hash) }
.dynsym
: { *(.dynsym) }
.dynstr
: { *(.dynstr) }
.gnu.version
: { *(.gnu.version) }
.gnu.version_d : { *(.gnu.version_d) }
.gnu.version_r : { *(.gnu.version_r) }
.rel.init
: { *(.rel.init) }
.rela.init
: { *(.rela.init) }
.rel.text
: { *(.rel.text .rel.text.* .rel.gnu.linkonce.t.*) }
:
:
リンクスクリプトの記述例
armv3, armv3m,
ガイオシミュレータ製品は GNUコンパイラもサポートしています
armv4, armv4xm, armv4t, armv4txm,
ガイオ ・テクノロジー 営業部 高橋 圭一
armv5, armv5t, armv5txm,
armv5te, armv5texp,
armv6, armv6j,
iwmmxt xscale
本特集は、 いかがでしょうか? Cygwin を利用すれば、 Windows ユーザーの方でも、 DOS
窓の感覚で、手軽にUNIX 環境が利用できることと思います。ガイオではソフト品質向上を狙
いとした 「
シミュレータ」製品を提供しておりますが、お客様のクロス開発環境に、「
GNU」が
採用されているケースも多くなりました。本特集を通じて、理解を深めて頂ければ幸いです。
GAIO CLUB 2004.12
5
ガイオのロングセラー CASEツール 「
CasePl
ayer
2」
待望の変数参照リスト機能を追加してバージョンアップ!
大好評のフローチャート、 モジュール構造図作成ツール 「
CasePl
ayer
2」がバージョンアップします!
待望の 「
使用変数リスト」「変数参照リスト」解析生成機能を追加し 2005年1月にリリースいたします!
ソースコードの登録 ・生成チャートの管理ツール 「
仕様書ブラウザ」
ソースを解析してフローチャートを瞬時に出力
新 バージ
ョン
リリース
!
関数の呼び出し関係を示す
モジュール構造図
組み込み用チャート・仕様書作成の統合環境
ソースコードプレビュー ・解析を効率化します
「
CasePl
ayer
2」バージョンアップで新たにサポートされる変数リスト
「
CasePlayer2」は、組み込みソースコードを解
NEW!
析してフローチャートなどのプログラム仕様書を作
成するC A S E ツールです。 ソースや生成した
チャートを統合管理する 「
仕様書ブラウザ」を搭
載しており、 フローチャート、 モジュール構造図
と、該当ソース行のダイナミックリンク機能により、
ソースコードのレビュー作業が効率的に行えます。
「
CasePl
ayer
2」バージョンアップでは
外部変数の参照箇所をリスト化する機能が
サポートされます
(
※上のリスト画面は、 開発中のものです。 リリース版とは仕様が異なる場合があります。
2005年1月にリリース予定の「
CasePlayer2」
バー
また、 上図以外にも、 「
変数リファレンスリスト」などが追加されます。)
ジョンアップには、皆様からの多くのリクエストを頂
きました、「
変数参照リスト」生成の機能がサポー
ソフト品質改善のためのソースレビューを容易に!
トされます。
ガイオ ・テクノロジー 営業部 山崎 政利
ソースを解析して、外部変数の参照関係を明確
「
CasePlayer2」は、組み込み開発用チャート生成ツールとして、多く
にする 「
変数参照リスト」を作成し、ソースコード
の皆様にご愛用頂いております。待望の 「
変数参照リスト」作成機能
をサポートした新バージョンが、まもなくリリースの予定です。ソフト品
レビューや仕様書作成に利用することができます。
質改善の第1歩として、 ソースコードをビジュアル化して、 レビューを
(
※右図グリーンの部分が新規機能)
容易にするこのツールを導入して見ませんか?
6
GAIO CLUB 2004.12
組み込みソフト品質改善の切り札 「
システムシミュレータ」
車載装置 OA機器開発へ 採用実績を伸ばしています!
マイコン ・周辺デバイスを含む 組み込みシステム全体の動作検証が可能なシミュレータ
実機では再現が困難な 例外条件、 割り込み、 複雑なタイミングイベントを容易に再現できます
マイコン動 作シミュレータ
周 辺 デバイスモデル & 仮想 テスト装 置
高 精 度マイコンシミュレーションエンジン「System -G」
「IFビルダー 」
を使用 してユーザー が自由 に構築可能
クロック精度でMPU 命令 を忠実 にシミュレー ション
デバイスをソフトウエア化 自由 に仮想テスト装置作成可能
マスター
クロック同期
i/o ポート入出力
割り込み発行
メモリR/ W
周辺デバイスを含む組み込みシステム全体を
ソフトウエアで動作
周辺デバイスのソフトウエアモデル化を支援する
「
I
Fビルダー」を搭載
市場にリリースした後に発見されてしまう様な、組み込み機器の
周辺デバイスをソフトウエアモデル化した「
仮想モデル」を作成
潜在的なバグの原因は、 テスト不足にあります。 多くの不具合
する際に、シミュレータカーネルとの接続部分のインタフェースを
は、正常系の動作よりも例外動作などの異常系にあると言われて
自動生成する 「
IF ビルダー」を用意しています。 Visual Studio
いますが、 実機を用いたデバッグ環境では、 例外的な条件を全
.NET で動作する対話式の IF ビルダー AppWizard により、シミュ
て網羅したテストを行うことは不可能です。
レータとの接続インターフェースを自動生成します。ユーザーは、
「
システムシミュレータ」は、 組み込みシステム全体をソフトウエ
周辺デバイスの論理動作部分のみをソフトウエアでモデル化する
アに置き換え、シミュレーションならではの自由なデータ入出力環
だけで、マイコンシミュレータと簡単に接続してシステム動作させ
境を利用して、複雑な条件に対する網羅的なテストを容易に行え
ることができます。短時間、低コストで、周辺デバイスを取り込ん
るデバッグシステムです。 テストの自動化も容易に可能です。
だシミュレーション検証環境を構築することが可能です。
高精度命令セットシミュレータ (ISS)
「System-G エンジン」
「システムシミュレータ」には、 長年の実績を持つ高精度 I S S
「
System-G」がマイコンシミュレーションエンジンとして使用されて
います。 クロスコンパイラが生成した命令コードを忠実に実行し、
全レジスタ、メモリ空間の参照はもとより、マイコン内部パイプライ
ン処理、キャッシュ動作、システムクロックへのサイクルアキュレー
トなシミュレーションをサポートしています。デバイスドライバ開発に
おいても、 外部周辺デバイスとの正確なタイミング検証が行えま
す。
実行パフォーマンスを優先した、大規模アプリ検証向け 「
ソニッ
クエンジン」も用意しています。
システムシミュレータで実機にできないデバッグを!
ガイオ ・テクノロジー 営業部 嶋田 卓尚
「
システムシミュレータ」は、高精度命令セットシミュレータ (
ISS)をコ
アとした、組み込みシステム動作検証環境です。マイコン以外のハー
ドウエアをソフトモデル化するための支援ツール 「
IFビルダー」により、
検証環境の構築も容易になっています。導入をご検討の場合は、定
期セミナーをご利用下さい。
GAIO CLUB 2004.12
7
無 料 定 期 セミナースケジュール
GAIO Technical Seminar Information
弊社製品をご体験頂くための定期セミナーを設けております。ご
各セミナーとも、 半日コース (
13:00 ∼ 16:30)の設定となって
購入の検討を短時間で行うために、 ご参加をお奨め致します。
おります。 受講は無料です。
シミュレータファミリ定期セミナー
プロトビルダー体験 定期セミナー
プロトビルダーのセミナーは、導入トレーニング
シミュレータファミリのセミナーは、 ご検討内容
に応じで選択いただける、以下3つのコースを用
としてもご利用いただける基本コースを用意してお
意しております。 全コース、 受講無料です。
ります。 受講無料です。
シミュレータファミリ 体験 コース
プロトビルダー体 験 セミナー・導 入 トレーニング
組み 込 みシステムの開発 に、シミュレータの導 入 を検討 されて
いる方 を対 象としました定 期 セミナー です 。シミュレー ションと
はどういうものか?何 ができるのか?実機 とどうデバッグ方法 が
違うのかを体 験していただけます。シミュレータを使 った効果 を
実感 できます。
製 品 仕 様・プロトモデル 作成 ツール「プロトビルダー」の導 入
を検 討されている方 を対象としました体験 セミナー です 。半 日
(3時間程度)コー スで、実際 にPDAモデル を作 成 いただきま
す。短 時 間 での導入 のご判 断を頂くことが目 的です。既 にご購
入頂 いた方へ の導 入 トレーニングとしてもご利用 いただけます 。
開催日 : 12/17(金)、 1/21(金)、 2/18(金)
開催日 : 12/15(水)、 1/12(水)、 2/16(水)
自動 テスト・カバ レッジツール winAMS 評 価コース
お申し込み方法
組み 込 み ソフトの自動試験を可能 にする「
カバレッジマスター
winAMS 」の導入 を検 討 されている方を対 象としました定期 セミ
ナー です。「winAMS」を実際 に体験 していただき、短時間で
のご評価 をして頂くことが可能 です 。
セミナーのお申し込みは ... E-mail : [email protected] まで
ご参加コース、 希望日時、 貴社名、 ご部署名、 ご参加者全
開催日 : 12/24(金)、 1/28(金)、 2/25(金)
員の氏名を明記の上、 電子メールにてお申し込み下さい。
会場のご案内
シミュレータ環 境 構 築 テクニカルトレーニング
主にシミュレータをご導 入 いただいたお客 様 を対象 としました、
無償 のテクニカル・トレーニングです 。高精度命令セットシミュ
レー タ(ISS)「System-G」やシステムシミュレー タ開発環境 「IFビ
ルダー」の使 用・運営方法をはじめ、仮想 モデルのデ バ ッグ
方法 、サンプル の活用方法 なども習得していただけます 。
セミナー会場
ガイオ ・テクノロジー
日本橋事業所 ミズホビル セミナールーム
・営団地下鉄 日比谷線
・都営浅草線
開催日 : 12/10(金)、 1/14(金)、 2/11(金)
人形町駅 徒歩1分
GAI
O CLUB オンライン
ガイオ倶楽部のバックナンバーや
記事の抜粋は、 ガイオ WEB ペー
お問い合 わせ
How to contact us
製品に関するご相談 ・ご質問は
ガイオ ・テクノロジー (
株)
営業部
ジ上に、PDFファイルとして掲載さ
TEL: 03-3662-3041 E-mail: [email protected] まで
れております。皆様の開発のヒント
に、 是非ご覧下さい。
パージ上部バナーの 「
ユーザー
本誌ガイオ倶楽部に関するご感想 ・ご要望などは
サポート」からご覧いただけます。
E-mail : [email protected] までお寄せ下さい
ガイオ倶楽部 (
2004 年 12 月号 : 2004/12/10 発行)
制作 ・編集 ・発行 : ガイオ ・テクノロジー株式会社 営業部 マーケティング グループ
〒 103-0013 東京都中央区日本橋人形町 3-12-8 TEL: 03-3662-3041 FAX: 03-3662-3043 WEB : http://www.gaio.co.jp/
編集 ・発行人 : 岡田 利一 
Fly UP